@octaviaflow/core 3.0.18-beta.9 → 3.1.0-beta.52

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 (170) hide show
  1. package/dist/chunk-2ZIOFEIS.js +3001 -0
  2. package/dist/chunk-2ZIOFEIS.js.map +1 -0
  3. package/dist/chunk-3DWB2PUF.js +2991 -0
  4. package/dist/chunk-3DWB2PUF.js.map +1 -0
  5. package/dist/chunk-4ZALUTZS.js +2936 -0
  6. package/dist/chunk-4ZALUTZS.js.map +1 -0
  7. package/dist/chunk-5ARKSRED.js +2951 -0
  8. package/dist/chunk-5ARKSRED.js.map +1 -0
  9. package/dist/chunk-5OSGSJMM.js +2981 -0
  10. package/dist/chunk-5OSGSJMM.js.map +1 -0
  11. package/dist/chunk-5YQQMEF3.js +2981 -0
  12. package/dist/chunk-5YQQMEF3.js.map +1 -0
  13. package/dist/chunk-6QCJK7H7.js +2991 -0
  14. package/dist/chunk-6QCJK7H7.js.map +1 -0
  15. package/dist/chunk-6QDYERZD.js +2944 -0
  16. package/dist/chunk-6QDYERZD.js.map +1 -0
  17. package/dist/chunk-76TP67ED.js +2984 -0
  18. package/dist/chunk-76TP67ED.js.map +1 -0
  19. package/dist/chunk-A6KMO4JV.js +2949 -0
  20. package/dist/chunk-A6KMO4JV.js.map +1 -0
  21. package/dist/chunk-B7FTWSTM.js +2938 -0
  22. package/dist/chunk-B7FTWSTM.js.map +1 -0
  23. package/dist/chunk-BCO6M26F.js +2940 -0
  24. package/dist/chunk-BCO6M26F.js.map +1 -0
  25. package/dist/chunk-DBNSBJO7.js +2993 -0
  26. package/dist/chunk-DBNSBJO7.js.map +1 -0
  27. package/dist/chunk-ECIHUVU7.js +2986 -0
  28. package/dist/chunk-ECIHUVU7.js.map +1 -0
  29. package/dist/chunk-HDOTOZNA.js +2936 -0
  30. package/dist/chunk-HDOTOZNA.js.map +1 -0
  31. package/dist/chunk-IUIICQU5.js +2946 -0
  32. package/dist/chunk-IUIICQU5.js.map +1 -0
  33. package/dist/chunk-J2UYZI6D.js +2946 -0
  34. package/dist/chunk-J2UYZI6D.js.map +1 -0
  35. package/dist/chunk-K2H7JLQW.js +2952 -0
  36. package/dist/chunk-K2H7JLQW.js.map +1 -0
  37. package/dist/chunk-KOE4VS4I.js +2945 -0
  38. package/dist/chunk-KOE4VS4I.js.map +1 -0
  39. package/dist/chunk-KUXYBP66.js +2953 -0
  40. package/dist/chunk-KUXYBP66.js.map +1 -0
  41. package/dist/chunk-M2QXKYL2.js +2945 -0
  42. package/dist/chunk-M2QXKYL2.js.map +1 -0
  43. package/dist/chunk-MMXL343D.js +2974 -0
  44. package/dist/chunk-MMXL343D.js.map +1 -0
  45. package/dist/chunk-MXJL3EPE.js +2986 -0
  46. package/dist/chunk-MXJL3EPE.js.map +1 -0
  47. package/dist/chunk-MYZ25B2R.js +2995 -0
  48. package/dist/chunk-MYZ25B2R.js.map +1 -0
  49. package/dist/chunk-NTMEYB7B.js +2949 -0
  50. package/dist/chunk-NTMEYB7B.js.map +1 -0
  51. package/dist/chunk-Q6ERDPQR.js +2981 -0
  52. package/dist/chunk-Q6ERDPQR.js.map +1 -0
  53. package/dist/chunk-SLVDAZSX.js +2946 -0
  54. package/dist/chunk-SLVDAZSX.js.map +1 -0
  55. package/dist/chunk-UQBPYONV.js +2991 -0
  56. package/dist/chunk-UQBPYONV.js.map +1 -0
  57. package/dist/chunk-UXMNBS22.js +2955 -0
  58. package/dist/chunk-UXMNBS22.js.map +1 -0
  59. package/dist/chunk-WEGED7TA.js +2991 -0
  60. package/dist/chunk-WEGED7TA.js.map +1 -0
  61. package/dist/chunk-XSRJM2TR.js +2944 -0
  62. package/dist/chunk-XSRJM2TR.js.map +1 -0
  63. package/dist/chunk-ZAMJEU42.js +2992 -0
  64. package/dist/chunk-ZAMJEU42.js.map +1 -0
  65. package/dist/chunk-ZRAM6FXB.js +2949 -0
  66. package/dist/chunk-ZRAM6FXB.js.map +1 -0
  67. package/dist/components/ChatAttachment/ChatAttachment.d.ts +20 -0
  68. package/dist/components/ChatAttachment/ChatAttachment.d.ts.map +1 -0
  69. package/dist/components/ChatAttachment/index.d.ts +2 -0
  70. package/dist/components/ChatAttachment/index.d.ts.map +1 -0
  71. package/dist/components/ChatBubble/ChatBubble.d.ts +11 -1
  72. package/dist/components/ChatBubble/ChatBubble.d.ts.map +1 -1
  73. package/dist/components/ChatCodeBlock/ChatCodeBlock.d.ts +19 -0
  74. package/dist/components/ChatCodeBlock/ChatCodeBlock.d.ts.map +1 -0
  75. package/dist/components/ChatCodeBlock/index.d.ts +2 -0
  76. package/dist/components/ChatCodeBlock/index.d.ts.map +1 -0
  77. package/dist/components/ChatComposer/ChatComposer.d.ts +51 -0
  78. package/dist/components/ChatComposer/ChatComposer.d.ts.map +1 -0
  79. package/dist/components/ChatComposer/index.d.ts +2 -0
  80. package/dist/components/ChatComposer/index.d.ts.map +1 -0
  81. package/dist/components/ChatDayDivider/ChatDayDivider.d.ts +11 -0
  82. package/dist/components/ChatDayDivider/ChatDayDivider.d.ts.map +1 -0
  83. package/dist/components/ChatDayDivider/index.d.ts +2 -0
  84. package/dist/components/ChatDayDivider/index.d.ts.map +1 -0
  85. package/dist/components/ChatFeedback/ChatFeedback.d.ts +22 -0
  86. package/dist/components/ChatFeedback/ChatFeedback.d.ts.map +1 -0
  87. package/dist/components/ChatFeedback/index.d.ts +2 -0
  88. package/dist/components/ChatFeedback/index.d.ts.map +1 -0
  89. package/dist/components/ChatPanel/ChatPanel.d.ts +34 -0
  90. package/dist/components/ChatPanel/ChatPanel.d.ts.map +1 -0
  91. package/dist/components/ChatPanel/index.d.ts +2 -0
  92. package/dist/components/ChatPanel/index.d.ts.map +1 -0
  93. package/dist/components/ChatScrollToBottom/ChatScrollToBottom.d.ts +12 -0
  94. package/dist/components/ChatScrollToBottom/ChatScrollToBottom.d.ts.map +1 -0
  95. package/dist/components/ChatScrollToBottom/index.d.ts +2 -0
  96. package/dist/components/ChatScrollToBottom/index.d.ts.map +1 -0
  97. package/dist/components/ChatSources/ChatSources.d.ts +34 -0
  98. package/dist/components/ChatSources/ChatSources.d.ts.map +1 -0
  99. package/dist/components/ChatSources/index.d.ts +2 -0
  100. package/dist/components/ChatSources/index.d.ts.map +1 -0
  101. package/dist/components/ChatSuggestions/ChatSuggestions.d.ts +30 -0
  102. package/dist/components/ChatSuggestions/ChatSuggestions.d.ts.map +1 -0
  103. package/dist/components/ChatSuggestions/index.d.ts +2 -0
  104. package/dist/components/ChatSuggestions/index.d.ts.map +1 -0
  105. package/dist/components/ChatThinking/ChatThinking.d.ts +29 -0
  106. package/dist/components/ChatThinking/ChatThinking.d.ts.map +1 -0
  107. package/dist/components/ChatThinking/index.d.ts +2 -0
  108. package/dist/components/ChatThinking/index.d.ts.map +1 -0
  109. package/dist/components/ChatThread/ChatThread.d.ts +25 -0
  110. package/dist/components/ChatThread/ChatThread.d.ts.map +1 -0
  111. package/dist/components/ChatThread/index.d.ts +2 -0
  112. package/dist/components/ChatThread/index.d.ts.map +1 -0
  113. package/dist/components/ChatToolTrace/ChatToolTrace.d.ts +27 -0
  114. package/dist/components/ChatToolTrace/ChatToolTrace.d.ts.map +1 -0
  115. package/dist/components/ChatToolTrace/index.d.ts +2 -0
  116. package/dist/components/ChatToolTrace/index.d.ts.map +1 -0
  117. package/dist/components/ConditionBuilder/ConditionBuilder.d.ts +6 -0
  118. package/dist/components/ConditionBuilder/ConditionBuilder.d.ts.map +1 -1
  119. package/dist/components/DatePicker/DatePicker.d.ts.map +1 -1
  120. package/dist/components/ExecutionConsole/ExecutionConsole.d.ts +1 -1
  121. package/dist/components/ExecutionConsole/ExecutionConsole.d.ts.map +1 -1
  122. package/dist/components/FlowMinimap/FlowMinimap.d.ts.map +1 -1
  123. package/dist/components/FlowToolbar/FlowToolbar.d.ts.map +1 -1
  124. package/dist/components/Input/Input.d.ts +1 -1
  125. package/dist/components/Input/Input.d.ts.map +1 -1
  126. package/dist/components/MultiSelect/MultiSelect.d.ts +7 -0
  127. package/dist/components/MultiSelect/MultiSelect.d.ts.map +1 -1
  128. package/dist/components/NumberInput/NumberInput.d.ts +7 -0
  129. package/dist/components/NumberInput/NumberInput.d.ts.map +1 -1
  130. package/dist/components/PageHeader/PageHeader.d.ts +5 -1
  131. package/dist/components/PageHeader/PageHeader.d.ts.map +1 -1
  132. package/dist/components/Select/Select.d.ts.map +1 -1
  133. package/dist/components/TimePicker/TimePicker.d.ts.map +1 -1
  134. package/dist/index.cjs +5197 -3852
  135. package/dist/index.cjs.map +1 -1
  136. package/dist/index.d.ts +13 -0
  137. package/dist/index.d.ts.map +1 -1
  138. package/dist/index.js +4866 -3511
  139. package/dist/index.js.map +1 -1
  140. package/dist/styles.css +1 -1
  141. package/dist/utils/useAnchoredPopover.d.ts +63 -0
  142. package/dist/utils/useAnchoredPopover.d.ts.map +1 -0
  143. package/dist/workflow/components/ConfigPanel/ConfigPanel.d.ts +27 -9
  144. package/dist/workflow/components/ConfigPanel/ConfigPanel.d.ts.map +1 -1
  145. package/dist/workflow/components/FlowCanvas/FlowCanvas.d.ts +8 -0
  146. package/dist/workflow/components/FlowCanvas/FlowCanvas.d.ts.map +1 -1
  147. package/dist/workflow/components/FlowEdge/FlowEdge.d.ts.map +1 -1
  148. package/dist/workflow/components/FxPanel/DataRefButton.d.ts +9 -0
  149. package/dist/workflow/components/FxPanel/DataRefButton.d.ts.map +1 -0
  150. package/dist/workflow/components/FxPanel/FxPanel.d.ts +74 -0
  151. package/dist/workflow/components/FxPanel/FxPanel.d.ts.map +1 -0
  152. package/dist/workflow/components/FxPanel/FxToggleButton.d.ts +9 -0
  153. package/dist/workflow/components/FxPanel/FxToggleButton.d.ts.map +1 -0
  154. package/dist/workflow/components/Handle/Handle.d.ts +9 -1
  155. package/dist/workflow/components/Handle/Handle.d.ts.map +1 -1
  156. package/dist/workflow/components/Handle/handleRegistry.d.ts +19 -0
  157. package/dist/workflow/components/Handle/handleRegistry.d.ts.map +1 -1
  158. package/dist/workflow/components/kinds/index.d.ts.map +1 -1
  159. package/dist/workflow/index.d.ts +2 -0
  160. package/dist/workflow/index.d.ts.map +1 -1
  161. package/dist/workflow/layout/elk.d.ts.map +1 -1
  162. package/dist/workflow/types.d.ts +108 -0
  163. package/dist/workflow/types.d.ts.map +1 -1
  164. package/dist/workflow/utils/parenting.d.ts +5 -3
  165. package/dist/workflow/utils/parenting.d.ts.map +1 -1
  166. package/dist/workflow.cjs +678 -196
  167. package/dist/workflow.cjs.map +1 -1
  168. package/dist/workflow.js +539 -64
  169. package/dist/workflow.js.map +1 -1
  170. package/package.json +2 -2
@@ -0,0 +1,63 @@
1
+ import { type CSSProperties, type RefObject } from "react";
2
+ export interface AnchoredRect {
3
+ top: number;
4
+ bottom: number;
5
+ left: number;
6
+ width: number;
7
+ }
8
+ export interface AnchoredViewport {
9
+ width: number;
10
+ height: number;
11
+ }
12
+ export interface AnchoredPopoverPosition {
13
+ top?: number;
14
+ bottom?: number;
15
+ left: number;
16
+ /** Anchor (trigger) width — consumers spread as `minWidth` so the popover
17
+ * is at least as wide as its trigger but may grow to its natural width. */
18
+ width: number;
19
+ /** Set only when the popover would otherwise be wider than the viewport —
20
+ * caps it so it can't overflow on small screens. */
21
+ maxWidth?: number;
22
+ maxHeight: number;
23
+ /** Which way the popover opened — handy for direction-aware entry motion. */
24
+ direction: "up" | "down";
25
+ }
26
+ export interface ComputeAnchoredPositionArgs {
27
+ anchor: AnchoredRect;
28
+ viewport: AnchoredViewport;
29
+ /** Measured popover width, used for horizontal clamping. Falls back to the
30
+ * anchor width when unknown (first paint before the popover is measured). */
31
+ popoverWidth?: number;
32
+ gap: number;
33
+ margin: number;
34
+ preferredMinHeight: number;
35
+ }
36
+ /**
37
+ * Pure geometry — extracted so the placement maths can be unit-tested without
38
+ * a DOM. Given the anchor rect, the viewport, and the popover's width, returns
39
+ * the fixed-position coordinates (with vertical flip + horizontal clamp).
40
+ */
41
+ export declare function computeAnchoredPosition({ anchor, viewport, popoverWidth, gap, margin, preferredMinHeight, }: ComputeAnchoredPositionArgs): AnchoredPopoverPosition;
42
+ export interface UseAnchoredPopoverOptions {
43
+ /** Gap in px between the trigger and the popover. Default 4. */
44
+ gap?: number;
45
+ /** Breathing room in px to keep at the viewport edge. Default 8. */
46
+ margin?: number;
47
+ /** Below this much downward space (px) the popover prefers to flip up.
48
+ * Default 200. */
49
+ preferredMinHeight?: number;
50
+ /** Ref to the popover element. When provided its measured width is used for
51
+ * horizontal clamping (popovers wider than the trigger anchored near the
52
+ * right edge would otherwise overflow). */
53
+ popoverRef?: RefObject<HTMLElement | null>;
54
+ }
55
+ /**
56
+ * @param anchorRef ref to the trigger element the popover anchors to
57
+ * @param open whether the popover is currently open (drives listeners)
58
+ */
59
+ export declare function useAnchoredPopover(anchorRef: RefObject<HTMLElement | null>, open: boolean, options?: UseAnchoredPopoverOptions): AnchoredPopoverPosition;
60
+ /** Convenience: turn a position into the inline style for the portaled node.
61
+ * Only the active vertical anchor (top OR bottom) is emitted. */
62
+ export declare function anchoredPopoverStyle(pos: AnchoredPopoverPosition, extra?: CSSProperties): CSSProperties;
63
+ //# sourceMappingURL=useAnchoredPopover.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAnchoredPopover.d.ts","sourceRoot":"","sources":["../../src/utils/useAnchoredPopover.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,SAAS,EAKf,MAAM,OAAO,CAAC;AA+Bf,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,uBAAuB;IACtC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb;gFAC4E;IAC5E,KAAK,EAAE,MAAM,CAAC;IACd;yDACqD;IACrD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,6EAA6E;IAC7E,SAAS,EAAE,IAAI,GAAG,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,YAAY,CAAC;IACrB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B;kFAC8E;IAC9E,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,EACtC,MAAM,EACN,QAAQ,EACR,YAAY,EACZ,GAAG,EACH,MAAM,EACN,kBAAkB,GACnB,EAAE,2BAA2B,GAAG,uBAAuB,CA0CvD;AAED,MAAM,WAAW,yBAAyB;IACxC,gEAAgE;IAChE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,oEAAoE;IACpE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;uBACmB;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;gDAE4C;IAC5C,UAAU,CAAC,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;CAC5C;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,EACxC,IAAI,EAAE,OAAO,EACb,OAAO,GAAE,yBAA8B,GACtC,uBAAuB,CAqDzB;AAED;kEACkE;AAClE,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,uBAAuB,EAC5B,KAAK,CAAC,EAAE,aAAa,GACpB,aAAa,CAWf"}
@@ -11,12 +11,17 @@ export interface ConfigPanelTab {
11
11
  }
12
12
  export interface ConfigPanelProps {
13
13
  open?: boolean;
14
- /** Title shown in the header. Double-click opens the inline editor. */
14
+ /** Title shown in the header — the action name. Double-click opens
15
+ * the inline editor. The header shows this single line only. */
15
16
  title?: string;
16
- /** Optional breadcrumb prefix (e.g. "Action"). */
17
- kindLabel?: string;
18
17
  /** Optional icon rendered before the title. */
19
18
  icon?: ReactNode;
19
+ /**
20
+ * Modular header action slot — buttons rendered between the title and
21
+ * the close (✕). Use it for per-action affordances like the FX
22
+ * toggle; omit entirely for actions that don't need them.
23
+ */
24
+ headerActions?: ReactNode;
20
25
  /** Inline status banner — error / warning / hint, shown at the top of the body. */
21
26
  banner?: ReactNode;
22
27
  /** Tab definitions. When omitted, `children` renders directly (no tabs). */
@@ -25,18 +30,26 @@ export interface ConfigPanelProps {
25
30
  activeTab?: string;
26
31
  defaultActiveTab?: string;
27
32
  onTabChange?: (id: string) => void;
28
- /** Save-state pill in the footer. */
33
+ /** Save-state pill in the footer. Omit it entirely to hide the pill —
34
+ * the footer then shows only its action buttons. */
29
35
  saveState?: ConfigPanelSaveState;
30
36
  /** Fires on the title editor's commit. Omit to disable title editing. */
31
37
  onTitleChange?: (next: string) => void;
32
38
  onClose?: () => void;
33
39
  onSave?: () => void;
34
40
  onCancel?: () => void;
41
+ /**
42
+ * Padding (px, all sides) applied to the scrollable body — the work
43
+ * area that holds the active tab's content. Default 12. Pass `0` when
44
+ * the consumer's tab content already pads itself.
45
+ */
46
+ padding?: number;
35
47
  /** Resizable width — pass `resizable: false` to lock. */
36
48
  resizable?: boolean;
37
- /** Initial width (px). Defaults to 360. */
49
+ /** Initial width (px). Defaults to 400. */
38
50
  defaultWidth?: number;
39
- /** Lower clamp during resize. Defaults to 280. */
51
+ /** Lower clamp during resize. Defaults to 400 — the panel can be
52
+ * widened but never narrowed past its default. */
40
53
  minWidth?: number;
41
54
  /**
42
55
  * Upper clamp during resize. Defaults to 720. The panel ALSO clamps
@@ -55,10 +68,15 @@ export interface ConfigPanelProps {
55
68
  variant?: "pinned" | "floating";
56
69
  /** Body slot used only when `tabs` is omitted. */
57
70
  children?: ReactNode;
58
- /** Custom footer slot — replaces the default save/cancel buttons. */
59
- footer?: ReactNode;
71
+ /**
72
+ * Modular footer action buttons — replaces the built-in Cancel/Save
73
+ * pair. The footer bar itself stays static and pinned; this slot just
74
+ * decides which buttons live in it, so a consumer can add, remove, or
75
+ * reorder actions freely.
76
+ */
77
+ footerActions?: ReactNode;
60
78
  className?: string;
61
79
  style?: CSSProperties;
62
80
  }
63
- export declare function ConfigPanel({ open, title, kindLabel, icon, banner, tabs, activeTab: controlledActive, defaultActiveTab, onTabChange, saveState, onTitleChange, onClose, onSave, onCancel, resizable, defaultWidth, minWidth, maxWidth, maxWidthContainerInset, variant, children, footer, className, style, }: ConfigPanelProps): import("react/jsx-runtime").JSX.Element;
81
+ export declare function ConfigPanel({ open, title, icon, headerActions, banner, tabs, activeTab: controlledActive, defaultActiveTab, onTabChange, saveState, onTitleChange, onClose, onSave, onCancel, padding, resizable, defaultWidth, minWidth, maxWidth, maxWidthContainerInset, variant, children, footerActions, className, style, }: ConfigPanelProps): import("react/jsx-runtime").JSX.Element;
64
82
  //# sourceMappingURL=ConfigPanel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigPanel.d.ts","sourceRoot":"","sources":["../../../../src/workflow/components/ConfigPanel/ConfigPanel.tsx"],"names":[],"mappings":"AAeA,OAAO,EACL,KAAK,aAAa,EAGlB,KAAK,SAAS,EAKf,MAAM,OAAO,CAAC;AAGf,MAAM,MAAM,oBAAoB,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,CAAC;AAEpF,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,SAAS,CAAC;IACjB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,mDAAmD;IACnD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,SAAS,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,uEAAuE;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kDAAkD;IAClD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+CAA+C;IAC/C,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,mFAAmF;IACnF,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,4EAA4E;IAC5E,IAAI,CAAC,EAAE,cAAc,EAAE,CAAC;IACxB,mEAAmE;IACnE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,qCAAqC;IACrC,SAAS,CAAC,EAAE,oBAAoB,CAAC;IACjC,yEAAyE;IACzE,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,yDAAyD;IACzD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,2CAA2C;IAC3C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kDAAkD;IAClD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,6EAA6E;IAC7E,OAAO,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAChC,kDAAkD;IAClD,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,qEAAqE;IACrE,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB;AAkBD,wBAAgB,WAAW,CAAC,EAC1B,IAAW,EACX,KAAK,EACL,SAAS,EACT,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,SAAS,EAAE,gBAAgB,EAC3B,gBAAgB,EAChB,WAAW,EACX,SAAmB,EACnB,aAAa,EACb,OAAO,EACP,MAAM,EACN,QAAQ,EACR,SAAgB,EAChB,YAAkB,EAClB,QAAc,EACd,QAAc,EACd,sBAA2B,EAC3B,OAAkB,EAClB,QAAQ,EACR,MAAM,EACN,SAAS,EACT,KAAK,GACN,EAAE,gBAAgB,2CAsOlB"}
1
+ {"version":3,"file":"ConfigPanel.d.ts","sourceRoot":"","sources":["../../../../src/workflow/components/ConfigPanel/ConfigPanel.tsx"],"names":[],"mappings":"AAeA,OAAO,EACL,KAAK,aAAa,EAGlB,KAAK,SAAS,EAKf,MAAM,OAAO,CAAC;AAGf,MAAM,MAAM,oBAAoB,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,CAAC;AAEpF,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,SAAS,CAAC;IACjB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,mDAAmD;IACnD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,SAAS,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;qEACiE;IACjE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+CAA+C;IAC/C,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB;;;;OAIG;IACH,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,mFAAmF;IACnF,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,4EAA4E;IAC5E,IAAI,CAAC,EAAE,cAAc,EAAE,CAAC;IACxB,mEAAmE;IACnE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC;yDACqD;IACrD,SAAS,CAAC,EAAE,oBAAoB,CAAC;IACjC,yEAAyE;IACzE,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yDAAyD;IACzD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,2CAA2C;IAC3C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;uDACmD;IACnD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,6EAA6E;IAC7E,OAAO,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAChC,kDAAkD;IAClD,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB;AAkBD,wBAAgB,WAAW,CAAC,EAC1B,IAAW,EACX,KAAK,EACL,IAAI,EACJ,aAAa,EACb,MAAM,EACN,IAAI,EACJ,SAAS,EAAE,gBAAgB,EAC3B,gBAAgB,EAChB,WAAW,EACX,SAAS,EACT,aAAa,EACb,OAAO,EACP,MAAM,EACN,QAAQ,EACR,OAAY,EACZ,SAAgB,EAChB,YAAkB,EAClB,QAAc,EACd,QAAc,EACd,sBAA2B,EAC3B,OAAkB,EAClB,QAAQ,EACR,aAAa,EACb,SAAS,EACT,KAAK,GACN,EAAE,gBAAgB,2CAkPlB"}
@@ -139,6 +139,14 @@ export interface FlowCanvasProps {
139
139
  * `autoResizeContainers` recomputes a container's frame. Default 32.
140
140
  */
141
141
  containerAutoResizePadding?: number;
142
+ /**
143
+ * Floor size for `autoResizeContainers`. A container that fits its
144
+ * children in less than this stops shrinking here — it never collapses
145
+ * below the size a freshly-dropped (empty) container would have.
146
+ * Defaults: 320 × 200.
147
+ */
148
+ containerMinWidth?: number;
149
+ containerMinHeight?: number;
142
150
  height?: number | string;
143
151
  width?: number | string;
144
152
  className?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"FlowCanvas.d.ts","sourceRoot":"","sources":["../../../../src/workflow/components/FlowCanvas/FlowCanvas.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FlowCanvas.d.ts","sourceRoot":"","sources":["../../../../src/workflow/components/FlowCanvas/FlowCanvas.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"FlowEdge.d.ts","sourceRoot":"","sources":["../../../../src/workflow/components/FlowEdge/FlowEdge.tsx"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAY,YAAY,IAAI,gBAAgB,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAK7F,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,gBAAgB,CAAC;IACvB,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,kEAAkE;IAClE,aAAa,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACpD,oEAAoE;IACpE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,2EAA2E;IAC3E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0DAA0D;IAC1D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,iBAAS,YAAY,CAAC,EACpB,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,aAAa,EACb,UAAiB,EACjB,SAAgB,EAChB,YAAgB,GACjB,EAAE,aAAa,2CA6Nf;AA6BD,eAAO,MAAM,QAAQ,0DAiBnB,CAAC"}
1
+ {"version":3,"file":"FlowEdge.d.ts","sourceRoot":"","sources":["../../../../src/workflow/components/FlowEdge/FlowEdge.tsx"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAY,YAAY,IAAI,gBAAgB,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAK7F,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,gBAAgB,CAAC;IACvB,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,kEAAkE;IAClE,aAAa,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACpD,oEAAoE;IACpE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,2EAA2E;IAC3E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0DAA0D;IAC1D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,iBAAS,YAAY,CAAC,EACpB,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,aAAa,EACb,UAAiB,EACjB,SAAgB,EAChB,YAAgB,GACjB,EAAE,aAAa,2CA+Of;AA6BD,eAAO,MAAM,QAAQ,0DAiBnB,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { type ButtonHTMLAttributes, type ReactNode } from "react";
2
+ export interface DataRefButtonProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, "children"> {
3
+ /** Whether the FxPanel is currently open. Drives `aria-pressed`. */
4
+ active?: boolean;
5
+ /** Visible label beside the icon. Default "Data ref". `null` = icon-only. */
6
+ label?: ReactNode;
7
+ }
8
+ export declare function DataRefButton({ active, label, className, type, ...rest }: DataRefButtonProps): import("react/jsx-runtime").JSX.Element;
9
+ //# sourceMappingURL=DataRefButton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataRefButton.d.ts","sourceRoot":"","sources":["../../../../src/workflow/components/FxPanel/DataRefButton.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,oBAAoB,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAIlE,MAAM,WAAW,kBACf,SAAQ,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,UAAU,CAAC;IACjE,oEAAoE;IACpE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,6EAA6E;IAC7E,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAED,wBAAgB,aAAa,CAAC,EAC5B,MAAc,EACd,KAAkB,EAClB,SAAS,EACT,IAAe,EACf,GAAG,IAAI,EACR,EAAE,kBAAkB,2CAuBpB"}
@@ -0,0 +1,74 @@
1
+ import { type CSSProperties, type DragEvent, type ReactNode } from "react";
2
+ export type FxItemKind = "function" | "variable";
3
+ /** Data type of a Source-Data field — drives the colour-coded badge. */
4
+ export type FxValueType = "string" | "number" | "boolean" | "object" | "array" | "date" | "any";
5
+ export interface FxPanelItem {
6
+ /** Stable key + tree/keyboard identity. */
7
+ id: string;
8
+ /** Display label — a function signature, variable name, or field key. */
9
+ label: string;
10
+ /**
11
+ * The string handed to `dataTransfer` / inserted into a field.
12
+ * Branches may still set it (drag the whole object/array reference).
13
+ */
14
+ insertValue?: string;
15
+ /** Short one-line description shown under the label. */
16
+ description?: string;
17
+ /** Data type — renders a colour-coded badge. Source-Data fields only. */
18
+ valueType?: FxValueType;
19
+ /**
20
+ * Nested children. When present the item renders as an expandable
21
+ * branch — this is what powers the n-th-level Source-Data tree.
22
+ */
23
+ children?: FxPanelItem[];
24
+ }
25
+ export interface FxPanelCategory {
26
+ /** Stable key + accordion identity. */
27
+ id: string;
28
+ /** Section heading. */
29
+ label: string;
30
+ /** Drives the badge glyph + drag payload. Defaults to "function". */
31
+ kind?: FxItemKind;
32
+ /** Items — flat for functions/variables, nested for Source Data. */
33
+ items: FxPanelItem[];
34
+ }
35
+ export interface FxPanelProps {
36
+ /** Categorised entries. Empty categories are dropped from render. */
37
+ categories: FxPanelCategory[];
38
+ /** Header title. Default "Data References". */
39
+ title?: ReactNode;
40
+ /** Instructional line under the search. Pass `null` to hide it. */
41
+ hint?: ReactNode;
42
+ /** Controlled search term. */
43
+ search?: string;
44
+ /** Initial search term when uncontrolled. */
45
+ defaultSearch?: string;
46
+ onSearchChange?: (next: string) => void;
47
+ /** Controlled open category (single-open accordion). `null` = closed. */
48
+ expandedCategory?: string | null;
49
+ /** Initial open category when uncontrolled. */
50
+ defaultExpandedCategory?: string | null;
51
+ onExpandedCategoryChange?: (id: string | null) => void;
52
+ /** Close (✕) handler. Omit to hide the close button. */
53
+ onClose?: () => void;
54
+ /**
55
+ * Fires when an item begins dragging. Use it to populate
56
+ * `e.dataTransfer`. When omitted, FxPanel writes a sensible default:
57
+ * - `text/plain` → insertValue
58
+ * - `application/x-fx-insert` → insertValue
59
+ * - `application/x-fx-type` → category kind
60
+ */
61
+ onItemDragStart?: (item: FxPanelItem, category: FxPanelCategory, e: DragEvent<HTMLElement>) => void;
62
+ /** Fires on click / Enter of an item (insert at cursor). */
63
+ onItemSelect?: (item: FxPanelItem, category: FxPanelCategory) => void;
64
+ /** Panel width (px). Default 300. */
65
+ width?: number;
66
+ /** Message shown when a search matches nothing. Default "No matches". */
67
+ emptyLabel?: ReactNode;
68
+ /** Placeholder for the search box. */
69
+ searchPlaceholder?: string;
70
+ className?: string;
71
+ style?: CSSProperties;
72
+ }
73
+ export declare function FxPanel({ categories, title, hint, search: controlledSearch, defaultSearch, onSearchChange, expandedCategory: controlledExpanded, defaultExpandedCategory, onExpandedCategoryChange, onClose, onItemDragStart, onItemSelect, width, emptyLabel, searchPlaceholder, className, style, }: FxPanelProps): import("react/jsx-runtime").JSX.Element;
74
+ //# sourceMappingURL=FxPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FxPanel.d.ts","sourceRoot":"","sources":["../../../../src/workflow/components/FxPanel/FxPanel.tsx"],"names":[],"mappings":"AAiBA,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,SAAS,EAEd,KAAK,SAAS,EAIf,MAAM,OAAO,CAAC;AAcf,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,UAAU,CAAC;AAEjD,wEAAwE;AACxE,MAAM,MAAM,WAAW,GACnB,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,OAAO,GACP,MAAM,GACN,KAAK,CAAC;AAEV,MAAM,WAAW,WAAW;IAC1B,2CAA2C;IAC3C,EAAE,EAAE,MAAM,CAAC;IACX,yEAAyE;IACzE,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wDAAwD;IACxD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yEAAyE;IACzE,SAAS,CAAC,EAAE,WAAW,CAAC;IACxB;;;OAGG;IACH,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,eAAe;IAC9B,uCAAuC;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,uBAAuB;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,qEAAqE;IACrE,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,oEAAoE;IACpE,KAAK,EAAE,WAAW,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,YAAY;IAC3B,qEAAqE;IACrE,UAAU,EAAE,eAAe,EAAE,CAAC;IAC9B,+CAA+C;IAC/C,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,mEAAmE;IACnE,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,8BAA8B;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6CAA6C;IAC7C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,yEAAyE;IACzE,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,+CAA+C;IAC/C,uBAAuB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,wBAAwB,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACvD,wDAAwD;IACxD,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,CAChB,IAAI,EAAE,WAAW,EACjB,QAAQ,EAAE,eAAe,EACzB,CAAC,EAAE,SAAS,CAAC,WAAW,CAAC,KACtB,IAAI,CAAC;IACV,4DAA4D;IAC5D,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,eAAe,KAAK,IAAI,CAAC;IACtE,qCAAqC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yEAAyE;IACzE,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,sCAAsC;IACtC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB;AAgFD,wBAAgB,OAAO,CAAC,EACtB,UAAU,EACV,KAAyB,EACzB,IAA0D,EAC1D,MAAM,EAAE,gBAAgB,EACxB,aAAkB,EAClB,cAAc,EACd,gBAAgB,EAAE,kBAAkB,EACpC,uBAAuB,EACvB,wBAAwB,EACxB,OAAO,EACP,eAAe,EACf,YAAY,EACZ,KAAW,EACX,UAAyB,EACzB,iBAA2D,EAC3D,SAAS,EACT,KAAK,GACN,EAAE,YAAY,2CA6ad"}
@@ -0,0 +1,9 @@
1
+ import { type ButtonHTMLAttributes, type ReactNode } from "react";
2
+ export interface FxToggleButtonProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, "children"> {
3
+ /** Whether the FxPanel is currently open. Drives `aria-pressed`. */
4
+ active?: boolean;
5
+ /** Visible label beside the glyph. Default "FX". Pass `null` for icon-only. */
6
+ label?: ReactNode;
7
+ }
8
+ export declare function FxToggleButton({ active, label, className, type, ...rest }: FxToggleButtonProps): import("react/jsx-runtime").JSX.Element;
9
+ //# sourceMappingURL=FxToggleButton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FxToggleButton.d.ts","sourceRoot":"","sources":["../../../../src/workflow/components/FxPanel/FxToggleButton.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,oBAAoB,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAIlE,MAAM,WAAW,mBACf,SAAQ,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,UAAU,CAAC;IACjE,oEAAoE;IACpE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAED,wBAAgB,cAAc,CAAC,EAC7B,MAAc,EACd,KAAY,EACZ,SAAS,EACT,IAAe,EACf,GAAG,IAAI,EACR,EAAE,mBAAmB,2CAoBrB"}
@@ -5,6 +5,14 @@ export interface HandleProps {
5
5
  type: HandleType;
6
6
  /** Which side of the node the handle sits on. */
7
7
  position: HandlePosition;
8
+ /**
9
+ * Direction the edge should route from this handle. Defaults to
10
+ * `position`. Override it when the handle dot sits on one edge but the
11
+ * wire must leave/enter from another — e.g. a subflow's inner-facing
12
+ * port lives on the frame's `top` edge yet its wire curves `down` into
13
+ * the frame: `position="top" routeSide="bottom"`.
14
+ */
15
+ routeSide?: HandlePosition;
8
16
  /** Stable id within the node. Default `"default"`; required when >1 handle of same type. */
9
17
  id?: string;
10
18
  /** Defaults to true. Setting false disables both starting and ending here. */
@@ -22,5 +30,5 @@ export interface HandleProps {
22
30
  className?: string;
23
31
  style?: CSSProperties;
24
32
  }
25
- export declare function Handle({ type, position, id, isConnectable, isConnectableStart, isConnectableEnd, index, total, label, className, style, }: HandleProps): import("react/jsx-runtime").JSX.Element;
33
+ export declare function Handle({ type, position, routeSide, id, isConnectable, isConnectableStart, isConnectableEnd, index, total, label, className, style, }: HandleProps): import("react/jsx-runtime").JSX.Element;
26
34
  //# sourceMappingURL=Handle.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Handle.d.ts","sourceRoot":"","sources":["../../../../src/workflow/components/Handle/Handle.tsx"],"names":[],"mappings":"AAeA,OAAO,EAAE,KAAK,aAAa,EAAwC,MAAM,OAAO,CAAC;AAEjF,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAK/D,MAAM,WAAW,WAAW;IAC1B,0EAA0E;IAC1E,IAAI,EAAE,UAAU,CAAC;IACjB,iDAAiD;IACjD,QAAQ,EAAE,cAAc,CAAC;IACzB,4FAA4F;IAC5F,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,8EAA8E;IAC9E,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,8EAA8E;IAC9E,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,4EAA4E;IAC5E,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,uEAAuE;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uEAAuE;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB;AAID,wBAAgB,MAAM,CAAC,EACrB,IAAI,EACJ,QAAQ,EACR,EAAsB,EACtB,aAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,KAAS,EACT,KAAS,EACT,KAAK,EACL,SAAS,EACT,KAAK,GACN,EAAE,WAAW,2CAkEb"}
1
+ {"version":3,"file":"Handle.d.ts","sourceRoot":"","sources":["../../../../src/workflow/components/Handle/Handle.tsx"],"names":[],"mappings":"AAeA,OAAO,EAAE,KAAK,aAAa,EAAwC,MAAM,OAAO,CAAC;AAEjF,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAK/D,MAAM,WAAW,WAAW;IAC1B,0EAA0E;IAC1E,IAAI,EAAE,UAAU,CAAC;IACjB,iDAAiD;IACjD,QAAQ,EAAE,cAAc,CAAC;IACzB;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,4FAA4F;IAC5F,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,8EAA8E;IAC9E,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,8EAA8E;IAC9E,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,4EAA4E;IAC5E,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,uEAAuE;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uEAAuE;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB;AAID,wBAAgB,MAAM,CAAC,EACrB,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,EAAsB,EACtB,aAAoB,EACpB,kBAAkB,EAClB,gBAAgB,EAChB,KAAS,EACT,KAAS,EACT,KAAK,EACL,SAAS,EACT,KAAK,GACN,EAAE,WAAW,2CAqEb"}
@@ -3,15 +3,34 @@ export interface HandleDescriptor {
3
3
  nodeId: string;
4
4
  handleId: string;
5
5
  type: HandleType;
6
+ /** Physical edge the handle dot sits on — drives placement + the
7
+ * handle's flow-space centre. */
6
8
  side: HandlePosition;
9
+ /**
10
+ * Edge-routing direction. The bezier leaves/enters along THIS side,
11
+ * which is normally the same as `side`. A subflow's inner-facing port
12
+ * sits on the frame's outer edge (`side`) but must route INWARD — e.g.
13
+ * a port physically on `top` whose wire should curve `down` into the
14
+ * frame sets `routeSide: "bottom"`. Defaults to `side`.
15
+ */
16
+ routeSide: HandlePosition;
7
17
  /** 0-based position among same-(node, side, type) handles. */
8
18
  index: number;
9
19
  /** Total handles on the same (node, side, type). */
10
20
  total: number;
21
+ /** May this handle START a connection? Defaults true. */
22
+ canStart: boolean;
23
+ /** May this handle END a connection? Defaults true. */
24
+ canEnd: boolean;
11
25
  }
12
26
  export interface HandleRegistry {
13
27
  register(d: HandleDescriptor): () => void;
14
28
  resolve(nodeId: string, type: HandleType, handleId: string): HandleDescriptor | undefined;
29
+ /** Every currently-registered handle. Used by the connection drag to
30
+ * resolve a drop target geometrically (nearest handle within snap
31
+ * radius) rather than relying on DOM hit-testing, which is fragile
32
+ * against z-index / pointer-events / overlapping subflow frames. */
33
+ all(): HandleDescriptor[];
15
34
  /**
16
35
  * Subscribe to registry mutations. Fires after every register /
17
36
  * unregister so listeners (typically the EdgesLayer) can re-render
@@ -1 +1 @@
1
- {"version":3,"file":"handleRegistry.d.ts","sourceRoot":"","sources":["../../../../src/workflow/components/Handle/handleRegistry.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/D,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,cAAc,CAAC;IACrB,8DAA8D;IAC9D,KAAK,EAAE,MAAM,CAAC;IACd,oDAAoD;IACpD,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,CAAC,EAAE,gBAAgB,GAAG,MAAM,IAAI,CAAC;IAC1C,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAAC;IAC1F;;;;;;;;OAQG;IACH,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC;CAC7C;AAED,eAAO,MAAM,qBAAqB,yCAA6C,CAAC;AAEhF,wBAAgB,iBAAiB,IAAI,cAAc,CAMlD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,cAAc,CAgCrD"}
1
+ {"version":3,"file":"handleRegistry.d.ts","sourceRoot":"","sources":["../../../../src/workflow/components/Handle/handleRegistry.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/D,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,UAAU,CAAC;IACjB;sCACkC;IAClC,IAAI,EAAE,cAAc,CAAC;IACrB;;;;;;OAMG;IACH,SAAS,EAAE,cAAc,CAAC;IAC1B,8DAA8D;IAC9D,KAAK,EAAE,MAAM,CAAC;IACd,oDAAoD;IACpD,KAAK,EAAE,MAAM,CAAC;IACd,yDAAyD;IACzD,QAAQ,EAAE,OAAO,CAAC;IAClB,uDAAuD;IACvD,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,CAAC,EAAE,gBAAgB,GAAG,MAAM,IAAI,CAAC;IAC1C,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAAC;IAC1F;;;yEAGqE;IACrE,GAAG,IAAI,gBAAgB,EAAE,CAAC;IAC1B;;;;;;;;OAQG;IACH,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC;CAC7C;AAED,eAAO,MAAM,qBAAqB,yCAA6C,CAAC;AAEhF,wBAAgB,iBAAiB,IAAI,cAAc,CAMlD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,cAAc,CAmCrD"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/workflow/components/kinds/index.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,iBAAiB,EAAiB,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAGhG,OAAO,EAAY,KAAK,cAAc,EAAE,MAAM,YAAY,CAAC;AAI3D,MAAM,WAAW,eAAe;IAC9B;;yEAEqE;IACrE,IAAI,CAAC,EAAE,OAAO,OAAO,EAAE,SAAS,CAAC;IACjC,uEAAuE;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;OAKG;IACH,IAAI,CAAC,EAAE,OAAO,OAAO,EAAE,SAAS,CAAC;IACjC;8DAC0D;IAC1D,WAAW,CAAC,EAAE,OAAO,OAAO,EAAE,SAAS,CAAC;IACxC;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,OAAO,EAAE,SAAS,CAAC;IACtC,uEAAuE;IACvE,QAAQ,CAAC,EAAE,OAAO,OAAO,EAAE,SAAS,CAAC;IACrC,gEAAgE;IAChE,KAAK,CAAC,EAAE,OAAO,OAAO,EAAE,SAAS,CAAC;IAClC,uEAAuE;IACvE,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,sCAAsC;IACtC,IAAI,CAAC,EAAE,OAAO,OAAO,EAAE,SAAS,CAAC;IAEjC,QAAQ,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAE3C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;4EACwE;IACxE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;0CAEsC;IACtC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,MAAM,CAAC,EAAE,MAAM,CAAC;IAGhB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAKD,eAAO,MAAM,UAAU,EAAE,iBAAiB,CAAC,eAAe,CAmBzD,CAAC;AAKF,eAAO,MAAM,WAAW,EAAE,iBAAiB,CAAC,eAAe,CAkB1D,CAAC;AAMF,eAAO,MAAM,aAAa,EAAE,iBAAiB,CAAC,eAAe,CAiC5D,CAAC;AAcF,eAAO,MAAM,SAAS,EAAE,iBAAiB,CAAC,eAAe,CAmExD,CAAC;AAmBF,eAAO,MAAM,WAAW,EAAE,iBAAiB,CAAC,eAAe,CA0F1D,CAAC;AAKF,eAAO,MAAM,UAAU,EAAE,iBAAiB,CAAC,eAAe,CAiBzD,CAAC;AAKF,eAAO,MAAM,SAAS,EAAE,iBAAiB,CAAC,eAAe,CAkBxD,CAAC;AAKF,eAAO,MAAM,QAAQ,EAAE,iBAAiB,CAAC,eAAe,CAoBvD,CAAC;AAKF,eAAO,MAAM,YAAY,EAAE,iBAAiB,CAAC,eAAe,CAgC3D,CAAC;AAMF,eAAO,MAAM,UAAU,EAAE,iBAAiB,CAAC,eAAe,CAgBzD,CAAC;AAMF,eAAO,MAAM,WAAW,EAAE,iBAAiB,CAAC,eAAe,CAkB1D,CAAC;AAMF,eAAO,MAAM,eAAe,EAAE,iBAAiB,CAAC,eAAe,CAmB9D,CAAC;AAKF,eAAO,MAAM,kBAAkB,EAAE,gBAahC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/workflow/components/kinds/index.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,iBAAiB,EAAiB,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAGhG,OAAO,EAAY,KAAK,cAAc,EAAE,MAAM,YAAY,CAAC;AAI3D,MAAM,WAAW,eAAe;IAC9B;;yEAEqE;IACrE,IAAI,CAAC,EAAE,OAAO,OAAO,EAAE,SAAS,CAAC;IACjC,uEAAuE;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;OAKG;IACH,IAAI,CAAC,EAAE,OAAO,OAAO,EAAE,SAAS,CAAC;IACjC;8DAC0D;IAC1D,WAAW,CAAC,EAAE,OAAO,OAAO,EAAE,SAAS,CAAC;IACxC;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,OAAO,EAAE,SAAS,CAAC;IACtC,uEAAuE;IACvE,QAAQ,CAAC,EAAE,OAAO,OAAO,EAAE,SAAS,CAAC;IACrC,gEAAgE;IAChE,KAAK,CAAC,EAAE,OAAO,OAAO,EAAE,SAAS,CAAC;IAClC,uEAAuE;IACvE,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,sCAAsC;IACtC,IAAI,CAAC,EAAE,OAAO,OAAO,EAAE,SAAS,CAAC;IAEjC,QAAQ,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAE3C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;4EACwE;IACxE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;0CAEsC;IACtC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,MAAM,CAAC,EAAE,MAAM,CAAC;IAGhB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAKD,eAAO,MAAM,UAAU,EAAE,iBAAiB,CAAC,eAAe,CAmBzD,CAAC;AAKF,eAAO,MAAM,WAAW,EAAE,iBAAiB,CAAC,eAAe,CAkB1D,CAAC;AAMF,eAAO,MAAM,aAAa,EAAE,iBAAiB,CAAC,eAAe,CAiC5D,CAAC;AAcF,eAAO,MAAM,SAAS,EAAE,iBAAiB,CAAC,eAAe,CAmExD,CAAC;AAeF,eAAO,MAAM,WAAW,EAAE,iBAAiB,CAAC,eAAe,CAiC1D,CAAC;AAKF,eAAO,MAAM,UAAU,EAAE,iBAAiB,CAAC,eAAe,CAiBzD,CAAC;AAKF,eAAO,MAAM,SAAS,EAAE,iBAAiB,CAAC,eAAe,CAkBxD,CAAC;AAKF,eAAO,MAAM,QAAQ,EAAE,iBAAiB,CAAC,eAAe,CAoBvD,CAAC;AAKF,eAAO,MAAM,YAAY,EAAE,iBAAiB,CAAC,eAAe,CAgC3D,CAAC;AAMF,eAAO,MAAM,UAAU,EAAE,iBAAiB,CAAC,eAAe,CAgBzD,CAAC;AAMF,eAAO,MAAM,WAAW,EAAE,iBAAiB,CAAC,eAAe,CAkB1D,CAAC;AAMF,eAAO,MAAM,eAAe,EAAE,iBAAiB,CAAC,eAAe,CAmB9D,CAAC;AAKF,eAAO,MAAM,kBAAkB,EAAE,gBAahC,CAAC"}
@@ -11,6 +11,8 @@ export { ConfigPanel, type ConfigPanelProps, type ConfigPanelSaveState, type Con
11
11
  export { FlowCanvas, type FlowCanvasProps } from "./components/FlowCanvas/FlowCanvas";
12
12
  export { FlowEdge, type FlowEdgeProps } from "./components/FlowEdge/FlowEdge";
13
13
  export { FlowNode, type FlowNodeProps } from "./components/FlowNode/FlowNode";
14
+ export { FxPanel, type FxItemKind, type FxPanelCategory, type FxPanelItem, type FxPanelProps, type FxValueType, } from "./components/FxPanel/FxPanel";
15
+ export { DataRefButton, type DataRefButtonProps, } from "./components/FxPanel/DataRefButton";
14
16
  export { type FlowNodeContextValue, useFlowNodeContext, } from "./components/FlowNode/FlowNodeContext";
15
17
  export { buildNodeKindRegistry, type NodeKindComponent, type NodeKindProps, type NodeKindRegistry, } from "./components/FlowNode/nodeKinds";
16
18
  export { Handle, type HandleProps } from "./components/Handle/Handle";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/workflow/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/workflow/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"elk.d.ts","sourceRoot":"","sources":["../../../src/workflow/layout/elk.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAwC,MAAM,WAAW,CAAC;AAEnG,OAAO,KAAK,EAAqB,OAAO,EAAE,MAAM,SAAS,CAAC;AAE1D,MAAM,WAAW,sBAAsB;IACrC,6DAA6D;IAC7D,SAAS,CAAC,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;IACvC,gEAAgE;IAChE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mDAAmD;IACnD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gEAAgE;IAChE,SAAS,CAAC,EACN,SAAS,GACT,QAAQ,GACR,OAAO,GACP,QAAQ,GACR,QAAQ,GACR,OAAO,GACP,aAAa,GACb,KAAK,CAAC;CACX;AASD;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,GAAE,sBAA2B,GAAG,YAAY,CAuFjG"}
1
+ {"version":3,"file":"elk.d.ts","sourceRoot":"","sources":["../../../src/workflow/layout/elk.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAwC,MAAM,WAAW,CAAC;AAEnG,OAAO,KAAK,EAAqB,OAAO,EAAE,MAAM,SAAS,CAAC;AAE1D,MAAM,WAAW,sBAAsB;IACrC,6DAA6D;IAC7D,SAAS,CAAC,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;IACvC,gEAAgE;IAChE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mDAAmD;IACnD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gEAAgE;IAChE,SAAS,CAAC,EACN,SAAS,GACT,QAAQ,GACR,OAAO,GACP,QAAQ,GACR,QAAQ,GACR,OAAO,GACP,aAAa,GACb,KAAK,CAAC;CACX;AASD;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,GAAE,sBAA2B,GAAG,YAAY,CAgGjG"}
@@ -31,6 +31,114 @@ export interface DataSchema {
31
31
  description?: string;
32
32
  example?: unknown;
33
33
  }
34
+ /** Canonical token namespace prefixes used in FX expressions:
35
+ * - `node_<id>.<dot.path>` — reference to an upstream node's output
36
+ * - `$inputs.<name>` — flow input / form variable
37
+ * - `$trigger.<...>` — the trigger payload of the current run
38
+ * - `$previous.<...>` — the immediately-preceding step's output
39
+ * - `$item`, `$index` — inside a ForEach body
40
+ * - `$functions.<name>(…)` — fx catalogue call
41
+ * Resolvers MUST tolerate the legacy `VALUE("path")` and `USER_INPUT(...)`
42
+ * forms for stored-config compatibility; new author actions emit only
43
+ * `{{...}}` tokens. */
44
+ export type SchemaStackTokenPrefix = string;
45
+ export interface SchemaStackFunction {
46
+ /** Function identifier, e.g. "concat", "upper", "parseDate". */
47
+ name: string;
48
+ /** Short label for the picker (often matches name; lets the catalogue
49
+ * display "Upper case" while emitting `upper(...)`). */
50
+ label: string;
51
+ /** Multi-line user-facing description shown on hover. */
52
+ description?: string;
53
+ /** Argument signatures shown in the tooltip + inserted as placeholders
54
+ * when the user drags the function into an expression. */
55
+ args?: Array<{
56
+ name: string;
57
+ type: string;
58
+ optional?: boolean;
59
+ }>;
60
+ /** Return type — drives downstream type inference in the picker. */
61
+ returnType?: string;
62
+ /** Grouping label for the catalogue UI ("String", "Date/Time",
63
+ * "Math", "Logic", "User-defined"). */
64
+ category?: string;
65
+ }
66
+ export interface SchemaStackFunctionCatalog {
67
+ /** Static built-in fx (concat/upper/lower/parseDate/…). */
68
+ builtin: SchemaStackFunction[];
69
+ /** Org-scoped user-defined functions. Optional — empty array when
70
+ * the consumer doesn't expose UDFs. */
71
+ userDefined?: SchemaStackFunction[];
72
+ }
73
+ /** A single per-action contribution to the DataStream tree. Surfaced
74
+ * alongside the merged tree so the UI can show provenance ("this
75
+ * branch came from Query A") + offer per-action refresh affordances
76
+ * without re-walking the whole workflow. Optional — the merged
77
+ * `dataStream` is the source of truth for paths. */
78
+ export interface SchemaStackContribution {
79
+ /** Workflow step that produced this branch. */
80
+ nodeId: string;
81
+ /** Action label as configured by the user — drives picker grouping. */
82
+ nodeLabel: string;
83
+ /** Action definition id (`query`, `transform`, `manual_trigger`, …). */
84
+ nodeType: string;
85
+ /** The top-level KEY this action wrote under in the DataStream tree
86
+ * (e.g. `Account` for a Query whose outputAs="Account"). Multiple
87
+ * actions may share the same outputPath — later writes overlay new
88
+ * properties onto the existing branch rather than replacing it.
89
+ * See dataStreamMerger.ts for the merge rules. */
90
+ outputPath: string;
91
+ /** True when this branch was hydrated from persisted `lastDataStream`
92
+ * snapshot instead of a live resolver / connector probe. UI surfaces
93
+ * this so users know what they're looking at and can refresh. */
94
+ fromCache: boolean;
95
+ /** Optional resolver-attached warning (e.g. "Token expired, falling
96
+ * back to last snapshot"). Renders inline on the contribution badge. */
97
+ warning?: string;
98
+ }
99
+ export interface SchemaStackResponse {
100
+ /** ✅ Source of truth: the cumulative DataStream tree at this
101
+ * action's position. Forward-walked from the start of the flow
102
+ * through every action that comes BEFORE the target — each action
103
+ * writes/overlays its output onto the tree, so this represents the
104
+ * full visible state of the world the target action can read.
105
+ *
106
+ * Path convention is absolute:
107
+ * `Account[].Id` ← from a Query action with outputAs="Account"
108
+ * `Account[].mappedName` ← from a Transform that overlaid onto Account
109
+ * `$trigger.payload` ← from the trigger
110
+ * `$inputs.orgKey` ← flow-level form variable
111
+ * `$session.runCount` ← platform system var
112
+ * `$item.id` ← scope-local, inside a ForEach body
113
+ *
114
+ * No `node_<id>.` prefix. Two actions writing to the same path
115
+ * MERGE — Transform "refines, doesn't replace". This mirrors the
116
+ * legacy fx/io DataStream design. */
117
+ dataStream: DataSchema;
118
+ /** Per-action contributions in apply order. Optional metadata for
119
+ * the picker — the merged `dataStream` already contains everything
120
+ * these branches added. */
121
+ contributions: SchemaStackContribution[];
122
+ /** Flow-level inputs / form variables — referenced as `$inputs.<name>`.
123
+ * ALSO present under `$inputs` in `dataStream`; this top-level slice
124
+ * is purely for sidebar rendering convenience. Always present,
125
+ * possibly empty. */
126
+ inputs: DataSchema;
127
+ /** System variables — `$trigger`, `$session`, `$previous`, etc.
128
+ * ALSO present under their `$`-prefixed paths in `dataStream`. */
129
+ systemVars: DataSchema;
130
+ /** Built-in + user-defined fx functions for the sidebar catalogue. */
131
+ functions: SchemaStackFunctionCatalog;
132
+ /** Active scope vars at the target action's position. ForEach body
133
+ * emits `{name: "$item", schema: itemsSchema}` etc. ALSO surfaced
134
+ * under the same names in `dataStream` so absolute-path resolution
135
+ * works uniformly. */
136
+ scopeVars?: Array<{
137
+ name: string;
138
+ schema: DataSchema;
139
+ description?: string;
140
+ }>;
141
+ }
34
142
  export interface WorkflowNode<TData = unknown> {
35
143
  id: string;
36
144
  type: NodeKind;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/workflow/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/workflow/types.ts"],"names":[],"mappings":"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"}
@@ -20,9 +20,11 @@ export declare function findAncestor(node: WorkflowNode, nodes: WorkflowNode[],
20
20
  */
21
21
  export declare function clampToParentExtent(node: WorkflowNode, proposed: Position, nodes: WorkflowNode[]): Position;
22
22
  /**
23
- * Hit-test which group node (if any) currently contains the given point.
24
- * Used by Alt-drop to re-parent a node into a group, and by drop-to-add
25
- * to scope a new node.
23
+ * Hit-test which container node (if any) currently contains the given
24
+ * point. Used by drag-to-reparent and by drop-to-add to scope a new
25
+ * node. Both `group` AND `forEach` are containers — a `forEach` holds
26
+ * its iteration body the same way a `group` holds its members, so the
27
+ * hit-test must accept either.
26
28
  */
27
29
  export declare function findContainingGroup(point: Position, nodes: WorkflowNode[], exclude?: string[]): WorkflowNode | undefined;
28
30
  //# sourceMappingURL=parenting.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"parenting.d.ts","sourceRoot":"","sources":["../../../src/workflow/utils/parenting.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAGxD;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,YAAY,EAAE,CA0BnF;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,YAAY,EAClB,KAAK,EAAE,YAAY,EAAE,EACrB,SAAS,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,OAAO,GACtC,YAAY,GAAG,SAAS,CAY1B;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,YAAY,EAAE,GACpB,QAAQ,CAgBV;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,QAAQ,EACf,KAAK,EAAE,YAAY,EAAE,EACrB,OAAO,GAAE,MAAM,EAAO,GACrB,YAAY,GAAG,SAAS,CAqB1B"}
1
+ {"version":3,"file":"parenting.d.ts","sourceRoot":"","sources":["../../../src/workflow/utils/parenting.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAGxD;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,YAAY,EAAE,CA0BnF;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,YAAY,EAClB,KAAK,EAAE,YAAY,EAAE,EACrB,SAAS,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,OAAO,GACtC,YAAY,GAAG,SAAS,CAY1B;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,YAAY,EAAE,GACpB,QAAQ,CAgBV;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,QAAQ,EACf,KAAK,EAAE,YAAY,EAAE,EACrB,OAAO,GAAE,MAAM,EAAO,GACrB,YAAY,GAAG,SAAS,CAqB1B"}