@spider-mesh/core 1.0.119 → 1.0.120
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.
- package/build/src/Encoder.d.ts +4 -9
- package/build/src/Encoder.js +3 -35
- package/build/src/Encoder.js.map +1 -1
- package/build/src/SpiderMesh.d.ts +41 -45
- package/build/src/SpiderMesh.js +215 -273
- package/build/src/SpiderMesh.js.map +1 -1
- package/build/src/builtin-transporter/BuiltinTransporter.d.ts +5 -10
- package/build/src/builtin-transporter/BuiltinTransporter.js +85 -94
- package/build/src/builtin-transporter/BuiltinTransporter.js.map +1 -1
- package/build/src/builtin-transporter/RxjsTcpServer.d.ts +4 -9
- package/build/src/builtin-transporter/RxjsTcpServer.js +25 -25
- package/build/src/builtin-transporter/RxjsTcpServer.js.map +1 -1
- package/build/src/builtin-transporter/RxjsTcpSocket.d.ts +1 -0
- package/build/src/builtin-transporter/RxjsTcpSocket.js +3 -0
- package/build/src/builtin-transporter/RxjsTcpSocket.js.map +1 -1
- package/build/src/builtin-transporter/RxjsUdpServer.d.ts +20 -0
- package/build/src/builtin-transporter/RxjsUdpServer.js +83 -0
- package/build/src/builtin-transporter/RxjsUdpServer.js.map +1 -0
- package/build/src/const.d.ts +1 -0
- package/build/src/const.js +1 -0
- package/build/src/const.js.map +1 -1
- package/build/src/decorators/Microservice.d.ts +3 -1
- package/build/src/interfaces/SpiderMeshNode.d.ts +3 -1
- package/build/src/interfaces/SpiderMeshTransporter.d.ts +13 -12
- package/build/tests/Rpc.d.ts +1 -0
- package/build/tests/Rpc.js +102 -0
- package/build/tests/Rpc.js.map +1 -0
- package/package.json +1 -1
- package/tsconfig.json +2 -1
- package/build/src/builtin-transporter/RxjsUdpBroadcaster.d.ts +0 -19
- package/build/src/builtin-transporter/RxjsUdpBroadcaster.js +0 -56
- package/build/src/builtin-transporter/RxjsUdpBroadcaster.js.map +0 -1
- package/build/src/decorators/LimitConcurrentRunning.d.ts +0 -3
- package/build/src/decorators/LimitConcurrentRunning.js +0 -23
- package/build/src/decorators/LimitConcurrentRunning.js.map +0 -1
- package/build/src/helpers/waitFirstEvent.d.ts +0 -3
- package/build/src/helpers/waitFirstEvent.js +0 -5
- package/build/src/helpers/waitFirstEvent.js.map +0 -1
- package/build/src/index.d.ts +0 -12
- package/build/src/index.js +0 -10
- package/build/src/index.js.map +0 -1
|
@@ -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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"}
|
|
@@ -1,16 +1,11 @@
|
|
|
1
|
-
import { PublishMetadata, SpiderMeshTransporter, SpiderMeshTransporterEvent } from "../interfaces/SpiderMeshTransporter.js";
|
|
1
|
+
import { PublishMetadata, SpiderMeshTransporter, SpiderMeshTransporterEvent, TcpNodeStatus } from "../interfaces/SpiderMeshTransporter.js";
|
|
2
2
|
import { Observable, Subject } from 'rxjs';
|
|
3
3
|
import { Encodeable } from "../Encoder.js";
|
|
4
4
|
export declare class BuiltinTransporter implements SpiderMeshTransporter {
|
|
5
5
|
#private;
|
|
6
|
-
readonly
|
|
7
|
-
readonly
|
|
8
|
-
|
|
9
|
-
node_id: string;
|
|
10
|
-
online: boolean;
|
|
11
|
-
}>;
|
|
12
|
-
constructor(node_id: string, namespace: string);
|
|
13
|
-
start(): Promise<void>;
|
|
6
|
+
readonly $nodes_status: Subject<TcpNodeStatus>;
|
|
7
|
+
readonly transporter_id: string;
|
|
8
|
+
constructor();
|
|
14
9
|
listen<T extends Encodeable = Encodeable>(topic: string): Observable<SpiderMeshTransporterEvent<T>>;
|
|
15
|
-
publish({ data, event,
|
|
10
|
+
publish({ data, event, remote_transporter_id }: PublishMetadata): Promise<void>;
|
|
16
11
|
}
|
|
@@ -1,129 +1,120 @@
|
|
|
1
1
|
import { randomUUID } from "crypto";
|
|
2
|
-
import { Observable, Subject,
|
|
2
|
+
import { Observable, Subject, filter, finalize, first, map, merge, mergeMap } from 'rxjs';
|
|
3
3
|
import { RxjsTcpSocket } from "./RxjsTcpSocket.js";
|
|
4
4
|
import { RxjsTcpServer } from "./RxjsTcpServer.js";
|
|
5
|
-
import {
|
|
6
|
-
import { UDP_BROADCAST_PORT, UDP_BROADCAST_ADDRESS } from "../const.js";
|
|
5
|
+
import { RxjsUdpServer } from "./RxjsUdpServer.js";
|
|
6
|
+
import { UDP_BROADCAST_PORT, UDP_BROADCAST_ADDRESS, NAMEPSACE } from "../const.js";
|
|
7
7
|
import { Encoder } from "../Encoder.js";
|
|
8
8
|
export class BuiltinTransporter {
|
|
9
|
-
node_id;
|
|
10
|
-
namespace;
|
|
11
9
|
$nodes_status = new Subject();
|
|
12
10
|
#version = Date.now();
|
|
13
11
|
#listeners = new Map;
|
|
14
12
|
#nodes_map = new Map;
|
|
15
13
|
#events_map = new Map();
|
|
16
14
|
#$rebroadcast = new Subject();
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
socket.$incoming_data
|
|
24
|
-
.pipe(takeUntil(socket.$status.pipe(filter(s => s == 'closed'))), map(buf => Encoder.decode(buf)), filter(Boolean), filter(msg => msg.sender_node_id != this.node_id), filter(msg => msg.namespace == this.namespace))
|
|
25
|
-
.subscribe(async (msg) => {
|
|
26
|
-
const data = msg.data;
|
|
27
|
-
if (msg.topic == `#hello`) {
|
|
28
|
-
return await this.#sync_node(socket, data);
|
|
29
|
-
}
|
|
30
|
-
this.#listeners.get(msg.topic)?.forEach(cb => cb(msg.sender_node_id, data));
|
|
31
|
-
});
|
|
32
|
-
!socket.opened_by_remote_side && this.#tcp_hello(socket);
|
|
33
|
-
}
|
|
34
|
-
async start() {
|
|
35
|
-
const tcp_server = await RxjsTcpServer.start();
|
|
36
|
-
const udp_broadcaster = await RxjsUdpBroadcaster.start({
|
|
37
|
-
namespace: this.namespace,
|
|
38
|
-
node_id: this.node_id,
|
|
15
|
+
transporter_id = randomUUID();
|
|
16
|
+
#$tcp = new RxjsTcpServer();
|
|
17
|
+
constructor() {
|
|
18
|
+
const $udp = new RxjsUdpServer({
|
|
19
|
+
$tcp_server_port: this.#$tcp.$port,
|
|
20
|
+
namespace: NAMEPSACE,
|
|
39
21
|
udp_port: UDP_BROADCAST_PORT,
|
|
40
|
-
udp_address: UDP_BROADCAST_ADDRESS
|
|
41
|
-
|
|
42
|
-
const $udp_connections = udp_broadcaster.$new_node_discovered.pipe(mergeMap(node => RxjsTcpSocket.connect({
|
|
43
|
-
...node,
|
|
44
|
-
keepAlive: true,
|
|
45
|
-
retry_delay_ms: 5000,
|
|
46
|
-
retry_times: 5
|
|
47
|
-
})), filter(Boolean));
|
|
48
|
-
tcp_server.$online.subscribe(({ port, $connection: $tcp_connections, $error }) => {
|
|
49
|
-
this.#running_tcp_port = port;
|
|
50
|
-
merge($tcp_connections, $udp_connections).pipe(takeUntil($error), map(socket => this.#on_new_connection(socket))).subscribe();
|
|
51
|
-
udp_broadcaster.broadcast(port);
|
|
52
|
-
this.#$rebroadcast.pipe(debounceTime(1000), takeUntil($error), map(() => [...this.#nodes_map.values()]), mergeAll(), mergeMap(node => this.#tcp_hello(node.socket))).subscribe();
|
|
22
|
+
udp_address: UDP_BROADCAST_ADDRESS,
|
|
23
|
+
transporter_id: this.transporter_id
|
|
53
24
|
});
|
|
25
|
+
merge(this.#$tcp, $udp).pipe(mergeMap(socket => {
|
|
26
|
+
const $ = socket.$incoming_data.pipe(map(buf => {
|
|
27
|
+
try {
|
|
28
|
+
return Encoder.decode(buf);
|
|
29
|
+
}
|
|
30
|
+
catch (e) { }
|
|
31
|
+
}), filter(Boolean), mergeMap(async (msg) => {
|
|
32
|
+
const data = msg.data;
|
|
33
|
+
if (msg.topic == `#hello`) {
|
|
34
|
+
const host = socket.rawSocket.remoteAddress;
|
|
35
|
+
host && await this.#sync_node(socket, {
|
|
36
|
+
...data,
|
|
37
|
+
host
|
|
38
|
+
});
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
this.#listeners.get(msg.topic)?.forEach(cb => cb(msg.sender_transport_id, data));
|
|
42
|
+
}));
|
|
43
|
+
!socket.opened_by_remote_side && this.#tcp_hello(socket);
|
|
44
|
+
return $;
|
|
45
|
+
})).subscribe();
|
|
54
46
|
}
|
|
55
|
-
async #sync_node(
|
|
56
|
-
const host =
|
|
57
|
-
|
|
58
|
-
return;
|
|
59
|
-
const new_node_id = new_node.node_id;
|
|
60
|
-
const remote_info = new_node.peers.find(p => p.node_id == this.node_id);
|
|
61
|
-
const peer_updated = remote_info ? remote_info.version == this.#version : false;
|
|
62
|
-
for (const event of new_node.listening) {
|
|
47
|
+
async #sync_node(current_socket, metadata) {
|
|
48
|
+
const host = metadata.host;
|
|
49
|
+
for (const event of metadata.listening) {
|
|
63
50
|
!this.#events_map.has(event) && this.#events_map.set(event, new Set());
|
|
64
|
-
this.#events_map.get(event)?.add(
|
|
51
|
+
this.#events_map.get(event)?.add(metadata.transporter_id);
|
|
65
52
|
}
|
|
66
|
-
|
|
53
|
+
const cached = this.#nodes_map.get(metadata.transporter_id);
|
|
54
|
+
if (cached && cached.version > 0)
|
|
67
55
|
return;
|
|
68
|
-
const socket =
|
|
56
|
+
const socket = current_socket.opened_by_remote_side ? (await RxjsTcpSocket.connect({
|
|
69
57
|
host,
|
|
70
|
-
port:
|
|
58
|
+
port: metadata.port,
|
|
71
59
|
keepAlive: true,
|
|
72
60
|
retry_delay_ms: 200,
|
|
73
61
|
retry_times: 5
|
|
74
|
-
}) ||
|
|
75
|
-
const
|
|
76
|
-
|
|
62
|
+
}) || current_socket) : current_socket;
|
|
63
|
+
const new_node = {
|
|
64
|
+
...metadata,
|
|
65
|
+
host,
|
|
66
|
+
socket,
|
|
67
|
+
peers: metadata.peers.map(p => ({ ...p, peers: [] }))
|
|
68
|
+
};
|
|
69
|
+
this.#nodes_map.set(metadata.transporter_id, new_node);
|
|
70
|
+
const remote_info = new_node.peers.find(p => p.transporter_id == this.transporter_id);
|
|
71
|
+
const peer_updated = remote_info ? remote_info.version == this.#version : false;
|
|
72
|
+
!peer_updated && this.#tcp_hello(socket);
|
|
73
|
+
this.$nodes_status.next({
|
|
74
|
+
online: true,
|
|
75
|
+
local_transporter_id: this.transporter_id,
|
|
76
|
+
remote_transporter_id: metadata.transporter_id,
|
|
77
|
+
});
|
|
78
|
+
socket.$status.pipe(filter(status => status != 'ready'), first(), finalize(() => {
|
|
79
|
+
const node = this.#nodes_map.get(metadata.transporter_id);
|
|
77
80
|
node && node.listening.map(evt => {
|
|
78
|
-
this.#events_map.get(evt)?.delete(
|
|
81
|
+
this.#events_map.get(evt)?.delete(metadata.transporter_id);
|
|
79
82
|
});
|
|
80
|
-
this.#nodes_map.delete(
|
|
81
|
-
this.$nodes_status.next({
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
host,
|
|
88
|
-
socket,
|
|
89
|
-
peers: new_node.peers.map(p => ({ ...p, peers: [] }))
|
|
90
|
-
};
|
|
91
|
-
this.#nodes_map.set(new_node_id, nn);
|
|
92
|
-
this.$nodes_status.next({ node_id: new_node_id, online: true });
|
|
93
|
-
}
|
|
94
|
-
else {
|
|
95
|
-
cleaner();
|
|
96
|
-
}
|
|
97
|
-
}), finalize(cleaner)).subscribe();
|
|
98
|
-
!peer_updated && this.#tcp_hello(node_socket);
|
|
83
|
+
this.#nodes_map.delete(metadata.transporter_id);
|
|
84
|
+
this.$nodes_status.next({
|
|
85
|
+
remote_transporter_id: metadata.transporter_id,
|
|
86
|
+
online: false,
|
|
87
|
+
local_transporter_id: this.transporter_id
|
|
88
|
+
});
|
|
89
|
+
})).subscribe();
|
|
99
90
|
}
|
|
100
91
|
async #tcp_hello(tcp_socket) {
|
|
101
|
-
|
|
102
|
-
return;
|
|
92
|
+
const port = this.#$tcp.$port.getValue();
|
|
103
93
|
const data = {
|
|
104
94
|
host: '',
|
|
105
|
-
|
|
106
|
-
port
|
|
95
|
+
transporter_id: this.transporter_id,
|
|
96
|
+
port,
|
|
107
97
|
listening: ['#hello', ...this.#listeners.keys()],
|
|
108
98
|
peers: [...this.#nodes_map.values()].map(({ socket, ...node }) => node),
|
|
109
99
|
version: this.#version
|
|
110
100
|
};
|
|
111
101
|
const msg = {
|
|
112
102
|
data,
|
|
113
|
-
namespace:
|
|
114
|
-
|
|
115
|
-
|
|
103
|
+
namespace: NAMEPSACE,
|
|
104
|
+
topic: '#hello',
|
|
105
|
+
sender_transport_id: this.transporter_id
|
|
116
106
|
};
|
|
117
|
-
tcp_socket.write(Encoder.encode(msg)
|
|
107
|
+
tcp_socket.write(Encoder.encode(msg));
|
|
118
108
|
}
|
|
119
109
|
listen(topic) {
|
|
120
110
|
return new Observable(o => {
|
|
121
111
|
this.#version = Date.now();
|
|
122
112
|
!this.#listeners.has(topic) && this.#listeners.set(topic, new Map());
|
|
123
113
|
const id = randomUUID();
|
|
124
|
-
this.#listeners.get(topic)?.set(id, (
|
|
125
|
-
|
|
126
|
-
|
|
114
|
+
this.#listeners.get(topic)?.set(id, (sender_transporter_id, data) => o.next({
|
|
115
|
+
data,
|
|
116
|
+
received_transporter_id: this.transporter_id,
|
|
117
|
+
sender_transporter_id
|
|
127
118
|
}));
|
|
128
119
|
this.#$rebroadcast.next();
|
|
129
120
|
return () => {
|
|
@@ -134,22 +125,22 @@ export class BuiltinTransporter {
|
|
|
134
125
|
};
|
|
135
126
|
});
|
|
136
127
|
}
|
|
137
|
-
async publish({ data, event,
|
|
128
|
+
async publish({ data, event, remote_transporter_id }) {
|
|
138
129
|
const msg = {
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
130
|
+
namespace: NAMEPSACE,
|
|
131
|
+
sender_transport_id: this.transporter_id,
|
|
132
|
+
topic: event || remote_transporter_id || '#',
|
|
133
|
+
data
|
|
143
134
|
};
|
|
144
|
-
const
|
|
145
|
-
if (
|
|
135
|
+
const buffer = Encoder.encode(msg);
|
|
136
|
+
if (remote_transporter_id == 'all' || !remote_transporter_id) {
|
|
146
137
|
for (const node_id of this.#events_map.get(event) || []) {
|
|
147
138
|
const node = this.#nodes_map.get(node_id);
|
|
148
139
|
await node?.socket?.write(buffer);
|
|
149
140
|
}
|
|
150
141
|
return;
|
|
151
142
|
}
|
|
152
|
-
|
|
143
|
+
remote_transporter_id && await this.#nodes_map.get(remote_transporter_id)?.socket?.write(buffer);
|
|
153
144
|
}
|
|
154
145
|
}
|
|
155
146
|
//# sourceMappingURL=BuiltinTransporter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BuiltinTransporter.js","sourceRoot":"","sources":["../../../src/builtin-transporter/BuiltinTransporter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEpC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"BuiltinTransporter.js","sourceRoot":"","sources":["../../../src/builtin-transporter/BuiltinTransporter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { BehaviorSubject, Observable } from "rxjs";
|
|
2
2
|
import { RxjsTcpSocket } from "./RxjsTcpSocket.js";
|
|
3
|
-
export declare class RxjsTcpServer {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
port: number;
|
|
7
|
-
$connection: Subject<RxjsTcpSocket>;
|
|
8
|
-
$error: Observable<Error>;
|
|
9
|
-
}>;
|
|
10
|
-
};
|
|
3
|
+
export declare class RxjsTcpServer extends Observable<RxjsTcpSocket> {
|
|
4
|
+
$port: BehaviorSubject<number>;
|
|
5
|
+
constructor(start_port?: number);
|
|
11
6
|
}
|
|
@@ -1,31 +1,31 @@
|
|
|
1
1
|
import { createServer } from "net";
|
|
2
|
-
import {
|
|
2
|
+
import { BehaviorSubject, Observable, firstValueFrom, fromEvent } from "rxjs";
|
|
3
3
|
import { RxjsTcpSocket } from "./RxjsTcpSocket.js";
|
|
4
|
-
export class RxjsTcpServer {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
4
|
+
export class RxjsTcpServer extends Observable {
|
|
5
|
+
$port = new BehaviorSubject(0);
|
|
6
|
+
constructor(start_port = 10001) {
|
|
7
|
+
super(o => {
|
|
8
|
+
setTimeout(async () => {
|
|
9
|
+
for (let tcp_port = start_port; true; tcp_port++) {
|
|
10
|
+
const server = createServer();
|
|
11
|
+
const success = await new Promise(s => {
|
|
12
|
+
server.once('listening', () => s(true));
|
|
13
|
+
server.once('error', () => s(false));
|
|
14
|
+
server.listen(tcp_port);
|
|
15
|
+
});
|
|
16
|
+
if (!success)
|
|
17
|
+
continue;
|
|
18
|
+
this.$port.next(tcp_port);
|
|
19
|
+
server.on('connection', async (socket) => {
|
|
20
|
+
const stable_socket = await RxjsTcpSocket.join(socket);
|
|
21
|
+
o.next(stable_socket);
|
|
22
|
+
});
|
|
23
|
+
const $error = fromEvent(server, 'error');
|
|
24
|
+
await firstValueFrom($error);
|
|
25
|
+
server.removeAllListeners();
|
|
26
|
+
}
|
|
27
|
+
});
|
|
27
28
|
});
|
|
28
|
-
return { $online };
|
|
29
29
|
}
|
|
30
30
|
}
|
|
31
31
|
//# sourceMappingURL=RxjsTcpServer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RxjsTcpServer.js","sourceRoot":"","sources":["../../../src/builtin-transporter/RxjsTcpServer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,KAAK,CAAA;AAClC,OAAO,
|
|
1
|
+
{"version":3,"file":"RxjsTcpServer.js","sourceRoot":"","sources":["../../../src/builtin-transporter/RxjsTcpServer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,KAAK,CAAA;AAClC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAW,cAAc,EAAE,SAAS,EAAE,MAAM,MAAM,CAAA;AACtF,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAGlD,MAAM,OAAO,aAAc,SAAQ,UAAyB;IAExD,KAAK,GAAG,IAAI,eAAe,CAAS,CAAC,CAAC,CAAA;IAEtC,YAAY,aAAqB,KAAK;QAClC,KAAK,CAAC,CAAC,CAAC,EAAE;YACN,UAAU,CAAC,KAAK,IAAI,EAAE;gBAClB,KAAK,IAAI,QAAQ,GAAG,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;oBAC9C,MAAM,MAAM,GAAG,YAAY,EAAE,CAAA;oBAC7B,MAAM,OAAO,GAAG,MAAM,IAAI,OAAO,CAAU,CAAC,CAAC,EAAE;wBAC3C,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;wBACvC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;wBACpC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;oBAC3B,CAAC,CAAC,CAAA;oBACF,IAAI,CAAC,OAAO;wBAAE,SAAQ;oBACtB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;oBACzB,MAAM,CAAC,EAAE,CAAC,YAAY,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;wBACnC,MAAM,aAAa,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;wBACtD,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;oBACzB,CAAC,CAAC,CAAA;oBACF,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,OAAO,CAAsB,CAAA;oBAC9D,MAAM,cAAc,CAAC,MAAM,CAAC,CAAA;oBAC5B,MAAM,CAAC,kBAAkB,EAAE,CAAA;iBAC9B;YACL,CAAC,CAAC,CAAA;QACN,CAAC,CAAC,CAAA;IACN,CAAC;CAEJ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RxjsTcpSocket.js","sourceRoot":"","sources":["../../../src/builtin-transporter/RxjsTcpSocket.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"RxjsTcpSocket.js","sourceRoot":"","sources":["../../../src/builtin-transporter/RxjsTcpSocket.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Observable, Subject } from "rxjs";
|
|
2
|
+
import { RxjsTcpSocket } from "./RxjsTcpSocket.js";
|
|
3
|
+
export type BroadcastMessage = {
|
|
4
|
+
port: number;
|
|
5
|
+
transporter_id: string;
|
|
6
|
+
namespace: string;
|
|
7
|
+
sig: string;
|
|
8
|
+
};
|
|
9
|
+
export type RxjsUdpBroadcasterConfig = {
|
|
10
|
+
namespace: string;
|
|
11
|
+
udp_address?: string;
|
|
12
|
+
udp_port: number;
|
|
13
|
+
transporter_id: string;
|
|
14
|
+
$tcp_server_port: Subject<number>;
|
|
15
|
+
};
|
|
16
|
+
export declare class RxjsUdpServer extends Observable<RxjsTcpSocket> {
|
|
17
|
+
#private;
|
|
18
|
+
private config;
|
|
19
|
+
constructor(config: RxjsUdpBroadcasterConfig);
|
|
20
|
+
}
|