@opensumi/ide-connection 2.27.3-rc-1713838390.0 → 2.27.3-rc-1714116491.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.
Files changed (49) hide show
  1. package/lib/common/capturer.d.ts +21 -1
  2. package/lib/common/capturer.d.ts.map +1 -1
  3. package/lib/common/capturer.js +130 -4
  4. package/lib/common/capturer.js.map +1 -1
  5. package/lib/common/index.d.ts +0 -1
  6. package/lib/common/index.d.ts.map +1 -1
  7. package/lib/common/index.js +0 -1
  8. package/lib/common/index.js.map +1 -1
  9. package/lib/common/rpc/connection.d.ts +8 -2
  10. package/lib/common/rpc/connection.d.ts.map +1 -1
  11. package/lib/common/rpc/connection.js +17 -6
  12. package/lib/common/rpc/connection.js.map +1 -1
  13. package/lib/common/rpc/multiplexer.d.ts +9 -6
  14. package/lib/common/rpc/multiplexer.d.ts.map +1 -1
  15. package/lib/common/rpc/multiplexer.js +23 -23
  16. package/lib/common/rpc/multiplexer.js.map +1 -1
  17. package/lib/common/rpc-service/center.d.ts +1 -1
  18. package/lib/common/rpc-service/center.d.ts.map +1 -1
  19. package/lib/common/rpc-service/center.js.map +1 -1
  20. package/lib/common/rpc-service/proxy/base.d.ts +2 -11
  21. package/lib/common/rpc-service/proxy/base.d.ts.map +1 -1
  22. package/lib/common/rpc-service/proxy/base.js +3 -82
  23. package/lib/common/rpc-service/proxy/base.js.map +1 -1
  24. package/lib/common/rpc-service/proxy/json.d.ts +3 -1
  25. package/lib/common/rpc-service/proxy/json.d.ts.map +1 -1
  26. package/lib/common/rpc-service/proxy/json.js +12 -10
  27. package/lib/common/rpc-service/proxy/json.js.map +1 -1
  28. package/lib/common/rpc-service/proxy/sumi.d.ts.map +1 -1
  29. package/lib/common/rpc-service/proxy/sumi.js +3 -31
  30. package/lib/common/rpc-service/proxy/sumi.js.map +1 -1
  31. package/lib/common/rpc-service/registry.d.ts +1 -1
  32. package/lib/common/rpc-service/registry.d.ts.map +1 -1
  33. package/lib/common/rpc-service/registry.js +16 -15
  34. package/lib/common/rpc-service/registry.js.map +1 -1
  35. package/lib/common/ws-channel.d.ts +0 -1
  36. package/lib/common/ws-channel.d.ts.map +1 -1
  37. package/lib/common/ws-channel.js +0 -4
  38. package/lib/common/ws-channel.js.map +1 -1
  39. package/package.json +5 -5
  40. package/src/common/capturer.ts +169 -3
  41. package/src/common/index.ts +0 -1
  42. package/src/common/rpc/connection.ts +34 -7
  43. package/src/common/rpc/multiplexer.ts +31 -26
  44. package/src/common/rpc-service/center.ts +2 -1
  45. package/src/common/rpc-service/proxy/base.ts +5 -101
  46. package/src/common/rpc-service/proxy/json.ts +14 -12
  47. package/src/common/rpc-service/proxy/sumi.ts +3 -30
  48. package/src/common/rpc-service/registry.ts +20 -15
  49. package/src/common/ws-channel.ts +0 -4
@@ -1,3 +1,4 @@
1
+ import { DisposableStore, IDisposable } from '@opensumi/ide-core-common';
1
2
  declare global {
2
3
  interface Window {
3
4
  __OPENSUMI_DEVTOOLS_GLOBAL_HOOK__: any;
@@ -19,10 +20,29 @@ export interface ICapturedMessage {
19
20
  type: MessageType;
20
21
  serviceMethod: string;
21
22
  arguments?: any;
22
- requestId?: string;
23
+ requestId?: string | number;
23
24
  status?: ResponseStatus;
24
25
  data?: any;
25
26
  error?: any;
27
+ source?: string;
26
28
  }
27
29
  export declare function getCapturer(): any;
30
+ export declare class Capturer implements IDisposable {
31
+ protected source: string;
32
+ protected _disposables: DisposableStore;
33
+ protected capturer: ((data: any) => void) | null;
34
+ protected prefix: string;
35
+ protected setupListener: (event: CustomEvent) => void;
36
+ constructor(source: string);
37
+ capture(message: ICapturedMessage): void;
38
+ captureOnRequest(requestId: ICapturedMessage['requestId'], serviceMethod: string, args: any[]): void;
39
+ captureOnRequestResult(requestId: ICapturedMessage['requestId'], serviceMethod: string, data: any): void;
40
+ captureOnRequestFail(requestId: ICapturedMessage['requestId'], serviceMethod: string, error: any): void;
41
+ captureSendRequest(requestId: ICapturedMessage['requestId'] | number, serviceMethod: string, args: any[]): void;
42
+ captureSendRequestResult(requestId: ICapturedMessage['requestId'], serviceMethod: string, data: any): void;
43
+ captureSendRequestFail(requestId: ICapturedMessage['requestId'], serviceMethod: string, error: any): void;
44
+ captureSendNotification(requestId: ICapturedMessage['requestId'], serviceMethod: string, args: any[]): void;
45
+ captureOnNotification(requestId: ICapturedMessage['requestId'], serviceMethod: string, args: any[]): void;
46
+ dispose(): void;
47
+ }
28
48
  //# sourceMappingURL=capturer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"capturer.d.ts","sourceRoot":"","sources":["../../src/common/capturer.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,iCAAiC,EAAE,GAAG,CAAC;KACxC;CACF;AAED,oBAAY,WAAW;IACrB,gBAAgB,qBAAqB;IACrC,WAAW,gBAAgB;IAC3B,aAAa,kBAAkB;IAC/B,cAAc,mBAAmB;IACjC,SAAS,cAAc;IACvB,eAAe,oBAAoB;CACpC;AAED,oBAAY,cAAc;IACxB,OAAO,YAAY;IACnB,IAAI,SAAS;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,WAAW,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,GAAG,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,KAAK,CAAC,EAAE,GAAG,CAAC;CACb;AAED,wBAAgB,WAAW,QAK1B"}
1
+ {"version":3,"file":"capturer.d.ts","sourceRoot":"","sources":["../../src/common/capturer.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,WAAW,EAIZ,MAAM,2BAA2B,CAAC;AAGnC,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,iCAAiC,EAAE,GAAG,CAAC;KACxC;CACF;AAED,oBAAY,WAAW;IACrB,gBAAgB,qBAAqB;IACrC,WAAW,gBAAgB;IAC3B,aAAa,kBAAkB;IAC/B,cAAc,mBAAmB;IACjC,SAAS,cAAc;IACvB,eAAe,oBAAoB;CACpC;AAED,oBAAY,cAAc;IACxB,OAAO,YAAY;IACnB,IAAI,SAAS;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,WAAW,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,GAAG,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,KAAK,CAAC,EAAE,GAAG,CAAC;IAEZ,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAMD,wBAAgB,WAAW,QAM1B;AAED,qBAAa,QAAS,YAAW,WAAW;IAe9B,SAAS,CAAC,MAAM,EAAE,MAAM;IAdpC,SAAS,CAAC,YAAY,kBAAyB;IAE/C,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC,GAAG,IAAI,CAAQ;IACxD,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IAEzB,SAAS,CAAC,aAAa,UAAW,WAAW,UAO3C;gBAEoB,MAAM,EAAE,MAAM;IAepC,OAAO,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IA2BxC,gBAAgB,CAAC,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;IAQpG,sBAAsB,CAAC,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,IAAI;IAcxG,oBAAoB,CAAC,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC,EAAE,aAAa,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI;IAcvG,kBAAkB,CAAC,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC,GAAG,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;IAQ/G,wBAAwB,CAAC,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,IAAI;IAc1G,sBAAsB,CAAC,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC,EAAE,aAAa,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI;IAczG,uBAAuB,CAAC,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;IAQ3G,qBAAqB,CAAC,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;IAQzG,OAAO,IAAI,IAAI;CAGhB"}
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getCapturer = exports.ResponseStatus = exports.MessageType = void 0;
3
+ exports.Capturer = exports.getCapturer = exports.ResponseStatus = exports.MessageType = void 0;
4
+ const ide_core_common_1 = require("@opensumi/ide-core-common");
5
+ const devtools_1 = require("@opensumi/ide-core-common/lib/devtools");
4
6
  var MessageType;
5
7
  (function (MessageType) {
6
8
  MessageType["SendNotification"] = "sendNotification";
@@ -15,12 +17,136 @@ var ResponseStatus;
15
17
  ResponseStatus["Success"] = "success";
16
18
  ResponseStatus["Fail"] = "fail";
17
19
  })(ResponseStatus = exports.ResponseStatus || (exports.ResponseStatus = {}));
20
+ const _global = (typeof window !== 'undefined' ? window : global) || {
21
+ __OPENSUMI_DEVTOOLS_GLOBAL_HOOK__: undefined,
22
+ };
18
23
  function getCapturer() {
19
- var _a;
20
- if (typeof window !== 'undefined' && ((_a = window.__OPENSUMI_DEVTOOLS_GLOBAL_HOOK__) === null || _a === void 0 ? void 0 : _a.captureRPC)) {
21
- return window.__OPENSUMI_DEVTOOLS_GLOBAL_HOOK__.captureRPC;
24
+ const hook = _global.__OPENSUMI_DEVTOOLS_GLOBAL_HOOK__;
25
+ if (hook) {
26
+ return hook.captureRPC;
22
27
  }
23
28
  return;
24
29
  }
25
30
  exports.getCapturer = getCapturer;
31
+ class Capturer {
32
+ constructor(source) {
33
+ this.source = source;
34
+ this._disposables = new ide_core_common_1.DisposableStore();
35
+ this.capturer = null;
36
+ this.setupListener = (event) => {
37
+ const { command } = event.detail;
38
+ if (command === devtools_1.DevtoolsLantencyCommand.Start) {
39
+ this.capturer = getCapturer();
40
+ }
41
+ else if (command === devtools_1.DevtoolsLantencyCommand.Stop) {
42
+ this.capturer = null;
43
+ }
44
+ };
45
+ this.prefix = (0, ide_core_common_1.randomString)(6);
46
+ this.capturer = getCapturer();
47
+ // capturer should only be used in browser environment
48
+ if (typeof _global.addEventListener === 'function') {
49
+ _global.addEventListener(devtools_1.EDevtoolsEvent.Latency, this.setupListener);
50
+ this._disposables.add({
51
+ dispose: () => {
52
+ _global.removeEventListener(devtools_1.EDevtoolsEvent.Latency, this.setupListener);
53
+ },
54
+ });
55
+ }
56
+ }
57
+ capture(message) {
58
+ if (!this.capturer) {
59
+ return;
60
+ }
61
+ const data = Object.assign(Object.assign({}, message), { source: this.source });
62
+ if (data.data) {
63
+ if ((0, ide_core_common_1.isUint8Array)(data.data)) {
64
+ data.data = '<Uint8Array>';
65
+ }
66
+ }
67
+ if (message.requestId) {
68
+ data.requestId = `${this.prefix}-${message.requestId}`;
69
+ }
70
+ if (message.error) {
71
+ data.error = (0, ide_core_common_1.transformErrorForSerialization)(message.error);
72
+ }
73
+ this.capturer(data);
74
+ }
75
+ captureOnRequest(requestId, serviceMethod, args) {
76
+ if (!this.capturer) {
77
+ return;
78
+ }
79
+ this.capture({ type: MessageType.OnRequest, requestId: `↓${requestId}`, serviceMethod, arguments: args });
80
+ }
81
+ captureOnRequestResult(requestId, serviceMethod, data) {
82
+ if (!this.capturer) {
83
+ return;
84
+ }
85
+ this.capture({
86
+ type: MessageType.OnRequestResult,
87
+ status: ResponseStatus.Success,
88
+ requestId: `↓${requestId}`,
89
+ serviceMethod,
90
+ data,
91
+ });
92
+ }
93
+ captureOnRequestFail(requestId, serviceMethod, error) {
94
+ if (!this.capturer) {
95
+ return;
96
+ }
97
+ this.capture({
98
+ type: MessageType.OnRequestResult,
99
+ status: ResponseStatus.Fail,
100
+ requestId: `↓${requestId}`,
101
+ serviceMethod,
102
+ error,
103
+ });
104
+ }
105
+ captureSendRequest(requestId, serviceMethod, args) {
106
+ if (!this.capturer) {
107
+ return;
108
+ }
109
+ this.capture({ type: MessageType.SendRequest, requestId, serviceMethod, arguments: args });
110
+ }
111
+ captureSendRequestResult(requestId, serviceMethod, data) {
112
+ if (!this.capturer) {
113
+ return;
114
+ }
115
+ this.capture({
116
+ type: MessageType.RequestResult,
117
+ status: ResponseStatus.Success,
118
+ requestId,
119
+ serviceMethod,
120
+ data,
121
+ });
122
+ }
123
+ captureSendRequestFail(requestId, serviceMethod, error) {
124
+ if (!this.capturer) {
125
+ return;
126
+ }
127
+ this.capture({
128
+ type: MessageType.RequestResult,
129
+ status: ResponseStatus.Fail,
130
+ requestId,
131
+ serviceMethod,
132
+ error,
133
+ });
134
+ }
135
+ captureSendNotification(requestId, serviceMethod, args) {
136
+ if (!this.capturer) {
137
+ return;
138
+ }
139
+ this.capture({ type: MessageType.SendNotification, serviceMethod, arguments: args, requestId });
140
+ }
141
+ captureOnNotification(requestId, serviceMethod, args) {
142
+ if (!this.capturer) {
143
+ return;
144
+ }
145
+ this.capture({ type: MessageType.OnNotification, serviceMethod, arguments: args, requestId: `↓${requestId}` });
146
+ }
147
+ dispose() {
148
+ this._disposables.dispose();
149
+ }
150
+ }
151
+ exports.Capturer = Capturer;
26
152
  //# sourceMappingURL=capturer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"capturer.js","sourceRoot":"","sources":["../../src/common/capturer.ts"],"names":[],"mappings":";;;AAMA,IAAY,WAOX;AAPD,WAAY,WAAW;IACrB,oDAAqC,CAAA;IACrC,0CAA2B,CAAA;IAC3B,8CAA+B,CAAA;IAC/B,gDAAiC,CAAA;IACjC,sCAAuB,CAAA;IACvB,kDAAmC,CAAA;AACrC,CAAC,EAPW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAOtB;AAED,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,qCAAmB,CAAA;IACnB,+BAAa,CAAA;AACf,CAAC,EAHW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAGzB;AAYD,SAAgB,WAAW;;IACzB,IAAI,OAAO,MAAM,KAAK,WAAW,KAAI,MAAA,MAAM,CAAC,iCAAiC,0CAAE,UAAU,CAAA,EAAE;QACzF,OAAO,MAAM,CAAC,iCAAiC,CAAC,UAAU,CAAC;KAC5D;IACD,OAAO;AACT,CAAC;AALD,kCAKC"}
1
+ {"version":3,"file":"capturer.js","sourceRoot":"","sources":["../../src/common/capturer.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- export * from './message';
2
1
  export * from './rpc-service/proxy';
3
2
  export * from './rpc/multiplexer';
4
3
  export * from './rpcProtocol';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC"}
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./message"), exports);
5
4
  tslib_1.__exportStar(require("./rpc-service/proxy"), exports);
6
5
  tslib_1.__exportStar(require("./rpc/multiplexer"), exports);
7
6
  tslib_1.__exportStar(require("./rpcProtocol"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":";;;AAAA,oDAA0B;AAC1B,8DAAoC;AACpC,4DAAkC;AAClC,wDAA8B;AAC9B,qDAA2B;AAC3B,uDAA6B;AAC7B,oDAA0B;AAC1B,kDAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":";;;AAAA,8DAAoC;AACpC,4DAAkC;AAClC,wDAA8B;AAC9B,qDAA2B;AAC3B,uDAA6B;AAC7B,oDAA0B;AAC1B,kDAAwB"}
@@ -1,6 +1,7 @@
1
1
  /// <reference types="node" />
2
- import { DisposableCollection, EventQueue, IDisposable } from '@opensumi/ide-utils';
2
+ import { DisposableStore, EventQueue, IDisposable } from '@opensumi/ide-utils';
3
3
  import { IReadableStream } from '@opensumi/ide-utils/lib/stream';
4
+ import { Capturer } from '../capturer';
4
5
  import { BaseConnection } from '../connection';
5
6
  import { ILogger } from '../types';
6
7
  import { MessageIO } from './message-io';
@@ -10,11 +11,15 @@ import type { WebSocket } from 'ws';
10
11
  export interface ISumiConnectionOptions {
11
12
  timeout?: number;
12
13
  logger?: ILogger;
14
+ /**
15
+ * The name of the connection, used for debugging(and can see in opensumi-devtools).
16
+ */
17
+ name?: string;
13
18
  }
14
19
  export declare class SumiConnection implements IDisposable {
15
20
  protected socket: BaseConnection<Uint8Array>;
16
21
  protected options: ISumiConnectionOptions;
17
- protected disposable: DisposableCollection;
22
+ protected disposable: DisposableStore;
18
23
  private _requestHandlers;
19
24
  private _starRequestHandler;
20
25
  private _notificationHandlers;
@@ -27,6 +32,7 @@ export declare class SumiConnection implements IDisposable {
27
32
  protected activeRequestPool: Map<number, ActiveRequest>;
28
33
  io: MessageIO;
29
34
  protected logger: ILogger;
35
+ protected capturer: Capturer;
30
36
  constructor(socket: BaseConnection<Uint8Array>, options?: ISumiConnectionOptions);
31
37
  sendNotification(method: string, ...args: any[]): void;
32
38
  sendRequest(method: string, ...args: any[]): Promise<any>;
@@ -1 +1 @@
1
- {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../../src/common/rpc/connection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../../src/common/rpc/connection.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ exports.SumiConnection = void 0;
4
4
  const ide_core_common_1 = require("@opensumi/ide-core-common");
5
5
  const ide_utils_1 = require("@opensumi/ide-utils");
6
6
  const stream_1 = require("@opensumi/ide-utils/lib/stream");
7
+ const capturer_1 = require("../capturer");
7
8
  const connection_1 = require("../connection");
8
9
  const constants_1 = require("../constants");
9
10
  const errors_1 = require("./errors");
@@ -13,7 +14,7 @@ class SumiConnection {
13
14
  constructor(socket, options = {}) {
14
15
  this.socket = socket;
15
16
  this.options = options;
16
- this.disposable = new ide_utils_1.DisposableCollection();
17
+ this.disposable = new ide_utils_1.DisposableStore();
17
18
  this._requestHandlers = new Map();
18
19
  this._notificationHandlers = new Map();
19
20
  this._requestId = 0;
@@ -29,25 +30,30 @@ class SumiConnection {
29
30
  else {
30
31
  this.logger = (0, ide_core_common_1.getDebugLogger)();
31
32
  }
33
+ this.capturer = new capturer_1.Capturer(options.name || 'sumi');
34
+ this.disposable.add(this.capturer);
32
35
  }
33
36
  sendNotification(method, ...args) {
34
- this.socket.send(this.io.Notification(this._requestId++, method, nullHeaders, args));
37
+ const requestId = this._requestId++;
38
+ this.capturer.captureSendNotification(requestId, method, args);
39
+ this.socket.send(this.io.Notification(requestId, method, nullHeaders, args));
35
40
  }
36
41
  sendRequest(method, ...args) {
37
42
  return new Promise((resolve, reject) => {
38
43
  const requestId = this._requestId++;
39
44
  this._callbacks.set(requestId, (headers, error, result) => {
40
45
  if (error) {
46
+ this.traceRequestError(requestId, method, args, error);
41
47
  if (error === constants_1.METHOD_NOT_REGISTERED) {
42
48
  // we should not treat `METHOD_NOT_REGISTERED` as an error.
43
49
  // it is a special case, it means the method is not registered on the other side.
44
50
  resolve(error);
45
51
  return;
46
52
  }
47
- this.traceRequestError(method, args, error);
48
53
  reject(error);
49
54
  return;
50
55
  }
56
+ this.capturer.captureSendRequestResult(requestId, method, result);
51
57
  resolve(result);
52
58
  });
53
59
  // Set timeout callback, -1 means no timeout configuration is set.
@@ -64,6 +70,7 @@ class SumiConnection {
64
70
  if (cancellationToken) {
65
71
  cancellationToken.onCancellationRequested(() => this.cancelRequest(requestId));
66
72
  }
73
+ this.capturer.captureSendRequest(requestId, method, args);
67
74
  this.socket.send(this.io.Request(requestId, method, {
68
75
  cancelable: Boolean(cancellationToken) || undefined,
69
76
  }, args));
@@ -196,6 +203,7 @@ class SumiConnection {
196
203
  }
197
204
  switch (opType) {
198
205
  case message_io_1.OperationType.Request: {
206
+ this.capturer.captureOnRequest(requestId, method, args);
199
207
  let promise;
200
208
  try {
201
209
  let result;
@@ -212,6 +220,7 @@ class SumiConnection {
212
220
  promise = Promise.reject(err);
213
221
  }
214
222
  const onSuccess = (result) => {
223
+ this.capturer.captureOnRequestResult(requestId, method, result);
215
224
  if ((0, stream_1.isReadableStream)(result)) {
216
225
  const responseHeaders = {
217
226
  chunked: true,
@@ -231,7 +240,7 @@ class SumiConnection {
231
240
  this._cancellationTokenSources.delete(requestId);
232
241
  };
233
242
  const onError = (err) => {
234
- this.traceRequestError(method, args, err);
243
+ this.traceRequestError(requestId, method, args, err);
235
244
  this.socket.send(this.io.Error(requestId, method, nullHeaders, err));
236
245
  this._cancellationTokenSources.delete(requestId);
237
246
  };
@@ -239,6 +248,7 @@ class SumiConnection {
239
248
  break;
240
249
  }
241
250
  case message_io_1.OperationType.Notification: {
251
+ this.capturer.captureOnNotification(requestId, method, args);
242
252
  const handler = this._notificationHandlers.get(method);
243
253
  if (handler) {
244
254
  handler(...args);
@@ -267,7 +277,7 @@ class SumiConnection {
267
277
  }
268
278
  });
269
279
  if (toDispose) {
270
- this.disposable.push(toDispose);
280
+ this.disposable.add(toDispose);
271
281
  }
272
282
  }
273
283
  dispose() {
@@ -279,7 +289,8 @@ class SumiConnection {
279
289
  static forNetSocket(socket, options = {}) {
280
290
  return new SumiConnection(new connection_1.NetSocketConnection(socket), options);
281
291
  }
282
- traceRequestError(method, args, error) {
292
+ traceRequestError(requestId, method, args, error) {
293
+ this.capturer.captureSendRequestFail(requestId, method, error);
283
294
  this.logger.error(`Error handling request ${method} with args `, args, error);
284
295
  }
285
296
  }
@@ -1 +1 @@
1
- {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../../src/common/rpc/connection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../../src/common/rpc/connection.ts"],"names":[],"mappings":"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"}
@@ -13,21 +13,24 @@ export interface IRPCProtocol {
13
13
  set<T>(identifier: ProxyIdentifier<T>, instance: T): T;
14
14
  get<T>(identifier: ProxyIdentifier<T>): T;
15
15
  }
16
- export declare function getRPCName(serviceId: string, methodName: string): string;
17
- export declare function extractServiceAndMethod(rpcId: string): [string, string];
18
16
  /**
19
17
  * A connection multiplexer that allows to register multiple local RPC services and to create proxies for them.
20
18
  */
21
19
  export declare class SumiConnectionMultiplexer extends SumiConnection implements IRPCProtocol {
22
20
  protected socket: BaseConnection<Uint8Array>;
23
21
  protected options: ISumiConnectionOptions;
24
- private readonly _locals;
25
- private readonly _proxies;
22
+ protected static SEP: string;
23
+ protected static SEP_LENGTH: number;
24
+ protected static getRPCName(serviceId: string, methodName: string): string;
25
+ protected static extractServiceAndMethod(rpcId: string): [string, string];
26
+ protected static normalizeServiceId(serviceId: string): string;
27
+ protected readonly _locals: Map<string, any>;
28
+ protected readonly _proxies: Map<string, any>;
26
29
  constructor(socket: BaseConnection<Uint8Array>, options?: ISumiConnectionOptions);
27
30
  set<T>(identifier: ProxyIdentifier<T>, instance: any): any;
28
31
  get<T>(identifier: ProxyIdentifier<T>): any;
29
32
  getProxy<T>(proxyId: ProxyIdentifier<T>): any;
30
- private _createProxy;
31
- private _doInvokeHandler;
33
+ protected _createProxy(rpcId: string): any;
34
+ protected _doInvokeHandler(rpcName: string, args: any[]): Promise<any>;
32
35
  }
33
36
  //# sourceMappingURL=multiplexer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"multiplexer.d.ts","sourceRoot":"","sources":["../../../src/common/rpc/multiplexer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE/C,OAAO,EAAE,sBAAsB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEtE,qBAAa,eAAe,CAAC,CAAC,GAAG,GAAG;IAClC,OAAc,KAAK,SAAK;IAExB,SAAgB,SAAS,EAAE,MAAM,CAAC;IAClC,SAAgB,OAAO,EAAE,MAAM,CAAC;gBACpB,SAAS,EAAE,MAAM;IAK7B,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM;CAG7B;AAED,eAAO,MAAM,YAAY,eAAyB,CAAC;AACnD,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,CAAC,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC5C,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC;IACvD,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;CAC3C;AAKD,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,UAE/D;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAGvE;AAED;;GAEG;AACH,qBAAa,yBAA0B,SAAQ,cAAe,YAAW,YAAY;IAIvE,SAAS,CAAC,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC;IAAE,SAAS,CAAC,OAAO,EAAE,sBAAsB;IAHnG,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmB;IAC3C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmB;gBAEtB,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,EAAY,OAAO,GAAE,sBAA2B;IAejG,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG;IAKpD,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC;IAIrC,QAAQ,CAAC,CAAC,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC;IAQ9C,OAAO,CAAC,YAAY;YAmBN,gBAAgB;CAY/B"}
1
+ {"version":3,"file":"multiplexer.d.ts","sourceRoot":"","sources":["../../../src/common/rpc/multiplexer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE/C,OAAO,EAAE,sBAAsB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEtE,qBAAa,eAAe,CAAC,CAAC,GAAG,GAAG;IAClC,OAAc,KAAK,SAAK;IAExB,SAAgB,SAAS,EAAE,MAAM,CAAC;IAClC,SAAgB,OAAO,EAAE,MAAM,CAAC;gBACpB,SAAS,EAAE,MAAM;IAK7B,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM;CAG7B;AAED,eAAO,MAAM,YAAY,eAAyB,CAAC;AACnD,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,CAAC,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC5C,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC;IACvD,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;CAC3C;AAED;;GAEG;AACH,qBAAa,yBAA0B,SAAQ,cAAe,YAAW,YAAY;IAoBvE,SAAS,CAAC,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC;IAAE,SAAS,CAAC,OAAO,EAAE,sBAAsB;IAnBnG,SAAS,CAAC,MAAM,CAAC,GAAG,SAAO;IAC3B,SAAS,CAAC,MAAM,CAAC,UAAU,SAAwC;IAEnE,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;IAIjE,SAAS,CAAC,MAAM,CAAC,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAKzE,SAAS,CAAC,MAAM,CAAC,kBAAkB,CAAC,SAAS,EAAE,MAAM;IAIrD,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC7C,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBAExB,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,EAAY,OAAO,GAAE,sBAA2B;IAYjG,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG;IAKpD,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC;IAIrC,QAAQ,CAAC,CAAC,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC;IAU9C,SAAS,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM;cAmBpB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;CAc7E"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SumiConnectionMultiplexer = exports.extractServiceAndMethod = exports.getRPCName = exports.IRPCProtocol = exports.ProxyIdentifier = void 0;
3
+ exports.SumiConnectionMultiplexer = exports.IRPCProtocol = exports.ProxyIdentifier = void 0;
4
4
  const connection_1 = require("./connection");
5
5
  class ProxyIdentifier {
6
6
  constructor(serviceId) {
@@ -14,47 +14,44 @@ class ProxyIdentifier {
14
14
  exports.ProxyIdentifier = ProxyIdentifier;
15
15
  ProxyIdentifier.count = 0;
16
16
  exports.IRPCProtocol = Symbol('IRPCProtocol');
17
- const SEP = '||';
18
- const SEP_LENGTH = SEP.length;
19
- function getRPCName(serviceId, methodName) {
20
- return `${serviceId}${SEP}${methodName}`;
21
- }
22
- exports.getRPCName = getRPCName;
23
- function extractServiceAndMethod(rpcId) {
24
- const idx = rpcId.indexOf(SEP);
25
- return [rpcId.substring(0, idx), rpcId.substring(idx + SEP_LENGTH)];
26
- }
27
- exports.extractServiceAndMethod = extractServiceAndMethod;
28
17
  /**
29
18
  * A connection multiplexer that allows to register multiple local RPC services and to create proxies for them.
30
19
  */
31
20
  class SumiConnectionMultiplexer extends connection_1.SumiConnection {
21
+ static getRPCName(serviceId, methodName) {
22
+ return `${serviceId}${SumiConnectionMultiplexer.SEP}${methodName}`;
23
+ }
24
+ static extractServiceAndMethod(rpcId) {
25
+ const idx = rpcId.indexOf(SumiConnectionMultiplexer.SEP);
26
+ return [rpcId.substring(0, idx), rpcId.substring(idx + SumiConnectionMultiplexer.SEP_LENGTH)];
27
+ }
28
+ static normalizeServiceId(serviceId) {
29
+ return serviceId.replace(/\//g, '_');
30
+ }
32
31
  constructor(socket, options = {}) {
33
32
  super(socket, options);
34
33
  this.socket = socket;
35
34
  this.options = options;
36
35
  this._locals = new Map();
37
36
  this._proxies = new Map();
38
- this.onRequestNotFound((rpcName, args) => {
39
- const [rpcId, methodName] = extractServiceAndMethod(rpcName);
40
- return this._doInvokeHandler(rpcId, methodName, args);
41
- });
37
+ this.onRequestNotFound((rpcName, args) => this._doInvokeHandler(rpcName, args));
42
38
  // call `listen` implicitly
43
39
  // compatible behavior with the RPCProtocol
44
40
  this.listen();
45
41
  }
46
42
  set(identifier, instance) {
47
- this._locals.set(identifier.serviceId, instance);
43
+ this._locals.set(SumiConnectionMultiplexer.normalizeServiceId(identifier.serviceId), instance);
48
44
  return instance;
49
45
  }
50
46
  get(identifier) {
51
- return this._locals.get(identifier.serviceId);
47
+ return this._locals.get(SumiConnectionMultiplexer.normalizeServiceId(identifier.serviceId));
52
48
  }
53
49
  getProxy(proxyId) {
54
- if (!this._proxies.has(proxyId.serviceId)) {
55
- this._proxies.set(proxyId.serviceId, this._createProxy(proxyId.serviceId));
50
+ const serviceId = SumiConnectionMultiplexer.normalizeServiceId(proxyId.serviceId);
51
+ if (!this._proxies.has(serviceId)) {
52
+ this._proxies.set(serviceId, this._createProxy(serviceId));
56
53
  }
57
- return this._proxies.get(proxyId.serviceId);
54
+ return this._proxies.get(serviceId);
58
55
  }
59
56
  _createProxy(rpcId) {
60
57
  const handler = {
@@ -64,7 +61,7 @@ class SumiConnectionMultiplexer extends connection_1.SumiConnection {
64
61
  }
65
62
  // charCodeAt(0) === 36 means starts with $
66
63
  if (!target[name] && name.charCodeAt(0) === 36) {
67
- const rpcName = getRPCName(rpcId, name);
64
+ const rpcName = SumiConnectionMultiplexer.getRPCName(rpcId, name);
68
65
  target[name] = (...args) => this.sendRequest(rpcName, ...args);
69
66
  }
70
67
  return target[name];
@@ -72,7 +69,8 @@ class SumiConnectionMultiplexer extends connection_1.SumiConnection {
72
69
  };
73
70
  return new Proxy(Object.create(null), handler);
74
71
  }
75
- async _doInvokeHandler(rpcId, methodName, args) {
72
+ async _doInvokeHandler(rpcName, args) {
73
+ const [rpcId, methodName] = SumiConnectionMultiplexer.extractServiceAndMethod(rpcName);
76
74
  const actor = this._locals.get(rpcId);
77
75
  if (!actor) {
78
76
  throw new Error('Unknown actor ' + rpcId);
@@ -85,4 +83,6 @@ class SumiConnectionMultiplexer extends connection_1.SumiConnection {
85
83
  }
86
84
  }
87
85
  exports.SumiConnectionMultiplexer = SumiConnectionMultiplexer;
86
+ SumiConnectionMultiplexer.SEP = '/';
87
+ SumiConnectionMultiplexer.SEP_LENGTH = SumiConnectionMultiplexer.SEP.length;
88
88
  //# sourceMappingURL=multiplexer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"multiplexer.js","sourceRoot":"","sources":["../../../src/common/rpc/multiplexer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"multiplexer.js","sourceRoot":"","sources":["../../../src/common/rpc/multiplexer.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- import { MessageConnection } from '@opensumi/vscode-jsonrpc';
2
1
  import { TSumiProtocol } from '../rpc';
3
2
  import { SumiConnection } from '../rpc/connection';
4
3
  import { IBench, ILogger, RPCServiceMethod, ServiceType } from '../types';
4
+ import type { MessageConnection } from '@opensumi/vscode-jsonrpc';
5
5
  export declare class RPCServiceCenter {
6
6
  private bench?;
7
7
  uid: string;
@@ -1 +1 @@
1
- {"version":3,"file":"center.d.ts","sourceRoot":"","sources":["../../../src/common/rpc-service/center.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAG7D,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAQ1E,qBAAa,gBAAgB;IAWf,OAAO,CAAC,KAAK,CAAC;IAVnB,GAAG,EAAE,MAAM,CAAC;IAEnB,OAAO,CAAC,OAAO,CAAwB;IAEvC,OAAO,CAAC,eAAe,CAAyB;IAChD,OAAO,CAAC,gBAAgB,CAA0B;IAElD,OAAO,CAAC,QAAQ,CAAwB;IACxC,OAAO,CAAC,MAAM,CAAU;gBAEJ,KAAK,CAAC,oBAAQ,EAAE,MAAM,CAAC,EAAE,OAAO;IAKpD,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI;IAQ7D,KAAK;IAIL,YAAY,CAAC,QAAQ,EAAE,aAAa;IAMpC,iBAAiB,CAAC,UAAU,EAAE,cAAc;;;IAqB5C,aAAa,CAAC,UAAU,EAAE,iBAAiB;;;IAoB3C,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB;IAItE,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG;IAM5C,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;CA6BlF;AAED,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,UAEpE;AACD,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,UAE/D;AAED,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,UAE9D"}
1
+ {"version":3,"file":"center.d.ts","sourceRoot":"","sources":["../../../src/common/rpc-service/center.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAM1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAIlE,qBAAa,gBAAgB;IAWf,OAAO,CAAC,KAAK,CAAC;IAVnB,GAAG,EAAE,MAAM,CAAC;IAEnB,OAAO,CAAC,OAAO,CAAwB;IAEvC,OAAO,CAAC,eAAe,CAAyB;IAChD,OAAO,CAAC,gBAAgB,CAA0B;IAElD,OAAO,CAAC,QAAQ,CAAwB;IACxC,OAAO,CAAC,MAAM,CAAU;gBAEJ,KAAK,CAAC,oBAAQ,EAAE,MAAM,CAAC,EAAE,OAAO;IAKpD,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI;IAQ7D,KAAK;IAIL,YAAY,CAAC,QAAQ,EAAE,aAAa;IAMpC,iBAAiB,CAAC,UAAU,EAAE,cAAc;;;IAqB5C,aAAa,CAAC,UAAU,EAAE,iBAAiB;;;IAoB3C,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB;IAItE,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG;IAM5C,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;CA6BlF;AAED,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,UAEpE;AACD,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,UAE/D;AAED,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,UAE9D"}