@shenghuabi/workflow 1.1.6 → 1.1.7
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/index.js +48 -49
- package/index.js.map +3 -3
- package/index.mjs +40 -41
- package/index.mjs.map +3 -3
- package/inline/node/text/main/runner.d.ts +0 -1
- package/package.json +2 -2
- package/runner/runner-item.d.ts +3 -2
- package/test/util/text-input/main/runner.d.ts +0 -1
package/index.js
CHANGED
|
@@ -73,7 +73,7 @@ __export(workflow_exports, {
|
|
|
73
73
|
module.exports = __toCommonJS(workflow_exports);
|
|
74
74
|
|
|
75
75
|
// packages/workflow/workflow-parser.service.ts
|
|
76
|
-
var
|
|
76
|
+
var import_static_injector11 = require("static-injector");
|
|
77
77
|
var import_graphology = __toESM(require("graphology"), 1);
|
|
78
78
|
var import_react = require("@xyflow/react");
|
|
79
79
|
|
|
@@ -560,16 +560,17 @@ var import_compat = require("es-toolkit/compat");
|
|
|
560
560
|
var NodeRunnerBase = class {
|
|
561
561
|
node = (0, import_static_injector3.inject)(CurrentNodeToken);
|
|
562
562
|
callNode = (0, import_static_injector3.inject)(CurrentCallNodeToken, { optional: true }) ?? void 0;
|
|
563
|
-
|
|
563
|
+
runnerContext = (0, import_static_injector3.inject)(CurrentContextToken);
|
|
564
564
|
injector = (0, import_static_injector3.inject)(import_static_injector3.Injector);
|
|
565
565
|
emitter = (0, import_static_injector3.inject)(WorkflowEmitter);
|
|
566
566
|
abortSignal = (0, import_static_injector3.inject)(AbortSignalToken);
|
|
567
567
|
inputs = (0, import_static_injector3.inject)(NodeInputsToken);
|
|
568
|
+
environmentContextData = (0, import_static_injector3.inject)(EnviromentParametersToken);
|
|
568
569
|
async run() {
|
|
569
570
|
throw new Error("待实现");
|
|
570
571
|
}
|
|
571
572
|
#modelConfig = (0, import_static_injector3.inject)(ModelOptionsToken, { optional: true }) ?? void 0;
|
|
572
|
-
|
|
573
|
+
nodeContextData$$ = (0, import_static_injector3.computed)(() => this.injector.get(NodeContextToken)());
|
|
573
574
|
mergeChatModel(input) {
|
|
574
575
|
const chatService = this.injector.get(ChatServiceToken);
|
|
575
576
|
let presetConfig = {};
|
|
@@ -916,16 +917,14 @@ var TEXT_NODE_DEFINE = v7.object({
|
|
|
916
917
|
});
|
|
917
918
|
|
|
918
919
|
// packages/workflow/inline/node/text/main/runner.ts
|
|
919
|
-
var import_static_injector7 = require("static-injector");
|
|
920
920
|
var TextareaRunner = class extends NodeRunnerBase {
|
|
921
|
-
environmentContext = (0, import_static_injector7.inject)(EnviromentParametersToken);
|
|
922
921
|
async run() {
|
|
923
922
|
return async () => {
|
|
924
923
|
let metadataList;
|
|
925
|
-
const context = await this.
|
|
924
|
+
const context = await this.nodeContextData$$();
|
|
926
925
|
const value = serializeLexicalTextarea(this.inputs.value, {
|
|
927
926
|
context,
|
|
928
|
-
environmentContext: this.
|
|
927
|
+
environmentContext: this.environmentContextData,
|
|
929
928
|
onMetadata(metadata) {
|
|
930
929
|
metadataList = metadata;
|
|
931
930
|
}
|
|
@@ -979,12 +978,12 @@ var ITERATION_NODE_DEFINE = v8.pipe(
|
|
|
979
978
|
);
|
|
980
979
|
|
|
981
980
|
// packages/workflow/runner/workflow-runner.service.ts
|
|
982
|
-
var
|
|
981
|
+
var import_static_injector9 = require("static-injector");
|
|
983
982
|
|
|
984
983
|
// packages/workflow/inline/node/input-params/main/runner.ts
|
|
985
|
-
var
|
|
984
|
+
var import_static_injector7 = require("static-injector");
|
|
986
985
|
var InputParamsRunner = class extends NodeRunnerBase {
|
|
987
|
-
#env = (0,
|
|
986
|
+
#env = (0, import_static_injector7.inject)(EnviromentParametersToken);
|
|
988
987
|
async run() {
|
|
989
988
|
const data = this.#env;
|
|
990
989
|
return async (id) => {
|
|
@@ -1000,9 +999,9 @@ var InputParamsRunner = class extends NodeRunnerBase {
|
|
|
1000
999
|
};
|
|
1001
1000
|
|
|
1002
1001
|
// packages/workflow/inline/node/iteration/main/iteration-start.runner.ts
|
|
1003
|
-
var
|
|
1002
|
+
var import_static_injector8 = require("static-injector");
|
|
1004
1003
|
var IterationStartRunner = class extends NodeRunnerBase {
|
|
1005
|
-
#nodeParentMap = (0,
|
|
1004
|
+
#nodeParentMap = (0, import_static_injector8.inject)(NodeParentMapToken);
|
|
1006
1005
|
async run() {
|
|
1007
1006
|
const data = this.#nodeParentMap.get(this.node.parentId);
|
|
1008
1007
|
return async (id) => {
|
|
@@ -1051,15 +1050,15 @@ var v9 = __toESM(require("valibot"), 1);
|
|
|
1051
1050
|
var import_util4 = require("@cyia/util");
|
|
1052
1051
|
var import_fast_equals = require("fast-equals");
|
|
1053
1052
|
var WorkflowRunnerContext = class {
|
|
1054
|
-
#injector = (0,
|
|
1055
|
-
data = (0,
|
|
1056
|
-
parent = (0,
|
|
1053
|
+
#injector = (0, import_static_injector9.inject)(import_static_injector9.Injector);
|
|
1054
|
+
data = (0, import_static_injector9.inject)(CurrentWorkflowToken);
|
|
1055
|
+
parent = (0, import_static_injector9.inject)(ParentContextToken);
|
|
1057
1056
|
#callCache = /* @__PURE__ */ new Map();
|
|
1058
1057
|
#outputCache = /* @__PURE__ */ new Map();
|
|
1059
|
-
inputs = (0,
|
|
1060
|
-
#plugin = (0,
|
|
1061
|
-
#emitter = (0,
|
|
1062
|
-
#inlineNode = (0,
|
|
1058
|
+
inputs = (0, import_static_injector9.inject)(InputsToken);
|
|
1059
|
+
#plugin = (0, import_static_injector9.inject)(WorkflowPluginService);
|
|
1060
|
+
#emitter = (0, import_static_injector9.inject)(WorkflowEmitter);
|
|
1061
|
+
#inlineNode = (0, import_static_injector9.inject)(InlineNodeService);
|
|
1063
1062
|
async #getNodeRunner(type) {
|
|
1064
1063
|
return this.#inlineNode.getNodeRunner(type) ?? ItemRunnerObject[type] ?? await this.#plugin.getNodeRunner(type);
|
|
1065
1064
|
}
|
|
@@ -1097,7 +1096,7 @@ var WorkflowRunnerContext = class {
|
|
|
1097
1096
|
// 当前node 调用 node context
|
|
1098
1097
|
async #createNodeRunner(item, inputParams, contextFactory, callNode) {
|
|
1099
1098
|
const define = await this.#getNodeRunner(item.type);
|
|
1100
|
-
return (0,
|
|
1099
|
+
return (0, import_static_injector9.createInjector)({
|
|
1101
1100
|
providers: [
|
|
1102
1101
|
define,
|
|
1103
1102
|
{ provide: CurrentNodeToken, useValue: item },
|
|
@@ -1111,7 +1110,7 @@ var WorkflowRunnerContext = class {
|
|
|
1111
1110
|
parent: this.#injector
|
|
1112
1111
|
}).get(define);
|
|
1113
1112
|
}
|
|
1114
|
-
#abort = (0,
|
|
1113
|
+
#abort = (0, import_static_injector9.inject)(AbortSignalToken);
|
|
1115
1114
|
async #runItem(node, callNode, input) {
|
|
1116
1115
|
try {
|
|
1117
1116
|
if (this.#abort?.aborted) {
|
|
@@ -1228,12 +1227,12 @@ var WorkflowRunnerContext = class {
|
|
|
1228
1227
|
}
|
|
1229
1228
|
};
|
|
1230
1229
|
var WorkflowRunnerService = class {
|
|
1231
|
-
#injector = (0,
|
|
1230
|
+
#injector = (0, import_static_injector9.inject)(import_static_injector9.Injector);
|
|
1232
1231
|
/** 自己使用
|
|
1233
1232
|
* @internal
|
|
1234
1233
|
*/
|
|
1235
1234
|
createContext(data, parent, parentInjector) {
|
|
1236
|
-
return (0,
|
|
1235
|
+
return (0, import_static_injector9.createInjector)({
|
|
1237
1236
|
providers: [
|
|
1238
1237
|
WorkflowRunnerContext,
|
|
1239
1238
|
{ provide: CurrentWorkflowToken, useValue: data },
|
|
@@ -1248,7 +1247,7 @@ var WorkflowRunnerService = class {
|
|
|
1248
1247
|
}
|
|
1249
1248
|
/** 入口 */
|
|
1250
1249
|
run(wofkflowData, input, ob, signal2, providers) {
|
|
1251
|
-
const injector = (0,
|
|
1250
|
+
const injector = (0, import_static_injector9.createInjector)({
|
|
1252
1251
|
providers: [
|
|
1253
1252
|
WorkflowEmitter,
|
|
1254
1253
|
{ provide: AbortSignalToken, useValue: signal2 },
|
|
@@ -1272,9 +1271,9 @@ var WorkflowRunnerService = class {
|
|
|
1272
1271
|
|
|
1273
1272
|
// packages/workflow/inline/node/iteration/main/runner.ts
|
|
1274
1273
|
var import_util5 = require("@cyia/util");
|
|
1275
|
-
var
|
|
1274
|
+
var import_static_injector10 = require("static-injector");
|
|
1276
1275
|
var IterationRunner = class extends NodeRunnerBase {
|
|
1277
|
-
#nodeParentMap = (0,
|
|
1276
|
+
#nodeParentMap = (0, import_static_injector10.inject)(NodeParentMapToken);
|
|
1278
1277
|
async run() {
|
|
1279
1278
|
const inputs = this.inputs;
|
|
1280
1279
|
const value = inputs.list;
|
|
@@ -1290,7 +1289,7 @@ var IterationRunner = class extends NodeRunnerBase {
|
|
|
1290
1289
|
await this.injector.get(WorkflowRunnerService).createContext(
|
|
1291
1290
|
//迭代只有一个子流
|
|
1292
1291
|
this.node.subFlowList[0].flow,
|
|
1293
|
-
this.
|
|
1292
|
+
this.runnerContext,
|
|
1294
1293
|
this.injector
|
|
1295
1294
|
).run()
|
|
1296
1295
|
);
|
|
@@ -1498,7 +1497,7 @@ var NodeGroup = class {
|
|
|
1498
1497
|
return this.#group.get(type) || [];
|
|
1499
1498
|
}
|
|
1500
1499
|
};
|
|
1501
|
-
var WorkflowDataToken = new
|
|
1500
|
+
var WorkflowDataToken = new import_static_injector11.InjectionToken(
|
|
1502
1501
|
"WorkflowData"
|
|
1503
1502
|
);
|
|
1504
1503
|
var WorkflowPreParser = class {
|
|
@@ -1511,17 +1510,17 @@ var WorkflowPreParser = class {
|
|
|
1511
1510
|
* 所有独立块都是找到独立节点后终止
|
|
1512
1511
|
*/
|
|
1513
1512
|
#nodeGroup = new NodeGroup();
|
|
1514
|
-
#data = (0,
|
|
1515
|
-
#plugin = (0,
|
|
1516
|
-
#inlineNodeService = (0,
|
|
1517
|
-
#fullBlockObject$$ = (0,
|
|
1513
|
+
#data = (0, import_static_injector11.inject)(WorkflowDataToken);
|
|
1514
|
+
#plugin = (0, import_static_injector11.inject)(WorkflowPluginService);
|
|
1515
|
+
#inlineNodeService = (0, import_static_injector11.inject)(InlineNodeService);
|
|
1516
|
+
#fullBlockObject$$ = (0, import_static_injector11.computed)(
|
|
1518
1517
|
() => ({
|
|
1519
1518
|
...this.#inlineNodeService.conditionNodeList(),
|
|
1520
1519
|
...this.#plugin.conditionNodeList$$(),
|
|
1521
1520
|
["iteration" /* iteration */]: true
|
|
1522
1521
|
})
|
|
1523
1522
|
);
|
|
1524
|
-
#conditionBlockObject$$ = (0,
|
|
1523
|
+
#conditionBlockObject$$ = (0, import_static_injector11.computed)(
|
|
1525
1524
|
() => ({
|
|
1526
1525
|
...this.#inlineNodeService.conditionNodeList(),
|
|
1527
1526
|
...this.#plugin.conditionNodeList$$()
|
|
@@ -1613,8 +1612,8 @@ var WorkflowPreParser = class {
|
|
|
1613
1612
|
}
|
|
1614
1613
|
};
|
|
1615
1614
|
var WorkflowParserService = class {
|
|
1616
|
-
#injector = (0,
|
|
1617
|
-
#inlineNode = (0,
|
|
1615
|
+
#injector = (0, import_static_injector11.inject)(import_static_injector11.Injector);
|
|
1616
|
+
#inlineNode = (0, import_static_injector11.inject)(InlineNodeService);
|
|
1618
1617
|
constructor() {
|
|
1619
1618
|
this.#inlineNode.register(index_node_exports);
|
|
1620
1619
|
}
|
|
@@ -1627,7 +1626,7 @@ var WorkflowParserService = class {
|
|
|
1627
1626
|
*
|
|
1628
1627
|
*/
|
|
1629
1628
|
parse(data) {
|
|
1630
|
-
const injector = (0,
|
|
1629
|
+
const injector = (0, import_static_injector11.createInjector)({
|
|
1631
1630
|
providers: [
|
|
1632
1631
|
WorkflowPreParser,
|
|
1633
1632
|
{ provide: WorkflowDataToken, useValue: data }
|
|
@@ -1653,14 +1652,14 @@ var WorkflowParserService = class {
|
|
|
1653
1652
|
};
|
|
1654
1653
|
|
|
1655
1654
|
// packages/workflow/workflow-exec.service.ts
|
|
1656
|
-
var
|
|
1655
|
+
var import_static_injector13 = require("static-injector");
|
|
1657
1656
|
var import_rxjs3 = require("rxjs");
|
|
1658
1657
|
|
|
1659
1658
|
// packages/workflow/preset/context-build.service.ts
|
|
1660
|
-
var
|
|
1659
|
+
var import_static_injector12 = require("static-injector");
|
|
1661
1660
|
var ContextBuildService = class {
|
|
1662
|
-
template = (0,
|
|
1663
|
-
parser = (0,
|
|
1661
|
+
template = (0, import_static_injector12.inject)(TemplateFormatService);
|
|
1662
|
+
parser = (0, import_static_injector12.inject)(WorkflowParserService);
|
|
1664
1663
|
createWorkflow(input) {
|
|
1665
1664
|
const result = this.template.parse(
|
|
1666
1665
|
input.template.flatMap(
|
|
@@ -1695,8 +1694,8 @@ var ContextBuildService = class {
|
|
|
1695
1694
|
|
|
1696
1695
|
// packages/workflow/workflow-exec.service.ts
|
|
1697
1696
|
var WorkflowExecService = class {
|
|
1698
|
-
#parser = (0,
|
|
1699
|
-
#runner = (0,
|
|
1697
|
+
#parser = (0, import_static_injector13.inject)(WorkflowParserService);
|
|
1698
|
+
#runner = (0, import_static_injector13.inject)(WorkflowRunnerService);
|
|
1700
1699
|
parse(data) {
|
|
1701
1700
|
return this.#parser.parse(data);
|
|
1702
1701
|
}
|
|
@@ -1730,7 +1729,7 @@ var WorkflowExecService = class {
|
|
|
1730
1729
|
throw error;
|
|
1731
1730
|
}
|
|
1732
1731
|
}
|
|
1733
|
-
#contextBuild = (0,
|
|
1732
|
+
#contextBuild = (0, import_static_injector13.inject)(ContextBuildService);
|
|
1734
1733
|
async agentChat(input, fn, abort) {
|
|
1735
1734
|
const workflow = this.#contextBuild.createWorkflow(input);
|
|
1736
1735
|
const subject = new import_rxjs3.Subject();
|
|
@@ -1754,15 +1753,15 @@ var WorkflowExecService = class {
|
|
|
1754
1753
|
};
|
|
1755
1754
|
|
|
1756
1755
|
// packages/workflow/workflow-select.service.ts
|
|
1757
|
-
var
|
|
1756
|
+
var import_static_injector15 = require("static-injector");
|
|
1758
1757
|
var import_vfs22 = require("@cyia/vfs2");
|
|
1759
1758
|
|
|
1760
1759
|
// packages/workflow/workflow-file.service.ts
|
|
1761
|
-
var
|
|
1760
|
+
var import_static_injector14 = require("static-injector");
|
|
1762
1761
|
var import_vfs2 = require("@cyia/vfs2");
|
|
1763
1762
|
var import_bundle_file = require("@cyia/bundle-file");
|
|
1764
1763
|
var WorkflowFileService = class {
|
|
1765
|
-
#config = (0,
|
|
1764
|
+
#config = (0, import_static_injector14.inject)(WorkflowConfigToken);
|
|
1766
1765
|
#fileMap = /* @__PURE__ */ new Map();
|
|
1767
1766
|
getFile(filePath) {
|
|
1768
1767
|
const nFilePath = import_vfs2.path.normalize(filePath);
|
|
@@ -1796,9 +1795,9 @@ var WorkflowFileService = class {
|
|
|
1796
1795
|
|
|
1797
1796
|
// packages/workflow/workflow-select.service.ts
|
|
1798
1797
|
var WorkflowSelectService = class {
|
|
1799
|
-
#fileService = (0,
|
|
1800
|
-
#config = (0,
|
|
1801
|
-
#vfs = (0,
|
|
1798
|
+
#fileService = (0, import_static_injector15.inject)(WorkflowFileService);
|
|
1799
|
+
#config = (0, import_static_injector15.inject)(WorkflowConfigToken);
|
|
1800
|
+
#vfs = (0, import_static_injector15.computed)(
|
|
1802
1801
|
() => (0, import_vfs22.createNormalizeVfs)({
|
|
1803
1802
|
dir: this.#config().dir
|
|
1804
1803
|
})
|