@opensumi/cli-engine 3.5.1-next-1731391210.0 → 3.5.1-next-1731490907.0

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.
@@ -28540,7 +28540,7 @@ body.vscode-high-contrast #scroll-to-top:hover {
28540
28540
  `),this.eventBus.fire(new u.ContentChangeEvent(new u.ContentChangeEventPayload(this.name,u.ContentChangeType.appendLine,f,this.outputLines))),this.doAppend(c(f)),this.shouldLogToBrowser&&console.log(`%c[${this.name}]%c ${d}}`,"background:rgb(50, 150, 250); color: #fff","background: none; color: inherit")}replace(d){this.outputLines=[],this.modelReady.promise.then(()=>this.monacoModel.setValue("")),this.append(d)}clear(){this.outputLines=[],this.modelReady.promise.then(()=>this.monacoModel.setValue((0,b.localize)("output.channel.none","\u8FD8\u6CA1\u6709\u4EFB\u4F55\u8F93\u51FA"))),this.eventBus.fire(new u.ContentChangeEvent(new u.ContentChangeEventPayload(this.name,u.ContentChangeType.appendLine,"",this.outputLines)))}setVisibility(d){if(this.visible=d,d){const f=this.layoutService.getTabbarHandler(p.OUTPUT_CONTAINER_ID);if(!f)return;f.isVisible||f.activate()}}async setLanguageId(d){await this.modelReady.promise,this.outputModel.instance.languageId=d}get isVisible(){return this.visible}};n.__decorate([(0,a.Autowired)(_.IMainLayoutService),n.__metadata("design:type",Object)],l.prototype,"layoutService",void 0),n.__decorate([(0,a.Autowired)(o.PreferenceService),n.__metadata("design:type",Object)],l.prototype,"preferenceService",void 0),n.__decorate([(0,a.Autowired)(h.OutputPreferences),n.__metadata("design:type",Object)],l.prototype,"outputPreferences",void 0),n.__decorate([(0,a.Autowired)(g.IEditorDocumentModelService),n.__metadata("design:type",Object)],l.prototype,"documentService",void 0),n.__decorate([(0,a.Autowired)(b.IEventBus),n.__metadata("design:type",Object)],l.prototype,"eventBus",void 0),l=n.__decorate([(0,a.Injectable)({multiple:!0}),n.__param(0,(0,a.Optional)()),n.__metadata("design:paramtypes",[String])],l),e.OutputChannel=l},83145:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.OutputService=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(43718),b=t(57517),g=t(28423),_=t(56285);let E=class extends p.WithEventBus{get onDidSelectedChannelChange(){return this.onDidSelectedChannelChangeEmitter.event}constructor(){super(),this.onDidSelectedChannelChangeEmitter=new p.Emitter,this.autoReveal=!0,this.enableSmartScroll=!0,this.channels=(0,g.observableValue)(this,new Map),this.getChannels=(0,g.derived)(this,h=>{const c=this.channels.read(h);return Array.from(c.values())}),this.enableSmartScroll=!!this.preferenceService.get("output.enableSmartScroll"),this.addDispose(this.preferenceService.onPreferenceChanged(h=>{h.preferenceName==="output.enableSmartScroll"&&h.newValue!==this.enableSmartScroll&&(this.enableSmartScroll=h.newValue)}))}updateSelectedChannel(h){this.monacoDispose&&this.monacoDispose.dispose(),this.selectedChannel=h,this.onDidSelectedChannelChangeEmitter.fire(h),this.selectedChannel.modelReady.promise.then(()=>{var c,r;const l=this.selectedChannel.outputModel.instance.getMonacoModel();(c=this.outputEditor)===null||c===void 0||c.open(this.selectedChannel.outputModel),this.enableSmartScroll&&((r=this.outputEditor)===null||r===void 0||r.monacoEditor.revealLine(l.getLineCount()),this.autoReveal=!0),this.monacoDispose=l.onDidChangeContent(()=>{var s;this.autoReveal&&this.enableSmartScroll&&((s=this.outputEditor)===null||s===void 0||s.monacoEditor.revealLine(l.getLineCount(),0))})})}set viewHeight(h){this._viewHeight=h}get viewHeight(){return this._viewHeight}getChannel(h){const c=this.channels.get(),r=c.get(h);if(r)return r;const l=this.config.injector.get(_.OutputChannel,[h]);return c.set(h,l),c.size===1&&this.updateSelectedChannel(l),(0,g.transaction)(s=>{this.channels.set(new Map(c),s)}),l}deleteChannel(h){(0,g.transaction)(c=>{const r=this.channels.get();r.delete(h),this.channels.set(new Map(r),c)})}async initOutputMonacoInstance(h){this.outputEditor&&this.outputEditor.dispose(),this.outputEditor=this.editorCollectionService.createCodeEditor(h,Object.assign(Object.assign({},(0,b.getSimpleEditorOptions)()),{lineDecorationsWidth:20,automaticLayout:!0,readOnly:!0,domReadOnly:!0,extraEditorClassName:"kt-output-monaco",scrollbar:{useShadows:!1}})),this.selectedChannel&&this.updateSelectedChannel(this.selectedChannel),this.addDispose(this.outputEditor.monacoEditor.onMouseUp(c=>{var r,l;if(this.enableSmartScroll){const{range:s}=c.target,d=(l=(r=this.outputEditor)===null||r===void 0?void 0:r.currentDocumentModel)===null||l===void 0?void 0:l.getMonacoModel().getLineCount();s?.startLineNumber<d&&(this.autoReveal=!1),s?.startLineNumber>=d&&(this.autoReveal=!0)}}))}};n.__decorate([(0,a.Autowired)(o.AppConfig),n.__metadata("design:type",Object)],E.prototype,"config",void 0),n.__decorate([(0,a.Autowired)(b.EditorCollectionService),n.__metadata("design:type",b.EditorCollectionService)],E.prototype,"editorCollectionService",void 0),n.__decorate([(0,a.Autowired)(b.IEditorDocumentModelService),n.__metadata("design:type",Object)],E.prototype,"documentService",void 0),n.__decorate([(0,a.Autowired)(o.PreferenceService),n.__metadata("design:type",Object)],E.prototype,"preferenceService",void 0),E=n.__decorate([(0,a.Injectable)(),n.__metadata("design:paramtypes",[])],E),e.OutputService=E},12481:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ChannelSelector=e.Output=void 0;const n=t(85608),a=n.__importStar(t(14041)),o=t(97267),p=t(41869),b=t(30144),g=t(77331),_=t(72260),E=n.__importDefault(t(33395)),u=t(83145),h=({viewState:r})=>{const l=(0,p.useInjectable)(u.OutputService),s=(0,a.useRef)(null),d=(0,p.useInjectable)(_.IMainLayoutService);return(0,a.useEffect)(()=>{l.viewHeight=String(r.height)},[r.height]),(0,a.useEffect)(()=>{if(s.current){const f=d.getTabbarHandler(b.OUTPUT_CONTAINER_ID);if(f?.isActivated())l.initOutputMonacoInstance(s.current);else{const m=f?.onActivate(()=>{l.initOutputMonacoInstance(s.current),m?.dispose()})}}},[]),a.default.createElement(a.default.Fragment,null,a.default.createElement("div",{className:E.default.output,ref:s}))};e.Output=h;const c=()=>{const r="<no channels>",l=(0,p.useInjectable)(p.AppConfig),s=[],[d,f]=a.default.useState(""),m=(0,p.useInjectable)(u.OutputService);(0,p.useAutorun)(m.getChannels).forEach((S,A)=>{s.push(l.isElectronRenderer?a.default.createElement("option",{value:S.name,key:`${A} - ${S.name}`},S.name):a.default.createElement(o.Option,{value:S.name,key:`${A} - ${S.name}`},S.name))}),(0,a.useEffect)(()=>{const S=m.onDidSelectedChannelChange(A=>{f(A.name)});return()=>{S.dispose()}},[]),s.length===0&&s.push(l.isElectronRenderer?a.default.createElement("option",{key:r,value:r},r):a.default.createElement(o.Option,{key:r,value:r},r));async function y(S){let A;typeof S=="object"?A=S.target.value:A=S,A!==r&&m.updateSelectedChannel(m.getChannel(A))}return l.isElectronRenderer?a.default.createElement(g.Select,{value:d||r,onChange:y},s):a.default.createElement(o.Select,{value:d||r,className:E.default.select,size:"small",maxHeight:m.viewHeight,onChange:y},s)};e.ChannelSelector=c},69178:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ContentChangeEvent=e.ContentChangeEventPayload=e.ContentChangeType=void 0;const n=t(43718);var a;(function(b){b[b.appendLine=0]="appendLine",b[b.append=1]="append",b[b.clear=2]="clear"})(a=e.ContentChangeType||(e.ContentChangeType={}));class o{constructor(g,_,E,u){this.channelName=g,this.changeType=_,this.value=E,this.lines=u}}e.ContentChangeEventPayload=o;class p extends n.BasicEvent{}e.ContentChangeEvent=p},31388:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.BrowserCtxMenuService=void 0;const n=t(85608),a=t(76003),o=t(43738);let p=class{constructor(){this.visibleObservable=(0,o.observableValue)(this,!1),this.onHide=void 0,this.point=void 0,this.context=void 0,this.menuNodes=[]}get visible(){return this.visibleObservable.get()}show(g){const{anchor:_,onHide:E,args:u,menuNodes:h}=g;if(!Array.isArray(h)||!h.length)return;this.context=u,this.menuNodes.splice(0,this.menuNodes.length,...h);const{x:c,y:r}=_ instanceof window.MouseEvent?{x:_.clientX,y:_.clientY}:_;this.onHide=E,this.point={pageX:c,pageY:r},(0,o.transaction)(l=>{this.visibleObservable.set(!0,l)})}hide(g){typeof this.onHide=="function"&&this.onHide(g),this.reset()}reset(){(0,o.transaction)(g=>{this.visibleObservable.set(!1,g)})}};p=n.__decorate([(0,a.Injectable)()],p),e.BrowserCtxMenuService=p},5454:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.CtxMenu=void 0;const n=t(85608),a=n.__importDefault(t(14041)),o=n.__importDefault(t(26737)),p=t(97267),b=t(41869),g=t(25918),_=n.__importDefault(t(17647)),E=t(97222),u=t(42912);t(34728);const h=()=>{const c=(0,b.useInjectable)(E.IBrowserCtxMenu),r=(0,b.useAutorun)(c.visibleObservable),l=(0,b.useInjectable)(u.IIconService),s=a.default.useCallback(()=>{c.hide(!1)},[]),d=a.default.useCallback(()=>{r&&c.hide(!0)},[r]);return a.default.createElement(o.default,{popupPlacement:"bottomLeft",popupVisible:r,action:["contextMenu"],popupAlign:{overflow:{adjustX:1,adjustY:1},offset:[window.scrollX,window.scrollY]},point:c.point||{},popupClassName:"point-popup",builtinPlacements:_.default,popup:a.default.createElement(p.ClickOutside,{mouseEvents:["click","contextmenu"],onOutsideClick:d},a.default.createElement(g.MenuActionList,{data:c.menuNodes,afterClick:s,context:c.context,iconService:l,renderSubMenuTitle:c.renderSubMenuTitle,renderMenuItem:c.renderMenuItem})),alignPoint:!0})};e.CtxMenu=h,e.CtxMenu.displayName="CtxMenu"},54490:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.DialogContextKey=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(20162);let b=class{constructor(){this._contextKeyService=this.globalContextKeyService,this.dialogViewVisibleContext=p.DialogViewVisibleContext.bind(this._contextKeyService)}};n.__decorate([(0,a.Autowired)(o.IContextKeyService),n.__metadata("design:type",Object)],b.prototype,"globalContextKeyService",void 0),b=n.__decorate([(0,a.Injectable)(),n.__metadata("design:paramtypes",[])],b),e.DialogContextKey=b},73618:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.DialogContribution=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(20162),b=t(25751);let g=class{registerCommands(E){E.registerCommand({id:o.DIALOG_COMMANDS.ENSURE.id,label:(0,o.localize)("dialog.ensure")},{execute:()=>{const u=this.dialogService.getButtons();this.dialogService.hide(u?.[u.length-1])}})}registerKeybindings(E){E.registerKeybinding({command:o.DIALOG_COMMANDS.ENSURE.id,keybinding:"enter",when:`${p.DialogViewVisibleContext.raw}`})}};n.__decorate([(0,a.Autowired)(b.IDialogService),n.__metadata("design:type",Object)],g.prototype,"dialogService",void 0),g=n.__decorate([(0,o.Domain)(o.CommandContribution,o.KeybindingContribution)],g),e.DialogContribution=g},16417:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.DialogService=void 0;const n=t(85608),a=t(76003),o=t(43718),p=t(25751),b=t(54490);let g=class extends p.AbstractMessageService{constructor(){super(...arguments),this._visible=!1,this.message="",this.title="",this.closable=!0,this.props={},this.onDidDialogVisibleChangeEmitter=new o.Emitter}get onDidDialogVisibleChange(){return this.onDidDialogVisibleChangeEmitter.event}get visible(){return this._visible}open({message:E,type:u,buttons:h,options:c,closable:r=!0,props:l}){return this.deferred=new o.Deferred,this.type=u,this.message=E,this.detail=c?.detail,this._visible=!0,this.closable=r,this.props=l??{},this.buttons=h,this.onDidDialogVisibleChangeEmitter.fire(this._visible),this.contextkeyService.dialogViewVisibleContext.set(!0),this.deferred.promise}hide(E){this._visible=!1,this.onDidDialogVisibleChangeEmitter.fire(this._visible),this.contextkeyService.dialogViewVisibleContext.set(!1),this.deferred.resolve(E)}reset(){this.type=void 0,this.message="",this.buttons=[],this.props={}}getMessage(){return this.message}getDetail(){return this.detail}getType(){return this.type}getIcon(){switch(this.type){case o.MessageType.Error:return{color:"var(--notificationsErrorIcon-foreground)",className:"close-circle"};case o.MessageType.Info:return{color:"var(--notificationsInfoIcon-foreground)",className:"info-circle"};case o.MessageType.Warning:return{color:"var(--notificationsWarningIcon-foreground)",className:"question-circle"};default:break}}getButtons(){return this.buttons}getProps(){return this.props}};n.__decorate([(0,a.Autowired)(b.DialogContextKey),n.__metadata("design:type",b.DialogContextKey)],g.prototype,"contextkeyService",void 0),g=n.__decorate([(0,a.Injectable)()],g),e.DialogService=g},21705:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Dialog=void 0;const a=t(85608).__importStar(t(14041)),o=t(97267),p=t(41869),b=t(25751),g=()=>{var _;const E=(0,p.useInjectable)(b.IDialogService),u=E.getIcon(),h=E.getMessage(),c=E.getDetail(),r=E.getButtons(),l=E.getType(),[s,d]=(0,a.useState)(E.visible),f=E.getProps(),m=(0,a.useCallback)(()=>{E.reset()},[E]),v=(0,a.useCallback)(()=>{E.hide()},[E]),y=(0,a.useCallback)(S=>{E.hide(S)},[E]);return(0,a.useEffect)(()=>{const S=E.onDidDialogVisibleChange(A=>{d(A)});return()=>{S.dispose()}},[]),a.default.createElement(o.Dialog,Object.assign({visible:s,onClose:v,closable:(_=E.closable)!==null&&_!==void 0?_:!0,afterClose:m,message:h,detail:c,type:"confirm",messageType:l,icon:u,keyboard:!0,buttons:r?r.map((S,A)=>a.default.createElement(o.Button,{size:"large",onClick:()=>y(S),key:S,type:A===r.length-1?"primary":"secondary"},p.strings.mnemonicButtonLabel(S,!0))):a.default.createElement(o.Button,{size:"large",onClick:v,type:"primary"},(0,p.localize)("dialog.confirm"))},f))};e.Dialog=g},96194:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.OverlayModule=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(97222),b=t(25751),g=t(31388),_=t(54490),E=t(73618),u=t(16417),h=t(38543),c=t(75124);let r=class extends o.BrowserModule{constructor(){super(...arguments),this.providers=[{token:_.DialogContextKey,useClass:_.DialogContextKey},{token:b.IDialogService,useClass:u.DialogService},{token:b.IMessageService,useClass:c.MessageService},{token:p.IBrowserCtxMenu,useClass:g.BrowserCtxMenuService},E.DialogContribution],this.isOverlay=!0,this.component=h.Overlay}};r=n.__decorate([(0,a.Injectable)()],r),e.OverlayModule=r},38543:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Overlay=void 0;const a=t(85608).__importDefault(t(14041)),o=t(41869),p=t(5454),b=t(21705);t(90311);const g=()=>{const _=(0,o.useInjectable)(o.ComponentRegistry),E=(0,o.useInjectable)(o.IClientApp),[u,h]=a.default.useState([]),c=(0,o.useInjectable)(o.AppConfig);return a.default.useEffect(()=>{E.appInitialized.promise.then(()=>{var r;if(!((r=c.layoutConfig[o.SlotLocation.extra])===null||r===void 0)&&r.modules){const l=[];c.layoutConfig[o.SlotLocation.extra].modules.forEach(s=>{const d=_.getComponentRegistryInfo(s);d&&(d.views||[]).forEach(f=>{f.component&&l.push(f.component)})}),h(l)}})},[]),a.default.createElement("div",{id:"ide-overlay",className:"ide-overlay"},a.default.createElement(b.Dialog,null),a.default.createElement(p.CtxMenu,null),a.default.createElement(o.ComponentRenderer,{Component:u}))};e.Overlay=g},75124:(x,e,t)=>{"use strict";var n;Object.defineProperty(e,"__esModule",{value:!0}),e.MessageService=void 0;const a=t(85608),o=t(76003),p=t(97267),b=t(84605),g=t(41869),_=t(43718),E=t(25751);let u=n=class extends E.AbstractMessageService{constructor(){super(...arguments),this.showTime=0}open({type:c,buttons:r,from:l,closable:s=!0,message:d}){if(!d)return Promise.resolve(void 0);let f=d;if(Date.now()-this.showTime<n.SAME_MESSAGE_DURATION_MS&&typeof f=="string"&&this.preMessage===f)return Promise.resolve(void 0);this.preMessage=typeof f=="string"&&f,this.showTime=Date.now(),typeof d=="string"&&d.length>E.MAX_MESSAGE_LENGTH&&(f=`${d.substr(0,E.MAX_MESSAGE_LENGTH)}...`);const m=l&&typeof l=="string"?`${(0,_.localize)("component.message.origin")}: ${l}`:"",v=(0,_.uuid)();return(0,p.open)((0,g.toMarkdown)(f,this.openerService,{walkTokens:b.parseWithoutEscape}),c,s,v,r,m,n.DURATION[c])||Promise.resolve(void 0)}hide(){p.notification.destroy()}};u.SAME_MESSAGE_DURATION_MS=3e3,u.DURATION={[_.MessageType.Info]:15,[_.MessageType.Warning]:18,[_.MessageType.Error]:20},a.__decorate([(0,o.Autowired)(g.IOpenerService),a.__metadata("design:type",Object)],u.prototype,"openerService",void 0),u=n=a.__decorate([(0,o.Injectable)()],u),e.MessageService=u},25751:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.IOpenDialogOptions=e.ISaveDialogOptions=e.IWindowDialogService=e.AbstractMessageService=e.IDialogService=e.MAX_MESSAGE_LENGTH=e.IMessageService=void 0;const n=t(43718);e.IMessageService=Symbol("IMessageService"),e.MAX_MESSAGE_LENGTH=1e3,e.IDialogService=Symbol("IDialogService");class a{info(g,_,E,u){return this.open({message:g,type:n.MessageType.Info,buttons:_,closable:E,props:u})}warning(g,_,E,u){return this.open({message:g,type:n.MessageType.Warning,buttons:_,closable:E,props:u})}error(g,_,E,u){return this.open({message:g,type:n.MessageType.Error,buttons:_,closable:E,props:u})}}e.AbstractMessageService=a,e.IWindowDialogService=Symbol("IWindowDialogService");var o;(function(b){function g(_){return"saveLabel"in _||"showNameInput"in _||"defaultFileName"in _}b.is=g})(o=e.ISaveDialogOptions||(e.ISaveDialogOptions={}));var p;(function(b){function g(_){return"canSelectFiles"in _||"canSelectFolders"in _||"canSelectMany"in _||"openLabel"in _}b.is=g})(p=e.IOpenDialogOptions||(e.IOpenDialogOptions={}))},72665:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(85608).__exportStar(t(25751),e)},11461:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AbstractResourcePreferenceProvider=e.OVERRIDE_PROPERTY_PATTERN=void 0;const n=t(85608),a=n.__importStar(t(23304)),o=t(76003),p=t(41869),b=t(14951),g="\\[(.*)\\]$";e.OVERRIDE_PROPERTY_PATTERN=new RegExp(g);let _=class extends p.PreferenceProvider{constructor(){super(),this.preferences={default:{},languageSpecific:{}},this.preferenceThrottler=new p.Throttler,this.preferenceTasks=[],this.loaded=!1,this.listen()}listen(){if(this.fileSystem.handlesScheme(p.Schemes.file)&&this.fileSystem.handlesScheme(p.Schemes.userStorage))this.init();else{const u=this.fileSystem.onFileProviderChanged(h=>{this.fileSystem.handlesScheme(p.Schemes.file)&&this.fileSystem.handlesScheme(p.Schemes.userStorage)&&(this.init(),u.dispose())})}}async init(){this.readPreferences().then(()=>this._ready.resolve()).catch(()=>this._ready.resolve());const u=this.getUri(),h=await this.fileSystem.watchFileChanges(u.parent);this.toDispose.push(h),h.onFilesChanged(c=>{if(c.find(l=>l.uri.startsWith(u.parent.toString())))return this.readPreferences()}),this.toDispose.push(p.Disposable.create(()=>this.reset()))}getConfigUri(u){return u?this.contains(u)?this.getUri():void 0:this.getUri()}contains(u){if(!u)return!0;const h=this.getDomain();if(!h)return!0;const c=new p.URI(u).path;return h.some(r=>new p.URI(r).path.relativity(c)>=0)}getPreferences(u,h){return this.loaded&&this.contains(u)?this.getOnePreference(h):void 0}getLanguagePreferences(u){return this.loaded&&this.contains(u)?this.preferences.languageSpecific:void 0}getOnePreference(u){return u?this.preferences.languageSpecific[u]||{}:this.preferences.default}async resolvePreferenceTasks(u){const h=this.getUri();this.resource=this.fileSystem.getFileStat(h.toString());let c=await this.resource,r=(await this.readContents()||"").trim();for(const l of u){const{path:s,value:d}=l;if((!r||s.length===0)&&(0,p.isUndefined)(d))continue;const f={tabSize:2,insertSpaces:!0,eol:""},m=a.modify(r,s,d,{formattingOptions:f});r=a.applyEdits(r,m)}try{return c||(c=await this.fileSystem.createFile(h.toString())),await this.fileSystem.setContent(c,r),await this.readPreferences(r),!0}catch(l){return this.logger.error(`${l.toString()}`),!1}}doSetPreferenceTask(){const u=this.preferenceTasks.slice(0);return this.preferenceTasks=[],this.resolvePreferenceTasks(u)}async doSetPreference(u,h,c,r){if(!this.contains(c))return!1;const l=this.getPath(u,r);return l?(this.preferenceTasks.push({path:l,key:u,value:h}),await this.preferenceThrottler.queue(this.doSetPreferenceTask.bind(this))):!1}getPath(u,h){return h?[`[${h}]`,u]:[u]}async readPreferences(u){const h=u||await this.readContents();this.loaded=!(0,p.isUndefined)(h);const c=h?this.getParsedContent(h):{default:{},languageSpecific:{}};this.handlePreferenceChanges(c)}async readContents(){const u=this.getUri();try{const{content:h}=await this.fileSystem.readFile(u.toString());return h.toString()}catch{if(this.appConfig.useVSCodeWorkspaceConfiguration&&u.scheme===p.Schemes.file){const c=u.parent.parent.resolve(p.VSCODE_WORKSPACE_CONFIGURATION_DIR_NAME).resolve(u.displayName);try{const{content:r}=await this.fileSystem.readFile(c.toString());return r.toString()}catch{return}}return}}getParsedContent(u){const h=this.parse(u),c={default:{},languageSpecific:{}};if(typeof h!="object")return c;for(const r of Object.keys(h)){const l=h[r];if(e.OVERRIDE_PROPERTY_PATTERN.test(r)){const s=r.match(e.OVERRIDE_PROPERTY_PATTERN)[1];c.languageSpecific[s]=c.languageSpecific[s]||{};for(const d in l){const f=l[d];c.languageSpecific[s][`${d}`]=f}}else c.default[r]=l}return c}validate(u,h){return this.configurations.getPath(this.getUri())!==this.configurations.getPaths()[0]?!0:(0,p.isUndefined)(h)||this.schemaProvider.validate(u,h).valid}parse(u){if(u=u.trim(),!u)return;const h=a.stripComments(u);return a.parse(h)}handlePreferenceChanges(u){const h=Object.assign({},this.preferences);this.preferences=u;const c=this.collectChanges(this.preferences,h);(Object.keys(c.default).length>0||Object.keys(c.languageSpecific).length>0)&&this.emitPreferencesChangedEvent(c)}reset(){const u=this.preferences;this.preferences={default:{},languageSpecific:{}};const h=this.collectChanges(this.preferences,u);(Object.keys(h.default).length>0||Object.keys(h.languageSpecific).length>0)&&this.emitPreferencesChangedEvent(h)}collectChanges(u,h){const c={default:this.collectOneChanges(u.default,h.default),languageSpecific:{}},r=new Set([...Object.keys(u.languageSpecific),...Object.keys(h.languageSpecific)]);for(const l of r){const s=this.collectOneChanges(u.languageSpecific[l],h.languageSpecific[l]);Object.keys(s).length>0&&(c.languageSpecific[l]=s)}return c}collectOneChanges(u,h){const c=new Set([...Object.keys(h||{}),...Object.keys(u||{})]),r={},l=this.getUri();for(const s of c){const d=h[s],f=u[s],m=this.schemaProvider.getCombinedSchema().properties[s];if(m){const v=m.scope;if(!this.schemaProvider.isValidInScope(s,this.getScope())){this.logger.warn(`Preference ${s} in ${l} can only be defined in scopes: ${p.PreferenceScope.getScopeNames(v).join(", ")}.`);continue}}((0,p.isUndefined)(f)&&d!==f||(0,p.isUndefined)(d)&&f!==d||!p.JSONUtils.deepEqual(d,f))&&(r[s]={preferenceName:s,newValue:f,oldValue:d,scope:this.getScope(),domain:this.getDomain()})}return r}};n.__decorate([(0,o.Autowired)(p.PreferenceSchemaProvider),n.__metadata("design:type",p.PreferenceSchemaProvider)],_.prototype,"schemaProvider",void 0),n.__decorate([(0,o.Autowired)(p.PreferenceConfigurations),n.__metadata("design:type",p.PreferenceConfigurations)],_.prototype,"configurations",void 0),n.__decorate([(0,o.Autowired)(b.IFileServiceClient),n.__metadata("design:type",Object)],_.prototype,"fileSystem",void 0),n.__decorate([(0,o.Autowired)(p.AppConfig),n.__metadata("design:type",Object)],_.prototype,"appConfig",void 0),n.__decorate([(0,o.Autowired)(p.ILogger),n.__metadata("design:type",Object)],_.prototype,"logger",void 0),_=n.__decorate([(0,o.Injectable)(),n.__metadata("design:paramtypes",[])],_),e.AbstractResourcePreferenceProvider=_},91825:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.FolderFilePreferenceProvider=e.FolderFilePreferenceProviderOptions=e.FolderFilePreferenceProviderFactory=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(10560),b=t(11461);e.FolderFilePreferenceProviderFactory=Symbol("FolderFilePreferenceProviderFactory"),e.FolderFilePreferenceProviderOptions=Symbol("FolderFilePreferenceProviderOptions");let g=class extends b.AbstractResourcePreferenceProvider{get folderUri(){return this._folderUri||(this._folderUri=new o.URI(this.options.folder.uri)),this._folderUri}getUri(){return this.options.configUri}getScope(){return this.workspaceService.isMultiRootWorkspaceOpened?o.PreferenceScope.Folder:o.PreferenceScope.Workspace}getDomain(){return[this.folderUri.toString()]}};n.__decorate([(0,a.Autowired)(e.FolderFilePreferenceProviderOptions),n.__metadata("design:type",Object)],g.prototype,"options",void 0),n.__decorate([(0,a.Autowired)(p.IWorkspaceService),n.__metadata("design:type",Object)],g.prototype,"workspaceService",void 0),g=n.__decorate([(0,a.Injectable)()],g),e.FolderFilePreferenceProvider=g},16814:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.FoldersPreferencesProvider=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(79929),b=t(51500),g=t(91825);let _=class extends o.PreferenceProvider{constructor(){super(),this.providers=new Map,this.init()}async init(){await this.workspaceService.roots,this.updateProviders(),this.workspaceService.onWorkspaceChanged(()=>this.updateProviders());const u=[];for(const h of this.providers.values())u.push(h.ready.catch(c=>this.logger.error(c)));u.length>0?Promise.all(u).then(()=>this._ready.resolve()):this._ready.resolve()}updateProviders(){const u=this.workspaceService.tryGetRoots(),h=new Set(this.providers.keys());for(const c of u){const r=new o.URI(c.uri);for(const l of this.configurations.getPaths())for(const s of[...this.configurations.getSectionNames(),this.configurations.getConfigName()]){const d=this.configurations.createUri(r,l,s),f=d.toString();if(h.delete(f),!this.providers.has(f)){const m=this.createProvider({folder:c,configUri:d});this.providers.set(f,m)}}}for(const c of h){const r=this.providers.get(c);r&&(this.providers.delete(c),r.dispose())}}getConfigUri(u){for(const h of this.getFolderProviders(u)){const c=h.getConfigUri(u);if(this.configurations.isConfigUri(c))return c}}getContainingConfigUri(u){for(const h of this.getFolderProviders(u)){const c=h.getConfigUri();if(this.configurations.isConfigUri(c)&&h.contains(u))return c}}getDomain(){return this.workspaceService.tryGetRoots().map(u=>u.uri)}doResolve(u,h,c){const r={},l=this.groupProvidersByConfigName(h);for(const s of l.values())for(const d of s){const{value:f,configUri:m}=d.resolve(u,h,c);if(m&&f!==void 0){r.configUri=m,r.value=o.PreferenceProvider.merge(r.value,f);break}}return r}getPreferences(u,h){let c;const r=this.groupProvidersByConfigName(u);for(const l of r.values())for(const s of l)if(s.getConfigUri(u)){const d=s.getPreferences(void 0,h);d&&(c=o.PreferenceProvider.merge(c,d));break}return c}getLanguagePreferences(u){let h;const c=this.groupProvidersByConfigName(u);for(const r of c.values())for(const l of r)if(l.getConfigUri(u)){const s=l.getLanguagePreferences();s&&(h=o.PreferenceProvider.merge(h,s));break}return h}async doSetPreference(u,h,c,r){const l=u.split(".",1)[0],s=this.configurations.isSectionName(l)?l:this.configurations.getConfigName(),d=this.getFolderProviders(c);let f;for(const m of d){if(f===void 0){const v=m.getConfigUri(c);v&&(f=this.configurations.getPath(v))}if(this.configurations.getName(m.getConfigUri())===s){if(m.getConfigUri(c)){if(await m.setPreference(u,h,c,r))return!0}else if(this.configurations.getPath(m.getConfigUri())===f){if(await m.setPreference(u,h,c,r))return!0}else if(await m.setPreference(u,h,c,r))return!0}}return!1}groupProvidersByConfigName(u){const h=new Map,c=this.getFolderProviders(u);for(const r of[this.configurations.getConfigName(),...this.configurations.getSectionNames()]){const l=[];for(const s of c)this.configurations.getName(s.getConfigUri())===r&&l.push(s);h.set(r,l)}return h}getFolderProviders(u){if(!u)return[];const h=new o.URI(u).path;let c={relativity:Number.MAX_SAFE_INTEGER};const r=new Map;for(const l of this.providers.values()){const s=l.folderUri.toString(),d=r.get(s)||[];d.push(l),r.set(s,d);const f=l.folderUri.path.relativity(h);f>=0&&c.relativity>f&&(c={relativity:f,uri:s})}return c.uri&&r.get(c.uri)||[]}createProvider(u){const h=this.FolderFilePreferenceProviderFactory(u);return this.toDispose.push(h),this.toDispose.push(h.onDidPreferencesChanged(c=>{this.emitPreferencesChangedEvent(c)})),h}};n.__decorate([(0,a.Autowired)(g.FolderFilePreferenceProviderFactory),n.__metadata("design:type",Function)],_.prototype,"FolderFilePreferenceProviderFactory",void 0),n.__decorate([(0,a.Autowired)(o.PreferenceConfigurations),n.__metadata("design:type",o.PreferenceConfigurations)],_.prototype,"configurations",void 0),n.__decorate([(0,a.Autowired)(b.IWorkspaceService),n.__metadata("design:type",Object)],_.prototype,"workspaceService",void 0),n.__decorate([(0,a.Autowired)(p.IFileServiceClient),n.__metadata("design:type",Object)],_.prototype,"fileSystem",void 0),n.__decorate([(0,a.Autowired)(o.ILogger),n.__metadata("design:type",Object)],_.prototype,"logger",void 0),_=n.__decorate([(0,a.Injectable)(),n.__metadata("design:paramtypes",[])],_),e.FoldersPreferencesProvider=_},58408:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.createPreferenceProviders=e.injectPreferenceProviders=e.injectWorkspaceFilePreferenceProvider=e.injectFolderPreferenceProvider=e.PreferencesModule=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(78132),b=t(83569),g=t(91825),_=t(16814),E=t(65146),u=t(90184),h=t(76773),c=t(25947),r=t(46392),l=t(58705);let s=class extends o.BrowserModule{constructor(){super(...arguments),this.contributionProvider=b.SettingContribution,this.providers=[...v(),{token:b.IUserStorageService,useClass:c.UserStorageServiceImpl},{token:p.IPreferenceSettingsService,useClass:u.PreferenceSettingsService},E.PreferenceContribution,c.UserStorageContribution],this.preferences=m}};s=n.__decorate([(0,a.Injectable)()],s),e.PreferencesModule=s;function d(y){y.addProviders({token:g.FolderFilePreferenceProviderFactory,useFactory:()=>S=>{const A=y.get(p.PreferenceConfigurations),T=A.getName(S.configUri),D=y.createChild([{token:g.FolderFilePreferenceProviderOptions,useValue:S}],{dropdownForTag:!0,tag:T});return A.isConfigUri(S.configUri)?(D.addProviders({token:g.FolderFilePreferenceProvider,useClass:g.FolderFilePreferenceProvider}),D.get(g.FolderFilePreferenceProvider)):D.get(g.FolderFilePreferenceProvider,{tag:T,multiple:!0})}})}e.injectFolderPreferenceProvider=d;function f(y){y.addProviders({token:r.WorkspaceFilePreferenceProviderFactory,useFactory:()=>S=>y.createChild([{token:r.WorkspaceFilePreferenceProviderOptions,useValue:S},{token:r.WorkspaceFilePreferenceProvider,useClass:r.WorkspaceFilePreferenceProvider}]).get(r.WorkspaceFilePreferenceProvider)})}e.injectWorkspaceFilePreferenceProvider=f;function m(y){d(y),f(y)}e.injectPreferenceProviders=m;function v(){return[{token:p.PreferenceProvider,tag:p.PreferenceScope.Folder,useClass:_.FoldersPreferencesProvider},{token:p.PreferenceProvider,tag:p.PreferenceScope.Workspace,useClass:l.WorkspacePreferenceProvider},{token:p.PreferenceProvider,tag:p.PreferenceScope.User,useClass:h.UserPreferenceProvider}]}e.createPreferenceProviders=v},65146:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.PreferenceContribution=e.PREFERENCE_COMMANDS=e.PreferenceContextMenu=e.PrefResourceProvider=void 0;const n=t(85608),a=n.__importStar(t(23304)),o=t(76003),p=t(41869),b=t(93899),g=t(57517),_=t(42933),E=t(83569),u=t(90184),h=t(26551),c=t(99187),r=t(76773),l=t(58705),s="pref-preview",{addElement:d}=p.arrays;let f=class extends p.WithEventBus{constructor(){super(),this.scheme=E.PREF_SCHEME}provideResource(A){return{supportsRevive:!0,name:(0,p.localize)("preference.tab.name"),icon:(0,p.getIcon)("setting"),uri:A}}provideResourceSubname(A,T){return null}async shouldCloseResource(A,T){return!0}};f=n.__decorate([(0,o.Injectable)(),n.__metadata("design:paramtypes",[])],f),e.PrefResourceProvider=f;var m;(function(S){S.OPEN="1_open"})(m=e.PreferenceContextMenu||(e.PreferenceContextMenu={}));var v;(function(S){const A="preference";S.OPEN_USER_SETTING_FILE={id:"preference.open.user",label:"%preference.editorTitle.openUserSource%",category:A},S.OPEN_WORKSPACE_SETTING_FILE={id:"preference.open.workspace",label:"%preference.editorTitle.openWorkspaceSource%",category:A},S.OPEN_SOURCE_FILE={id:"preference.open.source",label:"%preference.editorTitle.openSource%",category:A},S.PREFERENCE_INPUT_FOCUS={id:"preference.input.focus",category:A}})(v=e.PREFERENCE_COMMANDS||(e.PREFERENCE_COMMANDS={}));let y=class{constructor(){this.settingGroupsWillRegister=u.defaultSettingGroup,this.settingSectionsWillRegister=u.defaultSettingSections}onStart(){this.saveSettings(),this.handleSettingGroups(),this.handleSettingSections(),this.registerSettings(),this.registerSettingSections()}registerCommands(A){A.registerCommand(p.COMMON_COMMANDS.OPEN_PREFERENCES,{execute:async T=>{await this.openPreferences(T),this.preferenceService.focusInput()}}),A.registerCommand(p.COMMON_COMMANDS.LOCATE_PREFERENCES,{execute:async T=>(await this.openPreferences(),await this.preferenceService.scrollToGroup(T))}),A.registerCommand(v.OPEN_USER_SETTING_FILE,{execute:()=>{this.openResource(p.PreferenceScope.User)}}),A.registerCommand(v.OPEN_WORKSPACE_SETTING_FILE,{execute:()=>{this.openResource(p.PreferenceScope.Workspace)}}),A.registerCommand(v.OPEN_SOURCE_FILE,{execute:async(T,D)=>{!T||typeof T!="number"?this.openResource():this.openResource(T,D)}}),A.registerCommand(v.PREFERENCE_INPUT_FOCUS,{execute:()=>{this.preferenceService.focusInput()}})}registerMenus(A){A.registerMenuItem(b.MenuId.SettingsIconMenu,{command:p.COMMON_COMMANDS.OPEN_PREFERENCES.id,group:m.OPEN}),A.registerMenuItem(b.MenuId.EditorTitle,{command:v.OPEN_SOURCE_FILE.id,iconClass:(0,p.getIcon)("open"),group:"navigation",order:4,when:`resourceScheme == ${E.PREF_SCHEME}`}),A.registerMenuItem(b.MenuId.EditorTitle,{command:p.COMMON_COMMANDS.OPEN_PREFERENCES.id,iconClass:(0,p.getIcon)("open"),group:"navigation",order:4,when:"resourceFilename =~ /settings.json/"})}registerKeybindings(A){A.registerKeybinding({command:p.COMMON_COMMANDS.OPEN_PREFERENCES.id,keybinding:"ctrlcmd+,"}),A.registerKeybinding({command:v.PREFERENCE_INPUT_FOCUS.id,keybinding:"ctrlcmd+f",when:"resourceScheme == pref"})}handleSettingGroups(){for(const A of this.contributions.getContributions())A.handleSettingGroup&&(this.settingGroupsWillRegister=A.handleSettingGroup(this.settingGroupsWillRegister))}handleSettingSections(){for(const A of this.contributions.getContributions())A.handleSettingSections&&(this.settingSectionsWillRegister=A.handleSettingSections(Object.assign({},this.settingSectionsWillRegister)))}saveSettings(){for(const A of this.contributions.getContributions())A.registerSetting&&A.registerSetting({registerSettingGroup:T=>d(this.settingGroupsWillRegister,T),registerSettingSection:(T,D)=>((I=>Object.keys(this.settingSectionsWillRegister).includes(I))(T)||(this.settingSectionsWillRegister[T]=[]),d(this.settingSectionsWillRegister[T],D))})}registerSettings(){this.settingGroupsWillRegister.forEach(A=>{this.preferenceService.registerSettingGroup(A)})}registerSettingSections(){Object.keys(this.settingSectionsWillRegister).forEach(A=>{this.settingSectionsWillRegister[A].forEach(T=>{this.preferenceService.registerSettingSection(A,T)})})}async openPreferences(A,T){await this.commandService.executeCommand(p.EDITOR_COMMANDS.OPEN_RESOURCE.id,new p.URI("/").withScheme(E.PREF_SCHEME),{preview:!1}),(0,p.isString)(A)?this.preferenceService.search(A):(0,p.isString)(T)&&this.preferenceService.scrollToPreference(T)}async openResource(A,T){var D,w,I;const O=await this.preferenceService.getCurrentPreferenceUrl(A),M=await this.commandService.executeCommand(p.EDITOR_COMMANDS.OPEN_RESOURCE.id,new p.URI(O),{focus:!0,groupIndex:this.workbenchEditorService.currentEditorGroup.index});if(M&&T){const R=(D=this.workbenchEditorService.editorGroups.find(P=>P.name===M.groupId))===null||D===void 0?void 0:D.currentEditor;if(R){const{_commandService:P}=R.monacoEditor;let L=R.monacoEditor.getValue(),N,k,B,F;const{index:W}=L.match(new RegExp(`\\"${T}\\"`))||{};if(W&&W>=0)k=((w=L.slice(0,W).match(new RegExp("\\n","g")))===null||w===void 0?void 0:w.length)||0,k>0&&(N=L.split(`
28541
28541
  `),B=N[k],F=k);else{const K={tabSize:2,insertSpaces:!0,eol:""},H=a.modify(L,[T],"",{formattingOptions:K}),z=a.applyEdits(L,H);R.monacoEditor.setValue(z),L=z,k=((I=L.slice(0,W).match(new RegExp("\\n","g")))===null||I===void 0?void 0:I.length)||-1,k>1&&(N=L.split(`
28542
28542
  `),B=N[k-1],F=k-1)}if(!(B&&F))return;const j=`\\s+\\"${T}\\":\\s?["|{|t|f|[]`,V=new RegExp(j,"g").exec(B);if(V){const K=V[0].slice(-1)==='"';R.monacoEditor.setPosition({lineNumber:F+1,column:V[0].length+1}),setTimeout(()=>{R.monacoEditor.revealPositionInCenter({lineNumber:F+1,column:V[0].length+1},1)}),K&&await P.executeCommand("editor.action.triggerSuggest")}}}}initialize(){this.schemaProvider.onDidPreferenceSchemaChanged(()=>{this.registerSchema(this.schemaRegistry)})}registerSchema(A){A.registerSchema("vscode://schemas/settings/user",this.schemaProvider.getCombinedSchema(),["settings.json",r.USER_PREFERENCE_URI.toString()])}registerResource(A){A.registerResourceProvider(this.prefResourceProvider)}registerEditorComponent(A){A.registerEditorComponent({component:c.PreferenceView,uid:s,scheme:E.PREF_SCHEME}),A.registerEditorComponentResolver(E.PREF_SCHEME,(T,D,w)=>{w([{type:g.EditorOpenType.component,componentId:s}])})}registerEditorFeature(A){A.registerEditorFeatureContribution({contribute:T=>this.injector.get(h.EditPreferenceDecorationsContribution,[T]).contribute()})}};n.__decorate([(0,o.Autowired)(o.INJECTOR_TOKEN),n.__metadata("design:type",o.Injector)],y.prototype,"injector",void 0),n.__decorate([(0,o.Autowired)(p.PreferenceSchemaProvider),n.__metadata("design:type",p.PreferenceSchemaProvider)],y.prototype,"schemaProvider",void 0),n.__decorate([(0,o.Autowired)(p.PreferenceProvider,{tag:p.PreferenceScope.Workspace}),n.__metadata("design:type",l.WorkspacePreferenceProvider)],y.prototype,"workspacePreferenceProvider",void 0),n.__decorate([(0,o.Autowired)(_.IFileServiceClient),n.__metadata("design:type",Object)],y.prototype,"filesystem",void 0),n.__decorate([(0,o.Autowired)(f),n.__metadata("design:type",f)],y.prototype,"prefResourceProvider",void 0),n.__decorate([(0,o.Autowired)(p.CommandService),n.__metadata("design:type",Object)],y.prototype,"commandService",void 0),n.__decorate([(0,o.Autowired)(p.IJSONSchemaRegistry),n.__metadata("design:type",Object)],y.prototype,"schemaRegistry",void 0),n.__decorate([(0,o.Autowired)(p.IPreferenceSettingsService),n.__metadata("design:type",u.PreferenceSettingsService)],y.prototype,"preferenceService",void 0),n.__decorate([(0,o.Autowired)(E.SettingContribution),n.__metadata("design:type",Object)],y.prototype,"contributions",void 0),n.__decorate([(0,o.Autowired)(g.WorkbenchEditorService),n.__metadata("design:type",g.WorkbenchEditorService)],y.prototype,"workbenchEditorService",void 0),y=n.__decorate([(0,p.Domain)(p.CommandContribution,p.KeybindingContribution,p.ClientAppContribution,g.BrowserEditorContribution,b.MenuContribution,p.JsonSchemaContribution)],y),e.PreferenceContribution=y},90184:(x,e,t)=>{"use strict";var n;Object.defineProperty(e,"__esModule",{value:!0}),e.defaultSettingSections=e.defaultSettingGroup=e.PreferenceSettingsService=void 0;const a=t(85608),o=t(76003),p=t(40396),b=t(41869),g=t(14951),_=t(83569),E=t(65146),{addElement:u}=b.arrays;class h{constructor(){this.version=new Map}get(l){return this.version.get(l)||0}increase(l){this.version.set(l,(this.version.get(l)||0)+1)}}let c=n=class extends b.Disposable{get currentScope(){return this._currentScope.id}get currentSelectId(){return this._currentSelectId}set currentSelectId(l){this._currentSelectId=l,this.emitter.emit("currentSelectIdChange",l)}constructor(){super(),this.emitter=this.registerDispose(new p.EventEmitter),this.currentSearch="",this.tabIndex=0,this.tabList=[b.WorkspaceScope,b.UserScope],this._currentScope=this.tabList[0],this._currentSelectId="",this.settingsGroups=[],this.settingsSections=new Map,this.settingsSectionsVersioned=new h,this.enumLabels=new Map,this.cachedGroupSection=new Map,this.onDidEnumLabelsChangeDispatcher=this.registerDispose(new b.Dispatcher),this.openJSON=(s,d)=>{this.commandService.executeCommand(E.PREFERENCE_COMMANDS.OPEN_SOURCE_FILE.id,s,d)},this.handleListHandler=s=>{this._listHandler=s},this.handleTreeHandler=s=>{this._treeHandler=s},this.search=s=>{this.doSearch(s)},this._onFocus=new b.Emitter,this.setEnumLabels("general.language",new Proxy({},{get:(s,d)=>{var f;return(f=(0,b.getAvailableLanguages)().find(m=>m.languageId===d))===null||f===void 0?void 0:f.localizedLanguageName}})),this.setEnumLabels("files.eol",{"\n":"LF","\r\n":"CRLF",auto:"auto"});const l=this.preferenceService.get("settings.userBeforeWorkspace",!1);l&&(this.updateTabList(l),this._currentScope=this.tabList[this.tabIndex]),this.addDispose([this.preferenceService.onSpecificPreferenceChange("settings.userBeforeWorkspace",s=>{this.updateTabList(s.newValue)}),this.emitter.on("tabListChange",()=>{this.updateCurrentScope()}),this.emitter.on("tabIndexChange",()=>{this.updateCurrentScope()})])}updateTabList(l){let s;l?s=[b.UserScope,b.WorkspaceScope]:s=[b.WorkspaceScope,b.UserScope],this.tabList=s,this.emitter.emit("tabListChange")}updateCurrentScope(){this._currentScope=this.tabList[this.tabIndex],this.emitter.emit("currentScopeChange")}scrollToGroup(l){l&&(this.currentSelectId="group:"+l)}scrollToSection(l){l&&(this.currentSelectId="section:"+l)}scrollToPreference(l){l&&(this.currentSelectId="preference:"+l)}updateTabIndex(l){this.tabIndex=l,this.emitter.emit("tabIndexChange")}selectScope(l){let s=this.tabList.findIndex(d=>d.id===l);s===-1&&(s=0),this.updateTabIndex(s)}onDidEnumLabelsChange(l){return this.onDidEnumLabelsChangeDispatcher.on(l)}isContainSearchValue(l,s){return l.toLocaleLowerCase().indexOf(s.toLocaleLowerCase())>-1}shouldHiddenInScope(l,s){return Array.isArray(l.hiddenInScope)&&l.hiddenInScope.includes(s)}doSearch(l){l?this.currentSearch=l:this.currentSearch="",this.emitter.emit("currentSearchChange")}async setPreference(l,s,d){await this.preferenceService.set(l,s,d)}get listHandler(){return this._listHandler}get treeHandler(){return this._treeHandler}getSettingGroups(l,s){return this.settingsGroups.slice().filter(f=>this.getResolvedSections(f.id,l,s).length>0)}async hasThisScopeSetting(l){const s=await this.getPreferenceUrl(l);return s?await this.fileServiceClient.access(s):void 0}registerSettingGroup(l){const s=u(this.settingsGroups,Object.assign(Object.assign({},l),{title:(0,b.replaceLocalizePlaceholder)(l.title)||l.title}));return this.emitter.emit("settingsGroupsChange"),b.Disposable.create(()=>{s.dispose(),this.emitter.emit("settingsGroupsChange")})}registerSettingSection(l,s){this.settingsSections.has(l)||this.settingsSections.set(l,[]),this.cachedGroupSection.clear();const d=u(this.settingsSections.get(l),s);return this.settingsSectionsVersioned.increase(l),this.emitter.emit("settingsSectionsChange",l),{dispose:()=>{d.dispose(),this.settingsSectionsVersioned.increase(l),this.emitter.emit("settingsSectionsChange",l)}}}visitSection(l,s){if(l.preferences){for(const d of l.preferences)if(s(d))return d}if(l.subSections&&Array.isArray(l.subSections))for(const d of l.subSections)return this.visitSection(d,s)}getPreferenceViewDesc(l){const s=this.settingsSections.values();for(const d of s)for(const f of d){const m=this.visitSection(f,v=>{if(!(0,b.isString)(v)&&v.id===l)return!0});if(m)return m}}getResolvedSections(l,s=this.currentScope,d=this.currentSearch){var f;if(d.startsWith(n.EXTENSION_SETTINGS_PREFIX)&&l!=="extension")return[];const m=this.settingsSectionsVersioned.get(l),v=[l,s,d||"",m].join("-");if(this.cachedGroupSection.has(v))return this.cachedGroupSection.get(v);let y;if(n.EXTENSION_SETTINGS_REGX.test(d)){const T=n.EXTENSION_SETTINGS_REGX.exec(d);T&&(y=T[1],d=(f=T[2])===null||f===void 0?void 0:f.trim())}const S=[],A=T=>({preferences:T.preferences.filter(w=>!this.shouldHiddenInScope(w,s)).map(w=>{const I=typeof w=="string"?w:w.id,O=this.schemaProvider.getPreferenceProperty(I),M=typeof w=="string"?(0,_.toPreferenceReadableName)(w):(0,_.getPreferenceItemLabel)(w),R=O&&(0,b.replaceLocalizePlaceholder)(O.description),P=O&&(0,b.replaceLocalizePlaceholder)(O.markdownDescription);return{id:I,label:M,_description:P??R,markdownDescription:P,description:R}}).filter(w=>d?this.isContainSearchValue(w.id,d)||this.isContainSearchValue(w.label,d)||w.description&&this.isContainSearchValue(w.description,d)||w.markdownDescription&&this.isContainSearchValue(w.markdownDescription,d):!0)});return(this.settingsSections.get(l)||[]).filter(T=>!this.shouldHiddenInScope(T,s)&&(!y||y&&y===T.extensionId)).forEach(T=>{const D=Object.assign({},T);if(T.preferences){const{preferences:w}=A(T);D.preferences=w}if(T.subSections){const w=T.subSections.map(I=>{const{preferences:O}=A(I);if(O.length>0)return Object.assign(Object.assign({},I),{preferences:O})}).filter(Boolean);D.subSections=w}(D.preferences&&D.preferences.length>0||D.subSections&&D.subSections.length>0)&&S.push(D)}),this.cachedGroupSection.set(v.toLocaleLowerCase(),S),S}getPreference(l,s,d=!1){const{value:f}=this.preferenceService.resolve(l,void 0,void 0,void 0,s)||{value:void 0,scope:b.PreferenceScope.Default},{scope:m}=this.preferenceService.resolve(l)||{value:void 0,scope:b.PreferenceScope.Default};return{value:f,effectingScope:m||b.PreferenceScope.Default}}getEnumLabels(l){return this.enumLabels.get(l)||{}}setEnumLabels(l,s){this.onDidEnumLabelsChangeDispatcher.dispatch(l),this.enumLabels.set(l,s)}async reset(l,s){await this.preferenceService.set(l,void 0,s)}async getPreferenceUrl(l){var s;const d=this.providerProvider(l),f=await d.resource;return f?f.uri:(s=d.getConfigUri())===null||s===void 0?void 0:s.toString()}async getCurrentPreferenceUrl(l){const s=await this.getPreferenceUrl(l||this.currentScope||b.PreferenceScope.User);if(!s)return;if(!await this.fileServiceClient.access(s)){const f=await this.fileServiceClient.createFile(s);f&&await this.fileServiceClient.setContent(f,`{
28543
- }`)}return s}get onFocus(){return this._onFocus.event}focusInput(){this._onFocus.fire()}};c.EXTENSION_SETTINGS_PREFIX="@ext:",c.EXTENSION_SETTINGS_REGX=/^@ext:(\S+)(.+)?/,c.DEFAULT_CHANGE_DELAY=200,a.__decorate([(0,o.Autowired)(b.PreferenceService),a.__metadata("design:type",Object)],c.prototype,"preferenceService",void 0),a.__decorate([(0,o.Autowired)(b.PreferenceSchemaProvider),a.__metadata("design:type",b.PreferenceSchemaProvider)],c.prototype,"schemaProvider",void 0),a.__decorate([(0,o.Autowired)(b.PreferenceProviderProvider),a.__metadata("design:type",Function)],c.prototype,"providerProvider",void 0),a.__decorate([(0,o.Autowired)(g.IFileServiceClient),a.__metadata("design:type",Object)],c.prototype,"fileServiceClient",void 0),a.__decorate([(0,o.Autowired)(b.CommandService),a.__metadata("design:type",Object)],c.prototype,"commandService",void 0),c=n=a.__decorate([(0,o.Injectable)(),a.__metadata("design:paramtypes",[])],c),e.PreferenceSettingsService=c,e.defaultSettingGroup=[{id:_.PreferenceSettingId.General,title:"%settings.group.general%",iconClass:(0,b.getIcon)("setting")},{id:_.PreferenceSettingId.Terminal,title:"%settings.group.terminal%",iconClass:(0,b.getIcon)("terminal")},{id:_.PreferenceSettingId.Editor,title:"%settings.group.editor%",iconClass:(0,b.getIcon)("editor")},{id:_.PreferenceSettingId.View,title:"%settings.group.view%",iconClass:(0,b.getIcon)("detail")},{id:_.PreferenceSettingId.Feature,title:"%settings.group.feature%",iconClass:(0,b.getIcon)("file-text")}],e.defaultSettingSections={[_.PreferenceSettingId.General]:[{preferences:[{id:"general.theme",localized:"preference.general.theme"},{id:"general.icon",localized:"preference.general.icon"},{id:"general.productIconTheme",localized:"preference.general.productIconTheme"},{id:"general.language",localized:"preference.general.language",hiddenInScope:[b.PreferenceScope.Workspace]}]}],[_.PreferenceSettingId.Editor]:[{title:"Editor",preferences:[{id:"editor.previewMode"},{id:"editor.enablePreviewFromCodeNavigation"},{id:"editor.autoSave",localized:"preference.editor.autoSave"},{id:"editor.autoSaveDelay",localized:"preference.editor.autoSaveDelay"},{id:"workbench.refactoringChanges.showPreviewStrategy",localized:"preference.workbench.refactoringChanges.showPreviewStrategy.title"},{id:"editor.askIfDiff",localized:"preference.editor.askIfDiff"},{id:"editor.cursorStyle",localized:"preference.editor.cursorStyle"},{id:"editor.fontSize",localized:"preference.editor.fontSize"},{id:"editor.fontWeight",localized:"preference.editor.fontWeight"},{id:"editor.fontFamily",localized:"preference.editor.fontFamily"},{id:"editor.lineHeight",localized:"preference.editor.lineHeight"},{id:"editor.trimAutoWhitespace"},{id:"editor.quickSuggestionsDelay",localized:"preference.editor.quickSuggestionsDelay"},{id:"editor.suggestOnTriggerCharacters"},{id:"editor.acceptSuggestionOnEnter"},{id:"editor.acceptSuggestionOnCommitCharacter"},{id:"editor.snippetSuggestions"},{id:"editor.wordBasedSuggestions"},{id:"editor.suggestSelection"},{id:"editor.suggestFontSize"},{id:"editor.suggestLineHeight"},{id:"editor.tabCompletion"},{id:"editor.suggest.filteredTypes"},{id:"editor.suggest.insertMode"},{id:"editor.suggest.filterGraceful"},{id:"editor.suggest.localityBonus"},{id:"editor.suggest.shareSuggestSelections"},{id:"editor.suggest.snippetsPreventQuickSuggestions"},{id:"editor.suggest.showIcons"},{id:"editor.suggest.maxVisibleSuggestions"},{id:"editor.suggest.showMethods"},{id:"editor.suggest.showFunctions"},{id:"editor.suggest.showConstructors"},{id:"editor.suggest.showFields"},{id:"editor.suggest.showVariables"},{id:"editor.suggest.showClasses"},{id:"editor.suggest.showStructs"},{id:"editor.suggest.showInterfaces"},{id:"editor.suggest.showModules"},{id:"editor.suggest.showProperties"},{id:"editor.suggest.showEvents"},{id:"editor.suggest.showOperators"},{id:"editor.suggest.showUnits"},{id:"editor.suggest.showValues"},{id:"editor.suggest.showConstants"},{id:"editor.suggest.showEnums"},{id:"editor.suggest.showEnumMembers"},{id:"editor.suggest.showKeywords"},{id:"editor.suggest.showWords"},{id:"editor.suggest.showColors"},{id:"editor.suggest.showFiles"},{id:"editor.suggest.showReferences"},{id:"editor.suggest.showCustomcolors"},{id:"editor.suggest.showFolders"},{id:"editor.suggest.showTypeParameters"},{id:"editor.suggest.showSnippets"},{id:"editor.suggest.showUsers"},{id:"editor.suggest.showIssues"},{id:"editor.suggest.preview"},{id:"editor.suggest.details.visible"},{id:"editor.inlineSuggest.enabled",localized:"preference.editor.inlineSuggest.enabled"},{id:"editor.inlineSuggest.showToolbar"},{id:"editor.experimental.stickyScroll.enabled",localized:"preference.editor.experimental.stickyScroll.enabled"},{id:"editor.guides.bracketPairs",localized:"preference.editor.guides.bracketPairs"},{id:"editor.guides.indentation",localized:"preference.editor.guides.indentation"},{id:"editor.guides.highlightActiveIndentation",localized:"preference.editor.guides.highlightActiveIndentation"},{id:"editor.detectIndentation",localized:"preference.editor.detectIndentation"},{id:"editor.tabSize",localized:"preference.editor.tabSize"},{id:"editor.insertSpaces",localized:"preference.editor.insertSpace"},{id:"editor.wrapTab",localized:"preference.editor.wrapTab"},{id:"editor.wordWrap",localized:"preference.editor.wordWrap"},{id:"editor.renderLineHighlight",localized:"preference.editor.renderLineHighlight"},{id:"editor.renderWhitespace",localized:"preference.editor.renderWhitespace"},{id:"editor.minimap",localized:"preference.editor.minimap"},{id:"editor.preferredFormatter",localized:"preference.editor.preferredFormatter"},{id:"editor.formatOnSave",localized:"preference.editor.formatOnSave"},{id:"editor.formatOnSaveTimeout",localized:"preference.editor.formatOnSaveTimeout"},{id:"editor.formatOnPaste",localized:"preference.editor.formatOnPaste"},{id:"editor.codeActionsOnSave",localized:"preference.editor.saveCodeActions"},{id:"editor.codeActionsOnSaveNotification",localized:"preference.editor.saveCodeActionsNotification"},{id:"editor.gotoLocation.multiple"},{id:"editor.maxTokenizationLineLength",localized:"preference.editor.maxTokenizationLineLength"},{id:"editor.largeFile",localized:"preference.editor.largeFile"},{id:"editor.readonlyFiles",localized:"preference.editor.readonlyFiles"},{id:"editor.bracketPairColorization.enabled",localized:"preference.editor.bracketPairColorization.enabled"},{id:"workbench.editorAssociations"},{id:"editor.unicodeHighlight.ambiguousCharacters"}]},{title:"Diff Editor",preferences:[{id:"diffEditor.renderSideBySide",localized:"preference.diffEditor.renderSideBySide"},{id:"diffEditor.ignoreTrimWhitespace",localized:"preference.diffEditor.ignoreTrimWhitespace"}]},{title:"Merge Editor",preferences:[{id:"mergeEditor.autoApplyNonConflictChanges",localized:"preference.mergeEditor.autoApplyNonConflictChanges"}]},{title:"Files",preferences:[{id:"files.autoGuessEncoding",localized:"preference.files.autoGuessEncoding.title"},{id:"files.encoding",localized:"preference.files.encoding.title"},{id:"files.eol",localized:"preference.files.eol"},{id:"files.trimFinalNewlines",localized:"preference.files.trimFinalNewlines"},{id:"files.trimTrailingWhitespace",localized:"preference.files.trimTrailingWhitespace"},{id:"files.insertFinalNewline",localized:"preference.files.insertFinalNewline"},{id:"files.exclude",localized:"preference.files.exclude.title"},{id:"files.watcherExclude",localized:"preference.files.watcherExclude.title"},{id:"files.associations",localized:"preference.files.associations.title"}]}],[_.PreferenceSettingId.View]:[{title:"MenuBar",preferences:[{id:"menubar.compactMode",localized:"preference.menubar.mode.compact"}]},{title:"Layout",preferences:[{id:"view.saveLayoutWithWorkspace",localized:"preference.view.saveLayoutWithWorkspace.title"}]},{title:"File Tree",preferences:[]},{title:"Explorer",preferences:[{id:"explorer.fileTree.baseIndent",localized:"preference.explorer.fileTree.baseIndent.title"},{id:"explorer.fileTree.indent",localized:"preference.explorer.fileTree.indent.title"},{id:"explorer.compactFolders",localized:"preference.explorer.compactFolders.title"},{id:"explorer.autoReveal",localized:"preference.explorer.autoReveal"}]},{title:"QuickOpen",preferences:[{id:"workbench.quickOpen.preserveInput"}]},{title:"Search",preferences:[{id:"search.include"},{id:"search.exclude",localized:"preference.search.exclude.title"},{id:"search.useReplacePreview"},{id:"search.searchOnType"},{id:"search.searchOnTypeDebouncePeriod"}]},{title:"Output",preferences:[{id:"output.maxChannelLine",localized:"output.maxChannelLine"},{id:"output.enableLogHighlight",localized:"output.enableLogHighlight"},{id:"output.enableSmartScroll",localized:"output.enableSmartScroll"}]},{title:"Debug",preferences:[{id:"debug.console.wordWrap",localized:"preference.debug.console.wordWrap"},{id:"debug.inline.values",localized:"preference.debug.inline.values"},{id:"debug.toolbar.float",localized:"preference.debug.toolbar.float.title"},{id:"debug.breakpoint.editorHint",localized:"preference.debug.breakpoint.editorHint.title"},{id:"debug.breakpoint.showBreakpointsInOverviewRuler",localized:"preference.debug.breakpoint.showBreakpointsInOverviewRuler"}]}],[_.PreferenceSettingId.Terminal]:[{preferences:[{id:"terminal.type",localized:"preference.terminal.type"},{id:"terminal.fontFamily",localized:"preference.terminal.fontFamily"},{id:"terminal.fontSize",localized:"preference.terminal.fontSize"},{id:"terminal.fontWeight",localized:"preference.terminal.fontWeight"},{id:"terminal.lineHeight",localized:"preference.terminal.lineHeight"},{id:"terminal.cursorBlink",localized:"preference.terminal.cursorBlink"},{id:"terminal.scrollback",localized:"preference.terminal.scrollback"},{id:"terminal.integrated.shellArgs.linux",localized:"preference.terminal.integrated.shellArgs.linux"},{id:"terminal.integrated.copyOnSelection",localized:"preference.terminal.integrated.copyOnSelection"},{id:"terminal.integrated.localEchoEnabled",localized:"preference.terminal.integrated.localEchoEnabled"},{id:"terminal.integrated.localEchoLatencyThreshold",localized:"preference.terminal.integrated.localEchoLatencyThreshold"},{id:"terminal.integrated.localEchoExcludePrograms",localized:"preference.terminal.integrated.localEchoExcludePrograms"},{id:"terminal.integrated.cursorStyle",localized:"preference.terminal.integrated.cursorStyle"},{id:"terminal.integrated.localEchoStyle",localized:"preference.terminal.integrated.localEchoStyle"},{id:"terminal.integrated.xtermRenderType",localized:"preference.terminal.integrated.xtermRenderType"}]}],[_.PreferenceSettingId.Feature]:[{title:"Misc",preferences:[]},{title:"Tree Component",preferences:[{id:"workbench.list.openMode",localized:"preference.workbench.list.openMode.title"}]}]}},26551:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.EditPreferenceDecorationsContribution=void 0;const n=t(85608),a=t(76003),o=t(97267),p=t(41869),b=t(93899),g=t(43718),_=t(57517),E=t(14951),u=n.__importStar(t(20868)),h=t(90684),c=t(19582),r=t(60295),l=t(90184),s=t(76773);let d=class{constructor(m){this.editor=m,this.disposer=new g.Disposable,this._preferences=[],this._currentLine=0,this._editPreferenceDecoration=this.editor.monacoEditor.createDecorationsCollection()}verifyEditor(){var m;return((m=this.editor.currentUri)===null||m===void 0?void 0:m.toString())===s.USER_PREFERENCE_URI.toString()}async getPreferenceUrl(){const m=await this.preferenceSettingsService.getPreferenceUrl(g.PreferenceScope.User);if(m){const v=await this.fileServiceClient.getFileStat(m);return v?g.URI.parse(v.uri):void 0}}async getDocumentModelRef(m){const v=this.editorDocumentModelService.getModelReference(m);return v||this.editorDocumentModelService.createModelReference(m)}contribute(){return this.disposer.addDispose(this.editor.monacoEditor.onMouseDown(async m=>{var v;((v=m.target.range)===null||v===void 0?void 0:v.startLineNumber)!==this.currentLine&&!this.verifyEditor()||m.target.type!==c.MouseTargetType.GUTTER_GLYPH_MARGIN||m.target.detail.isAfterLines||!this.isVisible()||(this.registerMenuItems(this.preferences),this.showContextMenu(m))})),this.disposer.addDispose(this.editor.monacoEditor.onDidChangeCursorPosition(m=>{this.verifyEditor()&&this.onPositionChanged(m)})),this.disposer.addDispose(this.editor.monacoEditor.onContextMenu(m=>(m.event.preventDefault(),m.event.stopPropagation(),!1))),this.disposer.addDispose(this.editor.monacoEditor.onDidChangeConfiguration(()=>{this.editor.monacoEditor.getOption(u.editor.EditorOption.glyphMargin)||this.hide()})),this.disposer.addDispose(g.Disposable.create(()=>{this.hide(),this.menuRegistry.unregisterMenuId(b.MenuId.SettingJSONGlyphMarginContext)})),this.disposer.addDispose(this.commandRegistry.registerCommand(r.SettingJSONGlyphMarginEdit,{execute:(m,v)=>{m&&v&&(v==="true"&&(v=!0),v==="false"&&(v=!1),this.preferenceSettingsService.setPreference(m,v,g.PreferenceScope.User))}})),this.disposer}get preferences(){return this._preferences}get currentLine(){return this._currentLine}show(m,v,y){this._preferences=y;const S=[];S.push({options:{description:"edit-preference-widget-decoration",glyphMarginClassName:(0,o.getIcon)("edit")+" setting-edit-glyph",glyphMarginHoverMessage:new h.MarkdownString().appendText(v),stickiness:u.editor.TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges},range:{startLineNumber:m,startColumn:1,endLineNumber:m,endColumn:1}}),this._editPreferenceDecoration.set(S)}hide(){this._editPreferenceDecoration.clear()}isVisible(){return this._editPreferenceDecoration.length>0}async getPreferencesKeyAtLineNumber(m){const v=new RegExp(/\"((?!,).)*\"+((\s+?)?)\:/g),y=await this.getPreferenceUrl();if(!y)return[];const S=await this.getDocumentModelRef(y),T=S.instance.getMonacoModel().getLineContent(m);S.dispose();const w=(T.match(v)||[]).map(O=>{const M=/\"(.*?)\"/g.exec(O);return M&&M[1]||""}),I=this.preferenceSchemaProvider.getCombinedSchema().properties;return w.filter(O=>{const M=I[O];return M?M.type==="boolean"||M.enum:!1})}async onPositionChanged(m){this.hide();const{position:{lineNumber:v}}=m;this._currentLine=v;const y=await this.getPreferencesKeyAtLineNumber(v);y.length>0?this.editor.monacoEditor.getOption(u.editor.EditorOption.glyphMargin)&&this.marginFreeFromOtherDecorations(v)&&this.show(v,(0,g.localize)("editTtile"),y):this.hide()}marginFreeFromOtherDecorations(m){const v=this.editor.monacoEditor.getLineDecorations(m);if(v){for(const{options:y}of v)if(y.glyphMarginClassName&&y.glyphMarginClassName.indexOf((0,o.getIcon)("edit"))===-1)return!1}return!0}async registerMenuItems(m){if(m.length===1){const v=this.getActions(m[0]);this.disposer.addDispose(this.menuRegistry.registerMenuItems(b.MenuId.SettingJSONGlyphMarginContext,v.map(y=>({command:{id:r.SettingJSONGlyphMarginEdit.id,label:y},group:"navigation",extraTailArgs:[m[0],y]}))))}else m.forEach(v=>{const y=`${b.MenuId.SubSettingJSONGlyphMarginContext}_${v}`;this.disposer.addDispose(this.menuRegistry.registerMenuItem(b.MenuId.SettingJSONGlyphMarginContext,{submenu:y,label:v,group:"navigation"}));const S=this.getActions(v);this.disposer.addDispose(this.menuRegistry.registerMenuItems(y,S.map(A=>({command:{id:r.SettingJSONGlyphMarginEdit.id,label:A},group:"navigation",extraTailArgs:[v,A]}))))})}getActions(m){const y=this.preferenceSchemaProvider.getCombinedSchema().properties[m];return y.type==="boolean"?["true","false"]:y.enum?y.enum.map(S=>S.toString()):[]}showContextMenu(m){m.event.preventDefault(),m.event.stopPropagation();const v=this.menuService.createMenu({id:b.MenuId.SettingJSONGlyphMarginContext,config:{separator:"inline"}}),y=v.getMergedMenuNodes();v.dispose(),setTimeout(()=>{this.ctxMenuRenderer.show({anchor:m.event.browserEvent,menuNodes:y,onHide:()=>{const S=(A,T="menu")=>this.menuRegistry.getMenuItems(A).map(D=>T==="sub"?D.submenu:D.command).filter(Boolean);S(b.MenuId.SettingJSONGlyphMarginContext,"sub").forEach(A=>{this.menuRegistry.unregisterMenuItem(b.MenuId.SettingJSONGlyphMarginContext,A),S(A).forEach(T=>{this.menuRegistry.unregisterMenuItem(A,T.id)})}),S(b.MenuId.SettingJSONGlyphMarginContext).forEach(A=>{this.menuRegistry.unregisterMenuItem(b.MenuId.SettingJSONGlyphMarginContext,A.id)}),this.menuRegistry.unregisterMenuItem(b.MenuId.SettingJSONGlyphMarginContext,b.MenuId.SubSettingJSONGlyphMarginContext)}})},10)}};n.__decorate([(0,a.Autowired)(p.IPreferenceSettingsService),n.__metadata("design:type",l.PreferenceSettingsService)],d.prototype,"preferenceSettingsService",void 0),n.__decorate([(0,a.Autowired)(b.ICtxMenuRenderer),n.__metadata("design:type",b.ICtxMenuRenderer)],d.prototype,"ctxMenuRenderer",void 0),n.__decorate([(0,a.Autowired)(p.PreferenceSchemaProvider),n.__metadata("design:type",p.PreferenceSchemaProvider)],d.prototype,"preferenceSchemaProvider",void 0),n.__decorate([(0,a.Autowired)(_.IEditorDocumentModelService),n.__metadata("design:type",Object)],d.prototype,"editorDocumentModelService",void 0),n.__decorate([(0,a.Autowired)(E.IFileServiceClient),n.__metadata("design:type",Object)],d.prototype,"fileServiceClient",void 0),n.__decorate([(0,a.Autowired)(b.AbstractContextMenuService),n.__metadata("design:type",b.AbstractContextMenuService)],d.prototype,"menuService",void 0),n.__decorate([(0,a.Autowired)(b.IMenuRegistry),n.__metadata("design:type",b.IMenuRegistry)],d.prototype,"menuRegistry",void 0),n.__decorate([(0,a.Autowired)(g.CommandRegistry),n.__metadata("design:type",Object)],d.prototype,"commandRegistry",void 0),d=n.__decorate([(0,a.Injectable)({multiple:!0}),n.__param(0,(0,a.Optional)()),n.__metadata("design:paramtypes",[Object])],d),e.EditPreferenceDecorationsContribution=d},15789:(x,e,t)=>{"use strict";var n;Object.defineProperty(e,"__esModule",{value:!0}),e.NextPreferenceItem=void 0;const a=t(85608),o=a.__importDefault(t(53373)),p=a.__importDefault(t(12784)),b=a.__importStar(t(14041)),g=t(76003),_=t(97267),E=t(56849),u=t(41869),h=t(83569),c=t(90184),r=a.__importDefault(t(80881)),l=/`#(.+)#`/gi,s="none",d=({preferenceId:O,localizedName:M,preference:R,scope:P})=>{var L;const N=(0,u.useInjectable)(u.PreferenceService),k=(0,u.useInjectable)(u.IPreferenceSettingsService),B=(0,u.useInjectable)(u.PreferenceSchemaProvider),F=N.getProvider(P),{value:W,effectingScope:j}=k.getPreference(O,P),[V,K]=(0,b.useState)(F.get(O)),[H,z]=(0,b.useState)(),[G,U]=(0,b.useState)(()=>k.getEnumLabels(O));(0,b.useEffect)(()=>{const se=B.getPreferenceProperty(O);z(se);const ae=new u.DisposableCollection;return ae.push(F.onDidPreferencesChanged(de=>{if(de.default&&Object.prototype.hasOwnProperty.call(de.default,O)&&de.default[O].scope===P){const q=de.default[O].newValue;K(q)}})),ae.push(k.onDidEnumLabelsChange(O)((0,p.default)(()=>{z(B.getPreferenceProperty(O)),U(k.getEnumLabels(O))},c.PreferenceSettingsService.DEFAULT_CHANGE_DELAY))),()=>{ae.dispose()}},[]);let $=H;if($||($=B.getPreferenceProperty(O)),!$)return b.default.createElement("div",{className:(0,o.default)({[r.default.preference_item]:!0})},O," schema not found.");const Y=(L=N.resolve(O,void 0,void 0,void 0,u.PreferenceScope.Default).value)!==null&&L!==void 0?L:$.default,Q=V!==void 0&&String(V)!==String(Y),te=()=>{if($){const se={preferenceName:O,scope:P,effectingScope:j,schema:$,labels:G,currentValue:V===void 0?W:V,defaultValue:Y,localizedName:M,localizedDescription:{description:R.description,markdownDescription:R.markdownDescription},renderedDescription:y({name:M,description:R.description,markdownDescription:R.markdownDescription}),hasValueInScope:V!==void 0,isModified:Q};switch($.type){case"boolean":return b.default.createElement(T,Object.assign({},se));case"integer":case"number":return $.enum?b.default.createElement(D,Object.assign({},se)):b.default.createElement(A,Object.assign({},se,{isNumber:!0}));case"string":return $.enum?b.default.createElement(D,Object.assign({},se)):b.default.createElement(A,Object.assign({},se));case"array":return $.items&&$.items.type==="string"?b.default.createElement(I,Object.assign({},se)):b.default.createElement(w,Object.assign({},se));default:return b.default.createElement(w,Object.assign({},se))}}};return b.default.createElement("div",{className:(0,o.default)({[r.default.preference_item]:!0,[r.default.modified]:Q}),"data-id":O},te())};e.NextPreferenceItem=d;const f=O=>{var M;const R=(0,u.useInjectable)(u.IPreferenceSettingsService);if(!O)return null;const P=O.match(l);if(!P)return O;let L=O;const N=[];for(const k of P){if(!L)continue;const B=k.slice(2,k.length-2),F=(M=h.knownPrefIdMappings[B])!==null&&M!==void 0?M:B,W=R.getPreferenceViewDesc(F);if(W){const j=(0,h.getPreferenceItemLabel)(W),[V,K]=L.split(k,2);V&&N.push(b.default.createElement("span",{key:N.length},V)),L=K;const H=b.default.createElement("a",{onClick:()=>{R.search(j)},key:F},j);N.push(H)}}return L&&N.push(b.default.createElement("span",{key:N.length},L)),N};let m=n=class extends E.DefaultMarkedRenderer{codespan(M){var R;if(M.startsWith("#")&&M.endsWith("#")){const P=M.slice(1,M.length-1),L=(R=h.knownPrefIdMappings[P])!==null&&R!==void 0?R:P,N=this.preferenceSettingService.getPreferenceViewDesc(L);if(N){const k=(0,h.getPreferenceItemLabel)(N);return(0,E.linkify)(`${n.openerScheme}${k}`,L,k)}return super.codespan(L)}return super.codespan(M)}};m.openerScheme="prefTitle://",a.__decorate([(0,g.Autowired)(u.IPreferenceSettingsService),a.__metadata("design:type",c.PreferenceSettingsService)],m.prototype,"preferenceSettingService",void 0),m=n=a.__decorate([(0,g.Injectable)()],m);const v=O=>{const M=(0,u.useInjectable)(u.IOpenerService),R=(0,u.useInjectable)(m),P=(0,u.useInjectable)(u.IPreferenceSettingsService);return b.default.createElement(E.Markdown,{opener:{open(L){if(L.startsWith(m.openerScheme)){const N=L.slice(m.openerScheme.length);return P.search(N),!0}return M.open(L)}},value:O,renderer:R})},y=O=>{var M;const R=(0,u.replaceLocalizePlaceholder)((M=O.description)!==null&&M!==void 0?M:O.markdownDescription);return R?b.default.createElement("div",{className:r.default.desc},O.markdownDescription?v(R):f(R)):b.default.createElement("div",{className:r.default.desc},O.name)},S=({preferenceName:O,scope:M,effectingScope:R,showReset:P})=>{const L=(0,u.useInjectable)(u.IPreferenceSettingsService);return b.default.createElement("span",{className:r.default.preference_status},R===u.PreferenceScope.Workspace&&M===u.PreferenceScope.User?b.default.createElement("span",{onClick:()=>{L.selectScope(u.PreferenceScope.Workspace),L.scrollToPreference(O)},className:r.default.preference_overwritten},(0,u.localize)("preference.overwrittenInWorkspace")):void 0,R===u.PreferenceScope.User&&M===u.PreferenceScope.Workspace?b.default.createElement("span",{onClick:()=>{L.selectScope(u.PreferenceScope.User),L.scrollToPreference(O)},className:r.default.preference_overwritten},(0,u.localize)("preference.overwrittenInUser")):void 0,P?b.default.createElement("span",{className:(0,o.default)(r.default.preference_reset,(0,u.getIcon)("rollback")),onClick:()=>{L.reset(O,M)}}):void 0)};function A({preferenceName:O,localizedName:M,currentValue:R,renderedDescription:P,isNumber:L,effectingScope:N,scope:k,isModified:B}){const F=(0,u.useInjectable)(u.PreferenceService),W=(0,u.useInjectable)(u.PreferenceSchemaProvider),[j,V]=(0,b.useState)();(0,b.useEffect)(()=>{V(R)},[R]);const K=z=>{H(L&&/^[0-9]+$/.test(z)?Number(z):z)||F.set(O,z,k)};function H(z){const G=W.validate(O,z);if(!G.valid)return{type:2,message:G.reason}}return b.default.createElement(b.default.Fragment,null,b.default.createElement("div",{className:(0,o.default)(r.default.key,r.default.item)},M," ",b.default.createElement(S,{preferenceName:O,scope:k,effectingScope:N,showReset:B})),P,b.default.createElement("div",{className:r.default.control_wrap},b.default.createElement("div",{className:r.default.text_control},b.default.createElement(_.ValidateInput,{type:L?"number":"text",validate:H,onBlur:()=>{K(j)},onValueChange:z=>{V(z)},value:j}))))}function T({preferenceName:O,localizedName:M,renderedDescription:R,currentValue:P,effectingScope:L,scope:N,isModified:k}){const B=(0,u.useInjectable)(u.PreferenceService),[F,W]=(0,b.useState)();(0,b.useEffect)(()=>{W(P)},[P]);const j=V=>{W(V),B.set(O,V,N)};return b.default.createElement(b.default.Fragment,null,b.default.createElement("div",{className:(0,o.default)(r.default.key)},M," ",b.default.createElement(S,{preferenceName:O,scope:N,effectingScope:L,showReset:k})),b.default.createElement("div",{className:r.default.check},b.default.createElement(_.CheckBox,{checked:F,onChange:V=>{j(V.target.checked)}}),R))}function D({preferenceName:O,localizedName:M,renderedDescription:R,currentValue:P,defaultValue:L,schema:N,labels:k,effectingScope:B,scope:F,isModified:W}){const j=(0,u.useInjectable)(u.PreferenceService),V=(0,u.useInjectable)(u.ILogger),K=P??L,H=(0,b.useMemo)(()=>N.enumDescriptions&&N.enum&&N.enumDescriptions[N.enum.indexOf(P)]||"",[N]),[z,G]=(0,b.useState)(H),U=(0,b.useCallback)(se=>{j.set(O,se,F)},[j]),$=(0,b.useCallback)(()=>{const se=N.enum?[...N.enum]:[];return L&&!se.includes(L)&&(V.warn(`default value(${L}) of ${O} not found in its enum field`),se.push(L)),se.map((ae,de)=>{typeof ae=="boolean"&&(ae=String(ae));const q=(0,u.replaceLocalizePlaceholder)(String(k[ae]||ae));return b.default.createElement(_.Option,{value:ae,label:q,key:`${de}-${q}`,className:r.default.select_option},q,String(ae)===String(L)&&b.default.createElement("div",{className:r.default.select_default_option_tips},(0,u.localize)("preference.enum.default")))})},[N.enum,k]),Y=()=>b.default.createElement(_.Option,{value:(0,u.localize)("preference.stringArray.none"),key:s,label:(0,u.localize)("preference.stringArray.none"),disabled:!0},(0,u.localize)("preference.stringArray.none")),Q=N.enum&&N.enum.length>0?$():Y(),te=(0,b.useCallback)((se,ae)=>{if(N.enumDescriptions){const de=N.enumDescriptions[ae];G(de||"")}},[N.enumDescriptions,G]);return b.default.createElement(b.default.Fragment,null,b.default.createElement("div",{className:r.default.key},M," ",b.default.createElement(S,{preferenceName:O,scope:F,effectingScope:B,showReset:W})),R,b.default.createElement("div",{className:r.default.control_wrap},b.default.createElement(_.Select,{dropdownRenderType:"absolute",maxHeight:"200",onChange:U,value:K,className:r.default.select_control,description:z,onMouseEnter:te,notMatchWarning:W?(0,u.formatLocalize)("preference.item.notValid",K):""},Q)))}function w({preferenceName:O,localizedName:M,renderedDescription:R,effectingScope:P,scope:L,hasValueInScope:N}){const k=(0,u.useInjectable)(u.IPreferenceSettingsService),B=async()=>{k.openJSON(L,O)};return b.default.createElement(b.default.Fragment,null,b.default.createElement("div",{className:r.default.key},M," ",b.default.createElement(S,{preferenceName:O,scope:L,effectingScope:P,showReset:N})),R,b.default.createElement("div",{className:r.default.control_wrap},b.default.createElement("a",{onClick:B},(0,u.localize)("preference.editSettingsJson"))))}function I({preferenceName:O,localizedName:M,currentValue:R,renderedDescription:P,effectingScope:L,scope:N,isModified:k}){const B=(0,u.useInjectable)(u.PreferenceService),[F,W]=(0,b.useState)([]),[j,V]=(0,b.useState)(),[K,H]=(0,b.useState)(),[z,G]=(0,b.useState)(-1);(0,b.useEffect)(()=>{W(R||[])},[R]),(0,b.useEffect)(()=>{z>=0?H(F[z]):H("")},[z]);const U=de=>{W(de),B.set(O,de,N)},$=()=>{if(j){const de=F.slice(0);if(de.indexOf(j)>-1)return;de.push(j),V(""),U(de)}},Y=de=>{const q=F.slice(0);q.splice(de,1),q.length?U(q):U([])},Q=de=>{G(de)},te=de=>{V(de)},se=F.map((de,q)=>{const _e=JSON.stringify(de);return z>=0&&z===q?b.default.createElement("li",{className:r.default.array_items,key:`${q}-${_e}`}):b.default.createElement("li",{className:r.default.array_items,key:`${q}-${_e}`},b.default.createElement("div",{className:r.default.array_item},typeof de=="string"?de:_e),b.default.createElement("div",{className:r.default.operate},b.default.createElement(_.Button,{type:"icon",title:(0,u.localize)("preference.stringArray.operate.edit"),onClick:()=>{Q(q)},className:(0,o.default)((0,u.getIcon)("edit"),r.default.array_item)}),b.default.createElement(_.Button,{type:"icon",title:(0,u.localize)("preference.stringArray.operate.delete"),onClick:()=>{Y(q)},className:(0,o.default)((0,u.getIcon)("delete"),r.default.array_item)})))}),ae=()=>{const de=()=>{const _e=F.slice(0);K?_e[z]=K:_e.splice(z,1),W(_e),B.set(O,_e,N),G(-1)},q=_e=>{H(_e)};if(z>=0)return b.default.createElement("div",{className:r.default.array_edit_wrapper,style:{top:z*24}},b.default.createElement(_.Input,{type:"text",className:r.default.array_edit_input,value:K,onValueChange:q,onPressEnter:de,addonAfter:[b.default.createElement("div",{className:r.default.array_edit_input_tip},(0,u.localize)("preference.stringArray.operate.editTip"))]}))};return b.default.createElement(b.default.Fragment,null,b.default.createElement("div",{className:r.default.key},M," ",b.default.createElement(S,{preferenceName:O,scope:N,effectingScope:L,showReset:k})),P,b.default.createElement("div",{className:r.default.control_wrap},b.default.createElement("ul",{className:r.default.array_items_wrapper},se,ae()),b.default.createElement("div",{className:r.default.preferences_flex_row},b.default.createElement(_.Input,{type:"text",className:r.default.text_control,value:j,onValueChange:te}),b.default.createElement(_.Button,{className:r.default.add_button,onClick:$},(0,u.localize)("preference.array.additem","Add")))))}},99187:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.PreferenceItem=e.PreferenceView=void 0;const n=t(85608),a=n.__importDefault(t(12784)),o=n.__importStar(t(14041)),p=n.__importDefault(t(19686)),b=t(97267),g=t(91802),_=t(41869),E=t(99333),u=n.__importDefault(t(39572)),h=t(83569),c=t(15789),r=n.__importDefault(t(80881)),l="preferenceViewIndexTree",s=8,d=()=>{const S=(0,_.useInjectable)(_.IPreferenceSettingsService),[A,T]=(0,o.useState)([]),[D,w]=(0,o.useState)([]),I=(0,u.default)(()=>{const B=S.currentScope,F=S.currentSearch,W=S.getSettingGroups(B,F),j=[],V=[];for(let z=0;z<W.length;z++){const G=W[z],U=S.getResolvedSections(G.id,B,F);j.push(...K(G,U)),V.push(H(z,G,U))}T(j),w(V);function K(z,G){const U=[],$=(Y,Q="")=>{let te=Q;Y.title&&(te=Q+"/"+Y.title);const se=[];return Y.component?se.push({component:Y.component,scope:B}):Y.preferences?se.push(...Y.preferences.map(ae=>({id:"preference:"+ae.id,preference:ae,scope:B,_path:te}))):Y.subSections&&Y.subSections.forEach(ae=>{const de=$(ae,te);se.push(...de)}),se.length>0&&Y.title&&se.unshift({id:"section:"+Y.title,title:Y.title,scope:B,_path:te}),se};for(const Y of G){const Q=$(Y,z.title);U.push(...Q)}return U.length>0&&z.title&&U.unshift({title:z.title,id:"group:"+z.id,scope:B,_path:z.title}),U}function H(z,G,U){const{id:$,title:Y,iconClass:Q}=G,te={label:(0,h.toNormalCase)(Y),iconClassName:Q,groupId:$,order:z,className:r.default.group_item},se=[];return U.forEach((ae,de)=>{const q=m($,ae,de,1);q&&se.push(q)}),te.children=se,se.length>0?te.expandable=!0:te.expandable=!1,te}},16);(0,o.useEffect)(()=>{const B=new _.Disposable(S.emitter.on("settingsGroupsChange",()=>{I.run()}),S.emitter.on("currentSearchChange",()=>{I.run()}),S.emitter.on("currentScopeChange",()=>{I.run()}),S.emitter.on("settingsSectionsChange",()=>{I.run()}));return I.run(),()=>{B.dispose()}},[]);const O=(0,_.useInjectable)(_.LabelService),M=(0,o.useCallback)((B,F)=>O.getIcon(_.URI.parse(B),F),[]),R=(0,o.useRef)(null),P=(0,a.default)(B=>{S.search(B)},100,{maxWait:300});(0,o.useEffect)(()=>{const B=S.onFocus(()=>{R&&R.current&&(R.current.focus(),R.current.select())});return()=>{B.dispose()}},[]);const L=(0,_.useEventDrivenState)(S.emitter,"currentSearchChange",()=>S.currentSearch),N=(0,_.useEventDrivenState)(S.emitter,"tabListChange",()=>S.tabList),k=(0,_.useEventDrivenState)(S.emitter,"tabIndexChange",()=>S.tabIndex);return o.default.createElement(b.ComponentContextProvider,{value:{getIcon:_.getIcon,localize:_.localize,getResourceIcon:M}},o.default.createElement("div",{className:r.default.preferences},o.default.createElement("div",{className:r.default.preferences_header},o.default.createElement(b.Tabs,{className:r.default.tabs,value:k,onChange:B=>{S.updateTabIndex(B)},tabs:N.map(B=>(0,_.localize)(B.label))}),o.default.createElement("div",{className:r.default.search_pref},o.default.createElement(b.Input,{autoFocus:!0,value:L,placeholder:(0,_.localize)("preference.searchPlaceholder"),onValueChange:P,ref:R,hasClear:!0}))),A.length>0?o.default.createElement(E.SplitPanel,{id:"preference-panel",resizeHandleClassName:r.default.devider,className:r.default.preferences_body,direction:"left-to-right"},o.default.createElement(v,{treeData:D,"data-sp-defaultSize":180,"data-sp-minSize":150}),o.default.createElement(y,{tabIndex:k,items:A,"data-sp-flex":1})):o.default.createElement("div",{className:r.default.preference_noResults},L?(0,_.formatLocalize)("preference.noResults",L):(0,_.formatLocalize)("preference.empty"))))};e.PreferenceView=d;const f=({data:S,index:A})=>{var T;if(S.title)return!((T=S.id)===null||T===void 0)&&T.startsWith("group:")?o.default.createElement("div",{className:r.default.group_title,id:S.id},S.title):o.default.createElement("div",{className:r.default.section_title,id:S.id},S.title);if(S.component)return o.default.createElement(S.component,{scope:S.scope});if(S.preference)return o.default.createElement(c.NextPreferenceItem,{key:`${A} - ${S.preference.id} - ${S.scope}`,preference:S.preference,preferenceId:S.preference.id,localizedName:S.preference.label,scope:S.scope})};e.PreferenceItem=f;const m=(S,A,T,D)=>{let w;A.title&&(w={label:A.title,section:A.title,groupId:S,order:T,indentOffset:D===1?-s:-(s>>1),className:r.default.index_item});const I=[];return A.subSections&&A.subSections.forEach((O,M)=>{const R=m(S,O,M,D+1);R&&I.push(R)}),w&&I&&I.length>0&&(w.children=I,w.expandable=!0),w},v=S=>{const A=(0,_.useInjectable)(_.IPreferenceSettingsService),{treeData:T}=S;return o.default.createElement(p.default,{className:r.default.preferences_indexes},({width:D,height:w})=>o.default.createElement(b.BasicRecycleTree,{treeName:l,sortComparator:(I,O)=>{if(typeof I.order<"u"&&typeof O.order<"u")return I.order>O.order?1:I.order<O.order?-1:0},height:w,width:D,itemHeight:26,baseIndent:s,indent:12,treeData:T,onClick:(I,O)=>{const M=O&&O._raw;M&&(M.section?A.scrollToSection(M.section):M.groupId&&A.scrollToGroup(M.groupId))},onReady:I=>{A.handleTreeHandler(I)}}))},y=S=>{const A=(0,_.useInjectable)(_.IPreferenceSettingsService),[T,D]=(0,o.useState)(void 0),{items:w}=S;(0,o.useEffect)(()=>{var R;T&&(!((R=A.treeHandler)===null||R===void 0)&&R.focusItem)&&A.treeHandler.focusItem(T)},[S.tabIndex,A.treeHandler,T]);const I=R=>{var P;if(R){const L=w.findIndex(N=>N.id===R);L>=0&&((P=A.listHandler)===null||P===void 0||P.scrollToIndex({index:L,behavior:"auto",align:"start"}))}},O=(0,u.default)(R=>{const P=w[R.startIndex+1];P&&P._path&&D(P._path)},_.FRAME_THREE,{leading:!0,trailing:!0}),M=(0,_.useEventDrivenState)(A.emitter,"currentSelectIdChange",()=>A.currentSelectId);return(0,o.useEffect)(()=>{M&&I(M)},[w,M]),o.default.createElement("div",{className:r.default.preferences_items},o.default.createElement(g.VirtualList,{data:w,template:e.PreferenceItem,className:r.default.preference_section,refSetter:A.handleListHandler,onRangeChanged:O.run}))}},76773:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.UserPreferenceProvider=e.USER_PREFERENCE_URI=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(78132),b=t(11461);e.USER_PREFERENCE_URI=new o.URI().withScheme(o.Schemes.userStorage).withPath("settings.json");let g=class extends b.AbstractResourcePreferenceProvider{getUri(){return e.USER_PREFERENCE_URI}getScope(){return p.PreferenceScope.User}};g=n.__decorate([(0,a.Injectable)()],g),e.UserPreferenceProvider=g},25947:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});const n=t(85608);n.__exportStar(t(84017),e),n.__exportStar(t(57506),e)},57506:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.UserStorageContribution=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(14951),b=t(2156),g=t(83569);let _=class{initialize(){this.fileSystem.registerProvider(o.Schemes.userStorage,this.userStorageService)}};n.__decorate([(0,a.Autowired)(g.IUserStorageService),n.__metadata("design:type",Object)],_.prototype,"userStorageService",void 0),n.__decorate([(0,a.Autowired)(p.IFileServiceClient),n.__metadata("design:type",b.FileServiceClient)],_.prototype,"fileSystem",void 0),_=n.__decorate([(0,o.Domain)(o.ClientAppContribution)],_),e.UserStorageContribution=_},84017:(x,e,t)=>{"use strict";var n;Object.defineProperty(e,"__esModule",{value:!0}),e.UserStorageServiceImpl=e.DEFAULT_USER_STORAGE_FOLDER=void 0;const a=t(85608),o=a.__importDefault(t(82451)),p=t(76003),b=t(41869),g=t(43718),_=t(42933);e.DEFAULT_USER_STORAGE_FOLDER=".sumi";const E={recursive:!1,excludes:["**/logs/**"]};let u=n=class{static toUserStorageUri(c,r){const l=this.getRelativeUserStoragePath(c,r);return new b.URI("").withScheme(g.Schemes.userStorage).withPath(l).withFragment(r.fragment).withQuery(r.query)}static getRelativeUserStoragePath(c,r){return r.toString().slice(c.toString().length+1)}static toFilesystemURI(c,r){return c.withPath(c.path.join(r.path.toString()))}constructor(){this.capabilities=2,this.onDidChangeCapabilities=g.Event.None,this.toDispose=new b.DisposableCollection,this.onDidChangeFileEmitter=new b.Emitter,this._whenReady=this.init()}get whenReady(){return this._whenReady}get onDidChangeFile(){return this.onDidChangeFileEmitter.event}async init(){const c=await this.fileServiceClient.getCurrentUserHome();if(c){const r=new b.URI(c.uri).resolve(this.appConfig.userPreferenceDirName||this.appConfig.preferenceDirName||e.DEFAULT_USER_STORAGE_FOLDER);await this.fileServiceClient.access(r.toString())||await this.fileServiceClient.createFolder(r.toString()),this.userStorageFolder=r}this.toDispose.push(this.onDidChangeFileEmitter)}readDirectory(c){throw new Error("Method not implemented.")}createDirectory(c){throw new Error("Method not implemented.")}async watch(c,r){await this.whenReady;const l=n.toFilesystemURI(this.userStorageFolder,b.URI.from(c)),s=(0,o.default)(E,r),d=await this.fileServiceClient.watchFileChanges(l.parent,s.excludes);return this.toDispose.push(d),this.toDispose.push(d.onFilesChanged(f=>{const m=[];for(const v of f)v.uri===l.toString()&&m.push(v);m.length>0&&this.onDidChangeFileEmitter.fire(m.map(v=>({uri:n.toUserStorageUri(this.userStorageFolder,new b.URI(v.uri)).toString(),type:v.type})))})),d.watchId}async readFile(c){await this.whenReady;const r=n.toFilesystemURI(this.userStorageFolder,b.URI.from(c));try{const{content:l}=await this.fileServiceClient.readFile(r.toString());return l.buffer}catch(l){throw new Error(l)}}async writeFile(c,r,l){await this.whenReady;const s=n.toFilesystemURI(this.userStorageFolder,b.URI.from(c));try{let d=await this.fileServiceClient.getFileStat(s.toString());d?await this.fileServiceClient.setContent(d,r,l):(d=await this.fileServiceClient.createFile(s.toString()),await this.fileServiceClient.setContent(d,r,l))}catch(d){throw new Error(d)}}delete(c,r){throw new Error("Method not implemented.")}rename(c,r,l){throw new Error("Method not implemented.")}copy(c,r,l){throw new Error("Method not implemented.")}async stat(c){await this.whenReady;const r=n.toFilesystemURI(this.userStorageFolder,b.URI.from(c)),l=await this.fileServiceClient.getFileStat(r.toString());if(l)return l}async access(c,r){await this.whenReady;const l=n.toFilesystemURI(this.userStorageFolder,b.URI.from(c));return this.fileServiceClient.access(l.toString(),r)}};a.__decorate([(0,p.Autowired)(_.IFileServiceClient),a.__metadata("design:type",Object)],u.prototype,"fileServiceClient",void 0),a.__decorate([(0,p.Autowired)(b.ILogger),a.__metadata("design:type",Object)],u.prototype,"logger",void 0),a.__decorate([(0,p.Autowired)(b.AppConfig),a.__metadata("design:type",Object)],u.prototype,"appConfig",void 0),u=n=a.__decorate([(0,p.Injectable)(),a.__metadata("design:paramtypes",[])],u),e.UserStorageServiceImpl=u},46392:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.WorkspaceFilePreferenceProvider=e.WorkspaceFilePreferenceProviderFactory=e.WorkspaceFilePreferenceProviderOptions=void 0;const n=t(85608),a=t(76003),o=t(78132),p=t(51500),b=t(84435),g=t(11461);let _=class{};_=n.__decorate([(0,a.Injectable)()],_),e.WorkspaceFilePreferenceProviderOptions=_,e.WorkspaceFilePreferenceProviderFactory=Symbol("WorkspaceFilePreferenceProviderFactory");let E=class extends g.AbstractResourcePreferenceProvider{getUri(){return this.options.workspaceUri}parse(h){const c=super.parse(h);return b.WorkspaceData.is(c)?c.settings||{}:{}}getPath(h){return["settings",h]}getScope(){return o.PreferenceScope.Workspace}getDomain(){return this.workspaceService.tryGetRoots().map(h=>h.uri)}};n.__decorate([(0,a.Autowired)(p.IWorkspaceService),n.__metadata("design:type",Object)],E.prototype,"workspaceService",void 0),n.__decorate([(0,a.Autowired)(_),n.__metadata("design:type",_)],E.prototype,"options",void 0),E=n.__decorate([(0,a.Injectable)()],E),e.WorkspaceFilePreferenceProvider=E},58705:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.WorkspacePreferenceProvider=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(78132),b=t(51500),g=t(46392);let _=class extends p.PreferenceProvider{constructor(){super(),this.toDisposeOnEnsureDelegateUpToDate=new o.DisposableCollection,this.init()}async init(){this._ready.resolve(),this.ensureDelegateUpToDate(),this.workspaceService.onWorkspaceLocationChanged(()=>this.ensureDelegateUpToDate())}getConfigUri(u=this.ensureResourceUri()){const h=this.delegate;return h&&h.getConfigUri(u)}get delegate(){return this._delegate||this.ensureDelegateUpToDate(),this._delegate}ensureDelegateUpToDate(){const u=this.createDelegate();this._delegate!==u&&(this.toDisposeOnEnsureDelegateUpToDate.dispose(),this.toDispose.push(this.toDisposeOnEnsureDelegateUpToDate),this._delegate=u,u&&this.toDisposeOnEnsureDelegateUpToDate.pushAll([u,u.onDidPreferencesChanged(h=>{this.emitPreferencesChangedEvent(h)})]))}createDelegate(){const u=this.workspaceService.workspace;if(u)return this.workspaceService.isMultiRootWorkspaceOpened?this.workspaceFileProviderFactory({workspaceUri:new o.URI(u.uri)}):this.foldersPreferenceProvider}doGet(u,h=this.ensureResourceUri(),c){const r=this.delegate;return r?r.get(u,h,c):void 0}doResolve(u,h=this.ensureResourceUri(),c){const r=this.delegate;return r?r.resolve(u,h,c):{}}getPreferences(u=this.ensureResourceUri(),h){const c=this.delegate;return c?c.getPreferences(u,h):void 0}getLanguagePreferences(u=this.ensureResourceUri()){const h=this.delegate;return h?h.getLanguagePreferences(u):void 0}async doSetPreference(u,h,c=this.ensureResourceUri(),r){const l=this.delegate;return l?l.setPreference(u,h,c,r):!1}ensureResourceUri(){if(this.workspaceService.workspace&&!this.workspaceService.isMultiRootWorkspaceOpened)return this.workspaceService.workspace.uri}};n.__decorate([(0,a.Autowired)(b.IWorkspaceService),n.__metadata("design:type",Object)],_.prototype,"workspaceService",void 0),n.__decorate([(0,a.Autowired)(g.WorkspaceFilePreferenceProviderFactory),n.__metadata("design:type",Function)],_.prototype,"workspaceFileProviderFactory",void 0),n.__decorate([(0,a.Autowired)(p.PreferenceProvider,{tag:p.PreferenceScope.Folder}),n.__metadata("design:type",p.PreferenceProvider)],_.prototype,"foldersPreferenceProvider",void 0),_=n.__decorate([(0,a.Injectable)(),n.__metadata("design:paramtypes",[])],_),e.WorkspacePreferenceProvider=_},60295:(x,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SettingJSONGlyphMarginEdit=void 0,e.SettingJSONGlyphMarginEdit={id:"preference.setting.glyphMargin.edit"}},83569:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});const n=t(85608);n.__exportStar(t(99112),e),n.__exportStar(t(36858),e),n.__exportStar(t(49132),e),n.__exportStar(t(29728),e)},49132:(x,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.knownPrefIdMappings=e.PreferenceSettingId=void 0;var t;(function(n){n.General="general",n.Editor="editor",n.Terminal="terminal",n.Feature="feature",n.View="view"})(t=e.PreferenceSettingId||(e.PreferenceSettingId={})),e.knownPrefIdMappings={"workbench.editor.enablePreview":"editor.previewMode"}},99112:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.toNormalCase=e.getPreferenceItemLabel=e.toPreferenceReadableName=e.knownTermMappings=e.PREF_SCHEME=void 0;const n=t(41869);e.PREF_SCHEME="pref",e.knownTermMappings=new Map,e.knownTermMappings.set("power shell","PowerShell"),e.knownTermMappings.set("powershell","PowerShell"),e.knownTermMappings.set("javascript","JavaScript"),e.knownTermMappings.set("typescript","TypeScript"),["css","html","scss","less","json","js","ts","ie","id","php","scm","npm"].forEach(g=>{e.knownTermMappings.set(g,g.toUpperCase())});function a(g){const _=g.toLowerCase();return e.knownTermMappings.has(_)?e.knownTermMappings.get(_):b(g)}function o(g){const _=g.split(".");let E=a(_[0]);return _[1]&&(E+=" > "+b(_[1])),_[2]&&(E+=" : "+b(_[2])),_.slice(3).length>0&&(E+=". "+_.slice(3).join(" ")),E}e.toPreferenceReadableName=o;function p(g){let _;return g.localized&&(_=(0,n.localize)(g.localized)),_||(_=o(g.id)),_}e.getPreferenceItemLabel=p;function b(g){return g.substr(0,1).toUpperCase()+g.substr(1).replace(/([^A-Z])([A-Z])/g,"$1 $2")}e.toNormalCase=b},29728:(x,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SettingContribution=void 0,e.SettingContribution=Symbol("SettingContribution")},36858:(x,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.IUserStorageService=void 0,e.IUserStorageService=Symbol("IUserStorageService")},46507:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(85608).__exportStar(t(83569),e)},70716:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.HighlightLabel=void 0;const a=t(85608).__importDefault(t(14041)),o=t(41869),p=t(48560),b=t(52416),g=({text:_="",highlights:E=[],className:u="",labelClassName:h="",labelIconClassName:c="",hightLightClassName:r="",OutElementType:l="span"})=>{const s=(0,p.useInjectable)(b.IIconService),d=a.default.useMemo(()=>{const f=[];let m=0;for(const v of E){if(v.end===v.start)continue;if(m<v.start){const S=_.substring(m,v.start);f.push(a.default.createElement("span",{className:h,key:`${f.length}-${S}`},(0,o.transformLabelWithCodicon)(S,c,s.fromString.bind(s)))),m=v.end}const y=_.substring(v.start,v.end);f.push(a.default.createElement("span",{className:r,key:`${f.length}-${y}`},(0,o.transformLabelWithCodicon)(y,c,s.fromString.bind(s)))),m=v.end}if(m<_.length){const v=_.substring(m);f.push(a.default.createElement("span",{className:h,key:`${f.length}-${v}`},(0,o.transformLabelWithCodicon)(v,c,s.fromString.bind(s))))}return f},[_,E]);return a.default.createElement(l,{title:_,className:u},d)};e.HighlightLabel=g},52644:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.KeybindingView=void 0;const n=t(85608),a=n.__importDefault(t(53373)),o=n.__importDefault(t(14041)),p=t(41869),b=n.__importDefault(t(26739)),g=({keybinding:_,className:E,sequenceClassName:u,keyClassName:h})=>{const c=(0,p.useInjectable)(p.KeybindingRegistry),r=o.default.useMemo(()=>c.acceleratorFor(_," "),[_]);return o.default.createElement("div",{className:(0,a.default)(b.default.keybinding,E)},r?r.map((l,s)=>{const d=l.split(" ");return o.default.createElement("div",{key:`${l}_${s}`,title:l,className:(0,a.default)(b.default.key_sequence,u)},d.map((f,m)=>o.default.createElement("span",{className:(0,a.default)(b.default.key,h),key:`${f}_${s}_${m}`},f)))}):null)};e.KeybindingView=g},47005:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.QuickOpenTabs=void 0;const n=t(85608),a=n.__importDefault(t(53373)),o=n.__importDefault(t(14041)),p=t(41869),b=t(63373),g=t(52644),_=n.__importDefault(t(78539)),E=({tabs:u,activePrefix:h,onChange:c,toggleTab:r})=>{const l=(0,p.useInjectable)(p.KeybindingRegistry),s=d=>{const f=l.getKeybindingsForCommand(d);return f?f[0]:void 0};return o.default.createElement("div",{id:b.VIEW_CONTAINERS.QUICKPICK_TABS,className:_.default.quickopen_tabs},o.default.createElement("div",{className:_.default.quickopen_tabs_left},u.map(({title:d,prefix:f,commandId:m,order:v},y)=>{const S=s(m);return o.default.createElement("div",{key:f,className:_.default.quickopen_tabs_left_item,onMouseDown:A=>A.preventDefault(),onClick:()=>{f!==h&&c(f)}},o.default.createElement("div",{className:(0,a.default)(_.default.quickopen_tabs_left_item_text,{[_.default.selected]:h===f})},d),S&&o.default.createElement(g.KeybindingView,{keybinding:S,className:_.default.keybinding,keyClassName:_.default.tab_key}))})),o.default.createElement("div",{style:{flex:1}}),o.default.createElement("div",{className:_.default.quickopen_tabs_tip,onClick:()=>{r?.()}},(0,p.localize)("quickopen.tab.tip.prefix"),o.default.createElement("span",{className:_.default.tab_key},"Tab"),(0,p.localize)("quickopen.tab.tip.suffix")))};e.QuickOpenTabs=E},96534:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.QuickOpenModule=e.CoreQuickOpenModule=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(74404),b=t(80490),g=t(99066),_=t(65028),E=t(43131),u=t(13978);let h=class extends o.BrowserModule{constructor(){super(...arguments),this.providers=[{token:p.PrefixQuickOpenService,useClass:b.PrefixQuickOpenServiceImpl},{token:o.QuickOpenService,useClass:E.MonacoQuickOpenService},{token:p.QuickPickService,useClass:u.QuickPickServiceImpl},{token:p.IQuickInputService,useClass:g.QuickInputService},_.CoreQuickOpenContribution],this.contributionProvider=b.QuickOpenContribution}};h=n.__decorate([(0,a.Injectable)()],h),e.CoreQuickOpenModule=h;let c=class extends h{constructor(){super(...arguments),this.providers=this.providers.concat(_.QuickOpenFeatureContribution)}};c=n.__decorate([(0,a.Injectable)()],c),e.QuickOpenModule=c},80490:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.PrefixQuickOpenServiceImpl=e.QuickOpenHandlerRegistry=e.QuickOpenContribution=void 0;const n=t(85608),a=n.__importDefault(t(14041)),o=t(76003),p=t(41869),b=t(18193),g=t(74404),_=t(43718),E=t(47005),u=t(50426);var h=t(74404);Object.defineProperty(e,"QuickOpenContribution",{enumerable:!0,get:function(){return h.QuickOpenContribution}});let c=class extends _.Disposable{constructor(){super(...arguments),this.handlers=new Map,this.tabs=[],this.sortedTabs=null,this.handlerTabMap=new Map}registerHandler(s,d){if(this.handlers.has(s.prefix))return this.logger.warn(`The handler function of the \`${s.prefix}\` is already registered`),_.Disposable.NULL;this.handlers.set(s.prefix,s);const f={dispose:()=>this.handlers.delete(s.prefix)};if(this.addDispose(f),s.default&&(this.defaultHandler=s),d&&!d.hideTab){const m=[],{sub:v}=d,y=n.__rest(d,["sub"]);v&&Object.keys(v).forEach(S=>{m.push(Object.assign({prefix:`${s.prefix}${S}`},v[S]))}),m.push(Object.assign({prefix:s.prefix},y)),this.handlerTabMap.set(s,m),this.tabs.push(...m),this.sortedTabs=null,this.addDispose({dispose:()=>{const S=this.handlerTabMap.get(s);S&&(this.handlerTabMap.delete(s),this.tabs=this.tabs.filter(A=>!S.includes(A)),this.sortedTabs=null)}})}return f}getDefaultHandler(){return this.defaultHandler}isDefaultHandler(s){return s===this.getDefaultHandler()}getHandlers(){return[...this.handlers.values()]}getHandlerOrDefault(s){for(const d of this.handlers.values())if(s.startsWith(d.prefix))return d;return this.getDefaultHandler()}getSortedTabs(){return this.sortedTabs||(this.sortedTabs=this.tabs.slice().sort((s,d)=>s.order-d.order)),this.sortedTabs}getTabByHandler(s,d){if(this.handlerTabMap.has(s)){let f=d;return this.isDefaultHandler(s)&&!d.startsWith(s.prefix)&&(f=`${s.prefix}${d}`),this.handlerTabMap.get(s).find(m=>f.startsWith(m.prefix))}}};n.__decorate([(0,o.Autowired)(_.ILogger),n.__metadata("design:type",Object)],c.prototype,"logger",void 0),c=n.__decorate([(0,o.Injectable)()],c),e.QuickOpenHandlerRegistry=c;let r=class{constructor(){this.activePrefix="",this.currentLookFor="",this.toDisposeCurrent=new _.DisposableCollection}open(s,d){const f=this.handlers.getHandlerOrDefault(s);let m=!1;d?s=`${s}${d}`:this.corePreferences["workbench.quickOpen.preserveInput"]&&f&&f===this.currentHandler&&this.currentLookFor&&this.handlers.getTabByHandler(f,this.currentLookFor)===this.handlers.getTabByHandler(f,s)?(s=this.currentLookFor,m=!0):this.currentLookFor="",this.setCurrentHandler(s,f,m)}async setCurrentHandler(s,d,f){var m,v;if(d!==this.currentHandler&&(this.toDisposeCurrent.dispose(),this.currentHandler=d,this.toDisposeCurrent.push(_.Disposable.create(()=>{const D=d&&d.getOptions().onClose;D&&D(!0)}))),!d){this.doOpen();return}d.init&&await d.init(),this.setActivePrefix(d,s);let y=s;this.handlers.isDefaultHandler(d)&&s.startsWith(d.prefix)&&(y=s.substring(d.prefix.length));const S=this.handlers.isDefaultHandler(d)?0:((v=(m=this.handlers.getTabByHandler(d,s))===null||m===void 0?void 0:m.prefix)!==null&&v!==void 0?v:d.prefix).length,A=d.getOptions(),T=()=>{var D;(D=d.onToggle)===null||D===void 0||D.call(d);const w=this.handlers.getSortedTabs();let I=null;if(this.activePrefix){let O=w.findIndex(M=>M.prefix===this.activePrefix);O=O===w.length-1?0:O+1,I=w[O]}else I=w[0];I&&this.open(I.prefix)};this.doOpen(Object.assign(Object.assign({prefix:y,skipPrefix:S,valueSelection:f?[S,s.length]:void 0},A),{onClose:D=>{A.onClose&&A.onClose(D),d.onClose&&d.onClose(D)},renderTab:()=>a.default.createElement(E.QuickOpenTabs,{tabs:this.handlers.getSortedTabs(),activePrefix:this.activePrefix,onChange:D=>{var w;(w=d.onToggle)===null||w===void 0||w.call(d),this.open(D)},toggleTab:()=>{T()}}),toggleTab:()=>{T()}}))}doOpen(s){this.quickTitleBar.isAttached.get()&&this.quickTitleBar.hide(),this.quickOpenService.open({onType:(d,f)=>this.onType(d,f)},s)}onType(s,d){this.currentLookFor=s;const f=this.handlers.getHandlerOrDefault(s);if(f===void 0){const m=[];m.push(new g.QuickOpenItem({label:(0,p.localize)("quickopen.command.nohandler")})),d(m)}else if(f!==this.currentHandler)this.setCurrentHandler(s,f);else{const m=f.getModel(),v=this.handlers.isDefaultHandler(f)?s:s.substr(f.prefix.length);m.onType(v,(y,S)=>d(y,S)),this.setActivePrefix(f,s)}}setActivePrefix(s,d){var f,m;this.activePrefix=(m=(f=this.handlers.getTabByHandler(s,d))===null||f===void 0?void 0:f.prefix)!==null&&m!==void 0?m:""}};n.__decorate([(0,o.Autowired)(c),n.__metadata("design:type",c)],r.prototype,"handlers",void 0),n.__decorate([(0,o.Autowired)(g.QuickOpenService),n.__metadata("design:type",Object)],r.prototype,"quickOpenService",void 0),n.__decorate([(0,o.Autowired)(u.QuickTitleBar),n.__metadata("design:type",u.QuickTitleBar)],r.prototype,"quickTitleBar",void 0),n.__decorate([(0,o.Autowired)(b.CorePreferences),n.__metadata("design:type",Object)],r.prototype,"corePreferences",void 0),r=n.__decorate([(0,o.Injectable)()],r),e.PrefixQuickOpenServiceImpl=r},99066:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.QuickInputService=void 0;const n=t(85608),a=t(76003),o=t(97267),p=t(74404),b=t(43718),g=t(44854);let _=class{constructor(){this.onDidAcceptEmitter=new b.Emitter,this.onDidChangeValueEmitter=new b.Emitter}open(u){this.inputBox&&this.inputBox.hide();const h=new b.Deferred,c=u&&u.validateInput;u.hideOnDidAccept===void 0&&(u.hideOnDidAccept=!0);const r=this.injector.get(g.InputBoxImpl,[u]);return this.inputBox=r,r.onDidAccept(l=>{h.resolve(l),this.onDidAcceptEmitter.fire()}),r.getDerivedOptionsFromValue=async l=>{var s;const d=c&&l!==void 0?(0,b.withNullAsUndefined)(await c(l)):void 0;return{validationMessage:typeof d=="string"?d:d?.message,validationType:typeof d=="string"?o.VALIDATE_TYPE.ERROR:(s=d?.type)!==null&&s!==void 0?s:o.VALIDATE_TYPE.ERROR}},r.onDidChangeValue(async l=>{this.onDidChangeValueEmitter.fire(l)}),r.onDidHide(()=>{h.resolve(void 0)}),r.open(),h.promise}refresh(){var u;(u=this.inputBox)===null||u===void 0||u.refresh()}hide(){var u;(u=this.inputBox)===null||u===void 0||u.hide()}dispose(){var u;(u=this.inputBox)===null||u===void 0||u.dispose()}get onDidAccept(){return this.onDidAcceptEmitter.event}get onDidChangeValue(){return this.onDidChangeValueEmitter.event}};n.__decorate([(0,a.Autowired)(p.QuickOpenService),n.__metadata("design:type",Object)],_.prototype,"quickOpenService",void 0),n.__decorate([(0,a.Autowired)(a.INJECTOR_TOKEN),n.__metadata("design:type",a.Injector)],_.prototype,"injector",void 0),_=n.__decorate([(0,a.Injectable)()],_),e.QuickInputService=_},11143:(x,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.QuickOpenBaseAction=void 0;class t{constructor(a){this.options=a}get id(){return this.options.id}get label(){return this.options.label||""}set label(a){this.options.label=a}get tooltip(){return this.options.tooltip||""}set tooltip(a){this.options.tooltip=a}get class(){return this.options.class||""}set class(a){this.options.class=a}get enabled(){return this.options.enabled||!0}set enabled(a){this.options.enabled=a}get checked(){return this.options.checked||!1}set checked(a){this.options.checked=a}get radio(){return this.options.radio||!1}set radio(a){this.options.radio=a}dispose(){}}e.QuickOpenBaseAction=t},78245:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.QuickOpenItemService=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(40827),b=t(43718),g=t(52416),_=t(89802);let E=class{constructor(){this.onDidTriggerItemButtonEmitter=new b.Emitter}get onDidTriggerItemButton(){return this.onDidTriggerItemButtonEmitter.event}fireDidTriggerItemButton(h,c){this.onDidTriggerItemButtonEmitter.fire({button:c,item:{handle:h}})}getButtons(h){return h.length===0?[]:h.map((c,r)=>{if(b.ThemeIcon.isThemeIcon(c.iconPath))return Object.assign(Object.assign({},c),{iconClass:(0,o.getExternalIcon)(c.iconPath.id),handle:r});const l=(0,_.iconPath2URI)(c.iconPath,this.themeService.getCurrentThemeSync().type),s=l&&this.staticResourceService.resolveStaticResource(l).toString(),d=s&&this.iconService.fromIcon("",s,g.IconType.Background);return Object.assign(Object.assign({},c),{iconClass:d,handle:r})})}getIconClass(h){const{iconClass:c,iconPath:r}=h;if(c)return c;if(!r)return;if(b.ThemeIcon.isThemeIcon(r))return(0,o.getExternalIcon)(r.id);const l=(0,_.iconPath2URI)(r,this.themeService.getCurrentThemeSync().type),s=l&&this.staticResourceService.resolveStaticResource(l).toString();return r&&this.iconService.fromIcon("",s,g.IconType.Background)}};n.__decorate([(0,a.Autowired)(g.IThemeService),n.__metadata("design:type",Object)],E.prototype,"themeService",void 0),n.__decorate([(0,a.Autowired)(),n.__metadata("design:type",p.StaticResourceService)],E.prototype,"staticResourceService",void 0),n.__decorate([(0,a.Autowired)(g.IIconService),n.__metadata("design:type",Object)],E.prototype,"iconService",void 0),E=n.__decorate([(0,a.Injectable)()],E),e.QuickOpenItemService=E},90404:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.CommandQuickOpenItem=e.QuickCommandHandler=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(18193),b=t(93899),g=t(74404),_=t(43718),E=t(77714),u=t(51500);let h=class{constructor(){this.prefix=">",this.description=(0,o.localize)("quickopen.command.description"),this.initDeferred=new _.Deferred,this.initRecentlyUsedCommands()}async init(){await this.initDeferred.promise,this.items=this.getItems()}async initRecentlyUsedCommands(){const s=(await this.workspaceService.getMostRecentlyUsedCommands()).map(d=>this.commandRegistry.getCommand(d)).filter(d=>!!d).reverse();this.commandRegistry.setRecentCommands(s),this.initDeferred.resolve()}getModel(){return{onType:(l,s)=>{s(this.items),this.reporterService.point(_.REPORT_NAME.QUICK_OPEN_MEASURE,"command",{lookFor:l})}}}getOptions(){return{placeholder:(0,o.localize)("quickopen.command.placeholder"),fuzzyMatchLabel:{enableSeparateSubstringMatching:!0},fuzzyMatchDetail:{enableSeparateSubstringMatching:!0},fuzzySort:!1,getPlaceholderItem:()=>new g.QuickOpenItem({label:(0,o.localize)("quickopen.commands.notfound"),run:()=>!1})}}onClose(){this.commandService.executeCommand(o.EDITOR_COMMANDS.FOCUS.id)}getItems(){const l=[],{recent:s,other:d}=this.getCommands();return l.push(...s.map((f,m)=>this.injector.get(c,[f,{groupLabel:m===0?(0,o.localize)("quickopen.recent-commands"):"",showBorder:!1}])),...d.map((f,m)=>this.injector.get(c,[f,{groupLabel:s.length<=0?"":m===0?(0,o.localize)("quickopen.other-commands"):"",showBorder:s.length<=0?!1:m===0}]))),l}getCommands(){const l=this.menuService.createMenu(b.MenuId.CommandPalette,this.contextKeyService),s=this.getValidCommands(this.commandRegistry.getRecentCommands()),d=this.corePreferences["workbench.commandPalette.history"],f=s.slice(0,d),m=new Set(f.map(A=>A.id)),v=new Set,y=[],S=[];for(const[,A]of l.getMenuNodes())for(const T of A){if(!(T instanceof b.MenuItemNode)||T.disabled||v.has(T.id)||(v.add(T.id),m.has(T.id)))continue;y.push(T);const D=this.commandRegistry.getCommand(T.id);D&&S.push(Object.assign(Object.assign({},D),{label:T.label}))}for(let A=f.length-1;A>=0;A--){const T=f[A];v.has(T.id)||f.splice(A,1)}return l.dispose(),{recent:f,other:S.sort((A,T)=>_.Command.compareCommands(A,T))}}getValidCommands(l){return l.filter(s=>s.label&&this.commandRegistry.isVisible(s.id)&&this.commandRegistry.isEnabled(s.id))}};n.__decorate([(0,a.Autowired)(_.CommandService),n.__metadata("design:type",Object)],h.prototype,"commandService",void 0),n.__decorate([(0,a.Autowired)(a.INJECTOR_TOKEN),n.__metadata("design:type",a.Injector)],h.prototype,"injector",void 0),n.__decorate([(0,a.Autowired)(_.CommandRegistry),n.__metadata("design:type",Object)],h.prototype,"commandRegistry",void 0),n.__decorate([(0,a.Autowired)(u.IWorkspaceService),n.__metadata("design:type",Object)],h.prototype,"workspaceService",void 0),n.__decorate([(0,a.Autowired)(p.CorePreferences),n.__metadata("design:type",Object)],h.prototype,"corePreferences",void 0),n.__decorate([(0,a.Autowired)(b.AbstractMenuService),n.__metadata("design:type",b.AbstractMenuService)],h.prototype,"menuService",void 0),n.__decorate([(0,a.Autowired)(o.IContextKeyService),n.__metadata("design:type",Object)],h.prototype,"contextKeyService",void 0),n.__decorate([(0,a.Autowired)(_.IReporterService),n.__metadata("design:type",Object)],h.prototype,"reporterService",void 0),h=n.__decorate([(0,a.Injectable)(),n.__metadata("design:paramtypes",[])],h),e.QuickCommandHandler=h;let c=class extends g.QuickOpenItem{constructor(l,s){super(s),this.command=l,this.commandOptions=s}getLabel(){return this.command.category?`${(0,E.uppercaseFirstLetter)(this.command.category)}: `+this.command.label:this.command.label}isHidden(){return super.isHidden()}getDetail(){var l,s;if(!this.command.labelLocalized)return;let d;const{alias:f,localized:m}=this.command.labelLocalized;if(f!==m){const v=(s=(l=this.command.categoryLocalized)===null||l===void 0?void 0:l.alias)!==null&&s!==void 0?s:this.command.category;v?d=`${(0,E.uppercaseFirstLetter)(v)}: ${f}`:d=f}return d}getKeybinding(){const l=this.keybindings.getKeybindingsForCommand(this.command.id);return l?l[0]:void 0}run(l){return l!==g.Mode.OPEN?!1:(setTimeout(()=>{this.commandService.executeCommand(this.command.id),this.commandRegistry.setRecentCommands([this.command]),this.workspaceService.setMostRecentlyUsedCommand(this.command.id)},50),!0)}};n.__decorate([(0,a.Autowired)(_.CommandService),n.__metadata("design:type",Object)],c.prototype,"commandService",void 0),n.__decorate([(0,a.Autowired)(_.CommandRegistry),n.__metadata("design:type",Object)],c.prototype,"commandRegistry",void 0),n.__decorate([(0,a.Autowired)(o.KeybindingRegistry),n.__metadata("design:type",Object)],c.prototype,"keybindings",void 0),n.__decorate([(0,a.Autowired)(u.IWorkspaceService),n.__metadata("design:type",Object)],c.prototype,"workspaceService",void 0),c=n.__decorate([(0,a.Injectable)({multiple:!0}),n.__metadata("design:paramtypes",[Object,Object])],c),e.CommandQuickOpenItem=c},65028:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.QuickOpenFeatureContribution=e.CoreQuickOpenContribution=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(93899),b=t(74404),g=t(80490),_=t(90404),E=t(77116);let u=class{onStart(){for(const r of this.quickOpenContributionProvider.getContributions())r.registerQuickOpenHandlers(this.quickOpenHandlerRegistry)}};n.__decorate([(0,a.Autowired)(),n.__metadata("design:type",g.QuickOpenHandlerRegistry)],u.prototype,"quickOpenHandlerRegistry",void 0),n.__decorate([(0,a.Autowired)(g.QuickOpenContribution),n.__metadata("design:type",Object)],u.prototype,"quickOpenContributionProvider",void 0),u=n.__decorate([(0,o.Domain)(o.ClientAppContribution)],u),e.CoreQuickOpenContribution=u;let h=class{registerCommands(r){r.registerCommand(o.QUICK_OPEN_COMMANDS.OPEN,{execute:()=>this.prefixQuickOpenService.open(">")}),r.registerCommand(o.QUICK_OPEN_COMMANDS.OPEN_OUTLINE,{execute:()=>this.prefixQuickOpenService.open("@")}),r.registerCommand(o.QUICK_OPEN_COMMANDS.OPEN_VIEW,{execute:()=>this.prefixQuickOpenService.open("view ")}),r.registerCommand(o.QUICK_OPEN_COMMANDS.OPEN_WITH_COMMAND,{execute:l=>this.prefixQuickOpenService.open(">",l)})}registerKeybindings(r){r.registerKeybinding({command:o.QUICK_OPEN_COMMANDS.OPEN.id,keybinding:"ctrlcmd+shift+p"})}registerMenus(r){r.registerMenuItem(p.MenuId.MenubarViewMenu,{command:{id:o.QUICK_OPEN_COMMANDS.OPEN.id,label:(0,o.localize)("menu-bar.view.quick.command")},group:"0_primary"}),r.registerMenuItem(p.MenuId.MenubarViewMenu,{command:{id:o.LAYOUT_COMMANDS.OPEN_VIEW.id,label:o.LAYOUT_COMMANDS.OPEN_VIEW.label},group:"0_primary"})}registerQuickOpenHandlers(r){r.registerHandler(this.quickCommandHandler,{title:(0,o.localize)("quickopen.tab.command"),commandId:o.QUICK_OPEN_COMMANDS.OPEN.id,order:4}),r.registerHandler(this.helpQuickOpenHandler)}};n.__decorate([(0,a.Autowired)(a.INJECTOR_TOKEN),n.__metadata("design:type",a.Injector)],h.prototype,"injector",void 0),n.__decorate([(0,a.Autowired)(b.PrefixQuickOpenService),n.__metadata("design:type",Object)],h.prototype,"prefixQuickOpenService",void 0),n.__decorate([(0,a.Autowired)(),n.__metadata("design:type",_.QuickCommandHandler)],h.prototype,"quickCommandHandler",void 0),n.__decorate([(0,a.Autowired)(),n.__metadata("design:type",E.HelpQuickOpenHandler)],h.prototype,"helpQuickOpenHandler",void 0),h=n.__decorate([(0,o.Domain)(o.CommandContribution,o.KeybindingContribution,p.MenuContribution,g.QuickOpenContribution)],h),e.QuickOpenFeatureContribution=h},77116:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.HelpQuickOpenHandler=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(74404),b=t(80490);let g=class{constructor(){this.prefix="?",this.description=""}init(){this.items=this.handlers.getHandlers().filter(E=>E.prefix!==this.prefix).sort((E,u)=>this.comparePrefix(E.prefix,u.prefix)).map(E=>new p.QuickOpenItem({label:E.prefix,description:E.description,run:u=>(u!==p.Mode.OPEN||this.quickOpenService.open(E.prefix),!1)}))}getModel(){return{onType:(E,u)=>{u(this.items)}}}getOptions(){return{}}onClose(){this.commandService.executeCommand(o.EDITOR_COMMANDS.FOCUS.id)}comparePrefix(E,u){return E.toLowerCase().localeCompare(u.toLowerCase())}};n.__decorate([(0,a.Autowired)(b.QuickOpenHandlerRegistry),n.__metadata("design:type",b.QuickOpenHandlerRegistry)],g.prototype,"handlers",void 0),n.__decorate([(0,a.Autowired)(p.PrefixQuickOpenService),n.__metadata("design:type",Object)],g.prototype,"quickOpenService",void 0),n.__decorate([(0,a.Autowired)(o.CommandService),n.__metadata("design:type",Object)],g.prototype,"commandService",void 0),g=n.__decorate([(0,a.Injectable)()],g),e.HelpQuickOpenHandler=g},43131:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.KaitianQuickOpenControllerOpts=e.MonacoQuickOpenService=void 0;const n=t(85608),a=n.__importDefault(t(14041)),o=n.__importDefault(t(25873)),p=t(76003),b=t(41869),g=t(63373),_=t(68969),E=t(74404),u=t(70238),h=t(52596),c=t(65694),r=t(6399),l=t(98462);let s=class{constructor(){this.preLookFor=""}get inQuickOpenContextKey(){return this.contextKeyService.createKey("inQuickOpen",!1)}appendQuickOpenContainer(){const m=document.querySelector("#ide-overlay");if(!m)throw new Error("ide-overlay is requried");const v=document.createElement("div");v.classList.add("quick-open-overlay"),m.appendChild(v);const y=this.container=document.createElement("quick-open-container");y.style.position="fixed",y.style.top="0px",y.style.right="50%",y.style.zIndex="1000000",v.appendChild(y)}open(m,v){const y=new d(m,this.keybindingRegistry,v);this.progressDispose=this.progressService.registerProgressIndicator(g.VIEW_CONTAINERS.QUICKPICK_PROGRESS),this.hideDecoration(),this.internalOpen(y)}hide(m){this.widget.hide(m),this.progressDispose.dispose()}internalOpen(m){var v;this.opts=m,this.widget.show(this.opts.prefix||"",{placeholder:m.inputAriaLabel,password:m.password,inputEnable:(v=m.enabled)!==null&&v!==void 0?v:!0,valueSelection:m.valueSelection,canSelectMany:m.canSelectMany,keepScrollPosition:m.keepScrollPosition,busy:m.busy,renderTab:m.renderTab,toggleTab:m.toggleTab}),this.inQuickOpenContextKey.set(!0)}updateOptions(m){this.opts.updateOptions(m),this.widget.updateOptions(m)}refresh(){this.onType(this.widget.inputValue.get())}get widget(){return this._widget?this._widget:(this.appendQuickOpenContainer(),this._widget=this.injector.get(l.QuickOpenWidget,[{onOk:()=>{this.previousActiveElement=void 0,this.onClose(!1)},onCancel:()=>{this.previousActiveElement instanceof HTMLElement&&this.previousActiveElement.focus(),this.previousActiveElement=void 0,this.onClose(!0)},onType:m=>this.onType(m||""),onFocusLost:()=>this.opts&&this.opts.ignoreFocusOut!==void 0?(this.opts.ignoreFocusOut===!1&&this.onClose(!0),this.opts.ignoreFocusOut):!1,onHide:()=>{this.inQuickOpenContextKey.set(!1)},onSelect:(m,v)=>{this.opts.onSelect&&this.opts.onSelect(m,v)},onConfirm:m=>{this.opts.onConfirm&&this.opts.onConfirm(m)},onKeyMods:m=>{this.opts.onKeyMods&&this.opts.onKeyMods(m)}}]),this.initWidgetView(this._widget),this._widget)}initWidgetView(m){o.default.createRoot(this.container).render(a.default.createElement(b.ConfigProvider,{value:this.appConfig},a.default.createElement(c.QuickOpenContext.Provider,{value:{widget:m}},a.default.createElement(r.QuickOpenView,null))))}onClose(m){var v,y;(y=(v=this.opts).onClose)===null||y===void 0||y.call(v,m)}async onType(m){const v=this.opts;this.widget&&v.onType&&v.onType(m,y=>(this.preLookFor!==m&&this.opts.onChangeValue(m),this.preLookFor=m,this.widget.setInput(y,v.getAutoFocus(m),v.inputAriaLabel)))}onFocusLost(){return!!this.opts.ignoreFocusOut}showDecoration(m){this.widget.validateType.set(m,void 0)}hideDecoration(){this.widget.validateType.set(void 0,void 0)}};n.__decorate([(0,p.Autowired)(b.KeybindingRegistry),n.__metadata("design:type",Object)],s.prototype,"keybindingRegistry",void 0),n.__decorate([(0,p.Autowired)(u.MonacoContextKeyService),n.__metadata("design:type",u.MonacoContextKeyService)],s.prototype,"monacoContextKeyService",void 0),n.__decorate([(0,p.Autowired)(b.IContextKeyService),n.__metadata("design:type",Object)],s.prototype,"contextKeyService",void 0),n.__decorate([(0,p.Autowired)(p.INJECTOR_TOKEN),n.__metadata("design:type",p.Injector)],s.prototype,"injector",void 0),n.__decorate([(0,p.Autowired)(b.AppConfig),n.__metadata("design:type",Object)],s.prototype,"appConfig",void 0),n.__decorate([(0,p.Autowired)(_.IProgressService),n.__metadata("design:type",Object)],s.prototype,"progressService",void 0),s=n.__decorate([(0,p.Injectable)()],s),e.MonacoQuickOpenService=s;class d{constructor(m,v,y){this.model=m,this.keybindingRegistry=v,this.model=m,this.options=E.QuickOpenOptions.resolve(y)}get prefix(){return this.options.prefix}get inputAriaLabel(){return this.options.placeholder||""}get ignoreFocusOut(){return this.options.ignoreFocusOut}get password(){return this.options.password}get enabled(){return this.options.enabled}get valueSelection(){return this.options.valueSelection}get keepScrollPosition(){return this.options.keepScrollPosition}get busy(){return this.options.busy}get renderTab(){return this.options.renderTab}get toggleTab(){return this.options.toggleTab}get canSelectMany(){return this.options.canPickMany}onClose(m){this.options.onClose(m)}onSelect(m,v){this.options.onSelect(m,v)}onConfirm(m){this.options.onConfirm(m)}onType(m,v){this.model.onType(m,(y,S)=>{const A=this.toOpenModel(m,y,S);v(A)})}onKeyMods(m){this.options.onKeyMods&&this.options.onKeyMods(m)}onChangeValue(m){this.options.onChangeValue&&this.options.onChangeValue(m)}updateOptions(m){this.options=E.QuickOpenOptions.resolve(m,this.options)}compareEntries(m,v,y){const S=m.getHighlights()[0]||[],A=v.getHighlights()[0]||[];if(S.length&&!A.length)return-1;if(!S.length&&A.length)return 1;const T=m.getLabel(),D=v.getLabel();return(0,b.compareAnything)(T,D,y)}toOpenModel(m,v,y){const S=m;this.options.skipPrefix&&(m=m.substring(this.options.skipPrefix).trim()),y&&y.getValidateInput&&(m=y.getValidateInput(m));const A=v.filter(D=>!!this.fuzzyQuickOpenItem(D,m));this.options.fuzzySort&&A.sort((D,w)=>this.compareEntries(D,w,m));const{getPlaceholderItem:T}=this.options;return!A.length&&T&&A.push(T(m,S)),{items:A,actionProvider:y}}fuzzyQuickOpenItem(m,v){const{fuzzyMatchLabel:y,fuzzyMatchDescription:S,fuzzyMatchDetail:A}=this.options,T=y?(0,h.matchesFuzzyIconAware)(v,(0,h.parseLabelWithIcons)(m.getLabel()||""),typeof y=="object"&&y.enableSeparateSubstringMatching):m.getLabelHighlights(),D=this.options.fuzzyMatchDescription?(0,h.matchesFuzzyIconAware)(v,(0,h.parseLabelWithIcons)(m.getDescription()||""),typeof S=="object"&&S.enableSeparateSubstringMatching):m.getDescriptionHighlights(),w=this.options.fuzzyMatchDetail?(0,h.matchesFuzzyIconAware)(v,(0,h.parseLabelWithIcons)(m.getDetail()||""),typeof A=="object"&&A.enableSeparateSubstringMatching):m.getDetailHighlights();if(!(v&&!T&&!D&&(!w||w.length===0)&&!this.options.showItemsWithoutHighlight))return m.setHighlights(T||[],D||[],w||[]),m}getAutoFocus(m){if(this.options.selectIndex){const v=this.options.selectIndex(m);if(v>=0)return{autoFocusIndex:v}}return{autoFocusFirstEntry:!0,autoFocusPrefixMatch:m}}}e.KaitianQuickOpenControllerOpts=d},65694:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.QuickOpenContext=void 0;const a=t(85608).__importDefault(t(14041));e.QuickOpenContext=a.default.createContext({widget:null})},6399:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.QuickOpenView=e.QuickOpenProgress=e.QuickOpenList=e.QuickOpenInput=e.QuickOpenHeader=void 0;const n=t(85608),a=n.__importDefault(t(53373)),o=n.__importDefault(t(14041)),p=t(97267),b=t(41869),g=t(63373),_=t(68969),E=t(68974),u=t(74404),h=t(89647),c=t(28423),r=t(85139),l=t(70716),s=t(52644),d=t(78245),f=t(65694),m=t(50426),v=n.__importDefault(t(91449)),y=O=>{var{button:M}=O,R=n.__rest(O,["button"]);return o.default.createElement(p.Button,Object.assign({},R,{key:M.tooltip,type:"icon",iconClass:M.iconClass,title:M.tooltip}))},S=()=>{const O=(0,b.useInjectable)(m.QuickTitleBar),M=(0,b.useAutorun)(O.title),R=(0,b.useAutorun)(O.isAttached),P=(0,b.useAutorun)(O.step),L=(0,b.useAutorun)(O.totalSteps),N=(0,b.useAutorun)(O.leftButtons),k=(0,b.useAutorun)(O.rightButtons),B=o.default.useMemo(()=>{const j=()=>P&&L?`${P}/${L}`:P?String(P):"";return M&&P?`${M} (${j()})`:M||(P?j():"")},[M,P,L]),F=o.default.useCallback((j,V)=>{j.stopPropagation(),O.fireDidTriggerButton(V)},[O.fireDidTriggerButton]),W=o.default.useMemo(()=>N.length>0||B||k.length>0?o.default.createElement("div",{className:v.default.title_bar},o.default.createElement("div",{className:v.default.title_bar_button},N.map(j=>o.default.createElement(y,{onMouseDown:V=>F(V,j),button:j}))),o.default.createElement("div",null,B),o.default.createElement("div",{className:v.default.title_bar_button},k.map(j=>o.default.createElement(y,{onMouseDown:V=>F(V,j),button:j})))):null,[N,B,k]);return R?W:null};e.QuickOpenHeader=S;const A=()=>{const{widget:O}=o.default.useContext(f.QuickOpenContext),M=(0,b.useAutorun)(O.valueSelection),R=(0,b.useAutorun)(O.items),P=(0,b.useAutorun)(O.selectAll),L=(0,b.useAutorun)(O.validateType),N=(0,b.useAutorun)(O.inputPlaceholder),k=(0,b.useAutorun)(O.inputEnable),B=(0,b.useAutorun)(O.inputValue),F=(0,b.useAutorun)(O.isPassword),W=(0,b.useAutorun)(O.canSelectMany),j=o.default.useRef(null),V=o.default.useCallback(U=>{const $=U.target.value;O.setInputValue($),O.callbacks.onType($)},[O]),K=o.default.useMemo(()=>F?"password":"text",[F]);o.default.useEffect(()=>{setTimeout(()=>{var U;(U=j.current)===null||U===void 0||U.focus()},0)},[R]),o.default.useEffect(()=>{var U;if(B&&M){const[$,Y]=M;(U=j.current)===null||U===void 0||U.setSelectionRange($,Y)}},[M]);const H=o.default.useMemo(()=>{if(!(0,b.isUndefined)(L))return{type:L,message:""}},[L]),z=o.default.useCallback(U=>{const $=U.target.checked;for(const Y of R)(0,c.transaction)(Q=>{Y.checked.set($,Q)})},[R]),G=o.default.useCallback(()=>{O.callbacks.onConfirm(R.filter(U=>U.checked.get())),O.hide(u.HideReason.ELEMENT_SELECTED)},[R]);return o.default.createElement("div",{tabIndex:0,className:v.default.input},W&&o.default.createElement(p.CheckBox,{checked:P,wrapTabIndex:0,onChange:z}),o.default.createElement(p.ValidateInput,{validateMessage:H,ref:j,type:K,"aria-label":N,placeholder:N,value:B,readOnly:!k,onChange:V,id:g.VIEW_CONTAINERS.QUICKPICK_INPUT}),W&&o.default.createElement(p.Button,{className:v.default.input_button,onClick:G},(0,b.localize)("ButtonOK")))};e.QuickOpenInput=A;const T=({data:O,index:M})=>{const{widget:R}=o.default.useContext(f.QuickOpenContext),P=(0,b.useAutorun)(R.actionProvider),L=(0,b.useAutorun)(R.selectIndex),N=(0,b.useAutorun)(R.canSelectMany),k=(0,b.useAutorun)(O.checked),B=(0,b.useInjectable)(d.QuickOpenItemService),F=o.default.useMemo(()=>O.getLabel(),[O]),W=o.default.useMemo(()=>O.getDescription(),[O]),j=o.default.useMemo(()=>O.getDetail(),[O]),V=o.default.useMemo(()=>O.getIconClass(),[O]),K=o.default.useMemo(()=>O.getKeybinding(),[O]),H=o.default.useMemo(()=>O.getGroupLabel(),[O]),z=o.default.useMemo(()=>O.showBorder(),[O]),G=o.default.useMemo(()=>O.getIconPath(),[O]),U=o.default.useMemo(()=>B.getIconClass({iconPath:G,iconClass:V}),[V,G]),$=o.default.useMemo(()=>B.getButtons(O.getButtons()),[O]),[Y,Q,te]=o.default.useMemo(()=>O.getHighlights(),[O]),[se,ae]=o.default.useState(!1),de=o.default.useMemo(()=>{if(P&&P.hasActions(O))return P.getActions(O)},[P,O]),q=o.default.useCallback(J=>{N?((0,c.transaction)(le=>{O.checked.set(!k,le)}),J.stopPropagation()):(J.button===1?O.run(u.QuickOpenMode.OPEN_IN_BACKGROUND):O.run(u.QuickOpenMode.OPEN))&&R.hide(u.HideReason.ELEMENT_SELECTED)},[O,N]),_e=o.default.useCallback(J=>{J.run(O),R.hide(u.HideReason.ELEMENT_SELECTED)},[O]),pe=o.default.useCallback((J,le)=>{J.stopPropagation(),B.fireDidTriggerItemButton(M,le)},[O]);return o.default.createElement("div",{id:g.VIEW_CONTAINERS.QUICKPICK_ITEM,tabIndex:0,className:(0,a.default)({[v.default.item_selected]:L===M,[v.default.item_border]:z},v.default.item),onMouseEnter:()=>ae(!0),onMouseLeave:()=>ae(!1),"aria-label":F},N&&o.default.createElement(p.CheckBox,{wrapTabIndex:0,checked:k,onChange:J=>{(0,c.transaction)(le=>{O.checked.set(J.target.checked,le)})}}),o.default.createElement("div",{tabIndex:0,className:v.default.item_label_container,onMouseDown:q},o.default.createElement("div",{className:v.default.item_label},U&&o.default.createElement("span",{className:(0,a.default)(v.default.item_icon,U)}),o.default.createElement(l.HighlightLabel,{className:v.default.item_label_name,labelClassName:v.default.label_icon_container,labelIconClassName:v.default.item_label_name_icon,hightLightClassName:(0,a.default)(v.default.item_label_highlight),text:F,highlights:Y}),W&&o.default.createElement(l.HighlightLabel,{className:v.default.item_label_description,labelClassName:(0,a.default)(v.default.label_icon_container,v.default.item_label_description_label),labelIconClassName:(0,a.default)(v.default.label_has_icon,v.default.item_label_description_icon),hightLightClassName:(0,a.default)(v.default.item_label_description_highlight),text:W,highlights:Q})),j&&o.default.createElement(l.HighlightLabel,{OutElementType:"div",className:v.default.item_label_detail,labelClassName:(0,a.default)(v.default.label_icon_container,v.default.item_label_description_label),labelIconClassName:(0,a.default)(v.default.label_has_icon,v.default.item_label_detail_icon),hightLightClassName:(0,a.default)(v.default.item_label_description_highlight),text:j,highlights:te})),K&&o.default.createElement(s.KeybindingView,{keybinding:K}),H&&o.default.createElement("span",{title:H,className:v.default.item_group_label},H),de?.map(J=>o.default.createElement("span",{key:J.id,onMouseDown:()=>_e(J),title:J.tooltip||J.label,className:(0,a.default)(v.default.item_action,J.class)})),(se||L===M)&&$?.map(J=>o.default.createElement(y,{onMouseDown:le=>pe(le,J),button:J})))},D=({onReady:O,onScroll:M})=>{const{widget:R}=o.default.useContext(f.QuickOpenContext),P=(0,b.useAutorun)(R.items),L=(0,b.useAutorun)(R.validateType),N=(0,b.useDesignStyles)(v.default.quickopen_list,"quickopen_list"),k=o.default.useCallback(B=>{const F=P[B];return F?.getDetail()?44:22},[P]);return P.length>0?o.default.createElement(p.RecycleList,{onReady:O,onScroll:M,className:(0,a.default)(N,{[v.default.validate_error]:L===p.VALIDATE_TYPE.ERROR,[v.default.validate_warning]:L===p.VALIDATE_TYPE.WARNING}),data:P,template:T,getSize:k,maxHeight:P.length?R.MAX_HEIGHT:0,hiddenHorizontalScrollbar:!0}):null};e.QuickOpenList=D;const w=()=>{const{widget:O}=o.default.useContext(f.QuickOpenContext),M=(0,b.useAutorun)(O.busy),P=(0,b.useInjectable)(_.IProgressService).getIndicator(g.VIEW_CONTAINERS.QUICKPICK_PROGRESS);return o.default.useEffect(()=>{O.updateProgressStatus(!!M)},[M]),o.default.createElement("div",{id:g.VIEW_CONTAINERS.QUICKPICK_PROGRESS,className:v.default.progress_bar},o.default.createElement(E.ProgressBar,{progressModel:P.progressModel}))};e.QuickOpenProgress=w;const I=()=>{var O;const{widget:M}=o.default.useContext(f.QuickOpenContext),R=(0,b.useAutorun)(M.items),P=(0,b.useAutorun)(M.autoFocus),L=(0,b.useAutorun)(M.selectIndex),N=(0,b.useAutorun)(M.keepScrollPosition),k=(0,b.useAutorun)(M.isShow),B=o.default.useRef(),F=o.default.useRef(0),W=o.default.useCallback(({relatedTarget:z,currentTarget:G})=>{if(z===null)return!1;let U=z.parentNode;for(;U!==null;){if(U===G)return!0;U=U.parentNode}return!1},[]),j=o.default.useCallback(z=>{W(z)||M.blur()},[M]),V=o.default.useCallback(z=>{B.current=z},[M]),K=o.default.useCallback(z=>{F.current=z.scrollOffset},[M]);o.default.useEffect(()=>{if(P){if(P.autoFocusPrefixMatch){let z,G;const U=P.autoFocusPrefixMatch,$=U.toLowerCase();for(const Q of R){const te=Q.getLabel()||"";if(!z&&te.indexOf(U)===0?z=Q:!G&&te.toLowerCase().indexOf($)===0&&(G=Q),z&&G)break}const Y=z||G;if(Y){const Q=R.indexOf(Y);M.setSelectIndex(Q);return}}P.autoFocusFirstEntry?M.setSelectIndex(0):typeof P.autoFocusIndex=="number"?R.length>P.autoFocusIndex&&M.setSelectIndex(P.autoFocusIndex):P.autoFocusSecondEntry?R.length>1&&M.setSelectIndex(1):P.autoFocusLastEntry&&R.length>1&&M.setSelectIndex(R.length-1)}},[R,P]),o.default.useEffect(()=>{var z,G;if(N?(z=B.current)===null||z===void 0||z.scrollTo(F.current):(G=B.current)===null||G===void 0||G.scrollToIndex(L,"smart"),R.length===0)return;const U=R[L];U&&(U.run(u.QuickOpenMode.PREVIEW),M.callbacks.onSelect(U,L))},[R,L,N]);const H=o.default.useCallback(z=>{if(h.KEY_CODE_MAP[z.nativeEvent.keyCode]===r.KeyCode.KEY_IN_COMPOSITION)return;const{key:G}=b.KeyCode.createKeyCode(z.nativeEvent);if(!G)return;const U=R.length;switch(G.keyCode){case b.Key.ARROW_UP.keyCode:{z.preventDefault(),z.stopPropagation();const $=L-1;M.setSelectIndex((U+$%U)%U);break}case b.Key.ARROW_DOWN.keyCode:{z.preventDefault(),z.stopPropagation();const $=L+1;M.setSelectIndex($%U);break}case b.Key.ESCAPE.keyCode:{z.preventDefault(),z.stopPropagation(),M.hide(u.HideReason.CANCELED);break}case b.Key.ENTER.keyCode:{z.preventDefault(),z.stopPropagation();const $=R[L];if(!$)return;$.run(u.QuickOpenMode.OPEN);break}case b.Key.TAB.keyCode:{M.toggleTab&&(z.preventDefault(),z.stopPropagation(),M.toggleTab());break}}},[R,M,L]);return k?o.default.createElement("div",{id:g.VIEW_CONTAINERS.QUICKPICK,tabIndex:0,className:v.default.container,onKeyDown:H,onBlur:j},o.default.createElement(e.QuickOpenHeader,null),o.default.createElement(e.QuickOpenInput,null),o.default.createElement(e.QuickOpenProgress,null),(O=M.renderTab)===null||O===void 0?void 0:O.call(M),o.default.createElement(e.QuickOpenList,{onReady:V,onScroll:K})):null};e.QuickOpenView=I},98462:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.QuickOpenWidget=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(63373),b=t(68969),g=t(28423);let _=class{constructor(u){this.callbacks=u,this.MAX_HEIGHT=440,this.inputValue=(0,g.observableValue)(this,""),this.validateType=(0,g.observableValue)(this,void 0),this.isShow=(0,g.observableValue)(this,!1),this.items=(0,g.observableValue)(this,[]),this.actionProvider=(0,g.observableValue)(this,null),this.autoFocus=(0,g.observableValue)(this,null),this.selectAll=(0,g.derived)(this,h=>this.items.read(h).every(c=>c.checked.read(h))),this.isPassword=(0,g.observableValue)(this,!1),this.selectIndex=(0,g.observableValue)(this,0),this.keepScrollPosition=(0,g.observableValue)(this,!1),this.busy=(0,g.observableValue)(this,!1),this.valueSelection=(0,g.observableValue)(this,void 0),this.canSelectMany=(0,g.observableValue)(this,!1),this.inputPlaceholder=(0,g.observableValue)(this,""),this.inputEnable=(0,g.observableValue)(this,!1),this.modifierListeners=new o.DisposableCollection}setSelectIndex(u){(0,g.transaction)(h=>{const c=(0,o.isNumber)(u)?u:0;this.selectIndex.set(c,h)})}setInputValue(u){(0,g.transaction)(h=>{this.inputValue.set(u,h)})}show(u,h){(0,g.transaction)(c=>{this.isShow.set(!0,c),this.inputValue.set(u,c),this.inputPlaceholder.set(h.placeholder,c),this.isPassword.set(!!h.password,c),this.inputEnable.set(h.inputEnable,c),this.valueSelection.set(h.valueSelection,c),this.canSelectMany.set(h.canSelectMany,c),this.keepScrollPosition.set(!!h.keepScrollPosition,c),this.busy.set(!!h.busy,c),this.renderTab=h.renderTab,this.toggleTab=h.toggleTab,this.callbacks.onType(u),this.registerKeyModsListeners()})}hide(u){this.modifierListeners.disposed||this.modifierListeners.dispose(),this.isShow.get()&&((0,g.transaction)(h=>{this.isShow.set(!1,h),this.items.set([],h)}),u===o.HideReason.ELEMENT_SELECTED?this.callbacks.onOk():this.callbacks.onCancel(),this.callbacks.onHide(u))}blur(){if(!this.isShow.get())return;this.callbacks.onFocusLost()||this.hide(o.HideReason.FOCUS_LOST)}setInput(u,h,c){(0,g.transaction)(r=>{this.items.set(u.items,r),this.actionProvider.set(u.actionProvider||null,r),this.autoFocus.set(h,r)})}updateOptions(u){(0,g.transaction)(h=>{"placeholder"in u&&this.inputPlaceholder.set(u.placeholder,h),"password"in u&&this.isPassword.set(!!u.password,h),"inputEnable"in u&&this.inputEnable.set(!!u.inputEnable,h),"valueSelection"in u&&this.valueSelection.set(u.valueSelection,h),"canSelectMany"in u&&this.canSelectMany.set(!!u.canSelectMany,h),"keepScrollPosition"in u&&this.keepScrollPosition.set(!!u.keepScrollPosition,h),"busy"in u&&this.busy.set(!!u.busy,h),"enabled"in u&&this.inputEnable.set(!!u.enabled,h)})}updateProgressStatus(u){u===!0?this.progressService.withProgress({location:p.VIEW_CONTAINERS.QUICKPICK_PROGRESS},()=>new Promise(h=>this.progressResolve=h)):this.progressResolve&&(this.progressResolve(),this.progressResolve=void 0)}registerKeyModsListeners(){const u=h=>{const c={ctrlCmd:h.ctrlKey||h.metaKey,alt:h.altKey};this.callbacks.onKeyMods(c)};this.modifierListeners.push((0,o.addDisposableListener)(window,o.EventType.KEY_DOWN,u,!0)),this.modifierListeners.push((0,o.addDisposableListener)(window,o.EventType.KEY_UP,u,!0)),this.modifierListeners.push((0,o.addDisposableListener)(window,o.EventType.MOUSE_DOWN,u,!0))}};n.__decorate([(0,a.Autowired)(b.IProgressService),n.__metadata("design:type",Object)],_.prototype,"progressService",void 0),_=n.__decorate([(0,a.Injectable)({multiple:!0}),n.__metadata("design:paramtypes",[Object])],_),e.QuickOpenWidget=_},13978:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.QuickPickServiceImpl=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(74404),b=t(43718),g=t(50426);let _=class{constructor(){this.onDidAcceptEmitter=new b.Emitter,this.onDidAccept=this.onDidAcceptEmitter.event,this.onDidChangeActiveItemsEmitter=new b.Emitter,this.onDidChangeActiveItems=this.onDidChangeActiveItemsEmitter.event}async show(u,h){return new Promise(c=>{const r=this.toItems(u,c);h&&this.quickTitleBar.shouldShowTitleBar(h.title,h.step,h.buttons)&&this.quickTitleBar.attachTitleBar(h.title,h.step,h.totalSteps,h.buttons);const l=h&&h.value?h.value:"";this.quickOpenService.open({onType:(s,d)=>{d(r),this.onDidChangeActiveItemsEmitter.fire(r)}},Object.assign({onClose:()=>{this.quickTitleBar.hide(),c(void 0)},onConfirm:s=>{this.quickTitleBar.hide(),c(s.map(d=>d.getValue()))},fuzzyMatchLabel:!0,fuzzyMatchDescription:!0,prefix:l},h))})}updateOptions(u){this.quickOpenService.updateOptions(u)}hide(u){this.quickOpenService.hide(u)}toItems(u,h){const c=[];for(const r of u){const l=this.toItemOptions(r,h);c.push(new p.QuickOpenItem(l))}return c}toItemOptions(u,h){let c=typeof u=="string"?u:u.label,r=typeof u=="string"?void 0:u.iconClass;const l=typeof u=="string"?u:u.value,s=typeof u=="string"?void 0:u.description,d=typeof u=="string"?void 0:u.detail,f=typeof u=="string"?void 0:u.groupLabel,m=typeof u=="string"?void 0:u.showBorder,v=typeof u=="string"?void 0:u.buttons,y=typeof u=="string"?void 0:u.iconPath,[S,A]=(0,o.getIconClass)(c);return S&&(r=(0,o.getIcon)(S)||(0,o.getExternalIcon)(S),c=` ${A}`),{label:c,description:s,detail:d,iconClass:r,groupLabel:f,showBorder:m,buttons:v,iconPath:y,run:T=>T!==p.Mode.OPEN?!1:(h(l),this.onDidAcceptEmitter.fire(void 0),!0),value:l}}};n.__decorate([(0,a.Autowired)(g.QuickTitleBar),n.__metadata("design:type",g.QuickTitleBar)],_.prototype,"quickTitleBar",void 0),n.__decorate([(0,a.Autowired)(p.QuickOpenService),n.__metadata("design:type",Object)],_.prototype,"quickOpenService",void 0),_=n.__decorate([(0,a.Injectable)()],_),e.QuickPickServiceImpl=_},50426:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.QuickTitleBar=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(74404),b=t(40827),g=t(43718),_=t(28423),E=t(52416);t(50279);const u=t(89802);let h=class{constructor(){this.onDidTriggerButtonEmitter=new g.Emitter,this.isAttached=(0,_.observableValue)(this,!1),this.title=(0,_.observableValue)(this,void 0),this.step=(0,_.observableValue)(this,void 0),this.totalSteps=(0,_.observableValue)(this,void 0),this.buttons=(0,_.observableValue)(this,[]),this.leftButtons=(0,_.derived)(this,r=>this.buttons.read(r).filter(l=>l.side===p.QuickTitleButtonSide.LEFT)),this.rightButtons=(0,_.derived)(this,r=>this.buttons.read(r).filter(l=>l.side===p.QuickTitleButtonSide.RIGHT||typeof l.side>"u"))}get onDidTriggerButton(){return this.onDidTriggerButtonEmitter.event}fireDidTriggerButton(r){this.onDidTriggerButtonEmitter.fire(r)}attachTitleBar(r,l,s,d){(0,_.transaction)(f=>{this.title.set(r,f),this.step.set(l,f),this.totalSteps.set(s,f),d&&this.buttons.set(d.map((m,v)=>{if(g.ThemeIcon.isThemeIcon(m.iconPath))return Object.assign(Object.assign({},m),{iconClass:(0,o.getExternalIcon)(m.iconPath.id),handle:v});const y=(0,u.iconPath2URI)(m.iconPath,this.themeService.getCurrentThemeSync().type),S=y&&this.staticResourceService.resolveStaticResource(y).toString(),A=S&&this.iconService.fromIcon("",S,E.IconType.Background);return Object.assign(Object.assign({},m),{iconClass:A,handler:v})}),f),this.isAttached.set(!0,f)})}hide(){(0,_.transaction)(r=>{this.title.set(void 0,r),this.buttons.set([],r),this.step.set(void 0,r),this.totalSteps.set(void 0,r),this.isAttached.set(!1,r)})}shouldShowTitleBar(r,l,s){return!(0,g.isUndefined)(r)||!(0,g.isUndefined)(l)||!(0,g.isUndefined)(s)&&!!s.length}};n.__decorate([(0,a.Autowired)(E.IThemeService),n.__metadata("design:type",Object)],h.prototype,"themeService",void 0),n.__decorate([(0,a.Autowired)(),n.__metadata("design:type",b.StaticResourceService)],h.prototype,"staticResourceService",void 0),n.__decorate([(0,a.Autowired)(E.IIconService),n.__metadata("design:type",Object)],h.prototype,"iconService",void 0),h=n.__decorate([(0,a.Injectable)()],h),e.QuickTitleBar=h},44854:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.InputBoxImpl=void 0;const n=t(85608),a=t(76003),o=t(81878),p=t(74404),b=t(43718),g=t(50426);let _=class{constructor(u){this._options=u,this.onDidAcceptEmitter=new b.Emitter,this.onDidChangeValueEmitter=new b.Emitter,this.onDidTriggerButtonEmitter=new b.Emitter,this.onDidHideEmitter=new b.Emitter}shouldUpdate(u,h){return h.value!==u.value||h.prompt!==u.prompt||h.placeHolder!==u.placeHolder||h.password!==u.password||h.ignoreFocusOut!==u.ignoreFocusOut||h.enabled!==u.enabled||h.valueSelection!==u.valueSelection||h.title!==u.title||h.step!==u.step||h.totalSteps!==u.totalSteps||h.buttons!==u.buttons||h.validationMessage!==u.validationMessage||h.validationType!==u.validationType||h.busy!==u.busy}updateOptions(u,h=!1){if(!u)return;const c=Object.assign({},this._options);this._options=Object.assign(Object.assign({},this._options),u),!h&&this.shouldUpdate(u,c)&&(this.quickOpenService.updateOptions(u),this.refresh())}refresh(){this.quickOpenService.refresh()}get options(){return this._options}set options(u){this._options=u}open(){let u="",h=!1;this.quickTitleBar.onDidTriggerButton(c=>{this.onDidTriggerButtonEmitter.fire(c.handler)}),this.quickOpenService.open({onType:async(c,r)=>{var l;if(u!==c){if(u=c,this.getDerivedOptionsFromValue){const v=await this.getDerivedOptionsFromValue(c);this.updateOptions(v,!0)}this.onDidChangeValueEmitter.fire(c),h=!0}let s=this.options.prompt;const d=(0,b.localize)("quickopen.quickinput.prompt");this.options&&this.quickTitleBar.shouldShowTitleBar(this.options.title,this.options.step,this.options.buttons)&&this.quickTitleBar.attachTitleBar(this.options.title,this.options.step,this.options.totalSteps,this.options.buttons);const f=this.options.validationMessage;f?this.quickOpenService.showDecoration((l=this.options.validationType)!==null&&l!==void 0?l:o.VALIDATE_TYPE.ERROR):this.quickOpenService.hideDecoration(),s=f||s;const m={run:v=>h&&!f&&v===p.Mode.OPEN&&(this.onDidAcceptEmitter.fire(c),this.options.hideOnDidAccept)?(this.quickTitleBar.hide(),!0):!1};s?(m.label=s,m.detail=d):m.label=d,r([new p.QuickOpenItem(m)])}},{prefix:this.options.value,placeholder:this.options.placeHolder,password:this.options.password,ignoreFocusOut:this.options.ignoreFocusOut,enabled:this.options.enabled,valueSelection:this.options.valueSelection,busy:this.options.busy,onClose:c=>{c&&this.onDidHideEmitter.fire(),this.quickTitleBar.hide()}})}dispose(){this.onDidAcceptEmitter.dispose(),this.onDidChangeValueEmitter.dispose(),this.onDidHideEmitter.dispose(),this.onDidTriggerButtonEmitter.dispose()}hide(){this.quickOpenService.hideDecoration(),this.quickOpenService.hide()}get onDidAccept(){return this.onDidAcceptEmitter.event}get onDidChangeValue(){return this.onDidChangeValueEmitter.event}get onDidTriggerButton(){return this.onDidTriggerButtonEmitter.event}get onDidHide(){return this.onDidHideEmitter.event}};n.__decorate([(0,a.Autowired)(p.QuickOpenService),n.__metadata("design:type",Object)],_.prototype,"quickOpenService",void 0),n.__decorate([(0,a.Autowired)(g.QuickTitleBar),n.__metadata("design:type",g.QuickTitleBar)],_.prototype,"quickTitleBar",void 0),_=n.__decorate([(0,a.Injectable)({multiple:!0}),n.__metadata("design:paramtypes",[Object])],_),e.InputBoxImpl=_},89802:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.iconPath2URI=void 0;const n=t(43718);function a(o,p){if(n.URI.isUri(o))return"codeUri"in o?o:new n.URI(o.toString());if((o?.dark||o?.light)&&p)return p==="dark"?new n.URI(o.dark.toString()):new n.URI(o.light.toString())}e.iconPath2URI=a},74435:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});const n=t(85608);n.__exportStar(t(74404),e),n.__exportStar(t(11143),e)},97821:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(85608).__exportStar(t(74435),e)},57492:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMProviderList=void 0;const n=t(85608),a=n.__importDefault(t(53373)),o=n.__importStar(t(14041)),p=t(97267),b=t(41869),g=t(93899),_=t(40293),E=t(92237),u=t(36367),h=n.__importDefault(t(38201)),c=l=>{var{repository:s,selected:d}=l,f=n.__rest(l,["repository","selected"]);const{provider:m}=s,{title:v,type:y}=(0,u.getSCMRepositoryDesc)(s),S=(0,b.useInjectable)(_.IStatusBarService),A=(m.statusBarCommands||[]).map((T,D)=>S.getElementConfig(`scm.repo.${D}`,{text:T.title,command:T.id,arguments:T.arguments,tooltip:T.tooltip,iconset:"octicon"}));return o.default.createElement("div",Object.assign({className:(0,a.default)(h.default.provider,{[h.default.selected]:d})},f),o.default.createElement("div",{className:h.default.info},o.default.createElement("div",{className:h.default.title},v,"\xA0"),o.default.createElement("div",{className:h.default.type},y,"\xA0"),m.count&&m.count>0?o.default.createElement(p.Badge,null,m.count):null),o.default.createElement("div",{className:h.default.toolbar},A.map(T=>o.default.createElement(E.StatusBarItem,Object.assign({key:T.id,entryId:T.id,className:h.default.status},T)))))},r=({repositoryList:l,selectedRepository:s})=>{if(!s)return null;const d=(0,b.useInjectable)(g.ICtxMenuRenderer),f=(0,b.useInjectable)(g.AbstractContextMenuService),m=(0,o.useCallback)(y=>{y.setSelected(!0),y.focus()},[]),v=(0,o.useCallback)((y,S)=>{S.preventDefault(),S.stopPropagation();const{x:A,y:T}=S.nativeEvent,D=f.createMenu({id:g.MenuId.SCMSourceControl}),w=D.getMergedMenuNodes();D.dispose(),d.show({anchor:{x:A,y:T},menuNodes:w,args:[y.provider.toJSON()]})},[]);return o.default.createElement("div",{className:h.default.scmSelect},l.map(y=>o.default.createElement(c,{key:y.provider.id,selected:y.provider.id===s.provider.id,onClick:m.bind(null,y),onContextMenu:v.bind(null,y),repository:y})))};e.SCMProviderList=r,e.SCMProviderList.displayName="SCMProviderList"},37751:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMResourceInput=e.convertValidationType=void 0;const n=t(85608),a=n.__importStar(t(14041)),o=t(41869),p=t(25918),b=t(40525),g=t(43718),_=t(5567),E=t(52416),u=t(64964),h=n.__importDefault(t(87906));function c(s){return["info","warning","error"][s]}e.convertValidationType=c;function r(s){return o.strings.format(s.input.placeholder,o.isMacintosh?"\u2318Enter":"Ctrl+Enter")}const l=({repository:s,menus:d})=>{const f=(0,o.useInjectable)(g.CommandService),m=(0,o.useInjectable)(E.IIconService),v=(0,o.useDesignStyles)(h.default.scmMenu,"scmMenu"),[y,S]=(0,a.useState)(""),[A,T]=(0,a.useState)(""),[D,w]=(0,a.useState)(!0),[I,O]=(0,a.useState)({}),M=(0,a.useCallback)(B=>{s.input.value=B},[s]),R=(0,a.useCallback)(B=>{const{addonAfter:F,addonBefore:W}=B,j=F,V=W;O(Object.assign(Object.assign(Object.assign({},B),F?{addonAfter:(0,g.isFunction)(j)?a.default.createElement(j,null):F}:{}),W?{addonBefore:(0,g.isFunction)(V)?a.default.createElement(V,null):W}:{}))},[s.input.props]);(0,a.useEffect)(()=>{s.input.props&&R(s.input.props)},[s.input.props]),(0,a.useEffect)(()=>{const B=new o.DisposableStore;return B.add(s.input.onDidChangeProps(F=>{R(F)})),B.add(s.input.onDidChange(F=>{S(F)})),B.add(s.input.onDidChangePlaceholder(()=>{T(r(s))})),B.add(s.input.onDidChangeEnablement(F=>{w(F)})),T(r(s)),()=>{B.dispose()}},[s]);const P=(0,a.useCallback)(()=>{if(!s||!s.provider.acceptInputCommand)return;const{id:B,arguments:F=[]}=s.provider.acceptInputCommand;B&&f.executeCommand(B,...F)},[s]),{onKeyDown:L,onKeyUp:N}=(0,b.useHotKey)([o.isMacintosh?"command":"ctrl","enter"],P),k=s&&s.provider&&d;return a.default.createElement(a.default.Fragment,null,a.default.createElement("div",{className:h.default.scmHeader},a.default.createElement(_.AutoFocusedInput,Object.assign({containerId:u.scmContainerId,className:h.default.scmInput,placeholder:A,value:y,disabled:!D,onKeyDown:B=>L(B.keyCode),onKeyUp:N,onValueChange:M},I))),k&&a.default.createElement(p.InlineMenuBar,{className:v,context:[s.provider,y],type:"button",moreIcon:"down",iconService:m,regroup:(B,F)=>[[B[0]].filter(Boolean),[...B.slice(1),...F]],menus:d}))};e.SCMResourceInput=l,e.SCMResourceInput.displayName="SCMResourceInput"},24748:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMResourceTree=e.TREE_FIELD_NAME=void 0;const n=t(85608),a=n.__importDefault(t(53373)),o=n.__importStar(t(14041)),p=t(97267),b=t(41869),g=t(48560),_=t(49914),E=n.__importDefault(t(91873)),u=t(11579),h=t(74568),c=t(63451);e.TREE_FIELD_NAME="SCM_TREE_TREE_FIELD",e.SCMResourceTree=(0,o.memo)(({height:s})=>{const[d,f]=(0,o.useState)(!1),[m,v]=(0,o.useState)(),y=(0,o.useRef)(!1),S=(0,o.useRef)(null),A=(0,g.useInjectable)(u.SCMTreeModelService),T=(0,g.useInjectable)(_.ViewModelContext),[D,w]=(0,o.useState)(T.alwaysShowActions),I=(0,o.useCallback)(async()=>{A.init(),await A.whenReady,A.treeModel&&await A.treeModel.ensureReady,!y.current&&f(!0)},[d,A]);(0,o.useEffect)(()=>{const B=T.onAlwaysShowActionsChange(F=>{w(F)});return I(),()=>{y.current=!0,B.dispose()}},[]),(0,o.useEffect)(()=>{let B;return d&&(v(A.treeModel),B=A.onDidTreeModelChange(async F=>{F&&await F.ensureReady,v(F)})),()=>{B?.dispose()}},[d]),(0,o.useEffect)(()=>{var B;const F=()=>{A.handleTreeBlur()};return(B=S.current)===null||B===void 0||B.addEventListener("blur",F,!0),()=>{var W;(W=S.current)===null||W===void 0||W.removeEventListener("blur",F,!0),A.handleTreeBlur()}},[S.current]);const O=(0,o.useCallback)(B=>{A.handleTreeHandler(Object.assign(Object.assign({},B),{getModel:()=>A.treeModel,hasDirectFocus:()=>S.current===document.activeElement}))},[]),M=(0,o.useCallback)(B=>R(B)?!1:B.shiftKey,[]),R=(0,o.useCallback)(B=>{const{metaKey:F,ctrlKey:W}=B;return b.isOSX&&F||W},[]),P=(0,o.useCallback)((B,F,W)=>{if(B.stopPropagation(),!F)return;const j=M(B),V=R(B);j?A.handleItemRangeClick(F,W):V?A.handleItemToggleClick(F,W):A.handleItemClick(F,W)},[]),L=(0,o.useCallback)((B,F)=>{B.stopPropagation(),A.toggleDirectory(F)},[]),N=(0,o.useCallback)((B,F,W)=>{B.stopPropagation(),F&&A.handleItemDoubleClick(F,W)},[]),k=(0,o.useCallback)((B,F,W)=>{B.preventDefault(),A.handleContextMenu(B,F,W)},[]);return o.default.createElement("div",{className:(0,a.default)(E.default.scm_tree_container,{"scm-show-actions":D}),tabIndex:-1,ref:S,"data-name":e.TREE_FIELD_NAME},o.default.createElement(l,{isReady:d,model:m,height:s,onTreeReady:O,onItemClick:P,onItemDoubleClick:N,onTwistierClick:L,onContextMenu:k}))}),e.SCMResourceTree.displayName="SCMResourceTree";function r(s,d){return s.isReady===d.isReady&&s.model===d.model&&s.height===d.height}const l=(0,o.memo)(({isReady:s,model:d,height:f,onTreeReady:m,onItemClick:v,onItemDoubleClick:y,onTwistierClick:S,onContextMenu:A})=>{const T=(0,g.useInjectable)(u.SCMTreeModelService),D=(0,b.useAutorun)(T.iconThemeDesc),w=(0,g.useInjectable)(c.SCMTreeService),I=(0,o.useCallback)(O=>o.default.createElement(h.SCMTreeNode,{item:O.item,itemType:O.itemType,decorationService:T.decorationService,labelService:T.labelService,commandService:T.commandService,decorations:T.decorations.getDecorations(O.item),onClick:v,onDoubleClick:y,onTwistierClick:S,onContextMenu:A,defaultLeftPadding:w.isTreeMode?-4:4,leftPadding:w.isTreeMode?8:0,iconTheme:D}),[d,w,T,D]);return s&&d?o.default.createElement(p.RecycleTree,{height:f,itemHeight:h.SCM_TREE_NODE_HEIGHT,onReady:m,model:d,overScanCount:100},I):o.default.createElement("span",{className:E.default.scm_tree_empty_text})},r);l.displayName="SCMResourceTreeView"},38563:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMTreeAPI=e.collectSCMResourceDesc=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(43718),b=t(64964),g=t(49914),_=t(36367),{Path:E}=p.path;function u(c,r){c.type==="file"&&r.push(c.resource);for(const l of c.children)u(l,r);return r}e.collectSCMResourceDesc=u;let h=class extends p.Disposable{constructor(){super(),this.shouldCompactFolders=!1,this.shouldCompactFolders=this.preferenceService.get("scm.listView.compactFolders",!1),this.addDispose(this.preferenceService.onSpecificPreferenceChange("scm.listView.compactFolders",r=>{this.shouldCompactFolders=r.newValue}))}getSCMResource(r){const l=this.getSCMResourceGroups(),s=r.toString();for(const d of l)for(const f of d.elements)if(f.sourceUri.toString()===s)return f}getSCMResourceGroups(){return this.viewModel.scmList.filter(_.isSCMResourceGroup)}get providerId(){var r;return(r=this.viewModel.selectedRepo)===null||r===void 0?void 0:r.provider.id}init(r=b.SCMViewModelMode.Tree){return this.getSCMResourceGroups().map(s=>({id:this.providerId+"_"+s.id,name:s.id,children:r===b.SCMViewModelMode.Tree?this.pathToTree(s.elements):this.pathToList(s.elements),resource:s,type:"group"}))}pathToList(r){return r.map(l=>{const s=this._getPathDesc(l);return{id:`${this.providerId}_${l.resourceGroup.id}_${s}`,name:s,pathname:s,children:[],resource:l,type:"file"}})}pathToTree(r){const l=[],s=Symbol("result"),d=this._initPlainCounterObject(s,l);return r.forEach(f=>{this._getPathDesc(f).split(E.separator).filter(Boolean).reduce((v,y,S,A)=>{if(!v[y]){v[y]=this._initPlainCounterObject(s,[]);const T=A.slice(0,S+1).join(E.separator),D=S===A.length-1?"file":"folder",w={id:`${this.providerId}_${f.resourceGroup.id}_${T}`,name:y,pathname:T,children:v[y][s],resource:D==="file"?f:Object.assign(Object.assign({},f),{sourceUri:o.URI.from(f.sourceUri).parent.codeUri}),type:D};v[s].push(w)}return v[y]},d)}),this.shouldCompactFolders&&this.walkTreeToFold(l),l}_initPlainCounterObject(r,l){const s=Object.create(null);return s[r]=l,s}walkTreeToFold(r){const l=[...r];for(;l.length;){const s=l.pop();s&&(this.foldOnlyChild(s),l.push(...s.children))}}foldOnlyChild(r){for(;r.children.length===1&&r.children[0].children.length;){const l=r.children[0];r.name=`${r.name}${E.separator}${l.name}`,r.pathname=l.pathname,r.children=l.children,r.id=l.id,r.isCompact=!0}}_getPathDesc(r){return p.path.relative(r.resourceGroup.provider.rootUri.path,r.sourceUri.path)}};n.__decorate([(0,a.Autowired)(g.ViewModelContext),n.__metadata("design:type",g.ViewModelContext)],h.prototype,"viewModel",void 0),n.__decorate([(0,a.Autowired)(o.PreferenceService),n.__metadata("design:type",Object)],h.prototype,"preferenceService",void 0),h=n.__decorate([(0,a.Injectable)(),n.__metadata("design:paramtypes",[])],h),e.SCMTreeAPI=h},36556:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMTreeDecorationService=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(41893),b=t(52416);let g=class{constructor(){this.disposeCollection=new o.DisposableStore,this.onDidChangeEmitter=this.disposeCollection.add(new o.Emitter),this.disposeCollection.addAll([this.decorationsService.onDidChangeDecorations(()=>{this.onDidChangeEmitter.fire()}),this.themeService.onThemeChange(()=>{this.onDidChangeEmitter.fire()})])}get onDidChange(){return this.onDidChangeEmitter.event}getDecoration(E,u=!1){E instanceof o.URI&&(E=o.Uri.parse(E.toString()));const h=this.decorationsService.getDecoration(E,u);return h?Object.assign(Object.assign({},h),{color:this.themeService.getColor({id:h.color})}):{color:"",tooltip:"",badge:""}}dispose(){this.disposeCollection.dispose()}};n.__decorate([(0,a.Autowired)(p.IDecorationsService),n.__metadata("design:type",p.IDecorationsService)],g.prototype,"decorationsService",void 0),n.__decorate([(0,a.Autowired)(b.IThemeService),n.__metadata("design:type",Object)],g.prototype,"themeService",void 0),g=n.__decorate([(0,a.Injectable)(),n.__metadata("design:paramtypes",[])],g),e.SCMTreeDecorationService=g},12466:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMTreeModel=void 0;const n=t(85608),a=t(76003),o=t(97267),p=t(36556);let b=class extends o.TreeModel{constructor(_){super(),this.init(_)}init(_){this.root=_,this.root.watcher.on(o.TreeNodeEvent.BranchDidUpdate,()=>{this.dispatchChange()}),this.decorationService.onDidChange(this.dispatchChange)}};n.__decorate([(0,a.Autowired)(p.SCMTreeDecorationService),n.__metadata("design:type",p.SCMTreeDecorationService)],b.prototype,"decorationService",void 0),b=n.__decorate([(0,a.Injectable)({multiple:!0}),n.__param(0,(0,a.Optional)()),n.__metadata("design:paramtypes",[Object])],b),e.SCMTreeModel=b},11579:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMTreeModelService=e.SCMTreeTypes=void 0;const n=t(85608),a=t(76003),o=t(97267),p=t(41869),b=t(77661),g=t(68969),_=t(26542),E=t(54414),u=t(28423),h=t(52416),c=t(51500),r=t(64964),l=t(49914),s=t(36556),d=t(12466),f=t(28087),m=n.__importDefault(t(87440)),v=t(63451);var y;(function(T){T[T.List=1]="List",T[T.Tree=2]="Tree"})(y=e.SCMTreeTypes||(e.SCMTreeTypes={}));const S={hasFolderIcons:!0,hasFileIcons:!0,hidesExplorerArrows:!0};let A=class{constructor(){this._selectedFiles=[],this.disposableCollection=new p.DisposableStore,this.onDidRefreshedEmitter=this.disposableCollection.add(new p.Emitter),this.onDidTreeModelChangeEmitter=this.disposableCollection.add(new p.Emitter),this.treeModelCache=new Map,this.iconThemeDesc=(0,u.observableValue)(this,S),this.clearFileSelectedDecoration=()=>{this._selectedFiles.forEach(D=>{this.selectedDecoration.removeTarget(D)}),this._selectedFiles=[]},this.activeFileDecoration=D=>{if(this.contextMenuFile&&(this.contextMenuDecoration.removeTarget(this.contextMenuFile),this._contextMenuFile=void 0),D){if(this.selectedFiles.length>0)for(const w of this.selectedFiles)this.selectedDecoration.removeTarget(w);this.focusedFile&&this.focusedDecoration.removeTarget(this.focusedFile),this.selectedDecoration.addTarget(D),this.focusedDecoration.addTarget(D),this._focusedFile=D,this._selectedFiles=[D],this.treeModel.dispatchChange()}},this.selectFileDecoration=D=>{this.contextMenuFile&&(this.contextMenuDecoration.removeTarget(this.contextMenuFile),this._contextMenuFile=void 0),D&&(this.selectedFiles.length>0&&this.selectedFiles.forEach(w=>{this.selectedDecoration.removeTarget(w)}),this.focusedFile&&this.focusedDecoration.removeTarget(this.focusedFile),this.selectedDecoration.addTarget(D),this._selectedFiles=[D],this.treeModel.dispatchChange())},this.activeFileFocusedDecoration=(D,w=!1)=>{D!==this.treeModel.root&&(this.focusedFile!==D&&(w?(this.focusedFile&&this.focusedDecoration.removeTarget(this.focusedFile),this._contextMenuFile=D):this.focusedFile&&(this._contextMenuFile=void 0,this.focusedDecoration.removeTarget(this.focusedFile)),D&&(this._selectedFiles.indexOf(D)<0&&(this.selectedDecoration.addTarget(D),this._selectedFiles.push(D)),this.focusedDecoration.addTarget(D),this._focusedFile=D)),this.treeModel.dispatchChange())},this.activeFileSelectedDecoration=D=>{this._selectedFiles.indexOf(D)>-1||(this._selectedFiles.push(D),this.selectedDecoration.addTarget(D),this.treeModel.dispatchChange())},this.toggleFileSelectedDecoration=D=>{const w=this._selectedFiles.indexOf(D);w>-1?(this.focusedFile===D&&(this._focusedDecoration.removeTarget(this.focusedFile),this._focusedFile=void 0),this._selectedFiles.splice(w,1),this.selectedDecoration.removeTarget(D)):(this._selectedFiles.push(D),this.selectedDecoration.addTarget(D),this.focusedFile&&this._focusedDecoration.removeTarget(this.focusedFile),this._focusedFile=D,this.focusedDecoration.addTarget(D)),this.treeModel.dispatchChange()},this.enactiveFileDecoration=()=>{var D;this.focusedFile&&(this.focusedDecoration.removeTarget(this.focusedFile),this._focusedFile=void 0),this.contextMenuFile&&this.contextMenuDecoration.removeTarget(this.contextMenuFile),(D=this.treeModel)===null||D===void 0||D.dispatchChange()},this.activeFileActivedDecoration=D=>{this.contextMenuFile&&this.contextMenuDecoration.removeTarget(this.contextMenuFile),this.focusedFile&&(this.focusedDecoration.removeTarget(this.focusedFile),this._focusedFile=void 0),this.contextMenuDecoration.addTarget(D),this._contextMenuFile=D,this.treeModel.dispatchChange()},this.handleTreeBlur=()=>{this.enactiveFileDecoration()},this._isMutiSelected=!1,this.handleItemRangeClick=(D,w)=>{if(!this.focusedFile)this.handleItemClick(D,w);else if(this.focusedFile&&this.focusedFile!==D){this._isMutiSelected=!0;const I=this.treeModel.root.getIndexAtTreeNode(D),O=this.treeModel.root.getIndexAtTreeNode(this.focusedFile);O>I?this.activeFileDecorationByRange(I,O,I):O<I&&this.activeFileDecorationByRange(O,I,I)}},this.handleItemToggleClick=(D,w)=>{this._isMutiSelected=!0,!(w!==o.TreeNodeType.CompositeTreeNode&&w!==o.TreeNodeType.TreeNode)&&this.toggleFileSelectedDecoration(D)},this.handleContextMenu=(D,w,I)=>{const{x:O,y:M}=D.nativeEvent;if(!w)return;const R=f.SCMResourceGroup.is(w)?w.resource:w.resource.resourceGroup,P=this.viewModel.menus.getRepositoryMenus(R.provider);if(!P)return;w?this.activeFileActivedDecoration(w):this.enactiveFileDecoration();let L;if(f.SCMResourceFolder.is(w)?L=w.arguments:L=this._isMutiSelected?this._getSelectedFiles().map(N=>N.resource.toJSON()):[w.resource.toJSON()],I===o.TreeNodeType.TreeNode){const N=w.resource;this.ctxMenuRenderer.show({anchor:{x:O,y:M},menuNodes:P.getResourceMenu(N).getGroupedMenuNodes()[1],args:L})}else f.SCMResourceGroup.is(w)?this.ctxMenuRenderer.show({anchor:{x:O,y:M},menuNodes:P.getResourceGroupMenu(R).getGroupedMenuNodes()[1],args:L}):this.ctxMenuRenderer.show({anchor:{x:O,y:M},menuNodes:P.getResourceFolderMenu(R).getGroupedMenuNodes()[1],args:L})},this.activeFileDecorationByRange=(D,w,I)=>{this.clearFileSelectedDecoration();for(const O of this.focusedDecoration.appliedTargets.keys())this.focusedDecoration.removeTarget(O);for(;D<=w;D++){const O=this.treeModel.root.getTreeNodeAtIndex(D);O&&(D===I?this.focusedDecoration.addTarget(O):this.focusedDecoration.hasTarget(O)&&this.focusedDecoration.removeTarget(O),this._selectedFiles.push(O),this.selectedDecoration.addTarget(O))}this.treeModel.dispatchChange()},this.handleItemDoubleClick=(D,w)=>{if(this.listOpenMode==="doubleClick"&&(w===o.TreeNodeType.TreeNode?this.openFile(D):this.toggleDirectory(D)),w===o.TreeNodeType.TreeNode){const{currentEditorGroup:I,currentEditor:O}=this.workbenchEditorService;I&&O&&O.currentUri&&p.URI.from(D.resource.sourceUri).isEqual(O.currentUri)&&I.pin(O.currentUri)}},this.handleItemClick=(D,w)=>{this._isMutiSelected=!1,this.activeFileDecoration(D),this.listOpenMode==="singleClick"&&(w===o.TreeNodeType.TreeNode?this.openFile(D):this.toggleDirectory(D))},this.openFile=D=>{var w,I;const O=D,M=(w=O.resource.command)===null||w===void 0?void 0:w.id;M===p.EDITOR_COMMANDS.API_OPEN_EDITOR_COMMAND_ID||M===p.EDITOR_COMMANDS.API_OPEN_DIFF_EDITOR_COMMAND_ID?this.commandService.executeCommand(M,...((I=O.resource.command)===null||I===void 0?void 0:I.arguments)||[]).catch(R=>this.logger.error("Failed to execute command:",R,M)):D.resource.open(!0)},this.toggleDirectory=D=>{D.expanded?this.scmTreeHandle.collapseNode(D):this.scmTreeHandle.expandNode(D)}}init(){this.showProgress(this._whenReady=this.initTreeModel(this.scmTreeService.isTreeMode)),this._whenReady.then(()=>{this.disposableCollection.add(this.scmTreeService.onDidTreeModeChange(w=>{this.showProgress(this._whenReady=this.initTreeModel(w))}))}),this.disposableCollection.add(this.viewModel.onDidSelectedRepoChange(w=>{var I;this._whenReady=this.initTreeModel(this.scmTreeService.isTreeMode,(I=w.provider.rootUri)===null||I===void 0?void 0:I.toString())}));const D=p.Event.any(p.Event.map(this.labelService.onDidChange,()=>{}),this.viewModel.onDidSCMListChange,p.Event.map(p.Event.filter(this.preferenceService.onPreferenceChanged,w=>w.preferenceName==="scm.listView.compactFolders"&&this.scmTreeService.isTreeMode),()=>{}));this.disposableCollection.add(D(()=>{this.refresh()})),this.setIconThemeDesc(this.iconService.currentTheme||S),this.disposableCollection.add(this.iconService.onThemeChange(w=>{this.setIconThemeDesc(w)}))}setIconThemeDesc(D){(0,u.transaction)(w=>{this.iconThemeDesc.set({hasFolderIcons:!!D.hasFolderIcons,hasFileIcons:!!D.hasFileIcons,hidesExplorerArrows:!!D.hidesExplorerArrows},w)})}showProgress(D){this.progressService.withProgress({location:r.scmResourceViewId},()=>D)}get scmTreeHandle(){return this._scmTreeHandle}get contextMenuFile(){return this._contextMenuFile}get selectedDecoration(){return this._selectedDecoration}get focusedDecoration(){return this._focusedDecoration}get contextMenuDecoration(){return this._contextMenuDecoration}get decorations(){return this._activeDecorations}get treeModel(){return this._activeTreeModel}get whenReady(){return this._whenReady}get focusedFile(){return this._focusedFile}get selectedFiles(){return this._selectedFiles}get onDidRefreshed(){return this.onDidRefreshedEmitter.event}get onDidTreeModelChange(){return this.onDidTreeModelChangeEmitter.event}async collapseAll(){await this.treeModel.root.collapsedAll()}async getCacheKey(D=y.List,w){var I;return w||(w=(I=(await this.workspaceService.roots)[0])===null||I===void 0?void 0:I.uri),`${w}_git_${D===y.List?"list":"tree"}`}async initTreeModel(D,w){this.treeModelDisposableCollection&&this.treeModelDisposableCollection.dispose();const I=D?y.Tree:y.List,O=await this.getCacheKey(I,w);if(this.treeModelCache.has(O)){const{treeModel:M,decorations:R,selectedDecoration:P,focusedDecoration:L,contextMenuDecoration:N}=this.treeModelCache.get(O);this._activeTreeModel=M,this._activeDecorations=R,this._selectedDecoration=P,this._focusedDecoration=L,this._contextMenuDecoration=N,await this.refresh()}else{const M=(await this.scmTreeService.resolveChildren())[0];if(!M)return;this._activeTreeModel=this.injector.get(d.SCMTreeModel,[M]),this._activeDecorations=this.initDecorations(M),this.disposableCollection.add(this._activeDecorations),this.treeModelCache.set(O,{treeModel:this._activeTreeModel,decorations:this._activeDecorations,selectedDecoration:this._selectedDecoration,focusedDecoration:this._focusedDecoration,contextMenuDecoration:this._contextMenuDecoration})}this.treeModelDisposableCollection=new p.DisposableCollection,this.onDidTreeModelChangeEmitter.fire(this._activeTreeModel)}dispose(){this.disposableCollection.dispose()}initDecorations(D){return this._activeDecorations=new o.DecorationsManager(D),this._selectedDecoration=new o.Decoration(m.default.mod_selected),this._focusedDecoration=new o.Decoration(m.default.mod_focused),this._contextMenuDecoration=new o.Decoration(m.default.mod_actived),this._activeDecorations.addDecoration(this.selectedDecoration),this._activeDecorations.addDecoration(this.focusedDecoration),this._activeDecorations.addDecoration(this.contextMenuDecoration),this._activeDecorations}handleTreeHandler(D){this._scmTreeHandle=D}_getSelectedFiles(){return this._selectedFiles.filter(D=>!!D&&!f.SCMResourceGroup.is(D))}get listOpenMode(){return this.corePreferences["workbench.list.openMode"]}async refresh(D){var w;D===void 0&&(D=(w=this.treeModel)===null||w===void 0?void 0:w.root),D&&(this.refreshCancelToken&&!this.refreshCancelToken.token.isCancellationRequested&&this.refreshCancelToken.cancel(),this.refreshCancelToken=new p.CancellationTokenSource,await D.refresh(this.refreshCancelToken),this.refreshCancelToken=null)}};n.__decorate([(0,a.Autowired)(_.LabelService),n.__metadata("design:type",_.LabelService)],A.prototype,"labelService",void 0),n.__decorate([(0,a.Autowired)(s.SCMTreeDecorationService),n.__metadata("design:type",s.SCMTreeDecorationService)],A.prototype,"decorationService",void 0),n.__decorate([(0,a.Autowired)(p.CommandService),n.__metadata("design:type",Object)],A.prototype,"commandService",void 0),n.__decorate([(0,a.Autowired)(g.IProgressService),n.__metadata("design:type",Object)],A.prototype,"progressService",void 0),n.__decorate([(0,a.Autowired)(h.IIconService),n.__metadata("design:type",Object)],A.prototype,"iconService",void 0),n.__decorate([(0,a.Autowired)(a.INJECTOR_TOKEN),n.__metadata("design:type",a.Injector)],A.prototype,"injector",void 0),n.__decorate([(0,a.Autowired)(v.SCMTreeService),n.__metadata("design:type",v.SCMTreeService)],A.prototype,"scmTreeService",void 0),n.__decorate([(0,a.Autowired)(l.ViewModelContext),n.__metadata("design:type",l.ViewModelContext)],A.prototype,"viewModel",void 0),n.__decorate([(0,a.Autowired)(b.ICtxMenuRenderer),n.__metadata("design:type",b.ICtxMenuRenderer)],A.prototype,"ctxMenuRenderer",void 0),n.__decorate([(0,a.Autowired)(p.CorePreferences),n.__metadata("design:type",Object)],A.prototype,"corePreferences",void 0),n.__decorate([(0,a.Autowired)(E.WorkbenchEditorService),n.__metadata("design:type",E.WorkbenchEditorService)],A.prototype,"workbenchEditorService",void 0),n.__decorate([(0,a.Autowired)(p.PreferenceService),n.__metadata("design:type",Object)],A.prototype,"preferenceService",void 0),n.__decorate([(0,a.Autowired)(c.IWorkspaceService),n.__metadata("design:type",Object)],A.prototype,"workspaceService",void 0),n.__decorate([(0,a.Autowired)(p.ILogger),n.__metadata("design:type",Object)],A.prototype,"logger",void 0),A=n.__decorate([(0,a.Injectable)()],A),e.SCMTreeModelService=A},28087:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMResourceFile=e.SCMResourceFolder=e.SCMResourceGroup=e.SCMResourceRoot=void 0;const n=t(85608),a=t(97267),o=t(41869),p=t(36367),b=t(38563);class g extends a.CompositeTreeNode{static is(c){return!!c&&!c.parent}constructor(c,r){super(c,void 0),this.isTree=r}get name(){return`SCMTree_${this.isTree?"Tree":"List"}_${this.id}`}get expanded(){return!0}dispose(){super.dispose()}}e.SCMResourceRoot=g;class _ extends a.CompositeTreeNode{static is(c){return a.CompositeTreeNode.is(c)&&!!c.resource&&(0,p.isSCMResourceGroup)(c.resource)}constructor(c,r,l,s){super(c,r),this.raw=l,this.resource=s,this.isExpanded=!0}get displayName(){return this.resource.label}get uri(){return new o.URI(`scm-group://${this.resource.id}`)}}n.__decorate([o.memoize,n.__metadata("design:type",Object),n.__metadata("design:paramtypes",[])],_.prototype,"displayName",null),n.__decorate([o.memoize,n.__metadata("design:type",o.URI),n.__metadata("design:paramtypes",[])],_.prototype,"uri",null),e.SCMResourceGroup=_;class E extends a.CompositeTreeNode{constructor(c,r,l,s,d){super(c,r,void 0,{name:d?l.name:l.pathname}),this.raw=l,this.resource=s,this.description="",this.isExpanded=!0}get displayName(){return this.raw.name}get uri(){return new o.URI(this.raw.resource.sourceUri)}get tooltip(){const c=this.resource;return o.path.join(c.resourceGroup.provider.rootUri.path,this.raw.pathname)}get arguments(){return(0,b.collectSCMResourceDesc)(this.raw,[])}}n.__decorate([o.memoize,n.__metadata("design:type",String),n.__metadata("design:paramtypes",[])],E.prototype,"displayName",null),n.__decorate([o.memoize,n.__metadata("design:type",o.URI),n.__metadata("design:paramtypes",[])],E.prototype,"uri",null),n.__decorate([o.memoize,n.__metadata("design:type",String),n.__metadata("design:paramtypes",[])],E.prototype,"tooltip",null),e.SCMResourceFolder=E;class u extends a.TreeNode{constructor(c,r,l,s,d){super(c,r,void 0,{name:d?l.name:l.pathname}),this.raw=l,this.resource=s,this.isTree=d}get displayName(){return this.raw.name}get uri(){return new o.URI(this.raw.resource.sourceUri)}get description(){if(this.isTree)return"";const c=this.resource,r=o.path.parse(c.sourceUri.path);return o.path.relative(c.resourceGroup.provider.rootUri.path,r.dir)}get tooltip(){return this.resource.sourceUri.path}}n.__decorate([o.memoize,n.__metadata("design:type",String),n.__metadata("design:paramtypes",[])],u.prototype,"displayName",null),n.__decorate([o.memoize,n.__metadata("design:type",o.URI),n.__metadata("design:paramtypes",[])],u.prototype,"uri",null),n.__decorate([o.memoize,n.__metadata("design:type",String),n.__metadata("design:paramtypes",[])],u.prototype,"description",null),n.__decorate([o.memoize,n.__metadata("design:type",String),n.__metadata("design:paramtypes",[])],u.prototype,"tooltip",null),e.SCMResourceFile=u},74568:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMTreeNode=e.SCMResourceNode=e.SCMResourceGroupNode=e.SCM_BADGE_LIMIT=e.SCM_TREE_NODE_HEIGHT=void 0;const n=t(85608),a=n.__importDefault(t(53373)),o=n.__importStar(t(14041)),p=t(97267),b=t(41869),g=t(25918),_=t(52416),E=t(49914),u=t(28087),h=n.__importDefault(t(87440));e.SCM_TREE_NODE_HEIGHT=22,e.SCM_BADGE_LIMIT=99;const c=({item:s,defaultLeftPadding:d=8,leftPadding:f=8,onClick:m,onDoubleClick:v,onContextMenu:y,itemType:S,decorations:A,onTwistierClick:T})=>{const D=(0,b.useInjectable)(E.ViewModelContext),w=`${d+(s.depth||0)*(f||0)}px`,I=(0,b.useDesignStyles)(h.default.expansion_toggle,"expansion_toggle"),O=(0,b.useDesignStyles)(h.default.scm_tree_node,"scm_tree_node"),M=s.resource,R=o.default.useCallback(()=>{const W=D.menus.getRepositoryMenus(M.provider).getResourceGroupMenu(M);return o.default.createElement("div",{className:h.default.scm_tree_node_actions},o.default.createElement(g.InlineMenuBar,{context:[M],menus:W,separator:"inline"}))},[M]),P=(0,o.useCallback)(F=>{F.nativeEvent.button===b.MouseEventButton.Right&&y(F,s,S)},[y]),L=(0,o.useCallback)(F=>{m(F,s,S)},[m]),N=(0,o.useCallback)(F=>{v(F,s,S)},[v]),k=(0,o.useCallback)((F,W)=>A&&A?.classlist.indexOf(h.default.mod_loading)>-1?o.default.createElement(p.Loading,null):o.default.createElement("div",{onClick:W,className:(0,a.default)(h.default.scm_tree_node_segment,I,(0,b.getIcon)("arrow-right"),{[`${h.default.mod_collapsed}`]:!F.expanded})}),[A]),B=(0,o.useCallback)(F=>{(S===p.TreeNodeType.TreeNode||S===p.TreeNodeType.CompositeTreeNode)&&(T?T(F,s,S):m(F,s,S))},[T,m]);return o.default.createElement("div",{key:s.id,onClick:L,onDoubleClick:N,onContextMenu:P,className:(0,a.default)(O,A?A.classlist:null),style:{height:e.SCM_TREE_NODE_HEIGHT,lineHeight:`${e.SCM_TREE_NODE_HEIGHT}px`,paddingLeft:w},"data-id":s.id},o.default.createElement("div",{className:(0,a.default)(h.default.scm_tree_node_content)},k(s,B),o.default.createElement("div",{className:h.default.scm_tree_node_overflow_wrap},o.default.createElement("div",{className:(0,a.default)(h.default.scm_tree_node_segment,h.default.scm_tree_node_displayname)},s.displayName)),R(),o.default.createElement("div",{className:(0,a.default)(h.default.scm_tree_node_segment,h.default.scm_tree_node_tail)},o.default.createElement(p.Badge,null,s.resource.elements.length))))};e.SCMResourceGroupNode=c;const r=({item:s,defaultLeftPadding:d=8,leftPadding:f=8,onClick:m,onDoubleClick:v,onTwistierClick:y,onContextMenu:S,itemType:A,decorationService:T,labelService:D,decorations:w,iconTheme:I})=>{const O=(0,b.useInjectable)(E.ViewModelContext),M=u.SCMResourceGroup.is(s)?null:T.getDecoration(s.uri,!1),R=(0,b.useDesignStyles)(h.default.expansion_toggle,"expansion_toggle"),P=(0,b.useDesignStyles)(h.default.scm_tree_node,"scm_tree_node"),L=s.resource,N=(0,o.useCallback)(()=>{const se=O.menus.getRepositoryMenus(L.resourceGroup.provider);let ae,de;return A===p.TreeNodeType.TreeNode?(ae=se.getResourceMenu(L),de=[L]):(ae=se.getResourceFolderMenu(L.resourceGroup),de=s.arguments),o.default.createElement("div",{className:h.default.scm_tree_node_actions},o.default.createElement(g.InlineMenuBar,{menus:ae,context:de,separator:"inline"}))},[A,L.resourceGroup]),k=(0,o.useCallback)(se=>{m(se,s,A)},[m]),B=(0,o.useCallback)(se=>{v(se,s,A)},[v]),F=(0,o.useCallback)(se=>{se.nativeEvent.button===b.MouseEventButton.Right&&S(se,s,A)},[S]),W=u.SCMResourceFolder.is(s),{hidesExplorerArrows:j,hasFolderIcons:V}=I,K=`${d+(s.depth||0)*(f||0)+(W?0:V?j?0:20:0)}px`,H=se=>{const ae=D.getIcon(se.uri,{isDirectory:u.SCMResourceFolder.is(se)});return o.default.createElement("div",{className:(0,a.default)(h.default.file_icon,ae),style:{height:e.SCM_TREE_NODE_HEIGHT,lineHeight:`${e.SCM_TREE_NODE_HEIGHT}px`}})},z=(0,o.useCallback)(se=>o.default.createElement("div",{className:(0,a.default)(h.default.scm_tree_node_segment,h.default.scm_tree_node_displayname)},u.SCMResourceFolder.is(se)?se.displayName:D.getName(se.uri)),[D]),G=(0,o.useCallback)(se=>o.default.createElement("div",{className:(0,a.default)(h.default.scm_tree_node_segment_grow,h.default.scm_tree_node_description)},se.description),[]),U=(0,b.useInjectable)(_.IThemeService),$=()=>{if(!M)return null;const se=M.badge||s.resource.decorations.letter||"",ae=M.color||s.resource.decorations.color,de=ae&&U.getColor({id:ae});return o.default.createElement("div",{className:h.default.scm_tree_node_status,style:{color:de}},se.slice())},Y=(0,o.useCallback)(()=>{let se=s.tooltip;return M&&M.badge&&(se+=` \u2022 ${M.tooltip||s.resource.decorations.tooltip||""}`),se},[s]),Q=(0,o.useCallback)(se=>{(A===p.TreeNodeType.TreeNode||A===p.TreeNodeType.CompositeTreeNode)&&(y?y(se,s,A):m(se,s,A))},[y,m]),te=(0,o.useCallback)((se,ae)=>u.SCMResourceFolder.is(se)?w&&w?.classlist.indexOf(h.default.mod_loading)>-1?o.default.createElement(p.Loading,null):o.default.createElement("div",{onClick:ae,className:(0,a.default)(h.default.scm_tree_node_segment,R,(0,b.getIcon)("arrow-right"),{[`${h.default.mod_collapsed}`]:!se.expanded})}):null,[w]);return o.default.createElement("div",{key:s.id,onClick:k,onDoubleClick:B,onContextMenu:F,title:Y(),className:(0,a.default)(P,w?w.classlist:null),style:{color:M?M.color:"",paddingLeft:K,height:e.SCM_TREE_NODE_HEIGHT,lineHeight:`${e.SCM_TREE_NODE_HEIGHT}px`},"data-id":s.id},o.default.createElement("div",{className:(0,a.default)(h.default.scm_tree_node_content)},te(s,Q),H(s),o.default.createElement("div",{className:h.default.scm_tree_node_overflow_wrap,style:{textDecoration:M&&M.badge==="D"?"line-through":"none"}},z(s),G(s)),N(),o.default.createElement("div",{className:(0,a.default)(h.default.scm_tree_node_segment,h.default.scm_tree_node_tail)},$())))};e.SCMResourceNode=r;const l=s=>{const{item:d}=s,f=n.__rest(s,["item"]);return u.SCMResourceGroup.is(d)?o.default.createElement(e.SCMResourceGroupNode,Object.assign({item:d},f)):o.default.createElement(e.SCMResourceNode,Object.assign({},s,{item:d}))};e.SCMTreeNode=l},63451:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMTreeService=void 0;const n=t(85608),a=t(76003),o=t(97267),p=t(41869),b=t(43718),g=t(64964),_=t(38563),E=t(28087);let u=class extends o.Tree{get isTreeMode(){return this._isTreeMode}get onDidTreeModeChange(){return this.onDidTreeModeChangeEmitter.event}constructor(){super(),this.onDidTreeModeChangeEmitter=new p.Emitter,this._isTreeMode=this.preferenceService.get("scm.defaultViewMode")===g.SCMViewModelMode.Tree,this.toDispose.push(this.preferenceService.onSpecificPreferenceChange("scm.defaultViewMode",c=>{const r=c.newValue===g.SCMViewModelMode.Tree;r!==this._isTreeMode&&(this._isTreeMode=r,this.onDidTreeModeChangeEmitter.fire(this._isTreeMode))}))}changeTreeMode(c){this.preferenceService.set("scm.defaultViewMode",c?g.SCMViewModelMode.Tree:g.SCMViewModelMode.List,b.PreferenceScope.User)}async resolveChildren(c){let r=[];if(!c)this._root=new E.SCMResourceRoot(this,this._isTreeMode),r=[this._root];else if(E.SCMResourceRoot.is(c)){const l=this.scmTreeAPI.init(this._isTreeMode?g.SCMViewModelMode.Tree:g.SCMViewModelMode.List);r.push(...l.map(s=>this.toNode(s,c,this._isTreeMode)))}else if(c.raw){const l=c.raw.children;r.push(...l.map(s=>this.toNode(s,c,this._isTreeMode)))}return r}toNode(c,r,l){if(c.type==="group"){const d=c;return new E.SCMResourceGroup(this,r,d,d.resource)}const s=c;return c.type==="file"?new E.SCMResourceFile(this,r,s,s.resource,l):new E.SCMResourceFolder(this,r,s,s.resource,l)}sortComparator(c,r){if(E.SCMResourceGroup.is(c)&&E.SCMResourceGroup.is(r)){const l={merge:3,index:2,workingTree:1};return l[r.resource.id]-l[c.resource.id]}return super.sortComparator(c,r)}dispose(){super.dispose(),this.onDidTreeModeChangeEmitter.dispose()}};n.__decorate([(0,a.Autowired)(_.SCMTreeAPI),n.__metadata("design:type",_.SCMTreeAPI)],u.prototype,"scmTreeAPI",void 0),n.__decorate([(0,a.Autowired)(p.PreferenceService),n.__metadata("design:type",Object)],u.prototype,"preferenceService",void 0),u=n.__decorate([(0,a.Injectable)(),n.__metadata("design:paramtypes",[])],u),e.SCMTreeService=u},42126:(x,e,t)=>{"use strict";var n;Object.defineProperty(e,"__esModule",{value:!0}),e.DirtyDiffDecorator=void 0;const a=t(85608),o=t(76003),p=t(41869),b=t(54414),g=t(52416),_=a.__importStar(t(43255)),E=a.__importStar(t(88104)),u=t(7168),h=t(73018),c=t(24870),r=t(84416);let l=n=class extends p.Disposable{static createDecoration(d,f){const m={description:"dirty-diff-decoration",isWholeLine:f.isWholeLine};return f.gutter&&(m.linesDecorationsClassName=`dirty-diff-glyph ${d}`),f.overview.active&&(m.overviewRuler={color:(0,g.themeColorFromId)(f.overview.color),position:b.OverviewRulerLane.Left}),f.minimap.active&&(m.minimap={color:(0,g.themeColorFromId)(f.minimap.color),position:_.MinimapPosition.Gutter}),E.ModelDecorationOptions.createDynamic(m)}constructor(d,f){super(),this.model=f,this.decorations=[],this.editorModel=d;const m=this.scmPreferences["scm.diffDecorations"],v=m==="all"||m==="gutter",y=m==="all"||m==="overview",S=m==="all"||m==="minimap";this.modifiedOptions=n.createDecoration("dirty-diff-modified",{gutter:v,overview:{active:y,color:u.overviewRulerModifiedForeground},minimap:{active:S,color:u.minimapGutterModifiedBackground},isWholeLine:!0}),this.addedOptions=n.createDecoration("dirty-diff-added",{gutter:v,overview:{active:y,color:u.overviewRulerAddedForeground},minimap:{active:S,color:u.minimapGutterAddedBackground},isWholeLine:!0}),this.deletedOptions=n.createDecoration("dirty-diff-deleted",{gutter:v,overview:{active:y,color:u.overviewRulerDeletedForeground},minimap:{active:S,color:u.minimapGutterDeletedBackground},isWholeLine:!1}),this.addDispose(f.onDidChange(this.onDidChange,this))}onDidChange(){if(!this.editorModel)return;const d=this.model.changes.map(f=>{const m=(0,r.getChangeType)(f),v=f[2],y=f[3]-1||v-1;switch(m){case r.ChangeType.Add:return{range:{startLineNumber:v,startColumn:1,endLineNumber:y,endColumn:1},options:this.addedOptions};case r.ChangeType.Delete:return{range:{startLineNumber:v-1,startColumn:Number.MAX_VALUE,endLineNumber:v>0?v-1:v,endColumn:Number.MAX_VALUE},options:this.deletedOptions};case r.ChangeType.Modify:return{range:{startLineNumber:v,startColumn:1,endLineNumber:y,endColumn:1},options:this.modifiedOptions}}});this.decorations=this.editorModel.getMonacoModel().deltaDecorations(this.decorations,d)}dispose(){super.dispose(),this.editorModel&&!this.editorModel.getMonacoModel().isDisposed()&&this.editorModel.getMonacoModel().deltaDecorations(this.decorations,[]),this.editorModel=null,this.decorations=[]}};a.__decorate([(0,o.Autowired)(h.SCMPreferences),a.__metadata("design:type",Object)],l.prototype,"scmPreferences",void 0),l=n=a.__decorate([(0,o.Injectable)({multiple:!0}),a.__param(0,(0,o.Optional)()),a.__param(1,(0,o.Optional)()),a.__metadata("design:paramtypes",[Object,c.DirtyDiffModel])],l),e.DirtyDiffDecorator=l},24870:(x,e,t)=>{"use strict";var n;Object.defineProperty(e,"__esModule",{value:!0}),e.DirtyDiffModel=e.isDirtyDiffVisible=void 0;const a=t(85608),o=t(76003),p=t(41869),b=t(40191),g=t(54414),_=t(57517),E=a.__importStar(t(20868)),u=t(28240),h=t(83e3),c=t(64964),r=t(84416),{sortedDiff:l}=p.arrays;e.isDirtyDiffVisible=new b.RawContextKey("dirtyDiffVisible",!1);let s=n=class extends p.Disposable{get original(){return this._originalModel}get modified(){return this._editorModel}get changes(){return this._changes}get editorWorkerService(){return h.StandaloneServices.get(u.IEditorWorkerService)}constructor(f){super(),this.repositoryDisposables=new Set,this._onDidChange=new p.Emitter,this.onDidChange=this._onDidChange.event,this._changes=[],this._editorModel=f,this.diffDelayer=new p.ThrottledDelayer(200),this.addDispose(p.Disposable.create(()=>{this.diffDelayer&&(this.diffDelayer.isTriggered()||this.diffDelayer.cancel(),this.diffDelayer=null)})),this.addDispose(f.getMonacoModel().onDidChangeContent(()=>this.triggerDiff())),this.addDispose(f.onDidChangeEncoding(()=>{var m;(m=this.diffDelayer)===null||m===void 0||m.cancel(),this._originalModel=null,this._originalURIPromise=void 0,this._changes=[],this.triggerDiff()})),this.addDispose(this.scmService.onDidAddRepository(this.onDidAddRepository,this)),this.scmService.repositories.forEach(m=>this.onDidAddRepository(m)),this.triggerDiff(),this.originalModelDisposables=new p.DisposableStore,this.addDispose(this.originalModelDisposables),this.isDirtyDiffVisible=e.isDirtyDiffVisible.bind(this.contextKeyService)}onDidAddRepository(f){const m=new p.DisposableStore;this.repositoryDisposables.add(m),m.add((0,p.toDisposable)(()=>this.repositoryDisposables.delete(m)));const v=p.Event.any(f.provider.onDidChange,f.provider.onDidChangeResources);m.add(v(this.triggerDiff,this));const y=p.Event.filter(this.scmService.onDidRemoveRepository,S=>S===f);m.add(y(()=>(0,p.dispose)(m),null)),this.triggerDiff()}triggerDiff(){return this.diffDelayer?this.diffDelayer.trigger(()=>this.diff()).then(f=>{if(!this._editorModel||this._editorModel.getMonacoModel().isDisposed()||!this._originalModel||this._originalModel.getMonacoModel().isDisposed())return;(!f||this._originalModel.getMonacoModel().getValueLength()===0)&&(f=[]);const m=l(this.changes,f,r.compareChanges);this._changes=f,m.length>0&&this._onDidChange.fire(m)}):Promise.resolve(null)}canSyncModelForDiff(f){if(!f)return!1;const m=n.maxFileSize*1024*1024,v=f.getValueLength();return m===0||v<=m}async diff(){var f;const m=await this.getOriginalURIPromise();if(!this._editorModel||this._editorModel.getMonacoModel().isDisposed()||!m)return[];if(!this.canSyncModelForDiff((f=this._originalModel)===null||f===void 0?void 0:f.getMonacoModel())||!this.canSyncModelForDiff(this._editorModel.getMonacoModel()))return[];const v=await this.editorWorkerService.computeDiff(m,this._editorModel.getMonacoModel().uri,{ignoreTrimWhitespace:!1,maxComputationTimeMs:1e3,computeMoves:!1},"advanced");return v&&this.getLineChanges(v.changes)}getLineChanges(f){return f.map(m=>{var v;return[m.original.startLineNumber,m.original.endLineNumberExclusive,m.modified.startLineNumber,m.modified.endLineNumberExclusive,(v=m.innerChanges)===null||v===void 0?void 0:v.map(y=>[y.originalRange.startLineNumber,y.originalRange.startColumn,y.originalRange.endLineNumber,y.originalRange.endColumn,y.modifiedRange.startLineNumber,y.modifiedRange.startColumn,y.modifiedRange.endLineNumber,y.modifiedRange.endColumn])]})}getOriginalURIPromise(){return this._originalURIPromise?this._originalURIPromise:(this._originalURIPromise=this.getOriginalResource().then(f=>this._editorModel?f?this._originalModel&&this._originalModel.uri.toString()===f.toString()?f:this.documentModelManager.createModelReference(new p.URI(f)).then(m=>{if(!this._editorModel||!m)return null;this._originalModel=m.instance,this._originalModel.updateEncoding(this._editorModel.encoding);const v=this._originalModel.getMonacoModel();return this.originalModelDisposables.clear(),this.originalModelDisposables.add(m),this.originalModelDisposables.add(v.onDidChangeContent(()=>this.triggerDiff())),f}):(this._originalModel=null,null):null),this._originalURIPromise.finally(()=>{this._originalURIPromise=void 0}))}getOriginalResource(){if(!this._editorModel)return Promise.resolve(null);const f=this._editorModel.getMonacoModel().uri;return(0,p.first)(this.scmService.repositories.map(m=>()=>m.provider.getOriginalResource(f)))}findNextClosestChange(f,m=!0){for(let v=0;v<this.changes.length;v++){const y=this.changes[v];if(m){if((0,r.getModifiedEndLineNumber)(y)>=f)return v}else if(y[2]>f)return v}return 0}findNextClosestChangeLineNumber(f,m=!0){const v=this.findNextClosestChange(f,m);return this.changes[v][2]}findPreviousClosestChange(f,m=!0){for(let v=this.changes.length-1;v>=0;v--){const y=this.changes[v];if(m){if(y[2]<=f)return v}else if((0,r.getModifiedEndLineNumber)(y)<f)return v}return this.changes.length-1}findPreviousClosestChangeLineNumber(f,m=!0){const v=this.findPreviousClosestChange(f,m);return this.changes[v][2]}getChangeFromRange(f){const m=this.findNextClosestChange(f.startLineNumber);return{change:this.changes[m],count:m+1}}async onClickDecoration(f,m){if(this._widget)if(this._widget===f){this._widget.dispose();return}else this._widget.dispose();if(this._widget=f,this._originalModel&&this._editorModel){let O=function(M,R){f.updateCurrent(M),f.show(E.positionToRange(R[3]-1),n.heightInLines),D.isDirtyDiffVisible.set(!0)};const v=this._originalModel.uri,y=this._editorModel.uri,S=this.editorService.createDiffEditor(f.getContentNode(),{automaticLayout:!0,renderSideBySide:!1,hideUnchangedRegions:{enabled:!1}}),A=await this.documentModelManager.createModelReference(v),T=await this.documentModelManager.createModelReference(y);S.compare(A,T),S.modifiedEditor.monacoEditor.updateOptions({readOnly:!0}),S.originalEditor.monacoEditor.updateOptions({readOnly:!0}),S.modifiedEditor.monacoEditor.revealLineInCenter(m.startLineNumber-Math.round(n.heightInLines/2)),f.addDispose(S.originalEditor.monacoEditor.onDidChangeModelContent(()=>{f.relayout(n.heightInLines)}));const D=this;f.addDispose(this.onDidChange(()=>{const{change:M,count:R}=this.getChangeFromRange(m)||{};O(R,M)}));const{change:w,count:I}=this.getChangeFromRange(m)||{};I&&w&&O(I,w),f.onDispose(()=>{this._widget=null,D.isDirtyDiffVisible.set(!1)})}}dispose(){super.dispose(),this._editorModel=null,this._originalModel=null,this.repositoryDisposables.forEach(f=>(0,p.dispose)(f)),this.repositoryDisposables.clear()}};s.heightInLines=10,s.maxFileSize=50,a.__decorate([(0,o.Autowired)(p.IContextKeyService),a.__metadata("design:type",Object)],s.prototype,"contextKeyService",void 0),a.__decorate([(0,o.Autowired)(c.SCMService),a.__metadata("design:type",c.SCMService)],s.prototype,"scmService",void 0),a.__decorate([(0,o.Autowired)(_.IEditorDocumentModelService),a.__metadata("design:type",Object)],s.prototype,"documentModelManager",void 0),a.__decorate([(0,o.Autowired)(g.EditorCollectionService),a.__metadata("design:type",g.EditorCollectionService)],s.prototype,"editorService",void 0),s=n=a.__decorate([(0,o.Injectable)({multiple:!0}),a.__param(0,(0,o.Optional)()),a.__metadata("design:paramtypes",[Object])],s),e.DirtyDiffModel=s},84416:(x,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.toChange=e.getChangeType=e.ChangeType=e.getModifiedEndLineNumber=e.compareChanges=void 0;function t(b,g){let _=b[2]-g[2];return _!==0||(_=b[3]-g[3],_!==0)||(_=b[0]-g[0],_!==0)?_:b[1]-g[1]}e.compareChanges=t;function n(b){return b[3]===0?b[2]===0?1:b[2]:b[3]}e.getModifiedEndLineNumber=n;var a;(function(b){b.Modify="Modify",b.Add="Add",b.Delete="Delete"})(a=e.ChangeType||(e.ChangeType={}));function o(b){return b[1]-b[0]===0?a.Add:b[1]>b[0]&&b[2]===b[3]?a.Delete:a.Modify}e.getChangeType=o;function p(b){switch(o(b)){case a.Add:return{originalStartLineNumber:b[0],originalEndLineNumber:0,modifiedStartLineNumber:b[2],modifiedEndLineNumber:b[3]};case a.Modify:return{originalStartLineNumber:b[0],originalEndLineNumber:b[1],modifiedStartLineNumber:b[2],modifiedEndLineNumber:b[3]};case a.Delete:return{originalStartLineNumber:b[0],originalEndLineNumber:b[1],modifiedStartLineNumber:b[2],modifiedEndLineNumber:0};default:return{originalStartLineNumber:b[0],originalEndLineNumber:b[1],modifiedStartLineNumber:b[2],modifiedEndLineNumber:b[3]}}}e.toChange=p},54595:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.DirtyDiffWidget=e.DirtyDiffWidgetActionType=void 0;const n=t(41869),a=t(87308),o=t(31324),p=t(64964),b=t(84416);var g;(function(E){E[E.close=0]="close",E[E.save=1]="save",E[E.reset=2]="reset",E[E.next=3]="next",E[E.previous=4]="previous"})(g=e.DirtyDiffWidgetActionType||(e.DirtyDiffWidgetActionType={}));class _ extends a.ZoneWidget{_fillContainer(u){}get uri(){return n.URI.from(this.editor.getModel().uri)}constructor(u,h,c){super(u),this.commandService=c,this._currentChangeIndex=0,this._model=h,this._wrapper=document.createElement("div"),this._head=document.createElement("div"),this._content=document.createElement("div"),this._container.appendChild(this._wrapper),this._wrapper.appendChild(this._head),this._wrapper.appendChild(this._content)}get currentIndex(){return this._currentChangeIndex}updateCurrent(u){this._currentChangeIndex=u}applyStyle(){if(!this._title)return;this._title.children[0]&&this._title.removeChild(this._title.children[0]);const u=document.createElement("span");u.className="dirty-diff-widget-title-detail",u.innerText=(0,n.formatLocalize)("scm.dirtyDiff.changes",this._currentChangeIndex,this._model.changes.length),this._title.appendChild(u)}getBorderColor(u){switch(u){case b.ChangeType.Add:return"var(--editorGutter-addedBackground)";case b.ChangeType.Modify:return"var(--editorGutter-modifiedBackground)";case b.ChangeType.Delete:return"var(--editorGutter-deletedBackground)"}}applyClass(){this._wrapper.className="dirty-diff-widget-wrapper",this._head.className="dirty-diff-widget-header",this._content.className="dirty-diff-widget-content";const u=this._model.changes[this._currentChangeIndex-1],h=(0,b.getChangeType)(u),c=this.getBorderColor(h);this._head.style.borderTopColor=c,this._head.style.borderBottomColor=c,this._content.style.borderBottomColor=c;const r=this.editor.getOption(o.EditorOption.lineHeight),l=Math.ceil(r*1.2);this._head.style.height=`${l}px`,this._renderTitle();const s=this.editor.getModel();if(!s)throw new Error("Not found model");this._title.innerText=n.path.basename(s.uri.path),this._title.className="file-name",this._actions.className="file-actions",this._renderActions()}getContentNode(){return this._content}_renderTitle(){this._head.children.length===0&&(this._title=document.createElement("div"),this._actions=document.createElement("div"),this._head.appendChild(this._title),this._head.appendChild(this._actions))}_addAction(u,h){const c=document.createElement("div");return c.className=`kt-icon codicon codicon-${u}`,this._actions.appendChild(c),c.onclick=()=>this.handleAction(h),c}_renderActions(){this._actions.children.length===0&&(this._addAction("add",g.save),this._addAction("discard",g.reset),this._addAction("arrow-up",g.next),this._addAction("arrow-down",g.previous),this._addAction("close",g.close))}relayout(u){this._relayout(u)}handleAction(u){let h;const c=this.currentRange,r=[this.uri,this._model.changes.map(b.toChange),this._currentChangeIndex-1];switch(u){case g.next:h=this._model.findNextClosestChangeLineNumber(c.startLineNumber,!1),h&&h!==c.startLineNumber&&this.commandService.executeCommand(p.OPEN_DIRTY_DIFF_WIDGET.id,h);break;case g.previous:h=this._model.findPreviousClosestChangeLineNumber(c.startLineNumber,!1),h&&h!==c.startLineNumber&&this.commandService.executeCommand(p.OPEN_DIRTY_DIFF_WIDGET.id,h);break;case g.save:this.commandService.executeCommand("git.stageChange",...r),this.dispose();break;case g.reset:this.commandService.executeCommand("git.revertChange",...r),this.dispose();break;case g.close:this.dispose();break;default:break}}}e.DirtyDiffWidget=_},71972:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.DirtyDiffWorkbenchController=e.DirtyDiffItem=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(43718),b=t(54414),g=t(57517),_=n.__importStar(t(20868)),E=t(62663),u=t(64964),h=t(73018),c=t(42126),r=t(24870),l=t(54595);t(22861);class s{constructor(m,v){this.model=m,this.decorator=v}dispose(){this.decorator.dispose(),this.model.dispose()}}e.DirtyDiffItem=s;let d=class extends o.Disposable{constructor(){super(),this.enabled=!1,this.models=[],this.widgets=new Map,this.items=Object.create(null),this.transientDisposables=new o.DisposableStore,this.keybindingRegistry.registerKeybinding({command:u.CLOSE_DIRTY_DIFF_WIDGET.id,keybinding:"esc",when:r.isDirtyDiffVisible.equalsTo(!0)})}start(){const m=o.Event.filter(this.scmPreferences.onPreferenceChanged,y=>y.affects("scm.diffDecorations"));this.addDispose(m(this.onDidChangeConfiguration,this)),this.onDidChangeConfiguration(),o.Event.filter(this.scmPreferences.onPreferenceChanged,y=>y.affects("scm.diffDecorationsGutterWidth"))(this.onDidChangeDiffWidthConfiguration,this),this.onDidChangeDiffWidthConfiguration(),this.addDispose(this.editorFeatureRegistry.registerEditorFeatureContribution({contribute:y=>this.attachEvents(y.monacoEditor)})),this.addDispose(this.scmPreferences.onPreferenceChanged(y=>{y.preferenceName==="scm.alwaysShowDiffWidget"&&y.newValue===!1&&this.widgets.forEach(S=>{S.dispose()})}))}onDidChangeConfiguration(){this.scmPreferences["scm.diffDecorations"]!=="none"?this.enable():this.disable()}onDidChangeDiffWidthConfiguration(){let m=this.scmPreferences["scm.diffDecorationsGutterWidth"];(isNaN(m)||m<=0||m>5)&&(m=3)}enable(){this.enabled&&this.disable(),this.transientDisposables.add(this.eventBus.on(g.EditorGroupChangeEvent,()=>{this.onEditorsChanged()})),this.onEditorsChanged(),this.enabled=!0}disable(){this.enabled&&(this.transientDisposables.clear(),this.models.forEach(m=>{const v=this.items[m.id];v&&v.dispose()}),this.models=[],this.items=Object.create(null),this.enabled=!1)}onEditorsChanged(){const m=this.editorService.editorGroups.filter(S=>S.currentOpenType&&S.currentOpenType.type===g.EditorOpenType.code).map(S=>{const A=S.currentEditor;return A?A.currentDocumentModel:null}).filter((S,A,T)=>!!S&&!!S.uri&&T.indexOf(S,A+1)===-1),v=m.filter(S=>this.models.every(A=>S!==A));this.models.filter(S=>m.every(A=>A!==S)).forEach(S=>this.onModelInvisible(S)),v.forEach(S=>this.onModelVisible(S)),this.models=m}onModelVisible(m){const v=this.injector.get(r.DirtyDiffModel,[m]),y=this.injector.get(c.DirtyDiffDecorator,[m,v]);this.items[m.id]=new s(v,y)}onModelInvisible(m){this.items[m.id].dispose(),delete this.items[m.id]}closeDirtyDiffWidget(m){const v=this.widgets.get(m.getId());v&&v.dispose()}toggleDirtyDiffWidget(m,v){const y=m.getModel();if(y&&v){let S=this.widgets.get(m.getId());const A=this.getModel(y);if(A){if(S){const{currentIndex:T}=S,{count:D}=A.getChangeFromRange(_.positionToRange(v));if(S.dispose(),T===D)return}S=new l.DirtyDiffWidget(m,A,this.commandService),S.onDispose(()=>{this.widgets.delete(m.getId())}),A.onClickDecoration(S,_.positionToRange(v)),this.widgets.set(m.getId(),S)}}}_doMouseDown(m,{target:v}){if(!v)return;const{position:y,type:S,element:A}=v;if(S===E.monacoBrowser.editor.MouseTargetType.GUTTER_LINE_DECORATIONS&&A&&A.className.indexOf("dirty-diff-glyph")>-1&&y){const T=A.offsetLeft;if(v.detail.offsetX-T<5)this.toggleDirtyDiffWidget(m,y);else{const w=this.widgets.get(m.getId());w&&(w.dispose(),this.widgets.delete(m.getId()))}}}attachEvents(m){const v=new o.DisposableCollection;return v.push(m.onMouseDown(y=>{this.scmPreferences["scm.alwaysShowDiffWidget"]&&this._doMouseDown(m,y)})),v.push(m.onDidChangeModel(({oldModelUrl:y})=>{if(y){const S=this.widgets.get(m.getId());S&&S.dispose()}})),v.push(m.onDidDispose(()=>{v.dispose()})),v}getModel(m){const v=this.items[m.id];return v?v.model:null}dispose(){this.disable(),this.widgets.forEach(m=>m.dispose()),this.widgets.clear(),super.dispose()}};n.__decorate([(0,a.Autowired)(h.SCMPreferences),n.__metadata("design:type",Object)],d.prototype,"scmPreferences",void 0),n.__decorate([(0,a.Autowired)(b.WorkbenchEditorService),n.__metadata("design:type",b.WorkbenchEditorService)],d.prototype,"editorService",void 0),n.__decorate([(0,a.Autowired)(g.IEditorFeatureRegistry),n.__metadata("design:type",Object)],d.prototype,"editorFeatureRegistry",void 0),n.__decorate([(0,a.Autowired)(p.IEventBus),n.__metadata("design:type",Object)],d.prototype,"eventBus",void 0),n.__decorate([(0,a.Autowired)(a.INJECTOR_TOKEN),n.__metadata("design:type",a.Injector)],d.prototype,"injector",void 0),n.__decorate([(0,a.Autowired)(p.CommandService),n.__metadata("design:type",Object)],d.prototype,"commandService",void 0),n.__decorate([(0,a.Autowired)(o.KeybindingRegistry),n.__metadata("design:type",Object)],d.prototype,"keybindingRegistry",void 0),d=n.__decorate([(0,a.Injectable)(),n.__metadata("design:paramtypes",[])],d),e.DirtyDiffWorkbenchController=d},31435:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMModule=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(64964),b=t(71972),g=t(7114),_=t(38672),E=t(73018),u=t(75756);let h=class extends o.BrowserModule{constructor(){super(...arguments),this.providers=[u.SCMContribution,p.SCMService,g.SCMBadgeController,g.SCMStatusBarController,{token:p.ISCMMenus,useClass:_.SCMMenus},{token:p.IDirtyDiffWorkbenchController,useClass:b.DirtyDiffWorkbenchController}],this.preferences=E.bindSCMPreference}};h=n.__decorate([(0,a.Injectable)()],h),e.SCMModule=h},7114:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMStatusBarController=e.SCMBadgeController=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(26542),b=t(43718),g=t(54414),_=t(63067),E=t(64964);let u=class{constructor(){this.disposables=[]}start(){for(const r of this.scmService.repositories)this.onDidAddRepository(r);this.scmService.onDidAddRepository(this.onDidAddRepository,this,this.disposables),this.render()}onDidAddRepository(r){const l=r.provider,d=o.Event.any(l.onDidChange,l.onDidChangeResources)(()=>this.render()),m=o.Event.filter(this.scmService.onDidRemoveRepository,y=>y===r)(()=>{v.dispose(),this.disposables=this.disposables.filter(y=>y!==m),this.render()}),v=(0,o.combinedDisposable)([d,m]);this.disposables.push(v)}render(){const r=this.scmService.repositories.reduce((l,s)=>typeof s.provider.count=="number"?l+s.provider.count:l+s.provider.groups.elements.reduce((d,f)=>d+f.elements.length,0),0);r>0?this.setSCMTarbarBadge(`${r}`):this.setSCMTarbarBadge("")}setSCMTarbarBadge(r){const l=this.layoutService.getTabbarHandler(E.scmContainerId);l&&l.setBadge(r)}dispose(){this.disposables=(0,o.dispose)(this.disposables)}};n.__decorate([(0,a.Autowired)(E.SCMService),n.__metadata("design:type",E.SCMService)],u.prototype,"scmService",void 0),n.__decorate([(0,a.Autowired)(_.IMainLayoutService),n.__metadata("design:type",Object)],u.prototype,"layoutService",void 0),u=n.__decorate([(0,a.Injectable)()],u),e.SCMBadgeController=u;let h=class{constructor(){this.focusDisposable=o.Disposable.None,this.focusedRepository=void 0,this.disposables=[]}start(){this.scmService.onDidAddRepository(this.onDidAddRepository,this,this.disposables);for(const r of this.scmService.repositories)this.onDidAddRepository(r);this.workbenchEditorService.onActiveResourceChange(this.onDidActiveResouceChange,this,this.disposables)}onDidAddRepository(r){const l=r.onDidFocus(()=>this.onDidFocusRepository(r)),d=o.Event.filter(this.scmService.onDidRemoveRepository,m=>m===r)(()=>{f.dispose(),this.disposables=this.disposables.filter(m=>m!==d),this.scmService.repositories.length===0?this.onDidFocusRepository(void 0):this.focusedRepository===r&&this.scmService.repositories[0].focus()}),f=(0,o.combinedDisposable)([l,d]);this.disposables.push(f),this.focusedRepository||this.onDidFocusRepository(r)}onDidActiveResouceChange(){const r=this.workbenchEditorService.currentResource;if(!r||r.uri.scheme!==b.Schemes.file)return;let l=null,s=Number.NEGATIVE_INFINITY;for(const d of this.scmService.repositories){const f=d.provider.rootUri;if(!f)continue;const m=f.fsPath,v=o.strings.commonPrefixLength(m,r.uri.codeUri.fsPath);v===m.length&&v>s&&(l=d,s=v)}l&&this.onDidFocusRepository(l)}onDidFocusRepository(r){this.focusedRepository!==r&&(this.focusedRepository=r,this.focusDisposable.dispose(),r&&r.provider.onDidChangeStatusBarCommands&&(this.focusDisposable=r.provider.onDidChangeStatusBarCommands(()=>this.render(r))),this.render(r))}render(r){if(!r)return;const l=r.provider.statusBarCommands||[];if(!l.length)return;const s=this.getRepoLabel(r);l.forEach((d,f)=>{this.disposables.push(this.statusbarService.addElement(`status.scm.repo.${f}`,{id:"status.scm",text:d.title,name:(0,b.localize)("status-bar.scm"),priority:1e4,alignment:p.StatusBarAlignment.LEFT,command:d.id,arguments:d.arguments,tooltip:`${s} - ${d.tooltip||d.title}`}))})}getRepoLabel(r){return r.provider.rootUri?`${o.path.basename(r.provider.rootUri.path)} (${r.provider.label})`:r.provider.label}dispose(){this.focusDisposable.dispose(),this.disposables=(0,o.dispose)(this.disposables)}};n.__decorate([(0,a.Autowired)(E.SCMService),n.__metadata("design:type",E.SCMService)],h.prototype,"scmService",void 0),n.__decorate([(0,a.Autowired)(p.IStatusBarService),n.__metadata("design:type",Object)],h.prototype,"statusbarService",void 0),n.__decorate([(0,a.Autowired)(g.WorkbenchEditorService),n.__metadata("design:type",g.WorkbenchEditorService)],h.prototype,"workbenchEditorService",void 0),h=n.__decorate([(0,a.Injectable)()],h),e.SCMStatusBarController=h},7168:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.overviewRulerDeletedForeground=e.overviewRulerAddedForeground=e.overviewRulerModifiedForeground=e.minimapGutterDeletedBackground=e.minimapGutterAddedBackground=e.minimapGutterModifiedBackground=e.editorGutterDeletedBackground=e.editorGutterAddedBackground=e.editorGutterModifiedBackground=void 0;const n=t(43718),a=t(52416);e.editorGutterModifiedBackground=(0,a.registerColor)("editorGutter.modifiedBackground",{dark:new a.Color(new a.RGBA(27,129,168)),light:new a.Color(new a.RGBA(32,144,211)),hcDark:new a.Color(new a.RGBA(27,128,168)),hcLight:new a.Color(new a.RGBA(32,144,211))},(0,n.localize)("editorGutterModifiedBackground","Editor gutter background color for lines that are modified.")),e.editorGutterAddedBackground=(0,a.registerColor)("editorGutter.addedBackground",{dark:new a.Color(new a.RGBA(72,126,2)),light:new a.Color(new a.RGBA(72,152,93)),hcDark:new a.Color(new a.RGBA(72,126,2)),hcLight:new a.Color(new a.RGBA(72,152,93))},(0,n.localize)("editorGutterAddedBackground","Editor gutter background color for lines that are added.")),e.editorGutterDeletedBackground=(0,a.registerColor)("editorGutter.deletedBackground",{dark:a.editorErrorForeground,light:a.editorErrorForeground,hcDark:a.editorErrorForeground,hcLight:a.editorErrorForeground},(0,n.localize)("editorGutterDeletedBackground","Editor gutter background color for lines that are deleted.")),e.minimapGutterModifiedBackground=(0,a.registerColor)("minimapGutter.modifiedBackground",{dark:e.editorGutterModifiedBackground,light:e.editorGutterModifiedBackground,hcDark:e.editorGutterModifiedBackground,hcLight:e.editorGutterModifiedBackground},(0,n.localize)("minimapGutterModifiedBackground","Minimap gutter background color for lines that are modified.")),e.minimapGutterAddedBackground=(0,a.registerColor)("minimapGutter.addedBackground",{dark:e.editorGutterAddedBackground,light:e.editorGutterAddedBackground,hcDark:e.editorGutterAddedBackground,hcLight:e.editorGutterAddedBackground},(0,n.localize)("minimapGutterAddedBackground","Minimap gutter background color for lines that are added.")),e.minimapGutterDeletedBackground=(0,a.registerColor)("minimapGutter.deletedBackground",{dark:e.editorGutterDeletedBackground,light:e.editorGutterDeletedBackground,hcDark:e.editorGutterDeletedBackground,hcLight:e.editorGutterDeletedBackground},(0,n.localize)("minimapGutterDeletedBackground","Minimap gutter background color for lines that are deleted.")),e.overviewRulerModifiedForeground=(0,a.registerColor)("editorOverviewRuler.modifiedForeground",{dark:(0,a.transparent)(e.editorGutterModifiedBackground,.6),light:(0,a.transparent)(e.editorGutterModifiedBackground,.6),hcDark:(0,a.transparent)(e.editorGutterModifiedBackground,.6),hcLight:(0,a.transparent)(e.editorGutterModifiedBackground,.6)},(0,n.localize)("overviewRulerModifiedForeground","Overview ruler marker color for modified content.")),e.overviewRulerAddedForeground=(0,a.registerColor)("editorOverviewRuler.addedForeground",{dark:(0,a.transparent)(e.editorGutterAddedBackground,.6),light:(0,a.transparent)(e.editorGutterAddedBackground,.6),hcDark:(0,a.transparent)(e.editorGutterAddedBackground,.6),hcLight:(0,a.transparent)(e.editorGutterAddedBackground,.6)},(0,n.localize)("overviewRulerAddedForeground","Overview ruler marker color for added content.")),e.overviewRulerDeletedForeground=(0,a.registerColor)("editorOverviewRuler.deletedForeground",{dark:(0,a.transparent)(e.editorGutterDeletedBackground,.6),light:(0,a.transparent)(e.editorGutterDeletedBackground,.6),hcDark:(0,a.transparent)(e.editorGutterDeletedBackground,.6),hcLight:(0,a.transparent)(e.editorGutterDeletedBackground,.6)},(0,n.localize)("overviewRulerDeletedForeground","Overview ruler marker color for deleted content."))},38672:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMMenus=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(93899),b=t(43718),g=t(64964),_=t(36367);let E=class extends b.Disposable{constructor(r){super(),this.contextKeyService=r}get resourceGroupMenu(){return this._resourceGroupMenu||(this._resourceGroupMenu=this.registerDispose(this.menuService.createMenu({id:p.MenuId.SCMResourceGroupContext,contextKeyService:this.contextKeyService,config:{separator:"inline"}}))),this._resourceGroupMenu}get resourceFolderMenu(){return this._resourceFolderMenu||(this._resourceFolderMenu=this.registerDispose(this.menuService.createMenu({id:p.MenuId.SCMResourceFolderContext,contextKeyService:this.contextKeyService,config:{separator:"inline"}}))),this._resourceFolderMenu}getResourceMenu(r){const l=r.contextValue;if(typeof l>"u")return this.resourceMenu||(this.resourceMenu=this.registerDispose(this.menuService.createMenu({id:p.MenuId.SCMResourceContext,contextKeyService:this.contextKeyService,config:{separator:"inline"}}))),this.resourceMenu;this.contextualResourceMenu||(this.contextualResourceMenu=new Map);let s=this.contextualResourceMenu.get(l);if(!s){const d=this.contextKeyService.createScoped();(0,_.isSCMResource)(r)&&d.createKey("scmResourceState",l),s=this.registerDispose(this.menuService.createMenu({id:p.MenuId.SCMResourceContext,contextKeyService:d,config:{separator:"inline"}})),this.addDispose(d),this.contextualResourceMenu.set(l,s)}return s}dispose(){var r,l;super.dispose(),(r=this.resourceGroupMenu)===null||r===void 0||r.dispose(),(l=this.resourceMenu)===null||l===void 0||l.dispose(),this.contextualResourceMenu&&(this.contextualResourceMenu.clear(),this.contextualResourceMenu=void 0)}};n.__decorate([(0,a.Autowired)(p.AbstractContextMenuService),n.__metadata("design:type",p.AbstractContextMenuService)],E.prototype,"menuService",void 0),E=n.__decorate([(0,a.Injectable)({multiple:!0}),n.__param(0,(0,a.Optional)()),n.__metadata("design:paramtypes",[Object])],E);let u=class extends b.Disposable{constructor(r){var l;super(),this.resourceGroups=[],this.resourceGroupMenusItems=new Map;const s=this.injector.get(o.IContextKeyService);this.scopedContextKeyService=this.registerDispose(s.createScoped()),this.scopedContextKeyService.createKey("scmProvider",r.contextValue),this.scopedContextKeyService.createKey("scmProviderRootUri",(l=r.rootUri)===null||l===void 0?void 0:l.toString()),this.scopedContextKeyService.createKey("scmProviderHasRootUri",!!r.rootUri),this.onDidSpliceGroups({start:0,deleteCount:0,toInsert:r.groups.elements}),r.groups.onDidSplice(this.onDidSpliceGroups,this,this.disposables)}onDidSpliceGroups({start:r,deleteCount:l,toInsert:s}){const d=this.resourceGroups.splice(r,l,...s);for(const f of d){const m=this.resourceGroupMenusItems.get(f);m?.dispose(),this.resourceGroupMenusItems.delete(f)}}dispose(){super.dispose(),this.resourceGroupMenusItems.forEach(r=>r.dispose())}getResourceGroupMenu(r){return this.getResourceGroupMenus(r).resourceGroupMenu}getResourceMenu(r){return this.getResourceGroupMenus(r.resourceGroup).getResourceMenu(r)}getResourceFolderMenu(r){return this.getResourceGroupMenus(r).resourceFolderMenu}getResourceGroupMenus(r){let l=this.resourceGroupMenusItems.get(r);if(!l){const s=this.registerDispose(this.scopedContextKeyService.createScoped());s.createKey("scmResourceGroup",r.id),l=this.registerDispose(this.injector.get(E,[s])),this.resourceGroupMenusItems.set(r,l)}return l}get titleMenu(){return this._titleMenu||(this._titleMenu=this.registerDispose(this.menuService.createMenu({id:p.MenuId.SCMTitle,contextKeyService:this.scopedContextKeyService}))),this._titleMenu}get inputMenu(){return this._inputMenu||(this._inputMenu=this.registerDispose(this.menuService.createMenu({id:p.MenuId.SCMInput,contextKeyService:this.scopedContextKeyService}))),this._inputMenu}};n.__decorate([(0,a.Autowired)(p.AbstractContextMenuService),n.__metadata("design:type",p.AbstractContextMenuService)],u.prototype,"menuService",void 0),n.__decorate([(0,a.Autowired)(a.INJECTOR_TOKEN),n.__metadata("design:type",a.Injector)],u.prototype,"injector",void 0),u=n.__decorate([(0,a.Injectable)({multiple:!0}),n.__param(0,(0,a.Optional)()),n.__metadata("design:paramtypes",[Object])],u);let h=class extends b.Disposable{constructor(){super(),this.menus=new Map,this.scmService.onDidRemoveRepository(this.onDidRemoveRepository,this,this.disposables)}onDidRemoveRepository(r){const l=this.menus.get(r.provider);l?.dispose(),this.menus.delete(r.provider)}getRepositoryMenus(r){let l=this.menus.get(r);if(!l){const s=this.injector.get(u,[r]);l={menus:s,dispose:()=>{s.dispose(),this.menus.delete(r)}},this.menus.set(r,l)}return l.menus}};n.__decorate([(0,a.Autowired)(a.INJECTOR_TOKEN),n.__metadata("design:type",a.Injector)],h.prototype,"injector",void 0),n.__decorate([(0,a.Autowired)(g.SCMService),n.__metadata("design:type",g.SCMService)],h.prototype,"scmService",void 0),h=n.__decorate([(0,a.Injectable)(),n.__metadata("design:paramtypes",[])],h),e.SCMMenus=h},49914:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ViewModelContext=e.ResourceGroupSplicer=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(43718),b=t(28423),g=t(64964);class _{constructor(c){this.repository=c,this.items=[],this.disposables=[],this._onDidSplice=new p.Emitter,this.onDidSplice=this._onDidSplice.event}run(){const c=this.repository.provider.groups;c.onDidSplice(this.onDidSpliceGroups,this,this.disposables),this.onDidSpliceGroups({start:0,deleteCount:0,toInsert:c.elements})}onDidSpliceGroups({start:c,deleteCount:r,toInsert:l}){let s=0;for(let y=0;y<c;y++){const S=this.items[y];s+=(S.visible?1:0)+S.group.elements.length}let d=0;for(let y=0;y<r;y++){const S=this.items[c+y];d+=(S.visible?1:0)+S.group.elements.length}const f=[],m=[];for(const y of l){const S=E(y);S&&m.push(y);for(const T of y.elements)m.push(T);const A=(0,p.combinedDisposable)([y.onDidChange(()=>this.onDidChangeGroup(y)),y.onDidSplice(T=>this.onDidSpliceGroup(y,T))]);f.push({group:y,visible:S,disposable:A})}const v=this.items.splice(c,r,...f);for(const y of v)y.disposable.dispose();this._onDidSplice.fire({target:this.repository,index:s,deleteCount:d,elements:m})}onDidChangeGroup(c){const r=this.items.findIndex(f=>f.group===c);if(r<0)return;const l=this.items[r],s=E(c);if(l.visible===s)return;let d=0;for(let f=0;f<r;f++){const m=this.items[f];d+=(m.visible?1:0)+m.group.elements.length}s?this._onDidSplice.fire({target:this.repository,index:d,deleteCount:0,elements:[c,...c.elements]}):this._onDidSplice.fire({target:this.repository,index:d,deleteCount:1+c.elements.length,elements:[]}),l.visible=s}onDidSpliceGroup(c,{start:r,deleteCount:l,toInsert:s}){const d=this.items.findIndex(y=>y.group===c);if(d<0)return;const f=this.items[d],m=E(c);if(!f.visible&&!m)return;let v=r;for(let y=0;y<d;y++){const S=this.items[y];v+=(S.visible?1:0)+S.group.elements.length}f.visible&&!m?this._onDidSplice.fire({target:this.repository,index:v,deleteCount:1+l,elements:s}):!f.visible&&m?this._onDidSplice.fire({target:this.repository,index:v,deleteCount:l,elements:[c,...s]}):this._onDidSplice.fire({target:this.repository,index:v+1,deleteCount:l,elements:s}),f.visible=m}dispose(){this.onDidSpliceGroups({start:0,deleteCount:this.items.length,toInsert:[]}),this.disposables=(0,p.dispose)(this.disposables)}}e.ResourceGroupSplicer=_;function E(h){return h.elements.length>0||!h.hideWhenEmpty}let u=class extends p.Disposable{get onDidSelectedRepoChange(){return this.onDidSelectedRepoChangeEmitter.event}get onAlwaysShowActionsChange(){return this.onAlwaysShowActionsChangeEmitter.event}get menus(){return this._menus}constructor(){super(),this.onDidSelectedRepoChangeEmitter=new p.Emitter,this.onAlwaysShowActionsChangeEmitter=new p.Emitter,this.onDidSCMListChangeEmitter=new p.Emitter,this.onDidSCMListChange=this.onDidSCMListChangeEmitter.event,this.onDidSCMRepoListChangeEmitter=new p.Emitter,this.onDidSCMRepoListChange=this.onDidSCMRepoListChangeEmitter.event,this.repoList=[],this.scmList=new Array,this.selectedRepos=(0,b.observableValue)(this,[]),this.spliceSCMList=(c,r,l,...s)=>{!this._currentWorkspace||this._currentWorkspace.toString()===c.toString()?this.scmList.splice(r,l,...s):this.scmList=[...s],this._currentWorkspace=c,this.onDidSCMListChangeEmitter.fire()},this.start(),this.initTreeAlwaysShowActions(),this.scmService.onDidChangeSelectedRepositories(this._handleSelectedRepoChanged,this,this.disposables),this._handleSelectedRepoChanged(this.scmService.selectedRepositories)}_handleSelectedRepoChanged(c){const[r]=c;r&&(this.toDisposableListener&&(this.toDisposableListener.dispose(),this.toDisposableListener=null),this.toDisposableListener=this.listenToCurrentRepo(r))}listenToCurrentRepo(c){const r=new p.DisposableStore,l=new _(c),s=p.Event.filter(l.onDidSplice,d=>d.target===c);return r.add(s(({index:d,deleteCount:f,elements:m})=>{if(m.some(v=>v.id==="merge")){const v=[],y={};m.forEach(S=>{Array.isArray(S.elements)&&S.elements.forEach(A=>{v.push(A.sourceUri),y[A.sourceUri.toString()]=!0})}),this.commandService.executeCommand("setContext","git.mergeChanges",v),this.commandService.executeCommand("setContext","git.mergeChangesObj",y)}c.provider.rootUri&&this.spliceSCMList(c.provider.rootUri,d,f,...m)})),l.run(),r.add(l),(0,p.toDisposable)(()=>{r.clear()})}initTreeAlwaysShowActions(){this.alwaysShowActions=!!this.preferenceService.get("scm.alwaysShowActions"),this.disposables.push(this.preferenceService.onSpecificPreferenceChange("scm.alwaysShowActions",c=>{this.alwaysShowActions!==c.newValue&&this.updateAlwaysShowActions(c.newValue)}))}start(){this.scmService.onDidAddRepository(c=>{this.addRepo(c)},this,this.disposables),this.scmService.onDidRemoveRepository(c=>{this.deleteRepo(c)},this,this.disposables),this.scmService.onDidChangeSelectedRepositories(c=>{this.changeSelectedRepos(c)},this,this.disposables),this.scmService.repositories.forEach(c=>{this.addRepo(c)})}updateAlwaysShowActions(c){this.alwaysShowActions=c,this.onAlwaysShowActionsChangeEmitter.fire(c)}addRepo(c){if(this.repoList.find(r=>{var l,s;return((l=r.provider.rootUri)===null||l===void 0?void 0:l.toString())===((s=c.provider.rootUri)===null||s===void 0?void 0:s.toString())})){this.logger.warn("duplicate scm repo",c);return}this.repoList.push(c),c.selected&&this.repoList.length===1&&this.changeSelectedRepos([c]),this.onDidSCMRepoListChangeEmitter.fire(this.repoList)}deleteRepo(c){const r=this.repoList.indexOf(c);if(r<0){this.logger.warn("no such scm repo",c);return}this.repoList.splice(r,1),this.onDidSCMRepoListChangeEmitter.fire(this.repoList)}changeSelectedRepos(c){(0,b.transaction)(l=>{this.selectedRepos.set(c,l)});const r=c[0];this.selectedRepo=r,this.onDidSelectedRepoChangeEmitter.fire(r)}};n.__decorate([(0,a.Autowired)(g.SCMService),n.__metadata("design:type",g.SCMService)],u.prototype,"scmService",void 0),n.__decorate([(0,a.Autowired)(g.ISCMMenus),n.__metadata("design:type",Object)],u.prototype,"_menus",void 0),n.__decorate([(0,a.Autowired)(o.PreferenceService),n.__metadata("design:type",Object)],u.prototype,"preferenceService",void 0),n.__decorate([(0,a.Autowired)(p.CommandService),n.__metadata("design:type",Object)],u.prototype,"commandService",void 0),n.__decorate([(0,a.Autowired)(p.ILogger),n.__metadata("design:type",Object)],u.prototype,"logger",void 0),u=n.__decorate([(0,a.Injectable)(),n.__metadata("design:paramtypes",[])],u),e.ViewModelContext=u},73018:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.bindSCMPreference=e.SCMPreferences=e.scmPreferenceSchema=void 0;const n=t(41869),a=t(64964);e.scmPreferenceSchema={id:"scm",order:5,title:(0,n.localize)("scmConfigurationTitle","SCM"),type:"object",properties:{"scm.alwaysShowProviders":{type:"boolean",description:(0,n.localize)("alwaysShowProviders","Controls whether to always show the Source Control Provider section."),default:!1},"scm.providers.visible":{type:"number",description:(0,n.localize)("providersVisible","Controls how many providers are visible in the Source Control Provider section. Set to `0` to be able to manually resize the view."),default:10},"scm.diffDecorations":{type:"string",enum:["all","gutter","overview","none"],default:"all",description:(0,n.localize)("diffDecorations","Controls diff decorations in the editor.")},"scm.alwaysShowDiffWidget":{type:"boolean",description:(0,n.localize)("alwaysShowDiffWidget","Controls whether to always click to show the Dirty Diff Widget."),default:!0},"scm.diffDecorationsGutterWidth":{type:"number",enum:[1,2,3,4,5],default:3,description:(0,n.localize)("diffGutterWidth","Controls the width(px) of diff decorations in gutter (added & modified).")},"scm.alwaysShowActions":{type:"boolean",description:(0,n.localize)("alwaysShowActions","Controls whether inline actions are always visible in the Source Control view."),default:!1},"scm.defaultViewMode":{type:"string",enum:[a.SCMViewModelMode.Tree,a.SCMViewModelMode.List],description:(0,n.localize)("scm.defaultViewMode","Controls the default Source Control repository view mode."),default:a.SCMViewModelMode.List},"scm.listView.compactFolders":{type:"boolean",description:(0,n.localize)("scmListViewCompactFolders","Controls whether the source control view should render folders in a compact form. In such a form, single child folders will be compressed in a combined tree element."),default:!0}}},e.SCMPreferences=Symbol("SCMPreferences");function o(p){p.addProviders({token:e.SCMPreferences,useFactory:b=>{const g=b.get(n.PreferenceService);return(0,n.createPreferenceProxy)(g,e.scmPreferenceSchema)}})}e.bindSCMPreference=o},36367:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.getSCMRepositoryDesc=e.getSCMResourceGroupContextValue=e.isSCMResourceGroup=e.isSCMResource=void 0;const n=t(41869),{basename:a}=n.path;function o(_){return!!_.sourceUri&&p(_.resourceGroup)}e.isSCMResource=o;function p(_){return!!_.provider&&!!_.elements}e.isSCMResourceGroup=p;function b(_){return o(_)?_.resourceGroup.id:_.id}e.getSCMResourceGroupContextValue=b;function g(_){const E=_.provider.rootUri,u=E?a(_.provider.rootUri.path):_.provider.label,h=E?_.provider.label:"";return{title:u,type:h}}e.getSCMRepositoryDesc=g},94556:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMViewContainer=e.SCMProvidersView=e.SCMResourcesViewWrapper=e.SCMResourcesView=void 0;const n=t(85608),a=n.__importStar(t(14041)),o=t(41869),p=t(25918),b=t(1149),g=t(93899),_=t(43718),E=t(70936),u=t(91527),h=t(24429),c=t(64964),r=t(57492),l=t(37751),s=t(24748),d=t(49914),f=t(36367),m=n.__importDefault(t(41373)),v=38,y=38,S=10,A=({repository:w,viewState:I})=>{const O=(0,o.useInjectable)(o.IContextKeyService),M=(0,o.useInjectable)(g.IMenuRegistry),R=(0,o.useInjectable)(d.ViewModelContext),P=(0,a.useRef)(null),L=(0,a.useRef)(),N=(0,a.useRef)({}),[k,B]=(0,a.useState)();(0,a.useEffect)(()=>{P&&P.current&&(N.current.ctx=O.createScoped(P.current))},[]),(0,a.useEffect)(()=>{N.current.ctx&&N.current.ctx.createKey("scmRepository",w),F();const V=w.provider.onDidChange(()=>{F()});return()=>{V.dispose()}},[w]);const F=(0,a.useCallback)(()=>{var V;if((V=L.current)===null||V===void 0||V.dispose(),L.current=new _.DisposableCollection,!!w.provider.actionButton){if(L.current.push(M.registerMenuItem(g.MenuId.SCMInput,{command:{id:w.provider.actionButton.command.id,label:w.provider.actionButton.command.title},extraTailArgs:w.provider.actionButton.command.arguments,group:"navigation",type:"primary",enabledWhen:w.provider.actionButton.enabled?"true":"false"})),Array.isArray(w.provider.actionButton.secondaryCommands))for(let K=0;K<w.provider.actionButton.secondaryCommands.length;K++)for(const H of w.provider.actionButton.secondaryCommands[K])L.current.push(M.registerMenuItem(g.MenuId.SCMInput,{command:{id:H.id,label:H.title},extraTailArgs:H.arguments,group:`${K}_secondary`,enabledWhen:w.provider.actionButton.enabled?"true":"false"}));W()}},[w,L.current]),W=(0,a.useCallback)(()=>{const V=R.menus.getRepositoryMenus(w.provider);V&&B(V.inputMenu)},[w,k]),j=w&&w.provider&&k;return a.default.createElement("div",{className:m.default.view,ref:P},a.default.createElement("div",{className:m.default.scm,style:{paddingTop:S}},a.default.createElement(l.SCMResourceInput,{repository:w,menus:k}),a.default.createElement(s.SCMResourceTree,{height:I.height-v-S-(j?y:0)})))};e.SCMResourcesView=A,e.SCMResourcesView.displayName="SCMResourcesView";const T=w=>{const I=(0,o.useInjectable)(d.ViewModelContext),O=(0,o.useAutorun)(I.selectedRepos);if(!O.length)return a.default.createElement(h.WelcomeView,{viewId:c.SCM_WELCOME_ID});const M=O[0];return!M||!M.provider?null:a.default.createElement(e.SCMResourcesView,{repository:M,viewState:w.viewState})};e.SCMResourcesViewWrapper=T,e.SCMResourcesViewWrapper.displayName="SCMResourcesViewWrapper",e.SCMProvidersView=(0,a.memo)(({viewState:w,repoList:I,selectedRepo:O})=>a.default.createElement("div",{className:m.default.view},I.length>1&&a.default.createElement(r.SCMProviderList,{viewState:w,repositoryList:I,selectedRepository:O}))),e.SCMProvidersView.displayName="SCMProvidersView";const D=w=>{const I=(0,o.useInjectable)(d.ViewModelContext),O=I.selectedRepo,M=(0,o.useInjectable)(b.LayoutViewSizeConfig),[R,P]=(0,a.useState)([]),L=(0,a.useCallback)(()=>{P([...I.repoList])},[R,I]);(0,a.useEffect)(()=>{const j=new _.DisposableCollection;return j.push(I.onDidSCMListChange(L)),j.push(I.onDidSCMRepoListChange(L)),()=>{j.dispose()}},[I]);const N=R.length>1,k=(0,a.useMemo)(()=>R.length===1&&O?`${(0,_.localize)("scm.title")}: ${O.provider.label}`:(0,_.localize)("scm.title"),[R,O]),B=(0,a.useMemo)(()=>{let j=(0,_.localize)("scm.title");if(N&&O){const{title:V,type:K}=(0,f.getSCMRepositoryDesc)(O);j=V+"-"+K}return j},[N,O]),F=(0,a.useMemo)(()=>{if(O)return I.menus.getRepositoryMenus(O?.provider).titleMenu},[O]),W=(0,a.useMemo)(()=>{const j={component:e.SCMProvidersView,id:c.scmProviderViewId,name:(0,_.localize)("scm.provider.title"),initialProps:{viewState:w.viewState,repoList:R,selectedRepo:O},priority:0},V={component:e.SCMResourcesViewWrapper,id:c.scmResourceViewId,name:B,titleMenu:N&&F||void 0,titleMenuContext:O&&O.provider&&[O.provider],priority:1};return(N?[j]:[]).concat(V)},[N,B,O,R]);return a.default.createElement("div",{className:m.default.view},a.default.createElement(u.TitleBar,{title:k,height:M.panelTitleBarHeight,menubar:!N&&F?a.default.createElement(p.InlineMenuBar,{menus:F,context:O&&O.provider&&[O.provider],moreTitle:(0,_.localize)("scm.action.git.more","More Actions")}):null}),a.default.createElement(E.AccordionContainer,{views:W,containerId:c.scmContainerId,style:{height:`calc(100% - ${M.panelTitleBarHeight}px)`}}))};e.SCMViewContainer=D,e.SCMViewContainer.displayName="SCMViewContainer"},75756:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMContribution=e.SCM_ACCEPT_INPUT=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(21634),b=t(68456),g=t(93899),_=t(43718),E=t(98295),u=t(23418),h=t(63067),c=t(64964),r=t(38563),l=t(63451),s=t(71972),d=t(7114),f=t(73018),m=t(94556);e.SCM_ACCEPT_INPUT={id:"scm.acceptInput"};let v=class{constructor(){this.toDispose=new o.Disposable,this.schema=f.scmPreferenceSchema,this.diffChangesIndex=new Map}onStart(){this.viewsRegistry.registerViewWelcomeContent(c.scmResourceViewId,{content:(0,_.localize)("welcome-view.noOpenRepo","No source control providers registered."),when:"default"}),this.extensionsPointService.appendExtensionPoint(["browserViews","properties"],{extensionPoint:c.scmContainerId,frameworkKind:["opensumi"],jsonSchema:Object.assign(Object.assign({},p.browserViews.properties),{description:(0,_.formatLocalize)("sumiContributes.browserViews.location.custom",(0,_.localize)("status-bar.scm"))})})}onDidRender(){[this.statusUpdater,this.statusBarController,this.dirtyDiffWorkbenchController].forEach(S=>{S.start(),this.toDispose.addDispose(S)})}onStop(){this.toDispose.dispose()}registerCommands(S){S.registerCommand(c.OPEN_DIRTY_DIFF_WIDGET,{execute:async A=>{const T=this.editorService.currentEditor;if(T){const D=T.monacoEditor;this.dirtyDiffWorkbenchController.toggleDirtyDiffWidget(D,{lineNumber:A,column:1}),setTimeout(()=>{D.revealLineInCenter(A)},0)}}}),S.registerCommand(c.CLOSE_DIRTY_DIFF_WIDGET,{execute:async()=>{const A=this.editorService.currentEditor;if(A){const T=A.monacoEditor;this.dirtyDiffWorkbenchController.closeDirtyDiffWidget(T)}}}),S.registerCommand(c.GOTO_PREVIOUS_CHANGE,{execute:()=>{var A;const T=this.editorService.currentEditor;if(T&&T.currentUri){const D=this.getDiffChangeLineNumber(T.currentUri,T,"previous");T.monacoEditor.focus();const w=(A=T.monacoEditor.getPosition())===null||A===void 0?void 0:A.with(D,0);T.monacoEditor.setPosition(w),T.monacoEditor.revealLineInCenter(D)}}}),S.registerCommand(c.GOTO_NEXT_CHANGE,{execute:()=>{var A;const T=this.editorService.currentEditor;if(T&&T.currentUri){const D=this.getDiffChangeLineNumber(T.currentUri,T,"next");T.monacoEditor.focus();const w=(A=T.monacoEditor.getPosition())===null||A===void 0?void 0:A.with(D,0);T.monacoEditor.setPosition(w),T.monacoEditor.revealLineInCenter(D)}}}),S.registerCommand(c.TOGGLE_DIFF_SIDE_BY_SIDE,{execute:()=>{const A=!this.preferenceService.get("diffEditor.renderSideBySide");this.preferenceService.set("diffEditor.renderSideBySide",A,_.PreferenceScope.User)}}),S.registerCommand(c.SET_SCM_TREE_VIEW_MODE,{execute:()=>{this.scmTreeService.changeTreeMode(!0)}}),S.registerCommand(c.SET_SCM_LIST_VIEW_MODE,{execute:()=>{this.scmTreeService.changeTreeMode(!1)}}),S.registerCommand(o.SCM_COMMANDS.GetSCMResource,{execute:async A=>this.scmTreeAPI.getSCMResource(A)})}registerComponent(S){S.register("@opensumi/ide-scm",[],{iconClass:(0,o.getIcon)("scm"),title:(0,_.localize)("scm.title"),priority:8,containerId:c.scmContainerId,component:m.SCMViewContainer,activateKeyBinding:"ctrlcmd+shift+g"})}registerMenus(S){S.registerMenuItem(g.MenuId.EditorTitle,{command:{id:c.GOTO_PREVIOUS_CHANGE.id,label:(0,_.localize)("scm.diff.change.previous")},when:"isInDiffEditor",iconClass:(0,o.getIcon)("arrowup"),group:"navigation"}),S.registerMenuItem(g.MenuId.EditorTitle,{command:{id:c.GOTO_NEXT_CHANGE.id,label:(0,_.localize)("scm.diff.change.next")},iconClass:(0,o.getIcon)("arrowdown"),when:"isInDiffEditor",group:"navigation"}),S.registerMenuItem(g.MenuId.EditorTitle,{command:{id:c.TOGGLE_DIFF_SIDE_BY_SIDE.id,label:(0,_.localize)("scm.diff.toggle.renderSideBySide")},when:"isInDiffEditor",group:"1_internal"}),S.registerMenuItem(g.MenuId.SCMTitle,{command:{id:c.SET_SCM_TREE_VIEW_MODE.id,label:(0,_.localize)("setTreeViewMode","View as Tree")},iconClass:(0,o.getExternalIcon)("list-tree"),when:`config.scm.defaultViewMode == ${c.SCMViewModelMode.List}`,group:"navigation",order:-1}),S.registerMenuItem(g.MenuId.SCMTitle,{command:{id:c.SET_SCM_LIST_VIEW_MODE.id,label:(0,_.localize)("setListViewMode","View as List")},iconClass:(0,o.getExternalIcon)("list-flat"),when:`config.scm.defaultViewMode == ${c.SCMViewModelMode.Tree}`,group:"navigation",order:-1})}getDiffChangesIndex(S,A){return this.diffChangesIndex.has(S)||(A.onDispose(()=>{this.diffChangesIndex.delete(S)}),this.diffChangesIndex.set(S,0)),this.diffChangesIndex.get(S)}getDiffEditor(S){const A=S.getId(),[T]=this.editorCollectionService.listDiffEditors().filter(D=>D.modifiedEditor.getId()===A||D.originalEditor.getId()===A);return T}getDiffChangeLineNumber(S,A,T){const D=this.getDiffChangesIndex(S,A),I=this.getDiffEditor(A).getLineChanges()||[];if(!I||I.length===0)return 0;let O=0;return T==="previous"?O=D-1<0?I.length-1:D-1:O=D>=I.length-1?0:D+1,this.diffChangesIndex.set(S,O),I[O][2]}};n.__decorate([(0,a.Autowired)(d.SCMBadgeController),n.__metadata("design:type",d.SCMBadgeController)],v.prototype,"statusUpdater",void 0),n.__decorate([(0,a.Autowired)(d.SCMStatusBarController),n.__metadata("design:type",d.SCMStatusBarController)],v.prototype,"statusBarController",void 0),n.__decorate([(0,a.Autowired)(u.WorkbenchEditorService),n.__metadata("design:type",u.WorkbenchEditorService)],v.prototype,"editorService",void 0),n.__decorate([(0,a.Autowired)(c.IDirtyDiffWorkbenchController),n.__metadata("design:type",s.DirtyDiffWorkbenchController)],v.prototype,"dirtyDiffWorkbenchController",void 0),n.__decorate([(0,a.Autowired)(u.EditorCollectionService),n.__metadata("design:type",u.EditorCollectionService)],v.prototype,"editorCollectionService",void 0),n.__decorate([(0,a.Autowired)(h.IMainLayoutService),n.__metadata("design:type",Object)],v.prototype,"mainlayoutService",void 0),n.__decorate([(0,a.Autowired)(o.PreferenceService),n.__metadata("design:type",Object)],v.prototype,"preferenceService",void 0),n.__decorate([(0,a.Autowired)(),n.__metadata("design:type",l.SCMTreeService)],v.prototype,"scmTreeService",void 0),n.__decorate([(0,a.Autowired)(),n.__metadata("design:type",r.SCMTreeAPI)],v.prototype,"scmTreeAPI",void 0),n.__decorate([(0,a.Autowired)(h.IViewsRegistry),n.__metadata("design:type",Object)],v.prototype,"viewsRegistry",void 0),n.__decorate([(0,a.Autowired)(_.IExtensionsSchemaService),n.__metadata("design:type",Object)],v.prototype,"extensionsPointService",void 0),v=n.__decorate([(0,E.Domain)(o.ClientAppContribution,_.CommandContribution,b.ComponentContribution,o.PreferenceContribution,h.MainLayoutContribution,g.MenuContribution)],v),e.SCMContribution=v},49814:(x,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.GOTO_PREVIOUS_CHANGE=e.GOTO_NEXT_CHANGE=e.CLOSE_DIRTY_DIFF_WIDGET=e.OPEN_DIRTY_DIFF_WIDGET=e.IDirtyDiffWorkbenchController=void 0,e.IDirtyDiffWorkbenchController=Symbol("DirtyDiffWorkbenchController"),e.OPEN_DIRTY_DIFF_WIDGET={id:"OPEN_DIRTY_DIFF_WIDGET"},e.CLOSE_DIRTY_DIFF_WIDGET={id:"CLOSE_DIRTY_DIFF_WIDGET"},e.GOTO_NEXT_CHANGE={id:"workbench.action.compareEditor.nextChange"},e.GOTO_PREVIOUS_CHANGE={id:"workbench.action.compareEditor.previousChange"}},64964:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ViewModelSortKey=e.SCMViewModelMode=e.SET_SCM_LIST_VIEW_MODE=e.SET_SCM_TREE_VIEW_MODE=e.TOGGLE_DIFF_SIDE_BY_SIDE=e.scmItemLineHeight=e.SCM_WELCOME_ID=e.scmResourceViewId=e.scmProviderViewId=e.scmContainerId=void 0;const n=t(85608),a=t(30144);e.scmContainerId=a.SCM_CONTAINER_ID,e.scmProviderViewId="scm_provider",e.scmResourceViewId="scm_view",e.SCM_WELCOME_ID="scm-welcome",e.scmItemLineHeight=22,e.TOGGLE_DIFF_SIDE_BY_SIDE={id:"toggle.diff.renderSideBySide"},e.SET_SCM_TREE_VIEW_MODE={id:"workbench.scm.action.setTreeViewMode"},e.SET_SCM_LIST_VIEW_MODE={id:"workbench.scm.action.setListViewMode"};var o;(function(b){b.List="list",b.Tree="tree"})(o=e.SCMViewModelMode||(e.SCMViewModelMode={}));var p;(function(b){b.Path="path",b.Name="name",b.Status="status"})(p=e.ViewModelSortKey||(e.ViewModelSortKey={})),n.__exportStar(t(49697),e),n.__exportStar(t(66224),e),n.__exportStar(t(95588),e),n.__exportStar(t(49814),e),n.__exportStar(t(480),e)},480:(x,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0})},95588:(x,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ISCMMenus=void 0,e.ISCMMenus=Symbol("ISCMMenus")},49697:(x,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ISCMService=void 0;class t{}e.ISCMService=t},66224:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMService=void 0;const n=t(85608),a=t(76003),o=t(43718),{equals:p}=o.arrays;class b{constructor(){this._disposables=new o.DisposableStore,this._value="",this._onDidChange=this._disposables.add(new o.Emitter),this.onDidChange=this._onDidChange.event,this._placeholder="",this._onDidChangePlaceholder=this._disposables.add(new o.Emitter),this.onDidChangePlaceholder=this._onDidChangePlaceholder.event,this._visible=!0,this._props={},this._onDidChangeProps=this._disposables.add(new o.Emitter),this.onDidChangeProps=this._onDidChangeProps.event,this._onDidChangeVisibility=this._disposables.add(new o.Emitter),this.onDidChangeVisibility=this._onDidChangeVisibility.event,this._enabled=!0,this._onDidChangeEnablement=this._disposables.add(new o.Emitter),this.onDidChangeEnablement=this._onDidChangeEnablement.event,this._validateInput=()=>Promise.resolve(void 0),this._onDidChangeValidateInput=this._disposables.add(new o.Emitter),this.onDidChangeValidateInput=this._onDidChangeValidateInput.event,this._onDidChangeActionButton=this._disposables.add(new o.Emitter),this.onDidChangeActionButton=this._onDidChangeActionButton.event}get value(){return this._value}set value(u){this._value=u,this._onDidChange.fire(u)}get placeholder(){return this._placeholder}set placeholder(u){this._placeholder=u,this._onDidChangePlaceholder.fire(u)}get visible(){return this._visible}set visible(u){this._visible=u,this._onDidChangeVisibility.fire(u)}get props(){return this._props}set props(u){this._props=u,this._onDidChangeProps.fire(this._props)}appendProps(u){this._props=Object.assign(Object.assign({},this._props),u),this._onDidChangeProps.fire(this._props)}get enabled(){return this._enabled}set enabled(u){this._enabled=u,this._onDidChangeEnablement.fire(u)}get validateInput(){return this._validateInput}set validateInput(u){this._validateInput=u,this._onDidChangeValidateInput.fire()}get actionButton(){return this._actionButton}set actionButton(u){this._actionButton=u,this._onDidChangeActionButton.fire()}dispose(){this._disposables.dispose()}}class g{get selected(){return this._selected}constructor(u,h){this.provider=u,this.disposable=h,this._disposables=new o.DisposableStore,this._onDidFocus=this._disposables.add(new o.Emitter),this.onDidFocus=this._onDidFocus.event,this._selected=!1,this._onDidChangeSelection=this._disposables.add(new o.Emitter),this.onDidChangeSelection=this._onDidChangeSelection.event,this.input=new b}focus(){this._onDidFocus.fire()}setSelected(u){this._selected=u,this._onDidChangeSelection.fire(this)}dispose(){this._disposables.dispose(),this.disposable.dispose(),this.provider.dispose(),this.input.dispose()}}let _=class{constructor(){this._disposables=new o.DisposableStore,this._selectedRepositories=[],this._providerIds=new Set,this._repositories=[],this._onDidChangeSelectedRepositories=this._disposables.add(new o.Emitter),this.onDidChangeSelectedRepositories=this._onDidChangeSelectedRepositories.event,this._onDidAddProvider=this._disposables.add(new o.Emitter),this.onDidAddRepository=this._onDidAddProvider.event,this._onDidRemoveProvider=this._disposables.add(new o.Emitter),this.onDidRemoveRepository=this._onDidRemoveProvider.event,this.logger=(0,o.getDebugLogger)()}get selectedRepositories(){return[...this._selectedRepositories]}get repositories(){return[...this._repositories]}registerSCMProvider(u){if(this.logger.log("SCMService#registerSCMProvider"),this._providerIds.has(u.id))throw new Error(`SCM Provider ${u.id} already exists.`);this._providerIds.add(u.id);const h=(0,o.toDisposable)(()=>{const l=this._repositories.indexOf(c);l<0||(r.dispose(),this._providerIds.delete(u.id),this._repositories.splice(l,1),this._onDidRemoveProvider.fire(c),c.selected&&this._repositories.length>0&&this._repositories[0].setSelected(!0))}),c=new g(u,h),r=o.Event.filter(c.onDidChangeSelection,l=>l.selected)(this.onDidChangeSelection,this);return this._repositories.push(c),this._onDidAddProvider.fire(c),this._repositories.length===1&&c.setSelected(!0),c}setInputProps(u){this._repositories.forEach(h=>{h.input.props=u})}appendInputProps(u){this._repositories.forEach(h=>{h.input.appendProps(u)})}onDidChangeSelection(u){p(this._selectedRepositories,[u])||(this._repositories.filter(h=>h!==u).forEach(h=>{h.setSelected(!1)}),this._selectedRepositories=this._repositories.filter(h=>h.selected),this._onDidChangeSelectedRepositories.fire(this.selectedRepositories))}dispose(){this._disposables.dispose()}};_=n.__decorate([(0,a.Injectable)()],_),e.SCMService=_},61656:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(85608).__exportStar(t(64964),e)},6556:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SearchModule=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(52925),b=t(50845),g=t(33301),_=t(86952),E=t(51495),u=t(5439);let h=class extends o.BrowserModule{constructor(){super(...arguments),this.providers=[{token:b.SearchContextKey,useClass:b.SearchContextKey},{token:p.IContentSearchClientService,useClass:E.ContentSearchClientService},{token:p.ISearchTreeService,useClass:u.SearchTreeService},_.SearchContribution],this.backServices=[{servicePath:p.ContentSearchServerPath,clientToken:p.IContentSearchClientService}],this.preferences=g.bindSearchPreference}};h=n.__decorate([(0,a.Injectable)()],h),e.SearchModule=h},3956:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.replace=e.getSelection=e.replaceAll=void 0;const n=t(85608),a=t(41869),o=t(43718),p=n.__importStar(t(20868));async function b(E,u,h,c,r,l,s,d,f){if(h.size<1)return!1;const m=Object.assign({},f);if(s&&m){const v={[(0,a.localize)("search.replace.buttonCancel")]:!1,[(0,a.localize)("search.replace.buttonOK")]:!0},y=await s.open({message:(0,o.formatLocalize)("search.removeAll.occurrences.files.confirmation.message",String(m.resultNum),String(m.fileNum),c),type:o.MessageType.Warning,buttons:Object.keys(v)});if(!v[y])return v[y]}for(const v of h){const y=v[1];await _(E,u,y,c,r,l)}return d&&m&&d.info((0,o.formatLocalize)("search.replaceAll.occurrencesMessage",String(m.resultNum),String(m.fileNum),c)),!0}e.replaceAll=b;function g(E){return[new p.Selection(E.line,E.matchStart,E.line,E.matchStart+E.matchLength)]}e.getSelection=g;async function _(E,u,h,c,r,l){var s;const d=h.map(m=>E.getModelReference(new o.URI(m.fileUri))).filter(m=>m?.instance&&!m.instance.dirty),f=[];for(const m of h){let v=c;if(l&&c){let y;try{y=new RegExp(r)}catch{continue}const S=(s=m.renderLineText)===null||s===void 0?void 0:s.slice(m.matchStart-1,m.matchStart+m.matchLength-1);S&&(v=S.replace(y,c))}f.push({options:{dirtyIfInEditor:!0},resource:new o.URI(m.fileUri),textEdit:{range:new p.Range(m.line,m.matchStart,m.line,m.matchStart+m.matchLength),text:v}})}await u.apply({edits:f}),await Promise.all(d.map(async m=>{await m?.instance.save(),m?.dispose()}))}e.replace=_},50845:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SearchContextKey=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(67386);let b=class{initScopedContext(_){this._contextKeyService=this.globalContextkeyService.createScoped(_),this.searchViewFocusedKey=p.SearchViewFocusedKey.bind(this._contextKeyService),this.searchInputBoxFocusedKey=p.SearchInputBoxFocusedKey.bind(this._contextKeyService),this.hasSearchResults=p.HasSearchResults.bind(this._contextKeyService),this.searchViewVisibleKey=p.SearchViewVisibleKey.bind(this._contextKeyService)}get service(){return this._contextKeyService}};n.__decorate([(0,a.Autowired)(o.IContextKeyService),n.__metadata("design:type",Object)],b.prototype,"globalContextkeyService",void 0),b=n.__decorate([(0,a.Injectable)()],b),e.SearchContextKey=b},96895:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SearchHistory=e.SEARCH_WORD_SCOPE=void 0;const n=t(41869);e.SEARCH_WORD_SCOPE="SEARCH_WORD";class a{constructor(p,b){this.searchHistoryList=[],this.currentIndex=-1,this.searchServiceClient=p,this.recentStorage=b}setRecentSearchWord(){this.currentIndex===-1&&(this.currentIndex=this.searchHistoryList.length),this.currentIndex=this.currentIndex-1;let p=this.searchHistoryList[this.currentIndex];if(this.currentIndex<0)return this.currentIndex=0,p=this.searchHistoryList[this.currentIndex],this.setSearchValue(p);if(p){if(this.searchServiceClient.searchValue===p)return this.setRecentSearchWord();this.setSearchValue(p)}}setBackRecentSearchWord(){this.currentIndex=this.currentIndex+1;let p=this.searchHistoryList[this.currentIndex];if(this.currentIndex>=this.searchHistoryList.length)return this.currentIndex=this.searchHistoryList.length-1,p=this.searchHistoryList[this.currentIndex],this.setSearchValue(p);if(p){if(this.searchServiceClient.searchValue===p)return this.setBackRecentSearchWord();this.setSearchValue(p)}}async initSearchHistory(){if(this.searchHistoryList.length>0)return;const p=await this.getMostRecentlySearchWord();this.searchHistoryList=this.searchHistoryList.concat(p||[])}async setSearchHistory(p){this.searchHistoryList.some(b=>b===p)||(this.searchHistoryList.push(p),await this.setMostRecentlySearchWord(p))}async getMostRecentlySearchWord(){return await(await this.recentStorage.getScopeStorage()).get(e.SEARCH_WORD_SCOPE)||[]}async setMostRecentlySearchWord(p){const b=await this.recentStorage.getScopeStorage();let g=[];const _=await this.getMostRecentlySearchWord()||[];(0,n.isArray)(p)?g=g.concat(p):g.push(p),g=_.concat(g),g=Array.from(new Set(g)),g=g.slice(g.length-10,g.length),b.set(e.SEARCH_WORD_SCOPE,g)}setSearchValue(p){this.searchServiceClient.searchValue=p,this.searchServiceClient.searchDebounce()}reset(){this.currentIndex=-1}}e.SearchHistory=a},33301:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.bindSearchPreference=e.createSearchPreferencesProvider=e.SearchPreferences=e.searchPreferenceSchema=void 0;const n=t(41869);e.searchPreferenceSchema={id:"search",order:5,title:(0,n.localize)("Search","\u641C\u7D22"),type:"object",properties:{"search.exclude":{type:"object",markdownDescription:"%preference.search.exclude%",default:{"**/node_modules":!0,"**/bower_components":!0,"**/.git":!0,"**/.svn":!0,"**/.hg":!0,"**/CVS":!0,"**/.DS_Store":!0,"**/Thumbs.db":!0}},"search.include":{type:"object",description:"%preference.search.include%",default:{}},"search.useReplacePreview":{type:"boolean",description:"%preference.search.useReplacePreview%",default:!0},"search.searchOnType":{type:"boolean",description:"%preference.search.searchOnType%",default:!0},"search.searchOnTypeDebouncePeriod":{type:"number",description:"%preference.search.searchOnTypeDebouncePeriod%",default:300}}},e.SearchPreferences=Symbol("SearchPreferences");const a=p=>({token:e.SearchPreferences,useFactory:()=>{const b=p.get(n.PreferenceService);return(0,n.createPreferenceProxy)(b,e.searchPreferenceSchema)}});e.createSearchPreferencesProvider=a;function o(p){p.addProviders((0,e.createSearchPreferencesProvider)(p))}e.bindSearchPreference=o},9767:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SearchResultCollection=void 0;const n=t(52925);class a{constructor(){this.list=[],this.maxLength=5}pushAndGetResultList(p){const{id:b,data:g,searchState:_}=p,E=[];if(_===n.SEARCH_STATE.error||_===n.SEARCH_STATE.done){const u=this.getTempResult();return u&&E.push(u),E.push(p),E}if(g.length<1)return E.push(p),E;if(this.list.length>0)if(b===this.list[0].id)this.pushTempResult(p);else{const u=this.getTempResult();u&&E.push(u),this.pushTempResult(p)}else this.pushTempResult(p);return this.list.length>=this.maxLength&&E.push(this.getTempResult()),E}getTempResult(){let p;return this.list.length<1||(this.list.forEach((b,g)=>{g!==0&&(this.list[0].data=this.list[0].data.concat(b.data))}),p=this.list[0],this.list=[]),p}pushTempResult(p){this.list.push(p)}}e.SearchResultCollection=a},86952:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SearchContribution=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(30144),b=t(67386),g=t(68456),_=t(93899),E=t(43718),u=t(98295),h=t(57517),c=t(63067),r=t(17793),l=t(72665),s=t(26199),d=t(52925),f=t(3956),m=t(33301),v=t(14851),y=t(5439),S=t(13072),A=t(86109);let T=class{constructor(){this.schema=m.searchPreferenceSchema,this.toDispose=new E.DisposableCollection}registerCommands(w){w.registerCommand(o.SEARCH_COMMANDS.OPEN_SEARCH,{execute:I=>{const O=this.mainLayoutService.getTabbarHandler(p.SEARCH_CONTAINER_ID);if(O){if(O.activate(),I&&I.includeValue){this.searchBrowserService.includeValue=I.includeValue,this.searchBrowserService.updateUIState({isDetailOpen:!0}),this.searchBrowserService.search();return}this.searchBrowserService.searchEditorSelection(),this.searchBrowserService.focus(),this.searchBrowserService.search()}}}),w.registerCommand(o.SEARCH_COMMANDS.REFRESH,{execute:()=>{this.searchBrowserService.search()}}),w.registerCommand(o.SEARCH_COMMANDS.CLEAN,{execute:()=>{this.searchBrowserService.clean()}}),w.registerCommand(o.SEARCH_COMMANDS.GET_RECENT_SEARCH_WORD,{execute:I=>{this.searchBrowserService.setRecentSearchWord()}}),w.registerCommand(o.SEARCH_COMMANDS.GET_BACK_RECENT_SEARCH_WORD,{execute:()=>{this.searchBrowserService.setBackRecentSearchWord()}}),w.registerCommand(o.SEARCH_COMMANDS.MENU_REPLACE,{execute:async I=>{if(!A.SearchFileNode.is(I)){const O=new Map;O.set(I.resource.toString(),[I.contentResult]),await(0,f.replaceAll)(this.documentModelManager,this.workspaceEditService,O,this.searchBrowserService.replaceValue,this.searchBrowserService.searchValue,this.searchBrowserService.UIState.isUseRegexp)}},isVisible:()=>!A.SearchFileNode.is(this.searchModelService.contextMenuNode)}),w.registerCommand(o.SEARCH_COMMANDS.MENU_REPLACE_ALL,{execute:async I=>{if(!A.SearchFileNode.is(I))return;const O=new Map;if(!I.children)return;const M=I.children.map(L=>L.contentResult),R={[(0,o.localize)("search.replace.buttonCancel")]:!1,[(0,o.localize)("search.replace.buttonOK")]:!0},P=await this.dialogService.open({message:(0,E.formatLocalize)("search.removeAll.occurrences.file.confirmation.message",String(M.length)),type:E.MessageType.Warning,buttons:Object.keys(R)});if(P&&!R[P])return R[P];O.set(I.resource.toString(),M),await(0,f.replaceAll)(this.documentModelManager,this.workspaceEditService,O,this.searchBrowserService.replaceValue,this.searchBrowserService.searchValue,this.searchBrowserService.UIState.isUseRegexp)},isVisible:()=>!A.SearchFileNode.is(this.searchModelService.contextMenuNode)}),w.registerCommand(o.SEARCH_COMMANDS.MENU_HIDE,{execute:I=>{var O,M;A.SearchFileNode.is(I)?(this.searchBrowserService.resultTotal.fileNum-=1,this.searchBrowserService.resultTotal.resultNum-=I.branchSize,this.searchModelService.treeModel.root.unlinkItem(I)):(this.searchBrowserService.resultTotal.resultNum-=1,((M=(O=I.parent)===null||O===void 0?void 0:O.children)===null||M===void 0?void 0:M.length)===1&&(this.searchBrowserService.resultTotal.fileNum-=1,this.searchModelService.treeModel.root.unlinkItem(I.parent)),I.parent.unlinkItem(I)),this.searchBrowserService.fireTitleChange()}}),w.registerCommand(o.SEARCH_COMMANDS.MENU_COPY,{execute:I=>{var O;if(A.SearchFileNode.is(I)){let R=`${I.resource.codeUri.fsPath.toString()}
28543
+ }`)}return s}get onFocus(){return this._onFocus.event}focusInput(){this._onFocus.fire()}};c.EXTENSION_SETTINGS_PREFIX="@ext:",c.EXTENSION_SETTINGS_REGX=/^@ext:(\S+)(.+)?/,c.DEFAULT_CHANGE_DELAY=200,a.__decorate([(0,o.Autowired)(b.PreferenceService),a.__metadata("design:type",Object)],c.prototype,"preferenceService",void 0),a.__decorate([(0,o.Autowired)(b.PreferenceSchemaProvider),a.__metadata("design:type",b.PreferenceSchemaProvider)],c.prototype,"schemaProvider",void 0),a.__decorate([(0,o.Autowired)(b.PreferenceProviderProvider),a.__metadata("design:type",Function)],c.prototype,"providerProvider",void 0),a.__decorate([(0,o.Autowired)(g.IFileServiceClient),a.__metadata("design:type",Object)],c.prototype,"fileServiceClient",void 0),a.__decorate([(0,o.Autowired)(b.CommandService),a.__metadata("design:type",Object)],c.prototype,"commandService",void 0),c=n=a.__decorate([(0,o.Injectable)(),a.__metadata("design:paramtypes",[])],c),e.PreferenceSettingsService=c,e.defaultSettingGroup=[{id:_.PreferenceSettingId.General,title:"%settings.group.general%",iconClass:(0,b.getIcon)("setting")},{id:_.PreferenceSettingId.Terminal,title:"%settings.group.terminal%",iconClass:(0,b.getIcon)("terminal")},{id:_.PreferenceSettingId.Editor,title:"%settings.group.editor%",iconClass:(0,b.getIcon)("editor")},{id:_.PreferenceSettingId.View,title:"%settings.group.view%",iconClass:(0,b.getIcon)("detail")},{id:_.PreferenceSettingId.Feature,title:"%settings.group.feature%",iconClass:(0,b.getIcon)("file-text")}],e.defaultSettingSections={[_.PreferenceSettingId.General]:[{preferences:[{id:"general.theme",localized:"preference.general.theme"},{id:"general.icon",localized:"preference.general.icon"},{id:"general.productIconTheme",localized:"preference.general.productIconTheme"},{id:"general.language",localized:"preference.general.language",hiddenInScope:[b.PreferenceScope.Workspace]}]}],[_.PreferenceSettingId.Editor]:[{title:"Editor",preferences:[{id:"editor.previewMode"},{id:"editor.enablePreviewFromCodeNavigation"},{id:"editor.autoSave",localized:"preference.editor.autoSave"},{id:"editor.autoSaveDelay",localized:"preference.editor.autoSaveDelay"},{id:"workbench.refactoringChanges.showPreviewStrategy",localized:"preference.workbench.refactoringChanges.showPreviewStrategy.title"},{id:"editor.askIfDiff",localized:"preference.editor.askIfDiff"},{id:"editor.cursorStyle",localized:"preference.editor.cursorStyle"},{id:"editor.fontSize",localized:"preference.editor.fontSize"},{id:"editor.fontWeight",localized:"preference.editor.fontWeight"},{id:"editor.fontFamily",localized:"preference.editor.fontFamily"},{id:"editor.lineHeight",localized:"preference.editor.lineHeight"},{id:"editor.trimAutoWhitespace"},{id:"editor.quickSuggestionsDelay",localized:"preference.editor.quickSuggestionsDelay"},{id:"editor.suggestOnTriggerCharacters"},{id:"editor.acceptSuggestionOnEnter"},{id:"editor.acceptSuggestionOnCommitCharacter"},{id:"editor.snippetSuggestions"},{id:"editor.wordBasedSuggestions"},{id:"editor.suggestSelection"},{id:"editor.suggestFontSize"},{id:"editor.suggestLineHeight"},{id:"editor.tabCompletion"},{id:"editor.suggest.filteredTypes"},{id:"editor.suggest.insertMode"},{id:"editor.suggest.filterGraceful"},{id:"editor.suggest.localityBonus"},{id:"editor.suggest.shareSuggestSelections"},{id:"editor.suggest.snippetsPreventQuickSuggestions"},{id:"editor.suggest.showIcons"},{id:"editor.suggest.maxVisibleSuggestions"},{id:"editor.suggest.showMethods"},{id:"editor.suggest.showFunctions"},{id:"editor.suggest.showConstructors"},{id:"editor.suggest.showFields"},{id:"editor.suggest.showVariables"},{id:"editor.suggest.showClasses"},{id:"editor.suggest.showStructs"},{id:"editor.suggest.showInterfaces"},{id:"editor.suggest.showModules"},{id:"editor.suggest.showProperties"},{id:"editor.suggest.showEvents"},{id:"editor.suggest.showOperators"},{id:"editor.suggest.showUnits"},{id:"editor.suggest.showValues"},{id:"editor.suggest.showConstants"},{id:"editor.suggest.showEnums"},{id:"editor.suggest.showEnumMembers"},{id:"editor.suggest.showKeywords"},{id:"editor.suggest.showWords"},{id:"editor.suggest.showColors"},{id:"editor.suggest.showFiles"},{id:"editor.suggest.showReferences"},{id:"editor.suggest.showCustomcolors"},{id:"editor.suggest.showFolders"},{id:"editor.suggest.showTypeParameters"},{id:"editor.suggest.showSnippets"},{id:"editor.suggest.showUsers"},{id:"editor.suggest.showIssues"},{id:"editor.suggest.preview"},{id:"editor.suggest.details.visible"},{id:"editor.inlineSuggest.enabled",localized:"preference.editor.inlineSuggest.enabled"},{id:"editor.inlineSuggest.showToolbar"},{id:"editor.experimental.stickyScroll.enabled",localized:"preference.editor.experimental.stickyScroll.enabled"},{id:"editor.guides.bracketPairs",localized:"preference.editor.guides.bracketPairs"},{id:"editor.guides.indentation",localized:"preference.editor.guides.indentation"},{id:"editor.guides.highlightActiveIndentation",localized:"preference.editor.guides.highlightActiveIndentation"},{id:"editor.detectIndentation",localized:"preference.editor.detectIndentation"},{id:"editor.tabSize",localized:"preference.editor.tabSize"},{id:"editor.insertSpaces",localized:"preference.editor.insertSpace"},{id:"editor.wrapTab",localized:"preference.editor.wrapTab"},{id:"editor.wordWrap",localized:"preference.editor.wordWrap"},{id:"editor.renderLineHighlight",localized:"preference.editor.renderLineHighlight"},{id:"editor.renderWhitespace",localized:"preference.editor.renderWhitespace"},{id:"editor.minimap",localized:"preference.editor.minimap"},{id:"editor.preferredFormatter",localized:"preference.editor.preferredFormatter"},{id:"editor.formatOnSave",localized:"preference.editor.formatOnSave"},{id:"editor.formatOnSaveTimeout",localized:"preference.editor.formatOnSaveTimeout"},{id:"editor.formatOnPaste",localized:"preference.editor.formatOnPaste"},{id:"editor.codeActionsOnSave",localized:"preference.editor.saveCodeActions"},{id:"editor.codeActionsOnSaveNotification",localized:"preference.editor.saveCodeActionsNotification"},{id:"editor.gotoLocation.multiple"},{id:"editor.maxTokenizationLineLength",localized:"preference.editor.maxTokenizationLineLength"},{id:"editor.largeFile",localized:"preference.editor.largeFile"},{id:"editor.readonlyFiles",localized:"preference.editor.readonlyFiles"},{id:"editor.bracketPairColorization.enabled",localized:"preference.editor.bracketPairColorization.enabled"},{id:"workbench.editorAssociations"},{id:"editor.unicodeHighlight.ambiguousCharacters"}]},{title:"Diff Editor",preferences:[{id:"diffEditor.renderSideBySide",localized:"preference.diffEditor.renderSideBySide"},{id:"diffEditor.ignoreTrimWhitespace",localized:"preference.diffEditor.ignoreTrimWhitespace"}]},{title:"Merge Editor",preferences:[{id:"mergeEditor.autoApplyNonConflictChanges",localized:"preference.mergeEditor.autoApplyNonConflictChanges"}]},{title:"Files",preferences:[{id:"files.autoGuessEncoding",localized:"preference.files.autoGuessEncoding.title"},{id:"files.encoding",localized:"preference.files.encoding.title"},{id:"files.eol",localized:"preference.files.eol"},{id:"files.trimFinalNewlines",localized:"preference.files.trimFinalNewlines"},{id:"files.trimTrailingWhitespace",localized:"preference.files.trimTrailingWhitespace"},{id:"files.insertFinalNewline",localized:"preference.files.insertFinalNewline"},{id:"files.exclude",localized:"preference.files.exclude.title"},{id:"files.watcherExclude",localized:"preference.files.watcherExclude.title"},{id:"files.associations",localized:"preference.files.associations.title"}]}],[_.PreferenceSettingId.View]:[{title:"MenuBar",preferences:[{id:"menubar.compactMode",localized:"preference.menubar.mode.compact"}]},{title:"Layout",preferences:[{id:"view.saveLayoutWithWorkspace",localized:"preference.view.saveLayoutWithWorkspace.title"}]},{title:"File Tree",preferences:[]},{title:"Explorer",preferences:[{id:"explorer.fileTree.baseIndent",localized:"preference.explorer.fileTree.baseIndent.title"},{id:"explorer.fileTree.indent",localized:"preference.explorer.fileTree.indent.title"},{id:"explorer.compactFolders",localized:"preference.explorer.compactFolders.title"},{id:"explorer.autoReveal",localized:"preference.explorer.autoReveal"}]},{title:"QuickOpen",preferences:[{id:"workbench.quickOpen.preserveInput"}]},{title:"Search",preferences:[{id:"search.include"},{id:"search.exclude",localized:"preference.search.exclude.title"},{id:"search.useReplacePreview"},{id:"search.searchOnType"},{id:"search.searchOnTypeDebouncePeriod"}]},{title:"Output",preferences:[{id:"output.maxChannelLine",localized:"output.maxChannelLine"},{id:"output.enableLogHighlight",localized:"output.enableLogHighlight"},{id:"output.enableSmartScroll",localized:"output.enableSmartScroll"}]},{title:"Debug",preferences:[{id:"debug.console.wordWrap",localized:"preference.debug.console.wordWrap"},{id:"debug.inline.values",localized:"preference.debug.inline.values"},{id:"debug.toolbar.float",localized:"preference.debug.toolbar.float.title"},{id:"debug.breakpoint.editorHint",localized:"preference.debug.breakpoint.editorHint.title"},{id:"debug.breakpoint.showBreakpointsInOverviewRuler",localized:"preference.debug.breakpoint.showBreakpointsInOverviewRuler"}]}],[_.PreferenceSettingId.Terminal]:[{preferences:[{id:"terminal.type",localized:"preference.terminal.type"},{id:"terminal.fontFamily",localized:"preference.terminal.fontFamily"},{id:"terminal.fontSize",localized:"preference.terminal.fontSize"},{id:"terminal.fontWeight",localized:"preference.terminal.fontWeight"},{id:"terminal.lineHeight",localized:"preference.terminal.lineHeight"},{id:"terminal.cursorBlink",localized:"preference.terminal.cursorBlink"},{id:"terminal.scrollback",localized:"preference.terminal.scrollback"},{id:"terminal.integrated.shellArgs.linux",localized:"preference.terminal.integrated.shellArgs.linux"},{id:"terminal.integrated.copyOnSelection",localized:"preference.terminal.integrated.copyOnSelection"},{id:"terminal.integrated.localEchoEnabled",localized:"preference.terminal.integrated.localEchoEnabled"},{id:"terminal.integrated.localEchoLatencyThreshold",localized:"preference.terminal.integrated.localEchoLatencyThreshold"},{id:"terminal.integrated.localEchoExcludePrograms",localized:"preference.terminal.integrated.localEchoExcludePrograms"},{id:"terminal.integrated.cursorStyle",localized:"preference.terminal.integrated.cursorStyle"},{id:"terminal.integrated.localEchoStyle",localized:"preference.terminal.integrated.localEchoStyle"},{id:"terminal.integrated.xtermRenderType",localized:"preference.terminal.integrated.xtermRenderType"}]}],[_.PreferenceSettingId.Feature]:[{title:"Misc",preferences:[]},{title:"Tree Component",preferences:[{id:"workbench.list.openMode",localized:"preference.workbench.list.openMode.title"}]}]}},26551:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.EditPreferenceDecorationsContribution=void 0;const n=t(85608),a=t(76003),o=t(97267),p=t(41869),b=t(93899),g=t(43718),_=t(57517),E=t(14951),u=n.__importStar(t(20868)),h=t(90684),c=t(19582),r=t(60295),l=t(90184),s=t(76773);let d=class{constructor(m){this.editor=m,this.disposer=new g.Disposable,this._preferences=[],this._currentLine=0,this._editPreferenceDecoration=this.editor.monacoEditor.createDecorationsCollection()}verifyEditor(){var m;return((m=this.editor.currentUri)===null||m===void 0?void 0:m.toString())===s.USER_PREFERENCE_URI.toString()}async getPreferenceUrl(){const m=await this.preferenceSettingsService.getPreferenceUrl(g.PreferenceScope.User);if(m){const v=await this.fileServiceClient.getFileStat(m);return v?g.URI.parse(v.uri):void 0}}async getDocumentModelRef(m){const v=this.editorDocumentModelService.getModelReference(m);return v||this.editorDocumentModelService.createModelReference(m)}contribute(){return this.disposer.addDispose(this.editor.monacoEditor.onMouseDown(async m=>{var v;((v=m.target.range)===null||v===void 0?void 0:v.startLineNumber)!==this.currentLine&&!this.verifyEditor()||m.target.type!==c.MouseTargetType.GUTTER_GLYPH_MARGIN||m.target.detail.isAfterLines||!this.isVisible()||(this.registerMenuItems(this.preferences),this.showContextMenu(m))})),this.disposer.addDispose(this.editor.monacoEditor.onDidChangeCursorPosition(m=>{this.verifyEditor()&&this.onPositionChanged(m)})),this.disposer.addDispose(this.editor.monacoEditor.onContextMenu(m=>(m.event.preventDefault(),m.event.stopPropagation(),!1))),this.disposer.addDispose(this.editor.monacoEditor.onDidChangeConfiguration(()=>{this.editor.monacoEditor.getOption(u.editor.EditorOption.glyphMargin)||this.hide()})),this.disposer.addDispose(g.Disposable.create(()=>{this.hide(),this.menuRegistry.unregisterMenuId(b.MenuId.SettingJSONGlyphMarginContext)})),this.disposer.addDispose(this.commandRegistry.registerCommand(r.SettingJSONGlyphMarginEdit,{execute:(m,v)=>{m&&v&&(v==="true"&&(v=!0),v==="false"&&(v=!1),this.preferenceSettingsService.setPreference(m,v,g.PreferenceScope.User))}})),this.disposer}get preferences(){return this._preferences}get currentLine(){return this._currentLine}show(m,v,y){this._preferences=y;const S=[];S.push({options:{description:"edit-preference-widget-decoration",glyphMarginClassName:(0,o.getIcon)("edit")+" setting-edit-glyph",glyphMarginHoverMessage:new h.MarkdownString().appendText(v),stickiness:u.editor.TrackedRangeStickiness.NeverGrowsWhenTypingAtEdges},range:{startLineNumber:m,startColumn:1,endLineNumber:m,endColumn:1}}),this._editPreferenceDecoration.set(S)}hide(){this._editPreferenceDecoration.clear()}isVisible(){return this._editPreferenceDecoration.length>0}async getPreferencesKeyAtLineNumber(m){const v=new RegExp(/\"((?!,).)*\"+((\s+?)?)\:/g),y=await this.getPreferenceUrl();if(!y)return[];const S=await this.getDocumentModelRef(y),T=S.instance.getMonacoModel().getLineContent(m);S.dispose();const w=(T.match(v)||[]).map(O=>{const M=/\"(.*?)\"/g.exec(O);return M&&M[1]||""}),I=this.preferenceSchemaProvider.getCombinedSchema().properties;return w.filter(O=>{const M=I[O];return M?M.type==="boolean"||M.enum:!1})}async onPositionChanged(m){this.hide();const{position:{lineNumber:v}}=m;this._currentLine=v;const y=await this.getPreferencesKeyAtLineNumber(v);y.length>0?this.editor.monacoEditor.getOption(u.editor.EditorOption.glyphMargin)&&this.marginFreeFromOtherDecorations(v)&&this.show(v,(0,g.localize)("editTtile"),y):this.hide()}marginFreeFromOtherDecorations(m){const v=this.editor.monacoEditor.getLineDecorations(m);if(v){for(const{options:y}of v)if(y.glyphMarginClassName&&y.glyphMarginClassName.indexOf((0,o.getIcon)("edit"))===-1)return!1}return!0}async registerMenuItems(m){if(m.length===1){const v=this.getActions(m[0]);this.disposer.addDispose(this.menuRegistry.registerMenuItems(b.MenuId.SettingJSONGlyphMarginContext,v.map(y=>({command:{id:r.SettingJSONGlyphMarginEdit.id,label:y},group:"navigation",extraTailArgs:[m[0],y]}))))}else m.forEach(v=>{const y=`${b.MenuId.SubSettingJSONGlyphMarginContext}_${v}`;this.disposer.addDispose(this.menuRegistry.registerMenuItem(b.MenuId.SettingJSONGlyphMarginContext,{submenu:y,label:v,group:"navigation"}));const S=this.getActions(v);this.disposer.addDispose(this.menuRegistry.registerMenuItems(y,S.map(A=>({command:{id:r.SettingJSONGlyphMarginEdit.id,label:A},group:"navigation",extraTailArgs:[v,A]}))))})}getActions(m){const y=this.preferenceSchemaProvider.getCombinedSchema().properties[m];return y.type==="boolean"?["true","false"]:y.enum?y.enum.map(S=>S.toString()):[]}showContextMenu(m){m.event.preventDefault(),m.event.stopPropagation();const v=this.menuService.createMenu({id:b.MenuId.SettingJSONGlyphMarginContext,config:{separator:"inline"}}),y=v.getMergedMenuNodes();v.dispose(),setTimeout(()=>{this.ctxMenuRenderer.show({anchor:m.event.browserEvent,menuNodes:y,onHide:()=>{const S=(A,T="menu")=>this.menuRegistry.getMenuItems(A).map(D=>T==="sub"?D.submenu:D.command).filter(Boolean);S(b.MenuId.SettingJSONGlyphMarginContext,"sub").forEach(A=>{this.menuRegistry.unregisterMenuItem(b.MenuId.SettingJSONGlyphMarginContext,A),S(A).forEach(T=>{this.menuRegistry.unregisterMenuItem(A,T.id)})}),S(b.MenuId.SettingJSONGlyphMarginContext).forEach(A=>{this.menuRegistry.unregisterMenuItem(b.MenuId.SettingJSONGlyphMarginContext,A.id)}),this.menuRegistry.unregisterMenuItem(b.MenuId.SettingJSONGlyphMarginContext,b.MenuId.SubSettingJSONGlyphMarginContext)}})},10)}};n.__decorate([(0,a.Autowired)(p.IPreferenceSettingsService),n.__metadata("design:type",l.PreferenceSettingsService)],d.prototype,"preferenceSettingsService",void 0),n.__decorate([(0,a.Autowired)(b.ICtxMenuRenderer),n.__metadata("design:type",b.ICtxMenuRenderer)],d.prototype,"ctxMenuRenderer",void 0),n.__decorate([(0,a.Autowired)(p.PreferenceSchemaProvider),n.__metadata("design:type",p.PreferenceSchemaProvider)],d.prototype,"preferenceSchemaProvider",void 0),n.__decorate([(0,a.Autowired)(_.IEditorDocumentModelService),n.__metadata("design:type",Object)],d.prototype,"editorDocumentModelService",void 0),n.__decorate([(0,a.Autowired)(E.IFileServiceClient),n.__metadata("design:type",Object)],d.prototype,"fileServiceClient",void 0),n.__decorate([(0,a.Autowired)(b.AbstractContextMenuService),n.__metadata("design:type",b.AbstractContextMenuService)],d.prototype,"menuService",void 0),n.__decorate([(0,a.Autowired)(b.IMenuRegistry),n.__metadata("design:type",b.IMenuRegistry)],d.prototype,"menuRegistry",void 0),n.__decorate([(0,a.Autowired)(g.CommandRegistry),n.__metadata("design:type",Object)],d.prototype,"commandRegistry",void 0),d=n.__decorate([(0,a.Injectable)({multiple:!0}),n.__param(0,(0,a.Optional)()),n.__metadata("design:paramtypes",[Object])],d),e.EditPreferenceDecorationsContribution=d},15789:(x,e,t)=>{"use strict";var n;Object.defineProperty(e,"__esModule",{value:!0}),e.NextPreferenceItem=void 0;const a=t(85608),o=a.__importDefault(t(53373)),p=a.__importDefault(t(12784)),b=a.__importStar(t(14041)),g=t(76003),_=t(97267),E=t(56849),u=t(41869),h=t(83569),c=t(90184),r=a.__importDefault(t(80881)),l=/`#(.+)#`/gi,s="none",d=({preferenceId:O,localizedName:M,preference:R,scope:P})=>{var L;const N=(0,u.useInjectable)(u.PreferenceService),k=(0,u.useInjectable)(u.IPreferenceSettingsService),B=(0,u.useInjectable)(u.PreferenceSchemaProvider),F=N.getProvider(P),{value:W,effectingScope:j}=k.getPreference(O,P),[V,K]=(0,b.useState)(F.get(O)),[H,z]=(0,b.useState)(),[G,U]=(0,b.useState)(()=>k.getEnumLabels(O));(0,b.useEffect)(()=>{const se=B.getPreferenceProperty(O);z(se);const ae=new u.DisposableCollection;return ae.push(F.onDidPreferencesChanged(de=>{if(de.default&&Object.prototype.hasOwnProperty.call(de.default,O)&&de.default[O].scope===P){const q=de.default[O].newValue;K(q)}})),ae.push(k.onDidEnumLabelsChange(O)((0,p.default)(()=>{z(B.getPreferenceProperty(O)),U(k.getEnumLabels(O))},c.PreferenceSettingsService.DEFAULT_CHANGE_DELAY))),()=>{ae.dispose()}},[]);let $=H;if($||($=B.getPreferenceProperty(O)),!$)return b.default.createElement("div",{className:(0,o.default)({[r.default.preference_item]:!0})},O," schema not found.");const Y=(L=N.resolve(O,void 0,void 0,void 0,u.PreferenceScope.Default).value)!==null&&L!==void 0?L:$.default,Q=V!==void 0&&String(V)!==String(Y),te=()=>{if($){const se={preferenceName:O,scope:P,effectingScope:j,schema:$,labels:G,currentValue:V===void 0?W:V,defaultValue:Y,localizedName:M,localizedDescription:{description:R.description,markdownDescription:R.markdownDescription},renderedDescription:y({name:M,description:R.description,markdownDescription:R.markdownDescription}),hasValueInScope:V!==void 0,isModified:Q};switch($.type){case"boolean":return b.default.createElement(T,Object.assign({},se));case"integer":case"number":return $.enum?b.default.createElement(D,Object.assign({},se)):b.default.createElement(A,Object.assign({},se,{isNumber:!0}));case"string":return $.enum?b.default.createElement(D,Object.assign({},se)):b.default.createElement(A,Object.assign({},se));case"array":return $.items&&$.items.type==="string"?b.default.createElement(I,Object.assign({},se)):b.default.createElement(w,Object.assign({},se));default:return b.default.createElement(w,Object.assign({},se))}}};return b.default.createElement("div",{className:(0,o.default)({[r.default.preference_item]:!0,[r.default.modified]:Q}),"data-id":O},te())};e.NextPreferenceItem=d;const f=O=>{var M;const R=(0,u.useInjectable)(u.IPreferenceSettingsService);if(!O)return null;const P=O.match(l);if(!P)return O;let L=O;const N=[];for(const k of P){if(!L)continue;const B=k.slice(2,k.length-2),F=(M=h.knownPrefIdMappings[B])!==null&&M!==void 0?M:B,W=R.getPreferenceViewDesc(F);if(W){const j=(0,h.getPreferenceItemLabel)(W),[V,K]=L.split(k,2);V&&N.push(b.default.createElement("span",{key:N.length},V)),L=K;const H=b.default.createElement("a",{onClick:()=>{R.search(j)},key:F},j);N.push(H)}}return L&&N.push(b.default.createElement("span",{key:N.length},L)),N};let m=n=class extends E.DefaultMarkedRenderer{codespan(M){var R;if(M.startsWith("#")&&M.endsWith("#")){const P=M.slice(1,M.length-1),L=(R=h.knownPrefIdMappings[P])!==null&&R!==void 0?R:P,N=this.preferenceSettingService.getPreferenceViewDesc(L);if(N){const k=(0,h.getPreferenceItemLabel)(N);return(0,E.linkify)(`${n.openerScheme}${k}`,L,k)}return super.codespan(L)}return super.codespan(M)}};m.openerScheme="prefTitle://",a.__decorate([(0,g.Autowired)(u.IPreferenceSettingsService),a.__metadata("design:type",c.PreferenceSettingsService)],m.prototype,"preferenceSettingService",void 0),m=n=a.__decorate([(0,g.Injectable)()],m);const v=O=>{const M=(0,u.useInjectable)(u.IOpenerService),R=(0,u.useInjectable)(m),P=(0,u.useInjectable)(u.IPreferenceSettingsService);return b.default.createElement(E.Markdown,{opener:{open(L){if(L.startsWith(m.openerScheme)){const N=L.slice(m.openerScheme.length);return P.search(N),!0}return M.open(L)}},value:O,renderer:R})},y=O=>{var M;const R=(0,u.replaceLocalizePlaceholder)((M=O.description)!==null&&M!==void 0?M:O.markdownDescription);return R?b.default.createElement("div",{className:r.default.desc},O.markdownDescription?v(R):f(R)):b.default.createElement("div",{className:r.default.desc},O.name)},S=({preferenceName:O,scope:M,effectingScope:R,showReset:P})=>{const L=(0,u.useInjectable)(u.IPreferenceSettingsService);return b.default.createElement("span",{className:r.default.preference_status},R===u.PreferenceScope.Workspace&&M===u.PreferenceScope.User?b.default.createElement("span",{onClick:()=>{L.selectScope(u.PreferenceScope.Workspace),L.scrollToPreference(O)},className:r.default.preference_overwritten},(0,u.localize)("preference.overwrittenInWorkspace")):void 0,R===u.PreferenceScope.User&&M===u.PreferenceScope.Workspace?b.default.createElement("span",{onClick:()=>{L.selectScope(u.PreferenceScope.User),L.scrollToPreference(O)},className:r.default.preference_overwritten},(0,u.localize)("preference.overwrittenInUser")):void 0,P?b.default.createElement("span",{className:(0,o.default)(r.default.preference_reset,(0,u.getIcon)("rollback")),onClick:()=>{L.reset(O,M)}}):void 0)};function A({preferenceName:O,localizedName:M,currentValue:R,renderedDescription:P,isNumber:L,effectingScope:N,scope:k,isModified:B}){const F=(0,u.useInjectable)(u.PreferenceService),W=(0,u.useInjectable)(u.PreferenceSchemaProvider),[j,V]=(0,b.useState)();(0,b.useEffect)(()=>{V(R)},[R]);const K=z=>{H(L&&/^[0-9]+$/.test(z)?Number(z):z)||F.set(O,z,k)};function H(z){const G=W.validate(O,z);if(!G.valid)return{type:2,message:G.reason}}return b.default.createElement(b.default.Fragment,null,b.default.createElement("div",{className:(0,o.default)(r.default.key,r.default.item)},M," ",b.default.createElement(S,{preferenceName:O,scope:k,effectingScope:N,showReset:B})),P,b.default.createElement("div",{className:r.default.control_wrap},b.default.createElement("div",{className:r.default.text_control},b.default.createElement(_.ValidateInput,{type:L?"number":"text",validate:H,onBlur:()=>{K(j)},onValueChange:z=>{V(z)},value:j}))))}function T({preferenceName:O,localizedName:M,renderedDescription:R,currentValue:P,effectingScope:L,scope:N,isModified:k}){const B=(0,u.useInjectable)(u.PreferenceService),[F,W]=(0,b.useState)();(0,b.useEffect)(()=>{W(P)},[P]);const j=V=>{W(V),B.set(O,V,N)};return b.default.createElement(b.default.Fragment,null,b.default.createElement("div",{className:(0,o.default)(r.default.key)},M," ",b.default.createElement(S,{preferenceName:O,scope:N,effectingScope:L,showReset:k})),b.default.createElement("div",{className:r.default.check},b.default.createElement(_.CheckBox,{checked:F,onChange:V=>{j(V.target.checked)}}),R))}function D({preferenceName:O,localizedName:M,renderedDescription:R,currentValue:P,defaultValue:L,schema:N,labels:k,effectingScope:B,scope:F,isModified:W}){const j=(0,u.useInjectable)(u.PreferenceService),V=(0,u.useInjectable)(u.ILogger),K=P??L,H=(0,b.useMemo)(()=>N.enumDescriptions&&N.enum&&N.enumDescriptions[N.enum.indexOf(P)]||"",[N]),[z,G]=(0,b.useState)(H),U=(0,b.useCallback)(se=>{j.set(O,se,F)},[j]),$=(0,b.useCallback)(()=>{const se=N.enum?[...N.enum]:[];return L&&!se.includes(L)&&(V.warn(`default value(${L}) of ${O} not found in its enum field`),se.push(L)),se.map((ae,de)=>{typeof ae=="boolean"&&(ae=String(ae));const q=(0,u.replaceLocalizePlaceholder)(String(k[ae]||ae));return b.default.createElement(_.Option,{value:ae,label:q,key:`${de}-${q}`,className:r.default.select_option},q,String(ae)===String(L)&&b.default.createElement("div",{className:r.default.select_default_option_tips},(0,u.localize)("preference.enum.default")))})},[N.enum,k]),Y=()=>b.default.createElement(_.Option,{value:(0,u.localize)("preference.stringArray.none"),key:s,label:(0,u.localize)("preference.stringArray.none"),disabled:!0},(0,u.localize)("preference.stringArray.none")),Q=N.enum&&N.enum.length>0?$():Y(),te=(0,b.useCallback)((se,ae)=>{if(N.enumDescriptions){const de=N.enumDescriptions[ae];G(de||"")}},[N.enumDescriptions,G]);return b.default.createElement(b.default.Fragment,null,b.default.createElement("div",{className:r.default.key},M," ",b.default.createElement(S,{preferenceName:O,scope:F,effectingScope:B,showReset:W})),R,b.default.createElement("div",{className:r.default.control_wrap},b.default.createElement(_.Select,{dropdownRenderType:"absolute",maxHeight:"200",onChange:U,value:K,className:r.default.select_control,description:z,onMouseEnter:te,notMatchWarning:W?(0,u.formatLocalize)("preference.item.notValid",K):""},Q)))}function w({preferenceName:O,localizedName:M,renderedDescription:R,effectingScope:P,scope:L,hasValueInScope:N}){const k=(0,u.useInjectable)(u.IPreferenceSettingsService),B=async()=>{k.openJSON(L,O)};return b.default.createElement(b.default.Fragment,null,b.default.createElement("div",{className:r.default.key},M," ",b.default.createElement(S,{preferenceName:O,scope:L,effectingScope:P,showReset:N})),R,b.default.createElement("div",{className:r.default.control_wrap},b.default.createElement("a",{onClick:B},(0,u.localize)("preference.editSettingsJson"))))}function I({preferenceName:O,localizedName:M,currentValue:R,renderedDescription:P,effectingScope:L,scope:N,isModified:k}){const B=(0,u.useInjectable)(u.PreferenceService),[F,W]=(0,b.useState)([]),[j,V]=(0,b.useState)(),[K,H]=(0,b.useState)(),[z,G]=(0,b.useState)(-1);(0,b.useEffect)(()=>{W(R||[])},[R]),(0,b.useEffect)(()=>{z>=0?H(F[z]):H("")},[z]);const U=de=>{W(de),B.set(O,de,N)},$=()=>{if(j){const de=F.slice(0);if(de.indexOf(j)>-1)return;de.push(j),V(""),U(de)}},Y=de=>{const q=F.slice(0);q.splice(de,1),q.length?U(q):U([])},Q=de=>{G(de)},te=de=>{V(de)},se=F.map((de,q)=>{const _e=JSON.stringify(de);return z>=0&&z===q?b.default.createElement("li",{className:r.default.array_items,key:`${q}-${_e}`}):b.default.createElement("li",{className:r.default.array_items,key:`${q}-${_e}`},b.default.createElement("div",{className:r.default.array_item},typeof de=="string"?de:_e),b.default.createElement("div",{className:r.default.operate},b.default.createElement(_.Button,{type:"icon",title:(0,u.localize)("preference.stringArray.operate.edit"),onClick:()=>{Q(q)},className:(0,o.default)((0,u.getIcon)("edit"),r.default.array_item)}),b.default.createElement(_.Button,{type:"icon",title:(0,u.localize)("preference.stringArray.operate.delete"),onClick:()=>{Y(q)},className:(0,o.default)((0,u.getIcon)("delete"),r.default.array_item)})))}),ae=()=>{const de=()=>{const _e=F.slice(0);K?_e[z]=K:_e.splice(z,1),W(_e),B.set(O,_e,N),G(-1)},q=_e=>{H(_e)};if(z>=0)return b.default.createElement("div",{className:r.default.array_edit_wrapper,style:{top:z*24}},b.default.createElement(_.Input,{type:"text",className:r.default.array_edit_input,value:K,onValueChange:q,onPressEnter:de,addonAfter:[b.default.createElement("div",{className:r.default.array_edit_input_tip},(0,u.localize)("preference.stringArray.operate.editTip"))]}))};return b.default.createElement(b.default.Fragment,null,b.default.createElement("div",{className:r.default.key},M," ",b.default.createElement(S,{preferenceName:O,scope:N,effectingScope:L,showReset:k})),P,b.default.createElement("div",{className:r.default.control_wrap},b.default.createElement("ul",{className:r.default.array_items_wrapper},se,ae()),b.default.createElement("div",{className:r.default.preferences_flex_row},b.default.createElement(_.Input,{type:"text",className:r.default.text_control,value:j,onValueChange:te}),b.default.createElement(_.Button,{className:r.default.add_button,onClick:$},(0,u.localize)("preference.array.additem","Add")))))}},99187:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.PreferenceItem=e.PreferenceView=void 0;const n=t(85608),a=n.__importDefault(t(12784)),o=n.__importStar(t(14041)),p=n.__importDefault(t(19686)),b=t(97267),g=t(91802),_=t(41869),E=t(99333),u=n.__importDefault(t(39572)),h=t(83569),c=t(15789),r=n.__importDefault(t(80881)),l="preferenceViewIndexTree",s=8,d=()=>{const S=(0,_.useInjectable)(_.IPreferenceSettingsService),[A,T]=(0,o.useState)([]),[D,w]=(0,o.useState)([]),I=(0,u.default)(()=>{const B=S.currentScope,F=S.currentSearch,W=S.getSettingGroups(B,F),j=[],V=[];for(let z=0;z<W.length;z++){const G=W[z],U=S.getResolvedSections(G.id,B,F);j.push(...K(G,U)),V.push(H(z,G,U))}T(j),w(V);function K(z,G){const U=[],$=(Y,Q="")=>{let te=Q;Y.title&&(te=Q+"/"+Y.title);const se=[];return Y.component?se.push({component:Y.component,scope:B}):Y.preferences?se.push(...Y.preferences.map(ae=>({id:"preference:"+ae.id,preference:ae,scope:B,_path:te}))):Y.subSections&&Y.subSections.forEach(ae=>{const de=$(ae,te);se.push(...de)}),se.length>0&&Y.title&&se.unshift({id:"section:"+Y.title,title:Y.title,scope:B,_path:te}),se};for(const Y of G){const Q=$(Y,z.title);U.push(...Q)}return U.length>0&&z.title&&U.unshift({title:z.title,id:"group:"+z.id,scope:B,_path:z.title}),U}function H(z,G,U){const{id:$,title:Y,iconClass:Q}=G,te={label:(0,h.toNormalCase)(Y),iconClassName:Q,groupId:$,order:z,className:r.default.group_item},se=[];return U.forEach((ae,de)=>{const q=m($,ae,de,1);q&&se.push(q)}),te.children=se,se.length>0?te.expandable=!0:te.expandable=!1,te}},16);(0,o.useEffect)(()=>{const B=new _.Disposable(S.emitter.on("settingsGroupsChange",()=>{I.run()}),S.emitter.on("currentSearchChange",()=>{I.run()}),S.emitter.on("currentScopeChange",()=>{I.run()}),S.emitter.on("settingsSectionsChange",()=>{I.run()}));return I.run(),()=>{B.dispose()}},[]);const O=(0,_.useInjectable)(_.LabelService),M=(0,o.useCallback)((B,F)=>O.getIcon(_.URI.parse(B),F),[]),R=(0,o.useRef)(null),P=(0,a.default)(B=>{S.search(B)},100,{maxWait:300});(0,o.useEffect)(()=>{const B=S.onFocus(()=>{R&&R.current&&(R.current.focus(),R.current.select())});return()=>{B.dispose()}},[]);const L=(0,_.useEventDrivenState)(S.emitter,"currentSearchChange",()=>S.currentSearch),N=(0,_.useEventDrivenState)(S.emitter,"tabListChange",()=>S.tabList),k=(0,_.useEventDrivenState)(S.emitter,"tabIndexChange",()=>S.tabIndex);return o.default.createElement(b.ComponentContextProvider,{value:{getIcon:_.getIcon,localize:_.localize,getResourceIcon:M}},o.default.createElement("div",{className:r.default.preferences},o.default.createElement("div",{className:r.default.preferences_header},o.default.createElement(b.Tabs,{className:r.default.tabs,value:k,onChange:B=>{S.updateTabIndex(B)},tabs:N.map(B=>(0,_.localize)(B.label))}),o.default.createElement("div",{className:r.default.search_pref},o.default.createElement(b.Input,{autoFocus:!0,value:L,placeholder:(0,_.localize)("preference.searchPlaceholder"),onValueChange:P,ref:R,hasClear:!0}))),A.length>0?o.default.createElement(E.SplitPanel,{id:"preference-panel",resizeHandleClassName:r.default.devider,className:r.default.preferences_body,direction:"left-to-right"},o.default.createElement(v,{treeData:D,"data-sp-defaultSize":180,"data-sp-minSize":150}),o.default.createElement(y,{tabIndex:k,items:A,"data-sp-flex":1})):o.default.createElement("div",{className:r.default.preference_noResults},L?(0,_.formatLocalize)("preference.noResults",L):(0,_.formatLocalize)("preference.empty"))))};e.PreferenceView=d;const f=({data:S,index:A})=>{var T;if(S.title)return!((T=S.id)===null||T===void 0)&&T.startsWith("group:")?o.default.createElement("div",{className:r.default.group_title,id:S.id},S.title):o.default.createElement("div",{className:r.default.section_title,id:S.id},S.title);if(S.component)return o.default.createElement(S.component,{scope:S.scope});if(S.preference)return o.default.createElement(c.NextPreferenceItem,{key:`${A} - ${S.preference.id} - ${S.scope}`,preference:S.preference,preferenceId:S.preference.id,localizedName:S.preference.label,scope:S.scope})};e.PreferenceItem=f;const m=(S,A,T,D)=>{let w;A.title&&(w={label:A.title,section:A.title,groupId:S,order:T,indentOffset:D===1?-s:-(s>>1),className:r.default.index_item});const I=[];return A.subSections&&A.subSections.forEach((O,M)=>{const R=m(S,O,M,D+1);R&&I.push(R)}),w&&I&&I.length>0&&(w.children=I,w.expandable=!0),w},v=S=>{const A=(0,_.useInjectable)(_.IPreferenceSettingsService),{treeData:T}=S;return o.default.createElement(p.default,{className:r.default.preferences_indexes},({width:D,height:w})=>o.default.createElement(b.BasicRecycleTree,{treeName:l,sortComparator:(I,O)=>{if(typeof I.order<"u"&&typeof O.order<"u")return I.order>O.order?1:I.order<O.order?-1:0},height:w,width:D,itemHeight:26,baseIndent:s,indent:12,treeData:T,onClick:(I,O)=>{const M=O&&O._raw;M&&(M.section?A.scrollToSection(M.section):M.groupId&&A.scrollToGroup(M.groupId))},onReady:I=>{A.handleTreeHandler(I)}}))},y=S=>{const A=(0,_.useInjectable)(_.IPreferenceSettingsService),[T,D]=(0,o.useState)(void 0),{items:w}=S;(0,o.useEffect)(()=>{var R;T&&(!((R=A.treeHandler)===null||R===void 0)&&R.focusItem)&&A.treeHandler.focusItem(T)},[S.tabIndex,A.treeHandler,T]);const I=R=>{var P;if(R){const L=w.findIndex(N=>N.id===R);L>=0&&((P=A.listHandler)===null||P===void 0||P.scrollToIndex({index:L,behavior:"auto",align:"start"}))}},O=(0,u.default)(R=>{const P=w[R.startIndex+1];P&&P._path&&D(P._path)},_.FRAME_THREE,{leading:!0,trailing:!0}),M=(0,_.useEventDrivenState)(A.emitter,"currentSelectIdChange",()=>A.currentSelectId);return(0,o.useEffect)(()=>{M&&I(M)},[w,M]),o.default.createElement("div",{className:r.default.preferences_items},o.default.createElement(g.VirtualList,{data:w,template:e.PreferenceItem,className:r.default.preference_section,refSetter:A.handleListHandler,onRangeChanged:O.run}))}},76773:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.UserPreferenceProvider=e.USER_PREFERENCE_URI=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(78132),b=t(11461);e.USER_PREFERENCE_URI=new o.URI().withScheme(o.Schemes.userStorage).withPath("settings.json");let g=class extends b.AbstractResourcePreferenceProvider{getUri(){return e.USER_PREFERENCE_URI}getScope(){return p.PreferenceScope.User}};g=n.__decorate([(0,a.Injectable)()],g),e.UserPreferenceProvider=g},25947:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});const n=t(85608);n.__exportStar(t(84017),e),n.__exportStar(t(57506),e)},57506:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.UserStorageContribution=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(14951),b=t(2156),g=t(83569);let _=class{initialize(){this.fileSystem.registerProvider(o.Schemes.userStorage,this.userStorageService)}};n.__decorate([(0,a.Autowired)(g.IUserStorageService),n.__metadata("design:type",Object)],_.prototype,"userStorageService",void 0),n.__decorate([(0,a.Autowired)(p.IFileServiceClient),n.__metadata("design:type",b.FileServiceClient)],_.prototype,"fileSystem",void 0),_=n.__decorate([(0,o.Domain)(o.ClientAppContribution)],_),e.UserStorageContribution=_},84017:(x,e,t)=>{"use strict";var n;Object.defineProperty(e,"__esModule",{value:!0}),e.UserStorageServiceImpl=e.DEFAULT_USER_STORAGE_FOLDER=void 0;const a=t(85608),o=a.__importDefault(t(82451)),p=t(76003),b=t(41869),g=t(43718),_=t(42933);e.DEFAULT_USER_STORAGE_FOLDER=".sumi";const E={recursive:!1,excludes:["**/logs/**"]};let u=n=class{static toUserStorageUri(c,r){const l=this.getRelativeUserStoragePath(c,r);return new b.URI("").withScheme(g.Schemes.userStorage).withPath(l).withFragment(r.fragment).withQuery(r.query)}static getRelativeUserStoragePath(c,r){return r.toString().slice(c.toString().length+1)}static toFilesystemURI(c,r){return c.withPath(c.path.join(r.path.toString()))}constructor(){this.capabilities=2,this.onDidChangeCapabilities=g.Event.None,this.toDispose=new b.DisposableCollection,this.onDidChangeFileEmitter=new b.Emitter,this._whenReady=this.init()}get whenReady(){return this._whenReady}get onDidChangeFile(){return this.onDidChangeFileEmitter.event}async init(){const c=await this.fileServiceClient.getCurrentUserHome();if(c){const r=new b.URI(c.uri).resolve(this.appConfig.userPreferenceDirName||this.appConfig.preferenceDirName||e.DEFAULT_USER_STORAGE_FOLDER);await this.fileServiceClient.access(r.toString())||await this.fileServiceClient.createFolder(r.toString()),this.userStorageFolder=r}this.toDispose.push(this.onDidChangeFileEmitter)}readDirectory(c){throw new Error("Method not implemented.")}createDirectory(c){throw new Error("Method not implemented.")}async watch(c,r){await this.whenReady;const l=n.toFilesystemURI(this.userStorageFolder,b.URI.from(c)),s=(0,o.default)(E,r),d=await this.fileServiceClient.watchFileChanges(l.parent,s.excludes);return this.toDispose.push(d),this.toDispose.push(d.onFilesChanged(f=>{const m=[];for(const v of f)v.uri===l.toString()&&m.push(v);m.length>0&&this.onDidChangeFileEmitter.fire(m.map(v=>({uri:n.toUserStorageUri(this.userStorageFolder,new b.URI(v.uri)).toString(),type:v.type})))})),d.watchId}async readFile(c){await this.whenReady;const r=n.toFilesystemURI(this.userStorageFolder,b.URI.from(c));try{const{content:l}=await this.fileServiceClient.readFile(r.toString());return l.buffer}catch(l){throw new Error(l)}}async writeFile(c,r,l){await this.whenReady;const s=n.toFilesystemURI(this.userStorageFolder,b.URI.from(c));try{let d=await this.fileServiceClient.getFileStat(s.toString());d?await this.fileServiceClient.setContent(d,r,l):(d=await this.fileServiceClient.createFile(s.toString()),await this.fileServiceClient.setContent(d,r,l))}catch(d){throw new Error(d)}}delete(c,r){throw new Error("Method not implemented.")}rename(c,r,l){throw new Error("Method not implemented.")}copy(c,r,l){throw new Error("Method not implemented.")}async stat(c){await this.whenReady;const r=n.toFilesystemURI(this.userStorageFolder,b.URI.from(c)),l=await this.fileServiceClient.getFileStat(r.toString());if(l)return l}async access(c,r){await this.whenReady;const l=n.toFilesystemURI(this.userStorageFolder,b.URI.from(c));return this.fileServiceClient.access(l.toString(),r)}};a.__decorate([(0,p.Autowired)(_.IFileServiceClient),a.__metadata("design:type",Object)],u.prototype,"fileServiceClient",void 0),a.__decorate([(0,p.Autowired)(b.ILogger),a.__metadata("design:type",Object)],u.prototype,"logger",void 0),a.__decorate([(0,p.Autowired)(b.AppConfig),a.__metadata("design:type",Object)],u.prototype,"appConfig",void 0),u=n=a.__decorate([(0,p.Injectable)(),a.__metadata("design:paramtypes",[])],u),e.UserStorageServiceImpl=u},46392:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.WorkspaceFilePreferenceProvider=e.WorkspaceFilePreferenceProviderFactory=e.WorkspaceFilePreferenceProviderOptions=void 0;const n=t(85608),a=t(76003),o=t(78132),p=t(51500),b=t(84435),g=t(11461);let _=class{};_=n.__decorate([(0,a.Injectable)()],_),e.WorkspaceFilePreferenceProviderOptions=_,e.WorkspaceFilePreferenceProviderFactory=Symbol("WorkspaceFilePreferenceProviderFactory");let E=class extends g.AbstractResourcePreferenceProvider{getUri(){return this.options.workspaceUri}parse(h){const c=super.parse(h);return b.WorkspaceData.is(c)?c.settings||{}:{}}getPath(h){return["settings",h]}getScope(){return o.PreferenceScope.Workspace}getDomain(){return this.workspaceService.tryGetRoots().map(h=>h.uri)}};n.__decorate([(0,a.Autowired)(p.IWorkspaceService),n.__metadata("design:type",Object)],E.prototype,"workspaceService",void 0),n.__decorate([(0,a.Autowired)(_),n.__metadata("design:type",_)],E.prototype,"options",void 0),E=n.__decorate([(0,a.Injectable)()],E),e.WorkspaceFilePreferenceProvider=E},58705:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.WorkspacePreferenceProvider=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(78132),b=t(51500),g=t(46392);let _=class extends p.PreferenceProvider{constructor(){super(),this.toDisposeOnEnsureDelegateUpToDate=new o.DisposableCollection,this.init()}async init(){this._ready.resolve(),this.ensureDelegateUpToDate(),this.workspaceService.onWorkspaceLocationChanged(()=>this.ensureDelegateUpToDate())}getConfigUri(u=this.ensureResourceUri()){const h=this.delegate;return h&&h.getConfigUri(u)}get delegate(){return this._delegate||this.ensureDelegateUpToDate(),this._delegate}ensureDelegateUpToDate(){const u=this.createDelegate();this._delegate!==u&&(this.toDisposeOnEnsureDelegateUpToDate.dispose(),this.toDispose.push(this.toDisposeOnEnsureDelegateUpToDate),this._delegate=u,u&&this.toDisposeOnEnsureDelegateUpToDate.pushAll([u,u.onDidPreferencesChanged(h=>{this.emitPreferencesChangedEvent(h)})]))}createDelegate(){const u=this.workspaceService.workspace;if(u)return this.workspaceService.isMultiRootWorkspaceOpened?this.workspaceFileProviderFactory({workspaceUri:new o.URI(u.uri)}):this.foldersPreferenceProvider}doGet(u,h=this.ensureResourceUri(),c){const r=this.delegate;return r?r.get(u,h,c):void 0}doResolve(u,h=this.ensureResourceUri(),c){const r=this.delegate;return r?r.resolve(u,h,c):{}}getPreferences(u=this.ensureResourceUri(),h){const c=this.delegate;return c?c.getPreferences(u,h):void 0}getLanguagePreferences(u=this.ensureResourceUri()){const h=this.delegate;return h?h.getLanguagePreferences(u):void 0}async doSetPreference(u,h,c=this.ensureResourceUri(),r){const l=this.delegate;return l?l.setPreference(u,h,c,r):!1}ensureResourceUri(){if(this.workspaceService.workspace&&!this.workspaceService.isMultiRootWorkspaceOpened)return this.workspaceService.workspace.uri}};n.__decorate([(0,a.Autowired)(b.IWorkspaceService),n.__metadata("design:type",Object)],_.prototype,"workspaceService",void 0),n.__decorate([(0,a.Autowired)(g.WorkspaceFilePreferenceProviderFactory),n.__metadata("design:type",Function)],_.prototype,"workspaceFileProviderFactory",void 0),n.__decorate([(0,a.Autowired)(p.PreferenceProvider,{tag:p.PreferenceScope.Folder}),n.__metadata("design:type",p.PreferenceProvider)],_.prototype,"foldersPreferenceProvider",void 0),_=n.__decorate([(0,a.Injectable)(),n.__metadata("design:paramtypes",[])],_),e.WorkspacePreferenceProvider=_},60295:(x,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SettingJSONGlyphMarginEdit=void 0,e.SettingJSONGlyphMarginEdit={id:"preference.setting.glyphMargin.edit"}},83569:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});const n=t(85608);n.__exportStar(t(99112),e),n.__exportStar(t(36858),e),n.__exportStar(t(49132),e),n.__exportStar(t(29728),e)},49132:(x,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.knownPrefIdMappings=e.PreferenceSettingId=void 0;var t;(function(n){n.General="general",n.Editor="editor",n.Terminal="terminal",n.Feature="feature",n.View="view"})(t=e.PreferenceSettingId||(e.PreferenceSettingId={})),e.knownPrefIdMappings={"workbench.editor.enablePreview":"editor.previewMode"}},99112:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.toNormalCase=e.getPreferenceItemLabel=e.toPreferenceReadableName=e.knownTermMappings=e.PREF_SCHEME=void 0;const n=t(41869);e.PREF_SCHEME="pref",e.knownTermMappings=new Map,e.knownTermMappings.set("power shell","PowerShell"),e.knownTermMappings.set("powershell","PowerShell"),e.knownTermMappings.set("javascript","JavaScript"),e.knownTermMappings.set("typescript","TypeScript"),["css","html","scss","less","json","js","ts","ie","id","php","scm","npm"].forEach(g=>{e.knownTermMappings.set(g,g.toUpperCase())});function a(g){const _=g.toLowerCase();return e.knownTermMappings.has(_)?e.knownTermMappings.get(_):b(g)}function o(g){const _=g.split(".");let E=a(_[0]);return _[1]&&(E+=" > "+b(_[1])),_[2]&&(E+=" : "+b(_[2])),_.slice(3).length>0&&(E+=". "+_.slice(3).join(" ")),E}e.toPreferenceReadableName=o;function p(g){let _;return g.localized&&(_=(0,n.localize)(g.localized)),_||(_=o(g.id)),_}e.getPreferenceItemLabel=p;function b(g){return g.substr(0,1).toUpperCase()+g.substr(1).replace(/([^A-Z])([A-Z])/g,"$1 $2")}e.toNormalCase=b},29728:(x,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SettingContribution=void 0,e.SettingContribution=Symbol("SettingContribution")},36858:(x,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.IUserStorageService=void 0,e.IUserStorageService=Symbol("IUserStorageService")},46507:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(85608).__exportStar(t(83569),e)},70716:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.HighlightLabel=void 0;const a=t(85608).__importDefault(t(14041)),o=t(41869),p=t(48560),b=t(52416),g=({text:_="",highlights:E=[],className:u="",labelClassName:h="",labelIconClassName:c="",hightLightClassName:r="",OutElementType:l="span"})=>{const s=(0,p.useInjectable)(b.IIconService),d=a.default.useMemo(()=>{const f=[];let m=0;for(const v of E){if(v.end===v.start)continue;if(m<v.start){const S=_.substring(m,v.start);f.push(a.default.createElement("span",{className:h,key:`${f.length}-${S}`},(0,o.transformLabelWithCodicon)(S,c,s.fromString.bind(s)))),m=v.end}const y=_.substring(v.start,v.end);f.push(a.default.createElement("span",{className:r,key:`${f.length}-${y}`},(0,o.transformLabelWithCodicon)(y,c,s.fromString.bind(s)))),m=v.end}if(m<_.length){const v=_.substring(m);f.push(a.default.createElement("span",{className:h,key:`${f.length}-${v}`},(0,o.transformLabelWithCodicon)(v,c,s.fromString.bind(s))))}return f},[_,E]);return a.default.createElement(l,{title:_,className:u},d)};e.HighlightLabel=g},52644:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.KeybindingView=void 0;const n=t(85608),a=n.__importDefault(t(53373)),o=n.__importDefault(t(14041)),p=t(41869),b=n.__importDefault(t(26739)),g=({keybinding:_,className:E,sequenceClassName:u,keyClassName:h})=>{const c=(0,p.useInjectable)(p.KeybindingRegistry),r=o.default.useMemo(()=>c.acceleratorFor(_," "),[_]);return o.default.createElement("div",{className:(0,a.default)(b.default.keybinding,E)},r?r.map((l,s)=>{const d=l.split(" ");return o.default.createElement("div",{key:`${l}_${s}`,title:l,className:(0,a.default)(b.default.key_sequence,u)},d.map((f,m)=>o.default.createElement("span",{className:(0,a.default)(b.default.key,h),key:`${f}_${s}_${m}`},f)))}):null)};e.KeybindingView=g},47005:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.QuickOpenTabs=void 0;const n=t(85608),a=n.__importDefault(t(53373)),o=n.__importDefault(t(14041)),p=t(41869),b=t(63373),g=t(52644),_=n.__importDefault(t(78539)),E=({tabs:u,activePrefix:h,onChange:c,toggleTab:r})=>{const l=(0,p.useInjectable)(p.KeybindingRegistry),s=d=>{const f=l.getKeybindingsForCommand(d);return f?f[0]:void 0};return o.default.createElement("div",{id:b.VIEW_CONTAINERS.QUICKPICK_TABS,className:_.default.quickopen_tabs},o.default.createElement("div",{className:_.default.quickopen_tabs_left},u.map(({title:d,prefix:f,commandId:m,order:v},y)=>{const S=s(m);return o.default.createElement("div",{key:f,className:_.default.quickopen_tabs_left_item,onMouseDown:A=>A.preventDefault(),onClick:()=>{f!==h&&c(f)}},o.default.createElement("div",{className:(0,a.default)(_.default.quickopen_tabs_left_item_text,{[_.default.selected]:h===f})},d),S&&o.default.createElement(g.KeybindingView,{keybinding:S,className:_.default.keybinding,keyClassName:_.default.tab_key}))})),o.default.createElement("div",{style:{flex:1}}),o.default.createElement("div",{className:_.default.quickopen_tabs_tip,onClick:()=>{r?.()}},(0,p.localize)("quickopen.tab.tip.prefix"),o.default.createElement("span",{className:_.default.tab_key},"Tab"),(0,p.localize)("quickopen.tab.tip.suffix")))};e.QuickOpenTabs=E},96534:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.QuickOpenModule=e.CoreQuickOpenModule=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(74404),b=t(80490),g=t(99066),_=t(65028),E=t(43131),u=t(13978);let h=class extends o.BrowserModule{constructor(){super(...arguments),this.providers=[{token:p.PrefixQuickOpenService,useClass:b.PrefixQuickOpenServiceImpl},{token:o.QuickOpenService,useClass:E.MonacoQuickOpenService},{token:p.QuickPickService,useClass:u.QuickPickServiceImpl},{token:p.IQuickInputService,useClass:g.QuickInputService},_.CoreQuickOpenContribution],this.contributionProvider=b.QuickOpenContribution}};h=n.__decorate([(0,a.Injectable)()],h),e.CoreQuickOpenModule=h;let c=class extends h{constructor(){super(...arguments),this.providers=this.providers.concat(_.QuickOpenFeatureContribution)}};c=n.__decorate([(0,a.Injectable)()],c),e.QuickOpenModule=c},80490:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.PrefixQuickOpenServiceImpl=e.QuickOpenHandlerRegistry=e.QuickOpenContribution=void 0;const n=t(85608),a=n.__importDefault(t(14041)),o=t(76003),p=t(41869),b=t(18193),g=t(74404),_=t(43718),E=t(47005),u=t(50426);var h=t(74404);Object.defineProperty(e,"QuickOpenContribution",{enumerable:!0,get:function(){return h.QuickOpenContribution}});let c=class extends _.Disposable{constructor(){super(...arguments),this.handlers=new Map,this.tabs=[],this.sortedTabs=null,this.handlerTabMap=new Map}registerHandler(s,d){if(this.handlers.has(s.prefix))return this.logger.warn(`The handler function of the \`${s.prefix}\` is already registered`),_.Disposable.NULL;this.handlers.set(s.prefix,s);const f={dispose:()=>this.handlers.delete(s.prefix)};if(this.addDispose(f),s.default&&(this.defaultHandler=s),d&&!d.hideTab){const m=[],{sub:v}=d,y=n.__rest(d,["sub"]);v&&Object.keys(v).forEach(S=>{m.push(Object.assign({prefix:`${s.prefix}${S}`},v[S]))}),m.push(Object.assign({prefix:s.prefix},y)),this.handlerTabMap.set(s,m),this.tabs.push(...m),this.sortedTabs=null,this.addDispose({dispose:()=>{const S=this.handlerTabMap.get(s);S&&(this.handlerTabMap.delete(s),this.tabs=this.tabs.filter(A=>!S.includes(A)),this.sortedTabs=null)}})}return f}getDefaultHandler(){return this.defaultHandler}isDefaultHandler(s){return s===this.getDefaultHandler()}getHandlers(){return[...this.handlers.values()]}getHandlerOrDefault(s){for(const d of this.handlers.values())if(s.startsWith(d.prefix))return d;return this.getDefaultHandler()}getSortedTabs(){return this.sortedTabs||(this.sortedTabs=this.tabs.slice().sort((s,d)=>s.order-d.order)),this.sortedTabs}getTabByHandler(s,d){if(this.handlerTabMap.has(s)){let f=d;return this.isDefaultHandler(s)&&!d.startsWith(s.prefix)&&(f=`${s.prefix}${d}`),this.handlerTabMap.get(s).find(m=>f.startsWith(m.prefix))}}};n.__decorate([(0,o.Autowired)(_.ILogger),n.__metadata("design:type",Object)],c.prototype,"logger",void 0),c=n.__decorate([(0,o.Injectable)()],c),e.QuickOpenHandlerRegistry=c;let r=class{constructor(){this.activePrefix="",this.currentLookFor="",this.toDisposeCurrent=new _.DisposableCollection}open(s,d){const f=this.handlers.getHandlerOrDefault(s);let m=!1;d?s=`${s}${d}`:this.corePreferences["workbench.quickOpen.preserveInput"]&&f&&f===this.currentHandler&&this.currentLookFor&&this.handlers.getTabByHandler(f,this.currentLookFor)===this.handlers.getTabByHandler(f,s)?(s=this.currentLookFor,m=!0):this.currentLookFor="",this.setCurrentHandler(s,f,m)}async setCurrentHandler(s,d,f){var m,v;if(d!==this.currentHandler&&(this.toDisposeCurrent.dispose(),this.currentHandler=d,this.toDisposeCurrent.push(_.Disposable.create(()=>{const D=d&&d.getOptions().onClose;D&&D(!0)}))),!d){this.doOpen();return}d.init&&await d.init(),this.setActivePrefix(d,s);let y=s;this.handlers.isDefaultHandler(d)&&s.startsWith(d.prefix)&&(y=s.substring(d.prefix.length));const S=this.handlers.isDefaultHandler(d)?0:((v=(m=this.handlers.getTabByHandler(d,s))===null||m===void 0?void 0:m.prefix)!==null&&v!==void 0?v:d.prefix).length,A=d.getOptions(),T=()=>{var D;(D=d.onToggle)===null||D===void 0||D.call(d);const w=this.handlers.getSortedTabs();let I=null;if(this.activePrefix){let O=w.findIndex(M=>M.prefix===this.activePrefix);O=O===w.length-1?0:O+1,I=w[O]}else I=w[0];I&&this.open(I.prefix)};this.doOpen(Object.assign(Object.assign({prefix:y,skipPrefix:S,valueSelection:f?[S,s.length]:void 0},A),{onClose:D=>{A.onClose&&A.onClose(D),d.onClose&&d.onClose(D)},renderTab:()=>a.default.createElement(E.QuickOpenTabs,{tabs:this.handlers.getSortedTabs(),activePrefix:this.activePrefix,onChange:D=>{var w;(w=d.onToggle)===null||w===void 0||w.call(d),this.open(D)},toggleTab:()=>{T()}}),toggleTab:()=>{T()}}))}doOpen(s){this.quickTitleBar.isAttached.get()&&this.quickTitleBar.hide(),this.quickOpenService.open({onType:(d,f)=>this.onType(d,f)},s)}onType(s,d){this.currentLookFor=s;const f=this.handlers.getHandlerOrDefault(s);if(f===void 0){const m=[];m.push(new g.QuickOpenItem({label:(0,p.localize)("quickopen.command.nohandler")})),d(m)}else if(f!==this.currentHandler)this.setCurrentHandler(s,f);else{const m=f.getModel(),v=this.handlers.isDefaultHandler(f)?s:s.substr(f.prefix.length);m.onType(v,(y,S)=>d(y,S)),this.setActivePrefix(f,s)}}setActivePrefix(s,d){var f,m;this.activePrefix=(m=(f=this.handlers.getTabByHandler(s,d))===null||f===void 0?void 0:f.prefix)!==null&&m!==void 0?m:""}};n.__decorate([(0,o.Autowired)(c),n.__metadata("design:type",c)],r.prototype,"handlers",void 0),n.__decorate([(0,o.Autowired)(g.QuickOpenService),n.__metadata("design:type",Object)],r.prototype,"quickOpenService",void 0),n.__decorate([(0,o.Autowired)(u.QuickTitleBar),n.__metadata("design:type",u.QuickTitleBar)],r.prototype,"quickTitleBar",void 0),n.__decorate([(0,o.Autowired)(b.CorePreferences),n.__metadata("design:type",Object)],r.prototype,"corePreferences",void 0),r=n.__decorate([(0,o.Injectable)()],r),e.PrefixQuickOpenServiceImpl=r},99066:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.QuickInputService=void 0;const n=t(85608),a=t(76003),o=t(97267),p=t(74404),b=t(43718),g=t(44854);let _=class{constructor(){this.onDidAcceptEmitter=new b.Emitter,this.onDidChangeValueEmitter=new b.Emitter}open(u){this.inputBox&&this.inputBox.hide();const h=new b.Deferred,c=u&&u.validateInput;u.hideOnDidAccept===void 0&&(u.hideOnDidAccept=!0);const r=this.injector.get(g.InputBoxImpl,[u]);return this.inputBox=r,r.onDidAccept(l=>{h.resolve(l),this.onDidAcceptEmitter.fire()}),r.getDerivedOptionsFromValue=async l=>{var s;const d=c&&l!==void 0?(0,b.withNullAsUndefined)(await c(l)):void 0;return{validationMessage:typeof d=="string"?d:d?.message,validationType:typeof d=="string"?o.VALIDATE_TYPE.ERROR:(s=d?.type)!==null&&s!==void 0?s:o.VALIDATE_TYPE.ERROR}},r.onDidChangeValue(async l=>{this.onDidChangeValueEmitter.fire(l)}),r.onDidHide(()=>{h.resolve(void 0)}),r.open(),h.promise}refresh(){var u;(u=this.inputBox)===null||u===void 0||u.refresh()}hide(){var u;(u=this.inputBox)===null||u===void 0||u.hide()}dispose(){var u;(u=this.inputBox)===null||u===void 0||u.dispose()}get onDidAccept(){return this.onDidAcceptEmitter.event}get onDidChangeValue(){return this.onDidChangeValueEmitter.event}};n.__decorate([(0,a.Autowired)(p.QuickOpenService),n.__metadata("design:type",Object)],_.prototype,"quickOpenService",void 0),n.__decorate([(0,a.Autowired)(a.INJECTOR_TOKEN),n.__metadata("design:type",a.Injector)],_.prototype,"injector",void 0),_=n.__decorate([(0,a.Injectable)()],_),e.QuickInputService=_},11143:(x,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.QuickOpenBaseAction=void 0;class t{constructor(a){this.options=a}get id(){return this.options.id}get label(){return this.options.label||""}set label(a){this.options.label=a}get tooltip(){return this.options.tooltip||""}set tooltip(a){this.options.tooltip=a}get class(){return this.options.class||""}set class(a){this.options.class=a}get enabled(){return this.options.enabled||!0}set enabled(a){this.options.enabled=a}get checked(){return this.options.checked||!1}set checked(a){this.options.checked=a}get radio(){return this.options.radio||!1}set radio(a){this.options.radio=a}dispose(){}}e.QuickOpenBaseAction=t},78245:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.QuickOpenItemService=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(40827),b=t(43718),g=t(52416),_=t(89802);let E=class{constructor(){this.onDidTriggerItemButtonEmitter=new b.Emitter}get onDidTriggerItemButton(){return this.onDidTriggerItemButtonEmitter.event}fireDidTriggerItemButton(h,c){this.onDidTriggerItemButtonEmitter.fire({button:c,item:{handle:h}})}getButtons(h){return h.length===0?[]:h.map((c,r)=>{if(b.ThemeIcon.isThemeIcon(c.iconPath))return Object.assign(Object.assign({},c),{iconClass:(0,o.getExternalIcon)(c.iconPath.id),handle:r});const l=(0,_.iconPath2URI)(c.iconPath,this.themeService.getCurrentThemeSync().type),s=l&&this.staticResourceService.resolveStaticResource(l).toString(),d=s&&this.iconService.fromIcon("",s,g.IconType.Background);return Object.assign(Object.assign({},c),{iconClass:d,handle:r})})}getIconClass(h){const{iconClass:c,iconPath:r}=h;if(c)return c;if(!r)return;if(b.ThemeIcon.isThemeIcon(r))return(0,o.getExternalIcon)(r.id);const l=(0,_.iconPath2URI)(r,this.themeService.getCurrentThemeSync().type),s=l&&this.staticResourceService.resolveStaticResource(l).toString();return r&&this.iconService.fromIcon("",s,g.IconType.Background)}};n.__decorate([(0,a.Autowired)(g.IThemeService),n.__metadata("design:type",Object)],E.prototype,"themeService",void 0),n.__decorate([(0,a.Autowired)(),n.__metadata("design:type",p.StaticResourceService)],E.prototype,"staticResourceService",void 0),n.__decorate([(0,a.Autowired)(g.IIconService),n.__metadata("design:type",Object)],E.prototype,"iconService",void 0),E=n.__decorate([(0,a.Injectable)()],E),e.QuickOpenItemService=E},90404:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.CommandQuickOpenItem=e.QuickCommandHandler=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(18193),b=t(93899),g=t(74404),_=t(43718),E=t(77714),u=t(51500);let h=class{constructor(){this.prefix=">",this.description=(0,o.localize)("quickopen.command.description"),this.initDeferred=new _.Deferred,this.initRecentlyUsedCommands()}async init(){await this.initDeferred.promise,this.items=this.getItems()}async initRecentlyUsedCommands(){const s=(await this.workspaceService.getMostRecentlyUsedCommands()).map(d=>this.commandRegistry.getCommand(d)).filter(d=>!!d).reverse();this.commandRegistry.setRecentCommands(s),this.initDeferred.resolve()}getModel(){return{onType:(l,s)=>{s(this.items),this.reporterService.point(_.REPORT_NAME.QUICK_OPEN_MEASURE,"command",{lookFor:l})}}}getOptions(){return{placeholder:(0,o.localize)("quickopen.command.placeholder"),fuzzyMatchLabel:{enableSeparateSubstringMatching:!0},fuzzyMatchDetail:{enableSeparateSubstringMatching:!0},fuzzySort:!1,getPlaceholderItem:()=>new g.QuickOpenItem({label:(0,o.localize)("quickopen.commands.notfound"),run:()=>!1})}}onClose(){this.commandService.executeCommand(o.EDITOR_COMMANDS.FOCUS.id)}getItems(){const l=[],{recent:s,other:d}=this.getCommands();return l.push(...s.map((f,m)=>this.injector.get(c,[f,{groupLabel:m===0?(0,o.localize)("quickopen.recent-commands"):"",showBorder:!1}])),...d.map((f,m)=>this.injector.get(c,[f,{groupLabel:s.length<=0?"":m===0?(0,o.localize)("quickopen.other-commands"):"",showBorder:s.length<=0?!1:m===0}]))),l}getCommands(){const l=this.menuService.createMenu(b.MenuId.CommandPalette,this.contextKeyService),s=this.getValidCommands(this.commandRegistry.getRecentCommands()),d=this.corePreferences["workbench.commandPalette.history"],f=s.slice(0,d),m=new Set(f.map(A=>A.id)),v=new Set,y=[],S=[];for(const[,A]of l.getMenuNodes())for(const T of A){if(!(T instanceof b.MenuItemNode)||T.disabled||v.has(T.id)||(v.add(T.id),m.has(T.id)))continue;y.push(T);const D=this.commandRegistry.getCommand(T.id);D&&S.push(Object.assign(Object.assign({},D),{label:T.label}))}for(let A=f.length-1;A>=0;A--){const T=f[A];v.has(T.id)||f.splice(A,1)}return l.dispose(),{recent:f,other:S.sort((A,T)=>_.Command.compareCommands(A,T))}}getValidCommands(l){return l.filter(s=>s.label&&this.commandRegistry.isVisible(s.id)&&this.commandRegistry.isEnabled(s.id))}};n.__decorate([(0,a.Autowired)(_.CommandService),n.__metadata("design:type",Object)],h.prototype,"commandService",void 0),n.__decorate([(0,a.Autowired)(a.INJECTOR_TOKEN),n.__metadata("design:type",a.Injector)],h.prototype,"injector",void 0),n.__decorate([(0,a.Autowired)(_.CommandRegistry),n.__metadata("design:type",Object)],h.prototype,"commandRegistry",void 0),n.__decorate([(0,a.Autowired)(u.IWorkspaceService),n.__metadata("design:type",Object)],h.prototype,"workspaceService",void 0),n.__decorate([(0,a.Autowired)(p.CorePreferences),n.__metadata("design:type",Object)],h.prototype,"corePreferences",void 0),n.__decorate([(0,a.Autowired)(b.AbstractMenuService),n.__metadata("design:type",b.AbstractMenuService)],h.prototype,"menuService",void 0),n.__decorate([(0,a.Autowired)(o.IContextKeyService),n.__metadata("design:type",Object)],h.prototype,"contextKeyService",void 0),n.__decorate([(0,a.Autowired)(_.IReporterService),n.__metadata("design:type",Object)],h.prototype,"reporterService",void 0),h=n.__decorate([(0,a.Injectable)(),n.__metadata("design:paramtypes",[])],h),e.QuickCommandHandler=h;let c=class extends g.QuickOpenItem{constructor(l,s){super(s),this.command=l,this.commandOptions=s}getLabel(){return this.command.category?`${(0,E.uppercaseFirstLetter)(this.command.category)}: `+this.command.label:this.command.label}isHidden(){return super.isHidden()}getDetail(){var l,s;if(!this.command.labelLocalized)return;let d;const{alias:f,localized:m}=this.command.labelLocalized;if(f!==m){const v=(s=(l=this.command.categoryLocalized)===null||l===void 0?void 0:l.alias)!==null&&s!==void 0?s:this.command.category;v?d=`${(0,E.uppercaseFirstLetter)(v)}: ${f}`:d=f}return d}getKeybinding(){const l=this.keybindings.getKeybindingsForCommand(this.command.id);return l?l[0]:void 0}run(l){return l!==g.Mode.OPEN?!1:(setTimeout(()=>{this.commandService.executeCommand(this.command.id),this.commandRegistry.setRecentCommands([this.command]),this.workspaceService.setMostRecentlyUsedCommand(this.command.id)},50),!0)}};n.__decorate([(0,a.Autowired)(_.CommandService),n.__metadata("design:type",Object)],c.prototype,"commandService",void 0),n.__decorate([(0,a.Autowired)(_.CommandRegistry),n.__metadata("design:type",Object)],c.prototype,"commandRegistry",void 0),n.__decorate([(0,a.Autowired)(o.KeybindingRegistry),n.__metadata("design:type",Object)],c.prototype,"keybindings",void 0),n.__decorate([(0,a.Autowired)(u.IWorkspaceService),n.__metadata("design:type",Object)],c.prototype,"workspaceService",void 0),c=n.__decorate([(0,a.Injectable)({multiple:!0}),n.__metadata("design:paramtypes",[Object,Object])],c),e.CommandQuickOpenItem=c},65028:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.QuickOpenFeatureContribution=e.CoreQuickOpenContribution=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(93899),b=t(74404),g=t(80490),_=t(90404),E=t(77116);let u=class{onStart(){for(const r of this.quickOpenContributionProvider.getContributions())r.registerQuickOpenHandlers(this.quickOpenHandlerRegistry)}};n.__decorate([(0,a.Autowired)(),n.__metadata("design:type",g.QuickOpenHandlerRegistry)],u.prototype,"quickOpenHandlerRegistry",void 0),n.__decorate([(0,a.Autowired)(g.QuickOpenContribution),n.__metadata("design:type",Object)],u.prototype,"quickOpenContributionProvider",void 0),u=n.__decorate([(0,o.Domain)(o.ClientAppContribution)],u),e.CoreQuickOpenContribution=u;let h=class{registerCommands(r){r.registerCommand(o.QUICK_OPEN_COMMANDS.OPEN,{execute:()=>this.prefixQuickOpenService.open(">")}),r.registerCommand(o.QUICK_OPEN_COMMANDS.OPEN_OUTLINE,{execute:()=>this.prefixQuickOpenService.open("@")}),r.registerCommand(o.QUICK_OPEN_COMMANDS.OPEN_VIEW,{execute:()=>this.prefixQuickOpenService.open("view ")}),r.registerCommand(o.QUICK_OPEN_COMMANDS.OPEN_WITH_COMMAND,{execute:l=>this.prefixQuickOpenService.open(">",l)})}registerKeybindings(r){r.registerKeybinding({command:o.QUICK_OPEN_COMMANDS.OPEN.id,keybinding:"ctrlcmd+shift+p"})}registerMenus(r){r.registerMenuItem(p.MenuId.MenubarViewMenu,{command:{id:o.QUICK_OPEN_COMMANDS.OPEN.id,label:(0,o.localize)("menu-bar.view.quick.command")},group:"0_primary"}),r.registerMenuItem(p.MenuId.MenubarViewMenu,{command:{id:o.LAYOUT_COMMANDS.OPEN_VIEW.id,label:o.LAYOUT_COMMANDS.OPEN_VIEW.label},group:"0_primary"})}registerQuickOpenHandlers(r){r.registerHandler(this.quickCommandHandler,{title:(0,o.localize)("quickopen.tab.command"),commandId:o.QUICK_OPEN_COMMANDS.OPEN.id,order:4}),r.registerHandler(this.helpQuickOpenHandler)}};n.__decorate([(0,a.Autowired)(a.INJECTOR_TOKEN),n.__metadata("design:type",a.Injector)],h.prototype,"injector",void 0),n.__decorate([(0,a.Autowired)(b.PrefixQuickOpenService),n.__metadata("design:type",Object)],h.prototype,"prefixQuickOpenService",void 0),n.__decorate([(0,a.Autowired)(),n.__metadata("design:type",_.QuickCommandHandler)],h.prototype,"quickCommandHandler",void 0),n.__decorate([(0,a.Autowired)(),n.__metadata("design:type",E.HelpQuickOpenHandler)],h.prototype,"helpQuickOpenHandler",void 0),h=n.__decorate([(0,o.Domain)(o.CommandContribution,o.KeybindingContribution,p.MenuContribution,g.QuickOpenContribution)],h),e.QuickOpenFeatureContribution=h},77116:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.HelpQuickOpenHandler=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(74404),b=t(80490);let g=class{constructor(){this.prefix="?",this.description=""}init(){this.items=this.handlers.getHandlers().filter(E=>E.prefix!==this.prefix).sort((E,u)=>this.comparePrefix(E.prefix,u.prefix)).map(E=>new p.QuickOpenItem({label:E.prefix,description:E.description,run:u=>(u!==p.Mode.OPEN||this.quickOpenService.open(E.prefix),!1)}))}getModel(){return{onType:(E,u)=>{u(this.items)}}}getOptions(){return{}}onClose(){this.commandService.executeCommand(o.EDITOR_COMMANDS.FOCUS.id)}comparePrefix(E,u){return E.toLowerCase().localeCompare(u.toLowerCase())}};n.__decorate([(0,a.Autowired)(b.QuickOpenHandlerRegistry),n.__metadata("design:type",b.QuickOpenHandlerRegistry)],g.prototype,"handlers",void 0),n.__decorate([(0,a.Autowired)(p.PrefixQuickOpenService),n.__metadata("design:type",Object)],g.prototype,"quickOpenService",void 0),n.__decorate([(0,a.Autowired)(o.CommandService),n.__metadata("design:type",Object)],g.prototype,"commandService",void 0),g=n.__decorate([(0,a.Injectable)()],g),e.HelpQuickOpenHandler=g},43131:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.KaitianQuickOpenControllerOpts=e.MonacoQuickOpenService=void 0;const n=t(85608),a=n.__importDefault(t(14041)),o=n.__importDefault(t(25873)),p=t(76003),b=t(41869),g=t(63373),_=t(68969),E=t(74404),u=t(70238),h=t(52596),c=t(65694),r=t(6399),l=t(98462);let s=class{constructor(){this.preLookFor=""}get inQuickOpenContextKey(){return this.contextKeyService.createKey("inQuickOpen",!1)}appendQuickOpenContainer(){const m=document.querySelector("#ide-overlay");if(!m)throw new Error("ide-overlay is requried");const v=document.createElement("div");v.classList.add("quick-open-overlay"),m.appendChild(v);const y=this.container=document.createElement("quick-open-container");y.style.position="fixed",y.style.top="0px",y.style.right="50%",y.style.zIndex="1000000",v.appendChild(y)}open(m,v){const y=new d(m,this.keybindingRegistry,v);this.progressDispose=this.progressService.registerProgressIndicator(g.VIEW_CONTAINERS.QUICKPICK_PROGRESS),this.hideDecoration(),this.internalOpen(y)}hide(m){this.widget.hide(m),this.progressDispose.dispose()}internalOpen(m){var v;this.opts=m,this.widget.show(this.opts.prefix||"",{placeholder:m.inputAriaLabel,password:m.password,inputEnable:(v=m.enabled)!==null&&v!==void 0?v:!0,valueSelection:m.valueSelection,canSelectMany:m.canSelectMany,keepScrollPosition:m.keepScrollPosition,busy:m.busy,renderTab:m.renderTab,toggleTab:m.toggleTab}),this.inQuickOpenContextKey.set(!0)}updateOptions(m){this.opts.updateOptions(m),this.widget.updateOptions(m)}refresh(){this.onType(this.widget.inputValue.get())}get widget(){return this._widget?this._widget:(this.appendQuickOpenContainer(),this._widget=this.injector.get(l.QuickOpenWidget,[{onOk:()=>{this.previousActiveElement=void 0,this.onClose(!1)},onCancel:()=>{this.previousActiveElement instanceof HTMLElement&&this.previousActiveElement.focus(),this.previousActiveElement=void 0,this.onClose(!0)},onType:m=>this.onType(m||""),onFocusLost:()=>this.opts&&this.opts.ignoreFocusOut!==void 0?(this.opts.ignoreFocusOut===!1&&this.onClose(!0),this.opts.ignoreFocusOut):!1,onHide:()=>{this.inQuickOpenContextKey.set(!1)},onSelect:(m,v)=>{this.opts.onSelect&&this.opts.onSelect(m,v)},onConfirm:m=>{this.opts.onConfirm&&this.opts.onConfirm(m)},onKeyMods:m=>{this.opts.onKeyMods&&this.opts.onKeyMods(m)}}]),this.initWidgetView(this._widget),this._widget)}initWidgetView(m){o.default.createRoot(this.container).render(a.default.createElement(b.ConfigProvider,{value:this.appConfig},a.default.createElement(c.QuickOpenContext.Provider,{value:{widget:m}},a.default.createElement(r.QuickOpenView,null))))}onClose(m){var v,y;(y=(v=this.opts).onClose)===null||y===void 0||y.call(v,m)}async onType(m){const v=this.opts;this.widget&&v.onType&&v.onType(m,y=>(this.preLookFor!==m&&this.opts.onChangeValue(m),this.preLookFor=m,this.widget.setInput(y,v.getAutoFocus(m),v.inputAriaLabel)))}onFocusLost(){return!!this.opts.ignoreFocusOut}showDecoration(m){this.widget.validateType.set(m,void 0)}hideDecoration(){this.widget.validateType.set(void 0,void 0)}};n.__decorate([(0,p.Autowired)(b.KeybindingRegistry),n.__metadata("design:type",Object)],s.prototype,"keybindingRegistry",void 0),n.__decorate([(0,p.Autowired)(u.MonacoContextKeyService),n.__metadata("design:type",u.MonacoContextKeyService)],s.prototype,"monacoContextKeyService",void 0),n.__decorate([(0,p.Autowired)(b.IContextKeyService),n.__metadata("design:type",Object)],s.prototype,"contextKeyService",void 0),n.__decorate([(0,p.Autowired)(p.INJECTOR_TOKEN),n.__metadata("design:type",p.Injector)],s.prototype,"injector",void 0),n.__decorate([(0,p.Autowired)(b.AppConfig),n.__metadata("design:type",Object)],s.prototype,"appConfig",void 0),n.__decorate([(0,p.Autowired)(_.IProgressService),n.__metadata("design:type",Object)],s.prototype,"progressService",void 0),s=n.__decorate([(0,p.Injectable)()],s),e.MonacoQuickOpenService=s;class d{constructor(m,v,y){this.model=m,this.keybindingRegistry=v,this.model=m,this.options=E.QuickOpenOptions.resolve(y)}get prefix(){return this.options.prefix}get inputAriaLabel(){return this.options.placeholder||""}get ignoreFocusOut(){return this.options.ignoreFocusOut}get password(){return this.options.password}get enabled(){return this.options.enabled}get valueSelection(){return this.options.valueSelection}get keepScrollPosition(){return this.options.keepScrollPosition}get busy(){return this.options.busy}get renderTab(){return this.options.renderTab}get toggleTab(){return this.options.toggleTab}get canSelectMany(){return this.options.canPickMany}onClose(m){this.options.onClose(m)}onSelect(m,v){this.options.onSelect(m,v)}onConfirm(m){this.options.onConfirm(m)}onType(m,v){this.model.onType(m,(y,S)=>{const A=this.toOpenModel(m,y,S);v(A)})}onKeyMods(m){this.options.onKeyMods&&this.options.onKeyMods(m)}onChangeValue(m){this.options.onChangeValue&&this.options.onChangeValue(m)}updateOptions(m){this.options=E.QuickOpenOptions.resolve(m,this.options)}compareEntries(m,v,y){const S=m.getHighlights()[0]||[],A=v.getHighlights()[0]||[];if(S.length&&!A.length)return-1;if(!S.length&&A.length)return 1;const T=m.getLabel(),D=v.getLabel();return(0,b.compareAnything)(T,D,y)}toOpenModel(m,v,y){const S=m;this.options.skipPrefix&&(m=m.substring(this.options.skipPrefix).trim()),y&&y.getValidateInput&&(m=y.getValidateInput(m));const A=v.filter(D=>!!this.fuzzyQuickOpenItem(D,m));this.options.fuzzySort&&A.sort((D,w)=>this.compareEntries(D,w,m));const{getPlaceholderItem:T}=this.options;return!A.length&&T&&A.push(T(m,S)),{items:A,actionProvider:y}}fuzzyQuickOpenItem(m,v){const{fuzzyMatchLabel:y,fuzzyMatchDescription:S,fuzzyMatchDetail:A}=this.options,T=y?(0,h.matchesFuzzyIconAware)(v,(0,h.parseLabelWithIcons)(m.getLabel()||""),typeof y=="object"&&y.enableSeparateSubstringMatching):m.getLabelHighlights(),D=this.options.fuzzyMatchDescription?(0,h.matchesFuzzyIconAware)(v,(0,h.parseLabelWithIcons)(m.getDescription()||""),typeof S=="object"&&S.enableSeparateSubstringMatching):m.getDescriptionHighlights(),w=this.options.fuzzyMatchDetail?(0,h.matchesFuzzyIconAware)(v,(0,h.parseLabelWithIcons)(m.getDetail()||""),typeof A=="object"&&A.enableSeparateSubstringMatching):m.getDetailHighlights();if(!(v&&!T&&!D&&(!w||w.length===0)&&!this.options.showItemsWithoutHighlight))return m.setHighlights(T||[],D||[],w||[]),m}getAutoFocus(m){if(this.options.selectIndex){const v=this.options.selectIndex(m);if(v>=0)return{autoFocusIndex:v}}return{autoFocusFirstEntry:!0,autoFocusPrefixMatch:m}}}e.KaitianQuickOpenControllerOpts=d},65694:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.QuickOpenContext=void 0;const a=t(85608).__importDefault(t(14041));e.QuickOpenContext=a.default.createContext({widget:null})},6399:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.QuickOpenView=e.QuickOpenProgress=e.QuickOpenList=e.QuickOpenInput=e.QuickOpenHeader=void 0;const n=t(85608),a=n.__importDefault(t(53373)),o=n.__importDefault(t(14041)),p=t(97267),b=t(41869),g=t(63373),_=t(68969),E=t(68974),u=t(74404),h=t(89647),c=t(28423),r=t(85139),l=t(70716),s=t(52644),d=t(78245),f=t(65694),m=t(50426),v=n.__importDefault(t(91449)),y=O=>{var{button:M}=O,R=n.__rest(O,["button"]);return o.default.createElement(p.Button,Object.assign({},R,{key:M.tooltip,type:"icon",iconClass:M.iconClass,title:M.tooltip}))},S=()=>{const O=(0,b.useInjectable)(m.QuickTitleBar),M=(0,b.useAutorun)(O.title),R=(0,b.useAutorun)(O.isAttached),P=(0,b.useAutorun)(O.step),L=(0,b.useAutorun)(O.totalSteps),N=(0,b.useAutorun)(O.leftButtons),k=(0,b.useAutorun)(O.rightButtons),B=o.default.useMemo(()=>{const j=()=>P&&L?`${P}/${L}`:P?String(P):"";return M&&P?`${M} (${j()})`:M||(P?j():"")},[M,P,L]),F=o.default.useCallback((j,V)=>{j.stopPropagation(),O.fireDidTriggerButton(V)},[O.fireDidTriggerButton]),W=o.default.useMemo(()=>N.length>0||B||k.length>0?o.default.createElement("div",{className:v.default.title_bar},o.default.createElement("div",{className:v.default.title_bar_button},N.map(j=>o.default.createElement(y,{onMouseDown:V=>F(V,j),button:j}))),o.default.createElement("div",null,B),o.default.createElement("div",{className:v.default.title_bar_button},k.map(j=>o.default.createElement(y,{onMouseDown:V=>F(V,j),button:j})))):null,[N,B,k]);return R?W:null};e.QuickOpenHeader=S;const A=()=>{const{widget:O}=o.default.useContext(f.QuickOpenContext),M=(0,b.useAutorun)(O.valueSelection),R=(0,b.useAutorun)(O.items),P=(0,b.useAutorun)(O.selectAll),L=(0,b.useAutorun)(O.validateType),N=(0,b.useAutorun)(O.inputPlaceholder),k=(0,b.useAutorun)(O.inputEnable),B=(0,b.useAutorun)(O.inputValue),F=(0,b.useAutorun)(O.isPassword),W=(0,b.useAutorun)(O.canSelectMany),j=o.default.useRef(null),V=o.default.useCallback(U=>{const $=U.target.value;O.setInputValue($),O.callbacks.onType($)},[O]),K=o.default.useMemo(()=>F?"password":"text",[F]);o.default.useEffect(()=>{setTimeout(()=>{var U;(U=j.current)===null||U===void 0||U.focus()},0)},[R]),o.default.useEffect(()=>{var U;if(B&&M){const[$,Y]=M;(U=j.current)===null||U===void 0||U.setSelectionRange($,Y)}},[M]);const H=o.default.useMemo(()=>{if(!(0,b.isUndefined)(L))return{type:L,message:""}},[L]),z=o.default.useCallback(U=>{const $=U.target.checked;for(const Y of R)(0,c.transaction)(Q=>{Y.checked.set($,Q)})},[R]),G=o.default.useCallback(()=>{O.callbacks.onConfirm(R.filter(U=>U.checked.get())),O.hide(u.HideReason.ELEMENT_SELECTED)},[R]);return o.default.createElement("div",{tabIndex:0,className:v.default.input},W&&o.default.createElement(p.CheckBox,{checked:P,wrapTabIndex:0,onChange:z}),o.default.createElement(p.ValidateInput,{validateMessage:H,ref:j,type:K,"aria-label":N,placeholder:N,value:B,readOnly:!k,onChange:V,id:g.VIEW_CONTAINERS.QUICKPICK_INPUT}),W&&o.default.createElement(p.Button,{className:v.default.input_button,onClick:G},(0,b.localize)("ButtonOK")))};e.QuickOpenInput=A;const T=({data:O,index:M})=>{const{widget:R}=o.default.useContext(f.QuickOpenContext),P=(0,b.useAutorun)(R.actionProvider),L=(0,b.useAutorun)(R.selectIndex),N=(0,b.useAutorun)(R.canSelectMany),k=(0,b.useAutorun)(O.checked),B=(0,b.useInjectable)(d.QuickOpenItemService),F=o.default.useMemo(()=>O.getLabel(),[O]),W=o.default.useMemo(()=>O.getDescription(),[O]),j=o.default.useMemo(()=>O.getDetail(),[O]),V=o.default.useMemo(()=>O.getIconClass(),[O]),K=o.default.useMemo(()=>O.getKeybinding(),[O]),H=o.default.useMemo(()=>O.getGroupLabel(),[O]),z=o.default.useMemo(()=>O.showBorder(),[O]),G=o.default.useMemo(()=>O.getIconPath(),[O]),U=o.default.useMemo(()=>B.getIconClass({iconPath:G,iconClass:V}),[V,G]),$=o.default.useMemo(()=>B.getButtons(O.getButtons()),[O]),[Y,Q,te]=o.default.useMemo(()=>O.getHighlights(),[O]),[se,ae]=o.default.useState(!1),de=o.default.useMemo(()=>{if(P&&P.hasActions(O))return P.getActions(O)},[P,O]),q=o.default.useCallback(J=>{N?((0,c.transaction)(le=>{O.checked.set(!k,le)}),J.stopPropagation()):(J.button===1?O.run(u.QuickOpenMode.OPEN_IN_BACKGROUND):O.run(u.QuickOpenMode.OPEN))&&R.hide(u.HideReason.ELEMENT_SELECTED)},[O,N]),_e=o.default.useCallback(J=>{J.run(O),R.hide(u.HideReason.ELEMENT_SELECTED)},[O]),pe=o.default.useCallback((J,le)=>{J.stopPropagation(),B.fireDidTriggerItemButton(M,le)},[O]);return o.default.createElement("div",{id:g.VIEW_CONTAINERS.QUICKPICK_ITEM,tabIndex:0,className:(0,a.default)({[v.default.item_selected]:L===M,[v.default.item_border]:z},v.default.item),onMouseEnter:()=>ae(!0),onMouseLeave:()=>ae(!1),"aria-label":F},N&&o.default.createElement(p.CheckBox,{wrapTabIndex:0,checked:k,onChange:J=>{(0,c.transaction)(le=>{O.checked.set(J.target.checked,le)})}}),o.default.createElement("div",{tabIndex:0,className:v.default.item_label_container,onMouseDown:q},o.default.createElement("div",{className:v.default.item_label},U&&o.default.createElement("span",{className:(0,a.default)(v.default.item_icon,U)}),o.default.createElement(l.HighlightLabel,{className:v.default.item_label_name,labelClassName:v.default.label_icon_container,labelIconClassName:v.default.item_label_name_icon,hightLightClassName:(0,a.default)(v.default.item_label_highlight),text:F,highlights:Y}),W&&o.default.createElement(l.HighlightLabel,{className:v.default.item_label_description,labelClassName:(0,a.default)(v.default.label_icon_container,v.default.item_label_description_label),labelIconClassName:(0,a.default)(v.default.label_has_icon,v.default.item_label_description_icon),hightLightClassName:(0,a.default)(v.default.item_label_description_highlight),text:W,highlights:Q})),j&&o.default.createElement(l.HighlightLabel,{OutElementType:"div",className:v.default.item_label_detail,labelClassName:(0,a.default)(v.default.label_icon_container,v.default.item_label_description_label),labelIconClassName:(0,a.default)(v.default.label_has_icon,v.default.item_label_detail_icon),hightLightClassName:(0,a.default)(v.default.item_label_description_highlight),text:j,highlights:te})),K&&o.default.createElement(s.KeybindingView,{keybinding:K}),H&&o.default.createElement("span",{title:H,className:v.default.item_group_label},H),de?.map(J=>o.default.createElement("span",{key:J.id,onMouseDown:()=>_e(J),title:J.tooltip||J.label,className:(0,a.default)(v.default.item_action,J.class)})),(se||L===M)&&$?.map(J=>o.default.createElement(y,{onMouseDown:le=>pe(le,J),button:J})))},D=({onReady:O,onScroll:M})=>{const{widget:R}=o.default.useContext(f.QuickOpenContext),P=(0,b.useAutorun)(R.items),L=(0,b.useAutorun)(R.validateType),N=(0,b.useDesignStyles)(v.default.quickopen_list,"quickopen_list"),k=o.default.useCallback(B=>{const F=P[B];return F?.getDetail()?44:22},[P]);return P.length>0?o.default.createElement(p.RecycleList,{onReady:O,onScroll:M,className:(0,a.default)(N,{[v.default.validate_error]:L===p.VALIDATE_TYPE.ERROR,[v.default.validate_warning]:L===p.VALIDATE_TYPE.WARNING}),data:P,template:T,getSize:k,maxHeight:P.length?R.MAX_HEIGHT:0,hiddenHorizontalScrollbar:!0}):null};e.QuickOpenList=D;const w=()=>{const{widget:O}=o.default.useContext(f.QuickOpenContext),M=(0,b.useAutorun)(O.busy),P=(0,b.useInjectable)(_.IProgressService).getIndicator(g.VIEW_CONTAINERS.QUICKPICK_PROGRESS);return o.default.useEffect(()=>{O.updateProgressStatus(!!M)},[M]),o.default.createElement("div",{id:g.VIEW_CONTAINERS.QUICKPICK_PROGRESS,className:v.default.progress_bar},o.default.createElement(E.ProgressBar,{progressModel:P.progressModel}))};e.QuickOpenProgress=w;const I=()=>{var O;const{widget:M}=o.default.useContext(f.QuickOpenContext),R=(0,b.useAutorun)(M.items),P=(0,b.useAutorun)(M.autoFocus),L=(0,b.useAutorun)(M.selectIndex),N=(0,b.useAutorun)(M.keepScrollPosition),k=(0,b.useAutorun)(M.isShow),B=o.default.useRef(),F=o.default.useRef(0),W=o.default.useCallback(({relatedTarget:z,currentTarget:G})=>{if(z===null)return!1;let U=z.parentNode;for(;U!==null;){if(U===G)return!0;U=U.parentNode}return!1},[]),j=o.default.useCallback(z=>{W(z)||M.blur()},[M]),V=o.default.useCallback(z=>{B.current=z},[M]),K=o.default.useCallback(z=>{F.current=z.scrollOffset},[M]);o.default.useEffect(()=>{if(P){if(P.autoFocusPrefixMatch){let z,G;const U=P.autoFocusPrefixMatch,$=U.toLowerCase();for(const Q of R){const te=Q.getLabel()||"";if(!z&&te.indexOf(U)===0?z=Q:!G&&te.toLowerCase().indexOf($)===0&&(G=Q),z&&G)break}const Y=z||G;if(Y){const Q=R.indexOf(Y);M.setSelectIndex(Q);return}}P.autoFocusFirstEntry?M.setSelectIndex(0):typeof P.autoFocusIndex=="number"?R.length>P.autoFocusIndex&&M.setSelectIndex(P.autoFocusIndex):P.autoFocusSecondEntry?R.length>1&&M.setSelectIndex(1):P.autoFocusLastEntry&&R.length>1&&M.setSelectIndex(R.length-1)}},[R,P]),o.default.useEffect(()=>{var z,G;if(N?(z=B.current)===null||z===void 0||z.scrollTo(F.current):(G=B.current)===null||G===void 0||G.scrollToIndex(L,"smart"),R.length===0)return;const U=R[L];U&&(U.run(u.QuickOpenMode.PREVIEW),M.callbacks.onSelect(U,L))},[R,L,N]);const H=o.default.useCallback(z=>{if(h.KEY_CODE_MAP[z.nativeEvent.keyCode]===r.KeyCode.KEY_IN_COMPOSITION)return;const{key:G}=b.KeyCode.createKeyCode(z.nativeEvent);if(!G)return;const U=R.length;switch(G.keyCode){case b.Key.ARROW_UP.keyCode:{z.preventDefault(),z.stopPropagation();const $=L-1;M.setSelectIndex((U+$%U)%U);break}case b.Key.ARROW_DOWN.keyCode:{z.preventDefault(),z.stopPropagation();const $=L+1;M.setSelectIndex($%U);break}case b.Key.ESCAPE.keyCode:{z.preventDefault(),z.stopPropagation(),M.hide(u.HideReason.CANCELED);break}case b.Key.ENTER.keyCode:{z.preventDefault(),z.stopPropagation();const $=R[L];if(!$)return;$.run(u.QuickOpenMode.OPEN)&&M.hide(u.HideReason.ELEMENT_SELECTED);break}case b.Key.TAB.keyCode:{M.toggleTab&&(z.preventDefault(),z.stopPropagation(),M.toggleTab());break}}},[R,M,L]);return k?o.default.createElement("div",{id:g.VIEW_CONTAINERS.QUICKPICK,tabIndex:0,className:v.default.container,onKeyDown:H,onBlur:j},o.default.createElement(e.QuickOpenHeader,null),o.default.createElement(e.QuickOpenInput,null),o.default.createElement(e.QuickOpenProgress,null),(O=M.renderTab)===null||O===void 0?void 0:O.call(M),o.default.createElement(e.QuickOpenList,{onReady:V,onScroll:K})):null};e.QuickOpenView=I},98462:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.QuickOpenWidget=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(63373),b=t(68969),g=t(28423);let _=class{constructor(u){this.callbacks=u,this.MAX_HEIGHT=440,this.inputValue=(0,g.observableValue)(this,""),this.validateType=(0,g.observableValue)(this,void 0),this.isShow=(0,g.observableValue)(this,!1),this.items=(0,g.observableValue)(this,[]),this.actionProvider=(0,g.observableValue)(this,null),this.autoFocus=(0,g.observableValue)(this,null),this.selectAll=(0,g.derived)(this,h=>this.items.read(h).every(c=>c.checked.read(h))),this.isPassword=(0,g.observableValue)(this,!1),this.selectIndex=(0,g.observableValue)(this,0),this.keepScrollPosition=(0,g.observableValue)(this,!1),this.busy=(0,g.observableValue)(this,!1),this.valueSelection=(0,g.observableValue)(this,void 0),this.canSelectMany=(0,g.observableValue)(this,!1),this.inputPlaceholder=(0,g.observableValue)(this,""),this.inputEnable=(0,g.observableValue)(this,!1),this.modifierListeners=new o.DisposableCollection}setSelectIndex(u){(0,g.transaction)(h=>{const c=(0,o.isNumber)(u)?u:0;this.selectIndex.set(c,h)})}setInputValue(u){(0,g.transaction)(h=>{this.inputValue.set(u,h)})}show(u,h){(0,g.transaction)(c=>{this.isShow.set(!0,c),this.inputValue.set(u,c),this.inputPlaceholder.set(h.placeholder,c),this.isPassword.set(!!h.password,c),this.inputEnable.set(h.inputEnable,c),this.valueSelection.set(h.valueSelection,c),this.canSelectMany.set(h.canSelectMany,c),this.keepScrollPosition.set(!!h.keepScrollPosition,c),this.busy.set(!!h.busy,c),this.renderTab=h.renderTab,this.toggleTab=h.toggleTab,this.callbacks.onType(u),this.registerKeyModsListeners()})}hide(u){this.modifierListeners.disposed||this.modifierListeners.dispose(),this.isShow.get()&&((0,g.transaction)(h=>{this.isShow.set(!1,h),this.items.set([],h)}),u===o.HideReason.ELEMENT_SELECTED?this.callbacks.onOk():this.callbacks.onCancel(),this.callbacks.onHide(u))}blur(){if(!this.isShow.get())return;this.callbacks.onFocusLost()||this.hide(o.HideReason.FOCUS_LOST)}setInput(u,h,c){(0,g.transaction)(r=>{this.items.set(u.items,r),this.actionProvider.set(u.actionProvider||null,r),this.autoFocus.set(h,r)})}updateOptions(u){(0,g.transaction)(h=>{"placeholder"in u&&this.inputPlaceholder.set(u.placeholder,h),"password"in u&&this.isPassword.set(!!u.password,h),"inputEnable"in u&&this.inputEnable.set(!!u.inputEnable,h),"valueSelection"in u&&this.valueSelection.set(u.valueSelection,h),"canSelectMany"in u&&this.canSelectMany.set(!!u.canSelectMany,h),"keepScrollPosition"in u&&this.keepScrollPosition.set(!!u.keepScrollPosition,h),"busy"in u&&this.busy.set(!!u.busy,h),"enabled"in u&&this.inputEnable.set(!!u.enabled,h)})}updateProgressStatus(u){u===!0?this.progressService.withProgress({location:p.VIEW_CONTAINERS.QUICKPICK_PROGRESS},()=>new Promise(h=>this.progressResolve=h)):this.progressResolve&&(this.progressResolve(),this.progressResolve=void 0)}registerKeyModsListeners(){const u=h=>{const c={ctrlCmd:h.ctrlKey||h.metaKey,alt:h.altKey};this.callbacks.onKeyMods(c)};this.modifierListeners.push((0,o.addDisposableListener)(window,o.EventType.KEY_DOWN,u,!0)),this.modifierListeners.push((0,o.addDisposableListener)(window,o.EventType.KEY_UP,u,!0)),this.modifierListeners.push((0,o.addDisposableListener)(window,o.EventType.MOUSE_DOWN,u,!0))}};n.__decorate([(0,a.Autowired)(b.IProgressService),n.__metadata("design:type",Object)],_.prototype,"progressService",void 0),_=n.__decorate([(0,a.Injectable)({multiple:!0}),n.__metadata("design:paramtypes",[Object])],_),e.QuickOpenWidget=_},13978:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.QuickPickServiceImpl=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(74404),b=t(43718),g=t(50426);let _=class{constructor(){this.isAlwaysOpen=!1,this.onDidAcceptEmitter=new b.Emitter,this.onDidAccept=this.onDidAcceptEmitter.event,this.onDidChangeActiveItemsEmitter=new b.Emitter,this.onDidChangeActiveItems=this.onDidChangeActiveItemsEmitter.event}async show(u,h){return this.isAlwaysOpen=!!h?.alwaysOpen,new Promise(c=>{const r=this.toItems(u,c);h&&this.quickTitleBar.shouldShowTitleBar(h.title,h.step,h.buttons)&&this.quickTitleBar.attachTitleBar(h.title,h.step,h.totalSteps,h.buttons);const l=h&&h.value?h.value:"";this.quickOpenService.open({onType:(s,d)=>{d(r),this.onDidChangeActiveItemsEmitter.fire(r)}},Object.assign({onClose:()=>{this.quickTitleBar.hide(),c(void 0)},onConfirm:s=>{this.quickTitleBar.hide(),c(s.map(d=>d.getValue()))},fuzzyMatchLabel:!0,fuzzyMatchDescription:!0,prefix:l},h))})}updateOptions(u){this.quickOpenService.updateOptions(u)}hide(u){this.quickOpenService.hide(u)}toItems(u,h){const c=[];for(const r of u){const l=this.toItemOptions(r,h);c.push(new p.QuickOpenItem(l))}return c}toItemOptions(u,h){let c=typeof u=="string"?u:u.label,r=typeof u=="string"?void 0:u.iconClass;const l=typeof u=="string"?u:u.value,s=typeof u=="string"?void 0:u.description,d=typeof u=="string"?void 0:u.detail,f=typeof u=="string"?void 0:u.groupLabel,m=typeof u=="string"?void 0:u.showBorder,v=typeof u=="string"?void 0:u.buttons,y=typeof u=="string"?void 0:u.iconPath,[S,A]=(0,o.getIconClass)(c);return S&&(r=(0,o.getIcon)(S)||(0,o.getExternalIcon)(S),c=` ${A}`),{label:c,description:s,detail:d,iconClass:r,groupLabel:f,showBorder:m,buttons:v,iconPath:y,run:T=>T!==p.Mode.OPEN?!1:(h(l),this.fireOnDidAccept(),!this.isAlwaysOpen),value:l}}fireOnDidAccept(){this.onDidAcceptEmitter.fire(void 0)}};n.__decorate([(0,a.Autowired)(g.QuickTitleBar),n.__metadata("design:type",g.QuickTitleBar)],_.prototype,"quickTitleBar",void 0),n.__decorate([(0,a.Autowired)(p.QuickOpenService),n.__metadata("design:type",Object)],_.prototype,"quickOpenService",void 0),_=n.__decorate([(0,a.Injectable)()],_),e.QuickPickServiceImpl=_},50426:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.QuickTitleBar=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(74404),b=t(40827),g=t(43718),_=t(28423),E=t(52416);t(50279);const u=t(89802);let h=class{constructor(){this.onDidTriggerButtonEmitter=new g.Emitter,this.isAttached=(0,_.observableValue)(this,!1),this.title=(0,_.observableValue)(this,void 0),this.step=(0,_.observableValue)(this,void 0),this.totalSteps=(0,_.observableValue)(this,void 0),this.buttons=(0,_.observableValue)(this,[]),this.leftButtons=(0,_.derived)(this,r=>this.buttons.read(r).filter(l=>l.side===p.QuickTitleButtonSide.LEFT)),this.rightButtons=(0,_.derived)(this,r=>this.buttons.read(r).filter(l=>l.side===p.QuickTitleButtonSide.RIGHT||typeof l.side>"u"))}get onDidTriggerButton(){return this.onDidTriggerButtonEmitter.event}fireDidTriggerButton(r){this.onDidTriggerButtonEmitter.fire(r)}attachTitleBar(r,l,s,d){(0,_.transaction)(f=>{this.title.set(r,f),this.step.set(l,f),this.totalSteps.set(s,f),d&&this.buttons.set(d.map((m,v)=>{if(g.ThemeIcon.isThemeIcon(m.iconPath))return Object.assign(Object.assign({},m),{iconClass:(0,o.getExternalIcon)(m.iconPath.id),handle:v});const y=(0,u.iconPath2URI)(m.iconPath,this.themeService.getCurrentThemeSync().type),S=y&&this.staticResourceService.resolveStaticResource(y).toString(),A=S&&this.iconService.fromIcon("",S,E.IconType.Background);return Object.assign(Object.assign({},m),{iconClass:A,handler:v})}),f),this.isAttached.set(!0,f)})}hide(){(0,_.transaction)(r=>{this.title.set(void 0,r),this.buttons.set([],r),this.step.set(void 0,r),this.totalSteps.set(void 0,r),this.isAttached.set(!1,r)})}shouldShowTitleBar(r,l,s){return!(0,g.isUndefined)(r)||!(0,g.isUndefined)(l)||!(0,g.isUndefined)(s)&&!!s.length}};n.__decorate([(0,a.Autowired)(E.IThemeService),n.__metadata("design:type",Object)],h.prototype,"themeService",void 0),n.__decorate([(0,a.Autowired)(),n.__metadata("design:type",b.StaticResourceService)],h.prototype,"staticResourceService",void 0),n.__decorate([(0,a.Autowired)(E.IIconService),n.__metadata("design:type",Object)],h.prototype,"iconService",void 0),h=n.__decorate([(0,a.Injectable)()],h),e.QuickTitleBar=h},44854:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.InputBoxImpl=void 0;const n=t(85608),a=t(76003),o=t(81878),p=t(74404),b=t(43718),g=t(50426);let _=class{constructor(u){this._options=u,this.onDidAcceptEmitter=new b.Emitter,this.onDidChangeValueEmitter=new b.Emitter,this.onDidTriggerButtonEmitter=new b.Emitter,this.onDidHideEmitter=new b.Emitter}shouldUpdate(u,h){return h.value!==u.value||h.prompt!==u.prompt||h.placeHolder!==u.placeHolder||h.password!==u.password||h.ignoreFocusOut!==u.ignoreFocusOut||h.enabled!==u.enabled||h.valueSelection!==u.valueSelection||h.title!==u.title||h.step!==u.step||h.totalSteps!==u.totalSteps||h.buttons!==u.buttons||h.validationMessage!==u.validationMessage||h.validationType!==u.validationType||h.busy!==u.busy}updateOptions(u,h=!1){if(!u)return;const c=Object.assign({},this._options);this._options=Object.assign(Object.assign({},this._options),u),!h&&this.shouldUpdate(u,c)&&(this.quickOpenService.updateOptions(u),this.refresh())}refresh(){this.quickOpenService.refresh()}get options(){return this._options}set options(u){this._options=u}open(){let u="",h=!1;this.quickTitleBar.onDidTriggerButton(c=>{this.onDidTriggerButtonEmitter.fire(c.handler)}),this.quickOpenService.open({onType:async(c,r)=>{var l;if(u!==c){if(u=c,this.getDerivedOptionsFromValue){const v=await this.getDerivedOptionsFromValue(c);this.updateOptions(v,!0)}this.onDidChangeValueEmitter.fire(c),h=!0}let s=this.options.prompt;const d=(0,b.localize)("quickopen.quickinput.prompt");this.options&&this.quickTitleBar.shouldShowTitleBar(this.options.title,this.options.step,this.options.buttons)&&this.quickTitleBar.attachTitleBar(this.options.title,this.options.step,this.options.totalSteps,this.options.buttons);const f=this.options.validationMessage;f?this.quickOpenService.showDecoration((l=this.options.validationType)!==null&&l!==void 0?l:o.VALIDATE_TYPE.ERROR):this.quickOpenService.hideDecoration(),s=f||s;const m={run:v=>h&&!f&&v===p.Mode.OPEN&&(this.onDidAcceptEmitter.fire(c),this.options.hideOnDidAccept)?(this.quickTitleBar.hide(),!0):!1};s?(m.label=s,m.detail=d):m.label=d,r([new p.QuickOpenItem(m)])}},{prefix:this.options.value,placeholder:this.options.placeHolder,password:this.options.password,ignoreFocusOut:this.options.ignoreFocusOut,enabled:this.options.enabled,valueSelection:this.options.valueSelection,busy:this.options.busy,onClose:c=>{c&&this.onDidHideEmitter.fire(),this.quickTitleBar.hide()}})}dispose(){this.onDidAcceptEmitter.dispose(),this.onDidChangeValueEmitter.dispose(),this.onDidHideEmitter.dispose(),this.onDidTriggerButtonEmitter.dispose()}hide(){this.quickOpenService.hideDecoration(),this.quickOpenService.hide()}get onDidAccept(){return this.onDidAcceptEmitter.event}get onDidChangeValue(){return this.onDidChangeValueEmitter.event}get onDidTriggerButton(){return this.onDidTriggerButtonEmitter.event}get onDidHide(){return this.onDidHideEmitter.event}};n.__decorate([(0,a.Autowired)(p.QuickOpenService),n.__metadata("design:type",Object)],_.prototype,"quickOpenService",void 0),n.__decorate([(0,a.Autowired)(g.QuickTitleBar),n.__metadata("design:type",g.QuickTitleBar)],_.prototype,"quickTitleBar",void 0),_=n.__decorate([(0,a.Injectable)({multiple:!0}),n.__metadata("design:paramtypes",[Object])],_),e.InputBoxImpl=_},89802:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.iconPath2URI=void 0;const n=t(43718);function a(o,p){if(n.URI.isUri(o))return"codeUri"in o?o:new n.URI(o.toString());if((o?.dark||o?.light)&&p)return p==="dark"?new n.URI(o.dark.toString()):new n.URI(o.light.toString())}e.iconPath2URI=a},74435:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});const n=t(85608);n.__exportStar(t(74404),e),n.__exportStar(t(11143),e)},97821:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(85608).__exportStar(t(74435),e)},57492:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMProviderList=void 0;const n=t(85608),a=n.__importDefault(t(53373)),o=n.__importStar(t(14041)),p=t(97267),b=t(41869),g=t(93899),_=t(40293),E=t(92237),u=t(36367),h=n.__importDefault(t(38201)),c=l=>{var{repository:s,selected:d}=l,f=n.__rest(l,["repository","selected"]);const{provider:m}=s,{title:v,type:y}=(0,u.getSCMRepositoryDesc)(s),S=(0,b.useInjectable)(_.IStatusBarService),A=(m.statusBarCommands||[]).map((T,D)=>S.getElementConfig(`scm.repo.${D}`,{text:T.title,command:T.id,arguments:T.arguments,tooltip:T.tooltip,iconset:"octicon"}));return o.default.createElement("div",Object.assign({className:(0,a.default)(h.default.provider,{[h.default.selected]:d})},f),o.default.createElement("div",{className:h.default.info},o.default.createElement("div",{className:h.default.title},v,"\xA0"),o.default.createElement("div",{className:h.default.type},y,"\xA0"),m.count&&m.count>0?o.default.createElement(p.Badge,null,m.count):null),o.default.createElement("div",{className:h.default.toolbar},A.map(T=>o.default.createElement(E.StatusBarItem,Object.assign({key:T.id,entryId:T.id,className:h.default.status},T)))))},r=({repositoryList:l,selectedRepository:s})=>{if(!s)return null;const d=(0,b.useInjectable)(g.ICtxMenuRenderer),f=(0,b.useInjectable)(g.AbstractContextMenuService),m=(0,o.useCallback)(y=>{y.setSelected(!0),y.focus()},[]),v=(0,o.useCallback)((y,S)=>{S.preventDefault(),S.stopPropagation();const{x:A,y:T}=S.nativeEvent,D=f.createMenu({id:g.MenuId.SCMSourceControl}),w=D.getMergedMenuNodes();D.dispose(),d.show({anchor:{x:A,y:T},menuNodes:w,args:[y.provider.toJSON()]})},[]);return o.default.createElement("div",{className:h.default.scmSelect},l.map(y=>o.default.createElement(c,{key:y.provider.id,selected:y.provider.id===s.provider.id,onClick:m.bind(null,y),onContextMenu:v.bind(null,y),repository:y})))};e.SCMProviderList=r,e.SCMProviderList.displayName="SCMProviderList"},37751:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMResourceInput=e.convertValidationType=void 0;const n=t(85608),a=n.__importStar(t(14041)),o=t(41869),p=t(25918),b=t(40525),g=t(43718),_=t(5567),E=t(52416),u=t(64964),h=n.__importDefault(t(87906));function c(s){return["info","warning","error"][s]}e.convertValidationType=c;function r(s){return o.strings.format(s.input.placeholder,o.isMacintosh?"\u2318Enter":"Ctrl+Enter")}const l=({repository:s,menus:d})=>{const f=(0,o.useInjectable)(g.CommandService),m=(0,o.useInjectable)(E.IIconService),v=(0,o.useDesignStyles)(h.default.scmMenu,"scmMenu"),[y,S]=(0,a.useState)(""),[A,T]=(0,a.useState)(""),[D,w]=(0,a.useState)(!0),[I,O]=(0,a.useState)({}),M=(0,a.useCallback)(B=>{s.input.value=B},[s]),R=(0,a.useCallback)(B=>{const{addonAfter:F,addonBefore:W}=B,j=F,V=W;O(Object.assign(Object.assign(Object.assign({},B),F?{addonAfter:(0,g.isFunction)(j)?a.default.createElement(j,null):F}:{}),W?{addonBefore:(0,g.isFunction)(V)?a.default.createElement(V,null):W}:{}))},[s.input.props]);(0,a.useEffect)(()=>{s.input.props&&R(s.input.props)},[s.input.props]),(0,a.useEffect)(()=>{const B=new o.DisposableStore;return B.add(s.input.onDidChangeProps(F=>{R(F)})),B.add(s.input.onDidChange(F=>{S(F)})),B.add(s.input.onDidChangePlaceholder(()=>{T(r(s))})),B.add(s.input.onDidChangeEnablement(F=>{w(F)})),T(r(s)),()=>{B.dispose()}},[s]);const P=(0,a.useCallback)(()=>{if(!s||!s.provider.acceptInputCommand)return;const{id:B,arguments:F=[]}=s.provider.acceptInputCommand;B&&f.executeCommand(B,...F)},[s]),{onKeyDown:L,onKeyUp:N}=(0,b.useHotKey)([o.isMacintosh?"command":"ctrl","enter"],P),k=s&&s.provider&&d;return a.default.createElement(a.default.Fragment,null,a.default.createElement("div",{className:h.default.scmHeader},a.default.createElement(_.AutoFocusedInput,Object.assign({containerId:u.scmContainerId,className:h.default.scmInput,placeholder:A,value:y,disabled:!D,onKeyDown:B=>L(B.keyCode),onKeyUp:N,onValueChange:M},I))),k&&a.default.createElement(p.InlineMenuBar,{className:v,context:[s.provider,y],type:"button",moreIcon:"down",iconService:m,regroup:(B,F)=>[[B[0]].filter(Boolean),[...B.slice(1),...F]],menus:d}))};e.SCMResourceInput=l,e.SCMResourceInput.displayName="SCMResourceInput"},24748:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMResourceTree=e.TREE_FIELD_NAME=void 0;const n=t(85608),a=n.__importDefault(t(53373)),o=n.__importStar(t(14041)),p=t(97267),b=t(41869),g=t(48560),_=t(49914),E=n.__importDefault(t(91873)),u=t(11579),h=t(74568),c=t(63451);e.TREE_FIELD_NAME="SCM_TREE_TREE_FIELD",e.SCMResourceTree=(0,o.memo)(({height:s})=>{const[d,f]=(0,o.useState)(!1),[m,v]=(0,o.useState)(),y=(0,o.useRef)(!1),S=(0,o.useRef)(null),A=(0,g.useInjectable)(u.SCMTreeModelService),T=(0,g.useInjectable)(_.ViewModelContext),[D,w]=(0,o.useState)(T.alwaysShowActions),I=(0,o.useCallback)(async()=>{A.init(),await A.whenReady,A.treeModel&&await A.treeModel.ensureReady,!y.current&&f(!0)},[d,A]);(0,o.useEffect)(()=>{const B=T.onAlwaysShowActionsChange(F=>{w(F)});return I(),()=>{y.current=!0,B.dispose()}},[]),(0,o.useEffect)(()=>{let B;return d&&(v(A.treeModel),B=A.onDidTreeModelChange(async F=>{F&&await F.ensureReady,v(F)})),()=>{B?.dispose()}},[d]),(0,o.useEffect)(()=>{var B;const F=()=>{A.handleTreeBlur()};return(B=S.current)===null||B===void 0||B.addEventListener("blur",F,!0),()=>{var W;(W=S.current)===null||W===void 0||W.removeEventListener("blur",F,!0),A.handleTreeBlur()}},[S.current]);const O=(0,o.useCallback)(B=>{A.handleTreeHandler(Object.assign(Object.assign({},B),{getModel:()=>A.treeModel,hasDirectFocus:()=>S.current===document.activeElement}))},[]),M=(0,o.useCallback)(B=>R(B)?!1:B.shiftKey,[]),R=(0,o.useCallback)(B=>{const{metaKey:F,ctrlKey:W}=B;return b.isOSX&&F||W},[]),P=(0,o.useCallback)((B,F,W)=>{if(B.stopPropagation(),!F)return;const j=M(B),V=R(B);j?A.handleItemRangeClick(F,W):V?A.handleItemToggleClick(F,W):A.handleItemClick(F,W)},[]),L=(0,o.useCallback)((B,F)=>{B.stopPropagation(),A.toggleDirectory(F)},[]),N=(0,o.useCallback)((B,F,W)=>{B.stopPropagation(),F&&A.handleItemDoubleClick(F,W)},[]),k=(0,o.useCallback)((B,F,W)=>{B.preventDefault(),A.handleContextMenu(B,F,W)},[]);return o.default.createElement("div",{className:(0,a.default)(E.default.scm_tree_container,{"scm-show-actions":D}),tabIndex:-1,ref:S,"data-name":e.TREE_FIELD_NAME},o.default.createElement(l,{isReady:d,model:m,height:s,onTreeReady:O,onItemClick:P,onItemDoubleClick:N,onTwistierClick:L,onContextMenu:k}))}),e.SCMResourceTree.displayName="SCMResourceTree";function r(s,d){return s.isReady===d.isReady&&s.model===d.model&&s.height===d.height}const l=(0,o.memo)(({isReady:s,model:d,height:f,onTreeReady:m,onItemClick:v,onItemDoubleClick:y,onTwistierClick:S,onContextMenu:A})=>{const T=(0,g.useInjectable)(u.SCMTreeModelService),D=(0,b.useAutorun)(T.iconThemeDesc),w=(0,g.useInjectable)(c.SCMTreeService),I=(0,o.useCallback)(O=>o.default.createElement(h.SCMTreeNode,{item:O.item,itemType:O.itemType,decorationService:T.decorationService,labelService:T.labelService,commandService:T.commandService,decorations:T.decorations.getDecorations(O.item),onClick:v,onDoubleClick:y,onTwistierClick:S,onContextMenu:A,defaultLeftPadding:w.isTreeMode?-4:4,leftPadding:w.isTreeMode?8:0,iconTheme:D}),[d,w,T,D]);return s&&d?o.default.createElement(p.RecycleTree,{height:f,itemHeight:h.SCM_TREE_NODE_HEIGHT,onReady:m,model:d,overScanCount:100},I):o.default.createElement("span",{className:E.default.scm_tree_empty_text})},r);l.displayName="SCMResourceTreeView"},38563:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMTreeAPI=e.collectSCMResourceDesc=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(43718),b=t(64964),g=t(49914),_=t(36367),{Path:E}=p.path;function u(c,r){c.type==="file"&&r.push(c.resource);for(const l of c.children)u(l,r);return r}e.collectSCMResourceDesc=u;let h=class extends p.Disposable{constructor(){super(),this.shouldCompactFolders=!1,this.shouldCompactFolders=this.preferenceService.get("scm.listView.compactFolders",!1),this.addDispose(this.preferenceService.onSpecificPreferenceChange("scm.listView.compactFolders",r=>{this.shouldCompactFolders=r.newValue}))}getSCMResource(r){const l=this.getSCMResourceGroups(),s=r.toString();for(const d of l)for(const f of d.elements)if(f.sourceUri.toString()===s)return f}getSCMResourceGroups(){return this.viewModel.scmList.filter(_.isSCMResourceGroup)}get providerId(){var r;return(r=this.viewModel.selectedRepo)===null||r===void 0?void 0:r.provider.id}init(r=b.SCMViewModelMode.Tree){return this.getSCMResourceGroups().map(s=>({id:this.providerId+"_"+s.id,name:s.id,children:r===b.SCMViewModelMode.Tree?this.pathToTree(s.elements):this.pathToList(s.elements),resource:s,type:"group"}))}pathToList(r){return r.map(l=>{const s=this._getPathDesc(l);return{id:`${this.providerId}_${l.resourceGroup.id}_${s}`,name:s,pathname:s,children:[],resource:l,type:"file"}})}pathToTree(r){const l=[],s=Symbol("result"),d=this._initPlainCounterObject(s,l);return r.forEach(f=>{this._getPathDesc(f).split(E.separator).filter(Boolean).reduce((v,y,S,A)=>{if(!v[y]){v[y]=this._initPlainCounterObject(s,[]);const T=A.slice(0,S+1).join(E.separator),D=S===A.length-1?"file":"folder",w={id:`${this.providerId}_${f.resourceGroup.id}_${T}`,name:y,pathname:T,children:v[y][s],resource:D==="file"?f:Object.assign(Object.assign({},f),{sourceUri:o.URI.from(f.sourceUri).parent.codeUri}),type:D};v[s].push(w)}return v[y]},d)}),this.shouldCompactFolders&&this.walkTreeToFold(l),l}_initPlainCounterObject(r,l){const s=Object.create(null);return s[r]=l,s}walkTreeToFold(r){const l=[...r];for(;l.length;){const s=l.pop();s&&(this.foldOnlyChild(s),l.push(...s.children))}}foldOnlyChild(r){for(;r.children.length===1&&r.children[0].children.length;){const l=r.children[0];r.name=`${r.name}${E.separator}${l.name}`,r.pathname=l.pathname,r.children=l.children,r.id=l.id,r.isCompact=!0}}_getPathDesc(r){return p.path.relative(r.resourceGroup.provider.rootUri.path,r.sourceUri.path)}};n.__decorate([(0,a.Autowired)(g.ViewModelContext),n.__metadata("design:type",g.ViewModelContext)],h.prototype,"viewModel",void 0),n.__decorate([(0,a.Autowired)(o.PreferenceService),n.__metadata("design:type",Object)],h.prototype,"preferenceService",void 0),h=n.__decorate([(0,a.Injectable)(),n.__metadata("design:paramtypes",[])],h),e.SCMTreeAPI=h},36556:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMTreeDecorationService=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(41893),b=t(52416);let g=class{constructor(){this.disposeCollection=new o.DisposableStore,this.onDidChangeEmitter=this.disposeCollection.add(new o.Emitter),this.disposeCollection.addAll([this.decorationsService.onDidChangeDecorations(()=>{this.onDidChangeEmitter.fire()}),this.themeService.onThemeChange(()=>{this.onDidChangeEmitter.fire()})])}get onDidChange(){return this.onDidChangeEmitter.event}getDecoration(E,u=!1){E instanceof o.URI&&(E=o.Uri.parse(E.toString()));const h=this.decorationsService.getDecoration(E,u);return h?Object.assign(Object.assign({},h),{color:this.themeService.getColor({id:h.color})}):{color:"",tooltip:"",badge:""}}dispose(){this.disposeCollection.dispose()}};n.__decorate([(0,a.Autowired)(p.IDecorationsService),n.__metadata("design:type",p.IDecorationsService)],g.prototype,"decorationsService",void 0),n.__decorate([(0,a.Autowired)(b.IThemeService),n.__metadata("design:type",Object)],g.prototype,"themeService",void 0),g=n.__decorate([(0,a.Injectable)(),n.__metadata("design:paramtypes",[])],g),e.SCMTreeDecorationService=g},12466:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMTreeModel=void 0;const n=t(85608),a=t(76003),o=t(97267),p=t(36556);let b=class extends o.TreeModel{constructor(_){super(),this.init(_)}init(_){this.root=_,this.root.watcher.on(o.TreeNodeEvent.BranchDidUpdate,()=>{this.dispatchChange()}),this.decorationService.onDidChange(this.dispatchChange)}};n.__decorate([(0,a.Autowired)(p.SCMTreeDecorationService),n.__metadata("design:type",p.SCMTreeDecorationService)],b.prototype,"decorationService",void 0),b=n.__decorate([(0,a.Injectable)({multiple:!0}),n.__param(0,(0,a.Optional)()),n.__metadata("design:paramtypes",[Object])],b),e.SCMTreeModel=b},11579:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMTreeModelService=e.SCMTreeTypes=void 0;const n=t(85608),a=t(76003),o=t(97267),p=t(41869),b=t(77661),g=t(68969),_=t(26542),E=t(54414),u=t(28423),h=t(52416),c=t(51500),r=t(64964),l=t(49914),s=t(36556),d=t(12466),f=t(28087),m=n.__importDefault(t(87440)),v=t(63451);var y;(function(T){T[T.List=1]="List",T[T.Tree=2]="Tree"})(y=e.SCMTreeTypes||(e.SCMTreeTypes={}));const S={hasFolderIcons:!0,hasFileIcons:!0,hidesExplorerArrows:!0};let A=class{constructor(){this._selectedFiles=[],this.disposableCollection=new p.DisposableStore,this.onDidRefreshedEmitter=this.disposableCollection.add(new p.Emitter),this.onDidTreeModelChangeEmitter=this.disposableCollection.add(new p.Emitter),this.treeModelCache=new Map,this.iconThemeDesc=(0,u.observableValue)(this,S),this.clearFileSelectedDecoration=()=>{this._selectedFiles.forEach(D=>{this.selectedDecoration.removeTarget(D)}),this._selectedFiles=[]},this.activeFileDecoration=D=>{if(this.contextMenuFile&&(this.contextMenuDecoration.removeTarget(this.contextMenuFile),this._contextMenuFile=void 0),D){if(this.selectedFiles.length>0)for(const w of this.selectedFiles)this.selectedDecoration.removeTarget(w);this.focusedFile&&this.focusedDecoration.removeTarget(this.focusedFile),this.selectedDecoration.addTarget(D),this.focusedDecoration.addTarget(D),this._focusedFile=D,this._selectedFiles=[D],this.treeModel.dispatchChange()}},this.selectFileDecoration=D=>{this.contextMenuFile&&(this.contextMenuDecoration.removeTarget(this.contextMenuFile),this._contextMenuFile=void 0),D&&(this.selectedFiles.length>0&&this.selectedFiles.forEach(w=>{this.selectedDecoration.removeTarget(w)}),this.focusedFile&&this.focusedDecoration.removeTarget(this.focusedFile),this.selectedDecoration.addTarget(D),this._selectedFiles=[D],this.treeModel.dispatchChange())},this.activeFileFocusedDecoration=(D,w=!1)=>{D!==this.treeModel.root&&(this.focusedFile!==D&&(w?(this.focusedFile&&this.focusedDecoration.removeTarget(this.focusedFile),this._contextMenuFile=D):this.focusedFile&&(this._contextMenuFile=void 0,this.focusedDecoration.removeTarget(this.focusedFile)),D&&(this._selectedFiles.indexOf(D)<0&&(this.selectedDecoration.addTarget(D),this._selectedFiles.push(D)),this.focusedDecoration.addTarget(D),this._focusedFile=D)),this.treeModel.dispatchChange())},this.activeFileSelectedDecoration=D=>{this._selectedFiles.indexOf(D)>-1||(this._selectedFiles.push(D),this.selectedDecoration.addTarget(D),this.treeModel.dispatchChange())},this.toggleFileSelectedDecoration=D=>{const w=this._selectedFiles.indexOf(D);w>-1?(this.focusedFile===D&&(this._focusedDecoration.removeTarget(this.focusedFile),this._focusedFile=void 0),this._selectedFiles.splice(w,1),this.selectedDecoration.removeTarget(D)):(this._selectedFiles.push(D),this.selectedDecoration.addTarget(D),this.focusedFile&&this._focusedDecoration.removeTarget(this.focusedFile),this._focusedFile=D,this.focusedDecoration.addTarget(D)),this.treeModel.dispatchChange()},this.enactiveFileDecoration=()=>{var D;this.focusedFile&&(this.focusedDecoration.removeTarget(this.focusedFile),this._focusedFile=void 0),this.contextMenuFile&&this.contextMenuDecoration.removeTarget(this.contextMenuFile),(D=this.treeModel)===null||D===void 0||D.dispatchChange()},this.activeFileActivedDecoration=D=>{this.contextMenuFile&&this.contextMenuDecoration.removeTarget(this.contextMenuFile),this.focusedFile&&(this.focusedDecoration.removeTarget(this.focusedFile),this._focusedFile=void 0),this.contextMenuDecoration.addTarget(D),this._contextMenuFile=D,this.treeModel.dispatchChange()},this.handleTreeBlur=()=>{this.enactiveFileDecoration()},this._isMutiSelected=!1,this.handleItemRangeClick=(D,w)=>{if(!this.focusedFile)this.handleItemClick(D,w);else if(this.focusedFile&&this.focusedFile!==D){this._isMutiSelected=!0;const I=this.treeModel.root.getIndexAtTreeNode(D),O=this.treeModel.root.getIndexAtTreeNode(this.focusedFile);O>I?this.activeFileDecorationByRange(I,O,I):O<I&&this.activeFileDecorationByRange(O,I,I)}},this.handleItemToggleClick=(D,w)=>{this._isMutiSelected=!0,!(w!==o.TreeNodeType.CompositeTreeNode&&w!==o.TreeNodeType.TreeNode)&&this.toggleFileSelectedDecoration(D)},this.handleContextMenu=(D,w,I)=>{const{x:O,y:M}=D.nativeEvent;if(!w)return;const R=f.SCMResourceGroup.is(w)?w.resource:w.resource.resourceGroup,P=this.viewModel.menus.getRepositoryMenus(R.provider);if(!P)return;w?this.activeFileActivedDecoration(w):this.enactiveFileDecoration();let L;if(f.SCMResourceFolder.is(w)?L=w.arguments:L=this._isMutiSelected?this._getSelectedFiles().map(N=>N.resource.toJSON()):[w.resource.toJSON()],I===o.TreeNodeType.TreeNode){const N=w.resource;this.ctxMenuRenderer.show({anchor:{x:O,y:M},menuNodes:P.getResourceMenu(N).getGroupedMenuNodes()[1],args:L})}else f.SCMResourceGroup.is(w)?this.ctxMenuRenderer.show({anchor:{x:O,y:M},menuNodes:P.getResourceGroupMenu(R).getGroupedMenuNodes()[1],args:L}):this.ctxMenuRenderer.show({anchor:{x:O,y:M},menuNodes:P.getResourceFolderMenu(R).getGroupedMenuNodes()[1],args:L})},this.activeFileDecorationByRange=(D,w,I)=>{this.clearFileSelectedDecoration();for(const O of this.focusedDecoration.appliedTargets.keys())this.focusedDecoration.removeTarget(O);for(;D<=w;D++){const O=this.treeModel.root.getTreeNodeAtIndex(D);O&&(D===I?this.focusedDecoration.addTarget(O):this.focusedDecoration.hasTarget(O)&&this.focusedDecoration.removeTarget(O),this._selectedFiles.push(O),this.selectedDecoration.addTarget(O))}this.treeModel.dispatchChange()},this.handleItemDoubleClick=(D,w)=>{if(this.listOpenMode==="doubleClick"&&(w===o.TreeNodeType.TreeNode?this.openFile(D):this.toggleDirectory(D)),w===o.TreeNodeType.TreeNode){const{currentEditorGroup:I,currentEditor:O}=this.workbenchEditorService;I&&O&&O.currentUri&&p.URI.from(D.resource.sourceUri).isEqual(O.currentUri)&&I.pin(O.currentUri)}},this.handleItemClick=(D,w)=>{this._isMutiSelected=!1,this.activeFileDecoration(D),this.listOpenMode==="singleClick"&&(w===o.TreeNodeType.TreeNode?this.openFile(D):this.toggleDirectory(D))},this.openFile=D=>{var w,I;const O=D,M=(w=O.resource.command)===null||w===void 0?void 0:w.id;M===p.EDITOR_COMMANDS.API_OPEN_EDITOR_COMMAND_ID||M===p.EDITOR_COMMANDS.API_OPEN_DIFF_EDITOR_COMMAND_ID?this.commandService.executeCommand(M,...((I=O.resource.command)===null||I===void 0?void 0:I.arguments)||[]).catch(R=>this.logger.error("Failed to execute command:",R,M)):D.resource.open(!0)},this.toggleDirectory=D=>{D.expanded?this.scmTreeHandle.collapseNode(D):this.scmTreeHandle.expandNode(D)}}init(){this.showProgress(this._whenReady=this.initTreeModel(this.scmTreeService.isTreeMode)),this._whenReady.then(()=>{this.disposableCollection.add(this.scmTreeService.onDidTreeModeChange(w=>{this.showProgress(this._whenReady=this.initTreeModel(w))}))}),this.disposableCollection.add(this.viewModel.onDidSelectedRepoChange(w=>{var I;this._whenReady=this.initTreeModel(this.scmTreeService.isTreeMode,(I=w.provider.rootUri)===null||I===void 0?void 0:I.toString())}));const D=p.Event.any(p.Event.map(this.labelService.onDidChange,()=>{}),this.viewModel.onDidSCMListChange,p.Event.map(p.Event.filter(this.preferenceService.onPreferenceChanged,w=>w.preferenceName==="scm.listView.compactFolders"&&this.scmTreeService.isTreeMode),()=>{}));this.disposableCollection.add(D(()=>{this.refresh()})),this.setIconThemeDesc(this.iconService.currentTheme||S),this.disposableCollection.add(this.iconService.onThemeChange(w=>{this.setIconThemeDesc(w)}))}setIconThemeDesc(D){(0,u.transaction)(w=>{this.iconThemeDesc.set({hasFolderIcons:!!D.hasFolderIcons,hasFileIcons:!!D.hasFileIcons,hidesExplorerArrows:!!D.hidesExplorerArrows},w)})}showProgress(D){this.progressService.withProgress({location:r.scmResourceViewId},()=>D)}get scmTreeHandle(){return this._scmTreeHandle}get contextMenuFile(){return this._contextMenuFile}get selectedDecoration(){return this._selectedDecoration}get focusedDecoration(){return this._focusedDecoration}get contextMenuDecoration(){return this._contextMenuDecoration}get decorations(){return this._activeDecorations}get treeModel(){return this._activeTreeModel}get whenReady(){return this._whenReady}get focusedFile(){return this._focusedFile}get selectedFiles(){return this._selectedFiles}get onDidRefreshed(){return this.onDidRefreshedEmitter.event}get onDidTreeModelChange(){return this.onDidTreeModelChangeEmitter.event}async collapseAll(){await this.treeModel.root.collapsedAll()}async getCacheKey(D=y.List,w){var I;return w||(w=(I=(await this.workspaceService.roots)[0])===null||I===void 0?void 0:I.uri),`${w}_git_${D===y.List?"list":"tree"}`}async initTreeModel(D,w){this.treeModelDisposableCollection&&this.treeModelDisposableCollection.dispose();const I=D?y.Tree:y.List,O=await this.getCacheKey(I,w);if(this.treeModelCache.has(O)){const{treeModel:M,decorations:R,selectedDecoration:P,focusedDecoration:L,contextMenuDecoration:N}=this.treeModelCache.get(O);this._activeTreeModel=M,this._activeDecorations=R,this._selectedDecoration=P,this._focusedDecoration=L,this._contextMenuDecoration=N,await this.refresh()}else{const M=(await this.scmTreeService.resolveChildren())[0];if(!M)return;this._activeTreeModel=this.injector.get(d.SCMTreeModel,[M]),this._activeDecorations=this.initDecorations(M),this.disposableCollection.add(this._activeDecorations),this.treeModelCache.set(O,{treeModel:this._activeTreeModel,decorations:this._activeDecorations,selectedDecoration:this._selectedDecoration,focusedDecoration:this._focusedDecoration,contextMenuDecoration:this._contextMenuDecoration})}this.treeModelDisposableCollection=new p.DisposableCollection,this.onDidTreeModelChangeEmitter.fire(this._activeTreeModel)}dispose(){this.disposableCollection.dispose()}initDecorations(D){return this._activeDecorations=new o.DecorationsManager(D),this._selectedDecoration=new o.Decoration(m.default.mod_selected),this._focusedDecoration=new o.Decoration(m.default.mod_focused),this._contextMenuDecoration=new o.Decoration(m.default.mod_actived),this._activeDecorations.addDecoration(this.selectedDecoration),this._activeDecorations.addDecoration(this.focusedDecoration),this._activeDecorations.addDecoration(this.contextMenuDecoration),this._activeDecorations}handleTreeHandler(D){this._scmTreeHandle=D}_getSelectedFiles(){return this._selectedFiles.filter(D=>!!D&&!f.SCMResourceGroup.is(D))}get listOpenMode(){return this.corePreferences["workbench.list.openMode"]}async refresh(D){var w;D===void 0&&(D=(w=this.treeModel)===null||w===void 0?void 0:w.root),D&&(this.refreshCancelToken&&!this.refreshCancelToken.token.isCancellationRequested&&this.refreshCancelToken.cancel(),this.refreshCancelToken=new p.CancellationTokenSource,await D.refresh(this.refreshCancelToken),this.refreshCancelToken=null)}};n.__decorate([(0,a.Autowired)(_.LabelService),n.__metadata("design:type",_.LabelService)],A.prototype,"labelService",void 0),n.__decorate([(0,a.Autowired)(s.SCMTreeDecorationService),n.__metadata("design:type",s.SCMTreeDecorationService)],A.prototype,"decorationService",void 0),n.__decorate([(0,a.Autowired)(p.CommandService),n.__metadata("design:type",Object)],A.prototype,"commandService",void 0),n.__decorate([(0,a.Autowired)(g.IProgressService),n.__metadata("design:type",Object)],A.prototype,"progressService",void 0),n.__decorate([(0,a.Autowired)(h.IIconService),n.__metadata("design:type",Object)],A.prototype,"iconService",void 0),n.__decorate([(0,a.Autowired)(a.INJECTOR_TOKEN),n.__metadata("design:type",a.Injector)],A.prototype,"injector",void 0),n.__decorate([(0,a.Autowired)(v.SCMTreeService),n.__metadata("design:type",v.SCMTreeService)],A.prototype,"scmTreeService",void 0),n.__decorate([(0,a.Autowired)(l.ViewModelContext),n.__metadata("design:type",l.ViewModelContext)],A.prototype,"viewModel",void 0),n.__decorate([(0,a.Autowired)(b.ICtxMenuRenderer),n.__metadata("design:type",b.ICtxMenuRenderer)],A.prototype,"ctxMenuRenderer",void 0),n.__decorate([(0,a.Autowired)(p.CorePreferences),n.__metadata("design:type",Object)],A.prototype,"corePreferences",void 0),n.__decorate([(0,a.Autowired)(E.WorkbenchEditorService),n.__metadata("design:type",E.WorkbenchEditorService)],A.prototype,"workbenchEditorService",void 0),n.__decorate([(0,a.Autowired)(p.PreferenceService),n.__metadata("design:type",Object)],A.prototype,"preferenceService",void 0),n.__decorate([(0,a.Autowired)(c.IWorkspaceService),n.__metadata("design:type",Object)],A.prototype,"workspaceService",void 0),n.__decorate([(0,a.Autowired)(p.ILogger),n.__metadata("design:type",Object)],A.prototype,"logger",void 0),A=n.__decorate([(0,a.Injectable)()],A),e.SCMTreeModelService=A},28087:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMResourceFile=e.SCMResourceFolder=e.SCMResourceGroup=e.SCMResourceRoot=void 0;const n=t(85608),a=t(97267),o=t(41869),p=t(36367),b=t(38563);class g extends a.CompositeTreeNode{static is(c){return!!c&&!c.parent}constructor(c,r){super(c,void 0),this.isTree=r}get name(){return`SCMTree_${this.isTree?"Tree":"List"}_${this.id}`}get expanded(){return!0}dispose(){super.dispose()}}e.SCMResourceRoot=g;class _ extends a.CompositeTreeNode{static is(c){return a.CompositeTreeNode.is(c)&&!!c.resource&&(0,p.isSCMResourceGroup)(c.resource)}constructor(c,r,l,s){super(c,r),this.raw=l,this.resource=s,this.isExpanded=!0}get displayName(){return this.resource.label}get uri(){return new o.URI(`scm-group://${this.resource.id}`)}}n.__decorate([o.memoize,n.__metadata("design:type",Object),n.__metadata("design:paramtypes",[])],_.prototype,"displayName",null),n.__decorate([o.memoize,n.__metadata("design:type",o.URI),n.__metadata("design:paramtypes",[])],_.prototype,"uri",null),e.SCMResourceGroup=_;class E extends a.CompositeTreeNode{constructor(c,r,l,s,d){super(c,r,void 0,{name:d?l.name:l.pathname}),this.raw=l,this.resource=s,this.description="",this.isExpanded=!0}get displayName(){return this.raw.name}get uri(){return new o.URI(this.raw.resource.sourceUri)}get tooltip(){const c=this.resource;return o.path.join(c.resourceGroup.provider.rootUri.path,this.raw.pathname)}get arguments(){return(0,b.collectSCMResourceDesc)(this.raw,[])}}n.__decorate([o.memoize,n.__metadata("design:type",String),n.__metadata("design:paramtypes",[])],E.prototype,"displayName",null),n.__decorate([o.memoize,n.__metadata("design:type",o.URI),n.__metadata("design:paramtypes",[])],E.prototype,"uri",null),n.__decorate([o.memoize,n.__metadata("design:type",String),n.__metadata("design:paramtypes",[])],E.prototype,"tooltip",null),e.SCMResourceFolder=E;class u extends a.TreeNode{constructor(c,r,l,s,d){super(c,r,void 0,{name:d?l.name:l.pathname}),this.raw=l,this.resource=s,this.isTree=d}get displayName(){return this.raw.name}get uri(){return new o.URI(this.raw.resource.sourceUri)}get description(){if(this.isTree)return"";const c=this.resource,r=o.path.parse(c.sourceUri.path);return o.path.relative(c.resourceGroup.provider.rootUri.path,r.dir)}get tooltip(){return this.resource.sourceUri.path}}n.__decorate([o.memoize,n.__metadata("design:type",String),n.__metadata("design:paramtypes",[])],u.prototype,"displayName",null),n.__decorate([o.memoize,n.__metadata("design:type",o.URI),n.__metadata("design:paramtypes",[])],u.prototype,"uri",null),n.__decorate([o.memoize,n.__metadata("design:type",String),n.__metadata("design:paramtypes",[])],u.prototype,"description",null),n.__decorate([o.memoize,n.__metadata("design:type",String),n.__metadata("design:paramtypes",[])],u.prototype,"tooltip",null),e.SCMResourceFile=u},74568:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMTreeNode=e.SCMResourceNode=e.SCMResourceGroupNode=e.SCM_BADGE_LIMIT=e.SCM_TREE_NODE_HEIGHT=void 0;const n=t(85608),a=n.__importDefault(t(53373)),o=n.__importStar(t(14041)),p=t(97267),b=t(41869),g=t(25918),_=t(52416),E=t(49914),u=t(28087),h=n.__importDefault(t(87440));e.SCM_TREE_NODE_HEIGHT=22,e.SCM_BADGE_LIMIT=99;const c=({item:s,defaultLeftPadding:d=8,leftPadding:f=8,onClick:m,onDoubleClick:v,onContextMenu:y,itemType:S,decorations:A,onTwistierClick:T})=>{const D=(0,b.useInjectable)(E.ViewModelContext),w=`${d+(s.depth||0)*(f||0)}px`,I=(0,b.useDesignStyles)(h.default.expansion_toggle,"expansion_toggle"),O=(0,b.useDesignStyles)(h.default.scm_tree_node,"scm_tree_node"),M=s.resource,R=o.default.useCallback(()=>{const W=D.menus.getRepositoryMenus(M.provider).getResourceGroupMenu(M);return o.default.createElement("div",{className:h.default.scm_tree_node_actions},o.default.createElement(g.InlineMenuBar,{context:[M],menus:W,separator:"inline"}))},[M]),P=(0,o.useCallback)(F=>{F.nativeEvent.button===b.MouseEventButton.Right&&y(F,s,S)},[y]),L=(0,o.useCallback)(F=>{m(F,s,S)},[m]),N=(0,o.useCallback)(F=>{v(F,s,S)},[v]),k=(0,o.useCallback)((F,W)=>A&&A?.classlist.indexOf(h.default.mod_loading)>-1?o.default.createElement(p.Loading,null):o.default.createElement("div",{onClick:W,className:(0,a.default)(h.default.scm_tree_node_segment,I,(0,b.getIcon)("arrow-right"),{[`${h.default.mod_collapsed}`]:!F.expanded})}),[A]),B=(0,o.useCallback)(F=>{(S===p.TreeNodeType.TreeNode||S===p.TreeNodeType.CompositeTreeNode)&&(T?T(F,s,S):m(F,s,S))},[T,m]);return o.default.createElement("div",{key:s.id,onClick:L,onDoubleClick:N,onContextMenu:P,className:(0,a.default)(O,A?A.classlist:null),style:{height:e.SCM_TREE_NODE_HEIGHT,lineHeight:`${e.SCM_TREE_NODE_HEIGHT}px`,paddingLeft:w},"data-id":s.id},o.default.createElement("div",{className:(0,a.default)(h.default.scm_tree_node_content)},k(s,B),o.default.createElement("div",{className:h.default.scm_tree_node_overflow_wrap},o.default.createElement("div",{className:(0,a.default)(h.default.scm_tree_node_segment,h.default.scm_tree_node_displayname)},s.displayName)),R(),o.default.createElement("div",{className:(0,a.default)(h.default.scm_tree_node_segment,h.default.scm_tree_node_tail)},o.default.createElement(p.Badge,null,s.resource.elements.length))))};e.SCMResourceGroupNode=c;const r=({item:s,defaultLeftPadding:d=8,leftPadding:f=8,onClick:m,onDoubleClick:v,onTwistierClick:y,onContextMenu:S,itemType:A,decorationService:T,labelService:D,decorations:w,iconTheme:I})=>{const O=(0,b.useInjectable)(E.ViewModelContext),M=u.SCMResourceGroup.is(s)?null:T.getDecoration(s.uri,!1),R=(0,b.useDesignStyles)(h.default.expansion_toggle,"expansion_toggle"),P=(0,b.useDesignStyles)(h.default.scm_tree_node,"scm_tree_node"),L=s.resource,N=(0,o.useCallback)(()=>{const se=O.menus.getRepositoryMenus(L.resourceGroup.provider);let ae,de;return A===p.TreeNodeType.TreeNode?(ae=se.getResourceMenu(L),de=[L]):(ae=se.getResourceFolderMenu(L.resourceGroup),de=s.arguments),o.default.createElement("div",{className:h.default.scm_tree_node_actions},o.default.createElement(g.InlineMenuBar,{menus:ae,context:de,separator:"inline"}))},[A,L.resourceGroup]),k=(0,o.useCallback)(se=>{m(se,s,A)},[m]),B=(0,o.useCallback)(se=>{v(se,s,A)},[v]),F=(0,o.useCallback)(se=>{se.nativeEvent.button===b.MouseEventButton.Right&&S(se,s,A)},[S]),W=u.SCMResourceFolder.is(s),{hidesExplorerArrows:j,hasFolderIcons:V}=I,K=`${d+(s.depth||0)*(f||0)+(W?0:V?j?0:20:0)}px`,H=se=>{const ae=D.getIcon(se.uri,{isDirectory:u.SCMResourceFolder.is(se)});return o.default.createElement("div",{className:(0,a.default)(h.default.file_icon,ae),style:{height:e.SCM_TREE_NODE_HEIGHT,lineHeight:`${e.SCM_TREE_NODE_HEIGHT}px`}})},z=(0,o.useCallback)(se=>o.default.createElement("div",{className:(0,a.default)(h.default.scm_tree_node_segment,h.default.scm_tree_node_displayname)},u.SCMResourceFolder.is(se)?se.displayName:D.getName(se.uri)),[D]),G=(0,o.useCallback)(se=>o.default.createElement("div",{className:(0,a.default)(h.default.scm_tree_node_segment_grow,h.default.scm_tree_node_description)},se.description),[]),U=(0,b.useInjectable)(_.IThemeService),$=()=>{if(!M)return null;const se=M.badge||s.resource.decorations.letter||"",ae=M.color||s.resource.decorations.color,de=ae&&U.getColor({id:ae});return o.default.createElement("div",{className:h.default.scm_tree_node_status,style:{color:de}},se.slice())},Y=(0,o.useCallback)(()=>{let se=s.tooltip;return M&&M.badge&&(se+=` \u2022 ${M.tooltip||s.resource.decorations.tooltip||""}`),se},[s]),Q=(0,o.useCallback)(se=>{(A===p.TreeNodeType.TreeNode||A===p.TreeNodeType.CompositeTreeNode)&&(y?y(se,s,A):m(se,s,A))},[y,m]),te=(0,o.useCallback)((se,ae)=>u.SCMResourceFolder.is(se)?w&&w?.classlist.indexOf(h.default.mod_loading)>-1?o.default.createElement(p.Loading,null):o.default.createElement("div",{onClick:ae,className:(0,a.default)(h.default.scm_tree_node_segment,R,(0,b.getIcon)("arrow-right"),{[`${h.default.mod_collapsed}`]:!se.expanded})}):null,[w]);return o.default.createElement("div",{key:s.id,onClick:k,onDoubleClick:B,onContextMenu:F,title:Y(),className:(0,a.default)(P,w?w.classlist:null),style:{color:M?M.color:"",paddingLeft:K,height:e.SCM_TREE_NODE_HEIGHT,lineHeight:`${e.SCM_TREE_NODE_HEIGHT}px`},"data-id":s.id},o.default.createElement("div",{className:(0,a.default)(h.default.scm_tree_node_content)},te(s,Q),H(s),o.default.createElement("div",{className:h.default.scm_tree_node_overflow_wrap,style:{textDecoration:M&&M.badge==="D"?"line-through":"none"}},z(s),G(s)),N(),o.default.createElement("div",{className:(0,a.default)(h.default.scm_tree_node_segment,h.default.scm_tree_node_tail)},$())))};e.SCMResourceNode=r;const l=s=>{const{item:d}=s,f=n.__rest(s,["item"]);return u.SCMResourceGroup.is(d)?o.default.createElement(e.SCMResourceGroupNode,Object.assign({item:d},f)):o.default.createElement(e.SCMResourceNode,Object.assign({},s,{item:d}))};e.SCMTreeNode=l},63451:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMTreeService=void 0;const n=t(85608),a=t(76003),o=t(97267),p=t(41869),b=t(43718),g=t(64964),_=t(38563),E=t(28087);let u=class extends o.Tree{get isTreeMode(){return this._isTreeMode}get onDidTreeModeChange(){return this.onDidTreeModeChangeEmitter.event}constructor(){super(),this.onDidTreeModeChangeEmitter=new p.Emitter,this._isTreeMode=this.preferenceService.get("scm.defaultViewMode")===g.SCMViewModelMode.Tree,this.toDispose.push(this.preferenceService.onSpecificPreferenceChange("scm.defaultViewMode",c=>{const r=c.newValue===g.SCMViewModelMode.Tree;r!==this._isTreeMode&&(this._isTreeMode=r,this.onDidTreeModeChangeEmitter.fire(this._isTreeMode))}))}changeTreeMode(c){this.preferenceService.set("scm.defaultViewMode",c?g.SCMViewModelMode.Tree:g.SCMViewModelMode.List,b.PreferenceScope.User)}async resolveChildren(c){let r=[];if(!c)this._root=new E.SCMResourceRoot(this,this._isTreeMode),r=[this._root];else if(E.SCMResourceRoot.is(c)){const l=this.scmTreeAPI.init(this._isTreeMode?g.SCMViewModelMode.Tree:g.SCMViewModelMode.List);r.push(...l.map(s=>this.toNode(s,c,this._isTreeMode)))}else if(c.raw){const l=c.raw.children;r.push(...l.map(s=>this.toNode(s,c,this._isTreeMode)))}return r}toNode(c,r,l){if(c.type==="group"){const d=c;return new E.SCMResourceGroup(this,r,d,d.resource)}const s=c;return c.type==="file"?new E.SCMResourceFile(this,r,s,s.resource,l):new E.SCMResourceFolder(this,r,s,s.resource,l)}sortComparator(c,r){if(E.SCMResourceGroup.is(c)&&E.SCMResourceGroup.is(r)){const l={merge:3,index:2,workingTree:1};return l[r.resource.id]-l[c.resource.id]}return super.sortComparator(c,r)}dispose(){super.dispose(),this.onDidTreeModeChangeEmitter.dispose()}};n.__decorate([(0,a.Autowired)(_.SCMTreeAPI),n.__metadata("design:type",_.SCMTreeAPI)],u.prototype,"scmTreeAPI",void 0),n.__decorate([(0,a.Autowired)(p.PreferenceService),n.__metadata("design:type",Object)],u.prototype,"preferenceService",void 0),u=n.__decorate([(0,a.Injectable)(),n.__metadata("design:paramtypes",[])],u),e.SCMTreeService=u},42126:(x,e,t)=>{"use strict";var n;Object.defineProperty(e,"__esModule",{value:!0}),e.DirtyDiffDecorator=void 0;const a=t(85608),o=t(76003),p=t(41869),b=t(54414),g=t(52416),_=a.__importStar(t(43255)),E=a.__importStar(t(88104)),u=t(7168),h=t(73018),c=t(24870),r=t(84416);let l=n=class extends p.Disposable{static createDecoration(d,f){const m={description:"dirty-diff-decoration",isWholeLine:f.isWholeLine};return f.gutter&&(m.linesDecorationsClassName=`dirty-diff-glyph ${d}`),f.overview.active&&(m.overviewRuler={color:(0,g.themeColorFromId)(f.overview.color),position:b.OverviewRulerLane.Left}),f.minimap.active&&(m.minimap={color:(0,g.themeColorFromId)(f.minimap.color),position:_.MinimapPosition.Gutter}),E.ModelDecorationOptions.createDynamic(m)}constructor(d,f){super(),this.model=f,this.decorations=[],this.editorModel=d;const m=this.scmPreferences["scm.diffDecorations"],v=m==="all"||m==="gutter",y=m==="all"||m==="overview",S=m==="all"||m==="minimap";this.modifiedOptions=n.createDecoration("dirty-diff-modified",{gutter:v,overview:{active:y,color:u.overviewRulerModifiedForeground},minimap:{active:S,color:u.minimapGutterModifiedBackground},isWholeLine:!0}),this.addedOptions=n.createDecoration("dirty-diff-added",{gutter:v,overview:{active:y,color:u.overviewRulerAddedForeground},minimap:{active:S,color:u.minimapGutterAddedBackground},isWholeLine:!0}),this.deletedOptions=n.createDecoration("dirty-diff-deleted",{gutter:v,overview:{active:y,color:u.overviewRulerDeletedForeground},minimap:{active:S,color:u.minimapGutterDeletedBackground},isWholeLine:!1}),this.addDispose(f.onDidChange(this.onDidChange,this))}onDidChange(){if(!this.editorModel)return;const d=this.model.changes.map(f=>{const m=(0,r.getChangeType)(f),v=f[2],y=f[3]-1||v-1;switch(m){case r.ChangeType.Add:return{range:{startLineNumber:v,startColumn:1,endLineNumber:y,endColumn:1},options:this.addedOptions};case r.ChangeType.Delete:return{range:{startLineNumber:v-1,startColumn:Number.MAX_VALUE,endLineNumber:v>0?v-1:v,endColumn:Number.MAX_VALUE},options:this.deletedOptions};case r.ChangeType.Modify:return{range:{startLineNumber:v,startColumn:1,endLineNumber:y,endColumn:1},options:this.modifiedOptions}}});this.decorations=this.editorModel.getMonacoModel().deltaDecorations(this.decorations,d)}dispose(){super.dispose(),this.editorModel&&!this.editorModel.getMonacoModel().isDisposed()&&this.editorModel.getMonacoModel().deltaDecorations(this.decorations,[]),this.editorModel=null,this.decorations=[]}};a.__decorate([(0,o.Autowired)(h.SCMPreferences),a.__metadata("design:type",Object)],l.prototype,"scmPreferences",void 0),l=n=a.__decorate([(0,o.Injectable)({multiple:!0}),a.__param(0,(0,o.Optional)()),a.__param(1,(0,o.Optional)()),a.__metadata("design:paramtypes",[Object,c.DirtyDiffModel])],l),e.DirtyDiffDecorator=l},24870:(x,e,t)=>{"use strict";var n;Object.defineProperty(e,"__esModule",{value:!0}),e.DirtyDiffModel=e.isDirtyDiffVisible=void 0;const a=t(85608),o=t(76003),p=t(41869),b=t(40191),g=t(54414),_=t(57517),E=a.__importStar(t(20868)),u=t(28240),h=t(83e3),c=t(64964),r=t(84416),{sortedDiff:l}=p.arrays;e.isDirtyDiffVisible=new b.RawContextKey("dirtyDiffVisible",!1);let s=n=class extends p.Disposable{get original(){return this._originalModel}get modified(){return this._editorModel}get changes(){return this._changes}get editorWorkerService(){return h.StandaloneServices.get(u.IEditorWorkerService)}constructor(f){super(),this.repositoryDisposables=new Set,this._onDidChange=new p.Emitter,this.onDidChange=this._onDidChange.event,this._changes=[],this._editorModel=f,this.diffDelayer=new p.ThrottledDelayer(200),this.addDispose(p.Disposable.create(()=>{this.diffDelayer&&(this.diffDelayer.isTriggered()||this.diffDelayer.cancel(),this.diffDelayer=null)})),this.addDispose(f.getMonacoModel().onDidChangeContent(()=>this.triggerDiff())),this.addDispose(f.onDidChangeEncoding(()=>{var m;(m=this.diffDelayer)===null||m===void 0||m.cancel(),this._originalModel=null,this._originalURIPromise=void 0,this._changes=[],this.triggerDiff()})),this.addDispose(this.scmService.onDidAddRepository(this.onDidAddRepository,this)),this.scmService.repositories.forEach(m=>this.onDidAddRepository(m)),this.triggerDiff(),this.originalModelDisposables=new p.DisposableStore,this.addDispose(this.originalModelDisposables),this.isDirtyDiffVisible=e.isDirtyDiffVisible.bind(this.contextKeyService)}onDidAddRepository(f){const m=new p.DisposableStore;this.repositoryDisposables.add(m),m.add((0,p.toDisposable)(()=>this.repositoryDisposables.delete(m)));const v=p.Event.any(f.provider.onDidChange,f.provider.onDidChangeResources);m.add(v(this.triggerDiff,this));const y=p.Event.filter(this.scmService.onDidRemoveRepository,S=>S===f);m.add(y(()=>(0,p.dispose)(m),null)),this.triggerDiff()}triggerDiff(){return this.diffDelayer?this.diffDelayer.trigger(()=>this.diff()).then(f=>{if(!this._editorModel||this._editorModel.getMonacoModel().isDisposed()||!this._originalModel||this._originalModel.getMonacoModel().isDisposed())return;(!f||this._originalModel.getMonacoModel().getValueLength()===0)&&(f=[]);const m=l(this.changes,f,r.compareChanges);this._changes=f,m.length>0&&this._onDidChange.fire(m)}):Promise.resolve(null)}canSyncModelForDiff(f){if(!f)return!1;const m=n.maxFileSize*1024*1024,v=f.getValueLength();return m===0||v<=m}async diff(){var f;const m=await this.getOriginalURIPromise();if(!this._editorModel||this._editorModel.getMonacoModel().isDisposed()||!m)return[];if(!this.canSyncModelForDiff((f=this._originalModel)===null||f===void 0?void 0:f.getMonacoModel())||!this.canSyncModelForDiff(this._editorModel.getMonacoModel()))return[];const v=await this.editorWorkerService.computeDiff(m,this._editorModel.getMonacoModel().uri,{ignoreTrimWhitespace:!1,maxComputationTimeMs:1e3,computeMoves:!1},"advanced");return v&&this.getLineChanges(v.changes)}getLineChanges(f){return f.map(m=>{var v;return[m.original.startLineNumber,m.original.endLineNumberExclusive,m.modified.startLineNumber,m.modified.endLineNumberExclusive,(v=m.innerChanges)===null||v===void 0?void 0:v.map(y=>[y.originalRange.startLineNumber,y.originalRange.startColumn,y.originalRange.endLineNumber,y.originalRange.endColumn,y.modifiedRange.startLineNumber,y.modifiedRange.startColumn,y.modifiedRange.endLineNumber,y.modifiedRange.endColumn])]})}getOriginalURIPromise(){return this._originalURIPromise?this._originalURIPromise:(this._originalURIPromise=this.getOriginalResource().then(f=>this._editorModel?f?this._originalModel&&this._originalModel.uri.toString()===f.toString()?f:this.documentModelManager.createModelReference(new p.URI(f)).then(m=>{if(!this._editorModel||!m)return null;this._originalModel=m.instance,this._originalModel.updateEncoding(this._editorModel.encoding);const v=this._originalModel.getMonacoModel();return this.originalModelDisposables.clear(),this.originalModelDisposables.add(m),this.originalModelDisposables.add(v.onDidChangeContent(()=>this.triggerDiff())),f}):(this._originalModel=null,null):null),this._originalURIPromise.finally(()=>{this._originalURIPromise=void 0}))}getOriginalResource(){if(!this._editorModel)return Promise.resolve(null);const f=this._editorModel.getMonacoModel().uri;return(0,p.first)(this.scmService.repositories.map(m=>()=>m.provider.getOriginalResource(f)))}findNextClosestChange(f,m=!0){for(let v=0;v<this.changes.length;v++){const y=this.changes[v];if(m){if((0,r.getModifiedEndLineNumber)(y)>=f)return v}else if(y[2]>f)return v}return 0}findNextClosestChangeLineNumber(f,m=!0){const v=this.findNextClosestChange(f,m);return this.changes[v][2]}findPreviousClosestChange(f,m=!0){for(let v=this.changes.length-1;v>=0;v--){const y=this.changes[v];if(m){if(y[2]<=f)return v}else if((0,r.getModifiedEndLineNumber)(y)<f)return v}return this.changes.length-1}findPreviousClosestChangeLineNumber(f,m=!0){const v=this.findPreviousClosestChange(f,m);return this.changes[v][2]}getChangeFromRange(f){const m=this.findNextClosestChange(f.startLineNumber);return{change:this.changes[m],count:m+1}}async onClickDecoration(f,m){if(this._widget)if(this._widget===f){this._widget.dispose();return}else this._widget.dispose();if(this._widget=f,this._originalModel&&this._editorModel){let O=function(M,R){f.updateCurrent(M),f.show(E.positionToRange(R[3]-1),n.heightInLines),D.isDirtyDiffVisible.set(!0)};const v=this._originalModel.uri,y=this._editorModel.uri,S=this.editorService.createDiffEditor(f.getContentNode(),{automaticLayout:!0,renderSideBySide:!1,hideUnchangedRegions:{enabled:!1}}),A=await this.documentModelManager.createModelReference(v),T=await this.documentModelManager.createModelReference(y);S.compare(A,T),S.modifiedEditor.monacoEditor.updateOptions({readOnly:!0}),S.originalEditor.monacoEditor.updateOptions({readOnly:!0}),S.modifiedEditor.monacoEditor.revealLineInCenter(m.startLineNumber-Math.round(n.heightInLines/2)),f.addDispose(S.originalEditor.monacoEditor.onDidChangeModelContent(()=>{f.relayout(n.heightInLines)}));const D=this;f.addDispose(this.onDidChange(()=>{const{change:M,count:R}=this.getChangeFromRange(m)||{};O(R,M)}));const{change:w,count:I}=this.getChangeFromRange(m)||{};I&&w&&O(I,w),f.onDispose(()=>{this._widget=null,D.isDirtyDiffVisible.set(!1)})}}dispose(){super.dispose(),this._editorModel=null,this._originalModel=null,this.repositoryDisposables.forEach(f=>(0,p.dispose)(f)),this.repositoryDisposables.clear()}};s.heightInLines=10,s.maxFileSize=50,a.__decorate([(0,o.Autowired)(p.IContextKeyService),a.__metadata("design:type",Object)],s.prototype,"contextKeyService",void 0),a.__decorate([(0,o.Autowired)(c.SCMService),a.__metadata("design:type",c.SCMService)],s.prototype,"scmService",void 0),a.__decorate([(0,o.Autowired)(_.IEditorDocumentModelService),a.__metadata("design:type",Object)],s.prototype,"documentModelManager",void 0),a.__decorate([(0,o.Autowired)(g.EditorCollectionService),a.__metadata("design:type",g.EditorCollectionService)],s.prototype,"editorService",void 0),s=n=a.__decorate([(0,o.Injectable)({multiple:!0}),a.__param(0,(0,o.Optional)()),a.__metadata("design:paramtypes",[Object])],s),e.DirtyDiffModel=s},84416:(x,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.toChange=e.getChangeType=e.ChangeType=e.getModifiedEndLineNumber=e.compareChanges=void 0;function t(b,g){let _=b[2]-g[2];return _!==0||(_=b[3]-g[3],_!==0)||(_=b[0]-g[0],_!==0)?_:b[1]-g[1]}e.compareChanges=t;function n(b){return b[3]===0?b[2]===0?1:b[2]:b[3]}e.getModifiedEndLineNumber=n;var a;(function(b){b.Modify="Modify",b.Add="Add",b.Delete="Delete"})(a=e.ChangeType||(e.ChangeType={}));function o(b){return b[1]-b[0]===0?a.Add:b[1]>b[0]&&b[2]===b[3]?a.Delete:a.Modify}e.getChangeType=o;function p(b){switch(o(b)){case a.Add:return{originalStartLineNumber:b[0],originalEndLineNumber:0,modifiedStartLineNumber:b[2],modifiedEndLineNumber:b[3]};case a.Modify:return{originalStartLineNumber:b[0],originalEndLineNumber:b[1],modifiedStartLineNumber:b[2],modifiedEndLineNumber:b[3]};case a.Delete:return{originalStartLineNumber:b[0],originalEndLineNumber:b[1],modifiedStartLineNumber:b[2],modifiedEndLineNumber:0};default:return{originalStartLineNumber:b[0],originalEndLineNumber:b[1],modifiedStartLineNumber:b[2],modifiedEndLineNumber:b[3]}}}e.toChange=p},54595:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.DirtyDiffWidget=e.DirtyDiffWidgetActionType=void 0;const n=t(41869),a=t(87308),o=t(31324),p=t(64964),b=t(84416);var g;(function(E){E[E.close=0]="close",E[E.save=1]="save",E[E.reset=2]="reset",E[E.next=3]="next",E[E.previous=4]="previous"})(g=e.DirtyDiffWidgetActionType||(e.DirtyDiffWidgetActionType={}));class _ extends a.ZoneWidget{_fillContainer(u){}get uri(){return n.URI.from(this.editor.getModel().uri)}constructor(u,h,c){super(u),this.commandService=c,this._currentChangeIndex=0,this._model=h,this._wrapper=document.createElement("div"),this._head=document.createElement("div"),this._content=document.createElement("div"),this._container.appendChild(this._wrapper),this._wrapper.appendChild(this._head),this._wrapper.appendChild(this._content)}get currentIndex(){return this._currentChangeIndex}updateCurrent(u){this._currentChangeIndex=u}applyStyle(){if(!this._title)return;this._title.children[0]&&this._title.removeChild(this._title.children[0]);const u=document.createElement("span");u.className="dirty-diff-widget-title-detail",u.innerText=(0,n.formatLocalize)("scm.dirtyDiff.changes",this._currentChangeIndex,this._model.changes.length),this._title.appendChild(u)}getBorderColor(u){switch(u){case b.ChangeType.Add:return"var(--editorGutter-addedBackground)";case b.ChangeType.Modify:return"var(--editorGutter-modifiedBackground)";case b.ChangeType.Delete:return"var(--editorGutter-deletedBackground)"}}applyClass(){this._wrapper.className="dirty-diff-widget-wrapper",this._head.className="dirty-diff-widget-header",this._content.className="dirty-diff-widget-content";const u=this._model.changes[this._currentChangeIndex-1],h=(0,b.getChangeType)(u),c=this.getBorderColor(h);this._head.style.borderTopColor=c,this._head.style.borderBottomColor=c,this._content.style.borderBottomColor=c;const r=this.editor.getOption(o.EditorOption.lineHeight),l=Math.ceil(r*1.2);this._head.style.height=`${l}px`,this._renderTitle();const s=this.editor.getModel();if(!s)throw new Error("Not found model");this._title.innerText=n.path.basename(s.uri.path),this._title.className="file-name",this._actions.className="file-actions",this._renderActions()}getContentNode(){return this._content}_renderTitle(){this._head.children.length===0&&(this._title=document.createElement("div"),this._actions=document.createElement("div"),this._head.appendChild(this._title),this._head.appendChild(this._actions))}_addAction(u,h){const c=document.createElement("div");return c.className=`kt-icon codicon codicon-${u}`,this._actions.appendChild(c),c.onclick=()=>this.handleAction(h),c}_renderActions(){this._actions.children.length===0&&(this._addAction("add",g.save),this._addAction("discard",g.reset),this._addAction("arrow-up",g.next),this._addAction("arrow-down",g.previous),this._addAction("close",g.close))}relayout(u){this._relayout(u)}handleAction(u){let h;const c=this.currentRange,r=[this.uri,this._model.changes.map(b.toChange),this._currentChangeIndex-1];switch(u){case g.next:h=this._model.findNextClosestChangeLineNumber(c.startLineNumber,!1),h&&h!==c.startLineNumber&&this.commandService.executeCommand(p.OPEN_DIRTY_DIFF_WIDGET.id,h);break;case g.previous:h=this._model.findPreviousClosestChangeLineNumber(c.startLineNumber,!1),h&&h!==c.startLineNumber&&this.commandService.executeCommand(p.OPEN_DIRTY_DIFF_WIDGET.id,h);break;case g.save:this.commandService.executeCommand("git.stageChange",...r),this.dispose();break;case g.reset:this.commandService.executeCommand("git.revertChange",...r),this.dispose();break;case g.close:this.dispose();break;default:break}}}e.DirtyDiffWidget=_},71972:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.DirtyDiffWorkbenchController=e.DirtyDiffItem=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(43718),b=t(54414),g=t(57517),_=n.__importStar(t(20868)),E=t(62663),u=t(64964),h=t(73018),c=t(42126),r=t(24870),l=t(54595);t(22861);class s{constructor(m,v){this.model=m,this.decorator=v}dispose(){this.decorator.dispose(),this.model.dispose()}}e.DirtyDiffItem=s;let d=class extends o.Disposable{constructor(){super(),this.enabled=!1,this.models=[],this.widgets=new Map,this.items=Object.create(null),this.transientDisposables=new o.DisposableStore,this.keybindingRegistry.registerKeybinding({command:u.CLOSE_DIRTY_DIFF_WIDGET.id,keybinding:"esc",when:r.isDirtyDiffVisible.equalsTo(!0)})}start(){const m=o.Event.filter(this.scmPreferences.onPreferenceChanged,y=>y.affects("scm.diffDecorations"));this.addDispose(m(this.onDidChangeConfiguration,this)),this.onDidChangeConfiguration(),o.Event.filter(this.scmPreferences.onPreferenceChanged,y=>y.affects("scm.diffDecorationsGutterWidth"))(this.onDidChangeDiffWidthConfiguration,this),this.onDidChangeDiffWidthConfiguration(),this.addDispose(this.editorFeatureRegistry.registerEditorFeatureContribution({contribute:y=>this.attachEvents(y.monacoEditor)})),this.addDispose(this.scmPreferences.onPreferenceChanged(y=>{y.preferenceName==="scm.alwaysShowDiffWidget"&&y.newValue===!1&&this.widgets.forEach(S=>{S.dispose()})}))}onDidChangeConfiguration(){this.scmPreferences["scm.diffDecorations"]!=="none"?this.enable():this.disable()}onDidChangeDiffWidthConfiguration(){let m=this.scmPreferences["scm.diffDecorationsGutterWidth"];(isNaN(m)||m<=0||m>5)&&(m=3)}enable(){this.enabled&&this.disable(),this.transientDisposables.add(this.eventBus.on(g.EditorGroupChangeEvent,()=>{this.onEditorsChanged()})),this.onEditorsChanged(),this.enabled=!0}disable(){this.enabled&&(this.transientDisposables.clear(),this.models.forEach(m=>{const v=this.items[m.id];v&&v.dispose()}),this.models=[],this.items=Object.create(null),this.enabled=!1)}onEditorsChanged(){const m=this.editorService.editorGroups.filter(S=>S.currentOpenType&&S.currentOpenType.type===g.EditorOpenType.code).map(S=>{const A=S.currentEditor;return A?A.currentDocumentModel:null}).filter((S,A,T)=>!!S&&!!S.uri&&T.indexOf(S,A+1)===-1),v=m.filter(S=>this.models.every(A=>S!==A));this.models.filter(S=>m.every(A=>A!==S)).forEach(S=>this.onModelInvisible(S)),v.forEach(S=>this.onModelVisible(S)),this.models=m}onModelVisible(m){const v=this.injector.get(r.DirtyDiffModel,[m]),y=this.injector.get(c.DirtyDiffDecorator,[m,v]);this.items[m.id]=new s(v,y)}onModelInvisible(m){this.items[m.id].dispose(),delete this.items[m.id]}closeDirtyDiffWidget(m){const v=this.widgets.get(m.getId());v&&v.dispose()}toggleDirtyDiffWidget(m,v){const y=m.getModel();if(y&&v){let S=this.widgets.get(m.getId());const A=this.getModel(y);if(A){if(S){const{currentIndex:T}=S,{count:D}=A.getChangeFromRange(_.positionToRange(v));if(S.dispose(),T===D)return}S=new l.DirtyDiffWidget(m,A,this.commandService),S.onDispose(()=>{this.widgets.delete(m.getId())}),A.onClickDecoration(S,_.positionToRange(v)),this.widgets.set(m.getId(),S)}}}_doMouseDown(m,{target:v}){if(!v)return;const{position:y,type:S,element:A}=v;if(S===E.monacoBrowser.editor.MouseTargetType.GUTTER_LINE_DECORATIONS&&A&&A.className.indexOf("dirty-diff-glyph")>-1&&y){const T=A.offsetLeft;if(v.detail.offsetX-T<5)this.toggleDirtyDiffWidget(m,y);else{const w=this.widgets.get(m.getId());w&&(w.dispose(),this.widgets.delete(m.getId()))}}}attachEvents(m){const v=new o.DisposableCollection;return v.push(m.onMouseDown(y=>{this.scmPreferences["scm.alwaysShowDiffWidget"]&&this._doMouseDown(m,y)})),v.push(m.onDidChangeModel(({oldModelUrl:y})=>{if(y){const S=this.widgets.get(m.getId());S&&S.dispose()}})),v.push(m.onDidDispose(()=>{v.dispose()})),v}getModel(m){const v=this.items[m.id];return v?v.model:null}dispose(){this.disable(),this.widgets.forEach(m=>m.dispose()),this.widgets.clear(),super.dispose()}};n.__decorate([(0,a.Autowired)(h.SCMPreferences),n.__metadata("design:type",Object)],d.prototype,"scmPreferences",void 0),n.__decorate([(0,a.Autowired)(b.WorkbenchEditorService),n.__metadata("design:type",b.WorkbenchEditorService)],d.prototype,"editorService",void 0),n.__decorate([(0,a.Autowired)(g.IEditorFeatureRegistry),n.__metadata("design:type",Object)],d.prototype,"editorFeatureRegistry",void 0),n.__decorate([(0,a.Autowired)(p.IEventBus),n.__metadata("design:type",Object)],d.prototype,"eventBus",void 0),n.__decorate([(0,a.Autowired)(a.INJECTOR_TOKEN),n.__metadata("design:type",a.Injector)],d.prototype,"injector",void 0),n.__decorate([(0,a.Autowired)(p.CommandService),n.__metadata("design:type",Object)],d.prototype,"commandService",void 0),n.__decorate([(0,a.Autowired)(o.KeybindingRegistry),n.__metadata("design:type",Object)],d.prototype,"keybindingRegistry",void 0),d=n.__decorate([(0,a.Injectable)(),n.__metadata("design:paramtypes",[])],d),e.DirtyDiffWorkbenchController=d},31435:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMModule=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(64964),b=t(71972),g=t(7114),_=t(38672),E=t(73018),u=t(75756);let h=class extends o.BrowserModule{constructor(){super(...arguments),this.providers=[u.SCMContribution,p.SCMService,g.SCMBadgeController,g.SCMStatusBarController,{token:p.ISCMMenus,useClass:_.SCMMenus},{token:p.IDirtyDiffWorkbenchController,useClass:b.DirtyDiffWorkbenchController}],this.preferences=E.bindSCMPreference}};h=n.__decorate([(0,a.Injectable)()],h),e.SCMModule=h},7114:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMStatusBarController=e.SCMBadgeController=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(26542),b=t(43718),g=t(54414),_=t(63067),E=t(64964);let u=class{constructor(){this.disposables=[]}start(){for(const r of this.scmService.repositories)this.onDidAddRepository(r);this.scmService.onDidAddRepository(this.onDidAddRepository,this,this.disposables),this.render()}onDidAddRepository(r){const l=r.provider,d=o.Event.any(l.onDidChange,l.onDidChangeResources)(()=>this.render()),m=o.Event.filter(this.scmService.onDidRemoveRepository,y=>y===r)(()=>{v.dispose(),this.disposables=this.disposables.filter(y=>y!==m),this.render()}),v=(0,o.combinedDisposable)([d,m]);this.disposables.push(v)}render(){const r=this.scmService.repositories.reduce((l,s)=>typeof s.provider.count=="number"?l+s.provider.count:l+s.provider.groups.elements.reduce((d,f)=>d+f.elements.length,0),0);r>0?this.setSCMTarbarBadge(`${r}`):this.setSCMTarbarBadge("")}setSCMTarbarBadge(r){const l=this.layoutService.getTabbarHandler(E.scmContainerId);l&&l.setBadge(r)}dispose(){this.disposables=(0,o.dispose)(this.disposables)}};n.__decorate([(0,a.Autowired)(E.SCMService),n.__metadata("design:type",E.SCMService)],u.prototype,"scmService",void 0),n.__decorate([(0,a.Autowired)(_.IMainLayoutService),n.__metadata("design:type",Object)],u.prototype,"layoutService",void 0),u=n.__decorate([(0,a.Injectable)()],u),e.SCMBadgeController=u;let h=class{constructor(){this.focusDisposable=o.Disposable.None,this.focusedRepository=void 0,this.disposables=[]}start(){this.scmService.onDidAddRepository(this.onDidAddRepository,this,this.disposables);for(const r of this.scmService.repositories)this.onDidAddRepository(r);this.workbenchEditorService.onActiveResourceChange(this.onDidActiveResouceChange,this,this.disposables)}onDidAddRepository(r){const l=r.onDidFocus(()=>this.onDidFocusRepository(r)),d=o.Event.filter(this.scmService.onDidRemoveRepository,m=>m===r)(()=>{f.dispose(),this.disposables=this.disposables.filter(m=>m!==d),this.scmService.repositories.length===0?this.onDidFocusRepository(void 0):this.focusedRepository===r&&this.scmService.repositories[0].focus()}),f=(0,o.combinedDisposable)([l,d]);this.disposables.push(f),this.focusedRepository||this.onDidFocusRepository(r)}onDidActiveResouceChange(){const r=this.workbenchEditorService.currentResource;if(!r||r.uri.scheme!==b.Schemes.file)return;let l=null,s=Number.NEGATIVE_INFINITY;for(const d of this.scmService.repositories){const f=d.provider.rootUri;if(!f)continue;const m=f.fsPath,v=o.strings.commonPrefixLength(m,r.uri.codeUri.fsPath);v===m.length&&v>s&&(l=d,s=v)}l&&this.onDidFocusRepository(l)}onDidFocusRepository(r){this.focusedRepository!==r&&(this.focusedRepository=r,this.focusDisposable.dispose(),r&&r.provider.onDidChangeStatusBarCommands&&(this.focusDisposable=r.provider.onDidChangeStatusBarCommands(()=>this.render(r))),this.render(r))}render(r){if(!r)return;const l=r.provider.statusBarCommands||[];if(!l.length)return;const s=this.getRepoLabel(r);l.forEach((d,f)=>{this.disposables.push(this.statusbarService.addElement(`status.scm.repo.${f}`,{id:"status.scm",text:d.title,name:(0,b.localize)("status-bar.scm"),priority:1e4,alignment:p.StatusBarAlignment.LEFT,command:d.id,arguments:d.arguments,tooltip:`${s} - ${d.tooltip||d.title}`}))})}getRepoLabel(r){return r.provider.rootUri?`${o.path.basename(r.provider.rootUri.path)} (${r.provider.label})`:r.provider.label}dispose(){this.focusDisposable.dispose(),this.disposables=(0,o.dispose)(this.disposables)}};n.__decorate([(0,a.Autowired)(E.SCMService),n.__metadata("design:type",E.SCMService)],h.prototype,"scmService",void 0),n.__decorate([(0,a.Autowired)(p.IStatusBarService),n.__metadata("design:type",Object)],h.prototype,"statusbarService",void 0),n.__decorate([(0,a.Autowired)(g.WorkbenchEditorService),n.__metadata("design:type",g.WorkbenchEditorService)],h.prototype,"workbenchEditorService",void 0),h=n.__decorate([(0,a.Injectable)()],h),e.SCMStatusBarController=h},7168:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.overviewRulerDeletedForeground=e.overviewRulerAddedForeground=e.overviewRulerModifiedForeground=e.minimapGutterDeletedBackground=e.minimapGutterAddedBackground=e.minimapGutterModifiedBackground=e.editorGutterDeletedBackground=e.editorGutterAddedBackground=e.editorGutterModifiedBackground=void 0;const n=t(43718),a=t(52416);e.editorGutterModifiedBackground=(0,a.registerColor)("editorGutter.modifiedBackground",{dark:new a.Color(new a.RGBA(27,129,168)),light:new a.Color(new a.RGBA(32,144,211)),hcDark:new a.Color(new a.RGBA(27,128,168)),hcLight:new a.Color(new a.RGBA(32,144,211))},(0,n.localize)("editorGutterModifiedBackground","Editor gutter background color for lines that are modified.")),e.editorGutterAddedBackground=(0,a.registerColor)("editorGutter.addedBackground",{dark:new a.Color(new a.RGBA(72,126,2)),light:new a.Color(new a.RGBA(72,152,93)),hcDark:new a.Color(new a.RGBA(72,126,2)),hcLight:new a.Color(new a.RGBA(72,152,93))},(0,n.localize)("editorGutterAddedBackground","Editor gutter background color for lines that are added.")),e.editorGutterDeletedBackground=(0,a.registerColor)("editorGutter.deletedBackground",{dark:a.editorErrorForeground,light:a.editorErrorForeground,hcDark:a.editorErrorForeground,hcLight:a.editorErrorForeground},(0,n.localize)("editorGutterDeletedBackground","Editor gutter background color for lines that are deleted.")),e.minimapGutterModifiedBackground=(0,a.registerColor)("minimapGutter.modifiedBackground",{dark:e.editorGutterModifiedBackground,light:e.editorGutterModifiedBackground,hcDark:e.editorGutterModifiedBackground,hcLight:e.editorGutterModifiedBackground},(0,n.localize)("minimapGutterModifiedBackground","Minimap gutter background color for lines that are modified.")),e.minimapGutterAddedBackground=(0,a.registerColor)("minimapGutter.addedBackground",{dark:e.editorGutterAddedBackground,light:e.editorGutterAddedBackground,hcDark:e.editorGutterAddedBackground,hcLight:e.editorGutterAddedBackground},(0,n.localize)("minimapGutterAddedBackground","Minimap gutter background color for lines that are added.")),e.minimapGutterDeletedBackground=(0,a.registerColor)("minimapGutter.deletedBackground",{dark:e.editorGutterDeletedBackground,light:e.editorGutterDeletedBackground,hcDark:e.editorGutterDeletedBackground,hcLight:e.editorGutterDeletedBackground},(0,n.localize)("minimapGutterDeletedBackground","Minimap gutter background color for lines that are deleted.")),e.overviewRulerModifiedForeground=(0,a.registerColor)("editorOverviewRuler.modifiedForeground",{dark:(0,a.transparent)(e.editorGutterModifiedBackground,.6),light:(0,a.transparent)(e.editorGutterModifiedBackground,.6),hcDark:(0,a.transparent)(e.editorGutterModifiedBackground,.6),hcLight:(0,a.transparent)(e.editorGutterModifiedBackground,.6)},(0,n.localize)("overviewRulerModifiedForeground","Overview ruler marker color for modified content.")),e.overviewRulerAddedForeground=(0,a.registerColor)("editorOverviewRuler.addedForeground",{dark:(0,a.transparent)(e.editorGutterAddedBackground,.6),light:(0,a.transparent)(e.editorGutterAddedBackground,.6),hcDark:(0,a.transparent)(e.editorGutterAddedBackground,.6),hcLight:(0,a.transparent)(e.editorGutterAddedBackground,.6)},(0,n.localize)("overviewRulerAddedForeground","Overview ruler marker color for added content.")),e.overviewRulerDeletedForeground=(0,a.registerColor)("editorOverviewRuler.deletedForeground",{dark:(0,a.transparent)(e.editorGutterDeletedBackground,.6),light:(0,a.transparent)(e.editorGutterDeletedBackground,.6),hcDark:(0,a.transparent)(e.editorGutterDeletedBackground,.6),hcLight:(0,a.transparent)(e.editorGutterDeletedBackground,.6)},(0,n.localize)("overviewRulerDeletedForeground","Overview ruler marker color for deleted content."))},38672:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMMenus=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(93899),b=t(43718),g=t(64964),_=t(36367);let E=class extends b.Disposable{constructor(r){super(),this.contextKeyService=r}get resourceGroupMenu(){return this._resourceGroupMenu||(this._resourceGroupMenu=this.registerDispose(this.menuService.createMenu({id:p.MenuId.SCMResourceGroupContext,contextKeyService:this.contextKeyService,config:{separator:"inline"}}))),this._resourceGroupMenu}get resourceFolderMenu(){return this._resourceFolderMenu||(this._resourceFolderMenu=this.registerDispose(this.menuService.createMenu({id:p.MenuId.SCMResourceFolderContext,contextKeyService:this.contextKeyService,config:{separator:"inline"}}))),this._resourceFolderMenu}getResourceMenu(r){const l=r.contextValue;if(typeof l>"u")return this.resourceMenu||(this.resourceMenu=this.registerDispose(this.menuService.createMenu({id:p.MenuId.SCMResourceContext,contextKeyService:this.contextKeyService,config:{separator:"inline"}}))),this.resourceMenu;this.contextualResourceMenu||(this.contextualResourceMenu=new Map);let s=this.contextualResourceMenu.get(l);if(!s){const d=this.contextKeyService.createScoped();(0,_.isSCMResource)(r)&&d.createKey("scmResourceState",l),s=this.registerDispose(this.menuService.createMenu({id:p.MenuId.SCMResourceContext,contextKeyService:d,config:{separator:"inline"}})),this.addDispose(d),this.contextualResourceMenu.set(l,s)}return s}dispose(){var r,l;super.dispose(),(r=this.resourceGroupMenu)===null||r===void 0||r.dispose(),(l=this.resourceMenu)===null||l===void 0||l.dispose(),this.contextualResourceMenu&&(this.contextualResourceMenu.clear(),this.contextualResourceMenu=void 0)}};n.__decorate([(0,a.Autowired)(p.AbstractContextMenuService),n.__metadata("design:type",p.AbstractContextMenuService)],E.prototype,"menuService",void 0),E=n.__decorate([(0,a.Injectable)({multiple:!0}),n.__param(0,(0,a.Optional)()),n.__metadata("design:paramtypes",[Object])],E);let u=class extends b.Disposable{constructor(r){var l;super(),this.resourceGroups=[],this.resourceGroupMenusItems=new Map;const s=this.injector.get(o.IContextKeyService);this.scopedContextKeyService=this.registerDispose(s.createScoped()),this.scopedContextKeyService.createKey("scmProvider",r.contextValue),this.scopedContextKeyService.createKey("scmProviderRootUri",(l=r.rootUri)===null||l===void 0?void 0:l.toString()),this.scopedContextKeyService.createKey("scmProviderHasRootUri",!!r.rootUri),this.onDidSpliceGroups({start:0,deleteCount:0,toInsert:r.groups.elements}),r.groups.onDidSplice(this.onDidSpliceGroups,this,this.disposables)}onDidSpliceGroups({start:r,deleteCount:l,toInsert:s}){const d=this.resourceGroups.splice(r,l,...s);for(const f of d){const m=this.resourceGroupMenusItems.get(f);m?.dispose(),this.resourceGroupMenusItems.delete(f)}}dispose(){super.dispose(),this.resourceGroupMenusItems.forEach(r=>r.dispose())}getResourceGroupMenu(r){return this.getResourceGroupMenus(r).resourceGroupMenu}getResourceMenu(r){return this.getResourceGroupMenus(r.resourceGroup).getResourceMenu(r)}getResourceFolderMenu(r){return this.getResourceGroupMenus(r).resourceFolderMenu}getResourceGroupMenus(r){let l=this.resourceGroupMenusItems.get(r);if(!l){const s=this.registerDispose(this.scopedContextKeyService.createScoped());s.createKey("scmResourceGroup",r.id),l=this.registerDispose(this.injector.get(E,[s])),this.resourceGroupMenusItems.set(r,l)}return l}get titleMenu(){return this._titleMenu||(this._titleMenu=this.registerDispose(this.menuService.createMenu({id:p.MenuId.SCMTitle,contextKeyService:this.scopedContextKeyService}))),this._titleMenu}get inputMenu(){return this._inputMenu||(this._inputMenu=this.registerDispose(this.menuService.createMenu({id:p.MenuId.SCMInput,contextKeyService:this.scopedContextKeyService}))),this._inputMenu}};n.__decorate([(0,a.Autowired)(p.AbstractContextMenuService),n.__metadata("design:type",p.AbstractContextMenuService)],u.prototype,"menuService",void 0),n.__decorate([(0,a.Autowired)(a.INJECTOR_TOKEN),n.__metadata("design:type",a.Injector)],u.prototype,"injector",void 0),u=n.__decorate([(0,a.Injectable)({multiple:!0}),n.__param(0,(0,a.Optional)()),n.__metadata("design:paramtypes",[Object])],u);let h=class extends b.Disposable{constructor(){super(),this.menus=new Map,this.scmService.onDidRemoveRepository(this.onDidRemoveRepository,this,this.disposables)}onDidRemoveRepository(r){const l=this.menus.get(r.provider);l?.dispose(),this.menus.delete(r.provider)}getRepositoryMenus(r){let l=this.menus.get(r);if(!l){const s=this.injector.get(u,[r]);l={menus:s,dispose:()=>{s.dispose(),this.menus.delete(r)}},this.menus.set(r,l)}return l.menus}};n.__decorate([(0,a.Autowired)(a.INJECTOR_TOKEN),n.__metadata("design:type",a.Injector)],h.prototype,"injector",void 0),n.__decorate([(0,a.Autowired)(g.SCMService),n.__metadata("design:type",g.SCMService)],h.prototype,"scmService",void 0),h=n.__decorate([(0,a.Injectable)(),n.__metadata("design:paramtypes",[])],h),e.SCMMenus=h},49914:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ViewModelContext=e.ResourceGroupSplicer=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(43718),b=t(28423),g=t(64964);class _{constructor(c){this.repository=c,this.items=[],this.disposables=[],this._onDidSplice=new p.Emitter,this.onDidSplice=this._onDidSplice.event}run(){const c=this.repository.provider.groups;c.onDidSplice(this.onDidSpliceGroups,this,this.disposables),this.onDidSpliceGroups({start:0,deleteCount:0,toInsert:c.elements})}onDidSpliceGroups({start:c,deleteCount:r,toInsert:l}){let s=0;for(let y=0;y<c;y++){const S=this.items[y];s+=(S.visible?1:0)+S.group.elements.length}let d=0;for(let y=0;y<r;y++){const S=this.items[c+y];d+=(S.visible?1:0)+S.group.elements.length}const f=[],m=[];for(const y of l){const S=E(y);S&&m.push(y);for(const T of y.elements)m.push(T);const A=(0,p.combinedDisposable)([y.onDidChange(()=>this.onDidChangeGroup(y)),y.onDidSplice(T=>this.onDidSpliceGroup(y,T))]);f.push({group:y,visible:S,disposable:A})}const v=this.items.splice(c,r,...f);for(const y of v)y.disposable.dispose();this._onDidSplice.fire({target:this.repository,index:s,deleteCount:d,elements:m})}onDidChangeGroup(c){const r=this.items.findIndex(f=>f.group===c);if(r<0)return;const l=this.items[r],s=E(c);if(l.visible===s)return;let d=0;for(let f=0;f<r;f++){const m=this.items[f];d+=(m.visible?1:0)+m.group.elements.length}s?this._onDidSplice.fire({target:this.repository,index:d,deleteCount:0,elements:[c,...c.elements]}):this._onDidSplice.fire({target:this.repository,index:d,deleteCount:1+c.elements.length,elements:[]}),l.visible=s}onDidSpliceGroup(c,{start:r,deleteCount:l,toInsert:s}){const d=this.items.findIndex(y=>y.group===c);if(d<0)return;const f=this.items[d],m=E(c);if(!f.visible&&!m)return;let v=r;for(let y=0;y<d;y++){const S=this.items[y];v+=(S.visible?1:0)+S.group.elements.length}f.visible&&!m?this._onDidSplice.fire({target:this.repository,index:v,deleteCount:1+l,elements:s}):!f.visible&&m?this._onDidSplice.fire({target:this.repository,index:v,deleteCount:l,elements:[c,...s]}):this._onDidSplice.fire({target:this.repository,index:v+1,deleteCount:l,elements:s}),f.visible=m}dispose(){this.onDidSpliceGroups({start:0,deleteCount:this.items.length,toInsert:[]}),this.disposables=(0,p.dispose)(this.disposables)}}e.ResourceGroupSplicer=_;function E(h){return h.elements.length>0||!h.hideWhenEmpty}let u=class extends p.Disposable{get onDidSelectedRepoChange(){return this.onDidSelectedRepoChangeEmitter.event}get onAlwaysShowActionsChange(){return this.onAlwaysShowActionsChangeEmitter.event}get menus(){return this._menus}constructor(){super(),this.onDidSelectedRepoChangeEmitter=new p.Emitter,this.onAlwaysShowActionsChangeEmitter=new p.Emitter,this.onDidSCMListChangeEmitter=new p.Emitter,this.onDidSCMListChange=this.onDidSCMListChangeEmitter.event,this.onDidSCMRepoListChangeEmitter=new p.Emitter,this.onDidSCMRepoListChange=this.onDidSCMRepoListChangeEmitter.event,this.repoList=[],this.scmList=new Array,this.selectedRepos=(0,b.observableValue)(this,[]),this.spliceSCMList=(c,r,l,...s)=>{!this._currentWorkspace||this._currentWorkspace.toString()===c.toString()?this.scmList.splice(r,l,...s):this.scmList=[...s],this._currentWorkspace=c,this.onDidSCMListChangeEmitter.fire()},this.start(),this.initTreeAlwaysShowActions(),this.scmService.onDidChangeSelectedRepositories(this._handleSelectedRepoChanged,this,this.disposables),this._handleSelectedRepoChanged(this.scmService.selectedRepositories)}_handleSelectedRepoChanged(c){const[r]=c;r&&(this.toDisposableListener&&(this.toDisposableListener.dispose(),this.toDisposableListener=null),this.toDisposableListener=this.listenToCurrentRepo(r))}listenToCurrentRepo(c){const r=new p.DisposableStore,l=new _(c),s=p.Event.filter(l.onDidSplice,d=>d.target===c);return r.add(s(({index:d,deleteCount:f,elements:m})=>{if(m.some(v=>v.id==="merge")){const v=[],y={};m.forEach(S=>{Array.isArray(S.elements)&&S.elements.forEach(A=>{v.push(A.sourceUri),y[A.sourceUri.toString()]=!0})}),this.commandService.executeCommand("setContext","git.mergeChanges",v),this.commandService.executeCommand("setContext","git.mergeChangesObj",y)}c.provider.rootUri&&this.spliceSCMList(c.provider.rootUri,d,f,...m)})),l.run(),r.add(l),(0,p.toDisposable)(()=>{r.clear()})}initTreeAlwaysShowActions(){this.alwaysShowActions=!!this.preferenceService.get("scm.alwaysShowActions"),this.disposables.push(this.preferenceService.onSpecificPreferenceChange("scm.alwaysShowActions",c=>{this.alwaysShowActions!==c.newValue&&this.updateAlwaysShowActions(c.newValue)}))}start(){this.scmService.onDidAddRepository(c=>{this.addRepo(c)},this,this.disposables),this.scmService.onDidRemoveRepository(c=>{this.deleteRepo(c)},this,this.disposables),this.scmService.onDidChangeSelectedRepositories(c=>{this.changeSelectedRepos(c)},this,this.disposables),this.scmService.repositories.forEach(c=>{this.addRepo(c)})}updateAlwaysShowActions(c){this.alwaysShowActions=c,this.onAlwaysShowActionsChangeEmitter.fire(c)}addRepo(c){if(this.repoList.find(r=>{var l,s;return((l=r.provider.rootUri)===null||l===void 0?void 0:l.toString())===((s=c.provider.rootUri)===null||s===void 0?void 0:s.toString())})){this.logger.warn("duplicate scm repo",c);return}this.repoList.push(c),c.selected&&this.repoList.length===1&&this.changeSelectedRepos([c]),this.onDidSCMRepoListChangeEmitter.fire(this.repoList)}deleteRepo(c){const r=this.repoList.indexOf(c);if(r<0){this.logger.warn("no such scm repo",c);return}this.repoList.splice(r,1),this.onDidSCMRepoListChangeEmitter.fire(this.repoList)}changeSelectedRepos(c){(0,b.transaction)(l=>{this.selectedRepos.set(c,l)});const r=c[0];this.selectedRepo=r,this.onDidSelectedRepoChangeEmitter.fire(r)}};n.__decorate([(0,a.Autowired)(g.SCMService),n.__metadata("design:type",g.SCMService)],u.prototype,"scmService",void 0),n.__decorate([(0,a.Autowired)(g.ISCMMenus),n.__metadata("design:type",Object)],u.prototype,"_menus",void 0),n.__decorate([(0,a.Autowired)(o.PreferenceService),n.__metadata("design:type",Object)],u.prototype,"preferenceService",void 0),n.__decorate([(0,a.Autowired)(p.CommandService),n.__metadata("design:type",Object)],u.prototype,"commandService",void 0),n.__decorate([(0,a.Autowired)(p.ILogger),n.__metadata("design:type",Object)],u.prototype,"logger",void 0),u=n.__decorate([(0,a.Injectable)(),n.__metadata("design:paramtypes",[])],u),e.ViewModelContext=u},73018:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.bindSCMPreference=e.SCMPreferences=e.scmPreferenceSchema=void 0;const n=t(41869),a=t(64964);e.scmPreferenceSchema={id:"scm",order:5,title:(0,n.localize)("scmConfigurationTitle","SCM"),type:"object",properties:{"scm.alwaysShowProviders":{type:"boolean",description:(0,n.localize)("alwaysShowProviders","Controls whether to always show the Source Control Provider section."),default:!1},"scm.providers.visible":{type:"number",description:(0,n.localize)("providersVisible","Controls how many providers are visible in the Source Control Provider section. Set to `0` to be able to manually resize the view."),default:10},"scm.diffDecorations":{type:"string",enum:["all","gutter","overview","none"],default:"all",description:(0,n.localize)("diffDecorations","Controls diff decorations in the editor.")},"scm.alwaysShowDiffWidget":{type:"boolean",description:(0,n.localize)("alwaysShowDiffWidget","Controls whether to always click to show the Dirty Diff Widget."),default:!0},"scm.diffDecorationsGutterWidth":{type:"number",enum:[1,2,3,4,5],default:3,description:(0,n.localize)("diffGutterWidth","Controls the width(px) of diff decorations in gutter (added & modified).")},"scm.alwaysShowActions":{type:"boolean",description:(0,n.localize)("alwaysShowActions","Controls whether inline actions are always visible in the Source Control view."),default:!1},"scm.defaultViewMode":{type:"string",enum:[a.SCMViewModelMode.Tree,a.SCMViewModelMode.List],description:(0,n.localize)("scm.defaultViewMode","Controls the default Source Control repository view mode."),default:a.SCMViewModelMode.List},"scm.listView.compactFolders":{type:"boolean",description:(0,n.localize)("scmListViewCompactFolders","Controls whether the source control view should render folders in a compact form. In such a form, single child folders will be compressed in a combined tree element."),default:!0}}},e.SCMPreferences=Symbol("SCMPreferences");function o(p){p.addProviders({token:e.SCMPreferences,useFactory:b=>{const g=b.get(n.PreferenceService);return(0,n.createPreferenceProxy)(g,e.scmPreferenceSchema)}})}e.bindSCMPreference=o},36367:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.getSCMRepositoryDesc=e.getSCMResourceGroupContextValue=e.isSCMResourceGroup=e.isSCMResource=void 0;const n=t(41869),{basename:a}=n.path;function o(_){return!!_.sourceUri&&p(_.resourceGroup)}e.isSCMResource=o;function p(_){return!!_.provider&&!!_.elements}e.isSCMResourceGroup=p;function b(_){return o(_)?_.resourceGroup.id:_.id}e.getSCMResourceGroupContextValue=b;function g(_){const E=_.provider.rootUri,u=E?a(_.provider.rootUri.path):_.provider.label,h=E?_.provider.label:"";return{title:u,type:h}}e.getSCMRepositoryDesc=g},94556:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMViewContainer=e.SCMProvidersView=e.SCMResourcesViewWrapper=e.SCMResourcesView=void 0;const n=t(85608),a=n.__importStar(t(14041)),o=t(41869),p=t(25918),b=t(1149),g=t(93899),_=t(43718),E=t(70936),u=t(91527),h=t(24429),c=t(64964),r=t(57492),l=t(37751),s=t(24748),d=t(49914),f=t(36367),m=n.__importDefault(t(41373)),v=38,y=38,S=10,A=({repository:w,viewState:I})=>{const O=(0,o.useInjectable)(o.IContextKeyService),M=(0,o.useInjectable)(g.IMenuRegistry),R=(0,o.useInjectable)(d.ViewModelContext),P=(0,a.useRef)(null),L=(0,a.useRef)(),N=(0,a.useRef)({}),[k,B]=(0,a.useState)();(0,a.useEffect)(()=>{P&&P.current&&(N.current.ctx=O.createScoped(P.current))},[]),(0,a.useEffect)(()=>{N.current.ctx&&N.current.ctx.createKey("scmRepository",w),F();const V=w.provider.onDidChange(()=>{F()});return()=>{V.dispose()}},[w]);const F=(0,a.useCallback)(()=>{var V;if((V=L.current)===null||V===void 0||V.dispose(),L.current=new _.DisposableCollection,!!w.provider.actionButton){if(L.current.push(M.registerMenuItem(g.MenuId.SCMInput,{command:{id:w.provider.actionButton.command.id,label:w.provider.actionButton.command.title},extraTailArgs:w.provider.actionButton.command.arguments,group:"navigation",type:"primary",enabledWhen:w.provider.actionButton.enabled?"true":"false"})),Array.isArray(w.provider.actionButton.secondaryCommands))for(let K=0;K<w.provider.actionButton.secondaryCommands.length;K++)for(const H of w.provider.actionButton.secondaryCommands[K])L.current.push(M.registerMenuItem(g.MenuId.SCMInput,{command:{id:H.id,label:H.title},extraTailArgs:H.arguments,group:`${K}_secondary`,enabledWhen:w.provider.actionButton.enabled?"true":"false"}));W()}},[w,L.current]),W=(0,a.useCallback)(()=>{const V=R.menus.getRepositoryMenus(w.provider);V&&B(V.inputMenu)},[w,k]),j=w&&w.provider&&k;return a.default.createElement("div",{className:m.default.view,ref:P},a.default.createElement("div",{className:m.default.scm,style:{paddingTop:S}},a.default.createElement(l.SCMResourceInput,{repository:w,menus:k}),a.default.createElement(s.SCMResourceTree,{height:I.height-v-S-(j?y:0)})))};e.SCMResourcesView=A,e.SCMResourcesView.displayName="SCMResourcesView";const T=w=>{const I=(0,o.useInjectable)(d.ViewModelContext),O=(0,o.useAutorun)(I.selectedRepos);if(!O.length)return a.default.createElement(h.WelcomeView,{viewId:c.SCM_WELCOME_ID});const M=O[0];return!M||!M.provider?null:a.default.createElement(e.SCMResourcesView,{repository:M,viewState:w.viewState})};e.SCMResourcesViewWrapper=T,e.SCMResourcesViewWrapper.displayName="SCMResourcesViewWrapper",e.SCMProvidersView=(0,a.memo)(({viewState:w,repoList:I,selectedRepo:O})=>a.default.createElement("div",{className:m.default.view},I.length>1&&a.default.createElement(r.SCMProviderList,{viewState:w,repositoryList:I,selectedRepository:O}))),e.SCMProvidersView.displayName="SCMProvidersView";const D=w=>{const I=(0,o.useInjectable)(d.ViewModelContext),O=I.selectedRepo,M=(0,o.useInjectable)(b.LayoutViewSizeConfig),[R,P]=(0,a.useState)([]),L=(0,a.useCallback)(()=>{P([...I.repoList])},[R,I]);(0,a.useEffect)(()=>{const j=new _.DisposableCollection;return j.push(I.onDidSCMListChange(L)),j.push(I.onDidSCMRepoListChange(L)),()=>{j.dispose()}},[I]);const N=R.length>1,k=(0,a.useMemo)(()=>R.length===1&&O?`${(0,_.localize)("scm.title")}: ${O.provider.label}`:(0,_.localize)("scm.title"),[R,O]),B=(0,a.useMemo)(()=>{let j=(0,_.localize)("scm.title");if(N&&O){const{title:V,type:K}=(0,f.getSCMRepositoryDesc)(O);j=V+"-"+K}return j},[N,O]),F=(0,a.useMemo)(()=>{if(O)return I.menus.getRepositoryMenus(O?.provider).titleMenu},[O]),W=(0,a.useMemo)(()=>{const j={component:e.SCMProvidersView,id:c.scmProviderViewId,name:(0,_.localize)("scm.provider.title"),initialProps:{viewState:w.viewState,repoList:R,selectedRepo:O},priority:0},V={component:e.SCMResourcesViewWrapper,id:c.scmResourceViewId,name:B,titleMenu:N&&F||void 0,titleMenuContext:O&&O.provider&&[O.provider],priority:1};return(N?[j]:[]).concat(V)},[N,B,O,R]);return a.default.createElement("div",{className:m.default.view},a.default.createElement(u.TitleBar,{title:k,height:M.panelTitleBarHeight,menubar:!N&&F?a.default.createElement(p.InlineMenuBar,{menus:F,context:O&&O.provider&&[O.provider],moreTitle:(0,_.localize)("scm.action.git.more","More Actions")}):null}),a.default.createElement(E.AccordionContainer,{views:W,containerId:c.scmContainerId,style:{height:`calc(100% - ${M.panelTitleBarHeight}px)`}}))};e.SCMViewContainer=D,e.SCMViewContainer.displayName="SCMViewContainer"},75756:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMContribution=e.SCM_ACCEPT_INPUT=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(21634),b=t(68456),g=t(93899),_=t(43718),E=t(98295),u=t(23418),h=t(63067),c=t(64964),r=t(38563),l=t(63451),s=t(71972),d=t(7114),f=t(73018),m=t(94556);e.SCM_ACCEPT_INPUT={id:"scm.acceptInput"};let v=class{constructor(){this.toDispose=new o.Disposable,this.schema=f.scmPreferenceSchema,this.diffChangesIndex=new Map}onStart(){this.viewsRegistry.registerViewWelcomeContent(c.scmResourceViewId,{content:(0,_.localize)("welcome-view.noOpenRepo","No source control providers registered."),when:"default"}),this.extensionsPointService.appendExtensionPoint(["browserViews","properties"],{extensionPoint:c.scmContainerId,frameworkKind:["opensumi"],jsonSchema:Object.assign(Object.assign({},p.browserViews.properties),{description:(0,_.formatLocalize)("sumiContributes.browserViews.location.custom",(0,_.localize)("status-bar.scm"))})})}onDidRender(){[this.statusUpdater,this.statusBarController,this.dirtyDiffWorkbenchController].forEach(S=>{S.start(),this.toDispose.addDispose(S)})}onStop(){this.toDispose.dispose()}registerCommands(S){S.registerCommand(c.OPEN_DIRTY_DIFF_WIDGET,{execute:async A=>{const T=this.editorService.currentEditor;if(T){const D=T.monacoEditor;this.dirtyDiffWorkbenchController.toggleDirtyDiffWidget(D,{lineNumber:A,column:1}),setTimeout(()=>{D.revealLineInCenter(A)},0)}}}),S.registerCommand(c.CLOSE_DIRTY_DIFF_WIDGET,{execute:async()=>{const A=this.editorService.currentEditor;if(A){const T=A.monacoEditor;this.dirtyDiffWorkbenchController.closeDirtyDiffWidget(T)}}}),S.registerCommand(c.GOTO_PREVIOUS_CHANGE,{execute:()=>{var A;const T=this.editorService.currentEditor;if(T&&T.currentUri){const D=this.getDiffChangeLineNumber(T.currentUri,T,"previous");T.monacoEditor.focus();const w=(A=T.monacoEditor.getPosition())===null||A===void 0?void 0:A.with(D,0);T.monacoEditor.setPosition(w),T.monacoEditor.revealLineInCenter(D)}}}),S.registerCommand(c.GOTO_NEXT_CHANGE,{execute:()=>{var A;const T=this.editorService.currentEditor;if(T&&T.currentUri){const D=this.getDiffChangeLineNumber(T.currentUri,T,"next");T.monacoEditor.focus();const w=(A=T.monacoEditor.getPosition())===null||A===void 0?void 0:A.with(D,0);T.monacoEditor.setPosition(w),T.monacoEditor.revealLineInCenter(D)}}}),S.registerCommand(c.TOGGLE_DIFF_SIDE_BY_SIDE,{execute:()=>{const A=!this.preferenceService.get("diffEditor.renderSideBySide");this.preferenceService.set("diffEditor.renderSideBySide",A,_.PreferenceScope.User)}}),S.registerCommand(c.SET_SCM_TREE_VIEW_MODE,{execute:()=>{this.scmTreeService.changeTreeMode(!0)}}),S.registerCommand(c.SET_SCM_LIST_VIEW_MODE,{execute:()=>{this.scmTreeService.changeTreeMode(!1)}}),S.registerCommand(o.SCM_COMMANDS.GetSCMResource,{execute:async A=>this.scmTreeAPI.getSCMResource(A)})}registerComponent(S){S.register("@opensumi/ide-scm",[],{iconClass:(0,o.getIcon)("scm"),title:(0,_.localize)("scm.title"),priority:8,containerId:c.scmContainerId,component:m.SCMViewContainer,activateKeyBinding:"ctrlcmd+shift+g"})}registerMenus(S){S.registerMenuItem(g.MenuId.EditorTitle,{command:{id:c.GOTO_PREVIOUS_CHANGE.id,label:(0,_.localize)("scm.diff.change.previous")},when:"isInDiffEditor",iconClass:(0,o.getIcon)("arrowup"),group:"navigation"}),S.registerMenuItem(g.MenuId.EditorTitle,{command:{id:c.GOTO_NEXT_CHANGE.id,label:(0,_.localize)("scm.diff.change.next")},iconClass:(0,o.getIcon)("arrowdown"),when:"isInDiffEditor",group:"navigation"}),S.registerMenuItem(g.MenuId.EditorTitle,{command:{id:c.TOGGLE_DIFF_SIDE_BY_SIDE.id,label:(0,_.localize)("scm.diff.toggle.renderSideBySide")},when:"isInDiffEditor",group:"1_internal"}),S.registerMenuItem(g.MenuId.SCMTitle,{command:{id:c.SET_SCM_TREE_VIEW_MODE.id,label:(0,_.localize)("setTreeViewMode","View as Tree")},iconClass:(0,o.getExternalIcon)("list-tree"),when:`config.scm.defaultViewMode == ${c.SCMViewModelMode.List}`,group:"navigation",order:-1}),S.registerMenuItem(g.MenuId.SCMTitle,{command:{id:c.SET_SCM_LIST_VIEW_MODE.id,label:(0,_.localize)("setListViewMode","View as List")},iconClass:(0,o.getExternalIcon)("list-flat"),when:`config.scm.defaultViewMode == ${c.SCMViewModelMode.Tree}`,group:"navigation",order:-1})}getDiffChangesIndex(S,A){return this.diffChangesIndex.has(S)||(A.onDispose(()=>{this.diffChangesIndex.delete(S)}),this.diffChangesIndex.set(S,0)),this.diffChangesIndex.get(S)}getDiffEditor(S){const A=S.getId(),[T]=this.editorCollectionService.listDiffEditors().filter(D=>D.modifiedEditor.getId()===A||D.originalEditor.getId()===A);return T}getDiffChangeLineNumber(S,A,T){const D=this.getDiffChangesIndex(S,A),I=this.getDiffEditor(A).getLineChanges()||[];if(!I||I.length===0)return 0;let O=0;return T==="previous"?O=D-1<0?I.length-1:D-1:O=D>=I.length-1?0:D+1,this.diffChangesIndex.set(S,O),I[O][2]}};n.__decorate([(0,a.Autowired)(d.SCMBadgeController),n.__metadata("design:type",d.SCMBadgeController)],v.prototype,"statusUpdater",void 0),n.__decorate([(0,a.Autowired)(d.SCMStatusBarController),n.__metadata("design:type",d.SCMStatusBarController)],v.prototype,"statusBarController",void 0),n.__decorate([(0,a.Autowired)(u.WorkbenchEditorService),n.__metadata("design:type",u.WorkbenchEditorService)],v.prototype,"editorService",void 0),n.__decorate([(0,a.Autowired)(c.IDirtyDiffWorkbenchController),n.__metadata("design:type",s.DirtyDiffWorkbenchController)],v.prototype,"dirtyDiffWorkbenchController",void 0),n.__decorate([(0,a.Autowired)(u.EditorCollectionService),n.__metadata("design:type",u.EditorCollectionService)],v.prototype,"editorCollectionService",void 0),n.__decorate([(0,a.Autowired)(h.IMainLayoutService),n.__metadata("design:type",Object)],v.prototype,"mainlayoutService",void 0),n.__decorate([(0,a.Autowired)(o.PreferenceService),n.__metadata("design:type",Object)],v.prototype,"preferenceService",void 0),n.__decorate([(0,a.Autowired)(),n.__metadata("design:type",l.SCMTreeService)],v.prototype,"scmTreeService",void 0),n.__decorate([(0,a.Autowired)(),n.__metadata("design:type",r.SCMTreeAPI)],v.prototype,"scmTreeAPI",void 0),n.__decorate([(0,a.Autowired)(h.IViewsRegistry),n.__metadata("design:type",Object)],v.prototype,"viewsRegistry",void 0),n.__decorate([(0,a.Autowired)(_.IExtensionsSchemaService),n.__metadata("design:type",Object)],v.prototype,"extensionsPointService",void 0),v=n.__decorate([(0,E.Domain)(o.ClientAppContribution,_.CommandContribution,b.ComponentContribution,o.PreferenceContribution,h.MainLayoutContribution,g.MenuContribution)],v),e.SCMContribution=v},49814:(x,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.GOTO_PREVIOUS_CHANGE=e.GOTO_NEXT_CHANGE=e.CLOSE_DIRTY_DIFF_WIDGET=e.OPEN_DIRTY_DIFF_WIDGET=e.IDirtyDiffWorkbenchController=void 0,e.IDirtyDiffWorkbenchController=Symbol("DirtyDiffWorkbenchController"),e.OPEN_DIRTY_DIFF_WIDGET={id:"OPEN_DIRTY_DIFF_WIDGET"},e.CLOSE_DIRTY_DIFF_WIDGET={id:"CLOSE_DIRTY_DIFF_WIDGET"},e.GOTO_NEXT_CHANGE={id:"workbench.action.compareEditor.nextChange"},e.GOTO_PREVIOUS_CHANGE={id:"workbench.action.compareEditor.previousChange"}},64964:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ViewModelSortKey=e.SCMViewModelMode=e.SET_SCM_LIST_VIEW_MODE=e.SET_SCM_TREE_VIEW_MODE=e.TOGGLE_DIFF_SIDE_BY_SIDE=e.scmItemLineHeight=e.SCM_WELCOME_ID=e.scmResourceViewId=e.scmProviderViewId=e.scmContainerId=void 0;const n=t(85608),a=t(30144);e.scmContainerId=a.SCM_CONTAINER_ID,e.scmProviderViewId="scm_provider",e.scmResourceViewId="scm_view",e.SCM_WELCOME_ID="scm-welcome",e.scmItemLineHeight=22,e.TOGGLE_DIFF_SIDE_BY_SIDE={id:"toggle.diff.renderSideBySide"},e.SET_SCM_TREE_VIEW_MODE={id:"workbench.scm.action.setTreeViewMode"},e.SET_SCM_LIST_VIEW_MODE={id:"workbench.scm.action.setListViewMode"};var o;(function(b){b.List="list",b.Tree="tree"})(o=e.SCMViewModelMode||(e.SCMViewModelMode={}));var p;(function(b){b.Path="path",b.Name="name",b.Status="status"})(p=e.ViewModelSortKey||(e.ViewModelSortKey={})),n.__exportStar(t(49697),e),n.__exportStar(t(66224),e),n.__exportStar(t(95588),e),n.__exportStar(t(49814),e),n.__exportStar(t(480),e)},480:(x,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0})},95588:(x,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ISCMMenus=void 0,e.ISCMMenus=Symbol("ISCMMenus")},49697:(x,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ISCMService=void 0;class t{}e.ISCMService=t},66224:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SCMService=void 0;const n=t(85608),a=t(76003),o=t(43718),{equals:p}=o.arrays;class b{constructor(){this._disposables=new o.DisposableStore,this._value="",this._onDidChange=this._disposables.add(new o.Emitter),this.onDidChange=this._onDidChange.event,this._placeholder="",this._onDidChangePlaceholder=this._disposables.add(new o.Emitter),this.onDidChangePlaceholder=this._onDidChangePlaceholder.event,this._visible=!0,this._props={},this._onDidChangeProps=this._disposables.add(new o.Emitter),this.onDidChangeProps=this._onDidChangeProps.event,this._onDidChangeVisibility=this._disposables.add(new o.Emitter),this.onDidChangeVisibility=this._onDidChangeVisibility.event,this._enabled=!0,this._onDidChangeEnablement=this._disposables.add(new o.Emitter),this.onDidChangeEnablement=this._onDidChangeEnablement.event,this._validateInput=()=>Promise.resolve(void 0),this._onDidChangeValidateInput=this._disposables.add(new o.Emitter),this.onDidChangeValidateInput=this._onDidChangeValidateInput.event,this._onDidChangeActionButton=this._disposables.add(new o.Emitter),this.onDidChangeActionButton=this._onDidChangeActionButton.event}get value(){return this._value}set value(u){this._value=u,this._onDidChange.fire(u)}get placeholder(){return this._placeholder}set placeholder(u){this._placeholder=u,this._onDidChangePlaceholder.fire(u)}get visible(){return this._visible}set visible(u){this._visible=u,this._onDidChangeVisibility.fire(u)}get props(){return this._props}set props(u){this._props=u,this._onDidChangeProps.fire(this._props)}appendProps(u){this._props=Object.assign(Object.assign({},this._props),u),this._onDidChangeProps.fire(this._props)}get enabled(){return this._enabled}set enabled(u){this._enabled=u,this._onDidChangeEnablement.fire(u)}get validateInput(){return this._validateInput}set validateInput(u){this._validateInput=u,this._onDidChangeValidateInput.fire()}get actionButton(){return this._actionButton}set actionButton(u){this._actionButton=u,this._onDidChangeActionButton.fire()}dispose(){this._disposables.dispose()}}class g{get selected(){return this._selected}constructor(u,h){this.provider=u,this.disposable=h,this._disposables=new o.DisposableStore,this._onDidFocus=this._disposables.add(new o.Emitter),this.onDidFocus=this._onDidFocus.event,this._selected=!1,this._onDidChangeSelection=this._disposables.add(new o.Emitter),this.onDidChangeSelection=this._onDidChangeSelection.event,this.input=new b}focus(){this._onDidFocus.fire()}setSelected(u){this._selected=u,this._onDidChangeSelection.fire(this)}dispose(){this._disposables.dispose(),this.disposable.dispose(),this.provider.dispose(),this.input.dispose()}}let _=class{constructor(){this._disposables=new o.DisposableStore,this._selectedRepositories=[],this._providerIds=new Set,this._repositories=[],this._onDidChangeSelectedRepositories=this._disposables.add(new o.Emitter),this.onDidChangeSelectedRepositories=this._onDidChangeSelectedRepositories.event,this._onDidAddProvider=this._disposables.add(new o.Emitter),this.onDidAddRepository=this._onDidAddProvider.event,this._onDidRemoveProvider=this._disposables.add(new o.Emitter),this.onDidRemoveRepository=this._onDidRemoveProvider.event,this.logger=(0,o.getDebugLogger)()}get selectedRepositories(){return[...this._selectedRepositories]}get repositories(){return[...this._repositories]}registerSCMProvider(u){if(this.logger.log("SCMService#registerSCMProvider"),this._providerIds.has(u.id))throw new Error(`SCM Provider ${u.id} already exists.`);this._providerIds.add(u.id);const h=(0,o.toDisposable)(()=>{const l=this._repositories.indexOf(c);l<0||(r.dispose(),this._providerIds.delete(u.id),this._repositories.splice(l,1),this._onDidRemoveProvider.fire(c),c.selected&&this._repositories.length>0&&this._repositories[0].setSelected(!0))}),c=new g(u,h),r=o.Event.filter(c.onDidChangeSelection,l=>l.selected)(this.onDidChangeSelection,this);return this._repositories.push(c),this._onDidAddProvider.fire(c),this._repositories.length===1&&c.setSelected(!0),c}setInputProps(u){this._repositories.forEach(h=>{h.input.props=u})}appendInputProps(u){this._repositories.forEach(h=>{h.input.appendProps(u)})}onDidChangeSelection(u){p(this._selectedRepositories,[u])||(this._repositories.filter(h=>h!==u).forEach(h=>{h.setSelected(!1)}),this._selectedRepositories=this._repositories.filter(h=>h.selected),this._onDidChangeSelectedRepositories.fire(this.selectedRepositories))}dispose(){this._disposables.dispose()}};_=n.__decorate([(0,a.Injectable)()],_),e.SCMService=_},61656:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),t(85608).__exportStar(t(64964),e)},6556:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SearchModule=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(52925),b=t(50845),g=t(33301),_=t(86952),E=t(51495),u=t(5439);let h=class extends o.BrowserModule{constructor(){super(...arguments),this.providers=[{token:b.SearchContextKey,useClass:b.SearchContextKey},{token:p.IContentSearchClientService,useClass:E.ContentSearchClientService},{token:p.ISearchTreeService,useClass:u.SearchTreeService},_.SearchContribution],this.backServices=[{servicePath:p.ContentSearchServerPath,clientToken:p.IContentSearchClientService}],this.preferences=g.bindSearchPreference}};h=n.__decorate([(0,a.Injectable)()],h),e.SearchModule=h},3956:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.replace=e.getSelection=e.replaceAll=void 0;const n=t(85608),a=t(41869),o=t(43718),p=n.__importStar(t(20868));async function b(E,u,h,c,r,l,s,d,f){if(h.size<1)return!1;const m=Object.assign({},f);if(s&&m){const v={[(0,a.localize)("search.replace.buttonCancel")]:!1,[(0,a.localize)("search.replace.buttonOK")]:!0},y=await s.open({message:(0,o.formatLocalize)("search.removeAll.occurrences.files.confirmation.message",String(m.resultNum),String(m.fileNum),c),type:o.MessageType.Warning,buttons:Object.keys(v)});if(!v[y])return v[y]}for(const v of h){const y=v[1];await _(E,u,y,c,r,l)}return d&&m&&d.info((0,o.formatLocalize)("search.replaceAll.occurrencesMessage",String(m.resultNum),String(m.fileNum),c)),!0}e.replaceAll=b;function g(E){return[new p.Selection(E.line,E.matchStart,E.line,E.matchStart+E.matchLength)]}e.getSelection=g;async function _(E,u,h,c,r,l){var s;const d=h.map(m=>E.getModelReference(new o.URI(m.fileUri))).filter(m=>m?.instance&&!m.instance.dirty),f=[];for(const m of h){let v=c;if(l&&c){let y;try{y=new RegExp(r)}catch{continue}const S=(s=m.renderLineText)===null||s===void 0?void 0:s.slice(m.matchStart-1,m.matchStart+m.matchLength-1);S&&(v=S.replace(y,c))}f.push({options:{dirtyIfInEditor:!0},resource:new o.URI(m.fileUri),textEdit:{range:new p.Range(m.line,m.matchStart,m.line,m.matchStart+m.matchLength),text:v}})}await u.apply({edits:f}),await Promise.all(d.map(async m=>{await m?.instance.save(),m?.dispose()}))}e.replace=_},50845:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SearchContextKey=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(67386);let b=class{initScopedContext(_){this._contextKeyService=this.globalContextkeyService.createScoped(_),this.searchViewFocusedKey=p.SearchViewFocusedKey.bind(this._contextKeyService),this.searchInputBoxFocusedKey=p.SearchInputBoxFocusedKey.bind(this._contextKeyService),this.hasSearchResults=p.HasSearchResults.bind(this._contextKeyService),this.searchViewVisibleKey=p.SearchViewVisibleKey.bind(this._contextKeyService)}get service(){return this._contextKeyService}};n.__decorate([(0,a.Autowired)(o.IContextKeyService),n.__metadata("design:type",Object)],b.prototype,"globalContextkeyService",void 0),b=n.__decorate([(0,a.Injectable)()],b),e.SearchContextKey=b},96895:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SearchHistory=e.SEARCH_WORD_SCOPE=void 0;const n=t(41869);e.SEARCH_WORD_SCOPE="SEARCH_WORD";class a{constructor(p,b){this.searchHistoryList=[],this.currentIndex=-1,this.searchServiceClient=p,this.recentStorage=b}setRecentSearchWord(){this.currentIndex===-1&&(this.currentIndex=this.searchHistoryList.length),this.currentIndex=this.currentIndex-1;let p=this.searchHistoryList[this.currentIndex];if(this.currentIndex<0)return this.currentIndex=0,p=this.searchHistoryList[this.currentIndex],this.setSearchValue(p);if(p){if(this.searchServiceClient.searchValue===p)return this.setRecentSearchWord();this.setSearchValue(p)}}setBackRecentSearchWord(){this.currentIndex=this.currentIndex+1;let p=this.searchHistoryList[this.currentIndex];if(this.currentIndex>=this.searchHistoryList.length)return this.currentIndex=this.searchHistoryList.length-1,p=this.searchHistoryList[this.currentIndex],this.setSearchValue(p);if(p){if(this.searchServiceClient.searchValue===p)return this.setBackRecentSearchWord();this.setSearchValue(p)}}async initSearchHistory(){if(this.searchHistoryList.length>0)return;const p=await this.getMostRecentlySearchWord();this.searchHistoryList=this.searchHistoryList.concat(p||[])}async setSearchHistory(p){this.searchHistoryList.some(b=>b===p)||(this.searchHistoryList.push(p),await this.setMostRecentlySearchWord(p))}async getMostRecentlySearchWord(){return await(await this.recentStorage.getScopeStorage()).get(e.SEARCH_WORD_SCOPE)||[]}async setMostRecentlySearchWord(p){const b=await this.recentStorage.getScopeStorage();let g=[];const _=await this.getMostRecentlySearchWord()||[];(0,n.isArray)(p)?g=g.concat(p):g.push(p),g=_.concat(g),g=Array.from(new Set(g)),g=g.slice(g.length-10,g.length),b.set(e.SEARCH_WORD_SCOPE,g)}setSearchValue(p){this.searchServiceClient.searchValue=p,this.searchServiceClient.searchDebounce()}reset(){this.currentIndex=-1}}e.SearchHistory=a},33301:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.bindSearchPreference=e.createSearchPreferencesProvider=e.SearchPreferences=e.searchPreferenceSchema=void 0;const n=t(41869);e.searchPreferenceSchema={id:"search",order:5,title:(0,n.localize)("Search","\u641C\u7D22"),type:"object",properties:{"search.exclude":{type:"object",markdownDescription:"%preference.search.exclude%",default:{"**/node_modules":!0,"**/bower_components":!0,"**/.git":!0,"**/.svn":!0,"**/.hg":!0,"**/CVS":!0,"**/.DS_Store":!0,"**/Thumbs.db":!0}},"search.include":{type:"object",description:"%preference.search.include%",default:{}},"search.useReplacePreview":{type:"boolean",description:"%preference.search.useReplacePreview%",default:!0},"search.searchOnType":{type:"boolean",description:"%preference.search.searchOnType%",default:!0},"search.searchOnTypeDebouncePeriod":{type:"number",description:"%preference.search.searchOnTypeDebouncePeriod%",default:300}}},e.SearchPreferences=Symbol("SearchPreferences");const a=p=>({token:e.SearchPreferences,useFactory:()=>{const b=p.get(n.PreferenceService);return(0,n.createPreferenceProxy)(b,e.searchPreferenceSchema)}});e.createSearchPreferencesProvider=a;function o(p){p.addProviders((0,e.createSearchPreferencesProvider)(p))}e.bindSearchPreference=o},9767:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SearchResultCollection=void 0;const n=t(52925);class a{constructor(){this.list=[],this.maxLength=5}pushAndGetResultList(p){const{id:b,data:g,searchState:_}=p,E=[];if(_===n.SEARCH_STATE.error||_===n.SEARCH_STATE.done){const u=this.getTempResult();return u&&E.push(u),E.push(p),E}if(g.length<1)return E.push(p),E;if(this.list.length>0)if(b===this.list[0].id)this.pushTempResult(p);else{const u=this.getTempResult();u&&E.push(u),this.pushTempResult(p)}else this.pushTempResult(p);return this.list.length>=this.maxLength&&E.push(this.getTempResult()),E}getTempResult(){let p;return this.list.length<1||(this.list.forEach((b,g)=>{g!==0&&(this.list[0].data=this.list[0].data.concat(b.data))}),p=this.list[0],this.list=[]),p}pushTempResult(p){this.list.push(p)}}e.SearchResultCollection=a},86952:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SearchContribution=void 0;const n=t(85608),a=t(76003),o=t(41869),p=t(30144),b=t(67386),g=t(68456),_=t(93899),E=t(43718),u=t(98295),h=t(57517),c=t(63067),r=t(17793),l=t(72665),s=t(26199),d=t(52925),f=t(3956),m=t(33301),v=t(14851),y=t(5439),S=t(13072),A=t(86109);let T=class{constructor(){this.schema=m.searchPreferenceSchema,this.toDispose=new E.DisposableCollection}registerCommands(w){w.registerCommand(o.SEARCH_COMMANDS.OPEN_SEARCH,{execute:I=>{const O=this.mainLayoutService.getTabbarHandler(p.SEARCH_CONTAINER_ID);if(O){if(O.activate(),I&&I.includeValue){this.searchBrowserService.includeValue=I.includeValue,this.searchBrowserService.updateUIState({isDetailOpen:!0}),this.searchBrowserService.search();return}this.searchBrowserService.searchEditorSelection(),this.searchBrowserService.focus(),this.searchBrowserService.search()}}}),w.registerCommand(o.SEARCH_COMMANDS.REFRESH,{execute:()=>{this.searchBrowserService.search()}}),w.registerCommand(o.SEARCH_COMMANDS.CLEAN,{execute:()=>{this.searchBrowserService.clean()}}),w.registerCommand(o.SEARCH_COMMANDS.GET_RECENT_SEARCH_WORD,{execute:I=>{this.searchBrowserService.setRecentSearchWord()}}),w.registerCommand(o.SEARCH_COMMANDS.GET_BACK_RECENT_SEARCH_WORD,{execute:()=>{this.searchBrowserService.setBackRecentSearchWord()}}),w.registerCommand(o.SEARCH_COMMANDS.MENU_REPLACE,{execute:async I=>{if(!A.SearchFileNode.is(I)){const O=new Map;O.set(I.resource.toString(),[I.contentResult]),await(0,f.replaceAll)(this.documentModelManager,this.workspaceEditService,O,this.searchBrowserService.replaceValue,this.searchBrowserService.searchValue,this.searchBrowserService.UIState.isUseRegexp)}},isVisible:()=>!A.SearchFileNode.is(this.searchModelService.contextMenuNode)}),w.registerCommand(o.SEARCH_COMMANDS.MENU_REPLACE_ALL,{execute:async I=>{if(!A.SearchFileNode.is(I))return;const O=new Map;if(!I.children)return;const M=I.children.map(L=>L.contentResult),R={[(0,o.localize)("search.replace.buttonCancel")]:!1,[(0,o.localize)("search.replace.buttonOK")]:!0},P=await this.dialogService.open({message:(0,E.formatLocalize)("search.removeAll.occurrences.file.confirmation.message",String(M.length)),type:E.MessageType.Warning,buttons:Object.keys(R)});if(P&&!R[P])return R[P];O.set(I.resource.toString(),M),await(0,f.replaceAll)(this.documentModelManager,this.workspaceEditService,O,this.searchBrowserService.replaceValue,this.searchBrowserService.searchValue,this.searchBrowserService.UIState.isUseRegexp)},isVisible:()=>!A.SearchFileNode.is(this.searchModelService.contextMenuNode)}),w.registerCommand(o.SEARCH_COMMANDS.MENU_HIDE,{execute:I=>{var O,M;A.SearchFileNode.is(I)?(this.searchBrowserService.resultTotal.fileNum-=1,this.searchBrowserService.resultTotal.resultNum-=I.branchSize,this.searchModelService.treeModel.root.unlinkItem(I)):(this.searchBrowserService.resultTotal.resultNum-=1,((M=(O=I.parent)===null||O===void 0?void 0:O.children)===null||M===void 0?void 0:M.length)===1&&(this.searchBrowserService.resultTotal.fileNum-=1,this.searchModelService.treeModel.root.unlinkItem(I.parent)),I.parent.unlinkItem(I)),this.searchBrowserService.fireTitleChange()}}),w.registerCommand(o.SEARCH_COMMANDS.MENU_COPY,{execute:I=>{var O;if(A.SearchFileNode.is(I)){let R=`${I.resource.codeUri.fsPath.toString()}
28544
28544
  `;(O=I.children)===null||O===void 0||O.forEach(P=>{const L=P.contentResult;R=R+`${L.line},${L.matchStart}: ${L.renderLineText}
28545
28545
  `}),this.clipboardService.writeText(R)}else{const M=I.contentResult;this.clipboardService.writeText(`${M.line},${M.matchStart}: ${M.renderLineText}`)}}}),w.registerCommand(o.SEARCH_COMMANDS.MENU_COPY_ALL,{execute:I=>{var O;let M;if(I?A.SearchFileNode.is(I)?M=[I]:M=[I.parent]:M=this.searchModelService.treeModel.root.children,!M)return;let R="";for(let P=0,L=M.length;P<L;P++){let k=`${M[P].resource.codeUri.fsPath.toString()}
28546
28546
  `;(O=M[P].children)===null||O===void 0||O.forEach(B=>{const F=B.contentResult;k=k+`${F.line},${F.matchStart}: ${F.renderLineText}