@particle-academy/fancy-flow 0.51.0 → 0.52.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.
Files changed (38) hide show
  1. package/dist/{chunk-6AI6CBNL.js → chunk-I7ZDPY7C.js} +3 -3
  2. package/dist/{chunk-6AI6CBNL.js.map → chunk-I7ZDPY7C.js.map} +1 -1
  3. package/dist/{chunk-XCT2CJ5O.js → chunk-JOXMAWAI.js} +27 -14
  4. package/dist/chunk-JOXMAWAI.js.map +1 -0
  5. package/dist/{chunk-HXGGCMR7.js → chunk-PEX3ZGCO.js} +3 -3
  6. package/dist/{chunk-HXGGCMR7.js.map → chunk-PEX3ZGCO.js.map} +1 -1
  7. package/dist/{chunk-LH76EIFL.js → chunk-PU3CLTAG.js} +3 -3
  8. package/dist/{chunk-LH76EIFL.js.map → chunk-PU3CLTAG.js.map} +1 -1
  9. package/dist/{chunk-7XTTXMGB.js → chunk-PWIHOR57.js} +4 -4
  10. package/dist/{chunk-7XTTXMGB.js.map → chunk-PWIHOR57.js.map} +1 -1
  11. package/dist/{chunk-SKEZ5AGI.js → chunk-RR7A6IUW.js} +3 -3
  12. package/dist/{chunk-SKEZ5AGI.js.map → chunk-RR7A6IUW.js.map} +1 -1
  13. package/dist/durable.cjs +26 -13
  14. package/dist/durable.cjs.map +1 -1
  15. package/dist/durable.js +1 -1
  16. package/dist/engine.cjs +26 -13
  17. package/dist/engine.cjs.map +1 -1
  18. package/dist/engine.js +3 -3
  19. package/dist/index.cjs +26 -13
  20. package/dist/index.cjs.map +1 -1
  21. package/dist/index.js +11 -11
  22. package/dist/registry.cjs +26 -13
  23. package/dist/registry.cjs.map +1 -1
  24. package/dist/registry.js +2 -2
  25. package/dist/runtime.cjs +26 -13
  26. package/dist/runtime.cjs.map +1 -1
  27. package/dist/runtime.js +3 -3
  28. package/dist/schema.cjs +26 -13
  29. package/dist/schema.cjs.map +1 -1
  30. package/dist/schema.js +2 -2
  31. package/dist/screens.cjs +26 -13
  32. package/dist/screens.cjs.map +1 -1
  33. package/dist/screens.js +4 -4
  34. package/dist/ux.cjs +26 -13
  35. package/dist/ux.cjs.map +1 -1
  36. package/dist/ux.js +1 -1
  37. package/package.json +2 -2
  38. package/dist/chunk-XCT2CJ5O.js.map +0 -1
package/dist/index.js CHANGED
@@ -1,16 +1,16 @@
1
- import { removeNodes, removeEdges, cloneSubgraph, alignNodes, distributeNodes, reconnectEdge, assignToLane, removeFromLane, duplicateNode, setEdgeLabel, FlowCanvas } from './chunk-7XTTXMGB.js';
2
- export { ActionNode, DecisionNode, FlowCanvas, FlowViewer, NodeShell, OutputNode, SubgraphNode, TriggerNode, alignNodes, cloneSubgraph, defaultNodeTypes, distributeNodes, reconnectEdge } from './chunk-7XTTXMGB.js';
3
- import { useFlowState, useFlowRun, useFlowHistory, applyOutputsToNodes, applyStatusesToNodes } from './chunk-HXGGCMR7.js';
4
- export { applyOutputsToNodes, applyStatusesToNodes, createHistory, useFlowHistory, useFlowRun, useFlowState } from './chunk-HXGGCMR7.js';
5
- export { runCohort } from './chunk-SKEZ5AGI.js';
1
+ import { removeNodes, removeEdges, cloneSubgraph, alignNodes, distributeNodes, reconnectEdge, assignToLane, removeFromLane, duplicateNode, setEdgeLabel, FlowCanvas } from './chunk-PWIHOR57.js';
2
+ export { ActionNode, DecisionNode, FlowCanvas, FlowViewer, NodeShell, OutputNode, SubgraphNode, TriggerNode, alignNodes, cloneSubgraph, defaultNodeTypes, distributeNodes, reconnectEdge } from './chunk-PWIHOR57.js';
3
+ import { useFlowState, useFlowRun, useFlowHistory, applyOutputsToNodes, applyStatusesToNodes } from './chunk-PEX3ZGCO.js';
4
+ export { applyOutputsToNodes, applyStatusesToNodes, createHistory, useFlowHistory, useFlowRun, useFlowState } from './chunk-PEX3ZGCO.js';
5
+ export { runCohort } from './chunk-RR7A6IUW.js';
6
6
  export { evaluateConfig, evaluateExpression, resolvePath, text, truthy } from './chunk-BHM5HGXH.js';
7
- import { buildNodeTypes } from './chunk-6AI6CBNL.js';
8
- export { ANY_PORT_TYPE, RegistryNode, buildNodeTypes, createConnectionValidator, defaultPortCompatibility } from './chunk-6AI6CBNL.js';
7
+ import { buildNodeTypes } from './chunk-I7ZDPY7C.js';
8
+ export { ANY_PORT_TYPE, RegistryNode, buildNodeTypes, createConnectionValidator, defaultPortCompatibility } from './chunk-I7ZDPY7C.js';
9
9
  export { LEGACY_PAUSE_PREFIXES, PAUSE_PREFIX, decodePause, encodePause, isPause, pauseForHuman } from './chunk-UEOE6B52.js';
10
- import { workflowToBlob, importWorkflow, exportWorkflow } from './chunk-LH76EIFL.js';
11
- export { WORKFLOW_SCHEMA_URL, WORKFLOW_SCHEMA_VERSION, exportWorkflow, importWorkflow, migrateSchema, workflowToBlob } from './chunk-LH76EIFL.js';
12
- import { ReactFlowProvider, useReactFlow, onNodeKindsChanged, listNodeKinds, getNodeKind, defaultConfigFor, FlowEditorProvider, addEdge, applyEdgeChanges, applyNodeChanges, Position, ensureBuiltinKinds, validateConfig, categoryAccent, Handle } from './chunk-XCT2CJ5O.js';
13
- export { BUILTIN_KINDS, LaneNode, NoteNode, categoryAccent, clearNodeKindOverrides, defaultConfigFor, ensureBuiltinKinds, getNodeKind, listNodeKinds, onNodeKindsChanged, overrideNodeKind, registerBuiltinKinds, registerNodeKind, resolveNodePorts, resolvePortSpec, runFlow, useFlowEditor, useFlowEditorOptional, validateConfig } from './chunk-XCT2CJ5O.js';
10
+ import { workflowToBlob, importWorkflow, exportWorkflow } from './chunk-PU3CLTAG.js';
11
+ export { WORKFLOW_SCHEMA_URL, WORKFLOW_SCHEMA_VERSION, exportWorkflow, importWorkflow, migrateSchema, workflowToBlob } from './chunk-PU3CLTAG.js';
12
+ import { ReactFlowProvider, useReactFlow, onNodeKindsChanged, listNodeKinds, getNodeKind, defaultConfigFor, FlowEditorProvider, addEdge, applyEdgeChanges, applyNodeChanges, Position, ensureBuiltinKinds, validateConfig, categoryAccent, Handle } from './chunk-JOXMAWAI.js';
13
+ export { BUILTIN_KINDS, LaneNode, NoteNode, categoryAccent, clearNodeKindOverrides, defaultConfigFor, ensureBuiltinKinds, getNodeKind, listNodeKinds, onNodeKindsChanged, overrideNodeKind, registerBuiltinKinds, registerNodeKind, resolveNodePorts, resolvePortSpec, runFlow, useFlowEditor, useFlowEditorOptional, validateConfig } from './chunk-JOXMAWAI.js';
14
14
  import { getRichInputAdapter } from './chunk-F5RPRB7A.js';
15
15
  export { RichInputPreview, getRichInputAdapter, isRichInputEnabled, onRichInputAdapterChanged, registerRichInputAdapter } from './chunk-F5RPRB7A.js';
16
16
  import './chunk-USL4FMFU.js';
package/dist/registry.cjs CHANGED
@@ -9489,7 +9489,8 @@ async function runFlow(graph, executors, onEvent = () => {
9489
9489
  const inputs = collectInputs(node, incoming, portValues, initialInputs, props, declaresProps);
9490
9490
  const exec = pickExecutor(executors, node);
9491
9491
  if (!exec) {
9492
- const msg = `No executor registered for kind=${node.type}`;
9492
+ const tried = executorLookupIds(node);
9493
+ const msg = `No executor registered for kind=${node.type} \u2014 tried ${tried.map((id2) => `"${id2}"`).join(", ")}. Key your registry by one of those.`;
9493
9494
  errors.push(msg);
9494
9495
  onEvent({ type: "node-status", nodeId: node.id, status: "error", text: msg });
9495
9496
  onEvent({ type: "log", nodeId: node.id, level: "error", message: msg });
@@ -9582,19 +9583,31 @@ function collectInputs(node, incoming, portValues, initial, props, declaresProps
9582
9583
  if (declaresProps) inputs.$props = props;
9583
9584
  return inputs;
9584
9585
  }
9586
+ function executorLookupIds(node) {
9587
+ const ids = [node.id];
9588
+ if (node.type) ids.push(node.type);
9589
+ const typeKind = node.type ? getNodeKind(node.type) : null;
9590
+ if (typeKind) {
9591
+ for (const id2 of kindIds(typeKind)) ids.push(id2);
9592
+ } else {
9593
+ const declared = node.data?.kind;
9594
+ const kindName = typeof declared === "string" && declared !== "" ? declared : null;
9595
+ if (kindName) {
9596
+ ids.push(kindName);
9597
+ const dataKind = getNodeKind(kindName);
9598
+ if (dataKind) {
9599
+ for (const id2 of kindIds(dataKind)) ids.push(id2);
9600
+ }
9601
+ }
9602
+ }
9603
+ ids.push("*");
9604
+ return [...new Set(ids)];
9605
+ }
9585
9606
  function pickExecutor(executors, node) {
9586
- if (executors[node.id]) return executors[node.id];
9587
- if (node.type && executors[node.type]) return executors[node.type];
9588
- const declared = node.data?.kind;
9589
- const kindName = typeof declared === "string" && declared !== "" ? declared : node.type;
9590
- if (kindName && kindName !== node.type && executors[kindName]) return executors[kindName];
9591
- const kind = kindName ? getNodeKind(kindName) : null;
9592
- if (kind) {
9593
- for (const id2 of kindIds(kind)) {
9594
- if (executors[id2]) return executors[id2];
9595
- }
9596
- }
9597
- return executors["*"];
9607
+ for (const id2 of executorLookupIds(node)) {
9608
+ if (executors[id2]) return executors[id2];
9609
+ }
9610
+ return void 0;
9598
9611
  }
9599
9612
  function activatedPorts(node, result) {
9600
9613
  if (result && typeof result === "object") {