@syncular/server-hono 0.0.6-171 → 0.0.6-177
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/dist/console/gateway.d.ts +5 -0
- package/dist/console/gateway.d.ts.map +1 -1
- package/dist/console/gateway.js +1 -16
- package/dist/console/gateway.js.map +1 -1
- package/dist/console/routes.d.ts.map +1 -1
- package/dist/console/routes.js +15 -30
- package/dist/console/routes.js.map +1 -1
- package/dist/console/types.d.ts +1 -1
- package/dist/proxy/routes.d.ts +3 -1
- package/dist/proxy/routes.d.ts.map +1 -1
- package/dist/proxy/routes.js +1 -16
- package/dist/proxy/routes.js.map +1 -1
- package/dist/routes.d.ts +3 -1
- package/dist/routes.d.ts.map +1 -1
- package/dist/routes.js +133 -77
- package/dist/routes.js.map +1 -1
- package/dist/websocket-origin.d.ts +8 -0
- package/dist/websocket-origin.d.ts.map +1 -0
- package/dist/websocket-origin.js +43 -0
- package/dist/websocket-origin.js.map +1 -0
- package/dist/ws.d.ts +24 -8
- package/dist/ws.d.ts.map +1 -1
- package/dist/ws.js +54 -44
- package/dist/ws.js.map +1 -1
- package/package.json +6 -6
- package/src/__tests__/console-gateway-live-routes.test.ts +13 -0
- package/src/__tests__/create-server.test.ts +187 -2
- package/src/__tests__/pull-chunk-storage.test.ts +114 -1
- package/src/__tests__/websocket-origin.test.ts +55 -0
- package/src/__tests__/ws-connection-manager.test.ts +22 -7
- package/src/console/gateway.ts +6 -18
- package/src/console/routes.ts +22 -39
- package/src/console/types.ts +1 -1
- package/src/proxy/routes.ts +4 -19
- package/src/routes.ts +192 -109
- package/src/websocket-origin.ts +54 -0
- package/src/ws.ts +86 -45
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
function normalizeOrigin(origin) {
|
|
2
|
+
try {
|
|
3
|
+
return new URL(origin).origin;
|
|
4
|
+
}
|
|
5
|
+
catch {
|
|
6
|
+
return null;
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
export function isRequestOriginAllowed(args) {
|
|
10
|
+
if (args.allowedOrigins === '*') {
|
|
11
|
+
return true;
|
|
12
|
+
}
|
|
13
|
+
const origin = args.originHeader;
|
|
14
|
+
if (Array.isArray(args.allowedOrigins)) {
|
|
15
|
+
if (!origin)
|
|
16
|
+
return false;
|
|
17
|
+
const normalizedOrigin = normalizeOrigin(origin);
|
|
18
|
+
return normalizedOrigin
|
|
19
|
+
? args.allowedOrigins.includes(normalizedOrigin)
|
|
20
|
+
: false;
|
|
21
|
+
}
|
|
22
|
+
if (!origin) {
|
|
23
|
+
return true;
|
|
24
|
+
}
|
|
25
|
+
const normalizedOrigin = normalizeOrigin(origin);
|
|
26
|
+
if (!normalizedOrigin) {
|
|
27
|
+
return false;
|
|
28
|
+
}
|
|
29
|
+
try {
|
|
30
|
+
return normalizedOrigin === new URL(args.requestUrl).origin;
|
|
31
|
+
}
|
|
32
|
+
catch {
|
|
33
|
+
return false;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
export function isWebSocketOriginAllowed(c, allowedOrigins) {
|
|
37
|
+
return isRequestOriginAllowed({
|
|
38
|
+
requestUrl: c.req.url,
|
|
39
|
+
originHeader: c.req.header('origin'),
|
|
40
|
+
allowedOrigins,
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=websocket-origin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"websocket-origin.js","sourceRoot":"","sources":["../src/websocket-origin.ts"],"names":[],"mappings":"AAEA,SAAS,eAAe,CAAC,MAAc,EAAiB;IACtD,IAAI,CAAC;QACH,OAAO,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AAAA,CACF;AAED,MAAM,UAAU,sBAAsB,CAAC,IAItC,EAAW;IACV,IAAI,IAAI,CAAC,cAAc,KAAK,GAAG,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC;IACjC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;QACvC,IAAI,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;QAC1B,MAAM,gBAAgB,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;QACjD,OAAO,gBAAgB;YACrB,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,gBAAgB,CAAC;YAChD,CAAC,CAAC,KAAK,CAAC;IACZ,CAAC;IAED,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,gBAAgB,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IACjD,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACtB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC;QACH,OAAO,gBAAgB,KAAK,IAAI,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC;IAC9D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AAAA,CACF;AAED,MAAM,UAAU,wBAAwB,CACtC,CAAU,EACV,cAA+B,EACtB;IACT,OAAO,sBAAsB,CAAC;QAC5B,UAAU,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG;QACrB,YAAY,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC;QACpC,cAAc;KACf,CAAC,CAAC;AAAA,CACJ"}
|
package/dist/ws.d.ts
CHANGED
|
@@ -14,6 +14,11 @@ export interface PresenceEntry {
|
|
|
14
14
|
joinedAt: number;
|
|
15
15
|
metadata?: Record<string, unknown>;
|
|
16
16
|
}
|
|
17
|
+
export declare function createWebSocketConnectionOwnerKey(args: {
|
|
18
|
+
partitionId: string;
|
|
19
|
+
actorId: string;
|
|
20
|
+
clientId: string;
|
|
21
|
+
}): string;
|
|
17
22
|
/**
|
|
18
23
|
* Push response data sent back to the client over WS
|
|
19
24
|
*/
|
|
@@ -48,6 +53,7 @@ export interface SyncWebSocketEvent {
|
|
|
48
53
|
presence?: {
|
|
49
54
|
action: 'join' | 'leave' | 'update' | 'snapshot';
|
|
50
55
|
scopeKey: string;
|
|
56
|
+
ownerKey?: string;
|
|
51
57
|
clientId?: string;
|
|
52
58
|
actorId?: string;
|
|
53
59
|
metadata?: Record<string, unknown>;
|
|
@@ -82,6 +88,7 @@ export interface WebSocketConnection {
|
|
|
82
88
|
sendPresence(data: {
|
|
83
89
|
action: 'join' | 'leave' | 'update' | 'snapshot';
|
|
84
90
|
scopeKey: string;
|
|
91
|
+
ownerKey?: string;
|
|
85
92
|
clientId?: string;
|
|
86
93
|
actorId?: string;
|
|
87
94
|
metadata?: Record<string, unknown>;
|
|
@@ -99,12 +106,15 @@ export interface WebSocketConnection {
|
|
|
99
106
|
actorId: string;
|
|
100
107
|
/** Client/device identifier for this connection */
|
|
101
108
|
clientId: string;
|
|
109
|
+
/** Stable owner identity for this connection */
|
|
110
|
+
ownerKey: string;
|
|
102
111
|
/** Transport path used by this connection. */
|
|
103
112
|
transportPath: 'direct' | 'relay';
|
|
104
113
|
}
|
|
105
114
|
export declare function createWebSocketConnection(ws: WSContext, args: {
|
|
106
115
|
actorId: string;
|
|
107
116
|
clientId: string;
|
|
117
|
+
ownerKey: string;
|
|
108
118
|
transportPath: 'direct' | 'relay';
|
|
109
119
|
}): WebSocketConnection;
|
|
110
120
|
/**
|
|
@@ -115,7 +125,7 @@ export declare class WebSocketConnectionManager {
|
|
|
115
125
|
private readonly registry;
|
|
116
126
|
/**
|
|
117
127
|
* In-memory presence tracking by scope key.
|
|
118
|
-
* Map<scopeKey, Map<
|
|
128
|
+
* Map<scopeKey, Map<ownerKey, PresenceEntry>>
|
|
119
129
|
*/
|
|
120
130
|
private presenceByScopeKey;
|
|
121
131
|
/**
|
|
@@ -124,6 +134,7 @@ export declare class WebSocketConnectionManager {
|
|
|
124
134
|
onPresenceChange?: (event: {
|
|
125
135
|
action: 'join' | 'leave' | 'update';
|
|
126
136
|
scopeKey: string;
|
|
137
|
+
ownerKey: string;
|
|
127
138
|
clientId: string;
|
|
128
139
|
actorId: string;
|
|
129
140
|
metadata?: Record<string, unknown>;
|
|
@@ -141,26 +152,26 @@ export declare class WebSocketConnectionManager {
|
|
|
141
152
|
* Update the effective scopes for an already-connected client.
|
|
142
153
|
* If the client has no active connections, this is a no-op.
|
|
143
154
|
*/
|
|
144
|
-
|
|
155
|
+
updateConnectionScopeKeys(ownerKey: string, scopeKeys: string[]): void;
|
|
145
156
|
/**
|
|
146
157
|
* Check whether a client is currently authorized/subscribed for a scope key.
|
|
147
158
|
*/
|
|
148
|
-
|
|
159
|
+
isConnectionSubscribedToScopeKey(ownerKey: string, scopeKey: string): boolean;
|
|
149
160
|
/**
|
|
150
161
|
* Join presence for a scope key.
|
|
151
162
|
* Called when a client wants to be visible to others in a scope.
|
|
152
163
|
*/
|
|
153
|
-
joinPresence(
|
|
164
|
+
joinPresence(ownerKey: string, scopeKey: string, metadata?: Record<string, unknown>): boolean;
|
|
154
165
|
/**
|
|
155
166
|
* Leave presence for a scope key.
|
|
156
167
|
* Called when a client no longer wants to be visible in a scope.
|
|
157
168
|
*/
|
|
158
|
-
leavePresence(
|
|
169
|
+
leavePresence(ownerKey: string, scopeKey: string): boolean;
|
|
159
170
|
/**
|
|
160
171
|
* Update presence metadata for a client in a scope.
|
|
161
172
|
* Used to update what entity a user is viewing/editing.
|
|
162
173
|
*/
|
|
163
|
-
updatePresenceMetadata(
|
|
174
|
+
updatePresenceMetadata(ownerKey: string, scopeKey: string, metadata: Record<string, unknown>): boolean;
|
|
164
175
|
/**
|
|
165
176
|
* Get presence entries for a scope key.
|
|
166
177
|
*/
|
|
@@ -181,6 +192,7 @@ export declare class WebSocketConnectionManager {
|
|
|
181
192
|
handleRemotePresenceEvent(event: {
|
|
182
193
|
action: 'join' | 'leave' | 'update';
|
|
183
194
|
scopeKey: string;
|
|
195
|
+
ownerKey?: string;
|
|
184
196
|
clientId: string;
|
|
185
197
|
actorId: string;
|
|
186
198
|
metadata?: Record<string, unknown>;
|
|
@@ -190,9 +202,9 @@ export declare class WebSocketConnectionManager {
|
|
|
190
202
|
*/
|
|
191
203
|
private broadcastPresenceEvent;
|
|
192
204
|
/**
|
|
193
|
-
* Clean up presence when
|
|
205
|
+
* Clean up presence when an owner fully disconnects (all connections closed).
|
|
194
206
|
*/
|
|
195
|
-
private
|
|
207
|
+
private cleanupOwnerPresence;
|
|
196
208
|
/**
|
|
197
209
|
* Maximum serialized size (bytes) for inline WS change delivery.
|
|
198
210
|
* Larger payloads fall back to cursor-only notification.
|
|
@@ -217,6 +229,10 @@ export declare class WebSocketConnectionManager {
|
|
|
217
229
|
* Get the number of active connections for a client.
|
|
218
230
|
*/
|
|
219
231
|
getConnectionCount(clientId: string): number;
|
|
232
|
+
/**
|
|
233
|
+
* Get the number of active connections for one owner identity.
|
|
234
|
+
*/
|
|
235
|
+
getScopedConnectionCount(ownerKey: string): number;
|
|
220
236
|
/**
|
|
221
237
|
* Get the current transport path for a client if connected.
|
|
222
238
|
*/
|
package/dist/ws.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ws.d.ts","sourceRoot":"","sources":["../src/ws.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ws.d.ts","sourceRoot":"","sources":["../src/ws.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEzC;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,wBAAgB,iCAAiC,CAAC,IAAI,EAAE;IACtD,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB,GAAG,MAAM,CAET;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC,CAAC;CAC3E;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,iBAAiB;IACjB,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,OAAO,GAAG,UAAU,GAAG,eAAe,CAAC;IACrE,mBAAmB;IACnB,IAAI,EAAE;QACJ,4CAA4C;QAC5C,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,kEAAkE;QAClE,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,sEAAsE;QACtE,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,uCAAuC;QACvC,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,0CAA0C;QAC1C,QAAQ,CAAC,EAAE;YACT,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,UAAU,CAAC;YACjD,QAAQ,EAAE,MAAM,CAAC;YACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;YAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;YAClB,OAAO,CAAC,EAAE,MAAM,CAAC;YACjB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACnC,OAAO,CAAC,EAAE,aAAa,EAAE,CAAC;SAC3B,CAAC;QACF,oDAAoD;QACpD,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,EAAE,CAAC,EAAE,OAAO,CAAC;QACb,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,KAAK,CAAC;YAAE,OAAO,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAC;YAAC,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;SAAE,CAAC,CAAC;QAC3E,gBAAgB;QAChB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,mEAAmE;IACnE,QAAQ,CACN,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,OAAO,EAAE,EACnB,QAAQ,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,IAAI,CAAC;IACR,uBAAuB;IACvB,aAAa,IAAI,IAAI,CAAC;IACtB,4BAA4B;IAC5B,YAAY,CAAC,IAAI,EAAE;QACjB,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,UAAU,CAAC;QACjD,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACnC,OAAO,CAAC,EAAE,aAAa,EAAE,CAAC;KAC3B,GAAG,IAAI,CAAC;IACT,8CAA8C;IAC9C,gBAAgB,CAAC,IAAI,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACjD,8BAA8B;IAC9B,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,2BAA2B;IAC3B,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5C,2CAA2C;IAC3C,MAAM,EAAE,OAAO,CAAC;IAChB,mCAAmC;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,mDAAmD;IACnD,QAAQ,EAAE,MAAM,CAAC;IACjB,gDAAgD;IAChD,QAAQ,EAAE,MAAM,CAAC;IACjB,8CAA8C;IAC9C,aAAa,EAAE,QAAQ,GAAG,OAAO,CAAC;CACnC;AAWD,wBAAgB,yBAAyB,CACvC,EAAE,EAAE,SAAS,EACb,IAAI,EAAE;IACJ,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,QAAQ,GAAG,OAAO,CAAC;CACnC,GACA,mBAAmB,CAgGrB;AAED;;;GAGG;AACH,qBAAa,0BAA0B;IACrC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAkD;IAE3E;;;OAGG;IACH,OAAO,CAAC,kBAAkB,CAAiD;IAE3E;;OAEG;IACH,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE;QACzB,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;QACpC,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACpC,KAAK,IAAI,CAAC;IAEX,YAAY,OAAO,CAAC,EAAE;QACpB,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,gBAAgB,CAAC,EAAE,0BAA0B,CAAC,kBAAkB,CAAC,CAAC;KACnE,EAQA;IAED;;;OAGG;IACH,QAAQ,CACN,UAAU,EAAE,mBAAmB,EAC/B,gBAAgB,GAAE,MAAM,EAAO,GAC9B,MAAM,IAAI,CAEZ;IAED;;;OAGG;IACH,yBAAyB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI,CAErE;IAED;;OAEG;IACH,gCAAgC,CAC9B,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,OAAO,CAET;IAMD;;;OAGG;IACH,YAAY,CACV,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACjC,OAAO,CA2CT;IAED;;;OAGG;IACH,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CA6BzD;IAED;;;OAGG;IACH,sBAAsB,CACpB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,OAAO,CA8BT;IAED;;OAEG;IACH,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,EAAE,CAI7C;IAED;;OAEG;IACH,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAMxE;IAED;;;OAGG;IACH,oBAAoB,CAClB,UAAU,EAAE,mBAAmB,EAC/B,QAAQ,EAAE,MAAM,GACf,IAAI,CAON;IAED;;;OAGG;IACH,yBAAyB,CAAC,KAAK,EAAE;QAC/B,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;QACpC,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACpC,GAAG,IAAI,CAoDP;IAED;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAsB9B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAgC5B;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAa;IAExD;;;OAGG;IACH,eAAe,CACb,SAAS,EAAE,MAAM,EAAE,EACnB,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE;QACL,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;QAC5B,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC;QACpB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,GACA,IAAI,CAwBN;IAED;;;OAGG;IACH,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAIrC;IAED;;OAEG;IACH,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE3C;IAED;;OAEG;IACH,wBAAwB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEjD;IAED;;OAEG;IACH,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,IAAI,CAalE;IAED;;OAEG;IACH,mBAAmB,IAAI,MAAM,CAE5B;IAED;;OAEG;IACH,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAE7C;IAED;;OAEG;IACH,QAAQ,IAAI,IAAI,CAGf;CACF"}
|
package/dist/ws.js
CHANGED
|
@@ -5,6 +5,9 @@
|
|
|
5
5
|
* Also supports presence tracking for collaborative features.
|
|
6
6
|
*/
|
|
7
7
|
import { RealtimeConnectionRegistry } from '@syncular/core';
|
|
8
|
+
export function createWebSocketConnectionOwnerKey(args) {
|
|
9
|
+
return JSON.stringify([args.partitionId, args.actorId, args.clientId]);
|
|
10
|
+
}
|
|
8
11
|
function safeSend(ws, message) {
|
|
9
12
|
try {
|
|
10
13
|
ws.send(message);
|
|
@@ -24,6 +27,7 @@ export function createWebSocketConnection(ws, args) {
|
|
|
24
27
|
},
|
|
25
28
|
actorId: args.actorId,
|
|
26
29
|
clientId: args.clientId,
|
|
30
|
+
ownerKey: args.ownerKey,
|
|
27
31
|
transportPath: args.transportPath,
|
|
28
32
|
sendSync(cursor, changes, metadata) {
|
|
29
33
|
if (!connection.isOpen)
|
|
@@ -103,7 +107,7 @@ export class WebSocketConnectionManager {
|
|
|
103
107
|
registry;
|
|
104
108
|
/**
|
|
105
109
|
* In-memory presence tracking by scope key.
|
|
106
|
-
* Map<scopeKey, Map<
|
|
110
|
+
* Map<scopeKey, Map<ownerKey, PresenceEntry>>
|
|
107
111
|
*/
|
|
108
112
|
presenceByScopeKey = new Map();
|
|
109
113
|
/**
|
|
@@ -114,8 +118,8 @@ export class WebSocketConnectionManager {
|
|
|
114
118
|
this.onPresenceChange = options?.onPresenceChange;
|
|
115
119
|
this.registry = new RealtimeConnectionRegistry({
|
|
116
120
|
heartbeatIntervalMs: options?.heartbeatIntervalMs,
|
|
117
|
-
|
|
118
|
-
this.
|
|
121
|
+
onOwnerDisconnected: (ownerKey) => {
|
|
122
|
+
this.cleanupOwnerPresence(ownerKey);
|
|
119
123
|
},
|
|
120
124
|
});
|
|
121
125
|
}
|
|
@@ -130,14 +134,14 @@ export class WebSocketConnectionManager {
|
|
|
130
134
|
* Update the effective scopes for an already-connected client.
|
|
131
135
|
* If the client has no active connections, this is a no-op.
|
|
132
136
|
*/
|
|
133
|
-
|
|
134
|
-
this.registry.
|
|
137
|
+
updateConnectionScopeKeys(ownerKey, scopeKeys) {
|
|
138
|
+
this.registry.updateOwnerScopeKeys(ownerKey, scopeKeys);
|
|
135
139
|
}
|
|
136
140
|
/**
|
|
137
141
|
* Check whether a client is currently authorized/subscribed for a scope key.
|
|
138
142
|
*/
|
|
139
|
-
|
|
140
|
-
return this.registry.
|
|
143
|
+
isConnectionSubscribedToScopeKey(ownerKey, scopeKey) {
|
|
144
|
+
return this.registry.isOwnerSubscribedToScopeKey(ownerKey, scopeKey);
|
|
141
145
|
}
|
|
142
146
|
// =========================================================================
|
|
143
147
|
// Presence Tracking
|
|
@@ -146,18 +150,16 @@ export class WebSocketConnectionManager {
|
|
|
146
150
|
* Join presence for a scope key.
|
|
147
151
|
* Called when a client wants to be visible to others in a scope.
|
|
148
152
|
*/
|
|
149
|
-
joinPresence(
|
|
150
|
-
const conns = this.registry.
|
|
153
|
+
joinPresence(ownerKey, scopeKey, metadata) {
|
|
154
|
+
const conns = this.registry.getConnectionsForOwner(ownerKey);
|
|
151
155
|
if (!conns || conns.size === 0)
|
|
152
156
|
return false;
|
|
153
|
-
if (!this.
|
|
157
|
+
if (!this.isConnectionSubscribedToScopeKey(ownerKey, scopeKey))
|
|
154
158
|
return false;
|
|
155
|
-
// Get actorId from first connection
|
|
156
159
|
const conn = conns.values().next().value;
|
|
157
160
|
if (!conn)
|
|
158
161
|
return false;
|
|
159
|
-
const actorId = conn
|
|
160
|
-
// Add to presence map
|
|
162
|
+
const { actorId, clientId } = conn;
|
|
161
163
|
let scopePresence = this.presenceByScopeKey.get(scopeKey);
|
|
162
164
|
if (!scopePresence) {
|
|
163
165
|
scopePresence = new Map();
|
|
@@ -169,19 +171,19 @@ export class WebSocketConnectionManager {
|
|
|
169
171
|
joinedAt: Date.now(),
|
|
170
172
|
metadata,
|
|
171
173
|
};
|
|
172
|
-
scopePresence.set(
|
|
173
|
-
// Notify other clients in this scope
|
|
174
|
+
scopePresence.set(ownerKey, entry);
|
|
174
175
|
this.broadcastPresenceEvent(scopeKey, {
|
|
175
176
|
action: 'join',
|
|
176
177
|
scopeKey,
|
|
178
|
+
ownerKey,
|
|
177
179
|
clientId,
|
|
178
180
|
actorId,
|
|
179
181
|
metadata,
|
|
180
182
|
});
|
|
181
|
-
// Callback for cross-instance broadcasting
|
|
182
183
|
this.onPresenceChange?.({
|
|
183
184
|
action: 'join',
|
|
184
185
|
scopeKey,
|
|
186
|
+
ownerKey,
|
|
185
187
|
clientId,
|
|
186
188
|
actorId,
|
|
187
189
|
metadata,
|
|
@@ -192,29 +194,29 @@ export class WebSocketConnectionManager {
|
|
|
192
194
|
* Leave presence for a scope key.
|
|
193
195
|
* Called when a client no longer wants to be visible in a scope.
|
|
194
196
|
*/
|
|
195
|
-
leavePresence(
|
|
197
|
+
leavePresence(ownerKey, scopeKey) {
|
|
196
198
|
const scopePresence = this.presenceByScopeKey.get(scopeKey);
|
|
197
199
|
if (!scopePresence)
|
|
198
200
|
return false;
|
|
199
|
-
const entry = scopePresence.get(
|
|
201
|
+
const entry = scopePresence.get(ownerKey);
|
|
200
202
|
if (!entry)
|
|
201
203
|
return false;
|
|
202
|
-
scopePresence.delete(
|
|
204
|
+
scopePresence.delete(ownerKey);
|
|
203
205
|
if (scopePresence.size === 0) {
|
|
204
206
|
this.presenceByScopeKey.delete(scopeKey);
|
|
205
207
|
}
|
|
206
|
-
// Notify other clients in this scope
|
|
207
208
|
this.broadcastPresenceEvent(scopeKey, {
|
|
208
209
|
action: 'leave',
|
|
209
210
|
scopeKey,
|
|
210
|
-
|
|
211
|
+
ownerKey,
|
|
212
|
+
clientId: entry.clientId,
|
|
211
213
|
actorId: entry.actorId,
|
|
212
214
|
});
|
|
213
|
-
// Callback for cross-instance broadcasting
|
|
214
215
|
this.onPresenceChange?.({
|
|
215
216
|
action: 'leave',
|
|
216
217
|
scopeKey,
|
|
217
|
-
|
|
218
|
+
ownerKey,
|
|
219
|
+
clientId: entry.clientId,
|
|
218
220
|
actorId: entry.actorId,
|
|
219
221
|
});
|
|
220
222
|
return true;
|
|
@@ -223,29 +225,29 @@ export class WebSocketConnectionManager {
|
|
|
223
225
|
* Update presence metadata for a client in a scope.
|
|
224
226
|
* Used to update what entity a user is viewing/editing.
|
|
225
227
|
*/
|
|
226
|
-
updatePresenceMetadata(
|
|
227
|
-
if (!this.
|
|
228
|
+
updatePresenceMetadata(ownerKey, scopeKey, metadata) {
|
|
229
|
+
if (!this.isConnectionSubscribedToScopeKey(ownerKey, scopeKey))
|
|
228
230
|
return false;
|
|
229
231
|
const scopePresence = this.presenceByScopeKey.get(scopeKey);
|
|
230
232
|
if (!scopePresence)
|
|
231
233
|
return false;
|
|
232
|
-
const entry = scopePresence.get(
|
|
234
|
+
const entry = scopePresence.get(ownerKey);
|
|
233
235
|
if (!entry)
|
|
234
236
|
return false;
|
|
235
237
|
entry.metadata = metadata;
|
|
236
|
-
// Notify other clients in this scope
|
|
237
238
|
this.broadcastPresenceEvent(scopeKey, {
|
|
238
239
|
action: 'update',
|
|
239
240
|
scopeKey,
|
|
240
|
-
|
|
241
|
+
ownerKey,
|
|
242
|
+
clientId: entry.clientId,
|
|
241
243
|
actorId: entry.actorId,
|
|
242
244
|
metadata,
|
|
243
245
|
});
|
|
244
|
-
// Callback for cross-instance broadcasting
|
|
245
246
|
this.onPresenceChange?.({
|
|
246
247
|
action: 'update',
|
|
247
248
|
scopeKey,
|
|
248
|
-
|
|
249
|
+
ownerKey,
|
|
250
|
+
clientId: entry.clientId,
|
|
249
251
|
actorId: entry.actorId,
|
|
250
252
|
metadata,
|
|
251
253
|
});
|
|
@@ -287,8 +289,11 @@ export class WebSocketConnectionManager {
|
|
|
287
289
|
* Updates local state and notifies local clients.
|
|
288
290
|
*/
|
|
289
291
|
handleRemotePresenceEvent(event) {
|
|
290
|
-
const { action, scopeKey, clientId, actorId, metadata
|
|
291
|
-
|
|
292
|
+
const { action, scopeKey, clientId, actorId, metadata, ownerKey = createWebSocketConnectionOwnerKey({
|
|
293
|
+
partitionId: scopeKey.split(':', 1)[0] ?? 'default',
|
|
294
|
+
actorId,
|
|
295
|
+
clientId,
|
|
296
|
+
}), } = event;
|
|
292
297
|
let scopePresence = this.presenceByScopeKey.get(scopeKey);
|
|
293
298
|
switch (action) {
|
|
294
299
|
case 'join': {
|
|
@@ -296,7 +301,7 @@ export class WebSocketConnectionManager {
|
|
|
296
301
|
scopePresence = new Map();
|
|
297
302
|
this.presenceByScopeKey.set(scopeKey, scopePresence);
|
|
298
303
|
}
|
|
299
|
-
scopePresence.set(
|
|
304
|
+
scopePresence.set(ownerKey, {
|
|
300
305
|
clientId,
|
|
301
306
|
actorId,
|
|
302
307
|
joinedAt: Date.now(),
|
|
@@ -306,7 +311,7 @@ export class WebSocketConnectionManager {
|
|
|
306
311
|
}
|
|
307
312
|
case 'leave': {
|
|
308
313
|
if (scopePresence) {
|
|
309
|
-
scopePresence.delete(
|
|
314
|
+
scopePresence.delete(ownerKey);
|
|
310
315
|
if (scopePresence.size === 0) {
|
|
311
316
|
this.presenceByScopeKey.delete(scopeKey);
|
|
312
317
|
}
|
|
@@ -315,7 +320,7 @@ export class WebSocketConnectionManager {
|
|
|
315
320
|
}
|
|
316
321
|
case 'update': {
|
|
317
322
|
if (scopePresence) {
|
|
318
|
-
const entry = scopePresence.get(
|
|
323
|
+
const entry = scopePresence.get(ownerKey);
|
|
319
324
|
if (entry) {
|
|
320
325
|
entry.metadata = metadata;
|
|
321
326
|
}
|
|
@@ -337,30 +342,29 @@ export class WebSocketConnectionManager {
|
|
|
337
342
|
});
|
|
338
343
|
}
|
|
339
344
|
/**
|
|
340
|
-
* Clean up presence when
|
|
345
|
+
* Clean up presence when an owner fully disconnects (all connections closed).
|
|
341
346
|
*/
|
|
342
|
-
|
|
343
|
-
// Find all scopes this client has presence in
|
|
347
|
+
cleanupOwnerPresence(ownerKey) {
|
|
344
348
|
for (const [scopeKey, scopePresence] of this.presenceByScopeKey) {
|
|
345
|
-
const entry = scopePresence.get(
|
|
349
|
+
const entry = scopePresence.get(ownerKey);
|
|
346
350
|
if (!entry)
|
|
347
351
|
continue;
|
|
348
|
-
scopePresence.delete(
|
|
352
|
+
scopePresence.delete(ownerKey);
|
|
349
353
|
if (scopePresence.size === 0) {
|
|
350
354
|
this.presenceByScopeKey.delete(scopeKey);
|
|
351
355
|
}
|
|
352
|
-
// Notify other clients
|
|
353
356
|
this.broadcastPresenceEvent(scopeKey, {
|
|
354
357
|
action: 'leave',
|
|
355
358
|
scopeKey,
|
|
356
|
-
|
|
359
|
+
ownerKey,
|
|
360
|
+
clientId: entry.clientId,
|
|
357
361
|
actorId: entry.actorId,
|
|
358
362
|
});
|
|
359
|
-
// Callback for cross-instance broadcasting
|
|
360
363
|
this.onPresenceChange?.({
|
|
361
364
|
action: 'leave',
|
|
362
365
|
scopeKey,
|
|
363
|
-
|
|
366
|
+
ownerKey,
|
|
367
|
+
clientId: entry.clientId,
|
|
364
368
|
actorId: entry.actorId,
|
|
365
369
|
});
|
|
366
370
|
}
|
|
@@ -413,6 +417,12 @@ export class WebSocketConnectionManager {
|
|
|
413
417
|
getConnectionCount(clientId) {
|
|
414
418
|
return this.registry.getConnectionCount(clientId);
|
|
415
419
|
}
|
|
420
|
+
/**
|
|
421
|
+
* Get the number of active connections for one owner identity.
|
|
422
|
+
*/
|
|
423
|
+
getScopedConnectionCount(ownerKey) {
|
|
424
|
+
return this.registry.getScopedConnectionCount(ownerKey);
|
|
425
|
+
}
|
|
416
426
|
/**
|
|
417
427
|
* Get the current transport path for a client if connected.
|
|
418
428
|
*/
|
package/dist/ws.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ws.js","sourceRoot":"","sources":["../src/ws.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ws.js","sourceRoot":"","sources":["../src/ws.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@syncular/server-hono",
|
|
3
|
-
"version": "0.0.6-
|
|
3
|
+
"version": "0.0.6-177",
|
|
4
4
|
"description": "Hono adapter for the Syncular server with OpenAPI support",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "Benjamin Kniffler",
|
|
@@ -63,17 +63,17 @@
|
|
|
63
63
|
"@noble/hashes": "^2.0.1",
|
|
64
64
|
"@standard-community/standard-json": "^0.3.5",
|
|
65
65
|
"@standard-community/standard-openapi": "^0.2.9",
|
|
66
|
-
"@syncular/console": "0.0.6-
|
|
67
|
-
"@syncular/core": "0.0.6-
|
|
68
|
-
"@syncular/server": "0.0.6-
|
|
66
|
+
"@syncular/console": "0.0.6-177",
|
|
67
|
+
"@syncular/core": "0.0.6-177",
|
|
68
|
+
"@syncular/server": "0.0.6-177",
|
|
69
69
|
"@types/json-schema": "^7.0.15",
|
|
70
70
|
"hono-openapi": "^1.2.0",
|
|
71
71
|
"openapi-types": "^12.1.3"
|
|
72
72
|
},
|
|
73
73
|
"devDependencies": {
|
|
74
74
|
"@syncular/config": "0.0.0",
|
|
75
|
-
"@syncular/dialect-pglite": "0.0.6-
|
|
76
|
-
"@syncular/server-dialect-postgres": "0.0.6-
|
|
75
|
+
"@syncular/dialect-pglite": "0.0.6-177",
|
|
76
|
+
"@syncular/server-dialect-postgres": "0.0.6-177",
|
|
77
77
|
"kysely": "*",
|
|
78
78
|
"zod": "*"
|
|
79
79
|
},
|
|
@@ -320,6 +320,19 @@ describe('createConsoleGatewayRoutes live fan-in', () => {
|
|
|
320
320
|
});
|
|
321
321
|
});
|
|
322
322
|
|
|
323
|
+
it('allows same-origin websocket upgrades when allowedOrigins is unset', async () => {
|
|
324
|
+
const { app } = createGatewayLiveHarness();
|
|
325
|
+
|
|
326
|
+
const response = await app.request('http://localhost/console/events/live', {
|
|
327
|
+
headers: {
|
|
328
|
+
Authorization: `Bearer ${CONSOLE_TOKEN}`,
|
|
329
|
+
Origin: 'http://localhost',
|
|
330
|
+
},
|
|
331
|
+
});
|
|
332
|
+
|
|
333
|
+
expect(response.status).toBe(200);
|
|
334
|
+
});
|
|
335
|
+
|
|
323
336
|
it('enforces inbound websocket message rate limits per upstream connection', async () => {
|
|
324
337
|
const { app, getEvents } = createGatewayLiveHarness({
|
|
325
338
|
websocket: {
|