@particle-academy/fancy-flow 0.75.0 → 0.77.0
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/{chunk-2H5H2DDP.js → chunk-44VXYZ4M.js} +4 -4
- package/dist/{chunk-2H5H2DDP.js.map → chunk-44VXYZ4M.js.map} +1 -1
- package/dist/{chunk-4BPCA3ZO.js → chunk-66JAEWPP.js} +3 -3
- package/dist/{chunk-4BPCA3ZO.js.map → chunk-66JAEWPP.js.map} +1 -1
- package/dist/{chunk-LKEDPVR3.js → chunk-KFC3BURT.js} +3 -3
- package/dist/{chunk-LKEDPVR3.js.map → chunk-KFC3BURT.js.map} +1 -1
- package/dist/{chunk-XZFLPKO2.js → chunk-MMCHYY6B.js} +3 -3
- package/dist/{chunk-XZFLPKO2.js.map → chunk-MMCHYY6B.js.map} +1 -1
- package/dist/{chunk-T7E7QPHI.js → chunk-OOQ2MMBE.js} +4 -4
- package/dist/{chunk-T7E7QPHI.js.map → chunk-OOQ2MMBE.js.map} +1 -1
- package/dist/{chunk-ZBHIEKCN.js → chunk-X2UHP2S5.js} +3 -3
- package/dist/{chunk-ZBHIEKCN.js.map → chunk-X2UHP2S5.js.map} +1 -1
- package/dist/{chunk-W7DMO3H7.js → chunk-YNKOEQLI.js} +48 -7
- package/dist/chunk-YNKOEQLI.js.map +1 -0
- package/dist/durable.cjs +42 -37
- package/dist/durable.cjs.map +1 -1
- package/dist/durable.js +1 -2
- package/dist/durable.js.map +1 -1
- package/dist/engine.cjs +45 -40
- package/dist/engine.cjs.map +1 -1
- package/dist/engine.js +4 -6
- package/dist/engine.js.map +1 -1
- package/dist/index.cjs +45 -40
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +12 -13
- package/dist/index.js.map +1 -1
- package/dist/registry.cjs +45 -40
- package/dist/registry.cjs.map +1 -1
- package/dist/registry.js +2 -3
- package/dist/runtime.cjs +35 -4
- package/dist/runtime.cjs.map +1 -1
- package/dist/runtime.js +3 -3
- package/dist/schema.cjs +35 -4
- package/dist/schema.cjs.map +1 -1
- package/dist/schema.js +3 -3
- package/dist/screens.cjs +35 -4
- package/dist/screens.cjs.map +1 -1
- package/dist/screens.js +4 -5
- package/dist/screens.js.map +1 -1
- package/dist/ux.cjs +35 -4
- package/dist/ux.cjs.map +1 -1
- package/dist/ux.js +1 -1
- package/package.json +2 -2
- package/dist/chunk-UEOE6B52.js +0 -39
- package/dist/chunk-UEOE6B52.js.map +0 -1
- package/dist/chunk-W7DMO3H7.js.map +0 -1
package/dist/runtime.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export { applyOutputsToNodes, applyStatusesToNodes, createHistory, useFlowHistory, useFlowRun, useFlowState } from './chunk-
|
|
2
|
-
export { runCohort } from './chunk-
|
|
1
|
+
export { applyOutputsToNodes, applyStatusesToNodes, createHistory, useFlowHistory, useFlowRun, useFlowState } from './chunk-X2UHP2S5.js';
|
|
2
|
+
export { runCohort } from './chunk-KFC3BURT.js';
|
|
3
3
|
import './chunk-OWENS2H5.js';
|
|
4
|
-
export { RunIdentity, escapeSegment, runFlow } from './chunk-
|
|
4
|
+
export { RunIdentity, escapeSegment, runFlow } from './chunk-YNKOEQLI.js';
|
|
5
5
|
import './chunk-2QXKDLGT.js';
|
|
6
6
|
//# sourceMappingURL=runtime.js.map
|
|
7
7
|
//# sourceMappingURL=runtime.js.map
|
package/dist/schema.cjs
CHANGED
|
@@ -523,8 +523,9 @@ function possiblePortIds(node) {
|
|
|
523
523
|
if (!kind) return ["out"];
|
|
524
524
|
const config = nodeConfig(node);
|
|
525
525
|
const representative = typeof kind.outputs === "function" && !configDeclaresPorts(kind.name, config);
|
|
526
|
-
const
|
|
527
|
-
|
|
526
|
+
const resolved = resolvePortSpec(kind.outputs, representative ? defaultConfigFor(kind) : config);
|
|
527
|
+
if (resolved === void 0) return ["out"];
|
|
528
|
+
return resolved.map((p) => p.id);
|
|
528
529
|
}
|
|
529
530
|
function configDeclaresPorts(kindName, config) {
|
|
530
531
|
const bare = kindName.startsWith("@") ? kindName.slice(kindName.lastIndexOf("/") + 1) : kindName;
|
|
@@ -850,7 +851,7 @@ function activatedPorts(node, result) {
|
|
|
850
851
|
}
|
|
851
852
|
const kind = getNodeKind(node.data?.kind ?? node.type ?? "") ?? void 0;
|
|
852
853
|
const declared = resolveNodePorts(node, kind).outputs?.map((p) => p.id);
|
|
853
|
-
return { ports: declared
|
|
854
|
+
return { ports: declared ?? ["out"], value: result };
|
|
854
855
|
}
|
|
855
856
|
function portValueOf(activated, portId) {
|
|
856
857
|
return activated.values && Object.prototype.hasOwnProperty.call(activated.values, portId) ? activated.values[portId] : activated.value;
|
|
@@ -864,6 +865,32 @@ function announce(onEvent, node, phase) {
|
|
|
864
865
|
onEvent({ type: "node-message", nodeId: node.id, phase, message });
|
|
865
866
|
}
|
|
866
867
|
|
|
868
|
+
// src/registry/pause.ts
|
|
869
|
+
var PAUSE_PREFIX = "fancy-flow:pause:";
|
|
870
|
+
var LEGACY_PAUSE_PREFIXES = [
|
|
871
|
+
["awaiting-approval:", "approval"],
|
|
872
|
+
["awaiting-input:", "input"]
|
|
873
|
+
];
|
|
874
|
+
function decodePause(reason) {
|
|
875
|
+
if (typeof reason !== "string") return null;
|
|
876
|
+
if (reason.startsWith(PAUSE_PREFIX)) {
|
|
877
|
+
const body = reason.slice(PAUSE_PREFIX.length);
|
|
878
|
+
try {
|
|
879
|
+
const parsed = JSON.parse(body);
|
|
880
|
+
if (typeof parsed?.nodeId !== "string" || typeof parsed?.awaiting !== "string") return null;
|
|
881
|
+
return "detail" in parsed ? { nodeId: parsed.nodeId, awaiting: parsed.awaiting, detail: parsed.detail } : { nodeId: parsed.nodeId, awaiting: parsed.awaiting };
|
|
882
|
+
} catch {
|
|
883
|
+
return null;
|
|
884
|
+
}
|
|
885
|
+
}
|
|
886
|
+
for (const [prefix, awaiting] of LEGACY_PAUSE_PREFIXES) {
|
|
887
|
+
if (reason.startsWith(prefix)) {
|
|
888
|
+
return { nodeId: reason.slice(prefix.length), awaiting };
|
|
889
|
+
}
|
|
890
|
+
}
|
|
891
|
+
return null;
|
|
892
|
+
}
|
|
893
|
+
|
|
867
894
|
// src/registry/subflow.ts
|
|
868
895
|
var DEFAULT_MAX_DEPTH = 8;
|
|
869
896
|
function subflowMode(config) {
|
|
@@ -945,7 +972,11 @@ var subflowExecutor = async (ctx) => {
|
|
|
945
972
|
}
|
|
946
973
|
);
|
|
947
974
|
if (!result.ok) {
|
|
948
|
-
|
|
975
|
+
const reason = result.error ?? "unknown error";
|
|
976
|
+
if (decodePause(reason)) {
|
|
977
|
+
ctx.abort(reason);
|
|
978
|
+
}
|
|
979
|
+
ctx.abort(`subflow "${ref}" failed: ${reason}`);
|
|
949
980
|
}
|
|
950
981
|
if (mode === "stream") {
|
|
951
982
|
return { __port: "stream", value: result.outputs };
|