@opensumi/ide-terminal-next 2.27.3-rc-1712113547.0 → 2.27.3-rc-1712755288.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.
@@ -1,12 +1,12 @@
1
1
  import { Injector } from '@opensumi/di';
2
2
  import { OperatingSystem } from '@opensumi/ide-core-browser';
3
- import { Event, IApplicationService, ILogger } from '@opensumi/ide-core-common';
3
+ import { Disposable, Event, IApplicationService, ILogger } from '@opensumi/ide-core-common';
4
4
  import { IPtyExitEvent, IPtyProcessChangeEvent, IShellLaunchConfig, ITerminalConnection, ITerminalError, ITerminalProfile, ITerminalService, ITerminalServiceClient } from '../common';
5
5
  import { XTerm } from './xterm';
6
6
  export interface EventMessage {
7
7
  data: string;
8
8
  }
9
- export declare class NodePtyTerminalService implements ITerminalService {
9
+ export declare class NodePtyTerminalService extends Disposable implements ITerminalService {
10
10
  static countId: number;
11
11
  private backendOs;
12
12
  protected readonly injector: Injector;
@@ -54,6 +54,5 @@ export declare class NodePtyTerminalService implements ITerminalService {
54
54
  getProfiles(autoDetect: boolean): Promise<ITerminalProfile[]>;
55
55
  getCwd(sessionId: string): Promise<string | undefined>;
56
56
  getDefaultSystemShell(): Promise<string>;
57
- dispose(): void;
58
57
  }
59
58
  //# sourceMappingURL=terminal.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"terminal.service.d.ts","sourceRoot":"","sources":["../../src/browser/terminal.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAyC,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAqB,MAAM,4BAA4B,CAAC;AAChF,OAAO,EAAW,KAAK,EAAE,mBAAmB,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAEzF,OAAO,EAGL,aAAa,EACb,sBAAsB,EACtB,kBAAkB,EAClB,mBAAmB,EACnB,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,sBAAsB,EAKvB,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;CACd;AACD,qBACa,sBAAuB,YAAW,gBAAgB;IAC7D,MAAM,CAAC,OAAO,SAAK;IAEnB,OAAO,CAAC,SAAS,CAA8B;IAG/C,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAGtC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAGnC,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,sBAAsB,CAAC;IAG5D,OAAO,CAAC,iBAAiB,CAAoB;IAG7C,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,mBAAmB,CAAC;IAE3D,OAAO,CAAC,QAAQ,CAAiC;IAC1C,OAAO,EAAE,KAAK,CAAC,cAAc,CAAC,CAAuB;IAE5D,OAAO,CAAC,OAAO,CAAgC;IACxC,MAAM,EAAE,KAAK,CAAC,aAAa,CAAC,CAAsB;IAEzD,OAAO,CAAC,gBAAgB,CAAyC;IAC1D,eAAe,gCAA+B;IAErD,OAAO,CAAC,iBAAiB,CAAqD;IAC9E,OAAO,CAAC,iBAAiB,CAQrB;IAEJ,iBAAiB;IAIX,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE;IAKzB,OAAO,CAAC,sBAAsB,CAY3B;IAEG,oBAAoB,CACxB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,kBAAkB,EAChC,MAAM,EAAE,KAAK;IAoBf,OAAO,CAAC,YAAY;IAYd,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAM3C,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAOpD,kBAAkB,IAAI,OAAO,CAAC,KAAK,GAAG,SAAS,GAAG,OAAO,CAAC;IAIhE,WAAW,CAAC,SAAS,EAAE,MAAM;IAIvB,YAAY,CAAC,SAAS,EAAE,MAAM;IAIpC;;;;;OAKG;IACH,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAI5C;;;;OAIG;IACH,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAC7D,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAiB/F,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAI/C,KAAK;IAOL,WAAW,CAAC,UAAU,EAAE,OAAO,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAa7D,MAAM,CAAC,SAAS,EAAE,MAAM;IAQxB,qBAAqB,IAAI,OAAO,CAAC,MAAM,CAAC;IAI9C,OAAO;CAIR"}
1
+ {"version":3,"file":"terminal.service.d.ts","sourceRoot":"","sources":["../../src/browser/terminal.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyC,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAqB,MAAM,4BAA4B,CAAC;AAChF,OAAO,EAAc,UAAU,EAAW,KAAK,EAAE,mBAAmB,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAEjH,OAAO,EAGL,aAAa,EACb,sBAAsB,EACtB,kBAAkB,EAClB,mBAAmB,EACnB,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,sBAAsB,EAKvB,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;CACd;AACD,qBACa,sBAAuB,SAAQ,UAAW,YAAW,gBAAgB;IAChF,MAAM,CAAC,OAAO,SAAK;IAEnB,OAAO,CAAC,SAAS,CAA8B;IAG/C,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAGtC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAGnC,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,sBAAsB,CAAC;IAG5D,OAAO,CAAC,iBAAiB,CAAoB;IAG7C,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,mBAAmB,CAAC;IAE3D,OAAO,CAAC,QAAQ,CAAuD;IAChE,OAAO,EAAE,KAAK,CAAC,cAAc,CAAC,CAAuB;IAE5D,OAAO,CAAC,OAAO,CAAsD;IAC9D,MAAM,EAAE,KAAK,CAAC,aAAa,CAAC,CAAsB;IAEzD,OAAO,CAAC,gBAAgB,CAA+D;IAChF,eAAe,gCAA+B;IAErD,OAAO,CAAC,iBAAiB,CAAkD;IAC3E,OAAO,CAAC,iBAAiB,CAKvB;IAEF,iBAAiB;IAIX,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE;IAKzB,OAAO,CAAC,sBAAsB,CAY3B;IAEG,oBAAoB,CACxB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,kBAAkB,EAChC,MAAM,EAAE,KAAK;IAoBf,OAAO,CAAC,YAAY;IAYd,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAM3C,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IAOpD,kBAAkB,IAAI,OAAO,CAAC,KAAK,GAAG,SAAS,GAAG,OAAO,CAAC;IAIhE,WAAW,CAAC,SAAS,EAAE,MAAM;IAIvB,YAAY,CAAC,SAAS,EAAE,MAAM;IAIpC;;;;;OAKG;IACH,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAI5C;;;;OAIG;IACH,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAC7D,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAiB/F,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAI/C,KAAK;IAOL,WAAW,CAAC,UAAU,EAAE,OAAO,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAa7D,MAAM,CAAC,SAAS,EAAE,MAAM;IAQxB,qBAAqB,IAAI,OAAO,CAAC,MAAM,CAAC;CAG/C"}
@@ -3,26 +3,26 @@ var NodePtyTerminalService_1;
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.NodePtyTerminalService = void 0;
5
5
  const tslib_1 = require("tslib");
6
- const event_kit_1 = require("event-kit");
7
6
  const di_1 = require("@opensumi/di");
8
7
  const ide_core_browser_1 = require("@opensumi/ide-core-browser");
9
8
  const ide_core_common_1 = require("@opensumi/ide-core-common");
10
9
  const common_1 = require("../common");
11
- let NodePtyTerminalService = NodePtyTerminalService_1 = class NodePtyTerminalService {
10
+ let NodePtyTerminalService = NodePtyTerminalService_1 = class NodePtyTerminalService extends ide_core_common_1.Disposable {
12
11
  constructor() {
13
- this._onError = new ide_core_common_1.Emitter();
12
+ super(...arguments);
13
+ this._onError = this.registerDispose(new ide_core_common_1.Emitter());
14
14
  this.onError = this._onError.event;
15
- this._onExit = new ide_core_common_1.Emitter();
15
+ this._onExit = this.registerDispose(new ide_core_common_1.Emitter());
16
16
  this.onExit = this._onExit.event;
17
- this._onProcessChange = new ide_core_common_1.Emitter();
17
+ this._onProcessChange = this.registerDispose(new ide_core_common_1.Emitter());
18
18
  this.onProcessChange = this._onProcessChange.event;
19
- this._onDataDispatcher = new event_kit_1.Emitter();
20
- this._onExitDispatcher = new event_kit_1.Emitter();
19
+ this._onDataDispatcher = this.registerDispose(new ide_core_common_1.Dispatcher());
20
+ this._onExitDispatcher = this.registerDispose(new ide_core_common_1.Dispatcher());
21
21
  this._createCustomWebSocket = (sessionId, pty) => ({
22
22
  name: pty.name,
23
23
  readonly: false,
24
- onData: (handler) => this._onDataDispatcher.on(sessionId, handler),
25
- onExit: (handler) => this._onExitDispatcher.on(sessionId, (e) => {
24
+ onData: (handler) => this._onDataDispatcher.on(sessionId)(handler),
25
+ onExit: (handler) => this._onExitDispatcher.on(sessionId)((e) => {
26
26
  handler(e.code);
27
27
  }),
28
28
  sendData: (message) => {
@@ -85,7 +85,7 @@ let NodePtyTerminalService = NodePtyTerminalService_1 = class NodePtyTerminalSer
85
85
  * @param message
86
86
  */
87
87
  onMessage(sessionId, message) {
88
- this._onDataDispatcher.emit(sessionId, message);
88
+ this._onDataDispatcher.dispatch(sessionId, message);
89
89
  }
90
90
  closeClient(sessionId, data, signal) {
91
91
  this.logger.log(`${sessionId} was closed, error:`, data);
@@ -94,12 +94,12 @@ let NodePtyTerminalService = NodePtyTerminalService_1 = class NodePtyTerminalSer
94
94
  }
95
95
  else if (typeof data === 'number') {
96
96
  // 说明是 pty 报出来的正常退出
97
- this._onExitDispatcher.emit(sessionId, { code: data, signal });
97
+ this._onExitDispatcher.dispatch(sessionId, { code: data, signal });
98
98
  this._onExit.fire({ sessionId, code: data, signal });
99
99
  }
100
100
  else if (data) {
101
101
  // 说明是 pty 报出来的正常退出
102
- this._onExitDispatcher.emit(sessionId, { code: data.code, signal: data.signal });
102
+ this._onExitDispatcher.dispatch(sessionId, { code: data.code, signal: data.signal });
103
103
  this._onExit.fire({ sessionId, code: data.code, signal: data.signal });
104
104
  }
105
105
  }
@@ -131,10 +131,6 @@ let NodePtyTerminalService = NodePtyTerminalService_1 = class NodePtyTerminalSer
131
131
  async getDefaultSystemShell() {
132
132
  return await this.serviceClientRPC.getDefaultSystemShell(await this.getOS());
133
133
  }
134
- dispose() {
135
- this._onDataDispatcher.dispose();
136
- this._onExitDispatcher.dispose();
137
- }
138
134
  };
139
135
  NodePtyTerminalService.countId = 1;
140
136
  tslib_1.__decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"terminal.service.js","sourceRoot":"","sources":["../../src/browser/terminal.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminal.service.js","sourceRoot":"","sources":["../../src/browser/terminal.service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opensumi/ide-terminal-next",
3
- "version": "2.27.3-rc-1712113547.0",
3
+ "version": "2.27.3-rc-1712755288.0",
4
4
  "files": [
5
5
  "lib",
6
6
  "src"
@@ -17,11 +17,10 @@
17
17
  "url": "git@github.com:opensumi/core.git"
18
18
  },
19
19
  "dependencies": {
20
- "@opensumi/ide-connection": "2.27.3-rc-1712113547.0",
21
- "@opensumi/ide-core-common": "2.27.3-rc-1712113547.0",
22
- "@opensumi/ide-core-node": "2.27.3-rc-1712113547.0",
23
- "@opensumi/ide-file-service": "2.27.3-rc-1712113547.0",
24
- "event-kit": "^2.5.3",
20
+ "@opensumi/ide-connection": "2.27.3-rc-1712755288.0",
21
+ "@opensumi/ide-core-common": "2.27.3-rc-1712755288.0",
22
+ "@opensumi/ide-core-node": "2.27.3-rc-1712755288.0",
23
+ "@opensumi/ide-file-service": "2.27.3-rc-1712755288.0",
25
24
  "node-pty": "1.0.0",
26
25
  "os-locale": "^4.0.0",
27
26
  "xterm": "5.2.0",
@@ -31,19 +30,18 @@
31
30
  "xterm-addon-webgl": "0.15.0"
32
31
  },
33
32
  "devDependencies": {
34
- "@opensumi/ide-components": "2.27.3-rc-1712113547.0",
35
- "@opensumi/ide-core-browser": "2.27.3-rc-1712113547.0",
36
- "@opensumi/ide-dev-tool": "2.27.3-rc-1712113547.0",
37
- "@opensumi/ide-editor": "2.27.3-rc-1712113547.0",
38
- "@opensumi/ide-main-layout": "2.27.3-rc-1712113547.0",
39
- "@opensumi/ide-overlay": "2.27.3-rc-1712113547.0",
40
- "@opensumi/ide-status-bar": "2.27.3-rc-1712113547.0",
41
- "@opensumi/ide-theme": "2.27.3-rc-1712113547.0",
42
- "@opensumi/ide-variable": "2.27.3-rc-1712113547.0",
43
- "@opensumi/ide-workspace": "2.27.3-rc-1712113547.0",
44
- "@types/event-kit": "^2.4.0",
33
+ "@opensumi/ide-components": "2.27.3-rc-1712755288.0",
34
+ "@opensumi/ide-core-browser": "2.27.3-rc-1712755288.0",
35
+ "@opensumi/ide-dev-tool": "2.27.3-rc-1712755288.0",
36
+ "@opensumi/ide-editor": "2.27.3-rc-1712755288.0",
37
+ "@opensumi/ide-main-layout": "2.27.3-rc-1712755288.0",
38
+ "@opensumi/ide-overlay": "2.27.3-rc-1712755288.0",
39
+ "@opensumi/ide-status-bar": "2.27.3-rc-1712755288.0",
40
+ "@opensumi/ide-theme": "2.27.3-rc-1712755288.0",
41
+ "@opensumi/ide-variable": "2.27.3-rc-1712755288.0",
42
+ "@opensumi/ide-workspace": "2.27.3-rc-1712755288.0",
45
43
  "@types/http-proxy": "^1.17.2",
46
44
  "http-proxy": "^1.18.0"
47
45
  },
48
- "gitHead": "de9ce0f3eccc61057e336fd972dd1eff470e9def"
46
+ "gitHead": "35d70628418e2fc41df91d8d39225d00b2711f77"
49
47
  }
@@ -1,8 +1,6 @@
1
- import { Emitter as Dispatcher } from 'event-kit';
2
-
3
1
  import { Autowired, INJECTOR_TOKEN, Injectable, Injector } from '@opensumi/di';
4
2
  import { OperatingSystem, PreferenceService } from '@opensumi/ide-core-browser';
5
- import { Emitter, Event, IApplicationService, ILogger } from '@opensumi/ide-core-common';
3
+ import { Dispatcher, Disposable, Emitter, Event, IApplicationService, ILogger } from '@opensumi/ide-core-common';
6
4
 
7
5
  import {
8
6
  IDetectProfileOptionsPreference,
@@ -28,7 +26,7 @@ export interface EventMessage {
28
26
  data: string;
29
27
  }
30
28
  @Injectable()
31
- export class NodePtyTerminalService implements ITerminalService {
29
+ export class NodePtyTerminalService extends Disposable implements ITerminalService {
32
30
  static countId = 1;
33
31
 
34
32
  private backendOs: OperatingSystem | undefined;
@@ -48,25 +46,22 @@ export class NodePtyTerminalService implements ITerminalService {
48
46
  @Autowired(IApplicationService)
49
47
  protected readonly applicationService: IApplicationService;
50
48
 
51
- private _onError = new Emitter<ITerminalError>();
49
+ private _onError = this.registerDispose(new Emitter<ITerminalError>());
52
50
  public onError: Event<ITerminalError> = this._onError.event;
53
51
 
54
- private _onExit = new Emitter<IPtyExitEvent>();
52
+ private _onExit = this.registerDispose(new Emitter<IPtyExitEvent>());
55
53
  public onExit: Event<IPtyExitEvent> = this._onExit.event;
56
54
 
57
- private _onProcessChange = new Emitter<IPtyProcessChangeEvent>();
55
+ private _onProcessChange = this.registerDispose(new Emitter<IPtyProcessChangeEvent>());
58
56
  public onProcessChange = this._onProcessChange.event;
59
57
 
60
- private _onDataDispatcher = new Dispatcher<void, { [key: string]: string }>();
61
- private _onExitDispatcher = new Dispatcher<
62
- void,
63
- {
64
- [key: string]: {
65
- code?: number;
66
- signal?: number;
67
- };
68
- }
69
- >();
58
+ private _onDataDispatcher = this.registerDispose(new Dispatcher<string>());
59
+ private _onExitDispatcher = this.registerDispose(
60
+ new Dispatcher<{
61
+ code?: number;
62
+ signal?: number;
63
+ }>(),
64
+ );
70
65
 
71
66
  generateSessionId() {
72
67
  return this.applicationService.clientId + TERMINAL_ID_SEPARATOR + generateSessionId();
@@ -80,9 +75,9 @@ export class NodePtyTerminalService implements ITerminalService {
80
75
  private _createCustomWebSocket = (sessionId: string, pty: INodePtyInstance): ITerminalConnection => ({
81
76
  name: pty.name,
82
77
  readonly: false,
83
- onData: (handler: (value: string | ArrayBuffer) => void) => this._onDataDispatcher.on(sessionId, handler),
78
+ onData: (handler: (value: string | ArrayBuffer) => void) => this._onDataDispatcher.on(sessionId)(handler),
84
79
  onExit: (handler: (exitCode: number | undefined) => void) =>
85
- this._onExitDispatcher.on(sessionId, (e) => {
80
+ this._onExitDispatcher.on(sessionId)((e) => {
86
81
  handler(e.code);
87
82
  }),
88
83
  sendData: (message: string) => {
@@ -160,7 +155,7 @@ export class NodePtyTerminalService implements ITerminalService {
160
155
  * @param message
161
156
  */
162
157
  onMessage(sessionId: string, message: string) {
163
- this._onDataDispatcher.emit(sessionId, message);
158
+ this._onDataDispatcher.dispatch(sessionId, message);
164
159
  }
165
160
 
166
161
  /**
@@ -177,11 +172,11 @@ export class NodePtyTerminalService implements ITerminalService {
177
172
  this._onError.fire(data);
178
173
  } else if (typeof data === 'number') {
179
174
  // 说明是 pty 报出来的正常退出
180
- this._onExitDispatcher.emit(sessionId, { code: data, signal });
175
+ this._onExitDispatcher.dispatch(sessionId, { code: data, signal });
181
176
  this._onExit.fire({ sessionId, code: data, signal });
182
177
  } else if (data) {
183
178
  // 说明是 pty 报出来的正常退出
184
- this._onExitDispatcher.emit(sessionId, { code: data.code, signal: data.signal });
179
+ this._onExitDispatcher.dispatch(sessionId, { code: data.code, signal: data.signal });
185
180
  this._onExit.fire({ sessionId, code: data.code, signal: data.signal });
186
181
  }
187
182
  }
@@ -221,9 +216,4 @@ export class NodePtyTerminalService implements ITerminalService {
221
216
  async getDefaultSystemShell(): Promise<string> {
222
217
  return await this.serviceClientRPC.getDefaultSystemShell(await this.getOS());
223
218
  }
224
-
225
- dispose() {
226
- this._onDataDispatcher.dispose();
227
- this._onExitDispatcher.dispose();
228
- }
229
219
  }