@opensumi/cli-engine 3.5.1-next-1732758444.0 → 3.6.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.
- package/lib/browser/browser.js +1 -1
- package/package.json +10 -10
package/lib/browser/browser.js
CHANGED
|
@@ -28581,7 +28581,7 @@ ${(0,o.formatLocalize)("terminal.integrated.exitedWithCode",r)}`),!((l=this.pres
|
|
|
28581
28581
|
`)}warn(a){this._validationStatus.state=2,this._outputChannel.append(a+`
|
|
28582
28582
|
`)}error(a){this._validationStatus.state=3,this._outputChannel.append(a+`
|
|
28583
28583
|
`)}fatal(a){this._validationStatus.state=4,this._outputChannel.append(a+`
|
|
28584
|
-
`)}get status(){return this._validationStatus}}let r=class extends o.Disposable{constructor(){super(),this._onDidStateChange=new f.Emitter,this.onDidStateChange=this._onDidStateChange.event,this._onDidRegisterTaskProvider=new f.Emitter,this.onDidRegisterTaskProvider=this._onDidRegisterTaskProvider.event,this.providerHandler=0,this.runningTasks=new Map,this.toQuickOpenItem=a=>{var d;return new o.QuickOpenItem({label:a._label||"",detail:a instanceof E.ContributedTask?`${a.command.name||""} ${a.command.args?(d=a.command.args)===null||d===void 0?void 0:d.join(" "):""}`:void 0,run:m=>m===o.Mode.OPEN?(this.runTask(a),!0):!1})},this.providers=new Map,this.providerTypes=new Map,this.addDispose([this.taskSystem.onDidStateChange(a=>this._onDidStateChange.fire(a)),this.taskSystem.onDidBackgroundTaskBegin(a=>this._onDidStateChange.fire(a)),this.taskSystem.onDidBackgroundTaskEnded(a=>this._onDidStateChange.fire(a)),this.taskSystem.onDidProblemMatched(a=>this._onDidStateChange.fire(a))])}get outputChannel(){return this._outputChannel||(this._outputChannel=this.outputService.getChannel((0,o.localize)("task.outputchannel.name"))),this._outputChannel}get workspaceFolders(){return this._workspaceFolders||this.tryGetWorkspaceFolders(),this._workspaceFolders}tryGetWorkspaceFolders(){this._workspaceFolders=this.workspaceService.tryGetRoots().map(a=>o.Uri.parse(a.uri))}async runTaskCommand(){const a=await this.getGroupedTasks(),d=await this.getWorkspaceTasks(a),[m,p]=this.combineQuickItems(a,d);this.quickOpenService.open({onType:(v,y)=>y([...m,...p])},{placeholder:(0,o.formatLocalize)("TaskService.pickRunTask")})}run(a){return this.runTask(a)}async attach(a,d){if(this.runningTasks.has(a))return;const[,,,m]=a.split(",");if(m)if(this.providerTypes.has(m)){const p=await this.getTask(this.workspaceFolders[0],a);p&&(this.taskSystem.attach(p,d),this.runningTasks.set(a,p))}else{const p=this._onDidRegisterTaskProvider.event(async v=>{if(v===m){const y=await this.getTask(this.workspaceFolders[0],a);y&&(this.taskSystem.attach(y,d),this.runningTasks.set(a,y),p.dispose())}})}}async terminateTask(a){const d=this.taskSystem.getActiveTasks();for(const m of d)m._id===a&&await this.taskSystem.terminate(m)}getTask(a,d,m=!1){const p=(0,o.isString)(d)?d:this.taskDefinitionRegistry.createTaskIdentifier(d,console);return p===void 0?Promise.resolve(void 0):this.getWorkspaceGroupedTasks(a).then(v=>{if(!v)return Promise.resolve(void 0);const y=v.get(a.toString());if(!y)return Promise.resolve(void 0);for(const S of y)if(S.matches(p,m)||S._id===d||S._label===d)return S})}async runTask(a){const d=await this.taskSystem.run(a);return d.promise.then(m=>{this.runningTasks.has(a._id)&&this.runningTasks.delete(a._id),this.outputChannel.appendLine(`Task ${a._label} done, exit code ${m.exitCode}`)}),this.runningTasks.set(a._id,a),Promise.resolve(d.promise)}async tasks(a){var d;const m=await this.getWorkspaceGroupedTasks(),p=[];for(const v of m.values())for(const y of v)a&&a.type&&((d=y.getDefinition())===null||d===void 0?void 0:d.type)===a.type&&p.push(y);return p}async getWorkspaceGroupedTasks(a=this.workspaceFolders[0]){const d=await this.getGroupedTasks(),m=await this.getWorkspaceTasks(d),p=[];for(const S of d)S.tasks&&S.tasks.length>0&&p.push(...S.tasks);const v=m?.get(a.toString());v&&v.set&&p.push(...v.set.tasks);const y=new Map;return y.set(a.toString(),p),y}async getGroupedTasks(){const a={};for(const m of this.taskDefinitionRegistry.all())a[m.taskType]=!0;a.shell=!0,a.process=!0;const d=[];for(const[,m]of this.providers){const p=await m.provideTasks(a);d.push(p)}return d}toQuickOpenGroupItem(a,d,m){return new o.QuickOpenItem({groupLabel:a?(0,o.formatLocalize)("task.contribute"):void 0,run:d,showBorder:a,label:m,value:{type:m,grouped:!0},iconClass:(0,o.getIcon)("folder")})}combineQuickItems(a,d){var m,p;const v=[],y=[];let S=!0;for(const A of a){const T=w=>w===o.Mode.OPEN?(this.quickOpenService.open({onType:(I,R)=>A.tasks.length===0?R([new o.QuickOpenItem({value:"none",label:(0,o.formatLocalize)("task.cannotFindTask",A.type),run:M=>M===o.Mode.OPEN})]):R(A.tasks.map(this.toQuickOpenItem))}),!1):!0,D=this.toQuickOpenGroupItem(S,T,A.type);v.push(D),S=!1}if(d){for(const A of d.values())if(!((m=A.configurations)===null||m===void 0)&&m.byIdentifier&&Object.keys((p=A.configurations)===null||p===void 0?void 0:p.byIdentifier).forEach(T=>{var D;const w=(D=A.configurations)===null||D===void 0?void 0:D.byIdentifier[T];y.push(this.toQuickOpenItem(w))}),A.set&&A.set.tasks.length>0)for(const T of A.set.tasks)y.push(this.toQuickOpenItem(T))}return[y,v]}async getWorkspaceTasks(a){return this.updateWorkspaceTasks(a)}updateWorkspaceTasks(a){return this.workspaceFolders.length===0?Promise.resolve(new Map):this.workspaceFolders.length===1?this.computeWorkspaceFolderTasks(this.workspaceFolders[0],a).then(d=>{const m=new Map;return m.set(this.workspaceFolders[0].toString(),d),m}):Promise.resolve(void 0)}computeWorkspaceFolderTasks(a,d){return new Promise(async m=>{const p=this.preferences.get("tasks"),v=new Map;for(const y of d)for(const S of y.tasks)E.ContributedTask.is(S)&&v.set(S.defines._key,S);if(p&&p.tasks){let y;const S=[];let A=!1;const T=new c(this.outputChannel),D=(0,h.parse)({uri:a,name:a.path,index:0},f.platform,p,T,this.taskDefinitionRegistry,this.problemMatcher,this.problemPattern);if(D.validationStatus.isOK()||(A=!0,this.showOutput()),D.configured&&D.configured.length>0){y={byIdentifier:Object.create(null)};for(const w of D.configured)y.byIdentifier[w.configures._key]=w}S.push(...D.custom),y&&y.byIdentifier&&Object.keys(y.byIdentifier).forEach(w=>{if(v.has(w)){const I=(0,h.createCustomTask)(v.get(w),y.byIdentifier[w]);y.byIdentifier[w]=I}}),m({workspaceFolder:{uri:a,name:a.path,index:0},set:{tasks:S},configurations:y,hasErrors:A})}else m({workspaceFolder:{uri:a,name:a.path,index:0},set:{tasks:[]},configurations:{byIdentifier:{}},hasErrors:!1})})}showOutput(){this.outputChannel.appendLine("There are task errors. See the output for details.")}rerunLastTask(){return this.taskSystem.rerun()}registerTaskProvider(a,d){const m=this.providerHandler+=1;return this.providers.set(m,a),this.providerTypes.set(d,m),this._onDidRegisterTaskProvider.fire(d),{dispose:()=>{this.providers.delete(m),this.providerTypes.delete(d)}}}};e.TaskService=r,n.__decorate([(0,s.Autowired)(b.OutputService),n.__metadata("design:type",b.OutputService)],r.prototype,"outputService",void 0),n.__decorate([(0,s.Autowired)(g.IWorkspaceService),n.__metadata("design:type",Object)],r.prototype,"workspaceService",void 0),n.__decorate([(0,s.Autowired)(o.QuickOpenService),n.__metadata("design:type",Object)],r.prototype,"quickOpenService",void 0),n.__decorate([(0,s.Autowired)(o.PreferenceService),n.__metadata("design:type",Object)],r.prototype,"preferences",void 0),n.__decorate([(0,s.Autowired)(_.ITaskSystem),n.__metadata("design:type",Object)],r.prototype,"taskSystem",void 0),n.__decorate([(0,s.Autowired)(f.ITaskDefinitionRegistry),n.__metadata("design:type",Object)],r.prototype,"taskDefinitionRegistry",void 0),n.__decorate([(0,s.Autowired)(f.IProblemMatcherRegistry),n.__metadata("design:type",Object)],r.prototype,"problemMatcher",void 0),n.__decorate([(0,s.Autowired)(f.IProblemPatternRegistry),n.__metadata("design:type",Object)],r.prototype,"problemPattern",void 0),e.TaskService=r=n.__decorate([(0,s.Injectable)(),n.__metadata("design:paramtypes",[])],r)},66893:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalTaskSystem=void 0;const n=t(85608),s=t(76003),o=t(43718),f=t(80907),b=t(1041),g=t(12968),_=t(95268),{deepClone:E}=o.objects,{Path:u}=o.path;let h=class extends o.Disposable{constructor(){super(...arguments),this.executorId=0,this.activeTaskExecutors=new Map,this._onDidStateChange=new o.Emitter,this._onDidBackgroundTaskBegin=new o.Emitter,this._onDidBackgroundTaskEnded=new o.Emitter,this._onDidProblemMatched=new o.Emitter,this.taskExecutors=[],this.onDidStateChange=this._onDidStateChange.event,this.onDidBackgroundTaskBegin=this._onDidBackgroundTaskBegin.event,this.onDidBackgroundTaskEnded=this._onDidBackgroundTaskEnded.event,this.onDidProblemMatched=this._onDidProblemMatched.event}run(r){return this.currentTask=r,this.executeTask(r)}attach(r,l){return this.currentTask=r,this.attachTask(r,l)}async buildShellConfig(r){let l="";const a=r.name,d=r.args,m=[],p=[];if(a&&(typeof a=="string"?l=a:l=a.value),m.push(l),d)for(const v of d)typeof v=="string"?m.push(v):m.push(v.value);for(const v of m)v.indexOf(u.separator)>-1?p.push(await this.resolveVariables(v.split(u.separator))):p.push(await this.resolveVariable(v));return{args:["-c",`${p.join(" ")}`]}}findAvailableExecutor(){return this.taskExecutors.find(r=>r.taskStatus===_.TaskStatus.PROCESS_EXITED)}async createTaskExecutor(r,l){const a=await this.resolveMatchers(r.configurationProperties.problemMatchers),d=new g.ProblemCollector(a),m=this.injector.get(_.TerminalTaskExecutor,[r,l,d,this.executorId]);return this.executorId+=1,this.taskExecutors.push(m),this.addDispose(m.onDidTerminalWidgetRemove(()=>{this.taskExecutors=this.taskExecutors.filter(p=>p.executorId!==m.executorId)})),m}async attachTask(r,l){const d=(await this.createTaskExecutor(r,l.launchConfig)).attach(l);return this.lastTask=r,{task:r,kind:1,promise:d}}async executeTask(r){var l,a,d;const m=r.command&&r.command.runtime===b.RuntimeType.CustomExecution,p=await this.resolveMatchers(r.configurationProperties.problemMatchers),v=new g.ProblemCollector(p),{args:y}=await this.buildShellConfig(r.command),S={name:this.createTerminalName(r),args:y,isExtensionOwnedTerminal:m,env:((l=r.command.options)===null||l===void 0?void 0:l.env)||{},cwd:!((a=r.command.options)===null||a===void 0)&&a.cwd?await this.resolveVariable((d=r.command.options)===null||d===void 0?void 0:d.cwd):await this.resolveVariable("${workspaceFolder}"),disablePreserveHistory:!0};let A=this.findAvailableExecutor(),T=!1;A?(T=!0,A.updateProblemCollector(v),A.updateLaunchConfig(S),A.reset()):A=await this.createTaskExecutor(r,S),T?this._onDidStateChange.fire(b.TaskEvent.create("start",r,A.terminalId)):this.addDispose(A.onDidTerminalCreated(I=>{this._onDidStateChange.fire(b.TaskEvent.create("start",r,I))})),T||(this.addDispose(A.onDidTaskProcessExit(I=>{this._onDidStateChange.fire(b.TaskEvent.create("processEnded",r,I)),this._onDidStateChange.fire(b.TaskEvent.create("end",r))})),this.addDispose(A.onDidBackgroundTaskBegin(()=>this._onDidBackgroundTaskBegin.fire(b.TaskEvent.create("backgroundTaskBegin",r)))),this.addDispose(A.onDidBackgroundTaskEnd(()=>this._onDidBackgroundTaskEnded.fire(b.TaskEvent.create("backgroundTaskEnded",r)))),this.addDispose(A.onDidProblemMatched(I=>this._onDidProblemMatched.fire(b.TaskEvent.create("problemMatched",r,I)))));const D=A.execute(r,T),w=r.getMapKey();return this.activeTaskExecutors.set(w,{promise:Promise.resolve(D),task:r,executor:A}),this._onDidStateChange.fire(b.TaskEvent.create("active",r)),await A.processReady.promise,this._onDidStateChange.fire(b.TaskEvent.create("processStarted",r,A.processId)),this.lastTask=r,{task:r,kind:1,promise:D}}createTerminalName(r){return(0,o.formatLocalize)("TerminalTaskSystem.terminalName",r.getQualifiedLabel()||r.configurationProperties.name)}async resolveVariables(r){const l=[];for(const a of r)l.push(await this.resolveVariable(a));return l.join(u.separator)}async resolveVariable(r){if((0,o.isString)(r))return await this.variableResolver.resolve(r);if(r!==void 0)return{value:await this.variableResolver.resolve(r.value),quoting:r.quoting};throw new Error("Should never try to resolve undefined.")}async resolveMatchers(r){if(r==null||r.length===0)return[];const l=[];for(const a of r){let d;if((0,o.isString)(a)?a[0].startsWith("$")?d=this.problemMatcher.get(a.substring(1)):d=this.problemMatcher.get(a):d=a,!d)continue;const m=d.filePrefix!==void 0;if(!m)l.push(d);else{const p=E(d);m&&(p.filePrefix=await this.resolveVariable(p.filePrefix)),l.push(p)}}return l}getActiveTasks(){return Array.from(this.activeTaskExecutors.values()).map(r=>r.task)}async terminate(r){const l=r.getMapKey(),a=this.activeTaskExecutors.get(l);if(!a)return Promise.resolve({task:void 0,success:!0});const{success:d}=await a.executor.terminate();return this.activeTaskExecutors.delete(l),{task:r,success:d}}async rerun(){return this.lastTask&&await this.executeTask(this.lastTask)}isActive(){throw new Error("Method not implemented.")}isActiveSync(){throw new Error("Method not implemented.")}getBusyTasks(){throw new Error("Method not implemented.")}canAutoTerminate(){throw new Error("Method not implemented.")}terminateAll(){throw new Error("Method not implemented.")}revealTask(r){throw new Error("Method not implemented.")}customExecutionComplete(r,l){throw new Error("Method not implemented.")}};e.TerminalTaskSystem=h,n.__decorate([(0,s.Autowired)(s.INJECTOR_TOKEN),n.__metadata("design:type",s.Injector)],h.prototype,"injector",void 0),n.__decorate([(0,s.Autowired)(o.IProblemMatcherRegistry),n.__metadata("design:type",Object)],h.prototype,"problemMatcher",void 0),n.__decorate([(0,s.Autowired)(f.IVariableResolverService),n.__metadata("design:type",Object)],h.prototype,"variableResolver",void 0),e.TerminalTaskSystem=h=n.__decorate([(0,s.Injectable)()],h)},93950:(x,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ITaskSystem=e.ITaskExecutor=e.ITaskService=void 0,e.ITaskService=Symbol("ITaskService"),e.ITaskExecutor=Symbol("ITaskExecutor"),e.ITaskSystem=Symbol("ITaskSystem")},1041:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TaskEvent=e.TaskSorter=e.ExecutionEngine=e.InMemoryTask=e.ContributedTask=e.ConfiguringTask=e.CustomTask=e.CommonTask=e.RunOptions=e.RunOnOptions=e.TaskSourceKind=e.TaskGroup=e.CommandString=e.RuntimeType=e.PresentationOptions=e.PanelKind=e.RevealProblemKind=e.RevealKind=e.CommandOptions=e.CUSTOMIZED_TASK_TYPE=e.ShellQuoting=e.TASK_RUNNING_STATE=void 0;const n=t(40191),s=t(43718),{basename:o}=s.path;e.TASK_RUNNING_STATE=new n.RawContextKey("taskRunning",!1);var f;(function(w){w[w.Escape=1]="Escape",w[w.Strong=2]="Strong",w[w.Weak=3]="Weak"})(f||(e.ShellQuoting=f={})),e.CUSTOMIZED_TASK_TYPE="$customized",function(w){function I(R){if(!R)return w.Strong;switch(R.toLowerCase()){case"escape":return w.Escape;case"strong":return w.Strong;case"weak":return w.Weak;default:return w.Strong}}w.from=I}(f||(e.ShellQuoting=f={}));var b;(function(w){w.defaults={cwd:"${workspaceFolder}"}})(b||(e.CommandOptions=b={}));var g;(function(w){w[w.Always=1]="Always",w[w.Silent=2]="Silent",w[w.Never=3]="Never"})(g||(e.RevealKind=g={})),function(w){function I(R){switch(R.toLowerCase()){case"always":return w.Always;case"silent":return w.Silent;case"never":return w.Never;default:return w.Always}}w.fromString=I}(g||(e.RevealKind=g={}));var _;(function(w){w[w.Never=1]="Never",w[w.OnProblem=2]="OnProblem",w[w.Always=3]="Always"})(_||(e.RevealProblemKind=_={})),function(w){function I(R){switch(R.toLowerCase()){case"always":return w.Always;case"never":return w.Never;case"onproblem":return w.OnProblem;default:return w.OnProblem}}w.fromString=I}(_||(e.RevealProblemKind=_={}));var E;(function(w){w[w.Shared=1]="Shared",w[w.Dedicated=2]="Dedicated",w[w.New=3]="New"})(E||(e.PanelKind=E={})),function(w){function I(R){switch(R.toLowerCase()){case"shared":return w.Shared;case"dedicated":return w.Dedicated;case"new":return w.New;default:return w.Shared}}w.fromString=I}(E||(e.PanelKind=E={}));var u;(function(w){w.defaults={echo:!0,reveal:g.Always,revealProblems:_.Never,focus:!1,panel:E.Shared,showReuseMessage:!0,clear:!1}})(u||(e.PresentationOptions=u={}));var h;(function(w){w[w.Shell=1]="Shell",w[w.Process=2]="Process",w[w.CustomExecution=3]="CustomExecution",w[w.CustomExecution2=4]="CustomExecution2"})(h||(e.RuntimeType=h={})),function(w){function I(R){switch(R.toLowerCase()){case"shell":return w.Shell;case"process":return w.Process;case"customExecution":return w.CustomExecution;default:return w.Process}}w.fromString=I}(h||(e.RuntimeType=h={}));var c;(function(w){function I(R){return(0,s.isString)(R)?R:R.value}w.value=I})(c||(e.CommandString=c={}));var r;(function(w){w.Clean={_id:"clean",isDefault:!1},w.Build={_id:"build",isDefault:!1},w.Rebuild={_id:"rebuild",isDefault:!1},w.Test={_id:"test",isDefault:!1};function I(M){return M===w.Clean._id||M===w.Build._id||M===w.Rebuild._id||M===w.Test._id}w.is=I;function R(M){if(M!==void 0)return(0,s.isString)(M)?I(M)?{_id:M,isDefault:!1}:void 0:M}w.from=R})(r||(e.TaskGroup=r={}));var l;(function(w){w.Workspace="workspace",w.Extension="extension",w.InMemory="inMemory",w.WorkspaceFile="workspaceFile",w.User="user"})(l||(e.TaskSourceKind=l={}));var a;(function(w){w[w.default=1]="default",w[w.folderOpen=2]="folderOpen"})(a||(e.RunOnOptions=a={}));var d;(function(w){w.defaults={reevaluateOnRerun:!0,runOn:a.default}})(d||(e.RunOptions=d={}));class m{constructor(I,R,M,O,P,L){this._label="",this._id=I,R&&(this._label=R),M&&(this.type=M),this.runOptions=O,this.configurationProperties=P,this._source=L}getDefinition(I){}getMapKey(){return this._id}getRecentlyUsedKey(){}clone(){return this.fromObject(Object.assign({},this))}getWorkspaceFolder(){}getWorkspaceFileName(){}getTelemetryKind(){return"unknown"}matches(I,R=!1){if(I===void 0)return!1;if((0,s.isString)(I))return I===this._label||I===this.configurationProperties.identifier||R&&I===this._id;const M=this.getDefinition(!0);return M!==void 0&&M._key===I._key}getQualifiedLabel(){const I=this.getWorkspaceFolder();return I?`${this._label} (${I.name})`:this._label}getTaskExecution(){return{id:this._id,task:this}}addTaskLoadMessages(I){this._taskLoadMessages===void 0&&(this._taskLoadMessages=[]),I&&(this._taskLoadMessages=this._taskLoadMessages.concat(I))}get taskLoadMessages(){return this._taskLoadMessages}}e.CommonTask=m;class p extends m{constructor(I,R,M,O,P,L,N,k){super(I,M,void 0,N,k,R),this.command={},this._source=R,this.hasDefinedMatchers=L,P&&(this.command=P)}customizes(){if(this._source&&this._source.customizes)return this._source.customizes}getDefinition(I=!1){if(I&&this._source.customizes!==void 0)return this._source.customizes;{let R;switch(this.command?this.command.runtime:void 0){case h.Shell:R="shell";break;case h.Process:R="process";break;case h.CustomExecution:R="customExecution";break;case void 0:R="$composite";break;default:throw new Error("Unexpected task runtime")}return{type:R,_key:this._id,id:this._id}}}static is(I){return I instanceof p}getMapKey(){const I=this._source.config.workspaceFolder;return I?`${I.uri.toString()}|${this._id}`:this._id}getRecentlyUsedKey(){const I=this._source.config.workspaceFolder;if(!I)return;let R=this.configurationProperties.identifier;this._source.kind!==l.Workspace&&(R+=this._source.kind);const M={type:e.CUSTOMIZED_TASK_TYPE,folder:I.uri.toString(),id:R};return JSON.stringify(M)}getWorkspaceFolder(){return this._source.config.workspaceFolder}getWorkspaceFileName(){return this._source.config.workspace&&this._source.config.workspace.configuration?o(this._source.config.workspace.configuration.toString()):void 0}getTelemetryKind(){return this._source.customizes?"workspace>extension":"workspace"}fromObject(I){return new p(I._id,I._source,I._label,I.type,I.command,I.hasDefinedMatchers,I.runOptions,I.configurationProperties)}}e.CustomTask=p;class v extends m{constructor(I,R,M,O,P,L,N){super(I,M,O,L,N,R),this._source=R,this.configures=P}static is(I){return I instanceof v}fromObject(I){return I}getDefinition(){return this.configures}getWorkspaceFileName(){return this._source.config.workspace&&this._source.config.workspace.configuration?o(this._source.config.workspace.configuration.toString()):void 0}}e.ConfiguringTask=v;class y extends m{constructor(I,R,M,O,P,L,N,k,B){super(I,M,O,k,B,R),this.defines=P,this.hasDefinedMatchers=N,this.command=L}getDefinition(){return this.defines}static is(I){return I instanceof y}getMapKey(){const I=this._source.workspaceFolder;return I?`${this._source.scope.toString()}|${I.uri.toString()}|${this._id}`:`${this._source.scope.toString()}|${this._id}`}getRecentlyUsedKey(){const I={type:"contributed",scope:this._source.scope,id:this._id};return this._source.scope===3&&this._source.workspaceFolder&&(I.folder=this._source.workspaceFolder.uri.toString()),JSON.stringify(I)}getWorkspaceFolder(){return this._source.workspaceFolder}getTelemetryKind(){return"extension"}fromObject(I){return new y(I._id,I._source,I._label,I.type,I.defines,I.command,I.hasDefinedMatchers,I.runOptions,I.configurationProperties)}}e.ContributedTask=y;class S extends m{constructor(I,R,M,O,P,L){super(I,M,O,P,L,R),this._source=R}static is(I){return I instanceof S}getTelemetryKind(){return"composite"}fromObject(I){return new S(I._id,I._source,I._label,I.type,I.runOptions,I.configurationProperties)}}e.InMemoryTask=S;var A;(function(w){w[w.Process=1]="Process",w[w.Terminal=2]="Terminal"})(A||(e.ExecutionEngine=A={})),function(w){w._default=w.Terminal}(A||(e.ExecutionEngine=A={}));class T{constructor(I){this._order=new Map;for(let R=0;R<I.length;R++)this._order.set(I[R].uri.toString(),R)}compare(I,R){const M=I.getWorkspaceFolder(),O=R.getWorkspaceFolder();if(M&&O){let P=this._order.get(M.uri.toString());P=P===void 0?0:P+1;let L=this._order.get(O.uri.toString());return L=L===void 0?0:L+1,P===L?I._label.localeCompare(R._label):P-L}else return!M&&O?-1:M&&!O?1:0}}e.TaskSorter=T;var D;(function(w){function I(R,M,O){if(M){const P={kind:R,taskId:M._id,taskName:M.configurationProperties.name,runType:M.configurationProperties.isBackground?"background":"singleRun",group:M.configurationProperties.group,processId:void 0,exitCode:void 0,terminalId:void 0,__task:M};return R==="start"?P.terminalId=O:R==="processStarted"?P.processId=O:R==="processEnded"?P.exitCode=O:R==="problemMatched"&&(P.problems=O),Object.freeze(P)}else return Object.freeze({kind:"changed"})}w.create=I})(D||(e.TaskEvent=D={}))},90305:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});const n=t(85608),s=n.__importDefault(t(14041)),o=n.__importDefault(t(75655));let f=0,b=null;e.default=g=>{const{start:_,stop:E,self:u,left:h,right:c,wholeWidth:r,last:l}=g,a=p=>{f=p.clientX,b=u,_()},d=p=>{if(!f)return!1;const v=p.clientX,y=(v-f)/r*100;f=v,y<0?(u&&u.increase(y),c&&c.increase(-y)):b&&b===h&&(u&&u.increase(-y),h&&h.increase(y))},m=p=>{f=0,b=null,u.resize(),h&&h.resize(),c&&c.resize(),E()};return s.default.createElement("div",{className:o.default.resizeDelegetContainer,onMouseUp:m,onMouseMove:d},!l&&s.default.createElement("div",{className:o.default.resizeDelegateBar,onMouseDown:a,onMouseUp:m}))}},92699:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ResizeDirection=void 0;const n=t(85608),s=n.__importDefault(t(53373)),o=n.__importDefault(t(14041)),f=t(41869),b=t(7473),g=n.__importDefault(t(90305)),_=n.__importDefault(t(75655));var E;(function(c){c[c.vertical=0]="vertical",c[c.horizontal=1]="horizontal"})(E||(e.ResizeDirection=E={}));const u=({index:c,widget:r,wholeWidth:l,setEvent:a,self:d,left:m,right:p,last:v})=>{const y=(0,f.useAutorun)(r.shadowDynamic);return o.default.createElement("div",{key:`resize-item-${c}`,style:{width:`${y}%`},className:_.default.resizeHandler},o.default.createElement(g.default,{wholeWidth:l,start:()=>a(!0),stop:()=>a(!1),self:d,left:m,right:p,last:v}))},h=({widget:c,dynamic:r,draw:l,handleRemoveWidget:a,widgetsLength:d})=>{const m=(0,f.useAutorun)(r);return o.default.createElement("div",{key:c.id,style:{width:`${m}%`},className:_.default.resizeItem},l(c),d>1&&o.default.createElement("div",{className:(0,s.default)(_.default.closeBtn,(0,f.getIcon)("close")),onClick:()=>{a(c.id)}}))};e.default=c=>{const{group:r,shadow:l}=c,a=(0,f.useAutorun)(r.widgets),[d,m]=o.default.useState(!1),[p,v]=o.default.useState(1/0),y=(0,f.useInjectable)(b.ITerminalGroupViewService),S=o.default.useRef(null);o.default.useEffect(()=>{S.current&&S.current.clientHeight!==p&&v(S.current.clientWidth)});const A=o.default.useCallback(T=>{y.removeWidget(T)},[]);return o.default.createElement("div",{className:_.default.resizeWrapper,ref:S},o.default.createElement("div",{style:{pointerEvents:d?"all":"none"},className:_.default.resizeDelegate},a&&a.map((T,D)=>{const w=D-1>-1?a[D-1]:null,I=a[D],R=D+1<a.length?a[D+1]:null;return o.default.createElement(u,{index:D,widget:T,wholeWidth:p,setEvent:m,self:I,left:w,right:R,last:D===a.length-1})})),o.default.createElement("div",{style:{pointerEvents:d?"none":"all"},className:_.default.resizePanel},a&&a.map(T=>o.default.createElement(h,{widget:T,dynamic:l?T.dynamic:T.shadowDynamic,draw:c.draw,handleRemoveWidget:A,widgetsLength:a.length}))))}},65586:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.renderAddItem=e.renderInfoItem=void 0;const n=t(85608),s=n.__importDefault(t(53373)),o=n.__importDefault(t(12784)),f=n.__importStar(t(14041)),b=t(80564),g=t(41869),_=t(89897),E=t(1149),u=t(7443),h=t(26405),c=n.__importDefault(t(99886)),r=a=>{var d,m,p,v;const y=(0,g.useInjectable)(u.IconService),S=(0,o.default)(()=>a.onClick&&a.onClick(),20),A=(0,o.default)(()=>a.onClose&&a.onClose(),20),T=(0,g.useDesignStyles)(c.default.item_container,"item_container"),D=(0,g.useDesignStyles)(c.default.tab_item_selected,"tab_item_selected"),w=(0,g.useDesignStyles)(c.default.item_info_name,"item_info_name"),I=(0,g.useDesignStyles)(c.default.tab_close_icon,"tab_close_icon"),R=(0,g.useInjectable)(E.LayoutViewSizeConfig),M=(0,f.useRef)(null),{group:O}=a;if(!O)return null;const{options:P,id:L}=O,N=(0,g.useAutorun)(O.editable),k=(0,g.useAutorun)(O.snapshot),B=(0,f.useCallback)(W=>{W.key==="Enter"&&a.onInputEnter&&L&&a.onInputEnter(L,W.target.value)},[L,a.onInputEnter]);(0,f.useEffect)(()=>{var W;a.selected&&((W=M.current)===null||W===void 0||W.scrollIntoView())},[M,a.selected]);let F;return P?.icon&&(!((d=P.icon)===null||d===void 0)&&d.id?F=y.fromString(`$(${(m=P.icon)===null||m===void 0?void 0:m.id})`):P.icon instanceof g.URI?F=y.fromIcon(P?.icon.toString()):(!((p=P.icon)===null||p===void 0)&&p.light||!((v=P?.icon)===null||v===void 0)&&v.dark)&&(F=a.theme==="light"?y.fromIcon(P.icon.light.toString()):y.fromIcon(P.icon.dark.toString()))),f.default.createElement("div",{ref:M,className:(0,s.default)({[T]:!0,[D]:!!a.selected}),style:{height:R.panelTitleBarHeight},onClick:()=>S(),onContextMenu:W=>a.onContextMenu&&a.onContextMenu(W)},N?f.default.createElement("input",{autoFocus:!0,ref:W=>W&&W.select(),className:c.default.item_info_input,defaultValue:k,onClick:W=>W.stopPropagation(),onBlur:()=>a.onInputBlur&&O.id&&a.onInputBlur(O.id),onKeyDown:W=>B(W)}):f.default.createElement("div",{id:O.id,className:w,title:k},k!==""?f.default.createElement(f.default.Fragment,null,f.default.createElement(b.Icon,{iconClass:F||(0,g.getIcon)(k?.toLowerCase()||"terminal")||(0,g.getIcon)("terminal"),style:{marginRight:4,color:"inherit",fontSize:14}}),f.default.createElement("span",{className:c.default.item_title},k)):f.default.createElement(_.Loading,null)),N?f.default.createElement("div",null):f.default.createElement("div",{className:(0,s.default)([(0,g.getIcon)("close"),I]),onClick:W=>{W.stopPropagation(),A()}}))};e.renderInfoItem=r;const l=a=>{const d=(0,o.default)(()=>a.onClick&&a.onClick(),20),m=a.getKeybinding&&a.getKeybinding(g.TERMINAL_COMMANDS.ADD.id),p=m?`${(0,g.localize)("terminal.new")}(${m})`:(0,g.localize)("terminal.new"),v=(0,g.useDesignStyles)(c.default.tab_item_wrapper,"tab_item_wrapper");return f.default.createElement("div",{className:v},f.default.createElement("div",{title:p,className:(0,s.default)({[(0,g.getIcon)("plus")]:!0,[c.default.item_add]:!0}),onClick:()=>d()}),f.default.createElement("div",{title:(0,g.localize)("terminal.new.type"),className:(0,s.default)({[(0,g.getIcon)("down")]:!0,[c.default.item_more]:!0}),onClick:a.onDropdown}))};e.renderAddItem=l,e.default=a=>{switch(a.type||h.ItemType.info){case h.ItemType.info:return(0,f.createElement)(a.provider.infoItemRender,a);case h.ItemType.add:return(0,f.createElement)(a.provider.addItemRender,a);default:return null}}},17632:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});const n=t(85608),s=n.__importStar(t(14041)),o=t(97267),f=t(41869),b=t(52416),g=t(26405),_=t(88023),E=n.__importDefault(t(65586)),u=n.__importDefault(t(99886));e.default=()=>{const h=(0,f.useInjectable)(g.ITerminalGroupViewService),c=(0,f.useInjectable)(g.ITerminalRenderProvider),r=(0,f.useInjectable)(_.TerminalContextMenuService),l=(0,f.useInjectable)(b.IThemeService),a=(0,f.useInjectable)(f.KeybindingRegistry),d=(0,s.useRef)(),[m,p]=(0,s.useState)("dark"),v=(0,f.useDesignStyles)(u.default.tab_contents,"tab_contents"),y=(0,f.useAutorun)(h.groups),S=(0,f.useAutorun)(h.currentGroup),A=(0,s.useCallback)(()=>(l.getCurrentTheme().then(T=>{p(T.type)}),l.onThemeChange(T=>{p(T.type)})),[m,l]);return(0,s.useEffect)(()=>{const T=A();return()=>{T.dispose()}},[]),s.default.createElement("div",{className:u.default.view_container},s.default.createElement("div",{className:u.default.tabs},s.default.createElement(o.Scrollbars,{forwardedRef:T=>T?d.current=T.ref:null},s.default.createElement("div",{className:v},y.filter(Boolean).map((T,D)=>s.default.createElement(E.default,{key:T.id,group:T,selected:S&&S.id===T.id,onInputBlur:()=>T.unedit(),onInputEnter:(w,I)=>T.rename(I),onClick:()=>h.selectGroup(D),onClose:()=>h.removeGroup(D),onContextMenu:w=>r.onTabContextMenu(w,D),provider:c,theme:m})),s.default.createElement("div",{className:u.default.button},s.default.createElement(E.default,{type:g.ItemType.add,onClick:()=>{const T=h.createGroup(),D=h.getGroup(T);h.createWidget(D),h.selectGroup(T)},getKeybinding:T=>{const D=a.getKeybindingsForCommand(T);return Array.isArray(D)&&D[0]&&a.acceleratorFor(D[0],"")[0]||""},onDropdown:T=>r.onDropDownContextMenu(T),provider:c,theme:m}))))))}},7066:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalVariable=void 0;const n=t(85608),s=n.__importDefault(t(14041)),o=t(43718),f=t(94620),b=n.__importDefault(t(74599));function g(E,u){E.forEach((h,c)=>{h.forEach(r=>{u.add((0,f.mutatorTypeLabel)(r.type,r.value,c))})})}const _=({diff:E})=>{const u=s.default.useMemo(()=>{const c=new Set;return E?.added&&E?.added.size>0&&g(E.added,c),E?.changed&&E.changed.size>0&&g(E.changed,c),Array.from(c.values())},[E]),h=s.default.useMemo(()=>{if(!E?.removed||E?.removed.size===0)return[];const c=new Set;return g(E.removed,c),Array.from(c.values())},[E]);return s.default.createElement("div",{className:b.default.variable_container},u.length>0&&s.default.createElement(s.default.Fragment,null,s.default.createElement("h3",null,(0,o.localize)("terminal.environment.changes")),u.map((c,r)=>s.default.createElement("p",{key:c+r,className:b.default.variable_change},c))),h.length>0&&s.default.createElement(s.default.Fragment,null,s.default.createElement("h3",null,(0,o.localize)("terminal.environment.removal")),h.map((c,r)=>s.default.createElement("p",{key:c+r,className:b.default.variable_change},c))))};e.TerminalVariable=_},48139:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});const n=t(85608),s=n.__importDefault(t(53373)),o=n.__importDefault(t(12784)),f=n.__importDefault(t(14041)),b=t(41869),g=t(26405),_=n.__importStar(t(92699)),E=n.__importDefault(t(73567)),u=n.__importDefault(t(76970));t(86650),e.default=()=>{const h=(0,b.useInjectable)(g.ITerminalController),c=(0,b.useInjectable)(g.ITerminalSearchService),r=(0,b.useInjectable)(g.ITerminalErrorService),l=(0,b.useInjectable)(g.ITerminalNetwork),a=f.default.useRef(null),d=f.default.useRef(null),m=(0,b.useInjectable)(g.ITerminalGroupViewService),p=(0,b.useAutorun)(m.currentGroupId),v=(0,b.useAutorun)(m.currentGroupIndex),y=(0,b.useAutorun)(m.groups);f.default.useEffect(()=>{const k=c.onVisibleChange(B=>{B&&a.current&&(a.current.focus(),a.current.value.length>0&&a.current.setSelectionRange(0,a.current.value.length))});return()=>k.dispose()},[c,a.current]);const[S,A]=f.default.useState(h.themeBackground);(0,b.useEventEffect)(h.onThemeBackgroundChange,k=>{A(k)});const[T,D]=f.default.useState(r.errors),w=(0,o.default)(()=>{D(r.errors)},b.FRAME_THREE);(0,b.useEventEffect)(r.onErrorsChange,w);const I=f.default.useCallback((k,B)=>{const F=h.findClientFromWidgetId(k.id);let W;return F?W=l.shouldReconnect(F.id)?void 0:T.get(F.id):W=T.get(k.id),f.default.createElement(u.default,{show:v===B,error:W,widget:k})},[v,h,T,l,m]),[R,M]=f.default.useState(c.isVisible);(0,b.useEventEffect)(c.onVisibleChange,k=>{M(k)});const[O,P]=f.default.useState(""),L=f.default.useCallback(k=>{c.text=k.target.value,c.search(),P(k.target.value)},[c]),N=f.default.useCallback(k=>{k.key==="Enter"&&c.search(),k.key==="Escape"&&(c.close(),c.clear())},[c]);return f.default.useEffect(()=>{d.current&&(h.initContextKey(d.current),h.viewReady.resolve())},[d.current]),f.default.createElement("div",{ref:d,className:E.default.terminalWrapper,style:{backgroundColor:S},"data-group-current":p},R&&f.default.createElement("div",{className:E.default.terminalSearch},f.default.createElement("div",{className:"kt-input-box"},f.default.createElement("input",{autoFocus:!0,ref:a,placeholder:(0,b.localize)("common.find"),value:O,onChange:L,onKeyDown:N})),f.default.createElement("div",{className:(0,s.default)(E.default.closeBtn,(0,b.getIcon)("close")),onClick:()=>c.close()})),y.map((k,B)=>{if(k.activated.get())return f.default.createElement("div",{"data-group-rendered":k.activated.get(),key:`terminal-${k.id}`,style:{display:v===B?"block":"none"},className:E.default.group,onFocus:h.focus.bind(h),onBlur:h.blur.bind(h),onContextMenu:h.onContextMenu.bind(h)},f.default.createElement(_.default,{shadow:!1,useFlex:!1,direction:_.ResizeDirection.horizontal,group:k,draw:F=>I(F,B)}))}))}},76970:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});const n=t(85608),s=n.__importDefault(t(14041)),o=t(41869),f=t(26405),b=n.__importDefault(t(73567));function g(_,E,u){const h=()=>{u.removeWidget(_.id)},c=()=>{E.fix(_.id)};return _?.type===f.ETerminalErrorType.CREATE_FAIL?s.default.createElement("div",{className:b.default.terminalCover},s.default.createElement("div",null,(0,o.localize)("terminal.can.not.create"),": ",_.message),s.default.createElement("div",null,s.default.createElement("a",{onClick:h},(0,o.localize)("terminal.stop")),(0,o.localize)("terminal.or"),s.default.createElement("a",{onClick:c},(0,o.localize)("terminal.try.recreate")))):_.stopped?s.default.createElement("div",{className:b.default.terminalCover},s.default.createElement("div",null,(0,o.localize)("terminal.disconnected")),s.default.createElement("div",null,(0,o.localize)("terminal.can.not.reconnect"),s.default.createElement("a",{onClick:c},(0,o.localize)("terminal.try.reconnect")))):s.default.createElement("div",{className:b.default.terminalCover},s.default.createElement("div",null,(0,o.localize)("terminal.disconnected")),s.default.createElement("div",null,s.default.createElement("a",{onClick:h},(0,o.localize)("terminal.stop")),(0,o.localize)("terminal.or"),s.default.createElement("a",{onClick:c},(0,o.localize)("terminal.try.reconnect"))))}e.default=({widget:_,error:E,show:u})=>{const h=s.default.useRef(null),c=(0,o.useInjectable)(f.ITerminalErrorService),r=(0,o.useInjectable)(f.ITerminalGroupViewService);s.default.useEffect(()=>{h.current&&(_.element=h.current)},[]),s.default.useEffect(()=>{_.show=u},[u]),s.default.useEffect(()=>{_.error=!!E},[E]);const l=()=>{r.selectWidget(_.id)};return s.default.createElement("div",{className:b.default.terminalContainer},E?g(E,c,r):null,s.default.createElement("div",{"data-term-id":_.id,style:{display:E?"none":"block"},className:b.default.terminalContent,onFocus:l,ref:h}))}},21623:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});const n=t(85608);n.__exportStar(t(71852),e),n.__exportStar(t(43397),e),n.__exportStar(t(7082),e),n.__exportStar(t(11476),e),n.__exportStar(t(63341),e),n.__exportStar(t(96051),e),n.__exportStar(t(79404),e)},71852:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalCommandContribution=void 0;const n=t(85608),s=t(76003),o=t(41869),f=t(63067),b=t(26405),g=t(48520),_=t(35628),E=t(94620);let u=class{onReconnect(){this.terminalController.reconnect()}onDisposeSideEffects(){}setDefaultTerminalType(c){this.preference.update("terminal.type",c)}registerCommands(c){c.registerCommand({...o.TERMINAL_COMMANDS.OPEN_SEARCH,iconClass:(0,o.getIcon)("search")},{execute:()=>{if(this.search.isVisible){this.search.close();return}this.search.open()}}),c.registerCommand({...o.TERMINAL_COMMANDS.SPLIT,iconClass:(0,o.getIcon)("embed")},{execute:()=>{const r=this.view.currentGroup.get();if(!r)return;const l=this.view.createWidget(r);this.view.selectWidget(l.id)}}),c.registerCommand(o.TERMINAL_COMMANDS.CLEAR,{execute:()=>{this.view.clear()}}),c.registerCommand(o.TERMINAL_COMMANDS.ADD,{execute:async()=>{await this.terminalController.createTerminalWithWidget({}),this.terminalController.showTerminalPanel()}}),c.registerCommand(o.TERMINAL_COMMANDS.TOGGLE_TERMINAL,{execute:()=>{this.terminalController.toggleTerminalPanel()}}),c.registerCommand(o.TERMINAL_COMMANDS.SEARCH_NEXT,{execute:()=>{this.search.isVisible?this.search.search():this.search.open()}}),c.registerCommand({...o.TERMINAL_COMMANDS.REMOVE,iconClass:(0,o.getIcon)("delete")},{execute:async()=>{const r=this.view.currentWidgetId.get();r&&this.view.removeWidget(r)}}),c.registerCommand(o.TERMINAL_COMMANDS.OPEN_WITH_PATH,{execute:async r=>{r&&(await this.terminalApi.createTerminal({cwd:r.codeUri.fsPath})).show()}}),c.registerCommand(o.TERMINAL_COMMANDS.TAB_RENAME,{execute:async(r,l)=>{const a=this.view.getGroup(l);a&&a.edit()}}),c.registerCommand({...o.TERMINAL_COMMANDS.SELECT_ALL_CONTENT},{execute:()=>{const r=this.view.currentWidgetId.get(),l=this.terminalController.findClientFromWidgetId(r);l&&l.selectAll()}}),c.registerCommand({...o.TERMINAL_COMMANDS.CLEAR_CONTENT,iconClass:(0,o.getIcon)("clear")},{execute:()=>{const r=this.view.currentWidgetId.get(),l=this.terminalController.findClientFromWidgetId(r);l&&l.clear()}}),c.registerCommand({...o.TERMINAL_COMMANDS.CLEAR_ALL_CONTENT},{execute:()=>{this.terminalController.clearAllGroups()}}),c.registerCommand(o.TERMINAL_COMMANDS.SELECT_ZSH,{execute:async()=>{this.setDefaultTerminalType("zsh")}}),c.registerCommand(o.TERMINAL_COMMANDS.SELECT_BASH,{execute:async()=>{this.setDefaultTerminalType("bash")}}),c.registerCommand(o.TERMINAL_COMMANDS.SELECT_SH,{execute:async()=>{this.setDefaultTerminalType("sh")}}),c.registerCommand(o.TERMINAL_COMMANDS.SELECT_POWERSHELL,{execute:async()=>{this.setDefaultTerminalType("powershell")}}),c.registerCommand(o.TERMINAL_COMMANDS.SELECT_CMD,{execute:async()=>{this.setDefaultTerminalType("cmd")}}),c.registerCommand(o.TERMINAL_COMMANDS.MORE_SETTINGS,{execute:async()=>{this.commands.executeCommand(o.COMMON_COMMANDS.OPEN_PREFERENCES.id,"terminal")}}),c.registerCommand(o.TERMINAL_COMMANDS.COPY,{execute:async()=>{const r=this.view.currentWidgetId.get(),l=this.terminalController.findClientFromWidgetId(r);l&&await this.clipboardService.writeText(l.getSelection())}}),c.registerCommand(o.TERMINAL_COMMANDS.PASTE,{execute:async()=>{const r=this.view.currentWidgetId.get(),l=this.terminalController.findClientFromWidgetId(r);l&&l.paste(await this.clipboardService.readText())}}),c.registerCommand(o.TERMINAL_COMMANDS.SELECT_ALL,{execute:()=>{const r=this.view.currentWidgetId.get(),l=this.terminalController.findClientFromWidgetId(r);l&&l.selectAll()}}),c.registerCommand(o.TERMINAL_COMMANDS.RE_LAUNCH,{execute:()=>{const r=this.view.groups.get();for(const l of r)l.widgets.get().forEach(d=>{const m=this.terminalController.findClientFromWidgetId(d.id);m&&m.reset()})}}),c.registerCommand(o.COMMON_COMMANDS.ENVIRONMENT_VARIABLE,{execute:async()=>await this.terminalEnvironmentService.getProcessEnv()}),c.registerCommand(o.TERMINAL_COMMANDS.FOCUS_NEXT_TERMINAL,{execute:()=>{const r=this.view.currentGroup.get();if(r&&r.widgets.get().length<=1)return;const l=this.getNextOrPrevTerminalClient("next");l?.focus()}}),c.registerCommand(o.TERMINAL_COMMANDS.FOCUS_PREVIOUS_TERMINAL,{execute:()=>{const r=this.view.currentGroup.get();if(r&&r.widgets.get().length<=1)return;const l=this.getNextOrPrevTerminalClient("prev");l?.focus()}}),c.registerCommand(o.TERMINAL_COMMANDS.KILL_PROCESS,{execute:async()=>{const r=this.view.currentWidgetId.get(),l=this.terminalController.findClientFromWidgetId(r);if(l){const a=l.getSelection();a&&a.length>0?await this.clipboardService.writeText(l.getSelection()):await this.terminalApi.sendText(r,"")}}})}getNextOrPrevTerminalClient(c){const r=this.view.currentGroup.get();if(!r)return;const l=r.widgets.get(),a=l.findIndex(p=>p.id===this.view.currentWidgetId.get());let d;c==="next"?d=a===l.length-1?0:a+1:d=a===0?l.length-1:a-1;const m=l[d];return this.terminalController.findClientFromWidgetId(m.id)}};e.TerminalCommandContribution=u,n.__decorate([(0,s.Autowired)(b.ITerminalController),n.__metadata("design:type",Object)],u.prototype,"terminalController",void 0),n.__decorate([(0,s.Autowired)(E.EnvironmentVariableServiceToken),n.__metadata("design:type",g.TerminalEnvironmentService)],u.prototype,"terminalEnvironmentService",void 0),n.__decorate([(0,s.Autowired)(b.ITerminalGroupViewService),n.__metadata("design:type",Object)],u.prototype,"view",void 0),n.__decorate([(0,s.Autowired)(b.ITerminalSearchService),n.__metadata("design:type",Object)],u.prototype,"search",void 0),n.__decorate([(0,s.Autowired)(b.ITerminalRestore),n.__metadata("design:type",Object)],u.prototype,"store",void 0),n.__decorate([(0,s.Autowired)(b.ITerminalApiService),n.__metadata("design:type",Object)],u.prototype,"terminalApi",void 0),n.__decorate([(0,s.Autowired)(o.PreferenceService),n.__metadata("design:type",Object)],u.prototype,"preference",void 0),n.__decorate([(0,s.Autowired)(o.IPreferenceSettingsService),n.__metadata("design:type",Object)],u.prototype,"settingService",void 0),n.__decorate([(0,s.Autowired)(o.CommandService),n.__metadata("design:type",Object)],u.prototype,"commands",void 0),n.__decorate([(0,s.Autowired)(f.IMainLayoutService),n.__metadata("design:type",Object)],u.prototype,"mainlayoutService",void 0),n.__decorate([(0,s.Autowired)(o.AppConfig),n.__metadata("design:type",Object)],u.prototype,"config",void 0),n.__decorate([(0,s.Autowired)(),n.__metadata("design:type",_.TerminalKeyBoardInputService)],u.prototype,"terminalInput",void 0),n.__decorate([(0,s.Autowired)(o.ILogger),n.__metadata("design:type",Object)],u.prototype,"logger",void 0),n.__decorate([(0,s.Autowired)(o.IClipboardService),n.__metadata("design:type",Object)],u.prototype,"clipboardService",void 0),e.TerminalCommandContribution=u=n.__decorate([(0,o.Domain)(o.CommandContribution,o.ClientAppContribution)],u)},63341:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalKeybindingContribution=void 0;const n=t(85608),s=t(41869),o=t(66e3),f=t(40191),b=t(43718);let g=class{registerKeybindings(E){E.registerKeybinding({command:s.TERMINAL_COMMANDS.OPEN_SEARCH.id,keybinding:"ctrlcmd+f",when:o.IsTerminalFocused.raw}),E.registerKeybinding({command:s.TERMINAL_COMMANDS.CLEAR_CONTENT.id,keybinding:"ctrlcmd+k",when:o.IsTerminalFocused.raw}),E.registerKeybinding({command:s.TERMINAL_COMMANDS.SEARCH_NEXT.id,keybinding:"ctrlcmd+g",when:o.IsTerminalFocused.raw}),E.registerKeybinding({command:s.TERMINAL_COMMANDS.COPY.id,keybinding:b.isWindows?"ctrlcmd+shift+c":"ctrlcmd+c",when:f.RawContextKey.and(o.IsTerminalFocused.raw,"locationProtocol != http")}),E.registerKeybinding({command:s.TERMINAL_COMMANDS.KILL_PROCESS.id,keybinding:"ctrlcmd+c",when:f.RawContextKey.and(o.IsTerminalFocused.raw,"locationProtocol != http","isWindows")}),E.registerKeybinding({command:s.TERMINAL_COMMANDS.PASTE.id,keybinding:b.isWindows?"ctrlcmd+shift+v":"ctrlcmd+v",when:f.RawContextKey.and(o.IsTerminalFocused.raw,"locationProtocol != http")}),E.registerKeybinding({command:s.TERMINAL_COMMANDS.SELECT_ALL.id,keybinding:"ctrlcmd+a",when:o.IsTerminalFocused.raw}),E.registerKeybinding({command:s.TERMINAL_COMMANDS.SPLIT.id,keybinding:"ctrlcmd+\\",when:o.IsTerminalFocused.raw}),E.registerKeybinding({command:s.TERMINAL_COMMANDS.ADD.id,keybinding:"ctrl+shift+`"}),E.registerKeybinding({command:s.TERMINAL_COMMANDS.FOCUS_NEXT_TERMINAL.id,keybinding:"ctrlcmd+alt+right",when:o.IsTerminalFocused.raw}),E.registerKeybinding({command:s.TERMINAL_COMMANDS.FOCUS_NEXT_TERMINAL.id,keybinding:"ctrlcmd+alt+down",when:o.IsTerminalFocused.raw}),E.registerKeybinding({command:s.TERMINAL_COMMANDS.FOCUS_PREVIOUS_TERMINAL.id,keybinding:"ctrlcmd+alt+left",when:o.IsTerminalFocused.raw}),E.registerKeybinding({command:s.TERMINAL_COMMANDS.FOCUS_PREVIOUS_TERMINAL.id,keybinding:"ctrlcmd+alt+up",when:o.IsTerminalFocused.raw}),E.registerKeybinding({command:s.TERMINAL_COMMANDS.TOGGLE_TERMINAL.id,keybinding:"ctrl+`"})}};e.TerminalKeybindingContribution=g,e.TerminalKeybindingContribution=g=n.__decorate([(0,b.Domain)(s.KeybindingContribution)],g)},43397:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalLifeCycleContribution=void 0;const n=t(85608),s=t(76003),o=t(41869),f=t(63067),b=t(26405),g=t(94620),_=t(43395),E=t(35628);let u=class{initialize(){(0,_.registerTerminalColors)()}onStart(){this.terminalInput.listen(),this.environmentService.initEnvironmentVariableCollections()}onDidRender(){this.store.restore().then(()=>{this.terminalController.firstInitialize()})}onStop(){this.terminalController.disposeTerminalClients({isTaskExecutor:!0}),this.store.save()}};e.TerminalLifeCycleContribution=u,n.__decorate([(0,s.Autowired)(),n.__metadata("design:type",E.TerminalKeyBoardInputService)],u.prototype,"terminalInput",void 0),n.__decorate([(0,s.Autowired)(b.ITerminalController),n.__metadata("design:type",Object)],u.prototype,"terminalController",void 0),n.__decorate([(0,s.Autowired)(b.ITerminalRestore),n.__metadata("design:type",Object)],u.prototype,"store",void 0),n.__decorate([(0,s.Autowired)(g.EnvironmentVariableServiceToken),n.__metadata("design:type",Object)],u.prototype,"environmentService",void 0),e.TerminalLifeCycleContribution=u=n.__decorate([(0,o.Domain)(o.ClientAppContribution,f.MainLayoutContribution)],u)},7082:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalMenuContribution=e.more2=e.more1Sub=e.more1=e.group=void 0;const n=t(85608),s=t(76003),o=t(41869),f=t(30144),b=t(93899),g=t(43718),_=t(26405);e.group="panel_menu",e.more1="more_1",e.more1Sub="more_1_sub",e.more2="more_2";let E=class{registerMenus(h){h.registerMenuItem(b.MenuId.TerminalTabContext,{command:{id:o.TERMINAL_COMMANDS.TAB_RENAME.id,label:(0,o.localize)("terminal.menu.rename")},order:1,group:e.group}),h.registerMenuItem(b.MenuId.TerminalTabContext,{command:{id:o.TERMINAL_COMMANDS.SPLIT.id,label:(0,o.localize)("terminal.menu.split")},order:2,group:e.group}),h.registerMenuItem(b.MenuId.TerminalTabContext,{command:{id:o.TERMINAL_COMMANDS.REMOVE.id,label:(0,o.localize)("terminal.menu.stopGroup")},order:3,group:e.group}),h.registerMenuItem(b.MenuId.TerminalInstanceContext,{command:o.TERMINAL_COMMANDS.COPY,group:"1_modify"}),h.registerMenuItem(b.MenuId.TerminalInstanceContext,{command:o.TERMINAL_COMMANDS.PASTE,group:"1_modify"}),h.registerMenuItem(b.MenuId.TerminalInstanceContext,{command:o.TERMINAL_COMMANDS.SELECT_ALL,group:"1_modify"}),h.registerMenuItem(b.MenuId.TerminalInstanceContext,{command:o.TERMINAL_COMMANDS.CLEAR_CONTENT,group:"1_modify"});const c=(0,o.getSlotLocation)("@opensumi/ide-terminal-next",this.config.layoutConfig),r=(0,o.getTabbarCtxKey)(c),l=(0,b.getTabbarCommonMenuId)(c),a=`${r} == ${f.TERMINAL_CONTAINER_ID}`;h.registerMenuItem(l,{command:o.TERMINAL_COMMANDS.CLEAR,order:1,group:e.more1,when:a}),h.registerMenuItem(l,{command:o.TERMINAL_COMMANDS.CLEAR_ALL_CONTENT,order:1,group:e.more1,when:a}),h.registerMenuItem(l,{label:(0,o.localize)("terminal.menu.selectType"),submenu:b.MenuId.TerminalDefaultTypeMenu,order:1,group:e.more2,when:a}),g.isWindows?h.registerMenuItems(b.MenuId.TerminalDefaultTypeMenu,[{command:o.TERMINAL_COMMANDS.SELECT_CMD,order:1,group:e.more1Sub,toggledWhen:"config.terminal.type == cmd",when:a},{command:o.TERMINAL_COMMANDS.SELECT_POWERSHELL,order:2,group:e.more1Sub,toggledWhen:"config.terminal.type == powershell",when:a}]):h.registerMenuItems(b.MenuId.TerminalDefaultTypeMenu,[{command:o.TERMINAL_COMMANDS.SELECT_ZSH,order:1,group:e.more1Sub,toggledWhen:"config.terminal.type == zsh",when:a},{command:o.TERMINAL_COMMANDS.SELECT_BASH,order:2,group:e.more1Sub,toggledWhen:"config.terminal.type == bash",when:a},{command:o.TERMINAL_COMMANDS.SELECT_SH,order:3,group:e.more1Sub,toggledWhen:"config.terminal.type == sh",when:a}]),h.registerMenuItem(l,{command:o.TERMINAL_COMMANDS.MORE_SETTINGS,order:1,group:e.more2,when:a})}};e.TerminalMenuContribution=E,n.__decorate([(0,s.Autowired)(_.ITerminalController),n.__metadata("design:type",Object)],E.prototype,"terminalController",void 0),n.__decorate([(0,s.Autowired)(_.ITerminalGroupViewService),n.__metadata("design:type",Object)],E.prototype,"view",void 0),n.__decorate([(0,s.Autowired)(_.ITerminalSearchService),n.__metadata("design:type",Object)],E.prototype,"search",void 0),n.__decorate([(0,s.Autowired)(o.IPreferenceSettingsService),n.__metadata("design:type",Object)],E.prototype,"settingService",void 0),n.__decorate([(0,s.Autowired)(g.CommandService),n.__metadata("design:type",Object)],E.prototype,"commands",void 0),n.__decorate([(0,s.Autowired)(o.AppConfig),n.__metadata("design:type",Object)],E.prototype,"config",void 0),n.__decorate([(0,s.Autowired)(o.PreferenceService),n.__metadata("design:type",Object)],E.prototype,"preference",void 0),e.TerminalMenuContribution=E=n.__decorate([(0,g.Domain)(b.MenuContribution)],E)},96051:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalNetworkContribution=void 0;const n=t(85608),s=t(76003),o=t(41869),f=t(43718),b=t(26405);let g=class extends f.WithEventBus{onStart(){this.network.bindErrors()}handleBrowserConnectionOpen(E){this.network.setStatus(b.TerminalNetworkStatus.CONNECTED)}handleBrowserConnectionClose(E){this.network.setStatus(b.TerminalNetworkStatus.DISCONNECTED)}};e.TerminalNetworkContribution=g,n.__decorate([(0,s.Autowired)(b.ITerminalNetwork),n.__metadata("design:type",Object)],g.prototype,"network",void 0),n.__decorate([(0,s.Autowired)(b.ITerminalInternalService),n.__metadata("design:type",Object)],g.prototype,"service",void 0),n.__decorate([(0,f.OnEvent)(f.BrowserConnectionOpenEvent),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[f.BrowserConnectionOpenEvent]),n.__metadata("design:returntype",void 0)],g.prototype,"handleBrowserConnectionOpen",null),n.__decorate([(0,f.OnEvent)(f.BrowserConnectionCloseEvent),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[f.BrowserConnectionCloseEvent]),n.__metadata("design:returntype",void 0)],g.prototype,"handleBrowserConnectionClose",null),e.TerminalNetworkContribution=g=n.__decorate([(0,o.Domain)(o.ClientAppContribution)],g)},79404:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalPreferenceContribution=void 0;const n=t(85608),s=t(76003),o=t(41869),f=t(43718),b=t(26405),g=t(3276),_=t(91815);let E=class{constructor(){this.schema=g.terminalPreferenceSchema;const h=["git-bash","powershell","cmd","default"],{properties:{["terminal.type"]:c}}={...g.terminalPreferenceSchema};this.ptyTerminal.getOS().then(r=>{r===f.OperatingSystem.Windows&&this.preferenceSchemaProvider.setSchema({properties:{"terminal.type":{...c,enum:h}}},!0)})}};e.TerminalPreferenceContribution=E,n.__decorate([(0,s.Autowired)(b.ITerminalService),n.__metadata("design:type",_.NodePtyTerminalService)],E.prototype,"ptyTerminal",void 0),n.__decorate([(0,s.Autowired)(o.PreferenceSchemaProvider),n.__metadata("design:type",o.PreferenceSchemaProvider)],E.prototype,"preferenceSchemaProvider",void 0),e.TerminalPreferenceContribution=E=n.__decorate([(0,f.Domain)(o.PreferenceContribution),n.__metadata("design:paramtypes",[])],E)},11476:(x,e,t)=>{"use strict";var n;Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalRenderContribution=void 0;const s=t(85608),o=t(41869),f=t(30144),b=s.__importDefault(t(17632)),g=s.__importDefault(t(48139));let _=n=class{registerToolbarItems(u){u.registerItem({id:o.TERMINAL_COMMANDS.OPEN_SEARCH.id,command:o.TERMINAL_COMMANDS.OPEN_SEARCH.id,viewId:n.viewId,tooltip:(0,o.localize)("terminal.search")}),u.registerItem({id:o.TERMINAL_COMMANDS.CLEAR_CONTENT.id,command:o.TERMINAL_COMMANDS.CLEAR_CONTENT.id,viewId:n.viewId,tooltip:(0,o.localize)("terminal.menu.clearCurrentContent")}),u.registerItem({id:o.TERMINAL_COMMANDS.SPLIT.id,command:o.TERMINAL_COMMANDS.SPLIT.id,viewId:n.viewId,tooltip:(0,o.localize)("terminal.split")}),u.registerItem({id:o.TERMINAL_COMMANDS.REMOVE.id,command:o.TERMINAL_COMMANDS.REMOVE.id,viewId:n.viewId,tooltip:(0,o.localize)("terminal.remove")})}registerComponent(u){u.register("@opensumi/ide-terminal-next",{component:g.default,id:n.viewId},{title:(0,o.localize)("terminal.name"),priority:1,activateKeyBinding:"ctrl+`",containerId:n.viewId,titleComponent:b.default})}};e.TerminalRenderContribution=_,_.viewId=f.TERMINAL_CONTAINER_ID,e.TerminalRenderContribution=_=n=s.__decorate([(0,o.Domain)(o.ComponentContribution,o.TabBarToolbarContribution)],_)},17236:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalNextModule=void 0;const n=t(85608),s=t(76003),o=t(41869),f=t(26405),b=t(94620),g=t(3276),_=t(21623),E=t(98944),u=t(69061),h=t(7734),c=t(48520),r=t(102),l=t(53891),a=t(82022),d=t(12642),m=t(13663),p=t(89570),v=t(94486),y=t(46666),S=t(70406),A=t(12894),T=t(91815),D=t(29041),w=t(68611);let I=class extends o.BrowserModule{constructor(){super(...arguments),this.providers=[_.TerminalLifeCycleContribution,_.TerminalRenderContribution,_.TerminalCommandContribution,_.TerminalMenuContribution,_.TerminalKeybindingContribution,_.TerminalNetworkContribution,_.TerminalPreferenceContribution,{token:f.ITerminalApiService,useClass:E.TerminalApiService},{token:f.ITerminalController,useClass:h.TerminalController},{token:f.ITerminalTheme,useClass:D.TerminalTheme},{token:f.ITerminalSearchService,useClass:A.TerminalSearchService},{token:f.ITerminalHoverManagerService,useClass:l.TerminalHoverManagerService},{token:f.ITerminalGroupViewService,useClass:w.TerminalGroupViewService},{token:f.ITerminalErrorService,useClass:r.TerminalErrorService},{token:f.ITerminalService,useClass:T.NodePtyTerminalService},{token:f.ITerminalInternalService,useClass:a.TerminalInternalService},{token:f.ITerminalRestore,useClass:S.TerminalRestore},{token:g.ITerminalPreference,useClass:m.TerminalPreference},{token:f.ITerminalRenderProvider,useClass:y.TerminalRenderProvider},{token:f.ITerminalClientFactory2,useFactory:u.createTerminalClientFactory2},{token:f.ITerminalNetwork,useClass:d.TerminalNetworkService},{token:b.EnvironmentVariableServiceToken,useClass:c.TerminalEnvironmentService},{token:f.ITerminalProfileService,useClass:p.TerminalProfileService},{token:f.ITerminalProfileInternalService,useClass:v.TerminalProfileInternalService}],this.backServices=[{servicePath:f.ITerminalServicePath,clientToken:f.ITerminalService},{servicePath:f.ITerminalProcessPath,clientToken:b.EnvironmentVariableServiceToken}]}};e.TerminalNextModule=I,e.TerminalNextModule=I=n.__decorate([(0,s.Injectable)()],I)},67245:(x,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalBaseLinkProvider=void 0;class t{async provideLinks(s,o){var f;(f=this._activeLinks)===null||f===void 0||f.forEach(b=>b.dispose),this._activeLinks=await this._provideLinks(s),o(this._activeLinks)}}e.TerminalBaseLinkProvider=t},52826:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalExternalLinkProviderAdapter=void 0;const n=t(85608),s=t(76003),o=t(67245),f=t(28247),b=t(97144);let g=class extends o.TerminalBaseLinkProvider{constructor(E,u,h,c,r){super(),this._xterm=E,this._instance=u,this._externalLinkProvider=h,this._wrapLinkHandler=c,this._tooltipCallback=r}async _provideLinks(E){var u,h;let c=E-1,r=c;const l=[this._xterm.buffer.active.getLine(c)];for(;c>=0&&(!((u=this._xterm.buffer.active.getLine(c))===null||u===void 0)&&u.isWrapped);)l.unshift(this._xterm.buffer.active.getLine(c-1)),c--;for(;r<this._xterm.buffer.active.length&&(!((h=this._xterm.buffer.active.getLine(r+1))===null||h===void 0)&&h.isWrapped);)l.push(this._xterm.buffer.active.getLine(r+1)),r++;const a=(0,f.getXtermLineContent)(this._xterm.buffer.active,c,r,this._xterm.cols);if(a.trim().length===0)return[];const d=await this._externalLinkProvider.provideLinks(this._instance,a);return d?d.map(m=>{const p=(0,f.convertLinkRangeToBuffer)(l,this._xterm.cols,{startColumn:m.startIndex+1,startLineNumber:1,endColumn:m.startIndex+m.length+1,endLineNumber:1},c),v=a.substr(m.startIndex,m.length)||"",y=this._wrapLinkHandler((S,A)=>m.activate(A));return this.injector.get(b.TerminalLink,[this._xterm,p,v,this._xterm.buffer.active.viewportY,y,this._tooltipCallback,!0,m.label])}):[]}};e.TerminalExternalLinkProviderAdapter=g,n.__decorate([(0,s.Autowired)(s.INJECTOR_TOKEN),n.__metadata("design:type",s.Injector)],g.prototype,"injector",void 0),e.TerminalExternalLinkProviderAdapter=g=n.__decorate([(0,s.Injectable)({multiple:!0}),n.__metadata("design:paramtypes",[Function,Object,Object,Function,Function])],g)},28247:(x,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.convertLinkRangeToBuffer=t,e.convertBufferRangeToViewport=n,e.getXtermLineContent=s,e.positionIsInRange=o;function t(f,b,g,_){const E={start:{x:g.startColumn,y:g.startLineNumber+_},end:{x:g.endColumn-1,y:g.endLineNumber+_}};let u=0;const h=Math.ceil(g.startColumn/b);for(let l=0;l<Math.min(h);l++){const a=Math.min(b,g.startColumn-l*b);let d=0;const m=f[l];if(!m)break;for(let p=0;p<Math.min(b,a+d);p++){const v=m.getCell(p);v.getWidth()===2&&d++;const S=v.getChars();S.length>1&&(d-=S.length-1)}u+=d}let c=0;const r=Math.ceil(g.endColumn/b);for(let l=Math.max(0,h-1);l<r;l++){const a=l===h-1?(g.startColumn+u)%b:0,d=Math.min(b,g.endColumn+u-l*b),m=l===h-1?u:0;let p=0;const v=f[l];if(!v)break;for(let y=a;y<Math.min(b,d+p+m);y++){const S=v.getCell(y);S.getWidth()===2&&p++,y===b-1&&S.getChars()===""&&p++}c+=p}for(E.start.x+=u,E.end.x+=u+c;E.start.x>b;)E.start.x-=b,E.start.y++;for(;E.end.x>b;)E.end.x-=b,E.end.y++;return E}function n(f,b){return{start:{x:f.start.x-1,y:f.start.y-b-1},end:{x:f.end.x-1,y:f.end.y-b-1}}}function s(f,b,g,_){let E="";for(let u=b;u<=g;u++){const h=f.getLine(u);h&&(E+=h.translateToString(!0,0,_))}return E}function o(f,b){return!(f.y<b.start.y||f.y>b.end.y||f.y===b.start.y&&f.x<b.start.x||f.y===b.end.y&&f.x>b.end.x)}},29970:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalLinkManager=void 0;const n=t(85608),s=t(87083),o=t(76003),f=t(41869),b=t(43718),g=t(23418),_=t(14951),E=t(26405),u=t(69061),h=t(52826),c=t(11192),r=t(73481),{posix:l,win32:a}=b.path;let d=class extends b.Disposable{constructor(p,v){super(),this._xterm=p,this._client=v,this._standardLinkProviders=[],this._standardLinkProvidersDisposables=new b.DisposableCollection;const y=this._wrapLinkHandler((D,w)=>this._handleProtocolLink(w)),S=this.injector.get(c.TerminalProtocolLinkProvider,[this._xterm,y,this._tooltipCallback.bind(this)]);this._standardLinkProviders.push(S);const A=this._wrapLinkHandler((D,w)=>this._handleLocalLink(w)),T=this.injector.get(r.TerminalValidatedLocalLinkProvider,[this._xterm,this._client,A,this._wrapLinkHandler.bind(this),this._tooltipCallback.bind(this),async(D,w)=>w(await this._resolvePath(D))]);this._standardLinkProviders.push(T),this._registerStandardLinkProviders()}set processCwd(p){this._processCwd=p}_registerStandardLinkProviders(){this._standardLinkProvidersDisposables.dispose(),this._standardLinkProvidersDisposables=new b.DisposableCollection;for(const p of this._standardLinkProviders)this._standardLinkProvidersDisposables.push(this._xterm.registerLinkProvider(p))}_tooltipCallback(p,v,y,S){const A=this._xterm._core,T={width:A._renderService.dimensions.actualCellWidth,height:A._renderService.dimensions.actualCellHeight},D={width:this._xterm.cols,height:this._xterm.rows},w=A.element.getBoundingClientRect();return this._showHover({viewportRange:v,cellDimensions:T,terminalDimensions:D,boundingClientRect:w,modifierDownCallback:y,modifierUpCallback:S},this._getLinkHoverString(p.text,p.label),I=>p.activate(void 0,I),p)}_showHover(p,v,y,S){const A=this._hoverManager.showHover(p,v,y);return S?.onInvalidated(()=>A.dispose()),b.Disposable.create(()=>A.dispose())}registerExternalLinkProvider(p,v){const y=this.injector.get(h.TerminalExternalLinkProviderAdapter,[this._xterm,p,v,this._wrapLinkHandler.bind(this),this._tooltipCallback.bind(this)]),S=this._xterm.registerLinkProvider(y);return this._registerStandardLinkProviders(),S}_wrapLinkHandler(p){return async(v,y)=>{v?.preventDefault(),!(v&&!this._isLinkActivationModifierDown(v))&&p(v,y)}}get _localLinkRegex(){const p=this._client.os===b.OperatingSystem.Windows?r.winLocalLinkClause:r.unixLocalLinkClause;return new RegExp(`${p}(${r.lineAndColumnClause})`)}async _handleLocalLink(p){const v=await this._resolvePath(p);if(!v)return;const y=this.extractLineColumnInfo(p),S={startLineNumber:y.lineNumber,endLineNumber:y.lineNumber,startColumn:y.columnNumber,endColumn:y.columnNumber};await this._editorService.open(v.uri,{range:S})}_handleHypertextLink(p){this._openerService.open(p)}async _handleProtocolLink(p){const v=b.URI.parse(p);if(v.scheme===b.Schemes.file){const y=b.FileUri.fsPath(v);this._handleLocalLink(this._client.os!==b.OperatingSystem.Windows&&b.isWindows?y.replace(/\\/g,l.sep):y);return}this._handleHypertextLink(p)}_isLinkActivationModifierDown(p){return b.isOSX?p.metaKey:p.ctrlKey}get osPath(){return this._client.os===b.OperatingSystem.Windows?a:l}_getLinkHoverString(p,v){const y=this.preferenceService.get("editor.multiCursorModifier");let S="";y==="ctrlCmd"?b.isMacintosh?S=(0,b.localize)("terminalLinkHandler.followLinkAlt.mac","option + click"):S=(0,b.localize)("terminalLinkHandler.followLinkAlt","alt + click"):b.isMacintosh?S=(0,b.localize)("terminalLinkHandler.followLinkCmd","cmd + click"):S=(0,b.localize)("terminalLinkHandler.followLinkCtrl","ctrl + click");const A=(0,b.localize)("followLink","Follow link");return v=v||A,`${v} (${S})`}async _getUserHomeDir(){const p=await this._fileSystem.getCurrentUserHome();if(!p)throw new Error("Unable to get user home directory");return await this._fileSystem.getFsPath(p.uri)}_getUserHomeDirOnce(){return this._getHomeDirPromise||(this._getHomeDirPromise=this._getUserHomeDir()),this._getHomeDirPromise}async _preprocessPath(p){if(p.charAt(0)==="~"){const v=await this._getUserHomeDirOnce();if(!v)return null;p=this.osPath.join(v,p.substring(1))}else if(p.charAt(0)!=="/"&&p.charAt(0)!=="~")if(this._client.os===b.OperatingSystem.Windows)if(!p.match("^"+r.winDrivePrefix)&&!p.startsWith("\\\\?\\")){if(!this._processCwd)return null;p=this.osPath.join(this._processCwd,p)}else p=p.replace(/^\\\\\?\\/,"");else{if(!this._processCwd)return null;p=this.osPath.join(this._processCwd,p)}return p=this.osPath.normalize(p),p}async _resolvePath(p){const v=await this._preprocessPath(p);if(!v)return;const y=this.extractLinkUrl(v);if(y)try{const S=b.URI.file(y),A=await this._fileService.getFileStat(S.toString());if(A)return{uri:S,isDirectory:A.isDirectory}}catch{return}}extractLineColumnInfo(p){const v=this._localLinkRegex.exec(p),y={lineNumber:1,columnNumber:1};if(!v)return y;const S=this._client.os===b.OperatingSystem.Windows?r.winLineAndColumnMatchIndex:r.unixLineAndColumnMatchIndex;for(let A=0;A<r.lineAndColumnClause.length;A++){const T=S+r.lineAndColumnClauseGroupCount*A,D=v[T];if(D){y.lineNumber=parseInt(D,10);const w=v[T+2];w&&(y.columnNumber=parseInt(w,10));break}}return y}extractLinkUrl(p){const v=this._localLinkRegex.exec(p);return v?v[1]:null}};e.TerminalLinkManager=d,n.__decorate([(0,o.Autowired)(o.INJECTOR_TOKEN),n.__metadata("design:type",o.Injector)],d.prototype,"injector",void 0),n.__decorate([(0,o.Autowired)(),n.__metadata("design:type",g.WorkbenchEditorService)],d.prototype,"_editorService",void 0),n.__decorate([(0,o.Autowired)(f.IOpenerService),n.__metadata("design:type",Object)],d.prototype,"_openerService",void 0),n.__decorate([(0,o.Autowired)(_.IFileServiceClient),n.__metadata("design:type",Object)],d.prototype,"_fileService",void 0),n.__decorate([(0,o.Autowired)(_.IFileServiceClient),n.__metadata("design:type",Object)],d.prototype,"_fileSystem",void 0),n.__decorate([(0,o.Autowired)(f.PreferenceService),n.__metadata("design:type",Object)],d.prototype,"preferenceService",void 0),n.__decorate([(0,o.Autowired)(E.ITerminalHoverManagerService),n.__metadata("design:type",Object)],d.prototype,"_hoverManager",void 0),e.TerminalLinkManager=d=n.__decorate([(0,o.Injectable)({multiple:!0}),n.__metadata("design:paramtypes",[s.Terminal,u.TerminalClient])],d)},97144:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalLink=e.FOLDER_NOT_IN_WORKSPACE_LABEL=e.FOLDER_IN_WORKSPACE_LABEL=e.OPEN_FILE_LABEL=void 0;const n=t(85608),s=t(76003),o=t(41869),f=t(43718),b=t(28247),g=500;e.OPEN_FILE_LABEL=(0,f.localize)("terminal.openFile","Open file in editor"),e.FOLDER_IN_WORKSPACE_LABEL=(0,f.localize)("terminal.focusFolder","Focus folder in explorer"),e.FOLDER_NOT_IN_WORKSPACE_LABEL=(0,f.localize)("terminal.openFolder","Open folder in new window");let _=class extends f.Disposable{get onInvalidated(){return this._onInvalidated.event}constructor(u,h,c,r,l,a,d,m){super(),this._xterm=u,this.range=h,this.text=c,this._viewportY=r,this._activateCallback=l,this._tooltipCallback=a,this._isHighConfidenceLink=d,this.label=m,this._onInvalidated=new f.Emitter,this.decorations={pointerCursor:!1,underline:this._isHighConfidenceLink}}dispose(){var u,h,c;super.dispose(),(u=this._hoverListeners)===null||u===void 0||u.dispose(),this._hoverListeners=void 0,(h=this._tooltipScheduler)===null||h===void 0||h.dispose(),this._tooltipScheduler=void 0,(c=this._tooltipDisposable)===null||c===void 0||c.dispose(),this._tooltipDisposable=void 0}activate(u,h){this._activateCallback(u,h)}hover(u,h){this._hoverListeners=new f.DisposableCollection,this._hoverListeners.push((0,o.addDisposableListener)(document,"keydown",r=>{!r.repeat&&this._isModifierDown(r)&&this._enableDecorations()})),this._hoverListeners.push((0,o.addDisposableListener)(document,"keyup",r=>{!r.repeat&&!this._isModifierDown(r)&&this._disableDecorations()})),this._hoverListeners.push(this._xterm.onRender(r=>{const l=this.range.start.y-this._viewportY;l>=r.start&&l<=r.end&&this._onInvalidated.fire()})),this._isHighConfidenceLink&&(this._tooltipScheduler=new f.RunOnceScheduler(()=>{var r;this._tooltipDisposable=this._tooltipCallback(this,(0,b.convertBufferRangeToViewport)(this.range,this._viewportY),this._isHighConfidenceLink?()=>this._enableDecorations():void 0,this._isHighConfidenceLink?()=>this._disableDecorations():void 0),(r=this._tooltipScheduler)===null||r===void 0||r.dispose(),this._tooltipScheduler=void 0},this.preferenceService.get("editor.hover.delay")||g),this._tooltipScheduler.schedule());const c={x:u.pageX,y:u.pageY};this._hoverListeners.push((0,o.addDisposableListener)(document,"mousemove",r=>{var l;this._isModifierDown(r)?this._enableDecorations():this._disableDecorations(),(Math.abs(r.pageX-c.x)>window.devicePixelRatio*2||Math.abs(r.pageY-c.y)>window.devicePixelRatio*2)&&(c.x=r.pageX,c.y=r.pageY,(l=this._tooltipScheduler)===null||l===void 0||l.schedule())}))}leave(){var u,h,c;(u=this._hoverListeners)===null||u===void 0||u.dispose(),this._hoverListeners=void 0,(h=this._tooltipScheduler)===null||h===void 0||h.dispose(),this._tooltipScheduler=void 0,(c=this._tooltipDisposable)===null||c===void 0||c.dispose(),this._tooltipDisposable=void 0}_enableDecorations(){this.decorations.pointerCursor||(this.decorations.pointerCursor=!0),this.decorations.underline||(this.decorations.underline=!0)}_disableDecorations(){this.decorations.pointerCursor&&(this.decorations.pointerCursor=!1),this.decorations.underline!==this._isHighConfidenceLink&&(this.decorations.underline=this._isHighConfidenceLink)}_isModifierDown(u){return f.isOSX?u.metaKey:u.ctrlKey}};e.TerminalLink=_,n.__decorate([(0,s.Autowired)(o.PreferenceService),n.__metadata("design:type",Object)],_.prototype,"preferenceService",void 0),e.TerminalLink=_=n.__decorate([(0,s.Injectable)({multiple:!0}),n.__metadata("design:paramtypes",[Function,Object,String,Number,Function,Function,Boolean,Object])],_)},11192:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalProtocolLinkProvider=void 0;const n=t(85608),s=t(76003),o=t(26405),f=t(67245),b=t(28247),g=t(97144);let _=class extends f.TerminalBaseLinkProvider{constructor(h,c,r){super(),this._xterm=h,this._activateCallback=c,this._tooltipCallback=r}_provideLinks(h){var c,r;let l=h-1,a=l;const d=[this._xterm.buffer.active.getLine(l)];for(;l>=0&&(!((c=this._xterm.buffer.active.getLine(l))===null||c===void 0)&&c.isWrapped);)d.unshift(this._xterm.buffer.active.getLine(l-1)),l--;for(;a<this._xterm.buffer.active.length&&(!((r=this._xterm.buffer.active.getLine(a+1))===null||r===void 0)&&r.isWrapped);)d.push(this._xterm.buffer.active.getLine(a+1)),a++;return this._linkComputerTarget=new E(this._xterm,l,a),o.LinkComputer.computeLinks(this._linkComputerTarget).map(p=>{var v;const y=(0,b.convertLinkRangeToBuffer)(d,this._xterm.cols,p.range,l);return this.injector.get(g.TerminalLink,[this._xterm,y,((v=p.url)===null||v===void 0?void 0:v.toString())||"",this._xterm.buffer.active.viewportY,this._activateCallback,this._tooltipCallback,!0,void 0])})}};e.TerminalProtocolLinkProvider=_,n.__decorate([(0,s.Autowired)(s.INJECTOR_TOKEN),n.__metadata("design:type",s.Injector)],_.prototype,"injector",void 0),e.TerminalProtocolLinkProvider=_=n.__decorate([(0,s.Injectable)({multiple:!0}),n.__metadata("design:paramtypes",[Function,Function,Function])],_);class E{constructor(h,c,r){this._xterm=h,this._lineStart=c,this._lineEnd=r}getLineCount(){return 1}getLineContent(){return(0,b.getXtermLineContent)(this._xterm.buffer.active,this._lineStart,this._lineEnd,this._xterm.cols)}}},73481:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalValidatedLocalLinkProvider=e.lineAndColumnClauseGroupCount=e.unixLineAndColumnMatchIndex=e.winLineAndColumnMatchIndex=e.lineAndColumnClause=e.winLocalLinkClause=e.winDrivePrefix=e.unixLocalLinkClause=void 0;const n=t(85608),s=t(76003),o=t(11050),f=t(66894),b=t(43718),g=t(97408),_=t(67245),E=t(28247),u=t(97144),h="(\\.\\.?|\\~)",c="\\/",r="[^\\0\\s!`&*()\\[\\]'\":;\\\\]";e.unixLocalLinkClause="(("+h+"|("+r+")+)?("+c+"("+r+")+)+)",e.winDrivePrefix="(?:\\\\\\\\\\?\\\\)?[a-zA-Z]:";const l="("+e.winDrivePrefix+"|\\.\\.?|\\~)",a="(\\\\|\\/)",d="[^\\0<>\\?\\|\\/\\s!`&*()\\[\\]'\":;]";e.winLocalLinkClause="(("+l+"|("+d+")+)?("+a+"("+d+")+)+)",e.lineAndColumnClause=[`((\\S*)['"], line ((\\d+)( column (\\d+))?))`,`((\\S*)['"],((\\d+)(:(\\d+))?))`,"((\\S*) on line ((\\d+)(, column (\\d+))?))","((\\S*):line ((\\d+)(, column (\\d+))?))","(([^\\s\\(\\)]*)(\\s?[\\(\\[](\\d+)(,\\s?(\\d+))?)[\\)\\]])",`(([^:\\s\\(\\)<>'"\\[\\]]*)(:(\\d+))?(:(\\d+))?)`].join("|").replace(/ /g,"[\xA0 ]"),e.winLineAndColumnMatchIndex=12,e.unixLineAndColumnMatchIndex=11,e.lineAndColumnClauseGroupCount=6;const m=2e3;let p=class extends _.TerminalBaseLinkProvider{constructor(y,S,A,T,D,w){super(),this._xterm=y,this._client=S,this._activateFileCallback=A,this._wrapLinkHandler=T,this._tooltipCallback=D,this._validationCallback=w}async _provideLinks(y){var S,A;const T=[];let D=y-1,w=D;const I=[this._xterm.buffer.active.getLine(D)];for(;D>=0&&(!((S=this._xterm.buffer.active.getLine(D))===null||S===void 0)&&S.isWrapped);)I.unshift(this._xterm.buffer.active.getLine(D-1)),D--;for(;w<this._xterm.buffer.active.length&&(!((A=this._xterm.buffer.active.getLine(w+1))===null||A===void 0)&&A.isWrapped);)I.push(this._xterm.buffer.active.getLine(w+1)),w++;const R=(0,E.getXtermLineContent)(this._xterm.buffer.active,D,w,this._xterm.cols);if(R.length>m)return[];const M=new RegExp(this._localLinkRegex,"g");let O,P=-1;for(;(O=M.exec(R))!==null;){let L=O[0];if(!L||(P=R.indexOf(L,P+1),M.lastIndex=P+L.length,P<0))break;((R.startsWith("--- a/")||R.startsWith("+++ b/"))&&P===4||R.startsWith("diff --git")&&(L.startsWith("a/")||L.startsWith("b/")))&&(L=L.substring(2),P+=2);const N=(0,E.convertLinkRangeToBuffer)(I,this._xterm.cols,{startColumn:P+1,startLineNumber:1,endColumn:P+L.length+1,endLineNumber:1},D),k=await new Promise(B=>{this._validationCallback(L,async F=>{if(F){const W=F.isDirectory?await this._isDirectoryInsideWorkspace(F.uri)?u.FOLDER_IN_WORKSPACE_LABEL:u.FOLDER_NOT_IN_WORKSPACE_LABEL:u.OPEN_FILE_LABEL,V=this._wrapLinkHandler((H,G)=>{F.isDirectory?this._handleLocalFolderLink(F.uri):this._activateFileCallback(H,G)});B(this.injector.get(u.TerminalLink,[this._xterm,N,L,this._xterm.buffer.active.viewportY,V,this._tooltipCallback,!0,W]))}else B(void 0)})});k&&T.push(k)}return T}get _localLinkRegex(){const y=this._client.os===b.OperatingSystem.Windows?e.winLocalLinkClause:e.unixLocalLinkClause;return new RegExp(`${y}(${e.lineAndColumnClause})`)}async _handleLocalFolderLink(y){if(await this._isDirectoryInsideWorkspace(y)){await this.commandService.executeCommand("revealInExplorer",y);return}this.appConfig.isElectronRenderer&&this.windowService.openWorkspace(y,{newWindow:!0})}async _isDirectoryInsideWorkspace(y){const S=await this.workspaceService.roots;for(const A of S)if(b.URI.parse(A.uri).isEqualOrParent(y))return!0;return!1}};e.TerminalValidatedLocalLinkProvider=p,n.__decorate([(0,s.Autowired)(s.INJECTOR_TOKEN),n.__metadata("design:type",s.Injector)],p.prototype,"injector",void 0),n.__decorate([(0,s.Autowired)(f.IWindowService),n.__metadata("design:type",Object)],p.prototype,"windowService",void 0),n.__decorate([(0,s.Autowired)(b.CommandService),n.__metadata("design:type",Object)],p.prototype,"commandService",void 0),n.__decorate([(0,s.Autowired)(g.IWorkspaceService),n.__metadata("design:type",Object)],p.prototype,"workspaceService",void 0),n.__decorate([(0,s.Autowired)(o.AppConfig),n.__metadata("design:type",Object)],p.prototype,"appConfig",void 0),e.TerminalValidatedLocalLinkProvider=p=n.__decorate([(0,s.Injectable)({multiple:!0}),n.__metadata("design:paramtypes",[Function,Function,Function,Function,Function,Function])],p)},62810:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.DEFAULT_COL=e.DEFAULT_ROW=e.AttachAddon=void 0;const n=t(43718);class s extends n.Disposable{constructor(){super(...arguments),this._onData=new n.Emitter,this.onData=this._onData.event,this._onExit=new n.Emitter,this.onExit=this._onExit.event,this._onTime=new n.Emitter,this.onTime=this._onTime.event,this._lastInputTime=0,this._onBeforeProcessData=new n.Emitter,this.onBeforeProcessData=this._onBeforeProcessData.event}setConnection(f){this._disposeConnection&&(this._disposeConnection.dispose(),this._disposeConnection=null),this.connection=f,f&&(this._disposeConnection=new n.Disposable(f.onData(b=>{let g=b;if(typeof b=="string"){const _={data:b};this._onBeforeProcessData.fire(_),_.data!==void 0&&(g=_.data)}if(this._onData.fire(g),this._terminal.write(typeof g=="string"?g:new Uint8Array(g,0,g.byteLength)),this._lastInputTime){const _=Date.now()-this._lastInputTime;this._lastInputTime=0,this._onTime.fire(_)}})),f.onExit&&this._disposeConnection.addDispose(f.onExit(b=>{this._onExit.fire(b)})))}async activate(f){this._terminal=f,this.addDispose(n.Disposable.create(()=>{var b;return(b=this._disposeConnection)===null||b===void 0?void 0:b.dispose()})),this.addDispose(f.onData(b=>this._sendData(b))),this.addDispose(f.onBinary(b=>this._sendBinary(b)))}_sendData(f){!this.connection||this.connection.readonly||(this._timeResponse(),this.connection.sendData(f))}_sendBinary(f){if(!this.connection||this.connection.readonly)return;const b=new Uint8Array(f.length);for(let g=0;g<f.length;++g)b[g]=f.charCodeAt(g)&255;this._timeResponse(),this.connection.sendData(b)}_timeResponse(){this._lastInputTime=Date.now()}}e.AttachAddon=s,e.DEFAULT_ROW=80,e.DEFAULT_COL=24},98944:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalApiService=void 0;const n=t(85608),s=n.__importDefault(t(56005)),o=t(76003),f=t(43718),b=t(28423),g=t(26405);let _=class{constructor(){this._onDidOpenTerminal=new f.Emitter,this._onDidCloseTerminal=new f.Emitter,this._onDidTerminalTitleChange=new f.Emitter,this._onDidChangeActiveTerminal=new f.Emitter,this.onDidOpenTerminal=this._onDidOpenTerminal.event,this.onDidCloseTerminal=this._onDidCloseTerminal.event,this.onDidTerminalTitleChange=this._onDidTerminalTitleChange.event,this.onDidChangeActiveTerminal=this._onDidChangeActiveTerminal.event,this.controller.onDidOpenTerminal(u=>{this._onDidOpenTerminal.fire(u)}),this.controller.onDidCloseTerminal(u=>{this._onDidCloseTerminal.fire(u)}),this.controller.onDidTerminalTitleChange(u=>{this._onDidTerminalTitleChange.fire(u)}),this.controller.onDidChangeActiveTerminal(u=>{this._onDidChangeActiveTerminal.fire(u)})}get terminals(){return Array.from(this.controller.clients.values()).map(u=>({id:u.id,name:u.name,isActive:this.view.currentWidgetId.get()===u.id}))}async createTerminal(u,h){const c=await this.controller.createTerminalWithWidgetByTerminalOptions({terminalOptions:u,id:h}),r={get id(){return c.id},get name(){return c.name},get processId(){return c.pid},show:(l=!0)=>{const a=c.widget;this.view.selectWidget(a.id),this.controller.showTerminalPanel(),l||setTimeout(()=>c.focus())},hide:()=>{this.controller.hideTerminalPanel()},dispose:()=>{this.view.removeWidget(c.widget.id),this.controller.clients.delete(c.id)}};return await c.attached.promise,r.show(),r}async getProcessId(u){const h=this.controller.clients.get(u);if(h)return h.pid}async getDefaultShellPath(){const u=await this.terminalProfileInternalService.resolveDefaultProfile();return u?.path||"/bin/bash"}sendText(u,h,c=!0){this.service.sendText(u,`${h}${c?"\r":""}`)}showTerm(u,h=!0){const c=this.controller.clients.get(u);if(!c)return;const r=c.widget;this.view.selectWidget(r.id),this.controller.showTerminalPanel(),h||setTimeout(()=>c.focus())}hideTerm(u){this.controller.clients.get(u)&&this.controller.hideTerminalPanel()}removeTerm(u){const h=this.controller.clients.get(u);h&&(this.view.removeWidget(h.widget.id),this.controller.clients.delete(u))}createWidget(u,h){const c=u,r=this.view.createGroup(),l=this.view.getGroup(r),a=this.view.createWidget(l,c,!1,!0);return(0,b.transaction)(d=>{a.name.set((0,s.default)(u),d)}),this.view.selectWidget(c),a.onRender(()=>{h(a.element)}),a}scheduleReconnection(){return this.network.scheduleReconnection()}};e.TerminalApiService=_,n.__decorate([(0,o.Autowired)(g.ITerminalController),n.__metadata("design:type",Object)],_.prototype,"controller",void 0),n.__decorate([(0,o.Autowired)(g.ITerminalGroupViewService),n.__metadata("design:type",Object)],_.prototype,"view",void 0),n.__decorate([(0,o.Autowired)(g.ITerminalInternalService),n.__metadata("design:type",Object)],_.prototype,"service",void 0),n.__decorate([(0,o.Autowired)(g.ITerminalNetwork),n.__metadata("design:type",Object)],_.prototype,"network",void 0),n.__decorate([(0,o.Autowired)(g.ITerminalProfileInternalService),n.__metadata("design:type",Object)],_.prototype,"terminalProfileInternalService",void 0),e.TerminalApiService=_=n.__decorate([(0,o.Injectable)(),n.__metadata("design:paramtypes",[])],_)},69061:(x,e,t)=>{"use strict";var n;Object.defineProperty(e,"__esModule",{value:!0}),e.createTerminalClientFactory2=e.TerminalClientFactory=e.TerminalClient=void 0;const s=t(85608),o=t(76003),f=t(41869),b=t(67889),g=t(43718),_=t(23418),E=t(42933),u=t(28423),h=t(72665),c=t(88913),r=t(10560),l=t(26405),a=t(94620),d=t(3276),m=t(29970),p=t(62810),v=t(90853),y=t(35628),S=t(70845),A=t(41685);let T=n=class extends g.Disposable{constructor(){super(),this.isTaskExecutor=!1,this._ready=!1,this._hasOutput=!1,this._areLinksReady=!1,this._onInput=new g.Emitter,this.onInput=this._onInput.event,this._onOutput=new g.Emitter,this.onOutput=this._onOutput.event,this._onExit=new g.Emitter,this.onExit=this._onExit.event,this._onTitleChange=new g.Emitter,this.onTitleChange=this._onTitleChange.event,this._onLinksReady=new g.Emitter,this.onLinksReady=this._onLinksReady.event,this._onResponseTime=new g.Emitter,this.onResponseTime=this._onResponseTime.event,this._onNameChangeEmitter=new g.Emitter,this.onNameChange=this._onNameChangeEmitter.event,this._name="",this.init()}async init(){this.xterm=this.injector.get(A.XTerm,[{xtermOptions:{theme:this.theme.terminalTheme,...this.internalService.getOptions(),...this.terminalPreference.toJSON()}}]),this.addDispose(this.xterm),this.addDispose(this.internalService.onError(R=>{var M;this.messageService.error(R.message),!((M=R.launchConfig)===null||M===void 0)&&M.executable?this.updateTerminalName({name:"error: "+R.launchConfig.executable}):this.updateTerminalName({name:"error"})})),this.addDispose(this.internalService.onProcessChange(R=>{R.sessionId===this.id&&(0,u.transaction)(M=>{this.widget.processName.set(R.processName,M)})}))}onWidgetShow(){this._show&&(this._show.resolve(),this._show=null),this._layout()}async setupWidget(R){this._widget=R,this._prepare(),this.addDispose(g.Disposable.create(()=>{n.WORKSPACE_PATH_CACHED.delete(R.group.id)})),this.addDispose(this.terminalPreference.onChange(async({name:M,value:O})=>{!R.show&&!this._show&&(this._show=new g.Deferred),this._show&&await this._show.promise,this._setOption(M,O),this.xterm.updatePreferences({[M]:O})})),R.show?this.onWidgetShow():this.addDispose(R.onShow(M=>{M&&this.onWidgetShow()})),this.addDispose(R.onError(M=>{var O;M||((O=this._error)===null||O===void 0||O.resolve(),this._layout())})),this.addDispose(R.onResize(async()=>{this._debounceResize()}))}async init2(R,M){var O,P,L,N;if(this._uid=M?.id||R.id,this.setupWidget(R),!M||Object.keys(M).length===0){const F=await this.terminalProfileInternalService.resolveDefaultProfile();M={id:this._uid,config:F}}if(!M.cwd){const W=R.group.widgets.get();if(W.length>1&&W[0]){const V=await this.internalService.getCwd(W[0].id);V&&(M.cwd=V)}}await this._checkWorkspace();const k=(L=(O=M.cwd)!==null&&O!==void 0?O:(P=M?.config)===null||P===void 0?void 0:P.cwd)!==null&&L!==void 0?L:this._workspacePath,B=this.controller.convertProfileToLaunchConfig(M.config,k);this._launchConfig=B,this._launchConfig.__fromTerminalOptions&&(this._terminalOptions=this._launchConfig.__fromTerminalOptions),this.name=B.name||"",B.initialText&&this.xterm.raw.writeln(B.initialText),B.env||(B.env={}),(N=this.environmentService.mergedCollection)===null||N===void 0||N.applyToProcessEnvironment(B.env,this.applicationService.backendOS,this.variableResolver.resolve.bind(this.variableResolver)),this.addDispose(this.environmentService.onDidChangeCollections(F=>{F.applyToProcessEnvironment(B.env,this.applicationService.backendOS,this.variableResolver.resolve.bind(this.variableResolver))})),this._attachXterm(),this._attachAfterRender()}get name(){return this._name}set name(R){this._name!==R&&(this._name=R,this._onNameChangeEmitter.fire(R))}get term(){return this.xterm.raw}get pid(){return this.internalService.getProcessId(this.id)}get launchConfig(){return this._launchConfig}get createOptions(){}get container(){return this.xterm.container}get id(){return this._uid}get widget(){return this._widget}get ready(){return this._ready}get attached(){return this._attached}get firstOutput(){return this._firstStdout}get show(){return this._show}get areLinksReady(){return this._areLinksReady}get os(){return this._os}_prepareAddons(){this._attachAddon=new p.AttachAddon;const R=this._attachAddon.onBeforeProcessData;if(this.preferenceService.get("terminal.integrated.localEchoEnabled")){const M=this.preferenceService.get("terminal.integrated.localEchoExcludePrograms",S.DEFAULT_LOCAL_ECHO_EXCLUDE),O=new S.TypeAheadAddon(R,{localEchoExcludePrograms:Array.isArray(M)?M:S.DEFAULT_LOCAL_ECHO_EXCLUDE,localEchoLatencyThreshold:this.preferenceService.get("terminal.integrated.localEchoLatencyThreshold",30),localEchoStyle:this.preferenceService.get("terminal.integrated.localEchoStyle","dim")},this.preferenceService.onPreferenceChanged);this.addDispose(O),this.xterm.raw.loadAddon(O)}this.addDispose([this._attachAddon,this._attachAddon.onData(M=>{this._onOutput.fire({id:this.id,data:M})}),this._attachAddon.onExit(M=>{var O,P;this.logger.warn(`${this.id} ${this.name} exit with ${M}`),M!==0&&this.messageService.error(`terminal ${this.name}(${(P=(O=this._attachAddon.connection)===null||O===void 0?void 0:O.ptyInstance)===null||P===void 0?void 0:P.shellPath}) exited with non-zero code ${M}`),this._onExit.fire({id:this.id,code:M})}),this._attachAddon.onTime(M=>{this._onResponseTime.fire(M),this.reporter.performance(g.REPORT_NAME.TERMINAL_MEASURE,{duration:M,msg:"terminal.response"})})]),this.xterm.raw.loadAddon(this._attachAddon)}_xtermEvents(){this.addDispose(this.xterm.raw.onResize(R=>{this._hasOutput&&this._doResize()}))}_attachXterm(){this._prepareAddons(),this._xtermEvents(),this._linkManager=this.injector.get(m.TerminalLinkManager,[this.xterm.raw,this]),this._linkManager.processCwd=this._workspacePath,this.addDispose(this._linkManager),this._areLinksReady=!0,this._onLinksReady.fire(this)}_doResize(){this.internalService.resize(this.id,this.xterm.raw.cols,this.xterm.raw.rows)}_prepare(){var R,M,O,P,L;(R=this._attached)===null||R===void 0||R.reject("TerminalClient is Re-initialization"),(M=this._firstStdout)===null||M===void 0||M.reject("TerminalClient is Re-initialization"),(O=this._error)===null||O===void 0||O.reject("TerminalClient is Re-initialization"),(P=this._show)===null||P===void 0||P.reject("TerminalClient is Re-initialization"),this._ready=!1,this._hasOutput=!1,this._attached=new g.Deferred,this._show=new g.Deferred,this._error=new g.Deferred,this._firstStdout=new g.Deferred,(L=this._attachAddon)===null||L===void 0||L.setConnection(void 0),this.internalService.getOS().then(k=>{this._os=k});const{dispose:N}=this.onOutput(()=>{N(),this._hasOutput=!0,this._firstStdout.resolve()})}_attachAfterRender(){queueMicrotask(()=>{var R;this._layout(),this.attach(),this.focus(),this.widget.show||(R=this._show)===null||R===void 0||R.promise.then(async()=>{this._show=new g.Deferred})})}async _pickWorkspace(){var R;if(this.workspace.isMultiRootWorkspaceOpened&&!this._widget.recovery){const M=this.workspace.tryGetRoots();return await this.quickPick.show(M.map(P=>new g.URI(P.uri).codeUri.fsPath),{placeholder:(0,f.localize)("terminal.selectCWDForNewTerminal")})}else return this.workspace.workspace?new g.URI((R=this.workspace.workspace)===null||R===void 0?void 0:R.uri).codeUri.fsPath:void 0}async _checkWorkspace(){const R=this._widget;if(n.WORKSPACE_PATH_CACHED.has(R.group.id))this._workspacePath=n.WORKSPACE_PATH_CACHED.get(R.group.id);else{const M=await this._pickWorkspace();M&&(this._workspacePath=M,n.WORKSPACE_PATH_CACHED.set(R.group.id,this._workspacePath))}}async checkHealthy(){return await this.internalService.check([this.id])}displayUnHealthyMessage(){const R=this.term,M=R.options.theme,O=(L,N,k)=>{const B=" ",F=L.split(`
|
|
28584
|
+
`)}get status(){return this._validationStatus}}let r=class extends o.Disposable{constructor(){super(),this._onDidStateChange=new f.Emitter,this.onDidStateChange=this._onDidStateChange.event,this._onDidRegisterTaskProvider=new f.Emitter,this.onDidRegisterTaskProvider=this._onDidRegisterTaskProvider.event,this.providerHandler=0,this.runningTasks=new Map,this.toQuickOpenItem=a=>{var d;return new o.QuickOpenItem({label:a._label||"",detail:a instanceof E.ContributedTask?`${a.command.name||""} ${a.command.args?(d=a.command.args)===null||d===void 0?void 0:d.join(" "):""}`:void 0,run:m=>m===o.Mode.OPEN?(this.runTask(a),!0):!1})},this.providers=new Map,this.providerTypes=new Map,this.addDispose([this.taskSystem.onDidStateChange(a=>this._onDidStateChange.fire(a)),this.taskSystem.onDidBackgroundTaskBegin(a=>this._onDidStateChange.fire(a)),this.taskSystem.onDidBackgroundTaskEnded(a=>this._onDidStateChange.fire(a)),this.taskSystem.onDidProblemMatched(a=>this._onDidStateChange.fire(a))])}get outputChannel(){return this._outputChannel||(this._outputChannel=this.outputService.getChannel((0,o.localize)("task.outputchannel.name"))),this._outputChannel}get workspaceFolders(){return this._workspaceFolders||this.tryGetWorkspaceFolders(),this._workspaceFolders}tryGetWorkspaceFolders(){this._workspaceFolders=this.workspaceService.tryGetRoots().map(a=>o.Uri.parse(a.uri))}async runTaskCommand(){const a=await this.getGroupedTasks(),d=await this.getWorkspaceTasks(a),[m,p]=this.combineQuickItems(a,d);this.quickOpenService.open({onType:(v,y)=>y([...m,...p])},{placeholder:(0,o.formatLocalize)("TaskService.pickRunTask")})}run(a){return this.runTask(a)}async attach(a,d){if(this.runningTasks.has(a))return;const[,,,m]=a.split(",");if(m)if(this.providerTypes.has(m)){const p=await this.getTask(this.workspaceFolders[0],a);p&&(this.taskSystem.attach(p,d),this.runningTasks.set(a,p))}else{const p=this._onDidRegisterTaskProvider.event(async v=>{if(v===m){const y=await this.getTask(this.workspaceFolders[0],a);y&&(this.taskSystem.attach(y,d),this.runningTasks.set(a,y),p.dispose())}})}}async terminateTask(a){const d=this.taskSystem.getActiveTasks();for(const m of d)m._id===a&&await this.taskSystem.terminate(m)}getTask(a,d,m=!1){const p=(0,o.isString)(d)?d:this.taskDefinitionRegistry.createTaskIdentifier(d,console);return p===void 0?Promise.resolve(void 0):this.getWorkspaceGroupedTasks(a).then(v=>{if(!v)return Promise.resolve(void 0);const y=v.get(a.toString());if(!y)return Promise.resolve(void 0);for(const S of y)if(S.matches(p,m)||S._id===d||S._label===d)return S})}async runTask(a){const d=await this.taskSystem.run(a);return d.promise.then(m=>{this.runningTasks.has(a._id)&&this.runningTasks.delete(a._id),this.outputChannel.appendLine(`Task ${a._label} done, exit code ${m.exitCode}`)}),this.runningTasks.set(a._id,a),Promise.resolve(d.promise)}async tasks(a){var d;const m=await this.getWorkspaceGroupedTasks(),p=[];for(const v of m.values())for(const y of v)a&&a.type&&((d=y.getDefinition())===null||d===void 0?void 0:d.type)===a.type&&p.push(y);return p}async getWorkspaceGroupedTasks(a=this.workspaceFolders[0]){const d=await this.getGroupedTasks(),m=await this.getWorkspaceTasks(d),p=[];for(const S of d)S.tasks&&S.tasks.length>0&&p.push(...S.tasks);const v=m?.get(a.toString());v&&v.set&&p.push(...v.set.tasks);const y=new Map;return y.set(a.toString(),p),y}async getGroupedTasks(){const a={};for(const m of this.taskDefinitionRegistry.all())a[m.taskType]=!0;a.shell=!0,a.process=!0;const d=[];for(const[,m]of this.providers){const p=await m.provideTasks(a);d.push(p)}return d}toQuickOpenGroupItem(a,d,m){return new o.QuickOpenItem({groupLabel:a?(0,o.formatLocalize)("task.contribute"):void 0,run:d,showBorder:a,label:m,value:{type:m,grouped:!0},iconClass:(0,o.getIcon)("folder")})}combineQuickItems(a,d){var m,p;const v=[],y=[];let S=!0;for(const A of a){const T=w=>w===o.Mode.OPEN?(this.quickOpenService.open({onType:(I,R)=>A.tasks.length===0?R([new o.QuickOpenItem({value:"none",label:(0,o.formatLocalize)("task.cannotFindTask",A.type),run:M=>M===o.Mode.OPEN})]):R(A.tasks.map(this.toQuickOpenItem))}),!1):!0,D=this.toQuickOpenGroupItem(S,T,A.type);v.push(D),S=!1}if(d){for(const A of d.values())if(!((m=A.configurations)===null||m===void 0)&&m.byIdentifier&&Object.keys((p=A.configurations)===null||p===void 0?void 0:p.byIdentifier).forEach(T=>{var D;const w=(D=A.configurations)===null||D===void 0?void 0:D.byIdentifier[T];y.push(this.toQuickOpenItem(w))}),A.set&&A.set.tasks.length>0)for(const T of A.set.tasks)y.push(this.toQuickOpenItem(T))}return[y,v]}async getWorkspaceTasks(a){return this.updateWorkspaceTasks(a)}updateWorkspaceTasks(a){return this.workspaceFolders.length===0?Promise.resolve(new Map):this.workspaceFolders.length===1?this.computeWorkspaceFolderTasks(this.workspaceFolders[0],a).then(d=>{const m=new Map;return m.set(this.workspaceFolders[0].toString(),d),m}):Promise.resolve(void 0)}computeWorkspaceFolderTasks(a,d){return new Promise(async m=>{const p=this.preferences.get("tasks"),v=new Map;for(const y of d)for(const S of y.tasks)E.ContributedTask.is(S)&&v.set(S.defines._key,S);if(p&&p.tasks){let y;const S=[];let A=!1;const T=new c(this.outputChannel),D=(0,h.parse)({uri:a,name:a.path,index:0},f.platform,p,T,this.taskDefinitionRegistry,this.problemMatcher,this.problemPattern);if(D.validationStatus.isOK()||(A=!0,this.showOutput()),D.configured&&D.configured.length>0){y={byIdentifier:Object.create(null)};for(const w of D.configured)y.byIdentifier[w.configures._key]=w}S.push(...D.custom),y&&y.byIdentifier&&Object.keys(y.byIdentifier).forEach(w=>{if(v.has(w)){const I=(0,h.createCustomTask)(v.get(w),y.byIdentifier[w]);y.byIdentifier[w]=I}}),m({workspaceFolder:{uri:a,name:a.path,index:0},set:{tasks:S},configurations:y,hasErrors:A})}else m({workspaceFolder:{uri:a,name:a.path,index:0},set:{tasks:[]},configurations:{byIdentifier:{}},hasErrors:!1})})}showOutput(){this.outputChannel.appendLine("There are task errors. See the output for details.")}rerunLastTask(){return this.taskSystem.rerun()}registerTaskProvider(a,d){const m=this.providerHandler+=1;return this.providers.set(m,a),this.providerTypes.set(d,m),this._onDidRegisterTaskProvider.fire(d),{dispose:()=>{this.providers.delete(m),this.providerTypes.delete(d)}}}};e.TaskService=r,n.__decorate([(0,s.Autowired)(b.OutputService),n.__metadata("design:type",b.OutputService)],r.prototype,"outputService",void 0),n.__decorate([(0,s.Autowired)(g.IWorkspaceService),n.__metadata("design:type",Object)],r.prototype,"workspaceService",void 0),n.__decorate([(0,s.Autowired)(o.QuickOpenService),n.__metadata("design:type",Object)],r.prototype,"quickOpenService",void 0),n.__decorate([(0,s.Autowired)(o.PreferenceService),n.__metadata("design:type",Object)],r.prototype,"preferences",void 0),n.__decorate([(0,s.Autowired)(_.ITaskSystem),n.__metadata("design:type",Object)],r.prototype,"taskSystem",void 0),n.__decorate([(0,s.Autowired)(f.ITaskDefinitionRegistry),n.__metadata("design:type",Object)],r.prototype,"taskDefinitionRegistry",void 0),n.__decorate([(0,s.Autowired)(f.IProblemMatcherRegistry),n.__metadata("design:type",Object)],r.prototype,"problemMatcher",void 0),n.__decorate([(0,s.Autowired)(f.IProblemPatternRegistry),n.__metadata("design:type",Object)],r.prototype,"problemPattern",void 0),e.TaskService=r=n.__decorate([(0,s.Injectable)(),n.__metadata("design:paramtypes",[])],r)},66893:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalTaskSystem=void 0;const n=t(85608),s=t(76003),o=t(43718),f=t(80907),b=t(1041),g=t(12968),_=t(95268),{deepClone:E}=o.objects,{Path:u}=o.path;let h=class extends o.Disposable{constructor(){super(...arguments),this.executorId=0,this.activeTaskExecutors=new Map,this._onDidStateChange=new o.Emitter,this._onDidBackgroundTaskBegin=new o.Emitter,this._onDidBackgroundTaskEnded=new o.Emitter,this._onDidProblemMatched=new o.Emitter,this.taskExecutors=[],this.onDidStateChange=this._onDidStateChange.event,this.onDidBackgroundTaskBegin=this._onDidBackgroundTaskBegin.event,this.onDidBackgroundTaskEnded=this._onDidBackgroundTaskEnded.event,this.onDidProblemMatched=this._onDidProblemMatched.event}run(r){return this.currentTask=r,this.executeTask(r)}attach(r,l){return this.currentTask=r,this.attachTask(r,l)}async buildShellConfig(r){let l="";const a=r.name,d=r.args,m=[],p=[];if(a&&(typeof a=="string"?l=a:l=a.value),m.push(l),d)for(const v of d)typeof v=="string"?m.push(v):m.push(v.value);for(const v of m)v.indexOf(u.separator)>-1?p.push(await this.resolveVariables(v.split(u.separator))):p.push(await this.resolveVariable(v));return{args:["-c",`${p.join(" ")}`]}}findAvailableExecutor(){return this.taskExecutors.find(r=>r.taskStatus===_.TaskStatus.PROCESS_EXITED)}async createTaskExecutor(r,l){const a=await this.resolveMatchers(r.configurationProperties.problemMatchers),d=new g.ProblemCollector(a),m=this.injector.get(_.TerminalTaskExecutor,[r,l,d,this.executorId]);return this.executorId+=1,this.taskExecutors.push(m),this.addDispose(m.onDidTerminalWidgetRemove(()=>{this.taskExecutors=this.taskExecutors.filter(p=>p.executorId!==m.executorId)})),m}async attachTask(r,l){const d=(await this.createTaskExecutor(r,l.launchConfig)).attach(l);return this.lastTask=r,{task:r,kind:1,promise:d}}async executeTask(r){var l,a,d;const m=r.command&&r.command.runtime===b.RuntimeType.CustomExecution,p=await this.resolveMatchers(r.configurationProperties.problemMatchers),v=new g.ProblemCollector(p),{args:y}=await this.buildShellConfig(r.command),S={name:this.createTerminalName(r),args:y,isExtensionOwnedTerminal:m,env:((l=r.command.options)===null||l===void 0?void 0:l.env)||{},cwd:!((a=r.command.options)===null||a===void 0)&&a.cwd?await this.resolveVariable((d=r.command.options)===null||d===void 0?void 0:d.cwd):await this.resolveVariable("${workspaceFolder}"),disablePreserveHistory:!0};let A=this.findAvailableExecutor(),T=!1;A?(T=!0,A.updateProblemCollector(v),A.updateLaunchConfig(S),A.reset()):A=await this.createTaskExecutor(r,S),T?this._onDidStateChange.fire(b.TaskEvent.create("start",r,A.terminalId)):this.addDispose(A.onDidTerminalCreated(I=>{this._onDidStateChange.fire(b.TaskEvent.create("start",r,I))})),T||(this.addDispose(A.onDidTaskProcessExit(I=>{this._onDidStateChange.fire(b.TaskEvent.create("processEnded",r,I)),this._onDidStateChange.fire(b.TaskEvent.create("end",r))})),this.addDispose(A.onDidBackgroundTaskBegin(()=>this._onDidBackgroundTaskBegin.fire(b.TaskEvent.create("backgroundTaskBegin",r)))),this.addDispose(A.onDidBackgroundTaskEnd(()=>this._onDidBackgroundTaskEnded.fire(b.TaskEvent.create("backgroundTaskEnded",r)))),this.addDispose(A.onDidProblemMatched(I=>this._onDidProblemMatched.fire(b.TaskEvent.create("problemMatched",r,I)))));const D=A.execute(r,T),w=r.getMapKey();return this.activeTaskExecutors.set(w,{promise:Promise.resolve(D),task:r,executor:A}),this._onDidStateChange.fire(b.TaskEvent.create("active",r)),await A.processReady.promise,this._onDidStateChange.fire(b.TaskEvent.create("processStarted",r,A.processId)),this.lastTask=r,{task:r,kind:1,promise:D}}createTerminalName(r){return(0,o.formatLocalize)("TerminalTaskSystem.terminalName",r.getQualifiedLabel()||r.configurationProperties.name)}async resolveVariables(r){const l=[];for(const a of r)l.push(await this.resolveVariable(a));return l.join(u.separator)}async resolveVariable(r){if((0,o.isString)(r))return await this.variableResolver.resolve(r);if(r!==void 0)return{value:await this.variableResolver.resolve(r.value),quoting:r.quoting};throw new Error("Should never try to resolve undefined.")}async resolveMatchers(r){if(r==null||r.length===0)return[];const l=[];for(const a of r){let d;if((0,o.isString)(a)?a[0].startsWith("$")?d=this.problemMatcher.get(a.substring(1)):d=this.problemMatcher.get(a):d=a,!d)continue;const m=d.filePrefix!==void 0;if(!m)l.push(d);else{const p=E(d);m&&(p.filePrefix=await this.resolveVariable(p.filePrefix)),l.push(p)}}return l}getActiveTasks(){return Array.from(this.activeTaskExecutors.values()).map(r=>r.task)}async terminate(r){const l=r.getMapKey(),a=this.activeTaskExecutors.get(l);if(!a)return Promise.resolve({task:void 0,success:!0});const{success:d}=await a.executor.terminate();return this.activeTaskExecutors.delete(l),{task:r,success:d}}async rerun(){return this.lastTask&&await this.executeTask(this.lastTask)}isActive(){throw new Error("Method not implemented.")}isActiveSync(){throw new Error("Method not implemented.")}getBusyTasks(){throw new Error("Method not implemented.")}canAutoTerminate(){throw new Error("Method not implemented.")}terminateAll(){throw new Error("Method not implemented.")}revealTask(r){throw new Error("Method not implemented.")}customExecutionComplete(r,l){throw new Error("Method not implemented.")}};e.TerminalTaskSystem=h,n.__decorate([(0,s.Autowired)(s.INJECTOR_TOKEN),n.__metadata("design:type",s.Injector)],h.prototype,"injector",void 0),n.__decorate([(0,s.Autowired)(o.IProblemMatcherRegistry),n.__metadata("design:type",Object)],h.prototype,"problemMatcher",void 0),n.__decorate([(0,s.Autowired)(f.IVariableResolverService),n.__metadata("design:type",Object)],h.prototype,"variableResolver",void 0),e.TerminalTaskSystem=h=n.__decorate([(0,s.Injectable)()],h)},93950:(x,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ITaskSystem=e.ITaskExecutor=e.ITaskService=void 0,e.ITaskService=Symbol("ITaskService"),e.ITaskExecutor=Symbol("ITaskExecutor"),e.ITaskSystem=Symbol("ITaskSystem")},1041:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TaskEvent=e.TaskSorter=e.ExecutionEngine=e.InMemoryTask=e.ContributedTask=e.ConfiguringTask=e.CustomTask=e.CommonTask=e.RunOptions=e.RunOnOptions=e.TaskSourceKind=e.TaskGroup=e.CommandString=e.RuntimeType=e.PresentationOptions=e.PanelKind=e.RevealProblemKind=e.RevealKind=e.CommandOptions=e.CUSTOMIZED_TASK_TYPE=e.ShellQuoting=e.TASK_RUNNING_STATE=void 0;const n=t(40191),s=t(43718),{basename:o}=s.path;e.TASK_RUNNING_STATE=new n.RawContextKey("taskRunning",!1);var f;(function(w){w[w.Escape=1]="Escape",w[w.Strong=2]="Strong",w[w.Weak=3]="Weak"})(f||(e.ShellQuoting=f={})),e.CUSTOMIZED_TASK_TYPE="$customized",function(w){function I(R){if(!R)return w.Strong;switch(R.toLowerCase()){case"escape":return w.Escape;case"strong":return w.Strong;case"weak":return w.Weak;default:return w.Strong}}w.from=I}(f||(e.ShellQuoting=f={}));var b;(function(w){w.defaults={cwd:"${workspaceFolder}"}})(b||(e.CommandOptions=b={}));var g;(function(w){w[w.Always=1]="Always",w[w.Silent=2]="Silent",w[w.Never=3]="Never"})(g||(e.RevealKind=g={})),function(w){function I(R){switch(R.toLowerCase()){case"always":return w.Always;case"silent":return w.Silent;case"never":return w.Never;default:return w.Always}}w.fromString=I}(g||(e.RevealKind=g={}));var _;(function(w){w[w.Never=1]="Never",w[w.OnProblem=2]="OnProblem",w[w.Always=3]="Always"})(_||(e.RevealProblemKind=_={})),function(w){function I(R){switch(R.toLowerCase()){case"always":return w.Always;case"never":return w.Never;case"onproblem":return w.OnProblem;default:return w.OnProblem}}w.fromString=I}(_||(e.RevealProblemKind=_={}));var E;(function(w){w[w.Shared=1]="Shared",w[w.Dedicated=2]="Dedicated",w[w.New=3]="New"})(E||(e.PanelKind=E={})),function(w){function I(R){switch(R.toLowerCase()){case"shared":return w.Shared;case"dedicated":return w.Dedicated;case"new":return w.New;default:return w.Shared}}w.fromString=I}(E||(e.PanelKind=E={}));var u;(function(w){w.defaults={echo:!0,reveal:g.Always,revealProblems:_.Never,focus:!1,panel:E.Shared,showReuseMessage:!0,clear:!1}})(u||(e.PresentationOptions=u={}));var h;(function(w){w[w.Shell=1]="Shell",w[w.Process=2]="Process",w[w.CustomExecution=3]="CustomExecution",w[w.CustomExecution2=4]="CustomExecution2"})(h||(e.RuntimeType=h={})),function(w){function I(R){switch(R.toLowerCase()){case"shell":return w.Shell;case"process":return w.Process;case"customExecution":return w.CustomExecution;default:return w.Process}}w.fromString=I}(h||(e.RuntimeType=h={}));var c;(function(w){function I(R){return(0,s.isString)(R)?R:R.value}w.value=I})(c||(e.CommandString=c={}));var r;(function(w){w.Clean={_id:"clean",isDefault:!1},w.Build={_id:"build",isDefault:!1},w.Rebuild={_id:"rebuild",isDefault:!1},w.Test={_id:"test",isDefault:!1};function I(M){return M===w.Clean._id||M===w.Build._id||M===w.Rebuild._id||M===w.Test._id}w.is=I;function R(M){if(M!==void 0)return(0,s.isString)(M)?I(M)?{_id:M,isDefault:!1}:void 0:M}w.from=R})(r||(e.TaskGroup=r={}));var l;(function(w){w.Workspace="workspace",w.Extension="extension",w.InMemory="inMemory",w.WorkspaceFile="workspaceFile",w.User="user"})(l||(e.TaskSourceKind=l={}));var a;(function(w){w[w.default=1]="default",w[w.folderOpen=2]="folderOpen"})(a||(e.RunOnOptions=a={}));var d;(function(w){w.defaults={reevaluateOnRerun:!0,runOn:a.default}})(d||(e.RunOptions=d={}));class m{constructor(I,R,M,O,P,L){this._label="",this._id=I,R&&(this._label=R),M&&(this.type=M),this.runOptions=O,this.configurationProperties=P,this._source=L}getDefinition(I){}getMapKey(){return this._id}getRecentlyUsedKey(){}clone(){return this.fromObject(Object.assign({},this))}getWorkspaceFolder(){}getWorkspaceFileName(){}getTelemetryKind(){return"unknown"}matches(I,R=!1){if(I===void 0)return!1;if((0,s.isString)(I))return I===this._label||I===this.configurationProperties.identifier||R&&I===this._id;const M=this.getDefinition(!0);return M!==void 0&&M._key===I._key}getQualifiedLabel(){const I=this.getWorkspaceFolder();return I?`${this._label} (${I.name})`:this._label}getTaskExecution(){return{id:this._id,task:this}}addTaskLoadMessages(I){this._taskLoadMessages===void 0&&(this._taskLoadMessages=[]),I&&(this._taskLoadMessages=this._taskLoadMessages.concat(I))}get taskLoadMessages(){return this._taskLoadMessages}}e.CommonTask=m;class p extends m{constructor(I,R,M,O,P,L,N,k){super(I,M,void 0,N,k,R),this.command={},this._source=R,this.hasDefinedMatchers=L,P&&(this.command=P)}customizes(){if(this._source&&this._source.customizes)return this._source.customizes}getDefinition(I=!1){if(I&&this._source.customizes!==void 0)return this._source.customizes;{let R;switch(this.command?this.command.runtime:void 0){case h.Shell:R="shell";break;case h.Process:R="process";break;case h.CustomExecution:R="customExecution";break;case void 0:R="$composite";break;default:throw new Error("Unexpected task runtime")}return{type:R,_key:this._id,id:this._id}}}static is(I){return I instanceof p}getMapKey(){const I=this._source.config.workspaceFolder;return I?`${I.uri.toString()}|${this._id}`:this._id}getRecentlyUsedKey(){const I=this._source.config.workspaceFolder;if(!I)return;let R=this.configurationProperties.identifier;this._source.kind!==l.Workspace&&(R+=this._source.kind);const M={type:e.CUSTOMIZED_TASK_TYPE,folder:I.uri.toString(),id:R};return JSON.stringify(M)}getWorkspaceFolder(){return this._source.config.workspaceFolder}getWorkspaceFileName(){return this._source.config.workspace&&this._source.config.workspace.configuration?o(this._source.config.workspace.configuration.toString()):void 0}getTelemetryKind(){return this._source.customizes?"workspace>extension":"workspace"}fromObject(I){return new p(I._id,I._source,I._label,I.type,I.command,I.hasDefinedMatchers,I.runOptions,I.configurationProperties)}}e.CustomTask=p;class v extends m{constructor(I,R,M,O,P,L,N){super(I,M,O,L,N,R),this._source=R,this.configures=P}static is(I){return I instanceof v}fromObject(I){return I}getDefinition(){return this.configures}getWorkspaceFileName(){return this._source.config.workspace&&this._source.config.workspace.configuration?o(this._source.config.workspace.configuration.toString()):void 0}}e.ConfiguringTask=v;class y extends m{constructor(I,R,M,O,P,L,N,k,B){super(I,M,O,k,B,R),this.defines=P,this.hasDefinedMatchers=N,this.command=L}getDefinition(){return this.defines}static is(I){return I instanceof y}getMapKey(){const I=this._source.workspaceFolder;return I?`${this._source.scope.toString()}|${I.uri.toString()}|${this._id}`:`${this._source.scope.toString()}|${this._id}`}getRecentlyUsedKey(){const I={type:"contributed",scope:this._source.scope,id:this._id};return this._source.scope===3&&this._source.workspaceFolder&&(I.folder=this._source.workspaceFolder.uri.toString()),JSON.stringify(I)}getWorkspaceFolder(){return this._source.workspaceFolder}getTelemetryKind(){return"extension"}fromObject(I){return new y(I._id,I._source,I._label,I.type,I.defines,I.command,I.hasDefinedMatchers,I.runOptions,I.configurationProperties)}}e.ContributedTask=y;class S extends m{constructor(I,R,M,O,P,L){super(I,M,O,P,L,R),this._source=R}static is(I){return I instanceof S}getTelemetryKind(){return"composite"}fromObject(I){return new S(I._id,I._source,I._label,I.type,I.runOptions,I.configurationProperties)}}e.InMemoryTask=S;var A;(function(w){w[w.Process=1]="Process",w[w.Terminal=2]="Terminal"})(A||(e.ExecutionEngine=A={})),function(w){w._default=w.Terminal}(A||(e.ExecutionEngine=A={}));class T{constructor(I){this._order=new Map;for(let R=0;R<I.length;R++)this._order.set(I[R].uri.toString(),R)}compare(I,R){const M=I.getWorkspaceFolder(),O=R.getWorkspaceFolder();if(M&&O){let P=this._order.get(M.uri.toString());P=P===void 0?0:P+1;let L=this._order.get(O.uri.toString());return L=L===void 0?0:L+1,P===L?I._label.localeCompare(R._label):P-L}else return!M&&O?-1:M&&!O?1:0}}e.TaskSorter=T;var D;(function(w){function I(R,M,O){if(M){const P={kind:R,taskId:M._id,taskName:M.configurationProperties.name,runType:M.configurationProperties.isBackground?"background":"singleRun",group:M.configurationProperties.group,processId:void 0,exitCode:void 0,terminalId:void 0,__task:M};return R==="start"?P.terminalId=O:R==="processStarted"?P.processId=O:R==="processEnded"?P.exitCode=O:R==="problemMatched"&&(P.problems=O),Object.freeze(P)}else return Object.freeze({kind:"changed"})}w.create=I})(D||(e.TaskEvent=D={}))},90305:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});const n=t(85608),s=n.__importDefault(t(14041)),o=n.__importDefault(t(75655));let f=0,b=null;e.default=g=>{const{start:_,stop:E,self:u,left:h,right:c,wholeWidth:r,last:l}=g,a=p=>{f=p.clientX,b=u,_()},d=p=>{if(!f)return!1;const v=p.clientX,y=(v-f)/r*100;f=v,y<0?(u&&u.increase(y),c&&c.increase(-y)):b&&b===h&&(u&&u.increase(-y),h&&h.increase(y))},m=p=>{f=0,b=null,u.resize(),h&&h.resize(),c&&c.resize(),E()};return s.default.createElement("div",{className:o.default.resizeDelegetContainer,onMouseUp:m,onMouseMove:d},!l&&s.default.createElement("div",{className:o.default.resizeDelegateBar,onMouseDown:a,onMouseUp:m}))}},92699:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ResizeDirection=void 0;const n=t(85608),s=n.__importDefault(t(53373)),o=n.__importDefault(t(14041)),f=t(41869),b=t(7473),g=n.__importDefault(t(90305)),_=n.__importDefault(t(75655));var E;(function(c){c[c.vertical=0]="vertical",c[c.horizontal=1]="horizontal"})(E||(e.ResizeDirection=E={}));const u=({index:c,widget:r,wholeWidth:l,setEvent:a,self:d,left:m,right:p,last:v})=>{const y=(0,f.useAutorun)(r.shadowDynamic);return o.default.createElement("div",{key:`resize-item-${c}`,style:{width:`${y}%`},className:_.default.resizeHandler},o.default.createElement(g.default,{wholeWidth:l,start:()=>a(!0),stop:()=>a(!1),self:d,left:m,right:p,last:v}))},h=({widget:c,dynamic:r,draw:l,handleRemoveWidget:a,widgetsLength:d})=>{const m=(0,f.useAutorun)(r);return o.default.createElement("div",{key:c.id,style:{width:`${m}%`},className:_.default.resizeItem},l(c),d>1&&o.default.createElement("div",{className:(0,s.default)(_.default.closeBtn,(0,f.getIcon)("close")),onClick:()=>{a(c.id)}}))};e.default=c=>{const{group:r,shadow:l}=c,a=(0,f.useAutorun)(r.widgets),[d,m]=o.default.useState(!1),[p,v]=o.default.useState(1/0),y=(0,f.useInjectable)(b.ITerminalGroupViewService),S=o.default.useRef(null);o.default.useEffect(()=>{S.current&&S.current.clientHeight!==p&&v(S.current.clientWidth)});const A=o.default.useCallback(T=>{y.removeWidget(T)},[]);return o.default.createElement("div",{className:_.default.resizeWrapper,ref:S},o.default.createElement("div",{style:{pointerEvents:d?"all":"none"},className:_.default.resizeDelegate},a&&a.map((T,D)=>{const w=D-1>-1?a[D-1]:null,I=a[D],R=D+1<a.length?a[D+1]:null;return o.default.createElement(u,{index:D,widget:T,wholeWidth:p,setEvent:m,self:I,left:w,right:R,last:D===a.length-1})})),o.default.createElement("div",{style:{pointerEvents:d?"none":"all"},className:_.default.resizePanel},a&&a.map(T=>o.default.createElement(h,{widget:T,dynamic:l?T.dynamic:T.shadowDynamic,draw:c.draw,handleRemoveWidget:A,widgetsLength:a.length}))))}},65586:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.renderAddItem=e.renderInfoItem=void 0;const n=t(85608),s=n.__importDefault(t(53373)),o=n.__importDefault(t(12784)),f=n.__importStar(t(14041)),b=t(80564),g=t(41869),_=t(89897),E=t(1149),u=t(7443),h=t(26405),c=n.__importDefault(t(99886)),r=a=>{var d,m,p,v;const y=(0,g.useInjectable)(u.IconService),S=(0,o.default)(()=>a.onClick&&a.onClick(),20),A=(0,o.default)(()=>a.onClose&&a.onClose(),20),T=(0,g.useDesignStyles)(c.default.item_container,"item_container"),D=(0,g.useDesignStyles)(c.default.tab_item_selected,"tab_item_selected"),w=(0,g.useDesignStyles)(c.default.item_info_name,"item_info_name"),I=(0,g.useDesignStyles)(c.default.tab_close_icon,"tab_close_icon"),R=(0,g.useInjectable)(E.LayoutViewSizeConfig),M=(0,f.useRef)(null),{group:O}=a;if(!O)return null;const{options:P,id:L}=O,N=(0,g.useAutorun)(O.editable),k=(0,g.useAutorun)(O.snapshot),B=(0,f.useCallback)(W=>{W.key==="Enter"&&a.onInputEnter&&L&&a.onInputEnter(L,W.target.value)},[L,a.onInputEnter]);(0,f.useEffect)(()=>{var W;a.selected&&((W=M.current)===null||W===void 0||W.scrollIntoView())},[M,a.selected]);let F;return P?.icon&&(!((d=P.icon)===null||d===void 0)&&d.id?F=y.fromString(`$(${(m=P.icon)===null||m===void 0?void 0:m.id})`):P.icon instanceof g.URI?F=y.fromIcon(P?.icon.toString()):(!((p=P.icon)===null||p===void 0)&&p.light||!((v=P?.icon)===null||v===void 0)&&v.dark)&&(F=a.theme==="light"?y.fromIcon(P.icon.light.toString()):y.fromIcon(P.icon.dark.toString()))),f.default.createElement("div",{ref:M,className:(0,s.default)({[T]:!0,[D]:!!a.selected}),style:{height:R.panelTitleBarHeight},onClick:()=>S(),onContextMenu:W=>a.onContextMenu&&a.onContextMenu(W)},N?f.default.createElement("input",{autoFocus:!0,ref:W=>W&&W.select(),className:c.default.item_info_input,defaultValue:k,onClick:W=>W.stopPropagation(),onBlur:()=>a.onInputBlur&&O.id&&a.onInputBlur(O.id),onKeyDown:W=>B(W)}):f.default.createElement("div",{id:O.id,className:w,title:k},k!==""?f.default.createElement(f.default.Fragment,null,f.default.createElement(b.Icon,{iconClass:F||(0,g.getIcon)(k?.toLowerCase()||"terminal")||(0,g.getIcon)("terminal"),style:{marginRight:4,color:"inherit",fontSize:14}}),f.default.createElement("span",{className:c.default.item_title},k)):f.default.createElement(_.Loading,null)),N?f.default.createElement("div",null):f.default.createElement("div",{className:(0,s.default)([(0,g.getIcon)("close"),I]),onClick:W=>{W.stopPropagation(),A()}}))};e.renderInfoItem=r;const l=a=>{const d=(0,o.default)(()=>a.onClick&&a.onClick(),20),m=a.getKeybinding&&a.getKeybinding(g.TERMINAL_COMMANDS.ADD.id),p=m?`${(0,g.localize)("terminal.new")}(${m})`:(0,g.localize)("terminal.new"),v=(0,g.useDesignStyles)(c.default.tab_item_wrapper,"tab_item_wrapper");return f.default.createElement("div",{className:v},f.default.createElement("div",{title:p,className:(0,s.default)({[(0,g.getIcon)("plus")]:!0,[c.default.item_add]:!0}),onClick:()=>d()}),f.default.createElement("div",{title:(0,g.localize)("terminal.new.type"),className:(0,s.default)({[(0,g.getIcon)("down")]:!0,[c.default.item_more]:!0}),onClick:a.onDropdown}))};e.renderAddItem=l,e.default=a=>{switch(a.type||h.ItemType.info){case h.ItemType.info:return(0,f.createElement)(a.provider.infoItemRender,a);case h.ItemType.add:return(0,f.createElement)(a.provider.addItemRender,a);default:return null}}},17632:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});const n=t(85608),s=n.__importStar(t(14041)),o=t(97267),f=t(41869),b=t(52416),g=t(26405),_=t(88023),E=n.__importDefault(t(65586)),u=n.__importDefault(t(99886));e.default=()=>{const h=(0,f.useInjectable)(g.ITerminalGroupViewService),c=(0,f.useInjectable)(g.ITerminalRenderProvider),r=(0,f.useInjectable)(_.TerminalContextMenuService),l=(0,f.useInjectable)(b.IThemeService),a=(0,f.useInjectable)(f.KeybindingRegistry),d=(0,s.useRef)(),[m,p]=(0,s.useState)("dark"),v=(0,f.useDesignStyles)(u.default.tab_contents,"tab_contents"),y=(0,f.useAutorun)(h.groups),S=(0,f.useAutorun)(h.currentGroup),A=(0,s.useCallback)(()=>(l.getCurrentTheme().then(T=>{p(T.type)}),l.onThemeChange(T=>{p(T.type)})),[m,l]);return(0,s.useEffect)(()=>{const T=A();return()=>{T.dispose()}},[]),s.default.createElement("div",{className:u.default.view_container},s.default.createElement("div",{className:u.default.tabs},s.default.createElement(o.Scrollbars,{forwardedRef:T=>T?d.current=T.ref:null},s.default.createElement("div",{className:v},y.filter(Boolean).map((T,D)=>s.default.createElement(E.default,{key:T.id,group:T,selected:S&&S.id===T.id,onInputBlur:()=>T.unedit(),onInputEnter:(w,I)=>T.rename(I),onClick:()=>h.selectGroup(D),onClose:()=>h.removeGroup(D),onContextMenu:w=>r.onTabContextMenu(w,D),provider:c,theme:m})),s.default.createElement("div",{className:u.default.button},s.default.createElement(E.default,{type:g.ItemType.add,onClick:()=>{const T=h.createGroup(),D=h.getGroup(T);h.createWidget(D),h.selectGroup(T)},getKeybinding:T=>{const D=a.getKeybindingsForCommand(T);return Array.isArray(D)&&D[0]&&a.acceleratorFor(D[0],"")[0]||""},onDropdown:T=>r.onDropDownContextMenu(T),provider:c,theme:m}))))))}},7066:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalVariable=void 0;const n=t(85608),s=n.__importDefault(t(14041)),o=t(43718),f=t(94620),b=n.__importDefault(t(74599));function g(E,u){E.forEach((h,c)=>{h.forEach(r=>{u.add((0,f.mutatorTypeLabel)(r.type,r.value,c))})})}const _=({diff:E})=>{const u=s.default.useMemo(()=>{const c=new Set;return E?.added&&E?.added.size>0&&g(E.added,c),E?.changed&&E.changed.size>0&&g(E.changed,c),Array.from(c.values())},[E]),h=s.default.useMemo(()=>{if(!E?.removed||E?.removed.size===0)return[];const c=new Set;return g(E.removed,c),Array.from(c.values())},[E]);return s.default.createElement("div",{className:b.default.variable_container},u.length>0&&s.default.createElement(s.default.Fragment,null,s.default.createElement("h3",null,(0,o.localize)("terminal.environment.changes")),u.map((c,r)=>s.default.createElement("p",{key:c+r,className:b.default.variable_change},c))),h.length>0&&s.default.createElement(s.default.Fragment,null,s.default.createElement("h3",null,(0,o.localize)("terminal.environment.removal")),h.map((c,r)=>s.default.createElement("p",{key:c+r,className:b.default.variable_change},c))))};e.TerminalVariable=_},48139:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});const n=t(85608),s=n.__importDefault(t(53373)),o=n.__importDefault(t(12784)),f=n.__importDefault(t(14041)),b=t(41869),g=t(26405),_=n.__importStar(t(92699)),E=n.__importDefault(t(73567)),u=n.__importDefault(t(76970));t(86650),e.default=()=>{const h=(0,b.useInjectable)(g.ITerminalController),c=(0,b.useInjectable)(g.ITerminalSearchService),r=(0,b.useInjectable)(g.ITerminalErrorService),l=(0,b.useInjectable)(g.ITerminalNetwork),a=f.default.useRef(null),d=f.default.useRef(null),m=(0,b.useInjectable)(g.ITerminalGroupViewService),p=(0,b.useAutorun)(m.currentGroupId),v=(0,b.useAutorun)(m.currentGroupIndex),y=(0,b.useAutorun)(m.groups);f.default.useEffect(()=>{const k=c.onVisibleChange(B=>{B&&a.current&&(a.current.focus(),a.current.value.length>0&&a.current.setSelectionRange(0,a.current.value.length))});return()=>k.dispose()},[c,a.current]);const[S,A]=f.default.useState(h.themeBackground);(0,b.useEventEffect)(h.onThemeBackgroundChange,k=>{A(k)});const[T,D]=f.default.useState(r.errors),w=(0,o.default)(()=>{D(r.errors)},b.FRAME_THREE);(0,b.useEventEffect)(r.onErrorsChange,w);const I=f.default.useCallback((k,B)=>{const F=h.findClientFromWidgetId(k.id);let W;return F?W=l.shouldReconnect(F.id)?void 0:T.get(F.id):W=T.get(k.id),f.default.createElement(u.default,{show:v===B,error:W,widget:k})},[v,h,T,l,m]),[R,M]=f.default.useState(c.isVisible);(0,b.useEventEffect)(c.onVisibleChange,k=>{M(k)});const[O,P]=f.default.useState(""),L=f.default.useCallback(k=>{c.text=k.target.value,c.search(),P(k.target.value)},[c]),N=f.default.useCallback(k=>{k.key==="Enter"&&c.search(),k.key==="Escape"&&(c.close(),c.clear())},[c]);return f.default.useEffect(()=>{d.current&&(h.initContextKey(d.current),h.viewReady.resolve())},[d.current]),f.default.createElement("div",{ref:d,className:E.default.terminalWrapper,style:{backgroundColor:S},"data-group-current":p},R&&f.default.createElement("div",{className:E.default.terminalSearch},f.default.createElement("div",{className:"kt-input-box"},f.default.createElement("input",{autoFocus:!0,ref:a,placeholder:(0,b.localize)("common.find"),value:O,onChange:L,onKeyDown:N})),f.default.createElement("div",{className:(0,s.default)(E.default.closeBtn,(0,b.getIcon)("close")),onClick:()=>c.close()})),y.map((k,B)=>{if(k.activated.get())return f.default.createElement("div",{"data-group-rendered":k.activated.get(),key:`terminal-${k.id}`,style:{display:v===B?"block":"none"},className:E.default.group,onFocus:h.focus.bind(h),onBlur:h.blur.bind(h),onContextMenu:h.onContextMenu.bind(h)},f.default.createElement(_.default,{shadow:!1,useFlex:!1,direction:_.ResizeDirection.horizontal,group:k,draw:F=>I(F,B)}))}))}},76970:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});const n=t(85608),s=n.__importDefault(t(14041)),o=t(41869),f=t(26405),b=n.__importDefault(t(73567));function g(_,E,u){const h=()=>{u.removeWidget(_.id)},c=()=>{E.fix(_.id)};return _?.type===f.ETerminalErrorType.CREATE_FAIL?s.default.createElement("div",{className:b.default.terminalCover},s.default.createElement("div",null,(0,o.localize)("terminal.can.not.create"),": ",_.message),s.default.createElement("div",null,s.default.createElement("a",{onClick:h},(0,o.localize)("terminal.stop")),(0,o.localize)("terminal.or"),s.default.createElement("a",{onClick:c},(0,o.localize)("terminal.try.recreate")))):_.stopped?s.default.createElement("div",{className:b.default.terminalCover},s.default.createElement("div",null,(0,o.localize)("terminal.disconnected")),s.default.createElement("div",null,(0,o.localize)("terminal.can.not.reconnect"),s.default.createElement("a",{onClick:c},(0,o.localize)("terminal.try.reconnect")))):s.default.createElement("div",{className:b.default.terminalCover},s.default.createElement("div",null,(0,o.localize)("terminal.disconnected")),s.default.createElement("div",null,s.default.createElement("a",{onClick:h},(0,o.localize)("terminal.stop")),(0,o.localize)("terminal.or"),s.default.createElement("a",{onClick:c},(0,o.localize)("terminal.try.reconnect"))))}e.default=({widget:_,error:E,show:u})=>{const h=s.default.useRef(null),c=(0,o.useInjectable)(f.ITerminalErrorService),r=(0,o.useInjectable)(f.ITerminalGroupViewService);s.default.useEffect(()=>{h.current&&(_.element=h.current)},[]),s.default.useEffect(()=>{_.show=u},[u]),s.default.useEffect(()=>{_.error=!!E},[E]);const l=()=>{r.selectWidget(_.id)};return s.default.createElement("div",{className:b.default.terminalContainer},E?g(E,c,r):null,s.default.createElement("div",{"data-term-id":_.id,style:{display:E?"none":"block"},className:b.default.terminalContent,onFocus:l,ref:h}))}},21623:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});const n=t(85608);n.__exportStar(t(71852),e),n.__exportStar(t(43397),e),n.__exportStar(t(7082),e),n.__exportStar(t(11476),e),n.__exportStar(t(63341),e),n.__exportStar(t(96051),e),n.__exportStar(t(79404),e)},71852:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalCommandContribution=void 0;const n=t(85608),s=t(76003),o=t(41869),f=t(63067),b=t(26405),g=t(48520),_=t(35628),E=t(94620);let u=class{onReconnect(){this.terminalController.reconnect()}onDisposeSideEffects(){}setDefaultTerminalType(c){this.preference.update("terminal.type",c)}registerCommands(c){c.registerCommand({...o.TERMINAL_COMMANDS.OPEN_SEARCH,iconClass:(0,o.getIcon)("search")},{execute:()=>{if(this.search.isVisible){this.search.close();return}this.search.open()}}),c.registerCommand({...o.TERMINAL_COMMANDS.SPLIT,iconClass:(0,o.getIcon)("embed")},{execute:()=>{const r=this.view.currentGroup.get();if(!r)return;const l=this.view.createWidget(r);this.view.selectWidget(l.id)}}),c.registerCommand(o.TERMINAL_COMMANDS.CLEAR,{execute:()=>{this.view.clear()}}),c.registerCommand(o.TERMINAL_COMMANDS.ADD,{execute:async()=>{await this.terminalController.createTerminalWithWidget({}),this.terminalController.showTerminalPanel()}}),c.registerCommand(o.TERMINAL_COMMANDS.TOGGLE_TERMINAL,{execute:()=>{this.terminalController.toggleTerminalPanel()}}),c.registerCommand(o.TERMINAL_COMMANDS.SEARCH_NEXT,{execute:()=>{this.search.isVisible?this.search.search():this.search.open()}}),c.registerCommand({...o.TERMINAL_COMMANDS.REMOVE,iconClass:(0,o.getIcon)("delete")},{execute:async()=>{const r=this.view.currentWidgetId.get();r&&this.view.removeWidget(r)}}),c.registerCommand(o.TERMINAL_COMMANDS.OPEN_WITH_PATH,{execute:async r=>{r&&(await this.terminalApi.createTerminal({cwd:r.codeUri.fsPath})).show()}}),c.registerCommand(o.TERMINAL_COMMANDS.TAB_RENAME,{execute:async(r,l)=>{const a=this.view.getGroup(l);a&&a.edit()}}),c.registerCommand({...o.TERMINAL_COMMANDS.SELECT_ALL_CONTENT},{execute:()=>{const r=this.view.currentWidgetId.get(),l=this.terminalController.findClientFromWidgetId(r);l&&l.selectAll()}}),c.registerCommand({...o.TERMINAL_COMMANDS.CLEAR_CONTENT,iconClass:(0,o.getIcon)("clear")},{execute:()=>{const r=this.view.currentWidgetId.get(),l=this.terminalController.findClientFromWidgetId(r);l&&l.clear()}}),c.registerCommand({...o.TERMINAL_COMMANDS.CLEAR_ALL_CONTENT},{execute:()=>{this.terminalController.clearAllGroups()}}),c.registerCommand(o.TERMINAL_COMMANDS.SELECT_ZSH,{execute:async()=>{this.setDefaultTerminalType("zsh")}}),c.registerCommand(o.TERMINAL_COMMANDS.SELECT_BASH,{execute:async()=>{this.setDefaultTerminalType("bash")}}),c.registerCommand(o.TERMINAL_COMMANDS.SELECT_SH,{execute:async()=>{this.setDefaultTerminalType("sh")}}),c.registerCommand(o.TERMINAL_COMMANDS.SELECT_POWERSHELL,{execute:async()=>{this.setDefaultTerminalType("powershell")}}),c.registerCommand(o.TERMINAL_COMMANDS.SELECT_CMD,{execute:async()=>{this.setDefaultTerminalType("cmd")}}),c.registerCommand(o.TERMINAL_COMMANDS.MORE_SETTINGS,{execute:async()=>{this.commands.executeCommand(o.COMMON_COMMANDS.OPEN_PREFERENCES.id,"terminal")}}),c.registerCommand(o.TERMINAL_COMMANDS.COPY,{execute:async()=>{const r=this.view.currentWidgetId.get(),l=this.terminalController.findClientFromWidgetId(r);l&&await this.clipboardService.writeText(l.getSelection())}}),c.registerCommand(o.TERMINAL_COMMANDS.PASTE,{execute:async()=>{const r=this.view.currentWidgetId.get(),l=this.terminalController.findClientFromWidgetId(r);l&&l.paste(await this.clipboardService.readText())}}),c.registerCommand(o.TERMINAL_COMMANDS.SELECT_ALL,{execute:()=>{const r=this.view.currentWidgetId.get(),l=this.terminalController.findClientFromWidgetId(r);l&&l.selectAll()}}),c.registerCommand(o.TERMINAL_COMMANDS.RE_LAUNCH,{execute:()=>{const r=this.view.groups.get();for(const l of r)l.widgets.get().forEach(d=>{const m=this.terminalController.findClientFromWidgetId(d.id);m&&m.reset()})}}),c.registerCommand(o.COMMON_COMMANDS.ENVIRONMENT_VARIABLE,{execute:async()=>await this.terminalEnvironmentService.getProcessEnv()}),c.registerCommand(o.TERMINAL_COMMANDS.FOCUS_NEXT_TERMINAL,{execute:()=>{const r=this.view.currentGroup.get();if(r&&r.widgets.get().length<=1)return;const l=this.getNextOrPrevTerminalClient("next");l?.focus()}}),c.registerCommand(o.TERMINAL_COMMANDS.FOCUS_PREVIOUS_TERMINAL,{execute:()=>{const r=this.view.currentGroup.get();if(r&&r.widgets.get().length<=1)return;const l=this.getNextOrPrevTerminalClient("prev");l?.focus()}}),c.registerCommand(o.TERMINAL_COMMANDS.KILL_PROCESS,{execute:async()=>{const r=this.view.currentWidgetId.get(),l=this.terminalController.findClientFromWidgetId(r);if(l){const a=l.getSelection();a&&a.length>0?await this.clipboardService.writeText(l.getSelection()):await this.terminalApi.sendText(r,"")}}})}getNextOrPrevTerminalClient(c){const r=this.view.currentGroup.get();if(!r)return;const l=r.widgets.get(),a=l.findIndex(p=>p.id===this.view.currentWidgetId.get());let d;c==="next"?d=a===l.length-1?0:a+1:d=a===0?l.length-1:a-1;const m=l[d];return this.terminalController.findClientFromWidgetId(m.id)}};e.TerminalCommandContribution=u,n.__decorate([(0,s.Autowired)(b.ITerminalController),n.__metadata("design:type",Object)],u.prototype,"terminalController",void 0),n.__decorate([(0,s.Autowired)(E.EnvironmentVariableServiceToken),n.__metadata("design:type",g.TerminalEnvironmentService)],u.prototype,"terminalEnvironmentService",void 0),n.__decorate([(0,s.Autowired)(b.ITerminalGroupViewService),n.__metadata("design:type",Object)],u.prototype,"view",void 0),n.__decorate([(0,s.Autowired)(b.ITerminalSearchService),n.__metadata("design:type",Object)],u.prototype,"search",void 0),n.__decorate([(0,s.Autowired)(b.ITerminalRestore),n.__metadata("design:type",Object)],u.prototype,"store",void 0),n.__decorate([(0,s.Autowired)(b.ITerminalApiService),n.__metadata("design:type",Object)],u.prototype,"terminalApi",void 0),n.__decorate([(0,s.Autowired)(o.PreferenceService),n.__metadata("design:type",Object)],u.prototype,"preference",void 0),n.__decorate([(0,s.Autowired)(o.IPreferenceSettingsService),n.__metadata("design:type",Object)],u.prototype,"settingService",void 0),n.__decorate([(0,s.Autowired)(o.CommandService),n.__metadata("design:type",Object)],u.prototype,"commands",void 0),n.__decorate([(0,s.Autowired)(f.IMainLayoutService),n.__metadata("design:type",Object)],u.prototype,"mainlayoutService",void 0),n.__decorate([(0,s.Autowired)(o.AppConfig),n.__metadata("design:type",Object)],u.prototype,"config",void 0),n.__decorate([(0,s.Autowired)(),n.__metadata("design:type",_.TerminalKeyBoardInputService)],u.prototype,"terminalInput",void 0),n.__decorate([(0,s.Autowired)(o.ILogger),n.__metadata("design:type",Object)],u.prototype,"logger",void 0),n.__decorate([(0,s.Autowired)(o.IClipboardService),n.__metadata("design:type",Object)],u.prototype,"clipboardService",void 0),e.TerminalCommandContribution=u=n.__decorate([(0,o.Domain)(o.CommandContribution,o.ClientAppContribution)],u)},63341:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalKeybindingContribution=void 0;const n=t(85608),s=t(41869),o=t(66e3),f=t(40191),b=t(43718);let g=class{registerKeybindings(E){E.registerKeybinding({command:s.TERMINAL_COMMANDS.OPEN_SEARCH.id,keybinding:"ctrlcmd+f",when:o.IsTerminalFocused.raw}),E.registerKeybinding({command:s.TERMINAL_COMMANDS.CLEAR_CONTENT.id,keybinding:"ctrlcmd+k",when:o.IsTerminalFocused.raw}),E.registerKeybinding({command:s.TERMINAL_COMMANDS.SEARCH_NEXT.id,keybinding:"ctrlcmd+g",when:o.IsTerminalFocused.raw}),E.registerKeybinding({command:s.TERMINAL_COMMANDS.COPY.id,keybinding:b.isWindows?"ctrlcmd+shift+c":"ctrlcmd+c",when:f.RawContextKey.and(o.IsTerminalFocused.raw,"locationProtocol != http")}),E.registerKeybinding({command:s.TERMINAL_COMMANDS.KILL_PROCESS.id,keybinding:"ctrlcmd+c",when:f.RawContextKey.and(o.IsTerminalFocused.raw,"locationProtocol != http","isWindows")}),E.registerKeybinding({command:s.TERMINAL_COMMANDS.PASTE.id,keybinding:b.isWindows?"ctrlcmd+shift+v":"ctrlcmd+v",when:f.RawContextKey.and(o.IsTerminalFocused.raw,"locationProtocol != http")}),E.registerKeybinding({command:s.TERMINAL_COMMANDS.SELECT_ALL.id,keybinding:"ctrlcmd+a",when:o.IsTerminalFocused.raw}),E.registerKeybinding({command:s.TERMINAL_COMMANDS.SPLIT.id,keybinding:"ctrlcmd+\\",when:o.IsTerminalFocused.raw}),E.registerKeybinding({command:s.TERMINAL_COMMANDS.ADD.id,keybinding:"ctrl+shift+`"}),E.registerKeybinding({command:s.TERMINAL_COMMANDS.FOCUS_NEXT_TERMINAL.id,keybinding:"ctrlcmd+alt+right",when:o.IsTerminalFocused.raw}),E.registerKeybinding({command:s.TERMINAL_COMMANDS.FOCUS_NEXT_TERMINAL.id,keybinding:"ctrlcmd+alt+down",when:o.IsTerminalFocused.raw}),E.registerKeybinding({command:s.TERMINAL_COMMANDS.FOCUS_PREVIOUS_TERMINAL.id,keybinding:"ctrlcmd+alt+left",when:o.IsTerminalFocused.raw}),E.registerKeybinding({command:s.TERMINAL_COMMANDS.FOCUS_PREVIOUS_TERMINAL.id,keybinding:"ctrlcmd+alt+up",when:o.IsTerminalFocused.raw}),E.registerKeybinding({command:s.TERMINAL_COMMANDS.TOGGLE_TERMINAL.id,keybinding:"ctrl+`"})}};e.TerminalKeybindingContribution=g,e.TerminalKeybindingContribution=g=n.__decorate([(0,b.Domain)(s.KeybindingContribution)],g)},43397:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalLifeCycleContribution=void 0;const n=t(85608),s=t(76003),o=t(41869),f=t(63067),b=t(26405),g=t(94620),_=t(43395),E=t(35628);let u=class{initialize(){(0,_.registerTerminalColors)()}onStart(){this.terminalInput.listen(),this.environmentService.initEnvironmentVariableCollections()}onDidRender(){this.store.restore().then(()=>{this.terminalController.firstInitialize()})}onStop(){this.terminalController.disposeTerminalClients({isTaskExecutor:!0}),this.store.save()}};e.TerminalLifeCycleContribution=u,n.__decorate([(0,s.Autowired)(),n.__metadata("design:type",E.TerminalKeyBoardInputService)],u.prototype,"terminalInput",void 0),n.__decorate([(0,s.Autowired)(b.ITerminalController),n.__metadata("design:type",Object)],u.prototype,"terminalController",void 0),n.__decorate([(0,s.Autowired)(b.ITerminalRestore),n.__metadata("design:type",Object)],u.prototype,"store",void 0),n.__decorate([(0,s.Autowired)(g.EnvironmentVariableServiceToken),n.__metadata("design:type",Object)],u.prototype,"environmentService",void 0),e.TerminalLifeCycleContribution=u=n.__decorate([(0,o.Domain)(o.ClientAppContribution,f.MainLayoutContribution)],u)},7082:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalMenuContribution=e.more2=e.more1Sub=e.more1=e.group=void 0;const n=t(85608),s=t(76003),o=t(41869),f=t(30144),b=t(93899),g=t(43718),_=t(26405);e.group="panel_menu",e.more1="more_1",e.more1Sub="more_1_sub",e.more2="more_2";let E=class{registerMenus(h){h.registerMenuItem(b.MenuId.TerminalTabContext,{command:{id:o.TERMINAL_COMMANDS.TAB_RENAME.id,label:(0,o.localize)("terminal.menu.rename")},order:1,group:e.group}),h.registerMenuItem(b.MenuId.TerminalTabContext,{command:{id:o.TERMINAL_COMMANDS.SPLIT.id,label:(0,o.localize)("terminal.menu.split")},order:2,group:e.group}),h.registerMenuItem(b.MenuId.TerminalTabContext,{command:{id:o.TERMINAL_COMMANDS.REMOVE.id,label:(0,o.localize)("terminal.menu.stopGroup")},order:3,group:e.group}),h.registerMenuItem(b.MenuId.TerminalInstanceContext,{command:o.TERMINAL_COMMANDS.COPY,group:"1_modify"}),h.registerMenuItem(b.MenuId.TerminalInstanceContext,{command:o.TERMINAL_COMMANDS.PASTE,group:"1_modify"}),h.registerMenuItem(b.MenuId.TerminalInstanceContext,{command:o.TERMINAL_COMMANDS.SELECT_ALL,group:"1_modify"}),h.registerMenuItem(b.MenuId.TerminalInstanceContext,{command:o.TERMINAL_COMMANDS.CLEAR_CONTENT,group:"1_modify"});const c=(0,o.getSlotLocation)("@opensumi/ide-terminal-next",this.config.layoutConfig),r=(0,o.getTabbarCtxKey)(c),l=(0,b.getTabbarCommonMenuId)(c),a=`${r} == ${f.TERMINAL_CONTAINER_ID}`;h.registerMenuItem(l,{command:o.TERMINAL_COMMANDS.CLEAR,order:1,group:e.more1,when:a}),h.registerMenuItem(l,{command:o.TERMINAL_COMMANDS.CLEAR_ALL_CONTENT,order:1,group:e.more1,when:a}),h.registerMenuItem(l,{label:(0,o.localize)("terminal.menu.selectType"),submenu:b.MenuId.TerminalDefaultTypeMenu,order:1,group:e.more2,when:a}),g.isWindows?h.registerMenuItems(b.MenuId.TerminalDefaultTypeMenu,[{command:o.TERMINAL_COMMANDS.SELECT_CMD,order:1,group:e.more1Sub,toggledWhen:"config.terminal.type == cmd",when:a},{command:o.TERMINAL_COMMANDS.SELECT_POWERSHELL,order:2,group:e.more1Sub,toggledWhen:"config.terminal.type == powershell",when:a}]):h.registerMenuItems(b.MenuId.TerminalDefaultTypeMenu,[{command:o.TERMINAL_COMMANDS.SELECT_ZSH,order:1,group:e.more1Sub,toggledWhen:"config.terminal.type == zsh",when:a},{command:o.TERMINAL_COMMANDS.SELECT_BASH,order:2,group:e.more1Sub,toggledWhen:"config.terminal.type == bash",when:a},{command:o.TERMINAL_COMMANDS.SELECT_SH,order:3,group:e.more1Sub,toggledWhen:"config.terminal.type == sh",when:a}]),h.registerMenuItem(l,{command:o.TERMINAL_COMMANDS.MORE_SETTINGS,order:1,group:e.more2,when:a})}};e.TerminalMenuContribution=E,n.__decorate([(0,s.Autowired)(_.ITerminalController),n.__metadata("design:type",Object)],E.prototype,"terminalController",void 0),n.__decorate([(0,s.Autowired)(_.ITerminalGroupViewService),n.__metadata("design:type",Object)],E.prototype,"view",void 0),n.__decorate([(0,s.Autowired)(_.ITerminalSearchService),n.__metadata("design:type",Object)],E.prototype,"search",void 0),n.__decorate([(0,s.Autowired)(o.IPreferenceSettingsService),n.__metadata("design:type",Object)],E.prototype,"settingService",void 0),n.__decorate([(0,s.Autowired)(g.CommandService),n.__metadata("design:type",Object)],E.prototype,"commands",void 0),n.__decorate([(0,s.Autowired)(o.AppConfig),n.__metadata("design:type",Object)],E.prototype,"config",void 0),n.__decorate([(0,s.Autowired)(o.PreferenceService),n.__metadata("design:type",Object)],E.prototype,"preference",void 0),e.TerminalMenuContribution=E=n.__decorate([(0,g.Domain)(b.MenuContribution)],E)},96051:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalNetworkContribution=void 0;const n=t(85608),s=t(76003),o=t(41869),f=t(43718),b=t(26405);let g=class extends f.WithEventBus{onStart(){this.network.bindErrors()}handleBrowserConnectionOpen(E){this.network.setStatus(b.TerminalNetworkStatus.CONNECTED)}handleBrowserConnectionClose(E){this.network.setStatus(b.TerminalNetworkStatus.DISCONNECTED)}};e.TerminalNetworkContribution=g,n.__decorate([(0,s.Autowired)(b.ITerminalNetwork),n.__metadata("design:type",Object)],g.prototype,"network",void 0),n.__decorate([(0,s.Autowired)(b.ITerminalInternalService),n.__metadata("design:type",Object)],g.prototype,"service",void 0),n.__decorate([(0,f.OnEvent)(f.BrowserConnectionOpenEvent),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[f.BrowserConnectionOpenEvent]),n.__metadata("design:returntype",void 0)],g.prototype,"handleBrowserConnectionOpen",null),n.__decorate([(0,f.OnEvent)(f.BrowserConnectionCloseEvent),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[f.BrowserConnectionCloseEvent]),n.__metadata("design:returntype",void 0)],g.prototype,"handleBrowserConnectionClose",null),e.TerminalNetworkContribution=g=n.__decorate([(0,o.Domain)(o.ClientAppContribution)],g)},79404:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalPreferenceContribution=void 0;const n=t(85608),s=t(76003),o=t(41869),f=t(43718),b=t(26405),g=t(3276),_=t(91815);let E=class{constructor(){this.schema=g.terminalPreferenceSchema;const h=["git-bash","powershell","cmd","default"],{properties:{["terminal.type"]:c}}={...g.terminalPreferenceSchema};this.ptyTerminal.getOS().then(r=>{r===f.OperatingSystem.Windows&&this.preferenceSchemaProvider.setSchema({properties:{"terminal.type":{...c,enum:h}}},!0)})}};e.TerminalPreferenceContribution=E,n.__decorate([(0,s.Autowired)(b.ITerminalService),n.__metadata("design:type",_.NodePtyTerminalService)],E.prototype,"ptyTerminal",void 0),n.__decorate([(0,s.Autowired)(o.PreferenceSchemaProvider),n.__metadata("design:type",o.PreferenceSchemaProvider)],E.prototype,"preferenceSchemaProvider",void 0),e.TerminalPreferenceContribution=E=n.__decorate([(0,f.Domain)(o.PreferenceContribution),n.__metadata("design:paramtypes",[])],E)},11476:(x,e,t)=>{"use strict";var n;Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalRenderContribution=void 0;const s=t(85608),o=t(41869),f=t(30144),b=s.__importDefault(t(17632)),g=s.__importDefault(t(48139));let _=n=class{registerToolbarItems(u){u.registerItem({id:o.TERMINAL_COMMANDS.OPEN_SEARCH.id,command:o.TERMINAL_COMMANDS.OPEN_SEARCH.id,viewId:n.viewId,tooltip:(0,o.localize)("terminal.search")}),u.registerItem({id:o.TERMINAL_COMMANDS.CLEAR_CONTENT.id,command:o.TERMINAL_COMMANDS.CLEAR_CONTENT.id,viewId:n.viewId,tooltip:(0,o.localize)("terminal.menu.clearCurrentContent")}),u.registerItem({id:o.TERMINAL_COMMANDS.SPLIT.id,command:o.TERMINAL_COMMANDS.SPLIT.id,viewId:n.viewId,tooltip:(0,o.localize)("terminal.split")}),u.registerItem({id:o.TERMINAL_COMMANDS.REMOVE.id,command:o.TERMINAL_COMMANDS.REMOVE.id,viewId:n.viewId,tooltip:(0,o.localize)("terminal.remove")})}registerComponent(u){u.register("@opensumi/ide-terminal-next",{component:g.default,id:n.viewId},{title:(0,o.localize)("terminal.name"),priority:1,activateKeyBinding:"ctrl+`",containerId:n.viewId,titleComponent:b.default})}};e.TerminalRenderContribution=_,_.viewId=f.TERMINAL_CONTAINER_ID,e.TerminalRenderContribution=_=n=s.__decorate([(0,o.Domain)(o.ComponentContribution,o.TabBarToolbarContribution)],_)},17236:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalNextModule=void 0;const n=t(85608),s=t(76003),o=t(41869),f=t(26405),b=t(94620),g=t(3276),_=t(21623),E=t(98944),u=t(69061),h=t(7734),c=t(48520),r=t(102),l=t(53891),a=t(82022),d=t(12642),m=t(13663),p=t(89570),v=t(94486),y=t(46666),S=t(70406),A=t(12894),T=t(91815),D=t(29041),w=t(68611);let I=class extends o.BrowserModule{constructor(){super(...arguments),this.providers=[_.TerminalLifeCycleContribution,_.TerminalRenderContribution,_.TerminalCommandContribution,_.TerminalMenuContribution,_.TerminalKeybindingContribution,_.TerminalNetworkContribution,_.TerminalPreferenceContribution,{token:f.ITerminalApiService,useClass:E.TerminalApiService},{token:f.ITerminalController,useClass:h.TerminalController},{token:f.ITerminalTheme,useClass:D.TerminalTheme},{token:f.ITerminalSearchService,useClass:A.TerminalSearchService},{token:f.ITerminalHoverManagerService,useClass:l.TerminalHoverManagerService},{token:f.ITerminalGroupViewService,useClass:w.TerminalGroupViewService},{token:f.ITerminalErrorService,useClass:r.TerminalErrorService},{token:f.ITerminalService,useClass:T.NodePtyTerminalService},{token:f.ITerminalInternalService,useClass:a.TerminalInternalService},{token:f.ITerminalRestore,useClass:S.TerminalRestore},{token:g.ITerminalPreference,useClass:m.TerminalPreference},{token:f.ITerminalRenderProvider,useClass:y.TerminalRenderProvider},{token:f.ITerminalClientFactory2,useFactory:u.createTerminalClientFactory2},{token:f.ITerminalNetwork,useClass:d.TerminalNetworkService},{token:b.EnvironmentVariableServiceToken,useClass:c.TerminalEnvironmentService},{token:f.ITerminalProfileService,useClass:p.TerminalProfileService},{token:f.ITerminalProfileInternalService,useClass:v.TerminalProfileInternalService}],this.backServices=[{servicePath:f.ITerminalServicePath,clientToken:f.ITerminalService},{servicePath:f.ITerminalProcessPath,clientToken:b.EnvironmentVariableServiceToken}]}};e.TerminalNextModule=I,e.TerminalNextModule=I=n.__decorate([(0,s.Injectable)()],I)},67245:(x,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalBaseLinkProvider=void 0;class t{async provideLinks(s,o){var f;(f=this._activeLinks)===null||f===void 0||f.forEach(b=>b.dispose),this._activeLinks=await this._provideLinks(s),o(this._activeLinks)}}e.TerminalBaseLinkProvider=t},52826:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalExternalLinkProviderAdapter=void 0;const n=t(85608),s=t(76003),o=t(67245),f=t(28247),b=t(97144);let g=class extends o.TerminalBaseLinkProvider{constructor(E,u,h,c,r){super(),this._xterm=E,this._instance=u,this._externalLinkProvider=h,this._wrapLinkHandler=c,this._tooltipCallback=r}async _provideLinks(E){var u,h;let c=E-1,r=c;const l=[this._xterm.buffer.active.getLine(c)];for(;c>=0&&(!((u=this._xterm.buffer.active.getLine(c))===null||u===void 0)&&u.isWrapped);)l.unshift(this._xterm.buffer.active.getLine(c-1)),c--;for(;r<this._xterm.buffer.active.length&&(!((h=this._xterm.buffer.active.getLine(r+1))===null||h===void 0)&&h.isWrapped);)l.push(this._xterm.buffer.active.getLine(r+1)),r++;const a=(0,f.getXtermLineContent)(this._xterm.buffer.active,c,r,this._xterm.cols);if(a.trim().length===0)return[];const d=await this._externalLinkProvider.provideLinks(this._instance,a);return d?d.map(m=>{const p=(0,f.convertLinkRangeToBuffer)(l,this._xterm.cols,{startColumn:m.startIndex+1,startLineNumber:1,endColumn:m.startIndex+m.length+1,endLineNumber:1},c),v=a.substr(m.startIndex,m.length)||"",y=this._wrapLinkHandler((S,A)=>m.activate(A));return this.injector.get(b.TerminalLink,[this._xterm,p,v,this._xterm.buffer.active.viewportY,y,this._tooltipCallback,!0,m.label])}):[]}};e.TerminalExternalLinkProviderAdapter=g,n.__decorate([(0,s.Autowired)(s.INJECTOR_TOKEN),n.__metadata("design:type",s.Injector)],g.prototype,"injector",void 0),e.TerminalExternalLinkProviderAdapter=g=n.__decorate([(0,s.Injectable)({multiple:!0}),n.__metadata("design:paramtypes",[Function,Object,Object,Function,Function])],g)},28247:(x,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.convertLinkRangeToBuffer=t,e.convertBufferRangeToViewport=n,e.getXtermLineContent=s,e.positionIsInRange=o;function t(f,b,g,_){const E={start:{x:g.startColumn,y:g.startLineNumber+_},end:{x:g.endColumn-1,y:g.endLineNumber+_}};let u=0;const h=Math.ceil(g.startColumn/b);for(let l=0;l<Math.min(h);l++){const a=Math.min(b,g.startColumn-l*b);let d=0;const m=f[l];if(!m)break;for(let p=0;p<Math.min(b,a+d);p++){const v=m.getCell(p);v.getWidth()===2&&d++;const S=v.getChars();S.length>1&&(d-=S.length-1)}u+=d}let c=0;const r=Math.ceil(g.endColumn/b);for(let l=Math.max(0,h-1);l<r;l++){const a=l===h-1?(g.startColumn+u)%b:0,d=Math.min(b,g.endColumn+u-l*b),m=l===h-1?u:0;let p=0;const v=f[l];if(!v)break;for(let y=a;y<Math.min(b,d+p+m);y++){const S=v.getCell(y);S.getWidth()===2&&p++,y===b-1&&S.getChars()===""&&p++}c+=p}for(E.start.x+=u,E.end.x+=u+c;E.start.x>b;)E.start.x-=b,E.start.y++;for(;E.end.x>b;)E.end.x-=b,E.end.y++;return E}function n(f,b){return{start:{x:f.start.x-1,y:f.start.y-b-1},end:{x:f.end.x-1,y:f.end.y-b-1}}}function s(f,b,g,_){let E="";for(let u=b;u<=g;u++){const h=f.getLine(u);h&&(E+=h.translateToString(!0,0,_))}return E}function o(f,b){return!(f.y<b.start.y||f.y>b.end.y||f.y===b.start.y&&f.x<b.start.x||f.y===b.end.y&&f.x>b.end.x)}},29970:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalLinkManager=void 0;const n=t(85608),s=t(87083),o=t(76003),f=t(41869),b=t(43718),g=t(23418),_=t(14951),E=t(26405),u=t(69061),h=t(52826),c=t(11192),r=t(73481),{posix:l,win32:a}=b.path;let d=class extends b.Disposable{constructor(p,v){super(),this._xterm=p,this._client=v,this._standardLinkProviders=[],this._standardLinkProvidersDisposables=new b.DisposableCollection;const y=this._wrapLinkHandler((D,w)=>this._handleProtocolLink(w)),S=this.injector.get(c.TerminalProtocolLinkProvider,[this._xterm,y,this._tooltipCallback.bind(this)]);this._standardLinkProviders.push(S);const A=this._wrapLinkHandler((D,w)=>this._handleLocalLink(w)),T=this.injector.get(r.TerminalValidatedLocalLinkProvider,[this._xterm,this._client,A,this._wrapLinkHandler.bind(this),this._tooltipCallback.bind(this),async(D,w)=>w(await this._resolvePath(D))]);this._standardLinkProviders.push(T),this._registerStandardLinkProviders()}set processCwd(p){this._processCwd=p}async getTerminalCwd(){return await this.terminalService.getCwd(this._client.id)||this._processCwd}_registerStandardLinkProviders(){this._standardLinkProvidersDisposables.dispose(),this._standardLinkProvidersDisposables=new b.DisposableCollection;for(const p of this._standardLinkProviders)this._standardLinkProvidersDisposables.push(this._xterm.registerLinkProvider(p))}_tooltipCallback(p,v,y,S){const A=this._xterm._core,T={width:A._renderService.dimensions.actualCellWidth,height:A._renderService.dimensions.actualCellHeight},D={width:this._xterm.cols,height:this._xterm.rows},w=A.element.getBoundingClientRect();return this._showHover({viewportRange:v,cellDimensions:T,terminalDimensions:D,boundingClientRect:w,modifierDownCallback:y,modifierUpCallback:S},this._getLinkHoverString(p.text,p.label),I=>p.activate(void 0,I),p)}_showHover(p,v,y,S){const A=this._hoverManager.showHover(p,v,y);return S?.onInvalidated(()=>A.dispose()),b.Disposable.create(()=>A.dispose())}registerExternalLinkProvider(p,v){const y=this.injector.get(h.TerminalExternalLinkProviderAdapter,[this._xterm,p,v,this._wrapLinkHandler.bind(this),this._tooltipCallback.bind(this)]),S=this._xterm.registerLinkProvider(y);return this._registerStandardLinkProviders(),S}_wrapLinkHandler(p){return async(v,y)=>{v?.preventDefault(),!(v&&!this._isLinkActivationModifierDown(v))&&p(v,y)}}get _localLinkRegex(){const p=this._client.os===b.OperatingSystem.Windows?r.winLocalLinkClause:r.unixLocalLinkClause;return new RegExp(`${p}(${r.lineAndColumnClause})`)}async _handleLocalLink(p){const v=await this._resolvePath(p);if(!v)return;const y=this.extractLineColumnInfo(p),S={startLineNumber:y.lineNumber,endLineNumber:y.lineNumber,startColumn:y.columnNumber,endColumn:y.columnNumber};await this._editorService.open(v.uri,{range:S})}_handleHypertextLink(p){this._openerService.open(p)}async _handleProtocolLink(p){const v=b.URI.parse(p);if(v.scheme===b.Schemes.file){const y=b.FileUri.fsPath(v);this._handleLocalLink(this._client.os!==b.OperatingSystem.Windows&&b.isWindows?y.replace(/\\/g,l.sep):y);return}this._handleHypertextLink(p)}_isLinkActivationModifierDown(p){return b.isOSX?p.metaKey:p.ctrlKey}get osPath(){return this._client.os===b.OperatingSystem.Windows?a:l}_getLinkHoverString(p,v){const y=this.preferenceService.get("editor.multiCursorModifier");let S="";y==="ctrlCmd"?b.isMacintosh?S=(0,b.localize)("terminalLinkHandler.followLinkAlt.mac","option + click"):S=(0,b.localize)("terminalLinkHandler.followLinkAlt","alt + click"):b.isMacintosh?S=(0,b.localize)("terminalLinkHandler.followLinkCmd","cmd + click"):S=(0,b.localize)("terminalLinkHandler.followLinkCtrl","ctrl + click");const A=(0,b.localize)("followLink","Follow link");return v=v||A,`${v} (${S})`}async _getUserHomeDir(){const p=await this._fileSystem.getCurrentUserHome();if(!p)throw new Error("Unable to get user home directory");return await this._fileSystem.getFsPath(p.uri)}_getUserHomeDirOnce(){return this._getHomeDirPromise||(this._getHomeDirPromise=this._getUserHomeDir()),this._getHomeDirPromise}async _preprocessPath(p){if(p.charAt(0)==="~"){const v=await this._getUserHomeDirOnce();if(!v)return null;p=this.osPath.join(v,p.substring(1))}else if(p.charAt(0)!=="/"&&p.charAt(0)!=="~"){const v=await this.getTerminalCwd();if(this._client.os===b.OperatingSystem.Windows)if(!p.match("^"+r.winDrivePrefix)&&!p.startsWith("\\\\?\\")){if(!v)return null;p=this.osPath.join(v,p)}else p=p.replace(/^\\\\\?\\/,"");else{if(!v)return null;p=this.osPath.join(v,p)}}return p=this.osPath.normalize(p),p}async _resolvePath(p){const v=await this._preprocessPath(p);if(!v)return;const y=this.extractLinkUrl(v);if(y)try{const S=b.URI.file(y),A=await this._fileService.getFileStat(S.toString());if(A)return{uri:S,isDirectory:A.isDirectory}}catch{return}}extractLineColumnInfo(p){const v=this._localLinkRegex.exec(p),y={lineNumber:1,columnNumber:1};if(!v)return y;const S=this._client.os===b.OperatingSystem.Windows?r.winLineAndColumnMatchIndex:r.unixLineAndColumnMatchIndex;for(let A=0;A<r.lineAndColumnClause.length;A++){const T=S+r.lineAndColumnClauseGroupCount*A,D=v[T];if(D){y.lineNumber=parseInt(D,10);const w=v[T+2];w&&(y.columnNumber=parseInt(w,10));break}}return y}extractLinkUrl(p){const v=this._localLinkRegex.exec(p);return v?v[1]:null}};e.TerminalLinkManager=d,n.__decorate([(0,o.Autowired)(o.INJECTOR_TOKEN),n.__metadata("design:type",o.Injector)],d.prototype,"injector",void 0),n.__decorate([(0,o.Autowired)(E.ITerminalService),n.__metadata("design:type",Object)],d.prototype,"terminalService",void 0),n.__decorate([(0,o.Autowired)(),n.__metadata("design:type",g.WorkbenchEditorService)],d.prototype,"_editorService",void 0),n.__decorate([(0,o.Autowired)(f.IOpenerService),n.__metadata("design:type",Object)],d.prototype,"_openerService",void 0),n.__decorate([(0,o.Autowired)(_.IFileServiceClient),n.__metadata("design:type",Object)],d.prototype,"_fileService",void 0),n.__decorate([(0,o.Autowired)(_.IFileServiceClient),n.__metadata("design:type",Object)],d.prototype,"_fileSystem",void 0),n.__decorate([(0,o.Autowired)(f.PreferenceService),n.__metadata("design:type",Object)],d.prototype,"preferenceService",void 0),n.__decorate([(0,o.Autowired)(E.ITerminalHoverManagerService),n.__metadata("design:type",Object)],d.prototype,"_hoverManager",void 0),e.TerminalLinkManager=d=n.__decorate([(0,o.Injectable)({multiple:!0}),n.__metadata("design:paramtypes",[s.Terminal,u.TerminalClient])],d)},97144:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalLink=e.FOLDER_NOT_IN_WORKSPACE_LABEL=e.FOLDER_IN_WORKSPACE_LABEL=e.OPEN_FILE_LABEL=void 0;const n=t(85608),s=t(76003),o=t(41869),f=t(43718),b=t(28247),g=500;e.OPEN_FILE_LABEL=(0,f.localize)("terminal.openFile","Open file in editor"),e.FOLDER_IN_WORKSPACE_LABEL=(0,f.localize)("terminal.focusFolder","Focus folder in explorer"),e.FOLDER_NOT_IN_WORKSPACE_LABEL=(0,f.localize)("terminal.openFolder","Open folder in new window");let _=class extends f.Disposable{get onInvalidated(){return this._onInvalidated.event}constructor(u,h,c,r,l,a,d,m){super(),this._xterm=u,this.range=h,this.text=c,this._viewportY=r,this._activateCallback=l,this._tooltipCallback=a,this._isHighConfidenceLink=d,this.label=m,this._onInvalidated=new f.Emitter,this.decorations={pointerCursor:!1,underline:this._isHighConfidenceLink}}dispose(){var u,h,c;super.dispose(),(u=this._hoverListeners)===null||u===void 0||u.dispose(),this._hoverListeners=void 0,(h=this._tooltipScheduler)===null||h===void 0||h.dispose(),this._tooltipScheduler=void 0,(c=this._tooltipDisposable)===null||c===void 0||c.dispose(),this._tooltipDisposable=void 0}activate(u,h){this._activateCallback(u,h)}hover(u,h){this._hoverListeners=new f.DisposableCollection,this._hoverListeners.push((0,o.addDisposableListener)(document,"keydown",r=>{!r.repeat&&this._isModifierDown(r)&&this._enableDecorations()})),this._hoverListeners.push((0,o.addDisposableListener)(document,"keyup",r=>{!r.repeat&&!this._isModifierDown(r)&&this._disableDecorations()})),this._hoverListeners.push(this._xterm.onRender(r=>{const l=this.range.start.y-this._viewportY;l>=r.start&&l<=r.end&&this._onInvalidated.fire()})),this._isHighConfidenceLink&&(this._tooltipScheduler=new f.RunOnceScheduler(()=>{var r;this._tooltipDisposable=this._tooltipCallback(this,(0,b.convertBufferRangeToViewport)(this.range,this._viewportY),this._isHighConfidenceLink?()=>this._enableDecorations():void 0,this._isHighConfidenceLink?()=>this._disableDecorations():void 0),(r=this._tooltipScheduler)===null||r===void 0||r.dispose(),this._tooltipScheduler=void 0},this.preferenceService.get("editor.hover.delay")||g),this._tooltipScheduler.schedule());const c={x:u.pageX,y:u.pageY};this._hoverListeners.push((0,o.addDisposableListener)(document,"mousemove",r=>{var l;this._isModifierDown(r)?this._enableDecorations():this._disableDecorations(),(Math.abs(r.pageX-c.x)>window.devicePixelRatio*2||Math.abs(r.pageY-c.y)>window.devicePixelRatio*2)&&(c.x=r.pageX,c.y=r.pageY,(l=this._tooltipScheduler)===null||l===void 0||l.schedule())}))}leave(){var u,h,c;(u=this._hoverListeners)===null||u===void 0||u.dispose(),this._hoverListeners=void 0,(h=this._tooltipScheduler)===null||h===void 0||h.dispose(),this._tooltipScheduler=void 0,(c=this._tooltipDisposable)===null||c===void 0||c.dispose(),this._tooltipDisposable=void 0}_enableDecorations(){this.decorations.pointerCursor||(this.decorations.pointerCursor=!0),this.decorations.underline||(this.decorations.underline=!0)}_disableDecorations(){this.decorations.pointerCursor&&(this.decorations.pointerCursor=!1),this.decorations.underline!==this._isHighConfidenceLink&&(this.decorations.underline=this._isHighConfidenceLink)}_isModifierDown(u){return f.isOSX?u.metaKey:u.ctrlKey}};e.TerminalLink=_,n.__decorate([(0,s.Autowired)(o.PreferenceService),n.__metadata("design:type",Object)],_.prototype,"preferenceService",void 0),e.TerminalLink=_=n.__decorate([(0,s.Injectable)({multiple:!0}),n.__metadata("design:paramtypes",[Function,Object,String,Number,Function,Function,Boolean,Object])],_)},11192:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalProtocolLinkProvider=void 0;const n=t(85608),s=t(76003),o=t(26405),f=t(67245),b=t(28247),g=t(97144);let _=class extends f.TerminalBaseLinkProvider{constructor(h,c,r){super(),this._xterm=h,this._activateCallback=c,this._tooltipCallback=r}_provideLinks(h){var c,r;let l=h-1,a=l;const d=[this._xterm.buffer.active.getLine(l)];for(;l>=0&&(!((c=this._xterm.buffer.active.getLine(l))===null||c===void 0)&&c.isWrapped);)d.unshift(this._xterm.buffer.active.getLine(l-1)),l--;for(;a<this._xterm.buffer.active.length&&(!((r=this._xterm.buffer.active.getLine(a+1))===null||r===void 0)&&r.isWrapped);)d.push(this._xterm.buffer.active.getLine(a+1)),a++;return this._linkComputerTarget=new E(this._xterm,l,a),o.LinkComputer.computeLinks(this._linkComputerTarget).map(p=>{var v;const y=(0,b.convertLinkRangeToBuffer)(d,this._xterm.cols,p.range,l);return this.injector.get(g.TerminalLink,[this._xterm,y,((v=p.url)===null||v===void 0?void 0:v.toString())||"",this._xterm.buffer.active.viewportY,this._activateCallback,this._tooltipCallback,!0,void 0])})}};e.TerminalProtocolLinkProvider=_,n.__decorate([(0,s.Autowired)(s.INJECTOR_TOKEN),n.__metadata("design:type",s.Injector)],_.prototype,"injector",void 0),e.TerminalProtocolLinkProvider=_=n.__decorate([(0,s.Injectable)({multiple:!0}),n.__metadata("design:paramtypes",[Function,Function,Function])],_);class E{constructor(h,c,r){this._xterm=h,this._lineStart=c,this._lineEnd=r}getLineCount(){return 1}getLineContent(){return(0,b.getXtermLineContent)(this._xterm.buffer.active,this._lineStart,this._lineEnd,this._xterm.cols)}}},73481:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalValidatedLocalLinkProvider=e.lineAndColumnClauseGroupCount=e.unixLineAndColumnMatchIndex=e.winLineAndColumnMatchIndex=e.lineAndColumnClause=e.winLocalLinkClause=e.winDrivePrefix=e.unixLocalLinkClause=void 0;const n=t(85608),s=t(76003),o=t(11050),f=t(66894),b=t(43718),g=t(97408),_=t(67245),E=t(28247),u=t(97144),h="(\\.\\.?|\\~)",c="\\/",r="[^\\0\\s!`&*()\\[\\]'\":;\\\\]";e.unixLocalLinkClause="(("+h+"|("+r+")+)?("+c+"("+r+")+)+)",e.winDrivePrefix="(?:\\\\\\\\\\?\\\\)?[a-zA-Z]:";const l="("+e.winDrivePrefix+"|\\.\\.?|\\~)",a="(\\\\|\\/)",d="[^\\0<>\\?\\|\\/\\s!`&*()\\[\\]'\":;]";e.winLocalLinkClause="(("+l+"|("+d+")+)?("+a+"("+d+")+)+)",e.lineAndColumnClause=[`((\\S*)['"], line ((\\d+)( column (\\d+))?))`,`((\\S*)['"],((\\d+)(:(\\d+))?))`,"((\\S*) on line ((\\d+)(, column (\\d+))?))","((\\S*):line ((\\d+)(, column (\\d+))?))","(([^\\s\\(\\)]*)(\\s?[\\(\\[](\\d+)(,\\s?(\\d+))?)[\\)\\]])",`(([^:\\s\\(\\)<>'"\\[\\]]*)(:(\\d+))?(:(\\d+))?)`].join("|").replace(/ /g,"[\xA0 ]"),e.winLineAndColumnMatchIndex=12,e.unixLineAndColumnMatchIndex=11,e.lineAndColumnClauseGroupCount=6;const m=2e3;let p=class extends _.TerminalBaseLinkProvider{constructor(y,S,A,T,D,w){super(),this._xterm=y,this._client=S,this._activateFileCallback=A,this._wrapLinkHandler=T,this._tooltipCallback=D,this._validationCallback=w}async _provideLinks(y){var S,A;const T=[];let D=y-1,w=D;const I=[this._xterm.buffer.active.getLine(D)];for(;D>=0&&(!((S=this._xterm.buffer.active.getLine(D))===null||S===void 0)&&S.isWrapped);)I.unshift(this._xterm.buffer.active.getLine(D-1)),D--;for(;w<this._xterm.buffer.active.length&&(!((A=this._xterm.buffer.active.getLine(w+1))===null||A===void 0)&&A.isWrapped);)I.push(this._xterm.buffer.active.getLine(w+1)),w++;const R=(0,E.getXtermLineContent)(this._xterm.buffer.active,D,w,this._xterm.cols);if(R.length>m)return[];const M=new RegExp(this._localLinkRegex,"g");let O,P=-1;for(;(O=M.exec(R))!==null;){let L=O[0];if(!L||(P=R.indexOf(L,P+1),M.lastIndex=P+L.length,P<0))break;((R.startsWith("--- a/")||R.startsWith("+++ b/"))&&P===4||R.startsWith("diff --git")&&(L.startsWith("a/")||L.startsWith("b/")))&&(L=L.substring(2),P+=2);const N=(0,E.convertLinkRangeToBuffer)(I,this._xterm.cols,{startColumn:P+1,startLineNumber:1,endColumn:P+L.length+1,endLineNumber:1},D),k=await new Promise(B=>{this._validationCallback(L,async F=>{if(F){const W=F.isDirectory?await this._isDirectoryInsideWorkspace(F.uri)?u.FOLDER_IN_WORKSPACE_LABEL:u.FOLDER_NOT_IN_WORKSPACE_LABEL:u.OPEN_FILE_LABEL,V=this._wrapLinkHandler((H,G)=>{F.isDirectory?this._handleLocalFolderLink(F.uri):this._activateFileCallback(H,G)});B(this.injector.get(u.TerminalLink,[this._xterm,N,L,this._xterm.buffer.active.viewportY,V,this._tooltipCallback,!0,W]))}else B(void 0)})});k&&T.push(k)}return T}get _localLinkRegex(){const y=this._client.os===b.OperatingSystem.Windows?e.winLocalLinkClause:e.unixLocalLinkClause;return new RegExp(`${y}(${e.lineAndColumnClause})`)}async _handleLocalFolderLink(y){if(await this._isDirectoryInsideWorkspace(y)){await this.commandService.executeCommand("revealInExplorer",y);return}this.appConfig.isElectronRenderer&&this.windowService.openWorkspace(y,{newWindow:!0})}async _isDirectoryInsideWorkspace(y){const S=await this.workspaceService.roots;for(const A of S)if(b.URI.parse(A.uri).isEqualOrParent(y))return!0;return!1}};e.TerminalValidatedLocalLinkProvider=p,n.__decorate([(0,s.Autowired)(s.INJECTOR_TOKEN),n.__metadata("design:type",s.Injector)],p.prototype,"injector",void 0),n.__decorate([(0,s.Autowired)(f.IWindowService),n.__metadata("design:type",Object)],p.prototype,"windowService",void 0),n.__decorate([(0,s.Autowired)(b.CommandService),n.__metadata("design:type",Object)],p.prototype,"commandService",void 0),n.__decorate([(0,s.Autowired)(g.IWorkspaceService),n.__metadata("design:type",Object)],p.prototype,"workspaceService",void 0),n.__decorate([(0,s.Autowired)(o.AppConfig),n.__metadata("design:type",Object)],p.prototype,"appConfig",void 0),e.TerminalValidatedLocalLinkProvider=p=n.__decorate([(0,s.Injectable)({multiple:!0}),n.__metadata("design:paramtypes",[Function,Function,Function,Function,Function,Function])],p)},62810:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.DEFAULT_COL=e.DEFAULT_ROW=e.AttachAddon=void 0;const n=t(43718);class s extends n.Disposable{constructor(){super(...arguments),this._onData=new n.Emitter,this.onData=this._onData.event,this._onExit=new n.Emitter,this.onExit=this._onExit.event,this._onTime=new n.Emitter,this.onTime=this._onTime.event,this._lastInputTime=0,this._onBeforeProcessData=new n.Emitter,this.onBeforeProcessData=this._onBeforeProcessData.event}setConnection(f){this._disposeConnection&&(this._disposeConnection.dispose(),this._disposeConnection=null),this.connection=f,f&&(this._disposeConnection=new n.Disposable(f.onData(b=>{let g=b;if(typeof b=="string"){const _={data:b};this._onBeforeProcessData.fire(_),_.data!==void 0&&(g=_.data)}if(this._onData.fire(g),this._terminal.write(typeof g=="string"?g:new Uint8Array(g,0,g.byteLength)),this._lastInputTime){const _=Date.now()-this._lastInputTime;this._lastInputTime=0,this._onTime.fire(_)}})),f.onExit&&this._disposeConnection.addDispose(f.onExit(b=>{this._onExit.fire(b)})))}async activate(f){this._terminal=f,this.addDispose(n.Disposable.create(()=>{var b;return(b=this._disposeConnection)===null||b===void 0?void 0:b.dispose()})),this.addDispose(f.onData(b=>this._sendData(b))),this.addDispose(f.onBinary(b=>this._sendBinary(b)))}_sendData(f){!this.connection||this.connection.readonly||(this._timeResponse(),this.connection.sendData(f))}_sendBinary(f){if(!this.connection||this.connection.readonly)return;const b=new Uint8Array(f.length);for(let g=0;g<f.length;++g)b[g]=f.charCodeAt(g)&255;this._timeResponse(),this.connection.sendData(b)}_timeResponse(){this._lastInputTime=Date.now()}}e.AttachAddon=s,e.DEFAULT_ROW=80,e.DEFAULT_COL=24},98944:(x,e,t)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TerminalApiService=void 0;const n=t(85608),s=n.__importDefault(t(56005)),o=t(76003),f=t(43718),b=t(28423),g=t(26405);let _=class{constructor(){this._onDidOpenTerminal=new f.Emitter,this._onDidCloseTerminal=new f.Emitter,this._onDidTerminalTitleChange=new f.Emitter,this._onDidChangeActiveTerminal=new f.Emitter,this.onDidOpenTerminal=this._onDidOpenTerminal.event,this.onDidCloseTerminal=this._onDidCloseTerminal.event,this.onDidTerminalTitleChange=this._onDidTerminalTitleChange.event,this.onDidChangeActiveTerminal=this._onDidChangeActiveTerminal.event,this.controller.onDidOpenTerminal(u=>{this._onDidOpenTerminal.fire(u)}),this.controller.onDidCloseTerminal(u=>{this._onDidCloseTerminal.fire(u)}),this.controller.onDidTerminalTitleChange(u=>{this._onDidTerminalTitleChange.fire(u)}),this.controller.onDidChangeActiveTerminal(u=>{this._onDidChangeActiveTerminal.fire(u)})}get terminals(){return Array.from(this.controller.clients.values()).map(u=>({id:u.id,name:u.name,isActive:this.view.currentWidgetId.get()===u.id}))}async createTerminal(u,h){const c=await this.controller.createTerminalWithWidgetByTerminalOptions({terminalOptions:u,id:h}),r={get id(){return c.id},get name(){return c.name},get processId(){return c.pid},show:(l=!0)=>{const a=c.widget;this.view.selectWidget(a.id),this.controller.showTerminalPanel(),l||setTimeout(()=>c.focus())},hide:()=>{this.controller.hideTerminalPanel()},dispose:()=>{this.view.removeWidget(c.widget.id),this.controller.clients.delete(c.id)}};return await c.attached.promise,r.show(),r}async getProcessId(u){const h=this.controller.clients.get(u);if(h)return h.pid}async getDefaultShellPath(){const u=await this.terminalProfileInternalService.resolveDefaultProfile();return u?.path||"/bin/bash"}sendText(u,h,c=!0){this.service.sendText(u,`${h}${c?"\r":""}`)}showTerm(u,h=!0){const c=this.controller.clients.get(u);if(!c)return;const r=c.widget;this.view.selectWidget(r.id),this.controller.showTerminalPanel(),h||setTimeout(()=>c.focus())}hideTerm(u){this.controller.clients.get(u)&&this.controller.hideTerminalPanel()}removeTerm(u){const h=this.controller.clients.get(u);h&&(this.view.removeWidget(h.widget.id),this.controller.clients.delete(u))}createWidget(u,h){const c=u,r=this.view.createGroup(),l=this.view.getGroup(r),a=this.view.createWidget(l,c,!1,!0);return(0,b.transaction)(d=>{a.name.set((0,s.default)(u),d)}),this.view.selectWidget(c),a.onRender(()=>{h(a.element)}),a}scheduleReconnection(){return this.network.scheduleReconnection()}};e.TerminalApiService=_,n.__decorate([(0,o.Autowired)(g.ITerminalController),n.__metadata("design:type",Object)],_.prototype,"controller",void 0),n.__decorate([(0,o.Autowired)(g.ITerminalGroupViewService),n.__metadata("design:type",Object)],_.prototype,"view",void 0),n.__decorate([(0,o.Autowired)(g.ITerminalInternalService),n.__metadata("design:type",Object)],_.prototype,"service",void 0),n.__decorate([(0,o.Autowired)(g.ITerminalNetwork),n.__metadata("design:type",Object)],_.prototype,"network",void 0),n.__decorate([(0,o.Autowired)(g.ITerminalProfileInternalService),n.__metadata("design:type",Object)],_.prototype,"terminalProfileInternalService",void 0),e.TerminalApiService=_=n.__decorate([(0,o.Injectable)(),n.__metadata("design:paramtypes",[])],_)},69061:(x,e,t)=>{"use strict";var n;Object.defineProperty(e,"__esModule",{value:!0}),e.createTerminalClientFactory2=e.TerminalClientFactory=e.TerminalClient=void 0;const s=t(85608),o=t(76003),f=t(41869),b=t(67889),g=t(43718),_=t(23418),E=t(42933),u=t(28423),h=t(72665),c=t(88913),r=t(10560),l=t(26405),a=t(94620),d=t(3276),m=t(29970),p=t(62810),v=t(90853),y=t(35628),S=t(70845),A=t(41685);let T=n=class extends g.Disposable{constructor(){super(),this.isTaskExecutor=!1,this._ready=!1,this._hasOutput=!1,this._areLinksReady=!1,this._onInput=new g.Emitter,this.onInput=this._onInput.event,this._onOutput=new g.Emitter,this.onOutput=this._onOutput.event,this._onExit=new g.Emitter,this.onExit=this._onExit.event,this._onTitleChange=new g.Emitter,this.onTitleChange=this._onTitleChange.event,this._onLinksReady=new g.Emitter,this.onLinksReady=this._onLinksReady.event,this._onResponseTime=new g.Emitter,this.onResponseTime=this._onResponseTime.event,this._onNameChangeEmitter=new g.Emitter,this.onNameChange=this._onNameChangeEmitter.event,this._name="",this.init()}async init(){this.xterm=this.injector.get(A.XTerm,[{xtermOptions:{theme:this.theme.terminalTheme,...this.internalService.getOptions(),...this.terminalPreference.toJSON()}}]),this.addDispose(this.xterm),this.addDispose(this.internalService.onError(R=>{var M;this.messageService.error(R.message),!((M=R.launchConfig)===null||M===void 0)&&M.executable?this.updateTerminalName({name:"error: "+R.launchConfig.executable}):this.updateTerminalName({name:"error"})})),this.addDispose(this.internalService.onProcessChange(R=>{R.sessionId===this.id&&(0,u.transaction)(M=>{this.widget.processName.set(R.processName,M)})}))}onWidgetShow(){this._show&&(this._show.resolve(),this._show=null),this._layout()}async setupWidget(R){this._widget=R,this._prepare(),this.addDispose(g.Disposable.create(()=>{n.WORKSPACE_PATH_CACHED.delete(R.group.id)})),this.addDispose(this.terminalPreference.onChange(async({name:M,value:O})=>{!R.show&&!this._show&&(this._show=new g.Deferred),this._show&&await this._show.promise,this._setOption(M,O),this.xterm.updatePreferences({[M]:O})})),R.show?this.onWidgetShow():this.addDispose(R.onShow(M=>{M&&this.onWidgetShow()})),this.addDispose(R.onError(M=>{var O;M||((O=this._error)===null||O===void 0||O.resolve(),this._layout())})),this.addDispose(R.onResize(async()=>{this._debounceResize()}))}async init2(R,M){var O,P,L,N;if(this._uid=M?.id||R.id,this.setupWidget(R),!M||Object.keys(M).length===0){const F=await this.terminalProfileInternalService.resolveDefaultProfile();M={id:this._uid,config:F}}if(!M.cwd){const W=R.group.widgets.get();if(W.length>1&&W[0]){const V=await this.internalService.getCwd(W[0].id);V&&(M.cwd=V)}}await this._checkWorkspace();const k=(L=(O=M.cwd)!==null&&O!==void 0?O:(P=M?.config)===null||P===void 0?void 0:P.cwd)!==null&&L!==void 0?L:this._workspacePath,B=this.controller.convertProfileToLaunchConfig(M.config,k);this._launchConfig=B,this._launchConfig.__fromTerminalOptions&&(this._terminalOptions=this._launchConfig.__fromTerminalOptions),this.name=B.name||"",B.initialText&&this.xterm.raw.writeln(B.initialText),B.env||(B.env={}),(N=this.environmentService.mergedCollection)===null||N===void 0||N.applyToProcessEnvironment(B.env,this.applicationService.backendOS,this.variableResolver.resolve.bind(this.variableResolver)),this.addDispose(this.environmentService.onDidChangeCollections(F=>{F.applyToProcessEnvironment(B.env,this.applicationService.backendOS,this.variableResolver.resolve.bind(this.variableResolver))})),this._attachXterm(),this._attachAfterRender()}get name(){return this._name}set name(R){this._name!==R&&(this._name=R,this._onNameChangeEmitter.fire(R))}get term(){return this.xterm.raw}get pid(){return this.internalService.getProcessId(this.id)}get launchConfig(){return this._launchConfig}get createOptions(){}get container(){return this.xterm.container}get id(){return this._uid}get widget(){return this._widget}get ready(){return this._ready}get attached(){return this._attached}get firstOutput(){return this._firstStdout}get show(){return this._show}get areLinksReady(){return this._areLinksReady}get os(){return this._os}_prepareAddons(){this._attachAddon=new p.AttachAddon;const R=this._attachAddon.onBeforeProcessData;if(this.preferenceService.get("terminal.integrated.localEchoEnabled")){const M=this.preferenceService.get("terminal.integrated.localEchoExcludePrograms",S.DEFAULT_LOCAL_ECHO_EXCLUDE),O=new S.TypeAheadAddon(R,{localEchoExcludePrograms:Array.isArray(M)?M:S.DEFAULT_LOCAL_ECHO_EXCLUDE,localEchoLatencyThreshold:this.preferenceService.get("terminal.integrated.localEchoLatencyThreshold",30),localEchoStyle:this.preferenceService.get("terminal.integrated.localEchoStyle","dim")},this.preferenceService.onPreferenceChanged);this.addDispose(O),this.xterm.raw.loadAddon(O)}this.addDispose([this._attachAddon,this._attachAddon.onData(M=>{this._onOutput.fire({id:this.id,data:M})}),this._attachAddon.onExit(M=>{var O,P;this.logger.warn(`${this.id} ${this.name} exit with ${M}`),M!==0&&this.messageService.error(`terminal ${this.name}(${(P=(O=this._attachAddon.connection)===null||O===void 0?void 0:O.ptyInstance)===null||P===void 0?void 0:P.shellPath}) exited with non-zero code ${M}`),this._onExit.fire({id:this.id,code:M})}),this._attachAddon.onTime(M=>{this._onResponseTime.fire(M),this.reporter.performance(g.REPORT_NAME.TERMINAL_MEASURE,{duration:M,msg:"terminal.response"})})]),this.xterm.raw.loadAddon(this._attachAddon)}_xtermEvents(){this.addDispose(this.xterm.raw.onResize(R=>{this._hasOutput&&this._doResize()}))}_attachXterm(){this._prepareAddons(),this._xtermEvents(),this._linkManager=this.injector.get(m.TerminalLinkManager,[this.xterm.raw,this]),this._linkManager.processCwd=this._workspacePath,this.addDispose(this._linkManager),this._areLinksReady=!0,this._onLinksReady.fire(this)}_doResize(){this.internalService.resize(this.id,this.xterm.raw.cols,this.xterm.raw.rows)}_prepare(){var R,M,O,P,L;(R=this._attached)===null||R===void 0||R.reject("TerminalClient is Re-initialization"),(M=this._firstStdout)===null||M===void 0||M.reject("TerminalClient is Re-initialization"),(O=this._error)===null||O===void 0||O.reject("TerminalClient is Re-initialization"),(P=this._show)===null||P===void 0||P.reject("TerminalClient is Re-initialization"),this._ready=!1,this._hasOutput=!1,this._attached=new g.Deferred,this._show=new g.Deferred,this._error=new g.Deferred,this._firstStdout=new g.Deferred,(L=this._attachAddon)===null||L===void 0||L.setConnection(void 0),this.internalService.getOS().then(k=>{this._os=k});const{dispose:N}=this.onOutput(()=>{N(),this._hasOutput=!0,this._firstStdout.resolve()})}_attachAfterRender(){queueMicrotask(()=>{var R;this._layout(),this.attach(),this.focus(),this.widget.show||(R=this._show)===null||R===void 0||R.promise.then(async()=>{this._show=new g.Deferred})})}async _pickWorkspace(){var R;if(this.workspace.isMultiRootWorkspaceOpened&&!this._widget.recovery){const M=this.workspace.tryGetRoots();return await this.quickPick.show(M.map(P=>new g.URI(P.uri).codeUri.fsPath),{placeholder:(0,f.localize)("terminal.selectCWDForNewTerminal")})}else return this.workspace.workspace?new g.URI((R=this.workspace.workspace)===null||R===void 0?void 0:R.uri).codeUri.fsPath:void 0}async _checkWorkspace(){const R=this._widget;if(n.WORKSPACE_PATH_CACHED.has(R.group.id))this._workspacePath=n.WORKSPACE_PATH_CACHED.get(R.group.id);else{const M=await this._pickWorkspace();M&&(this._workspacePath=M,n.WORKSPACE_PATH_CACHED.set(R.group.id,this._workspacePath))}}async checkHealthy(){return await this.internalService.check([this.id])}displayUnHealthyMessage(){const R=this.term,M=R.options.theme,O=(L,N,k)=>{const B=" ",F=L.split(`
|
|
28585
28585
|
`).map(V=>B+V+B).join(`
|
|
28586
28586
|
`),W=`\x1B[48;2;${P(N)};38;2;${P(k)}m${F}\x1B[0m`;R.writeln(`
|
|
28587
28587
|
`),R.writeln(`
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@opensumi/cli-engine",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.6.0",
|
|
4
4
|
"description": "Integration engine runtime for opensumi-cli and opensumi extension",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"files": [
|
|
@@ -26,14 +26,14 @@
|
|
|
26
26
|
"dependencies": {
|
|
27
27
|
"@koa/cors": "^5.0.0",
|
|
28
28
|
"@opensumi/di": "^1.8.0",
|
|
29
|
-
"@opensumi/ide-core-browser": "3.
|
|
30
|
-
"@opensumi/ide-core-common": "3.
|
|
31
|
-
"@opensumi/ide-core-node": "3.
|
|
32
|
-
"@opensumi/ide-express-file-server": "3.
|
|
33
|
-
"@opensumi/ide-extension": "3.
|
|
34
|
-
"@opensumi/ide-i18n": "3.
|
|
35
|
-
"@opensumi/ide-main-layout": "3.
|
|
36
|
-
"@opensumi/ide-startup": "3.
|
|
29
|
+
"@opensumi/ide-core-browser": "3.6.0",
|
|
30
|
+
"@opensumi/ide-core-common": "3.6.0",
|
|
31
|
+
"@opensumi/ide-core-node": "3.6.0",
|
|
32
|
+
"@opensumi/ide-express-file-server": "3.6.0",
|
|
33
|
+
"@opensumi/ide-extension": "3.6.0",
|
|
34
|
+
"@opensumi/ide-i18n": "3.6.0",
|
|
35
|
+
"@opensumi/ide-main-layout": "3.6.0",
|
|
36
|
+
"@opensumi/ide-startup": "3.6.0",
|
|
37
37
|
"chalk": "^4.1.2",
|
|
38
38
|
"ejs": "^3.1.7",
|
|
39
39
|
"ip": "^1.1.8",
|
|
@@ -72,5 +72,5 @@
|
|
|
72
72
|
"webpack": "^5.90.0",
|
|
73
73
|
"webpack-cli": "^5.1.4"
|
|
74
74
|
},
|
|
75
|
-
"gitHead": "
|
|
75
|
+
"gitHead": "8031f46b73b129cbcc9975ebcd9510a4933be8f5"
|
|
76
76
|
}
|