@livestore/webmesh 0.4.0-dev.9 → 0.5.0-dev.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -3
- package/dist/.tsbuildinfo +1 -1
- package/dist/channel/direct-channel-internal.d.ts +2 -3
- package/dist/channel/direct-channel-internal.d.ts.map +1 -1
- package/dist/channel/direct-channel-internal.js +35 -38
- package/dist/channel/direct-channel-internal.js.map +1 -1
- package/dist/channel/direct-channel.d.ts.map +1 -1
- package/dist/channel/direct-channel.js +22 -23
- package/dist/channel/direct-channel.js.map +1 -1
- package/dist/channel/proxy-channel.d.ts +29 -5
- package/dist/channel/proxy-channel.d.ts.map +1 -1
- package/dist/channel/proxy-channel.js +87 -37
- package/dist/channel/proxy-channel.js.map +1 -1
- package/dist/common.d.ts +33 -35
- package/dist/common.d.ts.map +1 -1
- package/dist/common.js +7 -7
- package/dist/common.js.map +1 -1
- package/dist/mesh-schema.d.ts +262 -136
- package/dist/mesh-schema.d.ts.map +1 -1
- package/dist/mesh-schema.js +45 -44
- package/dist/mesh-schema.js.map +1 -1
- package/dist/node.d.ts +12 -6
- package/dist/node.d.ts.map +1 -1
- package/dist/node.js +47 -44
- package/dist/node.js.map +1 -1
- package/dist/node.test.js +253 -63
- package/dist/node.test.js.map +1 -1
- package/dist/utils.d.ts +1 -1
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js.map +1 -1
- package/dist/websocket-edge.d.ts +20 -18
- package/dist/websocket-edge.d.ts.map +1 -1
- package/dist/websocket-edge.js +33 -41
- package/dist/websocket-edge.js.map +1 -1
- package/dist/websocket-edge.test.d.ts +7 -0
- package/dist/websocket-edge.test.d.ts.map +1 -0
- package/dist/websocket-edge.test.js +74 -0
- package/dist/websocket-edge.test.js.map +1 -0
- package/dist/worker/mod.d.ts +24 -0
- package/dist/worker/mod.d.ts.map +1 -0
- package/dist/worker/mod.js +44 -0
- package/dist/worker/mod.js.map +1 -0
- package/dist/worker/schema.d.ts +10 -0
- package/dist/worker/schema.d.ts.map +1 -0
- package/dist/worker/schema.js +7 -0
- package/dist/worker/schema.js.map +1 -0
- package/package.json +48 -12
- package/src/channel/direct-channel-internal.ts +41 -47
- package/src/channel/direct-channel.ts +28 -25
- package/src/channel/proxy-channel.ts +120 -57
- package/src/common.ts +9 -7
- package/src/mesh-schema.ts +34 -33
- package/src/node.test.ts +356 -80
- package/src/node.ts +63 -55
- package/src/utils.ts +3 -3
- package/src/websocket-edge.test.ts +98 -0
- package/src/websocket-edge.ts +52 -48
- package/src/worker/mod.ts +89 -0
- package/src/worker/schema.ts +8 -0
package/dist/mesh-schema.d.ts
CHANGED
|
@@ -1,20 +1,4 @@
|
|
|
1
|
-
import { Schema } from '@livestore/utils/effect';
|
|
2
|
-
declare const DirectChannelRequest_base: Schema.TaggedStruct<"DirectChannelRequest", {
|
|
3
|
-
remainingHops: Schema.optional<Schema.Array$<typeof Schema.String>>;
|
|
4
|
-
channelVersion: typeof Schema.Number;
|
|
5
|
-
/** Only set if the request is in response to an incoming request */
|
|
6
|
-
reqId: Schema.UndefinedOr<typeof Schema.String>;
|
|
7
|
-
/**
|
|
8
|
-
* Additionally to the `source` field, we use this field to track whether the instance of a
|
|
9
|
-
* source has changed.
|
|
10
|
-
*/
|
|
11
|
-
sourceId: typeof Schema.String;
|
|
12
|
-
id: Schema.PropertySignature<":", string, never, "?:", string | undefined, true, never>;
|
|
13
|
-
target: typeof Schema.String;
|
|
14
|
-
source: typeof Schema.String;
|
|
15
|
-
channelName: typeof Schema.String;
|
|
16
|
-
hops: Schema.Array$<typeof Schema.String>;
|
|
17
|
-
}>;
|
|
1
|
+
import { Schema, Transferable } from '@livestore/utils/effect';
|
|
18
2
|
/**
|
|
19
3
|
* Needs to go through already existing DirectChannel edges, times out otherwise
|
|
20
4
|
*
|
|
@@ -22,149 +6,291 @@ declare const DirectChannelRequest_base: Schema.TaggedStruct<"DirectChannelReque
|
|
|
22
6
|
* We need a clear path back to the sender to avoid this, thus we respond with a separate
|
|
23
7
|
* `DirectChannelResponseSuccess` which contains the `port`.
|
|
24
8
|
*/
|
|
25
|
-
export declare
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
9
|
+
export declare const DirectChannelRequest: Schema.TaggedStruct<"DirectChannelRequest", {
|
|
10
|
+
readonly remainingHops: Schema.optional<Schema.$Array<Schema.String>>;
|
|
11
|
+
readonly channelVersion: Schema.Finite;
|
|
12
|
+
/** Only set if the request is in response to an incoming request */
|
|
13
|
+
readonly reqId: Schema.UndefinedOr<Schema.String>;
|
|
14
|
+
/**
|
|
15
|
+
* Additionally to the `source` field, we use this field to track whether the instance of a
|
|
16
|
+
* source has changed.
|
|
17
|
+
*/
|
|
18
|
+
readonly sourceId: Schema.String;
|
|
19
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
20
|
+
readonly target: Schema.String;
|
|
21
|
+
readonly source: Schema.String;
|
|
22
|
+
readonly channelName: Schema.String;
|
|
23
|
+
readonly hops: Schema.$Array<Schema.String>;
|
|
37
24
|
}>;
|
|
38
|
-
export declare
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
id: Schema.
|
|
44
|
-
target:
|
|
45
|
-
source:
|
|
46
|
-
channelName:
|
|
47
|
-
hops: Schema
|
|
25
|
+
export declare const DirectChannelResponseSuccess: Schema.TaggedStruct<"DirectChannelResponseSuccess", {
|
|
26
|
+
readonly reqId: Schema.String;
|
|
27
|
+
readonly port: Transferable.Transferable<Schema.declare<MessagePort, MessagePort>>;
|
|
28
|
+
readonly remainingHops: Schema.$Array<Schema.String>;
|
|
29
|
+
readonly channelVersion: Schema.Finite;
|
|
30
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
31
|
+
readonly target: Schema.String;
|
|
32
|
+
readonly source: Schema.String;
|
|
33
|
+
readonly channelName: Schema.String;
|
|
34
|
+
readonly hops: Schema.$Array<Schema.String>;
|
|
48
35
|
}>;
|
|
49
|
-
export declare
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
channelName: typeof Schema.String;
|
|
58
|
-
hops: Schema.Array$<typeof Schema.String>;
|
|
36
|
+
export declare const DirectChannelResponseNoTransferables: Schema.TaggedStruct<"DirectChannelResponseNoTransferables", {
|
|
37
|
+
readonly reqId: Schema.String;
|
|
38
|
+
readonly remainingHops: Schema.$Array<Schema.String>;
|
|
39
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
40
|
+
readonly target: Schema.String;
|
|
41
|
+
readonly source: Schema.String;
|
|
42
|
+
readonly channelName: Schema.String;
|
|
43
|
+
readonly hops: Schema.$Array<Schema.String>;
|
|
59
44
|
}>;
|
|
60
|
-
export declare
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
target: typeof Schema.String;
|
|
69
|
-
source: typeof Schema.String;
|
|
70
|
-
channelName: typeof Schema.String;
|
|
71
|
-
hops: Schema.Array$<typeof Schema.String>;
|
|
45
|
+
export declare const ProxyChannelRequest: Schema.TaggedStruct<"ProxyChannelRequest", {
|
|
46
|
+
readonly remainingHops: Schema.optional<Schema.Undefined>;
|
|
47
|
+
readonly channelIdCandidate: Schema.String;
|
|
48
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
49
|
+
readonly target: Schema.String;
|
|
50
|
+
readonly source: Schema.String;
|
|
51
|
+
readonly channelName: Schema.String;
|
|
52
|
+
readonly hops: Schema.$Array<Schema.String>;
|
|
72
53
|
}>;
|
|
73
|
-
export declare
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
hops: Schema.Array$<typeof Schema.String>;
|
|
54
|
+
export declare const ProxyChannelResponseSuccess: Schema.TaggedStruct<"ProxyChannelResponseSuccess", {
|
|
55
|
+
readonly reqId: Schema.String;
|
|
56
|
+
readonly remainingHops: Schema.$Array<Schema.String>;
|
|
57
|
+
readonly combinedChannelId: Schema.String;
|
|
58
|
+
readonly channelIdCandidate: Schema.String;
|
|
59
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
60
|
+
readonly target: Schema.String;
|
|
61
|
+
readonly source: Schema.String;
|
|
62
|
+
readonly channelName: Schema.String;
|
|
63
|
+
readonly hops: Schema.$Array<Schema.String>;
|
|
84
64
|
}>;
|
|
85
|
-
export declare
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
channelName: typeof Schema.String;
|
|
95
|
-
hops: Schema.Array$<typeof Schema.String>;
|
|
65
|
+
export declare const ProxyChannelPayload: Schema.TaggedStruct<"ProxyChannelPayload", {
|
|
66
|
+
readonly remainingHops: Schema.optional<Schema.Undefined>;
|
|
67
|
+
readonly payload: Schema.Any;
|
|
68
|
+
readonly combinedChannelId: Schema.String;
|
|
69
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
70
|
+
readonly target: Schema.String;
|
|
71
|
+
readonly source: Schema.String;
|
|
72
|
+
readonly channelName: Schema.String;
|
|
73
|
+
readonly hops: Schema.$Array<Schema.String>;
|
|
96
74
|
}>;
|
|
97
|
-
export declare
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
target:
|
|
75
|
+
export declare const ProxyChannelPayloadAck: Schema.TaggedStruct<"ProxyChannelPayloadAck", {
|
|
76
|
+
readonly reqId: Schema.String;
|
|
77
|
+
readonly remainingHops: Schema.$Array<Schema.String>;
|
|
78
|
+
readonly combinedChannelId: Schema.String;
|
|
79
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
80
|
+
readonly target: Schema.String;
|
|
81
|
+
readonly source: Schema.String;
|
|
82
|
+
readonly channelName: Schema.String;
|
|
83
|
+
readonly hops: Schema.$Array<Schema.String>;
|
|
103
84
|
}>;
|
|
104
85
|
/**
|
|
105
86
|
* Broadcast to all nodes when a new edge is added.
|
|
106
87
|
* Mostly used for auto-reconnect purposes.
|
|
107
88
|
*/
|
|
108
|
-
export declare
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
89
|
+
export declare const NetworkEdgeAdded: Schema.TaggedStruct<"NetworkEdgeAdded", {
|
|
90
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
91
|
+
readonly source: Schema.String;
|
|
92
|
+
readonly target: Schema.String;
|
|
93
|
+
}>;
|
|
94
|
+
export declare const NetworkTopologyRequest: Schema.TaggedStruct<"NetworkTopologyRequest", {
|
|
95
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
96
|
+
readonly hops: Schema.$Array<Schema.String>;
|
|
113
97
|
/** Always fixed to who requested the topology */
|
|
114
|
-
source:
|
|
115
|
-
target: Schema.Literal<
|
|
98
|
+
readonly source: Schema.String;
|
|
99
|
+
readonly target: Schema.Literal<"-">;
|
|
116
100
|
}>;
|
|
117
|
-
export declare
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
nodeName: typeof Schema.String;
|
|
124
|
-
edges: Schema.Array$<typeof Schema.String>;
|
|
101
|
+
export declare const NetworkTopologyResponse: Schema.TaggedStruct<"NetworkTopologyResponse", {
|
|
102
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
103
|
+
readonly reqId: Schema.String;
|
|
104
|
+
readonly remainingHops: Schema.$Array<Schema.String>;
|
|
105
|
+
readonly nodeName: Schema.String;
|
|
106
|
+
readonly edges: Schema.$Array<Schema.String>;
|
|
125
107
|
/** Always fixed to who requested the topology */
|
|
126
|
-
source:
|
|
127
|
-
target: Schema.Literal<
|
|
108
|
+
readonly source: Schema.String;
|
|
109
|
+
readonly target: Schema.Literal<"-">;
|
|
128
110
|
}>;
|
|
129
|
-
export declare class NetworkTopologyResponse extends NetworkTopologyResponse_base {
|
|
130
|
-
}
|
|
131
111
|
export declare const BroadcastChannelPacket: Schema.TaggedStruct<"BroadcastChannelPacket", {
|
|
132
|
-
id: Schema.
|
|
133
|
-
channelName:
|
|
112
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
113
|
+
readonly channelName: Schema.String;
|
|
134
114
|
/**
|
|
135
115
|
* The payload is expected to be encoded/decoded by the send/listen schema.
|
|
136
116
|
* Transferables are not supported.
|
|
137
117
|
*/
|
|
138
|
-
payload:
|
|
139
|
-
hops: Schema
|
|
140
|
-
source:
|
|
141
|
-
target: Schema.Literal<
|
|
118
|
+
readonly payload: Schema.Any;
|
|
119
|
+
readonly hops: Schema.$Array<Schema.String>;
|
|
120
|
+
readonly source: Schema.String;
|
|
121
|
+
readonly target: Schema.Literal<"-">;
|
|
142
122
|
}>;
|
|
143
|
-
declare const
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
123
|
+
export declare const DirectChannelPacket: Schema.Union<readonly [Schema.TaggedStruct<"DirectChannelRequest", {
|
|
124
|
+
readonly remainingHops: Schema.optional<Schema.$Array<Schema.String>>;
|
|
125
|
+
readonly channelVersion: Schema.Finite;
|
|
126
|
+
/** Only set if the request is in response to an incoming request */
|
|
127
|
+
readonly reqId: Schema.UndefinedOr<Schema.String>;
|
|
128
|
+
/**
|
|
129
|
+
* Additionally to the `source` field, we use this field to track whether the instance of a
|
|
130
|
+
* source has changed.
|
|
131
|
+
*/
|
|
132
|
+
readonly sourceId: Schema.String;
|
|
133
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
134
|
+
readonly target: Schema.String;
|
|
135
|
+
readonly source: Schema.String;
|
|
136
|
+
readonly channelName: Schema.String;
|
|
137
|
+
readonly hops: Schema.$Array<Schema.String>;
|
|
138
|
+
}>, Schema.TaggedStruct<"DirectChannelResponseSuccess", {
|
|
139
|
+
readonly reqId: Schema.String;
|
|
140
|
+
readonly port: Transferable.Transferable<Schema.declare<MessagePort, MessagePort>>;
|
|
141
|
+
readonly remainingHops: Schema.$Array<Schema.String>;
|
|
142
|
+
readonly channelVersion: Schema.Finite;
|
|
143
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
144
|
+
readonly target: Schema.String;
|
|
145
|
+
readonly source: Schema.String;
|
|
146
|
+
readonly channelName: Schema.String;
|
|
147
|
+
readonly hops: Schema.$Array<Schema.String>;
|
|
148
|
+
}>, Schema.TaggedStruct<"DirectChannelResponseNoTransferables", {
|
|
149
|
+
readonly reqId: Schema.String;
|
|
150
|
+
readonly remainingHops: Schema.$Array<Schema.String>;
|
|
151
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
152
|
+
readonly target: Schema.String;
|
|
153
|
+
readonly source: Schema.String;
|
|
154
|
+
readonly channelName: Schema.String;
|
|
155
|
+
readonly hops: Schema.$Array<Schema.String>;
|
|
156
|
+
}>]>;
|
|
157
|
+
export declare const ProxyChannelPacket: Schema.Union<readonly [Schema.TaggedStruct<"ProxyChannelRequest", {
|
|
158
|
+
readonly remainingHops: Schema.optional<Schema.Undefined>;
|
|
159
|
+
readonly channelIdCandidate: Schema.String;
|
|
160
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
161
|
+
readonly target: Schema.String;
|
|
162
|
+
readonly source: Schema.String;
|
|
163
|
+
readonly channelName: Schema.String;
|
|
164
|
+
readonly hops: Schema.$Array<Schema.String>;
|
|
165
|
+
}>, Schema.TaggedStruct<"ProxyChannelResponseSuccess", {
|
|
166
|
+
readonly reqId: Schema.String;
|
|
167
|
+
readonly remainingHops: Schema.$Array<Schema.String>;
|
|
168
|
+
readonly combinedChannelId: Schema.String;
|
|
169
|
+
readonly channelIdCandidate: Schema.String;
|
|
170
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
171
|
+
readonly target: Schema.String;
|
|
172
|
+
readonly source: Schema.String;
|
|
173
|
+
readonly channelName: Schema.String;
|
|
174
|
+
readonly hops: Schema.$Array<Schema.String>;
|
|
175
|
+
}>, Schema.TaggedStruct<"ProxyChannelPayload", {
|
|
176
|
+
readonly remainingHops: Schema.optional<Schema.Undefined>;
|
|
177
|
+
readonly payload: Schema.Any;
|
|
178
|
+
readonly combinedChannelId: Schema.String;
|
|
179
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
180
|
+
readonly target: Schema.String;
|
|
181
|
+
readonly source: Schema.String;
|
|
182
|
+
readonly channelName: Schema.String;
|
|
183
|
+
readonly hops: Schema.$Array<Schema.String>;
|
|
184
|
+
}>, Schema.TaggedStruct<"ProxyChannelPayloadAck", {
|
|
185
|
+
readonly reqId: Schema.String;
|
|
186
|
+
readonly remainingHops: Schema.$Array<Schema.String>;
|
|
187
|
+
readonly combinedChannelId: Schema.String;
|
|
188
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
189
|
+
readonly target: Schema.String;
|
|
190
|
+
readonly source: Schema.String;
|
|
191
|
+
readonly channelName: Schema.String;
|
|
192
|
+
readonly hops: Schema.$Array<Schema.String>;
|
|
193
|
+
}>]>;
|
|
194
|
+
export declare const Packet: Schema.Union<readonly [Schema.Union<readonly [Schema.TaggedStruct<"DirectChannelRequest", {
|
|
195
|
+
readonly remainingHops: Schema.optional<Schema.$Array<Schema.String>>;
|
|
196
|
+
readonly channelVersion: Schema.Finite;
|
|
197
|
+
/** Only set if the request is in response to an incoming request */
|
|
198
|
+
readonly reqId: Schema.UndefinedOr<Schema.String>;
|
|
199
|
+
/**
|
|
200
|
+
* Additionally to the `source` field, we use this field to track whether the instance of a
|
|
201
|
+
* source has changed.
|
|
202
|
+
*/
|
|
203
|
+
readonly sourceId: Schema.String;
|
|
204
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
205
|
+
readonly target: Schema.String;
|
|
206
|
+
readonly source: Schema.String;
|
|
207
|
+
readonly channelName: Schema.String;
|
|
208
|
+
readonly hops: Schema.$Array<Schema.String>;
|
|
209
|
+
}>, Schema.TaggedStruct<"DirectChannelResponseSuccess", {
|
|
210
|
+
readonly reqId: Schema.String;
|
|
211
|
+
readonly port: Transferable.Transferable<Schema.declare<MessagePort, MessagePort>>;
|
|
212
|
+
readonly remainingHops: Schema.$Array<Schema.String>;
|
|
213
|
+
readonly channelVersion: Schema.Finite;
|
|
214
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
215
|
+
readonly target: Schema.String;
|
|
216
|
+
readonly source: Schema.String;
|
|
217
|
+
readonly channelName: Schema.String;
|
|
218
|
+
readonly hops: Schema.$Array<Schema.String>;
|
|
219
|
+
}>, Schema.TaggedStruct<"DirectChannelResponseNoTransferables", {
|
|
220
|
+
readonly reqId: Schema.String;
|
|
221
|
+
readonly remainingHops: Schema.$Array<Schema.String>;
|
|
222
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
223
|
+
readonly target: Schema.String;
|
|
224
|
+
readonly source: Schema.String;
|
|
225
|
+
readonly channelName: Schema.String;
|
|
226
|
+
readonly hops: Schema.$Array<Schema.String>;
|
|
227
|
+
}>]>, Schema.Union<readonly [Schema.TaggedStruct<"ProxyChannelRequest", {
|
|
228
|
+
readonly remainingHops: Schema.optional<Schema.Undefined>;
|
|
229
|
+
readonly channelIdCandidate: Schema.String;
|
|
230
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
231
|
+
readonly target: Schema.String;
|
|
232
|
+
readonly source: Schema.String;
|
|
233
|
+
readonly channelName: Schema.String;
|
|
234
|
+
readonly hops: Schema.$Array<Schema.String>;
|
|
235
|
+
}>, Schema.TaggedStruct<"ProxyChannelResponseSuccess", {
|
|
236
|
+
readonly reqId: Schema.String;
|
|
237
|
+
readonly remainingHops: Schema.$Array<Schema.String>;
|
|
238
|
+
readonly combinedChannelId: Schema.String;
|
|
239
|
+
readonly channelIdCandidate: Schema.String;
|
|
240
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
241
|
+
readonly target: Schema.String;
|
|
242
|
+
readonly source: Schema.String;
|
|
243
|
+
readonly channelName: Schema.String;
|
|
244
|
+
readonly hops: Schema.$Array<Schema.String>;
|
|
245
|
+
}>, Schema.TaggedStruct<"ProxyChannelPayload", {
|
|
246
|
+
readonly remainingHops: Schema.optional<Schema.Undefined>;
|
|
247
|
+
readonly payload: Schema.Any;
|
|
248
|
+
readonly combinedChannelId: Schema.String;
|
|
249
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
250
|
+
readonly target: Schema.String;
|
|
251
|
+
readonly source: Schema.String;
|
|
252
|
+
readonly channelName: Schema.String;
|
|
253
|
+
readonly hops: Schema.$Array<Schema.String>;
|
|
254
|
+
}>, Schema.TaggedStruct<"ProxyChannelPayloadAck", {
|
|
255
|
+
readonly reqId: Schema.String;
|
|
256
|
+
readonly remainingHops: Schema.$Array<Schema.String>;
|
|
257
|
+
readonly combinedChannelId: Schema.String;
|
|
258
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
259
|
+
readonly target: Schema.String;
|
|
260
|
+
readonly source: Schema.String;
|
|
261
|
+
readonly channelName: Schema.String;
|
|
262
|
+
readonly hops: Schema.$Array<Schema.String>;
|
|
263
|
+
}>]>, Schema.TaggedStruct<"NetworkEdgeAdded", {
|
|
264
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
265
|
+
readonly source: Schema.String;
|
|
266
|
+
readonly target: Schema.String;
|
|
267
|
+
}>, Schema.TaggedStruct<"NetworkTopologyRequest", {
|
|
268
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
269
|
+
readonly hops: Schema.$Array<Schema.String>;
|
|
270
|
+
/** Always fixed to who requested the topology */
|
|
271
|
+
readonly source: Schema.String;
|
|
272
|
+
readonly target: Schema.Literal<"-">;
|
|
273
|
+
}>, Schema.TaggedStruct<"NetworkTopologyResponse", {
|
|
274
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
275
|
+
readonly reqId: Schema.String;
|
|
276
|
+
readonly remainingHops: Schema.$Array<Schema.String>;
|
|
277
|
+
readonly nodeName: Schema.String;
|
|
278
|
+
readonly edges: Schema.$Array<Schema.String>;
|
|
279
|
+
/** Always fixed to who requested the topology */
|
|
280
|
+
readonly source: Schema.String;
|
|
281
|
+
readonly target: Schema.Literal<"-">;
|
|
282
|
+
}>, Schema.TaggedStruct<"BroadcastChannelPacket", {
|
|
283
|
+
readonly id: Schema.withConstructorDefault<Schema.withDecodingDefaultType<Schema.String, never>>;
|
|
284
|
+
readonly channelName: Schema.String;
|
|
152
285
|
/**
|
|
153
286
|
* The payload is expected to be encoded/decoded by the send/listen schema.
|
|
154
287
|
* Transferables are not supported.
|
|
155
288
|
*/
|
|
156
|
-
payload:
|
|
157
|
-
hops: Schema
|
|
158
|
-
source:
|
|
159
|
-
target: Schema.Literal<
|
|
289
|
+
readonly payload: Schema.Any;
|
|
290
|
+
readonly hops: Schema.$Array<Schema.String>;
|
|
291
|
+
readonly source: Schema.String;
|
|
292
|
+
readonly target: Schema.Literal<"-">;
|
|
160
293
|
}>]>;
|
|
161
|
-
export declare
|
|
162
|
-
}
|
|
163
|
-
declare const DirectChannelPing_base: Schema.TaggedStruct<"DirectChannelPing", {}>;
|
|
164
|
-
export declare class DirectChannelPing extends DirectChannelPing_base {
|
|
165
|
-
}
|
|
166
|
-
declare const DirectChannelPong_base: Schema.TaggedStruct<"DirectChannelPong", {}>;
|
|
167
|
-
export declare class DirectChannelPong extends DirectChannelPong_base {
|
|
168
|
-
}
|
|
169
|
-
export {};
|
|
294
|
+
export declare const DirectChannelPing: Schema.TaggedStruct<"DirectChannelPing", {}>;
|
|
295
|
+
export declare const DirectChannelPong: Schema.TaggedStruct<"DirectChannelPong", {}>;
|
|
170
296
|
//# sourceMappingURL=mesh-schema.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mesh-schema.d.ts","sourceRoot":"","sources":["../src/mesh-schema.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"mesh-schema.d.ts","sourceRoot":"","sources":["../src/mesh-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,MAAM,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAkBtE;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB;;;IAI/B,oEAAoE;;IAEpE;;;OAGG;;;;;;;EAEH,CAAA;AAEF,eAAO,MAAM,4BAA4B;;;;;;;;;;EAOvC,CAAA;AAEF,eAAO,MAAM,oCAAoC;;;;;;;;EAI/C,CAAA;AAEF,eAAO,MAAM,mBAAmB;;;;;;;;EAI9B,CAAA;AAEF,eAAO,MAAM,2BAA2B;;;;;;;;;;EAMtC,CAAA;AAEF,eAAO,MAAM,mBAAmB;;;;;;;;;EAK9B,CAAA;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;;EAKjC,CAAA;AAEF;;;GAGG;AACH,eAAO,MAAM,gBAAgB;;;;EAI3B,CAAA;AAEF,eAAO,MAAM,sBAAsB;;;IAGjC,iDAAiD;;;EAGjD,CAAA;AAEF,eAAO,MAAM,uBAAuB;;;;;;IAMlC,iDAAiD;;;EAGjD,CAAA;AAEF,eAAO,MAAM,sBAAsB;;;IAGjC;;;OAGG;;;;;EAKH,CAAA;AAEF,eAAO,MAAM,mBAAmB;;;IA9F9B,oEAAoE;;IAEpE;;;OAGG;;;;;;;;;;;;;;;;;;;;;;;;;IA6FH,CAAA;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAK7B,CAAA;AAEF,eAAO,MAAM,MAAM;;;IA3GjB,oEAAoE;;IAEpE;;;OAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA4DH,iDAAiD;;;;;;;;;IAWjD,iDAAiD;;;;;;IAQjD;;;OAGG;;;;;IA2BH,CAAA;AAEF,eAAO,MAAM,iBAAiB,8CAA+C,CAAA;AAE7E,eAAO,MAAM,iBAAiB,8CAA+C,CAAA"}
|
package/dist/mesh-schema.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Schema, Transferable } from '@livestore/utils/effect';
|
|
1
|
+
import { Effect, Schema, Transferable } from '@livestore/utils/effect';
|
|
2
2
|
import { nanoid } from '@livestore/utils/nanoid';
|
|
3
|
-
const id = Schema.String.pipe(Schema.
|
|
3
|
+
const id = Schema.String.pipe(Schema.withDecodingDefaultType(Effect.sync(() => nanoid(10))), Schema.withConstructorDefault(Effect.sync(() => nanoid(10))));
|
|
4
4
|
const defaultPacketFields = {
|
|
5
5
|
id,
|
|
6
6
|
target: Schema.String,
|
|
@@ -16,10 +16,10 @@ const remainingHopsUndefined = Schema.Undefined.pipe(Schema.optional);
|
|
|
16
16
|
* We need a clear path back to the sender to avoid this, thus we respond with a separate
|
|
17
17
|
* `DirectChannelResponseSuccess` which contains the `port`.
|
|
18
18
|
*/
|
|
19
|
-
export
|
|
19
|
+
export const DirectChannelRequest = Schema.TaggedStruct('DirectChannelRequest', {
|
|
20
20
|
...defaultPacketFields,
|
|
21
21
|
remainingHops: Schema.Array(Schema.String).pipe(Schema.optional),
|
|
22
|
-
channelVersion: Schema.
|
|
22
|
+
channelVersion: Schema.Finite,
|
|
23
23
|
/** Only set if the request is in response to an incoming request */
|
|
24
24
|
reqId: Schema.UndefinedOr(Schema.String),
|
|
25
25
|
/**
|
|
@@ -27,70 +27,61 @@ export class DirectChannelRequest extends Schema.TaggedStruct('DirectChannelRequ
|
|
|
27
27
|
* source has changed.
|
|
28
28
|
*/
|
|
29
29
|
sourceId: Schema.String,
|
|
30
|
-
})
|
|
31
|
-
|
|
32
|
-
export class DirectChannelResponseSuccess extends Schema.TaggedStruct('DirectChannelResponseSuccess', {
|
|
30
|
+
});
|
|
31
|
+
export const DirectChannelResponseSuccess = Schema.TaggedStruct('DirectChannelResponseSuccess', {
|
|
33
32
|
...defaultPacketFields,
|
|
34
33
|
reqId: Schema.String,
|
|
35
34
|
port: Transferable.MessagePort,
|
|
36
35
|
// Since we can't copy this message, we need to follow the exact route back to the sender
|
|
37
36
|
remainingHops: Schema.Array(Schema.String),
|
|
38
|
-
channelVersion: Schema.
|
|
39
|
-
})
|
|
40
|
-
|
|
41
|
-
export class DirectChannelResponseNoTransferables extends Schema.TaggedStruct('DirectChannelResponseNoTransferables', {
|
|
37
|
+
channelVersion: Schema.Finite,
|
|
38
|
+
});
|
|
39
|
+
export const DirectChannelResponseNoTransferables = Schema.TaggedStruct('DirectChannelResponseNoTransferables', {
|
|
42
40
|
...defaultPacketFields,
|
|
43
41
|
reqId: Schema.String,
|
|
44
42
|
remainingHops: Schema.Array(Schema.String),
|
|
45
|
-
})
|
|
46
|
-
|
|
47
|
-
export class ProxyChannelRequest extends Schema.TaggedStruct('ProxyChannelRequest', {
|
|
43
|
+
});
|
|
44
|
+
export const ProxyChannelRequest = Schema.TaggedStruct('ProxyChannelRequest', {
|
|
48
45
|
...defaultPacketFields,
|
|
49
46
|
remainingHops: remainingHopsUndefined,
|
|
50
47
|
channelIdCandidate: Schema.String,
|
|
51
|
-
})
|
|
52
|
-
|
|
53
|
-
export class ProxyChannelResponseSuccess extends Schema.TaggedStruct('ProxyChannelResponseSuccess', {
|
|
48
|
+
});
|
|
49
|
+
export const ProxyChannelResponseSuccess = Schema.TaggedStruct('ProxyChannelResponseSuccess', {
|
|
54
50
|
...defaultPacketFields,
|
|
55
51
|
reqId: Schema.String,
|
|
56
52
|
remainingHops: Schema.Array(Schema.String),
|
|
57
53
|
combinedChannelId: Schema.String,
|
|
58
54
|
channelIdCandidate: Schema.String,
|
|
59
|
-
})
|
|
60
|
-
|
|
61
|
-
export class ProxyChannelPayload extends Schema.TaggedStruct('ProxyChannelPayload', {
|
|
55
|
+
});
|
|
56
|
+
export const ProxyChannelPayload = Schema.TaggedStruct('ProxyChannelPayload', {
|
|
62
57
|
...defaultPacketFields,
|
|
63
58
|
remainingHops: remainingHopsUndefined,
|
|
64
59
|
payload: Schema.Any,
|
|
65
60
|
combinedChannelId: Schema.String,
|
|
66
|
-
})
|
|
67
|
-
|
|
68
|
-
export class ProxyChannelPayloadAck extends Schema.TaggedStruct('ProxyChannelPayloadAck', {
|
|
61
|
+
});
|
|
62
|
+
export const ProxyChannelPayloadAck = Schema.TaggedStruct('ProxyChannelPayloadAck', {
|
|
69
63
|
...defaultPacketFields,
|
|
70
64
|
reqId: Schema.String,
|
|
71
65
|
remainingHops: Schema.Array(Schema.String),
|
|
72
66
|
combinedChannelId: Schema.String,
|
|
73
|
-
})
|
|
74
|
-
}
|
|
67
|
+
});
|
|
75
68
|
/**
|
|
76
69
|
* Broadcast to all nodes when a new edge is added.
|
|
77
70
|
* Mostly used for auto-reconnect purposes.
|
|
78
71
|
*/
|
|
79
|
-
export
|
|
72
|
+
export const NetworkEdgeAdded = Schema.TaggedStruct('NetworkEdgeAdded', {
|
|
80
73
|
id,
|
|
81
74
|
source: Schema.String,
|
|
82
75
|
target: Schema.String,
|
|
83
|
-
})
|
|
84
|
-
|
|
85
|
-
export class NetworkTopologyRequest extends Schema.TaggedStruct('NetworkTopologyRequest', {
|
|
76
|
+
});
|
|
77
|
+
export const NetworkTopologyRequest = Schema.TaggedStruct('NetworkTopologyRequest', {
|
|
86
78
|
id,
|
|
87
79
|
hops: Schema.Array(Schema.String),
|
|
88
80
|
/** Always fixed to who requested the topology */
|
|
89
81
|
source: Schema.String,
|
|
90
82
|
target: Schema.Literal('-'),
|
|
91
|
-
})
|
|
92
|
-
|
|
93
|
-
export class NetworkTopologyResponse extends Schema.TaggedStruct('NetworkTopologyResponse', {
|
|
83
|
+
});
|
|
84
|
+
export const NetworkTopologyResponse = Schema.TaggedStruct('NetworkTopologyResponse', {
|
|
94
85
|
id,
|
|
95
86
|
reqId: Schema.String,
|
|
96
87
|
remainingHops: Schema.Array(Schema.String),
|
|
@@ -99,8 +90,7 @@ export class NetworkTopologyResponse extends Schema.TaggedStruct('NetworkTopolog
|
|
|
99
90
|
/** Always fixed to who requested the topology */
|
|
100
91
|
source: Schema.String,
|
|
101
92
|
target: Schema.Literal('-'),
|
|
102
|
-
})
|
|
103
|
-
}
|
|
93
|
+
});
|
|
104
94
|
export const BroadcastChannelPacket = Schema.TaggedStruct('BroadcastChannelPacket', {
|
|
105
95
|
id,
|
|
106
96
|
channelName: Schema.String,
|
|
@@ -113,14 +103,25 @@ export const BroadcastChannelPacket = Schema.TaggedStruct('BroadcastChannelPacke
|
|
|
113
103
|
source: Schema.String,
|
|
114
104
|
target: Schema.Literal('-'),
|
|
115
105
|
});
|
|
116
|
-
export
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
106
|
+
export const DirectChannelPacket = Schema.Union([
|
|
107
|
+
DirectChannelRequest,
|
|
108
|
+
DirectChannelResponseSuccess,
|
|
109
|
+
DirectChannelResponseNoTransferables,
|
|
110
|
+
]);
|
|
111
|
+
export const ProxyChannelPacket = Schema.Union([
|
|
112
|
+
ProxyChannelRequest,
|
|
113
|
+
ProxyChannelResponseSuccess,
|
|
114
|
+
ProxyChannelPayload,
|
|
115
|
+
ProxyChannelPayloadAck,
|
|
116
|
+
]);
|
|
117
|
+
export const Packet = Schema.Union([
|
|
118
|
+
DirectChannelPacket,
|
|
119
|
+
ProxyChannelPacket,
|
|
120
|
+
NetworkEdgeAdded,
|
|
121
|
+
NetworkTopologyRequest,
|
|
122
|
+
NetworkTopologyResponse,
|
|
123
|
+
BroadcastChannelPacket,
|
|
124
|
+
]);
|
|
125
|
+
export const DirectChannelPing = Schema.TaggedStruct('DirectChannelPing', {});
|
|
126
|
+
export const DirectChannelPong = Schema.TaggedStruct('DirectChannelPong', {});
|
|
126
127
|
//# sourceMappingURL=mesh-schema.js.map
|
package/dist/mesh-schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mesh-schema.js","sourceRoot":"","sources":["../src/mesh-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;
|
|
1
|
+
{"version":3,"file":"mesh-schema.js","sourceRoot":"","sources":["../src/mesh-schema.ts"],"names":[],"mappings":"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"}
|