@rool-dev/sdk 0.6.0-dev.4595e79 → 0.6.0-dev.730eea7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/client.js CHANGED
@@ -4,16 +4,16 @@
4
4
  import { EventEmitter } from './event-emitter.js';
5
5
  import { AuthManager } from './auth.js';
6
6
  import { GraphQLClient } from './graphql.js';
7
- import { ClientSubscriptionManager, SpaceSubscriptionManager } from './subscription.js';
7
+ import { ClientSubscriptionManager } from './subscription.js';
8
8
  import { MediaClient } from './media.js';
9
9
  import { ExtensionsClient } from './apps.js';
10
- import { RoolChannel, generateEntityId } from './channel.js';
10
+ import { generateEntityId } from './channel.js';
11
11
  import { RoolSpace } from './space.js';
12
12
  import { defaultLogger } from './logger.js';
13
13
  /**
14
14
  * Rool Client - Manages authentication, space lifecycle, and shared infrastructure.
15
15
  *
16
- * The client is lightweight - most operations happen on RoolChannel instances.
16
+ * The client is lightweight - most operations happen on RoolSpace and RoolChannel instances.
17
17
  *
18
18
  * Features:
19
19
  * - Authentication (login, logout, token management)
@@ -29,12 +29,8 @@ export class RoolClient extends EventEmitter {
29
29
  graphqlClient;
30
30
  subscriptionManager = null;
31
31
  logger;
32
- // Registry of open channels (for cleanup on logout/destroy)
33
- openChannels = new Map();
34
- // Shared space subscriptions: one SSE connection per space, shared by all channels
35
- spaceSubscriptions = new Map();
36
- // Cached space data: avoids redundant openSpaceFull calls when opening multiple channels
37
- spaceDataCache = new Map();
32
+ // Open spaces (cached for reuse by openChannel)
33
+ openSpaces = new Map();
38
34
  // User storage cache (synced to localStorage)
39
35
  _storageCache = {};
40
36
  // Current user (fetched during initialize)
@@ -113,16 +109,10 @@ export class RoolClient extends EventEmitter {
113
109
  destroy() {
114
110
  this.authManager.destroy();
115
111
  this.subscriptionManager?.destroy();
116
- // Close all open channels snapshot first to avoid mutating during iteration
117
- const channels = [...this.openChannels.values()];
118
- for (const channel of channels)
119
- channel.close();
120
- this.openChannels.clear();
121
- // Clean up space subscriptions
122
- for (const sub of this.spaceSubscriptions.values())
123
- sub.manager.destroy();
124
- this.spaceSubscriptions.clear();
125
- this.spaceDataCache.clear();
112
+ // Close all open spaces (which close their channels and subscriptions)
113
+ for (const space of this.openSpaces.values())
114
+ space.close();
115
+ this.openSpaces.clear();
126
116
  this.removeAllListeners();
127
117
  }
128
118
  // ===========================================================================
@@ -158,22 +148,26 @@ export class RoolClient extends EventEmitter {
158
148
  }
159
149
  return ok;
160
150
  }
151
+ /**
152
+ * Set or change the current user's password. Requires an authenticated session.
153
+ * Password must be at least 8 characters and contain both letters and either
154
+ * digits or symbols.
155
+ *
156
+ * Throws an Error with a human-readable message on validation or server failure.
157
+ */
158
+ async setPassword(password) {
159
+ return this.authManager.setPassword(password);
160
+ }
161
161
  /**
162
162
  * Logout - clear all tokens and state.
163
163
  */
164
164
  logout() {
165
165
  this.authManager.logout();
166
166
  this.unsubscribe();
167
- // Close all open channels snapshot first to avoid mutating during iteration
168
- const channels = [...this.openChannels.values()];
169
- for (const channel of channels)
170
- channel.close();
171
- this.openChannels.clear();
172
- // Clean up space subscriptions
173
- for (const sub of this.spaceSubscriptions.values())
174
- sub.manager.destroy();
175
- this.spaceSubscriptions.clear();
176
- this.spaceDataCache.clear();
167
+ // Close all open spaces (which close their channels and subscriptions)
168
+ for (const space of this.openSpaces.values())
169
+ space.close();
170
+ this.openSpaces.clear();
177
171
  }
178
172
  /**
179
173
  * Process auth callback from URL fragment.
@@ -229,99 +223,70 @@ export class RoolClient extends EventEmitter {
229
223
  }
230
224
  /**
231
225
  * Open a channel on a space.
232
- * Fetches full space data, ensures the channel exists, and starts the
233
- * shared space subscription if not already active.
226
+ * Convenience method that opens (or reuses) the space, then opens the channel.
234
227
  *
235
228
  * @param spaceId - The ID of the space
236
229
  * @param channelId - The channel ID (created if it doesn't exist)
237
230
  */
238
231
  async openChannel(spaceId, channelId) {
239
- if (!channelId || channelId.length > 32 || !/^[a-zA-Z0-9_-]+$/.test(channelId)) {
240
- throw new Error('channelId must be 1–32 characters containing only alphanumeric characters, hyphens, and underscores');
241
- }
242
232
  // Ensure client subscription is active (for lifecycle events)
243
233
  void this.ensureSubscribed();
244
- // Fetch full space data (cached per space to avoid redundant fetches)
245
- const result = await this.getSpaceData(spaceId);
246
- // Ensure channel exists — create if missing
247
- let channelData = result.channels[channelId];
248
- if (!channelData) {
249
- try {
250
- channelData = await this.graphqlClient.createChannel(spaceId, channelId);
251
- }
252
- catch {
253
- // Race: another client may have created it. Re-fetch.
254
- this.spaceDataCache.delete(spaceId);
255
- const refreshed = await this.getSpaceData(spaceId);
256
- channelData = refreshed.channels[channelId];
257
- if (!channelData)
258
- throw new Error(`Failed to create channel "${channelId}"`);
259
- }
260
- }
261
- const channel = new RoolChannel({
262
- id: spaceId,
263
- name: result.name,
264
- role: result.role,
265
- linkAccess: result.linkAccess,
266
- userId: result.userId,
267
- objectIds: result.objectIds,
268
- objectStats: result.objectStats,
269
- schema: result.schema,
270
- meta: result.meta,
271
- channel: channelData,
272
- channelId,
273
- graphqlClient: this.graphqlClient,
274
- mediaClient: this.mediaClient,
275
- logger: this.logger,
276
- onClose: () => this.unregisterChannel(spaceId, channelId),
277
- });
278
- // Register for cleanup (before awaiting subscription so close() works if it fails)
279
- this.registerChannel(spaceId, channelId, channel);
280
- // Ensure shared space subscription is active
281
- await this.ensureSpaceSubscription(spaceId);
282
- return channel;
234
+ const space = await this.openSpace(spaceId);
235
+ return space.openChannel(channelId);
283
236
  }
284
237
  /**
285
- * Open a space for admin operations.
286
- * Returns a lightweight handle for user management, link access,
287
- * channel management, and export. Does not start a real-time subscription.
238
+ * Open a space with a real-time subscription.
239
+ * Returns a live RoolSpace handle with channel lifecycle events.
240
+ * Reuses an existing handle if the space is already open.
288
241
  *
289
- * To work with objects and AI, call space.openChannel(channelId).
242
+ * Call space.close() when done to stop the subscription.
290
243
  */
291
244
  async openSpace(spaceId) {
292
- const { name, role, linkAccess, memberCount, channels } = await this.graphqlClient.openSpace(spaceId);
293
- return new RoolSpace({
245
+ // Reuse existing open space
246
+ const existing = this.openSpaces.get(spaceId);
247
+ if (existing)
248
+ return existing;
249
+ // Ensure client subscription is active (for lifecycle events)
250
+ void this.ensureSubscribed();
251
+ const fullData = await this.graphqlClient.openSpaceFull(spaceId);
252
+ const space = new RoolSpace({
294
253
  id: spaceId,
295
- name,
296
- role: role,
297
- linkAccess,
298
- memberCount,
299
- channels,
254
+ name: fullData.name,
255
+ role: fullData.role,
256
+ userId: fullData.userId,
257
+ linkAccess: fullData.linkAccess,
258
+ memberCount: fullData.memberCount,
259
+ fullData,
300
260
  graphqlClient: this.graphqlClient,
301
261
  mediaClient: this.mediaClient,
302
- openChannelFn: (sid, cid) => this.openChannel(sid, cid),
262
+ authManager: this.authManager,
263
+ graphqlUrl: this.urls.graphql,
264
+ logger: this.logger,
265
+ onClose: () => this.openSpaces.delete(spaceId),
266
+ });
267
+ this.openSpaces.set(spaceId, space);
268
+ // Forward space channel events to client-level events (backwards compat)
269
+ space.on('channelCreated', (channel) => {
270
+ this.emit('channelCreated', spaceId, channel);
271
+ });
272
+ space.on('channelUpdated', (channel) => {
273
+ this.emit('channelUpdated', spaceId, channel);
303
274
  });
275
+ space.on('channelDeleted', (channelId) => {
276
+ this.emit('channelDeleted', spaceId, channelId);
277
+ });
278
+ return space;
304
279
  }
305
280
  /**
306
281
  * Create a new space.
307
- * Returns a RoolSpace handle for admin operations.
282
+ * Returns a RoolSpace handle with a real-time subscription.
308
283
  * Call space.openChannel(channelId) to start working with objects.
309
284
  */
310
285
  async createSpace(name) {
311
286
  // Ensure client subscription is active (for lifecycle events)
312
287
  void this.ensureSubscribed();
313
288
  const { spaceId } = await this.graphqlClient.createSpace(name);
314
- return new RoolSpace({
315
- id: spaceId,
316
- name,
317
- role: 'owner',
318
- linkAccess: 'none',
319
- memberCount: 1,
320
- channels: [],
321
- graphqlClient: this.graphqlClient,
322
- mediaClient: this.mediaClient,
323
- openChannelFn: (sid, cid) => this.openChannel(sid, cid),
324
- });
289
+ return this.openSpace(spaceId);
325
290
  }
326
291
  /**
327
292
  * Rename a channel in a space.
@@ -343,6 +308,12 @@ export class RoolClient extends EventEmitter {
343
308
  */
344
309
  async deleteSpace(spaceId) {
345
310
  await this.graphqlClient.deleteSpace(spaceId);
311
+ // Close and remove the cached space if open
312
+ const space = this.openSpaces.get(spaceId);
313
+ if (space) {
314
+ space.close();
315
+ this.openSpaces.delete(spaceId);
316
+ }
346
317
  // Client-level event will be emitted via SSE subscription
347
318
  }
348
319
  /**
@@ -504,7 +475,6 @@ export class RoolClient extends EventEmitter {
504
475
  /**
505
476
  * Ensure the client-level event subscription is active.
506
477
  * Called automatically when opening spaces.
507
- * Also fetches and caches the current user ID.
508
478
  * @internal
509
479
  */
510
480
  async ensureSubscribed() {
@@ -553,125 +523,12 @@ export class RoolClient extends EventEmitter {
553
523
  return this.graphqlClient.query(query, variables);
554
524
  }
555
525
  // ===========================================================================
556
- // Private Methods - Channel Registry
557
- // ===========================================================================
558
- registerChannel(spaceId, channelId, channel) {
559
- this.openChannels.set(`${spaceId}:${channelId}`, channel);
560
- }
561
- unregisterChannel(spaceId, channelId) {
562
- this.openChannels.delete(`${spaceId}:${channelId}`);
563
- // Tear down space subscription if no more channels on this space
564
- const hasChannelsOnSpace = [...this.openChannels.keys()].some(key => key.startsWith(`${spaceId}:`));
565
- if (!hasChannelsOnSpace) {
566
- const sub = this.spaceSubscriptions.get(spaceId);
567
- if (sub) {
568
- sub.manager.destroy();
569
- this.spaceSubscriptions.delete(spaceId);
570
- }
571
- }
572
- }
573
- // ===========================================================================
574
- // Private Methods - Space Subscriptions
575
- // ===========================================================================
576
- /**
577
- * Get space data, using a short-lived cache so concurrent openChannel calls
578
- * for the same space share one fetch.
579
- */
580
- getSpaceData(spaceId) {
581
- const cached = this.spaceDataCache.get(spaceId);
582
- if (cached)
583
- return cached;
584
- const promise = this.graphqlClient.openSpaceFull(spaceId).finally(() => {
585
- // Clear cache once resolved — data is now in the channels and kept current via SSE
586
- this.spaceDataCache.delete(spaceId);
587
- });
588
- this.spaceDataCache.set(spaceId, promise);
589
- return promise;
590
- }
591
- /**
592
- * Ensure a shared space subscription exists for the given spaceId.
593
- * Creates one if it doesn't exist yet. Returns when connected.
594
- */
595
- ensureSpaceSubscription(spaceId) {
596
- const existing = this.spaceSubscriptions.get(spaceId);
597
- if (existing)
598
- return existing.ready;
599
- const manager = new SpaceSubscriptionManager({
600
- graphqlUrl: this.urls.graphql,
601
- authManager: this.authManager,
602
- logger: this.logger,
603
- spaceId,
604
- onEvent: (event) => this.routeSpaceEvent(spaceId, event),
605
- onConnectionStateChanged: () => { },
606
- onError: (error) => {
607
- this.logger.error(`[RoolClient] Space ${spaceId} subscription error:`, error);
608
- },
609
- });
610
- const ready = manager.subscribe();
611
- this.spaceSubscriptions.set(spaceId, { manager, ready });
612
- return ready;
613
- }
614
- /**
615
- * Route a space event to the appropriate channel(s).
616
- * Space-wide events go to all channels on the space.
617
- * Channel-specific events go only to the matching channel.
618
- * The `connected` event triggers a single resync for the whole space.
619
- */
620
- routeSpaceEvent(spaceId, event) {
621
- // Reconnect or full state change: single fetch, distribute to all channels
622
- if (event.type === 'connected' || event.type === 'space_changed') {
623
- this.handleSpaceResync(spaceId);
624
- return;
625
- }
626
- // Channel-specific events: route to the matching channel only
627
- if ('channelId' in event && event.channelId) {
628
- const channel = this.openChannels.get(`${spaceId}:${event.channelId}`);
629
- if (channel)
630
- channel._handleEvent(event);
631
- return;
632
- }
633
- // Space-wide events (objects, schema, metadata, space_changed):
634
- // broadcast to all channels on this space
635
- for (const [key, channel] of this.openChannels) {
636
- if (key.startsWith(`${spaceId}:`)) {
637
- channel._handleEvent(event);
638
- }
639
- }
640
- }
641
- /**
642
- * Handle reconnection for a space: fetch full state once, distribute to all channels.
643
- */
644
- handleSpaceResync(spaceId) {
645
- // Collect channels on this space
646
- const channels = [];
647
- for (const [key, channel] of this.openChannels) {
648
- if (key.startsWith(`${spaceId}:`))
649
- channels.push(channel);
650
- }
651
- if (channels.length === 0)
652
- return;
653
- this.logger.info(`[RoolClient] Space ${spaceId} reconnected, resyncing ${channels.length} channel(s)...`);
654
- void this.graphqlClient.openSpaceFull(spaceId).then((result) => {
655
- for (const channel of channels) {
656
- const channelData = result.channels[channel.channelId];
657
- channel._applyResyncData({
658
- meta: result.meta,
659
- schema: result.schema,
660
- objectIds: result.objectIds,
661
- objectStats: result.objectStats,
662
- channel: channelData,
663
- });
664
- }
665
- this.logger.info(`[RoolClient] Space ${spaceId} resync complete (${result.objectIds.length} objects)`);
666
- }).catch((error) => {
667
- this.logger.error(`[RoolClient] Space ${spaceId} resync failed:`, error);
668
- });
669
- }
670
- // ===========================================================================
671
526
  // Private Methods - Event Handling
672
527
  // ===========================================================================
673
528
  /**
674
529
  * Handle a client-level event from the subscription.
530
+ * Channel events from the client SSE are ignored — they're handled by
531
+ * the space subscription via RoolSpace instead.
675
532
  * @internal
676
533
  */
677
534
  handleClientEvent(event) {
@@ -716,24 +573,10 @@ export class RoolClient extends EventEmitter {
716
573
  case 'user_storage_changed':
717
574
  this.handleUserStorageChanged(event.key, event.value);
718
575
  break;
576
+ // Channel events from client SSE are ignored — handled by RoolSpace
719
577
  case 'channel_created':
720
- this.emit('channelCreated', event.spaceId, {
721
- id: event.channelId,
722
- name: event.name ?? null,
723
- createdAt: event.channelCreatedAt ?? Date.now(),
724
- createdBy: event.channelCreatedBy ?? '',
725
- createdByName: event.channelCreatedByName ?? null,
726
- interactionCount: 0,
727
- extensionUrl: event.channelExtensionUrl ?? null,
728
- extensionId: event.channelExtensionId ?? null,
729
- manifest: event.channelManifest ?? null,
730
- });
731
- break;
732
578
  case 'channel_renamed':
733
- this.emit('channelRenamed', event.spaceId, event.channelId, event.name);
734
- break;
735
579
  case 'channel_deleted':
736
- this.emit('channelDeleted', event.spaceId, event.channelId);
737
580
  break;
738
581
  }
739
582
  }
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -3,5 +3,5 @@ export { RoolChannel, ConversationHandle, generateEntityId } from './channel.js'
3
3
  export { RoolSpace } from './space.js';
4
4
  export { EventEmitter } from './event-emitter.js';
5
5
  export type { Logger } from './logger.js';
6
- export type { RoolObject, RoolObjectStat, RoolSpaceInfo, ClientEvent, ClientEventType, ChannelEvent, ChannelEventType, RoolEventSource, SpaceMember, RoolUserRole, LinkAccess, UserResult, CurrentUser, AuthUser, MediaInfo, MediaResponse, UploadExtensionOptions, ExtensionInfo, PublishedExtensionInfo, ExtensionManifest, FindExtensionsOptions, FieldType, FieldDef, CollectionDef, SpaceSchema, PromptOptions, FindObjectsOptions, CreateObjectOptions, UpdateObjectOptions, ConnectionState, ChangeSource, ChannelEvents, ObjectCreatedEvent, ObjectUpdatedEvent, ObjectDeletedEvent, MetadataUpdatedEvent, SchemaUpdatedEvent, ChannelUpdatedEvent, ConversationUpdatedEvent, ResetEvent, Channel, ChannelInfo, Conversation, ConversationInfo, Interaction, InteractionStatus, RoolClientConfig, RoolClientEvents, AuthTokens, AuthProvider, } from './types.js';
6
+ export type { RoolObject, RoolObjectStat, RoolSpaceInfo, ClientEvent, ClientEventType, ChannelEvent, ChannelEventType, RoolEventSource, SpaceMember, RoolUserRole, LinkAccess, UserResult, CurrentUser, AuthUser, MediaInfo, MediaResponse, UploadExtensionOptions, ExtensionInfo, PublishedExtensionInfo, ExtensionManifest, FindExtensionsOptions, FieldType, FieldDef, CollectionDef, SpaceSchema, PromptOptions, FindObjectsOptions, CreateObjectOptions, UpdateObjectOptions, ConnectionState, ChangeSource, ChannelEvents, ObjectCreatedEvent, ObjectUpdatedEvent, ObjectDeletedEvent, MetadataUpdatedEvent, SchemaUpdatedEvent, ChannelUpdatedEvent, ConversationUpdatedEvent, ResetEvent, Channel, ChannelInfo, Conversation, ConversationInfo, Interaction, InteractionStatus, RoolClientConfig, RoolClientEvents, RoolSpaceEvents, AuthTokens, AuthProvider, } from './types.js';
7
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAGjF,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAGvC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD,YAAY,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAG1C,YAAY,EAEV,UAAU,EACV,cAAc,EACd,aAAa,EAGb,WAAW,EACX,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,eAAe,EAGf,WAAW,EACX,YAAY,EACZ,UAAU,EAEV,UAAU,EACV,WAAW,EACX,QAAQ,EAGR,SAAS,EACT,aAAa,EAGb,sBAAsB,EACtB,aAAa,EACb,sBAAsB,EACtB,iBAAiB,EACjB,qBAAqB,EAGrB,SAAS,EACT,QAAQ,EACR,aAAa,EACb,WAAW,EAGX,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EAGnB,eAAe,EAGf,YAAY,EACZ,aAAa,EACb,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,wBAAwB,EACxB,UAAU,EAGV,OAAO,EACP,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACX,iBAAiB,EAGjB,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,EACV,YAAY,GACb,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAGjF,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAGvC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD,YAAY,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAG1C,YAAY,EAEV,UAAU,EACV,cAAc,EACd,aAAa,EAGb,WAAW,EACX,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,eAAe,EAGf,WAAW,EACX,YAAY,EACZ,UAAU,EAEV,UAAU,EACV,WAAW,EACX,QAAQ,EAGR,SAAS,EACT,aAAa,EAGb,sBAAsB,EACtB,aAAa,EACb,sBAAsB,EACtB,iBAAiB,EACjB,qBAAqB,EAGrB,SAAS,EACT,QAAQ,EACR,aAAa,EACb,WAAW,EAGX,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EAGnB,eAAe,EAGf,YAAY,EACZ,aAAa,EACb,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,wBAAwB,EACxB,UAAU,EAGV,OAAO,EACP,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACX,iBAAiB,EAGjB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,UAAU,EACV,YAAY,GACb,MAAM,YAAY,CAAC"}
package/dist/space.d.ts CHANGED
@@ -1,49 +1,79 @@
1
- import type { GraphQLClient } from './graphql.js';
1
+ import { EventEmitter } from './event-emitter.js';
2
+ import type { GraphQLClient, OpenSpaceFullResult } from './graphql.js';
2
3
  import type { MediaClient } from './media.js';
3
- import type { RoolChannel } from './channel.js';
4
- import type { RoolUserRole, LinkAccess, SpaceMember, ChannelInfo } from './types.js';
4
+ import { RoolChannel } from './channel.js';
5
+ import type { AuthManager } from './auth.js';
6
+ import type { Logger } from './logger.js';
7
+ import type { RoolUserRole, LinkAccess, SpaceMember, ChannelInfo, RoolSpaceEvents } from './types.js';
5
8
  export interface SpaceConfig {
6
9
  id: string;
7
10
  name: string;
8
11
  role: RoolUserRole;
12
+ userId: string;
9
13
  linkAccess: LinkAccess;
10
14
  memberCount: number;
11
- channels: ChannelInfo[];
15
+ /** Full space data from openSpaceFull */
16
+ fullData: OpenSpaceFullResult;
12
17
  graphqlClient: GraphQLClient;
13
18
  mediaClient: MediaClient;
14
- /** Callback to open a channel via the client */
15
- openChannelFn: (spaceId: string, channelId: string) => Promise<RoolChannel>;
19
+ authManager: AuthManager;
20
+ graphqlUrl: string;
21
+ logger: Logger;
22
+ /** Called when the space is closed, so the client can remove it from cache. */
23
+ onClose: () => void;
16
24
  }
17
25
  /**
18
26
  * A space is a container for objects, schema, metadata, and channels.
19
27
  *
20
- * RoolSpace is a lightweight handle for space-level admin operations:
21
- * user management, link access, channel management, and export.
22
- * It does not have a real-time subscription use channels for live data.
28
+ * RoolSpace owns the real-time SSE subscription for the space. All channel
29
+ * lifecycle events (created, updated, deleted) are emitted here. Open channels
30
+ * on a space to work with objects and AI.
23
31
  *
24
- * To work with objects and AI, open a channel on the space.
32
+ * Call close() when done to stop the subscription.
25
33
  */
26
- export declare class RoolSpace {
34
+ export declare class RoolSpace extends EventEmitter<RoolSpaceEvents> {
27
35
  private _id;
28
36
  private _name;
29
37
  private _role;
38
+ private _userId;
30
39
  private _linkAccess;
31
40
  private _memberCount;
32
41
  private _channels;
42
+ private _knownChannelIds;
33
43
  private graphqlClient;
34
44
  private mediaClient;
35
- private _openChannelFn;
45
+ private authManager;
46
+ private graphqlUrl;
47
+ private logger;
48
+ private onCloseCallback;
49
+ private subscriptionManager;
50
+ private _subscriptionReady;
51
+ private openChannels;
52
+ private _objectIds;
53
+ private _objectStats;
54
+ private _schema;
55
+ private _meta;
56
+ private _channelData;
36
57
  constructor(config: SpaceConfig);
37
58
  get id(): string;
38
59
  get name(): string;
39
60
  get role(): RoolUserRole;
40
61
  get linkAccess(): LinkAccess;
41
62
  get memberCount(): number;
63
+ /**
64
+ * Live list of channels in this space.
65
+ * Auto-updates via SSE when channels are created, updated, or deleted.
66
+ */
67
+ get channels(): ChannelInfo[];
68
+ private startSubscription;
69
+ /** Wait for the subscription to be connected. */
70
+ private ensureSubscribed;
42
71
  /**
43
72
  * Open a channel on this space.
44
73
  * If the channel doesn't exist, the server creates it.
45
74
  */
46
75
  openChannel(channelId: string): Promise<RoolChannel>;
76
+ private unregisterChannel;
47
77
  /**
48
78
  * Rename this space.
49
79
  */
@@ -71,8 +101,8 @@ export declare class RoolSpace {
71
101
  setLinkAccess(linkAccess: LinkAccess): Promise<void>;
72
102
  /**
73
103
  * List channels in this space.
74
- * Returns from cached snapshot (populated at open time).
75
- * Call refresh() to update from server.
104
+ * Returns the live channel list (kept current via SSE).
105
+ * @deprecated Use the `channels` property instead.
76
106
  */
77
107
  getChannels(): ChannelInfo[];
78
108
  /**
@@ -85,8 +115,25 @@ export declare class RoolSpace {
85
115
  exportArchive(): Promise<Blob>;
86
116
  /**
87
117
  * Refresh space data from the server.
88
- * Updates name, role, linkAccess, and channel list.
118
+ * Updates name, role, linkAccess, channel list, and all cached data.
89
119
  */
90
120
  refresh(): Promise<void>;
121
+ /**
122
+ * Close the space subscription and all open channels.
123
+ */
124
+ close(): void;
125
+ /**
126
+ * Handle a space event from the SSE subscription.
127
+ * Routes to channels and emits channel lifecycle events.
128
+ */
129
+ private handleSpaceEvent;
130
+ /**
131
+ * Handle reconnection: fetch full state once, distribute to all channels.
132
+ */
133
+ private handleResync;
134
+ /**
135
+ * Apply full space data from server (initial load or resync).
136
+ */
137
+ private applyFullData;
91
138
  }
92
139
  //# sourceMappingURL=space.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"space.d.ts","sourceRoot":"","sources":["../src/space.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EACV,YAAY,EACZ,UAAU,EACV,WAAW,EACX,WAAW,EACZ,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,YAAY,CAAC;IACnB,UAAU,EAAE,UAAU,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,aAAa,EAAE,aAAa,CAAC;IAC7B,WAAW,EAAE,WAAW,CAAC;IACzB,gDAAgD;IAChD,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;CAC7E;AAED;;;;;;;;GAQG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,SAAS,CAAgB;IACjC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,cAAc,CAA+D;gBAEzE,MAAM,EAAE,WAAW;IAgB/B,IAAI,EAAE,IAAI,MAAM,CAAqB;IACrC,IAAI,IAAI,IAAI,MAAM,CAAuB;IACzC,IAAI,IAAI,IAAI,YAAY,CAAuB;IAC/C,IAAI,UAAU,IAAI,UAAU,CAA6B;IACzD,IAAI,WAAW,IAAI,MAAM,CAA8B;IAMvD;;;OAGG;IACG,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAQ1D;;OAEG;IACG,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK5C;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ7B;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAIzC;;OAEG;IACG,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhE;;OAEG;IACG,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/C;;;OAGG;IACG,aAAa,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAe1D;;;;OAIG;IACH,WAAW,IAAI,WAAW,EAAE;IAI5B;;OAEG;IACG,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASrD;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAQpC;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAQ/B"}
1
+ {"version":3,"file":"space.d.ts","sourceRoot":"","sources":["../src/space.ts"],"names":[],"mappings":"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"}