@ai.ntellect/core 0.7.9 → 0.7.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/graph/event-manager.d.ts +2 -2
- package/dist/graph/event-manager.d.ts.map +1 -1
- package/dist/graph/event-manager.js.map +1 -1
- package/dist/graph/index.d.ts +9 -9
- package/dist/graph/index.d.ts.map +1 -1
- package/dist/graph/index.js +3 -3
- package/dist/graph/index.js.map +1 -1
- package/dist/graph/node.d.ts +2 -2
- package/dist/graph/node.d.ts.map +1 -1
- package/dist/graph/node.js.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/types/index.d.ts +5 -5
- package/dist/types/index.d.ts.map +1 -1
- package/graph/event-manager.ts +2 -2
- package/graph/index.ts +16 -11
- package/graph/node.ts +7 -7
- package/index.ts +4 -0
- package/package.json +1 -1
- package/test/graph/controller.test.ts +2 -2
- package/test/graph/index.test.ts +27 -27
- package/test/graph/observer.test.ts +9 -9
- package/types/index.ts +5 -5
@@ -1,6 +1,6 @@
|
|
1
1
|
import { ZodSchema } from "zod";
|
2
2
|
import { IEventEmitter } from "../interfaces";
|
3
|
-
import { GraphContext, GraphEvent,
|
3
|
+
import { GraphContext, GraphEvent, GraphNodeConfig } from "../types";
|
4
4
|
import { GraphNode } from "./node";
|
5
5
|
/**
|
6
6
|
* Manages event handling and routing for a graph
|
@@ -29,7 +29,7 @@ export declare class GraphEventManager<T extends ZodSchema> {
|
|
29
29
|
* @param globalErrorHandler - Global error handling function
|
30
30
|
* @param nodeExecutor - GraphNode instance for executing nodes
|
31
31
|
*/
|
32
|
-
constructor(eventEmitter: IEventEmitter, nodes: Map<string,
|
32
|
+
constructor(eventEmitter: IEventEmitter, nodes: Map<string, GraphNodeConfig<T, any>>, name: string, context: GraphContext<T>, graphEvents?: string[], entryNode?: string, globalErrorHandler?: (error: Error, context: GraphContext<T>) => void, nodeExecutor?: GraphNode<T> | undefined);
|
33
33
|
/**
|
34
34
|
* Sets up event streams for all nodes that listen to events
|
35
35
|
*/
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"event-manager.d.ts","sourceRoot":"","sources":["../../graph/event-manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,
|
1
|
+
{"version":3,"file":"event-manager.d.ts","sourceRoot":"","sources":["../../graph/event-manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEnC;;;;GAIG;AACH,qBAAa,iBAAiB,CAAC,CAAC,SAAS,SAAS;IAqB9C,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,KAAK;IAMb,OAAO,CAAC,YAAY,CAAC;IA3BvB,OAAO,CAAC,YAAY,CAAyC;IAC7D,OAAO,CAAC,WAAW,CAAqD;IACxE,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,WAAW,CAAC,CAAW;IAC/B,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,kBAAkB,CAAC,CAAmD;IAE9E;;;;;;;;;;OAUG;gBAEO,YAAY,EAAE,aAAa,EAC3B,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EACnD,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,EACxB,WAAW,CAAC,EAAE,MAAM,EAAE,EACtB,SAAS,CAAC,EAAE,MAAM,EAClB,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,IAAI,EAC7D,YAAY,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,YAAA;IAUrC;;OAEG;IACI,iBAAiB,IAAI,IAAI;IAWhC;;;;;OAKG;IACI,SAAS,CAAC,CAAC,GAAG,GAAG,EACtB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,CAAC,EACX,OAAO,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,GACxB,IAAI;IAaP;;;OAGG;IACH,mBAAmB,IAAI,IAAI;IAiD3B;;;OAGG;IACH,wBAAwB,IAAI,IAAI;IAuChC;;;;;;OAMG;IACG,aAAa,CACjB,MAAM,EAAE,MAAM,EAAE,EAChB,OAAO,GAAE,MAAc,GACtB,OAAO,CAAC,GAAG,EAAE,CAAC;IA2CjB;;;;OAIG;IACH,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,GAAG,IAAI;IAI9D;;;;OAIG;IACH,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI;IAIzC;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAIxB;;;;;;;;;OASG;YACW,WAAW;IAuCnB,uBAAuB,CAC3B,UAAU,EAAE,MAAM,EAAE,EACpB,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,GAClD,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;CA+C5B"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"event-manager.js","sourceRoot":"","sources":["../../graph/event-manager.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+BAAmD;AAMnD;;;;GAIG;AACH,MAAa,iBAAiB;IAS5B;;;;;;;;;;OAUG;IACH,YACU,YAA2B,EAC3B,
|
1
|
+
{"version":3,"file":"event-manager.js","sourceRoot":"","sources":["../../graph/event-manager.ts"],"names":[],"mappings":"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"}
|
package/dist/graph/index.d.ts
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
import { ZodSchema } from "zod";
|
2
2
|
import { GraphObservable } from "../interfaces";
|
3
|
-
import {
|
3
|
+
import { GraphConfig, GraphContext, GraphNodeConfig } from "../types";
|
4
4
|
import { NodeParams } from "./node";
|
5
5
|
import { GraphObserver } from "./observer";
|
6
6
|
/**
|
@@ -25,7 +25,7 @@ export declare class GraphFlow<T extends ZodSchema> {
|
|
25
25
|
private graphEvents?;
|
26
26
|
private entryNode?;
|
27
27
|
private verbose;
|
28
|
-
nodes: Map<string,
|
28
|
+
nodes: Map<string, GraphNodeConfig<T, any>>;
|
29
29
|
private eventSubject;
|
30
30
|
private stateSubject;
|
31
31
|
private destroySubject;
|
@@ -36,10 +36,10 @@ export declare class GraphFlow<T extends ZodSchema> {
|
|
36
36
|
/**
|
37
37
|
* Creates a new instance of GraphFlow
|
38
38
|
* @param {string} name - The name of the graph flow
|
39
|
-
* @param {
|
39
|
+
* @param {GraphConfig<T>} config - Configuration object containing nodes, schema, context, and error handlers
|
40
40
|
* @param {Object} options - Optional options for the graph flow
|
41
41
|
*/
|
42
|
-
constructor(name: string, config:
|
42
|
+
constructor(name: string, config: GraphConfig<T>, options?: {
|
43
43
|
verbose?: boolean;
|
44
44
|
});
|
45
45
|
/**
|
@@ -121,9 +121,9 @@ export declare class GraphFlow<T extends ZodSchema> {
|
|
121
121
|
on(eventName: string, handler: (...args: any[]) => void): void;
|
122
122
|
/**
|
123
123
|
* Updates the graph definition with new configuration
|
124
|
-
* @param {
|
124
|
+
* @param {GraphConfig<T>} definition - New graph definition
|
125
125
|
*/
|
126
|
-
load(definition:
|
126
|
+
load(definition: GraphConfig<T>): void;
|
127
127
|
/**
|
128
128
|
* Gets a copy of the current context
|
129
129
|
* @returns {GraphContext<T>} A deep copy of the current context
|
@@ -137,10 +137,10 @@ export declare class GraphFlow<T extends ZodSchema> {
|
|
137
137
|
log(message: string, data?: any): void;
|
138
138
|
/**
|
139
139
|
* Adds a new node to the graph
|
140
|
-
* @param {
|
140
|
+
* @param {GraphNodeConfig<T, any>} node - Node to add
|
141
141
|
* @throws {Error} If node with same name already exists
|
142
142
|
*/
|
143
|
-
addNode(node:
|
143
|
+
addNode(node: GraphNodeConfig<T, any>): void;
|
144
144
|
/**
|
145
145
|
* Removes a node from the graph
|
146
146
|
* @param {string} nodeName - Name of the node to remove
|
@@ -150,7 +150,7 @@ export declare class GraphFlow<T extends ZodSchema> {
|
|
150
150
|
* Returns all nodes in the graph
|
151
151
|
* @returns {Node<T>[]} Array of all nodes
|
152
152
|
*/
|
153
|
-
getNodes():
|
153
|
+
getNodes(): GraphNodeConfig<T, any>[];
|
154
154
|
/**
|
155
155
|
* Cleanup resources
|
156
156
|
*/
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../graph/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,eAAe,EAAiB,MAAM,eAAe,CAAC;AAC/D,OAAO,
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../graph/index.ts"],"names":[],"mappings":"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"}
|
package/dist/graph/index.js
CHANGED
@@ -33,7 +33,7 @@ class GraphFlow {
|
|
33
33
|
/**
|
34
34
|
* Creates a new instance of GraphFlow
|
35
35
|
* @param {string} name - The name of the graph flow
|
36
|
-
* @param {
|
36
|
+
* @param {GraphConfig<T>} config - Configuration object containing nodes, schema, context, and error handlers
|
37
37
|
* @param {Object} options - Optional options for the graph flow
|
38
38
|
*/
|
39
39
|
constructor(name, config, options = {}) {
|
@@ -210,7 +210,7 @@ class GraphFlow {
|
|
210
210
|
}
|
211
211
|
/**
|
212
212
|
* Updates the graph definition with new configuration
|
213
|
-
* @param {
|
213
|
+
* @param {GraphConfig<T>} definition - New graph definition
|
214
214
|
*/
|
215
215
|
load(definition) {
|
216
216
|
var _a;
|
@@ -267,7 +267,7 @@ class GraphFlow {
|
|
267
267
|
}
|
268
268
|
/**
|
269
269
|
* Adds a new node to the graph
|
270
|
-
* @param {
|
270
|
+
* @param {GraphNodeConfig<T, any>} node - Node to add
|
271
271
|
* @throws {Error} If node with same name already exists
|
272
272
|
*/
|
273
273
|
addNode(node) {
|
package/dist/graph/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../graph/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mCAAsC;AACtC,+BAAgD;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../graph/index.ts"],"names":[],"mappings":"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"}
|
package/dist/graph/node.d.ts
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
import { BehaviorSubject, Subject } from "rxjs";
|
2
2
|
import { ZodSchema } from "zod";
|
3
|
-
import { GraphContext, GraphEvent,
|
3
|
+
import { GraphContext, GraphEvent, GraphNodeConfig } from "../types";
|
4
4
|
import { GraphEventManager } from "./event-manager";
|
5
5
|
/**
|
6
6
|
* Represents a node in the graph that can execute operations and manage state
|
@@ -28,7 +28,7 @@ export declare class GraphNode<T extends ZodSchema> {
|
|
28
28
|
* @param eventSubject - Subject for emitting events
|
29
29
|
* @param stateSubject - Subject for managing graph state
|
30
30
|
*/
|
31
|
-
constructor(nodes: Map<string,
|
31
|
+
constructor(nodes: Map<string, GraphNodeConfig<T, any>>, logger: GraphLogger, eventManager: GraphEventManager<T>, eventSubject: Subject<GraphEvent<T>>, stateSubject: BehaviorSubject<GraphContext<T>>);
|
32
32
|
/**
|
33
33
|
* Emits an event with the specified type and payload
|
34
34
|
* @param type - The type of event to emit
|
package/dist/graph/node.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../graph/node.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../graph/node.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD;;;GAGG;AACH,MAAM,WAAW,UAAU,CAAC,CAAC,GAAG,GAAG;IACjC,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;CAC/C;AAED,qBAAa,SAAS,CAAC,CAAC,SAAS,SAAS;IAatC,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,YAAY;IAhBtB,OAAO,CAAC,cAAc,CAA8B;IACpD,OAAO,CAAC,YAAY,CAAgB;IAEpC;;;;;;;OAOG;gBAEO,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAC3C,MAAM,EAAE,WAAW,EACnB,YAAY,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAClC,YAAY,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EACpC,YAAY,EAAE,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAKxD;;;;;OAKG;IACH,OAAO,CAAC,SAAS;IA+BjB;;;;;;;OAOG;IACU,WAAW,CACtB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,EACxB,MAAM,EAAE,GAAG,EACX,gBAAgB,GAAE,OAAe,GAChC,OAAO,CAAC,IAAI,CAAC;IAsEhB;;;;;;;OAOG;YACW,cAAc;IAoB5B;;;;;;OAMG;YACW,YAAY;IAc1B;;;;;;;;;OASG;YACW,gBAAgB;IAyC9B;;;;;;OAMG;YACW,sBAAsB;IAuCpC;;;;;;OAMG;YACW,mBAAmB;CAalC"}
|
package/dist/graph/node.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"node.js","sourceRoot":"","sources":["../../graph/node.ts"],"names":[],"mappings":";;;;;;;;;;;;AAkBA,MAAa,SAAS;IAIpB;;;;;;;OAOG;IACH,YACU,
|
1
|
+
{"version":3,"file":"node.js","sourceRoot":"","sources":["../../graph/node.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
@@ -11,7 +11,10 @@
|
|
11
11
|
* - Utility functions for action schema generation and header building
|
12
12
|
*/
|
13
13
|
export * from "./graph/controller";
|
14
|
+
export * from "./graph/event-manager";
|
14
15
|
export * from "./graph/index";
|
16
|
+
export * from "./graph/node";
|
17
|
+
export * from "./graph/observer";
|
15
18
|
export * from "./modules/memory";
|
16
19
|
export * from "./modules/memory/adapters/in-memory";
|
17
20
|
export * from "./modules/memory/adapters/meilisearch";
|
package/dist/index.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,qCAAqC,CAAC;AACpD,cAAc,uCAAuC,CAAC;AACtD,cAAc,iCAAiC,CAAC;AAEhD,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,qCAAqC,CAAC;AACpD,cAAc,qBAAqB,CAAC;AACpC,cAAc,iCAAiC,CAAC;AAEhD,cAAc,SAAS,CAAC;AAExB,cAAc,gCAAgC,CAAC;AAC/C,cAAc,wBAAwB,CAAC"}
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AAEjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qCAAqC,CAAC;AACpD,cAAc,uCAAuC,CAAC;AACtD,cAAc,iCAAiC,CAAC;AAEhD,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,qCAAqC,CAAC;AACpD,cAAc,qBAAqB,CAAC;AACpC,cAAc,iCAAiC,CAAC;AAEhD,cAAc,SAAS,CAAC;AAExB,cAAc,gCAAgC,CAAC;AAC/C,cAAc,wBAAwB,CAAC"}
|
package/dist/index.js
CHANGED
@@ -27,7 +27,10 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
27
27
|
};
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
29
29
|
__exportStar(require("./graph/controller"), exports);
|
30
|
+
__exportStar(require("./graph/event-manager"), exports);
|
30
31
|
__exportStar(require("./graph/index"), exports);
|
32
|
+
__exportStar(require("./graph/node"), exports);
|
33
|
+
__exportStar(require("./graph/observer"), exports);
|
31
34
|
__exportStar(require("./modules/memory"), exports);
|
32
35
|
__exportStar(require("./modules/memory/adapters/in-memory"), exports);
|
33
36
|
__exportStar(require("./modules/memory/adapters/meilisearch"), exports);
|
package/dist/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;;;;;;;;;;;;;;;AAEH,qDAAmC;AACnC,gDAA8B;AAC9B,mDAAiC;AACjC,sEAAoD;AACpD,wEAAsD;AACtD,kEAAgD;AAEhD,+CAA6B;AAC7B,mDAAiC;AACjC,sEAAoD;AACpD,sDAAoC;AACpC,kEAAgD;AAEhD,0CAAwB;AAExB,iEAA+C;AAC/C,yDAAuC"}
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;;;;;;;;;;;;;;;AAEH,qDAAmC;AACnC,wDAAsC;AACtC,gDAA8B;AAC9B,+CAA6B;AAC7B,mDAAiC;AAEjC,mDAAiC;AACjC,sEAAoD;AACpD,wEAAsD;AACtD,kEAAgD;AAEhD,+CAA6B;AAC7B,mDAAiC;AACjC,sEAAoD;AACpD,sDAAoC;AACpC,kEAAgD;AAEhD,0CAAwB;AAExB,iEAA+C;AAC/C,yDAAuC"}
|
package/dist/types/index.d.ts
CHANGED
@@ -68,7 +68,7 @@ export type GraphContext<T extends ZodSchema> = {
|
|
68
68
|
* @template I - Input schema type
|
69
69
|
* @template O - Output schema type
|
70
70
|
*/
|
71
|
-
export
|
71
|
+
export type GraphNodeConfig<T extends ZodSchema, P = any> = {
|
72
72
|
/** Name of the node */
|
73
73
|
name: string;
|
74
74
|
/** Description of the node */
|
@@ -108,17 +108,17 @@ export interface Node<T extends ZodSchema, P = any> {
|
|
108
108
|
};
|
109
109
|
/** Error handler function */
|
110
110
|
onError?: (error: Error) => void;
|
111
|
-
}
|
111
|
+
};
|
112
112
|
/**
|
113
113
|
* Interface for graph definition
|
114
114
|
* @interface
|
115
115
|
* @template T - Schema type
|
116
116
|
*/
|
117
|
-
export
|
117
|
+
export type GraphConfig<T extends ZodSchema> = {
|
118
118
|
/** Name of the graph */
|
119
119
|
name: string;
|
120
120
|
/** Array of nodes in the graph */
|
121
|
-
nodes:
|
121
|
+
nodes: GraphNodeConfig<T, any>[];
|
122
122
|
/** Initial context */
|
123
123
|
context: SchemaType<T>;
|
124
124
|
/** Schema for validation */
|
@@ -131,7 +131,7 @@ export interface GraphDefinition<T extends ZodSchema> {
|
|
131
131
|
eventEmitter?: IEventEmitter | EventEmitter;
|
132
132
|
/** Array of events */
|
133
133
|
events?: string[];
|
134
|
-
}
|
134
|
+
};
|
135
135
|
/**
|
136
136
|
* Configuration type for Meilisearch
|
137
137
|
* @typedef {Object} MeilisearchConfig
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAI9C;;;;;;;GAOG;AACH,MAAM,WAAW,iBAAiB;IAChC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,IAAI,CAAC;CACjB;AAID;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,kDAAkD;IAClD,EAAE,EAAE,MAAM,CAAC;IACX,kCAAkC;IAClC,eAAe,EAAE,MAAM,CAAC;IACxB,yCAAyC;IACzC,cAAc,EAAE,MAAM,CAAC;IACvB,uCAAuC;IACvC,WAAW,EAAE,OAAO,CAAC;IACrB,wBAAwB;IACxB,SAAS,EAAE,IAAI,CAAC;CACjB,CAAC;AAIF;;;GAGG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAErE;;;GAGG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,SAAS,IAAI;IAC9C,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAI9C;;;;;;;GAOG;AACH,MAAM,WAAW,iBAAiB;IAChC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,IAAI,CAAC;CACjB;AAID;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,kDAAkD;IAClD,EAAE,EAAE,MAAM,CAAC;IACX,kCAAkC;IAClC,eAAe,EAAE,MAAM,CAAC;IACxB,yCAAyC;IACzC,cAAc,EAAE,MAAM,CAAC;IACvB,uCAAuC;IACvC,WAAW,EAAE,OAAO,CAAC;IACrB,wBAAwB;IACxB,SAAS,EAAE,IAAI,CAAC;CACjB,CAAC;AAIF;;;GAGG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAErE;;;GAGG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,SAAS,IAAI;IAC9C,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,SAAS,EAAE,CAAC,GAAG,GAAG,IAAI;IAC1D,uBAAuB;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,8BAA8B;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,6BAA6B;IAC7B,MAAM,CAAC,EAAE,CAAC,SAAS,IAAI,GAAG,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IAC/C,oCAAoC;IACpC,OAAO,EAAE,CACP,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,EACxB,MAAM,CAAC,EAAE,CAAC,EACV,KAAK,CAAC,EAAE;QAAE,YAAY,EAAE,aAAa,CAAA;KAAE,KACpC,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,4CAA4C;IAC5C,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC,KAAK,OAAO,CAAC;IAC9D,+BAA+B;IAC/B,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC,CAAC;IAC3D,kDAAkD;IAClD,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,gDAAgD;IAChD,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,6CAA6C;IAC7C,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,sCAAsC;IACtC,eAAe,CAAC,EAAE;QAChB,MAAM,EAAE,MAAM,EAAE,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC;KACzC,CAAC;IACF,0BAA0B;IAC1B,KAAK,CAAC,EAAE;QACN,uCAAuC;QACvC,WAAW,EAAE,MAAM,CAAC;QACpB,4CAA4C;QAC5C,KAAK,EAAE,MAAM,CAAC;QACd,6BAA6B;QAC7B,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;QAC1E,yCAAyC;QACzC,gBAAgB,CAAC,EAAE,OAAO,CAAC;KAC5B,CAAC;IACF,6BAA6B;IAC7B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAClC,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,SAAS,IAAI;IAC7C,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,kCAAkC;IAClC,KAAK,EAAE,eAAe,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;IACjC,sBAAsB;IACtB,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;IACvB,4BAA4B;IAC5B,MAAM,EAAE,CAAC,CAAC;IACV,2BAA2B;IAC3B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IAC3D,sBAAsB;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6BAA6B;IAC7B,YAAY,CAAC,EAAE,aAAa,GAAG,YAAY,CAAC;IAC5C,sBAAsB;IACtB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB,CAAC;AAIF;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,2BAA2B;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,iCAAiC;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,qCAAqC;IACrC,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,mCAAmC;IACnC,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC/B,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,qCAAqC;IACrC,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,mCAAmC;IACnC,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC/B,CAAC;AAEF,MAAM,WAAW,UAAU,CAAC,CAAC,SAAS,SAAS;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;IACjC,SAAS,CAAC,EAAE,CAAC,CAAC,SAAS,SAAS,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9E"}
|
package/graph/event-manager.ts
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
import { Observable, Subject, filter } from "rxjs";
|
2
2
|
import { ZodSchema } from "zod";
|
3
3
|
import { IEventEmitter } from "../interfaces";
|
4
|
-
import { GraphContext, GraphEvent,
|
4
|
+
import { GraphContext, GraphEvent, GraphNodeConfig } from "../types";
|
5
5
|
import { GraphNode } from "./node";
|
6
6
|
|
7
7
|
/**
|
@@ -31,7 +31,7 @@ export class GraphEventManager<T extends ZodSchema> {
|
|
31
31
|
*/
|
32
32
|
constructor(
|
33
33
|
private eventEmitter: IEventEmitter,
|
34
|
-
private nodes: Map<string,
|
34
|
+
private nodes: Map<string, GraphNodeConfig<T, any>>,
|
35
35
|
name: string,
|
36
36
|
context: GraphContext<T>,
|
37
37
|
graphEvents?: string[],
|
package/graph/index.ts
CHANGED
@@ -2,7 +2,12 @@ import { EventEmitter } from "events";
|
|
2
2
|
import { BehaviorSubject, Subject } from "rxjs";
|
3
3
|
import { ZodSchema } from "zod";
|
4
4
|
import { GraphObservable, IEventEmitter } from "../interfaces";
|
5
|
-
import {
|
5
|
+
import {
|
6
|
+
GraphConfig,
|
7
|
+
GraphContext,
|
8
|
+
GraphEvent,
|
9
|
+
GraphNodeConfig,
|
10
|
+
} from "../types";
|
6
11
|
import { GraphEventManager } from "./event-manager";
|
7
12
|
import { GraphLogger } from "./logger";
|
8
13
|
import { GraphNode, NodeParams } from "./node";
|
@@ -29,7 +34,7 @@ export class GraphFlow<T extends ZodSchema> {
|
|
29
34
|
private graphEvents?: string[];
|
30
35
|
private entryNode?: string;
|
31
36
|
private verbose: boolean = false;
|
32
|
-
public nodes: Map<string,
|
37
|
+
public nodes: Map<string, GraphNodeConfig<T, any>>;
|
33
38
|
|
34
39
|
private eventSubject: Subject<GraphEvent<T>> = new Subject();
|
35
40
|
private stateSubject: BehaviorSubject<GraphContext<T>>;
|
@@ -43,16 +48,16 @@ export class GraphFlow<T extends ZodSchema> {
|
|
43
48
|
/**
|
44
49
|
* Creates a new instance of GraphFlow
|
45
50
|
* @param {string} name - The name of the graph flow
|
46
|
-
* @param {
|
51
|
+
* @param {GraphConfig<T>} config - Configuration object containing nodes, schema, context, and error handlers
|
47
52
|
* @param {Object} options - Optional options for the graph flow
|
48
53
|
*/
|
49
54
|
constructor(
|
50
55
|
public name: string,
|
51
|
-
config:
|
56
|
+
config: GraphConfig<T>,
|
52
57
|
options: { verbose?: boolean } = {}
|
53
58
|
) {
|
54
59
|
this.nodes = new Map(
|
55
|
-
config.nodes.map((node:
|
60
|
+
config.nodes.map((node: GraphNodeConfig<T, any>) => [node.name, node])
|
56
61
|
);
|
57
62
|
this.validator = config.schema;
|
58
63
|
this.context = config.schema.parse(config.context) as GraphContext<T>;
|
@@ -75,7 +80,7 @@ export class GraphFlow<T extends ZodSchema> {
|
|
75
80
|
config.onError
|
76
81
|
);
|
77
82
|
this.nodeExecutor = new GraphNode(
|
78
|
-
this.nodes as Map<string,
|
83
|
+
this.nodes as Map<string, GraphNodeConfig<T, any>>,
|
79
84
|
this.logger,
|
80
85
|
this.eventManager,
|
81
86
|
this.eventSubject,
|
@@ -288,9 +293,9 @@ export class GraphFlow<T extends ZodSchema> {
|
|
288
293
|
|
289
294
|
/**
|
290
295
|
* Updates the graph definition with new configuration
|
291
|
-
* @param {
|
296
|
+
* @param {GraphConfig<T>} definition - New graph definition
|
292
297
|
*/
|
293
|
-
public load(definition:
|
298
|
+
public load(definition: GraphConfig<T>): void {
|
294
299
|
// Clear all existing nodes
|
295
300
|
this.nodes.clear();
|
296
301
|
// Wipe out old node-based event listeners
|
@@ -358,10 +363,10 @@ export class GraphFlow<T extends ZodSchema> {
|
|
358
363
|
|
359
364
|
/**
|
360
365
|
* Adds a new node to the graph
|
361
|
-
* @param {
|
366
|
+
* @param {GraphNodeConfig<T, any>} node - Node to add
|
362
367
|
* @throws {Error} If node with same name already exists
|
363
368
|
*/
|
364
|
-
public addNode(node:
|
369
|
+
public addNode(node: GraphNodeConfig<T, any>): void {
|
365
370
|
this.nodes.set(node.name, node);
|
366
371
|
this.eventManager.setupEventListeners();
|
367
372
|
}
|
@@ -379,7 +384,7 @@ export class GraphFlow<T extends ZodSchema> {
|
|
379
384
|
* Returns all nodes in the graph
|
380
385
|
* @returns {Node<T>[]} Array of all nodes
|
381
386
|
*/
|
382
|
-
public getNodes():
|
387
|
+
public getNodes(): GraphNodeConfig<T, any>[] {
|
383
388
|
return Array.from(this.nodes.values());
|
384
389
|
}
|
385
390
|
|
package/graph/node.ts
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
import { IEventEmitter } from "interfaces";
|
2
2
|
import { BehaviorSubject, Subject } from "rxjs";
|
3
3
|
import { ZodSchema } from "zod";
|
4
|
-
import { GraphContext, GraphEvent,
|
4
|
+
import { GraphContext, GraphEvent, GraphNodeConfig } from "../types";
|
5
5
|
import { GraphEventManager } from "./event-manager";
|
6
6
|
|
7
7
|
/**
|
@@ -29,7 +29,7 @@ export class GraphNode<T extends ZodSchema> {
|
|
29
29
|
* @param stateSubject - Subject for managing graph state
|
30
30
|
*/
|
31
31
|
constructor(
|
32
|
-
private nodes: Map<string,
|
32
|
+
private nodes: Map<string, GraphNodeConfig<T, any>>,
|
33
33
|
private logger: GraphLogger,
|
34
34
|
private eventManager: GraphEventManager<T>,
|
35
35
|
private eventSubject: Subject<GraphEvent<T>>,
|
@@ -167,7 +167,7 @@ export class GraphNode<T extends ZodSchema> {
|
|
167
167
|
* @private
|
168
168
|
*/
|
169
169
|
private async validateParams(
|
170
|
-
node:
|
170
|
+
node: GraphNodeConfig<T, any>,
|
171
171
|
params: any,
|
172
172
|
nodeName: string
|
173
173
|
): Promise<void> {
|
@@ -194,7 +194,7 @@ export class GraphNode<T extends ZodSchema> {
|
|
194
194
|
* @private
|
195
195
|
*/
|
196
196
|
private async handleEvents(
|
197
|
-
node:
|
197
|
+
node: GraphNodeConfig<T, any>,
|
198
198
|
nodeName: string,
|
199
199
|
context: GraphContext<T>
|
200
200
|
): Promise<void> {
|
@@ -218,7 +218,7 @@ export class GraphNode<T extends ZodSchema> {
|
|
218
218
|
* @private
|
219
219
|
*/
|
220
220
|
private async executeWithRetry(
|
221
|
-
node:
|
221
|
+
node: GraphNodeConfig<T, any>,
|
222
222
|
contextProxy: GraphContext<T>,
|
223
223
|
nodeName: string,
|
224
224
|
params?: NodeParams
|
@@ -266,7 +266,7 @@ export class GraphNode<T extends ZodSchema> {
|
|
266
266
|
* @private
|
267
267
|
*/
|
268
268
|
private async handleCorrelatedEvents(
|
269
|
-
node:
|
269
|
+
node: GraphNodeConfig<T, any>,
|
270
270
|
nodeName: string
|
271
271
|
): Promise<void> {
|
272
272
|
if (node.correlateEvents) {
|
@@ -312,7 +312,7 @@ export class GraphNode<T extends ZodSchema> {
|
|
312
312
|
* @private
|
313
313
|
*/
|
314
314
|
private async handleWaitForEvents(
|
315
|
-
node:
|
315
|
+
node: GraphNodeConfig<T, any>,
|
316
316
|
nodeName: string
|
317
317
|
): Promise<void> {
|
318
318
|
if (node.waitForEvents) {
|
package/index.ts
CHANGED
@@ -12,7 +12,11 @@
|
|
12
12
|
*/
|
13
13
|
|
14
14
|
export * from "./graph/controller";
|
15
|
+
export * from "./graph/event-manager";
|
15
16
|
export * from "./graph/index";
|
17
|
+
export * from "./graph/node";
|
18
|
+
export * from "./graph/observer";
|
19
|
+
|
16
20
|
export * from "./modules/memory";
|
17
21
|
export * from "./modules/memory/adapters/in-memory";
|
18
22
|
export * from "./modules/memory/adapters/meilisearch";
|
package/package.json
CHANGED
@@ -2,7 +2,7 @@ import { expect } from "chai";
|
|
2
2
|
import { z } from "zod";
|
3
3
|
import { GraphController } from "../../graph/controller";
|
4
4
|
import { GraphFlow } from "../../graph/index";
|
5
|
-
import {
|
5
|
+
import { GraphNodeConfig } from "../../types";
|
6
6
|
|
7
7
|
describe("GraphController", () => {
|
8
8
|
const TestSchema = z.object({
|
@@ -11,7 +11,7 @@ describe("GraphController", () => {
|
|
11
11
|
});
|
12
12
|
|
13
13
|
const createTestGraph = (name: string): GraphFlow<typeof TestSchema> => {
|
14
|
-
const nodes:
|
14
|
+
const nodes: GraphNodeConfig<typeof TestSchema>[] = [
|
15
15
|
{
|
16
16
|
name: "start",
|
17
17
|
execute: async (context, params) => {
|
package/test/graph/index.test.ts
CHANGED
@@ -6,7 +6,7 @@ import { z } from "zod";
|
|
6
6
|
import { GraphController } from "../../graph/controller";
|
7
7
|
import { GraphFlow } from "../../graph/index";
|
8
8
|
import { NodeParams } from "../../graph/node";
|
9
|
-
import { GraphContext,
|
9
|
+
import { GraphContext, GraphConfig, GraphNodeConfig } from "../../types";
|
10
10
|
|
11
11
|
use(chaiAsPromised);
|
12
12
|
|
@@ -69,7 +69,7 @@ describe("GraphFlow", function () {
|
|
69
69
|
* - The updated context is accessible after execution
|
70
70
|
*/
|
71
71
|
it("should execute a simple node and update the context", async function () {
|
72
|
-
const simpleNode:
|
72
|
+
const simpleNode: GraphNodeConfig<TestSchema> = {
|
73
73
|
name: "simpleNode",
|
74
74
|
execute: async (context) => {
|
75
75
|
context.value = (context.value ?? 0) + 1;
|
@@ -98,7 +98,7 @@ describe("GraphFlow", function () {
|
|
98
98
|
graph.on("nodeStarted", nodeStartedSpy);
|
99
99
|
graph.on("nodeCompleted", nodeCompletedSpy);
|
100
100
|
|
101
|
-
const testNode:
|
101
|
+
const testNode: GraphNodeConfig<TestSchema> = {
|
102
102
|
name: "testNode",
|
103
103
|
execute: async (context) => {
|
104
104
|
context.value = (context.value ?? 0) + 1;
|
@@ -122,7 +122,7 @@ describe("GraphFlow", function () {
|
|
122
122
|
* This ensures robust error handling in the workflow
|
123
123
|
*/
|
124
124
|
it("should handle errors and trigger `nodeError` event", async function () {
|
125
|
-
const errorNode:
|
125
|
+
const errorNode: GraphNodeConfig<TestSchema> = {
|
126
126
|
name: "errorNode",
|
127
127
|
execute: async () => {
|
128
128
|
throw new Error("Test error");
|
@@ -155,7 +155,7 @@ describe("GraphFlow", function () {
|
|
155
155
|
const invalidContext = { value: "invalid_string" };
|
156
156
|
|
157
157
|
try {
|
158
|
-
const simpleNode:
|
158
|
+
const simpleNode: GraphNodeConfig<TestSchema> = {
|
159
159
|
name: "simpleNode",
|
160
160
|
execute: async (context) => {
|
161
161
|
context.value = (context.value ?? 0) + 1;
|
@@ -181,7 +181,7 @@ describe("GraphFlow", function () {
|
|
181
181
|
* Ensures type safety and data consistency in node interactions
|
182
182
|
*/
|
183
183
|
it("should execute a node with validated params and outputs", async function () {
|
184
|
-
const paramNode:
|
184
|
+
const paramNode: GraphNodeConfig<TestSchema, { increment: number }> = {
|
185
185
|
name: "paramNode",
|
186
186
|
params: z.object({
|
187
187
|
increment: z.number(),
|
@@ -209,7 +209,7 @@ describe("GraphFlow", function () {
|
|
209
209
|
* This enables dynamic workflow paths based on state
|
210
210
|
*/
|
211
211
|
it("should not execute a node when condition is false", async function () {
|
212
|
-
const conditionalNode:
|
212
|
+
const conditionalNode: GraphNodeConfig<TestSchema> = {
|
213
213
|
name: "conditionalNode",
|
214
214
|
condition: (context) => (context.value ?? 0) > 0,
|
215
215
|
execute: async (context) => {
|
@@ -236,7 +236,7 @@ describe("GraphFlow", function () {
|
|
236
236
|
*/
|
237
237
|
it("should retry a node execution when it fails", async () => {
|
238
238
|
let attempts = 0;
|
239
|
-
const retryNode:
|
239
|
+
const retryNode: GraphNodeConfig<TestSchema> = {
|
240
240
|
name: "retryNode",
|
241
241
|
execute: async (context) => {
|
242
242
|
attempts++;
|
@@ -267,7 +267,7 @@ describe("GraphFlow", function () {
|
|
267
267
|
* Tests node removal functionality
|
268
268
|
*/
|
269
269
|
it("should remove a node from the graph", function () {
|
270
|
-
const testNode:
|
270
|
+
const testNode: GraphNodeConfig<TestSchema> = {
|
271
271
|
name: "testNode",
|
272
272
|
execute: async () => {},
|
273
273
|
};
|
@@ -281,16 +281,16 @@ describe("GraphFlow", function () {
|
|
281
281
|
* Tests graph reloading functionality
|
282
282
|
*/
|
283
283
|
it("should clear and reload the graph using `load`", function () {
|
284
|
-
const nodeA:
|
284
|
+
const nodeA: GraphNodeConfig<TestSchema> = {
|
285
285
|
name: "A",
|
286
286
|
execute: async () => {},
|
287
287
|
};
|
288
|
-
const nodeB:
|
288
|
+
const nodeB: GraphNodeConfig<TestSchema> = {
|
289
289
|
name: "B",
|
290
290
|
execute: async () => {},
|
291
291
|
};
|
292
292
|
|
293
|
-
const newDefinition:
|
293
|
+
const newDefinition: GraphConfig<TestSchema> = {
|
294
294
|
name: "TestGraph",
|
295
295
|
entryNode: "A",
|
296
296
|
nodes: [nodeA, nodeB],
|
@@ -307,7 +307,7 @@ describe("GraphFlow", function () {
|
|
307
307
|
* Tests input validation error handling
|
308
308
|
*/
|
309
309
|
it("should throw error when node input validation fails", async () => {
|
310
|
-
const node:
|
310
|
+
const node: GraphNodeConfig<TestSchema> = {
|
311
311
|
name: "test",
|
312
312
|
params: z.object({
|
313
313
|
value: z.number().min(0),
|
@@ -406,7 +406,7 @@ describe("GraphFlow", function () {
|
|
406
406
|
* This validates the graph's ability to handle complex business processes
|
407
407
|
*/
|
408
408
|
it("should execute a complex workflow with multiple nodes and accumulate the value", async function () {
|
409
|
-
const nodeA:
|
409
|
+
const nodeA: GraphNodeConfig<TestSchema> = {
|
410
410
|
name: "nodeA",
|
411
411
|
execute: async (context) => {
|
412
412
|
context.value = (context.value ?? 0) + 1;
|
@@ -414,7 +414,7 @@ describe("GraphFlow", function () {
|
|
414
414
|
next: ["nodeB1", "nodeB2"],
|
415
415
|
};
|
416
416
|
|
417
|
-
const nodeB1:
|
417
|
+
const nodeB1: GraphNodeConfig<TestSchema> = {
|
418
418
|
name: "nodeB1",
|
419
419
|
execute: async (context) => {
|
420
420
|
context.value = (context.value ?? 0) * 2;
|
@@ -422,7 +422,7 @@ describe("GraphFlow", function () {
|
|
422
422
|
next: ["nodeC"],
|
423
423
|
};
|
424
424
|
|
425
|
-
const nodeB2:
|
425
|
+
const nodeB2: GraphNodeConfig<TestSchema> = {
|
426
426
|
name: "nodeB2",
|
427
427
|
execute: async (context) => {
|
428
428
|
context.value = (context.value ?? 0) + 3;
|
@@ -430,7 +430,7 @@ describe("GraphFlow", function () {
|
|
430
430
|
next: ["nodeC"],
|
431
431
|
};
|
432
432
|
|
433
|
-
const nodeC:
|
433
|
+
const nodeC: GraphNodeConfig<TestSchema> = {
|
434
434
|
name: "nodeC",
|
435
435
|
execute: async (context) => {
|
436
436
|
context.value = (context.value ?? 0) + 5;
|
@@ -447,7 +447,7 @@ describe("GraphFlow", function () {
|
|
447
447
|
* Tests conditional branching in workflows
|
448
448
|
*/
|
449
449
|
it("should execute different branches based on conditions", async function () {
|
450
|
-
const startNode:
|
450
|
+
const startNode: GraphNodeConfig<TestSchema> = {
|
451
451
|
name: "start",
|
452
452
|
execute: async (context) => {
|
453
453
|
context.value = (context.value ?? 0) + 5;
|
@@ -455,7 +455,7 @@ describe("GraphFlow", function () {
|
|
455
455
|
next: ["end"],
|
456
456
|
};
|
457
457
|
|
458
|
-
const endNode:
|
458
|
+
const endNode: GraphNodeConfig<TestSchema> = {
|
459
459
|
name: "end",
|
460
460
|
execute: async (context) => {
|
461
461
|
if ((context.value ?? 0) < 10) {
|
@@ -490,7 +490,7 @@ describe("GraphFlow", function () {
|
|
490
490
|
schema: TestSchema,
|
491
491
|
});
|
492
492
|
|
493
|
-
const processNode1:
|
493
|
+
const processNode1: GraphNodeConfig<TestSchema> = {
|
494
494
|
name: "process1",
|
495
495
|
execute: async (context) => {
|
496
496
|
context.value = 1;
|
@@ -498,7 +498,7 @@ describe("GraphFlow", function () {
|
|
498
498
|
next: ["finalize1"],
|
499
499
|
};
|
500
500
|
|
501
|
-
const finalizeNode1:
|
501
|
+
const finalizeNode1: GraphNodeConfig<TestSchema> = {
|
502
502
|
name: "finalize1",
|
503
503
|
execute: async (context) => {
|
504
504
|
context.value = (context.value ?? 0) * 2;
|
@@ -513,7 +513,7 @@ describe("GraphFlow", function () {
|
|
513
513
|
schema: TestSchema,
|
514
514
|
});
|
515
515
|
|
516
|
-
const processNode2:
|
516
|
+
const processNode2: GraphNodeConfig<TestSchema> = {
|
517
517
|
name: "process2",
|
518
518
|
execute: async (context) => {
|
519
519
|
context.value = 2;
|
@@ -521,7 +521,7 @@ describe("GraphFlow", function () {
|
|
521
521
|
next: ["finalize2"],
|
522
522
|
};
|
523
523
|
|
524
|
-
const finalizeNode2:
|
524
|
+
const finalizeNode2: GraphNodeConfig<TestSchema> = {
|
525
525
|
name: "finalize2",
|
526
526
|
execute: async (context) => {
|
527
527
|
context.value = (context.value ?? 0) + 3;
|
@@ -556,7 +556,7 @@ describe("GraphFlow", function () {
|
|
556
556
|
schema: TestSchema,
|
557
557
|
});
|
558
558
|
|
559
|
-
const startNode1:
|
559
|
+
const startNode1: GraphNodeConfig<TestSchema> = {
|
560
560
|
name: "start1",
|
561
561
|
execute: async (context) => {
|
562
562
|
context.value = (context.value ?? 0) * 2;
|
@@ -571,7 +571,7 @@ describe("GraphFlow", function () {
|
|
571
571
|
schema: TestSchema,
|
572
572
|
});
|
573
573
|
|
574
|
-
const startNode2:
|
574
|
+
const startNode2: GraphNodeConfig<TestSchema> = {
|
575
575
|
name: "start2",
|
576
576
|
execute: async (context) => {
|
577
577
|
context.value = (context.value ?? 0) + 2;
|
@@ -597,7 +597,7 @@ describe("GraphFlow", function () {
|
|
597
597
|
it("should wait for a single event before continuing", async function () {
|
598
598
|
this.timeout(5000);
|
599
599
|
|
600
|
-
const waitingNode:
|
600
|
+
const waitingNode: GraphNodeConfig<TestSchema> = {
|
601
601
|
name: "waitingNode",
|
602
602
|
execute: async (context: GraphContext<typeof TestSchema>) => {
|
603
603
|
context.value = 1;
|
@@ -606,7 +606,7 @@ describe("GraphFlow", function () {
|
|
606
606
|
next: ["finalNode"],
|
607
607
|
};
|
608
608
|
|
609
|
-
const finalNode:
|
609
|
+
const finalNode: GraphNodeConfig<TestSchema> = {
|
610
610
|
name: "finalNode",
|
611
611
|
execute: async (context: GraphContext<typeof TestSchema>) => {
|
612
612
|
context.value = (context.value ?? 0) + 5;
|
@@ -3,7 +3,7 @@ import { BehaviorSubject, Subject } from "rxjs";
|
|
3
3
|
import { z } from "zod";
|
4
4
|
import { GraphFlow } from "../../graph";
|
5
5
|
import { GraphObserver } from "../../graph/observer";
|
6
|
-
import { GraphContext, GraphEvent,
|
6
|
+
import { GraphContext, GraphEvent, GraphNodeConfig } from "../../types";
|
7
7
|
|
8
8
|
/**
|
9
9
|
* Test schema definition for observer tests
|
@@ -69,7 +69,7 @@ describe("GraphObserver", () => {
|
|
69
69
|
*/
|
70
70
|
it("should observe state changes", async () => {
|
71
71
|
const states: any[] = [];
|
72
|
-
const testNode:
|
72
|
+
const testNode: GraphNodeConfig<typeof TestSchema> = {
|
73
73
|
name: "testNode",
|
74
74
|
execute: async (context) => {
|
75
75
|
context.value = 1;
|
@@ -104,7 +104,7 @@ describe("GraphObserver", () => {
|
|
104
104
|
*/
|
105
105
|
it("should observe specific node state changes", async () => {
|
106
106
|
const states: any[] = [];
|
107
|
-
const testNode:
|
107
|
+
const testNode: GraphNodeConfig<typeof TestSchema> = {
|
108
108
|
name: "testNode",
|
109
109
|
execute: async (context) => {
|
110
110
|
context.status = "pending";
|
@@ -135,13 +135,13 @@ describe("GraphObserver", () => {
|
|
135
135
|
*/
|
136
136
|
it("should observe multiple nodes", async () => {
|
137
137
|
const states: any[] = [];
|
138
|
-
const node1:
|
138
|
+
const node1: GraphNodeConfig<typeof TestSchema> = {
|
139
139
|
name: "node1",
|
140
140
|
execute: async (context) => {
|
141
141
|
context.value = 1;
|
142
142
|
},
|
143
143
|
};
|
144
|
-
const node2:
|
144
|
+
const node2: GraphNodeConfig<typeof TestSchema> = {
|
145
145
|
name: "node2",
|
146
146
|
execute: async (context) => {
|
147
147
|
context.value = 2;
|
@@ -181,7 +181,7 @@ describe("GraphObserver", () => {
|
|
181
181
|
*/
|
182
182
|
it("should observe single property", async () => {
|
183
183
|
const values: any[] = [];
|
184
|
-
const testNode:
|
184
|
+
const testNode: GraphNodeConfig<typeof TestSchema> = {
|
185
185
|
name: "testNode",
|
186
186
|
execute: async (context) => {
|
187
187
|
context.value = 42;
|
@@ -209,7 +209,7 @@ describe("GraphObserver", () => {
|
|
209
209
|
*/
|
210
210
|
it("should observe multiple properties", async () => {
|
211
211
|
const values: any[] = [];
|
212
|
-
const testNode:
|
212
|
+
const testNode: GraphNodeConfig<typeof TestSchema> = {
|
213
213
|
name: "testNode",
|
214
214
|
execute: async (context) => {
|
215
215
|
context.value = 42;
|
@@ -244,7 +244,7 @@ describe("GraphObserver", () => {
|
|
244
244
|
* - State reflects all required changes
|
245
245
|
*/
|
246
246
|
it("should wait for multiple conditions", async () => {
|
247
|
-
const testNode:
|
247
|
+
const testNode: GraphNodeConfig<typeof TestSchema> = {
|
248
248
|
name: "testNode",
|
249
249
|
execute: async (context) => {
|
250
250
|
context.value = 42;
|
@@ -372,7 +372,7 @@ describe("GraphObserver", () => {
|
|
372
372
|
*/
|
373
373
|
it("should observe complete workflow", async () => {
|
374
374
|
const states: any[] = [];
|
375
|
-
const node:
|
375
|
+
const node: GraphNodeConfig<typeof TestSchema> = {
|
376
376
|
name: "testNode",
|
377
377
|
execute: async (context) => {
|
378
378
|
context.status = "pending";
|
package/types/index.ts
CHANGED
@@ -80,7 +80,7 @@ export type GraphContext<T extends ZodSchema> = {
|
|
80
80
|
* @template I - Input schema type
|
81
81
|
* @template O - Output schema type
|
82
82
|
*/
|
83
|
-
export
|
83
|
+
export type GraphNodeConfig<T extends ZodSchema, P = any> = {
|
84
84
|
/** Name of the node */
|
85
85
|
name: string;
|
86
86
|
/** Description of the node */
|
@@ -122,18 +122,18 @@ export interface Node<T extends ZodSchema, P = any> {
|
|
122
122
|
};
|
123
123
|
/** Error handler function */
|
124
124
|
onError?: (error: Error) => void;
|
125
|
-
}
|
125
|
+
};
|
126
126
|
|
127
127
|
/**
|
128
128
|
* Interface for graph definition
|
129
129
|
* @interface
|
130
130
|
* @template T - Schema type
|
131
131
|
*/
|
132
|
-
export
|
132
|
+
export type GraphConfig<T extends ZodSchema> = {
|
133
133
|
/** Name of the graph */
|
134
134
|
name: string;
|
135
135
|
/** Array of nodes in the graph */
|
136
|
-
nodes:
|
136
|
+
nodes: GraphNodeConfig<T, any>[];
|
137
137
|
/** Initial context */
|
138
138
|
context: SchemaType<T>;
|
139
139
|
/** Schema for validation */
|
@@ -146,7 +146,7 @@ export interface GraphDefinition<T extends ZodSchema> {
|
|
146
146
|
eventEmitter?: IEventEmitter | EventEmitter;
|
147
147
|
/** Array of events */
|
148
148
|
events?: string[];
|
149
|
-
}
|
149
|
+
};
|
150
150
|
|
151
151
|
/* ======================== MEILISEARCH ======================== */
|
152
152
|
|