@spider-mesh/core 1.0.13 → 1.0.15

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.
@@ -2,44 +2,85 @@ import { randomUUID } from "crypto";
2
2
  import dgram from 'dgram';
3
3
  import { createConnection, createServer } from "net";
4
4
  import { networkInterfaces } from 'os';
5
+ import { EventEmitter } from "events";
5
6
  import { PassThrough } from "stream";
6
- async function tryCatch(fn) {
7
- try {
8
- return [null, typeof fn == 'function' ? await fn() : await fn];
7
+ const UDP_PORT = Number(process.env.UDP_PORT || 10001);
8
+ const SEEDING_IP = process.env.SEEDING_IP;
9
+ class StableTCP extends EventEmitter {
10
+ options;
11
+ #input = new PassThrough();
12
+ constructor(options) {
13
+ super();
14
+ this.options = options;
9
15
  }
10
- catch (e) {
11
- return [e, null];
16
+ async #connect() {
17
+ return new Promise(s => {
18
+ const socket = createConnection(this.options);
19
+ socket.on('ready', () => s(socket));
20
+ socket.on('connect', () => s(socket));
21
+ socket.on('timeout', () => s(null));
22
+ socket.on('error', (e) => s(null));
23
+ });
12
24
  }
13
- }
14
- const UDP_MULTICAST_PORT = Number(process.env.UDP_MULTICAST_PORT || 10001);
15
- const MULTICAST_IP = process.env.MULTICAST_IP || '239.255.255.250';
16
- const PRIVATE_SUBNET = process.env.PRIVATE_SUBNET;
17
- const SEEDING_IP = process.env.SEEDING_IP;
18
- const initAutoReconnectConnection = ({ reconnect_intervel = 10, ...options }) => {
19
- return new Promise(async (s) => {
20
- const $ = new PassThrough();
21
- for (let i = 1; i <= reconnect_intervel; i++) {
22
- const socket = await new Promise(s => {
23
- const socket = createConnection(options);
24
- socket.on('connect', () => s(socket));
25
- socket.on('error', () => s(null));
26
- socket.on('timeout', () => s(null));
27
- });
28
- if (socket) {
29
- $.pipe(socket);
30
- socket.on('data', data => $.emit('data', data));
31
- socket.on('close', () => $.emit('close'));
32
- i = 1;
33
- s($);
34
- await new Promise(s => socket.on('error', s));
35
- await new Promise(s => setTimeout(s, 500));
36
- continue;
25
+ #join_stream(socket) {
26
+ let buffer = '';
27
+ this.#input.removeAllListeners('data');
28
+ this.#input.on('data', data => socket.write(data));
29
+ socket.on('data', msg => {
30
+ buffer += msg.toString('utf8');
31
+ if (buffer.endsWith('\n')) {
32
+ try {
33
+ const json = JSON.parse(buffer);
34
+ buffer = '';
35
+ this.emit('data', json);
36
+ }
37
+ catch (e) {
38
+ }
37
39
  }
38
- return s(null);
39
- }
40
- $.emit('error');
41
- });
42
- };
40
+ });
41
+ }
42
+ async #init() {
43
+ return await new Promise(async (s) => {
44
+ for (let i = 0; i <= 5; i++) {
45
+ const socket = await this.#connect();
46
+ if (!socket)
47
+ return s(false);
48
+ this.#join_stream(socket);
49
+ i = 0;
50
+ s(true);
51
+ // await socket error here
52
+ const code = await new Promise(s => {
53
+ socket.on('close', () => s('close'));
54
+ socket.on('error', () => s('error'));
55
+ socket.on('end', () => s('close'));
56
+ });
57
+ if (code == 'close') {
58
+ this.emit('close');
59
+ return;
60
+ }
61
+ process.env.SPIDERMESH_TCP_DEBUG && console.log(`[${new Date().toLocaleTimeString()}] Socket error, retrying in 1 sec`);
62
+ await new Promise(s => setTimeout(s, 1000));
63
+ }
64
+ s(false);
65
+ });
66
+ }
67
+ static async connect(options) {
68
+ const instance = new this(options);
69
+ const success = await instance.#init();
70
+ return success ? instance : null;
71
+ }
72
+ static async update(socket) {
73
+ const instance = new this({ host: '', port: 1 });
74
+ socket.on('error', () => instance.emit('error'));
75
+ socket.on('close', () => instance.emit('close'));
76
+ await instance.#join_stream(socket);
77
+ return instance;
78
+ }
79
+ async write(data) {
80
+ const buffer = Buffer.from(JSON.stringify(data) + '\n');
81
+ this.#input.write(buffer);
82
+ }
83
+ }
43
84
  export class BuiltinTransporter {
44
85
  node_id;
45
86
  namespace;
@@ -66,9 +107,18 @@ export class BuiltinTransporter {
66
107
  async #init() {
67
108
  // Create UDP
68
109
  const udp = dgram.createSocket({ type: 'udp4', reuseAddr: true });
69
- udp.bind(UDP_MULTICAST_PORT, () => udp.addMembership(MULTICAST_IP));
70
- udp.on('message', (raw, rinfo) => {
71
- this.#on_message(rinfo.address, raw);
110
+ udp.bind({
111
+ address: '0.0.0.0',
112
+ exclusive: false,
113
+ port: UDP_PORT
114
+ });
115
+ udp.on('message', async (raw, rinfo) => {
116
+ try {
117
+ const json = JSON.parse(raw.toString('utf-8'));
118
+ this.#on_message(rinfo.address, json);
119
+ }
120
+ catch (e) {
121
+ }
72
122
  });
73
123
  // Find free port
74
124
  const { tcp_port, server } = await new Promise(async (s) => {
@@ -83,22 +133,25 @@ export class BuiltinTransporter {
83
133
  return s({ tcp_port, server });
84
134
  }
85
135
  });
86
- server.on('connection', socket => {
136
+ server.on('connection', async (socket) => {
87
137
  const remote_host = socket.remoteAddress?.split(':')?.pop();
88
- remote_host && socket.on('data', data => this.#on_message(remote_host, data, socket));
138
+ if (remote_host) {
139
+ const stable_tcp = await StableTCP.update(socket);
140
+ stable_tcp.on('data', data => this.#on_message(remote_host, data, stable_tcp));
141
+ }
89
142
  });
90
143
  return {
91
144
  udp,
92
145
  tcp_port,
93
146
  next: async () => {
94
- const broadcast_ips = [];
95
- // Add multicast IP
96
- MULTICAST_IP && broadcast_ips.push(MULTICAST_IP);
97
- // Scan subnet IP
98
- if (PRIVATE_SUBNET) {
99
- const current_ips = Object.values(networkInterfaces()).map(c => c?.map(f => f.address) || []).flat(2);
147
+ const broadcast_ips = ['127.0.0.1'];
148
+ // Add multicast IP or scan all subnets
149
+ const current_ips = Object.values(networkInterfaces()).map(c => c?.map(f => f.address) || []).flat(2);
150
+ const current_ip = current_ips.find(ip => ip.startsWith('192.168'));
151
+ const subnet = current_ip?.split('.').slice(0, 3).join('.');
152
+ if (subnet) {
100
153
  for (let i = 1; i <= 255; i++) {
101
- const host = `${PRIVATE_SUBNET}.${i}`;
154
+ const host = `${subnet}.${i}`;
102
155
  !current_ips.includes(host) && broadcast_ips.push(host);
103
156
  }
104
157
  }
@@ -108,9 +161,11 @@ export class BuiltinTransporter {
108
161
  if (SEEDING_IP) {
109
162
  const ips = SEEDING_IP.split(',').map(c => c.trim().split(':'));
110
163
  await Promise.all(ips.map(async ([host, port]) => {
111
- const socket = await initAutoReconnectConnection({ host, port: Number(port), keepAlive: true, timeout: 5000 });
112
- socket?.on('data', data => this.#on_message(host, data, socket));
113
- socket && this.#hello(socket);
164
+ const stable_tcp = await StableTCP.connect({ host, port: Number(port), keepAlive: true, timeout: 5000 });
165
+ if (stable_tcp) {
166
+ stable_tcp.on('data', data => this.#on_message(host, data, stable_tcp));
167
+ this.#hello(stable_tcp);
168
+ }
114
169
  }));
115
170
  }
116
171
  },
@@ -142,21 +197,24 @@ export class BuiltinTransporter {
142
197
  sender_node_id: this.node_id,
143
198
  topic: '#hello'
144
199
  };
145
- const buffer = Buffer.from(JSON.stringify(msg), 'utf8');
146
- socket?.write(buffer);
147
- udp_socket?.socket.send(buffer, UDP_MULTICAST_PORT, udp_socket.host);
200
+ if (socket) {
201
+ socket?.write(msg);
202
+ }
203
+ if (udp_socket) {
204
+ const buffer = Buffer.from(JSON.stringify(msg), 'utf8');
205
+ udp_socket?.socket.send(buffer, UDP_PORT, udp_socket.host);
206
+ }
148
207
  }
149
- async #on_message(remote_address, data, tcp_socket) {
208
+ async #on_message(remote_address, msg, old_socket) {
150
209
  if (!remote_address)
151
210
  return;
152
- const [_, msg] = await tryCatch(() => JSON.parse(data.toString('utf8')));
153
211
  if (!msg)
154
212
  return;
155
213
  if (msg.sender_node_id == this.node_id)
156
214
  return;
157
215
  // New node
158
216
  if (msg.topic == `#hello` && msg.namespace == this.namespace) {
159
- return this.#add_node(remote_address, msg.data, tcp_socket);
217
+ return this.#add_node(remote_address, msg.data, old_socket);
160
218
  }
161
219
  this.#listeners.get(msg.topic)?.forEach(cb => cb(msg.sender_node_id, msg.data));
162
220
  }
@@ -164,7 +222,7 @@ export class BuiltinTransporter {
164
222
  process.env.SPIDERMESH_TCP_DEBUG && console.log(`[${new Date().toLocaleTimeString()}] [TCP] Node online [${host}]`, new_node);
165
223
  const remote_peers_included = new_node.peers.some(p => p.node_id == this.node_id);
166
224
  if (!this.#nodes_map.get(new_node.node_id)?.socket) {
167
- const socket = await initAutoReconnectConnection({ host, port: new_node.port, keepAlive: true, timeout: 5000 }) || tcp_socket;
225
+ const socket = await StableTCP.connect({ host, port: new_node.port, keepAlive: true, timeout: 5000 }) || tcp_socket;
168
226
  if (!socket)
169
227
  return;
170
228
  const on_offline = (e) => {
@@ -221,15 +279,14 @@ export class BuiltinTransporter {
221
279
  sender_node_id: this.node_id,
222
280
  topic: event || node_id || '#'
223
281
  };
224
- const buffer = Buffer.from(JSON.stringify(msg), 'utf8');
225
282
  if (node_id) {
226
283
  const node = this.#nodes_map.get(node_id);
227
- node?.socket?.write(buffer);
284
+ node?.socket?.write(msg);
228
285
  return;
229
286
  }
230
287
  for (const node_id of this.#events_map.get(event) || []) {
231
288
  const node = this.#nodes_map.get(node_id);
232
- node?.socket?.write(buffer);
289
+ node?.socket?.write(msg);
233
290
  }
234
291
  }
235
292
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BuiltinTransporter.js","sourceRoot":"","sources":["../../src/BuiltinTransporter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BuiltinTransporter.js","sourceRoot":"","sources":["../../src/BuiltinTransporter.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,13 @@
1
1
  import { RPCOptions } from "./RPCOptions";
2
2
  import { SpiderMeshNode } from "./SpiderMeshNode";
3
+ import { ServiceNodeMonitor } from "./SpiderMesh";
3
4
  export type RemoteService<T> = ({
4
5
  [K in keyof T as (T[K] extends (...args: any) => any ? K : '')]: T[K] extends (...args: any) => any ? ((...args: Parameters<T[K]>) => Promise<Awaited<ReturnType<T[K]>>>) : null;
5
6
  } & {
6
7
  [key in keyof RPCOptions as `$set_${key}`]: (value: RPCOptions[key]) => RemoteService<T>;
7
8
  } & {
8
9
  $list_nodes: () => SpiderMeshNode[];
10
+ $monitor: (cb: ServiceNodeMonitor) => {
11
+ unsubscribe: Function;
12
+ };
9
13
  });
@@ -1,7 +1,8 @@
1
- import { SpiderMeshNodeMetadata } from './SpiderMeshNode';
1
+ import { SpiderMeshNode, SpiderMeshNodeMetadata } from './SpiderMeshNode';
2
2
  import { SpiderMeshTransporter, SpiderMeshTransporterFactory } from './SpiderMeshTransporter';
3
3
  import { RPCOptions } from './RPCOptions';
4
4
  import { RemoteService } from './RemoteService';
5
+ export type ServiceNodeMonitor = (online: boolean, node: SpiderMeshNode) => any;
5
6
  export declare class SpiderMesh {
6
7
  #private;
7
8
  readonly node_id: `${string}-${string}-${string}-${string}-${string}`;
@@ -27,11 +27,13 @@ class SpiderMesh {
27
27
  res.on('end', () => s(rawData));
28
28
  }).on('error', () => s(null));
29
29
  });
30
- if (ip != 'Bad Gateway')
30
+ if (ip && ip != 'Bad Gateway')
31
31
  return s(ip);
32
+ await new Promise(s => setTimeout(s, 1000));
32
33
  }
33
34
  });
34
35
  static #LinkingServices = new Map();
36
+ #services_status_monitor = new Map();
35
37
  constructor() { }
36
38
  static async init(...transporters) {
37
39
  const ms = new this();
@@ -76,7 +78,12 @@ class SpiderMesh {
76
78
  process.env.SPIDERMESH_DEBUG && console.log(`[${new Date().toLocaleString()}] Node ${id} offline`);
77
79
  node.transporters?.delete(factory.name);
78
80
  node.transporters?.size == 0 && this.#nodes.delete(id);
79
- this.#remote_services.forEach(service => service.nodes = service.nodes?.filter(node => node.id != id));
81
+ node.services.map(service => {
82
+ this.#services_status_monitor.get(service)?.forEach(fn => fn(false, node));
83
+ });
84
+ this.#remote_services.forEach(service => {
85
+ service.nodes = service.nodes?.filter(node => node.id != id);
86
+ });
80
87
  [...this.#rpc_queue.entries()].forEach(([rid, { reject }]) => {
81
88
  reject(new Error('SERVICE_OFFLINE'));
82
89
  this.#rpc_queue.delete(rid);
@@ -143,6 +150,7 @@ class SpiderMesh {
143
150
  this.#nodes.get(node.id)?.transporters?.set(transporter_name, transporter);
144
151
  node.services.forEach(service => {
145
152
  SpiderMesh.#LinkingServices.set(service, { online: true });
153
+ this.#services_status_monitor.get(service)?.forEach(fn => fn(true, new_node));
146
154
  const $service = this.#remote_services.get(service);
147
155
  if (!$service) {
148
156
  this.#remote_services.set(service, {
@@ -236,6 +244,16 @@ class SpiderMesh {
236
244
  get: (_, method) => {
237
245
  if (method == '$list_nodes')
238
246
  return () => [...this.#nodes.values()].filter(node => node.services.includes(service_name));
247
+ if (method == '$monitor')
248
+ return (cb) => {
249
+ const hid = randomUUID();
250
+ const map = this.#services_status_monitor.get(service_name) || new Map();
251
+ map.set(hid, cb);
252
+ this.#services_status_monitor.set(service_name, map);
253
+ return {
254
+ unsubscribe: () => map.delete(hid)
255
+ };
256
+ };
239
257
  if (actions.has(method) || method.startsWith('$set_')) {
240
258
  return new DeepProxy(RPCOptionsList, (method, options) => (...args) => this.rpc(service_name, method, args, options)).nest()[method];
241
259
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SpiderMesh.js","sourceRoot":"","sources":["../../src/SpiderMesh.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SpiderMesh.js","sourceRoot":"","sources":["../../src/SpiderMesh.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@spider-mesh/core",
3
3
  "type": "module",
4
- "version": "1.0.13",
4
+ "version": "1.0.15",
5
5
  "description": "Lightweight microservice framework for typescript, auto discovery, load-balancing, fault-torrent, multiple transporters",
6
6
  "main": "build/index.js",
7
7
  "types": "build/index.d.ts",
@@ -20,5 +20,9 @@
20
20
  "build": "tsc -v; rm -rf build && tsc -b tsconfig.json"
21
21
  },
22
22
  "author": "Duong Van Ba",
23
- "license": "ISC"
24
- }
23
+ "license": "ISC",
24
+ "dependencies": {
25
+ "JSONStream": "^1.3.5",
26
+ "event-stream": "^4.0.1"
27
+ }
28
+ }
package/yarn.lock ADDED
@@ -0,0 +1,185 @@
1
+ # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
2
+ # yarn lockfile v1
3
+
4
+
5
+ "@cspotcode/source-map-support@^0.8.0":
6
+ version "0.8.1"
7
+ resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz#00629c35a688e05a88b1cda684fb9d5e73f000a1"
8
+ integrity sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==
9
+ dependencies:
10
+ "@jridgewell/trace-mapping" "0.3.9"
11
+
12
+ "@jridgewell/resolve-uri@^3.0.3":
13
+ version "3.1.1"
14
+ resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz#c08679063f279615a3326583ba3a90d1d82cc721"
15
+ integrity sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==
16
+
17
+ "@jridgewell/sourcemap-codec@^1.4.10":
18
+ version "1.4.15"
19
+ resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32"
20
+ integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==
21
+
22
+ "@jridgewell/trace-mapping@0.3.9":
23
+ version "0.3.9"
24
+ resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz#6534fd5933a53ba7cbf3a17615e273a0d1273ff9"
25
+ integrity sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==
26
+ dependencies:
27
+ "@jridgewell/resolve-uri" "^3.0.3"
28
+ "@jridgewell/sourcemap-codec" "^1.4.10"
29
+
30
+ "@tsconfig/node10@^1.0.7":
31
+ version "1.0.9"
32
+ resolved "https://registry.yarnpkg.com/@tsconfig/node10/-/node10-1.0.9.tgz#df4907fc07a886922637b15e02d4cebc4c0021b2"
33
+ integrity sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==
34
+
35
+ "@tsconfig/node12@^1.0.7":
36
+ version "1.0.11"
37
+ resolved "https://registry.yarnpkg.com/@tsconfig/node12/-/node12-1.0.11.tgz#ee3def1f27d9ed66dac6e46a295cffb0152e058d"
38
+ integrity sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==
39
+
40
+ "@tsconfig/node14@^1.0.0":
41
+ version "1.0.3"
42
+ resolved "https://registry.yarnpkg.com/@tsconfig/node14/-/node14-1.0.3.tgz#e4386316284f00b98435bf40f72f75a09dabf6c1"
43
+ integrity sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==
44
+
45
+ "@tsconfig/node16@^1.0.2":
46
+ version "1.0.3"
47
+ resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.3.tgz#472eaab5f15c1ffdd7f8628bd4c4f753995ec79e"
48
+ integrity sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==
49
+
50
+ "@types/node@^18.16.0":
51
+ version "18.16.0"
52
+ resolved "https://registry.yarnpkg.com/@types/node/-/node-18.16.0.tgz#4668bc392bb6938637b47e98b1f2ed5426f33316"
53
+ integrity sha512-BsAaKhB+7X+H4GnSjGhJG9Qi8Tw+inU9nJDwmD5CgOmBLEI6ArdhikpLX7DjbjDRDTbqZzU2LSQNZg8WGPiSZQ==
54
+
55
+ JSONStream@^1.3.5:
56
+ version "1.3.5"
57
+ resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.5.tgz#3208c1f08d3a4d99261ab64f92302bc15e111ca0"
58
+ integrity sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==
59
+ dependencies:
60
+ jsonparse "^1.2.0"
61
+ through ">=2.2.7 <3"
62
+
63
+ acorn-walk@^8.1.1:
64
+ version "8.2.0"
65
+ resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1"
66
+ integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==
67
+
68
+ acorn@^8.4.1:
69
+ version "8.8.2"
70
+ resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.2.tgz#1b2f25db02af965399b9776b0c2c391276d37c4a"
71
+ integrity sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==
72
+
73
+ arg@^4.1.0:
74
+ version "4.1.3"
75
+ resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089"
76
+ integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==
77
+
78
+ create-require@^1.1.0:
79
+ version "1.1.1"
80
+ resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333"
81
+ integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==
82
+
83
+ diff@^4.0.1:
84
+ version "4.0.2"
85
+ resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d"
86
+ integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==
87
+
88
+ duplexer@^0.1.1, duplexer@~0.1.1:
89
+ version "0.1.2"
90
+ resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6"
91
+ integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==
92
+
93
+ event-stream@^4.0.1:
94
+ version "4.0.1"
95
+ resolved "https://registry.yarnpkg.com/event-stream/-/event-stream-4.0.1.tgz#4092808ec995d0dd75ea4580c1df6a74db2cde65"
96
+ integrity sha512-qACXdu/9VHPBzcyhdOWR5/IahhGMf0roTeZJfzz077GwylcDd90yOHLouhmv7GJ5XzPi6ekaQWd8AvPP2nOvpA==
97
+ dependencies:
98
+ duplexer "^0.1.1"
99
+ from "^0.1.7"
100
+ map-stream "0.0.7"
101
+ pause-stream "^0.0.11"
102
+ split "^1.0.1"
103
+ stream-combiner "^0.2.2"
104
+ through "^2.3.8"
105
+
106
+ from@^0.1.7:
107
+ version "0.1.7"
108
+ resolved "https://registry.yarnpkg.com/from/-/from-0.1.7.tgz#83c60afc58b9c56997007ed1a768b3ab303a44fe"
109
+ integrity sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g==
110
+
111
+ jsonparse@^1.2.0:
112
+ version "1.3.1"
113
+ resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280"
114
+ integrity sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==
115
+
116
+ make-error@^1.1.1:
117
+ version "1.3.6"
118
+ resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2"
119
+ integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==
120
+
121
+ map-stream@0.0.7:
122
+ version "0.0.7"
123
+ resolved "https://registry.yarnpkg.com/map-stream/-/map-stream-0.0.7.tgz#8a1f07896d82b10926bd3744a2420009f88974a8"
124
+ integrity sha512-C0X0KQmGm3N2ftbTGBhSyuydQ+vV1LC3f3zPvT3RXHXNZrvfPZcoXp/N5DOa8vedX/rTMm2CjTtivFg2STJMRQ==
125
+
126
+ pause-stream@^0.0.11:
127
+ version "0.0.11"
128
+ resolved "https://registry.yarnpkg.com/pause-stream/-/pause-stream-0.0.11.tgz#fe5a34b0cbce12b5aa6a2b403ee2e73b602f1445"
129
+ integrity sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A==
130
+ dependencies:
131
+ through "~2.3"
132
+
133
+ split@^1.0.1:
134
+ version "1.0.1"
135
+ resolved "https://registry.yarnpkg.com/split/-/split-1.0.1.tgz#605bd9be303aa59fb35f9229fbea0ddec9ea07d9"
136
+ integrity sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==
137
+ dependencies:
138
+ through "2"
139
+
140
+ stream-combiner@^0.2.2:
141
+ version "0.2.2"
142
+ resolved "https://registry.yarnpkg.com/stream-combiner/-/stream-combiner-0.2.2.tgz#aec8cbac177b56b6f4fa479ced8c1912cee52858"
143
+ integrity sha512-6yHMqgLYDzQDcAkL+tjJDC5nSNuNIx0vZtRZeiPh7Saef7VHX9H5Ijn9l2VIol2zaNYlYEX6KyuT/237A58qEQ==
144
+ dependencies:
145
+ duplexer "~0.1.1"
146
+ through "~2.3.4"
147
+
148
+ through@2, "through@>=2.2.7 <3", through@^2.3.8, through@~2.3, through@~2.3.4:
149
+ version "2.3.8"
150
+ resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5"
151
+ integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==
152
+
153
+ ts-node@^10.9.1:
154
+ version "10.9.1"
155
+ resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.9.1.tgz#e73de9102958af9e1f0b168a6ff320e25adcff4b"
156
+ integrity sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==
157
+ dependencies:
158
+ "@cspotcode/source-map-support" "^0.8.0"
159
+ "@tsconfig/node10" "^1.0.7"
160
+ "@tsconfig/node12" "^1.0.7"
161
+ "@tsconfig/node14" "^1.0.0"
162
+ "@tsconfig/node16" "^1.0.2"
163
+ acorn "^8.4.1"
164
+ acorn-walk "^8.1.1"
165
+ arg "^4.1.0"
166
+ create-require "^1.1.0"
167
+ diff "^4.0.1"
168
+ make-error "^1.1.1"
169
+ v8-compile-cache-lib "^3.0.1"
170
+ yn "3.1.1"
171
+
172
+ typescript@^5.0.4:
173
+ version "5.0.4"
174
+ resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.0.4.tgz#b217fd20119bd61a94d4011274e0ab369058da3b"
175
+ integrity sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==
176
+
177
+ v8-compile-cache-lib@^3.0.1:
178
+ version "3.0.1"
179
+ resolved "https://registry.yarnpkg.com/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf"
180
+ integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==
181
+
182
+ yn@3.1.1:
183
+ version "3.1.1"
184
+ resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50"
185
+ integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==