@mpis/client 0.0.20 → 0.0.22

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.
@@ -3,7 +3,14 @@ import { type IMyLogger } from '@idlebox/logger';
3
3
  import { type IMessageObject } from '@mpis/shared';
4
4
  export type IUserMessageObject = Omit<IMessageObject, '__brand__' | 'title' | 'pid'>;
5
5
  export declare const messageBrand: any;
6
- export declare abstract class AbstractChannelClient extends EnhancedAsyncDisposable {
6
+ export interface IChannelClient {
7
+ success(message: string, output?: string): Promise<void>;
8
+ failed(message: string, output: string): Promise<void>;
9
+ start(): Promise<void>;
10
+ friendlyTitle: string;
11
+ readonly logger: IMyLogger;
12
+ }
13
+ export declare abstract class AbstractChannelClient extends EnhancedAsyncDisposable implements IChannelClient {
7
14
  private cstate;
8
15
  protected connecting?: Promise<any>;
9
16
  private queuedMessage?;
@@ -1 +1 @@
1
- {"version":3,"file":"abs.d.ts","sourceRoot":"","sources":["../../src/channel-client/abs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAgB,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAc,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AAI/D,MAAM,MAAM,kBAAkB,GAAG,IAAI,CAAC,cAAc,EAAE,WAAW,GAAG,OAAO,GAAG,KAAK,CAAC,CAAC;AAErF,eAAO,MAAM,YAAY,EAAa,GAAG,CAAC;AAuB1C,8BAAsB,qBAAsB,SAAQ,uBAAuB;IAC1E,OAAO,CAAC,MAAM,CAAgC;IAC9C,SAAS,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;IACpC,OAAO,CAAC,aAAa,CAAC,CAAqB;IAC5B,MAAM,EAAE,SAAS,CAAC;IAEjC,SAAS,CAAC,QAAQ,CAAC,UAAU,iBAAwB;IACrD,SAAgB,SAAS,iDAA4B;;IAWrD,QAAgB,MAAM,CAAS;IAC/B,IAAI,aAAa,IAGQ,MAAM,CAD9B;IACD,IAAI,aAAa,CAAC,KAAK,EAAE,MAAM,EAI9B;IAED,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM;IAOxC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAOtC,KAAK;YAOS,IAAI;IAwBlB,gBAAgB;IACH,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAwBrC,OAAO,CAAC,KAAK;cAMG,UAAU;IAS1B,SAAS,CAAC,QAAQ,CAAC,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAC/C,SAAS,CAAC,QAAQ,CAAC,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAC5C,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;CACvE;AAED,qBAAa,UAAW,SAAQ,qBAAqB;;cAM3B,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;cAC5B,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;cAC/B,KAAK,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI;CAGvD"}
1
+ {"version":3,"file":"abs.d.ts","sourceRoot":"","sources":["../../src/channel-client/abs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAgB,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAc,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AAI/D,MAAM,MAAM,kBAAkB,GAAG,IAAI,CAAC,cAAc,EAAE,WAAW,GAAG,OAAO,GAAG,KAAK,CAAC,CAAC;AAErF,eAAO,MAAM,YAAY,EAAa,GAAG,CAAC;AAuB1C,MAAM,WAAW,cAAc;IAC9B,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzD,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;CAC3B;AAED,8BAAsB,qBAAsB,SAAQ,uBAAwB,YAAW,cAAc;IACpG,OAAO,CAAC,MAAM,CAAgC;IAC9C,SAAS,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;IACpC,OAAO,CAAC,aAAa,CAAC,CAAqB;IAC5B,MAAM,EAAE,SAAS,CAAC;IAEjC,SAAS,CAAC,QAAQ,CAAC,UAAU,iBAAwB;IACrD,SAAgB,SAAS,iDAA4B;;IAWrD,QAAgB,MAAM,CAAS;IAC/B,IAAI,aAAa,IAGQ,MAAM,CAD9B;IACD,IAAI,aAAa,CAAC,KAAK,EAAE,MAAM,EAI9B;IAED,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM;IAOxC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAOtC,KAAK;YAOS,IAAI;IAwBlB,gBAAgB;IACH,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAwBrC,OAAO,CAAC,KAAK;cAMG,UAAU;IAS1B,SAAS,CAAC,QAAQ,CAAC,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAC/C,SAAS,CAAC,QAAQ,CAAC,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAC5C,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;CACvE;AAED,qBAAa,UAAW,SAAQ,qBAAqB;;cAM3B,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;cAC5B,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;cAC/B,KAAK,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI;CAGvD"}
@@ -134,12 +134,12 @@ export class AbstractChannelClient extends EnhancedAsyncDisposable {
134
134
  export class VoidClient extends AbstractChannelClient {
135
135
  constructor() {
136
136
  super();
137
- this.logger.debug;
137
+ this.logger.verbose `VoidClient created, all messages will be logged but not sent.`;
138
138
  }
139
139
  async _disconnect() { }
140
140
  async _connect() { }
141
141
  _send(message) {
142
- this.logger.warn `VoidClient: sending: \x1B[1;38;5;11m${message.event}\x1B[39m message=[${message.message}] output=stripe<${message.output ?? ''}>`;
142
+ this.logger.warn `VoidClient: sending: \x1B[1;38;5;11m${message.event}\x1B[39m message=[${message.message}] output=${message.output?.length ?? 0} chars.`;
143
143
  }
144
144
  }
145
145
  //# sourceMappingURL=abs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"abs.js","sourceRoot":"","sources":["../../src/channel-client/abs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"abs.js","sourceRoot":"","sources":["../../src/channel-client/abs.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- import { type AbstractChannelClient } from '../channel-client/abs.js';
2
- export declare let channelClient: AbstractChannelClient;
1
+ import { type IChannelClient } from '../channel-client/abs.js';
2
+ export declare let channelClient: IChannelClient;
3
3
  //# sourceMappingURL=message-channel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"message-channel.d.ts","sourceRoot":"","sources":["../../src/common/message-channel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAMlF,eAAO,IAAI,aAAa,EAAE,qBAAqB,CAAC"}
1
+ {"version":3,"file":"message-channel.d.ts","sourceRoot":"","sources":["../../src/common/message-channel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAuB3E,eAAO,IAAI,aAAa,EAAE,cAA0B,CAAC"}
@@ -1,21 +1,50 @@
1
1
  import { VoidClient } from '../channel-client/abs.js';
2
2
  import { HttpClient } from '../channel-client/http.js';
3
3
  import { NodejsIpcClient } from '../channel-client/nodejs.js';
4
- const server = process.env.BUILD_PROTOCOL_SERVER;
5
- export let channelClient;
6
- if (!server) {
7
- channelClient = new VoidClient();
8
- if (!process.stderr.isTTY) {
9
- channelClient.logger.error('BUILD_PROTOCOL_SERVER environment variable is not set, sending messages to void.');
4
+ function creation() {
5
+ let channelClient;
6
+ const server = process.env.BUILD_PROTOCOL_SERVER;
7
+ if (!server) {
8
+ channelClient = new VoidClient();
9
+ if (!process.stderr.isTTY) {
10
+ channelClient.logger.warn `BUILD_PROTOCOL_SERVER environment variable is not set, sending messages to void.`;
11
+ }
10
12
  }
13
+ else if (server === 'ipc:nodejs') {
14
+ channelClient = new NodejsIpcClient();
15
+ }
16
+ else if (server.startsWith('http://')) {
17
+ channelClient = new HttpClient(server);
18
+ }
19
+ else {
20
+ throw new TypeError(`Unknown BUILD_PROTOCOL_SERVER: ${server}`);
21
+ }
22
+ return channelClient;
11
23
  }
12
- else if (server === 'ipc:nodejs') {
13
- channelClient = new NodejsIpcClient();
14
- }
15
- else if (server.startsWith('http://')) {
16
- channelClient = new HttpClient(server);
17
- }
18
- else {
19
- throw new TypeError(`Unknown BUILD_PROTOCOL_SERVER: ${server}`);
24
+ // 创建一个代理对象,在第一次调用接口方法时创建真正的client实例,并替换代理方法
25
+ export let channelClient = {};
26
+ let interfaceKeys = ['success', 'failed', 'start'];
27
+ for (const key of interfaceKeys) {
28
+ Object.defineProperty(channelClient, key, {
29
+ get() {
30
+ const newObject = creation();
31
+ for (const key of interfaceKeys) {
32
+ newObject[key] = newObject[key].bind(newObject);
33
+ // 防止有人保存 channelClient 的引用
34
+ delete channelClient[key];
35
+ Object.defineProperty(channelClient, key, {
36
+ value: newObject[key],
37
+ enumerable: true,
38
+ configurable: false,
39
+ writable: false,
40
+ });
41
+ }
42
+ interfaceKeys = undefined;
43
+ channelClient = newObject;
44
+ return newObject[key];
45
+ },
46
+ configurable: true,
47
+ enumerable: true,
48
+ });
20
49
  }
21
50
  //# sourceMappingURL=message-channel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"message-channel.js","sourceRoot":"","sources":["../../src/common/message-channel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAA8B,MAAM,0BAA0B,CAAC;AAClF,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAE9D,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;AAEjD,MAAM,CAAC,IAAI,aAAoC,CAAC;AAChD,IAAI,CAAC,MAAM,EAAE,CAAC;IACb,aAAa,GAAG,IAAI,UAAU,EAAE,CAAC;IACjC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAC3B,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,kFAAkF,CAAC,CAAC;IAChH,CAAC;AACF,CAAC;KAAM,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;IACpC,aAAa,GAAG,IAAI,eAAe,EAAE,CAAC;AACvC,CAAC;KAAM,IAAI,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;IACzC,aAAa,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;AACxC,CAAC;KAAM,CAAC;IACP,MAAM,IAAI,SAAS,CAAC,kCAAkC,MAAM,EAAE,CAAC,CAAC;AACjE,CAAC"}
1
+ {"version":3,"file":"message-channel.js","sourceRoot":"","sources":["../../src/common/message-channel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAuB,MAAM,0BAA0B,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAE9D,SAAS,QAAQ;IAChB,IAAI,aAAa,CAAC;IAClB,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;IACjD,IAAI,CAAC,MAAM,EAAE,CAAC;QACb,aAAa,GAAG,IAAI,UAAU,EAAE,CAAC;QACjC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YAC3B,aAAa,CAAC,MAAM,CAAC,IAAI,CAAA,kFAAkF,CAAC;QAC7G,CAAC;IACF,CAAC;SAAM,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;QACpC,aAAa,GAAG,IAAI,eAAe,EAAE,CAAC;IACvC,CAAC;SAAM,IAAI,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QACzC,aAAa,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC;SAAM,CAAC;QACP,MAAM,IAAI,SAAS,CAAC,kCAAkC,MAAM,EAAE,CAAC,CAAC;IACjE,CAAC;IACD,OAAO,aAAa,CAAC;AACtB,CAAC;AAED,4CAA4C;AAC5C,MAAM,CAAC,IAAI,aAAa,GAAmB,EAAS,CAAC;AAErD,IAAI,aAAa,GAAG,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAU,CAAC;AAC5D,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;IACjC,MAAM,CAAC,cAAc,CAAC,aAAa,EAAE,GAAG,EAAE;QACzC,GAAG;YACF,MAAM,SAAS,GAAG,QAAQ,EAAE,CAAC;YAE7B,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;gBACjC,SAAS,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS,CAAQ,CAAC;gBAEvD,2BAA2B;gBAC3B,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC;gBAC1B,MAAM,CAAC,cAAc,CAAC,aAAa,EAAE,GAAG,EAAE;oBACzC,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC;oBACrB,UAAU,EAAE,IAAI;oBAChB,YAAY,EAAE,KAAK;oBACnB,QAAQ,EAAE,KAAK;iBACf,CAAC,CAAC;YACJ,CAAC;YAED,aAAa,GAAG,SAAgB,CAAC;YAEjC,aAAa,GAAG,SAAS,CAAC;YAE1B,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC;QACvB,CAAC;QACD,YAAY,EAAE,IAAI;QAClB,UAAU,EAAE,IAAI;KAChB,CAAC,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"stdout.d.ts","sourceRoot":"","sources":["../../src/handlers/stdout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAa,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAK5E,UAAU,QAAQ;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1D;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,cAAc,EAAE,OAAO,EAAE,QAAQ,QA6D9E;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,CAAC,cAAc,EAAE,eAgBtE;AAED,UAAU,YAAY;IACrB,SAAS,CAAC,CAAC,GAAG,EAAE,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAC,eAAe,GAAG,SAAS,CAAC;IACzE,SAAS,CAAC,EAAE,gBAAgB,CAAC,WAAW,CAAC,CAAC;CAC1C;AAED,wBAAgB,wBAAwB,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,YAAY,QAiC9E"}
1
+ {"version":3,"file":"stdout.d.ts","sourceRoot":"","sources":["../../src/handlers/stdout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAa,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAK5E,UAAU,QAAQ;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1D;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,cAAc,EAAE,OAAO,EAAE,QAAQ,QA8D9E;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,CAAC,cAAc,EAAE,eAgBtE;AAED,UAAU,YAAY;IACrB,SAAS,CAAC,CAAC,GAAG,EAAE,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAC,eAAe,GAAG,SAAS,CAAC;IACzE,SAAS,CAAC,EAAE,gBAAgB,CAAC,WAAW,CAAC,CAAC;CAC1C;AAED,wBAAgB,wBAAwB,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,YAAY,QAiC9E"}
@@ -51,6 +51,7 @@ export function listenOnStream(stream, options) {
51
51
  emit_start();
52
52
  }
53
53
  else {
54
+ // 没有开始signal - 只要有输出就说明开始
54
55
  started = true;
55
56
  emit_start();
56
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"stdout.js","sourceRoot":"","sources":["../../src/handlers/stdout.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stdout.js","sourceRoot":"","sources":["../../src/handlers/stdout.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@mpis/client",
3
3
  "type": "module",
4
- "version": "0.0.20",
4
+ "version": "0.0.22",
5
5
  "keywords": [],
6
6
  "exports": {
7
7
  ".": {
@@ -16,17 +16,17 @@
16
16
  "dependencies": {
17
17
  "execa": "^9.6.1",
18
18
  "split2": "^4.2.0",
19
- "@idlebox/args": "^0.0.26",
20
- "@idlebox/common": "^1.5.17",
19
+ "@idlebox/common": "^1.5.21",
20
+ "@idlebox/logger": "^0.0.23",
21
+ "@idlebox/source-map-support": "^0.0.20",
21
22
  "@mpis/shared": "^0.0.13",
22
- "@idlebox/logger": "^0.0.21",
23
- "@idlebox/source-map-support": "^0.0.19"
23
+ "@idlebox/args": "^0.0.26"
24
24
  },
25
25
  "devDependencies": {
26
26
  "@types/node": "^25.5.0",
27
- "@idlebox/esbuild-executer": "^0.0.15",
27
+ "@idlebox/esbuild-executer": "^0.0.18",
28
28
  "@build-script/baseline-rig": "latest",
29
- "@mpis/run": "^0.0.22"
29
+ "@mpis/run": "^0.0.25"
30
30
  },
31
31
  "sideEffects": false,
32
32
  "license": "MIT",
@@ -29,7 +29,16 @@ function getDefaultTitle(): string {
29
29
  return 'unknown';
30
30
  }
31
31
 
32
- export abstract class AbstractChannelClient extends EnhancedAsyncDisposable {
32
+ export interface IChannelClient {
33
+ success(message: string, output?: string): Promise<void>;
34
+ failed(message: string, output: string): Promise<void>;
35
+ start(): Promise<void>;
36
+
37
+ friendlyTitle: string;
38
+ readonly logger: IMyLogger;
39
+ }
40
+
41
+ export abstract class AbstractChannelClient extends EnhancedAsyncDisposable implements IChannelClient {
33
42
  private cstate = ConnectionState.Disconnected;
34
43
  protected connecting?: Promise<any>;
35
44
  private queuedMessage?: IUserMessageObject;
@@ -150,12 +159,12 @@ export abstract class AbstractChannelClient extends EnhancedAsyncDisposable {
150
159
  export class VoidClient extends AbstractChannelClient {
151
160
  constructor() {
152
161
  super();
153
- this.logger.debug;
162
+ this.logger.verbose`VoidClient created, all messages will be logged but not sent.`;
154
163
  }
155
164
 
156
165
  protected override async _disconnect(): Promise<void> {}
157
166
  protected override async _connect(): Promise<void> {}
158
167
  protected override _send(message: IMessageObject): void {
159
- this.logger.warn`VoidClient: sending: \x1B[1;38;5;11m${message.event}\x1B[39m message=[${message.message}] output=stripe<${message.output ?? ''}>`;
168
+ this.logger.warn`VoidClient: sending: \x1B[1;38;5;11m${message.event}\x1B[39m message=[${message.message}] output=${message.output?.length ?? 0} chars.`;
160
169
  }
161
170
  }
@@ -1,19 +1,54 @@
1
- import { VoidClient, type AbstractChannelClient } from '../channel-client/abs.js';
1
+ import { VoidClient, type IChannelClient } from '../channel-client/abs.js';
2
2
  import { HttpClient } from '../channel-client/http.js';
3
3
  import { NodejsIpcClient } from '../channel-client/nodejs.js';
4
4
 
5
- const server = process.env.BUILD_PROTOCOL_SERVER;
6
-
7
- export let channelClient: AbstractChannelClient;
8
- if (!server) {
9
- channelClient = new VoidClient();
10
- if (!process.stderr.isTTY) {
11
- channelClient.logger.error('BUILD_PROTOCOL_SERVER environment variable is not set, sending messages to void.');
5
+ function creation() {
6
+ let channelClient;
7
+ const server = process.env.BUILD_PROTOCOL_SERVER;
8
+ if (!server) {
9
+ channelClient = new VoidClient();
10
+ if (!process.stderr.isTTY) {
11
+ channelClient.logger.warn`BUILD_PROTOCOL_SERVER environment variable is not set, sending messages to void.`;
12
+ }
13
+ } else if (server === 'ipc:nodejs') {
14
+ channelClient = new NodejsIpcClient();
15
+ } else if (server.startsWith('http://')) {
16
+ channelClient = new HttpClient(server);
17
+ } else {
18
+ throw new TypeError(`Unknown BUILD_PROTOCOL_SERVER: ${server}`);
12
19
  }
13
- } else if (server === 'ipc:nodejs') {
14
- channelClient = new NodejsIpcClient();
15
- } else if (server.startsWith('http://')) {
16
- channelClient = new HttpClient(server);
17
- } else {
18
- throw new TypeError(`Unknown BUILD_PROTOCOL_SERVER: ${server}`);
20
+ return channelClient;
21
+ }
22
+
23
+ // 创建一个代理对象,在第一次调用接口方法时创建真正的client实例,并替换代理方法
24
+ export let channelClient: IChannelClient = {} as any;
25
+
26
+ let interfaceKeys = ['success', 'failed', 'start'] as const;
27
+ for (const key of interfaceKeys) {
28
+ Object.defineProperty(channelClient, key, {
29
+ get() {
30
+ const newObject = creation();
31
+
32
+ for (const key of interfaceKeys) {
33
+ newObject[key] = newObject[key].bind(newObject) as any;
34
+
35
+ // 防止有人保存 channelClient 的引用
36
+ delete channelClient[key];
37
+ Object.defineProperty(channelClient, key, {
38
+ value: newObject[key],
39
+ enumerable: true,
40
+ configurable: false,
41
+ writable: false,
42
+ });
43
+ }
44
+
45
+ interfaceKeys = undefined as any;
46
+
47
+ channelClient = newObject;
48
+
49
+ return newObject[key];
50
+ },
51
+ configurable: true,
52
+ enumerable: true,
53
+ });
19
54
  }
@@ -62,6 +62,7 @@ export function listenOnStream(stream: NodeJS.ReadableStream, options: IOptions)
62
62
  if (!started) return;
63
63
  emit_start();
64
64
  } else {
65
+ // 没有开始signal - 只要有输出就说明开始
65
66
  started = true;
66
67
  emit_start();
67
68
  }