@syncular/server-hono 0.0.1-60

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 (76) hide show
  1. package/dist/api-key-auth.d.ts +49 -0
  2. package/dist/api-key-auth.d.ts.map +1 -0
  3. package/dist/api-key-auth.js +110 -0
  4. package/dist/api-key-auth.js.map +1 -0
  5. package/dist/blobs.d.ts +69 -0
  6. package/dist/blobs.d.ts.map +1 -0
  7. package/dist/blobs.js +383 -0
  8. package/dist/blobs.js.map +1 -0
  9. package/dist/console/index.d.ts +8 -0
  10. package/dist/console/index.d.ts.map +1 -0
  11. package/dist/console/index.js +7 -0
  12. package/dist/console/index.js.map +1 -0
  13. package/dist/console/routes.d.ts +106 -0
  14. package/dist/console/routes.d.ts.map +1 -0
  15. package/dist/console/routes.js +1612 -0
  16. package/dist/console/routes.js.map +1 -0
  17. package/dist/console/schemas.d.ts +308 -0
  18. package/dist/console/schemas.d.ts.map +1 -0
  19. package/dist/console/schemas.js +201 -0
  20. package/dist/console/schemas.js.map +1 -0
  21. package/dist/create-server.d.ts +78 -0
  22. package/dist/create-server.d.ts.map +1 -0
  23. package/dist/create-server.js +99 -0
  24. package/dist/create-server.js.map +1 -0
  25. package/dist/index.d.ts +16 -0
  26. package/dist/index.d.ts.map +1 -0
  27. package/dist/index.js +25 -0
  28. package/dist/index.js.map +1 -0
  29. package/dist/openapi.d.ts +45 -0
  30. package/dist/openapi.d.ts.map +1 -0
  31. package/dist/openapi.js +59 -0
  32. package/dist/openapi.js.map +1 -0
  33. package/dist/proxy/connection-manager.d.ts +78 -0
  34. package/dist/proxy/connection-manager.d.ts.map +1 -0
  35. package/dist/proxy/connection-manager.js +251 -0
  36. package/dist/proxy/connection-manager.js.map +1 -0
  37. package/dist/proxy/index.d.ts +8 -0
  38. package/dist/proxy/index.d.ts.map +1 -0
  39. package/dist/proxy/index.js +8 -0
  40. package/dist/proxy/index.js.map +1 -0
  41. package/dist/proxy/routes.d.ts +74 -0
  42. package/dist/proxy/routes.d.ts.map +1 -0
  43. package/dist/proxy/routes.js +147 -0
  44. package/dist/proxy/routes.js.map +1 -0
  45. package/dist/rate-limit.d.ts +101 -0
  46. package/dist/rate-limit.d.ts.map +1 -0
  47. package/dist/rate-limit.js +186 -0
  48. package/dist/rate-limit.js.map +1 -0
  49. package/dist/routes.d.ts +126 -0
  50. package/dist/routes.d.ts.map +1 -0
  51. package/dist/routes.js +788 -0
  52. package/dist/routes.js.map +1 -0
  53. package/dist/ws.d.ts +230 -0
  54. package/dist/ws.d.ts.map +1 -0
  55. package/dist/ws.js +601 -0
  56. package/dist/ws.js.map +1 -0
  57. package/package.json +73 -0
  58. package/src/__tests__/create-server.test.ts +187 -0
  59. package/src/__tests__/pull-chunk-storage.test.ts +189 -0
  60. package/src/__tests__/rate-limit.test.ts +78 -0
  61. package/src/__tests__/realtime-bridge.test.ts +131 -0
  62. package/src/__tests__/ws-connection-manager.test.ts +176 -0
  63. package/src/api-key-auth.ts +179 -0
  64. package/src/blobs.ts +534 -0
  65. package/src/console/index.ts +17 -0
  66. package/src/console/routes.ts +2155 -0
  67. package/src/console/schemas.ts +299 -0
  68. package/src/create-server.ts +180 -0
  69. package/src/index.ts +42 -0
  70. package/src/openapi.ts +74 -0
  71. package/src/proxy/connection-manager.ts +340 -0
  72. package/src/proxy/index.ts +8 -0
  73. package/src/proxy/routes.ts +223 -0
  74. package/src/rate-limit.ts +321 -0
  75. package/src/routes.ts +1186 -0
  76. package/src/ws.ts +789 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"routes.js","sourceRoot":"","sources":["../src/routes.ts"],"names":[],"mappings":"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"}
package/dist/ws.d.ts ADDED
@@ -0,0 +1,230 @@
1
+ /**
2
+ * @syncular/server-hono - WebSocket helpers for realtime sync wake-ups
3
+ *
4
+ * WebSockets are used only as a "wake up" mechanism; clients must still pull.
5
+ * Also supports presence tracking for collaborative features.
6
+ */
7
+ import type { WSContext } from 'hono/ws';
8
+ /**
9
+ * Presence entry for a client connected to a scope
10
+ */
11
+ export interface PresenceEntry {
12
+ clientId: string;
13
+ actorId: string;
14
+ joinedAt: number;
15
+ metadata?: Record<string, unknown>;
16
+ }
17
+ /**
18
+ * Push response data sent back to the client over WS
19
+ */
20
+ export interface WsPushResponseData {
21
+ requestId: string;
22
+ ok: boolean;
23
+ status: string;
24
+ commitSeq?: number;
25
+ results: Array<{
26
+ opIndex: number;
27
+ status: string;
28
+ [k: string]: unknown;
29
+ }>;
30
+ }
31
+ /**
32
+ * WebSocket event data for sync notifications
33
+ */
34
+ export interface SyncWebSocketEvent {
35
+ /** Event type */
36
+ event: 'sync' | 'heartbeat' | 'error' | 'presence' | 'push-response';
37
+ /** Data payload */
38
+ data: {
39
+ /** New cursor position (for sync events) */
40
+ cursor?: number;
41
+ /** Error message (for error events) */
42
+ error?: string;
43
+ /** Presence data (for presence events) */
44
+ presence?: {
45
+ action: 'join' | 'leave' | 'update' | 'snapshot';
46
+ scopeKey: string;
47
+ clientId?: string;
48
+ actorId?: string;
49
+ metadata?: Record<string, unknown>;
50
+ entries?: PresenceEntry[];
51
+ };
52
+ /** Push response data (for push-response events) */
53
+ requestId?: string;
54
+ ok?: boolean;
55
+ status?: string;
56
+ commitSeq?: number;
57
+ results?: Array<{
58
+ opIndex: number;
59
+ status: string;
60
+ [k: string]: unknown;
61
+ }>;
62
+ /** Timestamp */
63
+ timestamp: number;
64
+ };
65
+ }
66
+ /**
67
+ * WebSocket connection controller for managing active connections
68
+ */
69
+ export interface WebSocketConnection {
70
+ /** Send a sync notification, optionally with inline change data */
71
+ sendSync(cursor: number, changes?: unknown[]): void;
72
+ /** Send a heartbeat */
73
+ sendHeartbeat(): void;
74
+ /** Send a presence event */
75
+ sendPresence(data: {
76
+ action: 'join' | 'leave' | 'update' | 'snapshot';
77
+ scopeKey: string;
78
+ clientId?: string;
79
+ actorId?: string;
80
+ metadata?: Record<string, unknown>;
81
+ entries?: PresenceEntry[];
82
+ }): void;
83
+ /** Send a push response back to the client */
84
+ sendPushResponse(data: WsPushResponseData): void;
85
+ /** Send an error and close */
86
+ sendError(message: string): void;
87
+ /** Close the connection */
88
+ close(code?: number, reason?: string): void;
89
+ /** Whether the connection is still open */
90
+ isOpen: boolean;
91
+ /** Actor ID for this connection */
92
+ actorId: string;
93
+ /** Client/device identifier for this connection */
94
+ clientId: string;
95
+ /** Transport path used by this connection. */
96
+ transportPath: 'direct' | 'relay';
97
+ }
98
+ export declare function createWebSocketConnection(ws: WSContext, args: {
99
+ actorId: string;
100
+ clientId: string;
101
+ transportPath: 'direct' | 'relay';
102
+ }): WebSocketConnection;
103
+ /**
104
+ * Connection manager for tracking active WebSocket connections.
105
+ * Scope-key based notifications and presence tracking.
106
+ */
107
+ export declare class WebSocketConnectionManager {
108
+ private connectionsByClientId;
109
+ private scopeKeysByClientId;
110
+ private connectionsByScopeKey;
111
+ /**
112
+ * In-memory presence tracking by scope key.
113
+ * Map<scopeKey, Map<clientId, PresenceEntry>>
114
+ */
115
+ private presenceByScopeKey;
116
+ /**
117
+ * Callback for presence changes - allows integration with SyncRealtimeBroadcaster
118
+ */
119
+ onPresenceChange?: (event: {
120
+ action: 'join' | 'leave' | 'update';
121
+ scopeKey: string;
122
+ clientId: string;
123
+ actorId: string;
124
+ metadata?: Record<string, unknown>;
125
+ }) => void;
126
+ private heartbeatIntervalMs;
127
+ private heartbeatTimer;
128
+ constructor(options?: {
129
+ heartbeatIntervalMs?: number;
130
+ onPresenceChange?: WebSocketConnectionManager['onPresenceChange'];
131
+ });
132
+ /**
133
+ * Register a connection for a client.
134
+ * Returns a cleanup function to unregister.
135
+ */
136
+ register(connection: WebSocketConnection, initialScopeKeys?: string[]): () => void;
137
+ /**
138
+ * Update the effective scopes for an already-connected client.
139
+ * If the client has no active connections, this is a no-op.
140
+ */
141
+ updateClientScopeKeys(clientId: string, scopeKeys: string[]): void;
142
+ /**
143
+ * Check whether a client is currently authorized/subscribed for a scope key.
144
+ */
145
+ isClientSubscribedToScopeKey(clientId: string, scopeKey: string): boolean;
146
+ /**
147
+ * Join presence for a scope key.
148
+ * Called when a client wants to be visible to others in a scope.
149
+ */
150
+ joinPresence(clientId: string, scopeKey: string, metadata?: Record<string, unknown>): boolean;
151
+ /**
152
+ * Leave presence for a scope key.
153
+ * Called when a client no longer wants to be visible in a scope.
154
+ */
155
+ leavePresence(clientId: string, scopeKey: string): boolean;
156
+ /**
157
+ * Update presence metadata for a client in a scope.
158
+ * Used to update what entity a user is viewing/editing.
159
+ */
160
+ updatePresenceMetadata(clientId: string, scopeKey: string, metadata: Record<string, unknown>): boolean;
161
+ /**
162
+ * Get presence entries for a scope key.
163
+ */
164
+ getPresence(scopeKey: string): PresenceEntry[];
165
+ /**
166
+ * Get presence for multiple scopes.
167
+ */
168
+ getPresenceMultiple(scopeKeys: string[]): Record<string, PresenceEntry[]>;
169
+ /**
170
+ * Send current presence snapshot to a specific connection.
171
+ * Called when a client first subscribes to presence for a scope.
172
+ */
173
+ sendPresenceSnapshot(connection: WebSocketConnection, scopeKey: string): void;
174
+ /**
175
+ * Handle a presence event from another server instance (via broadcaster).
176
+ * Updates local state and notifies local clients.
177
+ */
178
+ handleRemotePresenceEvent(event: {
179
+ action: 'join' | 'leave' | 'update';
180
+ scopeKey: string;
181
+ clientId: string;
182
+ actorId: string;
183
+ metadata?: Record<string, unknown>;
184
+ }): void;
185
+ /**
186
+ * Broadcast a presence event to all clients subscribed to a scope key.
187
+ */
188
+ private broadcastPresenceEvent;
189
+ /**
190
+ * Clean up presence when a client fully disconnects (all connections closed).
191
+ */
192
+ private cleanupClientPresence;
193
+ /**
194
+ * Notify clients that new data is available for the given scopes.
195
+ * Dedupes connections that match multiple scopes.
196
+ */
197
+ /**
198
+ * Maximum serialized size (bytes) for inline WS change delivery.
199
+ * Larger payloads fall back to cursor-only notification.
200
+ */
201
+ private static readonly WS_INLINE_MAX_BYTES;
202
+ notifyScopeKeys(scopeKeys: string[], cursor: number, opts?: {
203
+ excludeClientIds?: string[];
204
+ changes?: unknown[];
205
+ }): void;
206
+ /**
207
+ * Get the number of active connections for a client.
208
+ */
209
+ getConnectionCount(clientId: string): number;
210
+ /**
211
+ * Get the current transport path for a client if connected.
212
+ */
213
+ getClientTransportPath(clientId: string): 'direct' | 'relay' | null;
214
+ /**
215
+ * Get total number of active connections.
216
+ */
217
+ getTotalConnections(): number;
218
+ /**
219
+ * Close all connections for a client.
220
+ */
221
+ closeClientConnections(clientId: string): void;
222
+ /**
223
+ * Close all connections.
224
+ */
225
+ closeAll(): void;
226
+ private ensureHeartbeat;
227
+ private sendHeartbeats;
228
+ private unregister;
229
+ }
230
+ //# sourceMappingURL=ws.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ws.d.ts","sourceRoot":"","sources":["../src/ws.ts"],"names":[],"mappings":"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"}