@spider-mesh/core 1.0.23 → 1.0.24

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 (34) hide show
  1. package/build/index.d.ts +10 -8
  2. package/build/index.js +7 -5
  3. package/build/index.js.map +1 -1
  4. package/build/src/BuiltinTransporter.d.ts +1 -1
  5. package/build/src/BuiltinTransporter.js +15 -24
  6. package/build/src/BuiltinTransporter.js.map +1 -1
  7. package/build/src/RemoteService.d.ts +2 -2
  8. package/build/src/RxjsTcpServer.d.ts +1 -1
  9. package/build/src/RxjsTcpServer.js +1 -1
  10. package/build/src/RxjsTcpServer.js.map +1 -1
  11. package/build/src/RxjsTcpSocket.d.ts +1 -1
  12. package/build/src/RxjsTcpSocket.js +11 -2
  13. package/build/src/RxjsTcpSocket.js.map +1 -1
  14. package/build/src/SpiderMesh.d.ts +15 -8
  15. package/build/src/SpiderMesh.js +29 -17
  16. package/build/src/SpiderMesh.js.map +1 -1
  17. package/build/src/const.d.ts +3 -0
  18. package/build/src/const.js +5 -0
  19. package/build/src/const.js.map +1 -0
  20. package/build/src/decorators/ListenEvent.d.ts +7 -0
  21. package/build/src/decorators/{SubscribeEvent.js → ListenEvent.js} +3 -2
  22. package/build/src/decorators/ListenEvent.js.map +1 -0
  23. package/build/src/decorators/Microservice.d.ts +2 -2
  24. package/build/src/decorators/Microservice.js +6 -2
  25. package/build/src/decorators/Microservice.js.map +1 -1
  26. package/build/src/decorators/OnMicroserviceReady.d.ts +6 -3
  27. package/build/src/decorators/OnMicroserviceReady.js +4 -4
  28. package/build/src/decorators/OnMicroserviceReady.js.map +1 -1
  29. package/build/src/helpers/waitFirstEvent.d.ts +1 -1
  30. package/package.json +1 -1
  31. package/tsconfig.json +3 -3
  32. package/build/src/decorators/SubscribeEvent.d.ts +0 -6
  33. package/build/src/decorators/SubscribeEvent.js.map +0 -1
  34. package/yarn.lock +0 -197
package/build/index.d.ts CHANGED
@@ -1,8 +1,10 @@
1
- export { BuiltinTransporter } from './src/BuiltinTransporter';
2
- export { SpiderMesh } from './src/SpiderMesh';
3
- export { SpiderMeshNode, SpiderMeshNodeMetadata } from './src/SpiderMeshNode';
4
- export { SpiderMeshTransporter, SpiderMeshTransporterFactory } from './src/SpiderMeshTransporter';
5
- export { RemoteService } from './src/RemoteService';
6
- export { RPCOptions, RPCOptionsList } from './src/RPCOptions';
7
- export { OnMicroserviceReady } from './src/decorators/OnMicroserviceReady';
8
- export { Microservice } from './src/decorators/Microservice';
1
+ export { DEFAULT_NAMEPSACE, NODE_ID } from './src/const.js';
2
+ export { BuiltinTransporter } from './src/BuiltinTransporter.js';
3
+ export { SpiderMesh } from './src/SpiderMesh.js';
4
+ export { SpiderMeshNode, SpiderMeshNodeMetadata } from './src/SpiderMeshNode.js';
5
+ export { SpiderMeshTransporter, SpiderMeshTransporterFactory } from './src/SpiderMeshTransporter.js';
6
+ export { RemoteService } from './src/RemoteService.js';
7
+ export { RPCOptions, RPCOptionsList } from './src/RPCOptions.js';
8
+ export { OnMicroserviceReady } from './src/decorators/OnMicroserviceReady.js';
9
+ export { Microservice } from './src/decorators/Microservice.js';
10
+ export { ListenEvent } from './src/decorators/ListenEvent.js';
package/build/index.js CHANGED
@@ -1,6 +1,8 @@
1
- export { BuiltinTransporter } from './src/BuiltinTransporter';
2
- export { SpiderMesh } from './src/SpiderMesh';
3
- export { RPCOptionsList } from './src/RPCOptions';
4
- export { OnMicroserviceReady } from './src/decorators/OnMicroserviceReady';
5
- export { Microservice } from './src/decorators/Microservice';
1
+ export { DEFAULT_NAMEPSACE, NODE_ID } from './src/const.js';
2
+ export { BuiltinTransporter } from './src/BuiltinTransporter.js';
3
+ export { SpiderMesh } from './src/SpiderMesh.js';
4
+ export { RPCOptionsList } from './src/RPCOptions.js';
5
+ export { OnMicroserviceReady } from './src/decorators/OnMicroserviceReady.js';
6
+ export { Microservice } from './src/decorators/Microservice.js';
7
+ export { ListenEvent } from './src/decorators/ListenEvent.js';
6
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAI7C,OAAO,EAAc,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAA;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAIhD,OAAO,EAAc,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAA;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAA"}
@@ -1,4 +1,4 @@
1
- import { PublishMetadata, SpiderMeshTransporter, SpiderMeshTransporterEvent } from "./SpiderMeshTransporter";
1
+ import { PublishMetadata, SpiderMeshTransporter, SpiderMeshTransporterEvent } from "./SpiderMeshTransporter.js";
2
2
  import { Observable, Subject } from 'rxjs';
3
3
  export declare class BuiltinTransporter implements SpiderMeshTransporter {
4
4
  #private;
@@ -1,8 +1,8 @@
1
1
  import { randomUUID } from "crypto";
2
2
  import { Observable, Subject, debounceTime, filter, first, map, merge, mergeAll, mergeMap, takeUntil } from 'rxjs';
3
- import { RxjsTcpSocket } from "./RxjsTcpSocket";
4
- import { RxjsTcpServer } from "./RxjsTcpServer";
5
- import { RxjsUdpBroadcaster } from "./RxjsUdpBroadcaster";
3
+ import { RxjsTcpSocket } from "./RxjsTcpSocket.js";
4
+ import { RxjsTcpServer } from "./RxjsTcpServer.js";
5
+ import { RxjsUdpBroadcaster } from "./RxjsUdpBroadcaster.js";
6
6
  const UDP_PORT = Number(process.env.UDP_PORT || 10000);
7
7
  const SEEDING_IP_RANGES = process.env.SEEDING_IP_RANGE;
8
8
  const SEEDING_IPS = process.env.SEEDING_IP;
@@ -53,8 +53,14 @@ export class BuiltinTransporter {
53
53
  const host = node_socket.rawSocket.remoteAddress;
54
54
  if (!host)
55
55
  return;
56
- // process.env.SPIDERMESH_DEBUG && console.log(`[${new Date().toLocaleTimeString()}] [TCP] Node online [${host}]`, new_node)
56
+ // DEBUG && console.log(`[${new Date().toLocaleTimeString()}] [TCP] Node online [${host}]`, new_node)
57
57
  const new_node_id = new_node.node_id;
58
+ const remote_info = new_node.peers.find(p => p.node_id == this.node_id);
59
+ const peer_updated = remote_info ? remote_info.version == this.#version : false;
60
+ for (const event of new_node.listening) {
61
+ !this.#events_map.has(event) && this.#events_map.set(event, new Set());
62
+ this.#events_map.get(event)?.add(new_node_id);
63
+ }
58
64
  if (!this.#nodes_map.has(new_node_id)) {
59
65
  const socket = node_socket.opened_by_remote_side ? (await RxjsTcpSocket.connect({
60
66
  host,
@@ -63,7 +69,7 @@ export class BuiltinTransporter {
63
69
  }) || node_socket) : node_socket;
64
70
  // When ofline
65
71
  socket.$status.pipe(filter(status => status == 'closed' || status == 'error'), first()).subscribe(() => {
66
- // process.env.SPIDERMESH_DEBUG && console.log(`[${new Date().toLocaleTimeString()}] [TCP] Node offline ${new_node_id}`)
72
+ // DEBUG && console.log(`[${new Date().toLocaleTimeString()}] [TCP] Node offline ${new_node_id}`)
67
73
  const node = this.#nodes_map.get(new_node_id);
68
74
  node && node.listening.map(evt => {
69
75
  this.#events_map.get(evt)?.delete(node.node_id);
@@ -72,15 +78,9 @@ export class BuiltinTransporter {
72
78
  this.$nodes_status.next({ node_id: new_node_id, online: false });
73
79
  });
74
80
  // Add to map
75
- this.#nodes_map.set(new_node_id, { ...new_node, host, socket });
76
- }
77
- const remote_info = new_node.peers.find(p => p.node_id == this.node_id);
78
- const peer_updated = remote_info && remote_info.version == this.#version;
79
- for (const event of new_node.listening) {
80
- !this.#events_map.has(event) && this.#events_map.set(event, new Set());
81
- this.#events_map.get(event)?.add(new_node_id);
81
+ this.#nodes_map.set(new_node_id, { ...new_node, host, socket, peers: new_node.peers.map(p => ({ ...p, peers: [] })) });
82
+ peer_updated && this.$nodes_status.next({ node_id: new_node_id, online: true });
82
83
  }
83
- peer_updated && this.$nodes_status.next({ node_id: new_node_id, online: true });
84
84
  return {
85
85
  peer_updated,
86
86
  socket: this.#nodes_map.get(new_node_id).socket
@@ -115,6 +115,7 @@ export class BuiltinTransporter {
115
115
  this.#version = Date.now();
116
116
  this.#listeners.get(topic)?.delete(id);
117
117
  this.#listeners.get(topic)?.size == 0 && this.#listeners.delete(topic);
118
+ this.#$rebroadcast.next();
118
119
  };
119
120
  });
120
121
  }
@@ -128,20 +129,10 @@ export class BuiltinTransporter {
128
129
  if (node_id == 'all' || !node_id) {
129
130
  for (const node_id of this.#events_map.get(event) || []) {
130
131
  const node = this.#nodes_map.get(node_id);
131
- await node?.peers.find(p => p.node_id == this.node_id) && node?.socket?.write(msg);
132
+ await node?.socket?.write(msg);
132
133
  }
133
134
  return;
134
135
  }
135
- // if (node_id == 'rr') {
136
- // const key = `${event}.${routing_key || 'default'}`
137
- // const nodes = [... this.#events_map.get(event) || []]
138
- // const current_index = (this.#round_robin_indexes.get(key) || 0) % nodes.length
139
- // this.#round_robin_indexes.set(key, current_index + 1)
140
- // const node_id = nodes[current_index]
141
- // await this.#nodes_map.get(node_id)?.socket?.write(msg)
142
- // return
143
- // }
144
- // p2p
145
136
  node_id && await this.#nodes_map.get(node_id)?.socket?.write(msg);
146
137
  }
147
138
  }
@@ -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,6 +1,6 @@
1
1
  import { Observable } from "rxjs";
2
- import { RPCOptions } from "./RPCOptions";
3
- import { SpiderMeshNode } from "./SpiderMeshNode";
2
+ import { RPCOptions } from "./RPCOptions.js";
3
+ import { SpiderMeshNode } from "./SpiderMeshNode.js";
4
4
  export type RemoteService<T = {
5
5
  [key: string]: any;
6
6
  }> = ({
@@ -1,5 +1,5 @@
1
1
  import { Subject } from "rxjs";
2
- import { RxjsTcpSocket } from "./RxjsTcpSocket";
2
+ import { RxjsTcpSocket } from "./RxjsTcpSocket.js";
3
3
  export declare class RxjsTcpServer {
4
4
  static start<T = object>(start_port?: number): Subject<{
5
5
  port: number;
@@ -1,6 +1,6 @@
1
1
  import { createServer } from "net";
2
2
  import { Subject } from "rxjs";
3
- import { RxjsTcpSocket } from "./RxjsTcpSocket";
3
+ import { RxjsTcpSocket } from "./RxjsTcpSocket.js";
4
4
  export class RxjsTcpServer {
5
5
  static start(start_port = 10001) {
6
6
  const $online = new Subject();
@@ -1 +1 @@
1
- {"version":3,"file":"RxjsTcpServer.js","sourceRoot":"","sources":["../../src/RxjsTcpServer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,KAAK,CAAA;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAG/C,MAAM,OAAO,aAAa;IAGtB,MAAM,CAAC,KAAK,CAAa,aAAqB,KAAK;QAC/C,MAAM,OAAO,GAAG,IAAI,OAAO,EAIvB,CAAA;QAGJ,UAAU,CAAC,KAAK,IAAI,EAAE;YAClB,KAAK,IAAI,IAAI,GAAG,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;gBACtC,MAAM,WAAW,GAAG,IAAI,OAAO,EAAoB,CAAA;gBACnD,MAAM,MAAM,GAAG,YAAY,EAAE,CAAA;gBAC7B,MAAM,OAAO,GAAG,MAAM,IAAI,OAAO,CAAU,CAAC,CAAC,EAAE;oBAC3C,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;oBACvC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;oBACpC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;gBACvB,CAAC,CAAC,CAAA;gBACF,IAAI,CAAC,OAAO;oBAAE,SAAQ;gBACtB,MAAM,CAAC,EAAE,CAAC,YAAY,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;oBACnC,MAAM,aAAa,GAAG,MAAM,aAAa,CAAC,IAAI,CAAI,MAAM,CAAC,CAAA;oBACzD,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;gBACnC,CAAC,CAAC,CAAA;gBACF,MAAM,MAAM,GAAG,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAA;gBAC/D,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAA;gBAC3C,MAAM,MAAM,CAAA;gBACZ,MAAM,CAAC,kBAAkB,EAAE,CAAA;aAC9B;QACL,CAAC,CAAC,CAAA;QACF,OAAO,OAAO,CAAA;IAClB,CAAC;CAEJ"}
1
+ {"version":3,"file":"RxjsTcpServer.js","sourceRoot":"","sources":["../../src/RxjsTcpServer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,KAAK,CAAA;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAGlD,MAAM,OAAO,aAAa;IAGtB,MAAM,CAAC,KAAK,CAAa,aAAqB,KAAK;QAC/C,MAAM,OAAO,GAAG,IAAI,OAAO,EAIvB,CAAA;QAGJ,UAAU,CAAC,KAAK,IAAI,EAAE;YAClB,KAAK,IAAI,IAAI,GAAG,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;gBACtC,MAAM,WAAW,GAAG,IAAI,OAAO,EAAoB,CAAA;gBACnD,MAAM,MAAM,GAAG,YAAY,EAAE,CAAA;gBAC7B,MAAM,OAAO,GAAG,MAAM,IAAI,OAAO,CAAU,CAAC,CAAC,EAAE;oBAC3C,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;oBACvC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;oBACpC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;gBACvB,CAAC,CAAC,CAAA;gBACF,IAAI,CAAC,OAAO;oBAAE,SAAQ;gBACtB,MAAM,CAAC,EAAE,CAAC,YAAY,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;oBACnC,MAAM,aAAa,GAAG,MAAM,aAAa,CAAC,IAAI,CAAI,MAAM,CAAC,CAAA;oBACzD,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;gBACnC,CAAC,CAAC,CAAA;gBACF,MAAM,MAAM,GAAG,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAA;gBAC/D,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAA;gBAC3C,MAAM,MAAM,CAAA;gBACZ,MAAM,CAAC,kBAAkB,EAAE,CAAA;aAC9B;QACL,CAAC,CAAC,CAAA;QACF,OAAO,OAAO,CAAA;IAClB,CAAC;CAEJ"}
@@ -1,4 +1,4 @@
1
- /// <reference types="node" />
1
+ /// <reference types="node" resolution-mode="require"/>
2
2
  import { TcpNetConnectOpts, Socket } from "net";
3
3
  import { BehaviorSubject, Subject } from "rxjs";
4
4
  export declare class RxjsTcpSocket<T = any> {
@@ -1,6 +1,7 @@
1
1
  import { createConnection } from "net";
2
2
  import { BehaviorSubject, Subject, filter, firstValueFrom, fromEvent, mergeMap, takeUntil } from "rxjs";
3
- import { sleep } from "./helpers/sleep";
3
+ import { sleep } from "./helpers/sleep.js";
4
+ import { DEBUG } from "./const.js";
4
5
  class RxjsTcpSocket {
5
6
  opened_by_remote_side;
6
7
  static #separator = String.fromCharCode(0x1E);
@@ -30,7 +31,7 @@ class RxjsTcpSocket {
30
31
  socket.removeAllListeners();
31
32
  if (status == 'closed')
32
33
  return;
33
- process.env.SPIDERMESH_DEBUG && console.log(`[${new Date().toLocaleTimeString()}] Socket error, retrying in 1 sec`);
34
+ DEBUG && console.log(`[${new Date().toLocaleTimeString()}] Socket error, retrying in 1 sec`);
34
35
  await sleep(5000);
35
36
  }
36
37
  s(null);
@@ -64,6 +65,10 @@ class RxjsTcpSocket {
64
65
  try {
65
66
  const json = JSON.parse(part);
66
67
  this.$incoming_data.next(json);
68
+ DEBUG && console.log({
69
+ time: `${new Date().getMinutes()}:${new Date().getSeconds()}:${new Date().getMilliseconds()}`,
70
+ received: json
71
+ });
67
72
  }
68
73
  catch (e) {
69
74
  }
@@ -76,6 +81,10 @@ class RxjsTcpSocket {
76
81
  async write(data) {
77
82
  const msg = JSON.stringify(data) + RxjsTcpSocket.#separator;
78
83
  const buffer = Buffer.from(msg);
84
+ DEBUG && console.log({
85
+ time: `${new Date().getMinutes()}:${new Date().getSeconds()}:${new Date().getMilliseconds()}`,
86
+ send: data
87
+ });
79
88
  this.#$outgoing_data.next(buffer);
80
89
  }
81
90
  }
@@ -1 +1 @@
1
- {"version":3,"file":"RxjsTcpSocket.js","sourceRoot":"","sources":["../../src/RxjsTcpSocket.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RxjsTcpSocket.js","sourceRoot":"","sources":["../../src/RxjsTcpSocket.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- import { SpiderMeshNode, SpiderMeshNodeMetadata } from './SpiderMeshNode';
2
- import { SpiderMeshTransporter, SpiderMeshTransporterEvent } from './SpiderMeshTransporter';
3
- import { RPCOptions } from './RPCOptions';
4
- import { RemoteService } from './RemoteService';
1
+ import { SpiderMeshNode, SpiderMeshNodeMetadata } from './SpiderMeshNode.js';
2
+ import { SpiderMeshTransporter, SpiderMeshTransporterEvent } from './SpiderMeshTransporter.js';
3
+ import { RPCOptions } from './RPCOptions.js';
4
+ import { RemoteService } from './RemoteService.js';
5
5
  import { Observable, Subject } from 'rxjs';
6
6
  export type RpcPayload = {
7
7
  id: string;
@@ -21,6 +21,7 @@ export declare class SpiderMeshConfig {
21
21
  node_id?: string;
22
22
  transporter: SpiderMeshTransporter;
23
23
  }
24
+ export type SpiderMeshNamespace = string;
24
25
  export declare class SpiderMesh {
25
26
  #private;
26
27
  private transporter;
@@ -28,14 +29,20 @@ export declare class SpiderMesh {
28
29
  online: boolean;
29
30
  node: SpiderMeshNode;
30
31
  }>;
31
- constructor(transporter: SpiderMeshTransporter);
32
+ constructor(transporter?: SpiderMeshTransporter);
33
+ static add_transporter(transporter: SpiderMeshTransporter): void;
32
34
  $metadata(revalidate_on_join?: boolean): Promise<SpiderMeshNodeMetadata>;
33
35
  $update_isolate_mode(active: boolean): Promise<SpiderMeshNodeMetadata>;
34
- start(): Promise<void>;
35
- rpc(service: string, method: string, args: any, options: RPCOptions): Promise<any>;
36
+ rpc<T = any>(service: string, method: string, args: any, options: RPCOptions): Promise<T>;
36
37
  link_remote_service<T>(factory: {
37
38
  new (...args: any[]): T;
38
- }): RemoteService<T>;
39
+ }, wait_service_online?: boolean): Promise<RemoteService<T>>;
40
+ link_event<T>(event_factory: {
41
+ new (...args: any[]): T;
42
+ }): Promise<{
43
+ publish: (data: T) => Promise<void>;
44
+ listen: () => Observable<SpiderMeshTransporterEvent<any>>;
45
+ }>;
39
46
  publish<T = any>(event: string, data: T): Promise<void>;
40
47
  listen<T = any>(topic: string): Observable<SpiderMeshTransporterEvent<T>>;
41
48
  }
@@ -1,15 +1,17 @@
1
1
  import { randomUUID } from 'crypto';
2
2
  import { get } from 'http';
3
3
  import { networkInterfaces } from 'os';
4
- import { DeepProxy } from './DeepProxy';
5
- import { RPCOptionsList } from './RPCOptions';
4
+ import { DeepProxy } from './DeepProxy.js';
5
+ import { RPCOptionsList } from './RPCOptions.js';
6
6
  import os from 'os';
7
- import { listEventSubscribers } from './decorators/SubscribeEvent';
8
- import { listReadyHookMethods } from './decorators/OnMicroserviceReady';
7
+ import { listEventSubscribers } from './decorators/ListenEvent.js';
8
+ import { listReadyHookMethods } from './decorators/OnMicroserviceReady.js';
9
9
  import { BehaviorSubject, Subject, filter, from, mergeMap } from 'rxjs';
10
10
  import { readFileSync } from 'fs';
11
- import { serviceInstanceList } from './decorators/Microservice';
12
- import { sleep } from './helpers/sleep';
11
+ import { serviceInstanceList } from './decorators/Microservice.js';
12
+ import { sleep } from './helpers/sleep.js';
13
+ import { BuiltinTransporter } from './BuiltinTransporter.js';
14
+ import { DEBUG, DEFAULT_NAMEPSACE, NODE_ID } from './const.js';
13
15
  export class SpiderMeshConfig {
14
16
  namespace;
15
17
  node_id;
@@ -40,8 +42,13 @@ export class SpiderMesh {
40
42
  return s(null);
41
43
  });
42
44
  $nodes_monitor = new Subject();
43
- constructor(transporter) {
45
+ #initing;
46
+ constructor(transporter = new BuiltinTransporter(NODE_ID, DEFAULT_NAMEPSACE)) {
44
47
  this.transporter = transporter;
48
+ this.#initing = this.#init();
49
+ }
50
+ static add_transporter(transporter) {
51
+ new this(transporter);
45
52
  }
46
53
  async $metadata(revalidate_on_join) {
47
54
  const ips = Object.values(networkInterfaces()).map(itf => itf?.map(ip => ip.address) || []).flat(2);
@@ -149,11 +156,7 @@ export class SpiderMesh {
149
156
  return;
150
157
  }
151
158
  }
152
- #started = false;
153
- async start() {
154
- if (this.#started)
155
- return;
156
- this.#started = true;
159
+ async #init() {
157
160
  // Init transporter
158
161
  await this.transporter.start();
159
162
  // Listen RPC
@@ -171,7 +174,7 @@ export class SpiderMesh {
171
174
  node_id
172
175
  });
173
176
  });
174
- serviceInstanceList.pipe(filter(service => service.namespaces.includes(this.transporter.namespace || 'default')), mergeMap(async ({ instance }) => {
177
+ serviceInstanceList.pipe(filter(i => i.namespace == this.transporter.namespace), mergeMap(async ({ instance }) => {
175
178
  await this.#active_local_service(instance);
176
179
  await this.#active_ready_hooks(instance);
177
180
  })).subscribe();
@@ -182,7 +185,7 @@ export class SpiderMesh {
182
185
  if (this.#$isolated.value)
183
186
  return;
184
187
  const peer_updated = node.linked.includes(this.transporter.node_id);
185
- process.env.SPIDERMESH_DEBUG && console.log(`[${new Date().toLocaleString()}] New node `, node, { peer_updated });
188
+ DEBUG && console.log(`[${new Date().toLocaleString()}:${new Date().getMilliseconds()}] New node `, node, { peer_updated });
186
189
  const discovered = this.#remote_nodes.get(node.id);
187
190
  const new_node = {
188
191
  ...discovered || {},
@@ -218,7 +221,7 @@ export class SpiderMesh {
218
221
  const node = this.#remote_nodes.get(id);
219
222
  if (!node)
220
223
  return;
221
- process.env.SPIDERMESH_DEBUG && console.log(`[${new Date().toLocaleString()}] Node ${id} offline`);
224
+ DEBUG && console.log(`[${new Date().toLocaleString()}] Node ${id} offline`);
222
225
  this.$nodes_monitor.next({ node, online: false });
223
226
  this.#remote_rpc_services.forEach(service => {
224
227
  service.nodes = service.nodes?.filter(node => node.id != id);
@@ -236,6 +239,7 @@ export class SpiderMesh {
236
239
  return current.nodes[index].id;
237
240
  }
238
241
  async rpc(service, method, args, options) {
242
+ await this.#initing;
239
243
  return await new Promise(async (success, r) => {
240
244
  const reject = (err) => (options.fallback !== undefined) ? success(options.fallback) : r(err);
241
245
  const rid = randomUUID();
@@ -272,7 +276,7 @@ export class SpiderMesh {
272
276
  return success(options.fallback);
273
277
  });
274
278
  }
275
- link_remote_service(factory) {
279
+ async link_remote_service(factory, wait_service_online = true) {
276
280
  const service_name = factory.name;
277
281
  const omit_properties = new Set([
278
282
  'caller',
@@ -300,6 +304,7 @@ export class SpiderMesh {
300
304
  if (!this.#remote_rpc_services.has(service_name)) {
301
305
  this.#remote_rpc_services.set(service_name, { last_call_index: -1, nodes: [] });
302
306
  }
307
+ wait_service_online && await this.#wait_service_online(service_name);
303
308
  return new Proxy({}, {
304
309
  get: (_, method) => {
305
310
  if (method == '$wait_service_online') {
@@ -325,6 +330,12 @@ export class SpiderMesh {
325
330
  }
326
331
  });
327
332
  }
333
+ async link_event(event_factory) {
334
+ return {
335
+ publish: (data) => this.publish(event_factory.name, data),
336
+ listen: () => this.listen(event_factory.name)
337
+ };
338
+ }
328
339
  async #active_local_service(instance) {
329
340
  const prototype = Object.getPrototypeOf(instance);
330
341
  const name = prototype.constructor.name;
@@ -353,11 +364,12 @@ export class SpiderMesh {
353
364
  // Wait remote service ready
354
365
  await this.#wait_service_online();
355
366
  // Active ready hook
356
- for (const method of listReadyHookMethods(Object.getPrototypeOf(instance))) {
367
+ for (const { method } of listReadyHookMethods(Object.getPrototypeOf(instance))) {
357
368
  instance[method]?.();
358
369
  }
359
370
  }
360
371
  async publish(event, data) {
372
+ await this.#initing;
361
373
  this.transporter.publish({ event, data });
362
374
  }
363
375
  listen(topic) {
@@ -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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"}
@@ -0,0 +1,3 @@
1
+ export declare const DEFAULT_NAMEPSACE = "default";
2
+ export declare const NODE_ID: string;
3
+ export declare const DEBUG: string | undefined;
@@ -0,0 +1,5 @@
1
+ import { randomUUID } from "crypto";
2
+ export const DEFAULT_NAMEPSACE = process.env.SPIDER_MESH_NAMESPACE = 'default';
3
+ export const NODE_ID = process.env.SPIDER_MESH_NODE_ID || randomUUID();
4
+ export const DEBUG = process.env.SPIDERMESH_DEBUG;
5
+ //# sourceMappingURL=const.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"const.js","sourceRoot":"","sources":["../../src/const.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AAEnC,MAAM,CAAC,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAG,SAAS,CAAA;AAC9E,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,UAAU,EAAE,CAAA;AACtE,MAAM,CAAC,MAAM,KAAK,GAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAA"}
@@ -0,0 +1,7 @@
1
+ export declare const key: unique symbol;
2
+ export type EventMetadata = {
3
+ method: string;
4
+ event: string;
5
+ };
6
+ export declare const ListenEvent: <T>(factory: new () => T) => (target: Object, method: any, descriptor: TypedPropertyDescriptor<(event: T) => void>) => void;
7
+ export declare const listEventSubscribers: (target: any) => EventMetadata[];
@@ -1,5 +1,6 @@
1
1
  export const key = Symbol.for('SubscribeEvent');
2
- export const SubscribeEvent = (event) => (target, method, descriptor) => {
2
+ export const ListenEvent = (factory) => (target, method, descriptor) => {
3
+ const event = factory.name;
3
4
  Object.defineProperty(descriptor.value, key, { value: { method, event } });
4
5
  };
5
6
  export const listEventSubscribers = (target) => {
@@ -11,4 +12,4 @@ export const listEventSubscribers = (target) => {
11
12
  }
12
13
  return methods;
13
14
  };
14
- //# sourceMappingURL=SubscribeEvent.js.map
15
+ //# sourceMappingURL=ListenEvent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListenEvent.js","sourceRoot":"","sources":["../../../src/decorators/ListenEvent.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAA;AAI/C,MAAM,CAAC,MAAM,WAAW,GAAG,CAAI,OAAqB,EAAE,EAAE,CAAC,CACrD,MAAc,EACd,MAAM,EACN,UAAuD,EACzD,EAAE;IACA,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAA;IAC1B,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAmB,EAAE,CAAC,CAAA;AAC/F,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,MAAM,EAAE,EAAE;IAC3C,MAAM,OAAO,GAAG,EAAqB,CAAA;IACrC,KAAK,IAAI,CAAC,GAAG,MAAM,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE;QAC1D,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE;YAChD,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;SACrD;KACJ;IACD,OAAO,OAAO,CAAA;AAClB,CAAC,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import { ReplaySubject } from "rxjs";
2
2
  export declare const serviceInstanceList: ReplaySubject<{
3
3
  instance: any;
4
- namespaces: string[];
4
+ namespace: string;
5
5
  }>;
6
- export declare const Microservice: (namespaces?: string[]) => any;
6
+ export declare const Microservice: (namespace?: string) => any;
@@ -1,11 +1,15 @@
1
1
  import { ReplaySubject } from "rxjs";
2
+ import { DEFAULT_NAMEPSACE } from "../const.js";
2
3
  export const serviceInstanceList = new ReplaySubject();
3
- export const Microservice = (namespaces = ['default']) => {
4
+ export const Microservice = (namespace = DEFAULT_NAMEPSACE) => {
4
5
  return ((target) => {
5
6
  class C extends target {
6
7
  constructor(...args) {
7
8
  super(...args);
8
- serviceInstanceList.next({ instance: this, namespaces });
9
+ serviceInstanceList.next({
10
+ instance: this,
11
+ namespace
12
+ });
9
13
  }
10
14
  }
11
15
  Object.defineProperty(C, 'name', { value: target.name });
@@ -1 +1 @@
1
- {"version":3,"file":"Microservice.js","sourceRoot":"","sources":["../../../src/decorators/Microservice.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,MAAM,CAAA;AAEpC,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,aAAa,EAA2C,CAAA;AAG/F,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,aAAuB,CAAC,SAAS,CAAC,EAAE,EAAE;IAC/D,OAAO,CACH,CAAC,MAAmC,EAAE,EAAE;QACpC,MAAM,CAAE,SAAQ,MAAM;YAClB,YAAY,GAAG,IAAW;gBACtB,KAAK,CAAC,GAAG,IAAI,CAAC,CAAA;gBACd,mBAAmB,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAA;YAC5D,CAAC;SACJ;QACD,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAA;QACxD,OAAO,CAAQ,CAAA;IACnB,CAAC,CAGG,CAAA;AACZ,CAAC,CAAA"}
1
+ {"version":3,"file":"Microservice.js","sourceRoot":"","sources":["../../../src/decorators/Microservice.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,MAAM,CAAA;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAE/C,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,aAAa,EAAwC,CAAA;AAG5F,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,YAAoB,iBAAiB,EAAE,EAAE;IAClE,OAAO,CACH,CAAC,MAAmC,EAAE,EAAE;QACpC,MAAM,CAAE,SAAQ,MAAM;YAClB,YAAY,GAAG,IAAW;gBACtB,KAAK,CAAC,GAAG,IAAI,CAAC,CAAA;gBACd,mBAAmB,CAAC,IAAI,CAAC;oBACrB,QAAQ,EAAE,IAAI;oBACd,SAAS;iBACZ,CAAC,CAAA;YACN,CAAC;SACJ;QACD,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAA;QACxD,OAAO,CAAQ,CAAA;IACnB,CAAC,CAGG,CAAA;AACZ,CAAC,CAAA"}
@@ -1,3 +1,6 @@
1
- export declare const OnMicroserviceReadyHook: unique symbol;
2
- export declare const OnMicroserviceReady: () => MethodDecorator;
3
- export declare const listReadyHookMethods: (target: any) => string[];
1
+ export declare const key: unique symbol;
2
+ export type OnMicroserviceReadyMetadata = {
3
+ method: string;
4
+ };
5
+ export declare const OnMicroserviceReady: () => <T>(target: Object, method: string | symbol, descriptor: TypedPropertyDescriptor<T>) => void;
6
+ export declare const listReadyHookMethods: (target: any) => OnMicroserviceReadyMetadata[];
@@ -1,12 +1,12 @@
1
- export const OnMicroserviceReadyHook = Symbol.for('OnMicroserviceReadyHook');
2
- export const OnMicroserviceReady = () => (target, propertyKey, descriptor) => {
3
- Object.defineProperty(descriptor.value, OnMicroserviceReadyHook, { value: true });
1
+ export const key = Symbol.for('OnMicroserviceReadyHook');
2
+ export const OnMicroserviceReady = () => (target, method, descriptor) => {
3
+ Object.defineProperty(descriptor.value, key, { value: { method } });
4
4
  };
5
5
  export const listReadyHookMethods = (target) => {
6
6
  const methods = [];
7
7
  for (let f = target; f != null; f = Object.getPrototypeOf(f)) {
8
8
  for (const method of Object.getOwnPropertyNames(f)) {
9
- f[method]?.[OnMicroserviceReadyHook] && methods.push(method);
9
+ f[method]?.[key] && methods.push(f[method]?.[key]);
10
10
  }
11
11
  }
12
12
  return methods;
@@ -1 +1 @@
1
- {"version":3,"file":"OnMicroserviceReady.js","sourceRoot":"","sources":["../../../src/decorators/OnMicroserviceReady.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,MAAM,uBAAuB,GAAG,MAAM,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAA;AAE5E,MAAM,CAAC,MAAM,mBAAmB,GAA0B,GAAG,EAAE,CAAC,CAAI,MAAc,EAAE,WAA4B,EAAE,UAAsC,EAAE,EAAE;IACxJ,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,KAAK,EAAE,uBAAuB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;AACrF,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,MAAM,EAAE,EAAE;IAC3C,MAAM,OAAO,GAAG,EAAc,CAAA;IAC9B,KAAK,IAAI,CAAC,GAAG,MAAM,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE;QAC1D,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE;YAChD,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,uBAAuB,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;SAC/D;KACJ;IACD,OAAO,OAAO,CAAA;AAClB,CAAC,CAAA"}
1
+ {"version":3,"file":"OnMicroserviceReady.js","sourceRoot":"","sources":["../../../src/decorators/OnMicroserviceReady.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAA;AAIxD,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,EAAE,CAAC,CACrC,MAAc,EACd,MAAuB,EACvB,UAAsC,EACxC,EAAE;IACA,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,EAAE,MAAM,EAAiC,EAAE,CAAC,CAAA;AACtG,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,MAAM,EAAE,EAAE;IAC3C,MAAM,OAAO,GAAG,EAAmC,CAAA;IACnD,KAAK,IAAI,CAAC,GAAG,MAAM,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE;QAC1D,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE;YAChD,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;SACrD;KACJ;IACD,OAAO,OAAO,CAAA;AAClB,CAAC,CAAA"}
@@ -1,3 +1,3 @@
1
- /// <reference types="node" />
1
+ /// <reference types="node" resolution-mode="require"/>
2
2
  import { EventEmitter } from "stream";
3
3
  export declare function waitFirstEvent(target: EventEmitter, ...events: string[]): Promise<unknown[]>;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@spider-mesh/core",
3
3
  "type": "module",
4
- "version": "1.0.23",
4
+ "version": "1.0.24",
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",
package/tsconfig.json CHANGED
@@ -8,10 +8,10 @@
8
8
  "DOM",
9
9
  "ES2021"
10
10
  ],
11
- "module": "esnext",
11
+ "module": "NodeNext",
12
12
  "strict": true,
13
13
  "sourceMap": true,
14
- "moduleResolution": "node",
14
+ "moduleResolution": "NodeNext",
15
15
  "allowSyntheticDefaultImports": true,
16
16
  "declaration": true,
17
17
  "emitDecoratorMetadata": true,
@@ -19,7 +19,7 @@
19
19
  "strictPropertyInitialization": false,
20
20
  "noImplicitAny": false,
21
21
  "esModuleInterop": true,
22
- "skipLibCheck": true
22
+ "skipLibCheck": true
23
23
  },
24
24
  "exclude": [
25
25
  "bin/*",
@@ -1,6 +0,0 @@
1
- export declare const key: unique symbol;
2
- export declare const SubscribeEvent: (event: string) => <T>(target: Object, method: any, descriptor: TypedPropertyDescriptor<T>) => void;
3
- export declare const listEventSubscribers: (target: any) => {
4
- method: string;
5
- event: string;
6
- }[];
@@ -1 +0,0 @@
1
- {"version":3,"file":"SubscribeEvent.js","sourceRoot":"","sources":["../../../src/decorators/SubscribeEvent.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAA;AAG/C,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,CAC7C,MAAc,EACd,MAAM,EACN,UAAsC,EACxC,EAAE;IACA,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAAA;AAC9E,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,MAAM,EAAE,EAAE;IAC3C,MAAM,OAAO,GAAG,EAA0C,CAAA;IAC1D,KAAK,IAAI,CAAC,GAAG,MAAM,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE;QAC1D,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE;YAChD,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;SACrD;KACJ;IACD,OAAO,OAAO,CAAA;AAClB,CAAC,CAAA"}
package/yarn.lock DELETED
@@ -1,197 +0,0 @@
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.4"
47
- resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.4.tgz#0b92dcc0cc1c81f6f306a381f28e31b1a56536e9"
48
- integrity sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==
49
-
50
- "@types/node@^18.16.0":
51
- version "18.17.1"
52
- resolved "https://registry.yarnpkg.com/@types/node/-/node-18.17.1.tgz#84c32903bf3a09f7878c391d31ff08f6fe7d8335"
53
- integrity sha512-xlR1jahfizdplZYRU59JlUx9uzF1ARa8jbhM11ccpCJya8kvos5jwdm2ZAgxSCwOl0fq21svP18EVwPBXMQudw==
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.10.0"
70
- resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.10.0.tgz#8be5b3907a67221a81ab23c7889c4c5526b62ec5"
71
- integrity sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==
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
- rxjs@^7.8.1:
134
- version "7.8.1"
135
- resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.8.1.tgz#6f6f3d99ea8044291efd92e7c7fcf562c4057543"
136
- integrity sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==
137
- dependencies:
138
- tslib "^2.1.0"
139
-
140
- split@^1.0.1:
141
- version "1.0.1"
142
- resolved "https://registry.yarnpkg.com/split/-/split-1.0.1.tgz#605bd9be303aa59fb35f9229fbea0ddec9ea07d9"
143
- integrity sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==
144
- dependencies:
145
- through "2"
146
-
147
- stream-combiner@^0.2.2:
148
- version "0.2.2"
149
- resolved "https://registry.yarnpkg.com/stream-combiner/-/stream-combiner-0.2.2.tgz#aec8cbac177b56b6f4fa479ced8c1912cee52858"
150
- integrity sha512-6yHMqgLYDzQDcAkL+tjJDC5nSNuNIx0vZtRZeiPh7Saef7VHX9H5Ijn9l2VIol2zaNYlYEX6KyuT/237A58qEQ==
151
- dependencies:
152
- duplexer "~0.1.1"
153
- through "~2.3.4"
154
-
155
- through@2, "through@>=2.2.7 <3", through@^2.3.8, through@~2.3, through@~2.3.4:
156
- version "2.3.8"
157
- resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5"
158
- integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==
159
-
160
- ts-node@^10.9.1:
161
- version "10.9.1"
162
- resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.9.1.tgz#e73de9102958af9e1f0b168a6ff320e25adcff4b"
163
- integrity sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==
164
- dependencies:
165
- "@cspotcode/source-map-support" "^0.8.0"
166
- "@tsconfig/node10" "^1.0.7"
167
- "@tsconfig/node12" "^1.0.7"
168
- "@tsconfig/node14" "^1.0.0"
169
- "@tsconfig/node16" "^1.0.2"
170
- acorn "^8.4.1"
171
- acorn-walk "^8.1.1"
172
- arg "^4.1.0"
173
- create-require "^1.1.0"
174
- diff "^4.0.1"
175
- make-error "^1.1.1"
176
- v8-compile-cache-lib "^3.0.1"
177
- yn "3.1.1"
178
-
179
- tslib@^2.1.0:
180
- version "2.6.1"
181
- resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.1.tgz#fd8c9a0ff42590b25703c0acb3de3d3f4ede0410"
182
- integrity sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig==
183
-
184
- typescript@^5.0.4:
185
- version "5.1.6"
186
- resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.1.6.tgz#02f8ac202b6dad2c0dd5e0913745b47a37998274"
187
- integrity sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==
188
-
189
- v8-compile-cache-lib@^3.0.1:
190
- version "3.0.1"
191
- resolved "https://registry.yarnpkg.com/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf"
192
- integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==
193
-
194
- yn@3.1.1:
195
- version "3.1.1"
196
- resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50"
197
- integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==