@scrypted/server 0.1.5 → 0.1.8

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.

Potentially problematic release.


This version of @scrypted/server might be problematic. Click here for more details.

Files changed (46) hide show
  1. package/dist/listen-zero.js +38 -0
  2. package/dist/listen-zero.js.map +1 -0
  3. package/dist/plugin/media.js +1 -1
  4. package/dist/plugin/media.js.map +1 -1
  5. package/dist/plugin/plugin-console.js +1 -1
  6. package/dist/plugin/plugin-console.js.map +1 -1
  7. package/dist/plugin/plugin-host.js +33 -45
  8. package/dist/plugin/plugin-host.js.map +1 -1
  9. package/dist/plugin/plugin-http.js +7 -2
  10. package/dist/plugin/plugin-http.js.map +1 -1
  11. package/dist/plugin/plugin-npm-dependencies.js +3 -1
  12. package/dist/plugin/plugin-npm-dependencies.js.map +1 -1
  13. package/dist/plugin/plugin-repl.js +1 -1
  14. package/dist/plugin/plugin-repl.js.map +1 -1
  15. package/dist/plugin/runtime/node-fork-worker.js +8 -1
  16. package/dist/plugin/runtime/node-fork-worker.js.map +1 -1
  17. package/dist/rpc-serializer.js +121 -0
  18. package/dist/rpc-serializer.js.map +1 -0
  19. package/dist/runtime.js +2 -38
  20. package/dist/runtime.js.map +1 -1
  21. package/dist/scrypted-server-main.js +13 -11
  22. package/dist/scrypted-server-main.js.map +1 -1
  23. package/dist/services/plugin.js +4 -10
  24. package/dist/services/plugin.js.map +1 -1
  25. package/dist/threading.js +6 -28
  26. package/dist/threading.js.map +1 -1
  27. package/package.json +1 -1
  28. package/src/listen-zero.ts +34 -0
  29. package/src/plugin/media.ts +1 -1
  30. package/src/plugin/plugin-console.ts +1 -1
  31. package/src/plugin/plugin-host.ts +42 -43
  32. package/src/plugin/plugin-http.ts +8 -3
  33. package/src/plugin/plugin-npm-dependencies.ts +3 -1
  34. package/src/plugin/plugin-repl.ts +1 -1
  35. package/src/plugin/runtime/node-fork-worker.ts +8 -1
  36. package/src/plugin/runtime/runtime-worker.ts +2 -1
  37. package/src/rpc-serializer.ts +141 -0
  38. package/src/runtime.ts +3 -43
  39. package/src/scrypted-server-main.ts +16 -12
  40. package/src/services/plugin.ts +4 -10
  41. package/src/threading.ts +8 -35
  42. package/test/rpc-duplex-test.ts +30 -0
  43. package/test/threading-test.ts +29 -0
  44. package/dist/plugin/listen-zero.js +0 -23
  45. package/dist/plugin/listen-zero.js.map +0 -1
  46. package/src/plugin/listen-zero.ts +0 -21
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.listenZeroSingleClient = exports.listenZero = void 0;
7
+ const events_1 = require("events");
8
+ const net_1 = __importDefault(require("net"));
9
+ async function listenZero(server) {
10
+ server.listen(0);
11
+ await (0, events_1.once)(server, 'listening');
12
+ return server.address().port;
13
+ }
14
+ exports.listenZero = listenZero;
15
+ async function listenZeroSingleClient() {
16
+ const server = new net_1.default.Server();
17
+ const port = await listenZero(server);
18
+ const clientPromise = new Promise((resolve, reject) => {
19
+ const timeout = setTimeout(() => {
20
+ server.close();
21
+ reject(new Error('timeout waiting for client'));
22
+ }, 30000);
23
+ server.on('connection', client => {
24
+ server.close();
25
+ clearTimeout(timeout);
26
+ resolve(client);
27
+ });
28
+ });
29
+ return {
30
+ server,
31
+ url: `tcp://127.0.0.1:${port}`,
32
+ host: '127.0.0.1',
33
+ port,
34
+ clientPromise,
35
+ };
36
+ }
37
+ exports.listenZeroSingleClient = listenZeroSingleClient;
38
+ //# sourceMappingURL=listen-zero.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listen-zero.js","sourceRoot":"","sources":["../src/listen-zero.ts"],"names":[],"mappings":";;;;;;AAAA,mCAA8B;AAC9B,8CAAsB;AAEf,KAAK,UAAU,UAAU,CAAC,MAAkB;IAC/C,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACjB,MAAM,IAAA,aAAI,EAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAChC,OAAQ,MAAM,CAAC,OAAO,EAAsB,CAAC,IAAI,CAAC;AACtD,CAAC;AAJD,gCAIC;AAEM,KAAK,UAAU,sBAAsB;IACxC,MAAM,MAAM,GAAG,IAAI,aAAG,CAAC,MAAM,EAAE,CAAC;IAChC,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,CAAC;IAEtC,MAAM,aAAa,GAAG,IAAI,OAAO,CAAa,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC9D,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC,CAAC;QACpD,CAAC,EAAE,KAAK,CAAC,CAAA;QACT,MAAM,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,CAAC,EAAE;YAC7B,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,YAAY,CAAC,OAAO,CAAC,CAAC;YAEtB,OAAO,CAAC,MAAM,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAA;IAEF,OAAO;QACH,MAAM;QACN,GAAG,EAAE,mBAAmB,IAAI,EAAE;QAC9B,IAAI,EAAE,WAAW;QACjB,IAAI;QACJ,aAAa;KAChB,CAAA;AACL,CAAC;AAxBD,wDAwBC"}
@@ -217,7 +217,7 @@ class MediaManagerBase {
217
217
  throw new Error('no mimeType provided');
218
218
  if (mimeType === types_1.ScryptedMimeTypes.MediaObject)
219
219
  return data;
220
- if (data.constructor.name !== Buffer.name)
220
+ if (data.constructor?.name === Object.name)
221
221
  data = Buffer.from(JSON.stringify(data));
222
222
  const sourceId = typeof options?.sourceId === 'string' ? options?.sourceId : this.getPluginDeviceId();
223
223
  class MediaObjectImpl {
@@ -1 +1 @@
1
- {"version":3,"file":"media.js","sourceRoot":"","sources":["../../src/plugin/media.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"media.js","sourceRoot":"","sources":["../../src/plugin/media.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createConsoleServer = void 0;
4
- const listen_zero_1 = require("./listen-zero");
4
+ const listen_zero_1 = require("../listen-zero");
5
5
  const net_1 = require("net");
6
6
  const events_1 = require("events");
7
7
  const stream_1 = require("stream");
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-console.js","sourceRoot":"","sources":["../../src/plugin/plugin-console.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin-console.js","sourceRoot":"","sources":["../../src/plugin/plugin-console.ts"],"names":[],"mappings":"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"}
@@ -30,10 +30,9 @@ const fs_1 = __importDefault(require("fs"));
30
30
  const mkdirp_1 = __importDefault(require("mkdirp"));
31
31
  const path_1 = __importDefault(require("path"));
32
32
  const rimraf_1 = __importDefault(require("rimraf"));
33
- const ws_1 = require("ws");
34
33
  const rpc_1 = require("../rpc");
34
+ const rpc_serializer_1 = require("../rpc-serializer");
35
35
  const sleep_1 = require("../sleep");
36
- const buffer_serializer_1 = require("./buffer-serializer");
37
36
  const media_1 = require("./media");
38
37
  const plugin_api_1 = require("./plugin-api");
39
38
  const plugin_console_1 = require("./plugin-console");
@@ -137,23 +136,8 @@ class PluginHost {
137
136
  try {
138
137
  if (socket.request.url.indexOf('/api') !== -1) {
139
138
  if (socket.request.url.indexOf('/public') !== -1) {
140
- socket.send(JSON.stringify({
141
- // @ts-expect-error
142
- id: socket.id,
143
- }));
144
- const timeout = new Promise((_, rj) => setTimeout(() => rj(new Error('timeout')), 10000));
145
- try {
146
- await Promise.race([
147
- (0, ws_1.once)(socket, '/api/activate'),
148
- timeout,
149
- ]);
150
- // client will send a start request when it's ready to process events.
151
- await (0, ws_1.once)(socket, 'message');
152
- }
153
- catch (e) {
154
- socket.close();
155
- return;
156
- }
139
+ socket.close();
140
+ return;
157
141
  }
158
142
  await this.createRpcIoPeer(socket);
159
143
  return;
@@ -319,49 +303,53 @@ class PluginHost {
319
303
  logger.log('e', `${this.pluginName} error ${e}`);
320
304
  disconnect();
321
305
  });
306
+ this.worker.on('rpc', (message, sendHandle) => {
307
+ this.createRpcPeer(sendHandle);
308
+ });
322
309
  this.peer.params.updateStats = (stats) => {
323
310
  this.stats = stats;
324
311
  };
325
312
  }
326
313
  async createRpcIoPeer(socket) {
327
- let connected = true;
328
- const rpcPeer = new rpc_1.RpcPeer(`api/${this.pluginId}`, 'web', (message, reject, serializationContext) => {
329
- if (!connected) {
330
- reject?.(new Error('peer disconnected'));
331
- return;
332
- }
333
- const buffers = serializationContext?.buffers;
334
- if (buffers) {
335
- for (const buffer of buffers) {
336
- socket.send(buffer);
337
- }
338
- }
339
- socket.send(JSON.stringify(message));
314
+ const serializer = (0, rpc_serializer_1.createRpcSerializer)({
315
+ sendMessageBuffer: buffer => socket.send(buffer),
316
+ sendMessageFinish: message => socket.send(JSON.stringify(message)),
340
317
  });
341
- let pendingSerializationContext = {};
342
318
  socket.on('message', data => {
343
319
  if (data.constructor === Buffer || data.constructor === ArrayBuffer) {
344
- pendingSerializationContext = pendingSerializationContext || {
345
- buffers: [],
346
- };
347
- const buffers = pendingSerializationContext.buffers;
348
- buffers.push(Buffer.from(data));
349
- return;
320
+ serializer.onMessageBuffer(Buffer.from(data));
321
+ }
322
+ else {
323
+ serializer.onMessageFinish(JSON.parse(data));
350
324
  }
351
- const messageSerializationContext = pendingSerializationContext;
352
- pendingSerializationContext = undefined;
353
- rpcPeer.handleMessage(JSON.parse(data), messageSerializationContext);
354
325
  });
326
+ const rpcPeer = new rpc_1.RpcPeer(`api/${this.pluginId}`, 'engine.io', (message, reject, serializationContext) => {
327
+ try {
328
+ serializer.sendMessage(message, reject, serializationContext);
329
+ }
330
+ catch (e) {
331
+ reject?.(e);
332
+ }
333
+ });
334
+ serializer.setupRpcPeer(rpcPeer);
355
335
  // wrap the host api with a connection specific api that can be torn down on disconnect
356
336
  const api = new plugin_api_1.PluginAPIProxy(this.api, await this.peer.getParam('mediaManager'));
357
337
  const kill = () => {
358
- connected = false;
359
- rpcPeer.kill('engine.io connection closed.');
338
+ serializer.onDisconnected();
360
339
  api.removeListeners();
361
340
  };
362
341
  socket.on('close', kill);
363
342
  socket.on('error', kill);
364
- rpcPeer.addSerializer(Buffer, 'Buffer', new buffer_serializer_1.SidebandBufferSerializer());
343
+ return (0, plugin_remote_1.setupPluginRemote)(rpcPeer, api, null, () => this.scrypted.stateManager.getSystemState());
344
+ }
345
+ async createRpcPeer(duplex) {
346
+ const rpcPeer = (0, rpc_serializer_1.createDuplexRpcPeer)(`api/${this.pluginId}`, 'duplex', duplex, duplex);
347
+ // wrap the host api with a connection specific api that can be torn down on disconnect
348
+ const api = new plugin_api_1.PluginAPIProxy(this.api, await this.peer.getParam('mediaManager'));
349
+ const kill = () => {
350
+ api.removeListeners();
351
+ };
352
+ duplex.on('close', kill);
365
353
  return (0, plugin_remote_1.setupPluginRemote)(rpcPeer, api, null, () => this.scrypted.stateManager.getSystemState());
366
354
  }
367
355
  }
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-host.js","sourceRoot":"","sources":["../../src/plugin/plugin-host.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin-host.js","sourceRoot":"","sources":["../../src/plugin/plugin-host.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AACA,sDAA6B;AAC7B,oDAA4B;AAC5B,8CAAgC;AAChC,4CAAoB;AACpB,oDAA4B;AAE5B,gDAAwB;AACxB,oDAA4B;AAM5B,gCAAiC;AACjC,sDAA6E;AAE7E,oCAAiC;AAEjC,mCAA+C;AAC/C,6CAAwF;AACxF,qDAAsE;AAEtE,uDAAkD;AAClD,6DAAkD;AAClD,mDAAoD;AACpD,mDAAwE;AACxE,iEAA4D;AAC5D,qEAAgE;AAChE,2DAA8D;AAG9D,MAAM,aAAa,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC,OAAO,CAAC;AAE5D,MAAa,UAAU;IACnB,MAAM,CAAgB;IACtB,IAAI,CAAU;IACd,QAAQ,CAAS;IACjB,MAAM,CAAe;IACrB,QAAQ,CAAkB;IAC1B,MAAM,CAAe;IACrB,EAAE,GAAa,IAAI,EAAE,CAAC,MAAM,CAAC;QACzB,WAAW,EAAE,MAAM;QACnB,iBAAiB,EAAE,IAAI;QACvB,IAAI,EAAE,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE;YACpB,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,2BAA2B,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACtE,QAAQ,CAAC,SAAS,EAAE;gBAChB,MAAM,EAAE,MAAM;gBACd,WAAW,EAAE,IAAI;aACpB,CAAC,CAAA;QACN,CAAC;KACJ,CAAC,CAAC;IACH,EAAE,GAAgC,EAAE,CAAC;IACrC,GAAG,CAAgB;IACnB,UAAU,CAAS;IACnB,WAAW,CAAM;IACjB,KAAK,CAGH;IACF,MAAM,GAAG,KAAK,CAAC;IACf,aAAa,CAAyB;IACtC,YAAY,CAAS;IAErB,IAAI;QACA,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAChC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACnB,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;QAChB,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;YACpC,CAAC,CAAC,KAAK,EAAE,CAAC;SACb;QACD,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QAEb,MAAM,SAAS,GAAG,IAAI,GAAG,CAAS,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACxI,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAE1C,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,QAAQ;QACJ,OAAO,IAAI,CAAC,UAAU,IAAI,gBAAgB,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAAc;QAC7B,MAAM,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACrG,MAAM,EAAE,GAAG,MAAM,mBAAmB,CAAC;QACrC,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;QACrE,yDAAyD;QACzD,uCAAuC;QACvC,sCAAsC;QACtC,qFAAqF;QACrF,2BAA2B;QAC3B,OAAO,CAAC,QAAQ,CAAC,KAAK,IAAI,EAAE;YACxB,IAAI,cAAc,GAAG,iBAAiB,CAAC;YACvC,IAAI,CAAC,cAAc,EAAE;gBACjB,mFAAmF;gBACnF,0DAA0D;gBAC1D,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;gBAC7C,IAAI;oBACA,IAAI,MAAM,CAAC,OAAO,EAAE,UAAU;wBAC1B,cAAc,GAAG,CAAC,CAAC,MAAM,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;iBAC/G;gBACD,OAAO,CAAC,EAAE;oBACN,uDAAuD;oBACvD,cAAc,GAAG,IAAI,CAAC;iBACzB;aACJ;YACD,IAAI,cAAc;gBACd,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;QACH,OAAO,EAAE,CAAC,GAAG,CAAC;IAClB,CAAC;IAED,YAAY,QAAyB,EAAE,MAAc,EAAE,WAAyB;QAC5E,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC;QAC3C,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QACtC,IAAI,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAClD,mDAAmD;QACnD,MAAM,GAAG,SAAS,CAAC;QAEnB,MAAM,cAAc,GAAG,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC;QACpE,MAAM,MAAM,GAAG,QAAQ,CAAC,eAAe,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;QAElF,MAAM,MAAM,GAAG,IAAA,iCAAiB,GAAE,CAAC;QACnC,MAAM,YAAY,GAAG,IAAA,kCAAkB,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEvD,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE;YACzB,sBAAsB,EAAE,YAAY;SACvC,EAAE,WAAW,CAAC,CAAC;QAEhB,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YACtC,IAAI;gBACA,IAAI;oBACA,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE;wBAC3C,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE;4BAC9C,MAAM,CAAC,KAAK,EAAE,CAAC;4BACf,OAAO;yBACV;wBAED,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;wBACnC,OAAO;qBACV;iBACJ;gBACD,OAAO,CAAC,EAAE;oBACN,MAAM,CAAC,KAAK,EAAE,CAAC;oBACf,OAAO;iBACV;gBAED,MAAM,EACF,eAAe,EACf,YAAY,GACf,GAAI,MAAM,CAAC,OAAe,CAAC,QAAQ,CAAC;gBAErC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAkB,YAAY,CAAC,GAAG,CAAC,CAAC;gBAE3E,mBAAmB;gBACnB,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC;gBAErB,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE;oBAC3B,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,CAAA;gBAC/C,CAAC,CAAC,CAAC;gBACH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE;oBACxB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;gBACrC,CAAC,CAAC,CAAC;gBAEH,MAAM,OAAO,CAAC,YAAY,CAAC,eAAe,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;aAC7D;YACD,OAAO,CAAC,EAAE;gBACN,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,CAAC,CAAC,CAAC;gBAC3C,MAAM,CAAC,KAAK,EAAE,CAAC;aAClB;QACL,CAAC,CAAC,CAAA;QAEF,MAAM,IAAI,GAAG,IAAI,CAAC;QAElB,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC;QAC9C,MAAM,YAAY,GAAG,OAAO,KAAK,QAAQ;YACrC,CAAC,CAAC,IAAI,4BAAoB,CAAC,cAAc,EAAE,QAAQ,CAAC,YAAY,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YACzH,CAAC,CAAC,SAAS,CAAC;QAEhB,IAAI,CAAC,GAAG,GAAG,IAAI,+BAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;QAE1E,MAAM,MAAM,GAAG,cAAI,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;QAC9C,MAAM,cAAc,GAAG,IAAI,CAAC;QAC5B,MAAM,IAAI,GAAG,cAAc,GAAG,gBAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAClG,MAAM,WAAW,GAAG,GAAG,IAAI,MAAM,CAAC;QAClC,MAAM,OAAO,GAAG,cAAI,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAC/C,IAAI,CAAC,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;QACjD;YACI,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;YAClC,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;gBACzB,gBAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACvB,gBAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACpB,gBAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACvB,YAAE,CAAC,aAAa,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,SAAS,CAAC,CAAC;gBAC/D,MAAM,MAAM,GAAG,IAAI,iBAAM,CAAC,SAAS,CAAC,CAAC;gBACrC,MAAM,CAAC,YAAY,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE,IAAI,CAAC,CAAC;gBAC5D,YAAE,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;aACpC;SACJ;QAED,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;QAC9C,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAE3C,MAAM,aAAa,GAAG,IAAA,iCAAiB,EAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,cAAc,EAAE,CAAC,CAAC;QAC/H,MAAM,IAAI,GAAG,CAAC,KAAK,IAAI,EAAE;YACrB,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC;YAEnC,KAAK,MAAM,YAAY,IAAI,QAAQ,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAClE,MAAM,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,QAAQ,EAAE,YAAY,CAAC,GAAG,EAAE,YAAY,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;aACjG;YAED,MAAM,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,YAAY,CAAC,cAAc,EAAE,CAAC,CAAC;YACpE,MAAM,SAAS,GAAG,WAAW,EAAE,SAAS,CAAC;YACzC,IAAI,SAAS,EAAE;gBACX,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;gBACxC,IAAI;oBACA,MAAM,SAAS,CAAC;oBAChB,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;oBACnC,MAAM,IAAA,aAAK,EAAC,IAAI,CAAC,CAAC;iBACrB;gBACD,OAAO,CAAC,EAAE;oBACN,OAAO,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC;iBACvC;aACJ;YAED,MAAM,IAAI,GAAG,sDAAsD,CAAC;YACpE,IAAI;gBACA,MAAM,QAAQ,GAAG,OAAO,KAAK,QAAQ,CAAC;gBACtC,MAAM,cAAc,GAA+B;oBAC/C,0EAA0E;oBAC1E,2BAA2B;oBAC3B,QAAQ,EAAE,QAAQ;wBACd,CAAC,CAAC,WAAW;4BACT,CAAC,CAAC,GAAG,MAAM,aAAa;4BACxB,CAAC,CAAC,OAAO;wBACb,CAAC,CAAC,WAAW;4BACT,CAAC,CAAC,wBAAwB;4BAC1B,CAAC,CAAC,IAAI,IAAI,CAAC,QAAQ,iBAAiB;oBAC5C,YAAY,EAAE,IAAI,CAAC,YAAY;iBAClC,CAAC;gBACF,4EAA4E;gBAC5E,yCAAyC;gBACzC,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;gBAChF,6CAA6C;gBAC7C,SAAS,GAAG,SAAS,CAAC;gBACtB,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC;gBACnC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;gBAC7C,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;gBACvB,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;aAC7B;YACD,OAAO,CAAC,EAAE;gBACN,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;gBACtB,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,qBAAqB,CAAC,EAAE,CAAC,CAAC;gBAC1C,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC;gBACtC,MAAM,CAAC,CAAC;aACX;QACL,CAAC,CAAC,EAAE,CAAC;QAEL,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,MAAM,GAAG,IAAI,+BAAU,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;QAE/E,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;YACX,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,CAAC,CAAC,CAAC;YAC1C,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC;QAC/B,CAAC,CAAC,CAAC;IACP,CAAC;IAED,eAAe,CAAC,MAAc,EAAE,GAAQ,EAAE,WAAwB;QAC9D,IAAI,SAAS,GAAG,IAAI,CAAC;QAErB,IAAI,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,KAAK,QAAQ,EAAE;YAChD,IAAI,CAAC,MAAM,GAAG,IAAI,mCAAmB,CAAC,IAAI,CAAC,QAAQ,EAAE;gBACjD,GAAG;gBACH,WAAW;aACd,CAAC,CAAC;SACN;aACI;YACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,oBAAoB,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC,MAAM,CAAC,EAAE;gBAC7I,IAAI,CAAC,MAAM,GAAG,IAAI,iCAAc,CAAC,IAAI,CAAC,QAAQ,EAAE;oBAC5C,GAAG;oBACH,WAAW;iBACd,CAAC,CAAC;aACN;iBACI;gBACD,IAAI,CAAC,MAAM,GAAG,IAAI,qCAAgB,CAAC,IAAI,CAAC,QAAQ,EAAE;oBAC9C,GAAG;oBACH,WAAW;iBACd,CAAC,CAAC;aACN;SACJ;QAED,IAAI,CAAC,IAAI,GAAG,IAAI,aAAO,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC/D,IAAI,SAAS,EAAE;gBACX,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;aACrC;iBACI,IAAI,MAAM,EAAE;gBACb,MAAM,CAAC,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;aAC1C;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEpC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QACpE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QACtE,MAAM,aAAa,GAAG,mBAAmB,aAAa,qBAAqB,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,IAAI,CAAC;QACzH,IAAI,CAAC,aAAa,GAAG,IAAA,oCAAmB,EAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QAEhG,MAAM,UAAU,GAAG,GAAG,EAAE;YACpB,SAAS,GAAG,KAAK,CAAC;YAClB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAC1C,CAAC,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YACzB,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,UAAU,QAAQ,CAAC,CAAC;YAC5C,UAAU,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,EAAE,GAAG,EAAE;YAC9B,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,UAAU,eAAe,CAAC,CAAC;YACnD,UAAU,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;YAC1C,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,UAAU,WAAW,IAAI,IAAI,MAAM,EAAE,CAAC,CAAC;YAC/D,UAAU,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE;YACxB,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,UAAU,UAAU,CAAC,EAAE,CAAC,CAAC;YACjD,UAAU,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE;YAC1C,IAAI,CAAC,aAAa,CAAC,UAAwB,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,CAAC,KAAU,EAAE,EAAE;YAC1C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACvB,CAAC,CAAA;IACL,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,MAAsB;QACxC,MAAM,UAAU,GAAG,IAAA,oCAAmB,EAAC;YACnC,iBAAiB,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;YAChD,iBAAiB,EAAE,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;SACrE,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE;YACxB,IAAI,IAAI,CAAC,WAAW,KAAK,MAAM,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW,EAAE;gBACjE,UAAU,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;aACjD;iBACI;gBACD,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,IAAc,CAAC,CAAC,CAAC;aAC1D;QACL,CAAC,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,IAAI,aAAO,CAAC,OAAO,IAAI,CAAC,QAAQ,EAAE,EAAE,WAAW,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,oBAAoB,EAAE,EAAE;YACvG,IAAI;gBACA,UAAU,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,oBAAoB,CAAC,CAAC;aACjE;YACD,OAAO,CAAC,EAAE;gBACN,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;aACf;QACL,CAAC,CAAC,CAAC;QACH,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAEjC,uFAAuF;QACvF,MAAM,GAAG,GAAG,IAAI,2BAAc,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC;QACnF,MAAM,IAAI,GAAG,GAAG,EAAE;YACd,UAAU,CAAC,cAAc,EAAE,CAAC;YAC5B,GAAG,CAAC,eAAe,EAAE,CAAC;QAC1B,CAAC,CAAA;QACD,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACzB,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAEzB,OAAO,IAAA,iCAAiB,EAAC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,cAAc,EAAE,CAAC,CAAC;IACpG,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,MAAc;QAC9B,MAAM,OAAO,GAAG,IAAA,oCAAmB,EAAC,OAAO,IAAI,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAEtF,uFAAuF;QACvF,MAAM,GAAG,GAAG,IAAI,2BAAc,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC;QACnF,MAAM,IAAI,GAAG,GAAG,EAAE;YACd,GAAG,CAAC,eAAe,EAAE,CAAC;QAC1B,CAAC,CAAC;QACF,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAEzB,OAAO,IAAA,iCAAiB,EAAC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,cAAc,EAAE,CAAC,CAAC;IACpG,CAAC;CACJ;AAtWD,gCAsWC"}
@@ -3,9 +3,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.PluginHttp = void 0;
6
+ exports.PluginHttp = exports.isConnectionUpgrade = void 0;
7
7
  const body_parser_1 = __importDefault(require("body-parser"));
8
8
  const ws_1 = require("ws");
9
+ function isConnectionUpgrade(headers) {
10
+ // connection:'keep-alive, Upgrade'
11
+ return headers.connection?.toLowerCase().includes('upgrade');
12
+ }
13
+ exports.isConnectionUpgrade = isConnectionUpgrade;
9
14
  class PluginHttp {
10
15
  app;
11
16
  wss = new ws_1.Server({ noServer: true });
@@ -29,7 +34,7 @@ class PluginHttp {
29
34
  });
30
35
  }
31
36
  async endpointHandler(req, res, isPublicEndpoint, isEngineIOEndpoint, handler) {
32
- const isUpgrade = req.headers.connection?.toLowerCase() === 'upgrade';
37
+ const isUpgrade = isConnectionUpgrade(req.headers);
33
38
  const end = (code, message) => {
34
39
  if (isUpgrade) {
35
40
  const socket = res.socket;
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-http.js","sourceRoot":"","sources":["../../src/plugin/plugin-http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin-http.js","sourceRoot":"","sources":["../../src/plugin/plugin-http.ts"],"names":[],"mappings":";;;;;;AACA,8DAAqC;AAGrC,2BAA0D;AAE1D,SAAgB,mBAAmB,CAAC,OAA4B;IAC5D,mCAAmC;IACnC,OAAO,OAAO,CAAC,UAAU,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AACjE,CAAC;AAHD,kDAGC;AAED,MAAsB,UAAU;IAGT;IAFnB,GAAG,GAAG,IAAI,WAAe,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IAE9C,YAAmB,GAAW;QAAX,QAAG,GAAH,GAAG,CAAQ;IAC9B,CAAC;IAED,aAAa;QACT,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,2CAA2C,EAAE,mCAAmC,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YAC1G,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QACtF,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,oCAAoC,EAAE,oCAAoC,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACpG,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QACvF,CAAC,CAAC,CAAC;QAEH,+BAA+B;QAC/B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,+BAA+B,EAAE,iCAAiC,EAAE,gBAAgB,EAAE,kBAAkB,CAAC,EAAE,qBAAU,CAAC,IAAI,EAAS,CAAC,CAAC;QAEnJ,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,+BAA+B,EAAE,iCAAiC,EAAE,uBAAuB,EAAE,yBAAyB,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YAChJ,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QACtF,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,wBAAwB,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,kBAAkB,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACpH,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QACvF,CAAC,CAAC,CAAC;IACP,CAAC;IAOD,KAAK,CAAC,eAAe,CAAC,GAAY,EAAE,GAAa,EAAE,gBAAyB,EAAE,kBAA2B,EACrG,OAA2F;QAE3F,MAAM,SAAS,GAAG,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEnD,MAAM,GAAG,GAAG,CAAC,IAAY,EAAE,OAAe,EAAE,EAAE;YAC1C,IAAI,SAAS,EAAE;gBACX,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;gBAC1B,MAAM,CAAC,KAAK,CAAC,YAAY,IAAI,IAAI,OAAO,MAAM;oBAC1C,MAAM,CAAC,CAAC;gBACZ,MAAM,CAAC,OAAO,EAAE,CAAC;aACpB;iBACI;gBACD,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACjB,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aACrB;QACL,CAAC,CAAC;QAEF,IAAI,CAAC,gBAAgB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE;YAC3C,GAAG,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,WAAW,CAAC,CAAA;YACvF,OAAO;SACV;QAED,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;QAClC,IAAI,QAAQ,GAAG,GAAG,CAAC;QACnB,IAAI,KAAK;YACL,QAAQ,GAAG,IAAI,KAAK,IAAI,QAAQ,EAAE,CAAC;QAEvC,IAAI,SAAS,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,WAAW,EAAE;YACjE,GAAG,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;YACtB,OAAO;SACV;QAED,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,QAAQ,EAAE,SAAS,EAAE,kBAAkB,CAAC,CAAC;QAC7F,IAAI,CAAC,UAAU,EAAE;YACb,GAAG,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;YACtB,OAAO;SACV;QAED,IAAI,QAAQ,GAAG,aAAa,QAAQ,EAAE,CAAC;QACvC,IAAI,gBAAgB;YAChB,QAAQ,IAAI,SAAS,CAAA;QAEzB,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;QAE5F,MAAM,WAAW,GAAgB;YAC7B,IAAI;YACJ,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,QAAQ;YACR,GAAG,EAAE,GAAG,CAAC,GAAG;YACZ,gBAAgB;YAChB,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ;SAChC,CAAC;QAEF,IAAI,kBAAkB,IAAI,CAAC,SAAS,IAAI,gBAAgB,EAAE;YACtD,GAAG,CAAC,MAAM,CAAC,6BAA6B,EAAE,GAAG,CAAC,CAAC;SAClD;QAED,IAAI,CAAC,kBAAkB,IAAI,SAAS,EAAE;YAClC,IAAI;gBACA,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,EAAG,GAAW,CAAC,WAAW,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE;oBAC3E,IAAI;wBACA,MAAM,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC;qBACrE;oBACD,OAAO,CAAC,EAAE;wBACN,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,CAAC,CAAC,CAAC;wBAC3C,EAAE,CAAC,KAAK,EAAE,CAAC;qBACd;gBACL,CAAC,CAAC,CAAC;aACN;YACD,OAAO,CAAC,EAAE;gBACN,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChB,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACvB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aACpB;SACJ;aACI;YACD,IAAI;gBACA,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;aAC9C;YACD,OAAO,CAAC,EAAE;gBACN,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChB,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACvB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aACpB;SACJ;IACL,CAAC;CACJ;AAzHD,gCAyHC"}
@@ -11,9 +11,11 @@ const path_1 = __importDefault(require("path"));
11
11
  const events_1 = require("events");
12
12
  const process_1 = __importDefault(require("process"));
13
13
  const mkdirp_1 = __importDefault(require("mkdirp"));
14
+ const semver_1 = __importDefault(require("semver"));
14
15
  function getPluginNodePath(name) {
15
16
  const pluginVolume = (0, plugin_volume_1.ensurePluginVolume)(name);
16
- const nodePrefix = path_1.default.join(pluginVolume, `${process_1.default.platform}-${process_1.default.arch}`);
17
+ const nodeMajorVersion = semver_1.default.parse(process_1.default.version).major;
18
+ const nodePrefix = path_1.default.join(pluginVolume, `${process_1.default.platform}-${process_1.default.arch}-${nodeMajorVersion}`);
17
19
  return nodePrefix;
18
20
  }
19
21
  exports.getPluginNodePath = getPluginNodePath;
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-npm-dependencies.js","sourceRoot":"","sources":["../../src/plugin/plugin-npm-dependencies.ts"],"names":[],"mappings":";;;;;;AAAA,mDAAqD;AACrD,4CAAoB;AACpB,kEAA0C;AAC1C,gDAAwB;AACxB,mCAA8B;AAC9B,sDAA8B;AAC9B,oDAA4B;AAE5B,SAAgB,iBAAiB,CAAC,IAAY;IAC1C,MAAM,YAAY,GAAG,IAAA,kCAAkB,EAAC,IAAI,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,cAAI,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,iBAAO,CAAC,QAAQ,IAAI,iBAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IAClF,OAAO,UAAU,CAAC;AACtB,CAAC;AAJD,8CAIC;AAEM,KAAK,UAAU,2BAA2B,CAAC,OAAgB,EAAE,WAAgB;IAChF,MAAM,UAAU,GAAG,iBAAiB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACvD,MAAM,eAAe,GAAG,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IAC9D,MAAM,+BAA+B,GAAG,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,wBAAwB,CAAC,CAAC;IAExF,IAAI,kBAAuB,CAAC;IAC5B,IAAI;QACA,kBAAkB,GAAG,IAAI,CAAC,KAAK,CAAC,YAAE,CAAC,YAAY,CAAC,+BAA+B,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;KAChG;IACD,OAAO,CAAC,EAAE;KACT;IAED,MAAM,EAAE,oBAAoB,EAAE,GAAG,WAAW,CAAC;IAC7C,IAAI,CAAC,oBAAoB;QACrB,OAAO;IACX,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,MAAM;QACzC,OAAO;IACX,MAAM,2BAA2B,GAAG,kBAAkB,EAAE,YAAY,IAAI,EAAE,CAAC;IAE3E,IAAI,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,2BAA2B,CAAC,EAAE;QACtF,OAAO,CAAC,GAAG,CAAC,mCAAmC,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC;QACvF,OAAO;KACV;IAED,OAAO,CAAC,GAAG,CAAC,gCAAgC,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC;IAEpF,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;IAC/C,OAAO,CAAC,YAAY,GAAG,OAAO,CAAC,oBAAoB,CAAC;IACpD,OAAO,OAAO,CAAC,oBAAoB,CAAC;IACpC,OAAO,OAAO,CAAC,eAAe,CAAC;IAE/B,gBAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACxB,YAAE,CAAC,aAAa,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IAE3D,MAAM,EAAE,GAAG,uBAAa,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE;QACvE,GAAG,EAAE,UAAU;QACf,KAAK,EAAE,SAAS;KACnB,CAAC,CAAC;IAEH,MAAM,IAAA,aAAI,EAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IACvB,IAAI,EAAE,CAAC,QAAQ,KAAK,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,yCAAyC,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC;IAE7E,YAAE,CAAC,aAAa,CAAC,+BAA+B,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3E,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;AAClD,CAAC;AA7CD,kEA6CC"}
1
+ {"version":3,"file":"plugin-npm-dependencies.js","sourceRoot":"","sources":["../../src/plugin/plugin-npm-dependencies.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.createREPLServer = void 0;
7
- const listen_zero_1 = require("./listen-zero");
7
+ const listen_zero_1 = require("../listen-zero");
8
8
  const net_1 = require("net");
9
9
  const events_1 = require("events");
10
10
  const repl_1 = __importDefault(require("repl"));
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-repl.js","sourceRoot":"","sources":["../../src/plugin/plugin-repl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin-repl.js","sourceRoot":"","sources":["../../src/plugin/plugin-repl.ts"],"names":[],"mappings":"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"}
@@ -27,7 +27,14 @@ class NodeForkWorker extends child_process_worker_1.ChildProcessWorker {
27
27
  this.setupWorker();
28
28
  }
29
29
  setupRpcPeer(peer) {
30
- this.worker.on('message', message => peer.handleMessage(message));
30
+ this.worker.on('message', (message, sendHandle) => {
31
+ if (sendHandle) {
32
+ this.emit('rpc', message, sendHandle);
33
+ }
34
+ else {
35
+ peer.handleMessage(message);
36
+ }
37
+ });
31
38
  peer.transportSafeArgumentTypes.add(Buffer.name);
32
39
  }
33
40
  send(message, reject) {
@@ -1 +1 @@
1
- {"version":3,"file":"node-fork-worker.js","sourceRoot":"","sources":["../../../src/plugin/runtime/node-fork-worker.ts"],"names":[],"mappings":";;;;;;AACA,kEAA0C;AAC1C,gDAAwB;AAExB,iEAA4D;AAC5D,wEAA+D;AAE/D,MAAa,cAAe,SAAQ,yCAAkB;IAElD,YAAY,QAAgB,EAAE,OAA6B;QACvD,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAEzB,MAAM,EAAC,GAAG,EAAE,WAAW,EAAC,GAAG,OAAO,CAAC;QAEnC,MAAM,QAAQ,GAAa,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACpD,IAAI,WAAW,EAAE;YACb,QAAQ,CAAC,IAAI,CAAC,qBAAqB,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC;SACjE;QAED,IAAI,CAAC,MAAM,GAAG,uBAAa,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE;YAC9E,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC;YACtC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE;gBACrC,SAAS,EAAE,cAAI,CAAC,IAAI,CAAC,IAAA,2CAAiB,EAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC;aACzE,CAAC;YACF,aAAa,EAAE,UAAU;YACzB,QAAQ;SACX,CAAC,CAAC;QAEH,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAED,YAAY,CAAC,IAAa;QACtB,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,OAAc,CAAC,CAAC,CAAC;QACzE,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACrD,CAAC;IAED,IAAI,CAAC,OAAmB,EAAE,MAA2B;QACjD,IAAI;YACA,IAAI,CAAC,IAAI,CAAC,MAAM;gBACZ,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;YAC9C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE;gBACrC,IAAI,CAAC,IAAI,MAAM;oBACX,MAAM,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC,CAAC,CAAC;SACN;QACD,OAAO,CAAC,EAAE;YACN,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;SACf;IACL,CAAC;IAED,IAAI,GAAG;QACH,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;IAC3B,CAAC;CACJ;AA9CD,wCA8CC"}
1
+ {"version":3,"file":"node-fork-worker.js","sourceRoot":"","sources":["../../../src/plugin/runtime/node-fork-worker.ts"],"names":[],"mappings":";;;;;;AACA,kEAA0C;AAC1C,gDAAwB;AAExB,iEAA4D;AAC5D,wEAA+D;AAE/D,MAAa,cAAe,SAAQ,yCAAkB;IAElD,YAAY,QAAgB,EAAE,OAA6B;QACvD,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAEzB,MAAM,EAAC,GAAG,EAAE,WAAW,EAAC,GAAG,OAAO,CAAC;QAEnC,MAAM,QAAQ,GAAa,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACpD,IAAI,WAAW,EAAE;YACb,QAAQ,CAAC,IAAI,CAAC,qBAAqB,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC;SACjE;QAED,IAAI,CAAC,MAAM,GAAG,uBAAa,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE;YAC9E,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC;YACtC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE;gBACrC,SAAS,EAAE,cAAI,CAAC,IAAI,CAAC,IAAA,2CAAiB,EAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC;aACzE,CAAC;YACF,aAAa,EAAE,UAAU;YACzB,QAAQ;SACX,CAAC,CAAC;QAEH,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAED,YAAY,CAAC,IAAa;QACtB,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE;YAC9C,IAAI,UAAU,EAAE;gBACZ,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;aACzC;iBACI;gBACD,IAAI,CAAC,aAAa,CAAC,OAAc,CAAC,CAAC;aACtC;QACL,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACrD,CAAC;IAED,IAAI,CAAC,OAAmB,EAAE,MAA2B;QACjD,IAAI;YACA,IAAI,CAAC,IAAI,CAAC,MAAM;gBACZ,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;YAC9C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE;gBACrC,IAAI,CAAC,IAAI,MAAM;oBACX,MAAM,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC,CAAC,CAAC;SACN;QACD,OAAO,CAAC,EAAE;YACN,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;SACf;IACL,CAAC;IAED,IAAI,GAAG;QACH,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;IAC3B,CAAC;CACJ;AArDD,wCAqDC"}
@@ -0,0 +1,121 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createRpcDuplexSerializer = exports.createRpcSerializer = exports.createDuplexRpcPeer = void 0;
4
+ const buffer_serializer_1 = require("./plugin/buffer-serializer");
5
+ const rpc_1 = require("./rpc");
6
+ function createDuplexRpcPeer(selfName, peerName, readable, writable) {
7
+ const serializer = createRpcDuplexSerializer(readable, writable);
8
+ const rpcPeer = new rpc_1.RpcPeer(selfName, peerName, (message, reject, serializationContext) => {
9
+ try {
10
+ serializer.sendMessage(message, reject, serializationContext);
11
+ }
12
+ catch (e) {
13
+ reject?.(e);
14
+ readable.destroy();
15
+ }
16
+ });
17
+ serializer.setupRpcPeer(rpcPeer);
18
+ readable.on('close', serializer.onDisconnected);
19
+ readable.on('error', serializer.onDisconnected);
20
+ return rpcPeer;
21
+ }
22
+ exports.createDuplexRpcPeer = createDuplexRpcPeer;
23
+ function createRpcSerializer(options) {
24
+ let rpcPeer;
25
+ const { sendMessageBuffer, sendMessageFinish } = options;
26
+ let connected = true;
27
+ const onDisconnected = () => {
28
+ connected = false;
29
+ rpcPeer.kill('connection closed.');
30
+ };
31
+ const sendMessage = (message, reject, serializationContext) => {
32
+ if (!connected) {
33
+ reject?.(new Error('peer disconnected'));
34
+ return;
35
+ }
36
+ const buffers = serializationContext?.buffers;
37
+ if (buffers) {
38
+ for (const buffer of buffers) {
39
+ sendMessageBuffer(buffer);
40
+ }
41
+ }
42
+ sendMessageFinish(message);
43
+ };
44
+ let pendingSerializationContext = {};
45
+ const setupRpcPeer = (peer) => {
46
+ rpcPeer = peer;
47
+ rpcPeer.addSerializer(Buffer, 'Buffer', new buffer_serializer_1.SidebandBufferSerializer());
48
+ };
49
+ const onMessageBuffer = (buffer) => {
50
+ pendingSerializationContext = pendingSerializationContext || {
51
+ buffers: [],
52
+ };
53
+ const buffers = pendingSerializationContext.buffers;
54
+ buffers.push(buffer);
55
+ };
56
+ const onMessageFinish = (message) => {
57
+ const messageSerializationContext = pendingSerializationContext;
58
+ pendingSerializationContext = undefined;
59
+ rpcPeer.handleMessage(message, messageSerializationContext);
60
+ };
61
+ return {
62
+ sendMessage,
63
+ setupRpcPeer,
64
+ onMessageBuffer,
65
+ onMessageFinish,
66
+ onDisconnected,
67
+ };
68
+ }
69
+ exports.createRpcSerializer = createRpcSerializer;
70
+ function createRpcDuplexSerializer(readable, writable) {
71
+ const socketSend = (type, data) => {
72
+ const header = Buffer.alloc(5);
73
+ header.writeUInt32BE(data.length + 1, 0);
74
+ header.writeUInt8(type, 4);
75
+ writable.write(Buffer.concat([header, data]));
76
+ };
77
+ const createSocketSend = (type) => {
78
+ return (data) => {
79
+ return socketSend(type, data);
80
+ };
81
+ };
82
+ const sendMessageBuffer = createSocketSend(1);
83
+ const sendMessageFinish = createSocketSend(0);
84
+ const serializer = createRpcSerializer({
85
+ sendMessageBuffer,
86
+ sendMessageFinish: (message) => sendMessageFinish(Buffer.from(JSON.stringify(message))),
87
+ });
88
+ let header;
89
+ const readMessages = () => {
90
+ while (true) {
91
+ if (!header) {
92
+ header = readable.read(5);
93
+ if (!header)
94
+ return;
95
+ }
96
+ const length = header.readUInt32BE(0);
97
+ const type = header.readUInt8(4);
98
+ const payload = readable.read(length - 1);
99
+ if (!payload)
100
+ return;
101
+ header = undefined;
102
+ const data = payload;
103
+ if (type === 0) {
104
+ const message = JSON.parse(data.toString());
105
+ serializer.onMessageFinish(message);
106
+ }
107
+ else {
108
+ serializer.onMessageBuffer(data);
109
+ }
110
+ }
111
+ };
112
+ readable.on('readable', readMessages);
113
+ readMessages();
114
+ return {
115
+ setupRpcPeer: serializer.setupRpcPeer,
116
+ sendMessage: serializer.sendMessage,
117
+ onDisconnected: serializer.onDisconnected,
118
+ };
119
+ }
120
+ exports.createRpcDuplexSerializer = createRpcDuplexSerializer;
121
+ //# sourceMappingURL=rpc-serializer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rpc-serializer.js","sourceRoot":"","sources":["../src/rpc-serializer.ts"],"names":[],"mappings":"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"}