@principal-ai/control-tower-core 0.1.25 → 0.2.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.
Files changed (117) hide show
  1. package/dist/abstractions/AuthAdapter.d.ts +1 -1
  2. package/dist/abstractions/AuthAdapter.d.ts.map +1 -1
  3. package/dist/abstractions/DefaultLockManager.d.ts +2 -2
  4. package/dist/abstractions/DefaultLockManager.d.ts.map +1 -1
  5. package/dist/abstractions/DefaultLockManager.js +7 -8
  6. package/dist/abstractions/DefaultPresenceManager.d.ts +4 -4
  7. package/dist/abstractions/DefaultPresenceManager.d.ts.map +1 -1
  8. package/dist/abstractions/DefaultPresenceManager.js +25 -25
  9. package/dist/abstractions/DefaultRoomManager.d.ts +3 -3
  10. package/dist/abstractions/DefaultRoomManager.d.ts.map +1 -1
  11. package/dist/abstractions/DefaultRoomManager.js +6 -4
  12. package/dist/abstractions/EventEmitter.d.ts.map +1 -1
  13. package/dist/abstractions/LockManager.d.ts +1 -1
  14. package/dist/abstractions/LockManager.d.ts.map +1 -1
  15. package/dist/abstractions/LockManager.js +1 -1
  16. package/dist/abstractions/PresenceExtension.d.ts +2 -2
  17. package/dist/abstractions/PresenceExtension.d.ts.map +1 -1
  18. package/dist/abstractions/PresenceManager.d.ts +1 -1
  19. package/dist/abstractions/PresenceManager.d.ts.map +1 -1
  20. package/dist/abstractions/PresenceManager.js +5 -5
  21. package/dist/abstractions/RoomManager.d.ts +2 -2
  22. package/dist/abstractions/RoomManager.d.ts.map +1 -1
  23. package/dist/abstractions/StorageAdapter.d.ts +4 -4
  24. package/dist/abstractions/StorageAdapter.d.ts.map +1 -1
  25. package/dist/abstractions/TransportAdapter.d.ts +4 -4
  26. package/dist/abstractions/TransportAdapter.d.ts.map +1 -1
  27. package/dist/abstractions/index.d.ts +11 -11
  28. package/dist/abstractions/index.d.ts.map +1 -1
  29. package/dist/abstractions/index.js +9 -9
  30. package/dist/adapters/mock/MockAuthAdapter.d.ts +2 -2
  31. package/dist/adapters/mock/MockAuthAdapter.d.ts.map +1 -1
  32. package/dist/adapters/mock/MockAuthAdapter.js +13 -11
  33. package/dist/adapters/mock/MockRTCDataChannel.d.ts +83 -0
  34. package/dist/adapters/mock/MockRTCDataChannel.d.ts.map +1 -0
  35. package/dist/adapters/mock/MockRTCDataChannel.js +146 -0
  36. package/dist/adapters/mock/MockRTCPeerConnection.d.ts +168 -0
  37. package/dist/adapters/mock/MockRTCPeerConnection.d.ts.map +1 -0
  38. package/dist/adapters/mock/MockRTCPeerConnection.js +449 -0
  39. package/dist/adapters/mock/MockStorageAdapter.d.ts +1 -1
  40. package/dist/adapters/mock/MockStorageAdapter.d.ts.map +1 -1
  41. package/dist/adapters/mock/MockStorageAdapter.js +18 -18
  42. package/dist/adapters/mock/MockTransportAdapter.d.ts +2 -2
  43. package/dist/adapters/mock/MockTransportAdapter.d.ts.map +1 -1
  44. package/dist/adapters/mock/MockTransportAdapter.js +38 -38
  45. package/dist/adapters/mock/index.d.ts +5 -3
  46. package/dist/adapters/mock/index.d.ts.map +1 -1
  47. package/dist/adapters/mock/index.js +10 -5
  48. package/dist/adapters/webrtc/WebRTCSignalingAdapter.d.ts +135 -0
  49. package/dist/adapters/webrtc/WebRTCSignalingAdapter.d.ts.map +1 -0
  50. package/dist/adapters/webrtc/WebRTCSignalingAdapter.js +368 -0
  51. package/dist/adapters/webrtc/index.d.ts +2 -0
  52. package/dist/adapters/webrtc/index.d.ts.map +1 -0
  53. package/dist/adapters/webrtc/index.js +5 -0
  54. package/dist/adapters/websocket/BrowserWebSocketTransportAdapter.d.ts +75 -0
  55. package/dist/adapters/websocket/BrowserWebSocketTransportAdapter.d.ts.map +1 -0
  56. package/dist/adapters/websocket/BrowserWebSocketTransportAdapter.js +231 -0
  57. package/dist/adapters/websocket/WebSocketClientTransportAdapter.d.ts +3 -3
  58. package/dist/adapters/websocket/WebSocketClientTransportAdapter.d.ts.map +1 -1
  59. package/dist/adapters/websocket/WebSocketClientTransportAdapter.js +38 -38
  60. package/dist/adapters/websocket/WebSocketServerTransportAdapter.d.ts +7 -7
  61. package/dist/adapters/websocket/WebSocketServerTransportAdapter.d.ts.map +1 -1
  62. package/dist/adapters/websocket/WebSocketServerTransportAdapter.js +94 -91
  63. package/dist/adapters/websocket/browser.d.ts +2 -0
  64. package/dist/adapters/websocket/browser.d.ts.map +1 -0
  65. package/dist/adapters/websocket/browser.js +6 -0
  66. package/dist/adapters/websocket/index.d.ts +3 -2
  67. package/dist/adapters/websocket/index.d.ts.map +1 -1
  68. package/dist/adapters/websocket/index.js +7 -3
  69. package/dist/adapters/websocket/node.d.ts +3 -0
  70. package/dist/adapters/websocket/node.d.ts.map +1 -0
  71. package/dist/adapters/websocket/node.js +8 -0
  72. package/dist/client/BaseClient.d.ts +6 -6
  73. package/dist/client/BaseClient.d.ts.map +1 -1
  74. package/dist/client/BaseClient.js +86 -72
  75. package/dist/client/ClientBuilder.d.ts +5 -5
  76. package/dist/client/ClientBuilder.d.ts.map +1 -1
  77. package/dist/client/ClientBuilder.js +3 -3
  78. package/dist/client/PresenceClient.d.ts +4 -4
  79. package/dist/client/PresenceClient.d.ts.map +1 -1
  80. package/dist/client/PresenceClient.js +30 -30
  81. package/dist/client/index.d.ts +3 -3
  82. package/dist/client/index.d.ts.map +1 -1
  83. package/dist/index.d.ts +7 -6
  84. package/dist/index.d.ts.map +1 -1
  85. package/dist/index.js +27 -19
  86. package/dist/index.js.map +27 -23
  87. package/dist/index.mjs +1585 -558
  88. package/dist/index.mjs.map +27 -23
  89. package/dist/server/BaseServer.d.ts +13 -13
  90. package/dist/server/BaseServer.d.ts.map +1 -1
  91. package/dist/server/BaseServer.js +218 -143
  92. package/dist/server/ExperimentalAPI.d.ts +7 -7
  93. package/dist/server/ExperimentalAPI.d.ts.map +1 -1
  94. package/dist/server/ExperimentalAPI.js +22 -22
  95. package/dist/server/ServerBuilder.d.ts +11 -11
  96. package/dist/server/ServerBuilder.d.ts.map +1 -1
  97. package/dist/server/ServerBuilder.js +10 -10
  98. package/dist/server/index.d.ts +3 -3
  99. package/dist/server/index.d.ts.map +1 -1
  100. package/dist/server/index.js +3 -3
  101. package/dist/types/auth.d.ts.map +1 -1
  102. package/dist/types/events.d.ts +10 -10
  103. package/dist/types/events.d.ts.map +1 -1
  104. package/dist/types/experimental.d.ts +2 -2
  105. package/dist/types/experimental.d.ts.map +1 -1
  106. package/dist/types/experimental.js +1 -1
  107. package/dist/types/index.d.ts +7 -7
  108. package/dist/types/index.d.ts.map +1 -1
  109. package/dist/types/index.js +2 -2
  110. package/dist/types/lock.d.ts +2 -2
  111. package/dist/types/lock.d.ts.map +1 -1
  112. package/dist/types/presence.d.ts +3 -3
  113. package/dist/types/presence.d.ts.map +1 -1
  114. package/dist/types/room.d.ts +4 -4
  115. package/dist/types/room.d.ts.map +1 -1
  116. package/dist/types/room.js +2 -2
  117. package/package.json +15 -7
@@ -11,9 +11,9 @@
11
11
  * @see docs/EXPERIMENTAL_BROADCAST.md
12
12
  * @see docs/FEATURE_REQUEST_TEMPLATE.md
13
13
  */
14
- import type { Message } from '../types/index.js';
15
- import type { ExperimentalFeatureConfig, ClientPredicate, BroadcastResult, BroadcastOptions, ExperimentalUsageEvent } from '../types/experimental.js';
16
- import type { ConnectedClient } from './BaseServer.js';
14
+ import type { BroadcastOptions, BroadcastResult, ClientPredicate, ExperimentalFeatureConfig, ExperimentalUsageEvent } from "../types/experimental.js";
15
+ import type { Message } from "../types/index.js";
16
+ import type { ConnectedClient } from "./BaseServer.js";
17
17
  /**
18
18
  * Experimental API namespace
19
19
  *
@@ -55,7 +55,7 @@ export declare class ExperimentalAPI {
55
55
  * });
56
56
  * ```
57
57
  */
58
- broadcast(message: Omit<Message, 'id' | 'timestamp'>, options?: BroadcastOptions): Promise<BroadcastResult>;
58
+ broadcast(message: Omit<Message, "id" | "timestamp">, options?: BroadcastOptions): Promise<BroadcastResult>;
59
59
  /**
60
60
  * Broadcasts a message to all authenticated clients
61
61
  *
@@ -76,7 +76,7 @@ export declare class ExperimentalAPI {
76
76
  * });
77
77
  * ```
78
78
  */
79
- broadcastAuthenticated(message: Omit<Message, 'id' | 'timestamp'>, options?: BroadcastOptions): Promise<BroadcastResult>;
79
+ broadcastAuthenticated(message: Omit<Message, "id" | "timestamp">, options?: BroadcastOptions): Promise<BroadcastResult>;
80
80
  /**
81
81
  * Broadcasts a message to clients matching a predicate function
82
82
  *
@@ -102,7 +102,7 @@ export declare class ExperimentalAPI {
102
102
  * );
103
103
  * ```
104
104
  */
105
- broadcastWhere(predicate: ClientPredicate, message: Omit<Message, 'id' | 'timestamp'>, options?: BroadcastOptions): Promise<BroadcastResult>;
105
+ broadcastWhere(predicate: ClientPredicate, message: Omit<Message, "id" | "timestamp">, options?: BroadcastOptions): Promise<BroadcastResult>;
106
106
  /**
107
107
  * Sends a message to specific users by their user IDs
108
108
  *
@@ -127,7 +127,7 @@ export declare class ExperimentalAPI {
127
127
  * );
128
128
  * ```
129
129
  */
130
- sendToUsers(userIds: string[], message: Omit<Message, 'id' | 'timestamp'>, options?: BroadcastOptions): Promise<BroadcastResult>;
130
+ sendToUsers(userIds: string[], message: Omit<Message, "id" | "timestamp">, options?: BroadcastOptions): Promise<BroadcastResult>;
131
131
  private ensureEnabled;
132
132
  private warnIfEnabled;
133
133
  private trackUsage;
@@ -1 +1 @@
1
- {"version":3,"file":"ExperimentalAPI.d.ts","sourceRoot":"","sources":["../../src/server/ExperimentalAPI.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,KAAK,EACV,yBAAyB,EACzB,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,sBAAsB,EACvB,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEvD;;;;;GAKG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA4B;IACnD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAA0D;IAClF,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAA0C;IACtE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA0B;IACrD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAwE;gBAEzF,OAAO,EAAE;QACnB,MAAM,EAAE,yBAAyB,CAAC;QAClC,MAAM,CAAC,EAAE;YAAE,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;SAAE,CAAC;QACjE,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,IAAI,CAAC;QACrD,UAAU,EAAE,MAAM,eAAe,EAAE,CAAC;QACpC,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;KACrF;IAQD;;;;;;;;;;;;;;;;;;;OAmBG;IACG,SAAS,CACb,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,GAAG,WAAW,CAAC,EAC1C,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,eAAe,CAAC;IAa3B;;;;;;;;;;;;;;;;;;;OAmBG;IACG,sBAAsB,CAC1B,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,GAAG,WAAW,CAAC,EAC1C,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,eAAe,CAAC;IAa3B;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACG,cAAc,CAClB,SAAS,EAAE,eAAe,EAC1B,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,GAAG,WAAW,CAAC,EAC1C,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,eAAe,CAAC;IAa3B;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACG,WAAW,CACf,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,GAAG,WAAW,CAAC,EAC1C,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,eAAe,CAAC;IAgB3B,OAAO,CAAC,aAAa;IASrB,OAAO,CAAC,aAAa;IASrB,OAAO,CAAC,UAAU;YAmBJ,kBAAkB;IAsEhC,OAAO,CAAC,UAAU;CAGnB"}
1
+ {"version":3,"file":"ExperimentalAPI.d.ts","sourceRoot":"","sources":["../../src/server/ExperimentalAPI.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EACX,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,yBAAyB,EACzB,sBAAsB,EACtB,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEvD;;;;;GAKG;AACH,qBAAa,eAAe;IAC3B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA4B;IACnD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAEtB;IACF,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAA0C;IACtE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA0B;IACrD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAGV;gBAEP,OAAO,EAAE;QACpB,MAAM,EAAE,yBAAyB,CAAC;QAClC,MAAM,CAAC,EAAE;YAAE,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;SAAE,CAAC;QACjE,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,IAAI,CAAC;QACrD,UAAU,EAAE,MAAM,eAAe,EAAE,CAAC;QACpC,YAAY,EAAE,CACb,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC5B,OAAO,CAAC,IAAI,CAAC,CAAC;KACnB;IAQD;;;;;;;;;;;;;;;;;;;OAmBG;IACG,SAAS,CACd,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,GAAG,WAAW,CAAC,EAC1C,OAAO,CAAC,EAAE,gBAAgB,GACxB,OAAO,CAAC,eAAe,CAAC;IAa3B;;;;;;;;;;;;;;;;;;;OAmBG;IACG,sBAAsB,CAC3B,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,GAAG,WAAW,CAAC,EAC1C,OAAO,CAAC,EAAE,gBAAgB,GACxB,OAAO,CAAC,eAAe,CAAC;IAkB3B;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACG,cAAc,CACnB,SAAS,EAAE,eAAe,EAC1B,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,GAAG,WAAW,CAAC,EAC1C,OAAO,CAAC,EAAE,gBAAgB,GACxB,OAAO,CAAC,eAAe,CAAC;IAkB3B;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACG,WAAW,CAChB,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,GAAG,WAAW,CAAC,EAC1C,OAAO,CAAC,EAAE,gBAAgB,GACxB,OAAO,CAAC,eAAe,CAAC;IAuB3B,OAAO,CAAC,aAAa;IASrB,OAAO,CAAC,aAAa;IASrB,OAAO,CAAC,UAAU;YAuBJ,kBAAkB;IAsEhC,OAAO,CAAC,UAAU;CAGlB"}
@@ -50,11 +50,11 @@ class ExperimentalAPI {
50
50
  * ```
51
51
  */
52
52
  async broadcast(message, options) {
53
- this.ensureEnabled('broadcast', 'enableBroadcast');
54
- this.warnIfEnabled('broadcast()');
53
+ this.ensureEnabled("broadcast", "enableBroadcast");
54
+ this.warnIfEnabled("broadcast()");
55
55
  const clients = this.getClients();
56
56
  const result = await this.broadcastToClients(clients, message, options);
57
- this.trackUsage('broadcast', message.type, clients.length, message.payload);
57
+ this.trackUsage("broadcast", message.type, clients.length, message.payload);
58
58
  return result;
59
59
  }
60
60
  /**
@@ -78,11 +78,11 @@ class ExperimentalAPI {
78
78
  * ```
79
79
  */
80
80
  async broadcastAuthenticated(message, options) {
81
- this.ensureEnabled('broadcastAuthenticated', 'enableBroadcast');
82
- this.warnIfEnabled('broadcastAuthenticated()');
83
- const clients = this.getClients().filter(client => client.authenticated);
81
+ this.ensureEnabled("broadcastAuthenticated", "enableBroadcast");
82
+ this.warnIfEnabled("broadcastAuthenticated()");
83
+ const clients = this.getClients().filter((client) => client.authenticated);
84
84
  const result = await this.broadcastToClients(clients, message, options);
85
- this.trackUsage('broadcastAuthenticated', message.type, clients.length, message.payload);
85
+ this.trackUsage("broadcastAuthenticated", message.type, clients.length, message.payload);
86
86
  return result;
87
87
  }
88
88
  /**
@@ -111,11 +111,11 @@ class ExperimentalAPI {
111
111
  * ```
112
112
  */
113
113
  async broadcastWhere(predicate, message, options) {
114
- this.ensureEnabled('broadcastWhere', 'enableBroadcast');
115
- this.warnIfEnabled('broadcastWhere()');
114
+ this.ensureEnabled("broadcastWhere", "enableBroadcast");
115
+ this.warnIfEnabled("broadcastWhere()");
116
116
  const clients = this.getClients().filter(predicate);
117
117
  const result = await this.broadcastToClients(clients, message, options);
118
- this.trackUsage('broadcastWhere', message.type, clients.length, message.payload);
118
+ this.trackUsage("broadcastWhere", message.type, clients.length, message.payload);
119
119
  return result;
120
120
  }
121
121
  /**
@@ -143,12 +143,12 @@ class ExperimentalAPI {
143
143
  * ```
144
144
  */
145
145
  async sendToUsers(userIds, message, options) {
146
- this.ensureEnabled('sendToUsers', 'enableBroadcast');
147
- this.warnIfEnabled('sendToUsers()');
146
+ this.ensureEnabled("sendToUsers", "enableBroadcast");
147
+ this.warnIfEnabled("sendToUsers()");
148
148
  const userIdSet = new Set(userIds);
149
- const clients = this.getClients().filter(client => userIdSet.has(client.userId));
149
+ const clients = this.getClients().filter((client) => userIdSet.has(client.userId));
150
150
  const result = await this.broadcastToClients(clients, message, options);
151
- this.trackUsage('sendToUsers', message.type, clients.length, message.payload);
151
+ this.trackUsage("sendToUsers", message.type, clients.length, message.payload);
152
152
  return result;
153
153
  }
154
154
  // Private helper methods
@@ -171,7 +171,7 @@ class ExperimentalAPI {
171
171
  messageType,
172
172
  recipientCount,
173
173
  timestamp: Date.now(),
174
- payloadSize
174
+ payloadSize,
175
175
  });
176
176
  }
177
177
  }
@@ -180,13 +180,13 @@ class ExperimentalAPI {
180
180
  const opts = {
181
181
  continueOnError: options?.continueOnError ?? true,
182
182
  sendTimeout: options?.sendTimeout ?? 5000,
183
- includeErrors: options?.includeErrors ?? false
183
+ includeErrors: options?.includeErrors ?? false,
184
184
  };
185
185
  const fullMessage = {
186
186
  id: this.generateId(),
187
187
  timestamp: Date.now(),
188
188
  type: message.type,
189
- payload: message.payload
189
+ payload: message.payload,
190
190
  };
191
191
  let sent = 0;
192
192
  let failed = 0;
@@ -195,19 +195,19 @@ class ExperimentalAPI {
195
195
  try {
196
196
  // Create timeout promise
197
197
  const timeoutPromise = new Promise((_, reject) => {
198
- setTimeout(() => reject(new Error('Send timeout')), opts.sendTimeout);
198
+ setTimeout(() => reject(new Error("Send timeout")), opts.sendTimeout);
199
199
  });
200
200
  // Convert Message to Record<string, unknown> for sendToClient
201
201
  const messageRecord = {
202
202
  id: fullMessage.id,
203
203
  type: fullMessage.type,
204
204
  payload: fullMessage.payload,
205
- timestamp: fullMessage.timestamp
205
+ timestamp: fullMessage.timestamp,
206
206
  };
207
207
  // Race between send and timeout
208
208
  await Promise.race([
209
209
  this.sendToClient(client.id, messageRecord),
210
- timeoutPromise
210
+ timeoutPromise,
211
211
  ]);
212
212
  sent++;
213
213
  }
@@ -216,7 +216,7 @@ class ExperimentalAPI {
216
216
  if (opts.includeErrors) {
217
217
  errors.push({
218
218
  clientId: client.id,
219
- error: error
219
+ error: error,
220
220
  });
221
221
  }
222
222
  if (!opts.continueOnError) {
@@ -229,7 +229,7 @@ class ExperimentalAPI {
229
229
  sent,
230
230
  failed,
231
231
  errors,
232
- durationMs: Date.now() - startTime
232
+ durationMs: Date.now() - startTime,
233
233
  };
234
234
  }
235
235
  generateId() {
@@ -1,14 +1,14 @@
1
- import type { ITransportAdapter } from '../abstractions/TransportAdapter.js';
2
- import type { IAuthAdapter } from '../abstractions/AuthAdapter.js';
3
- import type { IStorageAdapter } from '../abstractions/StorageAdapter.js';
4
- import type { RoomManager } from '../abstractions/RoomManager.js';
5
- import type { LockManager } from '../abstractions/LockManager.js';
6
- import type { PresenceManager } from '../abstractions/PresenceManager.js';
7
- import type { RoomConfig, ExperimentalFeatureConfig } from '../types/index.js';
8
- import { BaseServer } from './BaseServer.js';
9
- import type { Server as HttpServer } from 'http';
10
- import type { Server as HttpsServer } from 'https';
11
- import type { WebSocketServer } from 'ws';
1
+ import type { Server as HttpServer } from "http";
2
+ import type { Server as HttpsServer } from "https";
3
+ import type { WebSocketServer } from "ws";
4
+ import type { IAuthAdapter } from "../abstractions/AuthAdapter.js";
5
+ import type { LockManager } from "../abstractions/LockManager.js";
6
+ import type { PresenceManager } from "../abstractions/PresenceManager.js";
7
+ import type { RoomManager } from "../abstractions/RoomManager.js";
8
+ import type { IStorageAdapter } from "../abstractions/StorageAdapter.js";
9
+ import type { ITransportAdapter } from "../abstractions/TransportAdapter.js";
10
+ import type { ExperimentalFeatureConfig, RoomConfig } from "../types/index.js";
11
+ import { BaseServer } from "./BaseServer.js";
12
12
  export declare class ServerBuilder {
13
13
  private transport?;
14
14
  private auth?;
@@ -1 +1 @@
1
- {"version":3,"file":"ServerBuilder.d.ts","sourceRoot":"","sources":["../../src/server/ServerBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAC7E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAE1E,OAAO,KAAK,EAAE,UAAU,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAC/E,OAAO,EAAE,UAAU,EAAqB,MAAM,iBAAiB,CAAC;AAChE,OAAO,KAAK,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,MAAM,CAAC;AACjD,OAAO,KAAK,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,IAAI,CAAC;AAE1C,qBAAa,aAAa;IACxB,OAAO,CAAC,SAAS,CAAC,CAAoB;IACtC,OAAO,CAAC,IAAI,CAAC,CAAe;IAC5B,OAAO,CAAC,OAAO,CAAC,CAAkB;IAClC,OAAO,CAAC,WAAW,CAAC,CAAc;IAClC,OAAO,CAAC,WAAW,CAAC,CAAc;IAClC,OAAO,CAAC,eAAe,CAAC,CAAkB;IAC1C,OAAO,CAAC,iBAAiB,CAAC,CAAsB;IAChD,OAAO,CAAC,UAAU,CAAC,CAA2B;IAC9C,OAAO,CAAC,aAAa,CAAC,CAAS;IAC/B,OAAO,CAAC,eAAe,CAAC,CAAkB;IAC1C,OAAO,CAAC,oBAAoB,CAAC,CAA4B;IAEzD,aAAa,CAAC,SAAS,EAAE,iBAAiB,GAAG,IAAI;IAKjD,QAAQ,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI;IAKlC,WAAW,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI;IAK3C,eAAe,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IAK/C,eAAe,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IAK/C;;;;;;;OAOG;IACH,mBAAmB,CAAC,eAAe,EAAE,eAAe,GAAG,IAAI;IAK3D,qBAAqB,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI;IAKxD,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,WAAW,GAAG,IAAI;IAKtD,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAKrC,mBAAmB,CAAC,GAAG,EAAE,eAAe,GAAG,IAAI;IAK/C;;;;;;;OAOG;IACH,wBAAwB,CAAC,QAAQ,EAAE,yBAAyB,GAAG,IAAI;IAKnE,KAAK,IAAI,UAAU;IAkDnB;;;OAGG;IACH,OAAO,CAAC,0BAA0B;CAyCnC"}
1
+ {"version":3,"file":"ServerBuilder.d.ts","sourceRoot":"","sources":["../../src/server/ServerBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,MAAM,CAAC;AACjD,OAAO,KAAK,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,IAAI,CAAC;AAC1C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAEnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAC7E,OAAO,KAAK,EAAE,yBAAyB,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/E,OAAO,EAAE,UAAU,EAAqB,MAAM,iBAAiB,CAAC;AAEhE,qBAAa,aAAa;IACzB,OAAO,CAAC,SAAS,CAAC,CAAoB;IACtC,OAAO,CAAC,IAAI,CAAC,CAAe;IAC5B,OAAO,CAAC,OAAO,CAAC,CAAkB;IAClC,OAAO,CAAC,WAAW,CAAC,CAAc;IAClC,OAAO,CAAC,WAAW,CAAC,CAAc;IAClC,OAAO,CAAC,eAAe,CAAC,CAAkB;IAC1C,OAAO,CAAC,iBAAiB,CAAC,CAAsB;IAChD,OAAO,CAAC,UAAU,CAAC,CAA2B;IAC9C,OAAO,CAAC,aAAa,CAAC,CAAS;IAC/B,OAAO,CAAC,eAAe,CAAC,CAAkB;IAC1C,OAAO,CAAC,oBAAoB,CAAC,CAA4B;IAEzD,aAAa,CAAC,SAAS,EAAE,iBAAiB,GAAG,IAAI;IAKjD,QAAQ,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI;IAKlC,WAAW,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI;IAK3C,eAAe,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IAK/C,eAAe,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IAK/C;;;;;;;OAOG;IACH,mBAAmB,CAAC,eAAe,EAAE,eAAe,GAAG,IAAI;IAK3D,qBAAqB,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI;IAKxD,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,WAAW,GAAG,IAAI;IAKtD,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAKrC,mBAAmB,CAAC,GAAG,EAAE,eAAe,GAAG,IAAI;IAK/C;;;;;;;OAOG;IACH,wBAAwB,CAAC,QAAQ,EAAE,yBAAyB,GAAG,IAAI;IAKnE,KAAK,IAAI,UAAU;IAkDnB;;;OAGG;IACH,OAAO,CAAC,0BAA0B;CAyClC"}
@@ -66,13 +66,13 @@ class ServerBuilder {
66
66
  }
67
67
  build() {
68
68
  if (!this.transport) {
69
- throw new Error('Transport adapter is required');
69
+ throw new Error("Transport adapter is required");
70
70
  }
71
71
  if (!this.roomManager) {
72
- throw new Error('Room manager is required');
72
+ throw new Error("Room manager is required");
73
73
  }
74
74
  if (!this.lockManager) {
75
- throw new Error('Lock manager is required');
75
+ throw new Error("Lock manager is required");
76
76
  }
77
77
  const config = {
78
78
  transport: this.transport,
@@ -84,7 +84,7 @@ class ServerBuilder {
84
84
  defaultRoomConfig: this.defaultRoomConfig || {
85
85
  maxUsers: 50,
86
86
  maxHistory: 100,
87
- permissions: ['read', 'write']
87
+ permissions: ["read", "write"],
88
88
  },
89
89
  httpServer: this.httpServer,
90
90
  webSocketPath: this.webSocketPath,
@@ -92,8 +92,8 @@ class ServerBuilder {
92
92
  experimental: this.experimentalFeatures || {
93
93
  enableBroadcast: false,
94
94
  warnOnExperimentalUse: true,
95
- trackUsageMetrics: false
96
- }
95
+ trackUsageMetrics: false,
96
+ },
97
97
  };
98
98
  const server = new BaseServer_js_1.BaseServer(config);
99
99
  // Auto-link presence manager to server for broadcasting
@@ -112,11 +112,11 @@ class ServerBuilder {
112
112
  */
113
113
  wirePresenceExtensionHooks(server, presenceManager) {
114
114
  // Initialize extensions when server starts
115
- server.on('started', async () => {
115
+ server.on("started", async () => {
116
116
  await presenceManager.initializeExtensions();
117
117
  });
118
118
  // Wire room join/leave events to presence extensions
119
- server.on('client_joined_room', async ({ clientId, roomId }) => {
119
+ server.on("client_joined_room", async ({ clientId, roomId }) => {
120
120
  const userId = server.getUserIdFromClientId(clientId);
121
121
  if (userId && presenceManager.isEnabled()) {
122
122
  // Call onRoomJoined for all extensions
@@ -128,7 +128,7 @@ class ServerBuilder {
128
128
  }
129
129
  }
130
130
  });
131
- server.on('client_left_room', async ({ clientId, roomId }) => {
131
+ server.on("client_left_room", async ({ clientId, roomId }) => {
132
132
  const userId = server.getUserIdFromClientId(clientId);
133
133
  if (userId && presenceManager.isEnabled()) {
134
134
  // Call onRoomLeft for all extensions
@@ -141,7 +141,7 @@ class ServerBuilder {
141
141
  }
142
142
  });
143
143
  // Destroy extensions when server stops
144
- server.on('stopped', async () => {
144
+ server.on("stopped", async () => {
145
145
  await presenceManager.destroyExtensions();
146
146
  });
147
147
  }
@@ -1,4 +1,4 @@
1
- export { BaseServer, type ServerConfig, type ServerEvents, type ConnectedClient } from './BaseServer.js';
2
- export { ServerBuilder } from './ServerBuilder.js';
3
- export { ExperimentalAPI } from './ExperimentalAPI.js';
1
+ export { BaseServer, type ConnectedClient, type ServerConfig, type ServerEvents, } from "./BaseServer.js";
2
+ export { ExperimentalAPI } from "./ExperimentalAPI.js";
3
+ export { ServerBuilder } from "./ServerBuilder.js";
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,KAAK,YAAY,EAAE,KAAK,YAAY,EAAE,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACzG,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AACA,OAAO,EACN,UAAU,EACV,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,YAAY,GACjB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC"}
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ExperimentalAPI = exports.ServerBuilder = exports.BaseServer = void 0;
3
+ exports.ServerBuilder = exports.ExperimentalAPI = exports.BaseServer = void 0;
4
4
  // Server-side implementations
5
5
  var BaseServer_js_1 = require("./BaseServer.js");
6
6
  Object.defineProperty(exports, "BaseServer", { enumerable: true, get: function () { return BaseServer_js_1.BaseServer; } });
7
- var ServerBuilder_js_1 = require("./ServerBuilder.js");
8
- Object.defineProperty(exports, "ServerBuilder", { enumerable: true, get: function () { return ServerBuilder_js_1.ServerBuilder; } });
9
7
  var ExperimentalAPI_js_1 = require("./ExperimentalAPI.js");
10
8
  Object.defineProperty(exports, "ExperimentalAPI", { enumerable: true, get: function () { return ExperimentalAPI_js_1.ExperimentalAPI; } });
9
+ var ServerBuilder_js_1 = require("./ServerBuilder.js");
10
+ Object.defineProperty(exports, "ServerBuilder", { enumerable: true, get: function () { return ServerBuilder_js_1.ServerBuilder; } });
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/types/auth.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC7B;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/types/auth.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,UAAU;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,SAAS;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC5B;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CACf"}
@@ -1,5 +1,5 @@
1
- import type { Lock } from './lock.js';
2
- export type EventType = 'file_change' | 'commit' | 'branch_change' | 'cursor_position' | 'git_status' | 'lock_acquired' | 'lock_released' | 'lock_status' | 'user_joined' | 'user_left' | 'heartbeat';
1
+ import type { Lock } from "./lock.js";
2
+ export type EventType = "file_change" | "commit" | "branch_change" | "cursor_position" | "git_status" | "lock_acquired" | "lock_released" | "lock_status" | "user_joined" | "user_left" | "heartbeat";
3
3
  export interface BaseEvent {
4
4
  id: string;
5
5
  type: EventType;
@@ -8,9 +8,9 @@ export interface BaseEvent {
8
8
  roomId: string;
9
9
  metadata?: Record<string, unknown>;
10
10
  }
11
- export type FileAction = 'create' | 'update' | 'delete' | 'rename';
11
+ export type FileAction = "create" | "update" | "delete" | "rename";
12
12
  export interface FileChangeEvent extends BaseEvent {
13
- type: 'file_change';
13
+ type: "file_change";
14
14
  data: {
15
15
  path: string;
16
16
  action: FileAction;
@@ -19,7 +19,7 @@ export interface FileChangeEvent extends BaseEvent {
19
19
  };
20
20
  }
21
21
  export interface GitStatusEvent extends BaseEvent {
22
- type: 'git_status';
22
+ type: "git_status";
23
23
  data: {
24
24
  branch: string;
25
25
  ahead: number;
@@ -31,7 +31,7 @@ export interface GitStatusEvent extends BaseEvent {
31
31
  };
32
32
  }
33
33
  export interface CommitEvent extends BaseEvent {
34
- type: 'commit';
34
+ type: "commit";
35
35
  data: {
36
36
  hash: string;
37
37
  message: string;
@@ -40,14 +40,14 @@ export interface CommitEvent extends BaseEvent {
40
40
  };
41
41
  }
42
42
  export interface BranchChangeEvent extends BaseEvent {
43
- type: 'branch_change';
43
+ type: "branch_change";
44
44
  data: {
45
45
  from: string;
46
46
  to: string;
47
47
  };
48
48
  }
49
49
  export interface CursorPositionEvent extends BaseEvent {
50
- type: 'cursor_position';
50
+ type: "cursor_position";
51
51
  data: {
52
52
  file: string;
53
53
  line: number;
@@ -55,11 +55,11 @@ export interface CursorPositionEvent extends BaseEvent {
55
55
  };
56
56
  }
57
57
  export interface LockStatusEvent extends BaseEvent {
58
- type: 'lock_status';
58
+ type: "lock_status";
59
59
  data: {
60
60
  lockId?: string;
61
61
  lock?: Lock;
62
- action: 'acquired' | 'released' | 'expired';
62
+ action: "acquired" | "released" | "expired";
63
63
  };
64
64
  }
65
65
  export type Event = FileChangeEvent | GitStatusEvent | CommitEvent | BranchChangeEvent | CursorPositionEvent | LockStatusEvent;
@@ -1 +1 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/types/events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEtC,MAAM,MAAM,SAAS,GACjB,aAAa,GACb,QAAQ,GACR,eAAe,GACf,iBAAiB,GACjB,YAAY,GACZ,eAAe,GACf,eAAe,GACf,aAAa,GACb,aAAa,GACb,WAAW,GACX,WAAW,CAAC;AAEhB,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,SAAS,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEnE,MAAM,WAAW,eAAgB,SAAQ,SAAS;IAChD,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,EAAE;QACJ,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,UAAU,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;CACH;AAED,MAAM,WAAW,cAAe,SAAQ,SAAS;IAC/C,IAAI,EAAE,YAAY,CAAC;IACnB,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,KAAK,CAAC;YACX,IAAI,EAAE,MAAM,CAAC;YACb,MAAM,EAAE,MAAM,CAAC;SAChB,CAAC,CAAC;KACJ,CAAC;CACH;AAED,MAAM,WAAW,WAAY,SAAQ,SAAS;IAC5C,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE;QACJ,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;CACH;AAED,MAAM,WAAW,iBAAkB,SAAQ,SAAS;IAClD,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,EAAE;QACJ,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;KACZ,CAAC;CACH;AAED,MAAM,WAAW,mBAAoB,SAAQ,SAAS;IACpD,IAAI,EAAE,iBAAiB,CAAC;IACxB,IAAI,EAAE;QACJ,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;CACH;AAED,MAAM,WAAW,eAAgB,SAAQ,SAAS;IAChD,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,EAAE;QACJ,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,IAAI,CAAC;QACZ,MAAM,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS,CAAC;KAC7C,CAAC;CACH;AAED,MAAM,MAAM,KAAK,GACb,eAAe,GACf,cAAc,GACd,WAAW,GACX,iBAAiB,GACjB,mBAAmB,GACnB,eAAe,CAAC"}
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/types/events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEtC,MAAM,MAAM,SAAS,GAClB,aAAa,GACb,QAAQ,GACR,eAAe,GACf,iBAAiB,GACjB,YAAY,GACZ,eAAe,GACf,eAAe,GACf,aAAa,GACb,aAAa,GACb,WAAW,GACX,WAAW,CAAC;AAEf,MAAM,WAAW,SAAS;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,SAAS,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEnE,MAAM,WAAW,eAAgB,SAAQ,SAAS;IACjD,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,UAAU,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACF;AAED,MAAM,WAAW,cAAe,SAAQ,SAAS;IAChD,IAAI,EAAE,YAAY,CAAC;IACnB,IAAI,EAAE;QACL,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,KAAK,CAAC;YACZ,IAAI,EAAE,MAAM,CAAC;YACb,MAAM,EAAE,MAAM,CAAC;SACf,CAAC,CAAC;KACH,CAAC;CACF;AAED,MAAM,WAAW,WAAY,SAAQ,SAAS;IAC7C,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;KACf,CAAC;CACF;AAED,MAAM,WAAW,iBAAkB,SAAQ,SAAS;IACnD,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;KACX,CAAC;CACF;AAED,MAAM,WAAW,mBAAoB,SAAQ,SAAS;IACrD,IAAI,EAAE,iBAAiB,CAAC;IACxB,IAAI,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;KACf,CAAC;CACF;AAED,MAAM,WAAW,eAAgB,SAAQ,SAAS;IACjD,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,EAAE;QACL,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,IAAI,CAAC;QACZ,MAAM,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS,CAAC;KAC5C,CAAC;CACF;AAED,MAAM,MAAM,KAAK,GACd,eAAe,GACf,cAAc,GACd,WAAW,GACX,iBAAiB,GACjB,mBAAmB,GACnB,eAAe,CAAC"}
@@ -7,7 +7,7 @@
7
7
  * For production use, submit a feature request to graduate these APIs:
8
8
  * @see docs/FEATURE_REQUEST_TEMPLATE.md
9
9
  */
10
- import type { ConnectedClient } from '../server/BaseServer.js';
10
+ import type { ConnectedClient } from "../server/BaseServer.js";
11
11
  /**
12
12
  * Configuration for experimental features
13
13
  */
@@ -107,7 +107,7 @@ export interface ExperimentalUsageEvent {
107
107
  /**
108
108
  * The experimental method that was called
109
109
  */
110
- method: 'broadcast' | 'broadcastAuthenticated' | 'broadcastWhere' | 'sendToUsers';
110
+ method: "broadcast" | "broadcastAuthenticated" | "broadcastWhere" | "sendToUsers";
111
111
  /**
112
112
  * Message type being broadcast
113
113
  */
@@ -1 +1 @@
1
- {"version":3,"file":"experimental.d.ts","sourceRoot":"","sources":["../../src/types/experimental.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE/D;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B;;;;;;;OAOG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAEhC;;;;;;;OAOG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,MAAM,EAAE,eAAe,KAAK,OAAO,CAAC;AAEnE;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,MAAM,EAAE,KAAK,CAAC;QACZ,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,KAAK,CAAC;KACd,CAAC,CAAC;IAEH;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,MAAM,EAAE,WAAW,GAAG,wBAAwB,GAAG,gBAAgB,GAAG,aAAa,CAAC;IAElF;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,qBAAa,wBAAyB,SAAQ,KAAK;aAE/B,OAAO,EAAE,MAAM;aACf,SAAS,EAAE,MAAM,yBAAyB;gBAD1C,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,yBAAyB;CAe7D"}
1
+ {"version":3,"file":"experimental.d.ts","sourceRoot":"","sources":["../../src/types/experimental.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE/D;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACzC;;;;;;;OAOG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B;;;;;;;OAOG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAEhC;;;;;;;OAOG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,MAAM,EAAE,eAAe,KAAK,OAAO,CAAC;AAEnE;;GAEG;AACH,MAAM,WAAW,eAAe;IAC/B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,MAAM,EAAE,KAAK,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,KAAK,CAAC;KACb,CAAC,CAAC;IAEH;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAChC;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACtC;;OAEG;IACH,MAAM,EACH,WAAW,GACX,wBAAwB,GACxB,gBAAgB,GAChB,aAAa,CAAC;IAEjB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,qBAAa,wBAAyB,SAAQ,KAAK;aAEjC,OAAO,EAAE,MAAM;aACf,SAAS,EAAE,MAAM,yBAAyB;gBAD1C,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,yBAAyB;CAe3D"}
@@ -26,7 +26,7 @@ class ExperimentalFeatureError extends Error {
26
26
  `See docs/EXPERIMENTAL_BROADCAST.md for details.`);
27
27
  this.feature = feature;
28
28
  this.configKey = configKey;
29
- this.name = 'ExperimentalFeatureError';
29
+ this.name = "ExperimentalFeatureError";
30
30
  }
31
31
  }
32
32
  exports.ExperimentalFeatureError = ExperimentalFeatureError;
@@ -1,8 +1,8 @@
1
- export { EventType, BaseEvent, FileAction, FileChangeEvent, GitStatusEvent, CommitEvent, BranchChangeEvent, CursorPositionEvent, Event } from './events.js';
2
- export { TokenPayload, AuthResult, JWTConfig, AuthenticatePayload, AuthenticateResult } from './auth.js';
3
- export { RoomPermission, Room, RoomUser, UserStatus, RoomState, SerializableRoomState, RoomConfig, serializeRoomState, deserializeRoomState } from './room.js';
4
- export { LockType, LockPriority, Lock, LockRequest, LockQueueItem, LockState } from './lock.js';
5
- export type ConnectionState = 'connecting' | 'connected' | 'disconnecting' | 'disconnected';
1
+ export { AuthenticatePayload, AuthenticateResult, AuthResult, JWTConfig, TokenPayload, } from "./auth.js";
2
+ export { BaseEvent, BranchChangeEvent, CommitEvent, CursorPositionEvent, Event, EventType, FileAction, FileChangeEvent, GitStatusEvent, } from "./events.js";
3
+ export { Lock, LockPriority, LockQueueItem, LockRequest, LockState, LockType, } from "./lock.js";
4
+ export { deserializeRoomState, Room, RoomConfig, RoomPermission, RoomState, RoomUser, SerializableRoomState, serializeRoomState, UserStatus, } from "./room.js";
5
+ export type ConnectionState = "connecting" | "connected" | "disconnecting" | "disconnected";
6
6
  export interface ConnectionOptions {
7
7
  url?: string;
8
8
  reconnect?: boolean;
@@ -20,6 +20,6 @@ export interface Message {
20
20
  export type MessageHandler = (message: Message) => void | Promise<void>;
21
21
  export type ErrorHandler = (error: Error) => void;
22
22
  export type CloseHandler = (code: number, reason: string) => void;
23
- export { ExperimentalFeatureConfig, ClientPredicate, BroadcastResult, BroadcastOptions, ExperimentalUsageEvent, ExperimentalFeatureError } from './experimental.js';
24
- export { PresenceStatus, DeviceInfo, UserPresence, PresenceConfig, PresenceChangeEvent, ActivityUpdate } from './presence.js';
23
+ export { BroadcastOptions, BroadcastResult, ClientPredicate, ExperimentalFeatureConfig, ExperimentalFeatureError, ExperimentalUsageEvent, } from "./experimental.js";
24
+ export { ActivityUpdate, DeviceInfo, PresenceChangeEvent, PresenceConfig, PresenceStatus, UserPresence, } from "./presence.js";
25
25
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,SAAS,EACT,UAAU,EACV,eAAe,EACf,cAAc,EACd,WAAW,EACX,iBAAiB,EACjB,mBAAmB,EACnB,KAAK,EACN,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,YAAY,EACZ,UAAU,EACV,SAAS,EACT,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,cAAc,EACd,IAAI,EACJ,QAAQ,EACR,UAAU,EACV,SAAS,EACT,qBAAqB,EACrB,UAAU,EACV,kBAAkB,EAClB,oBAAoB,EACrB,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,IAAI,EACJ,WAAW,EACX,aAAa,EACb,SAAS,EACV,MAAM,WAAW,CAAC;AAEnB,MAAM,MAAM,eAAe,GAAG,YAAY,GAAG,WAAW,GAAG,eAAe,GAAG,cAAc,CAAC;AAE5F,MAAM,WAAW,iBAAiB;IAChC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AACxE,MAAM,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;AAClD,MAAM,MAAM,YAAY,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;AAElE,OAAO,EACL,yBAAyB,EACzB,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,sBAAsB,EACtB,wBAAwB,EACzB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,cAAc,EACd,UAAU,EACV,YAAY,EACZ,cAAc,EACd,mBAAmB,EACnB,cAAc,EACf,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,mBAAmB,EACnB,kBAAkB,EAClB,UAAU,EACV,SAAS,EACT,YAAY,GACZ,MAAM,WAAW,CAAC;AACnB,OAAO,EACN,SAAS,EACT,iBAAiB,EACjB,WAAW,EACX,mBAAmB,EACnB,KAAK,EACL,SAAS,EACT,UAAU,EACV,eAAe,EACf,cAAc,GACd,MAAM,aAAa,CAAC;AACrB,OAAO,EACN,IAAI,EACJ,YAAY,EACZ,aAAa,EACb,WAAW,EACX,SAAS,EACT,QAAQ,GACR,MAAM,WAAW,CAAC;AACnB,OAAO,EACN,oBAAoB,EACpB,IAAI,EACJ,UAAU,EACV,cAAc,EACd,SAAS,EACT,QAAQ,EACR,qBAAqB,EACrB,kBAAkB,EAClB,UAAU,GACV,MAAM,WAAW,CAAC;AAEnB,MAAM,MAAM,eAAe,GACxB,YAAY,GACZ,WAAW,GACX,eAAe,GACf,cAAc,CAAC;AAElB,MAAM,WAAW,iBAAiB;IACjC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,OAAO;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AACxE,MAAM,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;AAClD,MAAM,MAAM,YAAY,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;AAElE,OAAO,EACN,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,yBAAyB,EACzB,wBAAwB,EACxB,sBAAsB,GACtB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACN,cAAc,EACd,UAAU,EACV,mBAAmB,EACnB,cAAc,EACd,cAAc,EACd,YAAY,GACZ,MAAM,eAAe,CAAC"}
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ExperimentalFeatureError = exports.deserializeRoomState = exports.serializeRoomState = void 0;
3
+ exports.ExperimentalFeatureError = exports.serializeRoomState = exports.deserializeRoomState = void 0;
4
4
  var room_js_1 = require("./room.js");
5
- Object.defineProperty(exports, "serializeRoomState", { enumerable: true, get: function () { return room_js_1.serializeRoomState; } });
6
5
  Object.defineProperty(exports, "deserializeRoomState", { enumerable: true, get: function () { return room_js_1.deserializeRoomState; } });
6
+ Object.defineProperty(exports, "serializeRoomState", { enumerable: true, get: function () { return room_js_1.serializeRoomState; } });
7
7
  var experimental_js_1 = require("./experimental.js");
8
8
  Object.defineProperty(exports, "ExperimentalFeatureError", { enumerable: true, get: function () { return experimental_js_1.ExperimentalFeatureError; } });
@@ -1,5 +1,5 @@
1
- export type LockType = 'file' | 'directory' | 'branch';
2
- export type LockPriority = 'low' | 'normal' | 'high';
1
+ export type LockType = "file" | "directory" | "branch";
2
+ export type LockPriority = "low" | "normal" | "high";
3
3
  export interface Lock {
4
4
  id: string;
5
5
  type: LockType;
@@ -1 +1 @@
1
- {"version":3,"file":"lock.d.ts","sourceRoot":"","sources":["../../src/types/lock.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAC;AACvD,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAErD,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,YAAY,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,aAAc,SAAQ,WAAW;IAChD,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IAC9B,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAChC;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACzB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;IACpC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;CACrC"}
1
+ {"version":3,"file":"lock.d.ts","sourceRoot":"","sources":["../../src/types/lock.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAC;AACvD,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAErD,MAAM,WAAW,IAAI;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,YAAY,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,WAAW;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,aAAc,SAAQ,WAAW;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IAC9B,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAC/B;AAED,MAAM,WAAW,SAAS;IACzB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACzB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;IACpC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;CACpC"}
@@ -4,7 +4,7 @@
4
4
  * Types for tracking global user presence independent of room membership.
5
5
  * Supports multi-device connections and activity monitoring.
6
6
  */
7
- export type PresenceStatus = 'online' | 'away' | 'offline';
7
+ export type PresenceStatus = "online" | "away" | "offline";
8
8
  /**
9
9
  * Device information for a connected client
10
10
  */
@@ -133,7 +133,7 @@ export interface PresenceChangeEvent {
133
133
  /**
134
134
  * Reason for the change
135
135
  */
136
- reason?: 'connected' | 'disconnected' | 'activity' | 'heartbeat_timeout' | 'grace_period_expired';
136
+ reason?: "connected" | "disconnected" | "activity" | "heartbeat_timeout" | "grace_period_expired";
137
137
  }
138
138
  /**
139
139
  * Activity update from a client
@@ -154,7 +154,7 @@ export interface ActivityUpdate {
154
154
  /**
155
155
  * Type of activity (optional)
156
156
  */
157
- activityType?: 'heartbeat' | 'message' | 'user_action';
157
+ activityType?: "heartbeat" | "message" | "user_action";
158
158
  /**
159
159
  * Additional metadata
160
160
  */
@@ -1 +1 @@
1
- {"version":3,"file":"presence.d.ts","sourceRoot":"","sources":["../../src/types/presence.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;AAE3D;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;;;;OAKG;IACH,MAAM,EAAE,cAAc,CAAC;IAEvB;;OAEG;IACH,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAEjC;;OAEG;IACH,gBAAgB,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAE7B;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B;;;OAGG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,cAAc,EAAE,cAAc,CAAC;IAE/B;;OAEG;IACH,MAAM,EAAE,cAAc,CAAC;IAEvB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,MAAM,CAAC,EAAE,WAAW,GAAG,cAAc,GAAG,UAAU,GAAG,mBAAmB,GAAG,sBAAsB,CAAC;CACnG;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,YAAY,CAAC,EAAE,WAAW,GAAG,SAAS,GAAG,aAAa,CAAC;IAEvD;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC"}
1
+ {"version":3,"file":"presence.d.ts","sourceRoot":"","sources":["../../src/types/presence.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;AAE3D;;GAEG;AACH,MAAM,WAAW,UAAU;IAC1B;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC5B;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;;;;OAKG;IACH,MAAM,EAAE,cAAc,CAAC;IAEvB;;OAEG;IACH,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAEjC;;OAEG;IACH,gBAAgB,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC9B;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAE7B;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B;;;OAGG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,cAAc,EAAE,cAAc,CAAC;IAE/B;;OAEG;IACH,MAAM,EAAE,cAAc,CAAC;IAEvB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,MAAM,CAAC,EACJ,WAAW,GACX,cAAc,GACd,UAAU,GACV,mBAAmB,GACnB,sBAAsB,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC9B;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,YAAY,CAAC,EAAE,WAAW,GAAG,SAAS,GAAG,aAAa,CAAC;IAEvD;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC"}
@@ -1,6 +1,6 @@
1
- import type { Event } from './events.js';
2
- import type { Lock } from './lock.js';
3
- export type RoomPermission = 'read' | 'write' | 'admin';
1
+ import type { Event } from "./events.js";
2
+ import type { Lock } from "./lock.js";
3
+ export type RoomPermission = "read" | "write" | "admin";
4
4
  export interface Room {
5
5
  id: string;
6
6
  name: string;
@@ -20,7 +20,7 @@ export interface RoomUser {
20
20
  status: UserStatus;
21
21
  metadata?: Record<string, unknown>;
22
22
  }
23
- export type UserStatus = 'online' | 'away' | 'offline';
23
+ export type UserStatus = "online" | "away" | "offline";
24
24
  export interface RoomState {
25
25
  room: Room;
26
26
  users: Map<string, RoomUser>;
@@ -1 +1 @@
1
- {"version":3,"file":"room.d.ts","sourceRoot":"","sources":["../../src/types/room.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEtC,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;AAExD,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,cAAc,EAAE,CAAC;IAC9B,MAAM,EAAE,UAAU,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;AAEvD,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,IAAI,CAAC;IACX,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC7B,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAC3B,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;CAC1B;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,IAAI,CAAC;IACX,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAChC,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;CAC7B;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,SAAS,GAAG,qBAAqB,CAO1E;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,qBAAqB,GAAG,SAAS,CAOjF;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;IAC/B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC"}
1
+ {"version":3,"file":"room.d.ts","sourceRoot":"","sources":["../../src/types/room.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEtC,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;AAExD,MAAM,WAAW,IAAI;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,QAAQ;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,cAAc,EAAE,CAAC;IAC9B,MAAM,EAAE,UAAU,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;AAEvD,MAAM,WAAW,SAAS;IACzB,IAAI,EAAE,IAAI,CAAC;IACX,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC7B,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAC3B,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;CACzB;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACrC,IAAI,EAAE,IAAI,CAAC;IACX,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAChC,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;CAC5B;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,SAAS,GAAG,qBAAqB,CAO1E;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CACnC,UAAU,EAAE,qBAAqB,GAC/B,SAAS,CAOX;AAED,MAAM,WAAW,UAAU;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;IAC/B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC"}
@@ -10,7 +10,7 @@ function serializeRoomState(state) {
10
10
  room: state.room,
11
11
  users: Object.fromEntries(state.users),
12
12
  eventHistory: state.eventHistory,
13
- locks: Object.fromEntries(state.locks)
13
+ locks: Object.fromEntries(state.locks),
14
14
  };
15
15
  }
16
16
  /**
@@ -21,6 +21,6 @@ function deserializeRoomState(serialized) {
21
21
  room: serialized.room,
22
22
  users: new Map(Object.entries(serialized.users)),
23
23
  eventHistory: serialized.eventHistory,
24
- locks: new Map(Object.entries(serialized.locks))
24
+ locks: new Map(Object.entries(serialized.locks)),
25
25
  };
26
26
  }