@rool-dev/client 0.3.1-dev.e2c481d → 0.3.1-dev.ff89f50
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 +73 -48
- package/dist/client.js +1 -1
- package/dist/client.js.map +1 -1
- package/dist/graph.d.ts +70 -51
- package/dist/graph.d.ts.map +1 -1
- package/dist/graph.js +326 -185
- package/dist/graph.js.map +1 -1
- package/dist/graphql.d.ts +7 -5
- package/dist/graphql.d.ts.map +1 -1
- package/dist/graphql.js +50 -17
- 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 +76 -31
- 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
|
-
//
|
|
31
|
-
graph.checkpoint('Add
|
|
32
|
-
graph.
|
|
30
|
+
// Create an object
|
|
31
|
+
graph.checkpoint('Add object');
|
|
32
|
+
const { id } = await graph.createObject({ type: 'text', fields: { content: 'Hello' } });
|
|
33
33
|
|
|
34
|
-
// Create
|
|
35
|
-
await graph.
|
|
34
|
+
// Create a link between objects
|
|
35
|
+
await graph.link(id, 'object2', '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();
|
|
@@ -201,34 +201,35 @@ Graphs are first-class objects with built-in undo/redo, event emission, and real
|
|
|
201
201
|
| `redo(): Promise<boolean>` | Redo undone action |
|
|
202
202
|
| `clearHistory(): void` | Clear undo/redo stack |
|
|
203
203
|
|
|
204
|
-
###
|
|
204
|
+
### Object Operations
|
|
205
205
|
|
|
206
206
|
| Method | Description |
|
|
207
207
|
|--------|-------------|
|
|
208
|
-
| `
|
|
209
|
-
| `
|
|
210
|
-
| `
|
|
211
|
-
| `
|
|
212
|
-
| `
|
|
213
|
-
| `
|
|
214
|
-
| `
|
|
208
|
+
| `getObject(objectId): RoolObject` | Get object data (throws if not found) |
|
|
209
|
+
| `getObjectOrUndefined(objectId): RoolObject \| undefined` | Get object data or undefined |
|
|
210
|
+
| `getObjectsByType(type): RoolObject[]` | Get all objects of type |
|
|
211
|
+
| `getObjectIds(): string[]` | Get all object IDs |
|
|
212
|
+
| `getObjectMeta(objectId): Record<string, unknown>` | Get object metadata |
|
|
213
|
+
| `createObject(options): Promise<{ id, message }>` | Create object, returns ID and message. Options: `{ type, fields?, meta?, prompt? }` |
|
|
214
|
+
| `updateObject(objectId, options): Promise<string>` | Update object, returns message. Options: `{ type?, fields?, meta?, prompt? }` |
|
|
215
|
+
| `deleteObjects(objectIds): Promise<void>` | Delete objects (outbound links cascade automatically) |
|
|
215
216
|
|
|
216
|
-
###
|
|
217
|
+
### Link Operations
|
|
218
|
+
|
|
219
|
+
Links connect objects. They are stored on the source object and identified by `source + type + target`.
|
|
217
220
|
|
|
218
221
|
| Method | Description |
|
|
219
222
|
|--------|-------------|
|
|
220
|
-
| `
|
|
221
|
-
| `
|
|
222
|
-
| `getParents(
|
|
223
|
-
| `getChildren(
|
|
224
|
-
| `getEdge(edgeId): RoolEdge \| undefined` | Get edge by ID |
|
|
225
|
-
| `getEdgeIds(): string[]` | Get all edge IDs |
|
|
223
|
+
| `link(sourceId, targetId, edgeType): Promise<void>` | Create link from source to target |
|
|
224
|
+
| `unlink(sourceId, targetId): Promise<boolean>` | Remove link between objects |
|
|
225
|
+
| `getParents(objectId, edgeType?): string[]` | Get objects pointing to this object |
|
|
226
|
+
| `getChildren(objectId, edgeType?): string[]` | Get objects this object points to |
|
|
226
227
|
|
|
227
228
|
### Metadata
|
|
228
229
|
|
|
229
230
|
| Method | Description |
|
|
230
231
|
|--------|-------------|
|
|
231
|
-
| `setMetadata(key, value): void` | Set metadata (hidden from AI) |
|
|
232
|
+
| `setMetadata(key, value): void` | Set graph-level metadata (hidden from AI) |
|
|
232
233
|
| `getMetadata(key): unknown` | Get metadata value |
|
|
233
234
|
| `getAllMetadata(): Record<string, unknown>` | Get all metadata |
|
|
234
235
|
|
|
@@ -260,14 +261,30 @@ Graphs are first-class objects with built-in undo/redo, event emission, and real
|
|
|
260
261
|
|
|
261
262
|
| Method | Description |
|
|
262
263
|
|--------|-------------|
|
|
263
|
-
| `getData(): RoolGraphData` | Get full graph data |
|
|
264
|
-
|
|
264
|
+
| `getData(): RoolGraphData` | Get full graph data (internal format) |
|
|
265
|
+
|
|
265
266
|
### Graph Events
|
|
266
267
|
|
|
268
|
+
Semantic events describe what changed. Events fire for both local changes and remote changes.
|
|
269
|
+
|
|
267
270
|
```typescript
|
|
268
|
-
//
|
|
269
|
-
//
|
|
270
|
-
|
|
271
|
+
// source indicates origin:
|
|
272
|
+
// - 'local_user': This client made the change
|
|
273
|
+
// - 'remote_user': Another user/client made the change
|
|
274
|
+
// - 'remote_agent': AI agent made the change
|
|
275
|
+
// - 'system': Resync after error
|
|
276
|
+
|
|
277
|
+
// Object events
|
|
278
|
+
graph.on('objectCreated', ({ objectId, object, source }) => void)
|
|
279
|
+
graph.on('objectUpdated', ({ objectId, object, source }) => void)
|
|
280
|
+
graph.on('objectDeleted', ({ objectId, source }) => void)
|
|
281
|
+
|
|
282
|
+
// Edge events (links between objects)
|
|
283
|
+
graph.on('edgeCreated', ({ sourceId, targetId, edgeType, source }) => void)
|
|
284
|
+
graph.on('edgeDeleted', ({ sourceId, targetId, edgeType, source }) => void)
|
|
285
|
+
|
|
286
|
+
// Graph metadata
|
|
287
|
+
graph.on('metaUpdated', ({ meta, source }) => void)
|
|
271
288
|
|
|
272
289
|
// Full state replacement (undo/redo, resync after error)
|
|
273
290
|
graph.on('reset', ({ source }) => void)
|
|
@@ -276,9 +293,19 @@ graph.on('reset', ({ source }) => void)
|
|
|
276
293
|
graph.on('syncError', (error: Error) => void)
|
|
277
294
|
```
|
|
278
295
|
|
|
279
|
-
**Usage
|
|
280
|
-
|
|
281
|
-
|
|
296
|
+
**Usage pattern:**
|
|
297
|
+
```typescript
|
|
298
|
+
// All UI updates happen in one place, regardless of change source
|
|
299
|
+
graph.on('objectUpdated', ({ objectId, object, source }) => {
|
|
300
|
+
renderObject(objectId, object);
|
|
301
|
+
if (source === 'remote_agent') {
|
|
302
|
+
doLayout(); // AI might have added content
|
|
303
|
+
}
|
|
304
|
+
});
|
|
305
|
+
|
|
306
|
+
// Caller just makes the change - event handler does the UI work
|
|
307
|
+
graph.updateObject(objectId, { prompt: 'expand this' });
|
|
308
|
+
```
|
|
282
309
|
|
|
283
310
|
---
|
|
284
311
|
|
|
@@ -287,24 +314,23 @@ graph.on('syncError', (error: Error) => void)
|
|
|
287
314
|
### Graph Data
|
|
288
315
|
|
|
289
316
|
```typescript
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
edges: Record<string, RoolEdge>;
|
|
293
|
-
_meta: Record<string, unknown>; // Hidden from AI
|
|
294
|
-
}
|
|
295
|
-
|
|
296
|
-
interface RoolNode {
|
|
317
|
+
// RoolObject represents the object data you work with
|
|
318
|
+
interface RoolObject {
|
|
297
319
|
type: string;
|
|
298
|
-
_meta: Record<string, unknown>;
|
|
299
320
|
[key: string]: unknown;
|
|
300
321
|
}
|
|
301
322
|
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
323
|
+
// Internal graph data structure
|
|
324
|
+
interface RoolGraphData {
|
|
325
|
+
objects: Record<string, ObjectEntry>;
|
|
326
|
+
meta: Record<string, unknown>; // Graph-level metadata, hidden from AI
|
|
327
|
+
}
|
|
328
|
+
|
|
329
|
+
// Internal: Full stored object structure (you typically don't use this directly)
|
|
330
|
+
interface ObjectEntry {
|
|
331
|
+
meta: Record<string, unknown>; // Object-level metadata
|
|
332
|
+
links: Record<string, Record<string, Record<string, unknown>>>; // type -> targetId -> linkData
|
|
333
|
+
data: RoolObject; // The actual object data
|
|
308
334
|
}
|
|
309
335
|
```
|
|
310
336
|
|
|
@@ -318,15 +344,14 @@ interface RoolGraphUser { id: string; email: string; role: RoolGraphRole; }
|
|
|
318
344
|
interface UserResult { id: string; email: string; }
|
|
319
345
|
interface Account { id: string; email: string; plan: string; creditsBalance: number; }
|
|
320
346
|
interface MediaItem { uuid: string; url: string; contentType: string; size: number; }
|
|
321
|
-
type
|
|
347
|
+
type ChangeSource = 'local_user' | 'remote_user' | 'remote_agent' | 'system';
|
|
322
348
|
```
|
|
323
349
|
|
|
324
350
|
### Prompt Options
|
|
325
351
|
|
|
326
352
|
```typescript
|
|
327
353
|
interface PromptOptions {
|
|
328
|
-
|
|
329
|
-
edgeIds?: string[]; // Scope to specific edges
|
|
354
|
+
objectIds?: string[]; // Scope to specific objects
|
|
330
355
|
responseSchema?: Record<string, unknown>;
|
|
331
356
|
}
|
|
332
357
|
```
|
package/dist/client.js
CHANGED
|
@@ -159,7 +159,7 @@ export class RoolClient extends EventEmitter {
|
|
|
159
159
|
async createGraph(name) {
|
|
160
160
|
const graphId = generateEntityId();
|
|
161
161
|
const graphName = name ?? graphId;
|
|
162
|
-
const initialData = {
|
|
162
|
+
const initialData = { objects: {}, meta: {} };
|
|
163
163
|
// Create on server
|
|
164
164
|
await this.graphqlClient.setGraph(graphId, initialData);
|
|
165
165
|
return new RoolGraph({
|
package/dist/client.js.map
CHANGED
|
@@ -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":"AAAA,gFAAgF;AAChF,cAAc;AACd,0EAA0E;AAC1E,gFAAgF;AAEhF,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAqBzD;;;;;;;;;;;;GAYG;AACH,MAAM,OAAO,UAAW,SAAQ,YAA8B;IACpD,IAAI,CAAe;IACnB,WAAW,CAAc;IACzB,aAAa,CAAgB;IAC7B,mBAAmB,GAA+B,IAAI,CAAC;IACvD,YAAY,CAAS;IAE7B,4CAA4C;IACpC,gBAAgB,GAAG,IAAI,GAAG,EAAqB,CAAC;IAExD,YAAY,MAAwB;QAClC,KAAK,EAAE,CAAC;QAER,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,0BAA0B;QAC9E,IAAI,CAAC,IAAI,GAAG;YACV,OAAO,EAAE,MAAM,CAAC,UAAU,IAAI,GAAG,OAAO,UAAU;YAClD,KAAK,EAAE,MAAM,CAAC,QAAQ,IAAI,GAAG,OAAO,QAAQ;YAC5C,IAAI,EAAE,MAAM,CAAC,OAAO,IAAI,GAAG,OAAO,OAAO;SAC1C,CAAC;QAEF,IAAI,CAAC,YAAY,GAAG,gBAAgB,EAAE,CAAC;QAEvC,IAAI,CAAC,WAAW,GAAG,IAAI,WAAW,CAAC;YACjC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;YACvB,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,kBAAkB,EAAE,CAAC,aAAa,EAAE,EAAE;gBACpC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,aAAa,CAAC,CAAC;YAC/C,CAAC;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC;YACrC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO;YAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,eAAe,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY;SACzC,CAAC,CAAC;IACL,CAAC;IAED,8EAA8E;IAC9E,iBAAiB;IACjB,8EAA8E;IAE9E;;;;OAIG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;QAC3B,IAAI,CAAC,mBAAmB,EAAE,OAAO,EAAE,CAAC;QAEpC,wBAAwB;QACxB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,EAAE,CAAC;YACnD,KAAK,CAAC,KAAK,EAAE,CAAC;QAChB,CAAC;QACD,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;QAE9B,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IAED,8EAA8E;IAC9E,iBAAiB;IACjB,8EAA8E;IAE9E;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;QAC1B,IAAI,CAAC,WAAW,EAAE,CAAC;QAEnB,wBAAwB;QACxB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,EAAE,CAAC;YACnD,KAAK,CAAC,KAAK,EAAE,CAAC;QAChB,CAAC;QACD,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;IAChC,CAAC;IAED;;;OAGG;IACH,mBAAmB;QACjB,OAAO,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,CAAC;IAC5C,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,QAAQ;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,OAAO;QACL,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;IACpC,CAAC;IAED,8EAA8E;IAC9E,kBAAkB;IAClB,8EAA8E;IAE9E;;OAEG;IACH,KAAK,CAAC,UAAU;QACd,OAAO,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;IACzC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,SAAS,CAAC,OAAe;QAC7B,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC/C,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC;YACpC,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE;SAChC,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC;QAExD,OAAO,IAAI,SAAS,CAAC;YACnB,EAAE,EAAE,OAAO;YACX,IAAI,EAAE,SAAS,EAAE,IAAI,IAAI,OAAO;YAChC,IAAI,EAAE,SAAS,EAAE,IAAI,IAAI,QAAQ;YACjC,WAAW,EAAE,SAAS;YACtB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,mBAAmB,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,EAAE,EAAE,KAAK,CAAC;YAC1E,sBAAsB,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,yBAAyB,CAAC,EAAE,CAAC;SACnE,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,WAAW,CAAC,IAAa;QAC7B,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAC;QACnC,MAAM,SAAS,GAAG,IAAI,IAAI,OAAO,CAAC;QAClC,MAAM,WAAW,GAAc,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;QAEzD,mBAAmB;QACnB,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAExD,OAAO,IAAI,SAAS,CAAC;YACnB,EAAE,EAAE,OAAO;YACX,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,OAAO;YACb,WAAW;YACX,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,mBAAmB,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,EAAE,EAAE,KAAK,CAAC;YAC1E,sBAAsB,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,yBAAyB,CAAC,EAAE,CAAC;SACnE,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,WAAW,CAAC,OAAe;QAC/B,MAAM,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC9C,0DAA0D;IAC5D,CAAC;IAED,8EAA8E;IAC9E,kBAAkB;IAClB,8EAA8E;IAE9E;;OAEG;IACH,KAAK,CAAC,UAAU;QACd,OAAO,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,KAAa;QAC5B,OAAO,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAC9C,CAAC;IAED,8EAA8E;IAC9E,oDAAoD;IACpD,8EAA8E;IAE9E,IAAY,WAAW;QACrB,OAAO,IAAI,WAAW,CAAC;YACrB,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK;YACzB,WAAW,EAAE,IAAI,CAAC,WAAW;SAC9B,CAAC,CAAC;IACL,CAAC;IAED,8EAA8E;IAC9E,gBAAgB;IAChB,8EAA8E;IAE9E;;;;OAIG;IACH,KAAK,CAAC,SAAS;QACb,IAAI,IAAI,CAAC,mBAAmB;YAAE,OAAO;QAErC,IAAI,CAAC,mBAAmB,GAAG,IAAI,mBAAmB,CAAC;YACjD,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO;YAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC;YAChD,wBAAwB,EAAE,CAAC,KAAsB,EAAE,EAAE;gBACnD,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;YAC7C,CAAC;YACD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBACjB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC;YAC5C,CAAC;SACF,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,WAAW;QACT,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC7B,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,CAAC;YACnC,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAClC,CAAC;IACH,CAAC;IAED;;OAEG;IACH,YAAY;QACV,OAAO,IAAI,CAAC,mBAAmB,EAAE,YAAY,IAAI,KAAK,CAAC;IACzD,CAAC;IAED,8EAA8E;IAC9E,YAAY;IACZ,8EAA8E;IAE9E;;;OAGG;IACH,eAAe;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,UAAU;QACf,OAAO,gBAAgB,EAAE,CAAC;IAC5B,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,OAAO,CACX,KAAa,EACb,SAAmC;QAEnC,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,CAAI,KAAK,EAAE,SAAS,CAAC,CAAC;IACvD,CAAC;IAED,8EAA8E;IAC9E,mCAAmC;IACnC,8EAA8E;IAEtE,sBAAsB,CAAC,OAAe,EAAE,KAAgB;QAC9D,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC5C,CAAC;IAEO,yBAAyB,CAAC,OAAe;QAC/C,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC;IAED,8EAA8E;IAC9E,mCAAmC;IACnC,8EAA8E;IAEtE,gBAAgB,CAAC,KAMxB;QACC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;QAE/C,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,eAAe;gBAClB,qCAAqC;gBACrC,IAAI,KAAK,EAAE,CAAC;oBACV,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBACjD,IAAI,KAAK,EAAE,CAAC;wBACV,KAAK,CAAC,iBAAiB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;oBACzC,CAAC;gBACH,CAAC;gBACD,MAAM;YAER,KAAK,eAAe;gBAClB,qCAAqC;gBACrC,CAAC;oBACC,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBACjD,IAAI,KAAK,EAAE,CAAC;wBACV,+BAA+B;wBAC/B,KAAK,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;4BACtD,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;wBACjC,CAAC,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;gBACD,MAAM;YAER,KAAK,oBAAoB;gBACvB,oDAAoD;gBACpD,CAAC;oBACC,qBAAqB;oBACrB,KAAK,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;wBACnD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC;wBAChD,IAAI,IAAI,EAAE,CAAC;4BACT,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;4BACjD,IAAI,KAAK,EAAE,CAAC;gCACV,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;4BACtC,CAAC;4BACD,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;wBAChD,CAAC;oBACH,CAAC,CAAC,CAAC;gBACL,CAAC;gBACD,MAAM;YAER,KAAK,eAAe;gBAClB,0BAA0B;gBAC1B,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;gBACnC,MAAM;YAER,KAAK,eAAe;gBAClB,qBAAqB;gBACrB,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;gBACnC,8CAA8C;gBAC9C,MAAM;QACV,CAAC;IACH,CAAC;CACF"}
|
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,
|
|
4
|
+
import type { RoolGraphData, RoolObject, JSONPatchOp, GraphEvents, RoolGraphRole, RoolGraphUser, PromptOptions, MediaItem } from './types.js';
|
|
5
5
|
export declare function generateEntityId(): string;
|
|
6
6
|
interface GraphConfig {
|
|
7
7
|
id: string;
|
|
@@ -17,7 +17,7 @@ interface GraphConfig {
|
|
|
17
17
|
* First-class Graph object.
|
|
18
18
|
*
|
|
19
19
|
* Features:
|
|
20
|
-
* - High-level
|
|
20
|
+
* - High-level object/edge operations
|
|
21
21
|
* - Built-in undo/redo with checkpoints
|
|
22
22
|
* - Metadata management
|
|
23
23
|
* - Event emission for state changes
|
|
@@ -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>;
|
|
@@ -92,81 +87,106 @@ export declare class RoolGraph extends EventEmitter<GraphEvents> {
|
|
|
92
87
|
*/
|
|
93
88
|
clearHistory(): void;
|
|
94
89
|
/**
|
|
95
|
-
* Get
|
|
96
|
-
*
|
|
90
|
+
* Get an object's data by ID.
|
|
91
|
+
* Returns just the data portion (RoolObject), not the full entry with meta/links.
|
|
92
|
+
* @throws Error if object not found
|
|
97
93
|
*/
|
|
98
|
-
|
|
94
|
+
getObject(objectId: string): RoolObject;
|
|
99
95
|
/**
|
|
100
|
-
* Get
|
|
96
|
+
* Get an object's data by ID, or undefined if not found.
|
|
101
97
|
*/
|
|
102
|
-
|
|
98
|
+
getObjectOrUndefined(objectId: string): RoolObject | undefined;
|
|
103
99
|
/**
|
|
104
|
-
* Get
|
|
100
|
+
* Get an object's metadata (position, UI state, etc).
|
|
105
101
|
*/
|
|
106
|
-
|
|
102
|
+
getObjectMeta(objectId: string): Record<string, unknown>;
|
|
107
103
|
/**
|
|
108
|
-
* Get all
|
|
104
|
+
* Get all objects of a specific type.
|
|
109
105
|
*/
|
|
110
|
-
|
|
106
|
+
getObjectsByType(type: string): RoolObject[];
|
|
111
107
|
/**
|
|
112
|
-
*
|
|
108
|
+
* Get all object IDs.
|
|
113
109
|
*/
|
|
114
|
-
|
|
110
|
+
getObjectIds(): string[];
|
|
115
111
|
/**
|
|
116
|
-
*
|
|
117
|
-
* @param
|
|
118
|
-
* @param
|
|
112
|
+
* Create a new object with optional AI generation.
|
|
113
|
+
* @param options.type - The object type (required)
|
|
114
|
+
* @param options.fields - Object fields (optional). Use {{placeholder}} for AI-generated content.
|
|
115
|
+
* @param options.meta - Client-private metadata (optional). Hidden from AI operations.
|
|
116
|
+
* @param options.prompt - AI prompt for content generation (optional).
|
|
117
|
+
* @returns The generated object ID
|
|
119
118
|
*/
|
|
120
|
-
|
|
119
|
+
createObject(options: {
|
|
120
|
+
type: string;
|
|
121
|
+
fields?: Record<string, unknown>;
|
|
122
|
+
meta?: Record<string, unknown>;
|
|
123
|
+
prompt?: string;
|
|
124
|
+
}): Promise<{
|
|
125
|
+
id: string;
|
|
126
|
+
message: string;
|
|
127
|
+
}>;
|
|
121
128
|
/**
|
|
122
|
-
*
|
|
123
|
-
*
|
|
129
|
+
* Update an existing object.
|
|
130
|
+
* @param objectId - The ID of the object to update
|
|
131
|
+
* @param options.type - Optional new type for the object
|
|
132
|
+
* @param options.fields - Fields to add or update. Use {{placeholder}} for AI-generated content.
|
|
133
|
+
* @param options.meta - Client-private metadata to merge. Hidden from AI operations.
|
|
134
|
+
* @param options.prompt - AI prompt for content editing (optional).
|
|
124
135
|
*/
|
|
125
|
-
|
|
136
|
+
updateObject(objectId: string, options: {
|
|
137
|
+
type?: string;
|
|
138
|
+
fields?: Record<string, unknown>;
|
|
139
|
+
meta?: Record<string, unknown>;
|
|
140
|
+
prompt?: string;
|
|
141
|
+
}): Promise<string>;
|
|
126
142
|
/**
|
|
127
|
-
*
|
|
128
|
-
*
|
|
143
|
+
* Delete objects by IDs.
|
|
144
|
+
* Outbound links are automatically deleted with the object.
|
|
145
|
+
* Inbound links become orphans (tolerated).
|
|
129
146
|
*/
|
|
130
|
-
|
|
147
|
+
deleteObjects(objectIds: string[]): Promise<void>;
|
|
131
148
|
/**
|
|
132
|
-
*
|
|
133
|
-
*
|
|
149
|
+
* Create a link between objects.
|
|
150
|
+
* Links are stored on the source object.
|
|
134
151
|
*/
|
|
135
|
-
|
|
152
|
+
link(sourceId: string, targetId: string, edgeType: string): Promise<void>;
|
|
136
153
|
/**
|
|
137
|
-
*
|
|
138
|
-
* @param edgeType - Optional
|
|
154
|
+
* Remove a link between two objects.
|
|
155
|
+
* @param edgeType - Optional: if provided, only removes that type; otherwise removes all links between the objects
|
|
156
|
+
* @returns true if any links were removed
|
|
139
157
|
*/
|
|
140
|
-
|
|
158
|
+
unlink(sourceId: string, targetId: string, edgeType?: string): Promise<boolean>;
|
|
141
159
|
/**
|
|
142
|
-
* Get
|
|
160
|
+
* Get parent object IDs (objects that have edges pointing TO this object).
|
|
143
161
|
* @param edgeType - Optional filter by edge type
|
|
144
162
|
*/
|
|
145
|
-
|
|
163
|
+
getParents(objectId: string, edgeType?: string): string[];
|
|
146
164
|
/**
|
|
147
|
-
* Get
|
|
165
|
+
* Get child object IDs (objects that this object has edges pointing TO).
|
|
166
|
+
* Filters out orphan targets (targets that don't exist).
|
|
167
|
+
* @param edgeType - Optional filter by edge type
|
|
148
168
|
*/
|
|
149
|
-
|
|
169
|
+
getChildren(objectId: string, edgeType?: string): string[];
|
|
150
170
|
/**
|
|
151
|
-
* Get all
|
|
171
|
+
* Get all child object IDs including orphans (targets that may not exist).
|
|
172
|
+
* @param edgeType - Optional filter by edge type
|
|
152
173
|
*/
|
|
153
|
-
|
|
174
|
+
getChildrenIncludingOrphans(objectId: string, edgeType?: string): string[];
|
|
154
175
|
/**
|
|
155
|
-
* Set a metadata value.
|
|
156
|
-
* Metadata is stored in
|
|
176
|
+
* Set a graph-level metadata value.
|
|
177
|
+
* Metadata is stored in meta and hidden from AI operations.
|
|
157
178
|
*/
|
|
158
179
|
setMetadata(key: string, value: unknown): void;
|
|
159
180
|
/**
|
|
160
|
-
* Get a metadata value.
|
|
181
|
+
* Get a graph-level metadata value.
|
|
161
182
|
*/
|
|
162
183
|
getMetadata(key: string): unknown;
|
|
163
184
|
/**
|
|
164
|
-
* Get all metadata.
|
|
185
|
+
* Get all graph-level metadata.
|
|
165
186
|
*/
|
|
166
187
|
getAllMetadata(): Record<string, unknown>;
|
|
167
188
|
/**
|
|
168
189
|
* Send a prompt to the AI agent for graph manipulation.
|
|
169
|
-
* Waits for any pending patches to settle before sending.
|
|
170
190
|
*/
|
|
171
191
|
prompt(prompt: string, options?: PromptOptions): Promise<string | null>;
|
|
172
192
|
/**
|
|
@@ -209,16 +229,16 @@ export declare class RoolGraph extends EventEmitter<GraphEvents> {
|
|
|
209
229
|
* Use sparingly - prefer specific operations.
|
|
210
230
|
*/
|
|
211
231
|
getData(): RoolGraphData;
|
|
212
|
-
/**
|
|
213
|
-
* Apply a raw JSON patch.
|
|
214
|
-
* Use sparingly - prefer semantic operations.
|
|
215
|
-
*/
|
|
216
|
-
patch(operations: JSONPatchOp[]): void;
|
|
217
232
|
/**
|
|
218
233
|
* Handle a patch event from another client.
|
|
219
234
|
* @internal
|
|
220
235
|
*/
|
|
221
236
|
handleRemotePatch(patch: JSONPatchOp[], source?: 'user' | 'agent'): void;
|
|
237
|
+
/**
|
|
238
|
+
* Parse JSON patch operations and emit semantic events.
|
|
239
|
+
* @internal
|
|
240
|
+
*/
|
|
241
|
+
private emitSemanticEventsFromPatch;
|
|
222
242
|
/**
|
|
223
243
|
* Handle a full graph reload from server.
|
|
224
244
|
* @internal
|
|
@@ -229,7 +249,6 @@ export declare class RoolGraph extends EventEmitter<GraphEvents> {
|
|
|
229
249
|
* @internal
|
|
230
250
|
*/
|
|
231
251
|
handleRemoteRename(newName: string): void;
|
|
232
|
-
private sendPatch;
|
|
233
252
|
private resyncFromServer;
|
|
234
253
|
}
|
|
235
254
|
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,
|
|
1
|
+
{"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../src/graph.ts"],"names":[],"mappings":"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"}
|