@vtj/pro 0.13.32 → 0.13.34

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/dist/@vtj/materials/assets/antdv/index.umd.js +2 -2
  2. package/dist/@vtj/materials/assets/charts/index.umd.js +2 -2
  3. package/dist/@vtj/materials/assets/element/index.umd.js +4 -4
  4. package/dist/@vtj/materials/assets/icons/index.umd.js +2 -2
  5. package/dist/@vtj/materials/assets/ui/index.umd.js +2 -2
  6. package/dist/@vtj/materials/assets/uni-h5/index.umd.js +2 -2
  7. package/dist/@vtj/materials/assets/uni-ui/index.umd.js +2 -2
  8. package/dist/@vtj/materials/assets/vant/index.umd.js +2 -2
  9. package/dist/@vtj/materials/deps/@vtj/charts/index.umd.js +2 -2
  10. package/dist/@vtj/materials/deps/@vtj/icons/index.umd.js +2 -2
  11. package/dist/@vtj/materials/deps/@vtj/ui/index.umd.js +4 -4
  12. package/dist/@vtj/materials/deps/@vtj/utils/index.umd.js +2 -2
  13. package/dist/@vtj/materials/deps/element-plus/index.css +1 -1
  14. package/dist/@vtj/materials/deps/element-plus/index.full.min.js +21 -14
  15. package/dist/@vtj/materials/deps/element-plus/zh-cn.js +5 -2
  16. package/dist/@vtj/materials/deps/pinia/pinia.iife.js +28 -23
  17. package/dist/@vtj/materials/deps/pinia/pinia.iife.prod.js +3 -3
  18. package/dist/@vtj/materials/deps/vue/vue.global.js +88 -37
  19. package/dist/@vtj/materials/deps/vue/vue.global.prod.js +10 -9
  20. package/dist/assets/{@element-plus-icons-vue-D-fUosFJ.js → @element-plus-icons-vue-CKd904ON.js} +1 -1
  21. package/dist/assets/{@vueuse-Cj30_OSx.js → @vueuse-DtTb23_4.js} +1 -1
  22. package/dist/assets/{Editor-i5P81huw-DahX-ZbK.css → Editor-DoqFIqOf-CIjQSqmy.css} +1 -1
  23. package/dist/assets/Editor-DoqFIqOf-DiNYaRxo.js +323 -0
  24. package/dist/assets/{auth-999F_SFg.js → auth-BV8TXi4D.js} +1 -1
  25. package/dist/assets/{dayjs-C1e0w4cr.js → dayjs-BGdj-UA2.js} +1 -1
  26. package/dist/assets/element-plus-CDp6lqni.js +19 -0
  27. package/dist/assets/element-plus-CIHaA-Vw.css +1 -0
  28. package/dist/assets/{index-7xn2veqr.js → index-B8SwXmce.js} +2 -2
  29. package/dist/assets/index-DD1XM0NE.js +1 -0
  30. package/dist/assets/mockjs-D0SPmEx8.js +9 -0
  31. package/dist/assets/{monaco-editor-xcHgnT1C.js → monaco-editor-BnTtZo-x.js} +1 -1
  32. package/dist/assets/page-oejxnkbe.js +2 -0
  33. package/dist/assets/preview-DoFDYFiX.js +2 -0
  34. package/dist/assets/{uni-page-CWoUvEyl.js → uni-page-CN_KQGX3.js} +1 -1
  35. package/dist/assets/utils-itkxsukj.js +1 -0
  36. package/dist/assets/vue-Bzk1dLH9.js +35 -0
  37. package/dist/assets/{vue-router-CRt375PS.js → vue-router-Bj6KLPos.js} +1 -1
  38. package/dist/assets/{vxe-BUp_tBCm.js → vxe-yh3jV1_V.js} +1 -1
  39. package/dist/index.html +11 -11
  40. package/dist/uni/assets/{index-DTgkXTuo.js → index-Ct-q2iWi.js} +6 -6
  41. package/dist/uni/index.html +1 -1
  42. package/package.json +12 -12
  43. package/src/.vtj/files/1bxaubr9.json +109 -0
  44. package/src/.vtj/materials/@vtj/pro.json +8246 -0
  45. package/src/.vtj/projects/@vtj/pro.json +226 -0
  46. package/dist/assets/Editor-i5P81huw-GtmlswXs.js +0 -317
  47. package/dist/assets/element-plus-6YRlyoMW.css +0 -1
  48. package/dist/assets/element-plus-wCU_mIQS.js +0 -12
  49. package/dist/assets/index-80LItnFt.js +0 -1
  50. package/dist/assets/mockjs-DKzs-0ke.js +0 -9
  51. package/dist/assets/page-CkW4uv_S.js +0 -2
  52. package/dist/assets/preview-DKrOP-2R.js +0 -2
  53. package/dist/assets/utils-CuK8tqtw.js +0 -1
  54. package/dist/assets/vue-BW8u1lDT.js +0 -34
@@ -747,7 +747,7 @@ ${e.toString()}`}}class fL{constructor(e=new Mv,t=!1,i,n=xCe){var o;this._servic
747
747
  `));const m=this._diffProviderFactoryService.createDiffProvider({diffAlgorithm:"advanced"});return AT.fromFn(()=>I(this,null,function*(){const _=yield m.computeDiff(this._originalModel.get(),this._modifiedModel.get(),{computeMoves:!1,ignoreTrimWhitespace:!1,maxComputationTimeMs:1e3},Ze.None);if(!_.identical)return new ZPe(qe.fromRangeInclusive(d),h(u),_.changes)}))}),this._fetchStore=this._register(new G),this._inlineEditsFetchResult=B1(this,void 0),this._inlineEdits=dr({owner:this,equalsFn:Fk},l=>{var c,d;return(d=(c=this._inlineEditsFetchResult.read(l))==null?void 0:c.completions.map(u=>new e2e(u)))!=null?d:[]}),this._fetchInlineEditsPromise=dX({owner:this,createEmptyChangeSummary:()=>({inlineCompletionTriggerKind:dl.Automatic}),handleChange:(l,c)=>(l.didChange(this._forceUpdateExplicitlySignal)&&(c.inlineCompletionTriggerKind=dl.Explicit),!0)},(l,c)=>I(this,null,function*(){var m;this._fetchStore.clear(),this._forceUpdateExplicitlySignal.read(l),this._textModelVersionId.read(l);function d(_,b){return b(_)}const u=(m=this._pinnedRange.range.read(l))!=null?m:d(this._selection.read(l),_=>_.isEmpty()?void 0:_);if(!u){this._inlineEditsFetchResult.set(void 0,void 0),this.userPrompt.set(void 0,void 0);return}const h={triggerKind:c.inlineCompletionTriggerKind,selectedSuggestionInfo:void 0,userPrompt:this.userPrompt.read(l)},g=GA(this._fetchStore);yield Bd(200,g);const f=yield Hte(this.languageFeaturesService.inlineCompletionsProvider,u,this.textModel,h,g);g.isCancellationRequested||this._inlineEditsFetchResult.set(f,void 0)})),this._filteredInlineEditItems=dr({owner:this,equalsFn:Ok()},l=>this._inlineEdits.read(l)),this.selectedInlineCompletionIndex=Se(this,l=>{const c=this._selectedInlineCompletionId.read(l),d=this._filteredInlineEditItems.read(l),u=this._selectedInlineCompletionId===void 0?-1:d.findIndex(h=>h.semanticId===c);return u===-1?(this._selectedInlineCompletionId.set(void 0,void 0),0):u}),this.selectedInlineEdit=Se(this,l=>{const c=this._filteredInlineEditItems.read(l),d=this.selectedInlineCompletionIndex.read(l);return c[d]}),this._register(Tv(this._fetchInlineEditsPromise))}triggerExplicitly(e){return I(this,null,function*(){Cp(e,t=>{this._isActive.set(!0,t),this._forceUpdateExplicitlySignal.trigger(t)}),yield this._fetchInlineEditsPromise.get()})}stop(e){Cp(e,t=>{this.userPrompt.set(void 0,t),this._isActive.set(!1,t),this._inlineEditsFetchResult.set(void 0,t),this._pinnedRange.setRange(void 0,t)})}_deltaSelectedInlineCompletionIndex(e){return I(this,null,function*(){yield this.triggerExplicitly();const t=this._filteredInlineEditItems.get()||[];if(t.length>0){const i=(this.selectedInlineCompletionIndex.get()+e+t.length)%t.length;this._selectedInlineCompletionId.set(t[i].semanticId,void 0)}else this._selectedInlineCompletionId.set(void 0,void 0)})}next(){return I(this,null,function*(){yield this._deltaSelectedInlineCompletionIndex(1)})}previous(){return I(this,null,function*(){yield this._deltaSelectedInlineCompletionIndex(-1)})}accept(e){return I(this,null,function*(){if(e.getModel()!==this.textModel)throw new xt;const t=this.selectedInlineEdit.get();t&&(e.pushUndoStop(),e.executeEdits("inlineSuggestion.accept",[t.inlineCompletion.toSingleTextEdit().toSingleEditOperation()]),this.stop())})}},jw=Jf,Jf._modelId=0,Jf);y5=jw=JPe([RA(4,_e),RA(5,CS),RA(6,ti)],y5);class e2e{constructor(e){this.inlineCompletion=e,this.semanticId=this.inlineCompletion.hash()}}class t2e extends B{constructor(e,t){super(),this._textModel=e,this._versionId=t,this._decorations=Je(this,[]),this.range=Se(this,i=>{var o;this._versionId.read(i);const n=this._decorations.read(i)[0];return n&&(o=this._textModel.getDecorationRange(n))!=null?o:null}),this._register(ke(()=>{this._textModel.deltaDecorations(this._decorations.get(),[])}))}setRange(e,t){this._decorations.set(this._textModel.deltaDecorations(this._decorations.get(),e?[{range:e,options:{description:"trackedRange"}}]:[]),t)}}var i2e=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},yw=function(s,e){return function(t,i){e(t,i,s)}},S5,ep;let qd=(ep=class extends B{static get(e){return e.getContribution(S5.ID)}constructor(e,t,i,n,o,r){super(),this.editor=e,this._instantiationService=t,this._contextKeyService=i,this._debounceService=n,this._languageFeaturesService=o,this._configurationService=r,this._enabled=wxe("editor.inlineEdits.enabled",!1,this._configurationService),this._editorObs=Mo(this.editor),this._selection=Se(this,a=>{var l;return(l=this._editorObs.cursorSelection.read(a))!=null?l:new we(1,1,1,1)}),this._debounceValue=this._debounceService.for(this._languageFeaturesService.inlineCompletionsProvider,"InlineEditsDebounce",{min:50,max:50}),this.model=bs(this,a=>{if(!this._enabled.read(a)||this._editorObs.isReadonly.read(a))return;const l=this._editorObs.model.read(a);return l?this._instantiationService.createInstance(To(y5,a),l,this._editorObs.versionId,this._selection,this._debounceValue):void 0}),this._hadInlineEdit=hS(this,(a,l)=>{var c;return l||((c=this.model.read(a))==null?void 0:c.inlineEdit.read(a))!==void 0}),this._widget=bs(this,a=>{if(this._hadInlineEdit.read(a))return this._instantiationService.createInstance(To(C5,a),this.editor,this.model.map((l,c)=>l==null?void 0:l.inlineEdit.read(c)),n2e(l=>{var c,d;return(d=(c=this.model.read(l))==null?void 0:c.userPrompt)!=null?d:Je("empty","")}))}),this._register(za(tv,this._contextKeyService,a=>{var l;return!!((l=this.model.read(a))!=null&&l.inlineEdit.read(a))})),this._register(za(jPe,this._contextKeyService,a=>{var l;return!!((l=this.model.read(a))!=null&&l.isPinned.read(a))})),this.model.recomputeInitiallyAndOnChange(this._store),this._widget.recomputeInitiallyAndOnChange(this._store)}},S5=ep,ep.ID="editor.contrib.inlineEditsController",ep);qd=S5=i2e([yw(1,Le),yw(2,Pe),yw(3,Lr),yw(4,_e),yw(5,et)],qd);function n2e(s){return cS(void 0,e=>s(e).read(e),(e,t)=>{s(void 0).set(e,t)})}function RS(s){return{label:s.value,alias:s.original}}const LD=class LD extends me{constructor(){super(ue($({id:LD.ID},RS(Be("action.inlineEdits.showNext","Show Next Inline Edit"))),{precondition:Z.and(D.writable,tv),kbOpts:{weight:100,primary:606}}))}run(e,t){return I(this,null,function*(){var n;const i=qd.get(t);(n=i==null?void 0:i.model.get())==null||n.next()})}};LD.ID=UPe;let x5=LD;const ED=class ED extends me{constructor(){super(ue($({id:ED.ID},RS(Be("action.inlineEdits.showPrevious","Show Previous Inline Edit"))),{precondition:Z.and(D.writable,tv),kbOpts:{weight:100,primary:604}}))}run(e,t){return I(this,null,function*(){var n;const i=qd.get(t);(n=i==null?void 0:i.model.get())==null||n.previous()})}};ED.ID=zPe;let k5=ED;class s2e extends me{constructor(){super(ue($({id:"editor.action.inlineEdits.trigger"},RS(Be("action.inlineEdits.trigger","Trigger Inline Edit"))),{precondition:D.writable}))}run(e,t){return I(this,null,function*(){const i=qd.get(t);yield cX(n=>I(null,null,function*(){var o;yield(o=i==null?void 0:i.model.get())==null?void 0:o.triggerExplicitly(n)}))})}}class o2e extends me{constructor(){super(ue($({id:$Pe},RS(Be("action.inlineEdits.accept","Accept Inline Edit"))),{precondition:tv,menuOpts:{menuId:ve.InlineEditsActions,title:p("inlineEditsActions","Accept Inline Edit"),group:"primary",order:1,icon:oe.check},kbOpts:{primary:2058,weight:2e4,kbExpr:tv}}))}run(e,t){return I(this,null,function*(){var n;t instanceof Ia&&(t=t.getParentEditor());const i=qd.get(t);i&&((n=i.model.get())==null||n.accept(i.editor),i.editor.focus())})}}const ID=class ID extends me{constructor(){super(ue($({id:ID.ID},RS(Be("action.inlineEdits.hide","Hide Inline Edit"))),{precondition:tv,kbOpts:{weight:100,primary:9}}))}run(e,t){return I(this,null,function*(){const i=qd.get(t);wi(n=>{var o;(o=i==null?void 0:i.model.get())==null||o.stop(n)})})}};ID.ID="editor.action.inlineEdits.hide";let L5=ID;pt(qd.ID,qd,3);ee(s2e);ee(x5);ee(k5);ee(o2e);ee(L5);const Op={Visible:new fe("parameterHintsVisible",!1),MultipleSignatures:new fe("parameterHintsMultipleSignatures",!1)};function oie(s,e,t,i,n){return I(this,null,function*(){const o=s.ordered(e);for(const r of o)try{const a=yield r.provideSignatureHelp(e,t,n,i);if(a)return a}catch(a){Pi(a)}})}ht.registerCommand("_executeSignatureHelpProvider",(s,...e)=>I(null,null,function*(){const[t,i,n]=e;Ct(Ie.isUri(t)),Ct(P.isIPosition(i)),Ct(typeof n=="string"||!n);const o=s.get(_e),r=yield s.get(go).createModelReference(t);try{const a=yield oie(o.signatureHelpProvider,r.object.textEditorModel,P.lift(i),{triggerKind:fc.Invoke,isRetrigger:!1,triggerCharacter:n},Ze.None);return a?(setTimeout(()=>a.dispose(),0),a.value):void 0}finally{r.dispose()}}));var mu;(function(s){s.Default={type:0};class e{constructor(n,o){this.request=n,this.previouslyActiveHints=o,this.type=2}}s.Pending=e;class t{constructor(n){this.hints=n,this.type=1}}s.Active=t})(mu||(mu={}));const DD=class DD extends B{constructor(e,t,i=DD.DEFAULT_DELAY){super(),this._onChangedHints=this._register(new O),this.onChangedHints=this._onChangedHints.event,this.triggerOnType=!1,this._state=mu.Default,this._pendingTriggers=[],this._lastSignatureHelpResult=this._register(new gn),this.triggerChars=new fk,this.retriggerChars=new fk,this.triggerId=0,this.editor=e,this.providers=t,this.throttledDelayer=new Kr(i),this._register(this.editor.onDidBlurEditorWidget(()=>this.cancel())),this._register(this.editor.onDidChangeConfiguration(()=>this.onEditorConfigurationChange())),this._register(this.editor.onDidChangeModel(n=>this.onModelChanged())),this._register(this.editor.onDidChangeModelLanguage(n=>this.onModelChanged())),this._register(this.editor.onDidChangeCursorSelection(n=>this.onCursorChange(n))),this._register(this.editor.onDidChangeModelContent(n=>this.onModelContentChange())),this._register(this.providers.onDidChange(this.onModelChanged,this)),this._register(this.editor.onDidType(n=>this.onDidType(n))),this.onEditorConfigurationChange(),this.onModelChanged()}get state(){return this._state}set state(e){this._state.type===2&&this._state.request.cancel(),this._state=e}cancel(e=!1){this.state=mu.Default,this.throttledDelayer.cancel(),e||this._onChangedHints.fire(void 0)}trigger(e,t){const i=this.editor.getModel();if(!i||!this.providers.has(i))return;const n=++this.triggerId;this._pendingTriggers.push(e),this.throttledDelayer.trigger(()=>this.doTrigger(n),t).catch(ze)}next(){if(this.state.type!==1)return;const e=this.state.hints.signatures.length,t=this.state.hints.activeSignature,i=t%e===e-1,n=this.editor.getOption(86).cycle;if((e<2||i)&&!n){this.cancel();return}this.updateActiveSignature(i&&n?0:t+1)}previous(){if(this.state.type!==1)return;const e=this.state.hints.signatures.length,t=this.state.hints.activeSignature,i=t===0,n=this.editor.getOption(86).cycle;if((e<2||i)&&!n){this.cancel();return}this.updateActiveSignature(i&&n?e-1:t-1)}updateActiveSignature(e){this.state.type===1&&(this.state=new mu.Active(ue($({},this.state.hints),{activeSignature:e})),this._onChangedHints.fire(this.state.hints))}doTrigger(e){return I(this,null,function*(){const t=this.state.type===1||this.state.type===2,i=this.getLastActiveHints();if(this.cancel(!0),this._pendingTriggers.length===0)return!1;const n=this._pendingTriggers.reduce(r2e);this._pendingTriggers=[];const o={triggerKind:n.triggerKind,triggerCharacter:n.triggerCharacter,isRetrigger:t,activeSignatureHelp:i};if(!this.editor.hasModel())return!1;const r=this.editor.getModel(),a=this.editor.getPosition();this.state=new mu.Pending(dn(l=>oie(this.providers,r,a,o,l)),i);try{const l=yield this.state.request;return e!==this.triggerId?(l==null||l.dispose(),!1):!l||!l.value.signatures||l.value.signatures.length===0?(l==null||l.dispose(),this._lastSignatureHelpResult.clear(),this.cancel(),!1):(this.state=new mu.Active(l.value),this._lastSignatureHelpResult.value=l,this._onChangedHints.fire(this.state.hints),!0)}catch(l){return e===this.triggerId&&(this.state=mu.Default),ze(l),!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.clear(),this.retriggerChars.clear();const e=this.editor.getModel();if(e)for(const t of this.providers.ordered(e)){for(const i of t.signatureHelpTriggerCharacters||[])if(i.length){const n=i.charCodeAt(0);this.triggerChars.add(n),this.retriggerChars.add(n)}for(const i of t.signatureHelpRetriggerCharacters||[])i.length&&this.retriggerChars.add(i.charCodeAt(0))}}onDidType(e){if(!this.triggerOnType)return;const t=e.length-1,i=e.charCodeAt(t);(this.triggerChars.has(i)||this.isTriggered&&this.retriggerChars.has(i))&&this.trigger({triggerKind:fc.TriggerCharacter,triggerCharacter:e.charAt(t)})}onCursorChange(e){e.source==="mouse"?this.cancel():this.isTriggered&&this.trigger({triggerKind:fc.ContentChange})}onModelContentChange(){this.isTriggered&&this.trigger({triggerKind:fc.ContentChange})}onEditorConfigurationChange(){this.triggerOnType=this.editor.getOption(86).enabled,this.triggerOnType||this.cancel()}dispose(){this.cancel(!0),super.dispose()}};DD.DEFAULT_DELAY=120;let E5=DD;function r2e(s,e){switch(e.triggerKind){case fc.Invoke:return e;case fc.ContentChange:return s;case fc.TriggerCharacter:default:return e}}var a2e=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Z0=function(s,e){return function(t,i){e(t,i,s)}},I5;const Jo=ae,l2e=ii("parameter-hints-next",oe.chevronDown,p("parameterHintsNextIcon","Icon for show next parameter hint.")),c2e=ii("parameter-hints-previous",oe.chevronUp,p("parameterHintsPreviousIcon","Icon for show previous parameter hint."));var tp;let D5=(tp=class extends B{constructor(e,t,i,n,o,r){super(),this.editor=e,this.model=t,this.telemetryService=r,this.renderDisposeables=this._register(new G),this.visible=!1,this.announcedLabel=null,this.allowEditorOverflow=!0,this.markdownRenderer=this._register(new Vd({editor:e},o,n)),this.keyVisible=Op.Visible.bindTo(i),this.keyMultipleSignatures=Op.MultipleSignatures.bindTo(i)}createParameterHintDOMNodes(){const e=Jo(".editor-widget.parameter-hints-widget"),t=J(e,Jo(".phwrapper"));t.tabIndex=-1;const i=J(t,Jo(".controls")),n=J(i,Jo(".button"+Me.asCSSSelector(c2e))),o=J(i,Jo(".overloads")),r=J(i,Jo(".button"+Me.asCSSSelector(l2e)));this._register(j(n,"click",h=>{ct.stop(h),this.previous()})),this._register(j(r,"click",h=>{ct.stop(h),this.next()}));const a=Jo(".body"),l=new sS(a,{alwaysConsumeMouseWheel:!0});this._register(l),t.appendChild(l.getDomNode());const c=J(a,Jo(".signature")),d=J(a,Jo(".docs"));e.style.userSelect="text",this.domNodes={element:e,signature:c,overloads:o,docs:d,scrollbar:l},this.editor.addContentWidget(this),this.hide(),this._register(this.editor.onDidChangeCursorSelection(h=>{this.visible&&this.editor.layoutContentWidget(this)}));const u=()=>{if(!this.domNodes)return;const h=this.editor.getOption(50),g=this.domNodes.element;g.style.fontSize=`${h.fontSize}px`,g.style.lineHeight=`${h.lineHeight/h.fontSize}`,g.style.setProperty("--vscode-parameterHintsWidget-editorFontFamily",h.fontFamily),g.style.setProperty("--vscode-parameterHintsWidget-editorFontFamilyDefault",Fs.fontFamily)};u(),this._register(ce.chain(this.editor.onDidChangeConfiguration.bind(this.editor),h=>h.filter(g=>g.hasChanged(50)))(u)),this._register(this.editor.onDidLayoutChange(h=>this.updateMaxHeight())),this.updateMaxHeight()}show(){this.visible||(this.domNodes||this.createParameterHintDOMNodes(),this.keyVisible.set(!0),this.visible=!0,setTimeout(()=>{var e;(e=this.domNodes)==null||e.element.classList.add("visible")},100),this.editor.layoutContentWidget(this))}hide(){var e;this.renderDisposeables.clear(),this.visible&&(this.keyVisible.reset(),this.visible=!1,this.announcedLabel=null,(e=this.domNodes)==null||e.element.classList.remove("visible"),this.editor.layoutContentWidget(this))}getPosition(){return this.visible?{position:this.editor.getPosition(),preference:[1,2]}:null}render(e){var c;if(this.renderDisposeables.clear(),!this.domNodes)return;const t=e.signatures.length>1;this.domNodes.element.classList.toggle("multiple",t),this.keyMultipleSignatures.set(t),this.domNodes.signature.innerText="",this.domNodes.docs.innerText="";const i=e.signatures[e.activeSignature];if(!i)return;const n=J(this.domNodes.signature,Jo(".code")),o=i.parameters.length>0,r=(c=i.activeParameter)!=null?c:e.activeParameter;if(o)this.renderParameters(n,i,r);else{const d=J(n,Jo("span"));d.textContent=i.label}const a=i.parameters[r];if(a!=null&&a.documentation){const d=Jo("span.documentation");if(typeof a.documentation=="string")d.textContent=a.documentation;else{const u=this.renderMarkdownDocs(a.documentation);d.appendChild(u.element)}J(this.domNodes.docs,Jo("p",{},d))}if(i.documentation!==void 0)if(typeof i.documentation=="string")J(this.domNodes.docs,Jo("p",{},i.documentation));else{const d=this.renderMarkdownDocs(i.documentation);J(this.domNodes.docs,d.element)}const l=this.hasDocs(i,a);if(this.domNodes.signature.classList.toggle("has-docs",l),this.domNodes.docs.classList.toggle("empty",!l),this.domNodes.overloads.textContent=String(e.activeSignature+1).padStart(e.signatures.length.toString().length,"0")+"/"+e.signatures.length,a){let d="";const u=i.parameters[r];Array.isArray(u.label)?d=i.label.substring(u.label[0],u.label[1]):d=u.label,u.documentation&&(d+=typeof u.documentation=="string"?`, ${u.documentation}`:`, ${u.documentation.value}`),i.documentation&&(d+=typeof i.documentation=="string"?`, ${i.documentation}`:`, ${i.documentation.value}`),this.announcedLabel!==d&&($s(p("hint","{0}, hint",d)),this.announcedLabel=d)}this.editor.layoutContentWidget(this),this.domNodes.scrollbar.scanDomNode()}renderMarkdownDocs(e){const t=new Cn,i=this.renderDisposeables.add(this.markdownRenderer.render(e,{asyncRenderCallback:()=>{var o;(o=this.domNodes)==null||o.scrollbar.scanDomNode()}}));i.element.classList.add("markdown-docs");const n=t.elapsed();return n>300&&this.telemetryService.publicLog2("parameterHints.parseMarkdown",{renderDuration:n}),i}hasDocs(e,t){return!!(t&&typeof t.documentation=="string"&&Nu(t.documentation).length>0||t&&typeof t.documentation=="object"&&Nu(t.documentation).value.length>0||e.documentation&&typeof e.documentation=="string"&&Nu(e.documentation).length>0||e.documentation&&typeof e.documentation=="object"&&Nu(e.documentation.value).length>0)}renderParameters(e,t,i){const[n,o]=this.getParameterLabelOffsets(t,i),r=document.createElement("span");r.textContent=t.label.substring(0,n);const a=document.createElement("span");a.textContent=t.label.substring(n,o),a.className="parameter active";const l=document.createElement("span");l.textContent=t.label.substring(o),J(e,r,a,l)}getParameterLabelOffsets(e,t){const i=e.parameters[t];if(i){if(Array.isArray(i.label))return i.label;if(i.label.length){const n=new RegExp(`(\\W|^)${wr(i.label)}(?=\\W|$)`,"g");n.test(e.label);const o=n.lastIndex-i.label.length;return o>=0?[o,n.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()}getDomNode(){return this.domNodes||this.createParameterHintDOMNodes(),this.domNodes.element}getId(){return I5.ID}updateMaxHeight(){if(!this.domNodes)return;const t=`${Math.max(this.editor.getLayoutInfo().height/4,250)}px`;this.domNodes.element.style.maxHeight=t;const i=this.domNodes.element.getElementsByClassName("phwrapper");i.length&&(i[0].style.maxHeight=t)}},I5=tp,tp.ID="editor.widget.parameterHintsWidget",tp);D5=I5=a2e([Z0(2,Pe),Z0(3,po),Z0(4,fi),Z0(5,ls)],D5);T("editorHoverWidget.highlightForeground",Gm,p("editorHoverWidgetHighlightForeground","Foreground color of the active item in the parameter hint."));var d2e=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},RU=function(s,e){return function(t,i){e(t,i,s)}},T5,ip;let iv=(ip=class extends B{static get(e){return e.getContribution(T5.ID)}constructor(e,t,i){super(),this.editor=e,this.model=this._register(new E5(e,i.signatureHelpProvider)),this._register(this.model.onChangedHints(n=>{var o;n?(this.widget.value.show(),this.widget.value.render(n)):(o=this.widget.rawValue)==null||o.hide()})),this.widget=new _l(()=>this._register(t.createInstance(D5,this.editor,this.model)))}cancel(){this.model.cancel()}previous(){var e;(e=this.widget.rawValue)==null||e.previous()}next(){var e;(e=this.widget.rawValue)==null||e.next()}trigger(e){this.model.trigger(e,0)}},T5=ip,ip.ID="editor.controller.parameterHints",ip);iv=T5=d2e([RU(1,Le),RU(2,_e)],iv);class u2e extends me{constructor(){super({id:"editor.action.triggerParameterHints",label:p("parameterHints.trigger.label","Trigger Parameter Hints"),alias:"Trigger Parameter Hints",precondition:D.hasSignatureHelpProvider,kbOpts:{kbExpr:D.editorTextFocus,primary:3082,weight:100}})}run(e,t){const i=iv.get(t);i==null||i.trigger({triggerKind:fc.Invoke})}}pt(iv.ID,iv,2);ee(u2e);const O9=175,F9=sn.bindToContribution(iv.get);ge(new F9({id:"closeParameterHints",precondition:Op.Visible,handler:s=>s.cancel(),kbOpts:{weight:O9,kbExpr:D.focus,primary:9,secondary:[1033]}}));ge(new F9({id:"showPrevParameterHint",precondition:Z.and(Op.Visible,Op.MultipleSignatures),handler:s=>s.previous(),kbOpts:{weight:O9,kbExpr:D.focus,primary:16,secondary:[528],mac:{primary:16,secondary:[528,302]}}}));ge(new F9({id:"showNextParameterHint",precondition:Z.and(Op.Visible,Op.MultipleSignatures),handler:s=>s.next(),kbOpts:{weight:O9,kbExpr:D.focus,primary:18,secondary:[530],mac:{primary:18,secondary:[530,300]}}}));var h2e=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},g2e=function(s,e){return function(t,i){e(t,i,s)}};class f2e{constructor(e){this.instantiationService=e}init(...e){}}function p2e(s,e){return class extends e{constructor(){super(...arguments),this._autorun=void 0}init(...i){this._autorun=so((n,o)=>{const r=To(s(),n);o.add(this.instantiationService.createInstance(r,...i))})}dispose(){var i;(i=this._autorun)==null||i.dispose()}}}function m2e(s){return eN()?p2e(s,N5):s()}let N5=class extends f2e{constructor(e,t){super(t),this.init(e)}};N5=h2e([g2e(1,Le)],N5);pt(Ny.ID,m2e(()=>Ny),0);T("editor.placeholder.foreground",c_e,p("placeholderForeground","Foreground color of the placeholder text in the editor."));var _2e=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Y0=function(s,e){return function(t,i){e(t,i,s)}};const zv=new fe("renameInputVisible",!1,p("renameInputVisible","Whether the rename input widget is visible"));new fe("renameInputFocused",!1,p("renameInputFocused","Whether the rename input widget is focused"));let R5=class{constructor(e,t,i,n,o,r){this._editor=e,this._acceptKeybindings=t,this._themeService=i,this._keybindingService=n,this._logService=r,this.allowEditorOverflow=!0,this._disposables=new G,this._visibleContextKey=zv.bindTo(o),this._isEditingRenameCandidate=!1,this._nRenameSuggestionsInvocations=0,this._hadAutomaticRenameSuggestionsInvocation=!1,this._candidates=new Set,this._beforeFirstInputFieldEditSW=new Cn,this._inputWithButton=new b2e,this._disposables.add(this._inputWithButton),this._editor.addContentWidget(this),this._disposables.add(this._editor.onDidChangeConfiguration(a=>{a.hasChanged(50)&&this._updateFont()})),this._disposables.add(i.onDidColorThemeChange(this._updateStyles,this))}dispose(){this._disposables.dispose(),this._editor.removeContentWidget(this)}getId(){return"__renameInputWidget"}getDomNode(){return this._domNode||(this._domNode=document.createElement("div"),this._domNode.className="monaco-editor rename-box",this._domNode.appendChild(this._inputWithButton.domNode),this._renameCandidateListView=this._disposables.add(new B9(this._domNode,{fontInfo:this._editor.getOption(50),onFocusChange:e=>{this._inputWithButton.input.value=e,this._isEditingRenameCandidate=!1},onSelectionChange:()=>{this._isEditingRenameCandidate=!1,this.acceptInput(!1)}})),this._disposables.add(this._inputWithButton.onDidInputChange(()=>{var e,t,i,n;((e=this._renameCandidateListView)==null?void 0:e.focusedCandidate)!==void 0&&(this._isEditingRenameCandidate=!0),(t=this._timeBeforeFirstInputFieldEdit)!=null||(this._timeBeforeFirstInputFieldEdit=this._beforeFirstInputFieldEditSW.elapsed()),((i=this._renameCandidateProvidersCts)==null?void 0:i.token.isCancellationRequested)===!1&&this._renameCandidateProvidersCts.cancel(),(n=this._renameCandidateListView)==null||n.clearFocus()})),this._label=document.createElement("div"),this._label.className="rename-label",this._domNode.appendChild(this._label),this._updateFont(),this._updateStyles(this._themeService.getColorTheme())),this._domNode}_updateStyles(e){var o,r,a,l,c;if(!this._domNode)return;const t=e.getColor(xv),i=e.getColor(SY);this._domNode.style.backgroundColor=String((o=e.getColor(pr))!=null?o:""),this._domNode.style.boxShadow=t?` 0 0 8px 2px ${t}`:"",this._domNode.style.border=i?`1px solid ${i}`:"",this._domNode.style.color=String((r=e.getColor(LY))!=null?r:"");const n=e.getColor(EY);this._inputWithButton.domNode.style.backgroundColor=String((a=e.getColor(UP))!=null?a:""),this._inputWithButton.input.style.backgroundColor=String((l=e.getColor(UP))!=null?l:""),this._inputWithButton.domNode.style.borderWidth=n?"1px":"0px",this._inputWithButton.domNode.style.borderStyle=n?"solid":"none",this._inputWithButton.domNode.style.borderColor=(c=n==null?void 0:n.toString())!=null?c:"none"}_updateFont(){if(this._domNode===void 0)return;Ct(this._label!==void 0,"RenameWidget#_updateFont: _label must not be undefined given _domNode is defined"),this._editor.applyFontInfo(this._inputWithButton.input);const e=this._editor.getOption(50);this._label.style.fontSize=`${this._computeLabelFontSize(e.fontSize)}px`}_computeLabelFontSize(e){return e*.8}getPosition(){if(!this._visible||!this._editor.hasModel()||!this._editor.getDomNode())return null;const e=Sh(this.getDomNode().ownerDocument.body),t=Mi(this._editor.getDomNode()),i=this._getTopForPosition();this._nPxAvailableAbove=i+t.top,this._nPxAvailableBelow=e.height-this._nPxAvailableAbove;const n=this._editor.getOption(67),{totalHeight:o}=Ry.getLayoutInfo({lineHeight:n}),r=this._nPxAvailableBelow>o*6?[2,1]:[1,2];return{position:this._position,preference:r}}beforeRender(){var i,n;const[e,t]=this._acceptKeybindings;return this._label.innerText=p({key:"label",comment:['placeholders are keybindings, e.g "F2 to Rename, Shift+F2 to Preview"']},"{0} to Rename, {1} to Preview",(i=this._keybindingService.lookupKeybinding(e))==null?void 0:i.getLabel(),(n=this._keybindingService.lookupKeybinding(t))==null?void 0:n.getLabel()),this._domNode.style.minWidth="200px",null}afterRender(e){if(e===null){this.cancelInput(!0,"afterRender (because position is null)");return}if(!this._editor.hasModel()||!this._editor.getDomNode())return;Ct(this._renameCandidateListView),Ct(this._nPxAvailableAbove!==void 0),Ct(this._nPxAvailableBelow!==void 0);const t=pd(this._inputWithButton.domNode),i=pd(this._label);let n;e===2?n=this._nPxAvailableBelow:n=this._nPxAvailableAbove,this._renameCandidateListView.layout({height:n-i-t,width:Io(this._inputWithButton.domNode)})}acceptInput(e){var t;this._trace("invoking acceptInput"),(t=this._currentAcceptInput)==null||t.call(this,e)}cancelInput(e,t){var i;(i=this._currentCancelInput)==null||i.call(this,e)}focusNextRenameSuggestion(){var e;(e=this._renameCandidateListView)!=null&&e.focusNext()||(this._inputWithButton.input.value=this._currentName)}focusPreviousRenameSuggestion(){var e;(e=this._renameCandidateListView)!=null&&e.focusPrevious()||(this._inputWithButton.input.value=this._currentName)}getInput(e,t,i,n,o){const{start:r,end:a}=this._getSelection(e,t);this._renameCts=o;const l=new G;this._nRenameSuggestionsInvocations=0,this._hadAutomaticRenameSuggestionsInvocation=!1,n===void 0?this._inputWithButton.button.style.display="none":(this._inputWithButton.button.style.display="flex",this._requestRenameCandidatesOnce=n,this._requestRenameCandidates(t,!1),l.add(j(this._inputWithButton.button,"click",()=>this._requestRenameCandidates(t,!0))),l.add(j(this._inputWithButton.button,re.KEY_DOWN,d=>{const u=new Ut(d);(u.equals(3)||u.equals(10))&&(u.stopPropagation(),u.preventDefault(),this._requestRenameCandidates(t,!0))}))),this._isEditingRenameCandidate=!1,this._domNode.classList.toggle("preview",i),this._position=new P(e.startLineNumber,e.startColumn),this._currentName=t,this._inputWithButton.input.value=t,this._inputWithButton.input.setAttribute("selectionStart",r.toString()),this._inputWithButton.input.setAttribute("selectionEnd",a.toString()),this._inputWithButton.input.size=Math.max((e.endColumn-e.startColumn)*1.1,20),this._beforeFirstInputFieldEditSW.reset(),l.add(ke(()=>{this._renameCts=void 0,o.dispose(!0)})),l.add(ke(()=>{this._renameCandidateProvidersCts!==void 0&&(this._renameCandidateProvidersCts.dispose(!0),this._renameCandidateProvidersCts=void 0)})),l.add(ke(()=>this._candidates.clear()));const c=new bv;return c.p.finally(()=>{l.dispose(),this._hide()}),this._currentCancelInput=d=>{var u;return this._trace("invoking _currentCancelInput"),this._currentAcceptInput=void 0,this._currentCancelInput=void 0,(u=this._renameCandidateListView)==null||u.clearCandidates(),c.complete(d),!0},this._currentAcceptInput=d=>{this._trace("invoking _currentAcceptInput"),Ct(this._renameCandidateListView!==void 0);const u=this._renameCandidateListView.nCandidates;let h,g;const f=this._renameCandidateListView.focusedCandidate;if(f!==void 0?(this._trace("using new name from renameSuggestion"),h=f,g={k:"renameSuggestion"}):(this._trace("using new name from inputField"),h=this._inputWithButton.input.value,g=this._isEditingRenameCandidate?{k:"userEditedRenameSuggestion"}:{k:"inputField"}),h===t||h.trim().length===0){this.cancelInput(!0,"_currentAcceptInput (because newName === value || newName.trim().length === 0)");return}this._currentAcceptInput=void 0,this._currentCancelInput=void 0,this._renameCandidateListView.clearCandidates(),c.complete({newName:h,wantsPreview:i&&d,stats:{source:g,nRenameSuggestions:u,timeBeforeFirstInputFieldEdit:this._timeBeforeFirstInputFieldEdit,nRenameSuggestionsInvocations:this._nRenameSuggestionsInvocations,hadAutomaticRenameSuggestionsInvocation:this._hadAutomaticRenameSuggestionsInvocation}})},l.add(o.token.onCancellationRequested(()=>this.cancelInput(!0,"cts.token.onCancellationRequested"))),l.add(this._editor.onDidBlurEditorWidget(()=>{var d;return this.cancelInput(!((d=this._domNode)!=null&&d.ownerDocument.hasFocus()),"editor.onDidBlurEditorWidget")})),this._show(),c.p}_requestRenameCandidates(e,t){if(this._requestRenameCandidatesOnce!==void 0&&(this._renameCandidateProvidersCts!==void 0&&this._renameCandidateProvidersCts.dispose(!0),Ct(this._renameCts),this._inputWithButton.buttonState!=="stop")){this._renameCandidateProvidersCts=new Ci;const i=t?f1.Invoke:f1.Automatic,n=this._requestRenameCandidatesOnce(i,this._renameCandidateProvidersCts.token);if(n.length===0){this._inputWithButton.setSparkleButton();return}t||(this._hadAutomaticRenameSuggestionsInvocation=!0),this._nRenameSuggestionsInvocations+=1,this._inputWithButton.setStopButton(),this._updateRenameCandidates(n,e,this._renameCts.token)}}_getSelection(e,t){Ct(this._editor.hasModel());const i=this._editor.getSelection();let n=0,o=t.length;return!L.isEmpty(i)&&!L.spansMultipleLines(i)&&L.containsRange(e,i)&&(n=Math.max(0,i.startColumn-e.startColumn),o=Math.min(e.endColumn,i.endColumn)-e.startColumn),{start:n,end:o}}_show(){this._trace("invoking _show"),this._editor.revealLineInCenterIfOutsideViewport(this._position.lineNumber,0),this._visible=!0,this._visibleContextKey.set(!0),this._editor.layoutContentWidget(this),setTimeout(()=>{this._inputWithButton.input.focus(),this._inputWithButton.input.setSelectionRange(parseInt(this._inputWithButton.input.getAttribute("selectionStart")),parseInt(this._inputWithButton.input.getAttribute("selectionEnd")))},100)}_updateRenameCandidates(e,t,i){return I(this,null,function*(){const n=(...c)=>this._trace("_updateRenameCandidates",...c);n("start");const o=yield Jy(Promise.allSettled(e),i);if(this._inputWithButton.setSparkleButton(),o===void 0){n("returning early - received updateRenameCandidates results - undefined");return}const r=o.flatMap(c=>c.status==="fulfilled"&&gc(c.value)?c.value:[]);n(`received updateRenameCandidates results - total (unfiltered) ${r.length} candidates.`);const a=Pd(r,c=>c.newSymbolName);n(`distinct candidates - ${a.length} candidates.`);const l=a.filter(({newSymbolName:c})=>c.trim().length>0&&c!==this._inputWithButton.input.value&&c!==t&&!this._candidates.has(c));if(n(`valid distinct candidates - ${r.length} candidates.`),l.forEach(c=>this._candidates.add(c.newSymbolName)),l.length<1){n("returning early - no valid distinct candidates");return}n("setting candidates"),this._renameCandidateListView.setCandidates(l),n("asking editor to re-layout"),this._editor.layoutContentWidget(this)})}_hide(){this._trace("invoked _hide"),this._visible=!1,this._visibleContextKey.reset(),this._editor.layoutContentWidget(this)}_getTopForPosition(){const e=this._editor.getVisibleRanges();let t;return e.length>0?t=e[0].startLineNumber:(this._logService.warn("RenameWidget#_getTopForPosition: this should not happen - visibleRanges is empty"),t=Math.max(1,this._position.lineNumber-5)),this._editor.getTopForLineNumber(this._position.lineNumber)-this._editor.getTopForLineNumber(t)}_trace(...e){this._logService.trace("RenameWidget",...e)}};R5=_2e([Y0(2,on),Y0(3,It),Y0(4,Pe),Y0(5,Jn)],R5);class B9{constructor(e,t){this._disposables=new G,this._availableHeight=0,this._minimumWidth=0,this._lineHeight=t.fontInfo.lineHeight,this._typicalHalfwidthCharacterWidth=t.fontInfo.typicalHalfwidthCharacterWidth,this._listContainer=document.createElement("div"),this._listContainer.className="rename-box rename-candidate-list-container",e.appendChild(this._listContainer),this._listWidget=B9._createListWidget(this._listContainer,this._candidateViewHeight,t.fontInfo),this._listWidget.onDidChangeFocus(i=>{i.elements.length===1&&t.onFocusChange(i.elements[0].newSymbolName)},this._disposables),this._listWidget.onDidChangeSelection(i=>{i.elements.length===1&&t.onSelectionChange()},this._disposables),this._disposables.add(this._listWidget.onDidBlur(i=>{this._listWidget.setFocus([])})),this._listWidget.style(jp({listInactiveFocusForeground:T1,listInactiveFocusBackground:N1}))}dispose(){this._listWidget.dispose(),this._disposables.dispose()}layout({height:e,width:t}){this._availableHeight=e,this._minimumWidth=t}setCandidates(e){this._listWidget.splice(0,0,e);const t=this._pickListHeight(this._listWidget.length),i=this._pickListWidth(e);this._listWidget.layout(t,i),this._listContainer.style.height=`${t}px`,this._listContainer.style.width=`${i}px`,yc(p("renameSuggestionsReceivedAria","Received {0} rename suggestions",e.length))}clearCandidates(){this._listContainer.style.height="0px",this._listContainer.style.width="0px",this._listWidget.splice(0,this._listWidget.length,[])}get nCandidates(){return this._listWidget.length}get focusedCandidate(){if(this._listWidget.length===0)return;const e=this._listWidget.getSelectedElements()[0];if(e!==void 0)return e.newSymbolName;const t=this._listWidget.getFocusedElements()[0];if(t!==void 0)return t.newSymbolName}focusNext(){if(this._listWidget.length===0)return!1;const e=this._listWidget.getFocus();if(e.length===0)return this._listWidget.focusFirst(),this._listWidget.reveal(0),!0;if(e[0]===this._listWidget.length-1)return this._listWidget.setFocus([]),this._listWidget.reveal(0),!1;{this._listWidget.focusNext();const t=this._listWidget.getFocus()[0];return this._listWidget.reveal(t),!0}}focusPrevious(){if(this._listWidget.length===0)return!1;const e=this._listWidget.getFocus();if(e.length===0){this._listWidget.focusLast();const t=this._listWidget.getFocus()[0];return this._listWidget.reveal(t),!0}else{if(e[0]===0)return this._listWidget.setFocus([]),!1;{this._listWidget.focusPrevious();const t=this._listWidget.getFocus()[0];return this._listWidget.reveal(t),!0}}}clearFocus(){this._listWidget.setFocus([])}get _candidateViewHeight(){const{totalHeight:e}=Ry.getLayoutInfo({lineHeight:this._lineHeight});return e}_pickListHeight(e){const t=this._candidateViewHeight*e;return Math.min(t,this._availableHeight,this._candidateViewHeight*7)}_pickListWidth(e){const t=Math.ceil(Math.max(...e.map(n=>n.newSymbolName.length))*this._typicalHalfwidthCharacterWidth);return Math.max(this._minimumWidth,25+t+10)}static _createListWidget(e,t,i){const n=new class{getTemplateId(r){return"candidate"}getHeight(r){return t}},o=new class{constructor(){this.templateId="candidate"}renderTemplate(r){return new Ry(r,i)}renderElement(r,a,l){l.populate(r)}disposeTemplate(r){r.dispose()}};return new Ir("NewSymbolNameCandidates",e,n,[o],{keyboardSupport:!1,mouseSupport:!0,multipleSelectionSupport:!1})}}class b2e{constructor(){this._onDidInputChange=new O,this.onDidInputChange=this._onDidInputChange.event,this._disposables=new G}get domNode(){return this._domNode||(this._domNode=document.createElement("div"),this._domNode.className="rename-input-with-button",this._domNode.style.display="flex",this._domNode.style.flexDirection="row",this._domNode.style.alignItems="center",this._inputNode=document.createElement("input"),this._inputNode.className="rename-input",this._inputNode.type="text",this._inputNode.style.border="none",this._inputNode.setAttribute("aria-label",p("renameAriaLabel","Rename input. Type new name and press Enter to commit.")),this._domNode.appendChild(this._inputNode),this._buttonNode=document.createElement("div"),this._buttonNode.className="rename-suggestions-button",this._buttonNode.setAttribute("tabindex","0"),this._buttonGenHoverText=p("generateRenameSuggestionsButton","Generate new name suggestions"),this._buttonCancelHoverText=p("cancelRenameSuggestionsButton","Cancel"),this._buttonHover=Ll().setupManagedHover(js("element"),this._buttonNode,this._buttonGenHoverText),this._disposables.add(this._buttonHover),this._domNode.appendChild(this._buttonNode),this._disposables.add(j(this.input,re.INPUT,()=>this._onDidInputChange.fire())),this._disposables.add(j(this.input,re.KEY_DOWN,e=>{const t=new Ut(e);(t.keyCode===15||t.keyCode===17)&&this._onDidInputChange.fire()})),this._disposables.add(j(this.input,re.CLICK,()=>this._onDidInputChange.fire())),this._disposables.add(j(this.input,re.FOCUS,()=>{this.domNode.style.outlineWidth="1px",this.domNode.style.outlineStyle="solid",this.domNode.style.outlineOffset="-1px",this.domNode.style.outlineColor="var(--vscode-focusBorder)"})),this._disposables.add(j(this.input,re.BLUR,()=>{this.domNode.style.outline="none"}))),this._domNode}get input(){return Ct(this._inputNode),this._inputNode}get button(){return Ct(this._buttonNode),this._buttonNode}get buttonState(){return this._buttonState}setSparkleButton(){var e,t;this._buttonState="sparkle",(e=this._sparkleIcon)!=null||(this._sparkleIcon=bp(oe.sparkle)),Tn(this.button),this.button.appendChild(this._sparkleIcon),this.button.setAttribute("aria-label","Generating new name suggestions"),(t=this._buttonHover)==null||t.update(this._buttonGenHoverText),this.input.focus()}setStopButton(){var e,t;this._buttonState="stop",(e=this._stopIcon)!=null||(this._stopIcon=bp(oe.primitiveSquare)),Tn(this.button),this.button.appendChild(this._stopIcon),this.button.setAttribute("aria-label","Cancel generating new name suggestions"),(t=this._buttonHover)==null||t.update(this._buttonCancelHoverText),this.input.focus()}dispose(){this._disposables.dispose()}}const o1=class o1{constructor(e,t){this._domNode=document.createElement("div"),this._domNode.className="rename-box rename-candidate",this._domNode.style.display="flex",this._domNode.style.columnGap="5px",this._domNode.style.alignItems="center",this._domNode.style.height=`${t.lineHeight}px`,this._domNode.style.padding=`${o1._PADDING}px`;const i=document.createElement("div");i.style.display="flex",i.style.alignItems="center",i.style.width=i.style.height=`${t.lineHeight*.8}px`,this._domNode.appendChild(i),this._icon=bp(oe.sparkle),this._icon.style.display="none",i.appendChild(this._icon),this._label=document.createElement("div"),Rn(this._label,t),this._domNode.appendChild(this._label),e.appendChild(this._domNode)}populate(e){this._updateIcon(e),this._updateLabel(e)}_updateIcon(e){var i;const t=!!((i=e.tags)!=null&&i.includes(tM.AIGenerated));this._icon.style.display=t?"inherit":"none"}_updateLabel(e){this._label.innerText=e.newSymbolName}static getLayoutInfo({lineHeight:e}){return{totalHeight:e+o1._PADDING*2}}dispose(){}};o1._PADDING=2;let Ry=o1;var v2e=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},du=function(s,e){return function(t,i){e(t,i,s)}},A5;class W9{constructor(e,t,i){this.model=e,this.position=t,this._providerRenameIdx=0,this._providers=i.ordered(e)}hasProvider(){return this._providers.length>0}resolveRenameLocation(e){return I(this,null,function*(){const t=[];for(this._providerRenameIdx=0;this._providerRenameIdx<this._providers.length;this._providerRenameIdx++){const n=this._providers[this._providerRenameIdx];if(!n.resolveRenameLocation)break;const o=yield n.resolveRenameLocation(this.model,this.position,e);if(o){if(o.rejectReason){t.push(o.rejectReason);continue}return o}}this._providerRenameIdx=0;const i=this.model.getWordAtPosition(this.position);return i?{range:new L(this.position.lineNumber,i.startColumn,this.position.lineNumber,i.endColumn),text:i.word,rejectReason:t.length>0?t.join(`
748
748
  `):void 0}:{range:L.fromPositions(this.position),text:"",rejectReason:t.length>0?t.join(`
749
749
  `):void 0}})}provideRenameEdits(e,t){return I(this,null,function*(){return this._provideRenameEdits(e,this._providerRenameIdx,[],t)})}_provideRenameEdits(e,t,i,n){return I(this,null,function*(){const o=this._providers[t];if(!o)return{edits:[],rejectReason:i.join(`
750
- `)};const r=yield o.provideRenameEdits(this.model,this.position,e,n);if(r){if(r.rejectReason)return this._provideRenameEdits(e,t+1,i.concat(r.rejectReason),n)}else return this._provideRenameEdits(e,t+1,i.concat(p("no result","No result.")),n);return r})}}function w2e(s,e,t,i){return I(this,null,function*(){const n=new W9(e,t,s),o=yield n.resolveRenameLocation(Ze.None);return o!=null&&o.rejectReason?{edits:[],rejectReason:o.rejectReason}:n.provideRenameEdits(i,Ze.None)})}var np;let Oh=(np=class{static get(e){return e.getContribution(A5.ID)}constructor(e,t,i,n,o,r,a,l,c){this.editor=e,this._instaService=t,this._notificationService=i,this._bulkEditService=n,this._progressService=o,this._logService=r,this._configService=a,this._languageFeaturesService=l,this._telemetryService=c,this._disposableStore=new G,this._cts=new Ci,this._renameWidget=this._disposableStore.add(this._instaService.createInstance(R5,this.editor,["acceptRenameInput","acceptRenameInputWithPreview"]))}dispose(){this._disposableStore.dispose(),this._cts.dispose(!0)}run(){return I(this,null,function*(){var f,m;const e=this._logService.trace.bind(this._logService,"[rename]");if(this._cts.dispose(!0),this._cts=new Ci,!this.editor.hasModel()){e("editor has no model");return}const t=this.editor.getPosition(),i=new W9(this.editor.getModel(),t,this._languageFeaturesService.renameProvider);if(!i.hasProvider()){e("skeleton has no provider");return}const n=new Rh(this.editor,5,void 0,this._cts.token);let o;try{e("resolving rename location");const _=i.resolveRenameLocation(n.token);this._progressService.showWhile(_,250),o=yield _,e("resolved rename location")}catch(_){_ instanceof ya?e("resolve rename location cancelled",JSON.stringify(_,null," ")):(e("resolve rename location failed",_ instanceof Error?_:JSON.stringify(_,null," ")),(typeof _=="string"||pl(_))&&((f=Wo.get(this.editor))==null||f.showMessage(_||p("resolveRenameLocationFailed","An unknown error occurred while resolving rename location"),t)));return}finally{n.dispose()}if(!o){e("returning early - no loc");return}if(o.rejectReason){e(`returning early - rejected with reason: ${o.rejectReason}`,o.rejectReason),(m=Wo.get(this.editor))==null||m.showMessage(o.rejectReason,t);return}if(n.token.isCancellationRequested){e("returning early - cts1 cancelled");return}const r=new Rh(this.editor,5,o.range,this._cts.token),a=this.editor.getModel(),l=this._languageFeaturesService.newSymbolNamesProvider.all(a),c=yield Promise.all(l.map(_=>I(this,null,function*(){var b;return[_,(b=yield _.supportsAutomaticNewSymbolNamesTriggerKind)!=null?b:!1]}))),d=(_,b)=>{let v=c.slice();return _===f1.Automatic&&(v=v.filter(([w,C])=>C)),v.map(([w])=>w.provideNewSymbolNames(a,o.range,_,b))};e("creating rename input field and awaiting its result");const u=this._bulkEditService.hasPreviewHandler()&&this._configService.getValue(this.editor.getModel().uri,"editor.rename.enablePreview"),h=yield this._renameWidget.getInput(o.range,o.text,u,l.length>0?d:void 0,r);if(e("received response from rename input field"),l.length>0&&this._reportTelemetry(l.length,a.getLanguageId(),h),typeof h=="boolean"){e(`returning early - rename input field response - ${h}`),h&&this.editor.focus(),r.dispose();return}this.editor.focus(),e("requesting rename edits");const g=Jy(i.provideRenameEdits(h.newName,r.token),r.token).then(_=>I(this,null,function*(){if(!_){e("returning early - no rename edits result");return}if(!this.editor.hasModel()){e("returning early - no model after rename edits are provided");return}if(_.rejectReason){e(`returning early - rejected with reason: ${_.rejectReason}`),this._notificationService.info(_.rejectReason);return}this.editor.setSelection(L.fromPositions(this.editor.getSelection().getPosition())),e("applying edits"),this._bulkEditService.apply(_,{editor:this.editor,showPreview:h.wantsPreview,label:p("label","Renaming '{0}' to '{1}'",o==null?void 0:o.text,h.newName),code:"undoredo.rename",quotableLabel:p("quotableLabel","Renaming {0} to {1}",o==null?void 0:o.text,h.newName),respectAutoSaveConfig:!0}).then(b=>{e("edits applied"),b.ariaSummary&&$s(p("aria","Successfully renamed '{0}' to '{1}'. Summary: {2}",o.text,h.newName,b.ariaSummary))}).catch(b=>{e(`error when applying edits ${JSON.stringify(b,null," ")}`),this._notificationService.error(p("rename.failedApply","Rename failed to apply edits")),this._logService.error(b)})}),_=>{e("error when providing rename edits",JSON.stringify(_,null," ")),this._notificationService.error(p("rename.failed","Rename failed to compute edits")),this._logService.error(_)}).finally(()=>{r.dispose()});return e("returning rename operation"),this._progressService.showWhile(g,250),g})}acceptRenameInput(e){this._renameWidget.acceptInput(e)}cancelRenameInput(){this._renameWidget.cancelInput(!0,"cancelRenameInput command")}focusNextRenameSuggestion(){this._renameWidget.focusNextRenameSuggestion()}focusPreviousRenameSuggestion(){this._renameWidget.focusPreviousRenameSuggestion()}_reportTelemetry(e,t,i){const n=typeof i=="boolean"?{kind:"cancelled",languageId:t,nRenameSuggestionProviders:e}:{kind:"accepted",languageId:t,nRenameSuggestionProviders:e,source:i.stats.source.k,nRenameSuggestions:i.stats.nRenameSuggestions,timeBeforeFirstInputFieldEdit:i.stats.timeBeforeFirstInputFieldEdit,wantsPreview:i.wantsPreview,nRenameSuggestionsInvocations:i.stats.nRenameSuggestionsInvocations,hadAutomaticRenameSuggestionsInvocation:i.stats.hadAutomaticRenameSuggestionsInvocation};this._telemetryService.publicLog2("renameInvokedEvent",n)}},A5=np,np.ID="editor.contrib.renameController",np);Oh=A5=v2e([du(1,Le),du(2,$i),du(3,aS),du(4,Hh),du(5,Jn),du(6,gT),du(7,_e),du(8,ls)],Oh);class C2e extends me{constructor(){super({id:"editor.action.rename",label:p("rename.label","Rename Symbol"),alias:"Rename Symbol",precondition:Z.and(D.writable,D.hasRenameProvider),kbOpts:{kbExpr:D.editorTextFocus,primary:60,weight:100},contextMenuOpts:{group:"1_modification",order:1.1}})}runCommand(e,t){const i=e.get(yt),[n,o]=Array.isArray(t)&&t||[void 0,void 0];return Ie.isUri(n)&&P.isIPosition(o)?i.openCodeEditor({resource:n},i.getActiveCodeEditor()).then(r=>{r&&(r.setPosition(o),r.invokeWithinContext(a=>(this.reportTelemetry(a,r),this.run(a,r))))},ze):super.runCommand(e,t)}run(e,t){const i=e.get(Jn),n=Oh.get(t);return n?(i.trace("[RenameAction] got controller, running..."),n.run()):(i.trace("[RenameAction] returning early - controller missing"),Promise.resolve())}}pt(Oh.ID,Oh,4);ee(C2e);const H9=sn.bindToContribution(Oh.get);ge(new H9({id:"acceptRenameInput",precondition:zv,handler:s=>s.acceptRenameInput(!1),kbOpts:{weight:199,kbExpr:Z.and(D.focus,Z.not("isComposing")),primary:3}}));ge(new H9({id:"acceptRenameInputWithPreview",precondition:Z.and(zv,Z.has("config.editor.rename.enablePreview")),handler:s=>s.acceptRenameInput(!0),kbOpts:{weight:199,kbExpr:Z.and(D.focus,Z.not("isComposing")),primary:2051}}));ge(new H9({id:"cancelRenameInput",precondition:zv,handler:s=>s.cancelRenameInput(),kbOpts:{weight:199,kbExpr:D.focus,primary:9,secondary:[1033]}}));jt(class extends Us{constructor(){super({id:"focusNextRenameSuggestion",title:$({},Be("focusNextRenameSuggestion","Focus Next Rename Suggestion")),precondition:zv,keybinding:[{primary:18,weight:199}]})}run(e){const t=e.get(yt).getFocusedCodeEditor();if(!t)return;const i=Oh.get(t);i&&i.focusNextRenameSuggestion()}});jt(class extends Us{constructor(){super({id:"focusPreviousRenameSuggestion",title:$({},Be("focusPreviousRenameSuggestion","Focus Previous Rename Suggestion")),precondition:zv,keybinding:[{primary:16,weight:199}]})}run(e){const t=e.get(yt).getFocusedCodeEditor();if(!t)return;const i=Oh.get(t);i&&i.focusPreviousRenameSuggestion()}});fo("_executeDocumentRenameProvider",function(s,e,t,...i){const[n]=i;Ct(typeof n=="string");const{renameProvider:o}=s.get(_e);return w2e(o,e,t,n)});fo("_executePrepareRename",function(s,e,t){return I(this,null,function*(){const{renameProvider:i}=s.get(_e),o=yield new W9(e,t,i).resolveRenameLocation(Ze.None);if(o!=null&&o.rejectReason)throw new Error(o.rejectReason);return o})});yi.as(Ta.Configuration).registerConfiguration({id:"editor",properties:{"editor.rename.enablePreview":{scope:5,description:p("enablePreview","Enable/disable the ability to preview changes before renaming"),default:!0,type:"boolean"}}});var y2e=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},AU=function(s,e){return function(t,i){e(t,i,s)}},hb;let RE=(hb=class extends B{constructor(e,t,i){super(),this.editor=e,this.languageConfigurationService=t,this.editorWorkerService=i,this.decorations=this.editor.createDecorationsCollection(),this.options=this.createOptions(e.getOption(73)),this.computePromise=null,this.currentOccurrences={},this._register(e.onDidChangeModel(n=>{this.currentOccurrences={},this.options=this.createOptions(e.getOption(73)),this.stop(),this.computeSectionHeaders.schedule(0)})),this._register(e.onDidChangeModelLanguage(n=>{this.currentOccurrences={},this.options=this.createOptions(e.getOption(73)),this.stop(),this.computeSectionHeaders.schedule(0)})),this._register(t.onDidChange(n=>{var r;const o=(r=this.editor.getModel())==null?void 0:r.getLanguageId();o&&n.affects(o)&&(this.currentOccurrences={},this.options=this.createOptions(e.getOption(73)),this.stop(),this.computeSectionHeaders.schedule(0))})),this._register(e.onDidChangeConfiguration(n=>{this.options&&!n.hasChanged(73)||(this.options=this.createOptions(e.getOption(73)),this.updateDecorations([]),this.stop(),this.computeSectionHeaders.schedule(0))})),this._register(this.editor.onDidChangeModelContent(n=>{this.computeSectionHeaders.schedule()})),this._register(e.onDidChangeModelTokens(n=>{this.computeSectionHeaders.isScheduled()||this.computeSectionHeaders.schedule(1e3)})),this.computeSectionHeaders=this._register(new Ft(()=>{this.findSectionHeaders()},250)),this.computeSectionHeaders.schedule(0)}createOptions(e){if(!e||!this.editor.hasModel())return;const t=this.editor.getModel().getLanguageId();if(!t)return;const i=this.languageConfigurationService.getLanguageConfiguration(t).comments,n=this.languageConfigurationService.getLanguageConfiguration(t).foldingRules;if(!(!i&&!(n!=null&&n.markers)))return{foldingRules:n,findMarkSectionHeaders:e.showMarkSectionHeaders,findRegionSectionHeaders:e.showRegionSectionHeaders}}findSectionHeaders(){var i,n;if(!this.editor.hasModel()||!((i=this.options)!=null&&i.findMarkSectionHeaders)&&!((n=this.options)!=null&&n.findRegionSectionHeaders))return;const e=this.editor.getModel();if(e.isDisposed()||e.isTooLargeForSyncing())return;const t=e.getVersionId();this.editorWorkerService.findSectionHeaders(e.uri,this.options).then(o=>{e.isDisposed()||e.getVersionId()!==t||this.updateDecorations(o)})}updateDecorations(e){const t=this.editor.getModel();t&&(e=e.filter(o=>{if(!o.shouldBeInComments)return!0;const r=t.validateRange(o.range),a=t.tokenization.getLineTokens(r.startLineNumber),l=a.findTokenIndexAtOffset(r.startColumn-1),c=a.getStandardTokenType(l);return a.getLanguageId(l)===t.getLanguageId()&&c===1}));const i=Object.values(this.currentOccurrences).map(o=>o.decorationId),n=e.map(o=>S2e(o));this.editor.changeDecorations(o=>{const r=o.deltaDecorations(i,n);this.currentOccurrences={};for(let a=0,l=r.length;a<l;a++){const c={sectionHeader:e[a],decorationId:r[a]};this.currentOccurrences[c.decorationId]=c}})}stop(){this.computeSectionHeaders.cancel(),this.computePromise&&(this.computePromise.cancel(),this.computePromise=null)}dispose(){super.dispose(),this.stop(),this.decorations.clear()}},hb.ID="editor.sectionHeaderDetector",hb);RE=y2e([AU(1,Si),AU(2,mo)],RE);function S2e(s){return{range:s.range,options:je.createDynamic({description:"section-header",stickiness:3,collapseOnReplaceEdit:!0,minimap:{color:void 0,position:1,sectionHeaderStyle:s.hasSeparatorLine?2:1,sectionHeaderText:s.text}})}}pt(RE.ID,RE,1);function x2e(s){for(let e=0,t=s.length;e<t;e+=4){const i=s[e+0],n=s[e+1],o=s[e+2],r=s[e+3];s[e+0]=r,s[e+1]=o,s[e+2]=n,s[e+3]=i}}function k2e(s){const e=new Uint8Array(s.buffer,s.byteOffset,s.length*4);return _G()||x2e(e),dT.wrap(e)}function rie(s){const e=new Uint32Array(L2e(s));let t=0;if(e[t++]=s.id,s.type==="full")e[t++]=1,e[t++]=s.data.length,e.set(s.data,t),t+=s.data.length;else{e[t++]=2,e[t++]=s.deltas.length;for(const i of s.deltas)e[t++]=i.start,e[t++]=i.deleteCount,i.data?(e[t++]=i.data.length,e.set(i.data,t),t+=i.data.length):e[t++]=0}return k2e(e)}function L2e(s){let e=0;if(e+=2,s.type==="full")e+=1+s.data.length;else{e+=1,e+=3*s.deltas.length;for(const t of s.deltas)t.data&&(e+=t.data.length)}return e}function yN(s){return s&&!!s.data}function aie(s){return s&&Array.isArray(s.edits)}class E2e{constructor(e,t,i){this.provider=e,this.tokens=t,this.error=i}}function lie(s,e){return s.has(e)}function I2e(s,e){const t=s.orderedGroups(e);return t.length>0?t[0]:[]}function cie(s,e,t,i,n){return I(this,null,function*(){const o=I2e(s,e),r=yield Promise.all(o.map(a=>I(null,null,function*(){let l,c=null;try{l=yield a.provideDocumentSemanticTokens(e,a===t?i:null,n)}catch(d){c=d,l=null}return(!l||!yN(l)&&!aie(l))&&(l=null),new E2e(a,l,c)})));for(const a of r){if(a.error)throw a.error;if(a.tokens)return a}return r.length>0?r[0]:null})}function D2e(s,e){const t=s.orderedGroups(e);return t.length>0?t[0]:null}class T2e{constructor(e,t){this.provider=e,this.tokens=t}}function N2e(s,e){return s.has(e)}function die(s,e){const t=s.orderedGroups(e);return t.length>0?t[0]:[]}function V9(s,e,t,i){return I(this,null,function*(){const n=die(s,e),o=yield Promise.all(n.map(r=>I(null,null,function*(){let a;try{a=yield r.provideDocumentRangeSemanticTokens(e,t,i)}catch(l){Pi(l),a=null}return(!a||!yN(a))&&(a=null),new T2e(r,a)})));for(const r of o)if(r.tokens)return r;return o.length>0?o[0]:null})}ht.registerCommand("_provideDocumentSemanticTokensLegend",(s,...e)=>I(null,null,function*(){const[t]=e;Ct(t instanceof Ie);const i=s.get(ti).getModel(t);if(!i)return;const{documentSemanticTokensProvider:n}=s.get(_e),o=D2e(n,i);return o?o[0].getLegend():s.get(Gt).executeCommand("_provideDocumentRangeSemanticTokensLegend",t)}));ht.registerCommand("_provideDocumentSemanticTokens",(s,...e)=>I(null,null,function*(){const[t]=e;Ct(t instanceof Ie);const i=s.get(ti).getModel(t);if(!i)return;const{documentSemanticTokensProvider:n}=s.get(_e);if(!lie(n,i))return s.get(Gt).executeCommand("_provideDocumentRangeSemanticTokens",t,i.getFullModelRange());const o=yield cie(n,i,null,null,Ze.None);if(!o)return;const{provider:r,tokens:a}=o;if(!a||!yN(a))return;const l=rie({id:0,type:"full",data:a.data});return a.resultId&&r.releaseDocumentSemanticTokens(a.resultId),l}));ht.registerCommand("_provideDocumentRangeSemanticTokensLegend",(s,...e)=>I(null,null,function*(){const[t,i]=e;Ct(t instanceof Ie);const n=s.get(ti).getModel(t);if(!n)return;const{documentRangeSemanticTokensProvider:o}=s.get(_e),r=die(o,n);if(r.length===0)return;if(r.length===1)return r[0].getLegend();if(!i||!L.isIRange(i))return console.warn("provideDocumentRangeSemanticTokensLegend might be out-of-sync with provideDocumentRangeSemanticTokens unless a range argument is passed in"),r[0].getLegend();const a=yield V9(o,n,L.lift(i),Ze.None);if(a)return a.provider.getLegend()}));ht.registerCommand("_provideDocumentRangeSemanticTokens",(s,...e)=>I(null,null,function*(){const[t,i]=e;Ct(t instanceof Ie),Ct(L.isIRange(i));const n=s.get(ti).getModel(t);if(!n)return;const{documentRangeSemanticTokensProvider:o}=s.get(_e),r=yield V9(o,n,L.lift(i),Ze.None);if(!(!r||!r.tokens))return rie({id:0,type:"full",data:r.tokens.data})}));const $9="editor.semanticHighlighting";function Fx(s,e,t){var n;const i=(n=t.getValue($9,{overrideIdentifier:s.getLanguageId(),resource:s.uri}))==null?void 0:n.enabled;return typeof i=="boolean"?i:e.getColorTheme().semanticHighlighting}var uie=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},nc=function(s,e){return function(t,i){e(t,i,s)}},fu;let M5=class extends B{constructor(e,t,i,n,o,r){super(),this._watchers=Object.create(null);const a=d=>{this._watchers[d.uri.toString()]=new P5(d,e,i,o,r)},l=(d,u)=>{u.dispose(),delete this._watchers[d.uri.toString()]},c=()=>{for(const d of t.getModels()){const u=this._watchers[d.uri.toString()];Fx(d,i,n)?u||a(d):u&&l(d,u)}};t.getModels().forEach(d=>{Fx(d,i,n)&&a(d)}),this._register(t.onModelAdded(d=>{Fx(d,i,n)&&a(d)})),this._register(t.onModelRemoved(d=>{const u=this._watchers[d.uri.toString()];u&&l(d,u)})),this._register(n.onDidChangeConfiguration(d=>{d.affectsConfiguration($9)&&c()})),this._register(i.onDidColorThemeChange(c))}dispose(){for(const e of Object.values(this._watchers))e.dispose();super.dispose()}};M5=uie([nc(0,pT),nc(1,ti),nc(2,on),nc(3,et),nc(4,Lr),nc(5,_e)],M5);var fh;let P5=(fh=class extends B{constructor(e,t,i,n,o){super(),this._semanticTokensStylingService=t,this._isDisposed=!1,this._model=e,this._provider=o.documentSemanticTokensProvider,this._debounceInformation=n.for(this._provider,"DocumentSemanticTokens",{min:fu.REQUEST_MIN_DELAY,max:fu.REQUEST_MAX_DELAY}),this._fetchDocumentSemanticTokens=this._register(new Ft(()=>this._fetchDocumentSemanticTokensNow(),fu.REQUEST_MIN_DELAY)),this._currentDocumentResponse=null,this._currentDocumentRequestCancellationTokenSource=null,this._documentProvidersChangeListeners=[],this._providersChangedDuringRequest=!1,this._register(this._model.onDidChangeContent(()=>{this._fetchDocumentSemanticTokens.isScheduled()||this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))})),this._register(this._model.onDidChangeAttached(()=>{this._fetchDocumentSemanticTokens.isScheduled()||this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))})),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 r=()=>{Ht(this._documentProvidersChangeListeners),this._documentProvidersChangeListeners=[];for(const a of this._provider.all(e))typeof a.onDidChange=="function"&&this._documentProvidersChangeListeners.push(a.onDidChange(()=>{if(this._currentDocumentRequestCancellationTokenSource){this._providersChangedDuringRequest=!0;return}this._fetchDocumentSemanticTokens.schedule(0)}))};r(),this._register(this._provider.onDidChange(()=>{r(),this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))})),this._register(i.onDidColorThemeChange(a=>{this._setDocumentSemanticTokens(null,null,null,[]),this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))})),this._fetchDocumentSemanticTokens.schedule(0)}dispose(){this._currentDocumentResponse&&(this._currentDocumentResponse.dispose(),this._currentDocumentResponse=null),this._currentDocumentRequestCancellationTokenSource&&(this._currentDocumentRequestCancellationTokenSource.cancel(),this._currentDocumentRequestCancellationTokenSource=null),Ht(this._documentProvidersChangeListeners),this._documentProvidersChangeListeners=[],this._setDocumentSemanticTokens(null,null,null,[]),this._isDisposed=!0,super.dispose()}_fetchDocumentSemanticTokensNow(){if(this._currentDocumentRequestCancellationTokenSource)return;if(!lie(this._provider,this._model)){this._currentDocumentResponse&&this._model.tokenization.setSemanticTokens(null,!1);return}if(!this._model.isAttachedToEditor())return;const e=new Ci,t=this._currentDocumentResponse?this._currentDocumentResponse.provider:null,i=this._currentDocumentResponse&&this._currentDocumentResponse.resultId||null,n=cie(this._provider,this._model,t,i,e.token);this._currentDocumentRequestCancellationTokenSource=e,this._providersChangedDuringRequest=!1;const o=[],r=this._model.onDidChangeContent(l=>{o.push(l)}),a=new Cn(!1);n.then(l=>{if(this._debounceInformation.update(this._model,a.elapsed()),this._currentDocumentRequestCancellationTokenSource=null,r.dispose(),!l)this._setDocumentSemanticTokens(null,null,null,o);else{const{provider:c,tokens:d}=l,u=this._semanticTokensStylingService.getStyling(c);this._setDocumentSemanticTokens(c,d||null,u,o)}},l=>{l&&(Jr(l)||typeof l.message=="string"&&l.message.indexOf("busy")!==-1)||ze(l),this._currentDocumentRequestCancellationTokenSource=null,r.dispose(),(o.length>0||this._providersChangedDuringRequest)&&(this._fetchDocumentSemanticTokens.isScheduled()||this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model)))})}static _copy(e,t,i,n,o){o=Math.min(o,i.length-n,e.length-t);for(let r=0;r<o;r++)i[n+r]=e[t+r]}_setDocumentSemanticTokens(e,t,i,n){const o=this._currentDocumentResponse,r=()=>{(n.length>0||this._providersChangedDuringRequest)&&!this._fetchDocumentSemanticTokens.isScheduled()&&this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))};if(this._currentDocumentResponse&&(this._currentDocumentResponse.dispose(),this._currentDocumentResponse=null),this._isDisposed){e&&t&&e.releaseDocumentSemanticTokens(t.resultId);return}if(!e||!i){this._model.tokenization.setSemanticTokens(null,!1);return}if(!t){this._model.tokenization.setSemanticTokens(null,!0),r();return}if(aie(t)){if(!o){this._model.tokenization.setSemanticTokens(null,!0);return}if(t.edits.length===0)t={resultId:t.resultId,data:o.data};else{let a=0;for(const h of t.edits)a+=(h.data?h.data.length:0)-h.deleteCount;const l=o.data,c=new Uint32Array(l.length+a);let d=l.length,u=c.length;for(let h=t.edits.length-1;h>=0;h--){const g=t.edits[h];if(g.start>l.length){i.warnInvalidEditStart(o.resultId,t.resultId,h,g.start,l.length),this._model.tokenization.setSemanticTokens(null,!0);return}const f=d-(g.start+g.deleteCount);f>0&&(fu._copy(l,d-f,c,u-f,f),u-=f),g.data&&(fu._copy(g.data,0,c,u-g.data.length,g.data.length),u-=g.data.length),d=g.start}d>0&&fu._copy(l,0,c,0,d),t={resultId:t.resultId,data:c}}}if(yN(t)){this._currentDocumentResponse=new R2e(e,t.resultId,t.data);const a=lY(t,i,this._model.getLanguageId());if(n.length>0)for(const l of n)for(const c of a)for(const d of l.changes)c.applyEdit(d.range,d.text);this._model.tokenization.setSemanticTokens(a,!0)}else this._model.tokenization.setSemanticTokens(null,!0);r()}},fu=fh,fh.REQUEST_MIN_DELAY=300,fh.REQUEST_MAX_DELAY=2e3,fh);P5=fu=uie([nc(1,pT),nc(2,on),nc(3,Lr),nc(4,_e)],P5);class R2e{constructor(e,t,i){this.provider=e,this.resultId=t,this.data=i}dispose(){this.provider.releaseDocumentSemanticTokens(this.resultId)}}Pv(M5);var A2e=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Sw=function(s,e){return function(t,i){e(t,i,s)}},gb;let AE=(gb=class extends B{constructor(e,t,i,n,o,r){super(),this._semanticTokensStylingService=t,this._themeService=i,this._configurationService=n,this._editor=e,this._provider=r.documentRangeSemanticTokensProvider,this._debounceInformation=o.for(this._provider,"DocumentRangeSemanticTokens",{min:100,max:500}),this._tokenizeViewport=this._register(new Ft(()=>this._tokenizeViewportNow(),100)),this._outstandingRequests=[];const a=()=>{this._editor.hasModel()&&this._tokenizeViewport.schedule(this._debounceInformation.get(this._editor.getModel()))};this._register(this._editor.onDidScrollChange(()=>{a()})),this._register(this._editor.onDidChangeModel(()=>{this._cancelAll(),a()})),this._register(this._editor.onDidChangeModelContent(l=>{this._cancelAll(),a()})),this._register(this._provider.onDidChange(()=>{this._cancelAll(),a()})),this._register(this._configurationService.onDidChangeConfiguration(l=>{l.affectsConfiguration($9)&&(this._cancelAll(),a())})),this._register(this._themeService.onDidColorThemeChange(()=>{this._cancelAll(),a()})),a()}_cancelAll(){for(const e of this._outstandingRequests)e.cancel();this._outstandingRequests=[]}_removeOutstandingRequest(e){for(let t=0,i=this._outstandingRequests.length;t<i;t++)if(this._outstandingRequests[t]===e){this._outstandingRequests.splice(t,1);return}}_tokenizeViewportNow(){if(!this._editor.hasModel())return;const e=this._editor.getModel();if(e.tokenization.hasCompleteSemanticTokens())return;if(!Fx(e,this._themeService,this._configurationService)){e.tokenization.hasSomeSemanticTokens()&&e.tokenization.setSemanticTokens(null,!1);return}if(!N2e(this._provider,e)){e.tokenization.hasSomeSemanticTokens()&&e.tokenization.setSemanticTokens(null,!1);return}const t=this._editor.getVisibleRangesPlusViewportAboveBelow();this._outstandingRequests=this._outstandingRequests.concat(t.map(i=>this._requestRange(e,i)))}_requestRange(e,t){const i=e.getVersionId(),n=dn(r=>Promise.resolve(V9(this._provider,e,t,r))),o=new Cn(!1);return n.then(r=>{if(this._debounceInformation.update(e,o.elapsed()),!r||!r.tokens||e.isDisposed()||e.getVersionId()!==i)return;const{provider:a,tokens:l}=r,c=this._semanticTokensStylingService.getStyling(a);e.tokenization.setPartialSemanticTokens(t,lY(l,c,e.getLanguageId()))}).then(()=>this._removeOutstandingRequest(n),()=>this._removeOutstandingRequest(n)),n}},gb.ID="editor.contrib.viewportSemanticTokens",gb);AE=A2e([Sw(1,pT),Sw(2,on),Sw(3,et),Sw(4,Lr),Sw(5,_e)],AE);pt(AE.ID,AE,1);class M2e{constructor(e=!0){this.selectSubwords=e}provideSelectionRanges(e,t){const i=[];for(const n of t){const o=[];i.push(o),this.selectSubwords&&this._addInWordRanges(o,e,n),this._addWordRanges(o,e,n),this._addWhitespaceLine(o,e,n),o.push({range:e.getFullModelRange()})}return i}_addInWordRanges(e,t,i){const n=t.getWordAtPosition(i);if(!n)return;const{word:o,startColumn:r}=n,a=i.column-r;let l=a,c=a,d=0;for(;l>=0;l--){const u=o.charCodeAt(l);if(l!==a&&(u===95||u===45))break;if(Ru(u)&&Jl(d))break;d=u}for(l+=1;c<o.length;c++){const u=o.charCodeAt(c);if(Jl(u)&&Ru(d))break;if(u===95||u===45)break;d=u}l<c&&e.push({range:new L(i.lineNumber,r+l,i.lineNumber,r+c)})}_addWordRanges(e,t,i){const n=t.getWordAtPosition(i);n&&e.push({range:new L(i.lineNumber,n.startColumn,i.lineNumber,n.endColumn)})}_addWhitespaceLine(e,t,i){t.getLineLength(i.lineNumber)>0&&t.getLineFirstNonWhitespaceColumn(i.lineNumber)===0&&t.getLineLastNonWhitespaceColumn(i.lineNumber)===0&&e.push({range:new L(i.lineNumber,1,i.lineNumber,t.getLineMaxColumn(i.lineNumber))})}}var P2e=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},O2e=function(s,e){return function(t,i){e(t,i,s)}},O5;class z9{constructor(e,t){this.index=e,this.ranges=t}mov(e){const t=this.index+(e?1:-1);if(t<0||t>=this.ranges.length)return this;const i=new z9(t,this.ranges);return i.ranges[t].equalsRange(this.ranges[this.index])?i.mov(e):i}}var sp;let Ay=(sp=class{static get(e){return e.getContribution(O5.ID)}constructor(e,t){this._editor=e,this._languageFeaturesService=t,this._ignoreSelection=!1}dispose(){var e;(e=this._selectionListener)==null||e.dispose()}run(e){return I(this,null,function*(){if(!this._editor.hasModel())return;const t=this._editor.getSelections(),i=this._editor.getModel();if(this._state||(yield gie(this._languageFeaturesService.selectionRangeProvider,i,t.map(o=>o.getPosition()),this._editor.getOption(114),Ze.None).then(o=>{var r;if(!(!ys(o)||o.length!==t.length)&&!(!this._editor.hasModel()||!gi(this._editor.getSelections(),t,(a,l)=>a.equalsSelection(l)))){for(let a=0;a<o.length;a++)o[a]=o[a].filter(l=>l.containsPosition(t[a].getStartPosition())&&l.containsPosition(t[a].getEndPosition())),o[a].unshift(t[a]);this._state=o.map(a=>new z9(0,a)),(r=this._selectionListener)==null||r.dispose(),this._selectionListener=this._editor.onDidChangeCursorPosition(()=>{var a;this._ignoreSelection||((a=this._selectionListener)==null||a.dispose(),this._state=void 0)})}})),!this._state)return;this._state=this._state.map(o=>o.mov(e));const n=this._state.map(o=>we.fromPositions(o.ranges[o.index].getStartPosition(),o.ranges[o.index].getEndPosition()));this._ignoreSelection=!0;try{this._editor.setSelections(n)}finally{this._ignoreSelection=!1}})}},O5=sp,sp.ID="editor.contrib.smartSelectController",sp);Ay=O5=P2e([O2e(1,_e)],Ay);class hie extends me{constructor(e,t){super(t),this._forward=e}run(e,t){return I(this,null,function*(){const i=Ay.get(t);i&&(yield i.run(this._forward))})}}class F2e extends hie{constructor(){super(!0,{id:"editor.action.smartSelect.expand",label:p("smartSelect.expand","Expand Selection"),alias:"Expand Selection",precondition:void 0,kbOpts:{kbExpr:D.editorTextFocus,primary:1553,mac:{primary:3345,secondary:[1297]},weight:100},menuOpts:{menuId:ve.MenubarSelectionMenu,group:"1_basic",title:p({key:"miSmartSelectGrow",comment:["&& denotes a mnemonic"]},"&&Expand Selection"),order:2}})}}ht.registerCommandAlias("editor.action.smartSelect.grow","editor.action.smartSelect.expand");class B2e extends hie{constructor(){super(!1,{id:"editor.action.smartSelect.shrink",label:p("smartSelect.shrink","Shrink Selection"),alias:"Shrink Selection",precondition:void 0,kbOpts:{kbExpr:D.editorTextFocus,primary:1551,mac:{primary:3343,secondary:[1295]},weight:100},menuOpts:{menuId:ve.MenubarSelectionMenu,group:"1_basic",title:p({key:"miSmartSelectShrink",comment:["&& denotes a mnemonic"]},"&&Shrink Selection"),order:3}})}}pt(Ay.ID,Ay,4);ee(F2e);ee(B2e);function gie(s,e,t,i,n){return I(this,null,function*(){const o=s.all(e).concat(new M2e(i.selectSubwords));o.length===1&&o.unshift(new _E);const r=[],a=[];for(const l of o)r.push(Promise.resolve(l.provideSelectionRanges(e,t,n)).then(c=>{if(ys(c)&&c.length===t.length)for(let d=0;d<t.length;d++){a[d]||(a[d]=[]);for(const u of c[d])L.isIRange(u.range)&&L.containsPosition(u.range,t[d])&&a[d].push(L.lift(u.range))}},Pi));return yield Promise.all(r),a.map(l=>{if(l.length===0)return[];l.sort((h,g)=>P.isBefore(h.getStartPosition(),g.getStartPosition())?1:P.isBefore(g.getStartPosition(),h.getStartPosition())||P.isBefore(h.getEndPosition(),g.getEndPosition())?-1:P.isBefore(g.getEndPosition(),h.getEndPosition())?1:0);const c=[];let d;for(const h of l)(!d||L.containsRange(h,d)&&!L.equalsRange(h,d))&&(c.push(h),d=h);if(!i.selectLeadingAndTrailingWhitespace)return c;const u=[c[0]];for(let h=1;h<c.length;h++){const g=c[h-1],f=c[h];if(f.startLineNumber!==g.startLineNumber||f.endLineNumber!==g.endLineNumber){const m=new L(g.startLineNumber,e.getLineFirstNonWhitespaceColumn(g.startLineNumber),g.endLineNumber,e.getLineLastNonWhitespaceColumn(g.endLineNumber));m.containsRange(g)&&!m.equalsRange(g)&&f.containsRange(m)&&!f.equalsRange(m)&&u.push(m);const _=new L(g.startLineNumber,1,g.endLineNumber,e.getLineMaxColumn(g.endLineNumber));_.containsRange(g)&&!_.equalsRange(m)&&f.containsRange(_)&&!f.equalsRange(_)&&u.push(_)}u.push(f)}return u})})}ht.registerCommand("_executeSelectionRangeProvider",function(s,...e){return I(this,null,function*(){const[t,i]=e;Ct(Ie.isUri(t));const n=s.get(_e).selectionRangeProvider,o=yield s.get(go).createModelReference(t);try{return gie(n,o.object.textEditorModel,i,{selectLeadingAndTrailingWhitespace:!0,selectSubwords:!0},Ze.None)}finally{o.dispose()}})});const W2e=Object.freeze({View:Be("view","View"),Help:Be("help","Help"),Test:Be("test","Test"),File:Be("file","File"),Preferences:Be("preferences","Preferences"),Developer:Be({key:"developer",comment:["A developer on Code itself or someone diagnosing issues in Code"]},"Developer")});class RC{constructor(e,t,i,n=null){this.startLineNumbers=e,this.endLineNumbers=t,this.lastLineRelativePosition=i,this.showEndForLine=n}equals(e){return!!e&&this.lastLineRelativePosition===e.lastLineRelativePosition&&this.showEndForLine===e.showEndForLine&&gi(this.startLineNumbers,e.startLineNumbers)&&gi(this.endLineNumbers,e.endLineNumbers)}static get Empty(){return new RC([],[],0)}}const MU=Zd("stickyScrollViewLayer",{createHTML:s=>s}),AA="data-sticky-line-index",PU="data-sticky-is-line",H2e="data-sticky-is-line-number",OU="data-sticky-is-folding-icon";class V2e extends B{constructor(e){super(),this._editor=e,this._foldingIconStore=new G,this._rootDomNode=document.createElement("div"),this._lineNumbersDomNode=document.createElement("div"),this._linesDomNodeScrollable=document.createElement("div"),this._linesDomNode=document.createElement("div"),this._lineHeight=this._editor.getOption(67),this._renderedStickyLines=[],this._lineNumbers=[],this._lastLineRelativePosition=0,this._minContentWidthInPx=0,this._isOnGlyphMargin=!1,this._lineNumbersDomNode.className="sticky-widget-line-numbers",this._lineNumbersDomNode.setAttribute("role","none"),this._linesDomNode.className="sticky-widget-lines",this._linesDomNode.setAttribute("role","list"),this._linesDomNodeScrollable.className="sticky-widget-lines-scrollable",this._linesDomNodeScrollable.appendChild(this._linesDomNode),this._rootDomNode.className="sticky-widget",this._rootDomNode.classList.toggle("peek",e instanceof Ia),this._rootDomNode.appendChild(this._lineNumbersDomNode),this._rootDomNode.appendChild(this._linesDomNodeScrollable);const t=()=>{this._linesDomNode.style.left=this._editor.getOption(116).scrollWithEditor?`-${this._editor.getScrollLeft()}px`:"0px"};this._register(this._editor.onDidChangeConfiguration(i=>{i.hasChanged(116)&&t(),i.hasChanged(67)&&(this._lineHeight=this._editor.getOption(67))})),this._register(this._editor.onDidScrollChange(i=>{i.scrollLeftChanged&&t(),i.scrollWidthChanged&&this._updateWidgetWidth()})),this._register(this._editor.onDidChangeModel(()=>{t(),this._updateWidgetWidth()})),this._register(this._foldingIconStore),t(),this._register(this._editor.onDidLayoutChange(i=>{this._updateWidgetWidth()})),this._updateWidgetWidth()}get lineNumbers(){return this._lineNumbers}get lineNumberCount(){return this._lineNumbers.length}getRenderedStickyLine(e){return this._renderedStickyLines.find(t=>t.lineNumber===e)}getCurrentLines(){return this._lineNumbers}setState(e,t,i){if(i===void 0&&(!this._previousState&&!e||this._previousState&&this._previousState.equals(e)))return;const n=this._isWidgetHeightZero(e),o=n?void 0:e,r=n?0:this._findLineToRebuildWidgetFrom(e,i);this._renderRootNode(o,t,r),this._previousState=e}_isWidgetHeightZero(e){if(!e)return!0;const t=e.startLineNumbers.length*this._lineHeight+e.lastLineRelativePosition;if(t>0){this._lastLineRelativePosition=e.lastLineRelativePosition;const i=[...e.startLineNumbers];e.showEndForLine!==null&&(i[e.showEndForLine]=e.endLineNumbers[e.showEndForLine]),this._lineNumbers=i}else this._lastLineRelativePosition=0,this._lineNumbers=[];return t===0}_findLineToRebuildWidgetFrom(e,t){if(!e||!this._previousState)return 0;if(t!==void 0)return t;const i=this._previousState,n=e.startLineNumbers.findIndex(o=>!i.startLineNumbers.includes(o));return n===-1?0:n}_updateWidgetWidth(){const e=this._editor.getLayoutInfo(),t=e.contentLeft;this._lineNumbersDomNode.style.width=`${t}px`,this._linesDomNodeScrollable.style.setProperty("--vscode-editorStickyScroll-scrollableWidth",`${this._editor.getScrollWidth()-e.verticalScrollbarWidth}px`),this._rootDomNode.style.width=`${e.width-e.verticalScrollbarWidth}px`}_clearStickyLinesFromLine(e){this._foldingIconStore.clear();for(let t=e;t<this._renderedStickyLines.length;t++){const i=this._renderedStickyLines[t];i.lineNumberDomNode.remove(),i.lineDomNode.remove()}this._renderedStickyLines=this._renderedStickyLines.slice(0,e),this._rootDomNode.style.display="none"}_useFoldingOpacityTransition(e){this._lineNumbersDomNode.style.setProperty("--vscode-editorStickyScroll-foldingOpacityTransition",`opacity ${e?.5:0}s`)}_setFoldingIconsVisibility(e){for(const t of this._renderedStickyLines){const i=t.foldingIcon;i&&i.setVisible(e?!0:i.isCollapsed)}}_renderRootNode(e,t,i){return I(this,null,function*(){if(this._clearStickyLinesFromLine(i),!e)return;for(const a of this._renderedStickyLines)this._updateTopAndZIndexOfStickyLine(a);const n=this._editor.getLayoutInfo(),o=this._lineNumbers.slice(i);for(const[a,l]of o.entries()){const c=this._renderChildNode(a+i,l,t,n);c&&(this._linesDomNode.appendChild(c.lineDomNode),this._lineNumbersDomNode.appendChild(c.lineNumberDomNode),this._renderedStickyLines.push(c))}t&&(this._setFoldingHoverListeners(),this._useFoldingOpacityTransition(!this._isOnGlyphMargin));const r=this._lineNumbers.length*this._lineHeight+this._lastLineRelativePosition;this._rootDomNode.style.display="block",this._lineNumbersDomNode.style.height=`${r}px`,this._linesDomNodeScrollable.style.height=`${r}px`,this._rootDomNode.style.height=`${r}px`,this._rootDomNode.style.marginLeft="0px",this._minContentWidthInPx=Math.max(...this._renderedStickyLines.map(a=>a.scrollWidth))+n.verticalScrollbarWidth,this._editor.layoutOverlayWidget(this)})}_setFoldingHoverListeners(){this._editor.getOption(111)==="mouseover"&&(this._foldingIconStore.add(j(this._lineNumbersDomNode,re.MOUSE_ENTER,()=>{this._isOnGlyphMargin=!0,this._setFoldingIconsVisibility(!0)})),this._foldingIconStore.add(j(this._lineNumbersDomNode,re.MOUSE_LEAVE,()=>{this._isOnGlyphMargin=!1,this._useFoldingOpacityTransition(!0),this._setFoldingIconsVisibility(!1)})))}_renderChildNode(e,t,i,n){const o=this._editor._getViewModel();if(!o)return;const r=o.coordinatesConverter.convertModelPositionToViewPosition(new P(t,1)).lineNumber,a=o.getViewLineRenderingData(r),l=this._editor.getOption(68);let c;try{c=Ms.filter(a.inlineDecorations,r,a.minColumn,a.maxColumn)}catch(C){c=[]}const d=new Uh(!0,!0,a.content,a.continuesWithWrappedLine,a.isBasicASCII,a.containsRTL,0,a.tokens,c,a.tabSize,a.startVisibleColumn,1,1,1,500,"none",!0,!0,null),u=new yv(2e3),h=vS(d,u);let g;MU?g=MU.createHTML(u.build()):g=u.build();const f=document.createElement("span");f.setAttribute(AA,String(e)),f.setAttribute(PU,""),f.setAttribute("role","listitem"),f.tabIndex=0,f.className="sticky-line-content",f.classList.add(`stickyLine${t}`),f.style.lineHeight=`${this._lineHeight}px`,f.innerHTML=g;const m=document.createElement("span");m.setAttribute(AA,String(e)),m.setAttribute(H2e,""),m.className="sticky-line-number",m.style.lineHeight=`${this._lineHeight}px`;const _=n.contentLeft;m.style.width=`${_}px`;const b=document.createElement("span");l.renderType===1||l.renderType===3&&t%10===0?b.innerText=t.toString():l.renderType===2&&(b.innerText=Math.abs(t-this._editor.getPosition().lineNumber).toString()),b.className="sticky-line-number-inner",b.style.lineHeight=`${this._lineHeight}px`,b.style.width=`${n.lineNumbersWidth}px`,b.style.paddingLeft=`${n.lineNumbersLeft}px`,m.appendChild(b);const v=this._renderFoldingIconForLine(i,t);v&&m.appendChild(v.domNode),this._editor.applyFontInfo(f),this._editor.applyFontInfo(b),m.style.lineHeight=`${this._lineHeight}px`,f.style.lineHeight=`${this._lineHeight}px`,m.style.height=`${this._lineHeight}px`,f.style.height=`${this._lineHeight}px`;const w=new $2e(e,t,f,m,v,h.characterMapping,f.scrollWidth);return this._updateTopAndZIndexOfStickyLine(w)}_updateTopAndZIndexOfStickyLine(e){var d;const t=e.index,i=e.lineDomNode,n=e.lineNumberDomNode,o=t===this._lineNumbers.length-1,r="0",a="1";i.style.zIndex=o?r:a,n.style.zIndex=o?r:a;const l=`${t*this._lineHeight+this._lastLineRelativePosition+((d=e.foldingIcon)!=null&&d.isCollapsed?1:0)}px`,c=`${t*this._lineHeight}px`;return i.style.top=o?l:c,n.style.top=o?l:c,e}_renderFoldingIconForLine(e,t){const i=this._editor.getOption(111);if(!e||i==="never")return;const n=e.regions,o=n.findRange(t),r=n.getStartLineNumber(o);if(!(t===r))return;const l=n.isCollapsed(o),c=new z2e(l,r,n.getEndLineNumber(o),this._lineHeight);return c.setVisible(this._isOnGlyphMargin?!0:l||i==="always"),c.domNode.setAttribute(OU,""),c}getId(){return"editor.contrib.stickyScrollWidget"}getDomNode(){return this._rootDomNode}getPosition(){return{preference:2,stackOridinal:10}}getMinContentWidthInPx(){return this._minContentWidthInPx}focusLineWithIndex(e){0<=e&&e<this._renderedStickyLines.length&&this._renderedStickyLines[e].lineDomNode.focus()}getEditorPositionFromNode(e){if(!e||e.children.length>0)return null;const t=this._getRenderedStickyLineFromChildDomNode(e);if(!t)return null;const i=mW(t.characterMapping,e,0);return new P(t.lineNumber,i)}getLineNumberFromChildDomNode(e){var t,i;return(i=(t=this._getRenderedStickyLineFromChildDomNode(e))==null?void 0:t.lineNumber)!=null?i:null}_getRenderedStickyLineFromChildDomNode(e){const t=this.getLineIndexFromChildDomNode(e);return t===null||t<0||t>=this._renderedStickyLines.length?null:this._renderedStickyLines[t]}getLineIndexFromChildDomNode(e){const t=this._getAttributeValue(e,AA);return t?parseInt(t,10):null}isInStickyLine(e){return this._getAttributeValue(e,PU)!==void 0}isInFoldingIconDomNode(e){return this._getAttributeValue(e,OU)!==void 0}_getAttributeValue(e,t){for(;e&&e!==this._rootDomNode;){const i=e.getAttribute(t);if(i!==null)return i;e=e.parentElement}}}class $2e{constructor(e,t,i,n,o,r,a){this.index=e,this.lineNumber=t,this.lineDomNode=i,this.lineNumberDomNode=n,this.foldingIcon=o,this.characterMapping=r,this.scrollWidth=a}}class z2e{constructor(e,t,i,n){this.isCollapsed=e,this.foldingStartLine=t,this.foldingEndLine=i,this.dimension=n,this.domNode=document.createElement("div"),this.domNode.style.width=`${n}px`,this.domNode.style.height=`${n}px`,this.domNode.className=Me.asClassName(e?aE:rE)}setVisible(e){this.domNode.style.cursor=e?"pointer":"default",this.domNode.style.opacity=e?"1":"0"}}class AC{constructor(e,t){this.startLineNumber=e,this.endLineNumber=t}}class ME{constructor(e,t,i){this.range=e,this.children=t,this.parent=i}}class fie{constructor(e,t,i,n){this.uri=e,this.version=t,this.element=i,this.outlineProviderId=n}}var SN=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},My=function(s,e){return function(t,i){e(t,i,s)}},MC;(function(s){s.OUTLINE_MODEL="outlineModel",s.FOLDING_PROVIDER_MODEL="foldingProviderModel",s.INDENTATION_MODEL="indentationModel"})(MC||(MC={}));var Uu;(function(s){s[s.VALID=0]="VALID",s[s.INVALID=1]="INVALID",s[s.CANCELED=2]="CANCELED"})(Uu||(Uu={}));let F5=class extends B{constructor(e,t,i,n){switch(super(),this._editor=e,this._modelProviders=[],this._modelPromise=null,this._updateScheduler=this._register(new Kr(300)),this._updateOperation=this._register(new G),this._editor.getOption(116).defaultModel){case MC.OUTLINE_MODEL:this._modelProviders.push(new B5(this._editor,n));case MC.FOLDING_PROVIDER_MODEL:this._modelProviders.push(new H5(this._editor,t,n));case MC.INDENTATION_MODEL:this._modelProviders.push(new W5(this._editor,i));break}}dispose(){this._modelProviders.forEach(e=>e.dispose()),this._updateOperation.clear(),this._cancelModelPromise(),super.dispose()}_cancelModelPromise(){this._modelPromise&&(this._modelPromise.cancel(),this._modelPromise=null)}update(e){return I(this,null,function*(){return this._updateOperation.clear(),this._updateOperation.add({dispose:()=>{this._cancelModelPromise(),this._updateScheduler.cancel()}}),this._cancelModelPromise(),yield this._updateScheduler.trigger(()=>I(this,null,function*(){for(const t of this._modelProviders){const{statusPromise:i,modelPromise:n}=t.computeStickyModel(e);this._modelPromise=n;const o=yield i;if(this._modelPromise!==n)return null;switch(o){case Uu.CANCELED:return this._updateOperation.clear(),null;case Uu.VALID:return t.stickyModel}}return null})).catch(t=>(ze(t),null))})}};F5=SN([My(2,Le),My(3,_e)],F5);class pie extends B{constructor(e){super(),this._editor=e,this._stickyModel=null}get stickyModel(){return this._stickyModel}_invalid(){return this._stickyModel=null,Uu.INVALID}computeStickyModel(e){if(e.isCancellationRequested||!this.isProviderValid())return{statusPromise:this._invalid(),modelPromise:null};const t=dn(i=>this.createModelFromProvider(i));return{statusPromise:t.then(i=>this.isModelValid(i)?e.isCancellationRequested?Uu.CANCELED:(this._stickyModel=this.createStickyModel(e,i),Uu.VALID):this._invalid()).then(void 0,i=>(ze(i),Uu.CANCELED)),modelPromise:t}}isModelValid(e){return!0}isProviderValid(){return!0}}let B5=class extends pie{constructor(e,t){super(e),this._languageFeaturesService=t}createModelFromProvider(e){return ld.create(this._languageFeaturesService.documentSymbolProvider,this._editor.getModel(),e)}createStickyModel(e,t){var r;const{stickyOutlineElement:i,providerID:n}=this._stickyModelFromOutlineModel(t,(r=this._stickyModel)==null?void 0:r.outlineProviderId),o=this._editor.getModel();return new fie(o.uri,o.getVersionId(),i,n)}isModelValid(e){return e&&e.children.size>0}_stickyModelFromOutlineModel(e,t){let i;if(ut.first(e.children.values())instanceof Ote){const a=ut.find(e.children.values(),l=>l.id===t);if(a)i=a.children;else{let l="",c=-1,d;for(const[u,h]of e.children.entries()){const g=this._findSumOfRangesOfGroup(h);g>c&&(d=h,c=g,l=h.id)}t=l,i=d.children}}else i=e.children;const n=[],o=Array.from(i.values()).sort((a,l)=>{const c=new AC(a.symbol.range.startLineNumber,a.symbol.range.endLineNumber),d=new AC(l.symbol.range.startLineNumber,l.symbol.range.endLineNumber);return this._comparator(c,d)});for(const a of o)n.push(this._stickyModelFromOutlineElement(a,a.symbol.selectionRange.startLineNumber));return{stickyOutlineElement:new ME(void 0,n,void 0),providerID:t}}_stickyModelFromOutlineElement(e,t){const i=[];for(const o of e.children.values())if(o.symbol.selectionRange.startLineNumber!==o.symbol.range.endLineNumber)if(o.symbol.selectionRange.startLineNumber!==t)i.push(this._stickyModelFromOutlineElement(o,o.symbol.selectionRange.startLineNumber));else for(const r of o.children.values())i.push(this._stickyModelFromOutlineElement(r,o.symbol.selectionRange.startLineNumber));i.sort((o,r)=>this._comparator(o.range,r.range));const n=new AC(e.symbol.selectionRange.startLineNumber,e.symbol.range.endLineNumber);return new ME(n,i,void 0)}_comparator(e,t){return e.startLineNumber!==t.startLineNumber?e.startLineNumber-t.startLineNumber:t.endLineNumber-e.endLineNumber}_findSumOfRangesOfGroup(e){let t=0;for(const i of e.children.values())t+=this._findSumOfRangesOfGroup(i);return e instanceof L4?t+e.symbol.range.endLineNumber-e.symbol.selectionRange.startLineNumber:t}};B5=SN([My(1,_e)],B5);class mie extends pie{constructor(e){super(e),this._foldingLimitReporter=new Ate(e)}createStickyModel(e,t){const i=this._fromFoldingRegions(t),n=this._editor.getModel();return new fie(n.uri,n.getVersionId(),i,void 0)}isModelValid(e){return e!==null}_fromFoldingRegions(e){const t=e.length,i=[],n=new ME(void 0,[],void 0);for(let o=0;o<t;o++){const r=e.getParentIndex(o);let a;r!==-1?a=i[r]:a=n;const l=new ME(new AC(e.getStartLineNumber(o),e.getEndLineNumber(o)+1),[],a);a.children.push(l),i.push(l)}return n}}let W5=class extends mie{constructor(e,t){super(e),this._languageConfigurationService=t,this.provider=this._register(new I9(e.getModel(),this._languageConfigurationService,this._foldingLimitReporter))}createModelFromProvider(e){return I(this,null,function*(){return this.provider.compute(e)})}};W5=SN([My(1,Si)],W5);let H5=class extends mie{constructor(e,t,i){super(e),this._languageFeaturesService=i;const n=Ph.getFoldingRangeProviders(this._languageFeaturesService,e.getModel());n.length>0&&(this.provider=this._register(new D9(e.getModel(),n,t,this._foldingLimitReporter,void 0)))}isProviderValid(){return this.provider!==void 0}createModelFromProvider(e){return I(this,null,function*(){var t,i;return(i=(t=this.provider)==null?void 0:t.compute(e))!=null?i:null})}};H5=SN([My(2,_e)],H5);var U2e=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},FU=function(s,e){return function(t,i){e(t,i,s)}};class j2e{constructor(e,t,i){this.startLineNumber=e,this.endLineNumber=t,this.nestingDepth=i}}let V5=class extends B{constructor(e,t,i){super(),this._languageFeaturesService=t,this._languageConfigurationService=i,this._onDidChangeStickyScroll=this._register(new O),this.onDidChangeStickyScroll=this._onDidChangeStickyScroll.event,this._model=null,this._cts=null,this._stickyModelProvider=null,this._editor=e,this._sessionStore=this._register(new G),this._updateSoon=this._register(new Ft(()=>this.update(),50)),this._register(this._editor.onDidChangeConfiguration(n=>{n.hasChanged(116)&&this.readConfiguration()})),this.readConfiguration()}readConfiguration(){this._sessionStore.clear(),this._editor.getOption(116).enabled&&(this._sessionStore.add(this._editor.onDidChangeModel(()=>{this._model=null,this.updateStickyModelProvider(),this._onDidChangeStickyScroll.fire(),this.update()})),this._sessionStore.add(this._editor.onDidChangeHiddenAreas(()=>this.update())),this._sessionStore.add(this._editor.onDidChangeModelContent(()=>this._updateSoon.schedule())),this._sessionStore.add(this._languageFeaturesService.documentSymbolProvider.onDidChange(()=>this.update())),this._sessionStore.add(ke(()=>{var t;(t=this._stickyModelProvider)==null||t.dispose(),this._stickyModelProvider=null})),this.updateStickyModelProvider(),this.update())}getVersionId(){var e;return(e=this._model)==null?void 0:e.version}updateStickyModelProvider(){var t;(t=this._stickyModelProvider)==null||t.dispose(),this._stickyModelProvider=null;const e=this._editor;e.hasModel()&&(this._stickyModelProvider=new F5(e,()=>this._updateSoon.schedule(),this._languageConfigurationService,this._languageFeaturesService))}update(){return I(this,null,function*(){var e;(e=this._cts)==null||e.dispose(!0),this._cts=new Ci,yield this.updateStickyModel(this._cts.token),this._onDidChangeStickyScroll.fire()})}updateStickyModel(e){return I(this,null,function*(){if(!this._editor.hasModel()||!this._stickyModelProvider||this._editor.getModel().isTooLargeForTokenization()){this._model=null;return}const t=yield this._stickyModelProvider.update(e);e.isCancellationRequested||(this._model=t)})}updateIndex(e){return e===-1?e=0:e<0&&(e=-e-2),e}getCandidateStickyLinesIntersectingFromStickyModel(e,t,i,n,o){if(t.children.length===0)return;let r=o;const a=[];for(let d=0;d<t.children.length;d++){const u=t.children[d];u.range&&a.push(u.range.startLineNumber)}const l=this.updateIndex(r1(a,e.startLineNumber,(d,u)=>d-u)),c=this.updateIndex(r1(a,e.startLineNumber+n,(d,u)=>d-u));for(let d=l;d<=c;d++){const u=t.children[d];if(!u)return;if(u.range){const h=u.range.startLineNumber,g=u.range.endLineNumber;e.startLineNumber<=g+1&&h-1<=e.endLineNumber&&h!==r&&(r=h,i.push(new j2e(h,g-1,n+1)),this.getCandidateStickyLinesIntersectingFromStickyModel(e,u,i,n+1,h))}else this.getCandidateStickyLinesIntersectingFromStickyModel(e,u,i,n,o)}}getCandidateStickyLinesIntersecting(e){var n,o;if(!((n=this._model)!=null&&n.element))return[];let t=[];this.getCandidateStickyLinesIntersectingFromStickyModel(e,this._model.element,t,0,-1);const i=(o=this._editor._getViewModel())==null?void 0:o.getHiddenAreas();if(i)for(const r of i)t=t.filter(a=>!(a.startLineNumber>=r.startLineNumber&&a.endLineNumber<=r.endLineNumber+1));return t}};V5=U2e([FU(1,_e),FU(2,Si)],V5);var q2e=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Dm=function(s,e){return function(t,i){e(t,i,s)}},$5,op;let Kd=(op=class extends B{constructor(e,t,i,n,o,r,a){super(),this._editor=e,this._contextMenuService=t,this._languageFeaturesService=i,this._instaService=n,this._contextKeyService=a,this._sessionStore=new G,this._maxStickyLines=Number.MAX_SAFE_INTEGER,this._candidateDefinitionsLength=-1,this._focusedStickyElementIndex=-1,this._enabled=!1,this._focused=!1,this._positionRevealed=!1,this._onMouseDown=!1,this._endLineNumbers=[],this._stickyScrollWidget=new V2e(this._editor),this._stickyLineCandidateProvider=new V5(this._editor,i,o),this._register(this._stickyScrollWidget),this._register(this._stickyLineCandidateProvider),this._widgetState=RC.Empty,this._onDidResize(),this._readConfiguration();const l=this._stickyScrollWidget.getDomNode();this._register(this._editor.onDidChangeConfiguration(d=>{this._readConfigurationChange(d)})),this._register(j(l,re.CONTEXT_MENU,d=>I(this,null,function*(){this._onContextMenu(Te(l),d)}))),this._stickyScrollFocusedContextKey=D.stickyScrollFocused.bindTo(this._contextKeyService),this._stickyScrollVisibleContextKey=D.stickyScrollVisible.bindTo(this._contextKeyService);const c=this._register(bl(l));this._register(c.onDidBlur(d=>{this._positionRevealed===!1&&l.clientHeight===0?(this._focusedStickyElementIndex=-1,this.focus()):this._disposeFocusStickyScrollStore()})),this._register(c.onDidFocus(d=>{this.focus()})),this._registerMouseListeners(),this._register(j(l,re.MOUSE_DOWN,d=>{this._onMouseDown=!0}))}static get(e){return e.getContribution($5.ID)}_disposeFocusStickyScrollStore(){var e;this._stickyScrollFocusedContextKey.set(!1),(e=this._focusDisposableStore)==null||e.dispose(),this._focused=!1,this._positionRevealed=!1,this._onMouseDown=!1}focus(){if(this._onMouseDown){this._onMouseDown=!1,this._editor.focus();return}this._stickyScrollFocusedContextKey.get()!==!0&&(this._focused=!0,this._focusDisposableStore=new G,this._stickyScrollFocusedContextKey.set(!0),this._focusedStickyElementIndex=this._stickyScrollWidget.lineNumbers.length-1,this._stickyScrollWidget.focusLineWithIndex(this._focusedStickyElementIndex))}focusNext(){this._focusedStickyElementIndex<this._stickyScrollWidget.lineNumberCount-1&&this._focusNav(!0)}focusPrevious(){this._focusedStickyElementIndex>0&&this._focusNav(!1)}selectEditor(){this._editor.focus()}_focusNav(e){this._focusedStickyElementIndex=e?this._focusedStickyElementIndex+1:this._focusedStickyElementIndex-1,this._stickyScrollWidget.focusLineWithIndex(this._focusedStickyElementIndex)}goToFocused(){const e=this._stickyScrollWidget.lineNumbers;this._disposeFocusStickyScrollStore(),this._revealPosition({lineNumber:e[this._focusedStickyElementIndex],column:1})}_revealPosition(e){this._reveaInEditor(e,()=>this._editor.revealPosition(e))}_revealLineInCenterIfOutsideViewport(e){this._reveaInEditor(e,()=>this._editor.revealLineInCenterIfOutsideViewport(e.lineNumber,0))}_reveaInEditor(e,t){this._focused&&this._disposeFocusStickyScrollStore(),this._positionRevealed=!0,t(),this._editor.setSelection(L.fromPositions(e)),this._editor.focus()}_registerMouseListeners(){const e=this._register(new G),t=this._register(new hN(this._editor,{extractLineNumberFromMouseEvent:o=>{const r=this._stickyScrollWidget.getEditorPositionFromNode(o.target.element);return r?r.lineNumber:0}})),i=o=>{if(!this._editor.hasModel()||o.target.type!==12||o.target.detail!==this._stickyScrollWidget.getId())return null;const r=o.target.element;if(!r||r.innerText!==r.innerHTML)return null;const a=this._stickyScrollWidget.getEditorPositionFromNode(r);return a?{range:new L(a.lineNumber,a.column,a.lineNumber,a.column+r.innerText.length),textElement:r}:null},n=this._stickyScrollWidget.getDomNode();this._register(xi(n,re.CLICK,o=>{if(o.ctrlKey||o.altKey||o.metaKey||!o.leftButton)return;if(o.shiftKey){const c=this._stickyScrollWidget.getLineIndexFromChildDomNode(o.target);if(c===null)return;const d=new P(this._endLineNumbers[c],1);this._revealLineInCenterIfOutsideViewport(d);return}if(this._stickyScrollWidget.isInFoldingIconDomNode(o.target)){const c=this._stickyScrollWidget.getLineNumberFromChildDomNode(o.target);this._toggleFoldingRegionForLine(c);return}if(!this._stickyScrollWidget.isInStickyLine(o.target))return;let l=this._stickyScrollWidget.getEditorPositionFromNode(o.target);if(!l){const c=this._stickyScrollWidget.getLineNumberFromChildDomNode(o.target);if(c===null)return;l=new P(c,1)}this._revealPosition(l)})),this._register(xi(n,re.MOUSE_MOVE,o=>{if(o.shiftKey){const r=this._stickyScrollWidget.getLineIndexFromChildDomNode(o.target);if(r===null||this._showEndForLine!==null&&this._showEndForLine===r)return;this._showEndForLine=r,this._renderStickyScroll();return}this._showEndForLine!==void 0&&(this._showEndForLine=void 0,this._renderStickyScroll())})),this._register(j(n,re.MOUSE_LEAVE,o=>{this._showEndForLine!==void 0&&(this._showEndForLine=void 0,this._renderStickyScroll())})),this._register(t.onMouseMoveOrRelevantKeyDown(([o,r])=>{const a=i(o);if(!a||!o.hasTriggerModifier||!this._editor.hasModel()){e.clear();return}const{range:l,textElement:c}=a;if(!l.equalsRange(this._stickyRangeProjectedOnEditor))this._stickyRangeProjectedOnEditor=l,e.clear();else if(c.style.textDecoration==="underline")return;const d=new Ci;e.add(ke(()=>d.dispose(!0)));let u;IS(this._languageFeaturesService.definitionProvider,this._editor.getModel(),new P(l.startLineNumber,l.startColumn+1),!1,d.token).then((h=>{if(!d.token.isCancellationRequested)if(h.length!==0){this._candidateDefinitionsLength=h.length;const g=c;u!==g?(e.clear(),u=g,u.style.textDecoration="underline",e.add(ke(()=>{u.style.textDecoration="none"}))):u||(u=g,u.style.textDecoration="underline",e.add(ke(()=>{u.style.textDecoration="none"})))}else e.clear()}))})),this._register(t.onCancel(()=>{e.clear()})),this._register(t.onExecute(o=>I(this,null,function*(){if(o.target.type!==12||o.target.detail!==this._stickyScrollWidget.getId())return;const r=this._stickyScrollWidget.getEditorPositionFromNode(o.target.element);r&&(!this._editor.hasModel()||!this._stickyRangeProjectedOnEditor||(this._candidateDefinitionsLength>1&&(this._focused&&this._disposeFocusStickyScrollStore(),this._revealPosition({lineNumber:r.lineNumber,column:1})),this._instaService.invokeFunction(pte,o,this._editor,{uri:this._editor.getModel().uri,range:this._stickyRangeProjectedOnEditor})))})))}_onContextMenu(e,t){const i=new ma(e,t);this._contextMenuService.showContextMenu({menuId:ve.StickyScrollContext,getAnchor:()=>i})}_toggleFoldingRegionForLine(e){if(!this._foldingModel||e===null)return;const t=this._stickyScrollWidget.getRenderedStickyLine(e),i=t==null?void 0:t.foldingIcon;if(!i)return;k9(this._foldingModel,Number.MAX_VALUE,[e]),i.isCollapsed=!i.isCollapsed;const n=(i.isCollapsed?this._editor.getTopForLineNumber(i.foldingEndLine):this._editor.getTopForLineNumber(i.foldingStartLine))-this._editor.getOption(67)*t.index+1;this._editor.setScrollTop(n),this._renderStickyScroll(e)}_readConfiguration(){const e=this._editor.getOption(116);if(e.enabled===!1){this._editor.removeOverlayWidget(this._stickyScrollWidget),this._sessionStore.clear(),this._enabled=!1;return}else e.enabled&&!this._enabled&&(this._editor.addOverlayWidget(this._stickyScrollWidget),this._sessionStore.add(this._editor.onDidScrollChange(i=>{i.scrollTopChanged&&(this._showEndForLine=void 0,this._renderStickyScroll())})),this._sessionStore.add(this._editor.onDidLayoutChange(()=>this._onDidResize())),this._sessionStore.add(this._editor.onDidChangeModelTokens(i=>this._onTokensChange(i))),this._sessionStore.add(this._stickyLineCandidateProvider.onDidChangeStickyScroll(()=>{this._showEndForLine=void 0,this._renderStickyScroll()})),this._enabled=!0);this._editor.getOption(68).renderType===2&&this._sessionStore.add(this._editor.onDidChangeCursorPosition(()=>{this._showEndForLine=void 0,this._renderStickyScroll(0)}))}_readConfigurationChange(e){(e.hasChanged(116)||e.hasChanged(73)||e.hasChanged(67)||e.hasChanged(111)||e.hasChanged(68))&&this._readConfiguration(),e.hasChanged(68)&&this._renderStickyScroll(0)}_needsUpdate(e){const t=this._stickyScrollWidget.getCurrentLines();for(const i of t)for(const n of e.ranges)if(i>=n.fromLineNumber&&i<=n.toLineNumber)return!0;return!1}_onTokensChange(e){this._needsUpdate(e)&&this._renderStickyScroll(0)}_onDidResize(){const t=this._editor.getLayoutInfo().height/this._editor.getOption(67);this._maxStickyLines=Math.round(t*.25)}_renderStickyScroll(e){return I(this,null,function*(){const t=this._editor.getModel();if(!t||t.isTooLargeForTokenization()){this._resetState();return}const i=this._updateAndGetMinRebuildFromLine(e),n=this._stickyLineCandidateProvider.getVersionId();if(n===void 0||n===t.getVersionId())if(!this._focused)yield this._updateState(i);else if(this._focusedStickyElementIndex===-1)yield this._updateState(i),this._focusedStickyElementIndex=this._stickyScrollWidget.lineNumberCount-1,this._focusedStickyElementIndex!==-1&&this._stickyScrollWidget.focusLineWithIndex(this._focusedStickyElementIndex);else{const r=this._stickyScrollWidget.lineNumbers[this._focusedStickyElementIndex];yield this._updateState(i),this._stickyScrollWidget.lineNumberCount===0?this._focusedStickyElementIndex=-1:(this._stickyScrollWidget.lineNumbers.includes(r)||(this._focusedStickyElementIndex=this._stickyScrollWidget.lineNumberCount-1),this._stickyScrollWidget.focusLineWithIndex(this._focusedStickyElementIndex))}})}_updateAndGetMinRebuildFromLine(e){if(e!==void 0){const t=this._minRebuildFromLine!==void 0?this._minRebuildFromLine:1/0;this._minRebuildFromLine=Math.min(e,t)}return this._minRebuildFromLine}_updateState(e){return I(this,null,function*(){var i,n;this._minRebuildFromLine=void 0,this._foldingModel=(n=yield(i=Ph.get(this._editor))==null?void 0:i.getFoldingModel())!=null?n:void 0,this._widgetState=this.findScrollWidgetState();const t=this._widgetState.startLineNumbers.length>0;this._stickyScrollVisibleContextKey.set(t),this._stickyScrollWidget.setState(this._widgetState,this._foldingModel,e)})}_resetState(){return I(this,null,function*(){this._minRebuildFromLine=void 0,this._foldingModel=void 0,this._widgetState=RC.Empty,this._stickyScrollVisibleContextKey.set(!1),this._stickyScrollWidget.setState(void 0,void 0)})}findScrollWidgetState(){const e=this._editor.getOption(67),t=Math.min(this._maxStickyLines,this._editor.getOption(116).maxLineCount),i=this._editor.getScrollTop();let n=0;const o=[],r=[],a=this._editor.getVisibleRanges();if(a.length!==0){const l=new AC(a[0].startLineNumber,a[a.length-1].endLineNumber),c=this._stickyLineCandidateProvider.getCandidateStickyLinesIntersecting(l);for(const d of c){const u=d.startLineNumber,h=d.endLineNumber,g=d.nestingDepth;if(h-u>0){const f=(g-1)*e,m=g*e,_=this._editor.getBottomForLineNumber(u)-i,b=this._editor.getTopForLineNumber(h)-i,v=this._editor.getBottomForLineNumber(h)-i;if(f>b&&f<=v){o.push(u),r.push(h+1),n=v-m;break}else m>_&&m<=v&&(o.push(u),r.push(h+1));if(o.length===t)break}}}return this._endLineNumbers=r,new RC(o,r,n,this._showEndForLine)}dispose(){super.dispose(),this._sessionStore.dispose()}},$5=op,op.ID="store.contrib.stickyScrollController",op);Kd=$5=q2e([Dm(1,jo),Dm(2,_e),Dm(3,Le),Dm(4,Si),Dm(5,Lr),Dm(6,Pe)],Kd);class K2e extends Us{constructor(){super({id:"editor.action.toggleStickyScroll",title:ue($({},Be("toggleEditorStickyScroll","Toggle Editor Sticky Scroll")),{mnemonicTitle:p({key:"mitoggleStickyScroll",comment:["&& denotes a mnemonic"]},"&&Toggle Editor Sticky Scroll")}),metadata:{description:Be("toggleEditorStickyScroll.description","Toggle/enable the editor sticky scroll which shows the nested scopes at the top of the viewport")},category:W2e.View,toggled:{condition:Z.equals("config.editor.stickyScroll.enabled",!0),title:p("stickyScroll","Sticky Scroll"),mnemonicTitle:p({key:"miStickyScroll",comment:["&& denotes a mnemonic"]},"&&Sticky Scroll")},menu:[{id:ve.CommandPalette},{id:ve.MenubarAppearanceMenu,group:"4_editor",order:3},{id:ve.StickyScrollContext}]})}run(e){return I(this,null,function*(){const t=e.get(et),i=!t.getValue("editor.stickyScroll.enabled");return t.updateValue("editor.stickyScroll.enabled",i)})}}const xN=100;class G2e extends kl{constructor(){super({id:"editor.action.focusStickyScroll",title:ue($({},Be("focusStickyScroll","Focus on the editor sticky scroll")),{mnemonicTitle:p({key:"mifocusStickyScroll",comment:["&& denotes a mnemonic"]},"&&Focus Sticky Scroll")}),precondition:Z.and(Z.has("config.editor.stickyScroll.enabled"),D.stickyScrollVisible),menu:[{id:ve.CommandPalette}]})}runEditorCommand(e,t){var i;(i=Kd.get(t))==null||i.focus()}}class Z2e extends kl{constructor(){super({id:"editor.action.selectNextStickyScrollLine",title:Be("selectNextStickyScrollLine.title","Select the next editor sticky scroll line"),precondition:D.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:xN,primary:18}})}runEditorCommand(e,t){var i;(i=Kd.get(t))==null||i.focusNext()}}class Y2e extends kl{constructor(){super({id:"editor.action.selectPreviousStickyScrollLine",title:Be("selectPreviousStickyScrollLine.title","Select the previous sticky scroll line"),precondition:D.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:xN,primary:16}})}runEditorCommand(e,t){var i;(i=Kd.get(t))==null||i.focusPrevious()}}class X2e extends kl{constructor(){super({id:"editor.action.goToFocusedStickyScrollLine",title:Be("goToFocusedStickyScrollLine.title","Go to the focused sticky scroll line"),precondition:D.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:xN,primary:3}})}runEditorCommand(e,t){var i;(i=Kd.get(t))==null||i.goToFocused()}}class Q2e extends kl{constructor(){super({id:"editor.action.selectEditor",title:Be("selectEditor.title","Select Editor"),precondition:D.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:xN,primary:9}})}runEditorCommand(e,t){var i;(i=Kd.get(t))==null||i.selectEditor()}}pt(Kd.ID,Kd,1);jt(K2e);jt(G2e);jt(Y2e);jt(Z2e);jt(X2e);jt(Q2e);var _ie=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},qw=function(s,e){return function(t,i){e(t,i,s)}};class J2e{constructor(e,t,i,n,o,r){this.range=e,this.insertText=t,this.filterText=i,this.additionalTextEdits=n,this.command=o,this.completion=r}}let z5=class extends Loe{constructor(e,t,i,n,o,r){super(o.disposable),this.model=e,this.line=t,this.word=i,this.completionModel=n,this._suggestMemoryService=r}canBeReused(e,t,i){return this.model===e&&this.line===t&&this.word.word.length>0&&this.word.startColumn===i.startColumn&&this.word.endColumn<i.endColumn&&this.completionModel.getIncompleteProvider().size===0}get items(){var a;const e=[],{items:t}=this.completionModel,i=this._suggestMemoryService.select(this.model,{lineNumber:this.line,column:this.word.endColumn+this.completionModel.lineContext.characterCountDelta},t),n=ut.slice(t,i),o=ut.slice(t,0,i);let r=5;for(const l of ut.concat(n,o)){if(l.score===fl.Default)continue;const c=new L(l.editStart.lineNumber,l.editStart.column,l.editInsertEnd.lineNumber,l.editInsertEnd.column+this.completionModel.lineContext.characterCountDelta),d=l.completion.insertTextRules&&l.completion.insertTextRules&4?{snippet:l.completion.insertText}:l.completion.insertText;e.push(new J2e(c,d,(a=l.filterTextLow)!=null?a:l.labelLow,l.completion.additionalTextEdits,l.completion.command,l)),r-->=0&&l.resolve(Ze.None)}return e}};z5=_ie([qw(5,vN)],z5);let U5=class extends B{constructor(e,t,i,n){super(),this._languageFeatureService=e,this._clipboardService=t,this._suggestMemoryService=i,this._editorService=n,this._store.add(e.inlineCompletionsProvider.register("*",this))}provideInlineCompletions(e,t,i,n){return I(this,null,function*(){var g;if(i.selectedSuggestionInfo)return;let o;for(const f of this._editorService.listCodeEditors())if(f.getModel()===e){o=f;break}if(!o)return;const r=o.getOption(90);if(d_.isAllOff(r))return;e.tokenization.tokenizeIfCheap(t.lineNumber);const a=e.tokenization.getLineTokens(t.lineNumber),l=a.getStandardTokenType(a.findTokenIndexAtOffset(Math.max(t.column-1-1,0)));if(d_.valueFor(r,l)!=="inline")return;let c=e.getWordAtPosition(t),d;if(c!=null&&c.word||(d=this._getTriggerCharacterInfo(e,t)),!(c!=null&&c.word)&&!d||(c||(c=e.getWordUntilPosition(t)),c.endColumn!==t.column))return;let u;const h=e.getValueInRange(new L(t.lineNumber,1,t.lineNumber,t.column));if(!d&&((g=this._lastResult)!=null&&g.canBeReused(e,t.lineNumber,c))){const f=new yU(h,t.column-this._lastResult.word.endColumn);this._lastResult.completionModel.lineContext=f,this._lastResult.acquire(),u=this._lastResult}else{const f=yield T9(this._languageFeatureService.completionProvider,e,t,new ky(void 0,vE.createSuggestFilter(o).itemKind,d==null?void 0:d.providers),d&&{triggerKind:1,triggerCharacter:d.ch},n);let m;f.needsClipboard&&(m=yield this._clipboardService.readText());const _=new Du(f.items,t.column,new yU(h,0),bE.None,o.getOption(119),o.getOption(113),{boostFullMatch:!1,firstMatchCanBeWeak:!1},m);u=new z5(e,t.lineNumber,c,_,f,this._suggestMemoryService)}return this._lastResult=u,u})}handleItemDidShow(e,t){t.completion.resolve(Ze.None)}freeInlineCompletions(e){e.release()}_getTriggerCharacterInfo(e,t){var o;const i=e.getValueInRange(L.fromPositions({lineNumber:t.lineNumber,column:t.column-1},t)),n=new Set;for(const r of this._languageFeatureService.completionProvider.all(e))(o=r.triggerCharacters)!=null&&o.includes(i)&&n.add(r);if(n.size!==0)return{providers:n,ch:i}}};U5=_ie([qw(0,_e),qw(1,Jd),qw(2,vN),qw(3,yt)],U5);Pv(U5);class eOe extends me{constructor(){super({id:"editor.action.forceRetokenize",label:p("forceRetokenize","Developer: Force Retokenize"),alias:"Developer: Force Retokenize",precondition:void 0})}run(e,t){if(!t.hasModel())return;const i=t.getModel();i.tokenization.resetTokenization();const n=new Cn;i.tokenization.forceTokenization(i.getLineCount()),n.stop(),console.log(`tokenization took ${n.elapsed()}`)}}ee(eOe);const TD=class TD extends Us{constructor(){super({id:TD.ID,title:Be({key:"toggle.tabMovesFocus",comment:["Turn on/off use of tab key for moving focus around VS Code"]},"Toggle Tab Key Moves Focus"),precondition:void 0,keybinding:{primary:2091,mac:{primary:1323},weight:100},metadata:{description:Be("tabMovesFocusDescriptions","Determines whether the tab key moves focus around the workbench or inserts the tab character in the current editor. This is also called tab trapping, tab navigation, or tab focus mode.")},f1:!0})}run(){const t=!Bb.getTabFocusMode();Bb.setTabFocusMode(t),$s(t?p("toggle.tabMovesFocus.on","Pressing Tab will now move focus to the next focusable element"):p("toggle.tabMovesFocus.off","Pressing Tab will now insert the tab character"))}};TD.ID="editor.action.toggleTabFocusMode";let j5=TD;jt(j5);var tOe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},BU=function(s,e){return function(t,i){e(t,i,s)}};let q5=class extends B{get enabled(){return this._enabled}set enabled(e){e?(this.el.setAttribute("aria-disabled","false"),this.el.tabIndex=0,this.el.style.pointerEvents="auto",this.el.style.opacity="1",this.el.style.cursor="pointer",this._enabled=!1):(this.el.setAttribute("aria-disabled","true"),this.el.tabIndex=-1,this.el.style.pointerEvents="none",this.el.style.opacity="0.4",this.el.style.cursor="default",this._enabled=!0),this._enabled=e}constructor(e,t,i={},n,o){var u,h;super(),this._link=t,this._hoverService=n,this._enabled=!0,this.el=J(e,ae("a.monaco-link",{tabIndex:(u=t.tabIndex)!=null?u:0,href:t.href},t.label)),this.hoverDelegate=(h=i.hoverDelegate)!=null?h:js("mouse"),this.setTooltip(t.title),this.el.setAttribute("role","button");const r=this._register(new lt(this.el,"click")),a=this._register(new lt(this.el,"keypress")),l=ce.chain(a.event,g=>g.map(f=>new Ut(f)).filter(f=>f.keyCode===3)),c=this._register(new lt(this.el,Kt.Tap)).event;this._register(rs.addTarget(this.el));const d=ce.any(r.event,l,c);this._register(d(g=>{this.enabled&&(ct.stop(g,!0),i!=null&&i.opener?i.opener(this._link.href):o.open(this._link.href,{allowCommands:!0}))})),this.enabled=!0}setTooltip(e){this.hoverDelegate.showNativeHover?this.el.title=e!=null?e:"":!this.hover&&e?this.hover=this._register(this._hoverService.setupManagedHover(this.hoverDelegate,this.el,e)):this.hover&&this.hover.update(e)}};q5=tOe([BU(3,Rc),BU(4,po)],q5);var bie=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},vie=function(s,e){return function(t,i){e(t,i,s)}};const iOe=26;let K5=class extends B{constructor(e,t){super(),this._editor=e,this.instantiationService=t,this.banner=this._register(this.instantiationService.createInstance(G5))}hide(){this._editor.setBanner(null,0),this.banner.clear()}show(e){this.banner.show(ue($({},e),{onClose:()=>{var t;this.hide(),(t=e.onClose)==null||t.call(e)}})),this._editor.setBanner(this.banner.element,iOe)}};K5=bie([vie(1,Le)],K5);let G5=class extends B{constructor(e){super(),this.instantiationService=e,this.markdownRenderer=this.instantiationService.createInstance(Vd,{}),this.element=ae("div.editor-banner"),this.element.tabIndex=0}getAriaLabel(e){if(e.ariaLabel)return e.ariaLabel;if(typeof e.message=="string")return e.message}getBannerMessage(e){if(typeof e=="string"){const t=ae("span");return t.innerText=e,t}return this.markdownRenderer.render(e).element}clear(){Tn(this.element)}show(e){Tn(this.element);const t=this.getAriaLabel(e);t&&this.element.setAttribute("aria-label",t);const i=J(this.element,ae("div.icon-container"));i.setAttribute("aria-hidden","true"),e.icon&&i.appendChild(ae(`div${Me.asCSSSelector(e.icon)}`));const n=J(this.element,ae("div.message-container"));if(n.setAttribute("aria-hidden","true"),n.appendChild(this.getBannerMessage(e.message)),this.messageActionsContainer=J(this.element,ae("div.message-actions-container")),e.actions)for(const r of e.actions)this._register(this.instantiationService.createInstance(q5,this.messageActionsContainer,ue($({},r),{tabIndex:-1}),{}));const o=J(this.element,ae("div.action-container"));this.actionBar=this._register(new vr(o)),this.actionBar.push(this._register(new Fo("banner.close","Close Banner",Me.asClassName(VQ),!0,()=>{typeof e.onClose=="function"&&e.onClose()})),{icon:!0,label:!1}),this.actionBar.setFocusable(!1)}};G5=bie([vie(0,Le)],G5);var U9=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},nb=function(s,e){return function(t,i){e(t,i,s)}};const nOe=ii("extensions-warning-message",oe.warning,p("warningIcon","Icon shown with a warning message in the extensions editor."));var fb;let Py=(fb=class extends B{constructor(e,t,i,n){super(),this._editor=e,this._editorWorkerService=t,this._workspaceTrustService=i,this._highlighter=null,this._bannerClosed=!1,this._updateState=o=>{if(o&&o.hasMore){if(this._bannerClosed)return;const r=Math.max(o.ambiguousCharacterCount,o.nonBasicAsciiCharacterCount,o.invisibleCharacterCount);let a;if(o.nonBasicAsciiCharacterCount>=r)a={message:p("unicodeHighlighting.thisDocumentHasManyNonBasicAsciiUnicodeCharacters","This document contains many non-basic ASCII unicode characters"),command:new Fy};else if(o.ambiguousCharacterCount>=r)a={message:p("unicodeHighlighting.thisDocumentHasManyAmbiguousUnicodeCharacters","This document contains many ambiguous unicode characters"),command:new Fp};else if(o.invisibleCharacterCount>=r)a={message:p("unicodeHighlighting.thisDocumentHasManyInvisibleUnicodeCharacters","This document contains many invisible unicode characters"),command:new Oy};else throw new Error("Unreachable");this._bannerController.show({id:"unicodeHighlightBanner",message:a.message,icon:nOe,actions:[{label:a.command.shortLabel,href:`command:${a.command.id}`}],onClose:()=>{this._bannerClosed=!0}})}else this._bannerController.hide()},this._bannerController=this._register(n.createInstance(K5,e)),this._register(this._editor.onDidChangeModel(()=>{this._bannerClosed=!1,this._updateHighlighter()})),this._options=e.getOption(126),this._register(i.onDidChangeTrust(o=>{this._updateHighlighter()})),this._register(e.onDidChangeConfiguration(o=>{o.hasChanged(126)&&(this._options=e.getOption(126),this._updateHighlighter())})),this._updateHighlighter()}dispose(){this._highlighter&&(this._highlighter.dispose(),this._highlighter=null),super.dispose()}_updateHighlighter(){if(this._updateState(null),this._highlighter&&(this._highlighter.dispose(),this._highlighter=null),!this._editor.hasModel())return;const e=sOe(this._workspaceTrustService.isWorkspaceTrusted(),this._options);if([e.nonBasicASCII,e.ambiguousCharacters,e.invisibleCharacters].every(i=>i===!1))return;const t={nonBasicASCII:e.nonBasicASCII,ambiguousCharacters:e.ambiguousCharacters,invisibleCharacters:e.invisibleCharacters,includeComments:e.includeComments,includeStrings:e.includeStrings,allowedCodePoints:Object.keys(e.allowedCharacters).map(i=>i.codePointAt(0)),allowedLocales:Object.keys(e.allowedLocales).map(i=>i==="_os"?new Intl.NumberFormat().resolvedOptions().locale:i==="_vscode"?xse:i)};this._editorWorkerService.canComputeUnicodeHighlights(this._editor.getModel().uri)?this._highlighter=new Z5(this._editor,t,this._updateState,this._editorWorkerService):this._highlighter=new oOe(this._editor,t,this._updateState)}getDecorationInfo(e){return this._highlighter?this._highlighter.getDecorationInfo(e):null}},fb.ID="editor.contrib.unicodeHighlighter",fb);Py=U9([nb(1,mo),nb(2,nX),nb(3,Le)],Py);function sOe(s,e){return{nonBasicASCII:e.nonBasicASCII===ir?!s:e.nonBasicASCII,ambiguousCharacters:e.ambiguousCharacters,invisibleCharacters:e.invisibleCharacters,includeComments:e.includeComments===ir?!s:e.includeComments,includeStrings:e.includeStrings===ir?!s:e.includeStrings,allowedCharacters:e.allowedCharacters,allowedLocales:e.allowedLocales}}let Z5=class extends B{constructor(e,t,i,n){super(),this._editor=e,this._options=t,this._updateState=i,this._editorWorkerService=n,this._model=this._editor.getModel(),this._decorations=this._editor.createDecorationsCollection(),this._updateSoon=this._register(new Ft(()=>this._update(),250)),this._register(this._editor.onDidChangeModelContent(()=>{this._updateSoon.schedule()})),this._updateSoon.schedule()}dispose(){this._decorations.clear(),super.dispose()}_update(){if(this._model.isDisposed())return;if(!this._model.mightContainNonBasicASCII()){this._decorations.clear();return}const e=this._model.getVersionId();this._editorWorkerService.computedUnicodeHighlights(this._model.uri,this._options).then(t=>{if(this._model.isDisposed()||this._model.getVersionId()!==e)return;this._updateState(t);const i=[];if(!t.hasMore)for(const n of t.ranges)i.push({range:n,options:PE.instance.getDecorationFromOptions(this._options)});this._decorations.set(i)})}getDecorationInfo(e){if(!this._decorations.has(e))return null;const t=this._editor.getModel();if(!NW(t,e))return null;const i=t.getValueInRange(e.range);return{reason:Cie(i,this._options),inComment:RW(t,e),inString:AW(t,e)}}};Z5=U9([nb(3,mo)],Z5);class oOe extends B{constructor(e,t,i){super(),this._editor=e,this._options=t,this._updateState=i,this._model=this._editor.getModel(),this._decorations=this._editor.createDecorationsCollection(),this._updateSoon=this._register(new Ft(()=>this._update(),250)),this._register(this._editor.onDidLayoutChange(()=>{this._updateSoon.schedule()})),this._register(this._editor.onDidScrollChange(()=>{this._updateSoon.schedule()})),this._register(this._editor.onDidChangeHiddenAreas(()=>{this._updateSoon.schedule()})),this._register(this._editor.onDidChangeModelContent(()=>{this._updateSoon.schedule()})),this._updateSoon.schedule()}dispose(){this._decorations.clear(),super.dispose()}_update(){if(this._model.isDisposed())return;if(!this._model.mightContainNonBasicASCII()){this._decorations.clear();return}const e=this._editor.getVisibleRanges(),t=[],i={ranges:[],ambiguousCharacterCount:0,invisibleCharacterCount:0,nonBasicAsciiCharacterCount:0,hasMore:!1};for(const n of e){const o=UB.computeUnicodeHighlights(this._model,this._options,n);for(const r of o.ranges)i.ranges.push(r);i.ambiguousCharacterCount+=i.ambiguousCharacterCount,i.invisibleCharacterCount+=i.invisibleCharacterCount,i.nonBasicAsciiCharacterCount+=i.nonBasicAsciiCharacterCount,i.hasMore=i.hasMore||o.hasMore}if(!i.hasMore)for(const n of i.ranges)t.push({range:n,options:PE.instance.getDecorationFromOptions(this._options)});this._updateState(i),this._decorations.set(t)}getDecorationInfo(e){if(!this._decorations.has(e))return null;const t=this._editor.getModel(),i=t.getValueInRange(e.range);return NW(t,e)?{reason:Cie(i,this._options),inComment:RW(t,e),inString:AW(t,e)}:null}}const wie=p("unicodeHighlight.configureUnicodeHighlightOptions","Configure Unicode Highlight Options");let Y5=class{constructor(e,t,i){this._editor=e,this._languageService=t,this._openerService=i,this.hoverOrdinal=5}computeSync(e,t){if(!this._editor.hasModel()||e.type!==1)return[];const i=this._editor.getModel(),n=this._editor.getContribution(Py.ID);if(!n)return[];const o=[],r=new Set;let a=300;for(const l of t){const c=n.getDecorationInfo(l);if(!c)continue;const u=i.getValueInRange(l.range).codePointAt(0),h=MA(u);let g;switch(c.reason.kind){case 0:{Xy(c.reason.confusableWith)?g=p("unicodeHighlight.characterIsAmbiguousASCII","The character {0} could be confused with the ASCII character {1}, which is more common in source code.",h,MA(c.reason.confusableWith.codePointAt(0))):g=p("unicodeHighlight.characterIsAmbiguous","The character {0} could be confused with the character {1}, which is more common in source code.",h,MA(c.reason.confusableWith.codePointAt(0)));break}case 1:g=p("unicodeHighlight.characterIsInvisible","The character {0} is invisible.",h);break;case 2:g=p("unicodeHighlight.characterIsNonBasicAscii","The character {0} is not a basic ASCII character.",h);break}if(r.has(g))continue;r.add(g);const f={codePoint:u,reason:c.reason,inComment:c.inComment,inString:c.inString},m=p("unicodeHighlight.adjustSettings","Adjust settings"),_=`command:${OE.ID}?${encodeURIComponent(JSON.stringify(f))}`,b=new ss("",!0).appendMarkdown(g).appendText(" ").appendLink(_,m,wie);o.push(new pa(this,l.range,[b],!1,a++))}return o}renderHoverParts(e,t){return ADe(e,t,this._editor,this._languageService,this._openerService)}};Y5=U9([nb(1,fi),nb(2,po)],Y5);function X5(s){return`U+${s.toString(16).padStart(4,"0")}`}function MA(s){let e=`\`${X5(s)}\``;return Jg.isInvisibleCharacter(s)||(e+=` "${`${rOe(s)}`}"`),e}function rOe(s){return s===96?"`` ` ``":"`"+String.fromCodePoint(s)+"`"}function Cie(s,e){return UB.computeUnicodeHighlightReason(s,e)}const ND=class ND{constructor(){this.map=new Map}getDecorationFromOptions(e){return this.getDecoration(!e.includeComments,!e.includeStrings)}getDecoration(e,t){const i=`${e}${t}`;let n=this.map.get(i);return n||(n=je.createDynamic({description:"unicode-highlight",stickiness:1,className:"unicode-highlight",showIfCollapsed:!0,overviewRuler:null,minimap:null,hideInCommentTokens:e,hideInStringTokens:t}),this.map.set(i,n)),n}};ND.instance=new ND;let PE=ND;class aOe extends me{constructor(){super({id:Fp.ID,label:p("action.unicodeHighlight.disableHighlightingInComments","Disable highlighting of characters in comments"),alias:"Disable highlighting of characters in comments",precondition:void 0}),this.shortLabel=p("unicodeHighlight.disableHighlightingInComments.shortLabel","Disable Highlight In Comments")}run(e,t,i){return I(this,null,function*(){const n=e==null?void 0:e.get(et);n&&this.runAction(n)})}runAction(e){return I(this,null,function*(){yield e.updateValue(Qs.includeComments,!1,2)})}}class lOe extends me{constructor(){super({id:Fp.ID,label:p("action.unicodeHighlight.disableHighlightingInStrings","Disable highlighting of characters in strings"),alias:"Disable highlighting of characters in strings",precondition:void 0}),this.shortLabel=p("unicodeHighlight.disableHighlightingInStrings.shortLabel","Disable Highlight In Strings")}run(e,t,i){return I(this,null,function*(){const n=e==null?void 0:e.get(et);n&&this.runAction(n)})}runAction(e){return I(this,null,function*(){yield e.updateValue(Qs.includeStrings,!1,2)})}}const RD=class RD extends me{constructor(){super({id:RD.ID,label:p("action.unicodeHighlight.disableHighlightingOfAmbiguousCharacters","Disable highlighting of ambiguous characters"),alias:"Disable highlighting of ambiguous characters",precondition:void 0}),this.shortLabel=p("unicodeHighlight.disableHighlightingOfAmbiguousCharacters.shortLabel","Disable Ambiguous Highlight")}run(e,t,i){return I(this,null,function*(){const n=e==null?void 0:e.get(et);n&&this.runAction(n)})}runAction(e){return I(this,null,function*(){yield e.updateValue(Qs.ambiguousCharacters,!1,2)})}};RD.ID="editor.action.unicodeHighlight.disableHighlightingOfAmbiguousCharacters";let Fp=RD;const AD=class AD extends me{constructor(){super({id:AD.ID,label:p("action.unicodeHighlight.disableHighlightingOfInvisibleCharacters","Disable highlighting of invisible characters"),alias:"Disable highlighting of invisible characters",precondition:void 0}),this.shortLabel=p("unicodeHighlight.disableHighlightingOfInvisibleCharacters.shortLabel","Disable Invisible Highlight")}run(e,t,i){return I(this,null,function*(){const n=e==null?void 0:e.get(et);n&&this.runAction(n)})}runAction(e){return I(this,null,function*(){yield e.updateValue(Qs.invisibleCharacters,!1,2)})}};AD.ID="editor.action.unicodeHighlight.disableHighlightingOfInvisibleCharacters";let Oy=AD;const MD=class MD extends me{constructor(){super({id:MD.ID,label:p("action.unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters","Disable highlighting of non basic ASCII characters"),alias:"Disable highlighting of non basic ASCII characters",precondition:void 0}),this.shortLabel=p("unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters.shortLabel","Disable Non ASCII Highlight")}run(e,t,i){return I(this,null,function*(){const n=e==null?void 0:e.get(et);n&&this.runAction(n)})}runAction(e){return I(this,null,function*(){yield e.updateValue(Qs.nonBasicASCII,!1,2)})}};MD.ID="editor.action.unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters";let Fy=MD;const PD=class PD extends me{constructor(){super({id:PD.ID,label:p("action.unicodeHighlight.showExcludeOptions","Show Exclude Options"),alias:"Show Exclude Options",precondition:void 0})}run(e,t,i){return I(this,null,function*(){const{codePoint:n,reason:o,inString:r,inComment:a}=i,l=String.fromCodePoint(n),c=e.get(ta),d=e.get(et);function u(f){return Jg.isInvisibleCharacter(f)?p("unicodeHighlight.excludeInvisibleCharFromBeingHighlighted","Exclude {0} (invisible character) from being highlighted",X5(f)):p("unicodeHighlight.excludeCharFromBeingHighlighted","Exclude {0} from being highlighted",`${X5(f)} "${l}"`)}const h=[];if(o.kind===0)for(const f of o.notAmbiguousInLocales)h.push({label:p("unicodeHighlight.allowCommonCharactersInLanguage",'Allow unicode characters that are more common in the language "{0}".',f),run:()=>I(null,null,function*(){dOe(d,[f])})});if(h.push({label:u(n),run:()=>cOe(d,[n])}),a){const f=new aOe;h.push({label:f.label,run:()=>I(null,null,function*(){return f.runAction(d)})})}else if(r){const f=new lOe;h.push({label:f.label,run:()=>I(null,null,function*(){return f.runAction(d)})})}if(o.kind===0){const f=new Fp;h.push({label:f.label,run:()=>I(null,null,function*(){return f.runAction(d)})})}else if(o.kind===1){const f=new Oy;h.push({label:f.label,run:()=>I(null,null,function*(){return f.runAction(d)})})}else if(o.kind===2){const f=new Fy;h.push({label:f.label,run:()=>I(null,null,function*(){return f.runAction(d)})})}else uOe(o);const g=yield c.pick(h,{title:wie});g&&(yield g.run())})}};PD.ID="editor.action.unicodeHighlight.showExcludeOptions";let OE=PD;function cOe(s,e){return I(this,null,function*(){const t=s.getValue(Qs.allowedCharacters);let i;typeof t=="object"&&t?i=t:i={};for(const n of e)i[String.fromCodePoint(n)]=!0;yield s.updateValue(Qs.allowedCharacters,i,2)})}function dOe(s,e){return I(this,null,function*(){var n;const t=(n=s.inspect(Qs.allowedLocales).user)==null?void 0:n.value;let i;typeof t=="object"&&t?i=Object.assign({},t):i={};for(const o of e)i[o]=!0;yield s.updateValue(Qs.allowedLocales,i,2)})}function uOe(s){throw new Error(`Unexpected value: ${s}`)}ee(Fp);ee(Oy);ee(Fy);ee(OE);pt(Py.ID,Py,1);Jp.register(Y5);var hOe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},WU=function(s,e){return function(t,i){e(t,i,s)}};const yie="ignoreUnusualLineTerminators";function gOe(s,e,t){s.setModelProperty(e.uri,yie,t)}function fOe(s,e){return s.getModelProperty(e.uri,yie)}var pb;let FE=(pb=class extends B{constructor(e,t,i){super(),this._editor=e,this._dialogService=t,this._codeEditorService=i,this._isPresentingDialog=!1,this._config=this._editor.getOption(127),this._register(this._editor.onDidChangeConfiguration(n=>{n.hasChanged(127)&&(this._config=this._editor.getOption(127),this._checkForUnusualLineTerminators())})),this._register(this._editor.onDidChangeModel(()=>{this._checkForUnusualLineTerminators()})),this._register(this._editor.onDidChangeModelContent(n=>{n.isUndoing||this._checkForUnusualLineTerminators()})),this._checkForUnusualLineTerminators()}_checkForUnusualLineTerminators(){return I(this,null,function*(){if(this._config==="off"||!this._editor.hasModel())return;const e=this._editor.getModel();if(!e.mightContainUnusualLineTerminators()||fOe(this._codeEditorService,e)===!0||this._editor.getOption(92))return;if(this._config==="auto"){e.removeUnusualLineTerminators(this._editor.getSelections());return}if(this._isPresentingDialog)return;let i;try{this._isPresentingDialog=!0,i=yield this._dialogService.confirm({title:p("unusualLineTerminators.title","Unusual Line Terminators"),message:p("unusualLineTerminators.message","Detected unusual line terminators"),detail:p("unusualLineTerminators.detail","The file '{0}' contains one or more unusual line terminator characters, like Line Separator (LS) or Paragraph Separator (PS).\n\nIt is recommended to remove them from the file. This can be configured via `editor.unusualLineTerminators`.",Yr(e.uri)),primaryButton:p({key:"unusualLineTerminators.fix",comment:["&& denotes a mnemonic"]},"&&Remove Unusual Line Terminators"),cancelButton:p("unusualLineTerminators.ignore","Ignore")})}finally{this._isPresentingDialog=!1}if(!i.confirmed){gOe(this._codeEditorService,e,!0);return}e.removeUnusualLineTerminators(this._editor.getSelections())})}},pb.ID="editor.contrib.unusualLineTerminatorsDetector",pb);FE=hOe([WU(1,iS),WU(2,yt)],FE);pt(FE.ID,FE,1);var pOe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},mOe=function(s,e){return function(t,i){e(t,i,s)}};class HU{constructor(){this.selector={language:"*"}}provideDocumentHighlights(e,t,i){const n=[],o=e.getWordAtPosition({lineNumber:t.lineNumber,column:t.column});return o?e.isDisposed()?void 0:e.findMatches(o.word,!0,!1,!0,qx,!1).map(a=>({range:a.range,kind:_b.Text})):Promise.resolve(n)}provideMultiDocumentHighlights(e,t,i,n){const o=new wn,r=e.getWordAtPosition({lineNumber:t.lineNumber,column:t.column});if(!r)return Promise.resolve(o);for(const a of[e,...i]){if(a.isDisposed())continue;const c=a.findMatches(r.word,!0,!1,!0,qx,!1).map(d=>({range:d.range,kind:_b.Text}));c&&o.set(a.uri,c)}return o}}let Q5=class extends B{constructor(e){super(),this._register(e.documentHighlightProvider.register("*",new HU)),this._register(e.multiDocumentHighlightProvider.register("*",new HU))}};Q5=pOe([mOe(0,_e)],Q5);var Sie=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Bx=function(s,e){return function(t,i){e(t,i,s)}},Bi,J5;const j9=new fe("hasWordHighlights",!1);function xie(s,e,t,i){const n=s.ordered(e);return TB(n.map(o=>()=>Promise.resolve(o.provideDocumentHighlights(e,t,i)).then(void 0,Pi)),o=>o!=null).then(o=>{if(o){const r=new wn;return r.set(e.uri,o),r}return new wn})}function _Oe(s,e,t,i,n,o){const r=s.ordered(e);return TB(r.map(a=>()=>{const l=o.filter(c=>zZ(c)).filter(c=>JB(a.selector,c.uri,c.getLanguageId(),!0,void 0,void 0)>0);return Promise.resolve(a.provideMultiDocumentHighlights(e,t,l,n)).then(void 0,Pi)}),a=>a!=null)}class kie{constructor(e,t,i){this._model=e,this._selection=t,this._wordSeparators=i,this._wordRange=this._getCurrentWordRange(e,t),this._result=null}get result(){return this._result||(this._result=dn(e=>this._compute(this._model,this._selection,this._wordSeparators,e))),this._result}_getCurrentWordRange(e,t){const i=e.getWordAtPosition(t.getPosition());return i?new L(t.startLineNumber,i.startColumn,t.startLineNumber,i.endColumn):null}isValid(e,t,i){const n=t.startLineNumber,o=t.startColumn,r=t.endColumn,a=this._getCurrentWordRange(e,t);let l=!!(this._wordRange&&this._wordRange.equalsRange(a));for(let c=0,d=i.length;!l&&c<d;c++){const u=i.getRange(c);u&&u.startLineNumber===n&&u.startColumn<=o&&u.endColumn>=r&&(l=!0)}return l}cancel(){this.result.cancel()}}class bOe extends kie{constructor(e,t,i,n){super(e,t,i),this._providers=n}_compute(e,t,i,n){return xie(this._providers,e,t.getPosition(),n).then(o=>o||new wn)}}class vOe extends kie{constructor(e,t,i,n,o){super(e,t,i),this._providers=n,this._otherModels=o}_compute(e,t,i,n){return _Oe(this._providers,e,t.getPosition(),i,n,this._otherModels).then(o=>o||new wn)}}function wOe(s,e,t,i,n){return new bOe(e,t,n,s)}function COe(s,e,t,i,n,o){return new vOe(e,t,n,s,o)}fo("_executeDocumentHighlights",(s,e,t)=>I(null,null,function*(){const i=s.get(_e),n=yield xie(i.documentHighlightProvider,e,t,Ze.None);return n==null?void 0:n.get(e.uri)}));var ph;let e3=(ph=class{constructor(e,t,i,n,o){this.toUnhook=new G,this.workerRequestTokenId=0,this.workerRequestCompleted=!1,this.workerRequestValue=new wn,this.lastCursorPositionChangeTime=0,this.renderDecorationsTimer=-1,this.runDelayer=this.toUnhook.add(new Kr(50)),this.editor=e,this.providers=t,this.multiDocumentProviders=i,this.codeEditorService=o,this._hasWordHighlights=j9.bindTo(n),this._ignorePositionChangeEvent=!1,this.occurrencesHighlight=this.editor.getOption(81),this.model=this.editor.getModel(),this.toUnhook.add(e.onDidChangeCursorPosition(r=>{this._ignorePositionChangeEvent||this.occurrencesHighlight!=="off"&&this.runDelayer.trigger(()=>{this._onPositionChanged(r)})})),this.toUnhook.add(e.onDidFocusEditorText(r=>{this.occurrencesHighlight!=="off"&&(this.workerRequest||this.runDelayer.trigger(()=>{this._run()}))})),this.toUnhook.add(e.onDidChangeModelContent(r=>{KD(this.model.uri,"output")||this._stopAll()})),this.toUnhook.add(e.onDidChangeModel(r=>{!r.newModelUrl&&r.oldModelUrl?this._stopSingular():Bi.query&&this._run()})),this.toUnhook.add(e.onDidChangeConfiguration(r=>{var l,c;const a=this.editor.getOption(81);if(this.occurrencesHighlight!==a)switch(this.occurrencesHighlight=a,a){case"off":this._stopAll();break;case"singleFile":this._stopAll((c=(l=Bi.query)==null?void 0:l.modelInfo)==null?void 0:c.model);break;case"multiFile":Bi.query&&this._run(!0);break;default:console.warn("Unknown occurrencesHighlight setting value:",a);break}})),this.decorations=this.editor.createDecorationsCollection(),this.workerRequestTokenId=0,this.workerRequest=null,this.workerRequestCompleted=!1,this.lastCursorPositionChangeTime=0,this.renderDecorationsTimer=-1,Bi.query&&this._run()}hasDecorations(){return this.decorations.length>0}restore(){this.occurrencesHighlight!=="off"&&(this.runDelayer.cancel(),this._run())}_getSortedHighlights(){return this.decorations.getRanges().sort(L.compareRangesUsingStarts)}moveNext(){const e=this._getSortedHighlights(),i=(e.findIndex(o=>o.containsPosition(this.editor.getPosition()))+1)%e.length,n=e[i];try{this._ignorePositionChangeEvent=!0,this.editor.setPosition(n.getStartPosition()),this.editor.revealRangeInCenterIfOutsideViewport(n);const o=this._getWord();if(o){const r=this.editor.getModel().getLineContent(n.startLineNumber);$s(`${r}, ${i+1} of ${e.length} for '${o.word}'`)}}finally{this._ignorePositionChangeEvent=!1}}moveBack(){const e=this._getSortedHighlights(),i=(e.findIndex(o=>o.containsPosition(this.editor.getPosition()))-1+e.length)%e.length,n=e[i];try{this._ignorePositionChangeEvent=!0,this.editor.setPosition(n.getStartPosition()),this.editor.revealRangeInCenterIfOutsideViewport(n);const o=this._getWord();if(o){const r=this.editor.getModel().getLineContent(n.startLineNumber);$s(`${r}, ${i+1} of ${e.length} for '${o.word}'`)}}finally{this._ignorePositionChangeEvent=!1}}_removeSingleDecorations(){if(!this.editor.hasModel())return;const e=Bi.storedDecorationIDs.get(this.editor.getModel().uri);e&&(this.editor.removeDecorations(e),Bi.storedDecorationIDs.delete(this.editor.getModel().uri),this.decorations.length>0&&(this.decorations.clear(),this._hasWordHighlights.set(!1)))}_removeAllDecorations(e){const t=this.codeEditorService.listCodeEditors(),i=[];for(const n of t){if(!n.hasModel()||P1(n.getModel().uri,e==null?void 0:e.uri))continue;const o=Bi.storedDecorationIDs.get(n.getModel().uri);if(!o)continue;n.removeDecorations(o),i.push(n.getModel().uri);const r=Fh.get(n);r!=null&&r.wordHighlighter&&r.wordHighlighter.decorations.length>0&&(r.wordHighlighter.decorations.clear(),r.wordHighlighter.workerRequest=null,r.wordHighlighter._hasWordHighlights.set(!1))}for(const n of i)Bi.storedDecorationIDs.delete(n)}_stopSingular(){var e,t,i,n;this._removeSingleDecorations(),this.editor.hasTextFocus()&&(((e=this.editor.getModel())==null?void 0:e.uri.scheme)!==Ue.vscodeNotebookCell&&((i=(t=Bi.query)==null?void 0:t.modelInfo)==null?void 0:i.model.uri.scheme)!==Ue.vscodeNotebookCell?(Bi.query=null,this._run()):(n=Bi.query)!=null&&n.modelInfo&&(Bi.query.modelInfo=null)),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)}_stopAll(e){this._removeAllDecorations(e),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(e){var t;if(this.occurrencesHighlight==="off"){this._stopAll();return}if(e.reason!==3&&((t=this.editor.getModel())==null?void 0:t.uri.scheme)!==Ue.vscodeNotebookCell){this._stopAll();return}this._run()}_getWord(){const e=this.editor.getSelection(),t=e.startLineNumber,i=e.startColumn;return this.model.isDisposed()?null:this.model.getWordAtPosition({lineNumber:t,column:i})}getOtherModelsToHighlight(e){if(!e)return[];if(e.uri.scheme===Ue.vscodeNotebookCell){const o=[],r=this.codeEditorService.listCodeEditors();for(const a of r){const l=a.getModel();l&&l!==e&&l.uri.scheme===Ue.vscodeNotebookCell&&o.push(l)}return o}const i=[],n=this.codeEditorService.listCodeEditors();for(const o of n){if(!YW(o))continue;const r=o.getModel();r&&e===r.modified&&i.push(r.modified)}if(i.length)return i;if(this.occurrencesHighlight==="singleFile")return[];for(const o of n){const r=o.getModel();r&&r!==e&&i.push(r)}return i}_run(e){var n,o;let t;if(this.editor.hasTextFocus()){const r=this.editor.getSelection();if(!r||r.startLineNumber!==r.endLineNumber){Bi.query=null,this._stopAll();return}const a=r.startColumn,l=r.endColumn,c=this._getWord();if(!c||c.startColumn>a||c.endColumn<l){Bi.query=null,this._stopAll();return}t=this.workerRequest&&this.workerRequest.isValid(this.model,r,this.decorations),Bi.query={modelInfo:{model:this.model,selection:r},word:c}}else if(!Bi.query){this._stopAll();return}if(this.lastCursorPositionChangeTime=new Date().getTime(),t)this.workerRequestCompleted&&this.renderDecorationsTimer!==-1&&(clearTimeout(this.renderDecorationsTimer),this.renderDecorationsTimer=-1,this._beginRenderDecorations());else if(P1(this.editor.getModel().uri,(n=Bi.query.modelInfo)==null?void 0:n.model.uri)){if(!e){const l=this.decorations.getRanges();for(const c of l)if(c.containsPosition(this.editor.getPosition()))return}this._stopAll(e?this.model:void 0);const r=++this.workerRequestTokenId;this.workerRequestCompleted=!1;const a=this.getOtherModelsToHighlight(this.editor.getModel());if(!Bi.query||!Bi.query.modelInfo||Bi.query.modelInfo.model.isDisposed())return;this.workerRequest=this.computeWithModel(Bi.query.modelInfo.model,Bi.query.modelInfo.selection,Bi.query.word,a),(o=this.workerRequest)==null||o.result.then(l=>{r===this.workerRequestTokenId&&(this.workerRequestCompleted=!0,this.workerRequestValue=l||[],this._beginRenderDecorations())},ze)}}computeWithModel(e,t,i,n){return n.length?COe(this.multiDocumentProviders,e,t,i,this.editor.getOption(132),n):wOe(this.providers,e,t,i,this.editor.getOption(132))}_beginRenderDecorations(){const e=new Date().getTime(),t=this.lastCursorPositionChangeTime+250;e>=t?(this.renderDecorationsTimer=-1,this.renderDecorations()):this.renderDecorationsTimer=setTimeout(()=>{this.renderDecorations()},t-e)}renderDecorations(){var t,i,n;this.renderDecorationsTimer=-1;const e=this.codeEditorService.listCodeEditors();for(const o of e){const r=Fh.get(o);if(!r)continue;const a=[],l=(t=o.getModel())==null?void 0:t.uri;if(l&&this.workerRequestValue.has(l)){const c=Bi.storedDecorationIDs.get(l),d=this.workerRequestValue.get(l);if(d)for(const h of d)h.range&&a.push({range:h.range,options:cPe(h.kind)});let u=[];o.changeDecorations(h=>{u=h.deltaDecorations(c!=null?c:[],a)}),Bi.storedDecorationIDs=Bi.storedDecorationIDs.set(l,u),a.length>0&&((i=r.wordHighlighter)==null||i.decorations.set(a),(n=r.wordHighlighter)==null||n._hasWordHighlights.set(!0))}}}dispose(){this._stopSingular(),this.toUnhook.dispose()}},Bi=ph,ph.storedDecorationIDs=new wn,ph.query=null,ph);e3=Bi=Sie([Bx(4,yt)],e3);var rp;let Fh=(rp=class extends B{static get(e){return e.getContribution(J5.ID)}constructor(e,t,i,n){super(),this._wordHighlighter=null;const o=()=>{e.hasModel()&&!e.getModel().isTooLargeForTokenization()&&(this._wordHighlighter=new e3(e,i.documentHighlightProvider,i.multiDocumentHighlightProvider,t,n))};this._register(e.onDidChangeModel(r=>{this._wordHighlighter&&(this._wordHighlighter.dispose(),this._wordHighlighter=null),o()})),o()}get wordHighlighter(){return this._wordHighlighter}saveViewState(){return!!(this._wordHighlighter&&this._wordHighlighter.hasDecorations())}moveNext(){var e;(e=this._wordHighlighter)==null||e.moveNext()}moveBack(){var e;(e=this._wordHighlighter)==null||e.moveBack()}restoreViewState(e){this._wordHighlighter&&e&&this._wordHighlighter.restore()}dispose(){this._wordHighlighter&&(this._wordHighlighter.dispose(),this._wordHighlighter=null),super.dispose()}},J5=rp,rp.ID="editor.contrib.wordHighlighter",rp);Fh=J5=Sie([Bx(1,Pe),Bx(2,_e),Bx(3,yt)],Fh);class Lie extends me{constructor(e,t){super(t),this._isNext=e}run(e,t){const i=Fh.get(t);i&&(this._isNext?i.moveNext():i.moveBack())}}class yOe extends Lie{constructor(){super(!0,{id:"editor.action.wordHighlight.next",label:p("wordHighlight.next.label","Go to Next Symbol Highlight"),alias:"Go to Next Symbol Highlight",precondition:j9,kbOpts:{kbExpr:D.editorTextFocus,primary:65,weight:100}})}}class SOe extends Lie{constructor(){super(!1,{id:"editor.action.wordHighlight.prev",label:p("wordHighlight.previous.label","Go to Previous Symbol Highlight"),alias:"Go to Previous Symbol Highlight",precondition:j9,kbOpts:{kbExpr:D.editorTextFocus,primary:1089,weight:100}})}}class xOe extends me{constructor(){super({id:"editor.action.wordHighlight.trigger",label:p("wordHighlight.trigger.label","Trigger Symbol Highlight"),alias:"Trigger Symbol Highlight",precondition:void 0,kbOpts:{kbExpr:D.editorTextFocus,primary:0,weight:100}})}run(e,t,i){const n=Fh.get(t);n&&n.restoreViewState(!0)}}pt(Fh.ID,Fh,0);ee(yOe);ee(SOe);ee(xOe);Pv(Q5);class kN extends sn{constructor(e){super(e),this._inSelectionMode=e.inSelectionMode,this._wordNavigationType=e.wordNavigationType}runEditorCommand(e,t,i){if(!t.hasModel())return;const n=Zr(t.getOption(132),t.getOption(131)),o=t.getModel(),r=t.getSelections(),a=r.length>1,l=r.map(c=>{const d=new P(c.positionLineNumber,c.positionColumn),u=this._move(n,o,d,this._wordNavigationType,a);return this._moveTo(c,u,this._inSelectionMode)});if(o.pushStackElement(),t._getViewModel().setCursorStates("moveWordCommand",3,l.map(c=>vt.fromModelSelection(c))),l.length===1){const c=new P(l[0].positionLineNumber,l[0].positionColumn);t.revealPosition(c,0)}}_moveTo(e,t,i){return i?new we(e.selectionStartLineNumber,e.selectionStartColumn,t.lineNumber,t.column):new we(t.lineNumber,t.column,t.lineNumber,t.column)}}class qh extends kN{_move(e,t,i,n,o){return Lt.moveWordLeft(e,t,i,n,o)}}class Kh extends kN{_move(e,t,i,n,o){return Lt.moveWordRight(e,t,i,n)}}class kOe extends qh{constructor(){super({inSelectionMode:!1,wordNavigationType:0,id:"cursorWordStartLeft",precondition:void 0})}}class LOe extends qh{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:"cursorWordEndLeft",precondition:void 0})}}class EOe extends qh{constructor(){var e;super({inSelectionMode:!1,wordNavigationType:1,id:"cursorWordLeft",precondition:void 0,kbOpts:{kbExpr:Z.and(D.textInputFocus,(e=Z.and(rS,WT))==null?void 0:e.negate()),primary:2063,mac:{primary:527},weight:100}})}}class IOe extends qh{constructor(){super({inSelectionMode:!0,wordNavigationType:0,id:"cursorWordStartLeftSelect",precondition:void 0})}}class DOe extends qh{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:"cursorWordEndLeftSelect",precondition:void 0})}}class TOe extends qh{constructor(){var e;super({inSelectionMode:!0,wordNavigationType:1,id:"cursorWordLeftSelect",precondition:void 0,kbOpts:{kbExpr:Z.and(D.textInputFocus,(e=Z.and(rS,WT))==null?void 0:e.negate()),primary:3087,mac:{primary:1551},weight:100}})}}class NOe extends qh{constructor(){super({inSelectionMode:!1,wordNavigationType:3,id:"cursorWordAccessibilityLeft",precondition:void 0})}_move(e,t,i,n,o){return super._move(Zr(xl.wordSeparators.defaultValue,e.intlSegmenterLocales),t,i,n,o)}}class ROe extends qh{constructor(){super({inSelectionMode:!0,wordNavigationType:3,id:"cursorWordAccessibilityLeftSelect",precondition:void 0})}_move(e,t,i,n,o){return super._move(Zr(xl.wordSeparators.defaultValue,e.intlSegmenterLocales),t,i,n,o)}}class AOe extends Kh{constructor(){super({inSelectionMode:!1,wordNavigationType:0,id:"cursorWordStartRight",precondition:void 0})}}class MOe extends Kh{constructor(){var e;super({inSelectionMode:!1,wordNavigationType:2,id:"cursorWordEndRight",precondition:void 0,kbOpts:{kbExpr:Z.and(D.textInputFocus,(e=Z.and(rS,WT))==null?void 0:e.negate()),primary:2065,mac:{primary:529},weight:100}})}}class POe extends Kh{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:"cursorWordRight",precondition:void 0})}}class OOe extends Kh{constructor(){super({inSelectionMode:!0,wordNavigationType:0,id:"cursorWordStartRightSelect",precondition:void 0})}}class FOe extends Kh{constructor(){var e;super({inSelectionMode:!0,wordNavigationType:2,id:"cursorWordEndRightSelect",precondition:void 0,kbOpts:{kbExpr:Z.and(D.textInputFocus,(e=Z.and(rS,WT))==null?void 0:e.negate()),primary:3089,mac:{primary:1553},weight:100}})}}class BOe extends Kh{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:"cursorWordRightSelect",precondition:void 0})}}class WOe extends Kh{constructor(){super({inSelectionMode:!1,wordNavigationType:3,id:"cursorWordAccessibilityRight",precondition:void 0})}_move(e,t,i,n,o){return super._move(Zr(xl.wordSeparators.defaultValue,e.intlSegmenterLocales),t,i,n,o)}}class HOe extends Kh{constructor(){super({inSelectionMode:!0,wordNavigationType:3,id:"cursorWordAccessibilityRightSelect",precondition:void 0})}_move(e,t,i,n,o){return super._move(Zr(xl.wordSeparators.defaultValue,e.intlSegmenterLocales),t,i,n,o)}}class LN extends sn{constructor(e){super(e),this._whitespaceHeuristics=e.whitespaceHeuristics,this._wordNavigationType=e.wordNavigationType}runEditorCommand(e,t,i){const n=e.get(Si);if(!t.hasModel())return;const o=Zr(t.getOption(132),t.getOption(131)),r=t.getModel(),a=t.getSelections(),l=t.getOption(6),c=t.getOption(11),d=n.getLanguageConfiguration(r.getLanguageId()).getAutoClosingPairs(),u=t._getViewModel(),h=a.map(g=>{const f=this._delete({wordSeparators:o,model:r,selection:g,whitespaceHeuristics:this._whitespaceHeuristics,autoClosingDelete:t.getOption(9),autoClosingBrackets:l,autoClosingQuotes:c,autoClosingPairs:d,autoClosedCharacters:u.getCursorAutoClosedCharacters()},this._wordNavigationType);return new Zn(f,"")});t.pushUndoStop(),t.executeCommands(this.id,h),t.pushUndoStop()}}class q9 extends LN{_delete(e,t){const i=Lt.deleteWordLeft(e,t);return i||new L(1,1,1,1)}}class K9 extends LN{_delete(e,t){const i=Lt.deleteWordRight(e,t);if(i)return i;const n=e.model.getLineCount(),o=e.model.getLineMaxColumn(n);return new L(n,o,n,o)}}class VOe extends q9{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:0,id:"deleteWordStartLeft",precondition:D.writable})}}class $Oe extends q9{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:2,id:"deleteWordEndLeft",precondition:D.writable})}}class zOe extends q9{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:0,id:"deleteWordLeft",precondition:D.writable,kbOpts:{kbExpr:D.textInputFocus,primary:2049,mac:{primary:513},weight:100}})}}class UOe extends K9{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:0,id:"deleteWordStartRight",precondition:D.writable})}}class jOe extends K9{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:2,id:"deleteWordEndRight",precondition:D.writable})}}class qOe extends K9{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:2,id:"deleteWordRight",precondition:D.writable,kbOpts:{kbExpr:D.textInputFocus,primary:2068,mac:{primary:532},weight:100}})}}class KOe extends me{constructor(){super({id:"deleteInsideWord",precondition:D.writable,label:p("deleteInsideWord","Delete Word"),alias:"Delete Word"})}run(e,t,i){if(!t.hasModel())return;const n=Zr(t.getOption(132),t.getOption(131)),o=t.getModel(),a=t.getSelections().map(l=>{const c=Lt.deleteInsideWord(n,o,l);return new Zn(c,"")});t.pushUndoStop(),t.executeCommands(this.id,a),t.pushUndoStop()}}ge(new kOe);ge(new LOe);ge(new EOe);ge(new IOe);ge(new DOe);ge(new TOe);ge(new AOe);ge(new MOe);ge(new POe);ge(new OOe);ge(new FOe);ge(new BOe);ge(new NOe);ge(new ROe);ge(new WOe);ge(new HOe);ge(new VOe);ge(new $Oe);ge(new zOe);ge(new UOe);ge(new jOe);ge(new qOe);ee(KOe);class GOe extends LN{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:0,id:"deleteWordPartLeft",precondition:D.writable,kbOpts:{kbExpr:D.textInputFocus,primary:0,mac:{primary:769},weight:100}})}_delete(e,t){const i=YT.deleteWordPartLeft(e);return i||new L(1,1,1,1)}}class ZOe extends LN{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:2,id:"deleteWordPartRight",precondition:D.writable,kbOpts:{kbExpr:D.textInputFocus,primary:0,mac:{primary:788},weight:100}})}_delete(e,t){const i=YT.deleteWordPartRight(e);if(i)return i;const n=e.model.getLineCount(),o=e.model.getLineMaxColumn(n);return new L(n,o,n,o)}}class Eie extends kN{_move(e,t,i,n,o){return YT.moveWordPartLeft(e,t,i,o)}}class YOe extends Eie{constructor(){super({inSelectionMode:!1,wordNavigationType:0,id:"cursorWordPartLeft",precondition:void 0,kbOpts:{kbExpr:D.textInputFocus,primary:0,mac:{primary:783},weight:100}})}}ht.registerCommandAlias("cursorWordPartStartLeft","cursorWordPartLeft");class XOe extends Eie{constructor(){super({inSelectionMode:!0,wordNavigationType:0,id:"cursorWordPartLeftSelect",precondition:void 0,kbOpts:{kbExpr:D.textInputFocus,primary:0,mac:{primary:1807},weight:100}})}}ht.registerCommandAlias("cursorWordPartStartLeftSelect","cursorWordPartLeftSelect");class Iie extends kN{_move(e,t,i,n,o){return YT.moveWordPartRight(e,t,i)}}class QOe extends Iie{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:"cursorWordPartRight",precondition:void 0,kbOpts:{kbExpr:D.textInputFocus,primary:0,mac:{primary:785},weight:100}})}}class JOe extends Iie{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:"cursorWordPartRightSelect",precondition:void 0,kbOpts:{kbExpr:D.textInputFocus,primary:0,mac:{primary:1809},weight:100}})}}ge(new GOe);ge(new ZOe);ge(new YOe);ge(new XOe);ge(new QOe);ge(new JOe);const m6=class m6 extends B{constructor(e){super(),this.editor=e,this._register(this.editor.onDidAttemptReadOnlyEdit(()=>this._onDidAttemptReadOnlyEdit()))}_onDidAttemptReadOnlyEdit(){const e=Wo.get(this.editor);if(e&&this.editor.hasModel()){let t=this.editor.getOptions().get(93);t||(this.editor.isSimpleWidget?t=new ss(p("editor.simple.readonly","Cannot edit in read-only input")):t=new ss(p("editor.readonly","Cannot edit in read-only editor"))),e.showMessage(t,this.editor.getPosition())}}};m6.ID="editor.contrib.readOnlyMessageController";let BE=m6;pt(BE.ID,BE,2);var eFe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},VU=function(s,e){return function(t,i){e(t,i,s)}};let t3=class extends B{constructor(e,t,i){super(),this._textModel=e,this._languageFeaturesService=t,this._outlineModelService=i,this._currentModel=Je(this,void 0);const n=Gn("documentSymbolProvider.onDidChange",this._languageFeaturesService.documentSymbolProvider.onDidChange),o=Gn("_textModel.onDidChangeContent",ce.debounce(r=>this._textModel.onDidChangeContent(r),()=>{},100));this._register(so((r,a)=>I(this,null,function*(){n.read(r),o.read(r);const l=a.add(new B0e),c=yield this._outlineModelService.getOrCreate(this._textModel,l.token);a.isDisposed||this._currentModel.set(c,void 0)})))}getBreadcrumbItems(e,t){const i=this._currentModel.read(t);if(!i)return[];const n=i.asListOfDocumentSymbols().filter(o=>e.contains(o.range.startLineNumber)&&!e.contains(o.range.endLineNumber));return n.sort(aG(Os(o=>o.range.endLineNumber-o.range.startLineNumber,va))),n.map(o=>({name:o.name,kind:o.kind,startLineNumber:o.range.startLineNumber}))}};t3=eFe([VU(1,_e),VU(2,NS)],t3);WL.setBreadcrumbsSourceFactory((s,e)=>e.createInstance(t3,s));const _6=class _6 extends B{constructor(e){super(),this.editor=e,this.widget=null,ml&&(this._register(e.onDidChangeConfiguration(()=>this.update())),this.update())}update(){const e=!this.editor.getOption(92);!this.widget&&e?this.widget=new i3(this.editor):this.widget&&!e&&(this.widget.dispose(),this.widget=null)}dispose(){super.dispose(),this.widget&&(this.widget.dispose(),this.widget=null)}};_6.ID="editor.contrib.iPadShowKeyboard";let WE=_6;const OD=class OD extends B{constructor(e){super(),this.editor=e,this._domNode=document.createElement("textarea"),this._domNode.className="iPadShowKeyboard",this._register(j(this._domNode,"touchstart",t=>{this.editor.focus()})),this._register(j(this._domNode,"focus",t=>{this.editor.focus()})),this.editor.addOverlayWidget(this)}dispose(){this.editor.removeOverlayWidget(this),super.dispose()}getId(){return OD.ID}getDomNode(){return this._domNode}getPosition(){return{preference:1}}};OD.ID="editor.contrib.ShowKeyboardWidget";let i3=OD;pt(WE.ID,WE,3);var tFe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},$U=function(s,e){return function(t,i){e(t,i,s)}},n3,ap;let By=(ap=class extends B{static get(e){return e.getContribution(n3.ID)}constructor(e,t,i){super(),this._editor=e,this._languageService=i,this._widget=null,this._register(this._editor.onDidChangeModel(n=>this.stop())),this._register(this._editor.onDidChangeModelLanguage(n=>this.stop())),this._register(Ii.onDidChange(n=>this.stop())),this._register(this._editor.onKeyUp(n=>n.keyCode===9&&this.stop()))}dispose(){this.stop(),super.dispose()}launch(){this._widget||this._editor.hasModel()&&(this._widget=new s3(this._editor,this._languageService))}stop(){this._widget&&(this._widget.dispose(),this._widget=null)}},n3=ap,ap.ID="editor.contrib.inspectTokens",ap);By=n3=tFe([$U(1,Dr),$U(2,fi)],By);class iFe extends me{constructor(){super({id:"editor.action.inspectTokens",label:d2.inspectTokensAction,alias:"Developer: Inspect Tokens",precondition:void 0})}run(e,t){const i=By.get(t);i==null||i.launch()}}function nFe(s){let e="";for(let t=0,i=s.length;t<i;t++){const n=s.charCodeAt(t);switch(n){case 9:e+="→";break;case 32:e+="·";break;default:e+=String.fromCharCode(n)}}return e}function sFe(s,e){const t=Ii.get(e);if(t)return t;const i=s.encodeLanguageId(e);return{getInitialState:()=>Db,tokenize:(n,o,r)=>y8(e,r),tokenizeEncoded:(n,o,r)=>DT(i,r)}}const FD=class FD extends B{constructor(e,t){super(),this.allowEditorOverflow=!0,this._editor=e,this._languageService=t,this._model=this._editor.getModel(),this._domNode=document.createElement("div"),this._domNode.className="tokens-inspect-widget",this._tokenizationSupport=sFe(this._languageService.languageIdCodec,this._model.getLanguageId()),this._compute(this._editor.getPosition()),this._register(this._editor.onDidChangeCursorPosition(i=>this._compute(this._editor.getPosition()))),this._editor.addContentWidget(this)}dispose(){this._editor.removeContentWidget(this),super.dispose()}getId(){return FD._ID}_compute(e){const t=this._getTokensAtLine(e.lineNumber);let i=0;for(let l=t.tokens1.length-1;l>=0;l--){const c=t.tokens1[l];if(e.column-1>=c.offset){i=l;break}}let n=0;for(let l=t.tokens2.length>>>1;l>=0;l--)if(e.column-1>=t.tokens2[l<<1]){n=l;break}const o=this._model.getLineContent(e.lineNumber);let r="";if(i<t.tokens1.length){const l=t.tokens1[i].offset,c=i+1<t.tokens1.length?t.tokens1[i+1].offset:o.length;r=o.substring(l,c)}Nn(this._domNode,ae("h2.tm-token",void 0,nFe(r),ae("span.tm-token-length",void 0,`${r.length} ${r.length===1?"char":"chars"}`))),J(this._domNode,ae("hr.tokens-inspect-separator",{style:"clear:both"}));const a=(n<<1)+1<t.tokens2.length?this._decodeMetadata(t.tokens2[(n<<1)+1]):null;J(this._domNode,ae("table.tm-metadata-table",void 0,ae("tbody",void 0,ae("tr",void 0,ae("td.tm-metadata-key",void 0,"language"),ae("td.tm-metadata-value",void 0,`${a?a.languageId:"-?-"}`)),ae("tr",void 0,ae("td.tm-metadata-key",void 0,"token type"),ae("td.tm-metadata-value",void 0,`${a?this._tokenTypeToString(a.tokenType):"-?-"}`)),ae("tr",void 0,ae("td.tm-metadata-key",void 0,"font style"),ae("td.tm-metadata-value",void 0,`${a?this._fontStyleToString(a.fontStyle):"-?-"}`)),ae("tr",void 0,ae("td.tm-metadata-key",void 0,"foreground"),ae("td.tm-metadata-value",void 0,`${a?X.Format.CSS.formatHex(a.foreground):"-?-"}`)),ae("tr",void 0,ae("td.tm-metadata-key",void 0,"background"),ae("td.tm-metadata-value",void 0,`${a?X.Format.CSS.formatHex(a.background):"-?-"}`))))),J(this._domNode,ae("hr.tokens-inspect-separator")),i<t.tokens1.length&&J(this._domNode,ae("span.tm-token-type",void 0,t.tokens1[i].type)),this._editor.layoutContentWidget(this)}_decodeMetadata(e){const t=Ii.getColorMap(),i=eo.getLanguageId(e),n=eo.getTokenType(e),o=eo.getFontStyle(e),r=eo.getForeground(e),a=eo.getBackground(e);return{languageId:this._languageService.languageIdCodec.decodeLanguageId(i),tokenType:n,fontStyle:o,foreground:t[r],background:t[a]}}_tokenTypeToString(e){switch(e){case 0:return"Other";case 1:return"Comment";case 2:return"String";case 3:return"RegEx";default:return"??"}}_fontStyleToString(e){let t="";return e&1&&(t+="italic "),e&2&&(t+="bold "),e&4&&(t+="underline "),e&8&&(t+="strikethrough "),t.length===0&&(t="---"),t}_getTokensAtLine(e){const t=this._getStateBeforeLine(e),i=this._tokenizationSupport.tokenize(this._model.getLineContent(e),!0,t),n=this._tokenizationSupport.tokenizeEncoded(this._model.getLineContent(e),!0,t);return{startState:t,tokens1:i.tokens,tokens2:n.tokens,endState:i.endState}}_getStateBeforeLine(e){let t=this._tokenizationSupport.getInitialState();for(let i=1;i<e;i++)t=this._tokenizationSupport.tokenize(this._model.getLineContent(i),!0,t).endState;return t}getDomNode(){return this._domNode}getPosition(){return{position:this._editor.getPosition(),preference:[2,1]}}};FD._ID="editor.contrib.inspectTokensWidget";let s3=FD;pt(By.ID,By,4);ee(iFe);var oFe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},zU=function(s,e){return function(t,i){e(t,i,s)}},Kw,lp;let o3=(lp=class{constructor(e,t){this.quickInputService=e,this.keybindingService=t,this.registry=yi.as(qp.Quickaccess)}provide(e){const t=new G;return t.add(e.onDidAccept(()=>{const[i]=e.selectedItems;i&&this.quickInputService.quickAccess.show(i.prefix,{preserveValue:!0})})),t.add(e.onDidChangeValue(i=>{const n=this.registry.getQuickAccessProvider(i.substr(Kw.PREFIX.length));n&&n.prefix&&n.prefix!==Kw.PREFIX&&this.quickInputService.quickAccess.show(n.prefix,{preserveValue:!0})})),e.items=this.getQuickAccessProviders().filter(i=>i.prefix!==Kw.PREFIX),t}getQuickAccessProviders(){return this.registry.getQuickAccessProviders().sort((t,i)=>t.prefix.localeCompare(i.prefix)).flatMap(t=>this.createPicks(t))}createPicks(e){return e.helpEntries.map(t=>{const i=t.prefix||e.prefix,n=i||"…";return{prefix:i,label:n,keybinding:t.commandId?this.keybindingService.lookupKeybinding(t.commandId):void 0,ariaLabel:p("helpPickAriaLabel","{0}, {1}",n,t.description),description:t.description}})}},Kw=lp,lp.PREFIX="?",lp);o3=Kw=oFe([zU(0,ta),zU(1,It)],o3);yi.as(qp.Quickaccess).registerQuickAccessProvider({ctor:o3,prefix:"",helpEntries:[{description:u2.helpQuickAccessActionLabel}]});class Die{constructor(e){this.options=e,this.rangeHighlightDecorationId=void 0}provide(e,t,i){var r;const n=new G;e.canAcceptInBackground=!!((r=this.options)!=null&&r.canAcceptInBackground),e.matchOnLabel=e.matchOnDescription=e.matchOnDetail=e.sortByLabel=!1;const o=n.add(new gn);return o.value=this.doProvide(e,t,i),n.add(this.onDidActiveTextEditorControlChange(()=>{o.value=void 0,o.value=this.doProvide(e,t)})),n}doProvide(e,t,i){var r;const n=new G,o=this.activeTextEditorControl;if(o&&this.canProvideWithTextEditor(o)){const a={editor:o},l=FJ(o);if(l){let c=(r=o.saveViewState())!=null?r:void 0;n.add(l.onDidChangeCursorPosition(()=>{var d;c=(d=o.saveViewState())!=null?d:void 0})),a.restoreViewState=()=>{c&&o===this.activeTextEditorControl&&o.restoreViewState(c)},n.add(bh(t.onCancellationRequested)(()=>{var d;return(d=a.restoreViewState)==null?void 0:d.call(a)}))}n.add(ke(()=>this.clearDecorations(o))),n.add(this.provideWithTextEditor(a,e,t,i))}else n.add(this.provideWithoutTextEditor(e,t));return n}canProvideWithTextEditor(e){return!0}gotoLocation({editor:e},t){e.setSelection(t.range,"code.jump"),e.revealRangeInCenter(t.range,0),t.preserveFocus||e.focus();const i=e.getModel();i&&"getLineContent"in i&&yc(`${i.getLineContent(t.range.startLineNumber)}`)}getModel(e){var t;return YW(e)?(t=e.getModel())==null?void 0:t.modified:e.getModel()}addDecorations(e,t){e.changeDecorations(i=>{const n=[];this.rangeHighlightDecorationId&&(n.push(this.rangeHighlightDecorationId.overviewRulerDecorationId),n.push(this.rangeHighlightDecorationId.rangeHighlightId),this.rangeHighlightDecorationId=void 0);const o=[{range:t,options:{description:"quick-access-range-highlight",className:"rangeHighlight",isWholeLine:!0}},{range:t,options:{description:"quick-access-range-highlight-overview",overviewRuler:{color:Di(IX),position:_r.Full}}}],[r,a]=i.deltaDecorations(n,o);this.rangeHighlightDecorationId={rangeHighlightId:r,overviewRulerDecorationId:a}})}clearDecorations(e){const t=this.rangeHighlightDecorationId;t&&(e.changeDecorations(i=>{i.deltaDecorations([t.overviewRulerDecorationId,t.rangeHighlightId],[])}),this.rangeHighlightDecorationId=void 0)}}const BD=class BD extends Die{constructor(){super({canAcceptInBackground:!0})}provideWithoutTextEditor(e){const t=p("cannotRunGotoLine","Open a text editor first to go to a line.");return e.items=[{label:t}],e.ariaLabel=t,B.None}provideWithTextEditor(e,t,i){const n=e.editor,o=new G;o.add(t.onDidAccept(l=>{const[c]=t.selectedItems;if(c){if(!this.isValidLineNumber(n,c.lineNumber))return;this.gotoLocation(e,{range:this.toRange(c.lineNumber,c.column),keyMods:t.keyMods,preserveFocus:l.inBackground}),l.inBackground||t.hide()}}));const r=()=>{const l=this.parsePosition(n,t.value.trim().substr(BD.PREFIX.length)),c=this.getPickLabel(n,l.lineNumber,l.column);if(t.items=[{lineNumber:l.lineNumber,column:l.column,label:c}],t.ariaLabel=c,!this.isValidLineNumber(n,l.lineNumber)){this.clearDecorations(n);return}const d=this.toRange(l.lineNumber,l.column);n.revealRangeInCenter(d,0),this.addDecorations(n,d)};r(),o.add(t.onDidChangeValue(()=>r()));const a=FJ(n);return a&&a.getOptions().get(68).renderType===2&&(a.updateOptions({lineNumbers:"on"}),o.add(ke(()=>a.updateOptions({lineNumbers:"relative"})))),o}toRange(e=1,t=1){return{startLineNumber:e,startColumn:t,endLineNumber:e,endColumn:t}}parsePosition(e,t){const i=t.split(/,|:|#/).map(o=>parseInt(o,10)).filter(o=>!isNaN(o)),n=this.lineCount(e)+1;return{lineNumber:i[0]>0?i[0]:n+i[0],column:i[1]}}getPickLabel(e,t,i){if(this.isValidLineNumber(e,t))return this.isValidColumn(e,t,i)?p("gotoLineColumnLabel","Go to line {0} and character {1}.",t,i):p("gotoLineLabel","Go to line {0}.",t);const n=e.getPosition()||{lineNumber:1,column:1},o=this.lineCount(e);return o>1?p("gotoLineLabelEmptyWithLimit","Current Line: {0}, Character: {1}. Type a line number between 1 and {2} to navigate to.",n.lineNumber,n.column,o):p("gotoLineLabelEmpty","Current Line: {0}, Character: {1}. Type a line number to navigate to.",n.lineNumber,n.column)}isValidLineNumber(e,t){return!t||typeof t!="number"?!1:t>0&&t<=this.lineCount(e)}isValidColumn(e,t,i){if(!i||typeof i!="number")return!1;const n=this.getModel(e);if(!n)return!1;const o={lineNumber:t,column:i};return n.validatePosition(o).equals(o)}lineCount(e){var t,i;return(i=(t=this.getModel(e))==null?void 0:t.getLineCount())!=null?i:0}};BD.PREFIX=":";let r3=BD;var rFe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},aFe=function(s,e){return function(t,i){e(t,i,s)}};let Wy=class extends r3{constructor(e){super(),this.editorService=e,this.onDidActiveTextEditorControlChange=ce.None}get activeTextEditorControl(){var e;return(e=this.editorService.getFocusedCodeEditor())!=null?e:void 0}};Wy=rFe([aFe(0,yt)],Wy);var cp;let Tie=(cp=class extends me{constructor(){super({id:cp.ID,label:Mk.gotoLineActionLabel,alias:"Go to Line/Column...",precondition:void 0,kbOpts:{kbExpr:D.focus,primary:2085,mac:{primary:293},weight:100}})}run(e){e.get(ta).quickAccess.show(Wy.PREFIX)}},cp.ID="editor.action.gotoLine",cp);ee(Tie);yi.as(qp.Quickaccess).registerQuickAccessProvider({ctor:Wy,prefix:Wy.PREFIX,helpEntries:[{description:Mk.gotoLineActionLabel,commandId:Tie.ID}]});const Nie=[void 0,[]];function PA(s,e,t=0,i=0){const n=e;return n.values&&n.values.length>1?lFe(s,n.values,t,i):Rie(s,e,t,i)}function lFe(s,e,t,i){let n=0;const o=[];for(const r of e){const[a,l]=Rie(s,r,t,i);if(typeof a!="number")return Nie;n+=a,o.push(...l)}return[n,cFe(o)]}function Rie(s,e,t,i){const n=vp(e.original,e.originalLowercase,t,s,s.toLowerCase(),i,{firstMatchCanBeWeak:!0,boostFullMatch:!0});return n?[n[0],oS(n)]:Nie}function cFe(s){const e=s.sort((n,o)=>n.start-o.start),t=[];let i;for(const n of e)!i||!dFe(i,n)?(i=n,t.push(n)):(i.start=Math.min(i.start,n.start),i.end=Math.max(i.end,n.end));return t}function dFe(s,e){return!(s.end<e.start||e.end<s.start)}function UU(s){return s.startsWith('"')&&s.endsWith('"')}const Aie=" ";function a3(s){typeof s!="string"&&(s="");const e=s.toLowerCase(),{pathNormalized:t,normalized:i,normalizedLowercase:n}=jU(s),o=t.indexOf(cl)>=0,r=UU(s);let a;const l=s.split(Aie);if(l.length>1)for(const c of l){const d=UU(c),{pathNormalized:u,normalized:h,normalizedLowercase:g}=jU(c);h&&(a||(a=[]),a.push({original:c,originalLowercase:c.toLowerCase(),pathNormalized:u,normalized:h,normalizedLowercase:g,expectContiguousMatch:d}))}return{original:s,originalLowercase:e,pathNormalized:t,normalized:i,normalizedLowercase:n,values:a,containsPathSeparator:o,expectContiguousMatch:r}}function jU(s){let e;Qn?e=s.replace(/\//g,cl):e=s.replace(/\\/g,cl);const t=vre(e).replace(/\s|"/g,"");return{pathNormalized:e,normalized:t,normalizedLowercase:t.toLowerCase()}}function qU(s){return Array.isArray(s)?a3(s.map(e=>e.original).join(Aie)):a3(s.original)}var uFe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},KU=function(s,e){return function(t,i){e(t,i,s)}},Wx,sl;let hf=(sl=class extends Die{constructor(e,t,i=Object.create(null)){super(i),this._languageFeaturesService=e,this._outlineModelService=t,this.options=i,this.options.canAcceptInBackground=!0}provideWithoutTextEditor(e){return this.provideLabelPick(e,p("cannotRunGotoSymbolWithoutEditor","To go to a symbol, first open a text editor with symbol information.")),B.None}provideWithTextEditor(e,t,i,n){const o=e.editor,r=this.getModel(o);return r?this._languageFeaturesService.documentSymbolProvider.has(r)?this.doProvideWithEditorSymbols(e,r,t,i,n):this.doProvideWithoutEditorSymbols(e,r,t,i):B.None}doProvideWithoutEditorSymbols(e,t,i,n){const o=new G;return this.provideLabelPick(i,p("cannotRunGotoSymbolWithoutSymbolProvider","The active text editor does not provide symbol information.")),I(this,null,function*(){!(yield this.waitForLanguageSymbolRegistry(t,o))||n.isCancellationRequested||o.add(this.doProvideWithEditorSymbols(e,t,i,n))}),o}provideLabelPick(e,t){e.items=[{label:t,index:0,kind:14}],e.ariaLabel=t}waitForLanguageSymbolRegistry(e,t){return I(this,null,function*(){if(this._languageFeaturesService.documentSymbolProvider.has(e))return!0;const i=new bv,n=t.add(this._languageFeaturesService.documentSymbolProvider.onDidChange(()=>{this._languageFeaturesService.documentSymbolProvider.has(e)&&(n.dispose(),i.complete(!0))}));return t.add(ke(()=>i.complete(!1))),i.p})}doProvideWithEditorSymbols(e,t,i,n,o){var u;const r=e.editor,a=new G;a.add(i.onDidAccept(h=>{var f;const[g]=i.selectedItems;g&&g.range&&(this.gotoLocation(e,{range:g.range.selection,keyMods:i.keyMods,preserveFocus:h.inBackground}),(f=o==null?void 0:o.handleAccept)==null||f.call(o,g),h.inBackground||i.hide())})),a.add(i.onDidTriggerItemButton(({item:h})=>{h&&h.range&&(this.gotoLocation(e,{range:h.range.selection,keyMods:i.keyMods,forceSideBySide:!0}),i.hide())}));const l=this.getDocumentSymbols(t,n);let c;const d=h=>I(this,null,function*(){c==null||c.dispose(!0),i.busy=!1,c=new Ci(n),i.busy=!0;try{const g=a3(i.value.substr(Wx.PREFIX.length).trim()),f=yield this.doGetSymbolPicks(l,g,void 0,c.token,t);if(n.isCancellationRequested)return;if(f.length>0){if(i.items=f,h&&g.original.length===0){const m=C1(f,_=>!!(_.type!=="separator"&&_.range&&L.containsPosition(_.range.decoration,h)));m&&(i.activeItems=[m])}}else g.original.length>0?this.provideLabelPick(i,p("noMatchingSymbolResults","No matching editor symbols")):this.provideLabelPick(i,p("noSymbolResults","No editor symbols"))}finally{n.isCancellationRequested||(i.busy=!1)}});return a.add(i.onDidChangeValue(()=>d(void 0))),d((u=r.getSelection())==null?void 0:u.getPosition()),a.add(i.onDidChangeActive(()=>{const[h]=i.activeItems;h&&h.range&&(r.revealRangeInCenter(h.range.selection,0),this.addDecorations(r,h.range.decoration))})),a}doGetSymbolPicks(e,t,i,n,o){return I(this,null,function*(){var _,b;const r=yield e;if(n.isCancellationRequested)return[];const a=t.original.indexOf(Wx.SCOPE_PREFIX)===0,l=a?1:0;let c,d;t.values&&t.values.length>1?(c=qU(t.values[0]),d=qU(t.values.slice(1))):c=t;let u;const h=(b=(_=this.options)==null?void 0:_.openSideBySideDirection)==null?void 0:b.call(_);h&&(u=[{iconClass:h==="right"?Me.asClassName(oe.splitHorizontal):Me.asClassName(oe.splitVertical),tooltip:h==="right"?p("openToSide","Open to the Side"):p("openToBottom","Open to the Bottom")}]);const g=[];for(let v=0;v<r.length;v++){const w=r[v],C=_re(w.name),y=`$(${Qx.toIcon(w.kind).id}) ${C}`,S=y.length-C.length;let k=w.containerName;i!=null&&i.extraContainerLabel&&(k?k=`${i.extraContainerLabel} • ${k}`:k=i.extraContainerLabel);let E,N,W,H;if(t.original.length>l){let q=!1;if(c!==t&&([E,N]=PA(y,ue($({},t),{values:void 0}),l,S),typeof E=="number"&&(q=!0)),typeof E!="number"&&([E,N]=PA(y,c,l,S),typeof E!="number"))continue;if(!q&&d){if(k&&d.original.length>0&&([W,H]=PA(k,d)),typeof W!="number")continue;typeof E=="number"&&(E+=W)}}const z=w.tags&&w.tags.indexOf(1)>=0;g.push({index:v,kind:w.kind,score:E,label:y,ariaLabel:dre(w.name,w.kind),description:k,highlights:z?void 0:{label:N,description:H},range:{selection:L.collapseToStart(w.selectionRange),decoration:w.range},uri:o.uri,symbolName:C,strikethrough:z,buttons:u})}const f=g.sort((v,w)=>a?this.compareByKindAndScore(v,w):this.compareByScore(v,w));let m=[];if(a){let y=function(){w&&typeof v=="number"&&C>0&&(w.label=up(FA[v]||OA,C))},v,w,C=0;for(const S of f)v!==S.kind?(y(),v=S.kind,C=1,w={type:"separator"},m.push(w)):C++,m.push(S);y()}else f.length>0&&(m=[{label:p("symbols","symbols ({0})",g.length),type:"separator"},...f]);return m})}compareByScore(e,t){if(typeof e.score!="number"&&typeof t.score=="number")return 1;if(typeof e.score=="number"&&typeof t.score!="number")return-1;if(typeof e.score=="number"&&typeof t.score=="number"){if(e.score>t.score)return-1;if(e.score<t.score)return 1}return e.index<t.index?-1:e.index>t.index?1:0}compareByKindAndScore(e,t){const i=FA[e.kind]||OA,n=FA[t.kind]||OA,o=i.localeCompare(n);return o===0?this.compareByScore(e,t):o}getDocumentSymbols(e,t){return I(this,null,function*(){const i=yield this._outlineModelService.getOrCreate(e,t);return t.isCancellationRequested?[]:i.asListOfDocumentSymbols()})}},Wx=sl,sl.PREFIX="@",sl.SCOPE_PREFIX=":",sl.PREFIX_BY_CATEGORY=`${sl.PREFIX}${sl.SCOPE_PREFIX}`,sl);hf=Wx=uFe([KU(0,_e),KU(1,NS)],hf);const OA=p("property","properties ({0})"),FA={5:p("method","methods ({0})"),11:p("function","functions ({0})"),8:p("_constructor","constructors ({0})"),12:p("variable","variables ({0})"),4:p("class","classes ({0})"),22:p("struct","structs ({0})"),23:p("event","events ({0})"),24:p("operator","operators ({0})"),10:p("interface","interfaces ({0})"),2:p("namespace","namespaces ({0})"),3:p("package","packages ({0})"),25:p("typeParameter","type parameters ({0})"),1:p("modules","modules ({0})"),6:p("property","properties ({0})"),9:p("enum","enumerations ({0})"),21:p("enumMember","enumeration members ({0})"),14:p("string","strings ({0})"),0:p("file","files ({0})"),17:p("array","arrays ({0})"),15:p("number","numbers ({0})"),16:p("boolean","booleans ({0})"),18:p("object","objects ({0})"),19:p("key","keys ({0})"),7:p("field","fields ({0})"),13:p("constant","constants ({0})")};var hFe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},BA=function(s,e){return function(t,i){e(t,i,s)}};let l3=class extends hf{constructor(e,t,i){super(t,i),this.editorService=e,this.onDidActiveTextEditorControlChange=ce.None}get activeTextEditorControl(){var e;return(e=this.editorService.getFocusedCodeEditor())!=null?e:void 0}};l3=hFe([BA(0,yt),BA(1,_e),BA(2,NS)],l3);const WD=class WD extends me{constructor(){super({id:WD.ID,label:F1.quickOutlineActionLabel,alias:"Go to Symbol...",precondition:D.hasDocumentSymbolProvider,kbOpts:{kbExpr:D.focus,primary:3117,weight:100},contextMenuOpts:{group:"navigation",order:3}})}run(e){e.get(ta).quickAccess.show(hf.PREFIX,{itemActivation:Ga.NONE})}};WD.ID="editor.action.quickOutline";let HE=WD;ee(HE);yi.as(qp.Quickaccess).registerQuickAccessProvider({ctor:l3,prefix:hf.PREFIX,helpEntries:[{description:F1.quickOutlineActionLabel,prefix:hf.PREFIX,commandId:HE.ID},{description:F1.quickOutlineByCategoryActionLabel,prefix:hf.PREFIX_BY_CATEGORY}]});function gFe(s){var t;const e=new Map;for(const i of s)e.set(i,((t=e.get(i))!=null?t:0)+1);return e}class PC{constructor(){this.chunkCount=0,this.chunkOccurrences=new Map,this.documents=new Map}calculateScores(e,t){const i=this.computeEmbedding(e),n=new Map,o=[];for(const[r,a]of this.documents){if(t.isCancellationRequested)return[];for(const l of a.chunks){const c=this.computeSimilarityScore(l,i,n);c>0&&o.push({key:r,score:c})}}return o}static termFrequencies(e){return gFe(PC.splitTerms(e))}static*splitTerms(e){const t=i=>i.toLowerCase();for(const[i]of e.matchAll(new RegExp("\\b\\p{Letter}[\\p{Letter}\\d]{2,}\\b","gu"))){yield t(i);const n=i.replace(/([a-z])([A-Z])/g,"$1 $2").split(/\s+/g);if(n.length>1)for(const o of n)o.length>2&&new RegExp("\\p{Letter}{3,}","gu").test(o)&&(yield t(o))}}updateDocuments(e){var t;for(const{key:i}of e)this.deleteDocument(i);for(const i of e){const n=[];for(const o of i.textChunks){const r=PC.termFrequencies(o);for(const a of r.keys())this.chunkOccurrences.set(a,((t=this.chunkOccurrences.get(a))!=null?t:0)+1);n.push({text:o,tf:r})}this.chunkCount+=n.length,this.documents.set(i.key,{chunks:n})}return this}deleteDocument(e){const t=this.documents.get(e);if(t){this.documents.delete(e),this.chunkCount-=t.chunks.length;for(const i of t.chunks)for(const n of i.tf.keys()){const o=this.chunkOccurrences.get(n);if(typeof o=="number"){const r=o-1;r<=0?this.chunkOccurrences.delete(n):this.chunkOccurrences.set(n,r)}}}}computeSimilarityScore(e,t,i){let n=0;for(const[o,r]of Object.entries(t)){const a=e.tf.get(o);if(!a)continue;let l=i.get(o);typeof l!="number"&&(l=this.computeIdf(o),i.set(o,l));const c=a*l;n+=c*r}return n}computeEmbedding(e){const t=PC.termFrequencies(e);return this.computeTfidf(t)}computeIdf(e){var i;const t=(i=this.chunkOccurrences.get(e))!=null?i:0;return t>0?Math.log((this.chunkCount+1)/t):0}computeTfidf(e){const t=Object.create(null);for(const[i,n]of e){const o=this.computeIdf(i);o>0&&(t[i]=n*o)}return t}}function fFe(s){var i,n;const e=s.slice(0);e.sort((o,r)=>r.score-o.score);const t=(n=(i=e[0])==null?void 0:i.score)!=null?n:0;if(t>0)for(const o of e)o.score/=t;return e}var h_;(function(s){s[s.NO_ACTION=0]="NO_ACTION",s[s.CLOSE_PICKER=1]="CLOSE_PICKER",s[s.REFRESH_PICKER=2]="REFRESH_PICKER",s[s.REMOVE_ITEM=3]="REMOVE_ITEM"})(h_||(h_={}));function WA(s){const e=s;return Array.isArray(e.items)}function GU(s){const e=s;return!!e.picks&&e.additionalPicks instanceof Promise}class pFe extends B{constructor(e,t){super(),this.prefix=e,this.options=t}provide(e,t,i){var c;const n=new G;e.canAcceptInBackground=!!((c=this.options)!=null&&c.canAcceptInBackground),e.matchOnLabel=e.matchOnDescription=e.matchOnDetail=e.sortByLabel=!1;let o;const r=n.add(new gn),a=()=>I(this,null,function*(){var _;const d=r.value=new G;o==null||o.dispose(!0),e.busy=!1,o=new Ci(t);const u=o.token;let h=e.value.substring(this.prefix.length);(_=this.options)!=null&&_.shouldSkipTrimPickFilter||(h=h.trim());const g=this._getPicks(h,d,u,i),f=(b,v)=>{var y;let w,C;if(WA(b)?(w=b.items,C=b.active):w=b,w.length===0){if(v)return!1;(h.length>0||e.hideInput)&&((y=this.options)!=null&&y.noResultsPick)&&(l1(this.options.noResultsPick)?w=[this.options.noResultsPick(h)]:w=[this.options.noResultsPick])}return e.items=w,C&&(e.activeItems=[C]),!0},m=b=>I(this,null,function*(){let v=!1,w=!1;yield Promise.all([I(this,null,function*(){typeof b.mergeDelay=="number"&&(yield Bd(b.mergeDelay),u.isCancellationRequested)||w||(v=f(b.picks,!0))}),I(this,null,function*(){e.busy=!0;try{const C=yield b.additionalPicks;if(u.isCancellationRequested)return;let y,S;WA(b.picks)?(y=b.picks.items,S=b.picks.active):y=b.picks;let k,E;if(WA(C)?(k=C.items,E=C.active):k=C,k.length>0||!v){let N;if(!S&&!E){const W=e.activeItems[0];W&&y.indexOf(W)!==-1&&(N=W)}f({items:[...y,...k],active:S||E||N})}}finally{u.isCancellationRequested||(e.busy=!1),w=!0}})])});if(g!==null)if(GU(g))yield m(g);else if(!(g instanceof Promise))f(g);else{e.busy=!0;try{const b=yield g;if(u.isCancellationRequested)return;GU(b)?yield m(b):f(b)}finally{u.isCancellationRequested||(e.busy=!1)}}});n.add(e.onDidChangeValue(()=>a())),a(),n.add(e.onDidAccept(d=>{var h;if(i!=null&&i.handleAccept){d.inBackground||e.hide(),(h=i.handleAccept)==null||h.call(i,e.activeItems[0]);return}const[u]=e.selectedItems;typeof(u==null?void 0:u.accept)=="function"&&(d.inBackground||e.hide(),u.accept(e.keyMods,d))}));const l=(d,u)=>I(this,null,function*(){var g,f;if(typeof u.trigger!="function")return;const h=(f=(g=u.buttons)==null?void 0:g.indexOf(d))!=null?f:-1;if(h>=0){const m=u.trigger(h,e.keyMods),_=typeof m=="number"?m:yield m;if(t.isCancellationRequested)return;switch(_){case h_.NO_ACTION:break;case h_.CLOSE_PICKER:e.hide();break;case h_.REFRESH_PICKER:a();break;case h_.REMOVE_ITEM:{const b=e.items.indexOf(u);if(b!==-1){const v=e.items.slice(),w=v.splice(b,1),C=e.activeItems.filter(S=>S!==w[0]),y=e.keepScrollPosition;e.keepScrollPosition=!0,e.items=v,C&&(e.activeItems=C),e.keepScrollPosition=y}break}}}});return n.add(e.onDidTriggerItemButton(({button:d,item:u})=>l(d,u))),n.add(e.onDidTriggerSeparatorButton(({button:d,separator:u})=>l(d,u))),n}}var Mie=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Tu=function(s,e){return function(t,i){e(t,i,s)}},xg,Ji,dc;let c3=(dc=class extends pFe{constructor(e,t,i,n,o,r){super(xg.PREFIX,e),this.instantiationService=t,this.keybindingService=i,this.commandService=n,this.telemetryService=o,this.dialogService=r,this.commandsHistory=this._register(this.instantiationService.createInstance(d3)),this.options=e}_getPicks(e,t,i,n){return I(this,null,function*(){var g,f,m,_;const o=yield this.getCommandPicks(i);if(i.isCancellationRequested)return[];const r=bh(()=>{const b=new PC;b.updateDocuments(o.map(w=>({key:w.commandId,textChunks:[this.getTfIdfChunk(w)]})));const v=b.calculateScores(e,i);return fFe(v).filter(w=>w.score>xg.TFIDF_THRESHOLD).slice(0,xg.TFIDF_MAX_RESULTS)}),a=[];for(const b of o){const v=(g=xg.WORD_FILTER(e,b.label))!=null?g:void 0,w=b.commandAlias&&(f=xg.WORD_FILTER(e,b.commandAlias))!=null?f:void 0;if(v||w)b.highlights={label:v,detail:this.options.showAlias?w:void 0},a.push(b);else if(e===b.commandId)a.push(b);else if(e.length>=3){const C=r();if(i.isCancellationRequested)return[];const y=C.find(S=>S.key===b.commandId);y&&(b.tfIdfScore=y.score,a.push(b))}}const l=new Map;for(const b of a){const v=l.get(b.label);v?(b.description=b.commandId,v.description=v.commandId):l.set(b.label,b)}a.sort((b,v)=>{if(b.tfIdfScore&&v.tfIdfScore)return b.tfIdfScore===v.tfIdfScore?b.label.localeCompare(v.label):v.tfIdfScore-b.tfIdfScore;if(b.tfIdfScore)return 1;if(v.tfIdfScore)return-1;const w=this.commandsHistory.peek(b.commandId),C=this.commandsHistory.peek(v.commandId);if(w&&C)return w>C?-1:1;if(w)return-1;if(C)return 1;if(this.options.suggestedCommandIds){const y=this.options.suggestedCommandIds.has(b.commandId),S=this.options.suggestedCommandIds.has(v.commandId);if(y&&S)return 0;if(y)return-1;if(S)return 1}return b.label.localeCompare(v.label)});const c=[];let d=!1,u=!0,h=!!this.options.suggestedCommandIds;for(let b=0;b<a.length;b++){const v=a[b];b===0&&this.commandsHistory.peek(v.commandId)&&(c.push({type:"separator",label:p("recentlyUsed","recently used")}),d=!0),u&&v.tfIdfScore!==void 0&&(c.push({type:"separator",label:p("suggested","similar commands")}),u=!1),h&&v.tfIdfScore===void 0&&!this.commandsHistory.peek(v.commandId)&&((m=this.options.suggestedCommandIds)!=null&&m.has(v.commandId))&&(c.push({type:"separator",label:p("commonlyUsed","commonly used")}),d=!0,h=!1),d&&v.tfIdfScore===void 0&&!this.commandsHistory.peek(v.commandId)&&!((_=this.options.suggestedCommandIds)!=null&&_.has(v.commandId))&&(c.push({type:"separator",label:p("morecCommands","other commands")}),d=!1),c.push(this.toCommandPick(v,n))}return this.hasAdditionalCommandPicks(e,i)?{picks:c,additionalPicks:I(this,null,function*(){var w;const b=yield this.getAdditionalCommandPicks(o,a,e,i);if(i.isCancellationRequested)return[];const v=b.map(C=>this.toCommandPick(C,n));return u&&((w=v[0])==null?void 0:w.type)!=="separator"&&v.unshift({type:"separator",label:p("suggested","similar commands")}),v})}:c})}toCommandPick(e,t){if(e.type==="separator")return e;const i=this.keybindingService.lookupKeybinding(e.commandId),n=i?p("commandPickAriaLabelWithKeybinding","{0}, {1}",e.label,i.getAriaLabel()):e.label;return ue($({},e),{ariaLabel:n,detail:this.options.showAlias&&e.commandAlias!==e.label?e.commandAlias:void 0,keybinding:i,accept:()=>I(this,null,function*(){var o,r;this.commandsHistory.push(e.commandId),this.telemetryService.publicLog2("workbenchActionExecuted",{id:e.commandId,from:(o=t==null?void 0:t.from)!=null?o:"quick open"});try{(r=e.args)!=null&&r.length?yield this.commandService.executeCommand(e.commandId,...e.args):yield this.commandService.executeCommand(e.commandId)}catch(a){Jr(a)||this.dialogService.error(p("canNotRun","Command '{0}' resulted in an error",e.label),KL(a))}})})}getTfIdfChunk({label:e,commandAlias:t,commandDescription:i}){let n=e;return t&&t!==e&&(n+=` - ${t}`),i&&i.value!==e&&(n+=` - ${i.value===i.original?i.value:`${i.value} (${i.original})`}`),n}},xg=dc,dc.PREFIX=">",dc.TFIDF_THRESHOLD=.5,dc.TFIDF_MAX_RESULTS=5,dc.WORD_FILTER=g8(A1,Dge,VY),dc);c3=xg=Mie([Tu(1,Le),Tu(2,It),Tu(3,Gt),Tu(4,ls),Tu(5,iS)],c3);var ol;let d3=(ol=class extends B{constructor(e,t,i){super(),this.storageService=e,this.configurationService=t,this.logService=i,this.configuredCommandsHistoryLength=0,this.updateConfiguration(),this.load(),this.registerListeners()}registerListeners(){this._register(this.configurationService.onDidChangeConfiguration(e=>this.updateConfiguration(e))),this._register(this.storageService.onWillSaveState(e=>{e.reason===V1.SHUTDOWN&&this.saveState()}))}updateConfiguration(e){e&&!e.affectsConfiguration("workbench.commandPalette.history")||(this.configuredCommandsHistoryLength=Ji.getConfiguredCommandHistoryLength(this.configurationService),Ji.cache&&Ji.cache.limit!==this.configuredCommandsHistoryLength&&(Ji.cache.limit=this.configuredCommandsHistoryLength,Ji.hasChanges=!0))}load(){const e=this.storageService.get(Ji.PREF_KEY_CACHE,0);let t;if(e)try{t=JSON.parse(e)}catch(n){this.logService.error(`[CommandsHistory] invalid data: ${n}`)}const i=Ji.cache=new Tc(this.configuredCommandsHistoryLength,1);if(t){let n;t.usesLRU?n=t.entries:n=t.entries.sort((o,r)=>o.value-r.value),n.forEach(o=>i.set(o.key,o.value))}Ji.counter=this.storageService.getNumber(Ji.PREF_KEY_COUNTER,0,Ji.counter)}push(e){Ji.cache&&(Ji.cache.set(e,Ji.counter++),Ji.hasChanges=!0)}peek(e){var t;return(t=Ji.cache)==null?void 0:t.peek(e)}saveState(){if(!Ji.cache||!Ji.hasChanges)return;const e={usesLRU:!0,entries:[]};Ji.cache.forEach((t,i)=>e.entries.push({key:i,value:t})),this.storageService.store(Ji.PREF_KEY_CACHE,JSON.stringify(e),0,0),this.storageService.store(Ji.PREF_KEY_COUNTER,Ji.counter,0,0),Ji.hasChanges=!1}static getConfiguredCommandHistoryLength(e){var n,o;const i=(o=(n=e.getValue().workbench)==null?void 0:n.commandPalette)==null?void 0:o.history;return typeof i=="number"?i:Ji.DEFAULT_COMMANDS_HISTORY_LENGTH}},Ji=ol,ol.DEFAULT_COMMANDS_HISTORY_LENGTH=50,ol.PREF_KEY_CACHE="commandPalette.mru.cache",ol.PREF_KEY_COUNTER="commandPalette.mru.counter",ol.counter=1,ol.hasChanges=!1,ol);d3=Ji=Mie([Tu(0,Na),Tu(1,et),Tu(2,Jn)],d3);class mFe extends c3{constructor(e,t,i,n,o,r){super(e,t,i,n,o,r)}getCodeEditorCommandPicks(){var i;const e=this.activeTextEditorControl;if(!e)return[];const t=[];for(const n of e.getSupportedActions()){let o;(i=n.metadata)!=null&&i.description&&(Eme(n.metadata.description)?o=n.metadata.description:o={original:n.metadata.description,value:n.metadata.description}),t.push({commandId:n.id,commandAlias:n.alias,commandDescription:o,label:v8(n.label)||n.id})}return t}}var _Fe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Tm=function(s,e){return function(t,i){e(t,i,s)}};let Hy=class extends mFe{get activeTextEditorControl(){var e;return(e=this.codeEditorService.getFocusedCodeEditor())!=null?e:void 0}constructor(e,t,i,n,o,r){super({showAlias:!1},e,i,n,o,r),this.codeEditorService=t}getCommandPicks(){return I(this,null,function*(){return this.getCodeEditorCommandPicks()})}hasAdditionalCommandPicks(){return!1}getAdditionalCommandPicks(){return I(this,null,function*(){return[]})}};Hy=_Fe([Tm(0,Le),Tm(1,yt),Tm(2,It),Tm(3,Gt),Tm(4,ls),Tm(5,iS)],Hy);const HD=class HD extends me{constructor(){super({id:HD.ID,label:Pk.quickCommandActionLabel,alias:"Command Palette",precondition:void 0,kbOpts:{kbExpr:D.focus,primary:59,weight:100},contextMenuOpts:{group:"z_commands",order:1}})}run(e){e.get(ta).quickAccess.show(Hy.PREFIX)}};HD.ID="editor.action.quickCommand";let VE=HD;ee(VE);yi.as(qp.Quickaccess).registerQuickAccessProvider({ctor:Hy,prefix:Hy.PREFIX,helpEntries:[{description:Pk.quickCommandHelp,commandId:VE.ID}]});var bFe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Nm=function(s,e){return function(t,i){e(t,i,s)}};let u3=class extends Ap{constructor(e,t,i,n,o,r,a){super(!0,e,t,i,n,o,r,a)}};u3=bFe([Nm(1,Pe),Nm(2,yt),Nm(3,$i),Nm(4,Le),Nm(5,Na),Nm(6,et)],u3);pt(Ap.ID,u3,4);class vFe extends me{constructor(){super({id:"editor.action.toggleHighContrast",label:g2.toggleHighContrast,alias:"Toggle High Contrast Theme",precondition:void 0}),this._originalThemeName=null}run(e,t){const i=e.get(Dr),n=i.getColorTheme();hl(n.type)?(i.setTheme(this._originalThemeName||(yb(n.type)?K_:hd)),this._originalThemeName=null):(i.setTheme(yb(n.type)?af:lf),this._originalThemeName=n.themeName)}}ee(vFe);/*!-----------------------------------------------------------------------------
750
+ `)};const r=yield o.provideRenameEdits(this.model,this.position,e,n);if(r){if(r.rejectReason)return this._provideRenameEdits(e,t+1,i.concat(r.rejectReason),n)}else return this._provideRenameEdits(e,t+1,i.concat(p("no result","No result.")),n);return r})}}function w2e(s,e,t,i){return I(this,null,function*(){const n=new W9(e,t,s),o=yield n.resolveRenameLocation(Ze.None);return o!=null&&o.rejectReason?{edits:[],rejectReason:o.rejectReason}:n.provideRenameEdits(i,Ze.None)})}var np;let Oh=(np=class{static get(e){return e.getContribution(A5.ID)}constructor(e,t,i,n,o,r,a,l,c){this.editor=e,this._instaService=t,this._notificationService=i,this._bulkEditService=n,this._progressService=o,this._logService=r,this._configService=a,this._languageFeaturesService=l,this._telemetryService=c,this._disposableStore=new G,this._cts=new Ci,this._renameWidget=this._disposableStore.add(this._instaService.createInstance(R5,this.editor,["acceptRenameInput","acceptRenameInputWithPreview"]))}dispose(){this._disposableStore.dispose(),this._cts.dispose(!0)}run(){return I(this,null,function*(){var f,m;const e=this._logService.trace.bind(this._logService,"[rename]");if(this._cts.dispose(!0),this._cts=new Ci,!this.editor.hasModel()){e("editor has no model");return}const t=this.editor.getPosition(),i=new W9(this.editor.getModel(),t,this._languageFeaturesService.renameProvider);if(!i.hasProvider()){e("skeleton has no provider");return}const n=new Rh(this.editor,5,void 0,this._cts.token);let o;try{e("resolving rename location");const _=i.resolveRenameLocation(n.token);this._progressService.showWhile(_,250),o=yield _,e("resolved rename location")}catch(_){_ instanceof ya?e("resolve rename location cancelled",JSON.stringify(_,null," ")):(e("resolve rename location failed",_ instanceof Error?_:JSON.stringify(_,null," ")),(typeof _=="string"||pl(_))&&((f=Wo.get(this.editor))==null||f.showMessage(_||p("resolveRenameLocationFailed","An unknown error occurred while resolving rename location"),t)));return}finally{n.dispose()}if(!o){e("returning early - no loc");return}if(o.rejectReason){e(`returning early - rejected with reason: ${o.rejectReason}`,o.rejectReason),(m=Wo.get(this.editor))==null||m.showMessage(o.rejectReason,t);return}if(n.token.isCancellationRequested){e("returning early - cts1 cancelled");return}const r=new Rh(this.editor,5,o.range,this._cts.token),a=this.editor.getModel(),l=this._languageFeaturesService.newSymbolNamesProvider.all(a),c=yield Promise.all(l.map(_=>I(this,null,function*(){var b;return[_,(b=yield _.supportsAutomaticNewSymbolNamesTriggerKind)!=null?b:!1]}))),d=(_,b)=>{let v=c.slice();return _===f1.Automatic&&(v=v.filter(([w,C])=>C)),v.map(([w])=>w.provideNewSymbolNames(a,o.range,_,b))};e("creating rename input field and awaiting its result");const u=this._bulkEditService.hasPreviewHandler()&&this._configService.getValue(this.editor.getModel().uri,"editor.rename.enablePreview"),h=yield this._renameWidget.getInput(o.range,o.text,u,l.length>0?d:void 0,r);if(e("received response from rename input field"),l.length>0&&this._reportTelemetry(l.length,a.getLanguageId(),h),typeof h=="boolean"){e(`returning early - rename input field response - ${h}`),h&&this.editor.focus(),r.dispose();return}this.editor.focus(),e("requesting rename edits");const g=Jy(i.provideRenameEdits(h.newName,r.token),r.token).then(_=>I(this,null,function*(){if(!_){e("returning early - no rename edits result");return}if(!this.editor.hasModel()){e("returning early - no model after rename edits are provided");return}if(_.rejectReason){e(`returning early - rejected with reason: ${_.rejectReason}`),this._notificationService.info(_.rejectReason);return}this.editor.setSelection(L.fromPositions(this.editor.getSelection().getPosition())),e("applying edits"),this._bulkEditService.apply(_,{editor:this.editor,showPreview:h.wantsPreview,label:p("label","Renaming '{0}' to '{1}'",o==null?void 0:o.text,h.newName),code:"undoredo.rename",quotableLabel:p("quotableLabel","Renaming {0} to {1}",o==null?void 0:o.text,h.newName),respectAutoSaveConfig:!0}).then(b=>{e("edits applied"),b.ariaSummary&&$s(p("aria","Successfully renamed '{0}' to '{1}'. Summary: {2}",o.text,h.newName,b.ariaSummary))}).catch(b=>{e(`error when applying edits ${JSON.stringify(b,null," ")}`),this._notificationService.error(p("rename.failedApply","Rename failed to apply edits")),this._logService.error(b)})}),_=>{e("error when providing rename edits",JSON.stringify(_,null," ")),this._notificationService.error(p("rename.failed","Rename failed to compute edits")),this._logService.error(_)}).finally(()=>{r.dispose()});return e("returning rename operation"),this._progressService.showWhile(g,250),g})}acceptRenameInput(e){this._renameWidget.acceptInput(e)}cancelRenameInput(){this._renameWidget.cancelInput(!0,"cancelRenameInput command")}focusNextRenameSuggestion(){this._renameWidget.focusNextRenameSuggestion()}focusPreviousRenameSuggestion(){this._renameWidget.focusPreviousRenameSuggestion()}_reportTelemetry(e,t,i){const n=typeof i=="boolean"?{kind:"cancelled",languageId:t,nRenameSuggestionProviders:e}:{kind:"accepted",languageId:t,nRenameSuggestionProviders:e,source:i.stats.source.k,nRenameSuggestions:i.stats.nRenameSuggestions,timeBeforeFirstInputFieldEdit:i.stats.timeBeforeFirstInputFieldEdit,wantsPreview:i.wantsPreview,nRenameSuggestionsInvocations:i.stats.nRenameSuggestionsInvocations,hadAutomaticRenameSuggestionsInvocation:i.stats.hadAutomaticRenameSuggestionsInvocation};this._telemetryService.publicLog2("renameInvokedEvent",n)}},A5=np,np.ID="editor.contrib.renameController",np);Oh=A5=v2e([du(1,Le),du(2,$i),du(3,aS),du(4,Hh),du(5,Jn),du(6,gT),du(7,_e),du(8,ls)],Oh);class C2e extends me{constructor(){super({id:"editor.action.rename",label:p("rename.label","Rename Symbol"),alias:"Rename Symbol",precondition:Z.and(D.writable,D.hasRenameProvider),kbOpts:{kbExpr:D.editorTextFocus,primary:60,weight:100},contextMenuOpts:{group:"1_modification",order:1.1}})}runCommand(e,t){const i=e.get(yt),[n,o]=Array.isArray(t)&&t||[void 0,void 0];return Ie.isUri(n)&&P.isIPosition(o)?i.openCodeEditor({resource:n},i.getActiveCodeEditor()).then(r=>{r&&(r.setPosition(o),r.invokeWithinContext(a=>(this.reportTelemetry(a,r),this.run(a,r))))},ze):super.runCommand(e,t)}run(e,t){const i=e.get(Jn),n=Oh.get(t);return n?(i.trace("[RenameAction] got controller, running..."),n.run()):(i.trace("[RenameAction] returning early - controller missing"),Promise.resolve())}}pt(Oh.ID,Oh,4);ee(C2e);const H9=sn.bindToContribution(Oh.get);ge(new H9({id:"acceptRenameInput",precondition:zv,handler:s=>s.acceptRenameInput(!1),kbOpts:{weight:199,kbExpr:Z.and(D.focus,Z.not("isComposing")),primary:3}}));ge(new H9({id:"acceptRenameInputWithPreview",precondition:Z.and(zv,Z.has("config.editor.rename.enablePreview")),handler:s=>s.acceptRenameInput(!0),kbOpts:{weight:199,kbExpr:Z.and(D.focus,Z.not("isComposing")),primary:2051}}));ge(new H9({id:"cancelRenameInput",precondition:zv,handler:s=>s.cancelRenameInput(),kbOpts:{weight:199,kbExpr:D.focus,primary:9,secondary:[1033]}}));jt(class extends Us{constructor(){super({id:"focusNextRenameSuggestion",title:$({},Be("focusNextRenameSuggestion","Focus Next Rename Suggestion")),precondition:zv,keybinding:[{primary:18,weight:199}]})}run(e){const t=e.get(yt).getFocusedCodeEditor();if(!t)return;const i=Oh.get(t);i&&i.focusNextRenameSuggestion()}});jt(class extends Us{constructor(){super({id:"focusPreviousRenameSuggestion",title:$({},Be("focusPreviousRenameSuggestion","Focus Previous Rename Suggestion")),precondition:zv,keybinding:[{primary:16,weight:199}]})}run(e){const t=e.get(yt).getFocusedCodeEditor();if(!t)return;const i=Oh.get(t);i&&i.focusPreviousRenameSuggestion()}});fo("_executeDocumentRenameProvider",function(s,e,t,...i){const[n]=i;Ct(typeof n=="string");const{renameProvider:o}=s.get(_e);return w2e(o,e,t,n)});fo("_executePrepareRename",function(s,e,t){return I(this,null,function*(){const{renameProvider:i}=s.get(_e),o=yield new W9(e,t,i).resolveRenameLocation(Ze.None);if(o!=null&&o.rejectReason)throw new Error(o.rejectReason);return o})});yi.as(Ta.Configuration).registerConfiguration({id:"editor",properties:{"editor.rename.enablePreview":{scope:5,description:p("enablePreview","Enable/disable the ability to preview changes before renaming"),default:!0,type:"boolean"}}});var y2e=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},AU=function(s,e){return function(t,i){e(t,i,s)}},hb;let RE=(hb=class extends B{constructor(e,t,i){super(),this.editor=e,this.languageConfigurationService=t,this.editorWorkerService=i,this.decorations=this.editor.createDecorationsCollection(),this.options=this.createOptions(e.getOption(73)),this.computePromise=null,this.currentOccurrences={},this._register(e.onDidChangeModel(n=>{this.currentOccurrences={},this.options=this.createOptions(e.getOption(73)),this.stop(),this.computeSectionHeaders.schedule(0)})),this._register(e.onDidChangeModelLanguage(n=>{this.currentOccurrences={},this.options=this.createOptions(e.getOption(73)),this.stop(),this.computeSectionHeaders.schedule(0)})),this._register(t.onDidChange(n=>{var r;const o=(r=this.editor.getModel())==null?void 0:r.getLanguageId();o&&n.affects(o)&&(this.currentOccurrences={},this.options=this.createOptions(e.getOption(73)),this.stop(),this.computeSectionHeaders.schedule(0))})),this._register(e.onDidChangeConfiguration(n=>{this.options&&!n.hasChanged(73)||(this.options=this.createOptions(e.getOption(73)),this.updateDecorations([]),this.stop(),this.computeSectionHeaders.schedule(0))})),this._register(this.editor.onDidChangeModelContent(n=>{this.computeSectionHeaders.schedule()})),this._register(e.onDidChangeModelTokens(n=>{this.computeSectionHeaders.isScheduled()||this.computeSectionHeaders.schedule(1e3)})),this.computeSectionHeaders=this._register(new Ft(()=>{this.findSectionHeaders()},250)),this.computeSectionHeaders.schedule(0)}createOptions(e){if(!e||!this.editor.hasModel())return;const t=this.editor.getModel().getLanguageId();if(!t)return;const i=this.languageConfigurationService.getLanguageConfiguration(t).comments,n=this.languageConfigurationService.getLanguageConfiguration(t).foldingRules;if(!(!i&&!(n!=null&&n.markers)))return{foldingRules:n,findMarkSectionHeaders:e.showMarkSectionHeaders,findRegionSectionHeaders:e.showRegionSectionHeaders}}findSectionHeaders(){var i,n;if(!this.editor.hasModel()||!((i=this.options)!=null&&i.findMarkSectionHeaders)&&!((n=this.options)!=null&&n.findRegionSectionHeaders))return;const e=this.editor.getModel();if(e.isDisposed()||e.isTooLargeForSyncing())return;const t=e.getVersionId();this.editorWorkerService.findSectionHeaders(e.uri,this.options).then(o=>{e.isDisposed()||e.getVersionId()!==t||this.updateDecorations(o)})}updateDecorations(e){const t=this.editor.getModel();t&&(e=e.filter(o=>{if(!o.shouldBeInComments)return!0;const r=t.validateRange(o.range),a=t.tokenization.getLineTokens(r.startLineNumber),l=a.findTokenIndexAtOffset(r.startColumn-1),c=a.getStandardTokenType(l);return a.getLanguageId(l)===t.getLanguageId()&&c===1}));const i=Object.values(this.currentOccurrences).map(o=>o.decorationId),n=e.map(o=>S2e(o));this.editor.changeDecorations(o=>{const r=o.deltaDecorations(i,n);this.currentOccurrences={};for(let a=0,l=r.length;a<l;a++){const c={sectionHeader:e[a],decorationId:r[a]};this.currentOccurrences[c.decorationId]=c}})}stop(){this.computeSectionHeaders.cancel(),this.computePromise&&(this.computePromise.cancel(),this.computePromise=null)}dispose(){super.dispose(),this.stop(),this.decorations.clear()}},hb.ID="editor.sectionHeaderDetector",hb);RE=y2e([AU(1,Si),AU(2,mo)],RE);function S2e(s){return{range:s.range,options:je.createDynamic({description:"section-header",stickiness:3,collapseOnReplaceEdit:!0,minimap:{color:void 0,position:1,sectionHeaderStyle:s.hasSeparatorLine?2:1,sectionHeaderText:s.text}})}}pt(RE.ID,RE,1);function x2e(s){for(let e=0,t=s.length;e<t;e+=4){const i=s[e+0],n=s[e+1],o=s[e+2],r=s[e+3];s[e+0]=r,s[e+1]=o,s[e+2]=n,s[e+3]=i}}function k2e(s){const e=new Uint8Array(s.buffer,s.byteOffset,s.length*4);return _G()||x2e(e),dT.wrap(e)}function rie(s){const e=new Uint32Array(L2e(s));let t=0;if(e[t++]=s.id,s.type==="full")e[t++]=1,e[t++]=s.data.length,e.set(s.data,t),t+=s.data.length;else{e[t++]=2,e[t++]=s.deltas.length;for(const i of s.deltas)e[t++]=i.start,e[t++]=i.deleteCount,i.data?(e[t++]=i.data.length,e.set(i.data,t),t+=i.data.length):e[t++]=0}return k2e(e)}function L2e(s){let e=0;if(e+=2,s.type==="full")e+=1+s.data.length;else{e+=1,e+=3*s.deltas.length;for(const t of s.deltas)t.data&&(e+=t.data.length)}return e}function yN(s){return s&&!!s.data}function aie(s){return s&&Array.isArray(s.edits)}class E2e{constructor(e,t,i){this.provider=e,this.tokens=t,this.error=i}}function lie(s,e){return s.has(e)}function I2e(s,e){const t=s.orderedGroups(e);return t.length>0?t[0]:[]}function cie(s,e,t,i,n){return I(this,null,function*(){const o=I2e(s,e),r=yield Promise.all(o.map(a=>I(null,null,function*(){let l,c=null;try{l=yield a.provideDocumentSemanticTokens(e,a===t?i:null,n)}catch(d){c=d,l=null}return(!l||!yN(l)&&!aie(l))&&(l=null),new E2e(a,l,c)})));for(const a of r){if(a.error)throw a.error;if(a.tokens)return a}return r.length>0?r[0]:null})}function D2e(s,e){const t=s.orderedGroups(e);return t.length>0?t[0]:null}class T2e{constructor(e,t){this.provider=e,this.tokens=t}}function N2e(s,e){return s.has(e)}function die(s,e){const t=s.orderedGroups(e);return t.length>0?t[0]:[]}function V9(s,e,t,i){return I(this,null,function*(){const n=die(s,e),o=yield Promise.all(n.map(r=>I(null,null,function*(){let a;try{a=yield r.provideDocumentRangeSemanticTokens(e,t,i)}catch(l){Pi(l),a=null}return(!a||!yN(a))&&(a=null),new T2e(r,a)})));for(const r of o)if(r.tokens)return r;return o.length>0?o[0]:null})}ht.registerCommand("_provideDocumentSemanticTokensLegend",(s,...e)=>I(null,null,function*(){const[t]=e;Ct(t instanceof Ie);const i=s.get(ti).getModel(t);if(!i)return;const{documentSemanticTokensProvider:n}=s.get(_e),o=D2e(n,i);return o?o[0].getLegend():s.get(Gt).executeCommand("_provideDocumentRangeSemanticTokensLegend",t)}));ht.registerCommand("_provideDocumentSemanticTokens",(s,...e)=>I(null,null,function*(){const[t]=e;Ct(t instanceof Ie);const i=s.get(ti).getModel(t);if(!i)return;const{documentSemanticTokensProvider:n}=s.get(_e);if(!lie(n,i))return s.get(Gt).executeCommand("_provideDocumentRangeSemanticTokens",t,i.getFullModelRange());const o=yield cie(n,i,null,null,Ze.None);if(!o)return;const{provider:r,tokens:a}=o;if(!a||!yN(a))return;const l=rie({id:0,type:"full",data:a.data});return a.resultId&&r.releaseDocumentSemanticTokens(a.resultId),l}));ht.registerCommand("_provideDocumentRangeSemanticTokensLegend",(s,...e)=>I(null,null,function*(){const[t,i]=e;Ct(t instanceof Ie);const n=s.get(ti).getModel(t);if(!n)return;const{documentRangeSemanticTokensProvider:o}=s.get(_e),r=die(o,n);if(r.length===0)return;if(r.length===1)return r[0].getLegend();if(!i||!L.isIRange(i))return console.warn("provideDocumentRangeSemanticTokensLegend might be out-of-sync with provideDocumentRangeSemanticTokens unless a range argument is passed in"),r[0].getLegend();const a=yield V9(o,n,L.lift(i),Ze.None);if(a)return a.provider.getLegend()}));ht.registerCommand("_provideDocumentRangeSemanticTokens",(s,...e)=>I(null,null,function*(){const[t,i]=e;Ct(t instanceof Ie),Ct(L.isIRange(i));const n=s.get(ti).getModel(t);if(!n)return;const{documentRangeSemanticTokensProvider:o}=s.get(_e),r=yield V9(o,n,L.lift(i),Ze.None);if(!(!r||!r.tokens))return rie({id:0,type:"full",data:r.tokens.data})}));const $9="editor.semanticHighlighting";function Fx(s,e,t){var n;const i=(n=t.getValue($9,{overrideIdentifier:s.getLanguageId(),resource:s.uri}))==null?void 0:n.enabled;return typeof i=="boolean"?i:e.getColorTheme().semanticHighlighting}var uie=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},nc=function(s,e){return function(t,i){e(t,i,s)}},fu;let M5=class extends B{constructor(e,t,i,n,o,r){super(),this._watchers=Object.create(null);const a=d=>{this._watchers[d.uri.toString()]=new P5(d,e,i,o,r)},l=(d,u)=>{u.dispose(),delete this._watchers[d.uri.toString()]},c=()=>{for(const d of t.getModels()){const u=this._watchers[d.uri.toString()];Fx(d,i,n)?u||a(d):u&&l(d,u)}};t.getModels().forEach(d=>{Fx(d,i,n)&&a(d)}),this._register(t.onModelAdded(d=>{Fx(d,i,n)&&a(d)})),this._register(t.onModelRemoved(d=>{const u=this._watchers[d.uri.toString()];u&&l(d,u)})),this._register(n.onDidChangeConfiguration(d=>{d.affectsConfiguration($9)&&c()})),this._register(i.onDidColorThemeChange(c))}dispose(){for(const e of Object.values(this._watchers))e.dispose();super.dispose()}};M5=uie([nc(0,pT),nc(1,ti),nc(2,on),nc(3,et),nc(4,Lr),nc(5,_e)],M5);var fh;let P5=(fh=class extends B{constructor(e,t,i,n,o){super(),this._semanticTokensStylingService=t,this._isDisposed=!1,this._model=e,this._provider=o.documentSemanticTokensProvider,this._debounceInformation=n.for(this._provider,"DocumentSemanticTokens",{min:fu.REQUEST_MIN_DELAY,max:fu.REQUEST_MAX_DELAY}),this._fetchDocumentSemanticTokens=this._register(new Ft(()=>this._fetchDocumentSemanticTokensNow(),fu.REQUEST_MIN_DELAY)),this._currentDocumentResponse=null,this._currentDocumentRequestCancellationTokenSource=null,this._documentProvidersChangeListeners=[],this._providersChangedDuringRequest=!1,this._register(this._model.onDidChangeContent(()=>{this._fetchDocumentSemanticTokens.isScheduled()||this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))})),this._register(this._model.onDidChangeAttached(()=>{this._fetchDocumentSemanticTokens.isScheduled()||this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))})),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 r=()=>{Ht(this._documentProvidersChangeListeners),this._documentProvidersChangeListeners=[];for(const a of this._provider.all(e))typeof a.onDidChange=="function"&&this._documentProvidersChangeListeners.push(a.onDidChange(()=>{if(this._currentDocumentRequestCancellationTokenSource){this._providersChangedDuringRequest=!0;return}this._fetchDocumentSemanticTokens.schedule(0)}))};r(),this._register(this._provider.onDidChange(()=>{r(),this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))})),this._register(i.onDidColorThemeChange(a=>{this._setDocumentSemanticTokens(null,null,null,[]),this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))})),this._fetchDocumentSemanticTokens.schedule(0)}dispose(){this._currentDocumentResponse&&(this._currentDocumentResponse.dispose(),this._currentDocumentResponse=null),this._currentDocumentRequestCancellationTokenSource&&(this._currentDocumentRequestCancellationTokenSource.cancel(),this._currentDocumentRequestCancellationTokenSource=null),Ht(this._documentProvidersChangeListeners),this._documentProvidersChangeListeners=[],this._setDocumentSemanticTokens(null,null,null,[]),this._isDisposed=!0,super.dispose()}_fetchDocumentSemanticTokensNow(){if(this._currentDocumentRequestCancellationTokenSource)return;if(!lie(this._provider,this._model)){this._currentDocumentResponse&&this._model.tokenization.setSemanticTokens(null,!1);return}if(!this._model.isAttachedToEditor())return;const e=new Ci,t=this._currentDocumentResponse?this._currentDocumentResponse.provider:null,i=this._currentDocumentResponse&&this._currentDocumentResponse.resultId||null,n=cie(this._provider,this._model,t,i,e.token);this._currentDocumentRequestCancellationTokenSource=e,this._providersChangedDuringRequest=!1;const o=[],r=this._model.onDidChangeContent(l=>{o.push(l)}),a=new Cn(!1);n.then(l=>{if(this._debounceInformation.update(this._model,a.elapsed()),this._currentDocumentRequestCancellationTokenSource=null,r.dispose(),!l)this._setDocumentSemanticTokens(null,null,null,o);else{const{provider:c,tokens:d}=l,u=this._semanticTokensStylingService.getStyling(c);this._setDocumentSemanticTokens(c,d||null,u,o)}},l=>{l&&(Jr(l)||typeof l.message=="string"&&l.message.indexOf("busy")!==-1)||ze(l),this._currentDocumentRequestCancellationTokenSource=null,r.dispose(),(o.length>0||this._providersChangedDuringRequest)&&(this._fetchDocumentSemanticTokens.isScheduled()||this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model)))})}static _copy(e,t,i,n,o){o=Math.min(o,i.length-n,e.length-t);for(let r=0;r<o;r++)i[n+r]=e[t+r]}_setDocumentSemanticTokens(e,t,i,n){const o=this._currentDocumentResponse,r=()=>{(n.length>0||this._providersChangedDuringRequest)&&!this._fetchDocumentSemanticTokens.isScheduled()&&this._fetchDocumentSemanticTokens.schedule(this._debounceInformation.get(this._model))};if(this._currentDocumentResponse&&(this._currentDocumentResponse.dispose(),this._currentDocumentResponse=null),this._isDisposed){e&&t&&e.releaseDocumentSemanticTokens(t.resultId);return}if(!e||!i){this._model.tokenization.setSemanticTokens(null,!1);return}if(!t){this._model.tokenization.setSemanticTokens(null,!0),r();return}if(aie(t)){if(!o){this._model.tokenization.setSemanticTokens(null,!0);return}if(t.edits.length===0)t={resultId:t.resultId,data:o.data};else{let a=0;for(const h of t.edits)a+=(h.data?h.data.length:0)-h.deleteCount;const l=o.data,c=new Uint32Array(l.length+a);let d=l.length,u=c.length;for(let h=t.edits.length-1;h>=0;h--){const g=t.edits[h];if(g.start>l.length){i.warnInvalidEditStart(o.resultId,t.resultId,h,g.start,l.length),this._model.tokenization.setSemanticTokens(null,!0);return}const f=d-(g.start+g.deleteCount);f>0&&(fu._copy(l,d-f,c,u-f,f),u-=f),g.data&&(fu._copy(g.data,0,c,u-g.data.length,g.data.length),u-=g.data.length),d=g.start}d>0&&fu._copy(l,0,c,0,d),t={resultId:t.resultId,data:c}}}if(yN(t)){this._currentDocumentResponse=new R2e(e,t.resultId,t.data);const a=lY(t,i,this._model.getLanguageId());if(n.length>0)for(const l of n)for(const c of a)for(const d of l.changes)c.applyEdit(d.range,d.text);this._model.tokenization.setSemanticTokens(a,!0)}else this._model.tokenization.setSemanticTokens(null,!0);r()}},fu=fh,fh.REQUEST_MIN_DELAY=300,fh.REQUEST_MAX_DELAY=2e3,fh);P5=fu=uie([nc(1,pT),nc(2,on),nc(3,Lr),nc(4,_e)],P5);class R2e{constructor(e,t,i){this.provider=e,this.resultId=t,this.data=i}dispose(){this.provider.releaseDocumentSemanticTokens(this.resultId)}}Pv(M5);var A2e=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Sw=function(s,e){return function(t,i){e(t,i,s)}},gb;let AE=(gb=class extends B{constructor(e,t,i,n,o,r){super(),this._semanticTokensStylingService=t,this._themeService=i,this._configurationService=n,this._editor=e,this._provider=r.documentRangeSemanticTokensProvider,this._debounceInformation=o.for(this._provider,"DocumentRangeSemanticTokens",{min:100,max:500}),this._tokenizeViewport=this._register(new Ft(()=>this._tokenizeViewportNow(),100)),this._outstandingRequests=[];const a=()=>{this._editor.hasModel()&&this._tokenizeViewport.schedule(this._debounceInformation.get(this._editor.getModel()))};this._register(this._editor.onDidScrollChange(()=>{a()})),this._register(this._editor.onDidChangeModel(()=>{this._cancelAll(),a()})),this._register(this._editor.onDidChangeModelContent(l=>{this._cancelAll(),a()})),this._register(this._provider.onDidChange(()=>{this._cancelAll(),a()})),this._register(this._configurationService.onDidChangeConfiguration(l=>{l.affectsConfiguration($9)&&(this._cancelAll(),a())})),this._register(this._themeService.onDidColorThemeChange(()=>{this._cancelAll(),a()})),a()}_cancelAll(){for(const e of this._outstandingRequests)e.cancel();this._outstandingRequests=[]}_removeOutstandingRequest(e){for(let t=0,i=this._outstandingRequests.length;t<i;t++)if(this._outstandingRequests[t]===e){this._outstandingRequests.splice(t,1);return}}_tokenizeViewportNow(){if(!this._editor.hasModel())return;const e=this._editor.getModel();if(e.tokenization.hasCompleteSemanticTokens())return;if(!Fx(e,this._themeService,this._configurationService)){e.tokenization.hasSomeSemanticTokens()&&e.tokenization.setSemanticTokens(null,!1);return}if(!N2e(this._provider,e)){e.tokenization.hasSomeSemanticTokens()&&e.tokenization.setSemanticTokens(null,!1);return}const t=this._editor.getVisibleRangesPlusViewportAboveBelow();this._outstandingRequests=this._outstandingRequests.concat(t.map(i=>this._requestRange(e,i)))}_requestRange(e,t){const i=e.getVersionId(),n=dn(r=>Promise.resolve(V9(this._provider,e,t,r))),o=new Cn(!1);return n.then(r=>{if(this._debounceInformation.update(e,o.elapsed()),!r||!r.tokens||e.isDisposed()||e.getVersionId()!==i)return;const{provider:a,tokens:l}=r,c=this._semanticTokensStylingService.getStyling(a);e.tokenization.setPartialSemanticTokens(t,lY(l,c,e.getLanguageId()))}).then(()=>this._removeOutstandingRequest(n),()=>this._removeOutstandingRequest(n)),n}},gb.ID="editor.contrib.viewportSemanticTokens",gb);AE=A2e([Sw(1,pT),Sw(2,on),Sw(3,et),Sw(4,Lr),Sw(5,_e)],AE);pt(AE.ID,AE,1);class M2e{constructor(e=!0){this.selectSubwords=e}provideSelectionRanges(e,t){const i=[];for(const n of t){const o=[];i.push(o),this.selectSubwords&&this._addInWordRanges(o,e,n),this._addWordRanges(o,e,n),this._addWhitespaceLine(o,e,n),o.push({range:e.getFullModelRange()})}return i}_addInWordRanges(e,t,i){const n=t.getWordAtPosition(i);if(!n)return;const{word:o,startColumn:r}=n,a=i.column-r;let l=a,c=a,d=0;for(;l>=0;l--){const u=o.charCodeAt(l);if(l!==a&&(u===95||u===45))break;if(Ru(u)&&Jl(d))break;d=u}for(l+=1;c<o.length;c++){const u=o.charCodeAt(c);if(Jl(u)&&Ru(d))break;if(u===95||u===45)break;d=u}l<c&&e.push({range:new L(i.lineNumber,r+l,i.lineNumber,r+c)})}_addWordRanges(e,t,i){const n=t.getWordAtPosition(i);n&&e.push({range:new L(i.lineNumber,n.startColumn,i.lineNumber,n.endColumn)})}_addWhitespaceLine(e,t,i){t.getLineLength(i.lineNumber)>0&&t.getLineFirstNonWhitespaceColumn(i.lineNumber)===0&&t.getLineLastNonWhitespaceColumn(i.lineNumber)===0&&e.push({range:new L(i.lineNumber,1,i.lineNumber,t.getLineMaxColumn(i.lineNumber))})}}var P2e=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},O2e=function(s,e){return function(t,i){e(t,i,s)}},O5;class z9{constructor(e,t){this.index=e,this.ranges=t}mov(e){const t=this.index+(e?1:-1);if(t<0||t>=this.ranges.length)return this;const i=new z9(t,this.ranges);return i.ranges[t].equalsRange(this.ranges[this.index])?i.mov(e):i}}var sp;let Ay=(sp=class{static get(e){return e.getContribution(O5.ID)}constructor(e,t){this._editor=e,this._languageFeaturesService=t,this._ignoreSelection=!1}dispose(){var e;(e=this._selectionListener)==null||e.dispose()}run(e){return I(this,null,function*(){if(!this._editor.hasModel())return;const t=this._editor.getSelections(),i=this._editor.getModel();if(this._state||(yield gie(this._languageFeaturesService.selectionRangeProvider,i,t.map(o=>o.getPosition()),this._editor.getOption(114),Ze.None).then(o=>{var r;if(!(!ys(o)||o.length!==t.length)&&!(!this._editor.hasModel()||!gi(this._editor.getSelections(),t,(a,l)=>a.equalsSelection(l)))){for(let a=0;a<o.length;a++)o[a]=o[a].filter(l=>l.containsPosition(t[a].getStartPosition())&&l.containsPosition(t[a].getEndPosition())),o[a].unshift(t[a]);this._state=o.map(a=>new z9(0,a)),(r=this._selectionListener)==null||r.dispose(),this._selectionListener=this._editor.onDidChangeCursorPosition(()=>{var a;this._ignoreSelection||((a=this._selectionListener)==null||a.dispose(),this._state=void 0)})}})),!this._state)return;this._state=this._state.map(o=>o.mov(e));const n=this._state.map(o=>we.fromPositions(o.ranges[o.index].getStartPosition(),o.ranges[o.index].getEndPosition()));this._ignoreSelection=!0;try{this._editor.setSelections(n)}finally{this._ignoreSelection=!1}})}},O5=sp,sp.ID="editor.contrib.smartSelectController",sp);Ay=O5=P2e([O2e(1,_e)],Ay);class hie extends me{constructor(e,t){super(t),this._forward=e}run(e,t){return I(this,null,function*(){const i=Ay.get(t);i&&(yield i.run(this._forward))})}}class F2e extends hie{constructor(){super(!0,{id:"editor.action.smartSelect.expand",label:p("smartSelect.expand","Expand Selection"),alias:"Expand Selection",precondition:void 0,kbOpts:{kbExpr:D.editorTextFocus,primary:1553,mac:{primary:3345,secondary:[1297]},weight:100},menuOpts:{menuId:ve.MenubarSelectionMenu,group:"1_basic",title:p({key:"miSmartSelectGrow",comment:["&& denotes a mnemonic"]},"&&Expand Selection"),order:2}})}}ht.registerCommandAlias("editor.action.smartSelect.grow","editor.action.smartSelect.expand");class B2e extends hie{constructor(){super(!1,{id:"editor.action.smartSelect.shrink",label:p("smartSelect.shrink","Shrink Selection"),alias:"Shrink Selection",precondition:void 0,kbOpts:{kbExpr:D.editorTextFocus,primary:1551,mac:{primary:3343,secondary:[1295]},weight:100},menuOpts:{menuId:ve.MenubarSelectionMenu,group:"1_basic",title:p({key:"miSmartSelectShrink",comment:["&& denotes a mnemonic"]},"&&Shrink Selection"),order:3}})}}pt(Ay.ID,Ay,4);ee(F2e);ee(B2e);function gie(s,e,t,i,n){return I(this,null,function*(){const o=s.all(e).concat(new M2e(i.selectSubwords));o.length===1&&o.unshift(new _E);const r=[],a=[];for(const l of o)r.push(Promise.resolve(l.provideSelectionRanges(e,t,n)).then(c=>{if(ys(c)&&c.length===t.length)for(let d=0;d<t.length;d++){a[d]||(a[d]=[]);for(const u of c[d])L.isIRange(u.range)&&L.containsPosition(u.range,t[d])&&a[d].push(L.lift(u.range))}},Pi));return yield Promise.all(r),a.map(l=>{if(l.length===0)return[];l.sort((h,g)=>P.isBefore(h.getStartPosition(),g.getStartPosition())?1:P.isBefore(g.getStartPosition(),h.getStartPosition())||P.isBefore(h.getEndPosition(),g.getEndPosition())?-1:P.isBefore(g.getEndPosition(),h.getEndPosition())?1:0);const c=[];let d;for(const h of l)(!d||L.containsRange(h,d)&&!L.equalsRange(h,d))&&(c.push(h),d=h);if(!i.selectLeadingAndTrailingWhitespace)return c;const u=[c[0]];for(let h=1;h<c.length;h++){const g=c[h-1],f=c[h];if(f.startLineNumber!==g.startLineNumber||f.endLineNumber!==g.endLineNumber){const m=new L(g.startLineNumber,e.getLineFirstNonWhitespaceColumn(g.startLineNumber),g.endLineNumber,e.getLineLastNonWhitespaceColumn(g.endLineNumber));m.containsRange(g)&&!m.equalsRange(g)&&f.containsRange(m)&&!f.equalsRange(m)&&u.push(m);const _=new L(g.startLineNumber,1,g.endLineNumber,e.getLineMaxColumn(g.endLineNumber));_.containsRange(g)&&!_.equalsRange(m)&&f.containsRange(_)&&!f.equalsRange(_)&&u.push(_)}u.push(f)}return u})})}ht.registerCommand("_executeSelectionRangeProvider",function(s,...e){return I(this,null,function*(){const[t,i]=e;Ct(Ie.isUri(t));const n=s.get(_e).selectionRangeProvider,o=yield s.get(go).createModelReference(t);try{return gie(n,o.object.textEditorModel,i,{selectLeadingAndTrailingWhitespace:!0,selectSubwords:!0},Ze.None)}finally{o.dispose()}})});const W2e=Object.freeze({View:Be("view","View"),Help:Be("help","Help"),Test:Be("test","Test"),File:Be("file","File"),Preferences:Be("preferences","Preferences"),Developer:Be({key:"developer",comment:["A developer on Code itself or someone diagnosing issues in Code"]},"Developer")});class RC{constructor(e,t,i,n=null){this.startLineNumbers=e,this.endLineNumbers=t,this.lastLineRelativePosition=i,this.showEndForLine=n}equals(e){return!!e&&this.lastLineRelativePosition===e.lastLineRelativePosition&&this.showEndForLine===e.showEndForLine&&gi(this.startLineNumbers,e.startLineNumbers)&&gi(this.endLineNumbers,e.endLineNumbers)}static get Empty(){return new RC([],[],0)}}const MU=Zd("stickyScrollViewLayer",{createHTML:s=>s}),AA="data-sticky-line-index",PU="data-sticky-is-line",H2e="data-sticky-is-line-number",OU="data-sticky-is-folding-icon";class V2e extends B{constructor(e){super(),this._editor=e,this._foldingIconStore=new G,this._rootDomNode=document.createElement("div"),this._lineNumbersDomNode=document.createElement("div"),this._linesDomNodeScrollable=document.createElement("div"),this._linesDomNode=document.createElement("div"),this._lineHeight=this._editor.getOption(67),this._renderedStickyLines=[],this._lineNumbers=[],this._lastLineRelativePosition=0,this._minContentWidthInPx=0,this._isOnGlyphMargin=!1,this._lineNumbersDomNode.className="sticky-widget-line-numbers",this._lineNumbersDomNode.setAttribute("role","none"),this._linesDomNode.className="sticky-widget-lines",this._linesDomNode.setAttribute("role","list"),this._linesDomNodeScrollable.className="sticky-widget-lines-scrollable",this._linesDomNodeScrollable.appendChild(this._linesDomNode),this._rootDomNode.className="sticky-widget",this._rootDomNode.classList.toggle("peek",e instanceof Ia),this._rootDomNode.appendChild(this._lineNumbersDomNode),this._rootDomNode.appendChild(this._linesDomNodeScrollable);const t=()=>{this._linesDomNode.style.left=this._editor.getOption(116).scrollWithEditor?`-${this._editor.getScrollLeft()}px`:"0px"};this._register(this._editor.onDidChangeConfiguration(i=>{i.hasChanged(116)&&t(),i.hasChanged(67)&&(this._lineHeight=this._editor.getOption(67))})),this._register(this._editor.onDidScrollChange(i=>{i.scrollLeftChanged&&t(),i.scrollWidthChanged&&this._updateWidgetWidth()})),this._register(this._editor.onDidChangeModel(()=>{t(),this._updateWidgetWidth()})),this._register(this._foldingIconStore),t(),this._register(this._editor.onDidLayoutChange(i=>{this._updateWidgetWidth()})),this._updateWidgetWidth()}get lineNumbers(){return this._lineNumbers}get lineNumberCount(){return this._lineNumbers.length}getRenderedStickyLine(e){return this._renderedStickyLines.find(t=>t.lineNumber===e)}getCurrentLines(){return this._lineNumbers}setState(e,t,i){if(i===void 0&&(!this._previousState&&!e||this._previousState&&this._previousState.equals(e)))return;const n=this._isWidgetHeightZero(e),o=n?void 0:e,r=n?0:this._findLineToRebuildWidgetFrom(e,i);this._renderRootNode(o,t,r),this._previousState=e}_isWidgetHeightZero(e){if(!e)return!0;const t=e.startLineNumbers.length*this._lineHeight+e.lastLineRelativePosition;if(t>0){this._lastLineRelativePosition=e.lastLineRelativePosition;const i=[...e.startLineNumbers];e.showEndForLine!==null&&(i[e.showEndForLine]=e.endLineNumbers[e.showEndForLine]),this._lineNumbers=i}else this._lastLineRelativePosition=0,this._lineNumbers=[];return t===0}_findLineToRebuildWidgetFrom(e,t){if(!e||!this._previousState)return 0;if(t!==void 0)return t;const i=this._previousState,n=e.startLineNumbers.findIndex(o=>!i.startLineNumbers.includes(o));return n===-1?0:n}_updateWidgetWidth(){const e=this._editor.getLayoutInfo(),t=e.contentLeft;this._lineNumbersDomNode.style.width=`${t}px`,this._linesDomNodeScrollable.style.setProperty("--vscode-editorStickyScroll-scrollableWidth",`${this._editor.getScrollWidth()-e.verticalScrollbarWidth}px`),this._rootDomNode.style.width=`${e.width-e.verticalScrollbarWidth}px`}_clearStickyLinesFromLine(e){this._foldingIconStore.clear();for(let t=e;t<this._renderedStickyLines.length;t++){const i=this._renderedStickyLines[t];i.lineNumberDomNode.remove(),i.lineDomNode.remove()}this._renderedStickyLines=this._renderedStickyLines.slice(0,e),this._rootDomNode.style.display="none"}_useFoldingOpacityTransition(e){this._lineNumbersDomNode.style.setProperty("--vscode-editorStickyScroll-foldingOpacityTransition",`opacity ${e?.5:0}s`)}_setFoldingIconsVisibility(e){for(const t of this._renderedStickyLines){const i=t.foldingIcon;i&&i.setVisible(e?!0:i.isCollapsed)}}_renderRootNode(e,t,i){return I(this,null,function*(){if(this._clearStickyLinesFromLine(i),!e)return;for(const a of this._renderedStickyLines)this._updateTopAndZIndexOfStickyLine(a);const n=this._editor.getLayoutInfo(),o=this._lineNumbers.slice(i);for(const[a,l]of o.entries()){const c=this._renderChildNode(a+i,l,t,n);c&&(this._linesDomNode.appendChild(c.lineDomNode),this._lineNumbersDomNode.appendChild(c.lineNumberDomNode),this._renderedStickyLines.push(c))}t&&(this._setFoldingHoverListeners(),this._useFoldingOpacityTransition(!this._isOnGlyphMargin));const r=this._lineNumbers.length*this._lineHeight+this._lastLineRelativePosition;this._rootDomNode.style.display="block",this._lineNumbersDomNode.style.height=`${r}px`,this._linesDomNodeScrollable.style.height=`${r}px`,this._rootDomNode.style.height=`${r}px`,this._rootDomNode.style.marginLeft="0px",this._minContentWidthInPx=Math.max(...this._renderedStickyLines.map(a=>a.scrollWidth))+n.verticalScrollbarWidth,this._editor.layoutOverlayWidget(this)})}_setFoldingHoverListeners(){this._editor.getOption(111)==="mouseover"&&(this._foldingIconStore.add(j(this._lineNumbersDomNode,re.MOUSE_ENTER,()=>{this._isOnGlyphMargin=!0,this._setFoldingIconsVisibility(!0)})),this._foldingIconStore.add(j(this._lineNumbersDomNode,re.MOUSE_LEAVE,()=>{this._isOnGlyphMargin=!1,this._useFoldingOpacityTransition(!0),this._setFoldingIconsVisibility(!1)})))}_renderChildNode(e,t,i,n){const o=this._editor._getViewModel();if(!o)return;const r=o.coordinatesConverter.convertModelPositionToViewPosition(new P(t,1)).lineNumber,a=o.getViewLineRenderingData(r),l=this._editor.getOption(68);let c;try{c=Ms.filter(a.inlineDecorations,r,a.minColumn,a.maxColumn)}catch(C){c=[]}const d=new Uh(!0,!0,a.content,a.continuesWithWrappedLine,a.isBasicASCII,a.containsRTL,0,a.tokens,c,a.tabSize,a.startVisibleColumn,1,1,1,500,"none",!0,!0,null),u=new yv(2e3),h=vS(d,u);let g;MU?g=MU.createHTML(u.build()):g=u.build();const f=document.createElement("span");f.setAttribute(AA,String(e)),f.setAttribute(PU,""),f.setAttribute("role","listitem"),f.tabIndex=0,f.className="sticky-line-content",f.classList.add(`stickyLine${t}`),f.style.lineHeight=`${this._lineHeight}px`,f.innerHTML=g;const m=document.createElement("span");m.setAttribute(AA,String(e)),m.setAttribute(H2e,""),m.className="sticky-line-number",m.style.lineHeight=`${this._lineHeight}px`;const _=n.contentLeft;m.style.width=`${_}px`;const b=document.createElement("span");l.renderType===1||l.renderType===3&&t%10===0?b.innerText=t.toString():l.renderType===2&&(b.innerText=Math.abs(t-this._editor.getPosition().lineNumber).toString()),b.className="sticky-line-number-inner",b.style.lineHeight=`${this._lineHeight}px`,b.style.width=`${n.lineNumbersWidth}px`,b.style.paddingLeft=`${n.lineNumbersLeft}px`,m.appendChild(b);const v=this._renderFoldingIconForLine(i,t);v&&m.appendChild(v.domNode),this._editor.applyFontInfo(f),this._editor.applyFontInfo(b),m.style.lineHeight=`${this._lineHeight}px`,f.style.lineHeight=`${this._lineHeight}px`,m.style.height=`${this._lineHeight}px`,f.style.height=`${this._lineHeight}px`;const w=new $2e(e,t,f,m,v,h.characterMapping,f.scrollWidth);return this._updateTopAndZIndexOfStickyLine(w)}_updateTopAndZIndexOfStickyLine(e){var d;const t=e.index,i=e.lineDomNode,n=e.lineNumberDomNode,o=t===this._lineNumbers.length-1,r="0",a="1";i.style.zIndex=o?r:a,n.style.zIndex=o?r:a;const l=`${t*this._lineHeight+this._lastLineRelativePosition+((d=e.foldingIcon)!=null&&d.isCollapsed?1:0)}px`,c=`${t*this._lineHeight}px`;return i.style.top=o?l:c,n.style.top=o?l:c,e}_renderFoldingIconForLine(e,t){const i=this._editor.getOption(111);if(!e||i==="never")return;const n=e.regions,o=n.findRange(t),r=n.getStartLineNumber(o);if(!(t===r))return;const l=n.isCollapsed(o),c=new z2e(l,r,n.getEndLineNumber(o),this._lineHeight);return c.setVisible(this._isOnGlyphMargin?!0:l||i==="always"),c.domNode.setAttribute(OU,""),c}getId(){return"editor.contrib.stickyScrollWidget"}getDomNode(){return this._rootDomNode}getPosition(){return{preference:2,stackOridinal:10}}getMinContentWidthInPx(){return this._minContentWidthInPx}focusLineWithIndex(e){0<=e&&e<this._renderedStickyLines.length&&this._renderedStickyLines[e].lineDomNode.focus()}getEditorPositionFromNode(e){if(!e||e.children.length>0)return null;const t=this._getRenderedStickyLineFromChildDomNode(e);if(!t)return null;const i=mW(t.characterMapping,e,0);return new P(t.lineNumber,i)}getLineNumberFromChildDomNode(e){var t,i;return(i=(t=this._getRenderedStickyLineFromChildDomNode(e))==null?void 0:t.lineNumber)!=null?i:null}_getRenderedStickyLineFromChildDomNode(e){const t=this.getLineIndexFromChildDomNode(e);return t===null||t<0||t>=this._renderedStickyLines.length?null:this._renderedStickyLines[t]}getLineIndexFromChildDomNode(e){const t=this._getAttributeValue(e,AA);return t?parseInt(t,10):null}isInStickyLine(e){return this._getAttributeValue(e,PU)!==void 0}isInFoldingIconDomNode(e){return this._getAttributeValue(e,OU)!==void 0}_getAttributeValue(e,t){for(;e&&e!==this._rootDomNode;){const i=e.getAttribute(t);if(i!==null)return i;e=e.parentElement}}}class $2e{constructor(e,t,i,n,o,r,a){this.index=e,this.lineNumber=t,this.lineDomNode=i,this.lineNumberDomNode=n,this.foldingIcon=o,this.characterMapping=r,this.scrollWidth=a}}class z2e{constructor(e,t,i,n){this.isCollapsed=e,this.foldingStartLine=t,this.foldingEndLine=i,this.dimension=n,this.domNode=document.createElement("div"),this.domNode.style.width=`${n}px`,this.domNode.style.height=`${n}px`,this.domNode.className=Me.asClassName(e?aE:rE)}setVisible(e){this.domNode.style.cursor=e?"pointer":"default",this.domNode.style.opacity=e?"1":"0"}}class AC{constructor(e,t){this.startLineNumber=e,this.endLineNumber=t}}class ME{constructor(e,t,i){this.range=e,this.children=t,this.parent=i}}class fie{constructor(e,t,i,n){this.uri=e,this.version=t,this.element=i,this.outlineProviderId=n}}var SN=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},My=function(s,e){return function(t,i){e(t,i,s)}},MC;(function(s){s.OUTLINE_MODEL="outlineModel",s.FOLDING_PROVIDER_MODEL="foldingProviderModel",s.INDENTATION_MODEL="indentationModel"})(MC||(MC={}));var Uu;(function(s){s[s.VALID=0]="VALID",s[s.INVALID=1]="INVALID",s[s.CANCELED=2]="CANCELED"})(Uu||(Uu={}));let F5=class extends B{constructor(e,t,i,n){switch(super(),this._editor=e,this._modelProviders=[],this._modelPromise=null,this._updateScheduler=this._register(new Kr(300)),this._updateOperation=this._register(new G),this._editor.getOption(116).defaultModel){case MC.OUTLINE_MODEL:this._modelProviders.push(new B5(this._editor,n));case MC.FOLDING_PROVIDER_MODEL:this._modelProviders.push(new H5(this._editor,t,n));case MC.INDENTATION_MODEL:this._modelProviders.push(new W5(this._editor,i));break}}dispose(){this._modelProviders.forEach(e=>e.dispose()),this._updateOperation.clear(),this._cancelModelPromise(),super.dispose()}_cancelModelPromise(){this._modelPromise&&(this._modelPromise.cancel(),this._modelPromise=null)}update(e){return I(this,null,function*(){return this._updateOperation.clear(),this._updateOperation.add({dispose:()=>{this._cancelModelPromise(),this._updateScheduler.cancel()}}),this._cancelModelPromise(),yield this._updateScheduler.trigger(()=>I(this,null,function*(){for(const t of this._modelProviders){const{statusPromise:i,modelPromise:n}=t.computeStickyModel(e);this._modelPromise=n;const o=yield i;if(this._modelPromise!==n)return null;switch(o){case Uu.CANCELED:return this._updateOperation.clear(),null;case Uu.VALID:return t.stickyModel}}return null})).catch(t=>(ze(t),null))})}};F5=SN([My(2,Le),My(3,_e)],F5);class pie extends B{constructor(e){super(),this._editor=e,this._stickyModel=null}get stickyModel(){return this._stickyModel}_invalid(){return this._stickyModel=null,Uu.INVALID}computeStickyModel(e){if(e.isCancellationRequested||!this.isProviderValid())return{statusPromise:this._invalid(),modelPromise:null};const t=dn(i=>this.createModelFromProvider(i));return{statusPromise:t.then(i=>this.isModelValid(i)?e.isCancellationRequested?Uu.CANCELED:(this._stickyModel=this.createStickyModel(e,i),Uu.VALID):this._invalid()).then(void 0,i=>(ze(i),Uu.CANCELED)),modelPromise:t}}isModelValid(e){return!0}isProviderValid(){return!0}}let B5=class extends pie{constructor(e,t){super(e),this._languageFeaturesService=t}createModelFromProvider(e){return ld.create(this._languageFeaturesService.documentSymbolProvider,this._editor.getModel(),e)}createStickyModel(e,t){var r;const{stickyOutlineElement:i,providerID:n}=this._stickyModelFromOutlineModel(t,(r=this._stickyModel)==null?void 0:r.outlineProviderId),o=this._editor.getModel();return new fie(o.uri,o.getVersionId(),i,n)}isModelValid(e){return e&&e.children.size>0}_stickyModelFromOutlineModel(e,t){let i;if(ut.first(e.children.values())instanceof Ote){const a=ut.find(e.children.values(),l=>l.id===t);if(a)i=a.children;else{let l="",c=-1,d;for(const[u,h]of e.children.entries()){const g=this._findSumOfRangesOfGroup(h);g>c&&(d=h,c=g,l=h.id)}t=l,i=d.children}}else i=e.children;const n=[],o=Array.from(i.values()).sort((a,l)=>{const c=new AC(a.symbol.range.startLineNumber,a.symbol.range.endLineNumber),d=new AC(l.symbol.range.startLineNumber,l.symbol.range.endLineNumber);return this._comparator(c,d)});for(const a of o)n.push(this._stickyModelFromOutlineElement(a,a.symbol.selectionRange.startLineNumber));return{stickyOutlineElement:new ME(void 0,n,void 0),providerID:t}}_stickyModelFromOutlineElement(e,t){const i=[];for(const o of e.children.values())if(o.symbol.selectionRange.startLineNumber!==o.symbol.range.endLineNumber)if(o.symbol.selectionRange.startLineNumber!==t)i.push(this._stickyModelFromOutlineElement(o,o.symbol.selectionRange.startLineNumber));else for(const r of o.children.values())i.push(this._stickyModelFromOutlineElement(r,o.symbol.selectionRange.startLineNumber));i.sort((o,r)=>this._comparator(o.range,r.range));const n=new AC(e.symbol.selectionRange.startLineNumber,e.symbol.range.endLineNumber);return new ME(n,i,void 0)}_comparator(e,t){return e.startLineNumber!==t.startLineNumber?e.startLineNumber-t.startLineNumber:t.endLineNumber-e.endLineNumber}_findSumOfRangesOfGroup(e){let t=0;for(const i of e.children.values())t+=this._findSumOfRangesOfGroup(i);return e instanceof L4?t+e.symbol.range.endLineNumber-e.symbol.selectionRange.startLineNumber:t}};B5=SN([My(1,_e)],B5);class mie extends pie{constructor(e){super(e),this._foldingLimitReporter=new Ate(e)}createStickyModel(e,t){const i=this._fromFoldingRegions(t),n=this._editor.getModel();return new fie(n.uri,n.getVersionId(),i,void 0)}isModelValid(e){return e!==null}_fromFoldingRegions(e){const t=e.length,i=[],n=new ME(void 0,[],void 0);for(let o=0;o<t;o++){const r=e.getParentIndex(o);let a;r!==-1?a=i[r]:a=n;const l=new ME(new AC(e.getStartLineNumber(o),e.getEndLineNumber(o)+1),[],a);a.children.push(l),i.push(l)}return n}}let W5=class extends mie{constructor(e,t){super(e),this._languageConfigurationService=t,this.provider=this._register(new I9(e.getModel(),this._languageConfigurationService,this._foldingLimitReporter))}createModelFromProvider(e){return I(this,null,function*(){return this.provider.compute(e)})}};W5=SN([My(1,Si)],W5);let H5=class extends mie{constructor(e,t,i){super(e),this._languageFeaturesService=i;const n=Ph.getFoldingRangeProviders(this._languageFeaturesService,e.getModel());n.length>0&&(this.provider=this._register(new D9(e.getModel(),n,t,this._foldingLimitReporter,void 0)))}isProviderValid(){return this.provider!==void 0}createModelFromProvider(e){return I(this,null,function*(){var t,i;return(i=(t=this.provider)==null?void 0:t.compute(e))!=null?i:null})}};H5=SN([My(2,_e)],H5);var U2e=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},FU=function(s,e){return function(t,i){e(t,i,s)}};class j2e{constructor(e,t,i){this.startLineNumber=e,this.endLineNumber=t,this.nestingDepth=i}}let V5=class extends B{constructor(e,t,i){super(),this._languageFeaturesService=t,this._languageConfigurationService=i,this._onDidChangeStickyScroll=this._register(new O),this.onDidChangeStickyScroll=this._onDidChangeStickyScroll.event,this._model=null,this._cts=null,this._stickyModelProvider=null,this._editor=e,this._sessionStore=this._register(new G),this._updateSoon=this._register(new Ft(()=>this.update(),50)),this._register(this._editor.onDidChangeConfiguration(n=>{n.hasChanged(116)&&this.readConfiguration()})),this.readConfiguration()}readConfiguration(){this._sessionStore.clear(),this._editor.getOption(116).enabled&&(this._sessionStore.add(this._editor.onDidChangeModel(()=>{this._model=null,this.updateStickyModelProvider(),this._onDidChangeStickyScroll.fire(),this.update()})),this._sessionStore.add(this._editor.onDidChangeHiddenAreas(()=>this.update())),this._sessionStore.add(this._editor.onDidChangeModelContent(()=>this._updateSoon.schedule())),this._sessionStore.add(this._languageFeaturesService.documentSymbolProvider.onDidChange(()=>this.update())),this._sessionStore.add(ke(()=>{var t;(t=this._stickyModelProvider)==null||t.dispose(),this._stickyModelProvider=null})),this.updateStickyModelProvider(),this.update())}getVersionId(){var e;return(e=this._model)==null?void 0:e.version}updateStickyModelProvider(){var t;(t=this._stickyModelProvider)==null||t.dispose(),this._stickyModelProvider=null;const e=this._editor;e.hasModel()&&(this._stickyModelProvider=new F5(e,()=>this._updateSoon.schedule(),this._languageConfigurationService,this._languageFeaturesService))}update(){return I(this,null,function*(){var e;(e=this._cts)==null||e.dispose(!0),this._cts=new Ci,yield this.updateStickyModel(this._cts.token),this._onDidChangeStickyScroll.fire()})}updateStickyModel(e){return I(this,null,function*(){if(!this._editor.hasModel()||!this._stickyModelProvider||this._editor.getModel().isTooLargeForTokenization()){this._model=null;return}const t=yield this._stickyModelProvider.update(e);e.isCancellationRequested||(this._model=t)})}updateIndex(e){return e===-1?e=0:e<0&&(e=-e-2),e}getCandidateStickyLinesIntersectingFromStickyModel(e,t,i,n,o){if(t.children.length===0)return;let r=o;const a=[];for(let d=0;d<t.children.length;d++){const u=t.children[d];u.range&&a.push(u.range.startLineNumber)}const l=this.updateIndex(r1(a,e.startLineNumber,(d,u)=>d-u)),c=this.updateIndex(r1(a,e.startLineNumber+n,(d,u)=>d-u));for(let d=l;d<=c;d++){const u=t.children[d];if(!u)return;if(u.range){const h=u.range.startLineNumber,g=u.range.endLineNumber;e.startLineNumber<=g+1&&h-1<=e.endLineNumber&&h!==r&&(r=h,i.push(new j2e(h,g-1,n+1)),this.getCandidateStickyLinesIntersectingFromStickyModel(e,u,i,n+1,h))}else this.getCandidateStickyLinesIntersectingFromStickyModel(e,u,i,n,o)}}getCandidateStickyLinesIntersecting(e){var n,o;if(!((n=this._model)!=null&&n.element))return[];let t=[];this.getCandidateStickyLinesIntersectingFromStickyModel(e,this._model.element,t,0,-1);const i=(o=this._editor._getViewModel())==null?void 0:o.getHiddenAreas();if(i)for(const r of i)t=t.filter(a=>!(a.startLineNumber>=r.startLineNumber&&a.endLineNumber<=r.endLineNumber+1));return t}};V5=U2e([FU(1,_e),FU(2,Si)],V5);var q2e=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Dm=function(s,e){return function(t,i){e(t,i,s)}},$5,op;let Kd=(op=class extends B{constructor(e,t,i,n,o,r,a){super(),this._editor=e,this._contextMenuService=t,this._languageFeaturesService=i,this._instaService=n,this._contextKeyService=a,this._sessionStore=new G,this._maxStickyLines=Number.MAX_SAFE_INTEGER,this._candidateDefinitionsLength=-1,this._focusedStickyElementIndex=-1,this._enabled=!1,this._focused=!1,this._positionRevealed=!1,this._onMouseDown=!1,this._endLineNumbers=[],this._stickyScrollWidget=new V2e(this._editor),this._stickyLineCandidateProvider=new V5(this._editor,i,o),this._register(this._stickyScrollWidget),this._register(this._stickyLineCandidateProvider),this._widgetState=RC.Empty,this._onDidResize(),this._readConfiguration();const l=this._stickyScrollWidget.getDomNode();this._register(this._editor.onDidChangeConfiguration(d=>{this._readConfigurationChange(d)})),this._register(j(l,re.CONTEXT_MENU,d=>I(this,null,function*(){this._onContextMenu(Te(l),d)}))),this._stickyScrollFocusedContextKey=D.stickyScrollFocused.bindTo(this._contextKeyService),this._stickyScrollVisibleContextKey=D.stickyScrollVisible.bindTo(this._contextKeyService);const c=this._register(bl(l));this._register(c.onDidBlur(d=>{this._positionRevealed===!1&&l.clientHeight===0?(this._focusedStickyElementIndex=-1,this.focus()):this._disposeFocusStickyScrollStore()})),this._register(c.onDidFocus(d=>{this.focus()})),this._registerMouseListeners(),this._register(j(l,re.MOUSE_DOWN,d=>{this._onMouseDown=!0}))}static get(e){return e.getContribution($5.ID)}_disposeFocusStickyScrollStore(){var e;this._stickyScrollFocusedContextKey.set(!1),(e=this._focusDisposableStore)==null||e.dispose(),this._focused=!1,this._positionRevealed=!1,this._onMouseDown=!1}focus(){if(this._onMouseDown){this._onMouseDown=!1,this._editor.focus();return}this._stickyScrollFocusedContextKey.get()!==!0&&(this._focused=!0,this._focusDisposableStore=new G,this._stickyScrollFocusedContextKey.set(!0),this._focusedStickyElementIndex=this._stickyScrollWidget.lineNumbers.length-1,this._stickyScrollWidget.focusLineWithIndex(this._focusedStickyElementIndex))}focusNext(){this._focusedStickyElementIndex<this._stickyScrollWidget.lineNumberCount-1&&this._focusNav(!0)}focusPrevious(){this._focusedStickyElementIndex>0&&this._focusNav(!1)}selectEditor(){this._editor.focus()}_focusNav(e){this._focusedStickyElementIndex=e?this._focusedStickyElementIndex+1:this._focusedStickyElementIndex-1,this._stickyScrollWidget.focusLineWithIndex(this._focusedStickyElementIndex)}goToFocused(){const e=this._stickyScrollWidget.lineNumbers;this._disposeFocusStickyScrollStore(),this._revealPosition({lineNumber:e[this._focusedStickyElementIndex],column:1})}_revealPosition(e){this._reveaInEditor(e,()=>this._editor.revealPosition(e))}_revealLineInCenterIfOutsideViewport(e){this._reveaInEditor(e,()=>this._editor.revealLineInCenterIfOutsideViewport(e.lineNumber,0))}_reveaInEditor(e,t){this._focused&&this._disposeFocusStickyScrollStore(),this._positionRevealed=!0,t(),this._editor.setSelection(L.fromPositions(e)),this._editor.focus()}_registerMouseListeners(){const e=this._register(new G),t=this._register(new hN(this._editor,{extractLineNumberFromMouseEvent:o=>{const r=this._stickyScrollWidget.getEditorPositionFromNode(o.target.element);return r?r.lineNumber:0}})),i=o=>{if(!this._editor.hasModel()||o.target.type!==12||o.target.detail!==this._stickyScrollWidget.getId())return null;const r=o.target.element;if(!r||r.innerText!==r.innerHTML)return null;const a=this._stickyScrollWidget.getEditorPositionFromNode(r);return a?{range:new L(a.lineNumber,a.column,a.lineNumber,a.column+r.innerText.length),textElement:r}:null},n=this._stickyScrollWidget.getDomNode();this._register(xi(n,re.CLICK,o=>{if(o.ctrlKey||o.altKey||o.metaKey||!o.leftButton)return;if(o.shiftKey){const c=this._stickyScrollWidget.getLineIndexFromChildDomNode(o.target);if(c===null)return;const d=new P(this._endLineNumbers[c],1);this._revealLineInCenterIfOutsideViewport(d);return}if(this._stickyScrollWidget.isInFoldingIconDomNode(o.target)){const c=this._stickyScrollWidget.getLineNumberFromChildDomNode(o.target);this._toggleFoldingRegionForLine(c);return}if(!this._stickyScrollWidget.isInStickyLine(o.target))return;let l=this._stickyScrollWidget.getEditorPositionFromNode(o.target);if(!l){const c=this._stickyScrollWidget.getLineNumberFromChildDomNode(o.target);if(c===null)return;l=new P(c,1)}this._revealPosition(l)})),this._register(xi(n,re.MOUSE_MOVE,o=>{if(o.shiftKey){const r=this._stickyScrollWidget.getLineIndexFromChildDomNode(o.target);if(r===null||this._showEndForLine!==null&&this._showEndForLine===r)return;this._showEndForLine=r,this._renderStickyScroll();return}this._showEndForLine!==void 0&&(this._showEndForLine=void 0,this._renderStickyScroll())})),this._register(j(n,re.MOUSE_LEAVE,o=>{this._showEndForLine!==void 0&&(this._showEndForLine=void 0,this._renderStickyScroll())})),this._register(t.onMouseMoveOrRelevantKeyDown(([o,r])=>{const a=i(o);if(!a||!o.hasTriggerModifier||!this._editor.hasModel()){e.clear();return}const{range:l,textElement:c}=a;if(!l.equalsRange(this._stickyRangeProjectedOnEditor))this._stickyRangeProjectedOnEditor=l,e.clear();else if(c.style.textDecoration==="underline")return;const d=new Ci;e.add(ke(()=>d.dispose(!0)));let u;IS(this._languageFeaturesService.definitionProvider,this._editor.getModel(),new P(l.startLineNumber,l.startColumn+1),!1,d.token).then((h=>{if(!d.token.isCancellationRequested)if(h.length!==0){this._candidateDefinitionsLength=h.length;const g=c;u!==g?(e.clear(),u=g,u.style.textDecoration="underline",e.add(ke(()=>{u.style.textDecoration="none"}))):u||(u=g,u.style.textDecoration="underline",e.add(ke(()=>{u.style.textDecoration="none"})))}else e.clear()}))})),this._register(t.onCancel(()=>{e.clear()})),this._register(t.onExecute(o=>I(this,null,function*(){if(o.target.type!==12||o.target.detail!==this._stickyScrollWidget.getId())return;const r=this._stickyScrollWidget.getEditorPositionFromNode(o.target.element);r&&(!this._editor.hasModel()||!this._stickyRangeProjectedOnEditor||(this._candidateDefinitionsLength>1&&(this._focused&&this._disposeFocusStickyScrollStore(),this._revealPosition({lineNumber:r.lineNumber,column:1})),this._instaService.invokeFunction(pte,o,this._editor,{uri:this._editor.getModel().uri,range:this._stickyRangeProjectedOnEditor})))})))}_onContextMenu(e,t){const i=new ma(e,t);this._contextMenuService.showContextMenu({menuId:ve.StickyScrollContext,getAnchor:()=>i})}_toggleFoldingRegionForLine(e){if(!this._foldingModel||e===null)return;const t=this._stickyScrollWidget.getRenderedStickyLine(e),i=t==null?void 0:t.foldingIcon;if(!i)return;k9(this._foldingModel,Number.MAX_VALUE,[e]),i.isCollapsed=!i.isCollapsed;const n=(i.isCollapsed?this._editor.getTopForLineNumber(i.foldingEndLine):this._editor.getTopForLineNumber(i.foldingStartLine))-this._editor.getOption(67)*t.index+1;this._editor.setScrollTop(n),this._renderStickyScroll(e)}_readConfiguration(){const e=this._editor.getOption(116);if(e.enabled===!1){this._editor.removeOverlayWidget(this._stickyScrollWidget),this._sessionStore.clear(),this._enabled=!1;return}else e.enabled&&!this._enabled&&(this._editor.addOverlayWidget(this._stickyScrollWidget),this._sessionStore.add(this._editor.onDidScrollChange(i=>{i.scrollTopChanged&&(this._showEndForLine=void 0,this._renderStickyScroll())})),this._sessionStore.add(this._editor.onDidLayoutChange(()=>this._onDidResize())),this._sessionStore.add(this._editor.onDidChangeModelTokens(i=>this._onTokensChange(i))),this._sessionStore.add(this._stickyLineCandidateProvider.onDidChangeStickyScroll(()=>{this._showEndForLine=void 0,this._renderStickyScroll()})),this._enabled=!0);this._editor.getOption(68).renderType===2&&this._sessionStore.add(this._editor.onDidChangeCursorPosition(()=>{this._showEndForLine=void 0,this._renderStickyScroll(0)}))}_readConfigurationChange(e){(e.hasChanged(116)||e.hasChanged(73)||e.hasChanged(67)||e.hasChanged(111)||e.hasChanged(68))&&this._readConfiguration(),e.hasChanged(68)&&this._renderStickyScroll(0)}_needsUpdate(e){const t=this._stickyScrollWidget.getCurrentLines();for(const i of t)for(const n of e.ranges)if(i>=n.fromLineNumber&&i<=n.toLineNumber)return!0;return!1}_onTokensChange(e){this._needsUpdate(e)&&this._renderStickyScroll(0)}_onDidResize(){const t=this._editor.getLayoutInfo().height/this._editor.getOption(67);this._maxStickyLines=Math.round(t*.25)}_renderStickyScroll(e){return I(this,null,function*(){const t=this._editor.getModel();if(!t||t.isTooLargeForTokenization()){this._resetState();return}const i=this._updateAndGetMinRebuildFromLine(e),n=this._stickyLineCandidateProvider.getVersionId();if(n===void 0||n===t.getVersionId())if(!this._focused)yield this._updateState(i);else if(this._focusedStickyElementIndex===-1)yield this._updateState(i),this._focusedStickyElementIndex=this._stickyScrollWidget.lineNumberCount-1,this._focusedStickyElementIndex!==-1&&this._stickyScrollWidget.focusLineWithIndex(this._focusedStickyElementIndex);else{const r=this._stickyScrollWidget.lineNumbers[this._focusedStickyElementIndex];yield this._updateState(i),this._stickyScrollWidget.lineNumberCount===0?this._focusedStickyElementIndex=-1:(this._stickyScrollWidget.lineNumbers.includes(r)||(this._focusedStickyElementIndex=this._stickyScrollWidget.lineNumberCount-1),this._stickyScrollWidget.focusLineWithIndex(this._focusedStickyElementIndex))}})}_updateAndGetMinRebuildFromLine(e){if(e!==void 0){const t=this._minRebuildFromLine!==void 0?this._minRebuildFromLine:1/0;this._minRebuildFromLine=Math.min(e,t)}return this._minRebuildFromLine}_updateState(e){return I(this,null,function*(){var i,n;this._minRebuildFromLine=void 0,this._foldingModel=(n=yield(i=Ph.get(this._editor))==null?void 0:i.getFoldingModel())!=null?n:void 0,this._widgetState=this.findScrollWidgetState();const t=this._widgetState.startLineNumbers.length>0;this._stickyScrollVisibleContextKey.set(t),this._stickyScrollWidget.setState(this._widgetState,this._foldingModel,e)})}_resetState(){return I(this,null,function*(){this._minRebuildFromLine=void 0,this._foldingModel=void 0,this._widgetState=RC.Empty,this._stickyScrollVisibleContextKey.set(!1),this._stickyScrollWidget.setState(void 0,void 0)})}findScrollWidgetState(){const e=this._editor.getOption(67),t=Math.min(this._maxStickyLines,this._editor.getOption(116).maxLineCount),i=this._editor.getScrollTop();let n=0;const o=[],r=[],a=this._editor.getVisibleRanges();if(a.length!==0){const l=new AC(a[0].startLineNumber,a[a.length-1].endLineNumber),c=this._stickyLineCandidateProvider.getCandidateStickyLinesIntersecting(l);for(const d of c){const u=d.startLineNumber,h=d.endLineNumber,g=d.nestingDepth;if(h-u>0){const f=(g-1)*e,m=g*e,_=this._editor.getBottomForLineNumber(u)-i,b=this._editor.getTopForLineNumber(h)-i,v=this._editor.getBottomForLineNumber(h)-i;if(f>b&&f<=v){o.push(u),r.push(h+1),n=v-m;break}else m>_&&m<=v&&(o.push(u),r.push(h+1));if(o.length===t)break}}}return this._endLineNumbers=r,new RC(o,r,n,this._showEndForLine)}dispose(){super.dispose(),this._sessionStore.dispose()}},$5=op,op.ID="store.contrib.stickyScrollController",op);Kd=$5=q2e([Dm(1,jo),Dm(2,_e),Dm(3,Le),Dm(4,Si),Dm(5,Lr),Dm(6,Pe)],Kd);class K2e extends Us{constructor(){super({id:"editor.action.toggleStickyScroll",title:ue($({},Be("toggleEditorStickyScroll","Toggle Editor Sticky Scroll")),{mnemonicTitle:p({key:"mitoggleStickyScroll",comment:["&& denotes a mnemonic"]},"&&Toggle Editor Sticky Scroll")}),metadata:{description:Be("toggleEditorStickyScroll.description","Toggle/enable the editor sticky scroll which shows the nested scopes at the top of the viewport")},category:W2e.View,toggled:{condition:Z.equals("config.editor.stickyScroll.enabled",!0),title:p("stickyScroll","Sticky Scroll"),mnemonicTitle:p({key:"miStickyScroll",comment:["&& denotes a mnemonic"]},"&&Sticky Scroll")},menu:[{id:ve.CommandPalette},{id:ve.MenubarAppearanceMenu,group:"4_editor",order:3},{id:ve.StickyScrollContext}]})}run(e){return I(this,null,function*(){const t=e.get(et),i=!t.getValue("editor.stickyScroll.enabled");return t.updateValue("editor.stickyScroll.enabled",i)})}}const xN=100;class G2e extends kl{constructor(){super({id:"editor.action.focusStickyScroll",title:ue($({},Be("focusStickyScroll","Focus on the editor sticky scroll")),{mnemonicTitle:p({key:"mifocusStickyScroll",comment:["&& denotes a mnemonic"]},"&&Focus Sticky Scroll")}),precondition:Z.and(Z.has("config.editor.stickyScroll.enabled"),D.stickyScrollVisible),menu:[{id:ve.CommandPalette}]})}runEditorCommand(e,t){var i;(i=Kd.get(t))==null||i.focus()}}class Z2e extends kl{constructor(){super({id:"editor.action.selectNextStickyScrollLine",title:Be("selectNextStickyScrollLine.title","Select the next editor sticky scroll line"),precondition:D.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:xN,primary:18}})}runEditorCommand(e,t){var i;(i=Kd.get(t))==null||i.focusNext()}}class Y2e extends kl{constructor(){super({id:"editor.action.selectPreviousStickyScrollLine",title:Be("selectPreviousStickyScrollLine.title","Select the previous sticky scroll line"),precondition:D.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:xN,primary:16}})}runEditorCommand(e,t){var i;(i=Kd.get(t))==null||i.focusPrevious()}}class X2e extends kl{constructor(){super({id:"editor.action.goToFocusedStickyScrollLine",title:Be("goToFocusedStickyScrollLine.title","Go to the focused sticky scroll line"),precondition:D.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:xN,primary:3}})}runEditorCommand(e,t){var i;(i=Kd.get(t))==null||i.goToFocused()}}class Q2e extends kl{constructor(){super({id:"editor.action.selectEditor",title:Be("selectEditor.title","Select Editor"),precondition:D.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:xN,primary:9}})}runEditorCommand(e,t){var i;(i=Kd.get(t))==null||i.selectEditor()}}pt(Kd.ID,Kd,1);jt(K2e);jt(G2e);jt(Y2e);jt(Z2e);jt(X2e);jt(Q2e);var _ie=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},qw=function(s,e){return function(t,i){e(t,i,s)}};class J2e{constructor(e,t,i,n,o,r){this.range=e,this.insertText=t,this.filterText=i,this.additionalTextEdits=n,this.command=o,this.completion=r}}let z5=class extends Loe{constructor(e,t,i,n,o,r){super(o.disposable),this.model=e,this.line=t,this.word=i,this.completionModel=n,this._suggestMemoryService=r}canBeReused(e,t,i){return this.model===e&&this.line===t&&this.word.word.length>0&&this.word.startColumn===i.startColumn&&this.word.endColumn<i.endColumn&&this.completionModel.getIncompleteProvider().size===0}get items(){var a;const e=[],{items:t}=this.completionModel,i=this._suggestMemoryService.select(this.model,{lineNumber:this.line,column:this.word.endColumn+this.completionModel.lineContext.characterCountDelta},t),n=ut.slice(t,i),o=ut.slice(t,0,i);let r=5;for(const l of ut.concat(n,o)){if(l.score===fl.Default)continue;const c=new L(l.editStart.lineNumber,l.editStart.column,l.editInsertEnd.lineNumber,l.editInsertEnd.column+this.completionModel.lineContext.characterCountDelta),d=l.completion.insertTextRules&&l.completion.insertTextRules&4?{snippet:l.completion.insertText}:l.completion.insertText;e.push(new J2e(c,d,(a=l.filterTextLow)!=null?a:l.labelLow,l.completion.additionalTextEdits,l.completion.command,l)),r-->=0&&l.resolve(Ze.None)}return e}};z5=_ie([qw(5,vN)],z5);let U5=class extends B{constructor(e,t,i,n){super(),this._languageFeatureService=e,this._clipboardService=t,this._suggestMemoryService=i,this._editorService=n,this._store.add(e.inlineCompletionsProvider.register("*",this))}provideInlineCompletions(e,t,i,n){return I(this,null,function*(){var g;if(i.selectedSuggestionInfo)return;let o;for(const f of this._editorService.listCodeEditors())if(f.getModel()===e){o=f;break}if(!o)return;const r=o.getOption(90);if(d_.isAllOff(r))return;e.tokenization.tokenizeIfCheap(t.lineNumber);const a=e.tokenization.getLineTokens(t.lineNumber),l=a.getStandardTokenType(a.findTokenIndexAtOffset(Math.max(t.column-1-1,0)));if(d_.valueFor(r,l)!=="inline")return;let c=e.getWordAtPosition(t),d;if(c!=null&&c.word||(d=this._getTriggerCharacterInfo(e,t)),!(c!=null&&c.word)&&!d||(c||(c=e.getWordUntilPosition(t)),c.endColumn!==t.column))return;let u;const h=e.getValueInRange(new L(t.lineNumber,1,t.lineNumber,t.column));if(!d&&((g=this._lastResult)!=null&&g.canBeReused(e,t.lineNumber,c))){const f=new yU(h,t.column-this._lastResult.word.endColumn);this._lastResult.completionModel.lineContext=f,this._lastResult.acquire(),u=this._lastResult}else{const f=yield T9(this._languageFeatureService.completionProvider,e,t,new ky(void 0,vE.createSuggestFilter(o).itemKind,d==null?void 0:d.providers),d&&{triggerKind:1,triggerCharacter:d.ch},n);let m;f.needsClipboard&&(m=yield this._clipboardService.readText());const _=new Du(f.items,t.column,new yU(h,0),bE.None,o.getOption(119),o.getOption(113),{boostFullMatch:!1,firstMatchCanBeWeak:!1},m);u=new z5(e,t.lineNumber,c,_,f,this._suggestMemoryService)}return this._lastResult=u,u})}handleItemDidShow(e,t){t.completion.resolve(Ze.None)}freeInlineCompletions(e){e.release()}_getTriggerCharacterInfo(e,t){var o;const i=e.getValueInRange(L.fromPositions({lineNumber:t.lineNumber,column:t.column-1},t)),n=new Set;for(const r of this._languageFeatureService.completionProvider.all(e))(o=r.triggerCharacters)!=null&&o.includes(i)&&n.add(r);if(n.size!==0)return{providers:n,ch:i}}};U5=_ie([qw(0,_e),qw(1,Jd),qw(2,vN),qw(3,yt)],U5);Pv(U5);class eOe extends me{constructor(){super({id:"editor.action.forceRetokenize",label:p("forceRetokenize","Developer: Force Retokenize"),alias:"Developer: Force Retokenize",precondition:void 0})}run(e,t){if(!t.hasModel())return;const i=t.getModel();i.tokenization.resetTokenization();const n=new Cn;i.tokenization.forceTokenization(i.getLineCount()),n.stop(),console.log(`tokenization took ${n.elapsed()}`)}}ee(eOe);const TD=class TD extends Us{constructor(){super({id:TD.ID,title:Be({key:"toggle.tabMovesFocus",comment:["Turn on/off use of tab key for moving focus around VS Code"]},"Toggle Tab Key Moves Focus"),precondition:void 0,keybinding:{primary:2091,mac:{primary:1323},weight:100},metadata:{description:Be("tabMovesFocusDescriptions","Determines whether the tab key moves focus around the workbench or inserts the tab character in the current editor. This is also called tab trapping, tab navigation, or tab focus mode.")},f1:!0})}run(){const t=!Bb.getTabFocusMode();Bb.setTabFocusMode(t),$s(t?p("toggle.tabMovesFocus.on","Pressing Tab will now move focus to the next focusable element"):p("toggle.tabMovesFocus.off","Pressing Tab will now insert the tab character"))}};TD.ID="editor.action.toggleTabFocusMode";let j5=TD;jt(j5);var tOe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},BU=function(s,e){return function(t,i){e(t,i,s)}};let q5=class extends B{get enabled(){return this._enabled}set enabled(e){e?(this.el.setAttribute("aria-disabled","false"),this.el.tabIndex=0,this.el.style.pointerEvents="auto",this.el.style.opacity="1",this.el.style.cursor="pointer",this._enabled=!1):(this.el.setAttribute("aria-disabled","true"),this.el.tabIndex=-1,this.el.style.pointerEvents="none",this.el.style.opacity="0.4",this.el.style.cursor="default",this._enabled=!0),this._enabled=e}constructor(e,t,i={},n,o){var u,h;super(),this._link=t,this._hoverService=n,this._enabled=!0,this.el=J(e,ae("a.monaco-link",{tabIndex:(u=t.tabIndex)!=null?u:0,href:t.href},t.label)),this.hoverDelegate=(h=i.hoverDelegate)!=null?h:js("mouse"),this.setTooltip(t.title),this.el.setAttribute("role","button");const r=this._register(new lt(this.el,"click")),a=this._register(new lt(this.el,"keypress")),l=ce.chain(a.event,g=>g.map(f=>new Ut(f)).filter(f=>f.keyCode===3)),c=this._register(new lt(this.el,Kt.Tap)).event;this._register(rs.addTarget(this.el));const d=ce.any(r.event,l,c);this._register(d(g=>{this.enabled&&(ct.stop(g,!0),i!=null&&i.opener?i.opener(this._link.href):o.open(this._link.href,{allowCommands:!0}))})),this.enabled=!0}setTooltip(e){this.hoverDelegate.showNativeHover?this.el.title=e!=null?e:"":!this.hover&&e?this.hover=this._register(this._hoverService.setupManagedHover(this.hoverDelegate,this.el,e)):this.hover&&this.hover.update(e)}};q5=tOe([BU(3,Rc),BU(4,po)],q5);var bie=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},vie=function(s,e){return function(t,i){e(t,i,s)}};const iOe=26;let K5=class extends B{constructor(e,t){super(),this._editor=e,this.instantiationService=t,this.banner=this._register(this.instantiationService.createInstance(G5))}hide(){this._editor.setBanner(null,0),this.banner.clear()}show(e){this.banner.show(ue($({},e),{onClose:()=>{var t;this.hide(),(t=e.onClose)==null||t.call(e)}})),this._editor.setBanner(this.banner.element,iOe)}};K5=bie([vie(1,Le)],K5);let G5=class extends B{constructor(e){super(),this.instantiationService=e,this.markdownRenderer=this.instantiationService.createInstance(Vd,{}),this.element=ae("div.editor-banner"),this.element.tabIndex=0}getAriaLabel(e){if(e.ariaLabel)return e.ariaLabel;if(typeof e.message=="string")return e.message}getBannerMessage(e){if(typeof e=="string"){const t=ae("span");return t.innerText=e,t}return this.markdownRenderer.render(e).element}clear(){Tn(this.element)}show(e){Tn(this.element);const t=this.getAriaLabel(e);t&&this.element.setAttribute("aria-label",t);const i=J(this.element,ae("div.icon-container"));i.setAttribute("aria-hidden","true"),e.icon&&i.appendChild(ae(`div${Me.asCSSSelector(e.icon)}`));const n=J(this.element,ae("div.message-container"));if(n.setAttribute("aria-hidden","true"),n.appendChild(this.getBannerMessage(e.message)),this.messageActionsContainer=J(this.element,ae("div.message-actions-container")),e.actions)for(const r of e.actions)this._register(this.instantiationService.createInstance(q5,this.messageActionsContainer,ue($({},r),{tabIndex:-1}),{}));const o=J(this.element,ae("div.action-container"));this.actionBar=this._register(new vr(o)),this.actionBar.push(this._register(new Fo("banner.close","Close Banner",Me.asClassName(VQ),!0,()=>{typeof e.onClose=="function"&&e.onClose()})),{icon:!0,label:!1}),this.actionBar.setFocusable(!1)}};G5=bie([vie(0,Le)],G5);var U9=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},nb=function(s,e){return function(t,i){e(t,i,s)}};const nOe=ii("extensions-warning-message",oe.warning,p("warningIcon","Icon shown with a warning message in the extensions editor."));var fb;let Py=(fb=class extends B{constructor(e,t,i,n){super(),this._editor=e,this._editorWorkerService=t,this._workspaceTrustService=i,this._highlighter=null,this._bannerClosed=!1,this._updateState=o=>{if(o&&o.hasMore){if(this._bannerClosed)return;const r=Math.max(o.ambiguousCharacterCount,o.nonBasicAsciiCharacterCount,o.invisibleCharacterCount);let a;if(o.nonBasicAsciiCharacterCount>=r)a={message:p("unicodeHighlighting.thisDocumentHasManyNonBasicAsciiUnicodeCharacters","This document contains many non-basic ASCII unicode characters"),command:new Fy};else if(o.ambiguousCharacterCount>=r)a={message:p("unicodeHighlighting.thisDocumentHasManyAmbiguousUnicodeCharacters","This document contains many ambiguous unicode characters"),command:new Fp};else if(o.invisibleCharacterCount>=r)a={message:p("unicodeHighlighting.thisDocumentHasManyInvisibleUnicodeCharacters","This document contains many invisible unicode characters"),command:new Oy};else throw new Error("Unreachable");this._bannerController.show({id:"unicodeHighlightBanner",message:a.message,icon:nOe,actions:[{label:a.command.shortLabel,href:`command:${a.command.id}`}],onClose:()=>{this._bannerClosed=!0}})}else this._bannerController.hide()},this._bannerController=this._register(n.createInstance(K5,e)),this._register(this._editor.onDidChangeModel(()=>{this._bannerClosed=!1,this._updateHighlighter()})),this._options=e.getOption(126),this._register(i.onDidChangeTrust(o=>{this._updateHighlighter()})),this._register(e.onDidChangeConfiguration(o=>{o.hasChanged(126)&&(this._options=e.getOption(126),this._updateHighlighter())})),this._updateHighlighter()}dispose(){this._highlighter&&(this._highlighter.dispose(),this._highlighter=null),super.dispose()}_updateHighlighter(){if(this._updateState(null),this._highlighter&&(this._highlighter.dispose(),this._highlighter=null),!this._editor.hasModel())return;const e=sOe(this._workspaceTrustService.isWorkspaceTrusted(),this._options);if([e.nonBasicASCII,e.ambiguousCharacters,e.invisibleCharacters].every(i=>i===!1))return;const t={nonBasicASCII:e.nonBasicASCII,ambiguousCharacters:e.ambiguousCharacters,invisibleCharacters:e.invisibleCharacters,includeComments:e.includeComments,includeStrings:e.includeStrings,allowedCodePoints:Object.keys(e.allowedCharacters).map(i=>i.codePointAt(0)),allowedLocales:Object.keys(e.allowedLocales).map(i=>i==="_os"?new Intl.NumberFormat().resolvedOptions().locale:i==="_vscode"?xse:i)};this._editorWorkerService.canComputeUnicodeHighlights(this._editor.getModel().uri)?this._highlighter=new Z5(this._editor,t,this._updateState,this._editorWorkerService):this._highlighter=new oOe(this._editor,t,this._updateState)}getDecorationInfo(e){return this._highlighter?this._highlighter.getDecorationInfo(e):null}},fb.ID="editor.contrib.unicodeHighlighter",fb);Py=U9([nb(1,mo),nb(2,nX),nb(3,Le)],Py);function sOe(s,e){return{nonBasicASCII:e.nonBasicASCII===ir?!s:e.nonBasicASCII,ambiguousCharacters:e.ambiguousCharacters,invisibleCharacters:e.invisibleCharacters,includeComments:e.includeComments===ir?!s:e.includeComments,includeStrings:e.includeStrings===ir?!s:e.includeStrings,allowedCharacters:e.allowedCharacters,allowedLocales:e.allowedLocales}}let Z5=class extends B{constructor(e,t,i,n){super(),this._editor=e,this._options=t,this._updateState=i,this._editorWorkerService=n,this._model=this._editor.getModel(),this._decorations=this._editor.createDecorationsCollection(),this._updateSoon=this._register(new Ft(()=>this._update(),250)),this._register(this._editor.onDidChangeModelContent(()=>{this._updateSoon.schedule()})),this._updateSoon.schedule()}dispose(){this._decorations.clear(),super.dispose()}_update(){if(this._model.isDisposed())return;if(!this._model.mightContainNonBasicASCII()){this._decorations.clear();return}const e=this._model.getVersionId();this._editorWorkerService.computedUnicodeHighlights(this._model.uri,this._options).then(t=>{if(this._model.isDisposed()||this._model.getVersionId()!==e)return;this._updateState(t);const i=[];if(!t.hasMore)for(const n of t.ranges)i.push({range:n,options:PE.instance.getDecorationFromOptions(this._options)});this._decorations.set(i)})}getDecorationInfo(e){if(!this._decorations.has(e))return null;const t=this._editor.getModel();if(!NW(t,e))return null;const i=t.getValueInRange(e.range);return{reason:Cie(i,this._options),inComment:RW(t,e),inString:AW(t,e)}}};Z5=U9([nb(3,mo)],Z5);class oOe extends B{constructor(e,t,i){super(),this._editor=e,this._options=t,this._updateState=i,this._model=this._editor.getModel(),this._decorations=this._editor.createDecorationsCollection(),this._updateSoon=this._register(new Ft(()=>this._update(),250)),this._register(this._editor.onDidLayoutChange(()=>{this._updateSoon.schedule()})),this._register(this._editor.onDidScrollChange(()=>{this._updateSoon.schedule()})),this._register(this._editor.onDidChangeHiddenAreas(()=>{this._updateSoon.schedule()})),this._register(this._editor.onDidChangeModelContent(()=>{this._updateSoon.schedule()})),this._updateSoon.schedule()}dispose(){this._decorations.clear(),super.dispose()}_update(){if(this._model.isDisposed())return;if(!this._model.mightContainNonBasicASCII()){this._decorations.clear();return}const e=this._editor.getVisibleRanges(),t=[],i={ranges:[],ambiguousCharacterCount:0,invisibleCharacterCount:0,nonBasicAsciiCharacterCount:0,hasMore:!1};for(const n of e){const o=UB.computeUnicodeHighlights(this._model,this._options,n);for(const r of o.ranges)i.ranges.push(r);i.ambiguousCharacterCount+=i.ambiguousCharacterCount,i.invisibleCharacterCount+=i.invisibleCharacterCount,i.nonBasicAsciiCharacterCount+=i.nonBasicAsciiCharacterCount,i.hasMore=i.hasMore||o.hasMore}if(!i.hasMore)for(const n of i.ranges)t.push({range:n,options:PE.instance.getDecorationFromOptions(this._options)});this._updateState(i),this._decorations.set(t)}getDecorationInfo(e){if(!this._decorations.has(e))return null;const t=this._editor.getModel(),i=t.getValueInRange(e.range);return NW(t,e)?{reason:Cie(i,this._options),inComment:RW(t,e),inString:AW(t,e)}:null}}const wie=p("unicodeHighlight.configureUnicodeHighlightOptions","Configure Unicode Highlight Options");let Y5=class{constructor(e,t,i){this._editor=e,this._languageService=t,this._openerService=i,this.hoverOrdinal=5}computeSync(e,t){if(!this._editor.hasModel()||e.type!==1)return[];const i=this._editor.getModel(),n=this._editor.getContribution(Py.ID);if(!n)return[];const o=[],r=new Set;let a=300;for(const l of t){const c=n.getDecorationInfo(l);if(!c)continue;const u=i.getValueInRange(l.range).codePointAt(0),h=MA(u);let g;switch(c.reason.kind){case 0:{Xy(c.reason.confusableWith)?g=p("unicodeHighlight.characterIsAmbiguousASCII","The character {0} could be confused with the ASCII character {1}, which is more common in source code.",h,MA(c.reason.confusableWith.codePointAt(0))):g=p("unicodeHighlight.characterIsAmbiguous","The character {0} could be confused with the character {1}, which is more common in source code.",h,MA(c.reason.confusableWith.codePointAt(0)));break}case 1:g=p("unicodeHighlight.characterIsInvisible","The character {0} is invisible.",h);break;case 2:g=p("unicodeHighlight.characterIsNonBasicAscii","The character {0} is not a basic ASCII character.",h);break}if(r.has(g))continue;r.add(g);const f={codePoint:u,reason:c.reason,inComment:c.inComment,inString:c.inString},m=p("unicodeHighlight.adjustSettings","Adjust settings"),_=`command:${OE.ID}?${encodeURIComponent(JSON.stringify(f))}`,b=new ss("",!0).appendMarkdown(g).appendText(" ").appendLink(_,m,wie);o.push(new pa(this,l.range,[b],!1,a++))}return o}renderHoverParts(e,t){return ADe(e,t,this._editor,this._languageService,this._openerService)}};Y5=U9([nb(1,fi),nb(2,po)],Y5);function X5(s){return`U+${s.toString(16).padStart(4,"0")}`}function MA(s){let e=`\`${X5(s)}\``;return Jg.isInvisibleCharacter(s)||(e+=` "${`${rOe(s)}`}"`),e}function rOe(s){return s===96?"`` ` ``":"`"+String.fromCodePoint(s)+"`"}function Cie(s,e){return UB.computeUnicodeHighlightReason(s,e)}const ND=class ND{constructor(){this.map=new Map}getDecorationFromOptions(e){return this.getDecoration(!e.includeComments,!e.includeStrings)}getDecoration(e,t){const i=`${e}${t}`;let n=this.map.get(i);return n||(n=je.createDynamic({description:"unicode-highlight",stickiness:1,className:"unicode-highlight",showIfCollapsed:!0,overviewRuler:null,minimap:null,hideInCommentTokens:e,hideInStringTokens:t}),this.map.set(i,n)),n}};ND.instance=new ND;let PE=ND;class aOe extends me{constructor(){super({id:Fp.ID,label:p("action.unicodeHighlight.disableHighlightingInComments","Disable highlighting of characters in comments"),alias:"Disable highlighting of characters in comments",precondition:void 0}),this.shortLabel=p("unicodeHighlight.disableHighlightingInComments.shortLabel","Disable Highlight In Comments")}run(e,t,i){return I(this,null,function*(){const n=e==null?void 0:e.get(et);n&&this.runAction(n)})}runAction(e){return I(this,null,function*(){yield e.updateValue(Qs.includeComments,!1,2)})}}class lOe extends me{constructor(){super({id:Fp.ID,label:p("action.unicodeHighlight.disableHighlightingInStrings","Disable highlighting of characters in strings"),alias:"Disable highlighting of characters in strings",precondition:void 0}),this.shortLabel=p("unicodeHighlight.disableHighlightingInStrings.shortLabel","Disable Highlight In Strings")}run(e,t,i){return I(this,null,function*(){const n=e==null?void 0:e.get(et);n&&this.runAction(n)})}runAction(e){return I(this,null,function*(){yield e.updateValue(Qs.includeStrings,!1,2)})}}const RD=class RD extends me{constructor(){super({id:RD.ID,label:p("action.unicodeHighlight.disableHighlightingOfAmbiguousCharacters","Disable highlighting of ambiguous characters"),alias:"Disable highlighting of ambiguous characters",precondition:void 0}),this.shortLabel=p("unicodeHighlight.disableHighlightingOfAmbiguousCharacters.shortLabel","Disable Ambiguous Highlight")}run(e,t,i){return I(this,null,function*(){const n=e==null?void 0:e.get(et);n&&this.runAction(n)})}runAction(e){return I(this,null,function*(){yield e.updateValue(Qs.ambiguousCharacters,!1,2)})}};RD.ID="editor.action.unicodeHighlight.disableHighlightingOfAmbiguousCharacters";let Fp=RD;const AD=class AD extends me{constructor(){super({id:AD.ID,label:p("action.unicodeHighlight.disableHighlightingOfInvisibleCharacters","Disable highlighting of invisible characters"),alias:"Disable highlighting of invisible characters",precondition:void 0}),this.shortLabel=p("unicodeHighlight.disableHighlightingOfInvisibleCharacters.shortLabel","Disable Invisible Highlight")}run(e,t,i){return I(this,null,function*(){const n=e==null?void 0:e.get(et);n&&this.runAction(n)})}runAction(e){return I(this,null,function*(){yield e.updateValue(Qs.invisibleCharacters,!1,2)})}};AD.ID="editor.action.unicodeHighlight.disableHighlightingOfInvisibleCharacters";let Oy=AD;const MD=class MD extends me{constructor(){super({id:MD.ID,label:p("action.unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters","Disable highlighting of non basic ASCII characters"),alias:"Disable highlighting of non basic ASCII characters",precondition:void 0}),this.shortLabel=p("unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters.shortLabel","Disable Non ASCII Highlight")}run(e,t,i){return I(this,null,function*(){const n=e==null?void 0:e.get(et);n&&this.runAction(n)})}runAction(e){return I(this,null,function*(){yield e.updateValue(Qs.nonBasicASCII,!1,2)})}};MD.ID="editor.action.unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters";let Fy=MD;const PD=class PD extends me{constructor(){super({id:PD.ID,label:p("action.unicodeHighlight.showExcludeOptions","Show Exclude Options"),alias:"Show Exclude Options",precondition:void 0})}run(e,t,i){return I(this,null,function*(){const{codePoint:n,reason:o,inString:r,inComment:a}=i,l=String.fromCodePoint(n),c=e.get(ta),d=e.get(et);function u(f){return Jg.isInvisibleCharacter(f)?p("unicodeHighlight.excludeInvisibleCharFromBeingHighlighted","Exclude {0} (invisible character) from being highlighted",X5(f)):p("unicodeHighlight.excludeCharFromBeingHighlighted","Exclude {0} from being highlighted",`${X5(f)} "${l}"`)}const h=[];if(o.kind===0)for(const f of o.notAmbiguousInLocales)h.push({label:p("unicodeHighlight.allowCommonCharactersInLanguage",'Allow unicode characters that are more common in the language "{0}".',f),run:()=>I(null,null,function*(){dOe(d,[f])})});if(h.push({label:u(n),run:()=>cOe(d,[n])}),a){const f=new aOe;h.push({label:f.label,run:()=>I(null,null,function*(){return f.runAction(d)})})}else if(r){const f=new lOe;h.push({label:f.label,run:()=>I(null,null,function*(){return f.runAction(d)})})}if(o.kind===0){const f=new Fp;h.push({label:f.label,run:()=>I(null,null,function*(){return f.runAction(d)})})}else if(o.kind===1){const f=new Oy;h.push({label:f.label,run:()=>I(null,null,function*(){return f.runAction(d)})})}else if(o.kind===2){const f=new Fy;h.push({label:f.label,run:()=>I(null,null,function*(){return f.runAction(d)})})}else uOe(o);const g=yield c.pick(h,{title:wie});g&&(yield g.run())})}};PD.ID="editor.action.unicodeHighlight.showExcludeOptions";let OE=PD;function cOe(s,e){return I(this,null,function*(){const t=s.getValue(Qs.allowedCharacters);let i;typeof t=="object"&&t?i=t:i={};for(const n of e)i[String.fromCodePoint(n)]=!0;yield s.updateValue(Qs.allowedCharacters,i,2)})}function dOe(s,e){return I(this,null,function*(){var n;const t=(n=s.inspect(Qs.allowedLocales).user)==null?void 0:n.value;let i;typeof t=="object"&&t?i=Object.assign({},t):i={};for(const o of e)i[o]=!0;yield s.updateValue(Qs.allowedLocales,i,2)})}function uOe(s){throw new Error(`Unexpected value: ${s}`)}ee(Fp);ee(Oy);ee(Fy);ee(OE);pt(Py.ID,Py,1);Jp.register(Y5);var hOe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},WU=function(s,e){return function(t,i){e(t,i,s)}};const yie="ignoreUnusualLineTerminators";function gOe(s,e,t){s.setModelProperty(e.uri,yie,t)}function fOe(s,e){return s.getModelProperty(e.uri,yie)}var pb;let FE=(pb=class extends B{constructor(e,t,i){super(),this._editor=e,this._dialogService=t,this._codeEditorService=i,this._isPresentingDialog=!1,this._config=this._editor.getOption(127),this._register(this._editor.onDidChangeConfiguration(n=>{n.hasChanged(127)&&(this._config=this._editor.getOption(127),this._checkForUnusualLineTerminators())})),this._register(this._editor.onDidChangeModel(()=>{this._checkForUnusualLineTerminators()})),this._register(this._editor.onDidChangeModelContent(n=>{n.isUndoing||this._checkForUnusualLineTerminators()})),this._checkForUnusualLineTerminators()}_checkForUnusualLineTerminators(){return I(this,null,function*(){if(this._config==="off"||!this._editor.hasModel())return;const e=this._editor.getModel();if(!e.mightContainUnusualLineTerminators()||fOe(this._codeEditorService,e)===!0||this._editor.getOption(92))return;if(this._config==="auto"){e.removeUnusualLineTerminators(this._editor.getSelections());return}if(this._isPresentingDialog)return;let i;try{this._isPresentingDialog=!0,i=yield this._dialogService.confirm({title:p("unusualLineTerminators.title","Unusual Line Terminators"),message:p("unusualLineTerminators.message","Detected unusual line terminators"),detail:p("unusualLineTerminators.detail","The file '{0}' contains one or more unusual line terminator characters, like Line Separator (LS) or Paragraph Separator (PS).\n\nIt is recommended to remove them from the file. This can be configured via `editor.unusualLineTerminators`.",Yr(e.uri)),primaryButton:p({key:"unusualLineTerminators.fix",comment:["&& denotes a mnemonic"]},"&&Remove Unusual Line Terminators"),cancelButton:p("unusualLineTerminators.ignore","Ignore")})}finally{this._isPresentingDialog=!1}if(!i.confirmed){gOe(this._codeEditorService,e,!0);return}e.removeUnusualLineTerminators(this._editor.getSelections())})}},pb.ID="editor.contrib.unusualLineTerminatorsDetector",pb);FE=hOe([WU(1,iS),WU(2,yt)],FE);pt(FE.ID,FE,1);var pOe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},mOe=function(s,e){return function(t,i){e(t,i,s)}};class HU{constructor(){this.selector={language:"*"}}provideDocumentHighlights(e,t,i){const n=[],o=e.getWordAtPosition({lineNumber:t.lineNumber,column:t.column});return o?e.isDisposed()?void 0:e.findMatches(o.word,!0,!1,!0,qx,!1).map(a=>({range:a.range,kind:_b.Text})):Promise.resolve(n)}provideMultiDocumentHighlights(e,t,i,n){const o=new wn,r=e.getWordAtPosition({lineNumber:t.lineNumber,column:t.column});if(!r)return Promise.resolve(o);for(const a of[e,...i]){if(a.isDisposed())continue;const c=a.findMatches(r.word,!0,!1,!0,qx,!1).map(d=>({range:d.range,kind:_b.Text}));c&&o.set(a.uri,c)}return o}}let Q5=class extends B{constructor(e){super(),this._register(e.documentHighlightProvider.register("*",new HU)),this._register(e.multiDocumentHighlightProvider.register("*",new HU))}};Q5=pOe([mOe(0,_e)],Q5);var Sie=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Bx=function(s,e){return function(t,i){e(t,i,s)}},Bi,J5;const j9=new fe("hasWordHighlights",!1);function xie(s,e,t,i){const n=s.ordered(e);return TB(n.map(o=>()=>Promise.resolve(o.provideDocumentHighlights(e,t,i)).then(void 0,Pi)),o=>o!=null).then(o=>{if(o){const r=new wn;return r.set(e.uri,o),r}return new wn})}function _Oe(s,e,t,i,n,o){const r=s.ordered(e);return TB(r.map(a=>()=>{const l=o.filter(c=>zZ(c)).filter(c=>JB(a.selector,c.uri,c.getLanguageId(),!0,void 0,void 0)>0);return Promise.resolve(a.provideMultiDocumentHighlights(e,t,l,n)).then(void 0,Pi)}),a=>a!=null)}class kie{constructor(e,t,i){this._model=e,this._selection=t,this._wordSeparators=i,this._wordRange=this._getCurrentWordRange(e,t),this._result=null}get result(){return this._result||(this._result=dn(e=>this._compute(this._model,this._selection,this._wordSeparators,e))),this._result}_getCurrentWordRange(e,t){const i=e.getWordAtPosition(t.getPosition());return i?new L(t.startLineNumber,i.startColumn,t.startLineNumber,i.endColumn):null}isValid(e,t,i){const n=t.startLineNumber,o=t.startColumn,r=t.endColumn,a=this._getCurrentWordRange(e,t);let l=!!(this._wordRange&&this._wordRange.equalsRange(a));for(let c=0,d=i.length;!l&&c<d;c++){const u=i.getRange(c);u&&u.startLineNumber===n&&u.startColumn<=o&&u.endColumn>=r&&(l=!0)}return l}cancel(){this.result.cancel()}}class bOe extends kie{constructor(e,t,i,n){super(e,t,i),this._providers=n}_compute(e,t,i,n){return xie(this._providers,e,t.getPosition(),n).then(o=>o||new wn)}}class vOe extends kie{constructor(e,t,i,n,o){super(e,t,i),this._providers=n,this._otherModels=o}_compute(e,t,i,n){return _Oe(this._providers,e,t.getPosition(),i,n,this._otherModels).then(o=>o||new wn)}}function wOe(s,e,t,i,n){return new bOe(e,t,n,s)}function COe(s,e,t,i,n,o){return new vOe(e,t,n,s,o)}fo("_executeDocumentHighlights",(s,e,t)=>I(null,null,function*(){const i=s.get(_e),n=yield xie(i.documentHighlightProvider,e,t,Ze.None);return n==null?void 0:n.get(e.uri)}));var ph;let e3=(ph=class{constructor(e,t,i,n,o){this.toUnhook=new G,this.workerRequestTokenId=0,this.workerRequestCompleted=!1,this.workerRequestValue=new wn,this.lastCursorPositionChangeTime=0,this.renderDecorationsTimer=-1,this.runDelayer=this.toUnhook.add(new Kr(50)),this.editor=e,this.providers=t,this.multiDocumentProviders=i,this.codeEditorService=o,this._hasWordHighlights=j9.bindTo(n),this._ignorePositionChangeEvent=!1,this.occurrencesHighlight=this.editor.getOption(81),this.model=this.editor.getModel(),this.toUnhook.add(e.onDidChangeCursorPosition(r=>{this._ignorePositionChangeEvent||this.occurrencesHighlight!=="off"&&this.runDelayer.trigger(()=>{this._onPositionChanged(r)})})),this.toUnhook.add(e.onDidFocusEditorText(r=>{this.occurrencesHighlight!=="off"&&(this.workerRequest||this.runDelayer.trigger(()=>{this._run()}))})),this.toUnhook.add(e.onDidChangeModelContent(r=>{KD(this.model.uri,"output")||this._stopAll()})),this.toUnhook.add(e.onDidChangeModel(r=>{!r.newModelUrl&&r.oldModelUrl?this._stopSingular():Bi.query&&this._run()})),this.toUnhook.add(e.onDidChangeConfiguration(r=>{var l,c;const a=this.editor.getOption(81);if(this.occurrencesHighlight!==a)switch(this.occurrencesHighlight=a,a){case"off":this._stopAll();break;case"singleFile":this._stopAll((c=(l=Bi.query)==null?void 0:l.modelInfo)==null?void 0:c.model);break;case"multiFile":Bi.query&&this._run(!0);break;default:console.warn("Unknown occurrencesHighlight setting value:",a);break}})),this.decorations=this.editor.createDecorationsCollection(),this.workerRequestTokenId=0,this.workerRequest=null,this.workerRequestCompleted=!1,this.lastCursorPositionChangeTime=0,this.renderDecorationsTimer=-1,Bi.query&&this._run()}hasDecorations(){return this.decorations.length>0}restore(){this.occurrencesHighlight!=="off"&&(this.runDelayer.cancel(),this._run())}_getSortedHighlights(){return this.decorations.getRanges().sort(L.compareRangesUsingStarts)}moveNext(){const e=this._getSortedHighlights(),i=(e.findIndex(o=>o.containsPosition(this.editor.getPosition()))+1)%e.length,n=e[i];try{this._ignorePositionChangeEvent=!0,this.editor.setPosition(n.getStartPosition()),this.editor.revealRangeInCenterIfOutsideViewport(n);const o=this._getWord();if(o){const r=this.editor.getModel().getLineContent(n.startLineNumber);$s(`${r}, ${i+1} of ${e.length} for '${o.word}'`)}}finally{this._ignorePositionChangeEvent=!1}}moveBack(){const e=this._getSortedHighlights(),i=(e.findIndex(o=>o.containsPosition(this.editor.getPosition()))-1+e.length)%e.length,n=e[i];try{this._ignorePositionChangeEvent=!0,this.editor.setPosition(n.getStartPosition()),this.editor.revealRangeInCenterIfOutsideViewport(n);const o=this._getWord();if(o){const r=this.editor.getModel().getLineContent(n.startLineNumber);$s(`${r}, ${i+1} of ${e.length} for '${o.word}'`)}}finally{this._ignorePositionChangeEvent=!1}}_removeSingleDecorations(){if(!this.editor.hasModel())return;const e=Bi.storedDecorationIDs.get(this.editor.getModel().uri);e&&(this.editor.removeDecorations(e),Bi.storedDecorationIDs.delete(this.editor.getModel().uri),this.decorations.length>0&&(this.decorations.clear(),this._hasWordHighlights.set(!1)))}_removeAllDecorations(e){const t=this.codeEditorService.listCodeEditors(),i=[];for(const n of t){if(!n.hasModel()||P1(n.getModel().uri,e==null?void 0:e.uri))continue;const o=Bi.storedDecorationIDs.get(n.getModel().uri);if(!o)continue;n.removeDecorations(o),i.push(n.getModel().uri);const r=Fh.get(n);r!=null&&r.wordHighlighter&&r.wordHighlighter.decorations.length>0&&(r.wordHighlighter.decorations.clear(),r.wordHighlighter.workerRequest=null,r.wordHighlighter._hasWordHighlights.set(!1))}for(const n of i)Bi.storedDecorationIDs.delete(n)}_stopSingular(){var e,t,i,n;this._removeSingleDecorations(),this.editor.hasTextFocus()&&(((e=this.editor.getModel())==null?void 0:e.uri.scheme)!==Ue.vscodeNotebookCell&&((i=(t=Bi.query)==null?void 0:t.modelInfo)==null?void 0:i.model.uri.scheme)!==Ue.vscodeNotebookCell?(Bi.query=null,this._run()):(n=Bi.query)!=null&&n.modelInfo&&(Bi.query.modelInfo=null)),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)}_stopAll(e){this._removeAllDecorations(e),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(e){var t;if(this.occurrencesHighlight==="off"){this._stopAll();return}if(e.reason!==3&&((t=this.editor.getModel())==null?void 0:t.uri.scheme)!==Ue.vscodeNotebookCell){this._stopAll();return}this._run()}_getWord(){const e=this.editor.getSelection(),t=e.startLineNumber,i=e.startColumn;return this.model.isDisposed()?null:this.model.getWordAtPosition({lineNumber:t,column:i})}getOtherModelsToHighlight(e){if(!e)return[];if(e.uri.scheme===Ue.vscodeNotebookCell){const o=[],r=this.codeEditorService.listCodeEditors();for(const a of r){const l=a.getModel();l&&l!==e&&l.uri.scheme===Ue.vscodeNotebookCell&&o.push(l)}return o}const i=[],n=this.codeEditorService.listCodeEditors();for(const o of n){if(!YW(o))continue;const r=o.getModel();r&&e===r.modified&&i.push(r.modified)}if(i.length)return i;if(this.occurrencesHighlight==="singleFile")return[];for(const o of n){const r=o.getModel();r&&r!==e&&i.push(r)}return i}_run(e){var n,o;let t;if(this.editor.hasTextFocus()){const r=this.editor.getSelection();if(!r||r.startLineNumber!==r.endLineNumber){Bi.query=null,this._stopAll();return}const a=r.startColumn,l=r.endColumn,c=this._getWord();if(!c||c.startColumn>a||c.endColumn<l){Bi.query=null,this._stopAll();return}t=this.workerRequest&&this.workerRequest.isValid(this.model,r,this.decorations),Bi.query={modelInfo:{model:this.model,selection:r},word:c}}else if(!Bi.query){this._stopAll();return}if(this.lastCursorPositionChangeTime=new Date().getTime(),t)this.workerRequestCompleted&&this.renderDecorationsTimer!==-1&&(clearTimeout(this.renderDecorationsTimer),this.renderDecorationsTimer=-1,this._beginRenderDecorations());else if(P1(this.editor.getModel().uri,(n=Bi.query.modelInfo)==null?void 0:n.model.uri)){if(!e){const l=this.decorations.getRanges();for(const c of l)if(c.containsPosition(this.editor.getPosition()))return}this._stopAll(e?this.model:void 0);const r=++this.workerRequestTokenId;this.workerRequestCompleted=!1;const a=this.getOtherModelsToHighlight(this.editor.getModel());if(!Bi.query||!Bi.query.modelInfo||Bi.query.modelInfo.model.isDisposed())return;this.workerRequest=this.computeWithModel(Bi.query.modelInfo.model,Bi.query.modelInfo.selection,Bi.query.word,a),(o=this.workerRequest)==null||o.result.then(l=>{r===this.workerRequestTokenId&&(this.workerRequestCompleted=!0,this.workerRequestValue=l||[],this._beginRenderDecorations())},ze)}}computeWithModel(e,t,i,n){return n.length?COe(this.multiDocumentProviders,e,t,i,this.editor.getOption(132),n):wOe(this.providers,e,t,i,this.editor.getOption(132))}_beginRenderDecorations(){const e=new Date().getTime(),t=this.lastCursorPositionChangeTime+250;e>=t?(this.renderDecorationsTimer=-1,this.renderDecorations()):this.renderDecorationsTimer=setTimeout(()=>{this.renderDecorations()},t-e)}renderDecorations(){var t,i,n;this.renderDecorationsTimer=-1;const e=this.codeEditorService.listCodeEditors();for(const o of e){const r=Fh.get(o);if(!r)continue;const a=[],l=(t=o.getModel())==null?void 0:t.uri;if(l&&this.workerRequestValue.has(l)){const c=Bi.storedDecorationIDs.get(l),d=this.workerRequestValue.get(l);if(d)for(const h of d)h.range&&a.push({range:h.range,options:cPe(h.kind)});let u=[];o.changeDecorations(h=>{u=h.deltaDecorations(c!=null?c:[],a)}),Bi.storedDecorationIDs=Bi.storedDecorationIDs.set(l,u),a.length>0&&((i=r.wordHighlighter)==null||i.decorations.set(a),(n=r.wordHighlighter)==null||n._hasWordHighlights.set(!0))}}}dispose(){this._stopSingular(),this.toUnhook.dispose()}},Bi=ph,ph.storedDecorationIDs=new wn,ph.query=null,ph);e3=Bi=Sie([Bx(4,yt)],e3);var rp;let Fh=(rp=class extends B{static get(e){return e.getContribution(J5.ID)}constructor(e,t,i,n){super(),this._wordHighlighter=null;const o=()=>{e.hasModel()&&!e.getModel().isTooLargeForTokenization()&&(this._wordHighlighter=new e3(e,i.documentHighlightProvider,i.multiDocumentHighlightProvider,t,n))};this._register(e.onDidChangeModel(r=>{this._wordHighlighter&&(this._wordHighlighter.dispose(),this._wordHighlighter=null),o()})),o()}get wordHighlighter(){return this._wordHighlighter}saveViewState(){return!!(this._wordHighlighter&&this._wordHighlighter.hasDecorations())}moveNext(){var e;(e=this._wordHighlighter)==null||e.moveNext()}moveBack(){var e;(e=this._wordHighlighter)==null||e.moveBack()}restoreViewState(e){this._wordHighlighter&&e&&this._wordHighlighter.restore()}dispose(){this._wordHighlighter&&(this._wordHighlighter.dispose(),this._wordHighlighter=null),super.dispose()}},J5=rp,rp.ID="editor.contrib.wordHighlighter",rp);Fh=J5=Sie([Bx(1,Pe),Bx(2,_e),Bx(3,yt)],Fh);class Lie extends me{constructor(e,t){super(t),this._isNext=e}run(e,t){const i=Fh.get(t);i&&(this._isNext?i.moveNext():i.moveBack())}}class yOe extends Lie{constructor(){super(!0,{id:"editor.action.wordHighlight.next",label:p("wordHighlight.next.label","Go to Next Symbol Highlight"),alias:"Go to Next Symbol Highlight",precondition:j9,kbOpts:{kbExpr:D.editorTextFocus,primary:65,weight:100}})}}class SOe extends Lie{constructor(){super(!1,{id:"editor.action.wordHighlight.prev",label:p("wordHighlight.previous.label","Go to Previous Symbol Highlight"),alias:"Go to Previous Symbol Highlight",precondition:j9,kbOpts:{kbExpr:D.editorTextFocus,primary:1089,weight:100}})}}class xOe extends me{constructor(){super({id:"editor.action.wordHighlight.trigger",label:p("wordHighlight.trigger.label","Trigger Symbol Highlight"),alias:"Trigger Symbol Highlight",precondition:void 0,kbOpts:{kbExpr:D.editorTextFocus,primary:0,weight:100}})}run(e,t,i){const n=Fh.get(t);n&&n.restoreViewState(!0)}}pt(Fh.ID,Fh,0);ee(yOe);ee(SOe);ee(xOe);Pv(Q5);class kN extends sn{constructor(e){super(e),this._inSelectionMode=e.inSelectionMode,this._wordNavigationType=e.wordNavigationType}runEditorCommand(e,t,i){if(!t.hasModel())return;const n=Zr(t.getOption(132),t.getOption(131)),o=t.getModel(),r=t.getSelections(),a=r.length>1,l=r.map(c=>{const d=new P(c.positionLineNumber,c.positionColumn),u=this._move(n,o,d,this._wordNavigationType,a);return this._moveTo(c,u,this._inSelectionMode)});if(o.pushStackElement(),t._getViewModel().setCursorStates("moveWordCommand",3,l.map(c=>vt.fromModelSelection(c))),l.length===1){const c=new P(l[0].positionLineNumber,l[0].positionColumn);t.revealPosition(c,0)}}_moveTo(e,t,i){return i?new we(e.selectionStartLineNumber,e.selectionStartColumn,t.lineNumber,t.column):new we(t.lineNumber,t.column,t.lineNumber,t.column)}}class qh extends kN{_move(e,t,i,n,o){return Lt.moveWordLeft(e,t,i,n,o)}}class Kh extends kN{_move(e,t,i,n,o){return Lt.moveWordRight(e,t,i,n)}}class kOe extends qh{constructor(){super({inSelectionMode:!1,wordNavigationType:0,id:"cursorWordStartLeft",precondition:void 0})}}class LOe extends qh{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:"cursorWordEndLeft",precondition:void 0})}}class EOe extends qh{constructor(){var e;super({inSelectionMode:!1,wordNavigationType:1,id:"cursorWordLeft",precondition:void 0,kbOpts:{kbExpr:Z.and(D.textInputFocus,(e=Z.and(rS,WT))==null?void 0:e.negate()),primary:2063,mac:{primary:527},weight:100}})}}class IOe extends qh{constructor(){super({inSelectionMode:!0,wordNavigationType:0,id:"cursorWordStartLeftSelect",precondition:void 0})}}class DOe extends qh{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:"cursorWordEndLeftSelect",precondition:void 0})}}class TOe extends qh{constructor(){var e;super({inSelectionMode:!0,wordNavigationType:1,id:"cursorWordLeftSelect",precondition:void 0,kbOpts:{kbExpr:Z.and(D.textInputFocus,(e=Z.and(rS,WT))==null?void 0:e.negate()),primary:3087,mac:{primary:1551},weight:100}})}}class NOe extends qh{constructor(){super({inSelectionMode:!1,wordNavigationType:3,id:"cursorWordAccessibilityLeft",precondition:void 0})}_move(e,t,i,n,o){return super._move(Zr(xl.wordSeparators.defaultValue,e.intlSegmenterLocales),t,i,n,o)}}class ROe extends qh{constructor(){super({inSelectionMode:!0,wordNavigationType:3,id:"cursorWordAccessibilityLeftSelect",precondition:void 0})}_move(e,t,i,n,o){return super._move(Zr(xl.wordSeparators.defaultValue,e.intlSegmenterLocales),t,i,n,o)}}class AOe extends Kh{constructor(){super({inSelectionMode:!1,wordNavigationType:0,id:"cursorWordStartRight",precondition:void 0})}}class MOe extends Kh{constructor(){var e;super({inSelectionMode:!1,wordNavigationType:2,id:"cursorWordEndRight",precondition:void 0,kbOpts:{kbExpr:Z.and(D.textInputFocus,(e=Z.and(rS,WT))==null?void 0:e.negate()),primary:2065,mac:{primary:529},weight:100}})}}class POe extends Kh{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:"cursorWordRight",precondition:void 0})}}class OOe extends Kh{constructor(){super({inSelectionMode:!0,wordNavigationType:0,id:"cursorWordStartRightSelect",precondition:void 0})}}class FOe extends Kh{constructor(){var e;super({inSelectionMode:!0,wordNavigationType:2,id:"cursorWordEndRightSelect",precondition:void 0,kbOpts:{kbExpr:Z.and(D.textInputFocus,(e=Z.and(rS,WT))==null?void 0:e.negate()),primary:3089,mac:{primary:1553},weight:100}})}}class BOe extends Kh{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:"cursorWordRightSelect",precondition:void 0})}}class WOe extends Kh{constructor(){super({inSelectionMode:!1,wordNavigationType:3,id:"cursorWordAccessibilityRight",precondition:void 0})}_move(e,t,i,n,o){return super._move(Zr(xl.wordSeparators.defaultValue,e.intlSegmenterLocales),t,i,n,o)}}class HOe extends Kh{constructor(){super({inSelectionMode:!0,wordNavigationType:3,id:"cursorWordAccessibilityRightSelect",precondition:void 0})}_move(e,t,i,n,o){return super._move(Zr(xl.wordSeparators.defaultValue,e.intlSegmenterLocales),t,i,n,o)}}class LN extends sn{constructor(e){super(e),this._whitespaceHeuristics=e.whitespaceHeuristics,this._wordNavigationType=e.wordNavigationType}runEditorCommand(e,t,i){const n=e.get(Si);if(!t.hasModel())return;const o=Zr(t.getOption(132),t.getOption(131)),r=t.getModel(),a=t.getSelections(),l=t.getOption(6),c=t.getOption(11),d=n.getLanguageConfiguration(r.getLanguageId()).getAutoClosingPairs(),u=t._getViewModel(),h=a.map(g=>{const f=this._delete({wordSeparators:o,model:r,selection:g,whitespaceHeuristics:this._whitespaceHeuristics,autoClosingDelete:t.getOption(9),autoClosingBrackets:l,autoClosingQuotes:c,autoClosingPairs:d,autoClosedCharacters:u.getCursorAutoClosedCharacters()},this._wordNavigationType);return new Zn(f,"")});t.pushUndoStop(),t.executeCommands(this.id,h),t.pushUndoStop()}}class q9 extends LN{_delete(e,t){const i=Lt.deleteWordLeft(e,t);return i||new L(1,1,1,1)}}class K9 extends LN{_delete(e,t){const i=Lt.deleteWordRight(e,t);if(i)return i;const n=e.model.getLineCount(),o=e.model.getLineMaxColumn(n);return new L(n,o,n,o)}}class VOe extends q9{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:0,id:"deleteWordStartLeft",precondition:D.writable})}}class $Oe extends q9{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:2,id:"deleteWordEndLeft",precondition:D.writable})}}class zOe extends q9{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:0,id:"deleteWordLeft",precondition:D.writable,kbOpts:{kbExpr:D.textInputFocus,primary:2049,mac:{primary:513},weight:100}})}}class UOe extends K9{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:0,id:"deleteWordStartRight",precondition:D.writable})}}class jOe extends K9{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:2,id:"deleteWordEndRight",precondition:D.writable})}}class qOe extends K9{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:2,id:"deleteWordRight",precondition:D.writable,kbOpts:{kbExpr:D.textInputFocus,primary:2068,mac:{primary:532},weight:100}})}}class KOe extends me{constructor(){super({id:"deleteInsideWord",precondition:D.writable,label:p("deleteInsideWord","Delete Word"),alias:"Delete Word"})}run(e,t,i){if(!t.hasModel())return;const n=Zr(t.getOption(132),t.getOption(131)),o=t.getModel(),a=t.getSelections().map(l=>{const c=Lt.deleteInsideWord(n,o,l);return new Zn(c,"")});t.pushUndoStop(),t.executeCommands(this.id,a),t.pushUndoStop()}}ge(new kOe);ge(new LOe);ge(new EOe);ge(new IOe);ge(new DOe);ge(new TOe);ge(new AOe);ge(new MOe);ge(new POe);ge(new OOe);ge(new FOe);ge(new BOe);ge(new NOe);ge(new ROe);ge(new WOe);ge(new HOe);ge(new VOe);ge(new $Oe);ge(new zOe);ge(new UOe);ge(new jOe);ge(new qOe);ee(KOe);class GOe extends LN{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:0,id:"deleteWordPartLeft",precondition:D.writable,kbOpts:{kbExpr:D.textInputFocus,primary:0,mac:{primary:769},weight:100}})}_delete(e,t){const i=YT.deleteWordPartLeft(e);return i||new L(1,1,1,1)}}class ZOe extends LN{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:2,id:"deleteWordPartRight",precondition:D.writable,kbOpts:{kbExpr:D.textInputFocus,primary:0,mac:{primary:788},weight:100}})}_delete(e,t){const i=YT.deleteWordPartRight(e);if(i)return i;const n=e.model.getLineCount(),o=e.model.getLineMaxColumn(n);return new L(n,o,n,o)}}class Eie extends kN{_move(e,t,i,n,o){return YT.moveWordPartLeft(e,t,i,o)}}class YOe extends Eie{constructor(){super({inSelectionMode:!1,wordNavigationType:0,id:"cursorWordPartLeft",precondition:void 0,kbOpts:{kbExpr:D.textInputFocus,primary:0,mac:{primary:783},weight:100}})}}ht.registerCommandAlias("cursorWordPartStartLeft","cursorWordPartLeft");class XOe extends Eie{constructor(){super({inSelectionMode:!0,wordNavigationType:0,id:"cursorWordPartLeftSelect",precondition:void 0,kbOpts:{kbExpr:D.textInputFocus,primary:0,mac:{primary:1807},weight:100}})}}ht.registerCommandAlias("cursorWordPartStartLeftSelect","cursorWordPartLeftSelect");class Iie extends kN{_move(e,t,i,n,o){return YT.moveWordPartRight(e,t,i)}}class QOe extends Iie{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:"cursorWordPartRight",precondition:void 0,kbOpts:{kbExpr:D.textInputFocus,primary:0,mac:{primary:785},weight:100}})}}class JOe extends Iie{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:"cursorWordPartRightSelect",precondition:void 0,kbOpts:{kbExpr:D.textInputFocus,primary:0,mac:{primary:1809},weight:100}})}}ge(new GOe);ge(new ZOe);ge(new YOe);ge(new XOe);ge(new QOe);ge(new JOe);const m6=class m6 extends B{constructor(e){super(),this.editor=e,this._register(this.editor.onDidAttemptReadOnlyEdit(()=>this._onDidAttemptReadOnlyEdit()))}_onDidAttemptReadOnlyEdit(){const e=Wo.get(this.editor);if(e&&this.editor.hasModel()){let t=this.editor.getOptions().get(93);t||(this.editor.isSimpleWidget?t=new ss(p("editor.simple.readonly","Cannot edit in read-only input")):t=new ss(p("editor.readonly","Cannot edit in read-only editor"))),e.showMessage(t,this.editor.getPosition())}}};m6.ID="editor.contrib.readOnlyMessageController";let BE=m6;pt(BE.ID,BE,2);var eFe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},VU=function(s,e){return function(t,i){e(t,i,s)}};let t3=class extends B{constructor(e,t,i){super(),this._textModel=e,this._languageFeaturesService=t,this._outlineModelService=i,this._currentModel=Je(this,void 0);const n=Gn("documentSymbolProvider.onDidChange",this._languageFeaturesService.documentSymbolProvider.onDidChange),o=Gn("_textModel.onDidChangeContent",ce.debounce(r=>this._textModel.onDidChangeContent(r),()=>{},100));this._register(so((r,a)=>I(this,null,function*(){n.read(r),o.read(r);const l=a.add(new B0e),c=yield this._outlineModelService.getOrCreate(this._textModel,l.token);a.isDisposed||this._currentModel.set(c,void 0)})))}getBreadcrumbItems(e,t){const i=this._currentModel.read(t);if(!i)return[];const n=i.asListOfDocumentSymbols().filter(o=>e.contains(o.range.startLineNumber)&&!e.contains(o.range.endLineNumber));return n.sort(aG(Os(o=>o.range.endLineNumber-o.range.startLineNumber,va))),n.map(o=>({name:o.name,kind:o.kind,startLineNumber:o.range.startLineNumber}))}};t3=eFe([VU(1,_e),VU(2,NS)],t3);WL.setBreadcrumbsSourceFactory((s,e)=>e.createInstance(t3,s));const _6=class _6 extends B{constructor(e){super(),this.editor=e,this.widget=null,ml&&(this._register(e.onDidChangeConfiguration(()=>this.update())),this.update())}update(){const e=!this.editor.getOption(92);!this.widget&&e?this.widget=new i3(this.editor):this.widget&&!e&&(this.widget.dispose(),this.widget=null)}dispose(){super.dispose(),this.widget&&(this.widget.dispose(),this.widget=null)}};_6.ID="editor.contrib.iPadShowKeyboard";let WE=_6;const OD=class OD extends B{constructor(e){super(),this.editor=e,this._domNode=document.createElement("textarea"),this._domNode.className="iPadShowKeyboard",this._register(j(this._domNode,"touchstart",t=>{this.editor.focus()})),this._register(j(this._domNode,"focus",t=>{this.editor.focus()})),this.editor.addOverlayWidget(this)}dispose(){this.editor.removeOverlayWidget(this),super.dispose()}getId(){return OD.ID}getDomNode(){return this._domNode}getPosition(){return{preference:1}}};OD.ID="editor.contrib.ShowKeyboardWidget";let i3=OD;pt(WE.ID,WE,3);var tFe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},$U=function(s,e){return function(t,i){e(t,i,s)}},n3,ap;let By=(ap=class extends B{static get(e){return e.getContribution(n3.ID)}constructor(e,t,i){super(),this._editor=e,this._languageService=i,this._widget=null,this._register(this._editor.onDidChangeModel(n=>this.stop())),this._register(this._editor.onDidChangeModelLanguage(n=>this.stop())),this._register(Ii.onDidChange(n=>this.stop())),this._register(this._editor.onKeyUp(n=>n.keyCode===9&&this.stop()))}dispose(){this.stop(),super.dispose()}launch(){this._widget||this._editor.hasModel()&&(this._widget=new s3(this._editor,this._languageService))}stop(){this._widget&&(this._widget.dispose(),this._widget=null)}},n3=ap,ap.ID="editor.contrib.inspectTokens",ap);By=n3=tFe([$U(1,Dr),$U(2,fi)],By);class iFe extends me{constructor(){super({id:"editor.action.inspectTokens",label:d2.inspectTokensAction,alias:"Developer: Inspect Tokens",precondition:void 0})}run(e,t){const i=By.get(t);i==null||i.launch()}}function nFe(s){let e="";for(let t=0,i=s.length;t<i;t++){const n=s.charCodeAt(t);switch(n){case 9:e+="→";break;case 32:e+="·";break;default:e+=String.fromCharCode(n)}}return e}function sFe(s,e){const t=Ii.get(e);if(t)return t;const i=s.encodeLanguageId(e);return{getInitialState:()=>Db,tokenize:(n,o,r)=>y8(e,r),tokenizeEncoded:(n,o,r)=>DT(i,r)}}const FD=class FD extends B{constructor(e,t){super(),this.allowEditorOverflow=!0,this._editor=e,this._languageService=t,this._model=this._editor.getModel(),this._domNode=document.createElement("div"),this._domNode.className="tokens-inspect-widget",this._tokenizationSupport=sFe(this._languageService.languageIdCodec,this._model.getLanguageId()),this._compute(this._editor.getPosition()),this._register(this._editor.onDidChangeCursorPosition(i=>this._compute(this._editor.getPosition()))),this._editor.addContentWidget(this)}dispose(){this._editor.removeContentWidget(this),super.dispose()}getId(){return FD._ID}_compute(e){const t=this._getTokensAtLine(e.lineNumber);let i=0;for(let l=t.tokens1.length-1;l>=0;l--){const c=t.tokens1[l];if(e.column-1>=c.offset){i=l;break}}let n=0;for(let l=t.tokens2.length>>>1;l>=0;l--)if(e.column-1>=t.tokens2[l<<1]){n=l;break}const o=this._model.getLineContent(e.lineNumber);let r="";if(i<t.tokens1.length){const l=t.tokens1[i].offset,c=i+1<t.tokens1.length?t.tokens1[i+1].offset:o.length;r=o.substring(l,c)}Nn(this._domNode,ae("h2.tm-token",void 0,nFe(r),ae("span.tm-token-length",void 0,`${r.length} ${r.length===1?"char":"chars"}`))),J(this._domNode,ae("hr.tokens-inspect-separator",{style:"clear:both"}));const a=(n<<1)+1<t.tokens2.length?this._decodeMetadata(t.tokens2[(n<<1)+1]):null;J(this._domNode,ae("table.tm-metadata-table",void 0,ae("tbody",void 0,ae("tr",void 0,ae("td.tm-metadata-key",void 0,"language"),ae("td.tm-metadata-value",void 0,`${a?a.languageId:"-?-"}`)),ae("tr",void 0,ae("td.tm-metadata-key",void 0,"token type"),ae("td.tm-metadata-value",void 0,`${a?this._tokenTypeToString(a.tokenType):"-?-"}`)),ae("tr",void 0,ae("td.tm-metadata-key",void 0,"font style"),ae("td.tm-metadata-value",void 0,`${a?this._fontStyleToString(a.fontStyle):"-?-"}`)),ae("tr",void 0,ae("td.tm-metadata-key",void 0,"foreground"),ae("td.tm-metadata-value",void 0,`${a?X.Format.CSS.formatHex(a.foreground):"-?-"}`)),ae("tr",void 0,ae("td.tm-metadata-key",void 0,"background"),ae("td.tm-metadata-value",void 0,`${a?X.Format.CSS.formatHex(a.background):"-?-"}`))))),J(this._domNode,ae("hr.tokens-inspect-separator")),i<t.tokens1.length&&J(this._domNode,ae("span.tm-token-type",void 0,t.tokens1[i].type)),this._editor.layoutContentWidget(this)}_decodeMetadata(e){const t=Ii.getColorMap(),i=eo.getLanguageId(e),n=eo.getTokenType(e),o=eo.getFontStyle(e),r=eo.getForeground(e),a=eo.getBackground(e);return{languageId:this._languageService.languageIdCodec.decodeLanguageId(i),tokenType:n,fontStyle:o,foreground:t[r],background:t[a]}}_tokenTypeToString(e){switch(e){case 0:return"Other";case 1:return"Comment";case 2:return"String";case 3:return"RegEx";default:return"??"}}_fontStyleToString(e){let t="";return e&1&&(t+="italic "),e&2&&(t+="bold "),e&4&&(t+="underline "),e&8&&(t+="strikethrough "),t.length===0&&(t="---"),t}_getTokensAtLine(e){const t=this._getStateBeforeLine(e),i=this._tokenizationSupport.tokenize(this._model.getLineContent(e),!0,t),n=this._tokenizationSupport.tokenizeEncoded(this._model.getLineContent(e),!0,t);return{startState:t,tokens1:i.tokens,tokens2:n.tokens,endState:i.endState}}_getStateBeforeLine(e){let t=this._tokenizationSupport.getInitialState();for(let i=1;i<e;i++)t=this._tokenizationSupport.tokenize(this._model.getLineContent(i),!0,t).endState;return t}getDomNode(){return this._domNode}getPosition(){return{position:this._editor.getPosition(),preference:[2,1]}}};FD._ID="editor.contrib.inspectTokensWidget";let s3=FD;pt(By.ID,By,4);ee(iFe);var oFe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},zU=function(s,e){return function(t,i){e(t,i,s)}},Kw,lp;let o3=(lp=class{constructor(e,t){this.quickInputService=e,this.keybindingService=t,this.registry=yi.as(qp.Quickaccess)}provide(e){const t=new G;return t.add(e.onDidAccept(()=>{const[i]=e.selectedItems;i&&this.quickInputService.quickAccess.show(i.prefix,{preserveValue:!0})})),t.add(e.onDidChangeValue(i=>{const n=this.registry.getQuickAccessProvider(i.substr(Kw.PREFIX.length));n&&n.prefix&&n.prefix!==Kw.PREFIX&&this.quickInputService.quickAccess.show(n.prefix,{preserveValue:!0})})),e.items=this.getQuickAccessProviders().filter(i=>i.prefix!==Kw.PREFIX),t}getQuickAccessProviders(){return this.registry.getQuickAccessProviders().sort((t,i)=>t.prefix.localeCompare(i.prefix)).flatMap(t=>this.createPicks(t))}createPicks(e){return e.helpEntries.map(t=>{const i=t.prefix||e.prefix,n=i||"…";return{prefix:i,label:n,keybinding:t.commandId?this.keybindingService.lookupKeybinding(t.commandId):void 0,ariaLabel:p("helpPickAriaLabel","{0}, {1}",n,t.description),description:t.description}})}},Kw=lp,lp.PREFIX="?",lp);o3=Kw=oFe([zU(0,ta),zU(1,It)],o3);yi.as(qp.Quickaccess).registerQuickAccessProvider({ctor:o3,prefix:"",helpEntries:[{description:u2.helpQuickAccessActionLabel}]});class Die{constructor(e){this.options=e,this.rangeHighlightDecorationId=void 0}provide(e,t,i){var r;const n=new G;e.canAcceptInBackground=!!((r=this.options)!=null&&r.canAcceptInBackground),e.matchOnLabel=e.matchOnDescription=e.matchOnDetail=e.sortByLabel=!1;const o=n.add(new gn);return o.value=this.doProvide(e,t,i),n.add(this.onDidActiveTextEditorControlChange(()=>{o.value=void 0,o.value=this.doProvide(e,t)})),n}doProvide(e,t,i){var r;const n=new G,o=this.activeTextEditorControl;if(o&&this.canProvideWithTextEditor(o)){const a={editor:o},l=FJ(o);if(l){let c=(r=o.saveViewState())!=null?r:void 0;n.add(l.onDidChangeCursorPosition(()=>{var d;c=(d=o.saveViewState())!=null?d:void 0})),a.restoreViewState=()=>{c&&o===this.activeTextEditorControl&&o.restoreViewState(c)},n.add(bh(t.onCancellationRequested)(()=>{var d;return(d=a.restoreViewState)==null?void 0:d.call(a)}))}n.add(ke(()=>this.clearDecorations(o))),n.add(this.provideWithTextEditor(a,e,t,i))}else n.add(this.provideWithoutTextEditor(e,t));return n}canProvideWithTextEditor(e){return!0}gotoLocation({editor:e},t){e.setSelection(t.range,"code.jump"),e.revealRangeInCenter(t.range,0),t.preserveFocus||e.focus();const i=e.getModel();i&&"getLineContent"in i&&yc(`${i.getLineContent(t.range.startLineNumber)}`)}getModel(e){var t;return YW(e)?(t=e.getModel())==null?void 0:t.modified:e.getModel()}addDecorations(e,t){e.changeDecorations(i=>{const n=[];this.rangeHighlightDecorationId&&(n.push(this.rangeHighlightDecorationId.overviewRulerDecorationId),n.push(this.rangeHighlightDecorationId.rangeHighlightId),this.rangeHighlightDecorationId=void 0);const o=[{range:t,options:{description:"quick-access-range-highlight",className:"rangeHighlight",isWholeLine:!0}},{range:t,options:{description:"quick-access-range-highlight-overview",overviewRuler:{color:Di(IX),position:_r.Full}}}],[r,a]=i.deltaDecorations(n,o);this.rangeHighlightDecorationId={rangeHighlightId:r,overviewRulerDecorationId:a}})}clearDecorations(e){const t=this.rangeHighlightDecorationId;t&&(e.changeDecorations(i=>{i.deltaDecorations([t.overviewRulerDecorationId,t.rangeHighlightId],[])}),this.rangeHighlightDecorationId=void 0)}}const BD=class BD extends Die{constructor(){super({canAcceptInBackground:!0})}provideWithoutTextEditor(e){const t=p("cannotRunGotoLine","Open a text editor first to go to a line.");return e.items=[{label:t}],e.ariaLabel=t,B.None}provideWithTextEditor(e,t,i){const n=e.editor,o=new G;o.add(t.onDidAccept(l=>{const[c]=t.selectedItems;if(c){if(!this.isValidLineNumber(n,c.lineNumber))return;this.gotoLocation(e,{range:this.toRange(c.lineNumber,c.column),keyMods:t.keyMods,preserveFocus:l.inBackground}),l.inBackground||t.hide()}}));const r=()=>{const l=this.parsePosition(n,t.value.trim().substr(BD.PREFIX.length)),c=this.getPickLabel(n,l.lineNumber,l.column);if(t.items=[{lineNumber:l.lineNumber,column:l.column,label:c}],t.ariaLabel=c,!this.isValidLineNumber(n,l.lineNumber)){this.clearDecorations(n);return}const d=this.toRange(l.lineNumber,l.column);n.revealRangeInCenter(d,0),this.addDecorations(n,d)};r(),o.add(t.onDidChangeValue(()=>r()));const a=FJ(n);return a&&a.getOptions().get(68).renderType===2&&(a.updateOptions({lineNumbers:"on"}),o.add(ke(()=>a.updateOptions({lineNumbers:"relative"})))),o}toRange(e=1,t=1){return{startLineNumber:e,startColumn:t,endLineNumber:e,endColumn:t}}parsePosition(e,t){const i=t.split(/,|:|#/).map(o=>parseInt(o,10)).filter(o=>!isNaN(o)),n=this.lineCount(e)+1;return{lineNumber:i[0]>0?i[0]:n+i[0],column:i[1]}}getPickLabel(e,t,i){if(this.isValidLineNumber(e,t))return this.isValidColumn(e,t,i)?p("gotoLineColumnLabel","Go to line {0} and character {1}.",t,i):p("gotoLineLabel","Go to line {0}.",t);const n=e.getPosition()||{lineNumber:1,column:1},o=this.lineCount(e);return o>1?p("gotoLineLabelEmptyWithLimit","Current Line: {0}, Character: {1}. Type a line number between 1 and {2} to navigate to.",n.lineNumber,n.column,o):p("gotoLineLabelEmpty","Current Line: {0}, Character: {1}. Type a line number to navigate to.",n.lineNumber,n.column)}isValidLineNumber(e,t){return!t||typeof t!="number"?!1:t>0&&t<=this.lineCount(e)}isValidColumn(e,t,i){if(!i||typeof i!="number")return!1;const n=this.getModel(e);if(!n)return!1;const o={lineNumber:t,column:i};return n.validatePosition(o).equals(o)}lineCount(e){var t,i;return(i=(t=this.getModel(e))==null?void 0:t.getLineCount())!=null?i:0}};BD.PREFIX=":";let r3=BD;var rFe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},aFe=function(s,e){return function(t,i){e(t,i,s)}};let Wy=class extends r3{constructor(e){super(),this.editorService=e,this.onDidActiveTextEditorControlChange=ce.None}get activeTextEditorControl(){var e;return(e=this.editorService.getFocusedCodeEditor())!=null?e:void 0}};Wy=rFe([aFe(0,yt)],Wy);var cp;let Tie=(cp=class extends me{constructor(){super({id:cp.ID,label:Mk.gotoLineActionLabel,alias:"Go to Line/Column...",precondition:void 0,kbOpts:{kbExpr:D.focus,primary:2085,mac:{primary:293},weight:100}})}run(e){e.get(ta).quickAccess.show(Wy.PREFIX)}},cp.ID="editor.action.gotoLine",cp);ee(Tie);yi.as(qp.Quickaccess).registerQuickAccessProvider({ctor:Wy,prefix:Wy.PREFIX,helpEntries:[{description:Mk.gotoLineActionLabel,commandId:Tie.ID}]});const Nie=[void 0,[]];function PA(s,e,t=0,i=0){const n=e;return n.values&&n.values.length>1?lFe(s,n.values,t,i):Rie(s,e,t,i)}function lFe(s,e,t,i){let n=0;const o=[];for(const r of e){const[a,l]=Rie(s,r,t,i);if(typeof a!="number")return Nie;n+=a,o.push(...l)}return[n,cFe(o)]}function Rie(s,e,t,i){const n=vp(e.original,e.originalLowercase,t,s,s.toLowerCase(),i,{firstMatchCanBeWeak:!0,boostFullMatch:!0});return n?[n[0],oS(n)]:Nie}function cFe(s){const e=s.sort((n,o)=>n.start-o.start),t=[];let i;for(const n of e)!i||!dFe(i,n)?(i=n,t.push(n)):(i.start=Math.min(i.start,n.start),i.end=Math.max(i.end,n.end));return t}function dFe(s,e){return!(s.end<e.start||e.end<s.start)}function UU(s){return s.startsWith('"')&&s.endsWith('"')}const Aie=" ";function a3(s){typeof s!="string"&&(s="");const e=s.toLowerCase(),{pathNormalized:t,normalized:i,normalizedLowercase:n}=jU(s),o=t.indexOf(cl)>=0,r=UU(s);let a;const l=s.split(Aie);if(l.length>1)for(const c of l){const d=UU(c),{pathNormalized:u,normalized:h,normalizedLowercase:g}=jU(c);h&&(a||(a=[]),a.push({original:c,originalLowercase:c.toLowerCase(),pathNormalized:u,normalized:h,normalizedLowercase:g,expectContiguousMatch:d}))}return{original:s,originalLowercase:e,pathNormalized:t,normalized:i,normalizedLowercase:n,values:a,containsPathSeparator:o,expectContiguousMatch:r}}function jU(s){let e;Qn?e=s.replace(/\//g,cl):e=s.replace(/\\/g,cl);const t=vre(e).replace(/\s|"/g,"");return{pathNormalized:e,normalized:t,normalizedLowercase:t.toLowerCase()}}function qU(s){return Array.isArray(s)?a3(s.map(e=>e.original).join(Aie)):a3(s.original)}var uFe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},KU=function(s,e){return function(t,i){e(t,i,s)}},Wx,sl;let hf=(sl=class extends Die{constructor(e,t,i=Object.create(null)){super(i),this._languageFeaturesService=e,this._outlineModelService=t,this.options=i,this.options.canAcceptInBackground=!0}provideWithoutTextEditor(e){return this.provideLabelPick(e,p("cannotRunGotoSymbolWithoutEditor","To go to a symbol, first open a text editor with symbol information.")),B.None}provideWithTextEditor(e,t,i,n){const o=e.editor,r=this.getModel(o);return r?this._languageFeaturesService.documentSymbolProvider.has(r)?this.doProvideWithEditorSymbols(e,r,t,i,n):this.doProvideWithoutEditorSymbols(e,r,t,i):B.None}doProvideWithoutEditorSymbols(e,t,i,n){const o=new G;return this.provideLabelPick(i,p("cannotRunGotoSymbolWithoutSymbolProvider","The active text editor does not provide symbol information.")),I(this,null,function*(){!(yield this.waitForLanguageSymbolRegistry(t,o))||n.isCancellationRequested||o.add(this.doProvideWithEditorSymbols(e,t,i,n))}),o}provideLabelPick(e,t){e.items=[{label:t,index:0,kind:14}],e.ariaLabel=t}waitForLanguageSymbolRegistry(e,t){return I(this,null,function*(){if(this._languageFeaturesService.documentSymbolProvider.has(e))return!0;const i=new bv,n=t.add(this._languageFeaturesService.documentSymbolProvider.onDidChange(()=>{this._languageFeaturesService.documentSymbolProvider.has(e)&&(n.dispose(),i.complete(!0))}));return t.add(ke(()=>i.complete(!1))),i.p})}doProvideWithEditorSymbols(e,t,i,n,o){var u;const r=e.editor,a=new G;a.add(i.onDidAccept(h=>{var f;const[g]=i.selectedItems;g&&g.range&&(this.gotoLocation(e,{range:g.range.selection,keyMods:i.keyMods,preserveFocus:h.inBackground}),(f=o==null?void 0:o.handleAccept)==null||f.call(o,g),h.inBackground||i.hide())})),a.add(i.onDidTriggerItemButton(({item:h})=>{h&&h.range&&(this.gotoLocation(e,{range:h.range.selection,keyMods:i.keyMods,forceSideBySide:!0}),i.hide())}));const l=this.getDocumentSymbols(t,n);let c;const d=h=>I(this,null,function*(){c==null||c.dispose(!0),i.busy=!1,c=new Ci(n),i.busy=!0;try{const g=a3(i.value.substr(Wx.PREFIX.length).trim()),f=yield this.doGetSymbolPicks(l,g,void 0,c.token,t);if(n.isCancellationRequested)return;if(f.length>0){if(i.items=f,h&&g.original.length===0){const m=C1(f,_=>!!(_.type!=="separator"&&_.range&&L.containsPosition(_.range.decoration,h)));m&&(i.activeItems=[m])}}else g.original.length>0?this.provideLabelPick(i,p("noMatchingSymbolResults","No matching editor symbols")):this.provideLabelPick(i,p("noSymbolResults","No editor symbols"))}finally{n.isCancellationRequested||(i.busy=!1)}});return a.add(i.onDidChangeValue(()=>d(void 0))),d((u=r.getSelection())==null?void 0:u.getPosition()),a.add(i.onDidChangeActive(()=>{const[h]=i.activeItems;h&&h.range&&(r.revealRangeInCenter(h.range.selection,0),this.addDecorations(r,h.range.decoration))})),a}doGetSymbolPicks(e,t,i,n,o){return I(this,null,function*(){var _,b;const r=yield e;if(n.isCancellationRequested)return[];const a=t.original.indexOf(Wx.SCOPE_PREFIX)===0,l=a?1:0;let c,d;t.values&&t.values.length>1?(c=qU(t.values[0]),d=qU(t.values.slice(1))):c=t;let u;const h=(b=(_=this.options)==null?void 0:_.openSideBySideDirection)==null?void 0:b.call(_);h&&(u=[{iconClass:h==="right"?Me.asClassName(oe.splitHorizontal):Me.asClassName(oe.splitVertical),tooltip:h==="right"?p("openToSide","Open to the Side"):p("openToBottom","Open to the Bottom")}]);const g=[];for(let v=0;v<r.length;v++){const w=r[v],C=_re(w.name),y=`$(${Qx.toIcon(w.kind).id}) ${C}`,S=y.length-C.length;let k=w.containerName;i!=null&&i.extraContainerLabel&&(k?k=`${i.extraContainerLabel} • ${k}`:k=i.extraContainerLabel);let E,N,W,H;if(t.original.length>l){let q=!1;if(c!==t&&([E,N]=PA(y,ue($({},t),{values:void 0}),l,S),typeof E=="number"&&(q=!0)),typeof E!="number"&&([E,N]=PA(y,c,l,S),typeof E!="number"))continue;if(!q&&d){if(k&&d.original.length>0&&([W,H]=PA(k,d)),typeof W!="number")continue;typeof E=="number"&&(E+=W)}}const z=w.tags&&w.tags.indexOf(1)>=0;g.push({index:v,kind:w.kind,score:E,label:y,ariaLabel:dre(w.name,w.kind),description:k,highlights:z?void 0:{label:N,description:H},range:{selection:L.collapseToStart(w.selectionRange),decoration:w.range},uri:o.uri,symbolName:C,strikethrough:z,buttons:u})}const f=g.sort((v,w)=>a?this.compareByKindAndScore(v,w):this.compareByScore(v,w));let m=[];if(a){let y=function(){w&&typeof v=="number"&&C>0&&(w.label=up(FA[v]||OA,C))},v,w,C=0;for(const S of f)v!==S.kind?(y(),v=S.kind,C=1,w={type:"separator"},m.push(w)):C++,m.push(S);y()}else f.length>0&&(m=[{label:p("symbols","symbols ({0})",g.length),type:"separator"},...f]);return m})}compareByScore(e,t){if(typeof e.score!="number"&&typeof t.score=="number")return 1;if(typeof e.score=="number"&&typeof t.score!="number")return-1;if(typeof e.score=="number"&&typeof t.score=="number"){if(e.score>t.score)return-1;if(e.score<t.score)return 1}return e.index<t.index?-1:e.index>t.index?1:0}compareByKindAndScore(e,t){const i=FA[e.kind]||OA,n=FA[t.kind]||OA,o=i.localeCompare(n);return o===0?this.compareByScore(e,t):o}getDocumentSymbols(e,t){return I(this,null,function*(){const i=yield this._outlineModelService.getOrCreate(e,t);return t.isCancellationRequested?[]:i.asListOfDocumentSymbols()})}},Wx=sl,sl.PREFIX="@",sl.SCOPE_PREFIX=":",sl.PREFIX_BY_CATEGORY=`${sl.PREFIX}${sl.SCOPE_PREFIX}`,sl);hf=Wx=uFe([KU(0,_e),KU(1,NS)],hf);const OA=p("property","properties ({0})"),FA={5:p("method","methods ({0})"),11:p("function","functions ({0})"),8:p("_constructor","constructors ({0})"),12:p("variable","variables ({0})"),4:p("class","classes ({0})"),22:p("struct","structs ({0})"),23:p("event","events ({0})"),24:p("operator","operators ({0})"),10:p("interface","interfaces ({0})"),2:p("namespace","namespaces ({0})"),3:p("package","packages ({0})"),25:p("typeParameter","type parameters ({0})"),1:p("modules","modules ({0})"),6:p("property","properties ({0})"),9:p("enum","enumerations ({0})"),21:p("enumMember","enumeration members ({0})"),14:p("string","strings ({0})"),0:p("file","files ({0})"),17:p("array","arrays ({0})"),15:p("number","numbers ({0})"),16:p("boolean","booleans ({0})"),18:p("object","objects ({0})"),19:p("key","keys ({0})"),7:p("field","fields ({0})"),13:p("constant","constants ({0})")};var hFe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},BA=function(s,e){return function(t,i){e(t,i,s)}};let l3=class extends hf{constructor(e,t,i){super(t,i),this.editorService=e,this.onDidActiveTextEditorControlChange=ce.None}get activeTextEditorControl(){var e;return(e=this.editorService.getFocusedCodeEditor())!=null?e:void 0}};l3=hFe([BA(0,yt),BA(1,_e),BA(2,NS)],l3);const WD=class WD extends me{constructor(){super({id:WD.ID,label:F1.quickOutlineActionLabel,alias:"Go to Symbol...",precondition:D.hasDocumentSymbolProvider,kbOpts:{kbExpr:D.focus,primary:3117,weight:100},contextMenuOpts:{group:"navigation",order:3}})}run(e){e.get(ta).quickAccess.show(hf.PREFIX,{itemActivation:Ga.NONE})}};WD.ID="editor.action.quickOutline";let HE=WD;ee(HE);yi.as(qp.Quickaccess).registerQuickAccessProvider({ctor:l3,prefix:hf.PREFIX,helpEntries:[{description:F1.quickOutlineActionLabel,prefix:hf.PREFIX,commandId:HE.ID},{description:F1.quickOutlineByCategoryActionLabel,prefix:hf.PREFIX_BY_CATEGORY}]});function gFe(s){var t;const e=new Map;for(const i of s)e.set(i,((t=e.get(i))!=null?t:0)+1);return e}class PC{constructor(){this.chunkCount=0,this.chunkOccurrences=new Map,this.documents=new Map}calculateScores(e,t){const i=this.computeEmbedding(e),n=new Map,o=[];for(const[r,a]of this.documents){if(t.isCancellationRequested)return[];for(const l of a.chunks){const c=this.computeSimilarityScore(l,i,n);c>0&&o.push({key:r,score:c})}}return o}static termFrequencies(e){return gFe(PC.splitTerms(e))}static*splitTerms(e){const t=i=>i.toLowerCase();for(const[i]of e.matchAll(new RegExp("\\b\\p{Letter}[\\p{Letter}\\d]{2,}\\b","gu"))){yield t(i);const n=i.replace(/([a-z])([A-Z])/g,"$1 $2").split(/\s+/g);if(n.length>1)for(const o of n)o.length>2&&new RegExp("\\p{Letter}{3,}","gu").test(o)&&(yield t(o))}}updateDocuments(e){var t;for(const{key:i}of e)this.deleteDocument(i);for(const i of e){const n=[];for(const o of i.textChunks){const r=PC.termFrequencies(o);for(const a of r.keys())this.chunkOccurrences.set(a,((t=this.chunkOccurrences.get(a))!=null?t:0)+1);n.push({text:o,tf:r})}this.chunkCount+=n.length,this.documents.set(i.key,{chunks:n})}return this}deleteDocument(e){const t=this.documents.get(e);if(t){this.documents.delete(e),this.chunkCount-=t.chunks.length;for(const i of t.chunks)for(const n of i.tf.keys()){const o=this.chunkOccurrences.get(n);if(typeof o=="number"){const r=o-1;r<=0?this.chunkOccurrences.delete(n):this.chunkOccurrences.set(n,r)}}}}computeSimilarityScore(e,t,i){let n=0;for(const[o,r]of Object.entries(t)){const a=e.tf.get(o);if(!a)continue;let l=i.get(o);typeof l!="number"&&(l=this.computeIdf(o),i.set(o,l));const c=a*l;n+=c*r}return n}computeEmbedding(e){const t=PC.termFrequencies(e);return this.computeTfidf(t)}computeIdf(e){var i;const t=(i=this.chunkOccurrences.get(e))!=null?i:0;return t>0?Math.log((this.chunkCount+1)/t):0}computeTfidf(e){const t=Object.create(null);for(const[i,n]of e){const o=this.computeIdf(i);o>0&&(t[i]=n*o)}return t}}function fFe(s){var i,n;const e=s.slice(0);e.sort((o,r)=>r.score-o.score);const t=(n=(i=e[0])==null?void 0:i.score)!=null?n:0;if(t>0)for(const o of e)o.score/=t;return e}var h_;(function(s){s[s.NO_ACTION=0]="NO_ACTION",s[s.CLOSE_PICKER=1]="CLOSE_PICKER",s[s.REFRESH_PICKER=2]="REFRESH_PICKER",s[s.REMOVE_ITEM=3]="REMOVE_ITEM"})(h_||(h_={}));function WA(s){return Array.isArray(s.items)}function GU(s){const e=s;return!!e.picks&&e.additionalPicks instanceof Promise}class pFe extends B{constructor(e,t){super(),this.prefix=e,this.options=t}provide(e,t,i){var c;const n=new G;e.canAcceptInBackground=!!((c=this.options)!=null&&c.canAcceptInBackground),e.matchOnLabel=e.matchOnDescription=e.matchOnDetail=e.sortByLabel=!1;let o;const r=n.add(new gn),a=()=>I(this,null,function*(){var _;const d=r.value=new G;o==null||o.dispose(!0),e.busy=!1,o=new Ci(t);const u=o.token;let h=e.value.substring(this.prefix.length);(_=this.options)!=null&&_.shouldSkipTrimPickFilter||(h=h.trim());const g=this._getPicks(h,d,u,i),f=(b,v)=>{var y;let w,C;if(WA(b)?(w=b.items,C=b.active):w=b,w.length===0){if(v)return!1;(h.length>0||e.hideInput)&&((y=this.options)!=null&&y.noResultsPick)&&(l1(this.options.noResultsPick)?w=[this.options.noResultsPick(h)]:w=[this.options.noResultsPick])}return e.items=w,C&&(e.activeItems=[C]),!0},m=b=>I(this,null,function*(){let v=!1,w=!1;yield Promise.all([I(this,null,function*(){typeof b.mergeDelay=="number"&&(yield Bd(b.mergeDelay),u.isCancellationRequested)||w||(v=f(b.picks,!0))}),I(this,null,function*(){e.busy=!0;try{const C=yield b.additionalPicks;if(u.isCancellationRequested)return;let y,S;WA(b.picks)?(y=b.picks.items,S=b.picks.active):y=b.picks;let k,E;if(WA(C)?(k=C.items,E=C.active):k=C,k.length>0||!v){let N;if(!S&&!E){const W=e.activeItems[0];W&&y.indexOf(W)!==-1&&(N=W)}f({items:[...y,...k],active:S||E||N})}}finally{u.isCancellationRequested||(e.busy=!1),w=!0}})])});if(g!==null)if(GU(g))yield m(g);else if(!(g instanceof Promise))f(g);else{e.busy=!0;try{const b=yield g;if(u.isCancellationRequested)return;GU(b)?yield m(b):f(b)}finally{u.isCancellationRequested||(e.busy=!1)}}});n.add(e.onDidChangeValue(()=>a())),a(),n.add(e.onDidAccept(d=>{var h;if(i!=null&&i.handleAccept){d.inBackground||e.hide(),(h=i.handleAccept)==null||h.call(i,e.activeItems[0]);return}const[u]=e.selectedItems;typeof(u==null?void 0:u.accept)=="function"&&(d.inBackground||e.hide(),u.accept(e.keyMods,d))}));const l=(d,u)=>I(this,null,function*(){var g,f;if(typeof u.trigger!="function")return;const h=(f=(g=u.buttons)==null?void 0:g.indexOf(d))!=null?f:-1;if(h>=0){const m=u.trigger(h,e.keyMods),_=typeof m=="number"?m:yield m;if(t.isCancellationRequested)return;switch(_){case h_.NO_ACTION:break;case h_.CLOSE_PICKER:e.hide();break;case h_.REFRESH_PICKER:a();break;case h_.REMOVE_ITEM:{const b=e.items.indexOf(u);if(b!==-1){const v=e.items.slice(),w=v.splice(b,1),C=e.activeItems.filter(S=>S!==w[0]),y=e.keepScrollPosition;e.keepScrollPosition=!0,e.items=v,C&&(e.activeItems=C),e.keepScrollPosition=y}break}}}});return n.add(e.onDidTriggerItemButton(({button:d,item:u})=>l(d,u))),n.add(e.onDidTriggerSeparatorButton(({button:d,separator:u})=>l(d,u))),n}}var Mie=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Tu=function(s,e){return function(t,i){e(t,i,s)}},xg,Ji,dc;let c3=(dc=class extends pFe{constructor(e,t,i,n,o,r){super(xg.PREFIX,e),this.instantiationService=t,this.keybindingService=i,this.commandService=n,this.telemetryService=o,this.dialogService=r,this.commandsHistory=this._register(this.instantiationService.createInstance(d3)),this.options=e}_getPicks(e,t,i,n){return I(this,null,function*(){var g,f,m,_;const o=yield this.getCommandPicks(i);if(i.isCancellationRequested)return[];const r=bh(()=>{const b=new PC;b.updateDocuments(o.map(w=>({key:w.commandId,textChunks:[this.getTfIdfChunk(w)]})));const v=b.calculateScores(e,i);return fFe(v).filter(w=>w.score>xg.TFIDF_THRESHOLD).slice(0,xg.TFIDF_MAX_RESULTS)}),a=[];for(const b of o){const v=(g=xg.WORD_FILTER(e,b.label))!=null?g:void 0,w=b.commandAlias&&(f=xg.WORD_FILTER(e,b.commandAlias))!=null?f:void 0;if(v||w)b.highlights={label:v,detail:this.options.showAlias?w:void 0},a.push(b);else if(e===b.commandId)a.push(b);else if(e.length>=3){const C=r();if(i.isCancellationRequested)return[];const y=C.find(S=>S.key===b.commandId);y&&(b.tfIdfScore=y.score,a.push(b))}}const l=new Map;for(const b of a){const v=l.get(b.label);v?(b.description=b.commandId,v.description=v.commandId):l.set(b.label,b)}a.sort((b,v)=>{if(b.tfIdfScore&&v.tfIdfScore)return b.tfIdfScore===v.tfIdfScore?b.label.localeCompare(v.label):v.tfIdfScore-b.tfIdfScore;if(b.tfIdfScore)return 1;if(v.tfIdfScore)return-1;const w=this.commandsHistory.peek(b.commandId),C=this.commandsHistory.peek(v.commandId);if(w&&C)return w>C?-1:1;if(w)return-1;if(C)return 1;if(this.options.suggestedCommandIds){const y=this.options.suggestedCommandIds.has(b.commandId),S=this.options.suggestedCommandIds.has(v.commandId);if(y&&S)return 0;if(y)return-1;if(S)return 1}return b.label.localeCompare(v.label)});const c=[];let d=!1,u=!0,h=!!this.options.suggestedCommandIds;for(let b=0;b<a.length;b++){const v=a[b];b===0&&this.commandsHistory.peek(v.commandId)&&(c.push({type:"separator",label:p("recentlyUsed","recently used")}),d=!0),u&&v.tfIdfScore!==void 0&&(c.push({type:"separator",label:p("suggested","similar commands")}),u=!1),h&&v.tfIdfScore===void 0&&!this.commandsHistory.peek(v.commandId)&&((m=this.options.suggestedCommandIds)!=null&&m.has(v.commandId))&&(c.push({type:"separator",label:p("commonlyUsed","commonly used")}),d=!0,h=!1),d&&v.tfIdfScore===void 0&&!this.commandsHistory.peek(v.commandId)&&!((_=this.options.suggestedCommandIds)!=null&&_.has(v.commandId))&&(c.push({type:"separator",label:p("morecCommands","other commands")}),d=!1),c.push(this.toCommandPick(v,n))}return this.hasAdditionalCommandPicks(e,i)?{picks:c,additionalPicks:I(this,null,function*(){var w;const b=yield this.getAdditionalCommandPicks(o,a,e,i);if(i.isCancellationRequested)return[];const v=b.map(C=>this.toCommandPick(C,n));return u&&((w=v[0])==null?void 0:w.type)!=="separator"&&v.unshift({type:"separator",label:p("suggested","similar commands")}),v})}:c})}toCommandPick(e,t){if(e.type==="separator")return e;const i=this.keybindingService.lookupKeybinding(e.commandId),n=i?p("commandPickAriaLabelWithKeybinding","{0}, {1}",e.label,i.getAriaLabel()):e.label;return ue($({},e),{ariaLabel:n,detail:this.options.showAlias&&e.commandAlias!==e.label?e.commandAlias:void 0,keybinding:i,accept:()=>I(this,null,function*(){var o,r;this.commandsHistory.push(e.commandId),this.telemetryService.publicLog2("workbenchActionExecuted",{id:e.commandId,from:(o=t==null?void 0:t.from)!=null?o:"quick open"});try{(r=e.args)!=null&&r.length?yield this.commandService.executeCommand(e.commandId,...e.args):yield this.commandService.executeCommand(e.commandId)}catch(a){Jr(a)||this.dialogService.error(p("canNotRun","Command '{0}' resulted in an error",e.label),KL(a))}})})}getTfIdfChunk({label:e,commandAlias:t,commandDescription:i}){let n=e;return t&&t!==e&&(n+=` - ${t}`),i&&i.value!==e&&(n+=` - ${i.value===i.original?i.value:`${i.value} (${i.original})`}`),n}},xg=dc,dc.PREFIX=">",dc.TFIDF_THRESHOLD=.5,dc.TFIDF_MAX_RESULTS=5,dc.WORD_FILTER=g8(A1,Dge,VY),dc);c3=xg=Mie([Tu(1,Le),Tu(2,It),Tu(3,Gt),Tu(4,ls),Tu(5,iS)],c3);var ol;let d3=(ol=class extends B{constructor(e,t,i){super(),this.storageService=e,this.configurationService=t,this.logService=i,this.configuredCommandsHistoryLength=0,this.updateConfiguration(),this.load(),this.registerListeners()}registerListeners(){this._register(this.configurationService.onDidChangeConfiguration(e=>this.updateConfiguration(e))),this._register(this.storageService.onWillSaveState(e=>{e.reason===V1.SHUTDOWN&&this.saveState()}))}updateConfiguration(e){e&&!e.affectsConfiguration("workbench.commandPalette.history")||(this.configuredCommandsHistoryLength=Ji.getConfiguredCommandHistoryLength(this.configurationService),Ji.cache&&Ji.cache.limit!==this.configuredCommandsHistoryLength&&(Ji.cache.limit=this.configuredCommandsHistoryLength,Ji.hasChanges=!0))}load(){const e=this.storageService.get(Ji.PREF_KEY_CACHE,0);let t;if(e)try{t=JSON.parse(e)}catch(n){this.logService.error(`[CommandsHistory] invalid data: ${n}`)}const i=Ji.cache=new Tc(this.configuredCommandsHistoryLength,1);if(t){let n;t.usesLRU?n=t.entries:n=t.entries.sort((o,r)=>o.value-r.value),n.forEach(o=>i.set(o.key,o.value))}Ji.counter=this.storageService.getNumber(Ji.PREF_KEY_COUNTER,0,Ji.counter)}push(e){Ji.cache&&(Ji.cache.set(e,Ji.counter++),Ji.hasChanges=!0)}peek(e){var t;return(t=Ji.cache)==null?void 0:t.peek(e)}saveState(){if(!Ji.cache||!Ji.hasChanges)return;const e={usesLRU:!0,entries:[]};Ji.cache.forEach((t,i)=>e.entries.push({key:i,value:t})),this.storageService.store(Ji.PREF_KEY_CACHE,JSON.stringify(e),0,0),this.storageService.store(Ji.PREF_KEY_COUNTER,Ji.counter,0,0),Ji.hasChanges=!1}static getConfiguredCommandHistoryLength(e){var n,o;const i=(o=(n=e.getValue().workbench)==null?void 0:n.commandPalette)==null?void 0:o.history;return typeof i=="number"?i:Ji.DEFAULT_COMMANDS_HISTORY_LENGTH}},Ji=ol,ol.DEFAULT_COMMANDS_HISTORY_LENGTH=50,ol.PREF_KEY_CACHE="commandPalette.mru.cache",ol.PREF_KEY_COUNTER="commandPalette.mru.counter",ol.counter=1,ol.hasChanges=!1,ol);d3=Ji=Mie([Tu(0,Na),Tu(1,et),Tu(2,Jn)],d3);class mFe extends c3{constructor(e,t,i,n,o,r){super(e,t,i,n,o,r)}getCodeEditorCommandPicks(){var i;const e=this.activeTextEditorControl;if(!e)return[];const t=[];for(const n of e.getSupportedActions()){let o;(i=n.metadata)!=null&&i.description&&(Eme(n.metadata.description)?o=n.metadata.description:o={original:n.metadata.description,value:n.metadata.description}),t.push({commandId:n.id,commandAlias:n.alias,commandDescription:o,label:v8(n.label)||n.id})}return t}}var _Fe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Tm=function(s,e){return function(t,i){e(t,i,s)}};let Hy=class extends mFe{get activeTextEditorControl(){var e;return(e=this.codeEditorService.getFocusedCodeEditor())!=null?e:void 0}constructor(e,t,i,n,o,r){super({showAlias:!1},e,i,n,o,r),this.codeEditorService=t}getCommandPicks(){return I(this,null,function*(){return this.getCodeEditorCommandPicks()})}hasAdditionalCommandPicks(){return!1}getAdditionalCommandPicks(){return I(this,null,function*(){return[]})}};Hy=_Fe([Tm(0,Le),Tm(1,yt),Tm(2,It),Tm(3,Gt),Tm(4,ls),Tm(5,iS)],Hy);const HD=class HD extends me{constructor(){super({id:HD.ID,label:Pk.quickCommandActionLabel,alias:"Command Palette",precondition:void 0,kbOpts:{kbExpr:D.focus,primary:59,weight:100},contextMenuOpts:{group:"z_commands",order:1}})}run(e){e.get(ta).quickAccess.show(Hy.PREFIX)}};HD.ID="editor.action.quickCommand";let VE=HD;ee(VE);yi.as(qp.Quickaccess).registerQuickAccessProvider({ctor:Hy,prefix:Hy.PREFIX,helpEntries:[{description:Pk.quickCommandHelp,commandId:VE.ID}]});var bFe=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Nm=function(s,e){return function(t,i){e(t,i,s)}};let u3=class extends Ap{constructor(e,t,i,n,o,r,a){super(!0,e,t,i,n,o,r,a)}};u3=bFe([Nm(1,Pe),Nm(2,yt),Nm(3,$i),Nm(4,Le),Nm(5,Na),Nm(6,et)],u3);pt(Ap.ID,u3,4);class vFe extends me{constructor(){super({id:"editor.action.toggleHighContrast",label:g2.toggleHighContrast,alias:"Toggle High Contrast Theme",precondition:void 0}),this._originalThemeName=null}run(e,t){const i=e.get(Dr),n=i.getColorTheme();hl(n.type)?(i.setTheme(this._originalThemeName||(yb(n.type)?K_:hd)),this._originalThemeName=null):(i.setTheme(yb(n.type)?af:lf),this._originalThemeName=n.themeName)}}ee(vFe);/*!-----------------------------------------------------------------------------
751
751
  * Copyright (c) Microsoft Corporation. All rights reserved.
752
752
  * Version: 0.52.2(404545bded1df6ffa41ea0af4e8ddb219018c6c1)
753
753
  * Released under the MIT license