@particle-academy/fancy-flow 0.59.0 → 0.63.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 (63) hide show
  1. package/dist/{HumanPrompt-Bw09OyS3.d.ts → HumanPrompt-BKThiyjB.d.ts} +1 -1
  2. package/dist/{HumanPrompt-DV5-xnDa.d.cts → HumanPrompt-Bpp3JiVH.d.cts} +1 -1
  3. package/dist/{chunk-M7M6GLFV.js → chunk-5H54OTKT.js} +3 -3
  4. package/dist/{chunk-M7M6GLFV.js.map → chunk-5H54OTKT.js.map} +1 -1
  5. package/dist/{chunk-MX4SJDNI.js → chunk-EO6444T2.js} +4 -4
  6. package/dist/{chunk-MX4SJDNI.js.map → chunk-EO6444T2.js.map} +1 -1
  7. package/dist/{chunk-HBE4LVPX.js → chunk-JF6WCRBU.js} +9 -7
  8. package/dist/chunk-JF6WCRBU.js.map +1 -0
  9. package/dist/{chunk-LGLOBK6Q.js → chunk-MBVX4ZRB.js} +3 -3
  10. package/dist/{chunk-LGLOBK6Q.js.map → chunk-MBVX4ZRB.js.map} +1 -1
  11. package/dist/{chunk-FGYG5JVW.js → chunk-MEIDPBKE.js} +3 -3
  12. package/dist/{chunk-FGYG5JVW.js.map → chunk-MEIDPBKE.js.map} +1 -1
  13. package/dist/{chunk-A3TLZS5B.js → chunk-RIAFHQT5.js} +3 -3
  14. package/dist/{chunk-A3TLZS5B.js.map → chunk-RIAFHQT5.js.map} +1 -1
  15. package/dist/{chunk-BHM5HGXH.js → chunk-UM4C46AF.js} +38 -14
  16. package/dist/chunk-UM4C46AF.js.map +1 -0
  17. package/dist/connectors.d.cts +1 -1
  18. package/dist/connectors.d.ts +1 -1
  19. package/dist/durable.cjs +7 -5
  20. package/dist/durable.cjs.map +1 -1
  21. package/dist/durable.js +2 -2
  22. package/dist/engine.cjs +138 -29
  23. package/dist/engine.cjs.map +1 -1
  24. package/dist/engine.d.cts +3 -2
  25. package/dist/engine.d.ts +3 -2
  26. package/dist/engine.js +6 -5
  27. package/dist/engine.js.map +1 -1
  28. package/dist/expr-BfXDrs4H.d.cts +149 -0
  29. package/dist/expr-BfXDrs4H.d.ts +149 -0
  30. package/dist/fields/react-fancy.d.cts +2 -2
  31. package/dist/fields/react-fancy.d.ts +2 -2
  32. package/dist/index.cjs +44 -16
  33. package/dist/index.cjs.map +1 -1
  34. package/dist/index.d.cts +7 -84
  35. package/dist/index.d.ts +7 -84
  36. package/dist/index.js +12 -12
  37. package/dist/index.js.map +1 -1
  38. package/dist/registry/index.d.cts +3 -3
  39. package/dist/registry/index.d.ts +3 -3
  40. package/dist/{registry-1qhmRtvC.d.cts → registry-CntAdUcY.d.cts} +1 -1
  41. package/dist/{registry-D2qocEsY.d.ts → registry-DYoV-MQi.d.ts} +1 -1
  42. package/dist/registry.cjs +7 -5
  43. package/dist/registry.cjs.map +1 -1
  44. package/dist/registry.js +2 -2
  45. package/dist/runtime.cjs +7 -5
  46. package/dist/runtime.cjs.map +1 -1
  47. package/dist/runtime.js +3 -3
  48. package/dist/schema.cjs +7 -5
  49. package/dist/schema.cjs.map +1 -1
  50. package/dist/schema.js +2 -2
  51. package/dist/screens.cjs +7 -5
  52. package/dist/screens.cjs.map +1 -1
  53. package/dist/screens.js +4 -4
  54. package/dist/{types-CLSUZW8c.d.ts → types-Ckhz-YwC.d.ts} +7 -2
  55. package/dist/{types-BLVpNNLN.d.cts → types-D71SKA5A.d.cts} +7 -2
  56. package/dist/ux.cjs +7 -5
  57. package/dist/ux.cjs.map +1 -1
  58. package/dist/ux.d.cts +1 -1
  59. package/dist/ux.d.ts +1 -1
  60. package/dist/ux.js +1 -1
  61. package/package.json +2 -2
  62. package/dist/chunk-BHM5HGXH.js.map +0 -1
  63. package/dist/chunk-HBE4LVPX.js.map +0 -1
package/dist/screens.js CHANGED
@@ -1,8 +1,8 @@
1
- import { FlowViewer } from './chunk-MX4SJDNI.js';
2
- export { FlowViewer } from './chunk-MX4SJDNI.js';
3
- import './chunk-M7M6GLFV.js';
1
+ import { FlowViewer } from './chunk-EO6444T2.js';
2
+ export { FlowViewer } from './chunk-EO6444T2.js';
3
+ import './chunk-5H54OTKT.js';
4
4
  import './chunk-UEOE6B52.js';
5
- import './chunk-HBE4LVPX.js';
5
+ import './chunk-JF6WCRBU.js';
6
6
  import './chunk-F5RPRB7A.js';
7
7
  import './chunk-USL4FMFU.js';
8
8
  import { registerSchemaComponents } from '@particle-academy/fancy-screens';
@@ -491,7 +491,7 @@ type RenderBodyContext<TConfig = unknown> = {
491
491
  * Every value is TOP-LEVEL by construction — a relation cannot describe a value
492
492
  * nested under a key, which is why `wait` declares a field list instead.
493
493
  */
494
- type EmitsRelation = "input" | "inputs-merged" | `expression:${string}`;
494
+ type EmitsRelation = "input" | "inputs-merged" | "input-map-merged" | `expression:${string}`;
495
495
  /**
496
496
  * NodeKindDefinition — declares an authorable node type. Register one
497
497
  * via `registerNodeKind()`. Hosts (and the agent bridge) introspect the
@@ -555,7 +555,12 @@ type NodeKindDefinition<TConfig = Record<string, unknown>, TIn = any, TOut = any
555
555
  * form it met first.
556
556
  *
557
557
  * - `"input"` — emits its input unchanged
558
- * - `"inputs-merged"` — the union of every input's fields
558
+ * - `"inputs-merged"` — the union of every input PAYLOAD's fields
559
+ * - `"input-map-merged"` — the raw input MAP merged in, whose shape
560
+ * DEPENDS ON POSITION: `collectInputs` seeds an entry node flat and
561
+ * keys every other node by handle, so a `schedule_trigger` with an
562
+ * inbound edge emits `{ cron, timezone, in: {...} }`. Two names because
563
+ * they are two operations, not one plus a positional rule.
559
564
  * - `` `expression:${string}` `` — the shape the expression in THAT CONFIG KEY
560
565
  * names. The key is part of the value because a consumer hardcoding "the
561
566
  * field called expression" has copied our knowledge one level down, which is
@@ -491,7 +491,7 @@ type RenderBodyContext<TConfig = unknown> = {
491
491
  * Every value is TOP-LEVEL by construction — a relation cannot describe a value
492
492
  * nested under a key, which is why `wait` declares a field list instead.
493
493
  */
494
- type EmitsRelation = "input" | "inputs-merged" | `expression:${string}`;
494
+ type EmitsRelation = "input" | "inputs-merged" | "input-map-merged" | `expression:${string}`;
495
495
  /**
496
496
  * NodeKindDefinition — declares an authorable node type. Register one
497
497
  * via `registerNodeKind()`. Hosts (and the agent bridge) introspect the
@@ -555,7 +555,12 @@ type NodeKindDefinition<TConfig = Record<string, unknown>, TIn = any, TOut = any
555
555
  * form it met first.
556
556
  *
557
557
  * - `"input"` — emits its input unchanged
558
- * - `"inputs-merged"` — the union of every input's fields
558
+ * - `"inputs-merged"` — the union of every input PAYLOAD's fields
559
+ * - `"input-map-merged"` — the raw input MAP merged in, whose shape
560
+ * DEPENDS ON POSITION: `collectInputs` seeds an entry node flat and
561
+ * keys every other node by handle, so a `schedule_trigger` with an
562
+ * inbound edge emits `{ cron, timezone, in: {...} }`. Two names because
563
+ * they are two operations, not one plus a positional rule.
559
564
  * - `` `expression:${string}` `` — the shape the expression in THAT CONFIG KEY
560
565
  * names. The key is part of the value because a consumer hardcoding "the
561
566
  * field called expression" has copied our knowledge one level down, which is
package/dist/ux.cjs CHANGED
@@ -9532,7 +9532,7 @@ function activatedPorts(node, result) {
9532
9532
  return { ports: [r.__port], value: r.value };
9533
9533
  }
9534
9534
  if (typeof r.branch === "string") {
9535
- return { ports: [r.branch], value: r.value ?? r };
9535
+ return { ports: [r.branch], value: Object.prototype.hasOwnProperty.call(r, "value") ? r.value : r };
9536
9536
  }
9537
9537
  }
9538
9538
  const kind = getNodeKind(node.data?.kind ?? node.type ?? "") ?? void 0;
@@ -9694,8 +9694,9 @@ var KINDS = [
9694
9694
  // ───────────── Triggers ─────────────
9695
9695
  {
9696
9696
  name: "@particle-academy/manual_trigger",
9697
- // returns the inputs it was started with
9698
- emits: "input",
9697
+ // Returns the raw inputs MAP, not the `in` port -- flat at an entry
9698
+ // point, port-keyed the moment the node has an inbound edge.
9699
+ emits: "input-map-merged",
9699
9700
  aliases: ["manual_trigger", "@fancy/manual_trigger"],
9700
9701
  category: "trigger",
9701
9702
  label: "Manual",
@@ -9728,8 +9729,9 @@ var KINDS = [
9728
9729
  { path: "cron", type: "string", description: "The cron expression that fired." },
9729
9730
  { path: "timezone", type: "string", description: "The timezone it was evaluated in." }
9730
9731
  ],
9731
- // merges its inputs into the TOP level beside cron/timezone
9732
- emits: "inputs-merged",
9732
+ // Merges $ctx->inputs ITSELF beside cron/timezone -- the MAP, whose
9733
+ // shape depends on position, not each port's payload the way `merge` does.
9734
+ emits: "input-map-merged",
9733
9735
  aliases: ["schedule_trigger", "@fancy/schedule_trigger"],
9734
9736
  category: "trigger",
9735
9737
  label: "Schedule",