@rool-dev/client 0.3.1-dev.d8f12c7 → 0.3.1-dev.de3060f
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 +43 -23
- package/dist/graph.d.ts +32 -29
- package/dist/graph.d.ts.map +1 -1
- package/dist/graph.js +157 -113
- package/dist/graph.js.map +1 -1
- package/dist/graphql.d.ts +7 -4
- package/dist/graphql.d.ts.map +1 -1
- package/dist/graphql.js +81 -42
- package/dist/graphql.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/types.d.ts +55 -18
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -27,16 +27,16 @@ await client.subscribe();
|
|
|
27
27
|
const graph = await client.openGraph('my-graph-id');
|
|
28
28
|
graph.subscribe(); // Listen for real-time updates
|
|
29
29
|
|
|
30
|
-
//
|
|
30
|
+
// Create a node
|
|
31
31
|
graph.checkpoint('Add node');
|
|
32
|
-
graph.
|
|
32
|
+
const nodeId = graph.createNode({ type: 'text', fields: { content: 'Hello' } });
|
|
33
33
|
|
|
34
|
-
//
|
|
35
|
-
graph.
|
|
34
|
+
// Create an edge between nodes
|
|
35
|
+
graph.createEdge(nodeId, 'node2', 'connection');
|
|
36
36
|
|
|
37
37
|
// Undo/redo support
|
|
38
|
-
graph.undo();
|
|
39
|
-
graph.redo();
|
|
38
|
+
await graph.undo();
|
|
39
|
+
await graph.redo();
|
|
40
40
|
|
|
41
41
|
// Clean up
|
|
42
42
|
graph.close();
|
|
@@ -209,16 +209,16 @@ Graphs are first-class objects with built-in undo/redo, event emission, and real
|
|
|
209
209
|
| `getNodeOrUndefined(nodeId): RoolNode \| undefined` | Get node or undefined |
|
|
210
210
|
| `getNodesByType(type): RoolNode[]` | Get all nodes of type |
|
|
211
211
|
| `getNodeIds(): string[]` | Get all node IDs |
|
|
212
|
-
| `
|
|
213
|
-
| `updateNode(nodeId,
|
|
212
|
+
| `createNode(options): string` | Create node, returns ID. Options: `{ type, fields?, meta?, prompt? }` |
|
|
213
|
+
| `updateNode(nodeId, options): void` | Update node. Options: `{ type?, fields?, meta?, prompt? }` |
|
|
214
214
|
| `deleteNodes(nodeIds): void` | Delete nodes (and connected edges) |
|
|
215
215
|
|
|
216
216
|
### Edge Operations
|
|
217
217
|
|
|
218
218
|
| Method | Description |
|
|
219
219
|
|--------|-------------|
|
|
220
|
-
| `
|
|
221
|
-
| `
|
|
220
|
+
| `createEdge(sourceId, targetId, edgeType): string` | Create edge, returns edge ID |
|
|
221
|
+
| `deleteEdge(sourceId, targetId): boolean` | Remove edges between nodes |
|
|
222
222
|
| `getParents(nodeId, edgeType?): string[]` | Get nodes pointing to this node |
|
|
223
223
|
| `getChildren(nodeId, edgeType?): string[]` | Get nodes this node points to |
|
|
224
224
|
| `getEdge(edgeId): RoolEdge \| undefined` | Get edge by ID |
|
|
@@ -237,8 +237,6 @@ Graphs are first-class objects with built-in undo/redo, event emission, and real
|
|
|
237
237
|
| Method | Description |
|
|
238
238
|
|--------|-------------|
|
|
239
239
|
| `prompt(prompt, options?): Promise<string \| null>` | AI graph manipulation |
|
|
240
|
-
| `generateImage(prompt, aspectRatio?): Promise<ImageResult>` | Generate AI image |
|
|
241
|
-
| `editImage(prompt, url): Promise<ImageResult>` | Edit image with AI |
|
|
242
240
|
|
|
243
241
|
### Collaboration
|
|
244
242
|
|
|
@@ -263,14 +261,29 @@ Graphs are first-class objects with built-in undo/redo, event emission, and real
|
|
|
263
261
|
| Method | Description |
|
|
264
262
|
|--------|-------------|
|
|
265
263
|
| `getData(): RoolGraphData` | Get full graph data |
|
|
266
|
-
| `patch(operations): void` | Apply JSON patch |
|
|
267
264
|
|
|
268
265
|
### Graph Events
|
|
269
266
|
|
|
267
|
+
Semantic events describe what changed. Events fire for both local changes and remote changes.
|
|
268
|
+
|
|
270
269
|
```typescript
|
|
271
|
-
//
|
|
272
|
-
//
|
|
273
|
-
|
|
270
|
+
// source indicates origin:
|
|
271
|
+
// - 'local_user': This client made the change
|
|
272
|
+
// - 'remote_user': Another user/client made the change
|
|
273
|
+
// - 'remote_agent': AI agent made the change
|
|
274
|
+
// - 'system': Resync after error
|
|
275
|
+
|
|
276
|
+
// Node events
|
|
277
|
+
graph.on('nodeCreated', ({ nodeId, node, source }) => void)
|
|
278
|
+
graph.on('nodeUpdated', ({ nodeId, node, source }) => void)
|
|
279
|
+
graph.on('nodeDeleted', ({ nodeId, source }) => void)
|
|
280
|
+
|
|
281
|
+
// Edge events
|
|
282
|
+
graph.on('edgeCreated', ({ edgeId, edge, source }) => void)
|
|
283
|
+
graph.on('edgeDeleted', ({ edgeId, source }) => void)
|
|
284
|
+
|
|
285
|
+
// Graph metadata
|
|
286
|
+
graph.on('metaUpdated', ({ meta, source }) => void)
|
|
274
287
|
|
|
275
288
|
// Full state replacement (undo/redo, resync after error)
|
|
276
289
|
graph.on('reset', ({ source }) => void)
|
|
@@ -279,9 +292,19 @@ graph.on('reset', ({ source }) => void)
|
|
|
279
292
|
graph.on('syncError', (error: Error) => void)
|
|
280
293
|
```
|
|
281
294
|
|
|
282
|
-
**Usage
|
|
283
|
-
|
|
284
|
-
|
|
295
|
+
**Usage pattern:**
|
|
296
|
+
```typescript
|
|
297
|
+
// All UI updates happen in one place, regardless of change source
|
|
298
|
+
graph.on('nodeUpdated', ({ nodeId, node, source }) => {
|
|
299
|
+
renderNode(nodeId, node);
|
|
300
|
+
if (source === 'remote_agent') {
|
|
301
|
+
doLayout(); // AI might have added content
|
|
302
|
+
}
|
|
303
|
+
});
|
|
304
|
+
|
|
305
|
+
// Caller just makes the change - event handler does the UI work
|
|
306
|
+
graph.updateNode(nodeId, { prompt: 'expand this' });
|
|
307
|
+
```
|
|
285
308
|
|
|
286
309
|
---
|
|
287
310
|
|
|
@@ -321,9 +344,7 @@ interface RoolGraphUser { id: string; email: string; role: RoolGraphRole; }
|
|
|
321
344
|
interface UserResult { id: string; email: string; }
|
|
322
345
|
interface Account { id: string; email: string; plan: string; creditsBalance: number; }
|
|
323
346
|
interface MediaItem { uuid: string; url: string; contentType: string; size: number; }
|
|
324
|
-
|
|
325
|
-
type ImageAspectRatio = '1:1' | '3:4' | '4:3' | '9:16' | '16:9';
|
|
326
|
-
type GraphPatchSource = 'local' | 'remote_user' | 'remote_agent' | 'system';
|
|
347
|
+
type ChangeSource = 'local_user' | 'remote_user' | 'remote_agent' | 'system';
|
|
327
348
|
```
|
|
328
349
|
|
|
329
350
|
### Prompt Options
|
|
@@ -332,7 +353,6 @@ type GraphPatchSource = 'local' | 'remote_user' | 'remote_agent' | 'system';
|
|
|
332
353
|
interface PromptOptions {
|
|
333
354
|
nodeIds?: string[]; // Scope to specific nodes
|
|
334
355
|
edgeIds?: string[]; // Scope to specific edges
|
|
335
|
-
metadata?: Record<string, unknown>;
|
|
336
356
|
responseSchema?: Record<string, unknown>;
|
|
337
357
|
}
|
|
338
358
|
```
|
package/dist/graph.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { EventEmitter } from './event-emitter.js';
|
|
2
2
|
import type { GraphQLClient } from './graphql.js';
|
|
3
3
|
import type { MediaClient } from './media.js';
|
|
4
|
-
import type { RoolGraphData, RoolNode, RoolEdge, JSONPatchOp, GraphEvents, RoolGraphRole, RoolGraphUser, PromptOptions,
|
|
4
|
+
import type { RoolGraphData, RoolNode, RoolEdge, JSONPatchOp, GraphEvents, RoolGraphRole, RoolGraphUser, PromptOptions, MediaItem } from './types.js';
|
|
5
5
|
export declare function generateEntityId(): string;
|
|
6
6
|
interface GraphConfig {
|
|
7
7
|
id: string;
|
|
@@ -34,9 +34,6 @@ export declare class RoolGraph extends EventEmitter<GraphEvents> {
|
|
|
34
34
|
private onUnregisterFromEvents;
|
|
35
35
|
private undoStack;
|
|
36
36
|
private redoStack;
|
|
37
|
-
private pendingPatch;
|
|
38
|
-
private patchScheduled;
|
|
39
|
-
private patchSettled;
|
|
40
37
|
private _isSubscribed;
|
|
41
38
|
constructor(config: GraphConfig);
|
|
42
39
|
get id(): string;
|
|
@@ -76,13 +73,11 @@ export declare class RoolGraph extends EventEmitter<GraphEvents> {
|
|
|
76
73
|
canRedo(): boolean;
|
|
77
74
|
/**
|
|
78
75
|
* Undo to the previous checkpoint.
|
|
79
|
-
* Waits for any pending patches to settle before applying.
|
|
80
76
|
* @returns true if undo was performed
|
|
81
77
|
*/
|
|
82
78
|
undo(): Promise<boolean>;
|
|
83
79
|
/**
|
|
84
80
|
* Redo a previously undone action.
|
|
85
|
-
* Waits for any pending patches to settle before applying.
|
|
86
81
|
* @returns true if redo was performed
|
|
87
82
|
*/
|
|
88
83
|
redo(): Promise<boolean>;
|
|
@@ -109,15 +104,33 @@ export declare class RoolGraph extends EventEmitter<GraphEvents> {
|
|
|
109
104
|
*/
|
|
110
105
|
getNodeIds(): string[];
|
|
111
106
|
/**
|
|
112
|
-
*
|
|
107
|
+
* Create a new node with optional AI generation.
|
|
108
|
+
* @param options.type - The node type (required)
|
|
109
|
+
* @param options.fields - Node fields (optional). Use {{placeholder}} for AI-generated content.
|
|
110
|
+
* @param options.meta - Client-private metadata (optional). Hidden from AI operations.
|
|
111
|
+
* @param options.prompt - AI prompt for content generation (optional).
|
|
112
|
+
* @returns The generated node ID
|
|
113
113
|
*/
|
|
114
|
-
|
|
114
|
+
createNode(options: {
|
|
115
|
+
type: string;
|
|
116
|
+
fields?: Record<string, unknown>;
|
|
117
|
+
meta?: Record<string, unknown>;
|
|
118
|
+
prompt?: string;
|
|
119
|
+
}): string;
|
|
115
120
|
/**
|
|
116
121
|
* Update an existing node.
|
|
117
|
-
* @param
|
|
118
|
-
* @param
|
|
119
|
-
|
|
120
|
-
|
|
122
|
+
* @param nodeId - The ID of the node to update
|
|
123
|
+
* @param options.type - Optional new type for the node
|
|
124
|
+
* @param options.fields - Fields to add or update. Use {{placeholder}} for AI-generated content.
|
|
125
|
+
* @param options.meta - Client-private metadata to merge. Hidden from AI operations.
|
|
126
|
+
* @param options.prompt - AI prompt for content editing (optional).
|
|
127
|
+
*/
|
|
128
|
+
updateNode(nodeId: string, options: {
|
|
129
|
+
type?: string;
|
|
130
|
+
fields?: Record<string, unknown>;
|
|
131
|
+
meta?: Record<string, unknown>;
|
|
132
|
+
prompt?: string;
|
|
133
|
+
}): void;
|
|
121
134
|
/**
|
|
122
135
|
* Delete nodes by IDs.
|
|
123
136
|
* Also removes any edges connected to the deleted nodes.
|
|
@@ -127,12 +140,12 @@ export declare class RoolGraph extends EventEmitter<GraphEvents> {
|
|
|
127
140
|
* Create an edge between nodes.
|
|
128
141
|
* @returns The generated edge ID
|
|
129
142
|
*/
|
|
130
|
-
|
|
143
|
+
createEdge(sourceId: string, targetId: string, edgeType: string): string;
|
|
131
144
|
/**
|
|
132
145
|
* Remove edges between two nodes.
|
|
133
146
|
* @returns true if any edges were removed
|
|
134
147
|
*/
|
|
135
|
-
|
|
148
|
+
deleteEdge(sourceId: string, targetId: string): boolean;
|
|
136
149
|
/**
|
|
137
150
|
* Get parent node IDs (nodes that have edges pointing TO this node).
|
|
138
151
|
* @param edgeType - Optional filter by edge type
|
|
@@ -166,17 +179,8 @@ export declare class RoolGraph extends EventEmitter<GraphEvents> {
|
|
|
166
179
|
getAllMetadata(): Record<string, unknown>;
|
|
167
180
|
/**
|
|
168
181
|
* Send a prompt to the AI agent for graph manipulation.
|
|
169
|
-
* Waits for any pending patches to settle before sending.
|
|
170
182
|
*/
|
|
171
183
|
prompt(prompt: string, options?: PromptOptions): Promise<string | null>;
|
|
172
|
-
/**
|
|
173
|
-
* Generate an AI image.
|
|
174
|
-
*/
|
|
175
|
-
generateImage(prompt: string, aspectRatio?: ImageAspectRatio): Promise<ImageResult>;
|
|
176
|
-
/**
|
|
177
|
-
* Edit an existing image using AI.
|
|
178
|
-
*/
|
|
179
|
-
editImage(prompt: string, url: string): Promise<ImageResult>;
|
|
180
184
|
/**
|
|
181
185
|
* List users with access to this graph.
|
|
182
186
|
*/
|
|
@@ -217,16 +221,16 @@ export declare class RoolGraph extends EventEmitter<GraphEvents> {
|
|
|
217
221
|
* Use sparingly - prefer specific operations.
|
|
218
222
|
*/
|
|
219
223
|
getData(): RoolGraphData;
|
|
220
|
-
/**
|
|
221
|
-
* Apply a raw JSON patch.
|
|
222
|
-
* Use sparingly - prefer semantic operations.
|
|
223
|
-
*/
|
|
224
|
-
patch(operations: JSONPatchOp[]): void;
|
|
225
224
|
/**
|
|
226
225
|
* Handle a patch event from another client.
|
|
227
226
|
* @internal
|
|
228
227
|
*/
|
|
229
228
|
handleRemotePatch(patch: JSONPatchOp[], source?: 'user' | 'agent'): void;
|
|
229
|
+
/**
|
|
230
|
+
* Parse JSON patch operations and emit semantic events.
|
|
231
|
+
* @internal
|
|
232
|
+
*/
|
|
233
|
+
private emitSemanticEventsFromPatch;
|
|
230
234
|
/**
|
|
231
235
|
* Handle a full graph reload from server.
|
|
232
236
|
* @internal
|
|
@@ -237,7 +241,6 @@ export declare class RoolGraph extends EventEmitter<GraphEvents> {
|
|
|
237
241
|
* @internal
|
|
238
242
|
*/
|
|
239
243
|
handleRemoteRename(newName: string): void;
|
|
240
|
-
private sendPatch;
|
|
241
244
|
private resyncFromServer;
|
|
242
245
|
}
|
|
243
246
|
export {};
|
package/dist/graph.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../src/graph.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EACV,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,WAAW,EACX,aAAa,EACb,aAAa,EACb,aAAa,EACb,
|
|
1
|
+
{"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../src/graph.ts"],"names":[],"mappings":"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"}
|
package/dist/graph.js
CHANGED
|
@@ -36,10 +36,6 @@ export class RoolGraph extends EventEmitter {
|
|
|
36
36
|
// Undo/redo stacks
|
|
37
37
|
undoStack = [];
|
|
38
38
|
redoStack = [];
|
|
39
|
-
// Patch batching
|
|
40
|
-
pendingPatch = [];
|
|
41
|
-
patchScheduled = false;
|
|
42
|
-
patchSettled = Promise.resolve();
|
|
43
39
|
// Subscription state
|
|
44
40
|
_isSubscribed = false;
|
|
45
41
|
constructor(config) {
|
|
@@ -114,7 +110,6 @@ export class RoolGraph extends EventEmitter {
|
|
|
114
110
|
this.unsubscribe();
|
|
115
111
|
this.undoStack = [];
|
|
116
112
|
this.redoStack = [];
|
|
117
|
-
this.pendingPatch = [];
|
|
118
113
|
this.removeAllListeners();
|
|
119
114
|
}
|
|
120
115
|
// ===========================================================================
|
|
@@ -152,14 +147,11 @@ export class RoolGraph extends EventEmitter {
|
|
|
152
147
|
}
|
|
153
148
|
/**
|
|
154
149
|
* Undo to the previous checkpoint.
|
|
155
|
-
* Waits for any pending patches to settle before applying.
|
|
156
150
|
* @returns true if undo was performed
|
|
157
151
|
*/
|
|
158
152
|
async undo() {
|
|
159
153
|
if (!this.canUndo())
|
|
160
154
|
return false;
|
|
161
|
-
// Wait for pending patches before replacing state
|
|
162
|
-
await this.patchSettled;
|
|
163
155
|
// Save current state to redo stack
|
|
164
156
|
const currentEntry = {
|
|
165
157
|
timestamp: Date.now(),
|
|
@@ -173,7 +165,7 @@ export class RoolGraph extends EventEmitter {
|
|
|
173
165
|
// Sync to server - resync on failure
|
|
174
166
|
try {
|
|
175
167
|
await this.graphqlClient.setGraph(this._id, this._data);
|
|
176
|
-
this.emit('reset', { source: '
|
|
168
|
+
this.emit('reset', { source: 'local_user' });
|
|
177
169
|
}
|
|
178
170
|
catch (error) {
|
|
179
171
|
console.error('[Graph] Failed to sync undo to server:', error);
|
|
@@ -183,14 +175,11 @@ export class RoolGraph extends EventEmitter {
|
|
|
183
175
|
}
|
|
184
176
|
/**
|
|
185
177
|
* Redo a previously undone action.
|
|
186
|
-
* Waits for any pending patches to settle before applying.
|
|
187
178
|
* @returns true if redo was performed
|
|
188
179
|
*/
|
|
189
180
|
async redo() {
|
|
190
181
|
if (!this.canRedo())
|
|
191
182
|
return false;
|
|
192
|
-
// Wait for pending patches before replacing state
|
|
193
|
-
await this.patchSettled;
|
|
194
183
|
// Save current state to undo stack
|
|
195
184
|
const currentEntry = {
|
|
196
185
|
timestamp: Date.now(),
|
|
@@ -204,7 +193,7 @@ export class RoolGraph extends EventEmitter {
|
|
|
204
193
|
// Sync to server - resync on failure
|
|
205
194
|
try {
|
|
206
195
|
await this.graphqlClient.setGraph(this._id, this._data);
|
|
207
|
-
this.emit('reset', { source: '
|
|
196
|
+
this.emit('reset', { source: 'local_user' });
|
|
208
197
|
}
|
|
209
198
|
catch (error) {
|
|
210
199
|
console.error('[Graph] Failed to sync redo to server:', error);
|
|
@@ -253,66 +242,103 @@ export class RoolGraph extends EventEmitter {
|
|
|
253
242
|
return Object.keys(this._data.nodes);
|
|
254
243
|
}
|
|
255
244
|
/**
|
|
256
|
-
*
|
|
245
|
+
* Create a new node with optional AI generation.
|
|
246
|
+
* @param options.type - The node type (required)
|
|
247
|
+
* @param options.fields - Node fields (optional). Use {{placeholder}} for AI-generated content.
|
|
248
|
+
* @param options.meta - Client-private metadata (optional). Hidden from AI operations.
|
|
249
|
+
* @param options.prompt - AI prompt for content generation (optional).
|
|
250
|
+
* @returns The generated node ID
|
|
257
251
|
*/
|
|
258
|
-
|
|
252
|
+
createNode(options) {
|
|
253
|
+
const nodeId = generateEntityId();
|
|
254
|
+
const { type, fields, meta, prompt } = options;
|
|
255
|
+
// Build the node for local state
|
|
256
|
+
const node = { type, _meta: meta ?? {}, ...fields };
|
|
257
|
+
// Update local state immediately (optimistic)
|
|
259
258
|
this._data.nodes[nodeId] = node;
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
this.
|
|
259
|
+
this.emit('nodeCreated', { nodeId, node, source: 'local_user' });
|
|
260
|
+
// Fire-and-forget server call - errors trigger resync
|
|
261
|
+
this.graphqlClient.createNode(this.id, nodeId, type, fields, meta, prompt)
|
|
262
|
+
.catch((error) => {
|
|
263
|
+
console.error('[Graph] Failed to create node:', error);
|
|
264
|
+
this.resyncFromServer(error instanceof Error ? error : new Error(String(error)));
|
|
265
|
+
});
|
|
266
|
+
return nodeId;
|
|
263
267
|
}
|
|
264
268
|
/**
|
|
265
269
|
* Update an existing node.
|
|
266
|
-
* @param
|
|
267
|
-
* @param
|
|
270
|
+
* @param nodeId - The ID of the node to update
|
|
271
|
+
* @param options.type - Optional new type for the node
|
|
272
|
+
* @param options.fields - Fields to add or update. Use {{placeholder}} for AI-generated content.
|
|
273
|
+
* @param options.meta - Client-private metadata to merge. Hidden from AI operations.
|
|
274
|
+
* @param options.prompt - AI prompt for content editing (optional).
|
|
268
275
|
*/
|
|
269
|
-
updateNode(nodeId,
|
|
276
|
+
updateNode(nodeId, options) {
|
|
270
277
|
const node = this._data.nodes[nodeId];
|
|
271
278
|
if (!node) {
|
|
272
279
|
throw new Error(`Node ${nodeId} not found for update`);
|
|
273
280
|
}
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
let ops;
|
|
279
|
-
if (updateKeys.length === 1 && updateKeys[0] === '_meta' && updates._meta) {
|
|
280
|
-
// "add" is an upsert operation, so it works regardless of whether the _meta exists or not
|
|
281
|
-
ops = [{ op: 'add', path: `/nodes/${nodeId}/_meta`, value: updates._meta }];
|
|
281
|
+
const { type, fields, meta } = options;
|
|
282
|
+
// Build local updates
|
|
283
|
+
if (type) {
|
|
284
|
+
node.type = type;
|
|
282
285
|
}
|
|
283
|
-
|
|
284
|
-
|
|
286
|
+
if (fields) {
|
|
287
|
+
Object.assign(node, fields);
|
|
285
288
|
}
|
|
286
|
-
|
|
287
|
-
|
|
289
|
+
if (meta) {
|
|
290
|
+
node._meta = { ...node._meta, ...meta };
|
|
291
|
+
}
|
|
292
|
+
// Emit semantic event with updated node
|
|
293
|
+
if (type || fields || meta) {
|
|
294
|
+
this.emit('nodeUpdated', { nodeId, node, source: 'local_user' });
|
|
295
|
+
}
|
|
296
|
+
// Fire-and-forget server call - errors trigger resync
|
|
297
|
+
this.graphqlClient.updateNode(this.id, nodeId, type, fields, meta, options.prompt)
|
|
298
|
+
.catch((error) => {
|
|
299
|
+
console.error('[Graph] Failed to update node:', error);
|
|
300
|
+
this.resyncFromServer(error instanceof Error ? error : new Error(String(error)));
|
|
301
|
+
});
|
|
288
302
|
}
|
|
289
303
|
/**
|
|
290
304
|
* Delete nodes by IDs.
|
|
291
305
|
* Also removes any edges connected to the deleted nodes.
|
|
292
306
|
*/
|
|
293
307
|
deleteNodes(nodeIds) {
|
|
294
|
-
|
|
308
|
+
if (nodeIds.length === 0)
|
|
309
|
+
return;
|
|
295
310
|
const nodeIdSet = new Set(nodeIds);
|
|
296
|
-
|
|
311
|
+
const deletedEdgeIds = [];
|
|
312
|
+
const deletedNodeIds = [];
|
|
313
|
+
// Remove edges connected to any deleted node (local state)
|
|
297
314
|
for (const [edgeId, edge] of Object.entries(this._data.edges)) {
|
|
298
315
|
const hasDeletedSource = edge.sources.some(s => nodeIdSet.has(s));
|
|
299
316
|
const hasDeletedTarget = edge.targets.some(t => nodeIdSet.has(t));
|
|
300
317
|
if (hasDeletedSource || hasDeletedTarget) {
|
|
301
318
|
delete this._data.edges[edgeId];
|
|
302
|
-
|
|
319
|
+
deletedEdgeIds.push(edgeId);
|
|
303
320
|
}
|
|
304
321
|
}
|
|
305
|
-
// Remove nodes
|
|
322
|
+
// Remove nodes (local state)
|
|
306
323
|
for (const nodeId of nodeIds) {
|
|
307
324
|
if (this._data.nodes[nodeId]) {
|
|
308
325
|
delete this._data.nodes[nodeId];
|
|
309
|
-
|
|
326
|
+
deletedNodeIds.push(nodeId);
|
|
310
327
|
}
|
|
311
328
|
}
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
this.emit('
|
|
329
|
+
// Emit semantic events
|
|
330
|
+
for (const edgeId of deletedEdgeIds) {
|
|
331
|
+
this.emit('edgeDeleted', { edgeId, source: 'local_user' });
|
|
315
332
|
}
|
|
333
|
+
for (const nodeId of deletedNodeIds) {
|
|
334
|
+
this.emit('nodeDeleted', { nodeId, source: 'local_user' });
|
|
335
|
+
}
|
|
336
|
+
// Fire-and-forget server call - errors trigger resync
|
|
337
|
+
this.graphqlClient.deleteNodes(this.id, nodeIds)
|
|
338
|
+
.catch((error) => {
|
|
339
|
+
console.error('[Graph] Failed to delete nodes:', error);
|
|
340
|
+
this.resyncFromServer(error instanceof Error ? error : new Error(String(error)));
|
|
341
|
+
});
|
|
316
342
|
}
|
|
317
343
|
// ===========================================================================
|
|
318
344
|
// Edge Operations
|
|
@@ -321,7 +347,7 @@ export class RoolGraph extends EventEmitter {
|
|
|
321
347
|
* Create an edge between nodes.
|
|
322
348
|
* @returns The generated edge ID
|
|
323
349
|
*/
|
|
324
|
-
|
|
350
|
+
createEdge(sourceId, targetId, edgeType) {
|
|
325
351
|
const edgeId = generateEntityId();
|
|
326
352
|
const edge = {
|
|
327
353
|
sources: [sourceId],
|
|
@@ -329,32 +355,41 @@ export class RoolGraph extends EventEmitter {
|
|
|
329
355
|
type: edgeType,
|
|
330
356
|
_meta: {},
|
|
331
357
|
};
|
|
358
|
+
// Update local state immediately
|
|
332
359
|
this._data.edges[edgeId] = edge;
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
this.
|
|
360
|
+
this.emit('edgeCreated', { edgeId, edge, source: 'local_user' });
|
|
361
|
+
// Fire-and-forget server call - errors trigger resync
|
|
362
|
+
this.graphqlClient.createEdge(this.id, edgeId, sourceId, targetId, edgeType)
|
|
363
|
+
.catch((error) => {
|
|
364
|
+
console.error('[Graph] Failed to create edge:', error);
|
|
365
|
+
this.resyncFromServer(error instanceof Error ? error : new Error(String(error)));
|
|
366
|
+
});
|
|
336
367
|
return edgeId;
|
|
337
368
|
}
|
|
338
369
|
/**
|
|
339
370
|
* Remove edges between two nodes.
|
|
340
371
|
* @returns true if any edges were removed
|
|
341
372
|
*/
|
|
342
|
-
|
|
343
|
-
const
|
|
344
|
-
|
|
373
|
+
deleteEdge(sourceId, targetId) {
|
|
374
|
+
const deletedEdgeIds = [];
|
|
375
|
+
// Update local state
|
|
345
376
|
for (const [edgeId, edge] of Object.entries(this._data.edges)) {
|
|
346
377
|
if (edge.sources.includes(sourceId) && edge.targets.includes(targetId)) {
|
|
347
378
|
delete this._data.edges[edgeId];
|
|
348
|
-
|
|
349
|
-
removedEdgeIds.push(edgeId);
|
|
379
|
+
deletedEdgeIds.push(edgeId);
|
|
350
380
|
}
|
|
351
381
|
}
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
this.emit('
|
|
355
|
-
return true;
|
|
382
|
+
// Emit semantic events
|
|
383
|
+
for (const edgeId of deletedEdgeIds) {
|
|
384
|
+
this.emit('edgeDeleted', { edgeId, source: 'local_user' });
|
|
356
385
|
}
|
|
357
|
-
|
|
386
|
+
// Fire-and-forget server call - errors trigger resync
|
|
387
|
+
this.graphqlClient.deleteEdge(this.id, sourceId, targetId)
|
|
388
|
+
.catch((error) => {
|
|
389
|
+
console.error('[Graph] Failed to delete edge:', error);
|
|
390
|
+
this.resyncFromServer(error instanceof Error ? error : new Error(String(error)));
|
|
391
|
+
});
|
|
392
|
+
return deletedEdgeIds.length > 0;
|
|
358
393
|
}
|
|
359
394
|
/**
|
|
360
395
|
* Get parent node IDs (nodes that have edges pointing TO this node).
|
|
@@ -400,7 +435,13 @@ export class RoolGraph extends EventEmitter {
|
|
|
400
435
|
this._data._meta = {};
|
|
401
436
|
}
|
|
402
437
|
this._data._meta[key] = value;
|
|
403
|
-
this.
|
|
438
|
+
this.emit('metaUpdated', { meta: this._data._meta, source: 'local_user' });
|
|
439
|
+
// Fire-and-forget server call - errors trigger resync
|
|
440
|
+
this.graphqlClient.setGraphMeta(this.id, this._data._meta)
|
|
441
|
+
.catch((error) => {
|
|
442
|
+
console.error('[Graph] Failed to set graph meta:', error);
|
|
443
|
+
this.resyncFromServer(error instanceof Error ? error : new Error(String(error)));
|
|
444
|
+
});
|
|
404
445
|
}
|
|
405
446
|
/**
|
|
406
447
|
* Get a metadata value.
|
|
@@ -419,24 +460,10 @@ export class RoolGraph extends EventEmitter {
|
|
|
419
460
|
// ===========================================================================
|
|
420
461
|
/**
|
|
421
462
|
* Send a prompt to the AI agent for graph manipulation.
|
|
422
|
-
* Waits for any pending patches to settle before sending.
|
|
423
463
|
*/
|
|
424
464
|
async prompt(prompt, options) {
|
|
425
|
-
await this.patchSettled;
|
|
426
465
|
return this.graphqlClient.promptGraph(this._id, prompt, options);
|
|
427
466
|
}
|
|
428
|
-
/**
|
|
429
|
-
* Generate an AI image.
|
|
430
|
-
*/
|
|
431
|
-
async generateImage(prompt, aspectRatio) {
|
|
432
|
-
return this.graphqlClient.generateImage(this._id, prompt, aspectRatio);
|
|
433
|
-
}
|
|
434
|
-
/**
|
|
435
|
-
* Edit an existing image using AI.
|
|
436
|
-
*/
|
|
437
|
-
async editImage(prompt, url) {
|
|
438
|
-
return this.graphqlClient.editImage(this._id, prompt, url);
|
|
439
|
-
}
|
|
440
467
|
// ===========================================================================
|
|
441
468
|
// Collaboration
|
|
442
469
|
// ===========================================================================
|
|
@@ -501,21 +528,6 @@ export class RoolGraph extends EventEmitter {
|
|
|
501
528
|
getData() {
|
|
502
529
|
return this._data;
|
|
503
530
|
}
|
|
504
|
-
/**
|
|
505
|
-
* Apply a raw JSON patch.
|
|
506
|
-
* Use sparingly - prefer semantic operations.
|
|
507
|
-
*/
|
|
508
|
-
patch(operations) {
|
|
509
|
-
try {
|
|
510
|
-
this._data = immutableJSONPatch(this._data, operations);
|
|
511
|
-
}
|
|
512
|
-
catch (error) {
|
|
513
|
-
console.error('[Graph] Failed to apply patch:', error);
|
|
514
|
-
return;
|
|
515
|
-
}
|
|
516
|
-
this.sendPatch(operations);
|
|
517
|
-
this.emit('patch', { ops: operations, source: 'local' });
|
|
518
|
-
}
|
|
519
531
|
// ===========================================================================
|
|
520
532
|
// Event Handlers (called by RoolClient for routing)
|
|
521
533
|
// ===========================================================================
|
|
@@ -533,8 +545,66 @@ export class RoolGraph extends EventEmitter {
|
|
|
533
545
|
this.resyncFromServer(error instanceof Error ? error : new Error(String(error))).catch(() => { });
|
|
534
546
|
return;
|
|
535
547
|
}
|
|
536
|
-
|
|
537
|
-
|
|
548
|
+
// Parse patch operations and emit semantic events
|
|
549
|
+
const changeSource = source === 'agent' ? 'remote_agent' : 'remote_user';
|
|
550
|
+
this.emitSemanticEventsFromPatch(patch, changeSource);
|
|
551
|
+
}
|
|
552
|
+
/**
|
|
553
|
+
* Parse JSON patch operations and emit semantic events.
|
|
554
|
+
* @internal
|
|
555
|
+
*/
|
|
556
|
+
emitSemanticEventsFromPatch(patch, source) {
|
|
557
|
+
// Track which nodes have been updated (to avoid duplicate events)
|
|
558
|
+
const updatedNodes = new Set();
|
|
559
|
+
for (const op of patch) {
|
|
560
|
+
const { path } = op;
|
|
561
|
+
// Node operations
|
|
562
|
+
if (path.startsWith('/nodes/')) {
|
|
563
|
+
const parts = path.split('/');
|
|
564
|
+
const nodeId = parts[2];
|
|
565
|
+
if (parts.length === 3) {
|
|
566
|
+
// /nodes/{nodeId} - full node add or remove
|
|
567
|
+
if (op.op === 'add') {
|
|
568
|
+
const node = this._data.nodes[nodeId];
|
|
569
|
+
if (node) {
|
|
570
|
+
this.emit('nodeCreated', { nodeId, node, source });
|
|
571
|
+
}
|
|
572
|
+
}
|
|
573
|
+
else if (op.op === 'remove') {
|
|
574
|
+
this.emit('nodeDeleted', { nodeId, source });
|
|
575
|
+
}
|
|
576
|
+
}
|
|
577
|
+
else if (parts.length > 3 && !updatedNodes.has(nodeId)) {
|
|
578
|
+
// /nodes/{nodeId}/{field} - field update
|
|
579
|
+
const node = this._data.nodes[nodeId];
|
|
580
|
+
if (node) {
|
|
581
|
+
this.emit('nodeUpdated', { nodeId, node, source });
|
|
582
|
+
updatedNodes.add(nodeId);
|
|
583
|
+
}
|
|
584
|
+
}
|
|
585
|
+
}
|
|
586
|
+
// Edge operations
|
|
587
|
+
else if (path.startsWith('/edges/')) {
|
|
588
|
+
const parts = path.split('/');
|
|
589
|
+
const edgeId = parts[2];
|
|
590
|
+
if (parts.length === 3) {
|
|
591
|
+
// /edges/{edgeId} - full edge add or remove
|
|
592
|
+
if (op.op === 'add') {
|
|
593
|
+
const edge = this._data.edges[edgeId];
|
|
594
|
+
if (edge) {
|
|
595
|
+
this.emit('edgeCreated', { edgeId, edge, source });
|
|
596
|
+
}
|
|
597
|
+
}
|
|
598
|
+
else if (op.op === 'remove') {
|
|
599
|
+
this.emit('edgeDeleted', { edgeId, source });
|
|
600
|
+
}
|
|
601
|
+
}
|
|
602
|
+
}
|
|
603
|
+
// Graph metadata
|
|
604
|
+
else if (path === '/_meta' || path.startsWith('/_meta/')) {
|
|
605
|
+
this.emit('metaUpdated', { meta: this._data._meta, source });
|
|
606
|
+
}
|
|
607
|
+
}
|
|
538
608
|
}
|
|
539
609
|
/**
|
|
540
610
|
* Handle a full graph reload from server.
|
|
@@ -554,32 +624,6 @@ export class RoolGraph extends EventEmitter {
|
|
|
554
624
|
// ===========================================================================
|
|
555
625
|
// Private Methods
|
|
556
626
|
// ===========================================================================
|
|
557
|
-
sendPatch(patch) {
|
|
558
|
-
this.pendingPatch.push(...patch);
|
|
559
|
-
if (!this.patchScheduled) {
|
|
560
|
-
this.patchScheduled = true;
|
|
561
|
-
// Chain onto patchSettled so callers can await all pending patches
|
|
562
|
-
this.patchSettled = this.patchSettled.then(() => new Promise((resolve) => {
|
|
563
|
-
queueMicrotask(() => {
|
|
564
|
-
const batch = this.pendingPatch;
|
|
565
|
-
this.pendingPatch = [];
|
|
566
|
-
this.patchScheduled = false;
|
|
567
|
-
if (batch.length > 0) {
|
|
568
|
-
this.graphqlClient
|
|
569
|
-
.patch(this._id, batch)
|
|
570
|
-
.catch((error) => {
|
|
571
|
-
console.error('[Graph] Failed to send patch:', error);
|
|
572
|
-
this.resyncFromServer(error instanceof Error ? error : new Error(String(error)));
|
|
573
|
-
})
|
|
574
|
-
.finally(resolve);
|
|
575
|
-
}
|
|
576
|
-
else {
|
|
577
|
-
resolve();
|
|
578
|
-
}
|
|
579
|
-
});
|
|
580
|
-
}));
|
|
581
|
-
}
|
|
582
|
-
}
|
|
583
627
|
async resyncFromServer(originalError) {
|
|
584
628
|
console.warn('[Graph] Resyncing from server after sync failure');
|
|
585
629
|
try {
|
package/dist/graph.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph.js","sourceRoot":"","sources":["../src/graph.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"graph.js","sourceRoot":"","sources":["../src/graph.ts"],"names":[],"mappings":"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"}
|
package/dist/graphql.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { RoolGraphData, RoolGraphInfo,
|
|
1
|
+
import type { RoolGraphData, RoolGraphInfo, Account, UserResult, RoolGraphUser, PromptOptions } from './types.js';
|
|
2
2
|
import type { AuthManager } from './auth.js';
|
|
3
3
|
export interface GraphQLClientConfig {
|
|
4
4
|
graphqlUrl: string;
|
|
@@ -14,10 +14,13 @@ export declare class GraphQLClient {
|
|
|
14
14
|
setGraph(graphId: string, graph: RoolGraphData): Promise<void>;
|
|
15
15
|
deleteGraph(graphId: string): Promise<void>;
|
|
16
16
|
renameGraph(graphId: string, name: string): Promise<void>;
|
|
17
|
-
|
|
17
|
+
setGraphMeta(graphId: string, meta: Record<string, unknown>): Promise<void>;
|
|
18
|
+
createEdge(graphId: string, id: string, source: string, target: string, type: string): Promise<void>;
|
|
19
|
+
deleteEdge(graphId: string, source: string, target: string): Promise<void>;
|
|
20
|
+
deleteNodes(graphId: string, ids: string[]): Promise<void>;
|
|
21
|
+
createNode(graphId: string, id: string, nodeType: string, fields?: Record<string, unknown>, meta?: Record<string, unknown>, prompt?: string): Promise<void>;
|
|
22
|
+
updateNode(graphId: string, id: string, nodeType?: string, fields?: Record<string, unknown>, meta?: Record<string, unknown>, prompt?: string): Promise<void>;
|
|
18
23
|
promptGraph(graphId: string, prompt: string, options?: PromptOptions): Promise<string | null>;
|
|
19
|
-
generateImage(graphId: string, prompt: string, aspectRatio?: ImageAspectRatio): Promise<ImageResult>;
|
|
20
|
-
editImage(graphId: string, prompt: string, url: string): Promise<ImageResult>;
|
|
21
24
|
getAccount(): Promise<Account>;
|
|
22
25
|
searchUser(email: string): Promise<UserResult | null>;
|
|
23
26
|
listGraphUsers(graphId: string): Promise<RoolGraphUser[]>;
|
package/dist/graphql.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graphql.d.ts","sourceRoot":"","sources":["../src/graphql.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,aAAa,EACb,aAAa,EACb,
|
|
1
|
+
{"version":3,"file":"graphql.d.ts","sourceRoot":"","sources":["../src/graphql.ts"],"names":[],"mappings":"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"}
|
package/dist/graphql.js
CHANGED
|
@@ -72,15 +72,87 @@ export class GraphQLClient {
|
|
|
72
72
|
connectionId: this.config.getConnectionId(),
|
|
73
73
|
});
|
|
74
74
|
}
|
|
75
|
-
async
|
|
75
|
+
async setGraphMeta(graphId, meta) {
|
|
76
76
|
const mutation = `
|
|
77
|
-
mutation
|
|
78
|
-
|
|
77
|
+
mutation SetGraphMeta($graphId: String!, $meta: String!, $connectionId: String) {
|
|
78
|
+
setGraphMeta(graphId: $graphId, meta: $meta, connectionId: $connectionId)
|
|
79
79
|
}
|
|
80
80
|
`;
|
|
81
81
|
await this.request(mutation, {
|
|
82
82
|
graphId,
|
|
83
|
-
|
|
83
|
+
meta: JSON.stringify(meta),
|
|
84
|
+
connectionId: this.config.getConnectionId(),
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
async createEdge(graphId, id, source, target, type) {
|
|
88
|
+
const mutation = `
|
|
89
|
+
mutation CreateEdge($graphId: String!, $id: String!, $source: String!, $target: String!, $type: String!, $connectionId: String) {
|
|
90
|
+
createEdge(graphId: $graphId, id: $id, source: $source, target: $target, type: $type, connectionId: $connectionId)
|
|
91
|
+
}
|
|
92
|
+
`;
|
|
93
|
+
await this.request(mutation, {
|
|
94
|
+
graphId,
|
|
95
|
+
id,
|
|
96
|
+
source,
|
|
97
|
+
target,
|
|
98
|
+
type,
|
|
99
|
+
connectionId: this.config.getConnectionId(),
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
async deleteEdge(graphId, source, target) {
|
|
103
|
+
const mutation = `
|
|
104
|
+
mutation DeleteEdge($graphId: String!, $source: String!, $target: String!, $connectionId: String) {
|
|
105
|
+
deleteEdge(graphId: $graphId, source: $source, target: $target, connectionId: $connectionId)
|
|
106
|
+
}
|
|
107
|
+
`;
|
|
108
|
+
await this.request(mutation, {
|
|
109
|
+
graphId,
|
|
110
|
+
source,
|
|
111
|
+
target,
|
|
112
|
+
connectionId: this.config.getConnectionId(),
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
async deleteNodes(graphId, ids) {
|
|
116
|
+
const mutation = `
|
|
117
|
+
mutation DeleteNodes($graphId: String!, $ids: [String!]!, $connectionId: String) {
|
|
118
|
+
deleteNodes(graphId: $graphId, ids: $ids, connectionId: $connectionId)
|
|
119
|
+
}
|
|
120
|
+
`;
|
|
121
|
+
await this.request(mutation, {
|
|
122
|
+
graphId,
|
|
123
|
+
ids,
|
|
124
|
+
connectionId: this.config.getConnectionId(),
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
async createNode(graphId, id, nodeType, fields, meta, prompt) {
|
|
128
|
+
const mutation = `
|
|
129
|
+
mutation CreateNode($graphId: String!, $id: String!, $nodeType: String!, $fields: String, $meta: String, $prompt: String, $connectionId: String) {
|
|
130
|
+
createNode(graphId: $graphId, id: $id, nodeType: $nodeType, fields: $fields, meta: $meta, prompt: $prompt, connectionId: $connectionId)
|
|
131
|
+
}
|
|
132
|
+
`;
|
|
133
|
+
await this.request(mutation, {
|
|
134
|
+
graphId,
|
|
135
|
+
id,
|
|
136
|
+
nodeType,
|
|
137
|
+
fields: fields ? JSON.stringify(fields) : undefined,
|
|
138
|
+
meta: meta ? JSON.stringify(meta) : undefined,
|
|
139
|
+
prompt,
|
|
140
|
+
connectionId: this.config.getConnectionId(),
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
async updateNode(graphId, id, nodeType, fields, meta, prompt) {
|
|
144
|
+
const mutation = `
|
|
145
|
+
mutation UpdateNode($graphId: String!, $id: String!, $nodeType: String, $fields: String, $meta: String, $prompt: String, $connectionId: String) {
|
|
146
|
+
updateNode(graphId: $graphId, id: $id, nodeType: $nodeType, fields: $fields, meta: $meta, prompt: $prompt, connectionId: $connectionId)
|
|
147
|
+
}
|
|
148
|
+
`;
|
|
149
|
+
await this.request(mutation, {
|
|
150
|
+
graphId,
|
|
151
|
+
id,
|
|
152
|
+
nodeType,
|
|
153
|
+
fields: fields ? JSON.stringify(fields) : undefined,
|
|
154
|
+
meta: meta ? JSON.stringify(meta) : undefined,
|
|
155
|
+
prompt,
|
|
84
156
|
connectionId: this.config.getConnectionId(),
|
|
85
157
|
});
|
|
86
158
|
}
|
|
@@ -94,16 +166,16 @@ export class GraphQLClient {
|
|
|
94
166
|
$prompt: String!,
|
|
95
167
|
$nodeIds: [String!],
|
|
96
168
|
$edgeIds: [String!],
|
|
97
|
-
$
|
|
98
|
-
$
|
|
169
|
+
$responseSchema: JSON,
|
|
170
|
+
$connectionId: String
|
|
99
171
|
) {
|
|
100
172
|
promptGraph(
|
|
101
173
|
graphId: $graphId,
|
|
102
174
|
prompt: $prompt,
|
|
103
175
|
nodeIds: $nodeIds,
|
|
104
176
|
edgeIds: $edgeIds,
|
|
105
|
-
|
|
106
|
-
|
|
177
|
+
responseSchema: $responseSchema,
|
|
178
|
+
connectionId: $connectionId
|
|
107
179
|
)
|
|
108
180
|
}
|
|
109
181
|
`;
|
|
@@ -112,45 +184,12 @@ export class GraphQLClient {
|
|
|
112
184
|
prompt,
|
|
113
185
|
nodeIds: options.nodeIds ?? [],
|
|
114
186
|
edgeIds: options.edgeIds ?? [],
|
|
115
|
-
metadata: options.metadata,
|
|
116
187
|
responseSchema: options.responseSchema,
|
|
188
|
+
connectionId: this.config.getConnectionId(),
|
|
117
189
|
});
|
|
118
190
|
return response.promptGraph ?? null;
|
|
119
191
|
}
|
|
120
192
|
// ===========================================================================
|
|
121
|
-
// Image Operations (Rool Canvas specific)
|
|
122
|
-
// ===========================================================================
|
|
123
|
-
async generateImage(graphId, prompt, aspectRatio) {
|
|
124
|
-
const query = `
|
|
125
|
-
query GenerateImage($graphId: String!, $prompt: String!, $aspectRatio: String) {
|
|
126
|
-
generateImage(graphId: $graphId, prompt: $prompt, aspectRatio: $aspectRatio) {
|
|
127
|
-
url
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
`;
|
|
131
|
-
const response = await this.request(query, {
|
|
132
|
-
graphId,
|
|
133
|
-
prompt,
|
|
134
|
-
aspectRatio,
|
|
135
|
-
});
|
|
136
|
-
return response.generateImage;
|
|
137
|
-
}
|
|
138
|
-
async editImage(graphId, prompt, url) {
|
|
139
|
-
const query = `
|
|
140
|
-
query EditImage($graphId: String!, $prompt: String!, $url: String!) {
|
|
141
|
-
editImage(graphId: $graphId, prompt: $prompt, url: $url) {
|
|
142
|
-
url
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
`;
|
|
146
|
-
const response = await this.request(query, {
|
|
147
|
-
graphId,
|
|
148
|
-
prompt,
|
|
149
|
-
url,
|
|
150
|
-
});
|
|
151
|
-
return response.editImage;
|
|
152
|
-
}
|
|
153
|
-
// ===========================================================================
|
|
154
193
|
// User / Collaboration Operations
|
|
155
194
|
// ===========================================================================
|
|
156
195
|
async getAccount() {
|
package/dist/graphql.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graphql.js","sourceRoot":"","sources":["../src/graphql.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,iBAAiB;AACjB,6DAA6D;AAC7D,gFAAgF;AAEhF,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"graphql.js","sourceRoot":"","sources":["../src/graphql.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { RoolClient } from './client.js';
|
|
2
2
|
export { RoolGraph, generateEntityId } from './graph.js';
|
|
3
3
|
export { EventEmitter } from './event-emitter.js';
|
|
4
|
-
export type { RoolNode, RoolEdge, RoolGraphData, JSONPatchOp, RoolGraphInfo, RoolGraphRole, UserResult, RoolGraphUser, Account, UserInfo, MediaItem, PromptOptions,
|
|
4
|
+
export type { RoolNode, RoolEdge, RoolGraphData, JSONPatchOp, RoolGraphInfo, RoolGraphRole, UserResult, RoolGraphUser, Account, UserInfo, MediaItem, PromptOptions, ConnectionState, GraphEvent, GraphEventType, RoolClientConfig, RoolClientEvents, GraphEvents, AuthTokens, AuthProvider, } from './types.js';
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -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,SAAS,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAGzD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD,YAAY,EAEV,QAAQ,EACR,QAAQ,EACR,aAAa,EACb,WAAW,EACX,aAAa,EACb,aAAa,EAGb,UAAU,EACV,aAAa,EACb,OAAO,EACP,QAAQ,EAGR,SAAS,EAGT,aAAa,EAGb,
|
|
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,SAAS,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAGzD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD,YAAY,EAEV,QAAQ,EACR,QAAQ,EACR,aAAa,EACb,WAAW,EACX,aAAa,EACb,aAAa,EAGb,UAAU,EACV,aAAa,EACb,OAAO,EACP,QAAQ,EAGR,SAAS,EAGT,aAAa,EAGb,eAAe,EACf,UAAU,EACV,cAAc,EAGd,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,EACX,UAAU,EACV,YAAY,GACb,MAAM,YAAY,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -83,13 +83,8 @@ export interface MediaItem {
|
|
|
83
83
|
export interface PromptOptions {
|
|
84
84
|
nodeIds?: string[];
|
|
85
85
|
edgeIds?: string[];
|
|
86
|
-
metadata?: Record<string, unknown>;
|
|
87
86
|
responseSchema?: Record<string, unknown>;
|
|
88
87
|
}
|
|
89
|
-
export interface ImageResult {
|
|
90
|
-
url: string;
|
|
91
|
-
}
|
|
92
|
-
export type ImageAspectRatio = '1:1' | '3:4' | '4:3' | '9:16' | '16:9';
|
|
93
88
|
export type ConnectionState = 'connected' | 'disconnected' | 'reconnecting';
|
|
94
89
|
export type GraphEventSource = 'user' | 'agent';
|
|
95
90
|
export type GraphEventType = 'graph_patched' | 'graph_changed' | 'graph_name_changed' | 'graph_created' | 'graph_deleted';
|
|
@@ -157,28 +152,70 @@ export interface RoolClientEvents {
|
|
|
157
152
|
/** Index signature for EventEmitter compatibility */
|
|
158
153
|
[key: string]: (...args: any[]) => void;
|
|
159
154
|
}
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
155
|
+
/**
|
|
156
|
+
* Source of a graph change event.
|
|
157
|
+
* - 'local_user': This client made the change
|
|
158
|
+
* - 'remote_user': Another user/client made the change
|
|
159
|
+
* - 'remote_agent': AI agent made the change
|
|
160
|
+
* - 'system': Resync after error
|
|
161
|
+
*/
|
|
162
|
+
export type ChangeSource = 'local_user' | 'remote_user' | 'remote_agent' | 'system';
|
|
163
|
+
export interface NodeCreatedEvent {
|
|
164
|
+
nodeId: string;
|
|
165
|
+
node: RoolNode;
|
|
166
|
+
source: ChangeSource;
|
|
167
|
+
}
|
|
168
|
+
export interface NodeUpdatedEvent {
|
|
169
|
+
nodeId: string;
|
|
170
|
+
node: RoolNode;
|
|
171
|
+
source: ChangeSource;
|
|
172
|
+
}
|
|
173
|
+
export interface NodeDeletedEvent {
|
|
174
|
+
nodeId: string;
|
|
175
|
+
source: ChangeSource;
|
|
176
|
+
}
|
|
177
|
+
export interface EdgeCreatedEvent {
|
|
178
|
+
edgeId: string;
|
|
179
|
+
edge: RoolEdge;
|
|
180
|
+
source: ChangeSource;
|
|
181
|
+
}
|
|
182
|
+
export interface EdgeDeletedEvent {
|
|
183
|
+
edgeId: string;
|
|
184
|
+
source: ChangeSource;
|
|
185
|
+
}
|
|
186
|
+
export interface MetaUpdatedEvent {
|
|
187
|
+
meta: Record<string, unknown>;
|
|
188
|
+
source: ChangeSource;
|
|
164
189
|
}
|
|
165
190
|
export interface GraphResetEvent {
|
|
166
|
-
source:
|
|
191
|
+
source: ChangeSource;
|
|
167
192
|
}
|
|
168
193
|
/**
|
|
169
194
|
* Graph-level events (content changes within a specific graph).
|
|
170
195
|
*
|
|
171
|
-
*
|
|
172
|
-
* - `
|
|
173
|
-
* - `
|
|
196
|
+
* Semantic events describe what changed:
|
|
197
|
+
* - `nodeCreated`, `nodeUpdated`, `nodeDeleted`: Node changes
|
|
198
|
+
* - `edgeCreated`, `edgeDeleted`: Edge changes
|
|
199
|
+
* - `metaUpdated`: Graph metadata changes
|
|
200
|
+
* - `reset`: Full state replacement (undo/redo, resync)
|
|
174
201
|
*
|
|
175
|
-
*
|
|
176
|
-
*
|
|
202
|
+
* Events fire for both local changes and remote changes (from other users or AI agents).
|
|
203
|
+
* Use the `source` field to determine the origin of the change.
|
|
177
204
|
*/
|
|
178
205
|
export interface GraphEvents {
|
|
179
|
-
/**
|
|
180
|
-
|
|
181
|
-
/**
|
|
206
|
+
/** A new node was created */
|
|
207
|
+
nodeCreated: (event: NodeCreatedEvent) => void;
|
|
208
|
+
/** An existing node was updated */
|
|
209
|
+
nodeUpdated: (event: NodeUpdatedEvent) => void;
|
|
210
|
+
/** A node was deleted */
|
|
211
|
+
nodeDeleted: (event: NodeDeletedEvent) => void;
|
|
212
|
+
/** A new edge was created */
|
|
213
|
+
edgeCreated: (event: EdgeCreatedEvent) => void;
|
|
214
|
+
/** An edge was deleted */
|
|
215
|
+
edgeDeleted: (event: EdgeDeletedEvent) => void;
|
|
216
|
+
/** Graph metadata was updated */
|
|
217
|
+
metaUpdated: (event: MetaUpdatedEvent) => void;
|
|
218
|
+
/** Full state replacement (undo/redo, resync) */
|
|
182
219
|
reset: (event: GraphResetEvent) => void;
|
|
183
220
|
/** Emitted when a sync error occurs and the graph resyncs from server */
|
|
184
221
|
syncError: (error: Error) => void;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAKA;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAMD,MAAM,MAAM,WAAW,GACnB;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,GAC3C;IAAE,EAAE,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC9B;IAAE,EAAE,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,GAC/C;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC1C;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC1C;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,CAAC;AAMjD,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE1D,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,aAAa,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,aAAa,CAAC;CACrB;AAED,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;CACrB;AAMD,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAMD,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|