@principal-ai/control-tower-core 0.1.24 → 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 +1590 -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 +224 -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
@@ -1,4 +1,4 @@
1
- import type { TokenPayload } from '../types/index.js';
1
+ import type { TokenPayload } from "../types/index.js";
2
2
  export interface IAuthAdapter {
3
3
  validateToken(token: string): Promise<TokenPayload>;
4
4
  generateToken?(payload: TokenPayload): Promise<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"AuthAdapter.d.ts","sourceRoot":"","sources":["../../src/abstractions/AuthAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACb,MAAM,mBAAmB,CAAC;AAE3B,MAAM,WAAW,YAAY;IAE3B,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAGpD,aAAa,CAAC,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACvD,YAAY,CAAC,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9C,WAAW,CAAC,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAG3C,eAAe,CAAC,IAAI,MAAM,GAAG,IAAI,CAAC;IAGlC,cAAc,CAAC,IAAI,OAAO,CAAC;IAC3B,cAAc,CAAC,IAAI,MAAM,CAAC;CAC3B"}
1
+ {"version":3,"file":"AuthAdapter.d.ts","sourceRoot":"","sources":["../../src/abstractions/AuthAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,MAAM,WAAW,YAAY;IAE5B,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAGpD,aAAa,CAAC,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACvD,YAAY,CAAC,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9C,WAAW,CAAC,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAG3C,eAAe,CAAC,IAAI,MAAM,GAAG,IAAI,CAAC;IAGlC,cAAc,CAAC,IAAI,OAAO,CAAC;IAC3B,cAAc,CAAC,IAAI,MAAM,CAAC;CAC1B"}
@@ -1,5 +1,5 @@
1
- import type { Lock, LockRequest } from '../types/index.js';
2
- import { LockManager } from './LockManager.js';
1
+ import type { Lock, LockRequest } from "../types/index.js";
2
+ import { LockManager } from "./LockManager.js";
3
3
  export declare class DefaultLockManager extends LockManager {
4
4
  acquireLock(userId: string, username: string, request: LockRequest): Promise<Lock>;
5
5
  releaseLock(lockId: string): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultLockManager.d.ts","sourceRoot":"","sources":["../../src/abstractions/DefaultLockManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,IAAI,EACJ,WAAW,EAEZ,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,qBAAa,kBAAmB,SAAQ,WAAW;IAC3C,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAyClF,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAsB1C,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAe/C,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAS3C,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAK7C,WAAW,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;IAI9B,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIxC,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAK7C,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUtD,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBjF,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAelE,OAAO,CAAC,UAAU;YAIJ,YAAY;CA2B3B"}
1
+ {"version":3,"file":"DefaultLockManager.d.ts","sourceRoot":"","sources":["../../src/abstractions/DefaultLockManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAiB,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,qBAAa,kBAAmB,SAAQ,WAAW;IAC5C,WAAW,CAChB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,WAAW,GAClB,OAAO,CAAC,IAAI,CAAC;IAkDV,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAsB1C,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAe/C,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAS3C,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAM7C,WAAW,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;IAI9B,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIxC,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAK7C,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUtD,UAAU,CACf,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,WAAW,GAClB,OAAO,CAAC,IAAI,CAAC;IAiBV,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAelE,OAAO,CAAC,UAAU;YAIJ,YAAY;CA2B1B"}
@@ -4,7 +4,7 @@ exports.DefaultLockManager = void 0;
4
4
  const LockManager_js_1 = require("./LockManager.js");
5
5
  class DefaultLockManager extends LockManager_js_1.LockManager {
6
6
  async acquireLock(userId, username, request) {
7
- const { path, type = 'file', priority = 'normal', ttl, branch, metadata } = request;
7
+ const { path, type = "file", priority = "normal", ttl, branch, metadata, } = request;
8
8
  // Check if user already has a lock on this path
9
9
  const userLocks = this.lockState.userLocks.get(userId) || new Set();
10
10
  if (userLocks.has(path)) {
@@ -30,7 +30,7 @@ class DefaultLockManager extends LockManager_js_1.LockManager {
30
30
  expiresAt: ttl ? Date.now() + ttl : undefined,
31
31
  priority,
32
32
  branch,
33
- metadata
33
+ metadata,
34
34
  };
35
35
  // Store lock
36
36
  this.lockState.locks.set(lockId, lock);
@@ -76,14 +76,13 @@ class DefaultLockManager extends LockManager_js_1.LockManager {
76
76
  return null;
77
77
  }
78
78
  async getUserLocks(userId) {
79
- return Array.from(this.lockState.locks.values())
80
- .filter(lock => lock.userId === userId);
79
+ return Array.from(this.lockState.locks.values()).filter((lock) => lock.userId === userId);
81
80
  }
82
81
  async getAllLocks() {
83
82
  return Array.from(this.lockState.locks.values());
84
83
  }
85
84
  async isLocked(path) {
86
- return await this.getLock(path) !== null;
85
+ return (await this.getLock(path)) !== null;
87
86
  }
88
87
  async getQueueLength(path) {
89
88
  const queue = this.lockState.queue.get(path);
@@ -106,7 +105,7 @@ class DefaultLockManager extends LockManager_js_1.LockManager {
106
105
  username,
107
106
  requestedAt: Date.now(),
108
107
  resolve: () => { },
109
- reject: () => { }
108
+ reject: () => { },
110
109
  };
111
110
  queue.push(queueItem);
112
111
  this.lockState.queue.set(path, queue);
@@ -116,7 +115,7 @@ class DefaultLockManager extends LockManager_js_1.LockManager {
116
115
  if (!queue) {
117
116
  return;
118
117
  }
119
- const index = queue.findIndex(item => item.userId === userId);
118
+ const index = queue.findIndex((item) => item.userId === userId);
120
119
  if (index !== -1) {
121
120
  queue.splice(index, 1);
122
121
  if (queue.length === 0) {
@@ -144,7 +143,7 @@ class DefaultLockManager extends LockManager_js_1.LockManager {
144
143
  priority: item.priority,
145
144
  ttl: item.ttl,
146
145
  branch: item.branch,
147
- metadata: item.metadata
146
+ metadata: item.metadata,
148
147
  });
149
148
  item.resolve(lock);
150
149
  }
@@ -7,10 +7,10 @@
7
7
  * For multi-server deployments, implement a custom PresenceManager
8
8
  * backed by Redis or another shared data store.
9
9
  */
10
- import { PresenceManager } from './PresenceManager.js';
11
- import type { UserPresence, DeviceInfo, PresenceStatus, PresenceConfig, PresenceChangeEvent, ActivityUpdate } from '../types/presence.js';
12
- import type { PresenceExtension, ExtendedUserPresence } from './PresenceExtension.js';
13
- import type { BaseServer } from '../server/BaseServer.js';
10
+ import type { BaseServer } from "../server/BaseServer.js";
11
+ import type { ActivityUpdate, DeviceInfo, PresenceChangeEvent, PresenceConfig, PresenceStatus, UserPresence } from "../types/presence.js";
12
+ import type { ExtendedUserPresence, PresenceExtension } from "./PresenceExtension.js";
13
+ import { PresenceManager } from "./PresenceManager.js";
14
14
  export declare class DefaultPresenceManager<TExtendedData = Record<string, unknown>> extends PresenceManager {
15
15
  private userPresences;
16
16
  private deviceToUser;
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultPresenceManager.d.ts","sourceRoot":"","sources":["../../src/abstractions/DefaultPresenceManager.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,KAAK,EACV,YAAY,EACZ,UAAU,EACV,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,cAAc,EACf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACtF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAW1D,qBAAa,sBAAsB,CAAC,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAE,SAAQ,eAAe;IAClG,OAAO,CAAC,aAAa,CAAmC;IACxD,OAAO,CAAC,YAAY,CAA6B;IACjD,OAAO,CAAC,kBAAkB,CAAuC;IACjE,OAAO,CAAC,UAAU,CAA0C;IAC5D,OAAO,CAAC,MAAM,CAAC,CAAa;gBAEhB,MAAM,CAAC,EAAE,cAAc,GAAG;QACpC,UAAU,CAAC,EAAE,iBAAiB,CAAC,aAAa,CAAC,EAAE,CAAC;KACjD;IAKD;;;;;OAKG;IACH,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAInC;;;OAGG;IACG,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAM3C;;;OAGG;IACG,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAMlC,aAAa,CACjB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,GAC/B,OAAO,CAAC,YAAY,CAAC;IAmHlB,gBAAgB,CACpB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAuEzB,cAAc,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC;IAiC7D,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC;IAyBpF,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAavE,cAAc,IAAI,OAAO,CAAC,oBAAoB,CAAC,aAAa,CAAC,EAAE,CAAC;IA4BhE,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IASrD,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC;IAU5E,iBAAiB,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;IA4EnD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAS5B;;OAEG;IACH,mBAAmB,IAAI,MAAM;IAI7B;;OAEG;IACH,uBAAuB,IAAI,MAAM;IAIjC;;OAEG;IACH,kBAAkB,IAAI,MAAM;CAG7B"}
1
+ {"version":3,"file":"DefaultPresenceManager.d.ts","sourceRoot":"","sources":["../../src/abstractions/DefaultPresenceManager.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EACX,cAAc,EACd,UAAU,EACV,mBAAmB,EACnB,cAAc,EACd,cAAc,EACd,YAAY,EACZ,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EACX,oBAAoB,EACpB,iBAAiB,EACjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAWvD,qBAAa,sBAAsB,CAClC,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CACtC,SAAQ,eAAe;IACxB,OAAO,CAAC,aAAa,CAAmC;IACxD,OAAO,CAAC,YAAY,CAA6B;IACjD,OAAO,CAAC,kBAAkB,CAAuC;IACjE,OAAO,CAAC,UAAU,CAA0C;IAC5D,OAAO,CAAC,MAAM,CAAC,CAAa;gBAG3B,MAAM,CAAC,EAAE,cAAc,GAAG;QACzB,UAAU,CAAC,EAAE,iBAAiB,CAAC,aAAa,CAAC,EAAE,CAAC;KAChD;IAMF;;;;;OAKG;IACH,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAInC;;;OAGG;IACG,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAM3C;;;OAGG;IACG,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAMlC,aAAa,CAClB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,GAC9B,OAAO,CAAC,YAAY,CAAC;IAgIlB,gBAAgB,CACrB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACd,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAuEzB,cAAc,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC;IAiC7D,eAAe,CACpB,MAAM,EAAE,MAAM,GACZ,OAAO,CAAC,oBAAoB,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC;IAyBhD,gBAAgB,CACrB,OAAO,EAAE,MAAM,EAAE,GACf,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAa/B,cAAc,IAAI,OAAO,CAAC,oBAAoB,CAAC,aAAa,CAAC,EAAE,CAAC;IA4BhE,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IASrD,aAAa,CAClB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,cAAc,GACpB,OAAO,CAAC,YAAY,CAAC;IAUlB,iBAAiB,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;IA4EnD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAS5B;;OAEG;IACH,mBAAmB,IAAI,MAAM;IAI7B;;OAEG;IACH,uBAAuB,IAAI,MAAM;IAIjC;;OAEG;IACH,kBAAkB,IAAI,MAAM;CAG5B"}
@@ -62,10 +62,10 @@ class DefaultPresenceManager extends PresenceManager_js_1.PresenceManager {
62
62
  type: deviceInfo?.type,
63
63
  connectedAt: now,
64
64
  lastActivity: now,
65
- metadata: deviceInfo?.metadata
65
+ metadata: deviceInfo?.metadata,
66
66
  };
67
67
  presence.devices.set(deviceId, device);
68
- presence.status = 'online';
68
+ presence.status = "online";
69
69
  presence.lastActivity = now;
70
70
  this.userPresences.set(userId, presence);
71
71
  this.deviceToUser.set(deviceId, userId);
@@ -84,13 +84,13 @@ class DefaultPresenceManager extends PresenceManager_js_1.PresenceManager {
84
84
  if (this.config.broadcastPresenceUpdates && this.server) {
85
85
  const experimental = this.server.experimental;
86
86
  await experimental?.broadcastAuthenticated({
87
- type: 'presence:user_online',
87
+ type: "presence:user_online",
88
88
  payload: {
89
89
  userId,
90
90
  deviceId,
91
- status: 'online',
92
- timestamp: now
93
- }
91
+ status: "online",
92
+ timestamp: now,
93
+ },
94
94
  });
95
95
  }
96
96
  return presence;
@@ -102,11 +102,11 @@ class DefaultPresenceManager extends PresenceManager_js_1.PresenceManager {
102
102
  // New user
103
103
  presence = {
104
104
  userId,
105
- status: 'online',
105
+ status: "online",
106
106
  devices: new Map(),
107
107
  firstConnectedAt: now,
108
108
  lastActivity: now,
109
- metadata: {}
109
+ metadata: {},
110
110
  };
111
111
  this.userPresences.set(userId, presence);
112
112
  }
@@ -116,7 +116,7 @@ class DefaultPresenceManager extends PresenceManager_js_1.PresenceManager {
116
116
  type: deviceInfo?.type,
117
117
  connectedAt: now,
118
118
  lastActivity: now,
119
- metadata: deviceInfo?.metadata
119
+ metadata: deviceInfo?.metadata,
120
120
  };
121
121
  presence.devices.set(deviceId, device);
122
122
  presence.status = this.calculatePresenceStatus(presence.devices, now);
@@ -137,13 +137,13 @@ class DefaultPresenceManager extends PresenceManager_js_1.PresenceManager {
137
137
  if (!wasOnline && this.config.broadcastPresenceUpdates && this.server) {
138
138
  const experimental = this.server.experimental;
139
139
  await experimental?.broadcastAuthenticated({
140
- type: 'presence:user_online',
140
+ type: "presence:user_online",
141
141
  payload: {
142
142
  userId,
143
143
  deviceId,
144
- status: 'online',
145
- timestamp: now
146
- }
144
+ status: "online",
145
+ timestamp: now,
146
+ },
147
147
  });
148
148
  }
149
149
  return presence;
@@ -168,14 +168,14 @@ class DefaultPresenceManager extends PresenceManager_js_1.PresenceManager {
168
168
  if (this.config.broadcastPresenceUpdates && this.server) {
169
169
  const experimental = this.server.experimental;
170
170
  await experimental?.broadcastAuthenticated({
171
- type: 'presence:user_offline',
171
+ type: "presence:user_offline",
172
172
  payload: {
173
173
  userId,
174
174
  deviceId,
175
- status: 'offline',
175
+ status: "offline",
176
176
  timestamp: now,
177
- gracePeriod: this.config.gracePeriod
178
- }
177
+ gracePeriod: this.config.gracePeriod,
178
+ },
179
179
  });
180
180
  }
181
181
  if (this.config.gracePeriod > 0) {
@@ -183,7 +183,7 @@ class DefaultPresenceManager extends PresenceManager_js_1.PresenceManager {
183
183
  this.gracePeriodEntries.set(userId, {
184
184
  userId,
185
185
  disconnectedAt: now,
186
- previousPresence: presence
186
+ previousPresence: presence,
187
187
  });
188
188
  this.userPresences.delete(userId);
189
189
  return null;
@@ -231,7 +231,7 @@ class DefaultPresenceManager extends PresenceManager_js_1.PresenceManager {
231
231
  presence.status = this.calculatePresenceStatus(presence.devices, timestamp);
232
232
  // Call extension hooks
233
233
  for (const ext of this.extensions) {
234
- await ext.onActivity?.(userId, deviceId, activityType || 'heartbeat');
234
+ await ext.onActivity?.(userId, deviceId, activityType || "heartbeat");
235
235
  }
236
236
  return presence;
237
237
  }
@@ -251,7 +251,7 @@ class DefaultPresenceManager extends PresenceManager_js_1.PresenceManager {
251
251
  }
252
252
  return {
253
253
  ...basePresence,
254
- extended: extendedData
254
+ extended: extendedData,
255
255
  };
256
256
  }
257
257
  return basePresence;
@@ -269,7 +269,7 @@ class DefaultPresenceManager extends PresenceManager_js_1.PresenceManager {
269
269
  async getOnlineUsers() {
270
270
  const online = [];
271
271
  for (const presence of this.userPresences.values()) {
272
- if (presence.status === 'online') {
272
+ if (presence.status === "online") {
273
273
  // Check visibility with extensions
274
274
  let visible = true;
275
275
  for (const ext of this.extensions) {
@@ -332,7 +332,7 @@ class DefaultPresenceManager extends PresenceManager_js_1.PresenceManager {
332
332
  previousStatus,
333
333
  status: newStatus,
334
334
  timestamp: now,
335
- reason: 'heartbeat_timeout'
335
+ reason: "heartbeat_timeout",
336
336
  });
337
337
  }
338
338
  // If no devices left, move to grace period
@@ -341,7 +341,7 @@ class DefaultPresenceManager extends PresenceManager_js_1.PresenceManager {
341
341
  this.gracePeriodEntries.set(userId, {
342
342
  userId,
343
343
  disconnectedAt: now,
344
- previousPresence: presence
344
+ previousPresence: presence,
345
345
  });
346
346
  }
347
347
  this.userPresences.delete(userId);
@@ -356,9 +356,9 @@ class DefaultPresenceManager extends PresenceManager_js_1.PresenceManager {
356
356
  changes.push({
357
357
  userId,
358
358
  previousStatus: entry.previousPresence.status,
359
- status: 'offline',
359
+ status: "offline",
360
360
  timestamp: now,
361
- reason: 'grace_period_expired'
361
+ reason: "grace_period_expired",
362
362
  });
363
363
  }
364
364
  }
@@ -1,5 +1,5 @@
1
- import type { Room, RoomUser, RoomState, RoomConfig, Event } from '../types/index.js';
2
- import { RoomManager } from './RoomManager.js';
1
+ import type { Event, Room, RoomConfig, RoomState, RoomUser } from "../types/index.js";
2
+ import { RoomManager } from "./RoomManager.js";
3
3
  export declare class DefaultRoomManager extends RoomManager {
4
4
  createRoom(id: string, config: RoomConfig): Promise<Room>;
5
5
  deleteRoom(id: string): Promise<void>;
@@ -10,6 +10,6 @@ export declare class DefaultRoomManager extends RoomManager {
10
10
  getUsersInRoom(roomId: string): Promise<RoomUser[]>;
11
11
  addEventToHistory(roomId: string, event: Event): Promise<void>;
12
12
  getEventHistory(roomId: string, limit?: number): Promise<Event[]>;
13
- updateUserStatus(roomId: string, userId: string, status: RoomUser['status']): Promise<void>;
13
+ updateUserStatus(roomId: string, userId: string, status: RoomUser["status"]): Promise<void>;
14
14
  }
15
15
  //# sourceMappingURL=DefaultRoomManager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultRoomManager.d.ts","sourceRoot":"","sources":["../../src/abstractions/DefaultRoomManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,UAAU,EACV,KAAK,EACN,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,qBAAa,kBAAmB,SAAQ,WAAW;IAC3C,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBzD,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrC,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAavD,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASxD,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWrF,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAIvD,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IASnD,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IAc9D,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAUjE,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CAYlG"}
1
+ {"version":3,"file":"DefaultRoomManager.d.ts","sourceRoot":"","sources":["../../src/abstractions/DefaultRoomManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,KAAK,EACL,IAAI,EACJ,UAAU,EACV,SAAS,EACT,QAAQ,EACR,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,qBAAa,kBAAmB,SAAQ,WAAW;IAC5C,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBzD,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrC,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBvD,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASxD,eAAe,CACpB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK,EACZ,cAAc,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,IAAI,CAAC;IAWV,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAIvD,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IASnD,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB9D,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAUjE,gBAAgB,CACrB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,GACxB,OAAO,CAAC,IAAI,CAAC;CAYhB"}
@@ -11,13 +11,13 @@ class DefaultRoomManager extends RoomManager_js_1.RoomManager {
11
11
  maxUsers: config.maxUsers,
12
12
  maxHistory: config.maxHistory,
13
13
  permissions: config.permissions,
14
- metadata: config.metadata || {}
14
+ metadata: config.metadata || {},
15
15
  };
16
16
  const roomState = {
17
17
  room,
18
18
  users: new Map(),
19
19
  eventHistory: [],
20
- locks: new Map()
20
+ locks: new Map(),
21
21
  };
22
22
  this.rooms.set(id, roomState);
23
23
  return room;
@@ -30,7 +30,8 @@ class DefaultRoomManager extends RoomManager_js_1.RoomManager {
30
30
  if (!roomState) {
31
31
  throw new Error(`Room ${roomId} not found`);
32
32
  }
33
- if (roomState.room.maxUsers && roomState.users.size >= roomState.room.maxUsers) {
33
+ if (roomState.room.maxUsers &&
34
+ roomState.users.size >= roomState.room.maxUsers) {
34
35
  throw new Error(`Room ${roomId} is full`);
35
36
  }
36
37
  roomState.users.set(user.id, user);
@@ -68,7 +69,8 @@ class DefaultRoomManager extends RoomManager_js_1.RoomManager {
68
69
  }
69
70
  roomState.eventHistory.push(event);
70
71
  // Trim history if needed
71
- if (roomState.room.maxHistory && roomState.eventHistory.length > roomState.room.maxHistory) {
72
+ if (roomState.room.maxHistory &&
73
+ roomState.eventHistory.length > roomState.room.maxHistory) {
72
74
  roomState.eventHistory = roomState.eventHistory.slice(-roomState.room.maxHistory);
73
75
  }
74
76
  }
@@ -1 +1 @@
1
- {"version":3,"file":"EventEmitter.d.ts","sourceRoot":"","sources":["../../src/abstractions/EventEmitter.ts"],"names":[],"mappings":"AACA,MAAM,MAAM,SAAS,GAAG,OAAO,CAAC;AAEhC,MAAM,MAAM,aAAa,CAAC,CAAC,GAAG,SAAS,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAC7E,MAAM,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC;AAEvC,qBAAa,iBAAiB,CAAC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC;IAEtE,OAAO,CAAC,SAAS,CAA2D;IAC5E,OAAO,CAAC,aAAa,CAA2D;IAEhF,EAAE,CAAC,CAAC,SAAS,MAAM,OAAO,EACxB,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAClC,aAAa;IAShB,IAAI,CAAC,CAAC,SAAS,MAAM,OAAO,EAC1B,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAClC,aAAa;IAShB,GAAG,CAAC,CAAC,SAAS,MAAM,OAAO,EACzB,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAClC,IAAI;IAKD,IAAI,CAAC,CAAC,SAAS,MAAM,OAAO,EAChC,KAAK,EAAE,CAAC,EACR,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,GACf,OAAO,CAAC,IAAI,CAAC;IAmBhB,kBAAkB,CAAC,KAAK,CAAC,EAAE,MAAM,OAAO,GAAG,IAAI;IAU/C,aAAa,CAAC,KAAK,EAAE,MAAM,OAAO,GAAG,MAAM;CAK5C"}
1
+ {"version":3,"file":"EventEmitter.d.ts","sourceRoot":"","sources":["../../src/abstractions/EventEmitter.ts"],"names":[],"mappings":"AACA,MAAM,MAAM,SAAS,GAAG,OAAO,CAAC;AAEhC,MAAM,MAAM,aAAa,CAAC,CAAC,GAAG,SAAS,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAC7E,MAAM,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC;AAEvC,qBAAa,iBAAiB,CAAC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC;IAEvE,OAAO,CAAC,SAAS,CAA2D;IAC5E,OAAO,CAAC,aAAa,CAGjB;IAEJ,EAAE,CAAC,CAAC,SAAS,MAAM,OAAO,EACzB,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GACjC,aAAa;IAShB,IAAI,CAAC,CAAC,SAAS,MAAM,OAAO,EAC3B,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GACjC,aAAa;IAShB,GAAG,CAAC,CAAC,SAAS,MAAM,OAAO,EAC1B,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GACjC,IAAI;IAKD,IAAI,CAAC,CAAC,SAAS,MAAM,OAAO,EACjC,KAAK,EAAE,CAAC,EACR,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,GACd,OAAO,CAAC,IAAI,CAAC;IAmBhB,kBAAkB,CAAC,KAAK,CAAC,EAAE,MAAM,OAAO,GAAG,IAAI;IAU/C,aAAa,CAAC,KAAK,EAAE,MAAM,OAAO,GAAG,MAAM;CAK3C"}
@@ -1,4 +1,4 @@
1
- import type { Lock, LockRequest, LockState } from '../types/index.js';
1
+ import type { Lock, LockRequest, LockState } from "../types/index.js";
2
2
  export declare abstract class LockManager {
3
3
  protected lockState: LockState;
4
4
  abstract acquireLock(userId: string, username: string, request: LockRequest): Promise<Lock>;
@@ -1 +1 @@
1
- {"version":3,"file":"LockManager.d.ts","sourceRoot":"","sources":["../../src/abstractions/LockManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,IAAI,EACJ,WAAW,EACX,SAAS,EACV,MAAM,mBAAmB,CAAC;AAE3B,8BAAsB,WAAW;IAC/B,SAAS,CAAC,SAAS,EAAE,SAAS,CAI5B;IAEF,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAC3F,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IACnD,QAAQ,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IACxD,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IACpD,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IACtD,QAAQ,CAAC,WAAW,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;IACvC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IACjD,QAAQ,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IACtD,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAC/D,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAC1F,QAAQ,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CACtE"}
1
+ {"version":3,"file":"LockManager.d.ts","sourceRoot":"","sources":["../../src/abstractions/LockManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEtE,8BAAsB,WAAW;IAChC,SAAS,CAAC,SAAS,EAAE,SAAS,CAI5B;IAEF,QAAQ,CAAC,WAAW,CACnB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,WAAW,GAClB,OAAO,CAAC,IAAI,CAAC;IAChB,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IACnD,QAAQ,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IACxD,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IACpD,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IACtD,QAAQ,CAAC,WAAW,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;IACvC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IACjD,QAAQ,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IACtD,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAC/D,QAAQ,CAAC,UAAU,CAClB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,WAAW,GAClB,OAAO,CAAC,IAAI,CAAC;IAChB,QAAQ,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CACrE"}
@@ -6,7 +6,7 @@ class LockManager {
6
6
  this.lockState = {
7
7
  locks: new Map(),
8
8
  queue: new Map(),
9
- userLocks: new Map()
9
+ userLocks: new Map(),
10
10
  };
11
11
  }
12
12
  }
@@ -10,7 +10,7 @@
10
10
  * - React to room joins/leaves
11
11
  * - Track application-specific presence state
12
12
  */
13
- import type { UserPresence } from '../types/presence.js';
13
+ import type { UserPresence } from "../types/presence.js";
14
14
  /**
15
15
  * Extension for adding custom presence data and behavior
16
16
  *
@@ -93,7 +93,7 @@ export interface PresenceExtension<TExtendedData = Record<string, unknown>> {
93
93
  * @param deviceId - Device/client identifier
94
94
  * @param activityType - Type of activity
95
95
  */
96
- onActivity?(userId: string, deviceId: string, activityType: 'heartbeat' | 'message' | 'user_action'): Promise<void> | void;
96
+ onActivity?(userId: string, deviceId: string, activityType: "heartbeat" | "message" | "user_action"): Promise<void> | void;
97
97
  /**
98
98
  * Lifecycle: Called when extension is initialized
99
99
  *
@@ -1 +1 @@
1
- {"version":3,"file":"PresenceExtension.d.ts","sourceRoot":"","sources":["../../src/abstractions/PresenceExtension.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEzD;;;;GAIG;AACH,MAAM,WAAW,iBAAiB,CAAC,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACxE;;;;;;OAMG;IACH,YAAY,CAAC,CACX,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAExB;;;;;;;OAOG;IACH,aAAa,CAAC,CACZ,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAExB;;;;;;OAMG;IACH,iBAAiB,CAAC,CAChB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAExB;;;;;OAKG;IACH,oBAAoB,CAAC,CACnB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAExB;;;;;;;;OAQG;IACH,YAAY,CAAC,CACX,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAExB;;;;;;OAMG;IACH,UAAU,CAAC,CACT,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAExB;;;;;;;OAOG;IACH,eAAe,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,aAAa,GAAG,IAAI,CAAC;IAEvF;;;;;;;;OAQG;IACH,eAAe,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;IAE7D;;;;;;OAMG;IACH,UAAU,CAAC,CACT,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,WAAW,GAAG,SAAS,GAAG,aAAa,GACpD,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAExB;;;;OAIG;IACH,UAAU,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAEpC;;;;OAIG;IACH,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CAClC;AAED;;;;GAIG;AACH,MAAM,WAAW,oBAAoB,CAAC,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAC3E,SAAQ,YAAY;IACpB;;OAEG;IACH,QAAQ,CAAC,EAAE,aAAa,CAAC;CAC1B"}
1
+ {"version":3,"file":"PresenceExtension.d.ts","sourceRoot":"","sources":["../../src/abstractions/PresenceExtension.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEzD;;;;GAIG;AACH,MAAM,WAAW,iBAAiB,CAAC,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACzE;;;;;;OAMG;IACH,YAAY,CAAC,CACZ,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAExB;;;;;;;OAOG;IACH,aAAa,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAEvE;;;;;;OAMG;IACH,iBAAiB,CAAC,CACjB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAExB;;;;;OAKG;IACH,oBAAoB,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAE9E;;;;;;;;OAQG;IACH,YAAY,CAAC,CACZ,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAExB;;;;;;OAMG;IACH,UAAU,CAAC,CACV,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAExB;;;;;;;OAOG;IACH,eAAe,CAAC,CACf,MAAM,EAAE,MAAM,GACZ,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,aAAa,GAAG,IAAI,CAAC;IAExD;;;;;;;;OAQG;IACH,eAAe,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;IAE7D;;;;;;OAMG;IACH,UAAU,CAAC,CACV,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,WAAW,GAAG,SAAS,GAAG,aAAa,GACnD,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAExB;;;;OAIG;IACH,UAAU,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAEpC;;;;OAIG;IACH,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CACjC;AAED;;;;GAIG;AACH,MAAM,WAAW,oBAAoB,CAAC,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAC5E,SAAQ,YAAY;IACpB;;OAEG;IACH,QAAQ,CAAC,EAAE,aAAa,CAAC;CACzB"}
@@ -4,7 +4,7 @@
4
4
  * Manages global user presence tracking independent of room membership.
5
5
  * Supports multi-device connections, activity monitoring, and grace periods.
6
6
  */
7
- import type { UserPresence, DeviceInfo, PresenceStatus, PresenceConfig, PresenceChangeEvent, ActivityUpdate } from '../types/presence.js';
7
+ import type { ActivityUpdate, DeviceInfo, PresenceChangeEvent, PresenceConfig, PresenceStatus, UserPresence } from "../types/presence.js";
8
8
  /**
9
9
  * Abstract class for managing user presence
10
10
  *
@@ -1 +1 @@
1
- {"version":3,"file":"PresenceManager.d.ts","sourceRoot":"","sources":["../../src/abstractions/PresenceManager.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,YAAY,EACZ,UAAU,EACV,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,cAAc,EACf,MAAM,sBAAsB,CAAC;AAE9B;;;;;;;;GAQG;AACH,8BAAsB,eAAe;IACnC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC;gBAE/B,MAAM,CAAC,EAAE,cAAc;IAanC;;;;;;;OAOG;IACH,QAAQ,CAAC,aAAa,CACpB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,GAC/B,OAAO,CAAC,YAAY,CAAC;IAExB;;;;;;;;OAQG;IACH,QAAQ,CAAC,gBAAgB,CACvB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAE/B;;;;;;;OAOG;IACH,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC;IAEtE;;;;;OAKG;IACH,QAAQ,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAEtE;;;;;OAKG;IACH,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAEhF;;;;OAIG;IACH,QAAQ,CAAC,cAAc,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAElD;;;;;OAKG;IACH,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAE9D;;;;;;OAMG;IACH,QAAQ,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC;IAErF;;;;;;;;;OASG;IACH,QAAQ,CAAC,iBAAiB,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAE5D;;;;OAIG;IACH,QAAQ,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAE/B;;OAEG;IACH,SAAS,IAAI,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IAI/C;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB;;;;;;;;OAQG;IACH,SAAS,CAAC,uBAAuB,CAC/B,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,EAChC,GAAG,GAAE,MAAmB,GACvB,cAAc;IAmBjB;;;;;;OAMG;IACH,SAAS,CAAC,sBAAsB,CAC9B,MAAM,EAAE,UAAU,EAClB,GAAG,GAAE,MAAmB,GACvB,OAAO;CAIX"}
1
+ {"version":3,"file":"PresenceManager.d.ts","sourceRoot":"","sources":["../../src/abstractions/PresenceManager.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACX,cAAc,EACd,UAAU,EACV,mBAAmB,EACnB,cAAc,EACd,cAAc,EACd,YAAY,EACZ,MAAM,sBAAsB,CAAC;AAE9B;;;;;;;;GAQG;AACH,8BAAsB,eAAe;IACpC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC;gBAE/B,MAAM,CAAC,EAAE,cAAc;IAanC;;;;;;;OAOG;IACH,QAAQ,CAAC,aAAa,CACrB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,GAC9B,OAAO,CAAC,YAAY,CAAC;IAExB;;;;;;;;OAQG;IACH,QAAQ,CAAC,gBAAgB,CACxB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACd,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAE/B;;;;;;;OAOG;IACH,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC;IAEtE;;;;;OAKG;IACH,QAAQ,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAEtE;;;;;OAKG;IACH,QAAQ,CAAC,gBAAgB,CACxB,OAAO,EAAE,MAAM,EAAE,GACf,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAErC;;;;OAIG;IACH,QAAQ,CAAC,cAAc,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAElD;;;;;OAKG;IACH,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAE9D;;;;;;OAMG;IACH,QAAQ,CAAC,aAAa,CACrB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,cAAc,GACpB,OAAO,CAAC,YAAY,CAAC;IAExB;;;;;;;;;OASG;IACH,QAAQ,CAAC,iBAAiB,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;IAE5D;;;;OAIG;IACH,QAAQ,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAE/B;;OAEG;IACH,SAAS,IAAI,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IAI/C;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB;;;;;;;;OAQG;IACH,SAAS,CAAC,uBAAuB,CAChC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,EAChC,GAAG,GAAE,MAAmB,GACtB,cAAc;IAoBjB;;;;;;OAMG;IACH,SAAS,CAAC,sBAAsB,CAC/B,MAAM,EAAE,UAAU,EAClB,GAAG,GAAE,MAAmB,GACtB,OAAO;CAKV"}
@@ -26,7 +26,7 @@ class PresenceManager {
26
26
  disconnectThreshold: config?.disconnectThreshold ?? 3,
27
27
  gracePeriod: config?.gracePeriod ?? 30000,
28
28
  trackDeviceActivity: config?.trackDeviceActivity ?? true,
29
- broadcastPresenceUpdates: config?.broadcastPresenceUpdates ?? true
29
+ broadcastPresenceUpdates: config?.broadcastPresenceUpdates ?? true,
30
30
  };
31
31
  }
32
32
  /**
@@ -52,18 +52,18 @@ class PresenceManager {
52
52
  */
53
53
  calculatePresenceStatus(devices, now = Date.now()) {
54
54
  if (devices.size === 0) {
55
- return 'offline';
55
+ return "offline";
56
56
  }
57
57
  const heartbeatTimeout = this.config.heartbeatInterval * this.config.awayThreshold;
58
58
  // Check if ANY device is active (within heartbeat threshold)
59
59
  for (const device of devices.values()) {
60
60
  const timeSinceActivity = now - device.lastActivity;
61
61
  if (timeSinceActivity < heartbeatTimeout) {
62
- return 'online';
62
+ return "online";
63
63
  }
64
64
  }
65
65
  // All devices are idle
66
- return 'away';
66
+ return "away";
67
67
  }
68
68
  /**
69
69
  * Check if a device should be disconnected due to missed heartbeats
@@ -74,7 +74,7 @@ class PresenceManager {
74
74
  */
75
75
  shouldDisconnectDevice(device, now = Date.now()) {
76
76
  const timeout = this.config.heartbeatInterval * this.config.disconnectThreshold;
77
- return (now - device.lastActivity) > timeout;
77
+ return now - device.lastActivity > timeout;
78
78
  }
79
79
  }
80
80
  exports.PresenceManager = PresenceManager;
@@ -1,4 +1,4 @@
1
- import type { Room, RoomUser, RoomState, RoomConfig, Event } from '../types/index.js';
1
+ import type { Event, Room, RoomConfig, RoomState, RoomUser } from "../types/index.js";
2
2
  export declare abstract class RoomManager {
3
3
  protected rooms: Map<string, RoomState>;
4
4
  abstract createRoom(id: string, config: RoomConfig): Promise<Room>;
@@ -10,6 +10,6 @@ export declare abstract class RoomManager {
10
10
  abstract getUsersInRoom(roomId: string): Promise<RoomUser[]>;
11
11
  abstract addEventToHistory(roomId: string, event: Event): Promise<void>;
12
12
  abstract getEventHistory(roomId: string, limit?: number): Promise<Event[]>;
13
- abstract updateUserStatus(roomId: string, userId: string, status: RoomUser['status']): Promise<void>;
13
+ abstract updateUserStatus(roomId: string, userId: string, status: RoomUser["status"]): Promise<void>;
14
14
  }
15
15
  //# sourceMappingURL=RoomManager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RoomManager.d.ts","sourceRoot":"","sources":["../../src/abstractions/RoomManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,UAAU,EACV,KAAK,EACN,MAAM,mBAAmB,CAAC;AAE3B,8BAAsB,WAAW;IAC/B,SAAS,CAAC,KAAK,yBAAgC;IAE/C,QAAQ,CAAC,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAClE,QAAQ,CAAC,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAC9C,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAChE,QAAQ,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IACjE,QAAQ,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAC7F,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAChE,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC5D,QAAQ,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IACvE,QAAQ,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAC1E,QAAQ,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CACrG"}
1
+ {"version":3,"file":"RoomManager.d.ts","sourceRoot":"","sources":["../../src/abstractions/RoomManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,KAAK,EACL,IAAI,EACJ,UAAU,EACV,SAAS,EACT,QAAQ,EACR,MAAM,mBAAmB,CAAC;AAE3B,8BAAsB,WAAW;IAChC,SAAS,CAAC,KAAK,yBAAgC;IAE/C,QAAQ,CAAC,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAClE,QAAQ,CAAC,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAC9C,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAChE,QAAQ,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IACjE,QAAQ,CAAC,eAAe,CACvB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK,EACZ,aAAa,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,IAAI,CAAC;IAChB,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAChE,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC5D,QAAQ,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IACvE,QAAQ,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAC1E,QAAQ,CAAC,gBAAgB,CACxB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,GACxB,OAAO,CAAC,IAAI,CAAC;CAChB"}
@@ -1,16 +1,16 @@
1
1
  export type StorageOperation = {
2
- type: 'get';
2
+ type: "get";
3
3
  key: string;
4
4
  } | {
5
- type: 'set';
5
+ type: "set";
6
6
  key: string;
7
7
  value: unknown;
8
8
  ttl?: number;
9
9
  } | {
10
- type: 'delete';
10
+ type: "delete";
11
11
  key: string;
12
12
  } | {
13
- type: 'exists';
13
+ type: "exists";
14
14
  key: string;
15
15
  };
16
16
  export interface IStorageAdapter {
@@ -1 +1 @@
1
- {"version":3,"file":"StorageAdapter.d.ts","sourceRoot":"","sources":["../../src/abstractions/StorageAdapter.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GACxB;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAC5B;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,GAC1D;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAC/B;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAEpC,MAAM,WAAW,eAAe;IAC9B,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IACvC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3D,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACtC,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACzC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,WAAW,CAAC,CAAC,EAAE,UAAU,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CAC5D"}
1
+ {"version":3,"file":"StorageAdapter.d.ts","sourceRoot":"","sources":["../../src/abstractions/StorageAdapter.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GACzB;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAC5B;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,GAC1D;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAC/B;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnC,MAAM,WAAW,eAAe;IAC/B,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IACvC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3D,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACtC,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACzC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,WAAW,CAAC,CAAC,EAAE,UAAU,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CAC3D"}
@@ -1,7 +1,7 @@
1
- import type { ConnectionState, ConnectionOptions, Message, MessageHandler, ErrorHandler, CloseHandler } from '../types/index.js';
2
- import type { Server as HttpServer } from 'http';
3
- import type { Server as HttpsServer } from 'https';
4
- 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 { CloseHandler, ConnectionOptions, ConnectionState, ErrorHandler, Message, MessageHandler } from "../types/index.js";
5
5
  export interface ITransportAdapter {
6
6
  connect(url: string, options?: ConnectionOptions): Promise<void>;
7
7
  disconnect(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"TransportAdapter.d.ts","sourceRoot":"","sources":["../../src/abstractions/TransportAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,iBAAiB,EACjB,OAAO,EACP,cAAc,EACd,YAAY,EACZ,YAAY,EACb,MAAM,mBAAmB,CAAC;AAC3B,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,MAAM,WAAW,iBAAiB;IAEhC,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjE,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,IAAI,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,SAAS,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAAC;IACzC,OAAO,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI,CAAC;IACrC,OAAO,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI,CAAC;IACrC,QAAQ,IAAI,eAAe,CAAC;IAC5B,WAAW,IAAI,OAAO,CAAC;IAGvB,MAAM,CAAC,CAAC,MAAM,EAAE,UAAU,GAAG,WAAW,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxE,uBAAuB,CAAC,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/D"}
1
+ {"version":3,"file":"TransportAdapter.d.ts","sourceRoot":"","sources":["../../src/abstractions/TransportAdapter.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,EACX,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,YAAY,EACZ,OAAO,EACP,cAAc,EACd,MAAM,mBAAmB,CAAC;AAE3B,MAAM,WAAW,iBAAiB;IAEjC,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjE,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,IAAI,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,SAAS,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAAC;IACzC,OAAO,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI,CAAC;IACrC,OAAO,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI,CAAC;IACrC,QAAQ,IAAI,eAAe,CAAC;IAC5B,WAAW,IAAI,OAAO,CAAC;IAGvB,MAAM,CAAC,CAAC,MAAM,EAAE,UAAU,GAAG,WAAW,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxE,uBAAuB,CAAC,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9D"}
@@ -1,12 +1,12 @@
1
- export { ITransportAdapter } from './TransportAdapter.js';
2
- export { IStorageAdapter, StorageOperation } from './StorageAdapter.js';
3
- export { IAuthAdapter } from './AuthAdapter.js';
4
- export { TypedEventEmitter, EventListener, UnsubscribeFn } from './EventEmitter.js';
5
- export { RoomManager } from './RoomManager.js';
6
- export { LockManager } from './LockManager.js';
7
- export { DefaultRoomManager } from './DefaultRoomManager.js';
8
- export { DefaultLockManager } from './DefaultLockManager.js';
9
- export { PresenceManager } from './PresenceManager.js';
10
- export { DefaultPresenceManager } from './DefaultPresenceManager.js';
11
- export { type PresenceExtension, type ExtendedUserPresence } from './PresenceExtension.js';
1
+ export { IAuthAdapter } from "./AuthAdapter.js";
2
+ export { DefaultLockManager } from "./DefaultLockManager.js";
3
+ export { DefaultPresenceManager } from "./DefaultPresenceManager.js";
4
+ export { DefaultRoomManager } from "./DefaultRoomManager.js";
5
+ export { EventListener, TypedEventEmitter, UnsubscribeFn, } from "./EventEmitter.js";
6
+ export { LockManager } from "./LockManager.js";
7
+ export { type ExtendedUserPresence, type PresenceExtension, } from "./PresenceExtension.js";
8
+ export { PresenceManager } from "./PresenceManager.js";
9
+ export { RoomManager } from "./RoomManager.js";
10
+ export { IStorageAdapter, StorageOperation } from "./StorageAdapter.js";
11
+ export { ITransportAdapter } from "./TransportAdapter.js";
12
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/abstractions/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACpF,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EAC1B,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/abstractions/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EACN,aAAa,EACb,iBAAiB,EACjB,aAAa,GACb,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EACN,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,GACtB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -1,17 +1,17 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DefaultPresenceManager = exports.PresenceManager = exports.DefaultLockManager = exports.DefaultRoomManager = exports.LockManager = exports.RoomManager = exports.TypedEventEmitter = void 0;
3
+ exports.RoomManager = exports.PresenceManager = exports.LockManager = exports.TypedEventEmitter = exports.DefaultRoomManager = exports.DefaultPresenceManager = exports.DefaultLockManager = void 0;
4
+ var DefaultLockManager_js_1 = require("./DefaultLockManager.js");
5
+ Object.defineProperty(exports, "DefaultLockManager", { enumerable: true, get: function () { return DefaultLockManager_js_1.DefaultLockManager; } });
6
+ var DefaultPresenceManager_js_1 = require("./DefaultPresenceManager.js");
7
+ Object.defineProperty(exports, "DefaultPresenceManager", { enumerable: true, get: function () { return DefaultPresenceManager_js_1.DefaultPresenceManager; } });
8
+ var DefaultRoomManager_js_1 = require("./DefaultRoomManager.js");
9
+ Object.defineProperty(exports, "DefaultRoomManager", { enumerable: true, get: function () { return DefaultRoomManager_js_1.DefaultRoomManager; } });
4
10
  var EventEmitter_js_1 = require("./EventEmitter.js");
5
11
  Object.defineProperty(exports, "TypedEventEmitter", { enumerable: true, get: function () { return EventEmitter_js_1.TypedEventEmitter; } });
6
- var RoomManager_js_1 = require("./RoomManager.js");
7
- Object.defineProperty(exports, "RoomManager", { enumerable: true, get: function () { return RoomManager_js_1.RoomManager; } });
8
12
  var LockManager_js_1 = require("./LockManager.js");
9
13
  Object.defineProperty(exports, "LockManager", { enumerable: true, get: function () { return LockManager_js_1.LockManager; } });
10
- var DefaultRoomManager_js_1 = require("./DefaultRoomManager.js");
11
- Object.defineProperty(exports, "DefaultRoomManager", { enumerable: true, get: function () { return DefaultRoomManager_js_1.DefaultRoomManager; } });
12
- var DefaultLockManager_js_1 = require("./DefaultLockManager.js");
13
- Object.defineProperty(exports, "DefaultLockManager", { enumerable: true, get: function () { return DefaultLockManager_js_1.DefaultLockManager; } });
14
14
  var PresenceManager_js_1 = require("./PresenceManager.js");
15
15
  Object.defineProperty(exports, "PresenceManager", { enumerable: true, get: function () { return PresenceManager_js_1.PresenceManager; } });
16
- var DefaultPresenceManager_js_1 = require("./DefaultPresenceManager.js");
17
- Object.defineProperty(exports, "DefaultPresenceManager", { enumerable: true, get: function () { return DefaultPresenceManager_js_1.DefaultPresenceManager; } });
16
+ var RoomManager_js_1 = require("./RoomManager.js");
17
+ Object.defineProperty(exports, "RoomManager", { enumerable: true, get: function () { return RoomManager_js_1.RoomManager; } });