@dxos/app-graph 0.8.4-main.c85a9c8dae → 0.8.4-main.d05539e30a

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.
Files changed (55) hide show
  1. package/LICENSE +102 -5
  2. package/README.md +1 -1
  3. package/dist/lib/{browser/index.mjs → neutral/chunk-32XXJE6M.mjs} +304 -349
  4. package/dist/lib/neutral/chunk-32XXJE6M.mjs.map +7 -0
  5. package/dist/lib/neutral/chunk-J5LGTIGS.mjs +10 -0
  6. package/dist/lib/neutral/chunk-J5LGTIGS.mjs.map +7 -0
  7. package/dist/lib/neutral/index.mjs +40 -0
  8. package/dist/lib/neutral/index.mjs.map +7 -0
  9. package/dist/lib/neutral/meta.json +1 -0
  10. package/dist/lib/neutral/scheduler.mjs +15 -0
  11. package/dist/lib/neutral/scheduler.mjs.map +7 -0
  12. package/dist/lib/neutral/testing/index.mjs +40 -0
  13. package/dist/lib/neutral/testing/index.mjs.map +7 -0
  14. package/dist/types/src/atoms.d.ts.map +1 -1
  15. package/dist/types/src/graph-builder.d.ts +3 -3
  16. package/dist/types/src/graph-builder.d.ts.map +1 -1
  17. package/dist/types/src/graph.d.ts +2 -2
  18. package/dist/types/src/graph.d.ts.map +1 -1
  19. package/dist/types/src/index.d.ts +1 -0
  20. package/dist/types/src/index.d.ts.map +1 -1
  21. package/dist/types/src/node-matcher.d.ts +44 -18
  22. package/dist/types/src/node-matcher.d.ts.map +1 -1
  23. package/dist/types/src/node.d.ts +11 -3
  24. package/dist/types/src/node.d.ts.map +1 -1
  25. package/dist/types/src/scheduler.browser.d.ts +2 -0
  26. package/dist/types/src/scheduler.browser.d.ts.map +1 -0
  27. package/dist/types/src/scheduler.d.ts +8 -0
  28. package/dist/types/src/scheduler.d.ts.map +1 -0
  29. package/dist/types/src/stories/EchoGraph.stories.d.ts.map +1 -1
  30. package/dist/types/src/testing/index.d.ts +2 -0
  31. package/dist/types/src/testing/index.d.ts.map +1 -0
  32. package/dist/types/src/testing/setup-graph-builder.d.ts +31 -0
  33. package/dist/types/src/testing/setup-graph-builder.d.ts.map +1 -0
  34. package/dist/types/src/util.d.ts +26 -10
  35. package/dist/types/src/util.d.ts.map +1 -1
  36. package/dist/types/tsconfig.tsbuildinfo +1 -1
  37. package/package.json +38 -27
  38. package/src/graph-builder.test.ts +536 -34
  39. package/src/graph-builder.ts +87 -24
  40. package/src/graph.test.ts +21 -1
  41. package/src/graph.ts +32 -21
  42. package/src/index.ts +1 -0
  43. package/src/node-matcher.ts +59 -27
  44. package/src/node.ts +32 -3
  45. package/src/scheduler.browser.ts +5 -0
  46. package/src/scheduler.ts +17 -0
  47. package/src/stories/EchoGraph.stories.tsx +13 -15
  48. package/src/testing/index.ts +5 -0
  49. package/src/testing/setup-graph-builder.ts +41 -0
  50. package/src/util.ts +59 -13
  51. package/dist/lib/browser/index.mjs.map +0 -7
  52. package/dist/lib/browser/meta.json +0 -1
  53. package/dist/lib/node-esm/index.mjs +0 -1523
  54. package/dist/lib/node-esm/index.mjs.map +0 -7
  55. package/dist/lib/node-esm/meta.json +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../../src/graph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../../src/graph.ts"],"names":[],"mappings":"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"}
@@ -3,5 +3,6 @@ export * as Graph from './graph';
3
3
  export * as GraphBuilder from './graph-builder';
4
4
  export * as Node from './node';
5
5
  export * as NodeMatcher from './node-matcher';
6
+ export { qualifyId, getParentId, getSegmentId } from './util';
6
7
  export type { BuilderExtensions } from './graph-builder';
7
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,UAAU,MAAM,SAAS,CAAC;AACtC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,WAAW,MAAM,gBAAgB,CAAC;AAG9C,YAAY,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,UAAU,MAAM,SAAS,CAAC;AACtC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,WAAW,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAG9D,YAAY,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC"}
@@ -51,7 +51,7 @@ export declare const whenId: (id: string) => (node: Node.Node) => Option.Option<
51
51
  * ```ts
52
52
  * GraphBuilder.createExtension({
53
53
  * id: 'space-settings-extension',
54
- * match: NodeMatcher.whenNodeType('dxos.org/plugin/space/settings'),
54
+ * match: NodeMatcher.whenNodeType('org.dxos.plugin.space.settings'),
55
55
  * connector: (node) => Effect.succeed([...]),
56
56
  * });
57
57
  * ```
@@ -80,7 +80,10 @@ export declare const whenNodeType: (type: string) => (node: Node.Node) => Option
80
80
  * });
81
81
  * ```
82
82
  *
83
- * @see {@link whenEchoTypeMatches} - Use instead when composing with whenAll/whenAny.
83
+ * Can be composed directly with {@link whenAll}/{@link whenAny}/{@link whenNot} while
84
+ * preserving the typed entity data in the result.
85
+ *
86
+ * @see {@link whenEchoTypeMatches} - Returns the node instead of data for legacy composition.
84
87
  */
85
88
  export declare const whenEchoType: <T extends Type.AnyEntity>(type: T) => NodeMatcher<Entity.Entity<Schema.Schema.Type<T>>>;
86
89
  /**
@@ -94,53 +97,72 @@ export declare const whenEchoType: <T extends Type.AnyEntity>(type: T) => NodeMa
94
97
  * @example
95
98
  * ```ts
96
99
  * GraphBuilder.createExtension({
97
- * id: 'object-settings',
100
+ * id: 'object-properties',
98
101
  * match: NodeMatcher.whenEchoObject,
99
102
  * connector: (object) => {
100
103
  * // `object` is typed as Obj.Unknown
101
104
  * const id = Obj.getDXN(object).toString();
102
- * return Effect.succeed([{ id: `${id}/settings`, ... }]);
105
+ * return Effect.succeed([{ id: `${id}.settings`, ... }]);
103
106
  * },
104
107
  * });
105
108
  * ```
106
109
  *
107
- * @see {@link whenEchoObjectMatches} - Use instead when composing with whenAll/whenAny.
110
+ * Can be composed directly with {@link whenAll}/{@link whenAny}/{@link whenNot} while
111
+ * preserving the `Obj.Unknown` data type in the result.
112
+ *
113
+ * @see {@link whenEchoObjectMatches} - Returns the node instead of data for legacy composition.
108
114
  */
109
115
  export declare const whenEchoObject: (node: Node.Node) => Option.Option<Obj.Unknown>;
110
116
  /**
111
117
  * Composes multiple matchers with AND logic - all matchers must match for success.
112
- * Returns the **node** (not the matched data) to enable further composition.
118
+ * The result data type is the intersection of all matchers' data types.
119
+ * Filter matchers like {@link whenNot} return `unknown`, making them transparent
120
+ * in the intersection (since `T & unknown = T`).
113
121
  *
114
122
  * @param matchers - The matchers to combine. All must return Option.some for success.
115
- * @returns A matcher that returns Option.some(node) if all match, Option.none() otherwise.
123
+ * @returns A matcher whose data type is the intersection of all input matchers' data types.
124
+ * Returns the first matcher's value when all match, Option.none() otherwise.
116
125
  *
117
126
  * @example
118
127
  * ```ts
119
- * // Match ECHO objects that are NOT Channels
128
+ * // Match ECHO objects that are NOT Channels — result is NodeMatcher<Obj.Unknown>.
120
129
  * const whenCommentable = NodeMatcher.whenAll(
121
- * NodeMatcher.whenEchoObjectMatches,
130
+ * NodeMatcher.whenEchoObject,
122
131
  * NodeMatcher.whenNot(NodeMatcher.whenEchoTypeMatches(Channel.Channel)),
123
132
  * );
124
133
  * ```
125
134
  */
126
- export declare const whenAll: (...matchers: NodeMatcher[]) => NodeMatcher;
135
+ export declare const whenAll: {
136
+ <A>(a: NodeMatcher<A>, b: NodeMatcher<unknown>): NodeMatcher<A>;
137
+ <A>(a: NodeMatcher<unknown>, b: NodeMatcher<A>): NodeMatcher<A>;
138
+ <A, B>(a: NodeMatcher<A>, b: NodeMatcher<B>): NodeMatcher<A & B>;
139
+ <A, B, C>(a: NodeMatcher<A>, b: NodeMatcher<B>, c: NodeMatcher<C>): NodeMatcher<A & B & C>;
140
+ <A, B, C, D>(a: NodeMatcher<A>, b: NodeMatcher<B>, c: NodeMatcher<C>, d: NodeMatcher<D>): NodeMatcher<A & B & C & D>;
141
+ (...matchers: NodeMatcher<any>[]): NodeMatcher<any>;
142
+ };
127
143
  /**
128
144
  * Composes multiple matchers with OR logic - at least one matcher must match.
129
- * Returns the **node** (not the matched data) to enable further composition.
145
+ * The result data type is the union of all matchers' data types.
130
146
  *
131
147
  * @param matchers - The matchers to combine. At least one must return Option.some.
132
- * @returns A matcher that returns Option.some(node) if any match, Option.none() otherwise.
148
+ * @returns A matcher whose data type is the union of all input matchers' data types.
149
+ * Returns the first matching matcher's value, or Option.none() if none match.
133
150
  *
134
151
  * @example
135
152
  * ```ts
136
- * // Match nodes that are either Sequences or Prompts
153
+ * // Match nodes that are either Sequences or Routines
137
154
  * const whenInvocable = NodeMatcher.whenAny(
138
155
  * NodeMatcher.whenEchoTypeMatches(Sequence),
139
- * NodeMatcher.whenEchoTypeMatches(Prompt.Prompt),
156
+ * NodeMatcher.whenEchoTypeMatches(Routine.Routine),
140
157
  * );
141
158
  * ```
142
159
  */
143
- export declare const whenAny: (...matchers: NodeMatcher[]) => NodeMatcher;
160
+ export declare const whenAny: {
161
+ <A, B>(a: NodeMatcher<A>, b: NodeMatcher<B>): NodeMatcher<A | B>;
162
+ <A, B, C>(a: NodeMatcher<A>, b: NodeMatcher<B>, c: NodeMatcher<C>): NodeMatcher<A | B | C>;
163
+ <A, B, C, D>(a: NodeMatcher<A>, b: NodeMatcher<B>, c: NodeMatcher<C>, d: NodeMatcher<D>): NodeMatcher<A | B | C | D>;
164
+ (...matchers: NodeMatcher<any>[]): NodeMatcher<any>;
165
+ };
144
166
  /**
145
167
  * Matches a node whose data is an instance of the given ECHO schema type.
146
168
  * Returns the **node** (not the data) to enable composition with whenAll/whenAny/whenNot.
@@ -198,15 +220,19 @@ export declare const whenEchoObjectMatches: (node: Node.Node) => Option.Option<N
198
220
  * Negates a matcher - matches when the given matcher does NOT match.
199
221
  * Useful for exclusion patterns like "any object EXCEPT type X".
200
222
  *
223
+ * Returns `NodeMatcher<unknown>` because negation is a filter — it doesn't provide
224
+ * typed data. This makes it transparent in {@link whenAll} intersections
225
+ * (since `T & unknown = T`).
226
+ *
201
227
  * @param matcher - The matcher to negate.
202
228
  * @returns A matcher that returns Option.some(node) if the input matcher returns none,
203
229
  * and Option.none() if the input matcher returns some.
204
230
  *
205
231
  * @example
206
232
  * ```ts
207
- * // Match any ECHO object that is NOT a Channel
233
+ * // Match any ECHO object that is NOT a Channel — result is NodeMatcher<Obj.Unknown>.
208
234
  * const whenCommentable = NodeMatcher.whenAll(
209
- * NodeMatcher.whenEchoObjectMatches,
235
+ * NodeMatcher.whenEchoObject,
210
236
  * NodeMatcher.whenNot(NodeMatcher.whenEchoTypeMatches(Channel.Channel)),
211
237
  * );
212
238
  *
@@ -214,5 +240,5 @@ export declare const whenEchoObjectMatches: (node: Node.Node) => Option.Option<N
214
240
  * const whenNotRoot = NodeMatcher.whenNot(NodeMatcher.whenRoot);
215
241
  * ```
216
242
  */
217
- export declare const whenNot: (matcher: NodeMatcher) => NodeMatcher;
243
+ export declare const whenNot: (matcher: NodeMatcher<any>) => NodeMatcher<unknown>;
218
244
  //# sourceMappingURL=node-matcher.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"node-matcher.d.ts","sourceRoot":"","sources":["../../../src/node-matcher.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAC;AAE7C,OAAO,EAAE,KAAK,MAAM,EAAE,GAAG,EAAE,KAAK,IAAI,EAAE,MAAM,YAAY,CAAC;AAEzD,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAE/B;;;;;;GAMG;AACH,MAAM,MAAM,WAAW,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAMvF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,QAAQ,GAAI,MAAM,IAAI,CAAC,IAAI,KAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CACL,CAAC;AAE9D;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,MAAM,GAChB,IAAI,MAAM,MACV,MAAM,IAAI,CAAC,IAAI,KAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CACU,CAAC;AAEvD;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,YAAY,GACtB,MAAM,MAAM,MACZ,MAAM,IAAI,CAAC,IAAI,KAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CACc,CAAC;AAM3D;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,eAAO,MAAM,YAAY,GACtB,CAAC,SAAS,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,KAAG,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAEX,CAAC;AAE7E;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,cAAc,GAAI,MAAM,IAAI,CAAC,IAAI,KAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CACR,CAAC;AAMnE;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,OAAO,GACjB,GAAG,UAAU,WAAW,EAAE,KAAG,WAQ7B,CAAC;AAEJ;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,OAAO,GACjB,GAAG,UAAU,WAAW,EAAE,KAAG,WAQ7B,CAAC;AAEJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,eAAO,MAAM,mBAAmB,GAC7B,CAAC,SAAS,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,KAAG,WAEgC,CAAC;AAExE;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,qBAAqB,GAAI,MAAM,IAAI,CAAC,IAAI,KAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAClB,CAAC;AAE9D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,OAAO,GACjB,SAAS,WAAW,KAAG,WAE0C,CAAC"}
1
+ {"version":3,"file":"node-matcher.d.ts","sourceRoot":"","sources":["../../../src/node-matcher.ts"],"names":[],"mappings":"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"}
@@ -8,15 +8,15 @@ export declare const RootId = "root";
8
8
  /**
9
9
  * Root node type.
10
10
  */
11
- export declare const RootType = "dxos.org/type/GraphRoot";
11
+ export declare const RootType = "org.dxos.type.graphRoot";
12
12
  /**
13
13
  * Action node type.
14
14
  */
15
- export declare const ActionType = "dxos.org/type/GraphAction";
15
+ export declare const ActionType = "org.dxos.type.graphAction";
16
16
  /**
17
17
  * Action group node type.
18
18
  */
19
- export declare const ActionGroupType = "dxos.org/type/GraphActionGroup";
19
+ export declare const ActionGroupType = "org.dxos.type.graphActionGroup";
20
20
  /**
21
21
  * Represents a node in the graph.
22
22
  */
@@ -64,6 +64,8 @@ export type NodeArg<TData, TProperties extends Record<string, any> = Record<stri
64
64
  export type InvokeProps = {
65
65
  /** Node the invoked action is connected to. */
66
66
  parent?: Node;
67
+ /** Path from root to the node in the current tree context. */
68
+ path?: string[];
67
69
  caller?: string;
68
70
  };
69
71
  /**
@@ -89,4 +91,10 @@ export type ActionGroup<TProperties extends Record<string, any> = Record<string,
89
91
  export declare const isActionGroup: (data: unknown) => data is ActionGroup;
90
92
  export type ActionLike = Action | ActionGroup;
91
93
  export declare const isActionLike: (data: unknown) => data is Action | ActionGroup;
94
+ /** Typed factory for constructing a NodeArg. Provides auto-complete and type validation. */
95
+ export declare const make: <TData = any, TProperties extends Record<string, any> = Record<string, any>>(arg: NodeArg<TData, TProperties>) => NodeArg<TData, TProperties>;
96
+ /** Create an action node. Automatically sets `type: ActionType`. */
97
+ export declare const makeAction: <R = never>(arg: Omit<NodeArg<ActionData<R>>, 'type' | 'nodes' | 'edges'>) => NodeArg<ActionData<R>>;
98
+ /** Create an action group node. Automatically sets `type` and `data`. */
99
+ export declare const makeActionGroup: (arg: Omit<NodeArg<typeof actionGroupSymbol>, 'type' | 'data' | 'nodes' | 'edges'>) => NodeArg<typeof actionGroupSymbol>;
92
100
  //# sourceMappingURL=node.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../src/node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../src/node.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { scheduleTask, yieldOrContinue } from 'main-thread-scheduling';
2
+ //# sourceMappingURL=scheduler.browser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduler.browser.d.ts","sourceRoot":"","sources":["../../../src/scheduler.browser.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,8 @@
1
+ type ScheduleOptions = {
2
+ strategy?: 'smooth' | 'interactive' | 'idle';
3
+ signal?: AbortSignal;
4
+ };
5
+ export declare const scheduleTask: <T>(callback: () => T | Promise<T>, _options?: ScheduleOptions) => Promise<T>;
6
+ export declare const yieldOrContinue: (_priority: 'smooth' | 'interactive' | 'idle') => Promise<void>;
7
+ export {};
8
+ //# sourceMappingURL=scheduler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduler.d.ts","sourceRoot":"","sources":["../../../src/scheduler.ts"],"names":[],"mappings":"AAOA,KAAK,eAAe,GAAG;IAAE,QAAQ,CAAC,EAAE,QAAQ,GAAG,aAAa,GAAG,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE,CAAC;AAE9F,eAAO,MAAM,YAAY,GAAU,CAAC,YAAY,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,aAAa,eAAe,KAAG,OAAO,CAAC,CAAC,CAG3G,CAAC;AAEF,eAAO,MAAM,eAAe,cAAqB,QAAQ,GAAG,aAAa,GAAG,MAAM,KAAG,OAAO,CAAC,IAAI,CAEhG,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"EchoGraph.stories.d.ts","sourceRoot":"","sources":["../../../../src/stories/EchoGraph.stories.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAsPjE,QAAA,MAAM,IAAI;;;CAaM,CAAC;AAEjB,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,QAAQ,EAAE,KActB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,KAmItB,CAAC"}
1
+ {"version":3,"file":"EchoGraph.stories.d.ts","sourceRoot":"","sources":["../../../../src/stories/EchoGraph.stories.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAoPjE,QAAA,MAAM,IAAI;;;CAaM,CAAC;eAEF,IAAI;AAEnB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,QAAQ,EAAE,KActB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,KAmItB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './setup-graph-builder';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/testing/index.ts"],"names":[],"mappings":"AAIA,cAAc,uBAAuB,CAAC"}
@@ -0,0 +1,31 @@
1
+ import { Registry } from '@effect-atom/atom-react';
2
+ import * as Graph from '../graph';
3
+ import * as GraphBuilder from '../graph-builder';
4
+ import * as Node from '../node';
5
+ export type SetupGraphBuilderOptions = {
6
+ registry?: Registry.Registry;
7
+ extensions?: GraphBuilder.BuilderExtensions;
8
+ };
9
+ export declare const setupGraphBuilder: ({ registry, extensions }?: SetupGraphBuilderOptions) => {
10
+ registry: Registry.Registry;
11
+ builder: GraphBuilder.GraphBuilder;
12
+ graph: Graph.ExpandableGraph;
13
+ addExtensions: (nextExtensions: GraphBuilder.BuilderExtensions) => void;
14
+ expand: (id: string, relation?: Node.RelationInput) => Promise<void>;
15
+ flush: () => Promise<void>;
16
+ getConnections: (id: string, relation?: Node.RelationInput) => Readonly<{
17
+ id: string;
18
+ type: string;
19
+ cacheable?: string[];
20
+ properties: Readonly<Record<string, any>>;
21
+ data: any;
22
+ }>[];
23
+ getNode: (id: string) => Readonly<{
24
+ id: string;
25
+ type: string;
26
+ cacheable?: string[];
27
+ properties: Readonly<Record<string, any>>;
28
+ data: any;
29
+ }> | null;
30
+ };
31
+ //# sourceMappingURL=setup-graph-builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-graph-builder.d.ts","sourceRoot":"","sources":["../../../../src/testing/setup-graph-builder.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAGnD,OAAO,KAAK,KAAK,MAAM,UAAU,CAAC;AAClC,OAAO,KAAK,YAAY,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,IAAI,MAAM,SAAS,CAAC;AAEhC,MAAM,MAAM,wBAAwB,GAAG;IACrC,QAAQ,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC;IAC7B,UAAU,CAAC,EAAE,YAAY,CAAC,iBAAiB,CAAC;CAC7C,CAAC;AAEF,eAAO,MAAM,iBAAiB,8BAAgD,wBAAwB;;;;oCAYlE,YAAY,CAAC,iBAAiB;iBAG3C,MAAM,aAAY,IAAI,CAAC,aAAa;;yBAKlC,MAAM,aAAY,IAAI,CAAC,aAAa;;;;;;;kBAE3C,MAAM;;;;;;;CAEvB,CAAC"}
@@ -1,14 +1,12 @@
1
1
  import * as Node from './node';
2
- /**
3
- * Key separators for compound string keys used across the app-graph package.
4
- * `primary` separates top-level components (e.g., node ID from relation).
5
- * `secondary` separates sub-components within an encoded value (e.g., relation kind from direction).
6
- * Two distinct characters are needed because secondary separators appear inside primary-separated fields.
7
- */
8
- export declare const Separators: {
9
- readonly primary: "\u0001";
10
- readonly secondary: "\u0002";
11
- };
2
+ /** Join parts with the primary separator. */
3
+ export declare const primaryKey: (...parts: string[]) => string;
4
+ /** Split a key on the primary separator. */
5
+ export declare const primaryParts: (key: string) => string[];
6
+ /** Join parts with the secondary separator. */
7
+ export declare const secondaryKey: (...parts: string[]) => string;
8
+ /** Split a key on the secondary separator. */
9
+ export declare const secondaryParts: (key: string) => string[];
12
10
  /**
13
11
  * Normalize a relation input to a full Relation object.
14
12
  */
@@ -19,6 +17,24 @@ export declare const normalizeRelation: (relation?: Node.RelationInput) => Node.
19
17
  export declare const shallowEqual: (a: unknown, b: unknown) => boolean;
20
18
  /**
21
19
  * Returns true if two NodeArg arrays are semantically identical (same id, type, data, properties per index).
20
+ * Inline child nodes (the `nodes` field) are compared recursively.
22
21
  */
23
22
  export declare const nodeArgsUnchanged: (prev: Node.NodeArg<any>[], next: Node.NodeArg<any>[]) => boolean;
23
+ /**
24
+ * Build a qualified node ID by joining path segments.
25
+ */
26
+ export declare const qualifyId: (parentId: string, ...segmentIds: string[]) => string;
27
+ /**
28
+ * Validate that a segment ID does not contain the path separator.
29
+ */
30
+ export declare const validateSegmentId: (id: string) => void;
31
+ /**
32
+ * Extract the parent qualified ID (everything before the last path separator).
33
+ * Returns undefined for IDs with no parent (single segment).
34
+ */
35
+ export declare const getParentId: (qualifiedId: string) => string | undefined;
36
+ /**
37
+ * Extract the last segment of a qualified ID.
38
+ */
39
+ export declare const getSegmentId: (qualifiedId: string) => string;
24
40
  //# sourceMappingURL=util.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../src/util.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAE/B;;;;;GAKG;AACH,eAAO,MAAM,UAAU;;;CAGb,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAAI,WAAW,IAAI,CAAC,aAAa,KAAG,IAAI,CAAC,QACsC,CAAC;AAE9G;;GAEG;AACH,eAAO,MAAM,YAAY,GAAI,GAAG,OAAO,EAAE,GAAG,OAAO,KAAG,OASrD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAAI,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,KAAG,OAcxF,CAAC"}
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../src/util.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAW/B,6CAA6C;AAC7C,eAAO,MAAM,UAAU,aAAc,MAAM,EAAE,KAAG,MAA6B,CAAC;AAE9E,4CAA4C;AAC5C,eAAO,MAAM,YAAY,QAAS,MAAM,KAAG,MAAM,EAAwB,CAAC;AAE1E,+CAA+C;AAC/C,eAAO,MAAM,YAAY,aAAc,MAAM,EAAE,KAAG,MAA+B,CAAC;AAElF,8CAA8C;AAC9C,eAAO,MAAM,cAAc,QAAS,MAAM,KAAG,MAAM,EAA0B,CAAC;AAE9E;;GAEG;AACH,eAAO,MAAM,iBAAiB,cAAe,IAAI,CAAC,aAAa,KAAG,IAAI,CAAC,QACsC,CAAC;AAE9G;;GAEG;AACH,eAAO,MAAM,YAAY,MAAO,OAAO,KAAK,OAAO,KAAG,OAarD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,SAAU,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,QAAQ,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,KAAG,OAexF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,SAAS,aAAc,MAAM,iBAAiB,MAAM,EAAE,KAAG,MAA8C,CAAC;AAErH;;GAEG;AACH,eAAO,MAAM,iBAAiB,OAAQ,MAAM,KAAG,IAE9C,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,WAAW,gBAAiB,MAAM,KAAG,MAAM,GAAG,SAG1D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,gBAAiB,MAAM,KAAG,MAElD,CAAC"}