@opensumi/ide-terminal-next 2.17.8 → 2.18.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/component/tab.item.d.ts.map +1 -1
- package/lib/browser/component/tab.item.js +33 -12
- package/lib/browser/component/tab.item.js.map +1 -1
- package/lib/browser/component/tab.module.less +41 -12
- package/lib/browser/component/tab.view.d.ts.map +1 -1
- package/lib/browser/component/tab.view.js +25 -7
- package/lib/browser/component/tab.view.js.map +1 -1
- package/lib/browser/component/terminal.view.d.ts.map +1 -1
- package/lib/browser/component/terminal.view.js +25 -24
- package/lib/browser/component/terminal.view.js.map +1 -1
- package/lib/browser/contribution/terminal.menu.d.ts.map +1 -1
- package/lib/browser/contribution/terminal.menu.js +3 -4
- package/lib/browser/contribution/terminal.menu.js.map +1 -1
- package/lib/browser/index.d.ts.map +1 -1
- package/lib/browser/index.js +0 -5
- package/lib/browser/index.js.map +1 -1
- package/lib/browser/links/link-manager.d.ts.map +1 -1
- package/lib/browser/links/link-manager.js +11 -12
- package/lib/browser/links/link-manager.js.map +1 -1
- package/lib/browser/links/validated-local-link-provider.d.ts.map +1 -1
- package/lib/browser/links/validated-local-link-provider.js +1 -2
- package/lib/browser/links/validated-local-link-provider.js.map +1 -1
- package/lib/browser/terminal.addon.d.ts.map +1 -1
- package/lib/browser/terminal.addon.js +3 -1
- package/lib/browser/terminal.addon.js.map +1 -1
- package/lib/browser/terminal.api.d.ts +4 -2
- package/lib/browser/terminal.api.d.ts.map +1 -1
- package/lib/browser/terminal.api.js +7 -1
- package/lib/browser/terminal.api.js.map +1 -1
- package/lib/browser/terminal.client.d.ts +7 -4
- package/lib/browser/terminal.client.d.ts.map +1 -1
- package/lib/browser/terminal.client.js +20 -45
- package/lib/browser/terminal.client.js.map +1 -1
- package/lib/browser/terminal.context-menu.d.ts +2 -0
- package/lib/browser/terminal.context-menu.d.ts.map +1 -1
- package/lib/browser/terminal.context-menu.js +23 -4
- package/lib/browser/terminal.context-menu.js.map +1 -1
- package/lib/browser/terminal.controller.d.ts +16 -3
- package/lib/browser/terminal.controller.d.ts.map +1 -1
- package/lib/browser/terminal.controller.js +161 -27
- package/lib/browser/terminal.controller.js.map +1 -1
- package/lib/browser/terminal.input.js +2 -2
- package/lib/browser/terminal.input.js.map +1 -1
- package/lib/browser/terminal.internal.service.d.ts +6 -6
- package/lib/browser/terminal.internal.service.d.ts.map +1 -1
- package/lib/browser/terminal.internal.service.js +4 -23
- package/lib/browser/terminal.internal.service.js.map +1 -1
- package/lib/browser/terminal.profile.d.ts +18 -9
- package/lib/browser/terminal.profile.d.ts.map +1 -1
- package/lib/browser/terminal.profile.internal.d.ts.map +1 -1
- package/lib/browser/terminal.profile.internal.js +4 -6
- package/lib/browser/terminal.profile.internal.js.map +1 -1
- package/lib/browser/terminal.profile.js +59 -9
- package/lib/browser/terminal.profile.js.map +1 -1
- package/lib/browser/terminal.restore.d.ts.map +1 -1
- package/lib/browser/terminal.restore.js +3 -1
- package/lib/browser/terminal.restore.js.map +1 -1
- package/lib/browser/terminal.search.d.ts.map +1 -1
- package/lib/browser/terminal.search.js +6 -0
- package/lib/browser/terminal.search.js.map +1 -1
- package/lib/browser/terminal.service.d.ts +5 -17
- package/lib/browser/terminal.service.d.ts.map +1 -1
- package/lib/browser/terminal.service.js +6 -79
- package/lib/browser/terminal.service.js.map +1 -1
- package/lib/browser/terminal.view.d.ts +5 -3
- package/lib/browser/terminal.view.d.ts.map +1 -1
- package/lib/browser/terminal.view.js +9 -5
- package/lib/browser/terminal.view.js.map +1 -1
- package/lib/browser/xterm.d.ts +2 -1
- package/lib/browser/xterm.d.ts.map +1 -1
- package/lib/browser/xterm.js.map +1 -1
- package/lib/common/api.d.ts +3 -2
- package/lib/common/api.d.ts.map +1 -1
- package/lib/common/client.d.ts +17 -0
- package/lib/common/client.d.ts.map +1 -1
- package/lib/common/client.js +2 -1
- package/lib/common/client.js.map +1 -1
- package/lib/common/controller.d.ts +20 -5
- package/lib/common/controller.d.ts.map +1 -1
- package/lib/common/controller.js.map +1 -1
- package/lib/common/environmentVariable.d.ts +2 -3
- package/lib/common/environmentVariable.d.ts.map +1 -1
- package/lib/common/environmentVariable.js.map +1 -1
- package/lib/common/environmentVariableCollection.d.ts +2 -3
- package/lib/common/environmentVariableCollection.d.ts.map +1 -1
- package/lib/common/environmentVariableCollection.js +2 -2
- package/lib/common/environmentVariableCollection.js.map +1 -1
- package/lib/common/profile.d.ts +6 -9
- package/lib/common/profile.d.ts.map +1 -1
- package/lib/common/profile.js +1 -2
- package/lib/common/profile.js.map +1 -1
- package/lib/common/pty.d.ts +91 -11
- package/lib/common/pty.d.ts.map +1 -1
- package/lib/common/pty.js +40 -1
- package/lib/common/pty.js.map +1 -1
- package/lib/common/render.d.ts +5 -0
- package/lib/common/render.d.ts.map +1 -1
- package/lib/common/render.js.map +1 -1
- package/lib/common/resize.d.ts +2 -0
- package/lib/common/resize.d.ts.map +1 -1
- package/lib/common/service.d.ts +8 -11
- package/lib/common/service.d.ts.map +1 -1
- package/lib/common/service.js.map +1 -1
- package/lib/common/xterm.d.ts +16 -0
- package/lib/common/xterm.d.ts.map +1 -0
- package/lib/common/xterm.js +3 -0
- package/lib/common/xterm.js.map +1 -0
- package/lib/node/index.d.ts.map +1 -1
- package/lib/node/index.js +5 -0
- package/lib/node/index.js.map +1 -1
- package/lib/node/pty.d.ts +9 -5
- package/lib/node/pty.d.ts.map +1 -1
- package/lib/node/pty.js +13 -10
- package/lib/node/pty.js.map +1 -1
- package/lib/node/pty.manager.d.ts +52 -0
- package/lib/node/pty.manager.d.ts.map +1 -0
- package/lib/node/pty.manager.js +149 -0
- package/lib/node/pty.manager.js.map +1 -0
- package/lib/node/pty.manager.remote.d.ts +10 -0
- package/lib/node/pty.manager.remote.d.ts.map +1 -0
- package/lib/node/pty.manager.remote.js +92 -0
- package/lib/node/pty.manager.remote.js.map +1 -0
- package/lib/node/pty.proxy.d.ts +45 -0
- package/lib/node/pty.proxy.d.ts.map +1 -0
- package/lib/node/pty.proxy.js +255 -0
- package/lib/node/pty.proxy.js.map +1 -0
- package/lib/node/pty.proxy.remote.exec.d.ts +2 -0
- package/lib/node/pty.proxy.remote.exec.d.ts.map +1 -0
- package/lib/node/pty.proxy.remote.exec.js +7 -0
- package/lib/node/pty.proxy.remote.exec.js.map +1 -0
- package/lib/node/shell.d.ts +1 -1
- package/lib/node/shell.d.ts.map +1 -1
- package/lib/node/shell.js +14 -15
- package/lib/node/shell.js.map +1 -1
- package/lib/node/terminal.profile.service.d.ts.map +1 -1
- package/lib/node/terminal.profile.service.js +4 -6
- package/lib/node/terminal.profile.service.js.map +1 -1
- package/lib/node/terminal.service.client.d.ts +3 -8
- package/lib/node/terminal.service.client.d.ts.map +1 -1
- package/lib/node/terminal.service.client.js +8 -39
- package/lib/node/terminal.service.client.js.map +1 -1
- package/lib/node/terminal.service.d.ts +3 -2
- package/lib/node/terminal.service.d.ts.map +1 -1
- package/lib/node/terminal.service.js +36 -10
- package/lib/node/terminal.service.js.map +1 -1
- package/package.json +16 -16
- package/lib/browser/terminal.contribution.d.ts +0 -7
- package/lib/browser/terminal.contribution.d.ts.map +0 -1
- package/lib/browser/terminal.contribution.js +0 -32
- package/lib/browser/terminal.contribution.js.map +0 -1
- package/lib/common/menu.d.ts +0 -5
- package/lib/common/menu.d.ts.map +0 -1
- package/lib/common/menu.js +0 -9
- package/lib/common/menu.js.map +0 -1
|
@@ -7,10 +7,9 @@ const ide_core_browser_1 = require("@opensumi/ide-core-browser");
|
|
|
7
7
|
const next_1 = require("@opensumi/ide-core-browser/lib/menu/next");
|
|
8
8
|
const ide_core_common_1 = require("@opensumi/ide-core-common");
|
|
9
9
|
const common_1 = require("../common");
|
|
10
|
-
const menu_1 = require("../common/menu");
|
|
11
10
|
let TerminalContextMenuService = class TerminalContextMenuService extends ide_core_common_1.Disposable {
|
|
12
11
|
get contextMenu() {
|
|
13
|
-
const contributedContextMenu = this.menuService.createMenu(
|
|
12
|
+
const contributedContextMenu = this.menuService.createMenu(next_1.MenuId.TerminalPanelContext, this.controller.contextKeyService || this.contextKeyService);
|
|
14
13
|
this.addDispose(contributedContextMenu);
|
|
15
14
|
return contributedContextMenu;
|
|
16
15
|
}
|
|
@@ -26,12 +25,27 @@ let TerminalContextMenuService = class TerminalContextMenuService extends ide_co
|
|
|
26
25
|
});
|
|
27
26
|
}
|
|
28
27
|
get tabContextMenu() {
|
|
29
|
-
const contributedContextMenu = this.menuService.createMenu(
|
|
28
|
+
const contributedContextMenu = this.menuService.createMenu(next_1.MenuId.TerminalTabContext, this.contextKeyService);
|
|
30
29
|
this.addDispose(contributedContextMenu);
|
|
31
30
|
return contributedContextMenu;
|
|
32
31
|
}
|
|
33
|
-
|
|
32
|
+
get tabDropDownContextMenu() {
|
|
33
|
+
const contributedContextMenu = this.menuService.createMenu(next_1.MenuId.TerminalNewDropdownContext, this.contextKeyService);
|
|
34
|
+
this.addDispose(contributedContextMenu);
|
|
35
|
+
return contributedContextMenu;
|
|
36
|
+
}
|
|
37
|
+
onDropDownContextMenu(event) {
|
|
34
38
|
event.preventDefault();
|
|
39
|
+
const { x, y } = event.nativeEvent;
|
|
40
|
+
const menus = this.tabDropDownContextMenu;
|
|
41
|
+
const menuNodes = (0, next_1.generateMergedCtxMenu)({ menus });
|
|
42
|
+
this.ctxMenuRenderer.show({
|
|
43
|
+
anchor: { x, y },
|
|
44
|
+
menuNodes,
|
|
45
|
+
args: [event.target],
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
onTabContextMenu(event, index) {
|
|
35
49
|
const { x, y } = event.nativeEvent;
|
|
36
50
|
const menus = this.tabContextMenu;
|
|
37
51
|
const menuNodes = (0, next_1.generateMergedCtxMenu)({ menus });
|
|
@@ -68,6 +82,11 @@ tslib_1.__decorate([
|
|
|
68
82
|
tslib_1.__metadata("design:type", Object),
|
|
69
83
|
tslib_1.__metadata("design:paramtypes", [])
|
|
70
84
|
], TerminalContextMenuService.prototype, "tabContextMenu", null);
|
|
85
|
+
tslib_1.__decorate([
|
|
86
|
+
ide_core_browser_1.memoize,
|
|
87
|
+
tslib_1.__metadata("design:type", Object),
|
|
88
|
+
tslib_1.__metadata("design:paramtypes", [])
|
|
89
|
+
], TerminalContextMenuService.prototype, "tabDropDownContextMenu", null);
|
|
71
90
|
TerminalContextMenuService = tslib_1.__decorate([
|
|
72
91
|
(0, di_1.Injectable)()
|
|
73
92
|
], TerminalContextMenuService);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminal.context-menu.js","sourceRoot":"","sources":["../../src/browser/terminal.context-menu.ts"],"names":[],"mappings":";;;;AAAA,qCAAqD;AACrD,iEAAyE;AACzE,
|
|
1
|
+
{"version":3,"file":"terminal.context-menu.js","sourceRoot":"","sources":["../../src/browser/terminal.context-menu.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,18 +1,20 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
+
import { WSChannelHandler } from '@opensumi/ide-connection/lib/browser/ws-channel-handler';
|
|
2
3
|
import { AppConfig } from '@opensumi/ide-core-browser';
|
|
3
4
|
import { WithEventBus, Emitter, Deferred, Event, IDisposable, ILogger } from '@opensumi/ide-core-common';
|
|
4
5
|
import { WorkbenchEditorService } from '@opensumi/ide-editor';
|
|
5
6
|
import { IMainLayoutService } from '@opensumi/ide-main-layout';
|
|
6
7
|
import { TabBarHandler } from '@opensumi/ide-main-layout/lib/browser/tabbar-handler';
|
|
7
8
|
import { IThemeService } from '@opensumi/ide-theme';
|
|
8
|
-
import { ITerminalController, ITerminalClient, ITerminalClientFactory, IWidget, ITerminalInfo, ITerminalBrowserHistory, ITerminalTheme,
|
|
9
|
+
import { ITerminalController, ITerminalClient, ITerminalClientFactory, IWidget, ITerminalInfo, ITerminalBrowserHistory, ITerminalTheme, ITerminalErrorService, ITerminalInternalService, ITerminalLaunchError, ITerminalProcessExtHostProxy, IStartExtensionTerminalRequest, ITerminalExitEvent, ITerminalTitleChangeEvent, ITerminalExternalLinkProvider, ICreateTerminalOptions, ITerminalClientFactory2, ICreateClientWithWidgetOptions, ITerminalProfileService, TerminalOptions } from '../common';
|
|
9
10
|
import { TerminalGroupViewService } from './terminal.view';
|
|
10
11
|
export declare class TerminalController extends WithEventBus implements ITerminalController {
|
|
11
12
|
protected _focus: boolean;
|
|
12
|
-
protected
|
|
13
|
+
protected _tabBarHandler: TabBarHandler | undefined;
|
|
13
14
|
protected _clients: Map<string, ITerminalClient>;
|
|
14
15
|
protected _onDidOpenTerminal: Emitter<ITerminalInfo>;
|
|
15
16
|
protected _onDidCloseTerminal: Emitter<ITerminalExitEvent>;
|
|
17
|
+
protected _onDidTerminalTitleChange: Emitter<ITerminalTitleChangeEvent>;
|
|
16
18
|
protected _onDidChangeActiveTerminal: Emitter<string>;
|
|
17
19
|
protected _ready: Deferred<void>;
|
|
18
20
|
protected _activeClientId?: string;
|
|
@@ -20,9 +22,11 @@ export declare class TerminalController extends WithEventBus implements ITermina
|
|
|
20
22
|
private _linkProviderDisposables;
|
|
21
23
|
readonly onDidOpenTerminal: Event<ITerminalInfo>;
|
|
22
24
|
readonly onDidCloseTerminal: Event<ITerminalExitEvent>;
|
|
25
|
+
readonly onDidTerminalTitleChange: Event<ITerminalTitleChangeEvent>;
|
|
23
26
|
readonly onDidChangeActiveTerminal: Event<string>;
|
|
24
27
|
private readonly _onInstanceRequestStartExtensionTerminal;
|
|
25
28
|
readonly onInstanceRequestStartExtensionTerminal: Event<IStartExtensionTerminalRequest>;
|
|
29
|
+
private commandAndMenuDisposeCollection;
|
|
26
30
|
protected readonly layoutService: IMainLayoutService;
|
|
27
31
|
protected readonly themeService: IThemeService;
|
|
28
32
|
protected readonly editorService: WorkbenchEditorService;
|
|
@@ -32,11 +36,15 @@ export declare class TerminalController extends WithEventBus implements ITermina
|
|
|
32
36
|
protected readonly clientFactory2: ITerminalClientFactory2;
|
|
33
37
|
protected readonly service: ITerminalInternalService;
|
|
34
38
|
protected readonly errorService: ITerminalErrorService;
|
|
39
|
+
protected readonly profileService: ITerminalProfileService;
|
|
40
|
+
private readonly commandRegistry;
|
|
41
|
+
private readonly menuRegistry;
|
|
35
42
|
private readonly injector;
|
|
36
43
|
config: AppConfig;
|
|
37
44
|
protected readonly logger: ILogger;
|
|
38
45
|
private readonly menuService;
|
|
39
46
|
private ctxMenuRenderer;
|
|
47
|
+
protected readonly wsChannelHandler: WSChannelHandler;
|
|
40
48
|
viewReady: Deferred<void>;
|
|
41
49
|
/**
|
|
42
50
|
* 如果这个值在被用到的时候还是 undefined,那说明视图渲染出了问题。
|
|
@@ -64,7 +72,10 @@ export declare class TerminalController extends WithEventBus implements ITermina
|
|
|
64
72
|
blur(): void;
|
|
65
73
|
onContextMenu(e: React.MouseEvent<HTMLElement>): void;
|
|
66
74
|
toJSON(): {
|
|
67
|
-
groups:
|
|
75
|
+
groups: {
|
|
76
|
+
client: string;
|
|
77
|
+
task?: string | undefined;
|
|
78
|
+
}[][];
|
|
68
79
|
current: string | undefined;
|
|
69
80
|
};
|
|
70
81
|
findClientFromWidgetId(widgetId: string): ITerminalClient | undefined;
|
|
@@ -77,6 +88,7 @@ export declare class TerminalController extends WithEventBus implements ITermina
|
|
|
77
88
|
* @returns
|
|
78
89
|
*/
|
|
79
90
|
createClientWithWidget2(options: ICreateClientWithWidgetOptions): Promise<ITerminalClient>;
|
|
91
|
+
createTerminal(options: ICreateTerminalOptions): Promise<ITerminalClient>;
|
|
80
92
|
clearCurrentGroup(): void;
|
|
81
93
|
clearAllGroups(): void;
|
|
82
94
|
showTerminalPanel(): void;
|
|
@@ -84,5 +96,6 @@ export declare class TerminalController extends WithEventBus implements ITermina
|
|
|
84
96
|
requestStartExtensionTerminal(proxy: ITerminalProcessExtHostProxy, cols: number, rows: number): Promise<ITerminalLaunchError | undefined>;
|
|
85
97
|
registerLinkProvider(linkProvider: ITerminalExternalLinkProvider): IDisposable;
|
|
86
98
|
private _setInstanceLinkProviders;
|
|
99
|
+
private registerContributedProfilesCommandAndMenu;
|
|
87
100
|
}
|
|
88
101
|
//# sourceMappingURL=terminal.controller.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminal.controller.d.ts","sourceRoot":"","sources":["../../src/browser/terminal.controller.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"terminal.controller.d.ts","sourceRoot":"","sources":["../../src/browser/terminal.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,8 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.TerminalController = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
|
+
const get_1 = tslib_1.__importDefault(require("lodash/get"));
|
|
5
6
|
const mobx_1 = require("mobx");
|
|
6
7
|
const di_1 = require("@opensumi/di");
|
|
8
|
+
const ws_channel_handler_1 = require("@opensumi/ide-connection/lib/browser/ws-channel-handler");
|
|
7
9
|
const ide_core_browser_1 = require("@opensumi/ide-core-browser");
|
|
8
10
|
const next_1 = require("@opensumi/ide-core-browser/lib/menu/next");
|
|
9
11
|
const menu_util_1 = require("@opensumi/ide-core-browser/lib/menu/next/menu-util");
|
|
@@ -20,12 +22,14 @@ let TerminalController = class TerminalController extends ide_core_common_1.With
|
|
|
20
22
|
super();
|
|
21
23
|
this._onDidOpenTerminal = new ide_core_common_1.Emitter();
|
|
22
24
|
this._onDidCloseTerminal = new ide_core_common_1.Emitter();
|
|
25
|
+
this._onDidTerminalTitleChange = new ide_core_common_1.Emitter();
|
|
23
26
|
this._onDidChangeActiveTerminal = new ide_core_common_1.Emitter();
|
|
24
27
|
this._ready = new ide_core_common_1.Deferred();
|
|
25
28
|
this._linkProviders = new Set();
|
|
26
29
|
this._linkProviderDisposables = new Map();
|
|
27
30
|
this.onDidOpenTerminal = this._onDidOpenTerminal.event;
|
|
28
31
|
this.onDidCloseTerminal = this._onDidCloseTerminal.event;
|
|
32
|
+
this.onDidTerminalTitleChange = this._onDidTerminalTitleChange.event;
|
|
29
33
|
this.onDidChangeActiveTerminal = this._onDidChangeActiveTerminal.event;
|
|
30
34
|
this._onInstanceRequestStartExtensionTerminal = new ide_core_common_1.Emitter();
|
|
31
35
|
this.onInstanceRequestStartExtensionTerminal = this._onInstanceRequestStartExtensionTerminal.event;
|
|
@@ -74,8 +78,13 @@ let TerminalController = class TerminalController extends ide_core_common_1.With
|
|
|
74
78
|
this._clients.set(client.id, client);
|
|
75
79
|
this.logger.log(`setup client ${client.id}`);
|
|
76
80
|
client.addDispose(client.onExit((e) => {
|
|
81
|
+
this.terminalView.removeWidget(client.id);
|
|
82
|
+
this.clients.delete(client.id);
|
|
77
83
|
this._onDidCloseTerminal.fire({ id: client.id, code: e.code });
|
|
78
84
|
}));
|
|
85
|
+
client.addDispose(client.onTitleChange((e) => {
|
|
86
|
+
this._onDidTerminalTitleChange.fire({ id: client.id, name: e.name });
|
|
87
|
+
}));
|
|
79
88
|
client.addDispose({
|
|
80
89
|
dispose: () => {
|
|
81
90
|
this._clients.delete(client.id);
|
|
@@ -97,8 +106,8 @@ let TerminalController = class TerminalController extends ide_core_common_1.With
|
|
|
97
106
|
const client = this.findClientFromWidgetId(widget.id);
|
|
98
107
|
client && client.dispose();
|
|
99
108
|
}
|
|
100
|
-
_createOneGroup() {
|
|
101
|
-
const index = this.terminalView.createGroup();
|
|
109
|
+
_createOneGroup(options) {
|
|
110
|
+
const index = this.terminalView.createGroup(options);
|
|
102
111
|
const group = this.terminalView.getGroup(index);
|
|
103
112
|
return { group, index };
|
|
104
113
|
}
|
|
@@ -108,28 +117,68 @@ let TerminalController = class TerminalController extends ide_core_common_1.With
|
|
|
108
117
|
return widget;
|
|
109
118
|
}
|
|
110
119
|
async recovery(history) {
|
|
120
|
+
var _a, _b;
|
|
121
|
+
// Electron的环境下,不启用终端恢复能力
|
|
122
|
+
// 而且在Electron的环境下,clientId的获取方式也不一样,但因为不启用恢复能力,所以后面的代码也无需做额外处理
|
|
123
|
+
if (this.config.isElectronRenderer && !this.config.isRemote) {
|
|
124
|
+
return;
|
|
125
|
+
}
|
|
126
|
+
// 先对recovery数据做一个简单校验,因为之前groups数据可能是字符串或object,而现在抛弃了字符串的方式
|
|
127
|
+
// 所以为了避免旧逻辑写入localStorage的数据混乱,这里做一个简单的校验
|
|
128
|
+
if (!history.current || !(0, get_1.default)(history, 'groups[0][0].client')) {
|
|
129
|
+
return;
|
|
130
|
+
}
|
|
131
|
+
// HACK: 因为现在的终端重连是有问题的,是ClientID机制导致的,因此在拿出记录恢复终端的时候,需要把里面的ClientID替换为当前活跃窗口的ClientID
|
|
132
|
+
// 同时在独立PtyService中,把终端重连的标识转变为真正的realSessionId 也就是 ${clientId}|${realSessionId}
|
|
133
|
+
const currentClientId = this.wsChannelHandler.clientId;
|
|
134
|
+
const currentRealSessionId = (_b = (_a = history.current) === null || _a === void 0 ? void 0 : _a.split(common_1.TERMINAL_ID_SEPARATOR)) === null || _b === void 0 ? void 0 : _b[1];
|
|
135
|
+
if (history.current && history.current.includes(common_1.TERMINAL_ID_SEPARATOR)) {
|
|
136
|
+
history.current = `${currentClientId}|${currentRealSessionId}`;
|
|
137
|
+
}
|
|
138
|
+
history.groups = history.groups.map((group) => {
|
|
139
|
+
if (Array.isArray(group)) {
|
|
140
|
+
// 替换clientId为当前窗口ClientID
|
|
141
|
+
return group.map((_a) => {
|
|
142
|
+
var _b;
|
|
143
|
+
var { client } = _a, other = tslib_1.__rest(_a, ["client"]);
|
|
144
|
+
return (Object.assign({ client: client.includes(common_1.TERMINAL_ID_SEPARATOR)
|
|
145
|
+
? `${currentClientId}${common_1.TERMINAL_ID_SEPARATOR}${(_b = client === null || client === void 0 ? void 0 : client.split(common_1.TERMINAL_ID_SEPARATOR)) === null || _b === void 0 ? void 0 : _b[1]}`
|
|
146
|
+
: client }, other));
|
|
147
|
+
});
|
|
148
|
+
}
|
|
149
|
+
else {
|
|
150
|
+
return group;
|
|
151
|
+
}
|
|
152
|
+
});
|
|
111
153
|
let currentWidgetId = '';
|
|
112
154
|
const { groups, current } = history;
|
|
113
155
|
const ids = [];
|
|
114
|
-
groups.forEach((widgets) => ids.
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
156
|
+
groups.forEach((widgets) => ids.push(...widgets.map((widget) => widget.client)));
|
|
157
|
+
// 之前OpenSumi的Check终端活跃机制是有问题的,暂时不启用,这部分逻辑在PtyService会兜住
|
|
158
|
+
// const checked = await this.service.check(ids.map((id) => (typeof id === 'string' ? id : id.clientId)));
|
|
159
|
+
// if (!checked) {
|
|
160
|
+
// return;
|
|
161
|
+
// }
|
|
119
162
|
for (const widgets of groups) {
|
|
120
163
|
const { group } = this._createOneGroup();
|
|
121
164
|
if (!widgets) {
|
|
122
165
|
continue;
|
|
123
166
|
}
|
|
124
|
-
for (const
|
|
125
|
-
if (!
|
|
167
|
+
for (const session of widgets) {
|
|
168
|
+
if (!session) {
|
|
126
169
|
continue;
|
|
127
170
|
}
|
|
128
171
|
/**
|
|
129
172
|
* widget 创建完成后会同时创建 client
|
|
130
173
|
*/
|
|
131
|
-
const widget = this.terminalView.createWidget(group, typeof
|
|
132
|
-
const client = await this.
|
|
174
|
+
const widget = this.terminalView.createWidget(group, typeof session === 'string' ? session : session.client, !!session.task);
|
|
175
|
+
const client = await this.clientFactory2(widget, {});
|
|
176
|
+
// 终端被Resume的场景下也要绑定终端事件,避免意料之外的BUG
|
|
177
|
+
this.setupClient(widget, client);
|
|
178
|
+
if (session.task) {
|
|
179
|
+
client.isTaskExecutor = true;
|
|
180
|
+
client.taskId = session.task;
|
|
181
|
+
}
|
|
133
182
|
this._clients.set(client.id, client);
|
|
134
183
|
if (current === client.id) {
|
|
135
184
|
currentWidgetId = widget.id;
|
|
@@ -139,6 +188,7 @@ let TerminalController = class TerminalController extends ide_core_common_1.With
|
|
|
139
188
|
*/
|
|
140
189
|
client.attached.promise.then(() => {
|
|
141
190
|
widget.name = client.name;
|
|
191
|
+
// client.term.writeln('\x1b[2mTerminal restored\x1b[22m');
|
|
142
192
|
/**
|
|
143
193
|
* 不成功的时候则认为这个连接已经失效了,去掉这个 widget
|
|
144
194
|
*/
|
|
@@ -173,7 +223,7 @@ let TerminalController = class TerminalController extends ide_core_common_1.With
|
|
|
173
223
|
}, 2000);
|
|
174
224
|
}),
|
|
175
225
|
]);
|
|
176
|
-
this.
|
|
226
|
+
this._tabBarHandler = this.layoutService.getTabbarHandler(common_1.TerminalContainerId);
|
|
177
227
|
this.themeBackground = this.terminalTheme.terminalTheme.background || '';
|
|
178
228
|
this.addDispose(this.terminalView.onWidgetCreated((widget) => {
|
|
179
229
|
this._createClientOrIgnore(widget);
|
|
@@ -205,14 +255,18 @@ let TerminalController = class TerminalController extends ide_core_common_1.With
|
|
|
205
255
|
this.themeBackground = this.terminalTheme.terminalTheme.background || '';
|
|
206
256
|
}));
|
|
207
257
|
this.addDispose(this.eventBus.on(ide_core_browser_1.ResizeEvent, (e) => {
|
|
208
|
-
if (this.
|
|
209
|
-
this.
|
|
258
|
+
if (this._tabBarHandler &&
|
|
259
|
+
this._tabBarHandler.isActivated() &&
|
|
210
260
|
e.payload.slotLocation === (0, ide_core_browser_1.getSlotLocation)('@opensumi/ide-terminal-next', this.config.layoutConfig)) {
|
|
211
261
|
this.terminalView.resize();
|
|
212
262
|
}
|
|
213
263
|
}));
|
|
214
|
-
|
|
215
|
-
|
|
264
|
+
this.registerContributedProfilesCommandAndMenu();
|
|
265
|
+
this.addDispose(this.profileService.onDidChangeAvailableProfiles(() => {
|
|
266
|
+
this.registerContributedProfilesCommandAndMenu();
|
|
267
|
+
}));
|
|
268
|
+
if (this._tabBarHandler) {
|
|
269
|
+
this.addDispose(this._tabBarHandler.onActivate(() => {
|
|
216
270
|
if (this.terminalView.empty()) {
|
|
217
271
|
const current = this._reset();
|
|
218
272
|
this.terminalView.selectWidget(current.id);
|
|
@@ -221,12 +275,12 @@ let TerminalController = class TerminalController extends ide_core_common_1.With
|
|
|
221
275
|
this.terminalView.selectGroup(this.terminalView.currentGroupIndex > -1 ? this.terminalView.currentGroupIndex : 0);
|
|
222
276
|
}
|
|
223
277
|
}));
|
|
224
|
-
this.addDispose(this.
|
|
278
|
+
this.addDispose(this._tabBarHandler.onInActivate(() => {
|
|
225
279
|
if (this.editorService.currentEditor) {
|
|
226
280
|
this.editorService.currentEditor.monacoEditor.focus();
|
|
227
281
|
}
|
|
228
282
|
}));
|
|
229
|
-
if (this.
|
|
283
|
+
if (this._tabBarHandler.isActivated()) {
|
|
230
284
|
if (this.terminalView.empty()) {
|
|
231
285
|
const widget = this._reset();
|
|
232
286
|
this.terminalView.selectWidget(widget.id);
|
|
@@ -273,11 +327,19 @@ let TerminalController = class TerminalController extends ide_core_common_1.With
|
|
|
273
327
|
this.terminalView.groups.forEach((wGroup) => {
|
|
274
328
|
const group = [];
|
|
275
329
|
wGroup.widgets.forEach((widget) => {
|
|
330
|
+
var _a, _b;
|
|
276
331
|
const client = this._clients.get(widget.id);
|
|
277
332
|
if (!client) {
|
|
278
333
|
return;
|
|
279
334
|
}
|
|
280
|
-
|
|
335
|
+
if (((_a = client === null || client === void 0 ? void 0 : client.options) === null || _a === void 0 ? void 0 : _a.isExtensionTerminal) || ((_b = client === null || client === void 0 ? void 0 : client.options) === null || _b === void 0 ? void 0 : _b.isTransient)) {
|
|
336
|
+
return;
|
|
337
|
+
}
|
|
338
|
+
const record = { client: client.id };
|
|
339
|
+
if (client.isTaskExecutor) {
|
|
340
|
+
record.task = client.taskId;
|
|
341
|
+
}
|
|
342
|
+
group.push(record);
|
|
281
343
|
});
|
|
282
344
|
if (group.length > 0) {
|
|
283
345
|
groups.push(group);
|
|
@@ -307,13 +369,25 @@ let TerminalController = class TerminalController extends ide_core_common_1.With
|
|
|
307
369
|
* @returns
|
|
308
370
|
*/
|
|
309
371
|
async createClientWithWidget2(options) {
|
|
310
|
-
const widgetId = this.service.generateSessionId();
|
|
311
|
-
const { group } = this._createOneGroup();
|
|
312
|
-
const widget = this.terminalView.createWidget(group, widgetId, !options.closeWhenExited, true);
|
|
372
|
+
const widgetId = this.wsChannelHandler.clientId + common_1.TERMINAL_ID_SEPARATOR + options.id || this.service.generateSessionId();
|
|
373
|
+
const { group } = this._createOneGroup((0, common_1.convertTerminalOptionsToLaunchConfig)(options.terminalOptions));
|
|
374
|
+
const widget = this.terminalView.createWidget(group, widgetId, options.isTaskExecutor || !options.closeWhenExited, true);
|
|
313
375
|
if (options.beforeCreate && typeof options.beforeCreate === 'function') {
|
|
314
376
|
options.beforeCreate(widgetId);
|
|
315
377
|
}
|
|
316
|
-
|
|
378
|
+
const client = await this._createClient(widget, options.terminalOptions);
|
|
379
|
+
if (options.isTaskExecutor) {
|
|
380
|
+
client.isTaskExecutor = true;
|
|
381
|
+
client.taskId = options.taskId;
|
|
382
|
+
}
|
|
383
|
+
return client;
|
|
384
|
+
}
|
|
385
|
+
async createTerminal(options) {
|
|
386
|
+
const widgetId = options.id || this.service.generateSessionId();
|
|
387
|
+
const { group } = this._createOneGroup();
|
|
388
|
+
const widget = this.terminalView.createWidget(group, widgetId, false, true);
|
|
389
|
+
const client = await this._createClient(widget, options);
|
|
390
|
+
return client;
|
|
317
391
|
}
|
|
318
392
|
clearCurrentGroup() {
|
|
319
393
|
this.terminalView.currentGroup &&
|
|
@@ -332,13 +406,13 @@ let TerminalController = class TerminalController extends ide_core_common_1.With
|
|
|
332
406
|
});
|
|
333
407
|
}
|
|
334
408
|
showTerminalPanel() {
|
|
335
|
-
if (this.
|
|
336
|
-
this.
|
|
409
|
+
if (this._tabBarHandler) {
|
|
410
|
+
this._tabBarHandler.activate();
|
|
337
411
|
}
|
|
338
412
|
}
|
|
339
413
|
hideTerminalPanel() {
|
|
340
|
-
if (this.
|
|
341
|
-
this.
|
|
414
|
+
if (this._tabBarHandler && this._tabBarHandler.isActivated()) {
|
|
415
|
+
this._tabBarHandler.deactivate();
|
|
342
416
|
}
|
|
343
417
|
}
|
|
344
418
|
requestStartExtensionTerminal(proxy, cols, rows) {
|
|
@@ -371,6 +445,50 @@ let TerminalController = class TerminalController extends ide_core_common_1.With
|
|
|
371
445
|
disposable === null || disposable === void 0 ? void 0 : disposable.add(provider);
|
|
372
446
|
}
|
|
373
447
|
}
|
|
448
|
+
registerContributedProfilesCommandAndMenu() {
|
|
449
|
+
if (this.commandAndMenuDisposeCollection) {
|
|
450
|
+
this.commandAndMenuDisposeCollection.dispose();
|
|
451
|
+
}
|
|
452
|
+
this.commandAndMenuDisposeCollection = new ide_core_common_1.DisposableCollection();
|
|
453
|
+
// 展示在下拉列表的数据
|
|
454
|
+
const notAutoDetectedProfiles = this.profileService.availableProfiles.filter((profile) => !profile.isAutoDetected);
|
|
455
|
+
notAutoDetectedProfiles.forEach((profile) => {
|
|
456
|
+
const id = `TerminalProfilesCommand:${profile.path}:${profile.profileName}`;
|
|
457
|
+
this.commandAndMenuDisposeCollection.push(this.commandRegistry.registerCommand({
|
|
458
|
+
id,
|
|
459
|
+
}, {
|
|
460
|
+
execute: async () => {
|
|
461
|
+
await this.createTerminal({
|
|
462
|
+
config: profile,
|
|
463
|
+
});
|
|
464
|
+
},
|
|
465
|
+
}));
|
|
466
|
+
this.commandAndMenuDisposeCollection.push(this.menuRegistry.registerMenuItem(next_1.MenuId.TerminalNewDropdownContext, {
|
|
467
|
+
command: {
|
|
468
|
+
id,
|
|
469
|
+
label: profile.profileName || 'unknown profile',
|
|
470
|
+
},
|
|
471
|
+
}));
|
|
472
|
+
});
|
|
473
|
+
this.profileService.contributedProfiles.forEach((profile) => {
|
|
474
|
+
const id = `TerminalProfilesCommand:${profile.extensionIdentifier}:${profile.id}`;
|
|
475
|
+
this.commandAndMenuDisposeCollection.push(this.commandRegistry.registerCommand({
|
|
476
|
+
id,
|
|
477
|
+
}, {
|
|
478
|
+
execute: async () => {
|
|
479
|
+
await this.profileService.createContributedTerminalProfile(profile.extensionIdentifier, profile.id, {
|
|
480
|
+
icon: profile.icon,
|
|
481
|
+
});
|
|
482
|
+
},
|
|
483
|
+
}));
|
|
484
|
+
this.commandAndMenuDisposeCollection.push(this.menuRegistry.registerMenuItem(next_1.MenuId.TerminalNewDropdownContext, {
|
|
485
|
+
command: {
|
|
486
|
+
id,
|
|
487
|
+
label: (0, ide_core_common_1.replaceLocalizePlaceholder)(profile.title) || profile.title || 'unknown profile',
|
|
488
|
+
},
|
|
489
|
+
}));
|
|
490
|
+
});
|
|
491
|
+
}
|
|
374
492
|
};
|
|
375
493
|
tslib_1.__decorate([
|
|
376
494
|
(0, di_1.Autowired)(ide_main_layout_1.IMainLayoutService),
|
|
@@ -408,6 +526,18 @@ tslib_1.__decorate([
|
|
|
408
526
|
(0, di_1.Autowired)(common_1.ITerminalErrorService),
|
|
409
527
|
tslib_1.__metadata("design:type", Object)
|
|
410
528
|
], TerminalController.prototype, "errorService", void 0);
|
|
529
|
+
tslib_1.__decorate([
|
|
530
|
+
(0, di_1.Autowired)(common_1.ITerminalProfileService),
|
|
531
|
+
tslib_1.__metadata("design:type", Object)
|
|
532
|
+
], TerminalController.prototype, "profileService", void 0);
|
|
533
|
+
tslib_1.__decorate([
|
|
534
|
+
(0, di_1.Autowired)(ide_core_common_1.CommandRegistry),
|
|
535
|
+
tslib_1.__metadata("design:type", Object)
|
|
536
|
+
], TerminalController.prototype, "commandRegistry", void 0);
|
|
537
|
+
tslib_1.__decorate([
|
|
538
|
+
(0, di_1.Autowired)(next_1.IMenuRegistry),
|
|
539
|
+
tslib_1.__metadata("design:type", next_1.IMenuRegistry)
|
|
540
|
+
], TerminalController.prototype, "menuRegistry", void 0);
|
|
411
541
|
tslib_1.__decorate([
|
|
412
542
|
(0, di_1.Autowired)(di_1.INJECTOR_TOKEN),
|
|
413
543
|
tslib_1.__metadata("design:type", di_1.Injector)
|
|
@@ -428,6 +558,10 @@ tslib_1.__decorate([
|
|
|
428
558
|
(0, di_1.Autowired)(next_1.ICtxMenuRenderer),
|
|
429
559
|
tslib_1.__metadata("design:type", next_1.ICtxMenuRenderer)
|
|
430
560
|
], TerminalController.prototype, "ctxMenuRenderer", void 0);
|
|
561
|
+
tslib_1.__decorate([
|
|
562
|
+
(0, di_1.Autowired)(ws_channel_handler_1.WSChannelHandler),
|
|
563
|
+
tslib_1.__metadata("design:type", ws_channel_handler_1.WSChannelHandler)
|
|
564
|
+
], TerminalController.prototype, "wsChannelHandler", void 0);
|
|
431
565
|
tslib_1.__decorate([
|
|
432
566
|
mobx_1.observable,
|
|
433
567
|
tslib_1.__metadata("design:type", String)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminal.controller.js","sourceRoot":"","sources":["../../src/browser/terminal.controller.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"terminal.controller.js","sourceRoot":"","sources":["../../src/browser/terminal.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.TerminalKeyBoardInputService = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const di_1 = require("@opensumi/di");
|
|
6
|
-
const
|
|
6
|
+
const ide_core_common_1 = require("@opensumi/ide-core-common");
|
|
7
7
|
let TerminalKeyBoardInputService = class TerminalKeyBoardInputService {
|
|
8
8
|
constructor() {
|
|
9
9
|
this._isCommandOrCtrl = false;
|
|
@@ -12,7 +12,7 @@ let TerminalKeyBoardInputService = class TerminalKeyBoardInputService {
|
|
|
12
12
|
return this._isCommandOrCtrl;
|
|
13
13
|
}
|
|
14
14
|
listen() {
|
|
15
|
-
const key =
|
|
15
|
+
const key = ide_core_common_1.isMacintosh ? 'Meta' : 'Control';
|
|
16
16
|
document.addEventListener('keydown', (e) => {
|
|
17
17
|
if (e.key === key) {
|
|
18
18
|
this._isCommandOrCtrl = true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminal.input.js","sourceRoot":"","sources":["../../src/browser/terminal.input.ts"],"names":[],"mappings":";;;;AAAA,qCAA0C;AAC1C
|
|
1
|
+
{"version":3,"file":"terminal.input.js","sourceRoot":"","sources":["../../src/browser/terminal.input.ts"],"names":[],"mappings":";;;;AAAA,qCAA0C;AAC1C,+DAAwD;AAGxD,IAAa,4BAA4B,GAAzC,MAAa,4BAA4B;IAAzC;QACU,qBAAgB,GAAG,KAAK,CAAC;IAqBnC,CAAC;IAnBC,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAED,MAAM;QACJ,MAAM,GAAG,GAAG,6BAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;QAE7C,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;YACzC,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,EAAE;gBACjB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;aAC9B;QACH,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;YACvC,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,EAAE;gBACjB,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;aAC/B;QACH,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AAtBY,4BAA4B;IADxC,IAAA,eAAU,GAAE;GACA,4BAA4B,CAsBxC;AAtBY,oEAA4B"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
import { OperatingSystem } from '@opensumi/ide-core-common
|
|
3
|
-
import { ITerminalService, ITerminalInternalService, ITerminalError, IPtyExitEvent, ITerminalController,
|
|
1
|
+
/// <reference types="xterm" />
|
|
2
|
+
import { OperatingSystem } from '@opensumi/ide-core-common';
|
|
3
|
+
import { ITerminalService, ITerminalInternalService, ITerminalError, IPtyExitEvent, ITerminalController, ITerminalProfile, IShellLaunchConfig, ITerminalConnection, IPtyProcessChangeEvent } from '../common';
|
|
4
|
+
import { IXTerm } from '../common/xterm';
|
|
4
5
|
export declare class TerminalInternalService implements ITerminalInternalService {
|
|
5
6
|
protected readonly service: ITerminalService;
|
|
6
7
|
protected readonly controller: ITerminalController;
|
|
@@ -9,7 +10,6 @@ export declare class TerminalInternalService implements ITerminalInternalService
|
|
|
9
10
|
getOptions(): import("xterm").ITerminalOptions;
|
|
10
11
|
check(sessionIds: string[]): Promise<boolean>;
|
|
11
12
|
private _getExtHostProxy;
|
|
12
|
-
attach(sessionId: string, xterm: XTermTerminal, rows: number, cols: number, options: TerminalOptions | undefined, type: string): Promise<ITerminalConnection | undefined>;
|
|
13
13
|
sendText(sessionId: string, message: string): Promise<void>;
|
|
14
14
|
resize(sessionId: string, cols: number, rows: number): Promise<void>;
|
|
15
15
|
disposeById(sessionId: string): void;
|
|
@@ -17,10 +17,10 @@ export declare class TerminalInternalService implements ITerminalInternalService
|
|
|
17
17
|
onError(handler: (error: ITerminalError) => void): import("@opensumi/ide-core-common").IDisposable;
|
|
18
18
|
onExit(handler: (event: IPtyExitEvent) => void): import("@opensumi/ide-core-common").IDisposable;
|
|
19
19
|
onProcessChange(handler: (event: IPtyProcessChangeEvent) => void): import("@opensumi/ide-core-common").IDisposable;
|
|
20
|
-
|
|
20
|
+
getOS(): Promise<OperatingSystem>;
|
|
21
21
|
getProfiles(autoDetect: boolean): Promise<ITerminalProfile[]>;
|
|
22
22
|
getDefaultSystemShell(): Promise<string>;
|
|
23
23
|
getCodePlatformKey(): Promise<'osx' | 'windows' | 'linux'>;
|
|
24
|
-
attachByLaunchConfig(sessionId: string, cols: number, rows: number, launchConfig: IShellLaunchConfig): Promise<ITerminalConnection | undefined>;
|
|
24
|
+
attachByLaunchConfig(sessionId: string, cols: number, rows: number, launchConfig: IShellLaunchConfig, xterm: IXTerm): Promise<ITerminalConnection | undefined>;
|
|
25
25
|
}
|
|
26
26
|
//# sourceMappingURL=terminal.internal.service.d.ts.map
|