@rool-dev/sdk 0.6.0-dev.066e192 → 0.6.0-dev.1cbaafa

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/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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"}
package/dist/space.js CHANGED
@@ -1,35 +1,85 @@
1
1
  // =============================================================================
2
- // RoolSpace — Lightweight handle for space-level admin operations
2
+ // RoolSpace — Space handle with real-time subscription
3
3
  // =============================================================================
4
+ import { EventEmitter } from './event-emitter.js';
5
+ import { SpaceSubscriptionManager } from './subscription.js';
6
+ import { RoolChannel } from './channel.js';
7
+ /** Convert a full Channel object to a ChannelInfo summary. */
8
+ function channelToInfo(id, ch) {
9
+ return {
10
+ id,
11
+ name: ch.name ?? null,
12
+ createdAt: ch.createdAt,
13
+ createdBy: ch.createdBy,
14
+ createdByName: ch.createdByName ?? null,
15
+ interactionCount: Object.values(ch.conversations ?? {}).reduce((sum, conv) => sum + (conv.interactions ? Object.keys(conv.interactions).length : 0), 0),
16
+ extensionUrl: ch.extensionUrl ?? null,
17
+ extensionId: ch.extensionId ?? null,
18
+ manifest: ch.manifest ?? null,
19
+ };
20
+ }
4
21
  /**
5
22
  * A space is a container for objects, schema, metadata, and channels.
6
23
  *
7
- * RoolSpace is a lightweight handle for space-level admin operations:
8
- * user management, link access, channel management, and export.
9
- * It does not have a real-time subscription use channels for live data.
24
+ * RoolSpace owns the real-time SSE subscription for the space. All channel
25
+ * lifecycle events (created, updated, deleted) are emitted here. Open channels
26
+ * on a space to work with objects and AI.
10
27
  *
11
- * To work with objects and AI, open a channel on the space.
28
+ * Call close() when done to stop the subscription.
12
29
  */
13
- export class RoolSpace {
30
+ export class RoolSpace extends EventEmitter {
14
31
  _id;
15
32
  _name;
16
33
  _role;
34
+ _userId;
17
35
  _linkAccess;
18
36
  _memberCount;
19
37
  _channels;
38
+ _knownChannelIds;
20
39
  graphqlClient;
21
40
  mediaClient;
22
- _openChannelFn;
41
+ authManager;
42
+ graphqlUrl;
43
+ logger;
44
+ onCloseCallback;
45
+ // Subscription
46
+ subscriptionManager = null;
47
+ _subscriptionReady = null;
48
+ // Open channels on this space
49
+ openChannels = new Map();
50
+ // Full space data (for channel creation)
51
+ _objectIds;
52
+ _objectStats;
53
+ _schema;
54
+ _meta;
55
+ _channelData;
23
56
  constructor(config) {
57
+ super();
58
+ this._emitterLogger = config.logger;
24
59
  this._id = config.id;
25
60
  this._name = config.name;
26
61
  this._role = config.role;
62
+ this._userId = config.userId;
27
63
  this._linkAccess = config.linkAccess;
28
64
  this._memberCount = config.memberCount;
29
- this._channels = config.channels;
30
65
  this.graphqlClient = config.graphqlClient;
31
66
  this.mediaClient = config.mediaClient;
32
- this._openChannelFn = config.openChannelFn;
67
+ this.authManager = config.authManager;
68
+ this.graphqlUrl = config.graphqlUrl;
69
+ this.logger = config.logger;
70
+ this.onCloseCallback = config.onClose;
71
+ // Store full space data
72
+ const fd = config.fullData;
73
+ this._objectIds = fd.objectIds;
74
+ this._objectStats = fd.objectStats;
75
+ this._schema = fd.schema;
76
+ this._meta = fd.meta;
77
+ this._channelData = fd.channels;
78
+ // Build channel list from full data
79
+ this._channels = Object.entries(fd.channels).map(([id, ch]) => channelToInfo(id, ch));
80
+ this._knownChannelIds = new Set(this._channels.map(c => c.id));
81
+ // Start subscription
82
+ this.startSubscription();
33
83
  }
34
84
  // ===========================================================================
35
85
  // Properties
@@ -39,6 +89,34 @@ export class RoolSpace {
39
89
  get role() { return this._role; }
40
90
  get linkAccess() { return this._linkAccess; }
41
91
  get memberCount() { return this._memberCount; }
92
+ /**
93
+ * Live list of channels in this space.
94
+ * Auto-updates via SSE when channels are created, updated, or deleted.
95
+ */
96
+ get channels() { return this._channels; }
97
+ // ===========================================================================
98
+ // Subscription
99
+ // ===========================================================================
100
+ startSubscription() {
101
+ this.subscriptionManager = new SpaceSubscriptionManager({
102
+ graphqlUrl: this.graphqlUrl,
103
+ authManager: this.authManager,
104
+ logger: this.logger,
105
+ spaceId: this._id,
106
+ onEvent: (event) => this.handleSpaceEvent(event),
107
+ onConnectionStateChanged: (state) => {
108
+ this.emit('connectionStateChanged', state);
109
+ },
110
+ onError: (error) => {
111
+ this.logger.error(`[RoolSpace] Space ${this._id} subscription error:`, error);
112
+ },
113
+ });
114
+ this._subscriptionReady = this.subscriptionManager.subscribe();
115
+ }
116
+ /** Wait for the subscription to be connected. */
117
+ ensureSubscribed() {
118
+ return this._subscriptionReady ?? Promise.resolve();
119
+ }
42
120
  // ===========================================================================
43
121
  // Channel Lifecycle
44
122
  // ===========================================================================
@@ -47,7 +125,49 @@ export class RoolSpace {
47
125
  * If the channel doesn't exist, the server creates it.
48
126
  */
49
127
  async openChannel(channelId) {
50
- return this._openChannelFn(this._id, channelId);
128
+ if (!channelId || channelId.length > 32 || !/^[a-zA-Z0-9_-]+$/.test(channelId)) {
129
+ throw new Error('channelId must be 1–32 characters containing only alphanumeric characters, hyphens, and underscores');
130
+ }
131
+ // Ensure channel exists — create if missing
132
+ let channelData = this._channelData[channelId];
133
+ if (!channelData) {
134
+ try {
135
+ channelData = await this.graphqlClient.createChannel(this._id, channelId);
136
+ this._channelData[channelId] = channelData;
137
+ }
138
+ catch {
139
+ // Race: another client may have created it. Re-fetch.
140
+ const refreshed = await this.graphqlClient.openSpaceFull(this._id);
141
+ this.applyFullData(refreshed);
142
+ channelData = this._channelData[channelId];
143
+ if (!channelData)
144
+ throw new Error(`Failed to create channel "${channelId}"`);
145
+ }
146
+ }
147
+ const channel = new RoolChannel({
148
+ id: this._id,
149
+ name: this._name,
150
+ role: this._role,
151
+ linkAccess: this._linkAccess,
152
+ userId: this._userId,
153
+ objectIds: this._objectIds,
154
+ objectStats: this._objectStats,
155
+ schema: this._schema,
156
+ meta: this._meta,
157
+ channel: channelData,
158
+ channelId,
159
+ graphqlClient: this.graphqlClient,
160
+ mediaClient: this.mediaClient,
161
+ logger: this.logger,
162
+ onClose: () => this.unregisterChannel(channelId),
163
+ });
164
+ this.openChannels.set(channelId, channel);
165
+ // Ensure subscription is connected before returning
166
+ await this.ensureSubscribed();
167
+ return channel;
168
+ }
169
+ unregisterChannel(channelId) {
170
+ this.openChannels.delete(channelId);
51
171
  }
52
172
  // ===========================================================================
53
173
  // Space Admin
@@ -106,8 +226,8 @@ export class RoolSpace {
106
226
  // ===========================================================================
107
227
  /**
108
228
  * List channels in this space.
109
- * Returns from cached snapshot (populated at open time).
110
- * Call refresh() to update from server.
229
+ * Returns the live channel list (kept current via SSE).
230
+ * @deprecated Use the `channels` property instead.
111
231
  */
112
232
  getChannels() {
113
233
  return this._channels;
@@ -117,7 +237,10 @@ export class RoolSpace {
117
237
  */
118
238
  async deleteChannel(channelId) {
119
239
  await this.graphqlClient.deleteChannel(this._id, channelId);
240
+ // SSE will update the channel list; also update optimistically
120
241
  this._channels = this._channels.filter(c => c.id !== channelId);
242
+ this._knownChannelIds.delete(channelId);
243
+ delete this._channelData[channelId];
121
244
  }
122
245
  // ===========================================================================
123
246
  // Export
@@ -133,15 +256,132 @@ export class RoolSpace {
133
256
  // ===========================================================================
134
257
  /**
135
258
  * Refresh space data from the server.
136
- * Updates name, role, linkAccess, and channel list.
259
+ * Updates name, role, linkAccess, channel list, and all cached data.
137
260
  */
138
261
  async refresh() {
139
- const { name, role, linkAccess, memberCount, channels } = await this.graphqlClient.openSpace(this._id);
140
- this._name = name;
141
- this._role = role;
142
- this._linkAccess = linkAccess;
143
- this._memberCount = memberCount;
144
- this._channels = channels;
262
+ const data = await this.graphqlClient.openSpaceFull(this._id);
263
+ this.applyFullData(data);
264
+ }
265
+ // ===========================================================================
266
+ // Cleanup
267
+ // ===========================================================================
268
+ /**
269
+ * Close the space subscription and all open channels.
270
+ */
271
+ close() {
272
+ // Close all open channels
273
+ for (const channel of this.openChannels.values()) {
274
+ channel.close();
275
+ }
276
+ this.openChannels.clear();
277
+ // Stop subscription
278
+ if (this.subscriptionManager) {
279
+ this.subscriptionManager.destroy();
280
+ this.subscriptionManager = null;
281
+ this._subscriptionReady = null;
282
+ }
283
+ this.removeAllListeners();
284
+ this.onCloseCallback();
285
+ }
286
+ // ===========================================================================
287
+ // Event Routing (internal)
288
+ // ===========================================================================
289
+ /**
290
+ * Handle a space event from the SSE subscription.
291
+ * Routes to channels and emits channel lifecycle events.
292
+ */
293
+ handleSpaceEvent(event) {
294
+ // Reconnect or full state change: single fetch, distribute to all channels
295
+ if (event.type === 'connected' || event.type === 'space_changed') {
296
+ this.handleResync();
297
+ return;
298
+ }
299
+ // Channel lifecycle events: derive channelCreated/channelUpdated/channelDeleted
300
+ if (event.type === 'channel_updated' && event.channelId && event.channel) {
301
+ const info = channelToInfo(event.channelId, event.channel);
302
+ // Update internal channel data
303
+ this._channelData[event.channelId] = event.channel;
304
+ if (this._knownChannelIds.has(event.channelId)) {
305
+ // Known channel — update in list
306
+ this._channels = this._channels.map(c => c.id === event.channelId ? info : c);
307
+ this.emit('channelUpdated', info);
308
+ }
309
+ else {
310
+ // New channel
311
+ this._knownChannelIds.add(event.channelId);
312
+ this._channels = [...this._channels, info];
313
+ this.emit('channelCreated', info);
314
+ }
315
+ // Also route to the open channel (for channel-internal handling like name/extension updates)
316
+ const channel = this.openChannels.get(event.channelId);
317
+ if (channel)
318
+ channel._handleEvent(event);
319
+ return;
320
+ }
321
+ if (event.type === 'channel_deleted' && event.channelId) {
322
+ this._knownChannelIds.delete(event.channelId);
323
+ this._channels = this._channels.filter(c => c.id !== event.channelId);
324
+ delete this._channelData[event.channelId];
325
+ this.emit('channelDeleted', event.channelId);
326
+ // Route to the open channel (so it can clean up)
327
+ const channel = this.openChannels.get(event.channelId);
328
+ if (channel)
329
+ channel._handleEvent(event);
330
+ return;
331
+ }
332
+ // Channel-specific events (conversation_updated): route to the matching channel only
333
+ if ('channelId' in event && event.channelId) {
334
+ const channel = this.openChannels.get(event.channelId);
335
+ if (channel)
336
+ channel._handleEvent(event);
337
+ return;
338
+ }
339
+ // Space-wide events (objects, schema, metadata):
340
+ // broadcast to all channels on this space
341
+ for (const channel of this.openChannels.values()) {
342
+ channel._handleEvent(event);
343
+ }
344
+ }
345
+ /**
346
+ * Handle reconnection: fetch full state once, distribute to all channels.
347
+ */
348
+ handleResync() {
349
+ this.logger.info(`[RoolSpace] Space ${this._id} reconnected, resyncing...`);
350
+ void this.graphqlClient.openSpaceFull(this._id).then((result) => {
351
+ this.applyFullData(result);
352
+ // Distribute to all open channels
353
+ for (const [channelId, channel] of this.openChannels) {
354
+ const channelData = result.channels[channelId];
355
+ if (!channelData)
356
+ continue; // Channel was deleted between fetch and distribution
357
+ channel._applyResyncData({
358
+ meta: result.meta,
359
+ schema: result.schema,
360
+ objectIds: result.objectIds,
361
+ objectStats: result.objectStats,
362
+ channel: channelData,
363
+ });
364
+ }
365
+ this.logger.info(`[RoolSpace] Space ${this._id} resync complete (${result.objectIds.length} objects)`);
366
+ }).catch((error) => {
367
+ this.logger.error(`[RoolSpace] Space ${this._id} resync failed:`, error);
368
+ });
369
+ }
370
+ /**
371
+ * Apply full space data from server (initial load or resync).
372
+ */
373
+ applyFullData(data) {
374
+ this._name = data.name;
375
+ this._role = data.role;
376
+ this._linkAccess = data.linkAccess;
377
+ this._memberCount = data.memberCount;
378
+ this._objectIds = data.objectIds;
379
+ this._objectStats = data.objectStats;
380
+ this._schema = data.schema;
381
+ this._meta = data.meta;
382
+ this._channelData = data.channels;
383
+ this._channels = Object.entries(data.channels).map(([id, ch]) => channelToInfo(id, ch));
384
+ this._knownChannelIds = new Set(this._channels.map(c => c.id));
145
385
  }
146
386
  }
147
387
  //# sourceMappingURL=space.js.map
package/dist/space.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"space.js","sourceRoot":"","sources":["../src/space.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"space.js","sourceRoot":"","sources":["../src/space.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"subscription.d.ts","sourceRoot":"","sources":["../src/subscription.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,YAAY,EAAmF,MAAM,YAAY,CAAC;AAC9J,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAa1C,MAAM,WAAW,wBAAwB;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,WAAW,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;IACtC,wBAAwB,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;IAC3D,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CACjC;AAED,qBAAa,yBAAyB;IACpC,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,cAAc,CAA2B;IACjD,OAAO,CAAC,kBAAkB,CAA8C;IACxE,OAAO,CAAC,kBAAkB,CAAS;IACnC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,mBAAmB,CAA+C;gBAE9D,MAAM,EAAE,wBAAwB;IAK5C,IAAI,YAAY,IAAI,OAAO,CAE1B;IAEK,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAOhC,qBAAqB,IAAI,IAAI;YAOf,OAAO;IA0FrB,OAAO,CAAC,UAAU;IAUlB,OAAO,CAAC,iBAAiB;IAiBzB,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,cAAc;IAgBtB,OAAO,CAAC,kBAAkB;IAO1B,OAAO,CAAC,gBAAgB;IAkDxB,OAAO,IAAI,IAAI;CAGhB;AAQD,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,WAAW,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IACvC,wBAAwB,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;IAC3D,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CACjC;AAED,qBAAa,wBAAwB;IACnC,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,cAAc,CAA2B;IACjD,OAAO,CAAC,kBAAkB,CAA8C;IACxE,OAAO,CAAC,kBAAkB,CAAS;IACnC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,sBAAsB,CAAoE;IAClG,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,mBAAmB,CAA+C;gBAE9D,MAAM,EAAE,uBAAuB;IAK3C,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;;;OAIG;IACH,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAW1B,qBAAqB,IAAI,IAAI;YAOf,OAAO;IAkHrB,OAAO,CAAC,UAAU;IAUlB,OAAO,CAAC,iBAAiB;IAiBzB,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,cAAc;IAgBtB,OAAO,CAAC,kBAAkB;IAO1B,OAAO,CAAC,eAAe;IAmCvB,OAAO,IAAI,IAAI;CAGhB"}
1
+ {"version":3,"file":"subscription.d.ts","sourceRoot":"","sources":["../src/subscription.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,YAAY,EAAsG,MAAM,YAAY,CAAC;AACjL,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAa1C,MAAM,WAAW,wBAAwB;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,WAAW,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;IACtC,wBAAwB,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;IAC3D,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CACjC;AAED,qBAAa,yBAAyB;IACpC,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,cAAc,CAA2B;IACjD,OAAO,CAAC,kBAAkB,CAA8C;IACxE,OAAO,CAAC,kBAAkB,CAAS;IACnC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,mBAAmB,CAA+C;gBAE9D,MAAM,EAAE,wBAAwB;IAK5C,IAAI,YAAY,IAAI,OAAO,CAE1B;IAEK,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAOhC,qBAAqB,IAAI,IAAI;YAOf,OAAO;IA0FrB,OAAO,CAAC,UAAU;IAUlB,OAAO,CAAC,iBAAiB;IAiBzB,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,cAAc;IAgBtB,OAAO,CAAC,kBAAkB;IAO1B,OAAO,CAAC,gBAAgB;IAoDxB,OAAO,IAAI,IAAI;CAGhB;AAQD,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,WAAW,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IACvC,wBAAwB,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;IAC3D,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CACjC;AAED,qBAAa,wBAAwB;IACnC,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,cAAc,CAA2B;IACjD,OAAO,CAAC,kBAAkB,CAA8C;IACxE,OAAO,CAAC,kBAAkB,CAAS;IACnC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,sBAAsB,CAAoE;IAClG,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,mBAAmB,CAA+C;gBAE9D,MAAM,EAAE,uBAAuB;IAK3C,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;;;OAIG;IACH,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAW1B,qBAAqB,IAAI,IAAI;YAOf,OAAO;IAkHrB,OAAO,CAAC,UAAU;IAUlB,OAAO,CAAC,iBAAiB;IAiBzB,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,cAAc;IAgBtB,OAAO,CAAC,kBAAkB;IAO1B,OAAO,CAAC,eAAe;IAmCvB,OAAO,IAAI,IAAI;CAGhB"}
@@ -203,6 +203,8 @@ export class ClientSubscriptionManager {
203
203
  channelCreatedBy: raw.createdBy,
204
204
  channelCreatedByName: raw.createdByName,
205
205
  channelExtensionUrl: raw.extensionUrl,
206
+ channelExtensionId: raw.extensionId,
207
+ channelManifest: raw.manifest,
206
208
  };
207
209
  case 'channel_renamed':
208
210
  return { type, timestamp, spaceId: raw.spaceId, channelId: raw.channelId, name: raw.name };
@@ -1 +1 @@
1
- {"version":3,"file":"subscription.js","sourceRoot":"","sources":["../src/subscription.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subscription.js","sourceRoot":"","sources":["../src/subscription.ts"],"names":[],"mappings":"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"}