@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/screens.js CHANGED
@@ -1,8 +1,8 @@
1
- import { FlowViewer } from './chunk-7XTTXMGB.js';
2
- export { FlowViewer } from './chunk-7XTTXMGB.js';
3
- import './chunk-6AI6CBNL.js';
1
+ import { FlowViewer } from './chunk-PWIHOR57.js';
2
+ export { FlowViewer } from './chunk-PWIHOR57.js';
3
+ import './chunk-I7ZDPY7C.js';
4
4
  import './chunk-UEOE6B52.js';
5
- import './chunk-XCT2CJ5O.js';
5
+ import './chunk-JOXMAWAI.js';
6
6
  import './chunk-F5RPRB7A.js';
7
7
  import './chunk-USL4FMFU.js';
8
8
  import { registerSchemaComponents } from '@particle-academy/fancy-screens';
package/dist/ux.cjs CHANGED
@@ -9348,7 +9348,8 @@ async function runFlow(graph, executors, onEvent = () => {
9348
9348
  const inputs = collectInputs(node, incoming, portValues, initialInputs, props, declaresProps);
9349
9349
  const exec = pickExecutor(executors, node);
9350
9350
  if (!exec) {
9351
- const msg = `No executor registered for kind=${node.type}`;
9351
+ const tried = executorLookupIds(node);
9352
+ const msg = `No executor registered for kind=${node.type} \u2014 tried ${tried.map((id2) => `"${id2}"`).join(", ")}. Key your registry by one of those.`;
9352
9353
  errors.push(msg);
9353
9354
  onEvent({ type: "node-status", nodeId: node.id, status: "error", text: msg });
9354
9355
  onEvent({ type: "log", nodeId: node.id, level: "error", message: msg });
@@ -9441,19 +9442,31 @@ function collectInputs(node, incoming, portValues, initial, props, declaresProps
9441
9442
  if (declaresProps) inputs.$props = props;
9442
9443
  return inputs;
9443
9444
  }
9445
+ function executorLookupIds(node) {
9446
+ const ids = [node.id];
9447
+ if (node.type) ids.push(node.type);
9448
+ const typeKind = node.type ? getNodeKind(node.type) : null;
9449
+ if (typeKind) {
9450
+ for (const id2 of kindIds(typeKind)) ids.push(id2);
9451
+ } else {
9452
+ const declared = node.data?.kind;
9453
+ const kindName = typeof declared === "string" && declared !== "" ? declared : null;
9454
+ if (kindName) {
9455
+ ids.push(kindName);
9456
+ const dataKind = getNodeKind(kindName);
9457
+ if (dataKind) {
9458
+ for (const id2 of kindIds(dataKind)) ids.push(id2);
9459
+ }
9460
+ }
9461
+ }
9462
+ ids.push("*");
9463
+ return [...new Set(ids)];
9464
+ }
9444
9465
  function pickExecutor(executors, node) {
9445
- if (executors[node.id]) return executors[node.id];
9446
- if (node.type && executors[node.type]) return executors[node.type];
9447
- const declared = node.data?.kind;
9448
- const kindName = typeof declared === "string" && declared !== "" ? declared : node.type;
9449
- if (kindName && kindName !== node.type && executors[kindName]) return executors[kindName];
9450
- const kind = kindName ? getNodeKind(kindName) : null;
9451
- if (kind) {
9452
- for (const id2 of kindIds(kind)) {
9453
- if (executors[id2]) return executors[id2];
9454
- }
9455
- }
9456
- return executors["*"];
9466
+ for (const id2 of executorLookupIds(node)) {
9467
+ if (executors[id2]) return executors[id2];
9468
+ }
9469
+ return void 0;
9457
9470
  }
9458
9471
  function activatedPorts(node, result) {
9459
9472
  if (result && typeof result === "object") {