offsite 0.0.60 → 0.0.62
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/apps/client/dist/assets/{editor-dialog-DY6qlmWC.js → editor-dialog-B7QW5wuQ.js} +1 -1
- package/apps/client/dist/assets/{index-CFwj-82W.js → index-C6uF49Ez.js} +3 -3
- package/apps/client/dist/index.html +1 -1
- package/apps/client/dist/sw.js +1 -1
- package/apps/server/dist/main.mjs +1294 -153
- package/apps/server/dist/main.mjs.map +1 -1
- package/package.json +5 -2
|
@@ -49,4 +49,4 @@ import{i as e}from"./rolldown-runtime-COiEfhsA.js";import{A as t,B as n,D as r,F
|
|
|
49
49
|
`);return new e(t,n,i,l,a,o,u)}constructor(e,t,n,r,i,a,o){this._editor=e,this.findController=t,this.isDisconnectedFromFindController=n,this.searchText=r,this.wholeWord=i,this.matchCase=a,this.currentMatch=o}addSelectionToNextFindMatch(){if(!this._editor.hasModel())return null;let e=this._getNextMatch();return e?new Az(this._editor.getSelections().concat(e),e,0):null}moveSelectionToNextFindMatch(){if(!this._editor.hasModel())return null;let e=this._getNextMatch();if(!e)return null;let t=this._editor.getSelections();return new Az(t.slice(0,t.length-1).concat(e),e,0)}_getNextMatch(){if(!this._editor.hasModel())return null;if(this.currentMatch){let e=this.currentMatch;return this.currentMatch=null,e}this.findController.highlightFindOptions();let e=this._editor.getSelections(),t=e[e.length-1],n=this._editor.getModel().findNextMatch(this.searchText,t.getEndPosition(),!1,this.matchCase,this.wholeWord?this._editor.getOption(148):null,!1);return n?new q(n.range.startLineNumber,n.range.startColumn,n.range.endLineNumber,n.range.endColumn):null}addSelectionToPreviousFindMatch(){if(!this._editor.hasModel())return null;let e=this._getPreviousMatch();return e?new Az(this._editor.getSelections().concat(e),e,0):null}moveSelectionToPreviousFindMatch(){if(!this._editor.hasModel())return null;let e=this._getPreviousMatch();if(!e)return null;let t=this._editor.getSelections();return new Az(t.slice(0,t.length-1).concat(e),e,0)}_getPreviousMatch(){if(!this._editor.hasModel())return null;if(this.currentMatch){let e=this.currentMatch;return this.currentMatch=null,e}this.findController.highlightFindOptions();let e=this._editor.getSelections(),t=e[e.length-1],n=this._editor.getModel().findPreviousMatch(this.searchText,t.getStartPosition(),!1,this.matchCase,this.wholeWord?this._editor.getOption(148):null,!1);return n?new q(n.range.startLineNumber,n.range.startColumn,n.range.endLineNumber,n.range.endColumn):null}selectAll(e){if(!this._editor.hasModel())return[];this.findController.highlightFindOptions();let t=this._editor.getModel();return e?t.findMatches(this.searchText,e,!1,this.matchCase,this.wholeWord?this._editor.getOption(148):null,!1,1073741824):t.findMatches(this.searchText,!0,!1,this.matchCase,this.wholeWord?this._editor.getOption(148):null,!1,1073741824)}},Mz=class e extends G{static{this.ID=`editor.contrib.multiCursorController`}static get(t){return t.getContribution(e.ID)}constructor(e){super(),this._sessionDispose=this._register(new F),this._editor=e,this._ignoreSelectionChange=!1,this._session=null}dispose(){this._endSession(),super.dispose()}_beginSessionIfNeeded(e){if(!this._session){let t=jz.create(this._editor,e);if(!t)return;this._session=t;let n={searchString:this._session.searchText};this._session.isDisconnectedFromFindController&&(n.wholeWordOverride=1,n.matchCaseOverride=1,n.isRegexOverride=2),e.getState().change(n,!1),this._sessionDispose.add(this._editor.onDidChangeCursorSelection(e=>{this._ignoreSelectionChange||this._endSession()})),this._sessionDispose.add(this._editor.onDidBlurEditorText(()=>{this._endSession()})),this._sessionDispose.add(e.getState().onFindReplaceStateChange(e=>{(e.matchCase||e.wholeWord)&&this._endSession()}))}}_endSession(){this._sessionDispose.clear(),this._session&&this._session.isDisconnectedFromFindController&&this._session.findController.getState().change({wholeWordOverride:0,matchCaseOverride:0,isRegexOverride:0},!1),this._session=null}_setSelections(e){this._ignoreSelectionChange=!0,this._editor.setSelections(e),this._ignoreSelectionChange=!1}_expandEmptyToWord(e,t){if(!t.isEmpty())return t;let n=this._editor.getConfiguredWordAtPosition(t.getStartPosition());return n?new q(t.startLineNumber,n.startColumn,t.startLineNumber,n.endColumn):t}_applySessionResult(e){e&&(this._setSelections(e.selections),e.revealRange&&this._editor.revealRangeInCenterIfOutsideViewport(e.revealRange,e.revealScrollType))}getSession(e){return this._session}addSelectionToNextFindMatch(e){if(this._editor.hasModel()){if(!this._session){let t=this._editor.getSelections();if(t.length>1){let n=e.getState().matchCase;if(!Hz(this._editor.getModel(),t,n)){let e=this._editor.getModel(),n=[];for(let r=0,i=t.length;r<i;r++)n[r]=this._expandEmptyToWord(e,t[r]);this._editor.setSelections(n);return}}}this._beginSessionIfNeeded(e),this._session&&this._applySessionResult(this._session.addSelectionToNextFindMatch())}}addSelectionToPreviousFindMatch(e){this._beginSessionIfNeeded(e),this._session&&this._applySessionResult(this._session.addSelectionToPreviousFindMatch())}moveSelectionToNextFindMatch(e){this._beginSessionIfNeeded(e),this._session&&this._applySessionResult(this._session.moveSelectionToNextFindMatch())}moveSelectionToPreviousFindMatch(e){this._beginSessionIfNeeded(e),this._session&&this._applySessionResult(this._session.moveSelectionToPreviousFindMatch())}selectAll(e){if(!this._editor.hasModel())return;let t=null,n=e.getState();if(n.isRevealed&&n.searchString.length>0&&n.isRegex){let e=this._editor.getModel();t=n.searchScope?e.findMatches(n.searchString,n.searchScope,n.isRegex,n.matchCase,n.wholeWord?this._editor.getOption(148):null,!1,1073741824):e.findMatches(n.searchString,!0,n.isRegex,n.matchCase,n.wholeWord?this._editor.getOption(148):null,!1,1073741824)}else{if(this._beginSessionIfNeeded(e),!this._session)return;t=this._session.selectAll(n.searchScope)}if(t.length>0){let e=this._editor.getSelection();for(let n=0,r=t.length;n<r;n++){let r=t[n];if(r.range.intersectRanges(e)){t[n]=t[0],t[0]=r;break}}this._setSelections(t.map(e=>new q(e.range.startLineNumber,e.range.startColumn,e.range.endLineNumber,e.range.endColumn)))}}},Nz=class extends W{run(e,t){let n=Mz.get(t);if(!n)return;let r=t._getViewModel();if(r){let i=r.getCursorStates(),a=Ow.get(t);if(a)this._run(n,a);else{let r=e.get(U).createInstance(Ow,t);this._run(n,r),r.dispose()}wz(i,r.getCursorStates())}}},Pz=class extends Nz{constructor(){super({id:`editor.action.addSelectionToNextFindMatch`,label:L(1369,`Add Selection to Next Find Match`),precondition:void 0,kbOpts:{kbExpr:E.focus,primary:2082,weight:100},menuOpts:{menuId:D.MenubarSelectionMenu,group:`3_multi`,title:x(1359,`Add &&Next Occurrence`),order:5}})}_run(e,t){e.addSelectionToNextFindMatch(t)}},Fz=class extends Nz{constructor(){super({id:`editor.action.addSelectionToPreviousFindMatch`,label:L(1370,`Add Selection to Previous Find Match`),precondition:void 0,menuOpts:{menuId:D.MenubarSelectionMenu,group:`3_multi`,title:x(1360,`Add P&&revious Occurrence`),order:6}})}_run(e,t){e.addSelectionToPreviousFindMatch(t)}},Iz=class extends Nz{constructor(){super({id:`editor.action.moveSelectionToNextFindMatch`,label:L(1371,`Move Last Selection to Next Find Match`),precondition:void 0,kbOpts:{kbExpr:E.focus,primary:Or(2089,2082),weight:100}})}_run(e,t){e.moveSelectionToNextFindMatch(t)}},Lz=class extends Nz{constructor(){super({id:`editor.action.moveSelectionToPreviousFindMatch`,label:L(1372,`Move Last Selection to Previous Find Match`),precondition:void 0})}_run(e,t){e.moveSelectionToPreviousFindMatch(t)}},Rz=class extends Nz{constructor(){super({id:`editor.action.selectHighlights`,label:L(1373,`Select All Occurrences of Find Match`),precondition:void 0,kbOpts:{kbExpr:E.focus,primary:3114,weight:100},menuOpts:{menuId:D.MenubarSelectionMenu,group:`3_multi`,title:x(1361,`Select All &&Occurrences`),order:7}})}_run(e,t){e.selectAll(t)}},zz=class extends Nz{constructor(){super({id:`editor.action.changeAll`,label:L(1374,`Change All Occurrences`),precondition:w.and(E.writable,E.editorTextFocus),kbOpts:{kbExpr:E.editorTextFocus,primary:2108,weight:100},contextMenuOpts:{group:`1_modification`,order:1.2}})}_run(e,t){e.selectAll(t)}},Bz=class{constructor(e,t,n,r,i){this._model=e,this._searchText=t,this._matchCase=n,this._wordSeparators=r,this._cachedFindMatches=null,this._modelVersionId=this._model.getVersionId(),i&&this._model===i._model&&this._searchText===i._searchText&&this._matchCase===i._matchCase&&this._wordSeparators===i._wordSeparators&&this._modelVersionId===i._modelVersionId&&(this._cachedFindMatches=i._cachedFindMatches)}findMatches(){return this._cachedFindMatches===null&&(this._cachedFindMatches=this._model.findMatches(this._searchText,!0,!1,this._matchCase,this._wordSeparators,!1).map(e=>e.range),this._cachedFindMatches.sort(C.compareRangesUsingStarts)),this._cachedFindMatches}},Vz=class extends G{static{Cz=this}static{this.ID=`editor.contrib.selectionHighlighter`}constructor(e,t){super(),this._languageFeaturesService=t,this.editor=e,this._isEnabled=e.getOption(122),this._isEnabledMultiline=e.getOption(124),this._maxLength=e.getOption(123),this._decorations=e.createDecorationsCollection(),this.updateSoon=this._register(new Pr(()=>this._update(),300)),this.state=null,this._register(e.onDidChangeConfiguration(t=>{this._isEnabled=e.getOption(122),this._isEnabledMultiline=e.getOption(124),this._maxLength=e.getOption(123)})),this._register(e.onDidChangeCursorSelection(e=>{this._isEnabled&&(e.selection.isEmpty()?e.reason===3?(this.state&&this._setState(null),this.updateSoon.schedule()):this._setState(null):this._update())})),this._register(e.onDidChangeModel(e=>{this._setState(null)})),this._register(e.onDidChangeModelContent(e=>{this._isEnabled&&this.updateSoon.schedule()}));let n=Ow.get(e);n&&this._register(n.getState().onFindReplaceStateChange(e=>{this._update()})),this.updateSoon.schedule()}_update(){this._setState(Cz._createState(this.state,this._isEnabled,this._isEnabledMultiline,this._maxLength,this.editor))}static _createState(e,t,n,r,i){if(!t||!i.hasModel())return null;if(!n){let e=i.getSelection();if(e.startLineNumber!==e.endLineNumber)return null}let a=Mz.get(i);if(!a)return null;let o=Ow.get(i);if(!o)return null;let s=a.getSession(o);if(!s){let e=i.getSelections();if(e.length>1){let t=o.getState().matchCase;if(!Hz(i.getModel(),e,t))return null}s=jz.create(i,o)}if(!s||s.currentMatch||/^[ \t]+$/.test(s.searchText)||r>0&&s.searchText.length>r)return null;let c=o.getState(),l=c.matchCase;if(c.isRevealed){let e=c.searchString;l||(e=e.toLowerCase());let t=s.searchText;if(l||(t=t.toLowerCase()),e===t&&s.matchCase===c.matchCase&&s.wholeWord===c.wholeWord&&!c.isRegex)return null}return new Bz(i.getModel(),s.searchText,s.matchCase,s.wholeWord?i.getOption(148):null,e)}_setState(e){if(this.state=e,!this.state){this._decorations.clear();return}if(!this.editor.hasModel())return;let t=this.editor.getModel();if(t.isTooLargeForTokenization())return;let n=this.state.findMatches(),r=this.editor.getSelections();r.sort(C.compareRangesUsingStarts);let i=[];for(let e=0,t=0,a=n.length,o=r.length;e<a;){let a=n[e];if(t>=o)i.push(a),e++;else{let n=C.compareRangesUsingStarts(a,r[t]);n<0?((r[t].isEmpty()||!C.areIntersecting(a,r[t]))&&i.push(a),e++):(n>0||e++,t++)}}let a=this.editor.getOption(90)!==`off`,o=this._languageFeaturesService.documentHighlightProvider.has(t)&&a,s=i.map(e=>({range:e,options:bz(o)}));this._decorations.set(s)}dispose(){this._setState(null),super.dispose()}};Vz=Cz=xz([Sz(1,R)],Vz);function Hz(e,t,n){let r=Uz(e,t[0],!n);for(let i=1,a=t.length;i<a;i++){let a=t[i];if(a.isEmpty()||r!==Uz(e,a,!n))return!1}return!0}function Uz(e,t,n){let r=e.getValueInRange(t);return n?r.toLowerCase():r}var Wz=class extends W{constructor(){super({id:`editor.action.focusNextCursor`,label:L(1375,`Focus Next Cursor`),metadata:{description:x(1362,`Focuses the next cursor`),args:[]},precondition:void 0})}run(e,t,n){if(!t.hasModel())return;let r=t._getViewModel();if(r.cursorConfig.readOnly)return;r.model.pushStackElement();let i=Array.from(r.getCursorStates()),a=i.shift();a&&(i.push(a),r.setCursorStates(n.source,3,i),r.revealPrimaryCursor(n.source,!0),wz(i,r.getCursorStates()))}},Gz=class extends W{constructor(){super({id:`editor.action.focusPreviousCursor`,label:L(1376,`Focus Previous Cursor`),metadata:{description:x(1363,`Focuses the previous cursor`),args:[]},precondition:void 0})}run(e,t,n){if(!t.hasModel())return;let r=t._getViewModel();if(r.cursorConfig.readOnly)return;r.model.pushStackElement();let i=Array.from(r.getCursorStates()),a=i.pop();a&&(i.unshift(a),r.setCursorStates(n.source,3,i),r.revealPrimaryCursor(n.source,!0),wz(i,r.getCursorStates()))}};Ps(Mz.ID,Mz,4),Ps(Vz.ID,Vz,1),z(Tz),z(Ez),z(Dz),z(Pz),z(Fz),z(Iz),z(Lz),z(Rz),z(zz),z(Oz),z(kz),z(Wz),z(Gz);var Kz={Visible:new j(`parameterHintsVisible`,!1),MultipleSignatures:new j(`parameterHintsMultipleSignatures`,!1)};async function qz(e,t,n,r,i){let a=e.ordered(t);for(let e of a)try{let a=await e.provideSignatureHelp(t,n,i,r);if(a)return a}catch(e){Zs(e)}}In.registerCommand(`_executeSignatureHelpProvider`,async(e,...t)=>{let[n,r,i]=t;Qn(Yn.isUri(n)),Qn(A.isIPosition(r)),Qn(typeof i==`string`||!i);let a=e.get(R),o=await e.get(Ui).createModelReference(n);try{let e=await qz(a.signatureHelpProvider,o.object.textEditorModel,A.lift(r),{triggerKind:li.Invoke,isRetrigger:!1,triggerCharacter:i},T.None);return e?(setTimeout(()=>e.dispose(),0),e.value):void 0}finally{o.dispose()}});var Jz;(function(e){e.Default={type:0};class t{constructor(e,t){this.request=e,this.previouslyActiveHints=t,this.type=2}}e.Pending=t;class n{constructor(e){this.hints=e,this.type=1}}e.Active=n})(Jz||={});var Yz=class e extends G{static{this.DEFAULT_DELAY=120}constructor(t,n,r=e.DEFAULT_DELAY){super(),this._onChangedHints=this._register(new N),this.onChangedHints=this._onChangedHints.event,this.triggerOnType=!1,this._state=Jz.Default,this._pendingTriggers=[],this._lastSignatureHelpResult=this._register(new lc),this.triggerChars=new Kn,this.retriggerChars=new Kn,this.triggerId=0,this.editor=t,this.providers=n,this.throttledDelayer=this._register(new er(r)),this._register(this.editor.onDidBlurEditorWidget(()=>this.cancel())),this._register(this.editor.onDidChangeConfiguration(()=>this.onEditorConfigurationChange())),this._register(this.editor.onDidChangeModel(e=>this.onModelChanged())),this._register(this.editor.onDidChangeModelLanguage(e=>this.onModelChanged())),this._register(this.editor.onDidChangeCursorSelection(e=>this.onCursorChange(e))),this._register(this.editor.onDidChangeModelContent(e=>this.onModelContentChange())),this._register(this.providers.onDidChange(this.onModelChanged,this)),this._register(this.editor.onDidType(e=>this.onDidType(e))),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=Jz.Default,this.throttledDelayer.cancel(),e||this._onChangedHints.fire(void 0)}trigger(e,t){let n=this.editor.getModel();if(!n||!this.providers.has(n))return;let r=++this.triggerId;this._pendingTriggers.push(e),this.throttledDelayer.trigger(()=>this.doTrigger(r),t).catch(nt)}next(){if(this.state.type!==1)return;let e=this.state.hints.signatures.length,t=this.state.hints.activeSignature,n=t%e===e-1,r=this.editor.getOption(98).cycle;(e<2||n)&&!r?this.cancel():this.updateActiveSignature(n&&r?0:t+1)}previous(){if(this.state.type!==1)return;let e=this.state.hints.signatures.length,t=this.state.hints.activeSignature,n=t===0,r=this.editor.getOption(98).cycle;(e<2||n)&&!r?this.cancel():this.updateActiveSignature(n&&r?e-1:t-1)}updateActiveSignature(e){this.state.type===1&&(this.state=new Jz.Active({...this.state.hints,activeSignature:e}),this._onChangedHints.fire(this.state.hints))}async doTrigger(e){let t=this.state.type===1||this.state.type===2,n=this.getLastActiveHints();if(this.cancel(!0),this._pendingTriggers.length===0)return!1;let r=this._pendingTriggers.reduce(Xz);this._pendingTriggers=[];let i={triggerKind:r.triggerKind,triggerCharacter:r.triggerCharacter,isRetrigger:t,activeSignatureHelp:n};if(!this.editor.hasModel())return!1;let a=this.editor.getModel(),o=this.editor.getPosition();this.state=new Jz.Pending(Et(e=>qz(this.providers,a,o,i,e)),n);try{let t=await this.state.request;return e===this.triggerId?!t||!t.value.signatures||t.value.signatures.length===0?(t?.dispose(),this._lastSignatureHelpResult.clear(),this.cancel(),!1):(this.state=new Jz.Active(t.value),this._lastSignatureHelpResult.value=t,this._onChangedHints.fire(this.state.hints),!0):(t?.dispose(),!1)}catch(t){return e===this.triggerId&&(this.state=Jz.Default),nt(t),!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();let e=this.editor.getModel();if(e)for(let t of this.providers.ordered(e)){for(let e of t.signatureHelpTriggerCharacters||[])if(e.length){let t=e.charCodeAt(0);this.triggerChars.add(t),this.retriggerChars.add(t)}for(let e of t.signatureHelpRetriggerCharacters||[])e.length&&this.retriggerChars.add(e.charCodeAt(0))}}onDidType(e){if(!this.triggerOnType)return;let t=e.length-1,n=e.charCodeAt(t);(this.triggerChars.has(n)||this.isTriggered&&this.retriggerChars.has(n))&&this.trigger({triggerKind:li.TriggerCharacter,triggerCharacter:e.charAt(t)})}onCursorChange(e){e.source===`mouse`?this.cancel():this.isTriggered&&this.trigger({triggerKind:li.ContentChange})}onModelContentChange(){this.isTriggered&&this.trigger({triggerKind:li.ContentChange})}onEditorConfigurationChange(){this.triggerOnType=this.editor.getOption(98).enabled,this.triggerOnType||this.cancel()}dispose(){this.cancel(!0),super.dispose()}};function Xz(e,t){switch(t.triggerKind){case li.Invoke:return t;case li.ContentChange:return e;case li.TriggerCharacter:default:return t}}var Zz=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},Qz=function(e,t){return function(n,r){t(n,r,e)}},$z,eB=M,tB=kr(`parameter-hints-next`,k.chevronDown,x(1378,`Icon for show next parameter hint.`)),nB=kr(`parameter-hints-previous`,k.chevronUp,x(1379,`Icon for show previous parameter hint.`)),rB=class extends G{static{$z=this}static{this.ID=`editor.widget.parameterHintsWidget`}constructor(e,t,n,r){super(),this.editor=e,this.model=t,this.markdownRendererService=r,this.renderDisposeables=this._register(new F),this.visible=!1,this.announcedLabel=null,this.allowEditorOverflow=!0,this.keyVisible=Kz.Visible.bindTo(n),this.keyMultipleSignatures=Kz.MultipleSignatures.bindTo(n)}createParameterHintDOMNodes(){let e=eB(`.editor-widget.parameter-hints-widget`),t=K(e,eB(`.phwrapper`));t.tabIndex=-1;let n=K(t,eB(`.controls`)),r=K(n,eB(`.button`+V.asCSSSelector(nB))),i=K(n,eB(`.overloads`)),a=K(n,eB(`.button`+V.asCSSSelector(tB)));this._register(I(r,`click`,e=>{Ds.stop(e),this.previous()})),this._register(I(a,`click`,e=>{Ds.stop(e),this.next()}));let o=eB(`.body`),s=new oa(o,{alwaysConsumeMouseWheel:!0});this._register(s),t.appendChild(s.getDomNode());let c=K(o,eB(`.signature`)),l=K(o,eB(`.docs`));e.style.userSelect=`text`,this.domNodes={element:e,signature:c,overloads:i,docs:l,scrollbar:s},this.editor.addContentWidget(this),this.hide(),this._register(this.editor.onDidChangeCursorSelection(e=>{this.visible&&this.editor.layoutContentWidget(this)}));let u=()=>{if(!this.domNodes)return;let e=this.editor.getOption(59),t=this.domNodes.element;t.style.fontSize=`${e.fontSize}px`,t.style.lineHeight=`${e.lineHeight/e.fontSize}`,t.style.setProperty(`--vscode-parameterHintsWidget-editorFontFamily`,e.fontFamily),t.style.setProperty(`--vscode-parameterHintsWidget-editorFontFamilyDefault`,Ju.fontFamily)};u(),this._register(pu.chain(this.editor.onDidChangeConfiguration.bind(this.editor),e=>e.filter(e=>e.hasChanged(59)))(u)),this._register(this.editor.onDidLayoutChange(e=>this.updateMaxHeight())),this.updateMaxHeight()}show(){this.visible||(this.domNodes||this.createParameterHintDOMNodes(),this.keyVisible.set(!0),this.visible=!0,setTimeout(()=>{this.domNodes?.element.classList.add(`visible`)},100),this.editor.layoutContentWidget(this))}hide(){this.renderDisposeables.clear(),this.visible&&(this.keyVisible.reset(),this.visible=!1,this.announcedLabel=null,this.domNodes?.element.classList.remove(`visible`),this.editor.layoutContentWidget(this))}getPosition(){return this.visible?{position:this.editor.getPosition(),preference:[1,2]}:null}render(e){if(this.renderDisposeables.clear(),!this.domNodes)return;let t=e.signatures.length>1;this.domNodes.element.classList.toggle(`multiple`,t),this.keyMultipleSignatures.set(t),this.domNodes.signature.innerText=``,this.domNodes.docs.innerText=``;let n=e.signatures[e.activeSignature];if(!n)return;let r=K(this.domNodes.signature,eB(`.code`)),i=n.parameters.length>0,a=n.activeParameter??e.activeParameter;if(i)this.renderParameters(r,n,a);else{let e=K(r,eB(`span`));e.textContent=n.label}let o=n.parameters[a];if(o?.documentation){let e=eB(`span.documentation`);if(typeof o.documentation==`string`)e.textContent=o.documentation;else{let t=this.renderMarkdownDocs(o.documentation);e.appendChild(t.element)}K(this.domNodes.docs,eB(`p`,{},e))}if(n.documentation!==void 0){if(typeof n.documentation==`string`)K(this.domNodes.docs,eB(`p`,{},n.documentation));else{let e=this.renderMarkdownDocs(n.documentation);K(this.domNodes.docs,e.element)}}let s=this.hasDocs(n,o);if(this.domNodes.signature.classList.toggle(`has-docs`,s),this.domNodes.docs.classList.toggle(`empty`,!s),this.domNodes.overloads.textContent=String(e.activeSignature+1).padStart(e.signatures.length.toString().length,`0`)+`/`+e.signatures.length,o){let e=``,t=n.parameters[a];e=Array.isArray(t.label)?n.label.substring(t.label[0],t.label[1]):t.label,t.documentation&&(e+=typeof t.documentation==`string`?`, ${t.documentation}`:`, ${t.documentation.value}`),n.documentation&&(e+=typeof n.documentation==`string`?`, ${n.documentation}`:`, ${n.documentation.value}`),this.announcedLabel!==e&&(bo(x(1380,`{0}, hint`,e)),this.announcedLabel=e)}this.editor.layoutContentWidget(this),this.domNodes.scrollbar.scanDomNode()}renderMarkdownDocs(e){let t=this.renderDisposeables.add(this.markdownRendererService.render(e,{context:this.editor,asyncRenderCallback:()=>{this.domNodes?.scrollbar.scanDomNode()}}));return t.element.classList.add(`markdown-docs`),t}hasDocs(e,t){return!!(t&&typeof t.documentation==`string`&&vn(t.documentation).length>0||t&&typeof t.documentation==`object`&&vn(t.documentation).value.length>0||e.documentation&&typeof e.documentation==`string`&&vn(e.documentation).length>0||e.documentation&&typeof e.documentation==`object`&&vn(e.documentation.value).length>0)}renderParameters(e,t,n){let[r,i]=this.getParameterLabelOffsets(t,n),a=document.createElement(`span`);a.textContent=t.label.substring(0,r);let o=document.createElement(`span`);o.textContent=t.label.substring(r,i),o.className=`parameter active`;let s=document.createElement(`span`);s.textContent=t.label.substring(i),K(e,a,o,s)}getParameterLabelOffsets(e,t){let n=e.parameters[t];if(!n)return[0,0];if(Array.isArray(n.label))return n.label;if(n.label.length){let t=RegExp(`(\\W|^)${rd(n.label)}(?=\\W|$)`,`g`);t.test(e.label);let r=t.lastIndex-n.label.length;return r>=0?[r,t.lastIndex]:[0,0]}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 $z.ID}updateMaxHeight(){if(!this.domNodes)return;let e=`${Math.max(this.editor.getLayoutInfo().height/4,250)}px`;this.domNodes.element.style.maxHeight=e;let t=this.domNodes.element.getElementsByClassName(`phwrapper`);t.length&&(t[0].style.maxHeight=e)}};rB=$z=Zz([Qz(2,Fa),Qz(3,ba)],rB),O(`editorHoverWidget.highlightForeground`,Sr,x(1381,`Foreground color of the active item in the parameter hint.`));var iB=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},aB=function(e,t){return function(n,r){t(n,r,e)}},oB,sB=class extends G{static{oB=this}static{this.ID=`editor.controller.parameterHints`}static get(e){return e.getContribution(oB.ID)}constructor(e,t,n){super(),this.editor=e,this.model=this._register(new Yz(e,n.signatureHelpProvider)),this._register(this.model.onChangedHints(e=>{e?(this.widget.value.show(),this.widget.value.render(e)):this.widget.rawValue?.hide()})),this.widget=new jc(()=>this._register(t.createInstance(rB,this.editor,this.model)))}cancel(){this.model.cancel()}previous(){this.widget.rawValue?.previous()}next(){this.widget.rawValue?.next()}trigger(e){this.model.trigger(e,0)}};sB=oB=iB([aB(1,U),aB(2,R)],sB);var cB=class extends W{constructor(){super({id:`editor.action.triggerParameterHints`,label:L(1377,`Trigger Parameter Hints`),precondition:E.hasSignatureHelpProvider,kbOpts:{kbExpr:E.editorTextFocus,primary:3082,weight:100}})}run(e,t){sB.get(t)?.trigger({triggerKind:li.Invoke})}};Ps(sB.ID,sB,2),z(cB);var lB=175,uB=td.bindToContribution(sB.get);H(new uB({id:`closeParameterHints`,precondition:Kz.Visible,handler:e=>e.cancel(),kbOpts:{weight:lB,kbExpr:E.focus,primary:9,secondary:[1033]}})),H(new uB({id:`showPrevParameterHint`,precondition:w.and(Kz.Visible,Kz.MultipleSignatures),handler:e=>e.previous(),kbOpts:{weight:lB,kbExpr:E.focus,primary:16,secondary:[528],mac:{primary:16,secondary:[528,302]}}})),H(new uB({id:`showNextParameterHint`,precondition:w.and(Kz.Visible,Kz.MultipleSignatures),handler:e=>e.next(),kbOpts:{weight:lB,kbExpr:E.focus,primary:18,secondary:[530],mac:{primary:18,secondary:[530,300]}}}));var dB=class extends G{static{this.ID=`editor.contrib.placeholderText`}constructor(e){super(),this._editor=e,this._editorObs=ps(this._editor),this._placeholderText=this._editorObs.getOption(100),this._state=Tc({owner:this,equalsFn:ya},e=>{let t=this._placeholderText.read(e);if(t&&this._editorObs.valueIsEmpty.read(e))return{placeholder:t}}),this._shouldViewBeAlive=fB(this,e=>this._state.read(e)?.placeholder!==void 0),this._view=B(e=>{if(!this._shouldViewBeAlive.read(e))return;let t=Ur(`div.editorPlaceholder`);e.store.add(Ml(e=>{let n=this._state.read(e),r=n?.placeholder!==void 0;t.root.style.display=r?`block`:`none`,t.root.innerText=n?.placeholder??``})),e.store.add(Ml(e=>{let n=this._editorObs.layoutInfo.read(e);t.root.style.left=`${n.contentLeft}px`,t.root.style.width=n.contentWidth-n.verticalScrollbarWidth+`px`,t.root.style.top=`${this._editor.getTopForLineNumber(0)}px`})),e.store.add(Ml(e=>{t.root.style.fontFamily=this._editorObs.getOption(58).read(e),t.root.style.fontSize=this._editorObs.getOption(61).read(e)+`px`,t.root.style.lineHeight=this._editorObs.getOption(75).read(e)+`px`})),e.store.add(this._editorObs.createOverlayWidget({allowEditorOverflow:!1,minContentWidthInPx:Wi(0),position:Wi(null),domNode:t.root}))}),this._view.recomputeInitiallyAndOnChange(this._store)}};function fB(e,t){return No(e,(e,n)=>n===!0||t(e))}var pB=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},mB=function(e,t){return function(n,r){t(n,r,e)}},hB=class{constructor(e){this.instantiationService=e}init(...e){}};function gB(e){return e()}var _B=class extends hB{constructor(e,t){super(t),this.init(e)}};_B=pB([mB(1,U)],_B),Ps(dB.ID,gB(()=>dB),0),O(`editor.placeholder.foreground`,kt,x(1400,`Foreground color of the placeholder text in the editor.`));function vB(e){let t=new Map;for(let n of e)t.set(n,(t.get(n)??0)+1);return t}var yB=class e{constructor(){this.chunkCount=0,this.chunkOccurrences=new Map,this.documents=new Map}calculateScores(e,t){let n=this.computeEmbedding(e),r=new Map,i=[];for(let[e,a]of this.documents){if(t.isCancellationRequested)return[];for(let t of a.chunks){let a=this.computeSimilarityScore(t,n,r);a>0&&i.push({key:e,score:a})}}return i}static termFrequencies(t){return vB(e.splitTerms(t))}static*splitTerms(e){let t=e=>e.toLowerCase();for(let[n]of e.matchAll(/\b\p{Letter}[\p{Letter}\d]{2,}\b/gu)){yield t(n);let e=n.replace(/([a-z])([A-Z])/g,`$1 $2`).split(/\s+/g);if(e.length>1)for(let n of e)n.length>2&&/\p{Letter}{3,}/gu.test(n)&&(yield t(n))}}updateDocuments(t){for(let{key:e}of t)this.deleteDocument(e);for(let n of t){let t=[];for(let r of n.textChunks){let n=e.termFrequencies(r);for(let e of n.keys())this.chunkOccurrences.set(e,(this.chunkOccurrences.get(e)??0)+1);t.push({text:r,tf:n})}this.chunkCount+=t.length,this.documents.set(n.key,{chunks:t})}return this}deleteDocument(e){let t=this.documents.get(e);if(t){this.documents.delete(e),this.chunkCount-=t.chunks.length;for(let e of t.chunks)for(let t of e.tf.keys()){let e=this.chunkOccurrences.get(t);if(typeof e==`number`){let n=e-1;n<=0?this.chunkOccurrences.delete(t):this.chunkOccurrences.set(t,n)}}}}computeSimilarityScore(e,t,n){let r=0;for(let[i,a]of Object.entries(t)){let t=e.tf.get(i);if(!t)continue;let o=n.get(i);typeof o!=`number`&&(o=this.computeIdf(i),n.set(i,o));let s=t*o;r+=s*a}return r}computeEmbedding(t){let n=e.termFrequencies(t);return this.computeTfidf(n)}computeIdf(e){let t=this.chunkOccurrences.get(e)??0;return t>0?Math.log((this.chunkCount+1)/t):0}computeTfidf(e){let t=Object.create(null);for(let[n,r]of e){let e=this.computeIdf(n);e>0&&(t[n]=r*e)}return t}};function bB(e){let t=e.slice(0);t.sort((e,t)=>t.score-e.score);let n=t[0]?.score??0;if(n>0)for(let e of t)e.score/=n;return t}var xB;(function(e){e[e.NO_ACTION=0]=`NO_ACTION`,e[e.CLOSE_PICKER=1]=`CLOSE_PICKER`,e[e.REFRESH_PICKER=2]=`REFRESH_PICKER`,e[e.REMOVE_ITEM=3]=`REMOVE_ITEM`})(xB||={});function SB(e){let t=e;return Array.isArray(t.items)}function CB(e){let t=e;return!!t.picks&&t.additionalPicks instanceof Promise}var wB=class extends G{constructor(e,t){super(),this.prefix=e,this.options=t}provide(e,t,n){let r=new F;e.canAcceptInBackground=!!this.options?.canAcceptInBackground,e.matchOnLabel=e.matchOnDescription=e.matchOnDetail=e.sortByLabel=!1;let i,a=r.add(new lc),o=async()=>{i?.dispose(!0),e.busy=!1;let r=a.value=new F;i=r.add(new Ao(t));let o=i.token,s=e.value.substring(this.prefix.length);this.options?.shouldSkipTrimPickFilter||(s=s.trim());let c=this._getPicks(s,r,o,n),l=(t,n)=>{let r,i;if(SB(t)?(r=t.items,i=t.active):r=t,r.length===0){if(n)return!1;(s.length>0||e.hideInput)&&this.options?.noResultsPick&&(r=Lf(this.options.noResultsPick)?[this.options.noResultsPick(s)]:[this.options.noResultsPick])}return e.items=r,i&&(e.activeItems=[i]),!0},u=async t=>{let n=!1,r=!1;await Promise.all([(async()=>{typeof t.mergeDelay==`number`&&(await Cr(t.mergeDelay),o.isCancellationRequested)||r||(n=l(t.picks,!0))})(),(async()=>{e.busy=!0;try{let r=await t.additionalPicks;if(o.isCancellationRequested)return;let i,a;SB(t.picks)?(i=t.picks.items,a=t.picks.active):i=t.picks;let s,c;if(SB(r)?(s=r.items,c=r.active):s=r,s.length>0||!n){let t;if(!a&&!c){let n=e.activeItems[0];n&&i.indexOf(n)!==-1&&(t=n)}l({items:[...i,...s],active:a||c||t})}}finally{o.isCancellationRequested||(e.busy=!1),r=!0}})()])};if(c!==null){if(CB(c))await u(c);else if(!(c instanceof Promise))l(c);else{e.busy=!0;try{let e=await c;if(o.isCancellationRequested)return;CB(e)?await u(e):l(e)}finally{o.isCancellationRequested||(e.busy=!1)}}}};r.add(e.onDidChangeValue(()=>o())),o(),r.add(e.onDidAccept(t=>{if(n?.handleAccept){t.inBackground||e.hide(),n.handleAccept?.(e.activeItems[0],t.inBackground);return}let[r]=e.selectedItems;if(typeof r?.accept==`function`){if(gf(e.keyMods)&&r.attach){r.attach(e.keyMods,t);return}t.inBackground||e.hide(),r.accept(e.keyMods,t)}}));let s=async(n,r)=>{if(typeof r.trigger!=`function`)return;let i=r.buttons?.indexOf(n)??-1;if(i>=0){let n=r.trigger(i,e.keyMods),a=typeof n==`number`?n:await n;if(t.isCancellationRequested)return;switch(a){case xB.NO_ACTION:break;case xB.CLOSE_PICKER:e.hide();break;case xB.REFRESH_PICKER:o();break;case xB.REMOVE_ITEM:{let t=e.items.indexOf(r);if(t!==-1){let n=e.items.slice(),r=n.splice(t,1),i=e.activeItems.filter(e=>e!==r[0]),a=e.keepScrollPosition;e.keepScrollPosition=!0,e.items=n,i&&(e.activeItems=i),e.keepScrollPosition=a}break}}}};return r.add(e.onDidTriggerItemButton(({button:e,item:t})=>s(e,t))),r.add(e.onDidTriggerSeparatorButton(({button:e,separator:t})=>s(e,t))),r}},TB=Object.freeze({View:L(1718,`View`),Help:L(1719,`Help`),Test:L(1720,`Test`),File:L(1721,`File`),Preferences:L(1722,`Preferences`),Developer:L(1723,`Developer`)}),EB=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},DB=function(e,t){return function(n,r){t(n,r,e)}},OB,kB,AB=class extends wB{static{OB=this}static{this.PREFIX=`>`}static{this.TFIDF_THRESHOLD=.5}static{this.TFIDF_MAX_RESULTS=5}static{this.WORD_FILTER=pr(Nn,Bu)}constructor(e,t,n,r,i,a){super(OB.PREFIX,e),this.keybindingService=n,this.commandService=r,this.telemetryService=i,this.dialogService=a,this.commandsHistory=this._register(t.createInstance(jB)),this.options=e}async _getPicks(e,t,n,r){let i=await this.getCommandPicks(n);if(n.isCancellationRequested)return[];let a=Tf(()=>{let t=new yB;return t.updateDocuments(i.map(e=>({key:e.commandId,textChunks:[this.getTfIdfChunk(e)]}))),bB(t.calculateScores(e,n)).filter(e=>e.score>OB.TFIDF_THRESHOLD).slice(0,OB.TFIDF_MAX_RESULTS)}),o=[];for(let t of i){let r=OB.WORD_FILTER(e,t.label)??void 0,i;if(t.commandAlias&&(i=OB.WORD_FILTER(e,t.commandAlias)??void 0),r||i)t.highlights={label:r,detail:this.options.showAlias?i:void 0},o.push(t);else if(e===t.commandId)o.push(t);else if(e.length>=3){let e=a();if(n.isCancellationRequested)return[];let r=e.find(e=>e.key===t.commandId);r&&(t.tfIdfScore=r.score,o.push(t))}}let s=new Map;for(let e of o){let t=s.get(e.label);t?(e.description=e.commandId,t.description=t.commandId):s.set(e.label,e)}o.sort((e,t)=>{if(e.tfIdfScore&&t.tfIdfScore)return e.tfIdfScore===t.tfIdfScore?e.label.localeCompare(t.label):t.tfIdfScore-e.tfIdfScore;if(e.tfIdfScore)return 1;if(t.tfIdfScore)return-1;let n=this.commandsHistory.peek(e.commandId),r=this.commandsHistory.peek(t.commandId);if(n&&r)return n>r?-1:1;if(n)return-1;if(r)return 1;if(this.options.suggestedCommandIds){let n=this.options.suggestedCommandIds.has(e.commandId),r=this.options.suggestedCommandIds.has(t.commandId);if(n&&r)return 0;if(n)return-1;if(r)return 1}let i=e.commandCategory===TB.Developer.value,a=t.commandCategory===TB.Developer.value;return i&&!a?1:!i&&a?-1:e.label.localeCompare(t.label)});let c=[],l=!1,u=!0,d=!!this.options.suggestedCommandIds;for(let e=0;e<o.length;e++){let t=o[e],n=!!this.commandsHistory.peek(t.commandId);e===0&&n&&(c.push({type:`separator`,label:x(1836,`recently used`)}),l=!0),u&&t.tfIdfScore!==void 0&&(c.push({type:`separator`,label:x(1837,`similar commands`)}),u=!1),d&&t.tfIdfScore===void 0&&!n&&this.options.suggestedCommandIds?.has(t.commandId)&&(c.push({type:`separator`,label:x(1838,`commonly used`)}),l=!0,d=!1),l&&t.tfIdfScore===void 0&&!n&&!this.options.suggestedCommandIds?.has(t.commandId)&&(c.push({type:`separator`,label:x(1839,`other commands`)}),l=!1),c.push(this.toCommandPick(t,r,n))}return this.hasAdditionalCommandPicks(e,n)?{picks:c,additionalPicks:(async()=>{let t=await this.getAdditionalCommandPicks(i,o,e,n);if(n.isCancellationRequested)return[];let a=t.map(e=>this.toCommandPick(e,r));return u&&a[0]?.type!==`separator`&&a.unshift({type:`separator`,label:x(1840,`similar commands`)}),a})()}:c}toCommandPick(e,t,n=!1){if(e.type===`separator`)return e;let r=e.tooltip??e.commandDescription?.value,i=this.keybindingService.lookupKeybinding(e.commandId),a=i?x(1841,`{0}, {1}`,e.label,i.getAriaLabel()):e.label,o=e.buttons||[],s=n?[...o,{iconClass:V.asClassName(k.close),tooltip:x(1842,`Remove from Recently Used`)}]:e.buttons;return{...e,id:e.commandId,tooltip:r,ariaLabel:a,detail:this.options.showAlias&&e.commandAlias!==e.label?e.commandAlias:void 0,keybinding:i,buttons:s,accept:async()=>{this.commandsHistory.push(e.commandId),this.telemetryService.publicLog2(`workbenchActionExecuted`,{id:e.commandId,from:t?.from??`quick open`});try{e.args?.length?await this.commandService.executeCommand(e.commandId,...e.args):await this.commandService.executeCommand(e.commandId)}catch(t){Li(t)||this.dialogService.error(x(1843,`Command '{0}' resulted in an error`,e.label),Pm(t))}},trigger:n?(t,n)=>t===o.length?(this.commandsHistory.remove(e.commandId),xB.REMOVE_ITEM):e.trigger?e.trigger(t,n):xB.NO_ACTION:e.trigger}}getTfIdfChunk({label:e,commandAlias:t,commandDescription:n}){let r=e;return t&&t!==e&&(r+=` - ${t}`),n&&n.value!==e&&(r+=` - ${n.value===n.original?n.value:`${n.value} (${n.original})`}`),r}};AB=OB=EB([DB(1,U),DB(2,Sa),DB(3,Er),DB(4,yt),DB(5,ca)],AB);var jB=class extends G{static{kB=this}static{this.DEFAULT_COMMANDS_HISTORY_LENGTH=50}static{this.PREF_KEY_CACHE=`commandPalette.mru.cache`}static{this.PREF_KEY_COUNTER=`commandPalette.mru.counter`}static{this.counter=1}static{this.hasChanges=!1}constructor(e,t,n){super(),this.storageService=e,this.configurationService=t,this.logService=n,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===Xo.SHUTDOWN&&this.saveState()}))}updateConfiguration(e){(!e||e.affectsConfiguration(`workbench.commandPalette.history`))&&(this.configuredCommandsHistoryLength=kB.getConfiguredCommandHistoryLength(this.configurationService),kB.cache&&kB.cache.limit!==this.configuredCommandsHistoryLength&&(kB.cache.limit=this.configuredCommandsHistoryLength,kB.hasChanges=!0))}load(){let e=this.storageService.get(kB.PREF_KEY_CACHE,0),t;if(e)try{t=JSON.parse(e)}catch(e){this.logService.error(`[CommandsHistory] invalid data: ${e}`)}let n=kB.cache=new yi(this.configuredCommandsHistoryLength,1);if(t){let e;e=t.usesLRU?t.entries:t.entries.sort((e,t)=>e.value-t.value),e.forEach(e=>n.set(e.key,e.value))}kB.counter=this.storageService.getNumber(kB.PREF_KEY_COUNTER,0,kB.counter)}push(e){kB.cache&&(kB.cache.set(e,kB.counter++),kB.hasChanges=!0)}peek(e){return kB.cache?.peek(e)}remove(e){kB.cache&&(kB.cache.delete(e),kB.hasChanges=!0)}saveState(){if(!kB.cache||!kB.hasChanges)return;let e={usesLRU:!0,entries:[]};kB.cache.forEach((t,n)=>e.entries.push({key:n,value:t})),this.storageService.store(kB.PREF_KEY_CACHE,JSON.stringify(e),0,0),this.storageService.store(kB.PREF_KEY_COUNTER,kB.counter,0,0),kB.hasChanges=!1}static getConfiguredCommandHistoryLength(e){let t=e.getValue().workbench?.commandPalette?.history;return typeof t==`number`?t:kB.DEFAULT_COMMANDS_HISTORY_LENGTH}};jB=kB=EB([DB(0,Ec),DB(1,Vi),DB(2,ju)],jB);var MB=class extends AB{constructor(e,t,n,r,i,a){super(e,t,n,r,i,a)}getCodeEditorCommandPicks(){let e=this.activeTextEditorControl;if(!e)return[];let t=[];for(let n of e.getSupportedActions()){let e;n.metadata?.description&&(e=ko(n.metadata.description)?n.metadata.description:{original:n.metadata.description,value:n.metadata.description}),t.push({commandId:n.id,commandAlias:n.alias,commandDescription:e,label:Zi(n.label)||n.id})}return t}},NB=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},PB=function(e,t){return function(n,r){t(n,r,e)}},FB=class extends MB{get activeTextEditorControl(){return this.codeEditorService.getFocusedCodeEditor()??void 0}constructor(e,t,n,r,i,a){super({showAlias:!1},e,n,r,i,a),this.codeEditorService=t}async getCommandPicks(){return this.getCodeEditorCommandPicks()}hasAdditionalCommandPicks(){return!1}async getAdditionalCommandPicks(){return[]}};FB=NB([PB(0,U),PB(1,Xs),PB(2,Sa),PB(3,Er),PB(4,yt),PB(5,ca)],FB);var IB=class e extends W{static{this.ID=`editor.action.quickCommand`}constructor(){super({id:e.ID,label:yo.quickCommandActionLabel,alias:`Command Palette`,precondition:void 0,kbOpts:{kbExpr:E.focus,primary:59,weight:100},contextMenuOpts:{group:`z_commands`,order:1}})}run(e){e.get(Gd).quickAccess.show(FB.PREFIX)}};z(IB),At.as(Dn.Quickaccess).registerQuickAccessProvider({ctor:FB,prefix:FB.PREFIX,helpEntries:[{description:yo.quickCommandHelp,commandId:IB.ID}]});var LB=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},RB=function(e,t){return function(n,r){t(n,r,e)}},zB,BB=class{static{zB=this}static{this.PREFIX=`?`}constructor(e,t,n){this.quickInputService=e,this.keybindingService=t,this.contextKeyService=n,this.registry=At.as(Dn.Quickaccess)}provide(e){let t=new F;return t.add(e.onDidAccept(()=>{let[t]=e.selectedItems;t&&this.quickInputService.quickAccess.show(t.prefix,{preserveValue:!0})})),t.add(e.onDidChangeValue(e=>{let t=this.registry.getQuickAccessProvider(e.substr(zB.PREFIX.length),this.contextKeyService);t?.prefix&&t.prefix!==zB.PREFIX&&this.quickInputService.quickAccess.show(t.prefix,{preserveValue:!0})})),e.items=this.getQuickAccessProviders().filter(e=>e.prefix!==zB.PREFIX),t}getQuickAccessProviders(){return this.registry.getQuickAccessProviders(this.contextKeyService).sort((e,t)=>e.prefix.localeCompare(t.prefix)).flatMap(e=>this.createPicks(e))}createPicks(e){return e.helpEntries.map(t=>{let n=t.prefix||e.prefix,r=n||`…`;return{prefix:n,label:r,keybinding:t.commandId?this.keybindingService.lookupKeybinding(t.commandId):void 0,ariaLabel:x(1844,`{0}, {1}`,r,t.description),description:t.description}})}};BB=zB=LB([RB(0,Gd),RB(1,Sa),RB(2,Fa)],BB),At.as(Dn.Quickaccess).registerQuickAccessProvider({ctor:BB,prefix:``,helpEntries:[{description:oo.helpQuickAccessActionLabel}]});var VB=[void 0,[]];function HB(e,t,n=0,r=0){let i=t;return i.values&&i.values.length>1?UB(e,i.values,n,r):WB(e,t,n,r)}function UB(e,t,n,r){let i=0,a=[];for(let o of t){let[t,s]=WB(e,o,n,r);if(typeof t!=`number`)return VB;i+=t,a.push(...s)}return[i,GB(a)]}function WB(e,t,n,r){let i=Ma(t.normalized,t.normalizedLowercase,n,e,e.toLowerCase(),r,{firstMatchCanBeWeak:!0,boostFullMatch:!0});return i?[i[0],Gn(i)]:VB}new hi(`allowNonContiguousMatches`),new hi(`description`),new hi(`label`),new hi(`values`),new hi(`expectContiguousMatch`),new hi(`value`);function GB(e){let t=e.sort((e,t)=>e.start-t.start),n=[],r;for(let e of t)!r||!KB(r,e)?(r=e,n.push(e)):(r.start=Math.min(r.start,e.start),r.end=Math.max(r.end,e.end));return n}function KB(e,t){return!(e.end<t.start||t.end<e.start)}function qB(e){return e.startsWith(`"`)&&e.endsWith(`"`)}var JB=` `;function YB(e){typeof e!=`string`&&(e=``);let t=e.toLowerCase(),{pathNormalized:n,normalized:r,normalizedLowercase:i}=XB(e),a=n.indexOf(Rn)>=0,o=qB(e),s,c=e.split(JB);if(c.length>1)for(let e of c){let t=qB(e),{pathNormalized:n,normalized:r,normalizedLowercase:i}=XB(e);r&&(s||=[],s.push({original:e,originalLowercase:e.toLowerCase(),pathNormalized:n,normalized:r,normalizedLowercase:i,expectContiguousMatch:t}))}return{original:e,originalLowercase:t,pathNormalized:n,normalized:r,normalizedLowercase:i,values:s,containsPathSeparator:a,expectContiguousMatch:o}}function XB(e){let t;t=qt?e.replace(/\//g,Rn):e.replace(/\\/g,Rn);let n=t.replace(/[\*\u2026\s"]/g,``).replace(/(?<=.)#$/,``);return{pathNormalized:t,normalized:n,normalizedLowercase:n.toLowerCase()}}function ZB(e){return YB(Array.isArray(e)?e.map(e=>e.original).join(JB):e.original)}var QB=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},$B=function(e,t){return function(n,r){t(n,r,e)}},eV,tV=class extends ZE{static{eV=this}static{this.PREFIX=`@`}static{this.SCOPE_PREFIX=`:`}static{this.PREFIX_BY_CATEGORY=`${this.PREFIX}${this.SCOPE_PREFIX}`}constructor(e,t,n=Object.create(null)){super(n),this._languageFeaturesService=e,this._outlineModelService=t,this.options=n,this.options.canAcceptInBackground=!0}provideWithoutTextEditor(e){return this.provideLabelPick(e,x(1414,`To go to a symbol, first open a text editor with symbol information.`)),G.None}provideWithTextEditor(e,t,n,r){let i=e.editor,a=this.getModel(i);return a?this._languageFeaturesService.documentSymbolProvider.has(a)?this.doProvideWithEditorSymbols(e,a,t,n,r):this.doProvideWithoutEditorSymbols(e,a,t,n):G.None}doProvideWithoutEditorSymbols(e,t,n,r){let i=new F;return this.provideLabelPick(n,x(1415,`The active text editor does not provide symbol information.`)),(async()=>{await this.waitForLanguageSymbolRegistry(t,i)&&!r.isCancellationRequested&&i.add(this.doProvideWithEditorSymbols(e,t,n,r))})(),i}provideLabelPick(e,t){e.items=[{label:t,index:0,kind:14}],e.ariaLabel=t}async waitForLanguageSymbolRegistry(e,t){if(this._languageFeaturesService.documentSymbolProvider.has(e))return!0;let n=new bn,r=t.add(this._languageFeaturesService.documentSymbolProvider.onDidChange(()=>{this._languageFeaturesService.documentSymbolProvider.has(e)&&(r.dispose(),n.complete(!0))}));return t.add(Ko(()=>n.complete(!1))),n.p}doProvideWithEditorSymbols(e,t,n,r,i){let a=e.editor,o=new F;o.add(n.onDidAccept(t=>{let[r]=n.selectedItems;if(r&&r.range){if(n.keyMods.shift&&r.attach){r.attach(n.keyMods,t);return}this.gotoLocation(e,{range:r.range.selection,keyMods:n.keyMods,preserveFocus:t.inBackground}),i?.handleAccept?.(r,t.inBackground),t.inBackground||n.hide()}})),o.add(n.onDidTriggerItemButton(({item:t})=>{t&&t.range&&(this.gotoLocation(e,{range:t.range.selection,keyMods:n.keyMods,forceSideBySide:!0}),n.hide())}));let s=this.getDocumentSymbols(t,r),c=o.add(new lc),l=async e=>{c?.value?.cancel(),n.busy=!1,c.value=new Ao,n.busy=!0;try{let i=YB(n.value.substr(eV.PREFIX.length).trim()),a=await this.doGetSymbolPicks(s,i,void 0,c.value.token,t);if(r.isCancellationRequested)return;if(a.length>0){if(n.items=a,e&&i.original.length===0){let t=_t(a,t=>!!(t.type!==`separator`&&t.range&&C.containsPosition(t.range.decoration,e)));t&&(n.activeItems=[t])}}else i.original.length>0?this.provideLabelPick(n,x(1416,`No matching editor symbols`)):this.provideLabelPick(n,x(1417,`No editor symbols`))}finally{r.isCancellationRequested||(n.busy=!1)}};return o.add(n.onDidChangeValue(()=>l(void 0))),l(a.getSelection()?.getPosition()),o.add(n.onDidChangeActive(()=>{let[e]=n.activeItems;e&&e.range&&(a.revealRangeInCenter(e.range.selection,0),this.addDecorations(a,e.range.decoration))})),o}async doGetSymbolPicks(e,t,n,r,i){let a=await e;if(r.isCancellationRequested)return[];let o=t.original.indexOf(eV.SCOPE_PREFIX)===0,s=+!!o,c,l;t.values&&t.values.length>1?(c=ZB(t.values[0]),l=ZB(t.values.slice(1))):c=t;let u,d=this.options?.openSideBySideDirection?.();d&&(u=[{iconClass:d===`right`?V.asClassName(k.splitHorizontal):V.asClassName(k.splitVertical),tooltip:d===`right`?x(1418,`Open to the Side`):x(1419,`Open to the Bottom`)}]);let f=[];for(let e=0;e<a.length;e++){let r=a[e],o=Uc(r.name),d=`$(${Ni.toIcon(r.kind).id}) ${o}`,p=d.length-o.length,m=r.containerName;n?.extraContainerLabel&&(m=m?`${n.extraContainerLabel} • ${m}`:n.extraContainerLabel);let h,g,_,v;if(t.original.length>s){let e=!1;if(c!==t&&([h,g]=HB(d,{...t,values:void 0},s,p),typeof h==`number`&&(e=!0)),typeof h!=`number`&&([h,g]=HB(d,c,s,p),typeof h!=`number`))continue;if(!e&&l){if(m&&l.original.length>0&&([_,v]=HB(m,l)),typeof _!=`number`)continue;typeof h==`number`&&(h+=_)}}let y=r.tags&&r.tags.indexOf(1)>=0;f.push({index:e,kind:r.kind,score:h,label:d,ariaLabel:or(r.name,r.kind),description:m,highlights:y?void 0:{label:g,description:v},range:{selection:C.collapseToStart(r.selectionRange),decoration:r.range},uri:i.uri,symbolName:o,strikethrough:y,buttons:u})}let p=f.sort((e,t)=>o?this.compareByKindAndScore(e,t):this.compareByScore(e,t)),m=[];if(o){let e,t,n=0;function r(){t&&typeof e==`number`&&n>0&&(t.label=fs(rV[e]||nV,n))}for(let i of p)e===i.kind?n++:(r(),e=i.kind,n=1,t={type:`separator`},m.push(t)),m.push(i);r()}else p.length>0&&(m=[{label:x(1420,`symbols ({0})`,f.length),type:`separator`},...p]);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)}compareByKindAndScore(e,t){let n=rV[e.kind]||nV,r=rV[t.kind]||nV,i=n.localeCompare(r);return i===0?this.compareByScore(e,t):i}async getDocumentSymbols(e,t){let n=await this._outlineModelService.getOrCreate(e,t);return t.isCancellationRequested?[]:n.asListOfDocumentSymbols()}};tV=eV=QB([$B(0,R),$B(1,JC)],tV);var nV=x(1421,`properties ({0})`),rV={5:x(1422,`methods ({0})`),11:x(1423,`functions ({0})`),8:x(1424,`constructors ({0})`),12:x(1425,`variables ({0})`),4:x(1426,`classes ({0})`),22:x(1427,`structs ({0})`),23:x(1428,`events ({0})`),24:x(1429,`operators ({0})`),10:x(1430,`interfaces ({0})`),2:x(1431,`namespaces ({0})`),3:x(1432,`packages ({0})`),25:x(1433,`type parameters ({0})`),1:x(1434,`modules ({0})`),6:x(1435,`properties ({0})`),9:x(1436,`enumerations ({0})`),21:x(1437,`enumeration members ({0})`),14:x(1438,`strings ({0})`),0:x(1439,`files ({0})`),17:x(1440,`arrays ({0})`),15:x(1441,`numbers ({0})`),16:x(1442,`booleans ({0})`),18:x(1443,`objects ({0})`),19:x(1444,`keys ({0})`),7:x(1445,`fields ({0})`),13:x(1446,`constants ({0})`)},iV=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},aV=function(e,t){return function(n,r){t(n,r,e)}},oV=class extends tV{constructor(e,t,n){super(t,n),this.editorService=e,this.onDidActiveTextEditorControlChange=pu.None}get activeTextEditorControl(){return this.editorService.getFocusedCodeEditor()??void 0}};oV=iV([aV(0,Xs),aV(1,R),aV(2,JC)],oV);var sV=class e extends W{static{this.ID=`editor.action.quickOutline`}constructor(){super({id:e.ID,label:jo.quickOutlineActionLabel,alias:`Go to Symbol...`,precondition:E.hasDocumentSymbolProvider,kbOpts:{kbExpr:E.focus,primary:3117,weight:100},contextMenuOpts:{group:`navigation`,order:3}})}run(e){e.get(Gd).quickAccess.show(tV.PREFIX,{itemActivation:Of.NONE})}};z(sV),At.as(Dn.Quickaccess).registerQuickAccessProvider({ctor:oV,prefix:tV.PREFIX,helpEntries:[{description:jo.quickOutlineActionLabel,prefix:tV.PREFIX,commandId:sV.ID},{description:jo.quickOutlineByCategoryActionLabel,prefix:tV.PREFIX_BY_CATEGORY}]});var cV=class extends G{static{this.ID=`editor.contrib.readOnlyMessageController`}constructor(e){super(),this.editor=e,this._register(this.editor.onDidAttemptReadOnlyEdit(()=>this._onDidAttemptReadOnlyEdit()))}_onDidAttemptReadOnlyEdit(){let e=rm.get(this.editor);if(e&&this.editor.hasModel()){let t=this.editor.getOptions().get(105);t||=this.editor.isSimpleWidget?new Oi(x(1447,`Cannot edit in read-only input`)):new Oi(x(1448,`Cannot edit in read-only editor`)),e.showMessage(t,this.editor.getPosition())}}};Ps(cV.ID,cV,2);var lV=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},uV=function(e,t){return function(n,r){t(n,r,e)}},dV=class extends Wx{constructor(e,t,n,r,i,a,o){super(!0,e,t,n,r,i,a,o)}};dV=lV([uV(1,Fa),uV(2,Xs),uV(3,vt),uV(4,U),uV(5,Ec),uV(6,Vi)],dV),Ps(Wx.ID,dV,4);var fV=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},pV=function(e,t){return function(n,r){t(n,r,e)}},mV=class extends G{static{this.ID=`editor.sectionHeaderDetector`}constructor(e,t,n){super(),this.editor=e,this.languageConfigurationService=t,this.editorWorkerService=n,this.decorations=this.editor.createDecorationsCollection(),this.options=this.createOptions(e.getOption(81)),this.computePromise=null,this.currentOccurrences={},this._register(e.onDidChangeModel(t=>{this.currentOccurrences={},this.options=this.createOptions(e.getOption(81)),this.stop(),this.computeSectionHeaders.schedule(0)})),this._register(e.onDidChangeModelLanguage(t=>{this.currentOccurrences={},this.options=this.createOptions(e.getOption(81)),this.stop(),this.computeSectionHeaders.schedule(0)})),this._register(t.onDidChange(t=>{let n=this.editor.getModel()?.getLanguageId();n&&t.affects(n)&&(this.currentOccurrences={},this.options=this.createOptions(e.getOption(81)),this.stop(),this.computeSectionHeaders.schedule(0))})),this._register(e.onDidChangeConfiguration(t=>{(!this.options||t.hasChanged(81))&&(this.options=this.createOptions(e.getOption(81)),this.updateDecorations([]),this.stop(),this.computeSectionHeaders.schedule(0))})),this._register(this.editor.onDidChangeModelContent(e=>{this.computeSectionHeaders.schedule()})),this._register(e.onDidChangeModelTokens(e=>{this.computeSectionHeaders.isScheduled()||this.computeSectionHeaders.schedule(1e3)})),this.computeSectionHeaders=this._register(new Pr(()=>{this.findSectionHeaders()},250)),this.computeSectionHeaders.schedule(0)}createOptions(e){if(!e||!this.editor.hasModel())return;let t=this.editor.getModel().getLanguageId();if(!t)return;let n=this.languageConfigurationService.getLanguageConfiguration(t).comments,r=this.languageConfigurationService.getLanguageConfiguration(t).foldingRules;if(n||r?.markers)return{foldingRules:r,markSectionHeaderRegex:e.markSectionHeaderRegex,findMarkSectionHeaders:e.showMarkSectionHeaders,findRegionSectionHeaders:e.showRegionSectionHeaders}}findSectionHeaders(){if(!this.editor.hasModel()||!this.options?.findMarkSectionHeaders&&!this.options?.findRegionSectionHeaders)return;let e=this.editor.getModel();if(e.isDisposed()||e.isTooLargeForSyncing())return;let t=e.getVersionId();this.editorWorkerService.findSectionHeaders(e.uri,this.options).then(n=>{e.isDisposed()||e.getVersionId()!==t||this.updateDecorations(n)})}updateDecorations(e){let t=this.editor.getModel();t&&(e=e.filter(e=>{if(!e.shouldBeInComments)return!0;let n=t.validateRange(e.range),r=t.tokenization.getLineTokens(n.startLineNumber),i=r.findTokenIndexAtOffset(n.startColumn-1),a=r.getStandardTokenType(i),o=t.getLanguageIdAtPosition(n.startLineNumber,n.startColumn);return r.getLanguageId(i)===o&&a===1}));let n=Object.values(this.currentOccurrences).map(e=>e.decorationId),r=e.map(e=>hV(e));this.editor.changeDecorations(t=>{let i=t.deltaDecorations(n,r);this.currentOccurrences={};for(let t=0,n=i.length;t<n;t++){let n={sectionHeader:e[t],decorationId:i[t]};this.currentOccurrences[n.decorationId]=n}})}stop(){this.computeSectionHeaders.cancel(),this.computePromise&&=(this.computePromise.cancel(),null)}dispose(){super.dispose(),this.stop(),this.decorations.clear()}};mV=fV([pV(1,Pn),pV(2,cr)],mV);function hV(e){return{range:e.range,options:P.createDynamic({description:`section-header`,stickiness:3,collapseOnReplaceEdit:!0,minimap:{color:void 0,position:1,sectionHeaderStyle:e.hasSeparatorLine?2:1,sectionHeaderText:e.text}})}}Ps(mV.ID,mV,1);function gV(e){for(let t=0,n=e.length;t<n;t+=4){let n=e[t+0],r=e[t+1],i=e[t+2],a=e[t+3];e[t+0]=a,e[t+1]=i,e[t+2]=r,e[t+3]=n}}function _V(e){let t=new Uint8Array(e.buffer,e.byteOffset,e.length*4);return Ft()||gV(t),ht.wrap(t)}function vV(e){let t=new Uint32Array(yV(e)),n=0;if(t[n++]=e.id,e.type===`full`)t[n++]=1,t[n++]=e.data.length,t.set(e.data,n),n+=e.data.length;else{t[n++]=2,t[n++]=e.deltas.length;for(let r of e.deltas)t[n++]=r.start,t[n++]=r.deleteCount,r.data?(t[n++]=r.data.length,t.set(r.data,n),n+=r.data.length):t[n++]=0}return _V(t)}function yV(e){let t=0;if(t+=2,e.type===`full`)t+=1+e.data.length;else{t+=1,t+=3*e.deltas.length;for(let n of e.deltas)n.data&&(t+=n.data.length)}return t}function bV(e){return e&&!!e.data}function xV(e){return e&&Array.isArray(e.edits)}var SV=class{constructor(e,t,n){this.provider=e,this.tokens=t,this.error=n}};function CV(e,t){return e.has(t)}function wV(e,t){let n=e.orderedGroups(t);return n.length>0?n[0]:[]}async function TV(e,t,n,r,i){let a=wV(e,t),o=await Promise.all(a.map(async e=>{let a,o=null;try{a=await e.provideDocumentSemanticTokens(t,e===n?r:null,i)}catch(e){o=e,a=null}return a&&(bV(a)||xV(a))||(a=null),new SV(e,a,o)}));for(let e of o){if(e.error)throw e.error;if(e.tokens)return e}return o.length>0?o[0]:null}function EV(e,t){let n=e.orderedGroups(t);return n.length>0?n[0]:null}var DV=class{constructor(e,t){this.provider=e,this.tokens=t}};function OV(e,t){return e.has(t)}function kV(e,t){let n=e.orderedGroups(t);return n.length>0?n[0]:[]}async function AV(e,t,n,r){let i=kV(e,t),a=await Promise.all(i.map(async e=>{let i;try{i=await e.provideDocumentRangeSemanticTokens(t,n,r)}catch(e){Zs(e),i=null}return i&&bV(i)||(i=null),new DV(e,i)}));for(let e of a)if(e.tokens)return e;return a.length>0?a[0]:null}In.registerCommand(`_provideDocumentSemanticTokensLegend`,async(e,...t)=>{let[n]=t;Qn(n instanceof Yn);let r=e.get(ct).getModel(n);if(!r)return;let{documentSemanticTokensProvider:i}=e.get(R),a=EV(i,r);return a?a[0].getLegend():e.get(Er).executeCommand(`_provideDocumentRangeSemanticTokensLegend`,n)}),In.registerCommand(`_provideDocumentSemanticTokens`,async(e,...t)=>{let[n]=t;Qn(n instanceof Yn);let r=e.get(ct).getModel(n);if(!r)return;let{documentSemanticTokensProvider:i}=e.get(R);if(!CV(i,r))return e.get(Er).executeCommand(`_provideDocumentRangeSemanticTokens`,n,r.getFullModelRange());let a=await TV(i,r,null,null,T.None);if(!a)return;let{provider:o,tokens:s}=a;if(!s||!bV(s))return;let c=vV({id:0,type:`full`,data:s.data});return s.resultId&&o.releaseDocumentSemanticTokens(s.resultId),c}),In.registerCommand(`_provideDocumentRangeSemanticTokensLegend`,async(e,...t)=>{let[n,r]=t;Qn(n instanceof Yn);let i=e.get(ct).getModel(n);if(!i)return;let{documentRangeSemanticTokensProvider:a}=e.get(R),o=kV(a,i);if(o.length===0)return;if(o.length===1)return o[0].getLegend();if(!r||!C.isIRange(r))return console.warn(`provideDocumentRangeSemanticTokensLegend might be out-of-sync with provideDocumentRangeSemanticTokens unless a range argument is passed in`),o[0].getLegend();let s=await AV(a,i,C.lift(r),T.None);if(s)return s.provider.getLegend()}),In.registerCommand(`_provideDocumentRangeSemanticTokens`,async(e,...t)=>{let[n,r]=t;Qn(n instanceof Yn),Qn(C.isIRange(r));let i=e.get(ct).getModel(n);if(!i)return;let{documentRangeSemanticTokensProvider:a}=e.get(R),o=await AV(a,i,C.lift(r),T.None);if(o&&o.tokens)return vV({id:0,type:`full`,data:o.tokens.data})});var jV=`editor.semanticHighlighting`;function MV(e,t,n){let r=n.getValue(jV,{overrideIdentifier:e.getLanguageId(),resource:e.uri})?.enabled;return typeof r==`boolean`?r:t.getColorTheme().semanticHighlighting}var NV=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},PV=function(e,t){return function(n,r){t(n,r,e)}},FV=class extends G{static{this.ID=`editor.contrib.viewportSemanticTokens`}constructor(e,t,n,r,i,a){super(),this._semanticTokensStylingService=t,this._themeService=n,this._configurationService=r,this._editor=e,this._provider=a.documentRangeSemanticTokensProvider,this._debounceInformation=i.for(this._provider,`DocumentRangeSemanticTokens`,{min:100,max:500}),this._tokenizeViewport=this._register(new Pr(()=>this._tokenizeViewportNow(),100)),this._outstandingRequests=[],this._rangeProvidersChangeListeners=[];let o=()=>{this._editor.hasModel()&&this._tokenizeViewport.schedule(this._debounceInformation.get(this._editor.getModel()))},s=()=>{if(this._cleanupProviderListeners(),this._editor.hasModel()){let e=this._editor.getModel();for(let t of this._provider.all(e)){let e=t.onDidChange?.(()=>{this._cancelAll(),o()});e&&this._rangeProvidersChangeListeners.push(e)}}};this._register(this._editor.onDidScrollChange(()=>{o()})),this._register(this._editor.onDidChangeModel(()=>{s(),this._cancelAll(),o()})),this._register(this._editor.onDidChangeModelLanguage(()=>{s(),this._cancelAll(),o()})),this._register(this._editor.onDidChangeModelContent(e=>{this._cancelAll(),o()})),s(),this._register(this._provider.onDidChange(()=>{s(),this._cancelAll(),o()})),this._register(this._configurationService.onDidChangeConfiguration(e=>{e.affectsConfiguration(`editor.semanticHighlighting`)&&(this._cancelAll(),o())})),this._register(this._themeService.onDidColorThemeChange(()=>{this._cancelAll(),o()})),o()}dispose(){this._cleanupProviderListeners(),super.dispose()}_cleanupProviderListeners(){Pc(this._rangeProvidersChangeListeners),this._rangeProvidersChangeListeners=[]}_cancelAll(){for(let e of this._outstandingRequests)e.cancel();this._outstandingRequests=[]}_removeOutstandingRequest(e){for(let t=0,n=this._outstandingRequests.length;t<n;t++)if(this._outstandingRequests[t]===e){this._outstandingRequests.splice(t,1);return}}_tokenizeViewportNow(){if(!this._editor.hasModel())return;let e=this._editor.getModel();if(e.tokenization.hasCompleteSemanticTokens())return;if(!MV(e,this._themeService,this._configurationService)||!OV(this._provider,e)){e.tokenization.hasSomeSemanticTokens()&&e.tokenization.setSemanticTokens(null,!1);return}let t=this._editor.getVisibleRangesPlusViewportAboveBelow();this._outstandingRequests=this._outstandingRequests.concat(t.map(t=>this._requestRange(e,t)))}_requestRange(e,t){let n=e.getVersionId(),r=Et(n=>Promise.resolve(AV(this._provider,e,t,n))),i=new Os(!1);return r.then(r=>{if(this._debounceInformation.update(e,i.elapsed()),!r||!r.tokens||e.isDisposed()||e.getVersionId()!==n)return;let{provider:a,tokens:o}=r,s=this._semanticTokensStylingService.getStyling(a);e.tokenization.setPartialSemanticTokens(t,Nl(o,s,e.getLanguageId()))}).then(()=>this._removeOutstandingRequest(r),()=>this._removeOutstandingRequest(r)),r}};FV=NV([PV(1,Ms),PV(2,qn),PV(3,Vi),PV(4,Us),PV(5,R)],FV),Ps(FV.ID,FV,1);var IV=class{constructor(e=!0){this.selectSubwords=e}provideSelectionRanges(e,t){let n=[];for(let r of t){let t=[];n.push(t),this.selectSubwords&&this._addInWordRanges(t,e,r),this._addWordRanges(t,e,r),this._addWhitespaceLine(t,e,r),t.push({range:e.getFullModelRange()})}return n}_addInWordRanges(e,t,n){let r=t.getWordAtPosition(n);if(!r)return;let{word:i,startColumn:a}=r,o=n.column-a,s=o,c=o,l=0;for(;s>=0;s--){let e=i.charCodeAt(s);if(s!==o&&(e===95||e===45)||Js(e)&&vc(l))break;l=e}for(s+=1;c<i.length;c++){let e=i.charCodeAt(c);if(vc(e)&&Js(l)||e===95||e===45)break;l=e}s<c&&e.push({range:new C(n.lineNumber,a+s,n.lineNumber,a+c)})}_addWordRanges(e,t,n){let r=t.getWordAtPosition(n);r&&e.push({range:new C(n.lineNumber,r.startColumn,n.lineNumber,r.endColumn)})}_addWhitespaceLine(e,t,n){t.getLineLength(n.lineNumber)>0&&t.getLineFirstNonWhitespaceColumn(n.lineNumber)===0&&t.getLineLastNonWhitespaceColumn(n.lineNumber)===0&&e.push({range:new C(n.lineNumber,1,n.lineNumber,t.getLineMaxColumn(n.lineNumber))})}},LV=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},RV=function(e,t){return function(n,r){t(n,r,e)}},zV,BV=class e{constructor(e,t){this.index=e,this.ranges=t}mov(t){let n=this.index+(t?1:-1);if(n<0||n>=this.ranges.length)return this;let r=new e(n,this.ranges);return r.ranges[n].equalsRange(this.ranges[this.index])?r.mov(t):r}},VV=class{static{zV=this}static{this.ID=`editor.contrib.smartSelectController`}static get(e){return e.getContribution(zV.ID)}constructor(e,t){this._editor=e,this._languageFeaturesService=t,this._ignoreSelection=!1}dispose(){this._selectionListener?.dispose()}async run(e){if(!this._editor.hasModel())return;let t=this._editor.getSelections(),n=this._editor.getModel();if(this._state||await GV(this._languageFeaturesService.selectionRangeProvider,n,t.map(e=>e.getPosition()),this._editor.getOption(129),T.None).then(e=>{if(Eu(e)&&e.length===t.length&&this._editor.hasModel()&&Ad(this._editor.getSelections(),t,(e,t)=>e.equalsSelection(t))){for(let n=0;n<e.length;n++)e[n]=e[n].filter(e=>e.containsPosition(t[n].getStartPosition())&&e.containsPosition(t[n].getEndPosition())),e[n].unshift(t[n]);this._state=e.map(e=>new BV(0,e)),this._selectionListener?.dispose(),this._selectionListener=this._editor.onDidChangeCursorPosition(()=>{this._ignoreSelection||(this._selectionListener?.dispose(),this._state=void 0)})}}),!this._state)return;this._state=this._state.map(t=>t.mov(e));let r=this._state.map(e=>q.fromPositions(e.ranges[e.index].getStartPosition(),e.ranges[e.index].getEndPosition()));this._ignoreSelection=!0;try{this._editor.setSelections(r)}finally{this._ignoreSelection=!1}}};VV=zV=LV([RV(1,R)],VV);var HV=class extends W{constructor(e,t){super(t),this._forward=e}async run(e,t){let n=VV.get(t);n&&await n.run(this._forward)}},UV=class extends HV{constructor(){super(!0,{id:`editor.action.smartSelect.expand`,label:L(1469,`Expand Selection`),precondition:void 0,kbOpts:{kbExpr:E.editorTextFocus,primary:1553,mac:{primary:3345,secondary:[1297]},weight:100},menuOpts:{menuId:D.MenubarSelectionMenu,group:`1_basic`,title:x(1467,`&&Expand Selection`),order:2}})}};In.registerCommandAlias(`editor.action.smartSelect.grow`,`editor.action.smartSelect.expand`);var WV=class extends HV{constructor(){super(!1,{id:`editor.action.smartSelect.shrink`,label:L(1470,`Shrink Selection`),precondition:void 0,kbOpts:{kbExpr:E.editorTextFocus,primary:1551,mac:{primary:3343,secondary:[1295]},weight:100},menuOpts:{menuId:D.MenubarSelectionMenu,group:`1_basic`,title:x(1468,`&&Shrink Selection`),order:3}})}};Ps(VV.ID,VV,4),z(UV),z(WV);async function GV(e,t,n,r,i){let a=e.all(t).concat(new IV(r.selectSubwords));a.length===1&&a.unshift(new $M);let o=[],s=[];for(let e of a)o.push(Promise.resolve(e.provideSelectionRanges(t,n,i)).then(e=>{if(Eu(e)&&e.length===n.length)for(let t=0;t<n.length;t++){s[t]||(s[t]=[]);for(let r of e[t])C.isIRange(r.range)&&C.containsPosition(r.range,n[t])&&s[t].push(C.lift(r.range))}},Zs));return await Promise.all(o),s.map(e=>{if(e.length===0)return[];e.sort((e,t)=>A.isBefore(e.getStartPosition(),t.getStartPosition())?1:A.isBefore(t.getStartPosition(),e.getStartPosition())||A.isBefore(e.getEndPosition(),t.getEndPosition())?-1:+!!A.isBefore(t.getEndPosition(),e.getEndPosition()));let n=[],i;for(let t of e)(!i||C.containsRange(t,i)&&!C.equalsRange(t,i))&&(n.push(t),i=t);if(!r.selectLeadingAndTrailingWhitespace)return n;let a=[n[0]];for(let e=1;e<n.length;e++){let r=n[e-1],i=n[e];if(i.startLineNumber!==r.startLineNumber||i.endLineNumber!==r.endLineNumber){let e=new C(r.startLineNumber,t.getLineFirstNonWhitespaceColumn(r.startLineNumber),r.endLineNumber,t.getLineLastNonWhitespaceColumn(r.endLineNumber));e.containsRange(r)&&!e.equalsRange(r)&&i.containsRange(e)&&!i.equalsRange(e)&&a.push(e);let n=new C(r.startLineNumber,1,r.endLineNumber,t.getLineMaxColumn(r.endLineNumber));n.containsRange(r)&&!n.equalsRange(e)&&i.containsRange(n)&&!i.equalsRange(n)&&a.push(n)}a.push(i)}return a})}In.registerCommand(`_executeSelectionRangeProvider`,async function(e,...t){let[n,r]=t;Qn(Yn.isUri(n)),Qn(Mr(r,e=>A.isIPosition(e)));let i=e.get(R).selectionRangeProvider,a=await e.get(Ui).createModelReference(n);try{return GV(i,a.object.textEditorModel,r.map(A.lift),{selectLeadingAndTrailingWhitespace:!0,selectSubwords:!0},T.None)}finally{a.dispose()}});var KV=class extends su{constructor(){super({id:`editor.action.toggleStickyScroll`,title:{...L(1518,`Toggle Editor Sticky Scroll`),mnemonicTitle:x(1514,`&&Toggle Editor Sticky Scroll`)},metadata:{description:L(1519,`Toggle/enable the editor sticky scroll which shows the nested scopes at the top of the viewport`)},category:TB.View,toggled:{condition:w.equals(`config.editor.stickyScroll.enabled`,!0),title:x(1515,`Sticky Scroll`),mnemonicTitle:x(1516,`&&Sticky Scroll`)},menu:[{id:D.CommandPalette},{id:D.MenubarAppearanceMenu,group:`4_editor`,order:3},{id:D.StickyScrollContext}]})}async runEditorCommand(e,t){let n=e.get(Vi),r=!n.getValue(`editor.stickyScroll.enabled`),i=GP.get(t)?.isFocused();n.updateValue(`editor.stickyScroll.enabled`,r),i&&t.focus()}},qV=100,JV=class extends su{constructor(){super({id:`editor.action.focusStickyScroll`,title:{...L(1520,`Focus Editor Sticky Scroll`),mnemonicTitle:x(1517,`&&Focus Editor Sticky Scroll`)},precondition:w.and(w.has(`config.editor.stickyScroll.enabled`),E.stickyScrollVisible),menu:[{id:D.CommandPalette}]})}runEditorCommand(e,t){GP.get(t)?.focus()}},YV=class extends su{constructor(){super({id:`editor.action.selectNextStickyScrollLine`,title:L(1521,`Select the next editor sticky scroll line`),precondition:E.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:qV,primary:18}})}runEditorCommand(e,t){GP.get(t)?.focusNext()}},XV=class extends su{constructor(){super({id:`editor.action.selectPreviousStickyScrollLine`,title:L(1522,`Select the previous sticky scroll line`),precondition:E.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:qV,primary:16}})}runEditorCommand(e,t){GP.get(t)?.focusPrevious()}},ZV=class extends su{constructor(){super({id:`editor.action.goToFocusedStickyScrollLine`,title:L(1523,`Go to the focused sticky scroll line`),precondition:E.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:qV,primary:3}})}runEditorCommand(e,t){GP.get(t)?.goToFocused()}},QV=class extends su{constructor(){super({id:`editor.action.selectEditor`,title:L(1524,`Select Editor`),precondition:E.stickyScrollFocused.isEqualTo(!0),keybinding:{weight:qV,primary:9}})}runEditorCommand(e,t){GP.get(t)?.selectEditor()}};Ps(GP.ID,GP,1),ea(KV),ea(JV),ea(XV),ea(YV),ea(ZV),ea(QV);var $V=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},eH=function(e,t){return function(n,r){t(n,r,e)}},tH=class{constructor(e,t,n,r,i,a,o){this.range=e,this.insertText=t,this.filterText=n,this.additionalTextEdits=r,this.command=i,this.gutterMenuLinkAction=a,this.completion=o,this.doNotLog=!0}},nH=class extends Tu{constructor(e,t,n,r,i,a){super(i.disposable),this.model=e,this.line=t,this.word=n,this.completionModel=r,this._suggestMemoryService=a}canBeReused(e,t,n){return this.model===e&&this.line===t&&this.word.word.length>0&&this.word.startColumn===n.startColumn&&this.word.endColumn<n.endColumn&&this.completionModel.getIncompleteProvider().size===0}get items(){let e=[],{items:t}=this.completionModel,n=this._suggestMemoryService.select(this.model,{lineNumber:this.line,column:this.word.endColumn+this.completionModel.lineContext.characterCountDelta},t),r=Vd.slice(t,n),i=Vd.slice(t,0,n),a=5;for(let t of Vd.concat(r,i)){if(t.score===Bf.Default)continue;let n=new C(t.editStart.lineNumber,t.editStart.column,t.editInsertEnd.lineNumber,t.editInsertEnd.column+this.completionModel.lineContext.characterCountDelta),r=t.completion.insertTextRules&&t.completion.insertTextRules&4?{snippet:t.completion.insertText}:t.completion.insertText;e.push(new tH(n,r,t.filterTextLow??t.labelLow,t.completion.additionalTextEdits,t.completion.command,t.completion.action,t)),a-->=0&&t.resolve(T.None)}return e}};nH=$V([eH(5,VM)],nH);var rH=class extends G{constructor(e,t,n,r){super(),this._languageFeatureService=e,this._clipboardService=t,this._suggestMemoryService=n,this._editorService=r,this._store.add(e.inlineCompletionsProvider.register(`*`,this))}async provideInlineCompletions(e,t,n,r){if(n.selectedSuggestionInfo)return;let i;for(let t of this._editorService.listCodeEditors())if(t.getModel()===e){i=t;break}if(!i)return;let a=i.getOption(102);if(GO.isAllOff(a))return;e.tokenization.tokenizeIfCheap(t.lineNumber);let o=e.tokenization.getLineTokens(t.lineNumber),s=o.getStandardTokenType(o.findTokenIndexAtOffset(Math.max(t.column-1-1,0)));if(GO.valueFor(a,s)!==`inline`)return;let c=e.getWordAtPosition(t),l;if(c?.word||(l=this._getTriggerCharacterInfo(e,t)),!c?.word&&!l||(c||=e.getWordUntilPosition(t),c.endColumn!==t.column))return;let u,d=e.getValueInRange(new C(t.lineNumber,1,t.lineNumber,t.column));if(!l&&this._lastResult?.canBeReused(e,t.lineNumber,c)){let e=new ZM(d,t.column-this._lastResult.word.endColumn);this._lastResult.completionModel.lineContext=e,this._lastResult.acquire(),u=this._lastResult}else{let n=await RO(this._languageFeatureService.completionProvider,e,t,new IO(void 0,sN.createSuggestFilter(i).itemKind,l?.providers),l&&{triggerKind:1,triggerCharacter:l.ch},r),a;n.needsClipboard&&(a=await this._clipboardService.readText());let o=new QM(n.items,t.column,new ZM(d,0),eN.None,i.getOption(134),i.getOption(128),{boostFullMatch:!1,firstMatchCanBeWeak:!1},a);u=new nH(e,t.lineNumber,c,o,n,this._suggestMemoryService)}return this._lastResult=u,u}handleItemDidShow(e,t){t.completion.resolve(T.None)}disposeInlineCompletions(e){e.release()}_getTriggerCharacterInfo(e,t){let n=e.getValueInRange(C.fromPositions({lineNumber:t.lineNumber,column:t.column-1},t)),r=new Set;for(let t of this._languageFeatureService.completionProvider.all(e))t.triggerCharacters?.includes(n)&&r.add(t);if(r.size!==0)return{providers:r,ch:n}}};rH=$V([eH(0,R),eH(1,ss),eH(2,VM),eH(3,Xs)],rH),$e(rH),z(class extends W{constructor(){super({id:`editor.action.toggleHighContrast`,label:Pi.toggleHighContrast,alias:`Toggle High Contrast Theme`,precondition:void 0}),this._originalThemeName=null}run(e,t){let n=e.get(vr),r=n.getColorTheme();mt(r.type)?(n.setTheme(this._originalThemeName||(vl(r.type)?`vs-dark`:`vs`)),this._originalThemeName=null):(n.setTheme(vl(r.type)?Si:hn),this._originalThemeName=r.themeName)}});var iH=class e extends dl{static{this.ID=`editor.action.toggleTabFocusMode`}constructor(){super({id:e.ID,title:L(1604,`Toggle Tab Key Moves Focus`),precondition:void 0,keybinding:{primary:2091,mac:{primary:1323},weight:100},metadata:{description:L(1605,`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(){let e=!yr.getTabFocusMode();yr.setTabFocusMode(e),bo(e?x(1602,`Pressing Tab will now move focus to the next focusable element`):x(1603,`Pressing Tab will now insert the tab character`))}};ea(iH),z(class extends W{constructor(){super({id:`editor.action.forceRetokenize`,label:L(1606,`Developer: Force Retokenize`),precondition:void 0})}run(e,t){if(!t.hasModel())return;let n=t.getModel();n.tokenization.resetTokenization();let r=new Os;n.tokenization.forceTokenization(n.getLineCount()),r.stop(),console.log(`tokenization took ${r.elapsed()}`)}});var aH=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},oH=function(e,t){return function(n,r){t(n,r,e)}},sH=26,cH=class extends G{constructor(e,t){super(),this._editor=e,this.instantiationService=t,this.banner=this._register(this.instantiationService.createInstance(lH))}hide(){this._editor.setBanner(null,0),this.banner.clear()}show(e){this.banner.show({...e,onClose:()=>{this.hide(),e.onClose?.()}}),this._editor.setBanner(this.banner.element,sH)}};cH=aH([oH(1,U)],cH);var lH=class extends G{constructor(e,t){super(),this.instantiationService=e,this.markdownRendererService=t,this.element=M(`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`){let t=M(`span`);return t.innerText=e,t}return this.markdownRendererService.render(e).element}clear(){wf(this.element)}show(e){wf(this.element);let t=this.getAriaLabel(e);t&&this.element.setAttribute(`aria-label`,t);let n=K(this.element,M(`div.icon-container`));n.setAttribute(`aria-hidden`,`true`),e.icon&&n.appendChild(M(`div${V.asCSSSelector(e.icon)}`));let r=K(this.element,M(`div.message-container`));if(r.setAttribute(`aria-hidden`,`true`),r.appendChild(this.getBannerMessage(e.message)),this.messageActionsContainer=K(this.element,M(`div.message-actions-container`)),e.actions)for(let t of e.actions)this._register(this.instantiationService.createInstance(Rm,this.messageActionsContainer,{...t,tabIndex:-1},{}));let i=K(this.element,M(`div.action-container`));this.actionBar=this._register(new zr(i)),this.actionBar.push(this._register(new gr(`banner.close`,x(1607,`Close Banner`),V.asClassName(Ki),!0,()=>{typeof e.onClose==`function`&&e.onClose()})),{icon:!0,label:!1}),this.actionBar.setFocusable(!1)}};lH=aH([oH(0,U),oH(1,ba)],lH);var uH=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},dH=function(e,t){return function(n,r){t(n,r,e)}},fH=kr(`extensions-warning-message`,k.warning,x(1608,`Icon shown with a warning message in the extensions editor.`)),pH=class extends G{static{this.ID=`editor.contrib.unicodeHighlighter`}constructor(e,t,n,r){super(),this._editor=e,this._editorWorkerService=t,this._workspaceTrustService=n,this._highlighter=null,this._bannerClosed=!1,this._updateState=e=>{if(e&&e.hasMore){if(this._bannerClosed)return;let t=Math.max(e.ambiguousCharacterCount,e.nonBasicAsciiCharacterCount,e.invisibleCharacterCount),n;if(e.nonBasicAsciiCharacterCount>=t)n={message:x(1609,`This document contains many non-basic ASCII unicode characters`),command:new OH};else if(e.ambiguousCharacterCount>=t)n={message:x(1610,`This document contains many ambiguous unicode characters`),command:new EH};else if(e.invisibleCharacterCount>=t)n={message:x(1611,`This document contains many invisible unicode characters`),command:new DH};else throw Error(`Unreachable`);this._bannerController.show({id:`unicodeHighlightBanner`,message:n.message,icon:fH,actions:[{label:n.command.shortLabel,href:`command:${n.command.desc.id}`}],onClose:()=>{this._bannerClosed=!0}})}else this._bannerController.hide()},this._bannerController=this._register(r.createInstance(cH,e)),this._register(this._editor.onDidChangeModel(()=>{this._bannerClosed=!1,this._updateHighlighter()})),this._options=e.getOption(142),this._register(n.onDidChangeTrust(e=>{this._updateHighlighter()})),this._register(e.onDidChangeConfiguration(t=>{t.hasChanged(142)&&(this._options=e.getOption(142),this._updateHighlighter())})),this._updateHighlighter()}dispose(){this._highlighter&&=(this._highlighter.dispose(),null),super.dispose()}_updateHighlighter(){if(this._updateState(null),this._highlighter&&=(this._highlighter.dispose(),null),!this._editor.hasModel())return;let e=mH(this._workspaceTrustService.isWorkspaceTrusted(),this._options);if([e.nonBasicASCII,e.ambiguousCharacters,e.invisibleCharacters].every(e=>e===!1))return;let t={nonBasicASCII:e.nonBasicASCII,ambiguousCharacters:e.ambiguousCharacters,invisibleCharacters:e.invisibleCharacters,includeComments:e.includeComments,includeStrings:e.includeStrings,allowedCodePoints:Object.keys(e.allowedCharacters).map(e=>e.codePointAt(0)),allowedLocales:Object.keys(e.allowedLocales).map(e=>e===`_os`?Ga.NumberFormat().value.resolvedOptions().locale:e===`_vscode`?pi:e)};this._highlighter=this._editorWorkerService.canComputeUnicodeHighlights(this._editor.getModel().uri)?new hH(this._editor,t,this._updateState,this._editorWorkerService):new gH(this._editor,t,this._updateState)}getDecorationInfo(e){return this._highlighter?this._highlighter.getDecorationInfo(e):null}};pH=uH([dH(1,cr),dH(2,ds),dH(3,U)],pH);function mH(e,t){return{nonBasicASCII:t.nonBasicASCII===`inUntrustedWorkspace`?!e:t.nonBasicASCII,ambiguousCharacters:t.ambiguousCharacters,invisibleCharacters:t.invisibleCharacters,includeComments:t.includeComments===`inUntrustedWorkspace`?!e:t.includeComments,includeStrings:t.includeStrings===`inUntrustedWorkspace`?!e:t.includeStrings,allowedCharacters:t.allowedCharacters,allowedLocales:t.allowedLocales}}var hH=class extends G{constructor(e,t,n,r){super(),this._editor=e,this._options=t,this._updateState=n,this._editorWorkerService=r,this._model=this._editor.getModel(),this._decorations=this._editor.createDecorationsCollection(),this._updateSoon=this._register(new Pr(()=>this._update(),250)),this._register(this._editor.onDidChangeModelContent(()=>{this._updateSoon.schedule()})),this._updateSoon.schedule()}dispose(){this._decorations.clear(),super.dispose()}_update(){if(this._model.isDisposed())return;if(!this._model.mightContainNonBasicASCII()){this._decorations.clear();return}let e=this._model.getVersionId();this._editorWorkerService.computedUnicodeHighlights(this._model.uri,this._options).then(t=>{if(this._model.isDisposed()||this._model.getVersionId()!==e)return;this._updateState(t);let n=[];if(!t.hasMore)for(let e of t.ranges)n.push({range:e,options:CH.instance.getDecorationFromOptions(this._options)});this._decorations.set(n)})}getDecorationInfo(e){if(!this._decorations.has(e))return null;let t=this._editor.getModel();return Lr(t,e)?{reason:SH(t.getValueInRange(e.range),this._options),inComment:Cn(t,e),inString:rr(t,e)}:null}};hH=uH([dH(3,cr)],hH);var gH=class extends G{constructor(e,t,n){super(),this._editor=e,this._options=t,this._updateState=n,this._model=this._editor.getModel(),this._decorations=this._editor.createDecorationsCollection(),this._updateSoon=this._register(new Pr(()=>this._update(),250)),this._register(this._editor.onDidLayoutChange(()=>{this._updateSoon.schedule()})),this._register(this._editor.onDidScrollChange(()=>{this._updateSoon.schedule()})),this._register(this._editor.onDidChangeHiddenAreas(()=>{this._updateSoon.schedule()})),this._register(this._editor.onDidChangeModelContent(()=>{this._updateSoon.schedule()})),this._updateSoon.schedule()}dispose(){this._decorations.clear(),super.dispose()}_update(){if(this._model.isDisposed())return;if(!this._model.mightContainNonBasicASCII()){this._decorations.clear();return}let e=this._editor.getVisibleRanges(),t=[],n={ranges:[],ambiguousCharacterCount:0,invisibleCharacterCount:0,nonBasicAsciiCharacterCount:0,hasMore:!1};for(let t of e){let e=ki.computeUnicodeHighlights(this._model,this._options,t);for(let t of e.ranges)n.ranges.push(t);n.ambiguousCharacterCount+=n.ambiguousCharacterCount,n.invisibleCharacterCount+=n.invisibleCharacterCount,n.nonBasicAsciiCharacterCount+=n.nonBasicAsciiCharacterCount,n.hasMore=n.hasMore||e.hasMore}if(!n.hasMore)for(let e of n.ranges)t.push({range:e,options:CH.instance.getDecorationFromOptions(this._options)});this._updateState(n),this._decorations.set(t)}getDecorationInfo(e){if(!this._decorations.has(e))return null;let t=this._editor.getModel(),n=t.getValueInRange(e.range);return Lr(t,e)?{reason:SH(n,this._options),inComment:Cn(t,e),inString:rr(t,e)}:null}},_H=x(1612,`Configure Unicode Highlight Options`),vH=class{constructor(e,t){this._editor=e,this._markdownRendererService=t,this.hoverOrdinal=5}computeSync(e,t){if(!this._editor.hasModel()||e.type!==1)return[];let n=this._editor.getModel(),r=this._editor.getContribution(pH.ID);if(!r)return[];let i=[],a=new Set,o=300;for(let e of t){let t=r.getDecorationInfo(e);if(!t)continue;let s=n.getValueInRange(e.range).codePointAt(0),c=bH(s),l;switch(t.reason.kind){case 0:l=hd(t.reason.confusableWith)?x(1613,`The character {0} could be confused with the ASCII character {1}, which is more common in source code.`,c,bH(t.reason.confusableWith.codePointAt(0))):x(1614,`The character {0} could be confused with the character {1}, which is more common in source code.`,c,bH(t.reason.confusableWith.codePointAt(0)));break;case 1:l=x(1615,`The character {0} is invisible.`,c);break;case 2:l=x(1616,`The character {0} is not a basic ASCII character.`,c)}if(a.has(l))continue;a.add(l);let u={codePoint:s,reason:t.reason,inComment:t.inComment,inString:t.inString},d=x(1617,`Adjust settings`),f=xn(kH.ID,u),p=new Oi(``,!0).appendMarkdown(l).appendText(` `).appendLink(f,d,_H);i.push(new ob(this,e.range,[p],!1,o++))}return i}renderHoverParts(e,t){return db(e,t,this._editor,this._markdownRendererService)}getAccessibleContent(e){return e.contents.map(e=>e.value).join(`
|
|
50
50
|
`)}};vH=uH([dH(1,ba)],vH);function yH(e){return`U+${e.toString(16).padStart(4,`0`)}`}function bH(e){let t=`\`${yH(e)}\``;return fo.isInvisibleCharacter(e)||(t+=` "${`${xH(e)}`}"`),t}function xH(e){return e===96?"`` ` ``":"`"+String.fromCodePoint(e)+"`"}function SH(e,t){return ki.computeUnicodeHighlightReason(e,t)}var CH=class e{constructor(){this.map=new Map}static{this.instance=new e}getDecorationFromOptions(e){return this.getDecoration(!e.includeComments,!e.includeStrings)}getDecoration(e,t){let n=`${e}${t}`,r=this.map.get(n);return r||(r=P.createDynamic({description:`unicode-highlight`,stickiness:1,className:`unicode-highlight`,showIfCollapsed:!0,overviewRuler:null,minimap:null,hideInCommentTokens:e,hideInStringTokens:t}),this.map.set(n,r)),r}},wH=class extends W{constructor(){super({id:EH.ID,label:L(1626,`Disable highlighting of characters in comments`),precondition:void 0}),this.shortLabel=x(1618,`Disable Highlight In Comments`)}async run(e,t){let n=e.get(Vi);n&&this.runAction(n)}async runAction(e){await e.updateValue(vd.includeComments,!1,2)}},TH=class extends W{constructor(){super({id:EH.ID,label:L(1627,`Disable highlighting of characters in strings`),precondition:void 0}),this.shortLabel=x(1619,`Disable Highlight In Strings`)}async run(e,t){let n=e.get(Vi);n&&this.runAction(n)}async runAction(e){await e.updateValue(vd.includeStrings,!1,2)}},EH=class e extends dl{static{this.ID=`editor.action.unicodeHighlight.disableHighlightingOfAmbiguousCharacters`}constructor(){super({id:e.ID,title:L(1628,`Disable highlighting of ambiguous characters`),precondition:void 0,f1:!1}),this.shortLabel=x(1620,`Disable Ambiguous Highlight`)}async run(e,t){let n=e.get(Vi);n&&this.runAction(n)}async runAction(e){await e.updateValue(vd.ambiguousCharacters,!1,2)}},DH=class e extends dl{static{this.ID=`editor.action.unicodeHighlight.disableHighlightingOfInvisibleCharacters`}constructor(){super({id:e.ID,title:L(1629,`Disable highlighting of invisible characters`),precondition:void 0,f1:!1}),this.shortLabel=x(1621,`Disable Invisible Highlight`)}async run(e,t){let n=e.get(Vi);n&&this.runAction(n)}async runAction(e){await e.updateValue(vd.invisibleCharacters,!1,2)}},OH=class e extends dl{static{this.ID=`editor.action.unicodeHighlight.disableHighlightingOfNonBasicAsciiCharacters`}constructor(){super({id:e.ID,title:L(1630,`Disable highlighting of non basic ASCII characters`),precondition:void 0,f1:!1}),this.shortLabel=x(1622,`Disable Non ASCII Highlight`)}async run(e,t){let n=e.get(Vi);n&&this.runAction(n)}async runAction(e){await e.updateValue(vd.nonBasicASCII,!1,2)}},kH=class e extends dl{static{this.ID=`editor.action.unicodeHighlight.showExcludeOptions`}constructor(){super({id:e.ID,title:L(1631,`Show Exclude Options`),precondition:void 0,f1:!1})}async run(e,t){let{codePoint:n,reason:r,inString:i,inComment:a}=t,o=String.fromCodePoint(n),s=e.get(Gd),c=e.get(Vi);function l(e){return fo.isInvisibleCharacter(e)?x(1623,`Exclude {0} (invisible character) from being highlighted`,yH(e)):x(1624,`Exclude {0} from being highlighted`,`${yH(e)} "${o}"`)}let u=[];if(r.kind===0)for(let e of r.notAmbiguousInLocales)u.push({label:x(1625,`Allow unicode characters that are more common in the language "{0}".`,e),run:async()=>{jH(c,[e])}});if(u.push({label:l(n),run:()=>AH(c,[n])}),a){let e=new wH;u.push({label:e.label,run:async()=>e.runAction(c)})}else if(i){let e=new TH;u.push({label:e.label,run:async()=>e.runAction(c)})}function d(e){return typeof e.desc.title==`string`?e.desc.title:e.desc.title.value}if(r.kind===0){let e=new EH;u.push({label:d(e),run:async()=>e.runAction(c)})}else if(r.kind===1){let e=new DH;u.push({label:d(e),run:async()=>e.runAction(c)})}else if(r.kind===2){let e=new OH;u.push({label:d(e),run:async()=>e.runAction(c)})}else MH(r);let f=await s.pick(u,{title:_H});f&&await f.run()}};async function AH(e,t){let n=e.getValue(vd.allowedCharacters),r;r=typeof n==`object`&&n?n:{};for(let e of t)r[String.fromCodePoint(e)]=!0;await e.updateValue(vd.allowedCharacters,r,2)}async function jH(e,t){let n=e.inspect(vd.allowedLocales).user?.value,r;r=typeof n==`object`&&n?Object.assign({},n):{};for(let e of t)r[e]=!0;await e.updateValue(vd.allowedLocales,r,2)}function MH(e){throw Error(`Unexpected value: ${e}`)}ea(EH),ea(DH),ea(OH),ea(kH),Ps(pH.ID,pH,1),c_.register(vH);var NH=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},PH=function(e,t){return function(n,r){t(n,r,e)}},FH=`ignoreUnusualLineTerminators`;function IH(e,t,n){e.setModelProperty(t.uri,FH,n)}function LH(e,t){return e.getModelProperty(t.uri,FH)}var RH=class extends G{static{this.ID=`editor.contrib.unusualLineTerminatorsDetector`}constructor(e,t,n){super(),this._editor=e,this._dialogService=t,this._codeEditorService=n,this._isPresentingDialog=!1,this._config=this._editor.getOption(143),this._register(this._editor.onDidChangeConfiguration(e=>{e.hasChanged(143)&&(this._config=this._editor.getOption(143),this._checkForUnusualLineTerminators())})),this._register(this._editor.onDidChangeModel(()=>{this._checkForUnusualLineTerminators()})),this._register(this._editor.onDidChangeModelContent(e=>{e.isUndoing||this._checkForUnusualLineTerminators()})),this._checkForUnusualLineTerminators()}async _checkForUnusualLineTerminators(){if(this._config===`off`||!this._editor.hasModel())return;let e=this._editor.getModel();if(!e.mightContainUnusualLineTerminators()||LH(this._codeEditorService,e)===!0||this._editor.getOption(104))return;if(this._config===`auto`){e.removeUnusualLineTerminators(this._editor.getSelections());return}if(this._isPresentingDialog)return;let t;try{this._isPresentingDialog=!0,t=await this._dialogService.confirm({title:x(1632,`Unusual Line Terminators`),message:x(1633,`Detected unusual line terminators`),detail:x(1634,`The file '{0}' contains one or more unusual line terminator characters, like Line Separator (LS) or Paragraph Separator (PS).
|
|
51
51
|
|
|
52
|
-
It is recommended to remove them from the file. This can be configured via \`editor.unusualLineTerminators\`.`,Jd(e.uri)),primaryButton:x(1635,`&&Remove Unusual Line Terminators`),cancelButton:x(1636,`Ignore`)})}finally{this._isPresentingDialog=!1}t.confirmed?e.removeUnusualLineTerminators(this._editor.getSelections()):IH(this._codeEditorService,e,!0)}};RH=NH([PH(1,ca),PH(2,Xs)],RH),Ps(RH.ID,RH,1);var zH=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},BH=function(e,t){return function(n,r){t(n,r,e)}},VH=class{constructor(){this.selector={language:`*`}}provideDocumentHighlights(e,t,n){if(e.isDisposed())return;let r=[],i=e.getWordAtPosition({lineNumber:t.lineNumber,column:t.column});return i?e.findMatches(i.word,!0,!1,!0,eu,!1).map(e=>({range:e.range,kind:xf.Text})):Promise.resolve(r)}provideMultiDocumentHighlights(e,t,n,r){if(e.isDisposed())return;let i=new Cl,a=e.getWordAtPosition({lineNumber:t.lineNumber,column:t.column});if(!a)return Promise.resolve(i);for(let t of[e,...n]){if(t.isDisposed())continue;let e=t.findMatches(a.word,!0,!1,!0,eu,!1).map(e=>({range:e.range,kind:xf.Text}));e&&i.set(t.uri,e)}return i}},HH=class extends G{constructor(e){super(),this._register(e.documentHighlightProvider.register(`*`,new VH)),this._register(e.multiDocumentHighlightProvider.register(`*`,new VH))}};HH=zH([BH(0,R)],HH);var UH=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},WH=function(e,t){return function(n,r){t(n,r,e)}},GH,KH,qH=new j(`hasWordHighlights`,!1);function JH(e,t,n,r){let i=e.ordered(t);return Wn(i.map(e=>()=>Promise.resolve(e.provideDocumentHighlights(t,n,r)).then(void 0,Zs)),e=>e!=null).then(e=>{if(e){let n=new Cl;return n.set(t.uri,e),n}return new Cl})}function YH(e,t,n,r,i){let a=e.ordered(t);return Wn(a.map(e=>()=>{let a=i.filter(e=>Vf(e)).filter(t=>Nd(e.selector,t.uri,t.getLanguageId(),!0,void 0,void 0)>0);return Promise.resolve(e.provideMultiDocumentHighlights(t,n,a,r)).then(void 0,Zs)}),e=>e!=null)}var XH=class{constructor(e,t,n){this._model=e,this._selection=t,this._wordSeparators=n,this._wordRange=this._getCurrentWordRange(e,t),this._result=null}get result(){return this._result||=Et(e=>this._compute(this._model,this._selection,this._wordSeparators,e)),this._result}_getCurrentWordRange(e,t){let n=e.getWordAtPosition(t.getPosition());return n?new C(t.startLineNumber,n.startColumn,t.startLineNumber,n.endColumn):null}cancel(){this.result.cancel()}},ZH=class extends XH{constructor(e,t,n,r){super(e,t,n),this._providers=r}_compute(e,t,n,r){return JH(this._providers,e,t.getPosition(),r).then(e=>e||new Cl)}},QH=class extends XH{constructor(e,t,n,r,i){super(e,t,n),this._providers=r,this._otherModels=i}_compute(e,t,n,r){return YH(this._providers,e,t.getPosition(),r,this._otherModels).then(e=>e||new Cl)}};function $H(e,t,n,r){return new ZH(t,n,r,e)}function eU(e,t,n,r,i){return new QH(t,n,r,e,i)}Id(`_executeDocumentHighlights`,async(e,t,n)=>(await JH(e.get(R).documentHighlightProvider,t,n,T.None))?.get(t.uri));var tU=class{static{GH=this}static{this.storedDecorationIDs=new Cl}static{this.query=null}constructor(e,t,n,r,i,a,o,s){this.toUnhook=new F,this.workerRequestTokenId=0,this.workerRequestCompleted=!1,this.workerRequestValue=new Cl,this.lastCursorPositionChangeTime=0,this.renderDecorationsTimer=void 0,this.runDelayer=this.toUnhook.add(new er(50)),this.editor=e,this.providers=t,this.multiDocumentProviders=n,this.codeEditorService=a,this.textModelService=i,this.configurationService=o,this.logService=s,this._hasWordHighlights=qH.bindTo(r),this._ignorePositionChangeEvent=!1,this.occurrencesHighlightEnablement=this.editor.getOption(90),this.occurrencesHighlightDelay=this.configurationService.getValue(`editor.occurrencesHighlightDelay`),this.model=this.editor.getModel(),this.toUnhook.add(e.onDidChangeCursorPosition(e=>{this._ignorePositionChangeEvent||this.occurrencesHighlightEnablement!==`off`&&this.runDelayer.trigger(()=>{this._onPositionChanged(e)}).catch(nt)})),this.toUnhook.add(e.onDidFocusEditorText(e=>{this.occurrencesHighlightEnablement!==`off`&&(this.workerRequest||this.runDelayer.trigger(()=>{this._run()}).catch(nt))})),this.toUnhook.add(e.onDidChangeModelContent(e=>{Kr(this.model.uri,`output`)||this._stopAll()})),this.toUnhook.add(e.onDidChangeModel(e=>{!e.newModelUrl&&e.oldModelUrl?this._stopSingular():GH.query&&this._run()})),this.toUnhook.add(e.onDidChangeConfiguration(e=>{let t=this.editor.getOption(90);if(this.occurrencesHighlightEnablement!==t)switch(this.occurrencesHighlightEnablement=t,t){case`off`:this._stopAll();break;case`singleFile`:this._stopAll(GH.query?.modelInfo?.modelURI);break;case`multiFile`:GH.query&&this._run(!0);break;default:console.warn(`Unknown occurrencesHighlight setting value:`,t)}})),this.toUnhook.add(this.configurationService.onDidChangeConfiguration(e=>{if(e.affectsConfiguration(`editor.occurrencesHighlightDelay`)){let e=o.getValue(`editor.occurrencesHighlightDelay`);this.occurrencesHighlightDelay!==e&&(this.occurrencesHighlightDelay=e)}})),this.toUnhook.add(e.onDidBlurEditorWidget(()=>{let e=this.codeEditorService.getFocusedCodeEditor();e?e.getModel()?.uri.scheme===sl.vscodeNotebookCell&&this.editor.getModel()?.uri.scheme!==sl.vscodeNotebookCell&&this._stopAll():this._stopAll()})),this.decorations=this.editor.createDecorationsCollection(),this.workerRequestTokenId=0,this.workerRequest=null,this.workerRequestCompleted=!1,this.lastCursorPositionChangeTime=0,this.renderDecorationsTimer=void 0,GH.query&&this._run()}hasDecorations(){return this.decorations.length>0}restore(e){this.occurrencesHighlightEnablement!==`off`&&(this.runDelayer.cancel(),this.runDelayer.trigger(()=>{this._run(!1,e)}).catch(nt))}stop(){this.occurrencesHighlightEnablement!==`off`&&this._stopAll()}_getSortedHighlights(){return this.decorations.getRanges().sort(C.compareRangesUsingStarts)}moveNext(){let e=this._getSortedHighlights(),t=(e.findIndex(e=>e.containsPosition(this.editor.getPosition()))+1)%e.length,n=e[t];try{this._ignorePositionChangeEvent=!0,this.editor.setPosition(n.getStartPosition()),this.editor.revealRangeInCenterIfOutsideViewport(n);let r=this._getWord();if(r){let i=this.editor.getModel().getLineContent(n.startLineNumber);bo(`${i}, ${t+1} of ${e.length} for '${r.word}'`)}}finally{this._ignorePositionChangeEvent=!1}}moveBack(){let e=this._getSortedHighlights(),t=(e.findIndex(e=>e.containsPosition(this.editor.getPosition()))-1+e.length)%e.length,n=e[t];try{this._ignorePositionChangeEvent=!0,this.editor.setPosition(n.getStartPosition()),this.editor.revealRangeInCenterIfOutsideViewport(n);let r=this._getWord();if(r){let i=this.editor.getModel().getLineContent(n.startLineNumber);bo(`${i}, ${t+1} of ${e.length} for '${r.word}'`)}}finally{this._ignorePositionChangeEvent=!1}}_removeSingleDecorations(){if(!this.editor.hasModel())return;let e=GH.storedDecorationIDs.get(this.editor.getModel().uri);e&&(this.editor.removeDecorations(e),GH.storedDecorationIDs.delete(this.editor.getModel().uri),this.decorations.length>0&&(this.decorations.clear(),this._hasWordHighlights.set(!1)))}_removeAllDecorations(e){let t=this.codeEditorService.listCodeEditors(),n=[];for(let r of t){if(!r.hasModel()||Vt(r.getModel().uri,e))continue;let t=GH.storedDecorationIDs.get(r.getModel().uri);if(!t)continue;r.removeDecorations(t),n.push(r.getModel().uri);let i=nU.get(r);i?.wordHighlighter&&i.wordHighlighter.decorations.length>0&&(i.wordHighlighter.decorations.clear(),i.wordHighlighter.workerRequest=null,i.wordHighlighter._hasWordHighlights.set(!1))}for(let e of n)GH.storedDecorationIDs.delete(e)}_stopSingular(){this._removeSingleDecorations(),this.editor.hasTextFocus()&&(this.editor.getModel()?.uri.scheme!==sl.vscodeNotebookCell&&GH.query?.modelInfo?.modelURI.scheme!==sl.vscodeNotebookCell?(GH.query=null,this._run()):GH.query?.modelInfo&&(GH.query.modelInfo=null)),this.renderDecorationsTimer!==void 0&&(clearTimeout(this.renderDecorationsTimer),this.renderDecorationsTimer=void 0),this.workerRequest!==null&&(this.workerRequest.cancel(),this.workerRequest=null),this.workerRequestCompleted||=(this.workerRequestTokenId++,!0)}_stopAll(e){this._removeAllDecorations(e),this.renderDecorationsTimer!==void 0&&(clearTimeout(this.renderDecorationsTimer),this.renderDecorationsTimer=void 0),this.workerRequest!==null&&(this.workerRequest.cancel(),this.workerRequest=null),this.workerRequestCompleted||=(this.workerRequestTokenId++,!0)}_onPositionChanged(e){this.occurrencesHighlightEnablement===`off`||e.source!==`api`&&e.reason!==3?this._stopAll():this._run()}_getWord(){let e=this.editor.getSelection(),t=e.startLineNumber,n=e.startColumn;return this.model.isDisposed()?null:this.model.getWordAtPosition({lineNumber:t,column:n})}getOtherModelsToHighlight(e){if(!e)return[];if(e.uri.scheme===sl.vscodeNotebookCell){let t=[],n=this.codeEditorService.listCodeEditors();for(let r of n){let n=r.getModel();n&&n!==e&&n.uri.scheme===sl.vscodeNotebookCell&&t.push(n)}return t}let t=[],n=this.codeEditorService.listCodeEditors();for(let r of n){if(!Rl(r))continue;let n=r.getModel();n&&e===n.modified&&t.push(n.modified)}if(t.length)return t;if(this.occurrencesHighlightEnablement===`singleFile`)return[];for(let r of n){let n=r.getModel();n&&n!==e&&t.push(n)}return t}async _run(e,t){if(this.editor.hasTextFocus()){let e=this.editor.getSelection();if(!e||e.startLineNumber!==e.endLineNumber){GH.query=null,this._stopAll();return}let t=e.startColumn,n=e.endColumn,r=this._getWord();if(!r||r.startColumn>t||r.endColumn<n){GH.query=null,this._stopAll();return}GH.query={modelInfo:{modelURI:this.model.uri,selection:e}}}else if(!GH.query){this._stopAll();return}if(this.lastCursorPositionChangeTime=new Date().getTime(),Vt(this.editor.getModel().uri,GH.query.modelInfo?.modelURI)){if(!e){let e=this.decorations.getRanges();for(let t of e)if(t.containsPosition(this.editor.getPosition()))return}this._stopAll(e?this.model.uri:void 0);let n=++this.workerRequestTokenId;this.workerRequestCompleted=!1;let r=this.getOtherModelsToHighlight(this.editor.getModel());if(!GH.query||!GH.query.modelInfo)return;let i=await this.textModelService.createModelReference(GH.query.modelInfo.modelURI);try{this.workerRequest=this.computeWithModel(i.object.textEditorModel,GH.query.modelInfo.selection,r),this.workerRequest?.result.then(e=>{n===this.workerRequestTokenId&&(this.workerRequestCompleted=!0,this.workerRequestValue=e||[],this._beginRenderDecorations(t??this.occurrencesHighlightDelay))},nt)}catch(e){this.logService.error(`Unexpected error during occurrence request. Log: `,e)}finally{i.dispose()}}else if(this.model.uri.scheme===sl.vscodeNotebookCell){let e=++this.workerRequestTokenId;if(this.workerRequestCompleted=!1,!GH.query||!GH.query.modelInfo)return;let n=await this.textModelService.createModelReference(GH.query.modelInfo.modelURI);try{this.workerRequest=this.computeWithModel(n.object.textEditorModel,GH.query.modelInfo.selection,[this.model]),this.workerRequest?.result.then(n=>{e===this.workerRequestTokenId&&(this.workerRequestCompleted=!0,this.workerRequestValue=n||[],this._beginRenderDecorations(t??this.occurrencesHighlightDelay))},nt)}catch(e){this.logService.error(`Unexpected error during occurrence request. Log: `,e)}finally{n.dispose()}}}computeWithModel(e,t,n){return n.length?eU(this.multiDocumentProviders,e,t,this.editor.getOption(148),n):$H(this.providers,e,t,this.editor.getOption(148))}_beginRenderDecorations(e){let t=new Date().getTime(),n=this.lastCursorPositionChangeTime+e;t>=n?(this.renderDecorationsTimer=void 0,this.renderDecorations()):this.renderDecorationsTimer=setTimeout(()=>{this.renderDecorations()},n-t)}renderDecorations(){this.renderDecorationsTimer=void 0;let e=this.codeEditorService.listCodeEditors();for(let t of e){let e=nU.get(t);if(!e)continue;let n=[],r=t.getModel()?.uri;if(r&&this.workerRequestValue.has(r)){let i=GH.storedDecorationIDs.get(r),a=this.workerRequestValue.get(r);if(a)for(let e of a)e.range&&n.push({range:e.range,options:yz(e.kind)});let o=[];t.changeDecorations(e=>{o=e.deltaDecorations(i??[],n)}),GH.storedDecorationIDs=GH.storedDecorationIDs.set(r,o),n.length>0&&(e.wordHighlighter?.decorations.set(n),e.wordHighlighter?._hasWordHighlights.set(!0))}}this.workerRequest=null}dispose(){this._stopSingular(),this.toUnhook.dispose()}};tU=GH=UH([WH(4,Ui),WH(5,Xs),WH(6,Vi),WH(7,ju)],tU);var nU=class extends G{static{KH=this}static{this.ID=`editor.contrib.wordHighlighter`}static get(e){return e.getContribution(KH.ID)}constructor(e,t,n,r,i,a,o){super(),this._wordHighlighter=null;let s=()=>{e.hasModel()&&!e.getModel().isTooLargeForTokenization()&&e.getModel().uri.scheme!==sl.accessibleView&&(this._wordHighlighter=new tU(e,n.documentHighlightProvider,n.multiDocumentHighlightProvider,t,i,r,a,o))};this._register(e.onDidChangeModel(e=>{this._wordHighlighter&&=(!e.newModelUrl&&e.oldModelUrl?.scheme!==sl.vscodeNotebookCell&&this.wordHighlighter?.stop(),this._wordHighlighter.dispose(),null),s()})),s()}get wordHighlighter(){return this._wordHighlighter}saveViewState(){return!!(this._wordHighlighter&&this._wordHighlighter.hasDecorations())}moveNext(){this._wordHighlighter?.moveNext()}moveBack(){this._wordHighlighter?.moveBack()}restoreViewState(e){this._wordHighlighter&&e&&this._wordHighlighter.restore(250)}dispose(){this._wordHighlighter&&=(this._wordHighlighter.dispose(),null),super.dispose()}};nU=KH=UH([WH(1,Fa),WH(2,R),WH(3,Xs),WH(4,Ui),WH(5,Vi),WH(6,ju)],nU);var rU=class extends W{constructor(e,t){super(t),this._isNext=e}run(e,t){let n=nU.get(t);n&&(this._isNext?n.moveNext():n.moveBack())}},iU=class extends rU{constructor(){super(!0,{id:`editor.action.wordHighlight.next`,label:L(1646,`Go to Next Symbol Highlight`),precondition:qH,kbOpts:{kbExpr:E.editorTextFocus,primary:65,weight:100}})}},aU=class extends rU{constructor(){super(!1,{id:`editor.action.wordHighlight.prev`,label:L(1647,`Go to Previous Symbol Highlight`),precondition:qH,kbOpts:{kbExpr:E.editorTextFocus,primary:1089,weight:100}})}},oU=class extends W{constructor(){super({id:`editor.action.wordHighlight.trigger`,label:L(1648,`Trigger Symbol Highlight`),precondition:void 0,kbOpts:{kbExpr:E.editorTextFocus,primary:0,weight:100}})}run(e,t){let n=nU.get(t);n&&n.restoreViewState(!0)}};Ps(nU.ID,nU,0),z(iU),z(aU),z(oU),$e(HH);var sU=class extends td{constructor(e){super(e),this._inSelectionMode=e.inSelectionMode,this._wordNavigationType=e.wordNavigationType}runEditorCommand(e,t,n){if(!t.hasModel())return;let r=Ot(t.getOption(148),t.getOption(147)),i=t.getModel(),a=t.getSelections(),o=a.length>1,s=a.map(e=>{let t=new A(e.positionLineNumber,e.positionColumn),n=this._move(r,i,t,this._wordNavigationType,o);return this._moveTo(e,n,this._inSelectionMode)});if(i.pushStackElement(),t._getViewModel().setCursorStates(`moveWordCommand`,3,s.map(e=>ld.fromModelSelection(e))),s.length===1){let e=new A(s[0].positionLineNumber,s[0].positionColumn);t.revealPosition(e,0)}}_moveTo(e,t,n){return n?new q(e.selectionStartLineNumber,e.selectionStartColumn,t.lineNumber,t.column):new q(t.lineNumber,t.column,t.lineNumber,t.column)}},cU=class extends sU{_move(e,t,n,r,i){return bd.moveWordLeft(e,t,n,r,i)}},lU=class extends sU{_move(e,t,n,r,i){return bd.moveWordRight(e,t,n,r)}},uU=class extends cU{constructor(){super({inSelectionMode:!1,wordNavigationType:0,id:`cursorWordStartLeft`,precondition:void 0})}},dU=class extends cU{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:`cursorWordEndLeft`,precondition:void 0})}},fU=class extends cU{constructor(){super({inSelectionMode:!1,wordNavigationType:1,id:`cursorWordLeft`,precondition:void 0,kbOpts:{kbExpr:w.and(E.textInputFocus,w.and(Xa,Qu)?.negate()),primary:2063,mac:{primary:527},weight:100}})}},pU=class extends cU{constructor(){super({inSelectionMode:!0,wordNavigationType:0,id:`cursorWordStartLeftSelect`,precondition:void 0})}},mU=class extends cU{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:`cursorWordEndLeftSelect`,precondition:void 0})}},hU=class extends cU{constructor(){super({inSelectionMode:!0,wordNavigationType:1,id:`cursorWordLeftSelect`,precondition:void 0,kbOpts:{kbExpr:w.and(E.textInputFocus,w.and(Xa,Qu)?.negate()),primary:3087,mac:{primary:1551},weight:100}})}},gU=class extends cU{constructor(){super({inSelectionMode:!1,wordNavigationType:3,id:`cursorWordAccessibilityLeft`,precondition:void 0})}_move(e,t,n,r,i){return super._move(Ot(Gi.wordSeparators.defaultValue,e.intlSegmenterLocales),t,n,r,i)}},_U=class extends cU{constructor(){super({inSelectionMode:!0,wordNavigationType:3,id:`cursorWordAccessibilityLeftSelect`,precondition:void 0})}_move(e,t,n,r,i){return super._move(Ot(Gi.wordSeparators.defaultValue,e.intlSegmenterLocales),t,n,r,i)}},vU=class extends lU{constructor(){super({inSelectionMode:!1,wordNavigationType:0,id:`cursorWordStartRight`,precondition:void 0})}},yU=class extends lU{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:`cursorWordEndRight`,precondition:void 0,kbOpts:{kbExpr:w.and(E.textInputFocus,w.and(Xa,Qu)?.negate()),primary:2065,mac:{primary:529},weight:100}})}},bU=class extends lU{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:`cursorWordRight`,precondition:void 0})}},xU=class extends lU{constructor(){super({inSelectionMode:!0,wordNavigationType:0,id:`cursorWordStartRightSelect`,precondition:void 0})}},SU=class extends lU{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:`cursorWordEndRightSelect`,precondition:void 0,kbOpts:{kbExpr:w.and(E.textInputFocus,w.and(Xa,Qu)?.negate()),primary:3089,mac:{primary:1553},weight:100}})}},CU=class extends lU{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:`cursorWordRightSelect`,precondition:void 0})}},wU=class extends lU{constructor(){super({inSelectionMode:!1,wordNavigationType:3,id:`cursorWordAccessibilityRight`,precondition:void 0})}_move(e,t,n,r,i){return super._move(Ot(Gi.wordSeparators.defaultValue,e.intlSegmenterLocales),t,n,r,i)}},TU=class extends lU{constructor(){super({inSelectionMode:!0,wordNavigationType:3,id:`cursorWordAccessibilityRightSelect`,precondition:void 0})}_move(e,t,n,r,i){return super._move(Ot(Gi.wordSeparators.defaultValue,e.intlSegmenterLocales),t,n,r,i)}},EU=class extends td{constructor(e){super({canTriggerInlineEdits:!0,...e}),this._whitespaceHeuristics=e.whitespaceHeuristics,this._wordNavigationType=e.wordNavigationType}runEditorCommand(e,t,n){let r=e?.get(Pn);if(!t.hasModel()||!r)return;let i=Ot(t.getOption(148),t.getOption(147)),a=t.getModel(),o=t.getSelections(),s=t.getOption(10),c=t.getOption(15),l=r.getLanguageConfiguration(a.getLanguageId()).getAutoClosingPairs(),u=t._getViewModel(),d=o.map(e=>{let n=this._delete({wordSeparators:i,model:a,selection:e,whitespaceHeuristics:this._whitespaceHeuristics,autoClosingDelete:t.getOption(13),autoClosingBrackets:s,autoClosingQuotes:c,autoClosingPairs:l,autoClosedCharacters:u.getCursorAutoClosedCharacters()},this._wordNavigationType);return new Yc(n,``)});t.pushUndoStop(),t.executeCommands(this.id,d),t.pushUndoStop()}},DU=class extends EU{_delete(e,t){return bd.deleteWordLeft(e,t)||new C(1,1,1,1)}},OU=class extends EU{_delete(e,t){let n=bd.deleteWordRight(e,t);if(n)return n;let r=e.model.getLineCount(),i=e.model.getLineMaxColumn(r);return new C(r,i,r,i)}},kU=class extends DU{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:0,id:`deleteWordStartLeft`,precondition:E.writable})}},AU=class extends DU{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:2,id:`deleteWordEndLeft`,precondition:E.writable})}},jU=class extends DU{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:0,id:`deleteWordLeft`,precondition:E.writable,kbOpts:{kbExpr:E.textInputFocus,primary:2049,mac:{primary:513},weight:100}})}},MU=class extends OU{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:0,id:`deleteWordStartRight`,precondition:E.writable})}},NU=class extends OU{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:2,id:`deleteWordEndRight`,precondition:E.writable})}},PU=class extends OU{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:2,id:`deleteWordRight`,precondition:E.writable,kbOpts:{kbExpr:E.textInputFocus,primary:2068,mac:{primary:532},weight:100}})}},FU=class extends W{constructor(){super({id:`deleteInsideWord`,precondition:E.writable,label:L(1650,`Delete Word`),metadata:{description:L(1651,`Delete the word at the cursor`),args:[{name:`args`,schema:{type:`object`,properties:{onlyWord:{type:`boolean`,default:!1,description:x(1649,`Delete only the word and leave surrounding whitespace`)}}}}]}})}run(e,t,n){if(!t.hasModel())return;let r=!!(n&&typeof n==`object`&&n.onlyWord),i=Ot(t.getOption(148),t.getOption(147)),a=t.getModel(),o=t.getSelections().map(e=>{let t=bd.deleteInsideWord(i,a,e,r);return new Yc(t,``)});t.pushUndoStop(),t.executeCommands(this.id,o),t.pushUndoStop()}};H(new uU),H(new dU),H(new fU),H(new pU),H(new mU),H(new hU),H(new vU),H(new yU),H(new bU),H(new xU),H(new SU),H(new CU),H(new gU),H(new _U),H(new wU),H(new TU),H(new kU),H(new AU),H(new jU),H(new MU),H(new NU),H(new PU),z(FU);var IU=class extends EU{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:0,id:`deleteWordPartLeft`,precondition:E.writable,kbOpts:{kbExpr:E.textInputFocus,primary:0,mac:{primary:769},weight:100}})}_delete(e,t){return nu.deleteWordPartLeft(e)||new C(1,1,1,1)}},LU=class extends EU{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:2,id:`deleteWordPartRight`,precondition:E.writable,kbOpts:{kbExpr:E.textInputFocus,primary:0,mac:{primary:788},weight:100}})}_delete(e,t){let n=nu.deleteWordPartRight(e);if(n)return n;let r=e.model.getLineCount(),i=e.model.getLineMaxColumn(r);return new C(r,i,r,i)}},RU=class extends sU{_move(e,t,n,r,i){return nu.moveWordPartLeft(e,t,n,i)}},zU=class extends RU{constructor(){super({inSelectionMode:!1,wordNavigationType:0,id:`cursorWordPartLeft`,precondition:void 0,kbOpts:{kbExpr:E.textInputFocus,primary:0,mac:{primary:783},weight:100}})}};In.registerCommandAlias(`cursorWordPartStartLeft`,`cursorWordPartLeft`);var BU=class extends RU{constructor(){super({inSelectionMode:!0,wordNavigationType:0,id:`cursorWordPartLeftSelect`,precondition:void 0,kbOpts:{kbExpr:E.textInputFocus,primary:0,mac:{primary:1807},weight:100}})}};In.registerCommandAlias(`cursorWordPartStartLeftSelect`,`cursorWordPartLeftSelect`);var VU=class extends sU{_move(e,t,n,r,i){return nu.moveWordPartRight(e,t,n)}},HU=class extends VU{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:`cursorWordPartRight`,precondition:void 0,kbOpts:{kbExpr:E.textInputFocus,primary:0,mac:{primary:785},weight:100}})}},UU=class extends VU{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:`cursorWordPartRightSelect`,precondition:void 0,kbOpts:{kbExpr:E.textInputFocus,primary:0,mac:{primary:1809},weight:100}})}};H(new IU),H(new LU),H(new zU),H(new BU),H(new HU),H(new UU);var WU=[{id:`andromeeda`,displayName:`Andromeeda`,type:`dark`,import:(()=>J(()=>import(`./andromeeda-vGVdxbeo.js`),[]))},{id:`aurora-x`,displayName:`Aurora X`,type:`dark`,import:(()=>J(()=>import(`./aurora-x-CDeNXAV0.js`),[]))},{id:`ayu-dark`,displayName:`Ayu Dark`,type:`dark`,import:(()=>J(()=>import(`./ayu-dark-DluEY0Gj.js`),[]))},{id:`ayu-light`,displayName:`Ayu Light`,type:`light`,import:(()=>J(()=>import(`./ayu-light-C3h-C4tm.js`),[]))},{id:`ayu-mirage`,displayName:`Ayu Mirage`,type:`dark`,import:(()=>J(()=>import(`./ayu-mirage-Bqwy1Gya.js`),[]))},{id:`catppuccin-frappe`,displayName:`Catppuccin Frappé`,type:`dark`,import:(()=>J(()=>import(`./catppuccin-frappe-C9Q5zVZY.js`),[]))},{id:`catppuccin-latte`,displayName:`Catppuccin Latte`,type:`light`,import:(()=>J(()=>import(`./catppuccin-latte-CtsyrtPq.js`),[]))},{id:`catppuccin-macchiato`,displayName:`Catppuccin Macchiato`,type:`dark`,import:(()=>J(()=>import(`./catppuccin-macchiato-R8nAf1vR.js`),[]))},{id:`catppuccin-mocha`,displayName:`Catppuccin Mocha`,type:`dark`,import:(()=>J(()=>import(`./catppuccin-mocha-DjuaAJKi.js`),[]))},{id:`dark-plus`,displayName:`Dark Plus`,type:`dark`,import:(()=>J(()=>import(`./dark-plus-Cs2F2srj.js`),[]))},{id:`dracula`,displayName:`Dracula Theme`,type:`dark`,import:(()=>J(()=>import(`./dracula-BHWKrbxM.js`),[]))},{id:`dracula-soft`,displayName:`Dracula Theme Soft`,type:`dark`,import:(()=>J(()=>import(`./dracula-soft-5eyTD99u.js`),[]))},{id:`everforest-dark`,displayName:`Everforest Dark`,type:`dark`,import:(()=>J(()=>import(`./everforest-dark-sB-x3p7T.js`),[]))},{id:`everforest-light`,displayName:`Everforest Light`,type:`light`,import:(()=>J(()=>import(`./everforest-light-Df2xbC6M.js`),[]))},{id:`github-dark`,displayName:`GitHub Dark`,type:`dark`,import:(()=>J(()=>import(`./github-dark-C-LZuMrd.js`),[]))},{id:`github-dark-default`,displayName:`GitHub Dark Default`,type:`dark`,import:(()=>J(()=>import(`./github-dark-default-DXG-b-1a.js`),[]))},{id:`github-dark-dimmed`,displayName:`GitHub Dark Dimmed`,type:`dark`,import:(()=>J(()=>import(`./github-dark-dimmed-Bx1FflLF.js`),[]))},{id:`github-dark-high-contrast`,displayName:`GitHub Dark High Contrast`,type:`dark`,import:(()=>J(()=>import(`./github-dark-high-contrast-B_tTalzw.js`),[]))},{id:`github-light`,displayName:`GitHub Light`,type:`light`,import:(()=>J(()=>import(`./github-light-EUqPIrTm.js`),[]))},{id:`github-light-default`,displayName:`GitHub Light Default`,type:`light`,import:(()=>J(()=>import(`./github-light-default-BXViO-2h.js`),[]))},{id:`github-light-high-contrast`,displayName:`GitHub Light High Contrast`,type:`light`,import:(()=>J(()=>import(`./github-light-high-contrast-B68TUdTA.js`),[]))},{id:`gruvbox-dark-hard`,displayName:`Gruvbox Dark Hard`,type:`dark`,import:(()=>J(()=>import(`./gruvbox-dark-hard-C820rvS2.js`),[]))},{id:`gruvbox-dark-medium`,displayName:`Gruvbox Dark Medium`,type:`dark`,import:(()=>J(()=>import(`./gruvbox-dark-medium-BPjhmG05.js`),[]))},{id:`gruvbox-dark-soft`,displayName:`Gruvbox Dark Soft`,type:`dark`,import:(()=>J(()=>import(`./gruvbox-dark-soft-MrdJrrXF.js`),[]))},{id:`gruvbox-light-hard`,displayName:`Gruvbox Light Hard`,type:`light`,import:(()=>J(()=>import(`./gruvbox-light-hard-BC_s9l72.js`),[]))},{id:`gruvbox-light-medium`,displayName:`Gruvbox Light Medium`,type:`light`,import:(()=>J(()=>import(`./gruvbox-light-medium-BAWPOn9u.js`),[]))},{id:`gruvbox-light-soft`,displayName:`Gruvbox Light Soft`,type:`light`,import:(()=>J(()=>import(`./gruvbox-light-soft-BSMLrYjP.js`),[]))},{id:`horizon`,displayName:`Horizon`,type:`dark`,import:(()=>J(()=>import(`./horizon-CE9ld1lL.js`),[]))},{id:`horizon-bright`,displayName:`Horizon Bright`,type:`light`,import:(()=>J(()=>import(`./horizon-bright-DSNQnXHK.js`),[]))},{id:`houston`,displayName:`Houston`,type:`dark`,import:(()=>J(()=>import(`./houston-CsvMBhTu.js`),[]))},{id:`kanagawa-dragon`,displayName:`Kanagawa Dragon`,type:`dark`,import:(()=>J(()=>import(`./kanagawa-dragon-Bozd7klA.js`),[]))},{id:`kanagawa-lotus`,displayName:`Kanagawa Lotus`,type:`light`,import:(()=>J(()=>import(`./kanagawa-lotus-BmuOG9ZW.js`),[]))},{id:`kanagawa-wave`,displayName:`Kanagawa Wave`,type:`dark`,import:(()=>J(()=>import(`./kanagawa-wave-BML5mF2J.js`),[]))},{id:`laserwave`,displayName:`LaserWave`,type:`dark`,import:(()=>J(()=>import(`./laserwave-C_8bwKvT.js`),[]))},{id:`light-plus`,displayName:`Light Plus`,type:`light`,import:(()=>J(()=>import(`./light-plus-DVQuIRkW.js`),[]))},{id:`material-theme`,displayName:`Material Theme`,type:`dark`,import:(()=>J(()=>import(`./material-theme-Bm3Qr25_.js`),[]))},{id:`material-theme-darker`,displayName:`Material Theme Darker`,type:`dark`,import:(()=>J(()=>import(`./material-theme-darker-2IIEA8gg.js`),[]))},{id:`material-theme-lighter`,displayName:`Material Theme Lighter`,type:`light`,import:(()=>J(()=>import(`./material-theme-lighter-uhdI0v04.js`),[]))},{id:`material-theme-ocean`,displayName:`Material Theme Ocean`,type:`dark`,import:(()=>J(()=>import(`./material-theme-ocean-CHQ94UKr.js`),[]))},{id:`material-theme-palenight`,displayName:`Material Theme Palenight`,type:`dark`,import:(()=>J(()=>import(`./material-theme-palenight-B5W6OYN7.js`),[]))},{id:`min-dark`,displayName:`Min Dark`,type:`dark`,import:(()=>J(()=>import(`./min-dark-BSWPekZh.js`),[]))},{id:`min-light`,displayName:`Min Light`,type:`light`,import:(()=>J(()=>import(`./min-light-DDpmG2fV.js`),[]))},{id:`monokai`,displayName:`Monokai`,type:`dark`,import:(()=>J(()=>import(`./monokai-BscAjiQZ.js`),[]))},{id:`night-owl`,displayName:`Night Owl`,type:`dark`,import:(()=>J(()=>import(`./night-owl-DhmEMT88.js`),[]))},{id:`night-owl-light`,displayName:`Night Owl Light`,type:`light`,import:(()=>J(()=>import(`./night-owl-light-eJ-hLW7d.js`),[]))},{id:`nord`,displayName:`Nord`,type:`dark`,import:(()=>J(()=>import(`./nord-Cb4Vim4T.js`),[]))},{id:`one-dark-pro`,displayName:`One Dark Pro`,type:`dark`,import:(()=>J(()=>import(`./one-dark-pro-C6YyR8OD.js`),[]))},{id:`one-light`,displayName:`One Light`,type:`light`,import:(()=>J(()=>import(`./one-light-D7Lr4KcI.js`),[]))},{id:`plastic`,displayName:`Plastic`,type:`dark`,import:(()=>J(()=>import(`./plastic-DQwYfKfQ.js`),[]))},{id:`poimandres`,displayName:`Poimandres`,type:`dark`,import:(()=>J(()=>import(`./poimandres-DRFjx7u4.js`),[]))},{id:`red`,displayName:`Red`,type:`dark`,import:(()=>J(()=>import(`./red-CYlAq2b0.js`),[]))},{id:`rose-pine`,displayName:`Rosé Pine`,type:`dark`,import:(()=>J(()=>import(`./rose-pine-aMsaMD1D.js`),[]))},{id:`rose-pine-dawn`,displayName:`Rosé Pine Dawn`,type:`light`,import:(()=>J(()=>import(`./rose-pine-dawn-8PwUyIlP.js`),[]))},{id:`rose-pine-moon`,displayName:`Rosé Pine Moon`,type:`dark`,import:(()=>J(()=>import(`./rose-pine-moon-DO-qXg-I.js`),[]))},{id:`slack-dark`,displayName:`Slack Dark`,type:`dark`,import:(()=>J(()=>import(`./slack-dark-DnToyrRv.js`),[]))},{id:`slack-ochin`,displayName:`Slack Ochin`,type:`light`,import:(()=>J(()=>import(`./slack-ochin-B2OO5cIa.js`),[]))},{id:`snazzy-light`,displayName:`Snazzy Light`,type:`light`,import:(()=>J(()=>import(`./snazzy-light-4G7pJPwS.js`),[]))},{id:`solarized-dark`,displayName:`Solarized Dark`,type:`dark`,import:(()=>J(()=>import(`./solarized-dark-b97czJOk.js`),[]))},{id:`solarized-light`,displayName:`Solarized Light`,type:`light`,import:(()=>J(()=>import(`./solarized-light-DFPxpIYQ.js`),[]))},{id:`synthwave-84`,displayName:`Synthwave '84`,type:`dark`,import:(()=>J(()=>import(`./synthwave-84-nFMaYfgc.js`),[]))},{id:`tokyo-night`,displayName:`Tokyo Night`,type:`dark`,import:(()=>J(()=>import(`./tokyo-night-oM2G3aXe.js`),[]))},{id:`vesper`,displayName:`Vesper`,type:`dark`,import:(()=>J(()=>import(`./vesper-DdrHHSXu.js`),[]))},{id:`vitesse-black`,displayName:`Vitesse Black`,type:`dark`,import:(()=>J(()=>import(`./vitesse-black-fwtXNY1n.js`),[]))},{id:`vitesse-dark`,displayName:`Vitesse Dark`,type:`dark`,import:(()=>J(()=>import(`./vitesse-dark-BZCL-v6S.js`),[]))},{id:`vitesse-light`,displayName:`Vitesse Light`,type:`light`,import:(()=>J(()=>import(`./vitesse-light-VbXTXTou.js`),[]))}],GU=Object.fromEntries(WU.map(e=>[e.id,e.import])),KU=Qe({langs:Kf,themes:GU,engine:()=>(0,qf.createOnigurumaEngine)(J(()=>import(`./wasm-BnjxR4X6.js`),[]))}),{codeToHtml:qU,codeToHast:JU,codeToTokens:YU,codeToTokensBase:XU,codeToTokensWithThemes:ZU,getSingletonHighlighter:QU,getLastGrammarState:$U}=Xe(KU,{guessEmbeddedLanguages:Ze});self.MonacoEnvironment={async getWorker(){return new(await(J(()=>import(`./editor.worker-CGG2Yh4v.js`),[]))).default}};function eW(e,t){let n=Zl.registerCommand(`offsite.block`,(e,n)=>t(n)),r=e===`stage`?`Stage`:`Unstage`,i={id:e===`stage`?`add`:`remove`},a=[wn.appendMenuItem(D.DiffEditorHunkToolbar,{command:{id:`offsite.block`,title:`${r} Block`,icon:i},group:`primary`,order:10}),wn.appendMenuItem(D.DiffEditorSelectionToolbar,{command:{id:`offsite.block`,title:`${r} Selection`,icon:i},group:`primary`,order:10})];return()=>{n.dispose();for(let e of a)e.dispose()}}function tW(e,t,n){let r=t.getValue();for(let i of n.innerChanges.slice().reverse()){let n=i.modifiedRange;r=r.slice(0,t.getOffsetAt({lineNumber:n.startLineNumber,column:n.startColumn}))+e.getValueInRange(i.originalRange)+r.slice(t.getOffsetAt({lineNumber:n.endLineNumber,column:n.endColumn}))}return r}var nW=KU({themes:[],langs:[]}),rW=new Map([[`tsx`,()=>J(()=>import(`./typescript-Dy13l_qr.js`),__vite__mapDeps([13,8,1,2,3,4]))],[`jsx`,()=>J(()=>import(`./javascript-MI6i-TIC.js`),__vite__mapDeps([7,8,1,2,3,4]))],[`json`,()=>J(()=>import(`./javascript-MI6i-TIC.js`),__vite__mapDeps([7,8,1,2,3,4]))],[`jsonc`,()=>J(()=>import(`./javascript-MI6i-TIC.js`),__vite__mapDeps([7,8,1,2,3,4]))],[`shellscript`,()=>J(()=>import(`./shell-CC2rA5mh.js`),[])],[`docker`,()=>J(()=>import(`./dockerfile-DZFCIeNp.js`),[])],[`c`,()=>J(()=>import(`./cpp-C7h46wYY.js`),[])],[`objective-cpp`,()=>J(()=>import(`./cpp-C7h46wYY.js`),[])],[`vue`,()=>J(()=>import(`./html-86U_8x8W.js`),__vite__mapDeps([6,1,2,3,4]))],[`svelte`,()=>J(()=>import(`./html-86U_8x8W.js`),__vite__mapDeps([6,1,2,3,4]))]]);async function iW(e){let t=Ge(e),n=Gf.find(e=>e.id===t||e.aliases?.includes(t)===!0);if(n===void 0)return{id:`plaintext`,name:`Plain Text`};let r=await nW;if(!r.getLoadedLanguages().includes(n.id)){if(await r.loadLanguage(n.import),!Wc.getLanguages().some(e=>e.id===n.id)){Wc.register({id:n.id});let e=rW.get(n.id);e!==void 0&&Wc.setLanguageConfiguration(n.id,(await e()).conf)}await aW()}return{id:n.id,name:n.name}}async function aW(){let e=Se(),t=WU.find(t=>t.id===e.codeTheme);if(t===void 0)throw Error(`unknown code theme ${e.codeTheme}`);let n=(await t.import()).default,r=await nW;await r.loadTheme({...n,colors:{...n.colors,"editor.background":e.background}}),wp(r,Gu),Zl.setTheme(e.codeTheme)}function oW(e){return{fontFamily:e.font.family,fontSize:e.font.size,lineHeight:e.font.lineHeight,fontLigatures:e.font.ligatures?e.font.features===``||e.font.features:!1,cursorStyle:e.cursor.style===`bar`?`line`:e.cursor.style,cursorBlinking:e.cursor.blink?`expand`:`solid`,tabSize:e.tabSize,insertSpaces:!0,detectIndentation:!1,trimAutoWhitespace:!1,wordWrap:e.wordWrap?`on`:`off`,wrappingStrategy:`advanced`,minimap:{enabled:!1},stickyScroll:{enabled:!1},overviewRulerBorder:!1,padding:{top:3,bottom:48},cursorSurroundingLines:2,copyWithSyntaxHighlighting:!1,accessibilitySupport:`off`,guides:{bracketPairs:!0,bracketPairsHorizontal:!1,highlightActiveBracketPair:!0,highlightActiveIndentation:!0},dragAndDrop:!1,glyphMargin:!1,useTabStops:!1,selectionHighlight:!1,emptySelectionClipboard:!1,renderWhitespace:`selection`,smartSelect:{selectLeadingAndTrailingWhitespace:!1},scrollbar:{verticalScrollbarSize:8,horizontalScrollbarSize:8},scrollBeyondLastLine:!1,smoothScrolling:!0,hover:{above:!1},find:{cursorMoveOnType:!1},acceptSuggestionOnCommitCharacter:!1,suggestSelection:`first`,suggest:{localityBonus:!0,insertMode:`replace`,snippetsPreventQuickSuggestions:!1},quickSuggestions:{comments:`on`,strings:`on`,other:`on`},quickSuggestionsDelay:0}}async function sW(e){await document.fonts.load(`${e.font.size}px ${e.font.family}`),Zl.remeasureFonts()}function cW(e){let t=e.model,n=e.editor,i=e.machine,a=e.projectId,o=e.path,s=(0,Y.useRef)(null),c=(0,Y.useCallback)(e=>{let n=t.onDidChangeContent(e);return()=>n.dispose()},[t]),l=(0,Y.useDeferredValue)((0,Y.useSyncExternalStore)(c,()=>t.getValue())),u=(0,Y.useMemo)(()=>({img(e){return(0,X.jsx)(lW,{machine:i,projectId:a,file:o,src:e.src,alt:e.alt,width:e.width,height:e.height})}}),[i,a,o]);return(0,Y.useEffect)(()=>{if(n===null)return;let e=n.onDidScrollChange(e=>{let t=s.current;t!==null&&e.scrollTopChanged&&!t.matches(`:hover`)&&(t.scrollTop=e.scrollTop/(n.getScrollHeight()-n.getLayoutInfo().height)*(t.scrollHeight-t.clientHeight))});return()=>e.dispose()},[n]),(0,X.jsx)(`div`,{ref:s,className:Re(`border-sidebar-border bg-background min-w-0 flex-1 overflow-y-auto p-6`,n!==null&&`border-l`),onScroll:e=>{let t=e.currentTarget;n!==null&&t.matches(`:hover`)&&n.setScrollTop(t.scrollTop/(t.scrollHeight-t.clientHeight)*(n.getScrollHeight()-n.getLayoutInfo().height),Zl.ScrollType.Immediate)},onClickCapture:t=>{let n=(t.target instanceof Element?t.target.closest(`a`):null)?.getAttribute(`href`)??null;n===null||uW(n)||(t.preventDefault(),t.stopPropagation(),n.startsWith(`#`)?fW(t.currentTarget,n.slice(1))?.scrollIntoView():e.onOpen(dW(o,n)))},children:(0,X.jsx)(r,{text:l.replace(/^---\r?\n[\s\S]*?\r?\n---(\r?\n|$)/,``),components:u})})}function lW(e){let n=e.src??``,r=uW(n),[i,a]=(0,Y.useState)(void 0);return(0,Y.useEffect)(()=>{if(r)return;let i=!0;async function o(){try{let r=await t(e.machine,e.projectId,dW(e.file,n));i&&a(r)}catch{i&&a(void 0)}}return o(),()=>{i=!1}},[r,e.machine,e.projectId,e.file,n]),(0,X.jsx)(`img`,{src:r?n:i,alt:e.alt,width:e.width,height:e.height,className:`max-w-full`})}function uW(e){return/^([a-z][a-z0-9+.-]*:|\/\/)/i.test(e)}function dW(e,t){let n=e.split(`/`).map(encodeURIComponent).join(`/`),r=new URL(t,`file:///${n}`).pathname.slice(1);try{return decodeURIComponent(r)}catch{return r}}function fW(e,t){return[...e.querySelectorAll(`h1, h2, h3, h4, h5, h6`)].find(e=>pW(e.textContent)===t.toLowerCase())}function pW(e){return e.trim().toLowerCase().replace(/[^\p{L}\p{N}\s_-]/gu,``).replaceAll(/\s/g,`-`)}function mW(e){return(0,X.jsx)(y,{open:e.open,onOpenChange:t=>{t||e.onCancel()},children:(0,X.jsxs)(oe,{children:[(0,X.jsxs)(h,{children:[(0,X.jsx)(ye,{children:e.paths.length===1?`Do you want to save the changes you made to ${vp(e.paths[0])}?`:`Do you want to save the changes to the following ${e.paths.length} files?`}),(0,X.jsxs)(re,{children:[e.paths.length>1&&`${e.paths.map(vp).join(`, `)}. `,`Your changes will be lost if you don't save them.`]})]}),(0,X.jsxs)(te,{children:[(0,X.jsx)(de,{children:`Cancel`}),(0,X.jsx)(ee,{variant:`outline`,onClick:()=>e.onFinish(!1),children:`Don't Save`}),(0,X.jsx)(ee,{onClick:()=>e.onFinish(!0),children:e.paths.length===1?`Save`:`Save All`})]})]})})}function hW(e){let[t,n]=(0,Y.useState)(null);return(0,Y.useEffect)(()=>{let t=e.editor;if(t===null)return;n(gW(t));let r=[t.onDidChangeCursorSelection(()=>n(gW(t))),t.onDidChangeModel(()=>n(gW(t))),t.onDidChangeModelOptions(()=>n(gW(t)))];return()=>{for(let e of r)e.dispose()}},[e.editor]),(0,X.jsxs)(`div`,{className:`bg-sidebar border-sidebar-border text-muted-foreground flex h-[22px] shrink-0 items-center justify-end gap-4 border-t px-3 text-xs whitespace-nowrap`,children:[e.children,e.language!==null&&t!==null&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(`span`,{children:[`Ln `,t.line,`, Col `,t.column,t.selected>0&&` (${t.selected} selected)`]}),(0,X.jsxs)(`span`,{children:[t.spaces?`Spaces`:`Tab Size`,`: `,t.tabSize]}),(0,X.jsx)(`span`,{children:`UTF-8`}),(0,X.jsx)(`span`,{children:t.eol}),(0,X.jsx)(`span`,{children:e.language})]})]})}function gW(e){let t=e.getModel(),n=e.getSelection();if(t===null||n===null)return null;let r=t.getOptions();return{line:n.positionLineNumber,column:n.positionColumn,selected:t.getValueLengthInRange(n),tabSize:r.tabSize,spaces:r.insertSpaces,eol:t.getEndOfLineSequence()===Zl.EndOfLineSequence.LF?`LF`:`CRLF`}}function _W(e){let t=vW(e.spec),n=t?.kind??null,r=(0,Y.useEffectEvent)(n=>{let r=e.spec,i=e.original,a=e.modified;if(r===void 0||t===null||i===null||a===null)throw Error(`This diff has no blocks to stage`);e.onPerform(()=>Te(e.machine,`git.run`,{projectId:e.projectId,repo:r.repo,action:{kind:`stageContent`,path:t.path,content:t.kind===`stage`?n.originalWithModifiedChanges:tW(i,a,n.mapping)}}))});(0,Y.useEffect)(()=>{if(n!==null)return eW(n,r)},[n])}function vW(e){return e?.left?.kind===`git`&&e.left.ref===``&&e.right.kind===`worktree`?{kind:`stage`,path:e.left.path}:e?.left?.kind===`git`&&e.right.kind===`git`&&e.right.ref===``?{kind:`unstage`,path:e.right.path}:null}function yW(){let[e,t]=(0,Y.useState)(null),[n,r]=(0,Y.useState)(null);return{editor:e,diff:n,codeHost:(0,Y.useCallback)(e=>{if(e===null)return;let n=Zl.create(e,{automaticLayout:!0,model:null});return t(n),()=>n.dispose()},[]),diffHost:(0,Y.useCallback)(e=>{if(e===null)return;let t=Zl.createDiffEditor(e,{automaticLayout:!0,originalEditable:!1,experimental:{showMoves:!0},useInlineViewWhenSpaceIsLimited:!0});return r(t),()=>t.dispose()},[])}}var bW={M:`Modified`,T:`Type Changed`,A:`Added`,D:`Deleted`,R:`Renamed`,C:`Copied`,U:`Untracked`,"!":`Conflict`},xW={M:`text-warning`,T:`text-warning`,A:`text-success`,D:`text-destructive`,R:`text-success`,C:`text-success`,U:`text-success`,"!":`text-destructive`};function SW(e,t){return e===``?t:`${e}/${t}`}function CW(e){return e.slice(0,7)}function wW(e,t,n){let r=SW(e,n.path),i={kind:`git`,ref:``,path:n.path};function a(t,n,i){return{id:`${t}:${r}`,repo:e,path:r,label:`${vp(r)} (${t})`,left:n,right:i}}return t===`merge`?a(`Working Tree`,null,{kind:`worktree`}):t===`staged`&&n.status===`A`?a(`Index`,null,i):t===`staged`&&n.status===`D`?a(`Deleted`,null,{kind:`git`,ref:`HEAD`,path:n.path}):t===`staged`?a(`Index`,{kind:`git`,ref:`HEAD`,path:n.from??n.path},i):n.status===`U`?a(`Untracked`,null,{kind:`worktree`}):n.status===`A`?a(`Intent to Add`,null,{kind:`worktree`}):n.status===`D`?a(`Deleted`,null,i):a(`Working Tree`,i,{kind:`worktree`})}function TW(e,t){return{id:`File:${t}`,repo:e,path:t,label:vp(t),left:null,right:{kind:`worktree`}}}function EW(e,t){return{...TW(e,t),id:`Preview:${t}`,label:`${vp(t)} (Preview)`,preview:!0}}function DW(e,t){let n=SW(e,t.path);return{id:`HEAD:${n}`,repo:e,path:n,label:`${vp(n)} (HEAD)`,left:null,right:{kind:`git`,ref:`HEAD`,path:t.from??t.path}}}function OW(e,t,n){let r=SW(e,n.path),i=t.parents.at(0)??null;return{id:`${t.hash}:${r}`,repo:e,path:r,label:`${vp(r)} (${i===null?`empty`:CW(i)} ↔ ${CW(t.hash)})`,left:i===null||n.status===`A`?{kind:`empty`}:{kind:`git`,ref:i,path:n.from??n.path},right:n.status===`D`?{kind:`empty`}:{kind:`git`,ref:t.hash,path:n.path}}}function kW(e,t){return[...e].sort((e,n)=>t===`name`?vp(e.path).localeCompare(vp(n.path))||e.path.localeCompare(n.path):t===`status`&&e.status.localeCompare(n.status)||e.path.localeCompare(n.path))}function AW(e,t){let n={folders:new Map,files:[]};for(let t of e){let e=n,r=_p(t.path);for(let t of r===``?[]:r.split(`/`)){let n=e.folders.get(t)??{folders:new Map,files:[]};e.folders.set(t,n),e=n}e.files.push(t)}return jW(n,``,t)}function jW(e,t,n){return[...[...e.folders].sort((e,t)=>e[0].localeCompare(t[0])).map(e=>{let r=e[0],i=e[1];for(;i.files.length===0&&i.folders.size===1;){let e=[...i.folders][0];r=`${r}/${e[0]}`,i=e[1]}let a=t===``?r:`${t}/${r}`,o=jW(i,a,n);return{kind:`folder`,path:a,label:r,children:o,resources:o.flatMap(e=>e.kind===`file`?[e.resource]:e.resources)}}),...kW(e.files,n).map(e=>({kind:`file`,resource:e}))]}var MW=new WeakSet;function NW(e){let[t,n]=(0,Y.useState)(()=>e.saved.tabs.map(e=>({spec:e.spec,document:{status:`loading`}}))),[r,i]=(0,Y.useState)(e.saved.active),[a,o]=(0,Y.useState)(null),s=t.filter(e=>e.document.status===`text`&&e.document.dirty),c=a?.kind===`tab`?t.filter(e=>e.spec.id===a.id):s;(0,Y.useEffect)(()=>{let e=new Set(t.flatMap(e=>e.document.status===`text`?[e.document.modified,e.document.original]:[]));for(let t of Zl.getModels())e.has(t)||t.dispose()},[t]),(0,Y.useEffect)(()=>()=>{for(let e of Zl.getModels())e.dispose()},[]);async function l(t,n){if(n.kind===`empty`)return``;if(n.kind===`git`)return Te(e.machine,`git.show`,{projectId:e.projectId,repo:t.repo,ref:n.ref,path:n.path});let r=await Te(e.machine,`files.read`,{projectId:e.projectId,path:t.path});return r.kind===`text`?r.content:null}function u(e){return Promise.all([e.left===null?``:l(e,e.left),l(e,e.right)])}function d(e,t){n(n=>n.map(n=>n.spec.id===e?{...n,document:t}:n))}async function f(t){try{if(t.left===null&&t.right.kind===`worktree`){let n=await Te(e.machine,`files.read`,{projectId:e.projectId,path:t.path});return n.kind===`image`?{status:`image`,src:`data:${n.mediaType};base64,${n.data}`}:n.kind===`large`?{status:`large`,size:n.size,limit:n.limit}:n.kind===`binary`?{status:`binary`}:await p(t,``,n.content)}let n=await u(t);return n[0]===null||n[1]===null?{status:`binary`}:await p(t,n[0],n[1])}catch(e){return{status:`error`,message:Le(e)}}}async function p(e,t,r){let i=await iW(e.path),a=e.left===null?null:Zl.createModel(t,i.id),o=Zl.createModel(r,i.id);return o.onDidChangeContent(()=>{MW.has(o)||n(e=>{let t=e.find(e=>e.document.status===`text`&&e.document.modified===o);if(t===void 0||t.document.status!==`text`)return e;let n=o.getAlternativeVersionId()!==t.document.saved;return t.document.dirty===n?e:e.map(e=>e===t?{...t,document:{...t.document,dirty:n}}:e)})}),{status:`text`,original:a,modified:o,language:i.name,saved:o.getAlternativeVersionId(),dirty:!1}}async function m(e){let r=t.find(t=>t.spec.id===e);if(r?.document.status!==`text`||r.document.dirty)return;let i=r.document,a=i.modified.getAlternativeVersionId();try{let t=await u(r.spec);if(i.modified.isDisposed()||i.modified.getAlternativeVersionId()!==a)return;if(t[0]===null||t[1]===null){d(e,{status:`binary`});return}i.original!==null&&PW(i.original,t[0]),MW.add(i.modified),PW(i.modified,t[1]),MW.delete(i.modified);let o=i.modified.getAlternativeVersionId();o!==a&&n(e=>e.map(e=>e.document.status===`text`&&e.document.modified===i.modified?{...e,document:{...e.document,saved:o}}:e))}catch(t){d(e,{status:`error`,message:Le(t)})}}async function h(e){i(e.id),t.some(t=>t.spec.id===e.id)||(n([...t,{spec:e,document:{status:`loading`}}]),await g(e))}async function g(e){let t=await f(e);n(n=>n.map(n=>n.spec.id===e.id&&n.document.status===`loading`?{...n,document:t}:n))}async function _(r){let i=t.find(e=>e.spec.id===r);if(i?.document.status!==`text`||i.spec.right.kind!==`worktree`||i.spec.preview===!0)return!0;let a=i.document.modified,o=a.getAlternativeVersionId();try{await Te(e.machine,`files.write`,{projectId:e.projectId,path:i.spec.path,content:a.getValue()})}catch(e){return Ae(e),!1}return n(e=>e.map(e=>e.document.status===`text`&&e.document.modified===a?{...e,document:{...e.document,saved:o,dirty:a.getAlternativeVersionId()!==o}}:e)),e.onSaved(),!0}function v(e){let a=t.filter(t=>!e(t.spec));n(a);let o=t.findIndex(e=>e.spec.id===r);o!==-1&&e(t[o].spec)&&i(a.at(Math.min(o,a.length-1))?.spec.id??null)}function y(e,a){function o(t){return t===e?a:t.startsWith(`${e}/`)?`${a}${t.slice(e.length)}`:t}let s=t.map(e=>e.spec.id===TW(e.spec.repo,e.spec.path).id?{...e,spec:TW(e.spec.repo,o(e.spec.path))}:e.spec.id===EW(e.spec.repo,e.spec.path).id?{...e,spec:EW(e.spec.repo,o(e.spec.path))}:e);n(s);let c=t.findIndex(e=>e.spec.id===r);c!==-1&&i(s[c].spec.id)}function b(e){v(t=>t.right.kind===`worktree`&&(t.path===e||t.path.startsWith(`${e}/`)))}function ee(e){s.some(t=>t.spec.id===e)?o({kind:`tab`,id:e}):v(t=>t.id===e)}function te(){s.length>0?o({kind:`dialog`}):e.onClose()}async function ne(t){a!==null&&(o(null),t&&(await Promise.all(c.map(e=>_(e.spec.id)))).includes(!1)||(a.kind===`tab`&&v(e=>e.id===a.id),a.kind===`dialog`&&e.onClose()))}let re=(0,Y.useEffectEvent)(()=>{for(let t of e.saved.tabs)g(t.spec)});return(0,Y.useEffect)(()=>re(),[]),{tabs:t,active:r,setActive:i,dirty:s,closing:a,setClosing:o,closingTabs:c,open:h,reload:m,save:_,close:ee,renamed:y,deleted:b,requestClose:te,finish:ne}}function PW(e,t){let n=e.getValue(),r=0;for(;r<n.length&&r<t.length&&n[r]===t[r];)r++;let i=0;for(;i<n.length-r&&i<t.length-r&&n[n.length-1-i]===t[t.length-1-i];)i++;(r!==n.length||r!==t.length)&&e.applyEdits([{range:gd.fromPositions(e.getPositionAt(r),e.getPositionAt(n.length-i)),text:t.slice(r,t.length-i)}])}function FW(e){return(0,X.jsxs)(o,{children:[(0,X.jsxs)(m,{className:`hover:bg-accent data-[state=open]:bg-accent mr-auto ml-1 flex h-6 min-w-0 cursor-pointer items-center gap-1 rounded-sm px-1 text-[11px] font-bold tracking-wide uppercase outline-none`,children:[(0,X.jsx)(`span`,{className:`truncate`,children:e.view===`explorer`?`Explorer`:`Source Control`}),(0,X.jsx)(je,{icon:se,className:`size-3.5 shrink-0`})]}),(0,X.jsx)(l,{align:`start`,className:`bg-popover! w-44`,children:(0,X.jsxs)(d,{value:e.view,onValueChange:t=>{(t===`explorer`||t===`scm`)&&e.onView(t)},children:[(0,X.jsx)(be,{value:`explorer`,children:`Explorer`}),(0,X.jsx)(be,{value:`scm`,children:`Source Control`})]})})]})}function IW(e){return(0,X.jsxs)(`div`,{className:`flex shrink-0 items-center gap-0.5 pl-1.5`,children:[(0,X.jsx)(Me,{size:`icon-micro`,variant:`ghost`,title:`Open File`,"aria-label":`Open File`,onClick:e.onOpenFile,children:(0,X.jsx)(je,{icon:Qf,className:`size-4`})}),(0,X.jsx)(Me,{size:`icon-micro`,variant:`ghost`,title:`Previous Change`,"aria-label":`Previous Change`,onClick:e.onPrevious,children:(0,X.jsx)(je,{icon:b,className:`size-4`})}),(0,X.jsx)(Me,{size:`icon-micro`,variant:`ghost`,title:`Next Change`,"aria-label":`Next Change`,onClick:e.onNext,children:(0,X.jsx)(je,{icon:fe,className:`size-4`})}),(0,X.jsxs)(o,{children:[(0,X.jsx)(m,{asChild:!0,children:(0,X.jsx)(Me,{size:`icon-micro`,variant:`ghost`,title:`More Actions...`,"aria-label":`More Actions`,children:(0,X.jsx)(je,{icon:le,className:`size-4`})})}),(0,X.jsxs)(l,{align:`end`,className:`bg-popover! w-80`,children:[(0,X.jsx)(s,{checked:e.settings.inline,onCheckedChange:t=>e.onSettings({inline:t}),children:`Inline View`}),(0,X.jsx)(s,{checked:e.settings.whitespace,onCheckedChange:t=>e.onSettings({whitespace:t}),children:`Show Leading/Trailing Whitespace Differences`}),(0,X.jsx)(s,{checked:e.settings.collapse,onCheckedChange:t=>e.onSettings({collapse:t}),children:`Collapse Unchanged Regions`})]})]})]})}function LW(e){let t=e.repo;return(0,X.jsxs)(`div`,{className:`mr-auto -ml-1.5 flex h-full items-center`,children:[(0,X.jsxs)(`button`,{type:`button`,title:`${t.branch??`HEAD`} (Git) - Checkout Branch/Tag...`,className:`hover:bg-accent hover:text-foreground flex h-full cursor-pointer items-center gap-1 px-1.5 tabular-nums`,onClick:e.onCheckout,children:[(0,X.jsx)(je,{icon:ie,className:`size-3.5`}),t.branch??(t.head===null?`HEAD`:CW(t.head)),t.changes.length>0&&`*`,t.staged.length>0&&`+`,t.merge.length>0&&`!`]}),t.upstream!==null&&(0,X.jsxs)(`button`,{type:`button`,title:`Synchronize Changes`,disabled:e.busy,className:`hover:bg-accent hover:text-foreground flex h-full cursor-pointer items-center gap-1 px-1.5 tabular-nums`,onClick:e.onSync,children:[(0,X.jsx)(je,{icon:rp,className:Re(`size-3.5`,e.busy&&`animate-spin`)}),(t.behind>0||t.ahead>0)&&`${t.behind}↓ ${t.ahead}↑`]}),t.upstream===null&&t.branch!==null&&t.remote&&(0,X.jsx)(`button`,{type:`button`,title:`Publish Branch`,"aria-label":`Publish Branch`,disabled:e.busy,className:`hover:bg-accent hover:text-foreground flex h-full cursor-pointer items-center gap-1 px-1.5 tabular-nums`,onClick:e.onPublish,children:(0,X.jsx)(je,{icon:me,className:`size-3.5`})})]})}var RW={all:null,amend:!1,then:null};function zW(e){let t=e.repo,n=t.merge.length+t.staged.length+t.changes.length>0,r=!n&&t.branch!==null&&t.upstream===null&&t.remote,a=!n&&t.upstream!==null&&(t.ahead>0||t.behind>0);return(0,X.jsxs)(`div`,{className:Re(`grid gap-1.5 pt-1.5 pr-2 pb-1.5`,e.nested?`pl-4`:`pl-2`),children:[(0,X.jsxs)(`div`,{className:`bg-input/40 border-input focus-within:border-primary relative rounded-sm border`,children:[(0,X.jsx)(`textarea`,{rows:7,"aria-label":`Source Control Input`,value:e.message,placeholder:`Message (${Ie===`⌘`?`⌘Enter`:`Ctrl+Enter`} to commit on "${t.branch??(t.head===null?`HEAD`:CW(t.head))}")`,className:`placeholder:text-muted-foreground block w-full resize-none bg-transparent py-1 pr-7 pl-2 text-[13px] leading-[18px] outline-none`,onChange:t=>e.onMessage(t.target.value),onKeyDown:t=>{(t.metaKey||t.ctrlKey)&&t.key===`Enter`&&(t.preventDefault(),e.onCommit({...RW,then:`push`}))}}),(0,X.jsx)(`button`,{type:`button`,title:e.generating?`Cancel`:`Generate Commit Message`,"aria-label":e.generating?`Cancel`:`Generate Commit Message`,className:`text-muted-foreground hover:text-foreground hover:bg-accent absolute top-[3px] right-[3px] grid size-5 cursor-pointer place-items-center rounded-sm`,onClick:e.generating?e.onCancel:e.onGenerate,children:(0,X.jsx)(je,{icon:e.generating?ip:u,className:`size-3.5`})})]}),r&&(0,X.jsxs)(Me,{size:`xs`,className:`w-full rounded-sm`,disabled:e.busy,onClick:()=>e.onRemote(`git.push`),children:[(0,X.jsx)(je,{icon:me}),`Publish Branch`]}),a&&(0,X.jsxs)(Me,{size:`xs`,className:`w-full rounded-sm`,disabled:e.busy,onClick:()=>e.onRemote(`git.sync`),children:[(0,X.jsx)(je,{icon:rp}),`Sync Changes`,t.behind>0&&(0,X.jsxs)(`span`,{className:`inline-flex items-center tabular-nums`,children:[t.behind,(0,X.jsx)(je,{icon:fe,className:`size-3`})]}),t.ahead>0&&(0,X.jsxs)(`span`,{className:`inline-flex items-center tabular-nums`,children:[t.ahead,(0,X.jsx)(je,{icon:b,className:`size-3`})]})]}),!r&&!a&&(0,X.jsxs)(`div`,{className:`flex`,children:[(0,X.jsxs)(Me,{size:`xs`,className:`flex-1 rounded-sm rounded-r-none`,disabled:!n||e.busy,onClick:()=>e.onCommit({...RW,then:`push`}),children:[(0,X.jsx)(je,{icon:ve}),`Commit & Push`]}),(0,X.jsxs)(o,{children:[(0,X.jsx)(m,{asChild:!0,children:(0,X.jsx)(Me,{size:`xs`,className:`rounded-sm rounded-l-none px-1 before:absolute before:inset-y-1 before:-left-px before:w-px before:bg-white/10`,disabled:!n||e.busy,title:`More Actions...`,"aria-label":`More Commit Actions`,children:(0,X.jsx)(je,{icon:se})})}),(0,X.jsxs)(l,{align:`end`,className:`bg-popover! w-48`,children:[(0,X.jsx)(i,{onSelect:()=>e.onCommit(RW),children:`Commit`}),(0,X.jsx)(i,{onSelect:()=>e.onCommit({...RW,amend:!0}),children:`Commit (Amend)`}),(0,X.jsx)(i,{onSelect:()=>e.onCommit({...RW,then:`push`}),children:`Commit & Push`}),(0,X.jsx)(i,{onSelect:()=>e.onCommit({...RW,then:`sync`}),children:`Commit & Sync`})]})]})]})]})}var BW=[{id:`merge`,title:`Merge Changes`},{id:`staged`,title:`Staged Changes`},{id:`changes`,title:`Changes`}];function VW(e){let[t,n]=(0,Y.useState)([]),[r,i]=(0,Y.useState)(null),a=c(),o=e.repo;function s(e){n(t.includes(e)?t.filter(t=>t!==e):[...t,e])}function l(t,n,r){let i=r===`group`?`All Changes`:`Changes`;return(0,X.jsxs)(X.Fragment,{children:[r===`file`&&n[0].status!==`D`&&(0,X.jsx)(UW,{title:`Open File`,icon:Qf,onClick:()=>e.onOpen(TW(o.path,SW(o.path,n[0].path)))}),t===`changes`&&(0,X.jsx)(UW,{title:`Discard ${i}`,icon:op,onClick:()=>e.onDiscard(n)}),t===`staged`&&(0,X.jsx)(UW,{title:`Unstage ${i}`,icon:Jf,onClick:()=>e.onUnstage(n)}),t!==`staged`&&(0,X.jsx)(UW,{title:t===`merge`&&r===`group`?`Stage All Merge Changes`:`Stage ${i}`,icon:Yf,onClick:()=>e.onStage(n)})]})}function u(t,n,r){let a=wW(o.path,t,n),s=SW(o.path,n.path);return(0,X.jsxs)(`div`,{"data-resource":!0,role:`button`,tabIndex:0,title:`${e.root}/${s} • ${bW[n.status]}`,className:Re(`group/row hover:bg-sidebar-row-hover focus-visible:ring-ring relative flex h-[22px] cursor-pointer items-center gap-1.5 pr-2 text-[13px] outline-none select-none focus-visible:ring-1 focus-visible:ring-inset`,a.id===e.active&&`bg-sidebar-row-active`),style:{paddingLeft:20+r*8},onClick:()=>e.onOpen(a),onKeyDown:t=>{t.key===`Enter`&&e.onOpen(a)},onContextMenu:()=>i({group:t,resource:n}),children:[(0,X.jsx)(He,{path:n.path}),(0,X.jsx)(`span`,{className:Re(`min-w-0 shrink-0 truncate`,xW[n.status],n.status===`D`&&`line-through`),children:vp(n.path)}),!e.tree&&(0,X.jsx)(`span`,{className:`text-muted-foreground min-w-0 truncate text-xs`,children:_p(n.path)}),(0,X.jsxs)(`span`,{className:`ml-auto flex shrink-0 items-center gap-0.5`,children:[(0,X.jsx)(`span`,{className:`hidden items-center gap-0.5 group-hover/row:flex group-focus-visible/row:flex`,children:l(t,[n],`file`)}),(0,X.jsx)(`span`,{className:Re(`w-3.5 text-center text-xs`,xW[n.status]),children:n.status})]})]},`${t}:${n.path}`)}function d(e,n,r){return n.map(n=>{if(n.kind===`file`)return u(e,n.resource,r);let i=`${o.path}:${e}:${n.path}`,a=!t.includes(i);return(0,X.jsxs)(`div`,{children:[(0,X.jsxs)(`div`,{role:`button`,tabIndex:0,title:n.path,className:`group/row hover:bg-sidebar-row-hover focus-visible:ring-ring relative flex h-[22px] cursor-pointer items-center gap-1.5 pr-2 text-[13px] outline-none select-none focus-visible:ring-1 focus-visible:ring-inset`,style:{paddingLeft:4+r*8},onClick:()=>s(i),onKeyDown:e=>{e.key===`Enter`&&s(i)},children:[(0,X.jsx)(HW,{open:a}),(0,X.jsx)(`span`,{className:`min-w-0 truncate`,children:n.label}),(0,X.jsx)(`span`,{className:`ml-auto hidden shrink-0 items-center gap-0.5 group-hover/row:flex group-focus-visible/row:flex`,children:l(e,n.resources,`folder`)})]}),a&&d(e,n.children,r+1)]},i)})}return(0,X.jsxs)(he,{children:[(0,X.jsx)(_e,{asChild:!0,children:(0,X.jsx)(`div`,{onContextMenu:e=>{e.target instanceof Element&&e.target.closest(`[data-resource]`)!==null||e.preventDefault()},children:BW.map(n=>{let r=o[n.id];if(r.length===0)return null;let i=`${o.path}:${n.id}`,a=!t.includes(i);return(0,X.jsxs)(`div`,{children:[(0,X.jsxs)(`div`,{role:`button`,tabIndex:0,className:`group/row hover:bg-sidebar-row-hover focus-visible:ring-ring relative flex h-[22px] cursor-pointer items-center gap-1.5 pr-2 text-[13px] outline-none select-none focus-visible:ring-1 focus-visible:ring-inset`,style:{paddingLeft:4+e.depth*8},onClick:()=>s(i),onKeyDown:e=>{e.key===`Enter`&&s(i)},children:[(0,X.jsx)(HW,{open:a}),(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:n.title}),(0,X.jsx)(`span`,{className:`hidden shrink-0 items-center gap-0.5 group-hover/row:flex group-focus-visible/row:flex`,children:l(n.id,r,`group`)}),(0,X.jsx)(`span`,{className:`bg-muted text-foreground grid h-4.5 min-w-4.5 shrink-0 place-items-center rounded-full px-1 text-[11px] tabular-nums`,children:r.length})]}),a&&(e.tree?d(n.id,AW(r,e.sort),e.depth+1):kW(r,e.sort).map(t=>u(n.id,t,e.depth+1)))]},n.id)})})}),r!==null&&(0,X.jsxs)(ce,{className:`min-w-52`,children:[(0,X.jsx)(pe,{onSelect:()=>e.onOpen(wW(o.path,r.group,r.resource)),children:`Open Changes`}),r.resource.status!==`D`&&(0,X.jsx)(pe,{onSelect:()=>e.onOpen(TW(o.path,SW(o.path,r.resource.path))),children:`Open File`}),r.resource.status!==`U`&&r.resource.status!==`A`&&(0,X.jsx)(pe,{onSelect:()=>e.onOpen(DW(o.path,r.resource)),children:`Open File (HEAD)`}),(0,X.jsx)(ue,{}),r.group===`staged`&&(0,X.jsx)(pe,{onSelect:()=>e.onUnstage([r.resource]),children:`Unstage Changes`}),r.group!==`staged`&&(0,X.jsx)(pe,{onSelect:()=>e.onStage([r.resource]),children:`Stage Changes`}),r.group===`changes`&&(0,X.jsx)(pe,{onSelect:()=>e.onDiscard([r.resource]),children:`Discard Changes`}),r.resource.status===`U`&&(0,X.jsx)(pe,{onSelect:()=>e.onIgnore([r.resource]),children:`Add to .gitignore`}),(0,X.jsx)(ue,{}),(0,X.jsx)(pe,{onSelect:()=>void a.copy(`${e.root}/${SW(o.path,r.resource.path)}`),children:`Copy Path`}),(0,X.jsx)(pe,{onSelect:()=>void a.copy(SW(o.path,r.resource.path)),children:`Copy Relative Path`})]})]})}function HW(e){return(0,X.jsx)(je,{icon:We,"aria-hidden":!0,className:Re(`text-muted-foreground size-4 shrink-0 transition-transform`,e.open&&`rotate-90`)})}function UW(e){return(0,X.jsx)(`button`,{type:`button`,title:e.title,"aria-label":e.title,className:`text-foreground hover:bg-accent grid size-5 cursor-pointer place-items-center rounded-sm`,onClick:t=>{t.stopPropagation(),e.onClick()},children:(0,X.jsx)(je,{icon:e.icon,className:`size-4`})})}var WW=50,GW=11,KW=22,qW=[`#59A4F9`,`#FFB000`,`#DC267F`,`#994F00`,`#40B0A6`,`#B66DFF`];function JW(e){let[t,n]=(0,Y.useState)(null),[r,i]=(0,Y.useState)(null),[a,o]=(0,Y.useState)(null),[s,c]=(0,Y.useState)(WW),[l,u]=(0,Y.useState)(0),[d,f]=(0,Y.useState)([]),[p,m]=(0,Y.useState)({}),h=e.repos.find(e=>e.path===t)??e.repos.at(0),g=h?.path??null,_=h?.head??null,v=h?.upstream??null,y=h?.behind??0;(0,Y.useEffect)(()=>{if(g===null||_===null){i([]);return}let t=!0;return Te(e.machine,`git.history`,{projectId:e.projectId,repo:g,limit:s}).then(e=>{t&&(i(e),o(null))},e=>{t&&o(Le(e))}),()=>{t=!1}},[e.machine,e.projectId,g,_,v,y,s,l]);async function b(t){if(d.includes(t.hash))f(d.filter(e=>e!==t.hash));else if(f([...d,t.hash]),h!==void 0&&p[t.hash]===void 0)try{let n=await Te(e.machine,`git.commitFiles`,{projectId:e.projectId,repo:h.path,hash:t.hash,parent:t.parents.at(0)??null});m(e=>({...e,[t.hash]:n}))}catch(e){Ae(e)}}let ee=$W(r??[]);return(0,X.jsxs)(`div`,{className:Re(`border-sidebar-border relative flex shrink-0 flex-col border-t`,e.open&&`min-h-20`),style:e.open?{height:e.height}:void 0,children:[e.open&&(0,X.jsx)(`div`,{role:`separator`,"aria-orientation":`horizontal`,className:`hover:bg-primary absolute inset-x-0 -top-0.5 z-10 h-1 cursor-row-resize touch-none transition-colors delay-100`,onPointerDown:t=>{let n=t.currentTarget.parentElement?.parentElement;if(n==null)return;let r=n.getBoundingClientRect();Fe(t,t=>e.onHeight(Math.min(Math.max(r.bottom-t.clientY,80),r.height-120)))}}),(0,X.jsxs)(`div`,{role:`button`,tabIndex:0,className:`group/row text-sidebar-foreground flex h-[22px] shrink-0 cursor-pointer items-center gap-0.5 pr-2 pl-0.5 outline-none select-none`,onClick:e.onToggle,onKeyDown:t=>{t.key===`Enter`&&e.onToggle()},children:[(0,X.jsx)(je,{icon:We,"aria-hidden":!0,className:Re(`size-4 shrink-0 transition-transform`,e.open&&`rotate-90`)}),(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-[11px] font-bold tracking-wide uppercase`,children:`Graph`}),e.repos.length>1&&(0,X.jsx)(`select`,{"aria-label":`Repository`,value:h?.path??``,className:`bg-sidebar text-muted-foreground max-w-28 cursor-pointer truncate text-xs outline-none`,onClick:e=>e.stopPropagation(),onChange:e=>{n(e.target.value),f([]),c(WW)},children:e.repos.map(e=>(0,X.jsx)(`option`,{value:e.path,children:e.path===``?`.`:e.path},e.path))}),e.open&&h!==void 0&&(0,X.jsxs)(`span`,{className:`hidden items-center gap-0.5 group-hover/row:flex`,children:[(0,X.jsx)(UW,{title:`Fetch From All Remotes`,icon:Xf,onClick:()=>e.onFetch(h)}),(0,X.jsx)(UW,{title:`Refresh`,icon:Ue,onClick:()=>u(l+1)})]})]}),e.open&&(0,X.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-y-auto pb-2`,children:[a!==null&&(0,X.jsx)(`p`,{className:`text-muted-foreground px-4 py-1 text-xs`,children:a}),a===null&&ee.length===0&&r!==null&&(0,X.jsx)(`p`,{className:`text-muted-foreground px-4 py-1 text-xs`,children:`No commits yet.`}),a===null&&h!==void 0&&ee.map(t=>{let n=t.commit,r=d.includes(n.hash);return(0,X.jsxs)(`div`,{children:[(0,X.jsxs)(`div`,{role:`button`,tabIndex:0,title:`${n.author}, ${new Date(n.date).toLocaleString()}\n\n${n.subject}\n\n${CW(n.hash)}`,className:`hover:bg-sidebar-row-hover flex h-[22px] cursor-pointer items-center gap-1.5 pr-2 text-[13px] outline-none select-none`,onClick:()=>void b(n),onKeyDown:e=>{e.key===`Enter`&&b(n)},children:[(0,X.jsx)(YW,{row:t,child:!1}),(0,X.jsx)(`span`,{className:`min-w-0 truncate`,children:n.subject}),(0,X.jsx)(`span`,{className:`text-muted-foreground min-w-0 shrink-[2] truncate text-xs`,children:n.author}),(0,X.jsx)(`span`,{className:`ml-auto flex shrink-0 items-center gap-1`,children:n.refs.map(e=>XW(e,h))})]}),r&&(p[n.hash]??[]).map(r=>{let i=OW(h.path,n,r);return(0,X.jsxs)(`div`,{role:`button`,tabIndex:0,title:`${r.path} • ${bW[r.status]}`,className:Re(`hover:bg-sidebar-row-hover flex h-[22px] cursor-pointer items-center gap-1.5 pr-2 text-[13px] outline-none select-none`,i.id===e.active&&`bg-sidebar-row-active`),onClick:()=>e.onOpen(i),onKeyDown:t=>{t.key===`Enter`&&e.onOpen(i)},children:[(0,X.jsx)(YW,{row:t,child:!0}),(0,X.jsx)(He,{path:r.path}),(0,X.jsx)(`span`,{className:Re(`min-w-0 shrink-0 truncate`,xW[r.status],r.status===`D`&&`line-through`),children:vp(r.path)}),(0,X.jsx)(`span`,{className:`text-muted-foreground min-w-0 truncate text-xs`,children:_p(r.path)}),(0,X.jsx)(`span`,{className:Re(`ml-auto w-3.5 shrink-0 text-center text-xs`,xW[r.status]),children:r.status})]},r.path)})]},n.hash)}),r!==null&&r.length===s&&(0,X.jsx)(`button`,{type:`button`,className:`text-muted-foreground hover:text-foreground w-full cursor-pointer px-4 py-1 text-left text-xs`,onClick:()=>c(s+WW),children:`Load More…`})]})]})}function YW(e){let t=e.row,n=KW/2,r=ZW(t.lane);return e.child?(0,X.jsx)(`svg`,{"aria-hidden":!0,width:GW*(t.width+1),height:KW,className:`shrink-0`,children:t.after.map(e=>(0,X.jsx)(`line`,{x1:ZW(e),x2:ZW(e),y1:0,y2:KW,stroke:QW(e),strokeWidth:1},e))}):(0,X.jsxs)(`svg`,{"aria-hidden":!0,width:GW*(t.width+1),height:KW,className:`shrink-0`,children:[t.through.map(e=>(0,X.jsx)(`line`,{x1:ZW(e),x2:ZW(e),y1:0,y2:KW,stroke:QW(e),strokeWidth:1},`through-${e}`)),t.up.map(e=>(0,X.jsx)(`path`,{d:`M ${ZW(e)} 0 Q ${ZW(e)} ${n} ${r} ${n}`,fill:`none`,stroke:QW(e),strokeWidth:1},`up-${e}`)),t.down.map(e=>(0,X.jsx)(`path`,{d:`M ${r} ${n} Q ${ZW(e)} ${n} ${ZW(e)} ${KW}`,fill:`none`,stroke:QW(e),strokeWidth:1},`down-${e}`)),(0,X.jsx)(`circle`,{cx:r,cy:n,r:t.commit.parents.length>1?3.5:4,fill:t.commit.parents.length>1?`var(--sidebar)`:QW(t.lane),stroke:QW(t.lane),strokeWidth:t.commit.parents.length>1?2:0})]})}function XW(e,t){if(e.endsWith(`/HEAD`))return null;let n=e===`HEAD`||e.startsWith(`HEAD -> `),r=e.startsWith(`tag: `),i=e===t.upstream,a=e.replace(/^HEAD -> /,``).replace(/^tag: /,``);return(0,X.jsxs)(`span`,{title:a,className:Re(`inline-flex h-4 max-w-32 items-center gap-0.5 rounded-full px-1.5 text-[11px] font-medium`,n&&`text-background bg-[#59A4F9]`,i&&`text-background bg-[#B180D7]`,!n&&!i&&`bg-muted text-foreground`),children:[(0,X.jsx)(je,{icon:r?ap:i?v:ie,className:`size-3 shrink-0`}),(0,X.jsx)(`span`,{className:`truncate`,children:a})]},e)}function ZW(e){return GW*(e+1)}function QW(e){return qW[e%qW.length]}function $W(e){let t=[];return e.map(e=>{let n=t,r=n.indexOf(e.hash),i=n.indexOf(null),a=r===-1?i===-1?n.length:i:r,o=n.map(t=>t===e.hash?null:t);o[a]=e.parents.at(0)??null;let s=e.parents.length>0?[a]:[];for(let t of e.parents.slice(1)){let e=o.indexOf(t);if(e!==-1){s.push(e);continue}let n=o.indexOf(null),r=n===-1?o.length:n;o[r]=t,s.push(r)}for(;o.length>0&&o.at(-1)===null;)o.pop();return t=o,{commit:e,lane:a,up:n.flatMap((t,n)=>t===e.hash?[n]:[]),through:n.flatMap((t,n)=>t!==null&&t!==e.hash?[n]:[]),down:s,after:o.flatMap((e,t)=>e===null?[]:[t]),width:Math.max(n.length,o.length,a+1)}})}function eG(e){let t=e.repo;function r(t,n){return(0,X.jsx)(i,{onSelect:()=>e.onCommit({...RW,...n}),children:t})}return(0,X.jsxs)(o,{children:[(0,X.jsx)(m,{asChild:!0,children:(0,X.jsx)(Me,{size:`icon-micro`,variant:`ghost`,title:`More Actions...`,"aria-label":`More Actions`,onClick:e=>e.stopPropagation(),children:(0,X.jsx)(je,{icon:le,className:`size-4`})})}),(0,X.jsxs)(l,{align:`end`,className:`bg-popover! w-56`,children:[(0,X.jsxs)(p,{children:[(0,X.jsx)(f,{children:`View & Sort`}),(0,X.jsxs)(a,{className:`w-44`,children:[(0,X.jsxs)(d,{value:e.settings.tree?`tree`:`list`,onValueChange:t=>e.onSettings({tree:t===`tree`}),children:[(0,X.jsx)(be,{value:`list`,children:`View as List`}),(0,X.jsx)(be,{value:`tree`,children:`View as Tree`})]}),(0,X.jsx)(n,{}),(0,X.jsxs)(d,{value:e.settings.sort,onValueChange:t=>{(t===`name`||t===`path`||t===`status`)&&e.onSettings({sort:t})},children:[(0,X.jsx)(be,{value:`name`,children:`Sort by Name`}),(0,X.jsx)(be,{value:`path`,children:`Sort by Path`}),(0,X.jsx)(be,{value:`status`,children:`Sort by Status`})]})]})]}),(0,X.jsx)(n,{}),(0,X.jsx)(i,{onSelect:()=>e.onRun({kind:`pull`,rebase:!1}),children:`Pull`}),(0,X.jsx)(i,{onSelect:()=>e.onRemote(`git.push`),children:`Push`}),(0,X.jsx)(i,{onSelect:e.onCheckout,children:`Checkout to...`}),(0,X.jsx)(i,{onSelect:()=>e.onRun({kind:`fetch`,prune:!1,all:!1}),children:`Fetch`}),(0,X.jsx)(n,{}),(0,X.jsxs)(p,{children:[(0,X.jsx)(f,{children:`Commit`}),(0,X.jsxs)(a,{className:`w-52`,children:[r(`Commit`,{}),r(`Commit Staged`,{all:!1}),r(`Commit All`,{all:!0}),(0,X.jsx)(i,{disabled:t.head===null,onSelect:e.onUndo,children:`Undo Last Commit`}),(0,X.jsx)(n,{}),r(`Commit (Amend)`,{amend:!0}),r(`Commit Staged (Amend)`,{all:!1,amend:!0}),r(`Commit All (Amend)`,{all:!0,amend:!0})]})]}),(0,X.jsxs)(p,{children:[(0,X.jsx)(f,{children:`Changes`}),(0,X.jsxs)(a,{className:`w-52`,children:[(0,X.jsx)(i,{onSelect:()=>e.onStage([...t.merge,...t.changes]),children:`Stage All Changes`}),(0,X.jsx)(i,{onSelect:()=>e.onUnstage(t.staged),children:`Unstage All Changes`}),(0,X.jsx)(i,{disabled:t.changes.length===0,onSelect:()=>e.onDiscard(t.changes),children:`Discard All Changes`})]})]}),(0,X.jsxs)(p,{children:[(0,X.jsx)(f,{children:`Pull, Push`}),(0,X.jsxs)(a,{className:`w-52`,children:[(0,X.jsx)(i,{onSelect:()=>e.onRemote(`git.sync`),children:`Sync`}),(0,X.jsx)(n,{}),(0,X.jsx)(i,{onSelect:()=>e.onRun({kind:`pull`,rebase:!1}),children:`Pull`}),(0,X.jsx)(i,{onSelect:()=>e.onRun({kind:`pull`,rebase:!0}),children:`Pull (Rebase)`}),(0,X.jsx)(n,{}),(0,X.jsx)(i,{onSelect:()=>e.onRemote(`git.push`),children:`Push`}),(0,X.jsx)(n,{}),(0,X.jsx)(i,{onSelect:()=>e.onRun({kind:`fetch`,prune:!1,all:!1}),children:`Fetch`}),(0,X.jsx)(i,{onSelect:()=>e.onRun({kind:`fetch`,prune:!0,all:!1}),children:`Fetch (Prune)`}),(0,X.jsx)(i,{onSelect:()=>e.onRun({kind:`fetch`,prune:!1,all:!0}),children:`Fetch From All Remotes`})]})]}),(0,X.jsxs)(p,{children:[(0,X.jsx)(f,{children:`Branch`}),(0,X.jsxs)(a,{className:`w-52`,children:[(0,X.jsx)(i,{onSelect:e.onCheckout,children:`Create Branch...`}),(0,X.jsx)(i,{disabled:t.branch===null||t.upstream!==null,onSelect:()=>e.onRemote(`git.push`),children:`Publish Branch...`})]})]}),(0,X.jsxs)(p,{children:[(0,X.jsx)(f,{children:`Stash`}),(0,X.jsxs)(a,{className:`w-56`,children:[(0,X.jsx)(i,{onSelect:()=>e.onRun({kind:`stash`,mode:`tracked`}),children:`Stash`}),(0,X.jsx)(i,{onSelect:()=>e.onRun({kind:`stash`,mode:`untracked`}),children:`Stash (Include Untracked)`}),(0,X.jsx)(i,{onSelect:()=>e.onRun({kind:`stash`,mode:`staged`}),children:`Stash Staged`}),(0,X.jsx)(n,{}),(0,X.jsx)(i,{onSelect:()=>e.onRun({kind:`unstash`,pop:!1}),children:`Apply Latest Stash`}),(0,X.jsx)(i,{onSelect:()=>e.onRun({kind:`unstash`,pop:!0}),children:`Pop Latest Stash`})]})]})]})]})}function tG(e){let[t,n]=(0,Y.useState)([]),r=(0,Y.useRef)(new Map),[i,a]=(0,Y.useState)(null),[o,s]=(0,Y.useState)(null),c=e.repos??[],l=c.length===1?c[0]:null,u=e.settings,d=Ee(e=>e.prefs);function f(e){return u.messages[e.path]??``}function p(t,n){return e.onPerform(()=>Te(e.machine,`git.run`,{projectId:e.projectId,repo:t.path,action:n}))}function m(t,n){return e.onPerform(()=>Te(e.machine,n,{projectId:e.projectId,repo:t.path}))}async function g(t,n){let r=f(t).trim();if(r===``&&!n.amend){Ae(`Please provide a commit message.`);return}let i=t.changes.length+t.merge.length>0;if(n.all===null&&!n.amend&&t.staged.length===0){if(!i){Ae(`There are no changes to commit.`);return}if(!u.smartCommit){a({repo:t,options:n});return}}let o=n.all??(t.staged.length===0&&!n.amend&&i);await e.onPerform(async()=>{await Te(e.machine,`git.run`,{projectId:e.projectId,repo:t.path,action:{kind:`commit`,message:r,all:o,amend:n.amend}}),e.onMessage(t.path,``),n.then!==null&&await Te(e.machine,n.then===`push`?`git.push`:`git.sync`,{projectId:e.projectId,repo:t.path})})}async function _(t){let i={};r.current.set(t.path,i),n(e=>[...e,t.path]);try{let n=await Te(e.machine,`git.message`,{projectId:e.projectId,repo:t.path,staged:t.staged.length>0});r.current.get(t.path)===i&&e.onMessage(t.path,n)}catch(e){r.current.get(t.path)===i&&Ae(e)}finally{r.current.get(t.path)===i&&v(t)}}function v(e){r.current.delete(e.path),n(t=>t.filter(t=>t!==e.path))}function b(t){e.onPerform(async()=>{e.onMessage(t.path,await Te(e.machine,`git.undoCommit`,{projectId:e.projectId,repo:t.path}))})}function ne(e,t){p(e,{kind:`unstage`,paths:t.flatMap(e=>e.from===null?[e.path]:[e.path,e.from])})}function ie(e,t){p(e,{kind:`stage`,paths:t.map(e=>e.path)})}function ae(t){return(0,X.jsx)(eG,{repo:t,settings:u,onSettings:e.onSettings,onCommit:e=>void g(t,e),onUndo:()=>b(t),onRun:e=>void p(t,e),onRemote:e=>void m(t,e),onStage:e=>ie(t,e),onUnstage:e=>ne(t,e),onDiscard:e=>s({repo:t,resources:e}),onCheckout:()=>e.onCheckout(t)})}let se=o?.resources??[],ce=se.filter(e=>e.status===`U`);return(0,X.jsxs)(`div`,{className:`bg-sidebar flex h-full min-h-0 flex-col`,children:[(0,X.jsxs)(`div`,{className:`text-sidebar-foreground border-sidebar-border relative flex h-9 shrink-0 items-center gap-0.5 border-b px-1.5`,children:[e.header,(0,X.jsx)(Me,{size:`icon-micro`,variant:`ghost`,title:u.tree?`View as List`:`View as Tree`,"aria-label":u.tree?`View as List`:`View as Tree`,onClick:()=>e.onSettings({tree:!u.tree}),children:(0,X.jsx)(je,{icon:u.tree?np:tp,className:`size-4`})}),l!==null&&(0,X.jsx)(Me,{size:`icon-micro`,variant:`ghost`,title:`Commit`,"aria-label":`Commit`,disabled:e.busy,onClick:()=>void g(l,RW),children:(0,X.jsx)(je,{icon:ve,className:`size-4`})}),(0,X.jsx)(Me,{size:`icon-micro`,variant:`ghost`,title:`Refresh`,"aria-label":`Refresh`,onClick:e.onRefresh,children:(0,X.jsx)(je,{icon:Ue,className:`size-4`})}),l!==null&&ae(l),(e.busy||t.length>0)&&(0,X.jsx)(`span`,{className:`absolute inset-x-0 -bottom-px h-0.5 overflow-hidden`,children:(0,X.jsx)(`span`,{className:`bg-primary block h-full w-[2%] animate-[progress_4s_linear_infinite]`})})]}),(0,X.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-y-auto pb-2`,children:[e.error!==null&&(0,X.jsx)(`p`,{className:`text-muted-foreground p-4 text-xs`,children:e.error}),e.error===null&&e.repos===null&&(0,X.jsx)(`p`,{className:`text-muted-foreground p-4 text-xs`,children:`Loading…`}),e.error===null&&e.repos?.length===0&&(0,X.jsx)(`p`,{className:`text-muted-foreground p-4 text-xs`,children:`The folder currently open doesn't have a git repository.`}),c.map(n=>(0,X.jsxs)(`div`,{children:[l===null&&(0,X.jsxs)(`div`,{className:`group/row text-sidebar-foreground flex h-[22px] items-center gap-1.5 pr-1 pl-2 text-[13px]`,children:[(0,X.jsx)(`span`,{className:`truncate font-semibold`,children:n.path===``?e.name:vp(n.path)}),(0,X.jsx)(`span`,{className:`text-muted-foreground truncate text-xs`,children:n.branch??(n.head===null?``:CW(n.head))}),(0,X.jsx)(`span`,{className:`ml-auto hidden shrink-0 items-center gap-0.5 group-hover/row:flex`,children:(0,X.jsx)(UW,{title:`Commit`,icon:ve,onClick:()=>void g(n,RW)})}),ae(n)]}),(0,X.jsx)(zW,{repo:n,message:f(n),generating:t.includes(n.path),busy:e.busy,nested:l===null,onMessage:t=>e.onMessage(n.path,t),onGenerate:()=>void _(n),onCancel:()=>v(n),onCommit:e=>void g(n,e),onRemote:e=>void m(n,e)}),(0,X.jsx)(VW,{repo:n,root:e.root,tree:u.tree,sort:u.sort,depth:+(l===null),active:e.active,onOpen:e.onOpen,onStage:e=>ie(n,e),onUnstage:e=>ne(n,e),onDiscard:e=>s({repo:n,resources:e}),onIgnore:e=>void p(n,{kind:`ignore`,paths:e.map(e=>e.path)})})]},n.path))]}),c.length>0&&(0,X.jsx)(JW,{machine:e.machine,projectId:e.projectId,repos:c,open:d.editor.graph,height:u.graphHeight,active:e.active,onToggle:()=>xe({...d,editor:{...d.editor,graph:!d.editor.graph}}),onHeight:t=>e.onSettings({graphHeight:t}),onOpen:e.onOpen,onFetch:e=>void p(e,{kind:`fetch`,prune:!1,all:!0})}),(0,X.jsx)(y,{open:i!==null,onOpenChange:e=>{e||a(null)},children:(0,X.jsxs)(oe,{children:[(0,X.jsxs)(h,{children:[(0,X.jsx)(ye,{children:`There are no staged changes to commit.`}),(0,X.jsx)(re,{children:`Would you like to stage all your changes and commit them directly?`})]}),(0,X.jsxs)(te,{children:[(0,X.jsx)(de,{children:`Cancel`}),(0,X.jsx)(ee,{variant:`outline`,onClick:()=>{i!==null&&(e.onSettings({smartCommit:!0}),g(i.repo,{...i.options,all:!0}))},children:`Always`}),(0,X.jsx)(ee,{onClick:()=>{i!==null&&g(i.repo,{...i.options,all:!0})},children:`Yes`})]})]})}),(0,X.jsx)(y,{open:o!==null,onOpenChange:e=>{e||s(null)},children:(0,X.jsxs)(oe,{children:[(0,X.jsxs)(h,{children:[(0,X.jsx)(ye,{children:se.length>1?`Are you sure you want to discard ALL changes in ${se.length} files?`:ce.length===1?`Are you sure you want to DELETE the following untracked file: '${vp(se[0].path)}'?`:`Are you sure you want to discard changes in '${vp(se.at(0)?.path??``)}'?`}),(0,X.jsxs)(re,{children:[se.length>1&&`This is IRREVERSIBLE! Your current working set will be FOREVER LOST if you proceed.`,se.length===1&&ce.length===1&&`This is IRREVERSIBLE! This file will be FOREVER LOST if you proceed.`]})]}),(0,X.jsxs)(te,{children:[(0,X.jsx)(de,{children:`Cancel`}),(0,X.jsx)(ee,{variant:`destructive`,onClick:()=>{o!==null&&p(o.repo,{kind:`discard`,tracked:se.filter(e=>e.status!==`U`).map(e=>e.path),untracked:ce.map(e=>e.path)})},children:se.length>1?`Discard All ${se.length} Files`:ce.length===1?`Delete File`:`Discard File`})]})]})})]})}var nG=3e3;function rG(e){let[t,n]=(0,Y.useState)(null),[r,i]=(0,Y.useState)(null),a=(0,Y.useEffectEvent)(e.onLoaded);return(0,Y.useEffect)(()=>{let t=!0,r=!1;async function o(){if(!r){r=!0;try{let r=await Te(e.machine,`git.changes`,{projectId:e.projectId});if(!t)return;i(null),n(e=>we(e,r)?e:r),a()}catch(e){t&&i(Le(e))}finally{r=!1}}}function s(){document.hidden||o()}o();let c=window.setInterval(s,nG);return window.addEventListener(`focus`,s),()=>{t=!1,window.clearInterval(c),window.removeEventListener(`focus`,s)}},[e.machine,e.projectId,e.version]),{repos:t,error:r}}var iG=(0,Y.lazy)(async()=>({default:(await J(async()=>{let{ZoomableImage:e}=await import(`./zoomable-image-DkYN4OSU.js`);return{ZoomableImage:e}},__vite__mapDeps([16,17,2,18,19,20,21,22]))).ZoomableImage}));function aG(e){let t=Ee(t=>ke(t,e.machine,e.projectId)),n=Ce(),r=Ee(e=>e.prefs.editor),[i]=(0,Y.useState)(()=>fp(e.machine,e.projectId)),[a]=(0,Y.useState)(()=>new Map(i.tabs.map(e=>[e.spec.id,e.view]))),[o,s]=(0,Y.useState)(()=>({...i.settings,width:Math.min(i.settings.width,window.innerWidth*.6)})),[c,l]=(0,Y.useState)(i.expanded),[u,d]=(0,Y.useState)(0),[f,p]=(0,Y.useState)(0),[m,h]=(0,Y.useState)(null),g=yW(),v=g.editor,y=g.diff,b=(0,Y.useRef)(null),ee=(0,Y.useCallback)(()=>d(e=>e+1),[]),te=NW({machine:e.machine,projectId:e.projectId,saved:i,onSaved:ee,onClose:()=>{ye(),e.onClose()}}),ne=te.active;function re(){ne!==null&&te.reload(ne)}let ie=rG({machine:e.machine,projectId:e.projectId,version:u,onLoaded:re}),ae=ie.repos,oe=te.tabs.find(e=>e.spec.id===ne),se=oe?.document.status===`text`&&oe.spec.preview!==!0?oe.document:null,ce=oe?.document.status===`text`&&oe.spec.preview===!0?oe.document.modified:null,le=se?.original??null,ue=se?.modified??null,de=oe?.spec.right.kind===`worktree`,fe=ae?.find(e=>e.path===oe?.spec.repo)??ae?.at(0)??null,pe=le===null&&ue?.getLanguageId()===`markdown`?ue:null;(0,Y.useEffect)(()=>{aW().catch(Ae)},[n]),(0,Y.useEffect)(()=>{v?.updateOptions(oW(r)),y?.updateOptions(oW(r)),sW(r).catch(Ae)},[v,y,r]),(0,Y.useEffect)(()=>{y?.updateOptions({renderSideBySide:!o.inline,ignoreTrimWhitespace:!o.whitespace,hideUnchangedRegions:{enabled:o.collapse}})},[y,o.inline,o.whitespace,o.collapse]),(0,Y.useEffect)(()=>{if(v===null||y===null||(b.current!==null&&a.set(b.current.id,b.current.editor.saveViewState()),b.current=null,v.setModel(le===null?ue:null),y.setModel(le===null||ue===null?null:{original:le,modified:ue}),ue===null||ne===null))return;let e=le===null?v:y.getModifiedEditor();e.updateOptions({readOnly:!de}),y.updateOptions({readOnly:!de}),e.restoreViewState(a.get(ne)??null),e.focus(),b.current={id:ne,editor:e}},[v,y,le,ue,ne,de,a]);let me=(0,Y.useEffectEvent)(re);(0,Y.useEffect)(()=>me(),[ne]),_W({machine:e.machine,projectId:e.projectId,spec:oe?.spec,original:le,modified:ue,onPerform:_e});function he(e){window.innerWidth<640&&ve({sidebar:!1}),te.open(e)}async function _e(e){p(e=>e+1);try{await e()}catch(e){Ae(e)}finally{p(e=>e-1),ee()}}function ve(e){s(t=>({...t,...e}))}function ye(){b.current!==null&&a.set(b.current.id,b.current.editor.saveViewState()),pp(e.machine,e.projectId,{tabs:te.tabs.map(e=>({spec:e.spec,view:a.get(e.spec.id)??null})),active:ne,expanded:c,settings:o})}(0,Y.useEffect)(ye);let be=(0,X.jsx)(Me,{size:`icon-micro`,variant:`ghost`,title:`Toggle Primary Side Bar`,"aria-label":`Toggle Primary Side Bar`,"aria-pressed":o.sidebar,onClick:()=>ve({sidebar:!o.sidebar}),children:(0,X.jsx)(je,{icon:ge,className:`size-4`})}),xe=(0,X.jsxs)(X.Fragment,{children:[be,(0,X.jsx)(FW,{view:o.view,onView:e=>ve({view:e})})]});return(0,X.jsx)(Ve,{open:!0,onOpenChange:()=>te.requestClose(),children:(0,X.jsxs)(ze,{"aria-describedby":void 0,showCloseButton:!1,className:`top-0 left-0 flex h-dvh w-dvw max-w-none translate-x-0 translate-y-0 flex-col gap-0 overflow-hidden rounded-none border-0 p-0 sm:max-w-none`,onEscapeKeyDown:e=>e.preventDefault(),onKeyDown:e=>{(e.metaKey||e.ctrlKey)&&e.key===`s`&&(e.preventDefault(),ne!==null&&te.save(ne)),(e.metaKey||e.ctrlKey)&&e.key===`w`&&(e.preventDefault(),ne!==null&&te.close(ne)),(e.metaKey||e.ctrlKey)&&e.shiftKey&&e.key.toLowerCase()===`v`&&pe!==null&&(e.preventDefault(),ve({preview:!o.preview}))},children:[(0,X.jsxs)(`div`,{className:`flex min-h-0 flex-1`,children:[(0,X.jsxs)(`div`,{className:Re(`border-sidebar-border relative shrink-0 border-r`,!o.sidebar&&`hidden`),style:{width:o.width},children:[o.view===`explorer`&&(0,X.jsx)(hp,{machine:e.machine,projectId:e.projectId,root:t?.path??``,header:xe,expanded:c,onExpanded:l,active:oe?.spec.path??null,onOpen:e=>he(TW(``,e)),onPreview:e=>he(EW(``,e)),onRenamed:te.renamed,onDeleted:te.deleted}),o.view===`scm`&&(0,X.jsx)(tG,{machine:e.machine,projectId:e.projectId,name:t?.name??``,root:t?.path??``,header:xe,repos:ae,error:ie.error,busy:f>0,settings:o,onSettings:ve,onMessage:(e,t)=>s(n=>({...n,messages:{...n.messages,[e]:t}})),active:ne,onOpen:he,onRefresh:ee,onPerform:_e,onCheckout:h}),(0,X.jsx)(`div`,{role:`separator`,"aria-orientation":`vertical`,className:`hover:bg-primary absolute inset-y-0 -right-0.5 z-10 w-1 cursor-col-resize touch-none transition-colors delay-100`,onPointerDown:e=>Fe(e,e=>ve({width:Math.min(Math.max(e.clientX,200),window.innerWidth-240)}))})]}),(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,X.jsxs)(`div`,{className:`bg-sidebar flex h-9 shrink-0 items-center shadow-[inset_0_-1px_0_var(--sidebar-border)]`,children:[!o.sidebar&&(0,X.jsx)(`div`,{className:`shrink-0 px-1.5`,children:be}),(0,X.jsx)(Be,{className:`sr-only`,children:`Editor`}),(0,X.jsx)(yp,{tabs:te.tabs.map(e=>({id:e.spec.id,path:e.spec.path,label:e.spec.label})),active:ne,dirty:te.dirty.map(e=>e.spec.id),onSelect:te.setActive,onClose:te.close}),oe!==void 0&&le!==null&&(0,X.jsx)(IW,{settings:o,onSettings:ve,onOpenFile:()=>he(TW(oe.spec.repo,oe.spec.path)),onPrevious:()=>y?.goToDiff(`previous`),onNext:()=>y?.goToDiff(`next`)}),pe!==null&&(0,X.jsx)(Me,{size:`icon-micro`,variant:`ghost`,className:`ml-1.5 shrink-0`,title:`Toggle Preview`,"aria-label":`Toggle Preview`,"aria-pressed":o.preview,onClick:()=>ve({preview:!o.preview}),children:(0,X.jsx)(je,{icon:sp,className:`size-4`})}),(0,X.jsx)(Me,{size:`icon-micro`,variant:`ghost`,className:`mx-1.5 shrink-0`,title:`Close`,"aria-label":`Close`,onClick:te.requestClose,children:(0,X.jsx)(je,{icon:Oe,className:`size-4`})})]}),(0,X.jsxs)(`div`,{className:`flex min-h-0 flex-1`,children:[(0,X.jsxs)(`div`,{className:Re(`relative min-w-0 flex-1`,pe!==null&&o.preview&&`max-sm:hidden`,ce!==null&&`hidden`),children:[(0,X.jsx)(`div`,{ref:g.codeHost,className:Re(`absolute inset-0`,(ue===null||le!==null)&&`hidden`)}),(0,X.jsx)(`div`,{ref:g.diffHost,className:Re(`absolute inset-0`,(ue===null||le===null)&&`hidden`)}),oe?.document.status===`image`&&(0,X.jsx)(Y.Suspense,{children:(0,X.jsx)(iG,{src:oe.document.src,alt:oe.spec.path})}),(0,X.jsx)(cp,{document:oe?.document,view:o.view})]}),pe!==null&&o.preview&&v!==null&&oe!==void 0&&(0,X.jsx)(cW,{machine:e.machine,projectId:e.projectId,path:oe.spec.path,model:pe,editor:v,onOpen:e=>he(TW(``,e))}),ce!==null&&oe!==void 0&&(0,X.jsx)(cW,{machine:e.machine,projectId:e.projectId,path:oe.spec.path,model:ce,editor:null,onOpen:e=>he(TW(``,e))},oe.spec.id)]})]})]}),(0,X.jsx)(hW,{editor:ue===null?null:le===null?v:y?.getModifiedEditor()??null,language:se?.language??null,children:fe!==null&&(0,X.jsx)(LW,{repo:fe,busy:f>0,onCheckout:()=>h(fe),onSync:()=>void _e(()=>Te(e.machine,`git.sync`,{projectId:e.projectId,repo:fe.path})),onPublish:()=>void _e(()=>Te(e.machine,`git.push`,{projectId:e.projectId,repo:fe.path}))})}),(0,X.jsx)(dp,{}),(0,X.jsx)(mW,{open:te.closing!==null,paths:te.closingTabs.map(e=>e.spec.path),onCancel:()=>te.setClosing(null),onFinish:e=>void te.finish(e)}),m!==null&&(0,X.jsx)(_,{machine:e.machine,projectId:e.projectId,repo:{...m,changed:m.merge.length+m.staged.length+m.changes.length},onRefresh:ee,onClose:()=>h(null)})]})})}export{aG as EditorDialog};
|
|
52
|
+
It is recommended to remove them from the file. This can be configured via \`editor.unusualLineTerminators\`.`,Jd(e.uri)),primaryButton:x(1635,`&&Remove Unusual Line Terminators`),cancelButton:x(1636,`Ignore`)})}finally{this._isPresentingDialog=!1}t.confirmed?e.removeUnusualLineTerminators(this._editor.getSelections()):IH(this._codeEditorService,e,!0)}};RH=NH([PH(1,ca),PH(2,Xs)],RH),Ps(RH.ID,RH,1);var zH=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},BH=function(e,t){return function(n,r){t(n,r,e)}},VH=class{constructor(){this.selector={language:`*`}}provideDocumentHighlights(e,t,n){if(e.isDisposed())return;let r=[],i=e.getWordAtPosition({lineNumber:t.lineNumber,column:t.column});return i?e.findMatches(i.word,!0,!1,!0,eu,!1).map(e=>({range:e.range,kind:xf.Text})):Promise.resolve(r)}provideMultiDocumentHighlights(e,t,n,r){if(e.isDisposed())return;let i=new Cl,a=e.getWordAtPosition({lineNumber:t.lineNumber,column:t.column});if(!a)return Promise.resolve(i);for(let t of[e,...n]){if(t.isDisposed())continue;let e=t.findMatches(a.word,!0,!1,!0,eu,!1).map(e=>({range:e.range,kind:xf.Text}));e&&i.set(t.uri,e)}return i}},HH=class extends G{constructor(e){super(),this._register(e.documentHighlightProvider.register(`*`,new VH)),this._register(e.multiDocumentHighlightProvider.register(`*`,new VH))}};HH=zH([BH(0,R)],HH);var UH=function(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a},WH=function(e,t){return function(n,r){t(n,r,e)}},GH,KH,qH=new j(`hasWordHighlights`,!1);function JH(e,t,n,r){let i=e.ordered(t);return Wn(i.map(e=>()=>Promise.resolve(e.provideDocumentHighlights(t,n,r)).then(void 0,Zs)),e=>e!=null).then(e=>{if(e){let n=new Cl;return n.set(t.uri,e),n}return new Cl})}function YH(e,t,n,r,i){let a=e.ordered(t);return Wn(a.map(e=>()=>{let a=i.filter(e=>Vf(e)).filter(t=>Nd(e.selector,t.uri,t.getLanguageId(),!0,void 0,void 0)>0);return Promise.resolve(e.provideMultiDocumentHighlights(t,n,a,r)).then(void 0,Zs)}),e=>e!=null)}var XH=class{constructor(e,t,n){this._model=e,this._selection=t,this._wordSeparators=n,this._wordRange=this._getCurrentWordRange(e,t),this._result=null}get result(){return this._result||=Et(e=>this._compute(this._model,this._selection,this._wordSeparators,e)),this._result}_getCurrentWordRange(e,t){let n=e.getWordAtPosition(t.getPosition());return n?new C(t.startLineNumber,n.startColumn,t.startLineNumber,n.endColumn):null}cancel(){this.result.cancel()}},ZH=class extends XH{constructor(e,t,n,r){super(e,t,n),this._providers=r}_compute(e,t,n,r){return JH(this._providers,e,t.getPosition(),r).then(e=>e||new Cl)}},QH=class extends XH{constructor(e,t,n,r,i){super(e,t,n),this._providers=r,this._otherModels=i}_compute(e,t,n,r){return YH(this._providers,e,t.getPosition(),r,this._otherModels).then(e=>e||new Cl)}};function $H(e,t,n,r){return new ZH(t,n,r,e)}function eU(e,t,n,r,i){return new QH(t,n,r,e,i)}Id(`_executeDocumentHighlights`,async(e,t,n)=>(await JH(e.get(R).documentHighlightProvider,t,n,T.None))?.get(t.uri));var tU=class{static{GH=this}static{this.storedDecorationIDs=new Cl}static{this.query=null}constructor(e,t,n,r,i,a,o,s){this.toUnhook=new F,this.workerRequestTokenId=0,this.workerRequestCompleted=!1,this.workerRequestValue=new Cl,this.lastCursorPositionChangeTime=0,this.renderDecorationsTimer=void 0,this.runDelayer=this.toUnhook.add(new er(50)),this.editor=e,this.providers=t,this.multiDocumentProviders=n,this.codeEditorService=a,this.textModelService=i,this.configurationService=o,this.logService=s,this._hasWordHighlights=qH.bindTo(r),this._ignorePositionChangeEvent=!1,this.occurrencesHighlightEnablement=this.editor.getOption(90),this.occurrencesHighlightDelay=this.configurationService.getValue(`editor.occurrencesHighlightDelay`),this.model=this.editor.getModel(),this.toUnhook.add(e.onDidChangeCursorPosition(e=>{this._ignorePositionChangeEvent||this.occurrencesHighlightEnablement!==`off`&&this.runDelayer.trigger(()=>{this._onPositionChanged(e)}).catch(nt)})),this.toUnhook.add(e.onDidFocusEditorText(e=>{this.occurrencesHighlightEnablement!==`off`&&(this.workerRequest||this.runDelayer.trigger(()=>{this._run()}).catch(nt))})),this.toUnhook.add(e.onDidChangeModelContent(e=>{Kr(this.model.uri,`output`)||this._stopAll()})),this.toUnhook.add(e.onDidChangeModel(e=>{!e.newModelUrl&&e.oldModelUrl?this._stopSingular():GH.query&&this._run()})),this.toUnhook.add(e.onDidChangeConfiguration(e=>{let t=this.editor.getOption(90);if(this.occurrencesHighlightEnablement!==t)switch(this.occurrencesHighlightEnablement=t,t){case`off`:this._stopAll();break;case`singleFile`:this._stopAll(GH.query?.modelInfo?.modelURI);break;case`multiFile`:GH.query&&this._run(!0);break;default:console.warn(`Unknown occurrencesHighlight setting value:`,t)}})),this.toUnhook.add(this.configurationService.onDidChangeConfiguration(e=>{if(e.affectsConfiguration(`editor.occurrencesHighlightDelay`)){let e=o.getValue(`editor.occurrencesHighlightDelay`);this.occurrencesHighlightDelay!==e&&(this.occurrencesHighlightDelay=e)}})),this.toUnhook.add(e.onDidBlurEditorWidget(()=>{let e=this.codeEditorService.getFocusedCodeEditor();e?e.getModel()?.uri.scheme===sl.vscodeNotebookCell&&this.editor.getModel()?.uri.scheme!==sl.vscodeNotebookCell&&this._stopAll():this._stopAll()})),this.decorations=this.editor.createDecorationsCollection(),this.workerRequestTokenId=0,this.workerRequest=null,this.workerRequestCompleted=!1,this.lastCursorPositionChangeTime=0,this.renderDecorationsTimer=void 0,GH.query&&this._run()}hasDecorations(){return this.decorations.length>0}restore(e){this.occurrencesHighlightEnablement!==`off`&&(this.runDelayer.cancel(),this.runDelayer.trigger(()=>{this._run(!1,e)}).catch(nt))}stop(){this.occurrencesHighlightEnablement!==`off`&&this._stopAll()}_getSortedHighlights(){return this.decorations.getRanges().sort(C.compareRangesUsingStarts)}moveNext(){let e=this._getSortedHighlights(),t=(e.findIndex(e=>e.containsPosition(this.editor.getPosition()))+1)%e.length,n=e[t];try{this._ignorePositionChangeEvent=!0,this.editor.setPosition(n.getStartPosition()),this.editor.revealRangeInCenterIfOutsideViewport(n);let r=this._getWord();if(r){let i=this.editor.getModel().getLineContent(n.startLineNumber);bo(`${i}, ${t+1} of ${e.length} for '${r.word}'`)}}finally{this._ignorePositionChangeEvent=!1}}moveBack(){let e=this._getSortedHighlights(),t=(e.findIndex(e=>e.containsPosition(this.editor.getPosition()))-1+e.length)%e.length,n=e[t];try{this._ignorePositionChangeEvent=!0,this.editor.setPosition(n.getStartPosition()),this.editor.revealRangeInCenterIfOutsideViewport(n);let r=this._getWord();if(r){let i=this.editor.getModel().getLineContent(n.startLineNumber);bo(`${i}, ${t+1} of ${e.length} for '${r.word}'`)}}finally{this._ignorePositionChangeEvent=!1}}_removeSingleDecorations(){if(!this.editor.hasModel())return;let e=GH.storedDecorationIDs.get(this.editor.getModel().uri);e&&(this.editor.removeDecorations(e),GH.storedDecorationIDs.delete(this.editor.getModel().uri),this.decorations.length>0&&(this.decorations.clear(),this._hasWordHighlights.set(!1)))}_removeAllDecorations(e){let t=this.codeEditorService.listCodeEditors(),n=[];for(let r of t){if(!r.hasModel()||Vt(r.getModel().uri,e))continue;let t=GH.storedDecorationIDs.get(r.getModel().uri);if(!t)continue;r.removeDecorations(t),n.push(r.getModel().uri);let i=nU.get(r);i?.wordHighlighter&&i.wordHighlighter.decorations.length>0&&(i.wordHighlighter.decorations.clear(),i.wordHighlighter.workerRequest=null,i.wordHighlighter._hasWordHighlights.set(!1))}for(let e of n)GH.storedDecorationIDs.delete(e)}_stopSingular(){this._removeSingleDecorations(),this.editor.hasTextFocus()&&(this.editor.getModel()?.uri.scheme!==sl.vscodeNotebookCell&&GH.query?.modelInfo?.modelURI.scheme!==sl.vscodeNotebookCell?(GH.query=null,this._run()):GH.query?.modelInfo&&(GH.query.modelInfo=null)),this.renderDecorationsTimer!==void 0&&(clearTimeout(this.renderDecorationsTimer),this.renderDecorationsTimer=void 0),this.workerRequest!==null&&(this.workerRequest.cancel(),this.workerRequest=null),this.workerRequestCompleted||=(this.workerRequestTokenId++,!0)}_stopAll(e){this._removeAllDecorations(e),this.renderDecorationsTimer!==void 0&&(clearTimeout(this.renderDecorationsTimer),this.renderDecorationsTimer=void 0),this.workerRequest!==null&&(this.workerRequest.cancel(),this.workerRequest=null),this.workerRequestCompleted||=(this.workerRequestTokenId++,!0)}_onPositionChanged(e){this.occurrencesHighlightEnablement===`off`||e.source!==`api`&&e.reason!==3?this._stopAll():this._run()}_getWord(){let e=this.editor.getSelection(),t=e.startLineNumber,n=e.startColumn;return this.model.isDisposed()?null:this.model.getWordAtPosition({lineNumber:t,column:n})}getOtherModelsToHighlight(e){if(!e)return[];if(e.uri.scheme===sl.vscodeNotebookCell){let t=[],n=this.codeEditorService.listCodeEditors();for(let r of n){let n=r.getModel();n&&n!==e&&n.uri.scheme===sl.vscodeNotebookCell&&t.push(n)}return t}let t=[],n=this.codeEditorService.listCodeEditors();for(let r of n){if(!Rl(r))continue;let n=r.getModel();n&&e===n.modified&&t.push(n.modified)}if(t.length)return t;if(this.occurrencesHighlightEnablement===`singleFile`)return[];for(let r of n){let n=r.getModel();n&&n!==e&&t.push(n)}return t}async _run(e,t){if(this.editor.hasTextFocus()){let e=this.editor.getSelection();if(!e||e.startLineNumber!==e.endLineNumber){GH.query=null,this._stopAll();return}let t=e.startColumn,n=e.endColumn,r=this._getWord();if(!r||r.startColumn>t||r.endColumn<n){GH.query=null,this._stopAll();return}GH.query={modelInfo:{modelURI:this.model.uri,selection:e}}}else if(!GH.query){this._stopAll();return}if(this.lastCursorPositionChangeTime=new Date().getTime(),Vt(this.editor.getModel().uri,GH.query.modelInfo?.modelURI)){if(!e){let e=this.decorations.getRanges();for(let t of e)if(t.containsPosition(this.editor.getPosition()))return}this._stopAll(e?this.model.uri:void 0);let n=++this.workerRequestTokenId;this.workerRequestCompleted=!1;let r=this.getOtherModelsToHighlight(this.editor.getModel());if(!GH.query||!GH.query.modelInfo)return;let i=await this.textModelService.createModelReference(GH.query.modelInfo.modelURI);try{this.workerRequest=this.computeWithModel(i.object.textEditorModel,GH.query.modelInfo.selection,r),this.workerRequest?.result.then(e=>{n===this.workerRequestTokenId&&(this.workerRequestCompleted=!0,this.workerRequestValue=e||[],this._beginRenderDecorations(t??this.occurrencesHighlightDelay))},nt)}catch(e){this.logService.error(`Unexpected error during occurrence request. Log: `,e)}finally{i.dispose()}}else if(this.model.uri.scheme===sl.vscodeNotebookCell){let e=++this.workerRequestTokenId;if(this.workerRequestCompleted=!1,!GH.query||!GH.query.modelInfo)return;let n=await this.textModelService.createModelReference(GH.query.modelInfo.modelURI);try{this.workerRequest=this.computeWithModel(n.object.textEditorModel,GH.query.modelInfo.selection,[this.model]),this.workerRequest?.result.then(n=>{e===this.workerRequestTokenId&&(this.workerRequestCompleted=!0,this.workerRequestValue=n||[],this._beginRenderDecorations(t??this.occurrencesHighlightDelay))},nt)}catch(e){this.logService.error(`Unexpected error during occurrence request. Log: `,e)}finally{n.dispose()}}}computeWithModel(e,t,n){return n.length?eU(this.multiDocumentProviders,e,t,this.editor.getOption(148),n):$H(this.providers,e,t,this.editor.getOption(148))}_beginRenderDecorations(e){let t=new Date().getTime(),n=this.lastCursorPositionChangeTime+e;t>=n?(this.renderDecorationsTimer=void 0,this.renderDecorations()):this.renderDecorationsTimer=setTimeout(()=>{this.renderDecorations()},n-t)}renderDecorations(){this.renderDecorationsTimer=void 0;let e=this.codeEditorService.listCodeEditors();for(let t of e){let e=nU.get(t);if(!e)continue;let n=[],r=t.getModel()?.uri;if(r&&this.workerRequestValue.has(r)){let i=GH.storedDecorationIDs.get(r),a=this.workerRequestValue.get(r);if(a)for(let e of a)e.range&&n.push({range:e.range,options:yz(e.kind)});let o=[];t.changeDecorations(e=>{o=e.deltaDecorations(i??[],n)}),GH.storedDecorationIDs=GH.storedDecorationIDs.set(r,o),n.length>0&&(e.wordHighlighter?.decorations.set(n),e.wordHighlighter?._hasWordHighlights.set(!0))}}this.workerRequest=null}dispose(){this._stopSingular(),this.toUnhook.dispose()}};tU=GH=UH([WH(4,Ui),WH(5,Xs),WH(6,Vi),WH(7,ju)],tU);var nU=class extends G{static{KH=this}static{this.ID=`editor.contrib.wordHighlighter`}static get(e){return e.getContribution(KH.ID)}constructor(e,t,n,r,i,a,o){super(),this._wordHighlighter=null;let s=()=>{e.hasModel()&&!e.getModel().isTooLargeForTokenization()&&e.getModel().uri.scheme!==sl.accessibleView&&(this._wordHighlighter=new tU(e,n.documentHighlightProvider,n.multiDocumentHighlightProvider,t,i,r,a,o))};this._register(e.onDidChangeModel(e=>{this._wordHighlighter&&=(!e.newModelUrl&&e.oldModelUrl?.scheme!==sl.vscodeNotebookCell&&this.wordHighlighter?.stop(),this._wordHighlighter.dispose(),null),s()})),s()}get wordHighlighter(){return this._wordHighlighter}saveViewState(){return!!(this._wordHighlighter&&this._wordHighlighter.hasDecorations())}moveNext(){this._wordHighlighter?.moveNext()}moveBack(){this._wordHighlighter?.moveBack()}restoreViewState(e){this._wordHighlighter&&e&&this._wordHighlighter.restore(250)}dispose(){this._wordHighlighter&&=(this._wordHighlighter.dispose(),null),super.dispose()}};nU=KH=UH([WH(1,Fa),WH(2,R),WH(3,Xs),WH(4,Ui),WH(5,Vi),WH(6,ju)],nU);var rU=class extends W{constructor(e,t){super(t),this._isNext=e}run(e,t){let n=nU.get(t);n&&(this._isNext?n.moveNext():n.moveBack())}},iU=class extends rU{constructor(){super(!0,{id:`editor.action.wordHighlight.next`,label:L(1646,`Go to Next Symbol Highlight`),precondition:qH,kbOpts:{kbExpr:E.editorTextFocus,primary:65,weight:100}})}},aU=class extends rU{constructor(){super(!1,{id:`editor.action.wordHighlight.prev`,label:L(1647,`Go to Previous Symbol Highlight`),precondition:qH,kbOpts:{kbExpr:E.editorTextFocus,primary:1089,weight:100}})}},oU=class extends W{constructor(){super({id:`editor.action.wordHighlight.trigger`,label:L(1648,`Trigger Symbol Highlight`),precondition:void 0,kbOpts:{kbExpr:E.editorTextFocus,primary:0,weight:100}})}run(e,t){let n=nU.get(t);n&&n.restoreViewState(!0)}};Ps(nU.ID,nU,0),z(iU),z(aU),z(oU),$e(HH);var sU=class extends td{constructor(e){super(e),this._inSelectionMode=e.inSelectionMode,this._wordNavigationType=e.wordNavigationType}runEditorCommand(e,t,n){if(!t.hasModel())return;let r=Ot(t.getOption(148),t.getOption(147)),i=t.getModel(),a=t.getSelections(),o=a.length>1,s=a.map(e=>{let t=new A(e.positionLineNumber,e.positionColumn),n=this._move(r,i,t,this._wordNavigationType,o);return this._moveTo(e,n,this._inSelectionMode)});if(i.pushStackElement(),t._getViewModel().setCursorStates(`moveWordCommand`,3,s.map(e=>ld.fromModelSelection(e))),s.length===1){let e=new A(s[0].positionLineNumber,s[0].positionColumn);t.revealPosition(e,0)}}_moveTo(e,t,n){return n?new q(e.selectionStartLineNumber,e.selectionStartColumn,t.lineNumber,t.column):new q(t.lineNumber,t.column,t.lineNumber,t.column)}},cU=class extends sU{_move(e,t,n,r,i){return bd.moveWordLeft(e,t,n,r,i)}},lU=class extends sU{_move(e,t,n,r,i){return bd.moveWordRight(e,t,n,r)}},uU=class extends cU{constructor(){super({inSelectionMode:!1,wordNavigationType:0,id:`cursorWordStartLeft`,precondition:void 0})}},dU=class extends cU{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:`cursorWordEndLeft`,precondition:void 0})}},fU=class extends cU{constructor(){super({inSelectionMode:!1,wordNavigationType:1,id:`cursorWordLeft`,precondition:void 0,kbOpts:{kbExpr:w.and(E.textInputFocus,w.and(Xa,Qu)?.negate()),primary:2063,mac:{primary:527},weight:100}})}},pU=class extends cU{constructor(){super({inSelectionMode:!0,wordNavigationType:0,id:`cursorWordStartLeftSelect`,precondition:void 0})}},mU=class extends cU{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:`cursorWordEndLeftSelect`,precondition:void 0})}},hU=class extends cU{constructor(){super({inSelectionMode:!0,wordNavigationType:1,id:`cursorWordLeftSelect`,precondition:void 0,kbOpts:{kbExpr:w.and(E.textInputFocus,w.and(Xa,Qu)?.negate()),primary:3087,mac:{primary:1551},weight:100}})}},gU=class extends cU{constructor(){super({inSelectionMode:!1,wordNavigationType:3,id:`cursorWordAccessibilityLeft`,precondition:void 0})}_move(e,t,n,r,i){return super._move(Ot(Gi.wordSeparators.defaultValue,e.intlSegmenterLocales),t,n,r,i)}},_U=class extends cU{constructor(){super({inSelectionMode:!0,wordNavigationType:3,id:`cursorWordAccessibilityLeftSelect`,precondition:void 0})}_move(e,t,n,r,i){return super._move(Ot(Gi.wordSeparators.defaultValue,e.intlSegmenterLocales),t,n,r,i)}},vU=class extends lU{constructor(){super({inSelectionMode:!1,wordNavigationType:0,id:`cursorWordStartRight`,precondition:void 0})}},yU=class extends lU{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:`cursorWordEndRight`,precondition:void 0,kbOpts:{kbExpr:w.and(E.textInputFocus,w.and(Xa,Qu)?.negate()),primary:2065,mac:{primary:529},weight:100}})}},bU=class extends lU{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:`cursorWordRight`,precondition:void 0})}},xU=class extends lU{constructor(){super({inSelectionMode:!0,wordNavigationType:0,id:`cursorWordStartRightSelect`,precondition:void 0})}},SU=class extends lU{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:`cursorWordEndRightSelect`,precondition:void 0,kbOpts:{kbExpr:w.and(E.textInputFocus,w.and(Xa,Qu)?.negate()),primary:3089,mac:{primary:1553},weight:100}})}},CU=class extends lU{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:`cursorWordRightSelect`,precondition:void 0})}},wU=class extends lU{constructor(){super({inSelectionMode:!1,wordNavigationType:3,id:`cursorWordAccessibilityRight`,precondition:void 0})}_move(e,t,n,r,i){return super._move(Ot(Gi.wordSeparators.defaultValue,e.intlSegmenterLocales),t,n,r,i)}},TU=class extends lU{constructor(){super({inSelectionMode:!0,wordNavigationType:3,id:`cursorWordAccessibilityRightSelect`,precondition:void 0})}_move(e,t,n,r,i){return super._move(Ot(Gi.wordSeparators.defaultValue,e.intlSegmenterLocales),t,n,r,i)}},EU=class extends td{constructor(e){super({canTriggerInlineEdits:!0,...e}),this._whitespaceHeuristics=e.whitespaceHeuristics,this._wordNavigationType=e.wordNavigationType}runEditorCommand(e,t,n){let r=e?.get(Pn);if(!t.hasModel()||!r)return;let i=Ot(t.getOption(148),t.getOption(147)),a=t.getModel(),o=t.getSelections(),s=t.getOption(10),c=t.getOption(15),l=r.getLanguageConfiguration(a.getLanguageId()).getAutoClosingPairs(),u=t._getViewModel(),d=o.map(e=>{let n=this._delete({wordSeparators:i,model:a,selection:e,whitespaceHeuristics:this._whitespaceHeuristics,autoClosingDelete:t.getOption(13),autoClosingBrackets:s,autoClosingQuotes:c,autoClosingPairs:l,autoClosedCharacters:u.getCursorAutoClosedCharacters()},this._wordNavigationType);return new Yc(n,``)});t.pushUndoStop(),t.executeCommands(this.id,d),t.pushUndoStop()}},DU=class extends EU{_delete(e,t){return bd.deleteWordLeft(e,t)||new C(1,1,1,1)}},OU=class extends EU{_delete(e,t){let n=bd.deleteWordRight(e,t);if(n)return n;let r=e.model.getLineCount(),i=e.model.getLineMaxColumn(r);return new C(r,i,r,i)}},kU=class extends DU{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:0,id:`deleteWordStartLeft`,precondition:E.writable})}},AU=class extends DU{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:2,id:`deleteWordEndLeft`,precondition:E.writable})}},jU=class extends DU{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:0,id:`deleteWordLeft`,precondition:E.writable,kbOpts:{kbExpr:E.textInputFocus,primary:2049,mac:{primary:513},weight:100}})}},MU=class extends OU{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:0,id:`deleteWordStartRight`,precondition:E.writable})}},NU=class extends OU{constructor(){super({whitespaceHeuristics:!1,wordNavigationType:2,id:`deleteWordEndRight`,precondition:E.writable})}},PU=class extends OU{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:2,id:`deleteWordRight`,precondition:E.writable,kbOpts:{kbExpr:E.textInputFocus,primary:2068,mac:{primary:532},weight:100}})}},FU=class extends W{constructor(){super({id:`deleteInsideWord`,precondition:E.writable,label:L(1650,`Delete Word`),metadata:{description:L(1651,`Delete the word at the cursor`),args:[{name:`args`,schema:{type:`object`,properties:{onlyWord:{type:`boolean`,default:!1,description:x(1649,`Delete only the word and leave surrounding whitespace`)}}}}]}})}run(e,t,n){if(!t.hasModel())return;let r=!!(n&&typeof n==`object`&&n.onlyWord),i=Ot(t.getOption(148),t.getOption(147)),a=t.getModel(),o=t.getSelections().map(e=>{let t=bd.deleteInsideWord(i,a,e,r);return new Yc(t,``)});t.pushUndoStop(),t.executeCommands(this.id,o),t.pushUndoStop()}};H(new uU),H(new dU),H(new fU),H(new pU),H(new mU),H(new hU),H(new vU),H(new yU),H(new bU),H(new xU),H(new SU),H(new CU),H(new gU),H(new _U),H(new wU),H(new TU),H(new kU),H(new AU),H(new jU),H(new MU),H(new NU),H(new PU),z(FU);var IU=class extends EU{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:0,id:`deleteWordPartLeft`,precondition:E.writable,kbOpts:{kbExpr:E.textInputFocus,primary:0,mac:{primary:769},weight:100}})}_delete(e,t){return nu.deleteWordPartLeft(e)||new C(1,1,1,1)}},LU=class extends EU{constructor(){super({whitespaceHeuristics:!0,wordNavigationType:2,id:`deleteWordPartRight`,precondition:E.writable,kbOpts:{kbExpr:E.textInputFocus,primary:0,mac:{primary:788},weight:100}})}_delete(e,t){let n=nu.deleteWordPartRight(e);if(n)return n;let r=e.model.getLineCount(),i=e.model.getLineMaxColumn(r);return new C(r,i,r,i)}},RU=class extends sU{_move(e,t,n,r,i){return nu.moveWordPartLeft(e,t,n,i)}},zU=class extends RU{constructor(){super({inSelectionMode:!1,wordNavigationType:0,id:`cursorWordPartLeft`,precondition:void 0,kbOpts:{kbExpr:E.textInputFocus,primary:0,mac:{primary:783},weight:100}})}};In.registerCommandAlias(`cursorWordPartStartLeft`,`cursorWordPartLeft`);var BU=class extends RU{constructor(){super({inSelectionMode:!0,wordNavigationType:0,id:`cursorWordPartLeftSelect`,precondition:void 0,kbOpts:{kbExpr:E.textInputFocus,primary:0,mac:{primary:1807},weight:100}})}};In.registerCommandAlias(`cursorWordPartStartLeftSelect`,`cursorWordPartLeftSelect`);var VU=class extends sU{_move(e,t,n,r,i){return nu.moveWordPartRight(e,t,n)}},HU=class extends VU{constructor(){super({inSelectionMode:!1,wordNavigationType:2,id:`cursorWordPartRight`,precondition:void 0,kbOpts:{kbExpr:E.textInputFocus,primary:0,mac:{primary:785},weight:100}})}},UU=class extends VU{constructor(){super({inSelectionMode:!0,wordNavigationType:2,id:`cursorWordPartRightSelect`,precondition:void 0,kbOpts:{kbExpr:E.textInputFocus,primary:0,mac:{primary:1809},weight:100}})}};H(new IU),H(new LU),H(new zU),H(new BU),H(new HU),H(new UU);var WU=[{id:`andromeeda`,displayName:`Andromeeda`,type:`dark`,import:(()=>J(()=>import(`./andromeeda-vGVdxbeo.js`),[]))},{id:`aurora-x`,displayName:`Aurora X`,type:`dark`,import:(()=>J(()=>import(`./aurora-x-CDeNXAV0.js`),[]))},{id:`ayu-dark`,displayName:`Ayu Dark`,type:`dark`,import:(()=>J(()=>import(`./ayu-dark-DluEY0Gj.js`),[]))},{id:`ayu-light`,displayName:`Ayu Light`,type:`light`,import:(()=>J(()=>import(`./ayu-light-C3h-C4tm.js`),[]))},{id:`ayu-mirage`,displayName:`Ayu Mirage`,type:`dark`,import:(()=>J(()=>import(`./ayu-mirage-Bqwy1Gya.js`),[]))},{id:`catppuccin-frappe`,displayName:`Catppuccin Frappé`,type:`dark`,import:(()=>J(()=>import(`./catppuccin-frappe-C9Q5zVZY.js`),[]))},{id:`catppuccin-latte`,displayName:`Catppuccin Latte`,type:`light`,import:(()=>J(()=>import(`./catppuccin-latte-CtsyrtPq.js`),[]))},{id:`catppuccin-macchiato`,displayName:`Catppuccin Macchiato`,type:`dark`,import:(()=>J(()=>import(`./catppuccin-macchiato-R8nAf1vR.js`),[]))},{id:`catppuccin-mocha`,displayName:`Catppuccin Mocha`,type:`dark`,import:(()=>J(()=>import(`./catppuccin-mocha-DjuaAJKi.js`),[]))},{id:`dark-plus`,displayName:`Dark Plus`,type:`dark`,import:(()=>J(()=>import(`./dark-plus-Cs2F2srj.js`),[]))},{id:`dracula`,displayName:`Dracula Theme`,type:`dark`,import:(()=>J(()=>import(`./dracula-BHWKrbxM.js`),[]))},{id:`dracula-soft`,displayName:`Dracula Theme Soft`,type:`dark`,import:(()=>J(()=>import(`./dracula-soft-5eyTD99u.js`),[]))},{id:`everforest-dark`,displayName:`Everforest Dark`,type:`dark`,import:(()=>J(()=>import(`./everforest-dark-sB-x3p7T.js`),[]))},{id:`everforest-light`,displayName:`Everforest Light`,type:`light`,import:(()=>J(()=>import(`./everforest-light-Df2xbC6M.js`),[]))},{id:`github-dark`,displayName:`GitHub Dark`,type:`dark`,import:(()=>J(()=>import(`./github-dark-C-LZuMrd.js`),[]))},{id:`github-dark-default`,displayName:`GitHub Dark Default`,type:`dark`,import:(()=>J(()=>import(`./github-dark-default-DXG-b-1a.js`),[]))},{id:`github-dark-dimmed`,displayName:`GitHub Dark Dimmed`,type:`dark`,import:(()=>J(()=>import(`./github-dark-dimmed-Bx1FflLF.js`),[]))},{id:`github-dark-high-contrast`,displayName:`GitHub Dark High Contrast`,type:`dark`,import:(()=>J(()=>import(`./github-dark-high-contrast-B_tTalzw.js`),[]))},{id:`github-light`,displayName:`GitHub Light`,type:`light`,import:(()=>J(()=>import(`./github-light-EUqPIrTm.js`),[]))},{id:`github-light-default`,displayName:`GitHub Light Default`,type:`light`,import:(()=>J(()=>import(`./github-light-default-BXViO-2h.js`),[]))},{id:`github-light-high-contrast`,displayName:`GitHub Light High Contrast`,type:`light`,import:(()=>J(()=>import(`./github-light-high-contrast-B68TUdTA.js`),[]))},{id:`gruvbox-dark-hard`,displayName:`Gruvbox Dark Hard`,type:`dark`,import:(()=>J(()=>import(`./gruvbox-dark-hard-C820rvS2.js`),[]))},{id:`gruvbox-dark-medium`,displayName:`Gruvbox Dark Medium`,type:`dark`,import:(()=>J(()=>import(`./gruvbox-dark-medium-BPjhmG05.js`),[]))},{id:`gruvbox-dark-soft`,displayName:`Gruvbox Dark Soft`,type:`dark`,import:(()=>J(()=>import(`./gruvbox-dark-soft-MrdJrrXF.js`),[]))},{id:`gruvbox-light-hard`,displayName:`Gruvbox Light Hard`,type:`light`,import:(()=>J(()=>import(`./gruvbox-light-hard-BC_s9l72.js`),[]))},{id:`gruvbox-light-medium`,displayName:`Gruvbox Light Medium`,type:`light`,import:(()=>J(()=>import(`./gruvbox-light-medium-BAWPOn9u.js`),[]))},{id:`gruvbox-light-soft`,displayName:`Gruvbox Light Soft`,type:`light`,import:(()=>J(()=>import(`./gruvbox-light-soft-BSMLrYjP.js`),[]))},{id:`horizon`,displayName:`Horizon`,type:`dark`,import:(()=>J(()=>import(`./horizon-CE9ld1lL.js`),[]))},{id:`horizon-bright`,displayName:`Horizon Bright`,type:`light`,import:(()=>J(()=>import(`./horizon-bright-DSNQnXHK.js`),[]))},{id:`houston`,displayName:`Houston`,type:`dark`,import:(()=>J(()=>import(`./houston-CsvMBhTu.js`),[]))},{id:`kanagawa-dragon`,displayName:`Kanagawa Dragon`,type:`dark`,import:(()=>J(()=>import(`./kanagawa-dragon-Bozd7klA.js`),[]))},{id:`kanagawa-lotus`,displayName:`Kanagawa Lotus`,type:`light`,import:(()=>J(()=>import(`./kanagawa-lotus-BmuOG9ZW.js`),[]))},{id:`kanagawa-wave`,displayName:`Kanagawa Wave`,type:`dark`,import:(()=>J(()=>import(`./kanagawa-wave-BML5mF2J.js`),[]))},{id:`laserwave`,displayName:`LaserWave`,type:`dark`,import:(()=>J(()=>import(`./laserwave-C_8bwKvT.js`),[]))},{id:`light-plus`,displayName:`Light Plus`,type:`light`,import:(()=>J(()=>import(`./light-plus-DVQuIRkW.js`),[]))},{id:`material-theme`,displayName:`Material Theme`,type:`dark`,import:(()=>J(()=>import(`./material-theme-Bm3Qr25_.js`),[]))},{id:`material-theme-darker`,displayName:`Material Theme Darker`,type:`dark`,import:(()=>J(()=>import(`./material-theme-darker-2IIEA8gg.js`),[]))},{id:`material-theme-lighter`,displayName:`Material Theme Lighter`,type:`light`,import:(()=>J(()=>import(`./material-theme-lighter-uhdI0v04.js`),[]))},{id:`material-theme-ocean`,displayName:`Material Theme Ocean`,type:`dark`,import:(()=>J(()=>import(`./material-theme-ocean-CHQ94UKr.js`),[]))},{id:`material-theme-palenight`,displayName:`Material Theme Palenight`,type:`dark`,import:(()=>J(()=>import(`./material-theme-palenight-B5W6OYN7.js`),[]))},{id:`min-dark`,displayName:`Min Dark`,type:`dark`,import:(()=>J(()=>import(`./min-dark-BSWPekZh.js`),[]))},{id:`min-light`,displayName:`Min Light`,type:`light`,import:(()=>J(()=>import(`./min-light-DDpmG2fV.js`),[]))},{id:`monokai`,displayName:`Monokai`,type:`dark`,import:(()=>J(()=>import(`./monokai-BscAjiQZ.js`),[]))},{id:`night-owl`,displayName:`Night Owl`,type:`dark`,import:(()=>J(()=>import(`./night-owl-DhmEMT88.js`),[]))},{id:`night-owl-light`,displayName:`Night Owl Light`,type:`light`,import:(()=>J(()=>import(`./night-owl-light-eJ-hLW7d.js`),[]))},{id:`nord`,displayName:`Nord`,type:`dark`,import:(()=>J(()=>import(`./nord-Cb4Vim4T.js`),[]))},{id:`one-dark-pro`,displayName:`One Dark Pro`,type:`dark`,import:(()=>J(()=>import(`./one-dark-pro-C6YyR8OD.js`),[]))},{id:`one-light`,displayName:`One Light`,type:`light`,import:(()=>J(()=>import(`./one-light-D7Lr4KcI.js`),[]))},{id:`plastic`,displayName:`Plastic`,type:`dark`,import:(()=>J(()=>import(`./plastic-DQwYfKfQ.js`),[]))},{id:`poimandres`,displayName:`Poimandres`,type:`dark`,import:(()=>J(()=>import(`./poimandres-DRFjx7u4.js`),[]))},{id:`red`,displayName:`Red`,type:`dark`,import:(()=>J(()=>import(`./red-CYlAq2b0.js`),[]))},{id:`rose-pine`,displayName:`Rosé Pine`,type:`dark`,import:(()=>J(()=>import(`./rose-pine-aMsaMD1D.js`),[]))},{id:`rose-pine-dawn`,displayName:`Rosé Pine Dawn`,type:`light`,import:(()=>J(()=>import(`./rose-pine-dawn-8PwUyIlP.js`),[]))},{id:`rose-pine-moon`,displayName:`Rosé Pine Moon`,type:`dark`,import:(()=>J(()=>import(`./rose-pine-moon-DO-qXg-I.js`),[]))},{id:`slack-dark`,displayName:`Slack Dark`,type:`dark`,import:(()=>J(()=>import(`./slack-dark-DnToyrRv.js`),[]))},{id:`slack-ochin`,displayName:`Slack Ochin`,type:`light`,import:(()=>J(()=>import(`./slack-ochin-B2OO5cIa.js`),[]))},{id:`snazzy-light`,displayName:`Snazzy Light`,type:`light`,import:(()=>J(()=>import(`./snazzy-light-4G7pJPwS.js`),[]))},{id:`solarized-dark`,displayName:`Solarized Dark`,type:`dark`,import:(()=>J(()=>import(`./solarized-dark-b97czJOk.js`),[]))},{id:`solarized-light`,displayName:`Solarized Light`,type:`light`,import:(()=>J(()=>import(`./solarized-light-DFPxpIYQ.js`),[]))},{id:`synthwave-84`,displayName:`Synthwave '84`,type:`dark`,import:(()=>J(()=>import(`./synthwave-84-nFMaYfgc.js`),[]))},{id:`tokyo-night`,displayName:`Tokyo Night`,type:`dark`,import:(()=>J(()=>import(`./tokyo-night-oM2G3aXe.js`),[]))},{id:`vesper`,displayName:`Vesper`,type:`dark`,import:(()=>J(()=>import(`./vesper-DdrHHSXu.js`),[]))},{id:`vitesse-black`,displayName:`Vitesse Black`,type:`dark`,import:(()=>J(()=>import(`./vitesse-black-fwtXNY1n.js`),[]))},{id:`vitesse-dark`,displayName:`Vitesse Dark`,type:`dark`,import:(()=>J(()=>import(`./vitesse-dark-BZCL-v6S.js`),[]))},{id:`vitesse-light`,displayName:`Vitesse Light`,type:`light`,import:(()=>J(()=>import(`./vitesse-light-VbXTXTou.js`),[]))}],GU=Object.fromEntries(WU.map(e=>[e.id,e.import])),KU=Qe({langs:Kf,themes:GU,engine:()=>(0,qf.createOnigurumaEngine)(J(()=>import(`./wasm-BnjxR4X6.js`),[]))}),{codeToHtml:qU,codeToHast:JU,codeToTokens:YU,codeToTokensBase:XU,codeToTokensWithThemes:ZU,getSingletonHighlighter:QU,getLastGrammarState:$U}=Xe(KU,{guessEmbeddedLanguages:Ze});self.MonacoEnvironment={async getWorker(){return new(await(J(()=>import(`./editor.worker-CGG2Yh4v.js`),[]))).default}};function eW(e,t){let n=Zl.registerCommand(`offsite.block`,(e,n)=>t(n)),r=e===`stage`?`Stage`:`Unstage`,i={id:e===`stage`?`add`:`remove`},a=[wn.appendMenuItem(D.DiffEditorHunkToolbar,{command:{id:`offsite.block`,title:`${r} Block`,icon:i},group:`primary`,order:10}),wn.appendMenuItem(D.DiffEditorSelectionToolbar,{command:{id:`offsite.block`,title:`${r} Selection`,icon:i},group:`primary`,order:10})];return()=>{n.dispose();for(let e of a)e.dispose()}}function tW(e,t,n){let r=t.getValue();for(let i of n.innerChanges.slice().reverse()){let n=i.modifiedRange;r=r.slice(0,t.getOffsetAt({lineNumber:n.startLineNumber,column:n.startColumn}))+e.getValueInRange(i.originalRange)+r.slice(t.getOffsetAt({lineNumber:n.endLineNumber,column:n.endColumn}))}return r}var nW=KU({themes:[],langs:[]}),rW=new Map([[`tsx`,()=>J(()=>import(`./typescript-Dy13l_qr.js`),__vite__mapDeps([13,8,1,2,3,4]))],[`jsx`,()=>J(()=>import(`./javascript-MI6i-TIC.js`),__vite__mapDeps([7,8,1,2,3,4]))],[`json`,()=>J(()=>import(`./javascript-MI6i-TIC.js`),__vite__mapDeps([7,8,1,2,3,4]))],[`jsonc`,()=>J(()=>import(`./javascript-MI6i-TIC.js`),__vite__mapDeps([7,8,1,2,3,4]))],[`shellscript`,()=>J(()=>import(`./shell-CC2rA5mh.js`),[])],[`docker`,()=>J(()=>import(`./dockerfile-DZFCIeNp.js`),[])],[`c`,()=>J(()=>import(`./cpp-C7h46wYY.js`),[])],[`objective-cpp`,()=>J(()=>import(`./cpp-C7h46wYY.js`),[])],[`vue`,()=>J(()=>import(`./html-86U_8x8W.js`),__vite__mapDeps([6,1,2,3,4]))],[`svelte`,()=>J(()=>import(`./html-86U_8x8W.js`),__vite__mapDeps([6,1,2,3,4]))]]);async function iW(e){let t=Ge(e),n=Gf.find(e=>e.id===t||e.aliases?.includes(t)===!0);if(n===void 0)return{id:`plaintext`,name:`Plain Text`};let r=await nW;if(!r.getLoadedLanguages().includes(n.id)){if(await r.loadLanguage(n.import),!Wc.getLanguages().some(e=>e.id===n.id)){Wc.register({id:n.id});let e=rW.get(n.id);e!==void 0&&Wc.setLanguageConfiguration(n.id,(await e()).conf)}await aW()}return{id:n.id,name:n.name}}async function aW(){let e=Se(),t=WU.find(t=>t.id===e.codeTheme);if(t===void 0)throw Error(`unknown code theme ${e.codeTheme}`);let n=(await t.import()).default,r=await nW;await r.loadTheme({...n,colors:{...n.colors,"editor.background":e.background}}),wp(r,Gu),Zl.setTheme(e.codeTheme)}function oW(e){return{fontFamily:e.font.family,fontSize:e.font.size,lineHeight:e.font.lineHeight,fontLigatures:e.font.ligatures?e.font.features===``||e.font.features:!1,cursorStyle:e.cursor.style===`bar`?`line`:e.cursor.style,cursorBlinking:e.cursor.blink?`expand`:`solid`,tabSize:e.tabSize,insertSpaces:!0,detectIndentation:!1,trimAutoWhitespace:!1,wordWrap:e.wordWrap?`on`:`off`,wrappingStrategy:`advanced`,minimap:{enabled:!1},stickyScroll:{enabled:!1},overviewRulerBorder:!1,padding:{top:3,bottom:48},cursorSurroundingLines:2,copyWithSyntaxHighlighting:!1,accessibilitySupport:`off`,guides:{bracketPairs:!0,bracketPairsHorizontal:!1,highlightActiveBracketPair:!0,highlightActiveIndentation:!0},dragAndDrop:!1,glyphMargin:!1,useTabStops:!1,selectionHighlight:!1,emptySelectionClipboard:!1,renderWhitespace:`selection`,smartSelect:{selectLeadingAndTrailingWhitespace:!1},scrollbar:{verticalScrollbarSize:8,horizontalScrollbarSize:8},scrollBeyondLastLine:!1,smoothScrolling:!0,hover:{above:!1},find:{cursorMoveOnType:!1},acceptSuggestionOnCommitCharacter:!1,suggestSelection:`first`,suggest:{localityBonus:!0,insertMode:`replace`,snippetsPreventQuickSuggestions:!1},quickSuggestions:{comments:`on`,strings:`on`,other:`on`},quickSuggestionsDelay:0}}async function sW(e){await document.fonts.load(`${e.font.size}px ${e.font.family}`),Zl.remeasureFonts()}function cW(e){let t=e.model,n=e.editor,i=e.machine,a=e.projectId,o=e.path,s=(0,Y.useRef)(null),c=(0,Y.useCallback)(e=>{let n=t.onDidChangeContent(e);return()=>n.dispose()},[t]),l=(0,Y.useDeferredValue)((0,Y.useSyncExternalStore)(c,()=>t.getValue())),u=(0,Y.useMemo)(()=>({img(e){return(0,X.jsx)(lW,{machine:i,projectId:a,file:o,src:e.src,alt:e.alt,width:e.width,height:e.height})}}),[i,a,o]);return(0,Y.useEffect)(()=>{if(n===null)return;let e=n.onDidScrollChange(e=>{let t=s.current;t!==null&&e.scrollTopChanged&&!t.matches(`:hover`)&&(t.scrollTop=e.scrollTop/(n.getScrollHeight()-n.getLayoutInfo().height)*(t.scrollHeight-t.clientHeight))});return()=>e.dispose()},[n]),(0,X.jsx)(`div`,{ref:s,className:Re(`border-sidebar-border bg-background min-w-0 flex-1 overflow-y-auto p-6`,n!==null&&`border-l`),onScroll:e=>{let t=e.currentTarget;n!==null&&t.matches(`:hover`)&&n.setScrollTop(t.scrollTop/(t.scrollHeight-t.clientHeight)*(n.getScrollHeight()-n.getLayoutInfo().height),Zl.ScrollType.Immediate)},onClickCapture:t=>{let n=(t.target instanceof Element?t.target.closest(`a`):null)?.getAttribute(`href`)??null;n===null||uW(n)||(t.preventDefault(),t.stopPropagation(),n.startsWith(`#`)?fW(t.currentTarget,n.slice(1))?.scrollIntoView():e.onOpen(dW(o,n)))},children:(0,X.jsx)(r,{text:l.replace(/^---\r?\n[\s\S]*?\r?\n---(\r?\n|$)/,``),components:u})})}function lW(e){let n=e.src??``,r=uW(n),[i,a]=(0,Y.useState)(void 0);return(0,Y.useEffect)(()=>{if(r)return;let i=!0;async function o(){try{let r=await t(e.machine,e.projectId,dW(e.file,n));i&&a(r)}catch{i&&a(void 0)}}return o(),()=>{i=!1}},[r,e.machine,e.projectId,e.file,n]),(0,X.jsx)(`img`,{src:r?n:i,alt:e.alt,width:e.width,height:e.height,className:`max-w-full`})}function uW(e){return/^([a-z][a-z0-9+.-]*:|\/\/)/i.test(e)}function dW(e,t){let n=e.split(`/`).map(encodeURIComponent).join(`/`),r=new URL(t,`file:///${n}`).pathname.slice(1);try{return decodeURIComponent(r)}catch{return r}}function fW(e,t){return[...e.querySelectorAll(`h1, h2, h3, h4, h5, h6`)].find(e=>pW(e.textContent)===t.toLowerCase())}function pW(e){return e.trim().toLowerCase().replace(/[^\p{L}\p{N}\s_-]/gu,``).replaceAll(/\s/g,`-`)}function mW(e){return(0,X.jsx)(y,{open:e.open,onOpenChange:t=>{t||e.onCancel()},children:(0,X.jsxs)(oe,{children:[(0,X.jsxs)(h,{children:[(0,X.jsx)(ye,{children:e.paths.length===1?`Do you want to save the changes you made to ${vp(e.paths[0])}?`:`Do you want to save the changes to the following ${e.paths.length} files?`}),(0,X.jsxs)(re,{children:[e.paths.length>1&&`${e.paths.map(vp).join(`, `)}. `,`Your changes will be lost if you don't save them.`]})]}),(0,X.jsxs)(te,{children:[(0,X.jsx)(de,{children:`Cancel`}),(0,X.jsx)(ee,{variant:`outline`,onClick:()=>e.onFinish(!1),children:`Don't Save`}),(0,X.jsx)(ee,{onClick:()=>e.onFinish(!0),children:e.paths.length===1?`Save`:`Save All`})]})]})})}function hW(e){let[t,n]=(0,Y.useState)(null);return(0,Y.useEffect)(()=>{let t=e.editor;if(t===null)return;n(gW(t));let r=[t.onDidChangeCursorSelection(()=>n(gW(t))),t.onDidChangeModel(()=>n(gW(t))),t.onDidChangeModelOptions(()=>n(gW(t)))];return()=>{for(let e of r)e.dispose()}},[e.editor]),(0,X.jsxs)(`div`,{className:`bg-sidebar border-sidebar-border text-muted-foreground flex h-[22px] shrink-0 items-center justify-end gap-4 border-t px-3 text-xs whitespace-nowrap`,children:[e.children,e.language!==null&&t!==null&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(`span`,{children:[`Ln `,t.line,`, Col `,t.column,t.selected>0&&` (${t.selected} selected)`]}),(0,X.jsxs)(`span`,{children:[t.spaces?`Spaces`:`Tab Size`,`: `,t.tabSize]}),(0,X.jsx)(`span`,{children:`UTF-8`}),(0,X.jsx)(`span`,{children:t.eol}),(0,X.jsx)(`span`,{children:e.language})]})]})}function gW(e){let t=e.getModel(),n=e.getSelection();if(t===null||n===null)return null;let r=t.getOptions();return{line:n.positionLineNumber,column:n.positionColumn,selected:t.getValueLengthInRange(n),tabSize:r.tabSize,spaces:r.insertSpaces,eol:t.getEndOfLineSequence()===Zl.EndOfLineSequence.LF?`LF`:`CRLF`}}function _W(e){let t=vW(e.spec),n=t?.kind??null,r=(0,Y.useEffectEvent)(n=>{let r=e.spec,i=e.original,a=e.modified;if(r===void 0||t===null||i===null||a===null)throw Error(`This diff has no blocks to stage`);e.onPerform(()=>Te(e.machine,`git.run`,{projectId:e.projectId,repo:r.repo,action:{kind:`stageContent`,path:t.path,content:t.kind===`stage`?n.originalWithModifiedChanges:tW(i,a,n.mapping)}}))});(0,Y.useEffect)(()=>{if(n!==null)return eW(n,r)},[n])}function vW(e){return e?.left?.kind===`git`&&e.left.ref===``&&e.right.kind===`worktree`?{kind:`stage`,path:e.left.path}:e?.left?.kind===`git`&&e.right.kind===`git`&&e.right.ref===``?{kind:`unstage`,path:e.right.path}:null}function yW(){let[e,t]=(0,Y.useState)(null),[n,r]=(0,Y.useState)(null);return{editor:e,diff:n,codeHost:(0,Y.useCallback)(e=>{if(e===null)return;let n=Zl.create(e,{automaticLayout:!0,model:null});return t(n),()=>n.dispose()},[]),diffHost:(0,Y.useCallback)(e=>{if(e===null)return;let t=Zl.createDiffEditor(e,{automaticLayout:!0,originalEditable:!1,experimental:{showMoves:!0},useInlineViewWhenSpaceIsLimited:!0});return r(t),()=>t.dispose()},[])}}var bW={M:`Modified`,T:`Type Changed`,A:`Added`,D:`Deleted`,R:`Renamed`,C:`Copied`,U:`Untracked`,"!":`Conflict`},xW={M:`text-warning`,T:`text-warning`,A:`text-success`,D:`text-destructive`,R:`text-success`,C:`text-success`,U:`text-success`,"!":`text-destructive`};function SW(e,t){return e===``?t:`${e}/${t}`}function CW(e){return e.slice(0,7)}function wW(e,t,n){let r=SW(e,n.path),i={kind:`git`,ref:``,path:n.path};function a(t,n,i){return{id:`${t}:${r}`,repo:e,path:r,label:`${vp(r)} (${t})`,left:n,right:i}}return t===`merge`?a(`Working Tree`,null,{kind:`worktree`}):t===`staged`&&n.status===`A`?a(`Index`,null,i):t===`staged`&&n.status===`D`?a(`Deleted`,null,{kind:`git`,ref:`HEAD`,path:n.path}):t===`staged`?a(`Index`,{kind:`git`,ref:`HEAD`,path:n.from??n.path},i):n.status===`U`?a(`Untracked`,null,{kind:`worktree`}):n.status===`A`?a(`Intent to Add`,null,{kind:`worktree`}):n.status===`D`?a(`Deleted`,null,i):a(`Working Tree`,i,{kind:`worktree`})}function TW(e,t){return{id:`File:${t}`,repo:e,path:t,label:vp(t),left:null,right:{kind:`worktree`}}}function EW(e,t){return{...TW(e,t),id:`Preview:${t}`,label:`${vp(t)} (Preview)`,preview:!0}}function DW(e,t){let n=SW(e,t.path);return{id:`HEAD:${n}`,repo:e,path:n,label:`${vp(n)} (HEAD)`,left:null,right:{kind:`git`,ref:`HEAD`,path:t.from??t.path}}}function OW(e,t,n){let r=SW(e,n.path),i=t.parents.at(0)??null;return{id:`${t.hash}:${r}`,repo:e,path:r,label:`${vp(r)} (${i===null?`empty`:CW(i)} ↔ ${CW(t.hash)})`,left:i===null||n.status===`A`?{kind:`empty`}:{kind:`git`,ref:i,path:n.from??n.path},right:n.status===`D`?{kind:`empty`}:{kind:`git`,ref:t.hash,path:n.path}}}function kW(e,t){return[...e].sort((e,n)=>t===`name`?vp(e.path).localeCompare(vp(n.path))||e.path.localeCompare(n.path):t===`status`&&e.status.localeCompare(n.status)||e.path.localeCompare(n.path))}function AW(e,t){let n={folders:new Map,files:[]};for(let t of e){let e=n,r=_p(t.path);for(let t of r===``?[]:r.split(`/`)){let n=e.folders.get(t)??{folders:new Map,files:[]};e.folders.set(t,n),e=n}e.files.push(t)}return jW(n,``,t)}function jW(e,t,n){return[...[...e.folders].sort((e,t)=>e[0].localeCompare(t[0])).map(e=>{let r=e[0],i=e[1];for(;i.files.length===0&&i.folders.size===1;){let e=[...i.folders][0];r=`${r}/${e[0]}`,i=e[1]}let a=t===``?r:`${t}/${r}`,o=jW(i,a,n);return{kind:`folder`,path:a,label:r,children:o,resources:o.flatMap(e=>e.kind===`file`?[e.resource]:e.resources)}}),...kW(e.files,n).map(e=>({kind:`file`,resource:e}))]}var MW=new WeakSet;function NW(e){let[t,n]=(0,Y.useState)(()=>({tabs:e.saved.tabs.map(e=>({spec:e.spec,document:{status:`loading`}})),active:e.saved.active})),r=(0,Y.useRef)(t),i=(0,Y.useRef)(!0),a=(0,Y.useRef)(new Set),o=t.tabs,s=t.active,[c,l]=(0,Y.useState)(null),u=o.filter(e=>e.document.status===`text`&&e.document.dirty),d=c?.kind===`tab`?o.filter(e=>e.spec.id===c.id):u;(0,Y.useEffect)(()=>(i.current=!0,()=>{i.current=!1,queueMicrotask(()=>{if(i.current)return;let e=new Set([...a.current,...r.current.tabs.flatMap(e=>PW(e.document))]);for(let t of e)t.dispose()})}),[]);function f(e){r.current={...r.current,...e},n(r.current)}function p(e){f({active:e})}function m(){let e=new Set(o.flatMap(e=>PW(e.document)));for(let t of a.current)e.has(t)||t.dispose();a.current=e}async function h(t,n){if(n.kind===`empty`)return``;if(n.kind===`git`)return Te(e.machine,`git.show`,{projectId:e.projectId,repo:t.repo,ref:n.ref,path:n.path});let r=await Te(e.machine,`files.read`,{projectId:e.projectId,path:t.path});return r.kind===`text`?r.content:null}function g(e){return Promise.all([e.left===null?``:h(e,e.left),h(e,e.right)])}function _(e,t){f({tabs:r.current.tabs.map(n=>n.spec.id===e?{...n,document:t}:n)})}async function v(t){try{if(t.left===null&&t.right.kind===`worktree`){let n=await Te(e.machine,`files.read`,{projectId:e.projectId,path:t.path});return n.kind===`image`?{status:`image`,src:`data:${n.mediaType};base64,${n.data}`}:n.kind===`large`?{status:`large`,size:n.size,limit:n.limit}:n.kind===`binary`?{status:`binary`}:await y(t,``,n.content)}let n=await g(t);return n[0]===null||n[1]===null?{status:`binary`}:await y(t,n[0],n[1])}catch(e){return{status:`error`,message:Le(e)}}}async function y(e,t,n){let i=await iW(e.path),a=e.left===null?null:Zl.createModel(t,i.id),o=Zl.createModel(n,i.id);return o.onDidChangeContent(()=>{if(MW.has(o))return;let e=r.current.tabs,t=e.find(e=>e.document.status===`text`&&e.document.modified===o);if(t===void 0||t.document.status!==`text`)return;let n=o.getAlternativeVersionId()!==t.document.saved;t.document.dirty!==n&&f({tabs:e.map(e=>e===t?{...t,document:{...t.document,dirty:n}}:e)})}),{status:`text`,original:a,modified:o,language:i.name,saved:o.getAlternativeVersionId(),dirty:!1}}async function b(e){let t=r.current.tabs.find(t=>t.spec.id===e);if(t?.document.status!==`text`||t.document.dirty)return;let n=t.document,i=n.modified.getAlternativeVersionId();try{let a=await g(t.spec);if(n.modified.isDisposed()||n.modified.getAlternativeVersionId()!==i)return;if(a[0]===null||a[1]===null){_(e,{status:`binary`});return}n.original!==null&&FW(n.original,a[0]),MW.add(n.modified),FW(n.modified,a[1]),MW.delete(n.modified);let o=n.modified.getAlternativeVersionId();o!==i&&f({tabs:r.current.tabs.map(e=>e.document.status===`text`&&e.document.modified===n.modified?{...e,document:{...e.document,saved:o}}:e)})}catch(t){_(e,{status:`error`,message:Le(t)})}}async function ee(e){f({active:e.id}),r.current.tabs.some(t=>t.spec.id===e.id)||(f({tabs:[...r.current.tabs,{spec:e,document:{status:`loading`}}]}),await te(e))}async function te(e){let t=await v(e),n=r.current.tabs.some(t=>t.spec.id===e.id&&t.document.status===`loading`);if(!i.current||!n)for(let e of PW(t))e.dispose();else _(e.id,t)}async function ne(t){let n=r.current.tabs.find(e=>e.spec.id===t);if(n?.document.status!==`text`||n.spec.right.kind!==`worktree`||n.spec.preview===!0)return!0;let i=n.document.modified,a=i.getAlternativeVersionId();try{await Te(e.machine,`files.write`,{projectId:e.projectId,path:n.spec.path,content:i.getValue()})}catch(e){return Ae(e),!1}return f({tabs:r.current.tabs.map(e=>e.document.status===`text`&&e.document.modified===i?{...e,document:{...e.document,saved:a,dirty:i.getAlternativeVersionId()!==a}}:e)}),e.onSaved(),!0}function re(e){let t=r.current,n=t.tabs.filter(t=>!e(t.spec)),i=t.tabs.findIndex(e=>e.spec.id===t.active);f({tabs:n,active:i!==-1&&e(t.tabs[i].spec)?n.at(Math.min(i,n.length-1))?.spec.id??null:t.active})}function ie(e,t){function n(n){return n===e?t:n.startsWith(`${e}/`)?`${t}${n.slice(e.length)}`:n}let i=r.current,a=i.tabs.map(e=>e.spec.id===TW(e.spec.repo,e.spec.path).id?{...e,spec:TW(e.spec.repo,n(e.spec.path))}:e.spec.id===EW(e.spec.repo,e.spec.path).id?{...e,spec:EW(e.spec.repo,n(e.spec.path))}:e),o=i.tabs.findIndex(e=>e.spec.id===i.active);f({tabs:a,active:o===-1?i.active:a[o].spec.id})}function ae(e){re(t=>t.right.kind===`worktree`&&(t.path===e||t.path.startsWith(`${e}/`)))}function oe(e){u.some(t=>t.spec.id===e)?l({kind:`tab`,id:e}):re(t=>t.id===e)}function se(){u.length>0?l({kind:`dialog`}):e.onClose()}async function ce(t){c!==null&&(l(null),t&&(await Promise.all(d.map(e=>ne(e.spec.id)))).includes(!1)||(c.kind===`tab`&&re(e=>e.id===c.id),c.kind===`dialog`&&e.onClose()))}let le=(0,Y.useEffectEvent)(()=>{for(let t of e.saved.tabs)te(t.spec)});return(0,Y.useEffect)(()=>le(),[]),{tabs:o,active:s,setActive:p,dirty:u,closing:c,setClosing:l,closingTabs:d,open:ee,reload:b,save:ne,close:oe,renamed:ie,deleted:ae,requestClose:se,finish:ce,releaseModels:m}}function PW(e){return e.status===`text`?e.original===null?[e.modified]:[e.original,e.modified]:[]}function FW(e,t){let n=e.getValue(),r=0;for(;r<n.length&&r<t.length&&n[r]===t[r];)r++;let i=0;for(;i<n.length-r&&i<t.length-r&&n[n.length-1-i]===t[t.length-1-i];)i++;(r!==n.length||r!==t.length)&&e.applyEdits([{range:gd.fromPositions(e.getPositionAt(r),e.getPositionAt(n.length-i)),text:t.slice(r,t.length-i)}])}function IW(e){return(0,X.jsxs)(o,{children:[(0,X.jsxs)(m,{className:`hover:bg-accent data-[state=open]:bg-accent mr-auto ml-1 flex h-6 min-w-0 cursor-pointer items-center gap-1 rounded-sm px-1 text-[11px] font-bold tracking-wide uppercase outline-none`,children:[(0,X.jsx)(`span`,{className:`truncate`,children:e.view===`explorer`?`Explorer`:`Source Control`}),(0,X.jsx)(je,{icon:se,className:`size-3.5 shrink-0`})]}),(0,X.jsx)(l,{align:`start`,className:`bg-popover! w-44`,children:(0,X.jsxs)(d,{value:e.view,onValueChange:t=>{(t===`explorer`||t===`scm`)&&e.onView(t)},children:[(0,X.jsx)(be,{value:`explorer`,children:`Explorer`}),(0,X.jsx)(be,{value:`scm`,children:`Source Control`})]})})]})}function LW(e){return(0,X.jsxs)(`div`,{className:`flex shrink-0 items-center gap-0.5 pl-1.5`,children:[(0,X.jsx)(Me,{size:`icon-micro`,variant:`ghost`,title:`Open File`,"aria-label":`Open File`,onClick:e.onOpenFile,children:(0,X.jsx)(je,{icon:Qf,className:`size-4`})}),(0,X.jsx)(Me,{size:`icon-micro`,variant:`ghost`,title:`Previous Change`,"aria-label":`Previous Change`,onClick:e.onPrevious,children:(0,X.jsx)(je,{icon:b,className:`size-4`})}),(0,X.jsx)(Me,{size:`icon-micro`,variant:`ghost`,title:`Next Change`,"aria-label":`Next Change`,onClick:e.onNext,children:(0,X.jsx)(je,{icon:fe,className:`size-4`})}),(0,X.jsxs)(o,{children:[(0,X.jsx)(m,{asChild:!0,children:(0,X.jsx)(Me,{size:`icon-micro`,variant:`ghost`,title:`More Actions...`,"aria-label":`More Actions`,children:(0,X.jsx)(je,{icon:le,className:`size-4`})})}),(0,X.jsxs)(l,{align:`end`,className:`bg-popover! w-80`,children:[(0,X.jsx)(s,{checked:e.settings.inline,onCheckedChange:t=>e.onSettings({inline:t}),children:`Inline View`}),(0,X.jsx)(s,{checked:e.settings.whitespace,onCheckedChange:t=>e.onSettings({whitespace:t}),children:`Show Leading/Trailing Whitespace Differences`}),(0,X.jsx)(s,{checked:e.settings.collapse,onCheckedChange:t=>e.onSettings({collapse:t}),children:`Collapse Unchanged Regions`})]})]})]})}function RW(e){let t=e.repo;return(0,X.jsxs)(`div`,{className:`mr-auto -ml-1.5 flex h-full items-center`,children:[(0,X.jsxs)(`button`,{type:`button`,title:`${t.branch??`HEAD`} (Git) - Checkout Branch/Tag...`,className:`hover:bg-accent hover:text-foreground flex h-full cursor-pointer items-center gap-1 px-1.5 tabular-nums`,onClick:e.onCheckout,children:[(0,X.jsx)(je,{icon:ie,className:`size-3.5`}),t.branch??(t.head===null?`HEAD`:CW(t.head)),t.changes.length>0&&`*`,t.staged.length>0&&`+`,t.merge.length>0&&`!`]}),t.upstream!==null&&(0,X.jsxs)(`button`,{type:`button`,title:`Synchronize Changes`,disabled:e.busy,className:`hover:bg-accent hover:text-foreground flex h-full cursor-pointer items-center gap-1 px-1.5 tabular-nums`,onClick:e.onSync,children:[(0,X.jsx)(je,{icon:rp,className:Re(`size-3.5`,e.busy&&`animate-spin`)}),(t.behind>0||t.ahead>0)&&`${t.behind}↓ ${t.ahead}↑`]}),t.upstream===null&&t.branch!==null&&t.remote&&(0,X.jsx)(`button`,{type:`button`,title:`Publish Branch`,"aria-label":`Publish Branch`,disabled:e.busy,className:`hover:bg-accent hover:text-foreground flex h-full cursor-pointer items-center gap-1 px-1.5 tabular-nums`,onClick:e.onPublish,children:(0,X.jsx)(je,{icon:me,className:`size-3.5`})})]})}var zW={all:null,amend:!1,then:null};function BW(e){let t=e.repo,n=t.merge.length+t.staged.length+t.changes.length>0,r=!n&&t.branch!==null&&t.upstream===null&&t.remote,a=!n&&t.upstream!==null&&(t.ahead>0||t.behind>0);return(0,X.jsxs)(`div`,{className:Re(`grid gap-1.5 pt-1.5 pr-2 pb-1.5`,e.nested?`pl-4`:`pl-2`),children:[(0,X.jsxs)(`div`,{className:`bg-input/40 border-input focus-within:border-primary relative rounded-sm border`,children:[(0,X.jsx)(`textarea`,{rows:7,"aria-label":`Source Control Input`,value:e.message,placeholder:`Message (${Ie===`⌘`?`⌘Enter`:`Ctrl+Enter`} to commit on "${t.branch??(t.head===null?`HEAD`:CW(t.head))}")`,className:`placeholder:text-muted-foreground block w-full resize-none bg-transparent py-1 pr-7 pl-2 text-[13px] leading-[18px] outline-none`,onChange:t=>e.onMessage(t.target.value),onKeyDown:t=>{(t.metaKey||t.ctrlKey)&&t.key===`Enter`&&(t.preventDefault(),e.onCommit({...zW,then:`push`}))}}),(0,X.jsx)(`button`,{type:`button`,title:e.generating?`Cancel`:`Generate Commit Message`,"aria-label":e.generating?`Cancel`:`Generate Commit Message`,className:`text-muted-foreground hover:text-foreground hover:bg-accent absolute top-[3px] right-[3px] grid size-5 cursor-pointer place-items-center rounded-sm`,onClick:e.generating?e.onCancel:e.onGenerate,children:(0,X.jsx)(je,{icon:e.generating?ip:u,className:`size-3.5`})})]}),r&&(0,X.jsxs)(Me,{size:`xs`,className:`w-full rounded-sm`,disabled:e.busy,onClick:()=>e.onRemote(`git.push`),children:[(0,X.jsx)(je,{icon:me}),`Publish Branch`]}),a&&(0,X.jsxs)(Me,{size:`xs`,className:`w-full rounded-sm`,disabled:e.busy,onClick:()=>e.onRemote(`git.sync`),children:[(0,X.jsx)(je,{icon:rp}),`Sync Changes`,t.behind>0&&(0,X.jsxs)(`span`,{className:`inline-flex items-center tabular-nums`,children:[t.behind,(0,X.jsx)(je,{icon:fe,className:`size-3`})]}),t.ahead>0&&(0,X.jsxs)(`span`,{className:`inline-flex items-center tabular-nums`,children:[t.ahead,(0,X.jsx)(je,{icon:b,className:`size-3`})]})]}),!r&&!a&&(0,X.jsxs)(`div`,{className:`flex`,children:[(0,X.jsxs)(Me,{size:`xs`,className:`flex-1 rounded-sm rounded-r-none`,disabled:!n||e.busy,onClick:()=>e.onCommit({...zW,then:`push`}),children:[(0,X.jsx)(je,{icon:ve}),`Commit & Push`]}),(0,X.jsxs)(o,{children:[(0,X.jsx)(m,{asChild:!0,children:(0,X.jsx)(Me,{size:`xs`,className:`rounded-sm rounded-l-none px-1 before:absolute before:inset-y-1 before:-left-px before:w-px before:bg-white/10`,disabled:!n||e.busy,title:`More Actions...`,"aria-label":`More Commit Actions`,children:(0,X.jsx)(je,{icon:se})})}),(0,X.jsxs)(l,{align:`end`,className:`bg-popover! w-48`,children:[(0,X.jsx)(i,{onSelect:()=>e.onCommit(zW),children:`Commit`}),(0,X.jsx)(i,{onSelect:()=>e.onCommit({...zW,amend:!0}),children:`Commit (Amend)`}),(0,X.jsx)(i,{onSelect:()=>e.onCommit({...zW,then:`push`}),children:`Commit & Push`}),(0,X.jsx)(i,{onSelect:()=>e.onCommit({...zW,then:`sync`}),children:`Commit & Sync`})]})]})]})]})}var VW=[{id:`merge`,title:`Merge Changes`},{id:`staged`,title:`Staged Changes`},{id:`changes`,title:`Changes`}];function HW(e){let[t,n]=(0,Y.useState)([]),[r,i]=(0,Y.useState)(null),a=c(),o=e.repo;function s(e){n(t.includes(e)?t.filter(t=>t!==e):[...t,e])}function l(t,n,r){let i=r===`group`?`All Changes`:`Changes`;return(0,X.jsxs)(X.Fragment,{children:[r===`file`&&n[0].status!==`D`&&(0,X.jsx)(WW,{title:`Open File`,icon:Qf,onClick:()=>e.onOpen(TW(o.path,SW(o.path,n[0].path)))}),t===`changes`&&(0,X.jsx)(WW,{title:`Discard ${i}`,icon:op,onClick:()=>e.onDiscard(n)}),t===`staged`&&(0,X.jsx)(WW,{title:`Unstage ${i}`,icon:Jf,onClick:()=>e.onUnstage(n)}),t!==`staged`&&(0,X.jsx)(WW,{title:t===`merge`&&r===`group`?`Stage All Merge Changes`:`Stage ${i}`,icon:Yf,onClick:()=>e.onStage(n)})]})}function u(t,n,r){let a=wW(o.path,t,n),s=SW(o.path,n.path);return(0,X.jsxs)(`div`,{"data-resource":!0,role:`button`,tabIndex:0,title:`${e.root}/${s} • ${bW[n.status]}`,className:Re(`group/row hover:bg-sidebar-row-hover focus-visible:ring-ring relative flex h-[22px] cursor-pointer items-center gap-1.5 pr-2 text-[13px] outline-none select-none focus-visible:ring-1 focus-visible:ring-inset`,a.id===e.active&&`bg-sidebar-row-active`),style:{paddingLeft:20+r*8},onClick:()=>e.onOpen(a),onKeyDown:t=>{t.key===`Enter`&&e.onOpen(a)},onContextMenu:()=>i({group:t,resource:n}),children:[(0,X.jsx)(He,{path:n.path}),(0,X.jsx)(`span`,{className:Re(`min-w-0 shrink-0 truncate`,xW[n.status],n.status===`D`&&`line-through`),children:vp(n.path)}),!e.tree&&(0,X.jsx)(`span`,{className:`text-muted-foreground min-w-0 truncate text-xs`,children:_p(n.path)}),(0,X.jsxs)(`span`,{className:`ml-auto flex shrink-0 items-center gap-0.5`,children:[(0,X.jsx)(`span`,{className:`hidden items-center gap-0.5 group-hover/row:flex group-focus-visible/row:flex`,children:l(t,[n],`file`)}),(0,X.jsx)(`span`,{className:Re(`w-3.5 text-center text-xs`,xW[n.status]),children:n.status})]})]},`${t}:${n.path}`)}function d(e,n,r){return n.map(n=>{if(n.kind===`file`)return u(e,n.resource,r);let i=`${o.path}:${e}:${n.path}`,a=!t.includes(i);return(0,X.jsxs)(`div`,{children:[(0,X.jsxs)(`div`,{role:`button`,tabIndex:0,title:n.path,className:`group/row hover:bg-sidebar-row-hover focus-visible:ring-ring relative flex h-[22px] cursor-pointer items-center gap-1.5 pr-2 text-[13px] outline-none select-none focus-visible:ring-1 focus-visible:ring-inset`,style:{paddingLeft:4+r*8},onClick:()=>s(i),onKeyDown:e=>{e.key===`Enter`&&s(i)},children:[(0,X.jsx)(UW,{open:a}),(0,X.jsx)(`span`,{className:`min-w-0 truncate`,children:n.label}),(0,X.jsx)(`span`,{className:`ml-auto hidden shrink-0 items-center gap-0.5 group-hover/row:flex group-focus-visible/row:flex`,children:l(e,n.resources,`folder`)})]}),a&&d(e,n.children,r+1)]},i)})}return(0,X.jsxs)(he,{children:[(0,X.jsx)(_e,{asChild:!0,children:(0,X.jsx)(`div`,{onContextMenu:e=>{e.target instanceof Element&&e.target.closest(`[data-resource]`)!==null||e.preventDefault()},children:VW.map(n=>{let r=o[n.id];if(r.length===0)return null;let i=`${o.path}:${n.id}`,a=!t.includes(i);return(0,X.jsxs)(`div`,{children:[(0,X.jsxs)(`div`,{role:`button`,tabIndex:0,className:`group/row hover:bg-sidebar-row-hover focus-visible:ring-ring relative flex h-[22px] cursor-pointer items-center gap-1.5 pr-2 text-[13px] outline-none select-none focus-visible:ring-1 focus-visible:ring-inset`,style:{paddingLeft:4+e.depth*8},onClick:()=>s(i),onKeyDown:e=>{e.key===`Enter`&&s(i)},children:[(0,X.jsx)(UW,{open:a}),(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:n.title}),(0,X.jsx)(`span`,{className:`hidden shrink-0 items-center gap-0.5 group-hover/row:flex group-focus-visible/row:flex`,children:l(n.id,r,`group`)}),(0,X.jsx)(`span`,{className:`bg-muted text-foreground grid h-4.5 min-w-4.5 shrink-0 place-items-center rounded-full px-1 text-[11px] tabular-nums`,children:r.length})]}),a&&(e.tree?d(n.id,AW(r,e.sort),e.depth+1):kW(r,e.sort).map(t=>u(n.id,t,e.depth+1)))]},n.id)})})}),r!==null&&(0,X.jsxs)(ce,{className:`min-w-52`,children:[(0,X.jsx)(pe,{onSelect:()=>e.onOpen(wW(o.path,r.group,r.resource)),children:`Open Changes`}),r.resource.status!==`D`&&(0,X.jsx)(pe,{onSelect:()=>e.onOpen(TW(o.path,SW(o.path,r.resource.path))),children:`Open File`}),r.resource.status!==`U`&&r.resource.status!==`A`&&(0,X.jsx)(pe,{onSelect:()=>e.onOpen(DW(o.path,r.resource)),children:`Open File (HEAD)`}),(0,X.jsx)(ue,{}),r.group===`staged`&&(0,X.jsx)(pe,{onSelect:()=>e.onUnstage([r.resource]),children:`Unstage Changes`}),r.group!==`staged`&&(0,X.jsx)(pe,{onSelect:()=>e.onStage([r.resource]),children:`Stage Changes`}),r.group===`changes`&&(0,X.jsx)(pe,{onSelect:()=>e.onDiscard([r.resource]),children:`Discard Changes`}),r.resource.status===`U`&&(0,X.jsx)(pe,{onSelect:()=>e.onIgnore([r.resource]),children:`Add to .gitignore`}),(0,X.jsx)(ue,{}),(0,X.jsx)(pe,{onSelect:()=>void a.copy(`${e.root}/${SW(o.path,r.resource.path)}`),children:`Copy Path`}),(0,X.jsx)(pe,{onSelect:()=>void a.copy(SW(o.path,r.resource.path)),children:`Copy Relative Path`})]})]})}function UW(e){return(0,X.jsx)(je,{icon:We,"aria-hidden":!0,className:Re(`text-muted-foreground size-4 shrink-0 transition-transform`,e.open&&`rotate-90`)})}function WW(e){return(0,X.jsx)(`button`,{type:`button`,title:e.title,"aria-label":e.title,className:`text-foreground hover:bg-accent grid size-5 cursor-pointer place-items-center rounded-sm`,onClick:t=>{t.stopPropagation(),e.onClick()},children:(0,X.jsx)(je,{icon:e.icon,className:`size-4`})})}var GW=50,KW=11,qW=22,JW=[`#59A4F9`,`#FFB000`,`#DC267F`,`#994F00`,`#40B0A6`,`#B66DFF`];function YW(e){let[t,n]=(0,Y.useState)(null),[r,i]=(0,Y.useState)(null),[a,o]=(0,Y.useState)(null),[s,c]=(0,Y.useState)(GW),[l,u]=(0,Y.useState)(0),[d,f]=(0,Y.useState)([]),[p,m]=(0,Y.useState)({}),h=e.repos.find(e=>e.path===t)??e.repos.at(0),g=h?.path??null,_=h?.head??null,v=h?.upstream??null,y=h?.behind??0;(0,Y.useEffect)(()=>{if(g===null||_===null){i([]);return}let t=!0;return Te(e.machine,`git.history`,{projectId:e.projectId,repo:g,limit:s}).then(e=>{t&&(i(e),o(null))},e=>{t&&o(Le(e))}),()=>{t=!1}},[e.machine,e.projectId,g,_,v,y,s,l]);async function b(t){if(d.includes(t.hash))f(d.filter(e=>e!==t.hash));else if(f([...d,t.hash]),h!==void 0&&p[t.hash]===void 0)try{let n=await Te(e.machine,`git.commitFiles`,{projectId:e.projectId,repo:h.path,hash:t.hash,parent:t.parents.at(0)??null});m(e=>({...e,[t.hash]:n}))}catch(e){Ae(e)}}let ee=eG(r??[]);return(0,X.jsxs)(`div`,{className:Re(`border-sidebar-border relative flex shrink-0 flex-col border-t`,e.open&&`min-h-20`),style:e.open?{height:e.height}:void 0,children:[e.open&&(0,X.jsx)(`div`,{role:`separator`,"aria-orientation":`horizontal`,className:`hover:bg-primary absolute inset-x-0 -top-0.5 z-10 h-1 cursor-row-resize touch-none transition-colors delay-100`,onPointerDown:t=>{let n=t.currentTarget.parentElement?.parentElement;if(n==null)return;let r=n.getBoundingClientRect();Fe(t,t=>e.onHeight(Math.min(Math.max(r.bottom-t.clientY,80),r.height-120)))}}),(0,X.jsxs)(`div`,{role:`button`,tabIndex:0,className:`group/row text-sidebar-foreground flex h-[22px] shrink-0 cursor-pointer items-center gap-0.5 pr-2 pl-0.5 outline-none select-none`,onClick:e.onToggle,onKeyDown:t=>{t.key===`Enter`&&e.onToggle()},children:[(0,X.jsx)(je,{icon:We,"aria-hidden":!0,className:Re(`size-4 shrink-0 transition-transform`,e.open&&`rotate-90`)}),(0,X.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-[11px] font-bold tracking-wide uppercase`,children:`Graph`}),e.repos.length>1&&(0,X.jsx)(`select`,{"aria-label":`Repository`,value:h?.path??``,className:`bg-sidebar text-muted-foreground max-w-28 cursor-pointer truncate text-xs outline-none`,onClick:e=>e.stopPropagation(),onChange:e=>{n(e.target.value),f([]),c(GW)},children:e.repos.map(e=>(0,X.jsx)(`option`,{value:e.path,children:e.path===``?`.`:e.path},e.path))}),e.open&&h!==void 0&&(0,X.jsxs)(`span`,{className:`hidden items-center gap-0.5 group-hover/row:flex`,children:[(0,X.jsx)(WW,{title:`Fetch From All Remotes`,icon:Xf,onClick:()=>e.onFetch(h)}),(0,X.jsx)(WW,{title:`Refresh`,icon:Ue,onClick:()=>u(l+1)})]})]}),e.open&&(0,X.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-y-auto pb-2`,children:[a!==null&&(0,X.jsx)(`p`,{className:`text-muted-foreground px-4 py-1 text-xs`,children:a}),a===null&&ee.length===0&&r!==null&&(0,X.jsx)(`p`,{className:`text-muted-foreground px-4 py-1 text-xs`,children:`No commits yet.`}),a===null&&h!==void 0&&ee.map(t=>{let n=t.commit,r=d.includes(n.hash);return(0,X.jsxs)(`div`,{children:[(0,X.jsxs)(`div`,{role:`button`,tabIndex:0,title:`${n.author}, ${new Date(n.date).toLocaleString()}\n\n${n.subject}\n\n${CW(n.hash)}`,className:`hover:bg-sidebar-row-hover flex h-[22px] cursor-pointer items-center gap-1.5 pr-2 text-[13px] outline-none select-none`,onClick:()=>void b(n),onKeyDown:e=>{e.key===`Enter`&&b(n)},children:[(0,X.jsx)(XW,{row:t,child:!1}),(0,X.jsx)(`span`,{className:`min-w-0 truncate`,children:n.subject}),(0,X.jsx)(`span`,{className:`text-muted-foreground min-w-0 shrink-[2] truncate text-xs`,children:n.author}),(0,X.jsx)(`span`,{className:`ml-auto flex shrink-0 items-center gap-1`,children:n.refs.map(e=>ZW(e,h))})]}),r&&(p[n.hash]??[]).map(r=>{let i=OW(h.path,n,r);return(0,X.jsxs)(`div`,{role:`button`,tabIndex:0,title:`${r.path} • ${bW[r.status]}`,className:Re(`hover:bg-sidebar-row-hover flex h-[22px] cursor-pointer items-center gap-1.5 pr-2 text-[13px] outline-none select-none`,i.id===e.active&&`bg-sidebar-row-active`),onClick:()=>e.onOpen(i),onKeyDown:t=>{t.key===`Enter`&&e.onOpen(i)},children:[(0,X.jsx)(XW,{row:t,child:!0}),(0,X.jsx)(He,{path:r.path}),(0,X.jsx)(`span`,{className:Re(`min-w-0 shrink-0 truncate`,xW[r.status],r.status===`D`&&`line-through`),children:vp(r.path)}),(0,X.jsx)(`span`,{className:`text-muted-foreground min-w-0 truncate text-xs`,children:_p(r.path)}),(0,X.jsx)(`span`,{className:Re(`ml-auto w-3.5 shrink-0 text-center text-xs`,xW[r.status]),children:r.status})]},r.path)})]},n.hash)}),r!==null&&r.length===s&&(0,X.jsx)(`button`,{type:`button`,className:`text-muted-foreground hover:text-foreground w-full cursor-pointer px-4 py-1 text-left text-xs`,onClick:()=>c(s+GW),children:`Load More…`})]})]})}function XW(e){let t=e.row,n=qW/2,r=QW(t.lane);return e.child?(0,X.jsx)(`svg`,{"aria-hidden":!0,width:KW*(t.width+1),height:qW,className:`shrink-0`,children:t.after.map(e=>(0,X.jsx)(`line`,{x1:QW(e),x2:QW(e),y1:0,y2:qW,stroke:$W(e),strokeWidth:1},e))}):(0,X.jsxs)(`svg`,{"aria-hidden":!0,width:KW*(t.width+1),height:qW,className:`shrink-0`,children:[t.through.map(e=>(0,X.jsx)(`line`,{x1:QW(e),x2:QW(e),y1:0,y2:qW,stroke:$W(e),strokeWidth:1},`through-${e}`)),t.up.map(e=>(0,X.jsx)(`path`,{d:`M ${QW(e)} 0 Q ${QW(e)} ${n} ${r} ${n}`,fill:`none`,stroke:$W(e),strokeWidth:1},`up-${e}`)),t.down.map(e=>(0,X.jsx)(`path`,{d:`M ${r} ${n} Q ${QW(e)} ${n} ${QW(e)} ${qW}`,fill:`none`,stroke:$W(e),strokeWidth:1},`down-${e}`)),(0,X.jsx)(`circle`,{cx:r,cy:n,r:t.commit.parents.length>1?3.5:4,fill:t.commit.parents.length>1?`var(--sidebar)`:$W(t.lane),stroke:$W(t.lane),strokeWidth:t.commit.parents.length>1?2:0})]})}function ZW(e,t){if(e.endsWith(`/HEAD`))return null;let n=e===`HEAD`||e.startsWith(`HEAD -> `),r=e.startsWith(`tag: `),i=e===t.upstream,a=e.replace(/^HEAD -> /,``).replace(/^tag: /,``);return(0,X.jsxs)(`span`,{title:a,className:Re(`inline-flex h-4 max-w-32 items-center gap-0.5 rounded-full px-1.5 text-[11px] font-medium`,n&&`text-background bg-[#59A4F9]`,i&&`text-background bg-[#B180D7]`,!n&&!i&&`bg-muted text-foreground`),children:[(0,X.jsx)(je,{icon:r?ap:i?v:ie,className:`size-3 shrink-0`}),(0,X.jsx)(`span`,{className:`truncate`,children:a})]},e)}function QW(e){return KW*(e+1)}function $W(e){return JW[e%JW.length]}function eG(e){let t=[];return e.map(e=>{let n=t,r=n.indexOf(e.hash),i=n.indexOf(null),a=r===-1?i===-1?n.length:i:r,o=n.map(t=>t===e.hash?null:t);o[a]=e.parents.at(0)??null;let s=e.parents.length>0?[a]:[];for(let t of e.parents.slice(1)){let e=o.indexOf(t);if(e!==-1){s.push(e);continue}let n=o.indexOf(null),r=n===-1?o.length:n;o[r]=t,s.push(r)}for(;o.length>0&&o.at(-1)===null;)o.pop();return t=o,{commit:e,lane:a,up:n.flatMap((t,n)=>t===e.hash?[n]:[]),through:n.flatMap((t,n)=>t!==null&&t!==e.hash?[n]:[]),down:s,after:o.flatMap((e,t)=>e===null?[]:[t]),width:Math.max(n.length,o.length,a+1)}})}function tG(e){let t=e.repo;function r(t,n){return(0,X.jsx)(i,{onSelect:()=>e.onCommit({...zW,...n}),children:t})}return(0,X.jsxs)(o,{children:[(0,X.jsx)(m,{asChild:!0,children:(0,X.jsx)(Me,{size:`icon-micro`,variant:`ghost`,title:`More Actions...`,"aria-label":`More Actions`,onClick:e=>e.stopPropagation(),children:(0,X.jsx)(je,{icon:le,className:`size-4`})})}),(0,X.jsxs)(l,{align:`end`,className:`bg-popover! w-56`,children:[(0,X.jsxs)(p,{children:[(0,X.jsx)(f,{children:`View & Sort`}),(0,X.jsxs)(a,{className:`w-44`,children:[(0,X.jsxs)(d,{value:e.settings.tree?`tree`:`list`,onValueChange:t=>e.onSettings({tree:t===`tree`}),children:[(0,X.jsx)(be,{value:`list`,children:`View as List`}),(0,X.jsx)(be,{value:`tree`,children:`View as Tree`})]}),(0,X.jsx)(n,{}),(0,X.jsxs)(d,{value:e.settings.sort,onValueChange:t=>{(t===`name`||t===`path`||t===`status`)&&e.onSettings({sort:t})},children:[(0,X.jsx)(be,{value:`name`,children:`Sort by Name`}),(0,X.jsx)(be,{value:`path`,children:`Sort by Path`}),(0,X.jsx)(be,{value:`status`,children:`Sort by Status`})]})]})]}),(0,X.jsx)(n,{}),(0,X.jsx)(i,{onSelect:()=>e.onRun({kind:`pull`,rebase:!1}),children:`Pull`}),(0,X.jsx)(i,{onSelect:()=>e.onRemote(`git.push`),children:`Push`}),(0,X.jsx)(i,{onSelect:e.onCheckout,children:`Checkout to...`}),(0,X.jsx)(i,{onSelect:()=>e.onRun({kind:`fetch`,prune:!1,all:!1}),children:`Fetch`}),(0,X.jsx)(n,{}),(0,X.jsxs)(p,{children:[(0,X.jsx)(f,{children:`Commit`}),(0,X.jsxs)(a,{className:`w-52`,children:[r(`Commit`,{}),r(`Commit Staged`,{all:!1}),r(`Commit All`,{all:!0}),(0,X.jsx)(i,{disabled:t.head===null,onSelect:e.onUndo,children:`Undo Last Commit`}),(0,X.jsx)(n,{}),r(`Commit (Amend)`,{amend:!0}),r(`Commit Staged (Amend)`,{all:!1,amend:!0}),r(`Commit All (Amend)`,{all:!0,amend:!0})]})]}),(0,X.jsxs)(p,{children:[(0,X.jsx)(f,{children:`Changes`}),(0,X.jsxs)(a,{className:`w-52`,children:[(0,X.jsx)(i,{onSelect:()=>e.onStage([...t.merge,...t.changes]),children:`Stage All Changes`}),(0,X.jsx)(i,{onSelect:()=>e.onUnstage(t.staged),children:`Unstage All Changes`}),(0,X.jsx)(i,{disabled:t.changes.length===0,onSelect:()=>e.onDiscard(t.changes),children:`Discard All Changes`})]})]}),(0,X.jsxs)(p,{children:[(0,X.jsx)(f,{children:`Pull, Push`}),(0,X.jsxs)(a,{className:`w-52`,children:[(0,X.jsx)(i,{onSelect:()=>e.onRemote(`git.sync`),children:`Sync`}),(0,X.jsx)(n,{}),(0,X.jsx)(i,{onSelect:()=>e.onRun({kind:`pull`,rebase:!1}),children:`Pull`}),(0,X.jsx)(i,{onSelect:()=>e.onRun({kind:`pull`,rebase:!0}),children:`Pull (Rebase)`}),(0,X.jsx)(n,{}),(0,X.jsx)(i,{onSelect:()=>e.onRemote(`git.push`),children:`Push`}),(0,X.jsx)(n,{}),(0,X.jsx)(i,{onSelect:()=>e.onRun({kind:`fetch`,prune:!1,all:!1}),children:`Fetch`}),(0,X.jsx)(i,{onSelect:()=>e.onRun({kind:`fetch`,prune:!0,all:!1}),children:`Fetch (Prune)`}),(0,X.jsx)(i,{onSelect:()=>e.onRun({kind:`fetch`,prune:!1,all:!0}),children:`Fetch From All Remotes`})]})]}),(0,X.jsxs)(p,{children:[(0,X.jsx)(f,{children:`Branch`}),(0,X.jsxs)(a,{className:`w-52`,children:[(0,X.jsx)(i,{onSelect:e.onCheckout,children:`Create Branch...`}),(0,X.jsx)(i,{disabled:t.branch===null||t.upstream!==null,onSelect:()=>e.onRemote(`git.push`),children:`Publish Branch...`})]})]}),(0,X.jsxs)(p,{children:[(0,X.jsx)(f,{children:`Stash`}),(0,X.jsxs)(a,{className:`w-56`,children:[(0,X.jsx)(i,{onSelect:()=>e.onRun({kind:`stash`,mode:`tracked`}),children:`Stash`}),(0,X.jsx)(i,{onSelect:()=>e.onRun({kind:`stash`,mode:`untracked`}),children:`Stash (Include Untracked)`}),(0,X.jsx)(i,{onSelect:()=>e.onRun({kind:`stash`,mode:`staged`}),children:`Stash Staged`}),(0,X.jsx)(n,{}),(0,X.jsx)(i,{onSelect:()=>e.onRun({kind:`unstash`,pop:!1}),children:`Apply Latest Stash`}),(0,X.jsx)(i,{onSelect:()=>e.onRun({kind:`unstash`,pop:!0}),children:`Pop Latest Stash`})]})]})]})]})}function nG(e){let[t,n]=(0,Y.useState)([]),r=(0,Y.useRef)(new Map),[i,a]=(0,Y.useState)(null),[o,s]=(0,Y.useState)(null),c=e.repos??[],l=c.length===1?c[0]:null,u=e.settings,d=Ee(e=>e.prefs);function f(e){return u.messages[e.path]??``}function p(t,n){return e.onPerform(()=>Te(e.machine,`git.run`,{projectId:e.projectId,repo:t.path,action:n}))}function m(t,n){return e.onPerform(()=>Te(e.machine,n,{projectId:e.projectId,repo:t.path}))}async function g(t,n){let r=f(t).trim();if(r===``&&!n.amend){Ae(`Please provide a commit message.`);return}let i=t.changes.length+t.merge.length>0;if(n.all===null&&!n.amend&&t.staged.length===0){if(!i){Ae(`There are no changes to commit.`);return}if(!u.smartCommit){a({repo:t,options:n});return}}let o=n.all??(t.staged.length===0&&!n.amend&&i);await e.onPerform(async()=>{await Te(e.machine,`git.run`,{projectId:e.projectId,repo:t.path,action:{kind:`commit`,message:r,all:o,amend:n.amend}}),e.onMessage(t.path,``),n.then!==null&&await Te(e.machine,n.then===`push`?`git.push`:`git.sync`,{projectId:e.projectId,repo:t.path})})}async function _(t){let i={};r.current.set(t.path,i),n(e=>[...e,t.path]);try{let n=await Te(e.machine,`git.message`,{projectId:e.projectId,repo:t.path,staged:t.staged.length>0});r.current.get(t.path)===i&&e.onMessage(t.path,n)}catch(e){r.current.get(t.path)===i&&Ae(e)}finally{r.current.get(t.path)===i&&v(t)}}function v(e){r.current.delete(e.path),n(t=>t.filter(t=>t!==e.path))}function b(t){e.onPerform(async()=>{e.onMessage(t.path,await Te(e.machine,`git.undoCommit`,{projectId:e.projectId,repo:t.path}))})}function ne(e,t){p(e,{kind:`unstage`,paths:t.flatMap(e=>e.from===null?[e.path]:[e.path,e.from])})}function ie(e,t){p(e,{kind:`stage`,paths:t.map(e=>e.path)})}function ae(t){return(0,X.jsx)(tG,{repo:t,settings:u,onSettings:e.onSettings,onCommit:e=>void g(t,e),onUndo:()=>b(t),onRun:e=>void p(t,e),onRemote:e=>void m(t,e),onStage:e=>ie(t,e),onUnstage:e=>ne(t,e),onDiscard:e=>s({repo:t,resources:e}),onCheckout:()=>e.onCheckout(t)})}let se=o?.resources??[],ce=se.filter(e=>e.status===`U`);return(0,X.jsxs)(`div`,{className:`bg-sidebar flex h-full min-h-0 flex-col`,children:[(0,X.jsxs)(`div`,{className:`text-sidebar-foreground border-sidebar-border relative flex h-9 shrink-0 items-center gap-0.5 border-b px-1.5`,children:[e.header,(0,X.jsx)(Me,{size:`icon-micro`,variant:`ghost`,title:u.tree?`View as List`:`View as Tree`,"aria-label":u.tree?`View as List`:`View as Tree`,onClick:()=>e.onSettings({tree:!u.tree}),children:(0,X.jsx)(je,{icon:u.tree?np:tp,className:`size-4`})}),l!==null&&(0,X.jsx)(Me,{size:`icon-micro`,variant:`ghost`,title:`Commit`,"aria-label":`Commit`,disabled:e.busy,onClick:()=>void g(l,zW),children:(0,X.jsx)(je,{icon:ve,className:`size-4`})}),(0,X.jsx)(Me,{size:`icon-micro`,variant:`ghost`,title:`Refresh`,"aria-label":`Refresh`,onClick:e.onRefresh,children:(0,X.jsx)(je,{icon:Ue,className:`size-4`})}),l!==null&&ae(l),(e.busy||t.length>0)&&(0,X.jsx)(`span`,{className:`absolute inset-x-0 -bottom-px h-0.5 overflow-hidden`,children:(0,X.jsx)(`span`,{className:`bg-primary block h-full w-[2%] animate-[progress_4s_linear_infinite]`})})]}),(0,X.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-y-auto pb-2`,children:[e.error!==null&&(0,X.jsx)(`p`,{className:`text-muted-foreground p-4 text-xs`,children:e.error}),e.error===null&&e.repos===null&&(0,X.jsx)(`p`,{className:`text-muted-foreground p-4 text-xs`,children:`Loading…`}),e.error===null&&e.repos?.length===0&&(0,X.jsx)(`p`,{className:`text-muted-foreground p-4 text-xs`,children:`The folder currently open doesn't have a git repository.`}),c.map(n=>(0,X.jsxs)(`div`,{children:[l===null&&(0,X.jsxs)(`div`,{className:`group/row text-sidebar-foreground flex h-[22px] items-center gap-1.5 pr-1 pl-2 text-[13px]`,children:[(0,X.jsx)(`span`,{className:`truncate font-semibold`,children:n.path===``?e.name:vp(n.path)}),(0,X.jsx)(`span`,{className:`text-muted-foreground truncate text-xs`,children:n.branch??(n.head===null?``:CW(n.head))}),(0,X.jsx)(`span`,{className:`ml-auto hidden shrink-0 items-center gap-0.5 group-hover/row:flex`,children:(0,X.jsx)(WW,{title:`Commit`,icon:ve,onClick:()=>void g(n,zW)})}),ae(n)]}),(0,X.jsx)(BW,{repo:n,message:f(n),generating:t.includes(n.path),busy:e.busy,nested:l===null,onMessage:t=>e.onMessage(n.path,t),onGenerate:()=>void _(n),onCancel:()=>v(n),onCommit:e=>void g(n,e),onRemote:e=>void m(n,e)}),(0,X.jsx)(HW,{repo:n,root:e.root,tree:u.tree,sort:u.sort,depth:+(l===null),active:e.active,onOpen:e.onOpen,onStage:e=>ie(n,e),onUnstage:e=>ne(n,e),onDiscard:e=>s({repo:n,resources:e}),onIgnore:e=>void p(n,{kind:`ignore`,paths:e.map(e=>e.path)})})]},n.path))]}),c.length>0&&(0,X.jsx)(YW,{machine:e.machine,projectId:e.projectId,repos:c,open:d.editor.graph,height:u.graphHeight,active:e.active,onToggle:()=>xe({...d,editor:{...d.editor,graph:!d.editor.graph}}),onHeight:t=>e.onSettings({graphHeight:t}),onOpen:e.onOpen,onFetch:e=>void p(e,{kind:`fetch`,prune:!1,all:!0})}),(0,X.jsx)(y,{open:i!==null,onOpenChange:e=>{e||a(null)},children:(0,X.jsxs)(oe,{children:[(0,X.jsxs)(h,{children:[(0,X.jsx)(ye,{children:`There are no staged changes to commit.`}),(0,X.jsx)(re,{children:`Would you like to stage all your changes and commit them directly?`})]}),(0,X.jsxs)(te,{children:[(0,X.jsx)(de,{children:`Cancel`}),(0,X.jsx)(ee,{variant:`outline`,onClick:()=>{i!==null&&(e.onSettings({smartCommit:!0}),g(i.repo,{...i.options,all:!0}))},children:`Always`}),(0,X.jsx)(ee,{onClick:()=>{i!==null&&g(i.repo,{...i.options,all:!0})},children:`Yes`})]})]})}),(0,X.jsx)(y,{open:o!==null,onOpenChange:e=>{e||s(null)},children:(0,X.jsxs)(oe,{children:[(0,X.jsxs)(h,{children:[(0,X.jsx)(ye,{children:se.length>1?`Are you sure you want to discard ALL changes in ${se.length} files?`:ce.length===1?`Are you sure you want to DELETE the following untracked file: '${vp(se[0].path)}'?`:`Are you sure you want to discard changes in '${vp(se.at(0)?.path??``)}'?`}),(0,X.jsxs)(re,{children:[se.length>1&&`This is IRREVERSIBLE! Your current working set will be FOREVER LOST if you proceed.`,se.length===1&&ce.length===1&&`This is IRREVERSIBLE! This file will be FOREVER LOST if you proceed.`]})]}),(0,X.jsxs)(te,{children:[(0,X.jsx)(de,{children:`Cancel`}),(0,X.jsx)(ee,{variant:`destructive`,onClick:()=>{o!==null&&p(o.repo,{kind:`discard`,tracked:se.filter(e=>e.status!==`U`).map(e=>e.path),untracked:ce.map(e=>e.path)})},children:se.length>1?`Discard All ${se.length} Files`:ce.length===1?`Delete File`:`Discard File`})]})]})})]})}var rG=3e3;function iG(e){let[t,n]=(0,Y.useState)(null),[r,i]=(0,Y.useState)(null),a=(0,Y.useEffectEvent)(e.onLoaded);return(0,Y.useEffect)(()=>{let t=!0,r=!1;async function o(){if(!r){r=!0;try{let r=await Te(e.machine,`git.changes`,{projectId:e.projectId});if(!t)return;i(null),n(e=>we(e,r)?e:r),a()}catch(e){t&&i(Le(e))}finally{r=!1}}}function s(){document.hidden||o()}o();let c=window.setInterval(s,rG);return window.addEventListener(`focus`,s),()=>{t=!1,window.clearInterval(c),window.removeEventListener(`focus`,s)}},[e.machine,e.projectId,e.version]),{repos:t,error:r}}var aG=(0,Y.lazy)(async()=>({default:(await J(async()=>{let{ZoomableImage:e}=await import(`./zoomable-image-DkYN4OSU.js`);return{ZoomableImage:e}},__vite__mapDeps([16,17,2,18,19,20,21,22]))).ZoomableImage}));function oG(e){let t=Ee(t=>ke(t,e.machine,e.projectId)),n=Ce(),r=Ee(e=>e.prefs.editor),[i]=(0,Y.useState)(()=>fp(e.machine,e.projectId)),[a]=(0,Y.useState)(()=>new Map(i.tabs.map(e=>[e.spec.id,e.view]))),[o,s]=(0,Y.useState)(()=>({...i.settings,width:Math.min(i.settings.width,window.innerWidth*.6)})),[c,l]=(0,Y.useState)(i.expanded),[u,d]=(0,Y.useState)(0),[f,p]=(0,Y.useState)(0),[m,h]=(0,Y.useState)(null),g=yW(),v=g.editor,y=g.diff,b=(0,Y.useRef)(null),ee=(0,Y.useCallback)(()=>d(e=>e+1),[]),te=NW({machine:e.machine,projectId:e.projectId,saved:i,onSaved:ee,onClose:()=>{ye(),e.onClose()}}),ne=te.active;function re(){ne!==null&&te.reload(ne)}let ie=iG({machine:e.machine,projectId:e.projectId,version:u,onLoaded:re}),ae=ie.repos,oe=te.tabs.find(e=>e.spec.id===ne),se=oe?.document.status===`text`&&oe.spec.preview!==!0?oe.document:null,ce=oe?.document.status===`text`&&oe.spec.preview===!0?oe.document.modified:null,le=se?.original??null,ue=se?.modified??null,de=oe?.spec.right.kind===`worktree`,fe=ae?.find(e=>e.path===oe?.spec.repo)??ae?.at(0)??null,pe=le===null&&ue?.getLanguageId()===`markdown`?ue:null;(0,Y.useEffect)(()=>{aW().catch(Ae)},[n]),(0,Y.useEffect)(()=>{v?.updateOptions(oW(r)),y?.updateOptions(oW(r)),sW(r).catch(Ae)},[v,y,r]),(0,Y.useEffect)(()=>{y?.updateOptions({renderSideBySide:!o.inline,ignoreTrimWhitespace:!o.whitespace,hideUnchangedRegions:{enabled:o.collapse}})},[y,o.inline,o.whitespace,o.collapse]),(0,Y.useEffect)(()=>{if(v===null||y===null||(b.current!==null&&a.set(b.current.id,b.current.editor.saveViewState()),b.current=null,v.setModel(le===null?ue:null),y.setModel(le===null||ue===null?null:{original:le,modified:ue}),ue===null||ne===null))return;let e=le===null?v:y.getModifiedEditor();e.updateOptions({readOnly:!de}),y.updateOptions({readOnly:!de}),e.restoreViewState(a.get(ne)??null),e.focus(),b.current={id:ne,editor:e}},[v,y,le,ue,ne,de,a]),(0,Y.useEffect)(()=>te.releaseModels());let me=(0,Y.useEffectEvent)(re);(0,Y.useEffect)(()=>me(),[ne]),_W({machine:e.machine,projectId:e.projectId,spec:oe?.spec,original:le,modified:ue,onPerform:_e});function he(e){window.innerWidth<640&&ve({sidebar:!1}),te.open(e)}async function _e(e){p(e=>e+1);try{await e()}catch(e){Ae(e)}finally{p(e=>e-1),ee()}}function ve(e){s(t=>({...t,...e}))}function ye(){b.current!==null&&a.set(b.current.id,b.current.editor.saveViewState()),pp(e.machine,e.projectId,{tabs:te.tabs.map(e=>({spec:e.spec,view:a.get(e.spec.id)??null})),active:ne,expanded:c,settings:o})}(0,Y.useEffect)(ye);let be=(0,X.jsx)(Me,{size:`icon-micro`,variant:`ghost`,title:`Toggle Primary Side Bar`,"aria-label":`Toggle Primary Side Bar`,"aria-pressed":o.sidebar,onClick:()=>ve({sidebar:!o.sidebar}),children:(0,X.jsx)(je,{icon:ge,className:`size-4`})}),xe=(0,X.jsxs)(X.Fragment,{children:[be,(0,X.jsx)(IW,{view:o.view,onView:e=>ve({view:e})})]});return(0,X.jsx)(Ve,{open:!0,onOpenChange:()=>te.requestClose(),children:(0,X.jsxs)(ze,{"aria-describedby":void 0,showCloseButton:!1,className:`top-0 left-0 flex h-dvh w-dvw max-w-none translate-x-0 translate-y-0 flex-col gap-0 overflow-hidden rounded-none border-0 p-0 sm:max-w-none`,onEscapeKeyDown:e=>e.preventDefault(),onKeyDown:e=>{(e.metaKey||e.ctrlKey)&&e.key===`s`&&(e.preventDefault(),ne!==null&&te.save(ne)),(e.metaKey||e.ctrlKey)&&e.key===`w`&&(e.preventDefault(),ne!==null&&te.close(ne)),(e.metaKey||e.ctrlKey)&&e.shiftKey&&e.key.toLowerCase()===`v`&&pe!==null&&(e.preventDefault(),ve({preview:!o.preview}))},children:[(0,X.jsxs)(`div`,{className:`flex min-h-0 flex-1`,children:[(0,X.jsxs)(`div`,{className:Re(`border-sidebar-border relative shrink-0 border-r`,!o.sidebar&&`hidden`),style:{width:o.width},children:[o.view===`explorer`&&(0,X.jsx)(hp,{machine:e.machine,projectId:e.projectId,root:t?.path??``,header:xe,expanded:c,onExpanded:l,active:oe?.spec.path??null,onOpen:e=>he(TW(``,e)),onPreview:e=>he(EW(``,e)),onRenamed:te.renamed,onDeleted:te.deleted}),o.view===`scm`&&(0,X.jsx)(nG,{machine:e.machine,projectId:e.projectId,name:t?.name??``,root:t?.path??``,header:xe,repos:ae,error:ie.error,busy:f>0,settings:o,onSettings:ve,onMessage:(e,t)=>s(n=>({...n,messages:{...n.messages,[e]:t}})),active:ne,onOpen:he,onRefresh:ee,onPerform:_e,onCheckout:h}),(0,X.jsx)(`div`,{role:`separator`,"aria-orientation":`vertical`,className:`hover:bg-primary absolute inset-y-0 -right-0.5 z-10 w-1 cursor-col-resize touch-none transition-colors delay-100`,onPointerDown:e=>Fe(e,e=>ve({width:Math.min(Math.max(e.clientX,200),window.innerWidth-240)}))})]}),(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,X.jsxs)(`div`,{className:`bg-sidebar flex h-9 shrink-0 items-center shadow-[inset_0_-1px_0_var(--sidebar-border)]`,children:[!o.sidebar&&(0,X.jsx)(`div`,{className:`shrink-0 px-1.5`,children:be}),(0,X.jsx)(Be,{className:`sr-only`,children:`Editor`}),(0,X.jsx)(yp,{tabs:te.tabs.map(e=>({id:e.spec.id,path:e.spec.path,label:e.spec.label})),active:ne,dirty:te.dirty.map(e=>e.spec.id),onSelect:te.setActive,onClose:te.close}),oe!==void 0&&le!==null&&(0,X.jsx)(LW,{settings:o,onSettings:ve,onOpenFile:()=>he(TW(oe.spec.repo,oe.spec.path)),onPrevious:()=>y?.goToDiff(`previous`),onNext:()=>y?.goToDiff(`next`)}),pe!==null&&(0,X.jsx)(Me,{size:`icon-micro`,variant:`ghost`,className:`ml-1.5 shrink-0`,title:`Toggle Preview`,"aria-label":`Toggle Preview`,"aria-pressed":o.preview,onClick:()=>ve({preview:!o.preview}),children:(0,X.jsx)(je,{icon:sp,className:`size-4`})}),(0,X.jsx)(Me,{size:`icon-micro`,variant:`ghost`,className:`mx-1.5 shrink-0`,title:`Close`,"aria-label":`Close`,onClick:te.requestClose,children:(0,X.jsx)(je,{icon:Oe,className:`size-4`})})]}),(0,X.jsxs)(`div`,{className:`flex min-h-0 flex-1`,children:[(0,X.jsxs)(`div`,{className:Re(`relative min-w-0 flex-1`,pe!==null&&o.preview&&`max-sm:hidden`,ce!==null&&`hidden`),children:[(0,X.jsx)(`div`,{ref:g.codeHost,className:Re(`absolute inset-0`,(ue===null||le!==null)&&`hidden`)}),(0,X.jsx)(`div`,{ref:g.diffHost,className:Re(`absolute inset-0`,(ue===null||le===null)&&`hidden`)}),oe?.document.status===`image`&&(0,X.jsx)(Y.Suspense,{children:(0,X.jsx)(aG,{src:oe.document.src,alt:oe.spec.path})}),(0,X.jsx)(cp,{document:oe?.document,view:o.view})]}),pe!==null&&o.preview&&v!==null&&oe!==void 0&&(0,X.jsx)(cW,{machine:e.machine,projectId:e.projectId,path:oe.spec.path,model:pe,editor:v,onOpen:e=>he(TW(``,e))}),ce!==null&&oe!==void 0&&(0,X.jsx)(cW,{machine:e.machine,projectId:e.projectId,path:oe.spec.path,model:ce,editor:null,onOpen:e=>he(TW(``,e))},oe.spec.id)]})]})]}),(0,X.jsx)(hW,{editor:ue===null?null:le===null?v:y?.getModifiedEditor()??null,language:se?.language??null,children:fe!==null&&(0,X.jsx)(RW,{repo:fe,busy:f>0,onCheckout:()=>h(fe),onSync:()=>void _e(()=>Te(e.machine,`git.sync`,{projectId:e.projectId,repo:fe.path})),onPublish:()=>void _e(()=>Te(e.machine,`git.push`,{projectId:e.projectId,repo:fe.path}))})}),(0,X.jsx)(dp,{}),(0,X.jsx)(mW,{open:te.closing!==null,paths:te.closingTabs.map(e=>e.spec.path),onCancel:()=>te.setClosing(null),onFinish:e=>void te.finish(e)}),m!==null&&(0,X.jsx)(_,{machine:e.machine,projectId:e.projectId,repo:{...m,changed:m.merge.length+m.staged.length+m.changes.length},onRefresh:ee,onClose:()=>h(null)})]})})}export{oG as EditorDialog};
|