@opensumi/ide-connection 2.27.3-rc-1706687185.0 → 2.27.3-rc-1708222409.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 (209) hide show
  1. package/lib/browser/ws-channel-handler.d.ts.map +1 -1
  2. package/lib/browser/ws-channel-handler.js +2 -6
  3. package/lib/browser/ws-channel-handler.js.map +1 -1
  4. package/lib/common/{connection → buffers}/buffers.d.ts +2 -1
  5. package/lib/common/buffers/buffers.d.ts.map +1 -0
  6. package/lib/common/{connection → buffers}/buffers.js +21 -3
  7. package/lib/common/buffers/buffers.js.map +1 -0
  8. package/lib/common/connection/drivers/base.d.ts +2 -2
  9. package/lib/common/connection/drivers/base.d.ts.map +1 -1
  10. package/lib/common/connection/drivers/base.js +0 -4
  11. package/lib/common/connection/drivers/base.js.map +1 -1
  12. package/lib/common/connection/drivers/frame-decoder.d.ts +34 -0
  13. package/lib/common/connection/drivers/frame-decoder.d.ts.map +1 -0
  14. package/lib/common/connection/drivers/frame-decoder.js +147 -0
  15. package/lib/common/connection/drivers/frame-decoder.js.map +1 -0
  16. package/lib/common/connection/drivers/{empty.d.ts → message-port.d.ts} +5 -2
  17. package/lib/common/connection/drivers/message-port.d.ts.map +1 -0
  18. package/lib/common/connection/drivers/message-port.js +41 -0
  19. package/lib/common/connection/drivers/message-port.js.map +1 -0
  20. package/lib/common/connection/drivers/node-message-port.d.ts +1 -0
  21. package/lib/common/connection/drivers/node-message-port.d.ts.map +1 -1
  22. package/lib/common/connection/drivers/node-message-port.js +3 -0
  23. package/lib/common/connection/drivers/node-message-port.js.map +1 -1
  24. package/lib/common/connection/drivers/reconnecting-websocket.d.ts +1 -0
  25. package/lib/common/connection/drivers/reconnecting-websocket.d.ts.map +1 -1
  26. package/lib/common/connection/drivers/reconnecting-websocket.js +3 -0
  27. package/lib/common/connection/drivers/reconnecting-websocket.js.map +1 -1
  28. package/lib/common/connection/drivers/simple.d.ts +17 -0
  29. package/lib/common/connection/drivers/simple.d.ts.map +1 -0
  30. package/lib/common/connection/drivers/simple.js +32 -0
  31. package/lib/common/connection/drivers/simple.js.map +1 -0
  32. package/lib/common/connection/drivers/socket.d.ts +4 -2
  33. package/lib/common/connection/drivers/socket.d.ts.map +1 -1
  34. package/lib/common/connection/drivers/socket.js +10 -7
  35. package/lib/common/connection/drivers/socket.js.map +1 -1
  36. package/lib/common/connection/drivers/ws-websocket.d.ts +2 -0
  37. package/lib/common/connection/drivers/ws-websocket.d.ts.map +1 -1
  38. package/lib/common/connection/drivers/ws-websocket.js +6 -0
  39. package/lib/common/connection/drivers/ws-websocket.js.map +1 -1
  40. package/lib/common/connection/types.d.ts +1 -1
  41. package/lib/common/connection/types.d.ts.map +1 -1
  42. package/lib/common/ext-rpc-protocol.d.ts +7 -21
  43. package/lib/common/ext-rpc-protocol.d.ts.map +1 -1
  44. package/lib/common/ext-rpc-protocol.js +13 -33
  45. package/lib/common/ext-rpc-protocol.js.map +1 -1
  46. package/lib/common/fury-extends/any.d.ts +22 -0
  47. package/lib/common/fury-extends/any.d.ts.map +1 -0
  48. package/lib/common/fury-extends/any.js +143 -0
  49. package/lib/common/fury-extends/any.js.map +1 -0
  50. package/lib/common/fury-extends/one-of.d.ts +14 -0
  51. package/lib/common/fury-extends/one-of.d.ts.map +1 -0
  52. package/lib/common/fury-extends/one-of.js +50 -0
  53. package/lib/common/fury-extends/one-of.js.map +1 -0
  54. package/lib/common/fury-extends/shared.d.ts +142 -0
  55. package/lib/common/fury-extends/shared.d.ts.map +1 -0
  56. package/lib/common/fury-extends/shared.js +17 -0
  57. package/lib/common/fury-extends/shared.js.map +1 -0
  58. package/lib/common/index.d.ts +2 -1
  59. package/lib/common/index.d.ts.map +1 -1
  60. package/lib/common/index.js +2 -1
  61. package/lib/common/index.js.map +1 -1
  62. package/lib/common/protocols/common-server.d.ts +3 -0
  63. package/lib/common/protocols/common-server.d.ts.map +1 -0
  64. package/lib/common/protocols/common-server.js +18 -0
  65. package/lib/common/protocols/common-server.js.map +1 -0
  66. package/lib/common/protocols/common.d.ts +24 -0
  67. package/lib/common/protocols/common.d.ts.map +1 -0
  68. package/lib/common/protocols/common.js +12 -0
  69. package/lib/common/protocols/common.js.map +1 -0
  70. package/lib/common/rpc/connection.d.ts +44 -0
  71. package/lib/common/rpc/connection.d.ts.map +1 -0
  72. package/lib/common/rpc/connection.js +256 -0
  73. package/lib/common/rpc/connection.js.map +1 -0
  74. package/lib/common/rpc/errors.d.ts +4 -0
  75. package/lib/common/rpc/errors.d.ts.map +1 -0
  76. package/lib/common/rpc/errors.js +10 -0
  77. package/lib/common/rpc/errors.js.map +1 -0
  78. package/lib/common/rpc/index.d.ts +3 -0
  79. package/lib/common/rpc/index.d.ts.map +1 -0
  80. package/lib/common/rpc/index.js +6 -0
  81. package/lib/common/rpc/index.js.map +1 -0
  82. package/lib/common/rpc/multiplexer.d.ts +28 -0
  83. package/lib/common/rpc/multiplexer.d.ts.map +1 -0
  84. package/lib/common/rpc/multiplexer.js +82 -0
  85. package/lib/common/rpc/multiplexer.js.map +1 -0
  86. package/lib/common/rpc/packet.d.ts +65 -0
  87. package/lib/common/rpc/packet.d.ts.map +1 -0
  88. package/lib/common/rpc/packet.js +82 -0
  89. package/lib/common/rpc/packet.js.map +1 -0
  90. package/lib/common/rpc/protocol-repository.d.ts +32 -0
  91. package/lib/common/rpc/protocol-repository.d.ts.map +1 -0
  92. package/lib/common/rpc/protocol-repository.js +118 -0
  93. package/lib/common/rpc/protocol-repository.js.map +1 -0
  94. package/lib/common/rpc/types.d.ts +13 -0
  95. package/lib/common/rpc/types.d.ts.map +1 -0
  96. package/lib/common/rpc/types.js +3 -0
  97. package/lib/common/rpc/types.js.map +1 -0
  98. package/lib/common/rpc/utils.d.ts +2 -0
  99. package/lib/common/rpc/utils.d.ts.map +1 -0
  100. package/lib/common/rpc/utils.js +10 -0
  101. package/lib/common/rpc/utils.js.map +1 -0
  102. package/lib/common/rpc-service/center.d.ts +12 -5
  103. package/lib/common/rpc-service/center.d.ts.map +1 -1
  104. package/lib/common/rpc-service/center.js +47 -42
  105. package/lib/common/rpc-service/center.js.map +1 -1
  106. package/lib/common/rpc-service/index.d.ts +6 -0
  107. package/lib/common/rpc-service/index.d.ts.map +1 -1
  108. package/lib/common/rpc-service/index.js +7 -0
  109. package/lib/common/rpc-service/index.js.map +1 -1
  110. package/lib/common/rpc-service/proxy/base.d.ts +32 -0
  111. package/lib/common/rpc-service/proxy/base.d.ts.map +1 -0
  112. package/lib/common/rpc-service/proxy/base.js +93 -0
  113. package/lib/common/rpc-service/proxy/base.js.map +1 -0
  114. package/lib/common/rpc-service/proxy/index.d.ts +5 -0
  115. package/lib/common/rpc-service/proxy/index.d.ts.map +1 -0
  116. package/lib/common/rpc-service/proxy/index.js +8 -0
  117. package/lib/common/rpc-service/proxy/index.js.map +1 -0
  118. package/lib/common/rpc-service/proxy/invoker.d.ts +14 -0
  119. package/lib/common/rpc-service/proxy/invoker.d.ts.map +1 -0
  120. package/lib/common/rpc-service/proxy/invoker.js +34 -0
  121. package/lib/common/rpc-service/proxy/invoker.js.map +1 -0
  122. package/lib/common/{proxy → rpc-service/proxy}/legacy.d.ts +3 -7
  123. package/lib/common/rpc-service/proxy/legacy.d.ts.map +1 -0
  124. package/lib/common/rpc-service/proxy/legacy.js +136 -0
  125. package/lib/common/rpc-service/proxy/legacy.js.map +1 -0
  126. package/lib/common/rpc-service/proxy/registry.d.ts +18 -0
  127. package/lib/common/rpc-service/proxy/registry.d.ts.map +1 -0
  128. package/lib/common/rpc-service/proxy/registry.js +46 -0
  129. package/lib/common/rpc-service/proxy/registry.js.map +1 -0
  130. package/lib/common/rpc-service/proxy/sumi.d.ts +9 -0
  131. package/lib/common/rpc-service/proxy/sumi.d.ts.map +1 -0
  132. package/lib/common/rpc-service/proxy/sumi.js +86 -0
  133. package/lib/common/rpc-service/proxy/sumi.js.map +1 -0
  134. package/lib/common/rpc-service/stub.d.ts +0 -1
  135. package/lib/common/rpc-service/stub.d.ts.map +1 -1
  136. package/lib/common/rpc-service/stub.js +3 -11
  137. package/lib/common/rpc-service/stub.js.map +1 -1
  138. package/lib/common/types.d.ts +1 -1
  139. package/lib/common/types.d.ts.map +1 -1
  140. package/lib/common/ws-channel.d.ts +97 -32
  141. package/lib/common/ws-channel.d.ts.map +1 -1
  142. package/lib/common/ws-channel.js +75 -51
  143. package/lib/common/ws-channel.js.map +1 -1
  144. package/lib/node/common-channel-handler.js +1 -1
  145. package/lib/node/common-channel-handler.js.map +1 -1
  146. package/package.json +5 -5
  147. package/src/browser/ws-channel-handler.ts +2 -6
  148. package/src/common/{connection → buffers}/buffers.ts +24 -3
  149. package/src/common/connection/drivers/base.ts +2 -6
  150. package/src/common/connection/drivers/frame-decoder.ts +170 -0
  151. package/src/common/connection/drivers/message-port.ts +42 -0
  152. package/src/common/connection/drivers/node-message-port.ts +3 -0
  153. package/src/common/connection/drivers/reconnecting-websocket.ts +4 -0
  154. package/src/common/connection/drivers/simple.ts +33 -0
  155. package/src/common/connection/drivers/socket.ts +11 -7
  156. package/src/common/connection/drivers/ws-websocket.ts +8 -0
  157. package/src/common/connection/types.ts +1 -1
  158. package/src/common/ext-rpc-protocol.ts +16 -51
  159. package/src/common/fury-extends/any.ts +144 -0
  160. package/src/common/fury-extends/one-of.ts +61 -0
  161. package/src/common/fury-extends/shared.ts +15 -0
  162. package/src/common/index.ts +2 -1
  163. package/src/common/protocols/common-server.ts +18 -0
  164. package/src/common/protocols/common.ts +9 -0
  165. package/src/common/rpc/connection.ts +345 -0
  166. package/src/common/rpc/errors.ts +5 -0
  167. package/src/common/rpc/index.ts +2 -0
  168. package/src/common/rpc/multiplexer.ts +105 -0
  169. package/src/common/rpc/packet.ts +104 -0
  170. package/src/common/rpc/protocol-repository.ts +180 -0
  171. package/src/common/rpc/types.ts +23 -0
  172. package/src/common/rpc/utils.ts +5 -0
  173. package/src/common/rpc-service/center.ts +59 -49
  174. package/src/common/rpc-service/index.ts +9 -0
  175. package/src/common/rpc-service/proxy/base.ts +126 -0
  176. package/src/common/rpc-service/proxy/index.ts +4 -0
  177. package/src/common/rpc-service/proxy/invoker.ts +45 -0
  178. package/src/common/rpc-service/proxy/legacy.ts +150 -0
  179. package/src/common/rpc-service/proxy/registry.ts +56 -0
  180. package/src/common/rpc-service/proxy/sumi.ts +81 -0
  181. package/src/common/rpc-service/stub.ts +4 -11
  182. package/src/common/types.ts +1 -1
  183. package/src/common/ws-channel.ts +100 -61
  184. package/src/node/common-channel-handler.ts +1 -1
  185. package/lib/common/connection/buffers.d.ts.map +0 -1
  186. package/lib/common/connection/buffers.js.map +0 -1
  187. package/lib/common/connection/drivers/empty.d.ts.map +0 -1
  188. package/lib/common/connection/drivers/empty.js +0 -21
  189. package/lib/common/connection/drivers/empty.js.map +0 -1
  190. package/lib/common/connection/drivers/stream-decoder.d.ts +0 -67
  191. package/lib/common/connection/drivers/stream-decoder.d.ts.map +0 -1
  192. package/lib/common/connection/drivers/stream-decoder.js +0 -171
  193. package/lib/common/connection/drivers/stream-decoder.js.map +0 -1
  194. package/lib/common/proxy/base.d.ts +0 -22
  195. package/lib/common/proxy/base.d.ts.map +0 -1
  196. package/lib/common/proxy/base.js +0 -47
  197. package/lib/common/proxy/base.js.map +0 -1
  198. package/lib/common/proxy/index.d.ts +0 -8
  199. package/lib/common/proxy/index.d.ts.map +0 -1
  200. package/lib/common/proxy/index.js +0 -12
  201. package/lib/common/proxy/index.js.map +0 -1
  202. package/lib/common/proxy/legacy.d.ts.map +0 -1
  203. package/lib/common/proxy/legacy.js +0 -183
  204. package/lib/common/proxy/legacy.js.map +0 -1
  205. package/src/common/connection/drivers/empty.ts +0 -19
  206. package/src/common/connection/drivers/stream-decoder.ts +0 -196
  207. package/src/common/proxy/base.ts +0 -67
  208. package/src/common/proxy/index.ts +0 -10
  209. package/src/common/proxy/legacy.ts +0 -200
@@ -0,0 +1,142 @@
1
+ export declare const furyFactory: () => {
2
+ fury: {
3
+ config: import("@furyjs/fury/dist/lib/type").Config;
4
+ deserialize: <T = any>(bytes: Uint8Array, serializer?: import("@furyjs/fury").Serializer<any, any> | undefined) => T | null;
5
+ serialize: <T_1 = any>(data: T_1, serializer?: import("@furyjs/fury").Serializer<any, any> | undefined) => import("@furyjs/fury/dist/lib/platformBuffer").PlatformBuffer;
6
+ referenceResolver: {
7
+ existsWriteObject: (obj: any) => number | undefined;
8
+ pushWriteObject: (object: any) => void;
9
+ pushReadObject: (object: any) => void;
10
+ readRefFlag: () => import("@furyjs/fury/dist/lib/type").RefFlags;
11
+ getReadObjectByRefId: (refId: number) => any;
12
+ reset: () => void;
13
+ };
14
+ classResolver: import("@furyjs/fury/dist/lib/classResolver").default;
15
+ binaryReader: {
16
+ getCursor: () => number;
17
+ setCursor: (v: number) => number;
18
+ varInt32: () => number;
19
+ varInt64: () => bigint;
20
+ varUInt32: () => number;
21
+ varUInt64: () => bigint;
22
+ int8: () => number;
23
+ buffer: (len: number) => import("@furyjs/fury/dist/lib/platformBuffer").PlatformBuffer;
24
+ bufferRef: (len: number) => Uint8Array;
25
+ uint8: () => number;
26
+ reset: (ab: Uint8Array) => void;
27
+ stringUtf8At: (start: number, len: number) => string;
28
+ stringUtf8: (len: number) => string;
29
+ stringLatin1: (len: number) => string;
30
+ stringOfVarUInt32: () => string;
31
+ double: () => number;
32
+ float: () => number;
33
+ uint16: () => number;
34
+ int16: () => number;
35
+ uint64: () => bigint;
36
+ skip: (len: number) => void;
37
+ int64: () => bigint;
38
+ sliLong: () => bigint;
39
+ uint32: () => number;
40
+ int32: () => number;
41
+ };
42
+ binaryWriter: {
43
+ skip: (len: number) => void;
44
+ getByteLen: () => number;
45
+ getReserved: () => number;
46
+ reset: () => void;
47
+ reserve: (len: number) => void;
48
+ uint16: (v: number) => void;
49
+ int8: (v: number) => void;
50
+ int24: (v: number) => void;
51
+ dump: () => import("@furyjs/fury/dist/lib/platformBuffer").PlatformBuffer;
52
+ uint8: (v: number) => void;
53
+ int16: (v: number) => void;
54
+ varInt32: (v: number) => void;
55
+ varUInt32: (value: number) => void;
56
+ varUInt64: (val: number | bigint) => void;
57
+ varInt64: (v: bigint) => void;
58
+ stringOfVarUInt32: (v: string) => void;
59
+ bufferWithoutMemCheck: (bf: import("@furyjs/fury/dist/lib/platformBuffer").PlatformBuffer, byteLen: number) => void;
60
+ uint64: (v: bigint) => void;
61
+ buffer: (v: Uint8Array) => void;
62
+ double: (v: number) => void;
63
+ float: (v: number) => void;
64
+ int64: (v: bigint) => void;
65
+ sliLong: (v: number | bigint) => void;
66
+ uint32: (v: number) => void;
67
+ int32: (v: number) => void;
68
+ getCursor: () => number;
69
+ setUint32Position: (offset: number, v: number) => void;
70
+ dumpAndOwn: () => {
71
+ get(): Uint8Array;
72
+ dispose(): void;
73
+ };
74
+ };
75
+ serializeVolatile: <T_2 = any>(data: T_2, serializer?: import("@furyjs/fury").Serializer<any, any> | undefined) => {
76
+ get(): Uint8Array;
77
+ dispose(): void;
78
+ };
79
+ };
80
+ reader: {
81
+ getCursor: () => number;
82
+ setCursor: (v: number) => number;
83
+ varInt32: () => number;
84
+ varInt64: () => bigint;
85
+ varUInt32: () => number;
86
+ varUInt64: () => bigint;
87
+ int8: () => number;
88
+ buffer: (len: number) => import("@furyjs/fury/dist/lib/platformBuffer").PlatformBuffer;
89
+ bufferRef: (len: number) => Uint8Array;
90
+ uint8: () => number;
91
+ reset: (ab: Uint8Array) => void;
92
+ stringUtf8At: (start: number, len: number) => string;
93
+ stringUtf8: (len: number) => string;
94
+ stringLatin1: (len: number) => string;
95
+ stringOfVarUInt32: () => string;
96
+ double: () => number;
97
+ float: () => number;
98
+ uint16: () => number;
99
+ int16: () => number;
100
+ uint64: () => bigint;
101
+ skip: (len: number) => void;
102
+ int64: () => bigint;
103
+ sliLong: () => bigint;
104
+ uint32: () => number;
105
+ int32: () => number;
106
+ };
107
+ writer: {
108
+ skip: (len: number) => void;
109
+ getByteLen: () => number;
110
+ getReserved: () => number;
111
+ reset: () => void;
112
+ reserve: (len: number) => void;
113
+ uint16: (v: number) => void;
114
+ int8: (v: number) => void;
115
+ int24: (v: number) => void;
116
+ dump: () => import("@furyjs/fury/dist/lib/platformBuffer").PlatformBuffer;
117
+ uint8: (v: number) => void;
118
+ int16: (v: number) => void;
119
+ varInt32: (v: number) => void;
120
+ varUInt32: (value: number) => void;
121
+ varUInt64: (val: number | bigint) => void;
122
+ varInt64: (v: bigint) => void;
123
+ stringOfVarUInt32: (v: string) => void;
124
+ bufferWithoutMemCheck: (bf: import("@furyjs/fury/dist/lib/platformBuffer").PlatformBuffer, byteLen: number) => void;
125
+ uint64: (v: bigint) => void;
126
+ buffer: (v: Uint8Array) => void;
127
+ double: (v: number) => void;
128
+ float: (v: number) => void;
129
+ int64: (v: bigint) => void;
130
+ sliLong: (v: number | bigint) => void;
131
+ uint32: (v: number) => void;
132
+ int32: (v: number) => void;
133
+ getCursor: () => number;
134
+ setUint32Position: (offset: number, v: number) => void;
135
+ dumpAndOwn: () => {
136
+ get(): Uint8Array;
137
+ dispose(): void;
138
+ };
139
+ };
140
+ };
141
+ export type FuryFactoryReturn = ReturnType<typeof furyFactory>;
142
+ //# sourceMappingURL=shared.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/common/fury-extends/shared.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAUvB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.furyFactory = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const fury_1 = tslib_1.__importDefault(require("@furyjs/fury/dist/lib/fury"));
6
+ const furyFactory = () => {
7
+ const fury = (0, fury_1.default)({});
8
+ const reader = fury.binaryReader;
9
+ const writer = fury.binaryWriter;
10
+ return {
11
+ fury,
12
+ reader,
13
+ writer,
14
+ };
15
+ };
16
+ exports.furyFactory = furyFactory;
17
+ //# sourceMappingURL=shared.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/common/fury-extends/shared.ts"],"names":[],"mappings":";;;;AAAA,8EAA8C;AAEvC,MAAM,WAAW,GAAG,GAAG,EAAE;IAC9B,MAAM,IAAI,GAAG,IAAA,cAAI,EAAC,EAAE,CAAC,CAAC;IACtB,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC;IACjC,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC;IAEjC,OAAO;QACL,IAAI;QACJ,MAAM;QACN,MAAM;KACP,CAAC;AACJ,CAAC,CAAC;AAVW,QAAA,WAAW,eAUtB"}
@@ -1,5 +1,6 @@
1
1
  export * from './message';
2
- export * from './proxy';
2
+ export * from './rpc-service/proxy';
3
+ export * from './rpc/multiplexer';
3
4
  export * from './ext-rpc-protocol';
4
5
  export * from './utils';
5
6
  export * from './ws-channel';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,oBAAoB,CAAC;AACnC,cAAc,SAAS,CAAC;AACxB,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,WAAW,CAAC;AAC1B,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC"}
@@ -2,7 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  tslib_1.__exportStar(require("./message"), exports);
5
- tslib_1.__exportStar(require("./proxy"), exports);
5
+ tslib_1.__exportStar(require("./rpc-service/proxy"), exports);
6
+ tslib_1.__exportStar(require("./rpc/multiplexer"), exports);
6
7
  tslib_1.__exportStar(require("./ext-rpc-protocol"), exports);
7
8
  tslib_1.__exportStar(require("./utils"), exports);
8
9
  tslib_1.__exportStar(require("./ws-channel"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":";;;AAAA,oDAA0B;AAC1B,kDAAwB;AACxB,6DAAmC;AACnC,kDAAwB;AACxB,uDAA6B;AAC7B,oDAA0B;AAC1B,kDAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":";;;AAAA,oDAA0B;AAC1B,8DAAoC;AACpC,4DAAkC;AAClC,6DAAmC;AACnC,kDAAwB;AACxB,uDAA6B;AAC7B,oDAA0B;AAC1B,kDAAwB"}
@@ -0,0 +1,3 @@
1
+ import type { TSumiProtocol } from '../rpc';
2
+ export declare const CommonServerProtocol: TSumiProtocol;
3
+ //# sourceMappingURL=common-server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common-server.d.ts","sourceRoot":"","sources":["../../../src/common/protocols/common-server.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAE5C,eAAO,MAAM,oBAAoB,eAWf,CAAC"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CommonServerProtocol = void 0;
4
+ const fury_1 = require("@furyjs/fury");
5
+ const ide_core_common_1 = require("@opensumi/ide-core-common");
6
+ exports.CommonServerProtocol = {
7
+ name: ide_core_common_1.CommonServerPath,
8
+ methods: [
9
+ {
10
+ method: 'getBackendOS',
11
+ request: [],
12
+ response: {
13
+ type: fury_1.Type.uint16(),
14
+ },
15
+ },
16
+ ],
17
+ };
18
+ //# sourceMappingURL=common-server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common-server.js","sourceRoot":"","sources":["../../../src/common/protocols/common-server.ts"],"names":[],"mappings":";;;AAAA,uCAAoC;AAEpC,+DAA6D;AAIhD,QAAA,oBAAoB,GAAG;IAClC,IAAI,EAAE,kCAAgB;IACtB,OAAO,EAAE;QACP;YACE,MAAM,EAAE,cAAc;YACtB,OAAO,EAAE,EAAE;YACX,QAAQ,EAAE;gBACR,IAAI,EAAE,WAAI,CAAC,MAAM,EAAE;aACpB;SACF;KACF;CACe,CAAC"}
@@ -0,0 +1,24 @@
1
+ export declare const UriComponentsProto: {
2
+ type: import("@furyjs/fury").InternalSerializerType.FURY_TYPE_TAG;
3
+ options: {
4
+ tag: string;
5
+ props: {
6
+ scheme: {
7
+ type: import("@furyjs/fury").InternalSerializerType.STRING;
8
+ };
9
+ authority: {
10
+ type: import("@furyjs/fury").InternalSerializerType.STRING;
11
+ };
12
+ path: {
13
+ type: import("@furyjs/fury").InternalSerializerType.STRING;
14
+ };
15
+ query: {
16
+ type: import("@furyjs/fury").InternalSerializerType.STRING;
17
+ };
18
+ fragment: {
19
+ type: import("@furyjs/fury").InternalSerializerType.STRING;
20
+ };
21
+ } | undefined;
22
+ };
23
+ };
24
+ //# sourceMappingURL=common.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../src/common/protocols/common.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;CAM7B,CAAC"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UriComponentsProto = void 0;
4
+ const fury_1 = require("@furyjs/fury");
5
+ exports.UriComponentsProto = fury_1.Type.object('uri-components', {
6
+ scheme: fury_1.Type.string(),
7
+ authority: fury_1.Type.string(),
8
+ path: fury_1.Type.string(),
9
+ query: fury_1.Type.string(),
10
+ fragment: fury_1.Type.string(),
11
+ });
12
+ //# sourceMappingURL=common.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/common/protocols/common.ts"],"names":[],"mappings":";;;AAAA,uCAAoC;AAEvB,QAAA,kBAAkB,GAAG,WAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE;IAC9D,MAAM,EAAE,WAAI,CAAC,MAAM,EAAE;IACrB,SAAS,EAAE,WAAI,CAAC,MAAM,EAAE;IACxB,IAAI,EAAE,WAAI,CAAC,MAAM,EAAE;IACnB,KAAK,EAAE,WAAI,CAAC,MAAM,EAAE;IACpB,QAAQ,EAAE,WAAI,CAAC,MAAM,EAAE;CACxB,CAAC,CAAC"}
@@ -0,0 +1,44 @@
1
+ /// <reference types="node" />
2
+ import type net from 'net';
3
+ import type { WebSocket } from 'ws';
4
+ import { DisposableCollection, IDisposable } from '@opensumi/ide-utils';
5
+ import { BaseConnection } from '../connection';
6
+ import { ILogger } from '../types';
7
+ import { IRequestHeaders } from './packet';
8
+ import { ProtocolRepository } from './protocol-repository';
9
+ import { TGenericNotificationHandler, TGenericRequestHandler, TOnNotificationNotFoundHandler, TOnRequestNotFoundHandler } from './types';
10
+ export interface ISumiConnectionOptions {
11
+ timeout?: number;
12
+ logger?: ILogger;
13
+ }
14
+ export declare class SumiConnection implements IDisposable {
15
+ protected socket: BaseConnection<Uint8Array>;
16
+ protected options: ISumiConnectionOptions;
17
+ protected disposable: DisposableCollection;
18
+ private _requestEmitter;
19
+ private _notificationEmitter;
20
+ private _requestId;
21
+ private _callbacks;
22
+ private readonly _timeoutHandles;
23
+ private readonly _cancellationTokenSources;
24
+ private readonly _knownCanceledRequests;
25
+ protocolRepository: ProtocolRepository;
26
+ protected logger: ILogger;
27
+ constructor(socket: BaseConnection<Uint8Array>, options?: ISumiConnectionOptions);
28
+ sendNotification(method: string, ...args: any[]): void;
29
+ sendRequest(method: string, ...args: any[]): Promise<any>;
30
+ onNotification(method: string, handler: TGenericNotificationHandler): IDisposable;
31
+ onNotificationNotFound(handler: TOnNotificationNotFoundHandler): IDisposable;
32
+ cancelRequest(requestId: number): void;
33
+ private _handleTimeout;
34
+ private runRequestHandler;
35
+ onRequest<T = any>(method: string, handler: TGenericRequestHandler<T>): IDisposable;
36
+ onRequestNotFound(handler: TOnRequestNotFoundHandler): IDisposable;
37
+ setProtocolRepository(protocolRepository: ProtocolRepository): void;
38
+ listen(): void;
39
+ dispose(): void;
40
+ protected _receiveRequest(rpcType: number, requestId: number, method: string, headers: IRequestHeaders, args: any[]): void;
41
+ static forWSWebSocket(socket: WebSocket, options?: ISumiConnectionOptions): SumiConnection;
42
+ static forNetSocket(socket: net.Socket, options?: ISumiConnectionOptions): SumiConnection;
43
+ }
44
+ //# sourceMappingURL=connection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../../src/common/rpc/connection.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAE3B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAGpC,OAAO,EACL,oBAAoB,EACpB,WAAW,EAMZ,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,cAAc,EAA8C,MAAM,eAAe,CAAC;AAE3F,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAGnC,OAAO,EAOL,eAAe,EAChB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EACL,2BAA2B,EAC3B,sBAAsB,EACtB,8BAA8B,EAC9B,yBAAyB,EAE1B,MAAM,SAAS,CAAC;AAOjB,MAAM,WAAW,sBAAsB;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,qBAAa,cAAe,YAAW,WAAW;IAoBpC,SAAS,CAAC,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC;IAAE,SAAS,CAAC,OAAO,EAAE,sBAAsB;IAnBnG,SAAS,CAAC,UAAU,uBAA8B;IAElD,OAAO,CAAC,eAAe,CAElB;IACL,OAAO,CAAC,oBAAoB,CAEvB;IAEL,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,UAAU,CAAuC;IAEzD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA8C;IAC9E,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAA8C;IACxF,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAqB;IAErD,kBAAkB,qBAA4B;IACrD,SAAS,CAAC,MAAM,EAAE,OAAO,CAAW;gBAEd,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,EAAY,OAAO,GAAE,sBAA2B;IAMxG,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAM/C,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAsD1C,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,2BAA2B,GAAG,WAAW;IAOjF,sBAAsB,CAAC,OAAO,EAAE,8BAA8B,GAAG,WAAW;IAO5E,aAAa,CAAC,SAAS,EAAE,MAAM;IAI/B,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,iBAAiB;IAqCzB,SAAS,CAAC,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,sBAAsB,CAAC,CAAC,CAAC,GAAG,WAAW;IAOnF,iBAAiB,CAAC,OAAO,EAAE,yBAAyB,GAAG,WAAW;IAQlE,qBAAqB,CAAC,kBAAkB,EAAE,kBAAkB;IAI5D,MAAM;IA4FN,OAAO,IAAI,IAAI;IAIf,SAAS,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,GAAG,EAAE;IAsBnH,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,GAAE,sBAA2B;IAI7E,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,GAAE,sBAA2B;CAG7E"}
@@ -0,0 +1,256 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SumiConnection = void 0;
4
+ const events_1 = require("@opensumi/events");
5
+ const ide_utils_1 = require("@opensumi/ide-utils");
6
+ const connection_1 = require("../connection");
7
+ const constants_1 = require("../constants");
8
+ const errors_1 = require("./errors");
9
+ const packet_1 = require("./packet");
10
+ const protocol_repository_1 = require("./protocol-repository");
11
+ const utils_1 = require("./utils");
12
+ const nullHeaders = {};
13
+ const star = '*';
14
+ class SumiConnection {
15
+ constructor(socket, options = {}) {
16
+ this.socket = socket;
17
+ this.options = options;
18
+ this.disposable = new ide_utils_1.DisposableCollection();
19
+ this._requestEmitter = new events_1.EventEmitter();
20
+ this._notificationEmitter = new events_1.EventEmitter();
21
+ this._requestId = 0;
22
+ this._callbacks = new Map();
23
+ this._timeoutHandles = new Map();
24
+ this._cancellationTokenSources = new Map();
25
+ this._knownCanceledRequests = new Set();
26
+ this.protocolRepository = new protocol_repository_1.ProtocolRepository();
27
+ this.logger = console;
28
+ if (options.logger) {
29
+ this.logger = options.logger;
30
+ }
31
+ }
32
+ sendNotification(method, ...args) {
33
+ const processor = this.protocolRepository.getProcessor(method);
34
+ const payload = processor.serializeRequest(args);
35
+ this.socket.send(packet_1.MessageIO.Request(this._requestId++, packet_1.OperationType.Notification, method, nullHeaders, payload));
36
+ }
37
+ sendRequest(method, ...args) {
38
+ return new Promise((resolve, reject) => {
39
+ const requestId = this._requestId++;
40
+ const processor = this.protocolRepository.getProcessor(method);
41
+ this._callbacks.set(requestId, (headers, error, buffer) => {
42
+ if (error) {
43
+ if (error === constants_1.METHOD_NOT_REGISTERED) {
44
+ resolve(error);
45
+ return;
46
+ }
47
+ reject(error);
48
+ return;
49
+ }
50
+ const result = processor.deserializeResult(buffer);
51
+ resolve(result);
52
+ });
53
+ // Set timeout callback, -1 means no timeout configuration is set.
54
+ if (this.options.timeout && this.options.timeout !== -1) {
55
+ const timeoutHandle = setTimeout(() => {
56
+ this._handleTimeout(method, requestId);
57
+ }, this.options.timeout);
58
+ this._timeoutHandles.set(requestId, timeoutHandle);
59
+ }
60
+ const cancellationToken = args.length && ide_utils_1.CancellationToken.isCancellationToken(args[args.length - 1]) ? args.pop() : undefined;
61
+ if (cancellationToken && cancellationToken.isCancellationRequested) {
62
+ return Promise.reject((0, ide_utils_1.canceled)());
63
+ }
64
+ if (cancellationToken) {
65
+ cancellationToken.onCancellationRequested(() => this.cancelRequest(requestId));
66
+ }
67
+ const payload = processor.serializeRequest(args);
68
+ this.socket.send(packet_1.MessageIO.Request(requestId, packet_1.OperationType.Request, method, {
69
+ cancelable: cancellationToken ? true : false,
70
+ }, payload));
71
+ });
72
+ }
73
+ onNotification(method, handler) {
74
+ const handlerWrapper = (requestId, method, headers, args) => {
75
+ handler(...args);
76
+ };
77
+ return this._notificationEmitter.on(method, handlerWrapper);
78
+ }
79
+ onNotificationNotFound(handler) {
80
+ const handlerWrapper = (requestId, method, headers, args) => {
81
+ handler(method, args);
82
+ };
83
+ return this._notificationEmitter.on(star, handlerWrapper);
84
+ }
85
+ cancelRequest(requestId) {
86
+ this.socket.send(packet_1.MessageIO.Cancel(requestId));
87
+ }
88
+ _handleTimeout(method, requestId) {
89
+ if (!this._callbacks.has(requestId) || !this._timeoutHandles.has(requestId)) {
90
+ return;
91
+ }
92
+ const callback = this._callbacks.get(requestId);
93
+ this._callbacks.delete(requestId);
94
+ this._timeoutHandles.delete(requestId);
95
+ callback(nullHeaders, new errors_1.MethodTimeoutError(method));
96
+ }
97
+ runRequestHandler(requestId, method, args, handler) {
98
+ let result;
99
+ let error;
100
+ const processor = this.protocolRepository.getProcessor(method);
101
+ try {
102
+ result = handler(...args);
103
+ }
104
+ catch (err) {
105
+ error = err;
106
+ }
107
+ if (error) {
108
+ this.socket.send(packet_1.MessageIO.Error(requestId, packet_1.ErrorCode.Err, nullHeaders, error));
109
+ this._cancellationTokenSources.delete(requestId);
110
+ }
111
+ else if ((0, ide_utils_1.isPromise)(result)) {
112
+ result
113
+ .then((result) => {
114
+ const payload = processor.serializeResult(result);
115
+ this.socket.send(packet_1.MessageIO.Response(requestId, nullHeaders, payload));
116
+ this._cancellationTokenSources.delete(requestId);
117
+ })
118
+ .catch((err) => {
119
+ this.socket.send(packet_1.MessageIO.Error(requestId, packet_1.ErrorCode.Err, nullHeaders, err));
120
+ this._cancellationTokenSources.delete(requestId);
121
+ });
122
+ }
123
+ else {
124
+ const payload = processor.serializeResult(result);
125
+ this.socket.send(packet_1.MessageIO.Response(requestId, nullHeaders, payload));
126
+ this._cancellationTokenSources.delete(requestId);
127
+ }
128
+ }
129
+ onRequest(method, handler) {
130
+ const handlerWrapper = (requestId, method, headers, args) => {
131
+ this.runRequestHandler(requestId, method, args, handler);
132
+ };
133
+ return this._requestEmitter.on(method, handlerWrapper);
134
+ }
135
+ onRequestNotFound(handler) {
136
+ const handlerWrapper = (requestId, method, headers, args) => {
137
+ this.runRequestHandler(requestId, method, [method, args], handler);
138
+ };
139
+ return this._requestEmitter.on(star, handlerWrapper);
140
+ }
141
+ setProtocolRepository(protocolRepository) {
142
+ this.protocolRepository = protocolRepository;
143
+ }
144
+ listen() {
145
+ const toDispose = this.socket.onMessage((data) => {
146
+ packet_1.reader.reset(data);
147
+ // skip version, currently only have version 1
148
+ packet_1.reader.skip(1);
149
+ const rpcType = packet_1.reader.uint8();
150
+ const requestId = packet_1.reader.uint32();
151
+ const codec = packet_1.reader.uint8();
152
+ if (this._timeoutHandles.has(requestId)) {
153
+ // Ignore some jest test scenarios where clearTimeout is not defined.
154
+ if (typeof clearTimeout === 'function') {
155
+ // @ts-ignore
156
+ clearTimeout(this._timeoutHandles.get(requestId));
157
+ }
158
+ this._timeoutHandles.delete(requestId);
159
+ }
160
+ switch (rpcType) {
161
+ case packet_1.OperationType.Response: {
162
+ const callback = this._callbacks.get(requestId);
163
+ if (!callback) {
164
+ this.logger.error(`Cannot find callback for request ${requestId}`);
165
+ return;
166
+ }
167
+ this._callbacks.delete(requestId);
168
+ const status = packet_1.reader.uint16();
169
+ // const headers = headerSerializer.read();
170
+ // if error code is not 0, it's an error
171
+ if (status === packet_1.ErrorCode.Err) {
172
+ // TODO: use binary codec
173
+ (0, utils_1.assert)(codec === packet_1.BodyCodec.JSON, 'Error response should be JSON encoded');
174
+ const content = packet_1.reader.stringOfVarUInt32();
175
+ const error = (0, ide_utils_1.parseError)(content);
176
+ callback(nullHeaders, error);
177
+ return;
178
+ }
179
+ if (codec === packet_1.BodyCodec.Binary) {
180
+ const contentLen = packet_1.reader.varUInt32();
181
+ const buffer = packet_1.reader.buffer(contentLen);
182
+ callback(nullHeaders, undefined, buffer);
183
+ return;
184
+ }
185
+ const content = packet_1.reader.stringOfVarUInt32();
186
+ if (codec === packet_1.BodyCodec.JSON) {
187
+ callback(nullHeaders, undefined, JSON.parse(content));
188
+ }
189
+ else {
190
+ callback(nullHeaders, undefined, content);
191
+ }
192
+ break;
193
+ }
194
+ case packet_1.OperationType.Notification:
195
+ // fall through
196
+ case packet_1.OperationType.Request: {
197
+ const method = packet_1.reader.stringOfVarUInt32();
198
+ const headers = packet_1.requestHeadersSerializer.read();
199
+ const contentLen = packet_1.reader.varUInt32();
200
+ const content = packet_1.reader.buffer(contentLen);
201
+ const processor = this.protocolRepository.getProcessor(method);
202
+ const args = processor.deserializeRequest(content);
203
+ this._receiveRequest(rpcType, requestId, method, headers, args);
204
+ break;
205
+ }
206
+ case packet_1.OperationType.Cancel: {
207
+ const cancellationTokenSource = this._cancellationTokenSources.get(requestId);
208
+ if (cancellationTokenSource) {
209
+ cancellationTokenSource.cancel();
210
+ }
211
+ else {
212
+ this._knownCanceledRequests.add(requestId);
213
+ }
214
+ break;
215
+ }
216
+ default: {
217
+ break;
218
+ }
219
+ }
220
+ });
221
+ if (toDispose) {
222
+ this.disposable.push(toDispose);
223
+ }
224
+ }
225
+ dispose() {
226
+ this.disposable.dispose();
227
+ }
228
+ _receiveRequest(rpcType, requestId, method, headers, args) {
229
+ const cancelable = headers.cancelable;
230
+ if (cancelable) {
231
+ const tokenSource = new ide_utils_1.CancellationTokenSource();
232
+ this._cancellationTokenSources.set(requestId, tokenSource);
233
+ args.push(tokenSource.token);
234
+ if (this._knownCanceledRequests.has(requestId)) {
235
+ tokenSource.cancel();
236
+ this._knownCanceledRequests.delete(requestId);
237
+ }
238
+ }
239
+ if (rpcType === packet_1.OperationType.Request) {
240
+ const eventName = this._requestEmitter.hasListener(method) ? method : star;
241
+ this._requestEmitter.emit(eventName, requestId, method, headers, args);
242
+ }
243
+ else {
244
+ const eventName = this._notificationEmitter.hasListener(method) ? method : star;
245
+ this._notificationEmitter.emit(eventName, requestId, method, headers, args);
246
+ }
247
+ }
248
+ static forWSWebSocket(socket, options = {}) {
249
+ return new SumiConnection(new connection_1.WSWebSocketConnection(socket), options);
250
+ }
251
+ static forNetSocket(socket, options = {}) {
252
+ return new SumiConnection(new connection_1.NetSocketConnection(socket), options);
253
+ }
254
+ }
255
+ exports.SumiConnection = SumiConnection;
256
+ //# sourceMappingURL=connection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../../src/common/rpc/connection.ts"],"names":[],"mappings":";;;AAIA,6CAAgD;AAChD,mDAQ6B;AAE7B,8CAA2F;AAC3F,4CAAqD;AAGrD,qCAA8C;AAC9C,qCAQkB;AAClB,+DAA2D;AAQ3D,mCAAiC;AAEjC,MAAM,WAAW,GAAG,EAAE,CAAC;AAEvB,MAAM,IAAI,GAAG,GAAG,CAAC;AAOjB,MAAa,cAAc;IAoBzB,YAAsB,MAAkC,EAAY,UAAkC,EAAE;QAAlF,WAAM,GAAN,MAAM,CAA4B;QAAY,YAAO,GAAP,OAAO,CAA6B;QAnB9F,eAAU,GAAG,IAAI,gCAAoB,EAAE,CAAC;QAE1C,oBAAe,GAAG,IAAI,qBAAY,EAEtC,CAAC;QACG,yBAAoB,GAAG,IAAI,qBAAY,EAE3C,CAAC;QAEG,eAAU,GAAG,CAAC,CAAC;QACf,eAAU,GAAG,IAAI,GAAG,EAA4B,CAAC;QAExC,oBAAe,GAAG,IAAI,GAAG,EAAmC,CAAC;QAC7D,8BAAyB,GAAG,IAAI,GAAG,EAAmC,CAAC;QACvE,2BAAsB,GAAG,IAAI,GAAG,EAAU,CAAC;QAErD,uBAAkB,GAAG,IAAI,wCAAkB,EAAE,CAAC;QAC3C,WAAM,GAAY,OAAO,CAAC;QAGlC,IAAI,OAAO,CAAC,MAAM,EAAE;YAClB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;SAC9B;IACH,CAAC;IAED,gBAAgB,CAAC,MAAc,EAAE,GAAG,IAAW;QAC7C,MAAM,SAAS,GAAG,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAC/D,MAAM,OAAO,GAAG,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAS,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,sBAAa,CAAC,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;IACnH,CAAC;IAED,WAAW,CAAC,MAAc,EAAE,GAAG,IAAW;QACxC,OAAO,IAAI,OAAO,CAAM,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC1C,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;YAEpC,MAAM,SAAS,GAAG,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YAE/D,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;gBACxD,IAAI,KAAK,EAAE;oBACT,IAAI,KAAK,KAAK,iCAAqB,EAAE;wBACnC,OAAO,CAAC,KAAK,CAAC,CAAC;wBACf,OAAO;qBACR;oBAED,MAAM,CAAC,KAAK,CAAC,CAAC;oBACd,OAAO;iBACR;gBAED,MAAM,MAAM,GAAG,SAAS,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;gBACnD,OAAO,CAAC,MAAM,CAAC,CAAC;YAClB,CAAC,CAAC,CAAC;YAEH,kEAAkE;YAClE,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,KAAK,CAAC,CAAC,EAAE;gBACvD,MAAM,aAAa,GAAG,UAAU,CAAC,GAAG,EAAE;oBACpC,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;gBACzC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBACzB,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;aACpD;YAED,MAAM,iBAAiB,GACrB,IAAI,CAAC,MAAM,IAAI,6BAAiB,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;YACvG,IAAI,iBAAiB,IAAI,iBAAiB,CAAC,uBAAuB,EAAE;gBAClE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAA,oBAAQ,GAAE,CAAC,CAAC;aACnC;YAED,IAAI,iBAAiB,EAAE;gBACrB,iBAAiB,CAAC,uBAAuB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;aAChF;YAED,MAAM,OAAO,GAAG,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACjD,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,kBAAS,CAAC,OAAO,CACf,SAAS,EACT,sBAAa,CAAC,OAAO,EACrB,MAAM,EACN;gBACE,UAAU,EAAE,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;aAC7C,EACD,OAAO,CACR,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,cAAc,CAAC,MAAc,EAAE,OAAoC;QACjE,MAAM,cAAc,GAAG,CAAC,SAAiB,EAAE,MAAc,EAAE,OAA4B,EAAE,IAAW,EAAE,EAAE;YACtG,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;QACnB,CAAC,CAAC;QACF,OAAO,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAC9D,CAAC;IAED,sBAAsB,CAAC,OAAuC;QAC5D,MAAM,cAAc,GAAG,CAAC,SAAiB,EAAE,MAAc,EAAE,OAA4B,EAAE,IAAW,EAAE,EAAE;YACtG,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACxB,CAAC,CAAC;QACF,OAAO,IAAI,CAAC,oBAAoB,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IAC5D,CAAC;IAED,aAAa,CAAC,SAAiB;QAC7B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;IAChD,CAAC;IAEO,cAAc,CAAC,MAAc,EAAE,SAAiB;QACtD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;YAC3E,OAAO;SACR;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC;QACjD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAClC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACvC,QAAQ,CAAC,WAAW,EAAE,IAAI,2BAAkB,CAAC,MAAM,CAAC,CAAC,CAAC;IACxD,CAAC;IAEO,iBAAiB,CACvB,SAAiB,EACjB,MAAc,EACd,IAAW,EACX,OAAU;QAEV,IAAI,MAAW,CAAC;QAChB,IAAI,KAAwB,CAAC;QAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAE/D,IAAI;YACF,MAAM,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;SAC3B;QAAC,OAAO,GAAG,EAAE;YACZ,KAAK,GAAG,GAAG,CAAC;SACb;QAED,IAAI,KAAK,EAAE;YACT,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAS,CAAC,KAAK,CAAC,SAAS,EAAE,kBAAS,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;YAChF,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;SAClD;aAAM,IAAI,IAAA,qBAAS,EAAC,MAAM,CAAC,EAAE;YAC5B,MAAM;iBACH,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;gBACf,MAAM,OAAO,GAAG,SAAS,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;gBAClD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;gBACtE,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACnD,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACb,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAS,CAAC,KAAK,CAAC,SAAS,EAAE,kBAAS,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC;gBAC9E,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACnD,CAAC,CAAC,CAAC;SACN;aAAM;YACL,MAAM,OAAO,GAAG,SAAS,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;YAClD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;YACtE,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;SAClD;IACH,CAAC;IAED,SAAS,CAAU,MAAc,EAAE,OAAkC;QACnE,MAAM,cAAc,GAAG,CAAC,SAAiB,EAAE,MAAc,EAAE,OAA4B,EAAE,IAAW,EAAE,EAAE;YACtG,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QAC3D,CAAC,CAAC;QACF,OAAO,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACzD,CAAC;IAED,iBAAiB,CAAC,OAAkC;QAClD,MAAM,cAAc,GAAG,CAAC,SAAiB,EAAE,MAAc,EAAE,OAA4B,EAAE,IAAW,EAAE,EAAE;YACtG,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;QACrE,CAAC,CAAC;QAEF,OAAO,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IACvD,CAAC;IAED,qBAAqB,CAAC,kBAAsC;QAC1D,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;IAC/C,CAAC;IAED,MAAM;QACJ,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE;YAC/C,eAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACnB,8CAA8C;YAC9C,eAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAEf,MAAM,OAAO,GAAG,eAAM,CAAC,KAAK,EAAE,CAAC;YAE/B,MAAM,SAAS,GAAG,eAAM,CAAC,MAAM,EAAE,CAAC;YAClC,MAAM,KAAK,GAAG,eAAM,CAAC,KAAK,EAAE,CAAC;YAE7B,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;gBACvC,qEAAqE;gBACrE,IAAI,OAAO,YAAY,KAAK,UAAU,EAAE;oBACtC,aAAa;oBACb,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;iBACnD;gBACD,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;aACxC;YAED,QAAQ,OAAO,EAAE;gBACf,KAAK,sBAAa,CAAC,QAAQ,CAAC,CAAC;oBAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;oBAChD,IAAI,CAAC,QAAQ,EAAE;wBACb,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAoC,SAAS,EAAE,CAAC,CAAC;wBACnE,OAAO;qBACR;oBAED,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;oBAElC,MAAM,MAAM,GAAG,eAAM,CAAC,MAAM,EAAE,CAAC;oBAC/B,2CAA2C;oBAE3C,wCAAwC;oBACxC,IAAI,MAAM,KAAK,kBAAS,CAAC,GAAG,EAAE;wBAC5B,yBAAyB;wBACzB,IAAA,cAAM,EAAC,KAAK,KAAK,kBAAS,CAAC,IAAI,EAAE,uCAAuC,CAAC,CAAC;wBAC1E,MAAM,OAAO,GAAG,eAAM,CAAC,iBAAiB,EAAE,CAAC;wBAC3C,MAAM,KAAK,GAAG,IAAA,sBAAU,EAAC,OAAO,CAAC,CAAC;wBAClC,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;wBAC7B,OAAO;qBACR;oBAED,IAAI,KAAK,KAAK,kBAAS,CAAC,MAAM,EAAE;wBAC9B,MAAM,UAAU,GAAG,eAAM,CAAC,SAAS,EAAE,CAAC;wBACtC,MAAM,MAAM,GAAG,eAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;wBACzC,QAAQ,CAAC,WAAW,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;wBACzC,OAAO;qBACR;oBAED,MAAM,OAAO,GAAG,eAAM,CAAC,iBAAiB,EAAE,CAAC;oBAC3C,IAAI,KAAK,KAAK,kBAAS,CAAC,IAAI,EAAE;wBAC5B,QAAQ,CAAC,WAAW,EAAE,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;qBACvD;yBAAM;wBACL,QAAQ,CAAC,WAAW,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;qBAC3C;oBACD,MAAM;iBACP;gBACD,KAAK,sBAAa,CAAC,YAAY,CAAC;gBAChC,eAAe;gBACf,KAAK,sBAAa,CAAC,OAAO,CAAC,CAAC;oBAC1B,MAAM,MAAM,GAAG,eAAM,CAAC,iBAAiB,EAAE,CAAC;oBAC1C,MAAM,OAAO,GAAG,iCAAwB,CAAC,IAAI,EAAqB,CAAC;oBAEnE,MAAM,UAAU,GAAG,eAAM,CAAC,SAAS,EAAE,CAAC;oBACtC,MAAM,OAAO,GAAG,eAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;oBAC1C,MAAM,SAAS,GAAG,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;oBAE/D,MAAM,IAAI,GAAG,SAAS,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;oBAEnD,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;oBAChE,MAAM;iBACP;gBACD,KAAK,sBAAa,CAAC,MAAM,CAAC,CAAC;oBACzB,MAAM,uBAAuB,GAAG,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;oBAC9E,IAAI,uBAAuB,EAAE;wBAC3B,uBAAuB,CAAC,MAAM,EAAE,CAAC;qBAClC;yBAAM;wBACL,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;qBAC5C;oBACD,MAAM;iBACP;gBACD,OAAO,CAAC,CAAC;oBACP,MAAM;iBACP;aACF;QACH,CAAC,CAAC,CAAC;QACH,IAAI,SAAS,EAAE;YACb,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SACjC;IACH,CAAC;IAED,OAAO;QACL,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;IAC5B,CAAC;IAES,eAAe,CAAC,OAAe,EAAE,SAAiB,EAAE,MAAc,EAAE,OAAwB,EAAE,IAAW;QACjH,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACtC,IAAI,UAAU,EAAE;YACd,MAAM,WAAW,GAAG,IAAI,mCAAuB,EAAE,CAAC;YAClD,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;YAC3D,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YAE7B,IAAI,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;gBAC9C,WAAW,CAAC,MAAM,EAAE,CAAC;gBACrB,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;aAC/C;SACF;QAED,IAAI,OAAO,KAAK,sBAAa,CAAC,OAAO,EAAE;YACrC,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;YAC3E,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;SACxE;aAAM;YACL,MAAM,SAAS,GAAG,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;YAChF,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;SAC7E;IACH,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,MAAiB,EAAE,UAAkC,EAAE;QAC3E,OAAO,IAAI,cAAc,CAAC,IAAI,kCAAqB,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC;IACxE,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,MAAkB,EAAE,UAAkC,EAAE;QAC1E,OAAO,IAAI,cAAc,CAAC,IAAI,gCAAmB,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC;IACtE,CAAC;CACF;AAxSD,wCAwSC"}
@@ -0,0 +1,4 @@
1
+ export declare class MethodTimeoutError extends Error {
2
+ constructor(method: string);
3
+ }
4
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/common/rpc/errors.ts"],"names":[],"mappings":"AAAA,qBAAa,kBAAmB,SAAQ,KAAK;gBAC/B,MAAM,EAAE,MAAM;CAG3B"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MethodTimeoutError = void 0;
4
+ class MethodTimeoutError extends Error {
5
+ constructor(method) {
6
+ super(`method ${method} timeout`);
7
+ }
8
+ }
9
+ exports.MethodTimeoutError = MethodTimeoutError;
10
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/common/rpc/errors.ts"],"names":[],"mappings":";;;AAAA,MAAa,kBAAmB,SAAQ,KAAK;IAC3C,YAAY,MAAc;QACxB,KAAK,CAAC,UAAU,MAAM,UAAU,CAAC,CAAC;IACpC,CAAC;CACF;AAJD,gDAIC"}
@@ -0,0 +1,3 @@
1
+ export * from './types';
2
+ export * from './protocol-repository';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/common/rpc/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,uBAAuB,CAAC"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./types"), exports);
5
+ tslib_1.__exportStar(require("./protocol-repository"), exports);
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/common/rpc/index.ts"],"names":[],"mappings":";;;AAAA,kDAAwB;AACxB,gEAAsC"}