@rool-dev/client 0.4.6-dev.cf065fe → 0.4.7-dev.1c001a6

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/README.md CHANGED
@@ -144,15 +144,45 @@ const client = new RoolClient({
144
144
 
145
145
  ---
146
146
 
147
- ## AI Context Awareness
147
+ ## Sessions and AI Context
148
148
 
149
- AI operations (`prompt`, `createObject`, `updateObject`, `findObjects`) automatically receive context from your session:
149
+ Each `RoolSpace` instance has a `sessionId` that tracks conversation history with the AI. This enables multi-turn interactions where the AI understands references like "it", "them", or "the one I just created".
150
150
 
151
- - **Conversation history** — Previous requests and responses in your session, so the AI understands references like "it", "them", or "the one I just created"
152
- - **Recently modified objects** — Objects created or changed during your session, providing continuity across operations
151
+ AI operations (`prompt`, `createObject`, `updateObject`, `findObjects`) automatically receive:
152
+
153
+ - **Conversation history** — Previous prompts and responses from this session
154
+ - **Recently modified objects** — Objects created or changed during this session
153
155
  - **Selected objects** — Objects passed via `objectIds` are given primary focus
154
156
 
155
- This context flows automatically — no configuration needed. The AI sees enough history to maintain coherent multi-turn interactions while respecting the `_`-prefixed field hiding rules.
157
+ This context flows automatically — no configuration needed. The AI sees enough history to maintain coherent interactions while respecting the `_`-prefixed field hiding rules.
158
+
159
+ ### Session Isolation
160
+
161
+ By default, each call to `openSpace()` or `createSpace()` generates a new `sessionId`. This means:
162
+ - Opening a space twice gives you two independent AI context histories
163
+ - Closing and reopening a space starts fresh
164
+
165
+ ### Resuming Sessions
166
+
167
+ Pass a `sessionId` to continue a previous session's AI context:
168
+
169
+ ```typescript
170
+ // First session - save the sessionId
171
+ const space = await client.openSpace('abc123');
172
+ const savedSessionId = space.sessionId;
173
+ space.close();
174
+
175
+ // Later - resume the same session
176
+ const resumedSpace = await client.openSpace('abc123', { sessionId: savedSessionId });
177
+ // AI now has access to conversation history from the previous session
178
+ ```
179
+
180
+ **Use cases:**
181
+ - **Page refresh** — Store `sessionId` in localStorage to maintain context across reloads
182
+ - **Multi-step workflows** — Keep context when orchestrating multiple AI operations
183
+ - **Debugging** — Resume a session to reproduce specific AI behaviors
184
+
185
+ Note: Sessions are not persisted indefinitely server-side. For long-term context, rely on the space data itself.
156
186
 
157
187
  ---
158
188
 
@@ -174,8 +204,8 @@ This context flows automatically — no configuration needed. The AI sees enough
174
204
  | Method | Description |
175
205
  |--------|-------------|
176
206
  | `listSpaces(): Promise<RoolSpaceInfo[]>` | List available spaces |
177
- | `openSpace(id): Promise<RoolSpace>` | Open a space for editing |
178
- | `createSpace(name?): Promise<RoolSpace>` | Create a new space |
207
+ | `openSpace(id, options?): Promise<RoolSpace>` | Open a space for editing. Options: `{ sessionId?: string }` |
208
+ | `createSpace(name?, options?): Promise<RoolSpace>` | Create a new space. Options: `{ sessionId?: string }` |
179
209
  | `deleteSpace(id): Promise<void>` | Delete a space |
180
210
 
181
211
  ### Account & Users
@@ -189,7 +219,6 @@ This context flows automatically — no configuration needed. The AI sees enough
189
219
 
190
220
  | Method | Description |
191
221
  |--------|-------------|
192
- | `getConnectionId(): string` | Get connection ID (for echo suppression) |
193
222
  | `RoolClient.generateId(): string` | Generate 6-char alphanumeric ID (static) |
194
223
  | `graphql<T>(query, variables?): Promise<T>` | Execute raw GraphQL |
195
224
  | `destroy(): void` | Clean up resources |
@@ -218,6 +247,7 @@ Spaces are first-class objects with built-in undo/redo, event emission, and real
218
247
  | `id: string` | Space ID |
219
248
  | `name: string` | Space name |
220
249
  | `role: RoolUserRole` | User's role (`'owner' \| 'editor' \| 'viewer'`) |
250
+ | `sessionId: string` | Unique connection ID for this space instance (used for AI context tracking) |
221
251
  | `isReadOnly(): boolean` | True if viewer role |
222
252
 
223
253
  ### Lifecycle
package/dist/client.d.ts CHANGED
@@ -9,7 +9,7 @@ import type { RoolClientConfig, RoolClientEvents, RoolSpaceInfo, Account, UserRe
9
9
  * Features:
10
10
  * - Authentication (login, logout, token management)
11
11
  * - Spaces lifecycle (list, open, create, delete)
12
- * - Shared SSE subscription with event routing
12
+ * - Client-level subscription for lifecycle events
13
13
  * - Media operations
14
14
  * - AI operations (prompt, image generation)
15
15
  */
@@ -18,7 +18,6 @@ export declare class RoolClient extends EventEmitter<RoolClientEvents> {
18
18
  private authManager;
19
19
  private graphqlClient;
20
20
  private subscriptionManager;
21
- private connectionId;
22
21
  private openSpaces;
23
22
  constructor(config: RoolClientConfig);
24
23
  /**
@@ -65,15 +64,25 @@ export declare class RoolClient extends EventEmitter<RoolClientEvents> {
65
64
  /**
66
65
  * Open an existing space.
67
66
  * Loads the space data from the server and returns a Space instance.
68
- * Automatically subscribes to real-time updates.
67
+ * The space manages its own real-time subscription.
68
+ *
69
+ * @param spaceId - The ID of the space to open
70
+ * @param options.sessionId - Optional session ID for AI context continuity. If not provided, a new session is created.
69
71
  */
70
- openSpace(spaceId: string): Promise<RoolSpace>;
72
+ openSpace(spaceId: string, options?: {
73
+ sessionId?: string;
74
+ }): Promise<RoolSpace>;
71
75
  /**
72
76
  * Create a new space.
73
77
  * Creates on server and returns a Space instance.
74
- * Automatically subscribes to real-time updates.
78
+ * The space manages its own real-time subscription.
79
+ *
80
+ * @param name - Optional name for the space
81
+ * @param options.sessionId - Optional session ID for AI context continuity. If not provided, a new session is created.
75
82
  */
76
- createSpace(name?: string): Promise<RoolSpace>;
83
+ createSpace(name?: string, options?: {
84
+ sessionId?: string;
85
+ }): Promise<RoolSpace>;
77
86
  /**
78
87
  * Delete a space.
79
88
  * Note: This does not affect any open Space instances - they become stale.
@@ -89,7 +98,7 @@ export declare class RoolClient extends EventEmitter<RoolClientEvents> {
89
98
  searchUser(email: string): Promise<UserResult | null>;
90
99
  private get mediaClient();
91
100
  /**
92
- * Ensure the real-time event subscription is active.
101
+ * Ensure the client-level event subscription is active.
93
102
  * Called automatically when opening spaces.
94
103
  * @internal
95
104
  */
@@ -99,11 +108,6 @@ export declare class RoolClient extends EventEmitter<RoolClientEvents> {
99
108
  * @internal
100
109
  */
101
110
  private unsubscribe;
102
- /**
103
- * Get the connection ID used for subscriptions.
104
- * Events triggered by this connection won't be echoed back.
105
- */
106
- getConnectionId(): string;
107
111
  /**
108
112
  * Generate a unique entity ID.
109
113
  * 6-character alphanumeric string (62^6 = 56.8 billion possible values).
@@ -124,9 +128,9 @@ export declare class RoolClient extends EventEmitter<RoolClientEvents> {
124
128
  private registerSpace;
125
129
  private unregisterSpace;
126
130
  /**
127
- * Handle a raw event message from the subscription manager.
131
+ * Handle a client-level event from the subscription.
128
132
  * @internal
129
133
  */
130
- private handleEvent;
134
+ private handleClientEvent;
131
135
  }
132
136
  //# sourceMappingURL=client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAKlD,OAAO,EAAE,SAAS,EAAoB,MAAM,YAAY,CAAC;AACzD,OAAO,KAAK,EACV,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EAGb,OAAO,EACP,UAAU,EACV,QAAQ,EAET,MAAM,YAAY,CAAC;AAUpB;;;;;;;;;;;GAWG;AACH,qBAAa,UAAW,SAAQ,YAAY,CAAC,gBAAgB,CAAC;IAC5D,OAAO,CAAC,IAAI,CAAe;IAC3B,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,mBAAmB,CAAoC;IAC/D,OAAO,CAAC,YAAY,CAAS;IAG7B,OAAO,CAAC,UAAU,CAAgC;gBAEtC,MAAM,EAAE,gBAAgB;IA+BpC;;;;;OAKG;IACH,UAAU,IAAI,OAAO;IAWrB;;OAEG;IACH,OAAO,IAAI,IAAI;IAiBf;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B;;OAEG;IACH,MAAM,IAAI,IAAI;IAWd;;;OAGG;IACH,mBAAmB,IAAI,OAAO;IAI9B;;OAEG;IACH,eAAe,IAAI,OAAO;IAI1B;;;OAGG;IACG,QAAQ,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAI7C;;OAEG;IACH,OAAO,IAAI,QAAQ;IAQnB;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;IAI5C;;;;OAIG;IACG,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IA2BpD;;;;OAIG;IACG,WAAW,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IA2BpD;;;OAGG;IACG,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASjD;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;IAIpC;;OAEG;IACG,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAQ3D,OAAO,KAAK,WAAW,GAMtB;IAMD;;;;OAIG;YACW,gBAAgB;IAmB9B;;;OAGG;IACH,OAAO,CAAC,WAAW;IAWnB;;;OAGG;IACH,eAAe,IAAI,MAAM;IAIzB;;;;OAIG;IACH,MAAM,CAAC,UAAU,IAAI,MAAM;IAI3B;;;;;;;;;OASG;IACG,OAAO,CAAC,CAAC,EACb,KAAK,EAAE,MAAM,EACb,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,OAAO,CAAC,CAAC,CAAC;IAQb,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,eAAe;IAQvB;;;OAGG;IACH,OAAO,CAAC,WAAW;CAwDpB"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAKlD,OAAO,EAAE,SAAS,EAAoB,MAAM,YAAY,CAAC;AACzD,OAAO,KAAK,EACV,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EAGb,OAAO,EACP,UAAU,EACV,QAAQ,EAET,MAAM,YAAY,CAAC;AAUpB;;;;;;;;;;;GAWG;AACH,qBAAa,UAAW,SAAQ,YAAY,CAAC,gBAAgB,CAAC;IAC5D,OAAO,CAAC,IAAI,CAAe;IAC3B,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,mBAAmB,CAA0C;IAGrE,OAAO,CAAC,UAAU,CAAgC;gBAEtC,MAAM,EAAE,gBAAgB;IA4BpC;;;;;OAKG;IACH,UAAU,IAAI,OAAO;IAWrB;;OAEG;IACH,OAAO,IAAI,IAAI;IAiBf;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B;;OAEG;IACH,MAAM,IAAI,IAAI;IAWd;;;OAGG;IACH,mBAAmB,IAAI,OAAO;IAI9B;;OAEG;IACH,eAAe,IAAI,OAAO;IAI1B;;;OAGG;IACG,QAAQ,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAI7C;;OAEG;IACH,OAAO,IAAI,QAAQ;IAQnB;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;IAI5C;;;;;;;OAOG;IACG,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,SAAS,CAAC;IA8BtF;;;;;;;OAOG;IACG,WAAW,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,SAAS,CAAC;IA8BtF;;;OAGG;IACG,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUjD;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;IAIpC;;OAEG;IACG,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAQ3D,OAAO,KAAK,WAAW,GAMtB;IAMD;;;;OAIG;YACW,gBAAgB;IAkB9B;;;OAGG;IACH,OAAO,CAAC,WAAW;IAWnB;;;;OAIG;IACH,MAAM,CAAC,UAAU,IAAI,MAAM;IAI3B;;;;;;;;;OASG;IACG,OAAO,CAAC,CAAC,EACb,KAAK,EAAE,MAAM,EACb,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,OAAO,CAAC,CAAC,CAAC;IAQb,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,eAAe;IAQvB;;;OAGG;IACH,OAAO,CAAC,iBAAiB;CAe1B"}
package/dist/client.js CHANGED
@@ -4,7 +4,7 @@
4
4
  import { EventEmitter } from './event-emitter.js';
5
5
  import { AuthManager } from './auth.js';
6
6
  import { GraphQLClient } from './graphql.js';
7
- import { SubscriptionManager } from './subscription.js';
7
+ import { ClientSubscriptionManager } from './subscription.js';
8
8
  import { MediaClient } from './media.js';
9
9
  import { RoolSpace, generateEntityId } from './space.js';
10
10
  /**
@@ -15,7 +15,7 @@ import { RoolSpace, generateEntityId } from './space.js';
15
15
  * Features:
16
16
  * - Authentication (login, logout, token management)
17
17
  * - Spaces lifecycle (list, open, create, delete)
18
- * - Shared SSE subscription with event routing
18
+ * - Client-level subscription for lifecycle events
19
19
  * - Media operations
20
20
  * - AI operations (prompt, image generation)
21
21
  */
@@ -24,8 +24,7 @@ export class RoolClient extends EventEmitter {
24
24
  authManager;
25
25
  graphqlClient;
26
26
  subscriptionManager = null;
27
- connectionId;
28
- // Registry of open spaces
27
+ // Registry of open spaces (for cleanup on logout/destroy)
29
28
  openSpaces = new Map();
30
29
  constructor(config) {
31
30
  super();
@@ -35,7 +34,6 @@ export class RoolClient extends EventEmitter {
35
34
  media: config.mediaUrl ?? `${baseUrl}/media`,
36
35
  auth: config.authUrl ?? `${baseUrl}/auth`,
37
36
  };
38
- this.connectionId = generateEntityId();
39
37
  this.authManager = new AuthManager({
40
38
  authUrl: this.urls.auth,
41
39
  authProvider: config.authProvider,
@@ -46,7 +44,6 @@ export class RoolClient extends EventEmitter {
46
44
  this.graphqlClient = new GraphQLClient({
47
45
  graphqlUrl: this.urls.graphql,
48
46
  authManager: this.authManager,
49
- getConnectionId: () => this.connectionId,
50
47
  });
51
48
  }
52
49
  // ===========================================================================
@@ -138,10 +135,13 @@ export class RoolClient extends EventEmitter {
138
135
  /**
139
136
  * Open an existing space.
140
137
  * Loads the space data from the server and returns a Space instance.
141
- * Automatically subscribes to real-time updates.
138
+ * The space manages its own real-time subscription.
139
+ *
140
+ * @param spaceId - The ID of the space to open
141
+ * @param options.sessionId - Optional session ID for AI context continuity. If not provided, a new session is created.
142
142
  */
143
- async openSpace(spaceId) {
144
- // Ensure subscription is active
143
+ async openSpace(spaceId, options) {
144
+ // Ensure client subscription is active (for lifecycle events)
145
145
  void this.ensureSubscribed();
146
146
  const [spaceData, spaceList] = await Promise.all([
147
147
  this.graphqlClient.getSpace(spaceId),
@@ -153,37 +153,46 @@ export class RoolClient extends EventEmitter {
153
153
  name: spaceInfo?.name ?? spaceId,
154
154
  role: spaceInfo?.role ?? 'viewer',
155
155
  initialData: spaceData,
156
+ sessionId: options?.sessionId,
156
157
  graphqlClient: this.graphqlClient,
157
158
  mediaClient: this.mediaClient,
159
+ graphqlUrl: this.urls.graphql,
160
+ authManager: this.authManager,
158
161
  onClose: (id) => this.unregisterSpace(id),
159
162
  });
160
- // Register for event routing
163
+ // Register for cleanup
161
164
  this.registerSpace(spaceId, space);
162
165
  return space;
163
166
  }
164
167
  /**
165
168
  * Create a new space.
166
169
  * Creates on server and returns a Space instance.
167
- * Automatically subscribes to real-time updates.
170
+ * The space manages its own real-time subscription.
171
+ *
172
+ * @param name - Optional name for the space
173
+ * @param options.sessionId - Optional session ID for AI context continuity. If not provided, a new session is created.
168
174
  */
169
- async createSpace(name) {
170
- // Ensure subscription is active
175
+ async createSpace(name, options) {
176
+ // Ensure client subscription is active (for lifecycle events)
171
177
  void this.ensureSubscribed();
172
178
  const spaceId = generateEntityId();
173
179
  const spaceName = name ?? spaceId;
174
180
  const initialData = { objects: {}, meta: {} };
175
- // Create on server with name
176
- await this.graphqlClient.createSpace(spaceId, spaceName);
181
+ // Create on server with name (use a temporary sessionId for lifecycle ops)
182
+ await this.graphqlClient.createSpace(spaceId, spaceName, generateEntityId());
177
183
  const space = new RoolSpace({
178
184
  id: spaceId,
179
185
  name: spaceName,
180
186
  role: 'owner',
181
187
  initialData,
188
+ sessionId: options?.sessionId,
182
189
  graphqlClient: this.graphqlClient,
183
190
  mediaClient: this.mediaClient,
191
+ graphqlUrl: this.urls.graphql,
192
+ authManager: this.authManager,
184
193
  onClose: (id) => this.unregisterSpace(id),
185
194
  });
186
- // Register for event routing
195
+ // Register for cleanup
187
196
  this.registerSpace(spaceId, space);
188
197
  return space;
189
198
  }
@@ -192,7 +201,8 @@ export class RoolClient extends EventEmitter {
192
201
  * Note: This does not affect any open Space instances - they become stale.
193
202
  */
194
203
  async deleteSpace(spaceId) {
195
- await this.graphqlClient.deleteSpace(spaceId);
204
+ // Use a temporary sessionId for lifecycle ops
205
+ await this.graphqlClient.deleteSpace(spaceId, generateEntityId());
196
206
  // Client-level event will be emitted via SSE subscription
197
207
  }
198
208
  // ===========================================================================
@@ -224,18 +234,17 @@ export class RoolClient extends EventEmitter {
224
234
  // Subscriptions (internal - auto-managed)
225
235
  // ===========================================================================
226
236
  /**
227
- * Ensure the real-time event subscription is active.
237
+ * Ensure the client-level event subscription is active.
228
238
  * Called automatically when opening spaces.
229
239
  * @internal
230
240
  */
231
241
  async ensureSubscribed() {
232
242
  if (this.subscriptionManager)
233
243
  return;
234
- this.subscriptionManager = new SubscriptionManager({
244
+ this.subscriptionManager = new ClientSubscriptionManager({
235
245
  graphqlUrl: this.urls.graphql,
236
246
  authManager: this.authManager,
237
- connectionId: this.connectionId,
238
- onEvent: (event) => this.handleEvent(event),
247
+ onEvent: (event) => this.handleClientEvent(event),
239
248
  onConnectionStateChanged: (state) => {
240
249
  this.emit('connectionStateChanged', state);
241
250
  },
@@ -258,13 +267,6 @@ export class RoolClient extends EventEmitter {
258
267
  // ===========================================================================
259
268
  // Utilities
260
269
  // ===========================================================================
261
- /**
262
- * Get the connection ID used for subscriptions.
263
- * Events triggered by this connection won't be echoed back.
264
- */
265
- getConnectionId() {
266
- return this.connectionId;
267
- }
268
270
  /**
269
271
  * Generate a unique entity ID.
270
272
  * 6-character alphanumeric string (62^6 = 56.8 billion possible values).
@@ -299,57 +301,19 @@ export class RoolClient extends EventEmitter {
299
301
  // Private Methods - Event Handling
300
302
  // ===========================================================================
301
303
  /**
302
- * Handle a raw event message from the subscription manager.
304
+ * Handle a client-level event from the subscription.
303
305
  * @internal
304
306
  */
305
- handleEvent(event) {
306
- const { type, spaceId, patch, source } = event;
307
- switch (type) {
308
- case 'space_patched':
309
- // Route to open Space instance
310
- if (patch) {
311
- const space = this.openSpaces.get(spaceId);
312
- if (space) {
313
- space.handleRemotePatch(patch, source);
314
- }
315
- }
316
- break;
317
- case 'space_changed':
318
- // Route to open Space instance
319
- {
320
- const space = this.openSpaces.get(spaceId);
321
- if (space) {
322
- // Reload space data and notify
323
- void this.graphqlClient.getSpace(spaceId).then((data) => {
324
- space.handleRemoteChange(data);
325
- });
326
- }
327
- }
328
- break;
329
- case 'space_name_changed':
330
- // Emit client-level event and update any open Space
331
- {
332
- // Fetch updated name
333
- void this.graphqlClient.listSpaces().then((spaces) => {
334
- const info = spaces.find(s => s.id === spaceId);
335
- if (info) {
336
- const space = this.openSpaces.get(spaceId);
337
- if (space) {
338
- space.handleRemoteRename(info.name);
339
- }
340
- this.emit('spaceRenamed', spaceId, info.name);
341
- }
342
- });
343
- }
344
- break;
307
+ handleClientEvent(event) {
308
+ switch (event.type) {
345
309
  case 'space_created':
346
- // Client-level event only
347
- this.emit('spaceCreated', spaceId, event.name ?? spaceId);
310
+ this.emit('spaceCreated', event.spaceId, event.name ?? event.spaceId);
348
311
  break;
349
312
  case 'space_deleted':
350
- // Client-level event
351
- this.emit('spaceDeleted', spaceId);
352
- // Note: Any open Space instances become stale
313
+ this.emit('spaceDeleted', event.spaceId);
314
+ break;
315
+ case 'space_renamed':
316
+ this.emit('spaceRenamed', event.spaceId, event.name ?? event.spaceId);
353
317
  break;
354
318
  }
355
319
  }
@@ -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/graphql.d.ts CHANGED
@@ -3,7 +3,6 @@ import type { AuthManager } from './auth.js';
3
3
  export interface GraphQLClientConfig {
4
4
  graphqlUrl: string;
5
5
  authManager: AuthManager;
6
- getConnectionId: () => string;
7
6
  }
8
7
  export declare class GraphQLClient {
9
8
  private config;
@@ -11,21 +10,21 @@ export declare class GraphQLClient {
11
10
  private get graphqlUrl();
12
11
  listSpaces(): Promise<RoolSpaceInfo[]>;
13
12
  getSpace(spaceId: string): Promise<RoolSpaceData>;
14
- createSpace(spaceId: string, name: string): Promise<void>;
15
- setSpace(spaceId: string, space: RoolSpaceData): Promise<void>;
16
- deleteSpace(spaceId: string): Promise<void>;
17
- renameSpace(spaceId: string, name: string): Promise<void>;
18
- setSpaceMeta(spaceId: string, meta: Record<string, unknown>): Promise<void>;
19
- link(spaceId: string, source: string, target: string, type: string): Promise<void>;
20
- unlink(spaceId: string, source: string, target: string): Promise<void>;
21
- deleteObjects(spaceId: string, ids: string[]): Promise<void>;
22
- createObject(spaceId: string, data: Record<string, unknown>, prompt?: string): Promise<string>;
23
- updateObject(spaceId: string, id: string, data?: Record<string, unknown>, prompt?: string): Promise<string>;
24
- findObjects(spaceId: string, options: FindObjectsOptions): Promise<{
13
+ createSpace(spaceId: string, name: string, sessionId: string): Promise<void>;
14
+ deleteSpace(spaceId: string, sessionId: string): Promise<void>;
15
+ renameSpace(spaceId: string, name: string, sessionId: string): Promise<void>;
16
+ setSpace(spaceId: string, space: RoolSpaceData, sessionId: string): Promise<void>;
17
+ setSpaceMeta(spaceId: string, meta: Record<string, unknown>, sessionId: string): Promise<void>;
18
+ link(spaceId: string, source: string, target: string, type: string, sessionId: string): Promise<void>;
19
+ unlink(spaceId: string, source: string, target: string, sessionId: string): Promise<void>;
20
+ deleteObjects(spaceId: string, ids: string[], sessionId: string): Promise<void>;
21
+ createObject(spaceId: string, data: Record<string, unknown>, sessionId: string, prompt?: string): Promise<string>;
22
+ updateObject(spaceId: string, id: string, sessionId: string, data?: Record<string, unknown>, prompt?: string): Promise<string>;
23
+ findObjects(spaceId: string, options: FindObjectsOptions, sessionId: string): Promise<{
25
24
  objects: RoolObject[];
26
25
  message: string;
27
26
  }>;
28
- prompt(spaceId: string, prompt: string, options?: PromptOptions): Promise<string | null>;
27
+ prompt(spaceId: string, prompt: string, sessionId: string, options?: PromptOptions): Promise<string | null>;
29
28
  getAccount(): Promise<Account>;
30
29
  searchUser(email: string): Promise<UserResult | null>;
31
30
  listSpaceUsers(spaceId: string): Promise<RoolUser[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"graphql.d.ts","sourceRoot":"","sources":["../src/graphql.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"graphql.d.ts","sourceRoot":"","sources":["../src/graphql.ts"],"names":[],"mappings":"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"}