@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/durable.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { truthy } from './chunk-BHM5HGXH.js';
2
2
  import { pauseForHuman, decodePause } from './chunk-UEOE6B52.js';
3
- import { getNodeKind, runFlow, resolveKindId, kindIds, RunIdentity } from './chunk-XCT2CJ5O.js';
3
+ import { getNodeKind, runFlow, resolveKindId, kindIds, RunIdentity } from './chunk-JOXMAWAI.js';
4
4
  import './chunk-F5RPRB7A.js';
5
5
  import './chunk-USL4FMFU.js';
6
6
 
package/dist/engine.cjs CHANGED
@@ -10455,7 +10455,8 @@ async function runFlow(graph, executors, onEvent = () => {
10455
10455
  const inputs = collectInputs(node, incoming, portValues, initialInputs, props, declaresProps);
10456
10456
  const exec = pickExecutor(executors, node);
10457
10457
  if (!exec) {
10458
- const msg = `No executor registered for kind=${node.type}`;
10458
+ const tried = executorLookupIds(node);
10459
+ const msg = `No executor registered for kind=${node.type} \u2014 tried ${tried.map((id2) => `"${id2}"`).join(", ")}. Key your registry by one of those.`;
10459
10460
  errors.push(msg);
10460
10461
  onEvent({ type: "node-status", nodeId: node.id, status: "error", text: msg });
10461
10462
  onEvent({ type: "log", nodeId: node.id, level: "error", message: msg });
@@ -10548,19 +10549,31 @@ function collectInputs(node, incoming, portValues, initial, props, declaresProps
10548
10549
  if (declaresProps) inputs.$props = props;
10549
10550
  return inputs;
10550
10551
  }
10552
+ function executorLookupIds(node) {
10553
+ const ids = [node.id];
10554
+ if (node.type) ids.push(node.type);
10555
+ const typeKind = node.type ? getNodeKind(node.type) : null;
10556
+ if (typeKind) {
10557
+ for (const id2 of kindIds(typeKind)) ids.push(id2);
10558
+ } else {
10559
+ const declared = node.data?.kind;
10560
+ const kindName2 = typeof declared === "string" && declared !== "" ? declared : null;
10561
+ if (kindName2) {
10562
+ ids.push(kindName2);
10563
+ const dataKind = getNodeKind(kindName2);
10564
+ if (dataKind) {
10565
+ for (const id2 of kindIds(dataKind)) ids.push(id2);
10566
+ }
10567
+ }
10568
+ }
10569
+ ids.push("*");
10570
+ return [...new Set(ids)];
10571
+ }
10551
10572
  function pickExecutor(executors, node) {
10552
- if (executors[node.id]) return executors[node.id];
10553
- if (node.type && executors[node.type]) return executors[node.type];
10554
- const declared = node.data?.kind;
10555
- const kindName2 = typeof declared === "string" && declared !== "" ? declared : node.type;
10556
- if (kindName2 && kindName2 !== node.type && executors[kindName2]) return executors[kindName2];
10557
- const kind = kindName2 ? getNodeKind(kindName2) : null;
10558
- if (kind) {
10559
- for (const id2 of kindIds(kind)) {
10560
- if (executors[id2]) return executors[id2];
10561
- }
10562
- }
10563
- return executors["*"];
10573
+ for (const id2 of executorLookupIds(node)) {
10574
+ if (executors[id2]) return executors[id2];
10575
+ }
10576
+ return void 0;
10564
10577
  }
10565
10578
  function activatedPorts(node, result) {
10566
10579
  if (result && typeof result === "object") {