@oomol-lab/open-flow 0.1.0-beta.86 → 0.1.0-beta.88

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 (30) hide show
  1. package/dist/browser/{FlowCanvas-CHIaMaBv.js → FlowCanvas-SqPUBqze.js} +3 -3
  2. package/dist/browser/{createResourceDialog-C0E5yPe6.js → createResourceDialog-CB3eiK7e.js} +3 -3
  3. package/dist/browser/{dialog-b3hsdu8i.js → dialog-Bi-MVTGj.js} +1 -1
  4. package/dist/browser/{exportPng-DGHcejgy.js → exportPng-CLZKdNzR.js} +2 -2
  5. package/dist/browser/{flowChanges-BvSWezEb.js → flowChanges-CnOOPJJR.js} +15 -12
  6. package/dist/browser/{flowWorkspace-BKnMRClO.js → flowWorkspace-B79fy3Me.js} +8 -8
  7. package/dist/browser/{markdownContent-BR9-1ikU.js → markdownContent-D0BBrFcF.js} +1 -1
  8. package/dist/browser/preview.css +12 -10
  9. package/dist/browser/preview.js +3 -1
  10. package/dist/browser/theme.css +3 -1
  11. package/dist/browser/{tooltip-DSBF3bRw.js → tooltip-BZ6tpqnr.js} +3 -1
  12. package/dist/browser/ui.css +12 -10
  13. package/dist/browser/ui.d.ts +1 -0
  14. package/dist/browser/ui.js +110 -63
  15. package/dist/browser/workbench.css +12 -10
  16. package/dist/browser/workbench.js +7 -7
  17. package/dist/browser/{workbenchSelect-Di1Bm_-d.js → workbenchSelect-CHOeceKA.js} +2 -2
  18. package/dist/browser/{wrapLayout-B0AT8_-i.js → wrapLayout-BB_qwy3k.js} +1 -1
  19. package/dist/command/index.js +32 -32
  20. package/dist/common/control-api-conformance.js +12 -9
  21. package/dist/common/control-api.js +12 -9
  22. package/dist/common/control-requests.js +8 -2
  23. package/dist/common/flow-semantics.js +7 -1
  24. package/dist/common/mcp.js +12 -9
  25. package/dist/render/browser/runtime.css +12 -10
  26. package/dist/render/browser/runtime.js +3 -1
  27. package/package.json +1 -1
  28. package/src/control/common/api.ts +13 -9
  29. package/src/control/common/authoring.ts +2 -1
  30. package/src/flow/common/graph.ts +10 -1
@@ -1,8 +1,8 @@
1
1
  import { o as __toESM, t as __commonJSMin } from "./rolldown-runtime-CEgmsyvS.js";
2
- import { $ as waitBranchDescription, A as DropdownMenuItem, B as CompositeItem, D as DropdownMenuCheckboxItem, E as DropdownMenu, G as MenuPopup, H as MenuRoot, J as ContextMenuRootContext, K as MenuItem, M as DropdownMenuRadioGroup, N as DropdownMenuRadioItem, O as DropdownMenuContent, P as DropdownMenuSeparator, Q as uiLocales, R as DropdownMenuTrigger, U as MenuPositioner, W as MenuPortal, X as MenuRootContext, Y as useContextMenuRootContext, Z as useMenuRootContext, a as CompositeRoot, at as ja_default, c as PopoverContent, ct as I18n, dt as useAriaLabelledBy, f as PopoverTitle, ft as useFieldItemContext, h as ScrollArea, i as Textarea, it as ko_default, j as DropdownMenuLabel, k as DropdownMenuGroup, m as NativeScrollArea, n as wrapLayout, nt as zh_CN_default, o as ACTIVE_COMPOSITE_ITEM, ot as fr_default, p as PopoverTrigger, pt as IconThemeContext, q as MenuGroup, r as canvasDirection, rt as ru_default, s as Popover, st as en_default, t as layoutAxes, tt as zh_TW_default, ut as Checkbox, v as ContentIcon, z as findRootOwnerId } from "./wrapLayout-B0AT8_-i.js";
2
+ import { $ as waitBranchDescription, A as DropdownMenuItem, B as CompositeItem, D as DropdownMenuCheckboxItem, E as DropdownMenu, G as MenuPopup, H as MenuRoot, J as ContextMenuRootContext, K as MenuItem, M as DropdownMenuRadioGroup, N as DropdownMenuRadioItem, O as DropdownMenuContent, P as DropdownMenuSeparator, Q as uiLocales, R as DropdownMenuTrigger, U as MenuPositioner, W as MenuPortal, X as MenuRootContext, Y as useContextMenuRootContext, Z as useMenuRootContext, a as CompositeRoot, at as ja_default, c as PopoverContent, ct as I18n, dt as useAriaLabelledBy, f as PopoverTitle, ft as useFieldItemContext, h as ScrollArea, i as Textarea, it as ko_default, j as DropdownMenuLabel, k as DropdownMenuGroup, m as NativeScrollArea, n as wrapLayout, nt as zh_CN_default, o as ACTIVE_COMPOSITE_ITEM, ot as fr_default, p as PopoverTrigger, pt as IconThemeContext, q as MenuGroup, r as canvasDirection, rt as ru_default, s as Popover, st as en_default, t as layoutAxes, tt as zh_TW_default, ut as Checkbox, v as ContentIcon, z as findRootOwnerId } from "./wrapLayout-BB_qwy3k.js";
3
3
  import { a as derive, c as strictEqual, i as compute, l as val, n as attachSetter, r as combine, s as readonlyVal } from "./dist-bO8nvHFH.js";
4
4
  import { c as useLang, i as isString, l as useTranslate, n as isBoolean, o as I18nProvider, r as isPlainObject, t as isArray$1, u as useVal } from "./dist-BFmpkX4P.js";
5
- import { A as string, Bn as transitionStatusMapping, Br as useStableCallback, C as literal, Cr as cn$1, Dn as getTarget, En as contains, Er as useRenderElement, Fn as createLucideIcon, Fr as formatErrorMessage, J as SHIFT, Kn as cancelOpen, Lr as useIsoLayoutEffect, Mn as ownerDocument, Mr as useButton, Nn as useLabelableId, Or as EMPTY_OBJECT, Sn as stopEvent$1, T as number, Tr as clsx, Un as useValueChanged, Wn as createChangeEventDetails, Yt as addEventListener, _r as fieldValidityMapping, br as useControlled, cr as triggerPress, dr as useFormContext, fr as useRegisterFieldControl, gt as serializeValue, hr as useId$1, i as TooltipTrigger, jr as useMergedRefs, k as strictObject, kr as NOOP, mr as useBaseUiId, n as TooltipContent, p as timeZoneOffsetMinutes, pr as useFieldRootContext, pt as pressableTriggerOpenStateMapping, r as TooltipProvider, rr as none$1, sn as useTimeout, t as Tooltip, tn as require_with_selector, ur as useLabelableContext, vr as visuallyHidden, xr as Button, y as discriminatedUnion, yr as visuallyHiddenInput } from "./tooltip-DSBF3bRw.js";
5
+ import { A as string, Bn as transitionStatusMapping, Br as useStableCallback, C as literal, Cr as cn$1, Dn as getTarget, En as contains, Er as useRenderElement, Fn as createLucideIcon, Fr as formatErrorMessage, J as SHIFT, Kn as cancelOpen, Lr as useIsoLayoutEffect, Mn as ownerDocument, Mr as useButton, Nn as useLabelableId, Or as EMPTY_OBJECT, Sn as stopEvent$1, T as number, Tr as clsx, Un as useValueChanged, Wn as createChangeEventDetails, Yt as addEventListener, _r as fieldValidityMapping, br as useControlled, cr as triggerPress, dr as useFormContext, fr as useRegisterFieldControl, gt as serializeValue, hr as useId$1, i as TooltipTrigger, jr as useMergedRefs, k as strictObject, kr as NOOP, mr as useBaseUiId, n as TooltipContent, p as timeZoneOffsetMinutes, pr as useFieldRootContext, pt as pressableTriggerOpenStateMapping, r as TooltipProvider, rr as none$1, sn as useTimeout, t as Tooltip, tn as require_with_selector, ur as useLabelableContext, vr as visuallyHidden, xr as Button, y as discriminatedUnion, yr as visuallyHiddenInput } from "./tooltip-BZ6tpqnr.js";
6
6
  import { r as resolveUiLanguage } from "./languages-gYzoQqCi.js";
7
7
  import * as React from "react";
8
8
  import reactExports, { Children, Suspense, createContext, forwardRef, isValidElement, lazy, memo, useCallback, useContext, useEffect, useId, useLayoutEffect, useMemo, useRef, useState } from "react";
@@ -20935,7 +20935,7 @@ var markdownPreview_module_default = {
20935
20935
  };
20936
20936
  //#endregion
20937
20937
  //#region src/canvas/browser/preview/markdownPreview.tsx
20938
- var MarkdownContent = lazy(() => import("./markdownContent-BR9-1ikU.js"));
20938
+ var MarkdownContent = lazy(() => import("./markdownContent-D0BBrFcF.js"));
20939
20939
  var MarkdownPreview = /* @__PURE__ */ memo(({ dark, unstyled, components, contentClassName, content, draggable, onDoubleClick }) => {
20940
20940
  const [focus, setFocus] = useState(false);
20941
20941
  return /* @__PURE__ */ jsx("div", {
@@ -1,7 +1,7 @@
1
1
  import { l as useTranslate } from "./dist-BFmpkX4P.js";
2
- import { xr as Button } from "./tooltip-DSBF3bRw.js";
3
- import { a as DialogFooter, d as Field, f as FieldDescription, h as FieldLabel, hn as Input, i as DialogDescription, l as Icon, m as FieldGroup, n as DialogClose, o as DialogHeader, p as FieldError, r as DialogContent, s as DialogTitle, t as Dialog, u as Spinner } from "./dialog-b3hsdu8i.js";
4
- import { t as WorkbenchSelect } from "./workbenchSelect-Di1Bm_-d.js";
2
+ import { xr as Button } from "./tooltip-BZ6tpqnr.js";
3
+ import { a as DialogFooter, d as Field, f as FieldDescription, h as FieldLabel, hn as Input, i as DialogDescription, l as Icon, m as FieldGroup, n as DialogClose, o as DialogHeader, p as FieldError, r as DialogContent, s as DialogTitle, t as Dialog, u as Spinner } from "./dialog-Bi-MVTGj.js";
4
+ import { t as WorkbenchSelect } from "./workbenchSelect-CHOeceKA.js";
5
5
  import { useEffect, useRef, useState } from "react";
6
6
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
7
7
  //#region src/workbench/browser/runtime/shell/createResourceDialog.tsx
@@ -1,5 +1,5 @@
1
1
  import { a as toPlainObject, i as isString } from "./dist-BFmpkX4P.js";
2
- import { $ as useToolbarRootContext, A as string, At as useImplicitActiveTrigger, Bn as transitionStatusMapping, Br as useStableCallback, C as literal, Cn as getFloatingFocusElement, Cr as cn, D as preprocess, Dn as getTarget, Dr as EMPTY_ARRAY, Dt as createInitialPopupStoreState, E as object, En as contains, Er as useRenderElement, Et as useFloatingRootContext, F as IndexGuessBehavior, Fn as createLucideIcon, Fr as formatErrorMessage, Ft as useDismiss, Gt as CLICK_TRIGGER_IDENTIFIER, I as useCompositeListItem, In as useTransitionStatus, Ir as mergeProps, It as useClick, Jn as closePress, Kn as cancelOpen, Kt as DROPDOWN_COLLISION_AVOIDANCE, Ln as useOpenChangeComplete, Lr as useIsoLayoutEffect, Lt as FloatingFocusManager, M as unknown, Mn as ownerDocument, Mr as useButton, Mt as useTriggerDataForwarding, N as _isoDateTime, Nn as useLabelableId, O as record$1, Or as EMPTY_OBJECT, Ot as popupStoreSelectors, P as Separator, Pn as Check, Pt as platform, Qt as useStore, Sr as buttonVariants, T as number, Tn as activeElement, Tt as useSyncedFloatingRootContext, U as COMPOSITE_KEYS, Un as useValueChanged, Ur as getWindow, Vn as useAnimationFrame, Vr as useRefWithInit, Wn as createChangeEventDetails, Wt as FloatingPortal, Xt as ReactStore, Yt as addEventListener, Zn as imperativeAction, Zt as Store, _ as array, _r as fieldValidityMapping, an as useOnFirstRender, at as useAnchorPositioning, br as useControlled, bt as useListNavigation, ct as CompositeList, dr as useFormContext, dt as CommonPopupDataAttributes, et as useAnchoredPopupScrollLock, f as isTimeZone, fr as useRegisterFieldControl, ft as popupStateMapping, g as _enum, gt as serializeValue, h as ZodType, ht as useOpenInteractionType, i as TooltipTrigger, in as useValueAsRef, it as InternalBackdrop, j as union, jn as isWebKit, jr as useMergedRefs, jt as useOpenStateTransitions, k as strictObject, kt as PopupTriggerMap, lr as windowResize, lt as inertValue, m as ZodISODateTime, mr as useBaseUiId, mt as triggerOpenStateMapping, n as TooltipContent, nt as usePositioner, pr as useFieldRootContext, pt as pressableTriggerOpenStateMapping, rn as createSelector, rr as none, rt as getDisabledMountTransitionStyles, sn as useTimeout, st as useDirection, t as Tooltip, tr as itemPress, tt as useScrollLock, ur as useLabelableContext, ut as getPseudoElementBounds, v as boolean, vr as visuallyHidden, vt as useTypeahead, w as never, wr as cva, x as json$1, xn as rectToClientRect, xr as Button, xt as useInteractions, y as discriminatedUnion, yr as visuallyHiddenInput, yt as useRole } from "./tooltip-DSBF3bRw.js";
2
+ import { $ as useToolbarRootContext, A as string, At as useImplicitActiveTrigger, Bn as transitionStatusMapping, Br as useStableCallback, C as literal, Cn as getFloatingFocusElement, Cr as cn, D as preprocess, Dn as getTarget, Dr as EMPTY_ARRAY, Dt as createInitialPopupStoreState, E as object, En as contains, Er as useRenderElement, Et as useFloatingRootContext, F as IndexGuessBehavior, Fn as createLucideIcon, Fr as formatErrorMessage, Ft as useDismiss, Gt as CLICK_TRIGGER_IDENTIFIER, I as useCompositeListItem, In as useTransitionStatus, Ir as mergeProps, It as useClick, Jn as closePress, Kn as cancelOpen, Kt as DROPDOWN_COLLISION_AVOIDANCE, Ln as useOpenChangeComplete, Lr as useIsoLayoutEffect, Lt as FloatingFocusManager, M as unknown, Mn as ownerDocument, Mr as useButton, Mt as useTriggerDataForwarding, N as _isoDateTime, Nn as useLabelableId, O as record$1, Or as EMPTY_OBJECT, Ot as popupStoreSelectors, P as Separator, Pn as Check, Pt as platform, Qt as useStore, Sr as buttonVariants, T as number, Tn as activeElement, Tt as useSyncedFloatingRootContext, U as COMPOSITE_KEYS, Un as useValueChanged, Ur as getWindow, Vn as useAnimationFrame, Vr as useRefWithInit, Wn as createChangeEventDetails, Wt as FloatingPortal, Xt as ReactStore, Yt as addEventListener, Zn as imperativeAction, Zt as Store, _ as array, _r as fieldValidityMapping, an as useOnFirstRender, at as useAnchorPositioning, br as useControlled, bt as useListNavigation, ct as CompositeList, dr as useFormContext, dt as CommonPopupDataAttributes, et as useAnchoredPopupScrollLock, f as isTimeZone, fr as useRegisterFieldControl, ft as popupStateMapping, g as _enum, gt as serializeValue, h as ZodType, ht as useOpenInteractionType, i as TooltipTrigger, in as useValueAsRef, it as InternalBackdrop, j as union, jn as isWebKit, jr as useMergedRefs, jt as useOpenStateTransitions, k as strictObject, kt as PopupTriggerMap, lr as windowResize, lt as inertValue, m as ZodISODateTime, mr as useBaseUiId, mt as triggerOpenStateMapping, n as TooltipContent, nt as usePositioner, pr as useFieldRootContext, pt as pressableTriggerOpenStateMapping, rn as createSelector, rr as none, rt as getDisabledMountTransitionStyles, sn as useTimeout, st as useDirection, t as Tooltip, tr as itemPress, tt as useScrollLock, ur as useLabelableContext, ut as getPseudoElementBounds, v as boolean, vr as visuallyHidden, vt as useTypeahead, w as never, wr as cva, x as json$1, xn as rectToClientRect, xr as Button, xt as useInteractions, y as discriminatedUnion, yr as visuallyHiddenInput, yt as useRole } from "./tooltip-BZ6tpqnr.js";
3
3
  import * as React from "react";
4
4
  import { useMemo } from "react";
5
5
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
@@ -1,5 +1,5 @@
1
- import { C as IconifyProvider, y as IconImageCrossOriginContext } from "./wrapLayout-B0AT8_-i.js";
2
- import { E as getFlowPngAspectRatio, t as FlowCanvas, y as CanvasStore } from "./FlowCanvas-CHIaMaBv.js";
1
+ import { C as IconifyProvider, y as IconImageCrossOriginContext } from "./wrapLayout-BB_qwy3k.js";
2
+ import { E as getFlowPngAspectRatio, t as FlowCanvas, y as CanvasStore } from "./FlowCanvas-SqPUBqze.js";
3
3
  import { createElement } from "react";
4
4
  import "react/jsx-runtime";
5
5
  import { createRoot } from "react-dom/client";
@@ -1,9 +1,9 @@
1
1
  import { i as __require, o as __toESM, t as __commonJSMin } from "./rolldown-runtime-CEgmsyvS.js";
2
- import { A as DropdownMenuItem, E as DropdownMenu, O as DropdownMenuContent, P as DropdownMenuSeparator, Q as uiLocales, R as DropdownMenuTrigger, S as spriteIcon, T as useIconifyData, V as useCompositeItem, _ as Z, a as CompositeRoot, at as ja_default$3, b as imageIcon, c as PopoverContent, ct as I18n, et as waitBranchLocales, f as PopoverTitle, h as ScrollArea, i as Textarea, it as ko_default$3, lt as providerIconAppearance, n as wrapLayout, nt as zh_CN_default$3, o as ACTIVE_COMPOSITE_ITEM, ot as fr_default$3, p as PopoverTrigger, r as canvasDirection, rt as ru_default$3, s as Popover, st as en_default$3, tt as zh_TW_default$3, ut as Checkbox, v as ContentIcon, w as useIconifyCollectionLoader, x as placeholderIcon } from "./wrapLayout-B0AT8_-i.js";
2
+ import { A as DropdownMenuItem, E as DropdownMenu, O as DropdownMenuContent, P as DropdownMenuSeparator, Q as uiLocales, R as DropdownMenuTrigger, S as spriteIcon, T as useIconifyData, V as useCompositeItem, _ as Z, a as CompositeRoot, at as ja_default$3, b as imageIcon, c as PopoverContent, ct as I18n, et as waitBranchLocales, f as PopoverTitle, h as ScrollArea, i as Textarea, it as ko_default$3, lt as providerIconAppearance, n as wrapLayout, nt as zh_CN_default$3, o as ACTIVE_COMPOSITE_ITEM, ot as fr_default$3, p as PopoverTrigger, r as canvasDirection, rt as ru_default$3, s as Popover, st as en_default$3, tt as zh_TW_default$3, ut as Checkbox, v as ContentIcon, w as useIconifyCollectionLoader, x as placeholderIcon } from "./wrapLayout-BB_qwy3k.js";
3
3
  import { a as derive, i as compute, l as val, t as arrayShallowEqual } from "./dist-bO8nvHFH.js";
4
4
  import { a as toPlainObject, l as useTranslate, o as I18nProvider, s as useI18n, u as useVal } from "./dist-BFmpkX4P.js";
5
- import { $n as inputClear, A as string$1, Bn as transitionStatusMapping, Br as useStableCallback, C as literal, Cr as cn, Dn as getTarget, Dr as EMPTY_ARRAY, E as object$2, En as contains, Er as useRenderElement, Et as useFloatingRootContext, F as IndexGuessBehavior, Fr as formatErrorMessage, Ft as useDismiss, Gn as createGenericEventDetails, I as useCompositeListItem, In as useTransitionStatus, Ir as mergeProps, It as useClick, Jn as closePress, Kt as DROPDOWN_COLLISION_AVOIDANCE, Ln as useOpenChangeComplete, Lr as useIsoLayoutEffect, Lt as FloatingFocusManager, M as unknown, Mn as ownerDocument, Mr as useButton, Nn as useLabelableId, O as record$3, On as isAndroid, Or as EMPTY_OBJECT, Qn as inputChange, Qt as useStore, S as lazy$1, Sn as stopEvent, Sr as buttonVariants, T as number, Tn as activeElement, Tr as clsx, Un as useValueChanged, Vr as useRefWithInit, Wn as createChangeEventDetails, Wr as isElement, Wt as FloatingPortal, Yn as escapeKey, Zt as Store, _ as array, _r as fieldValidityMapping, an as useOnFirstRender, at as useAnchorPositioning, b as int, br as useControlled, bt as useListNavigation, ct as CompositeList, dr as useFormContext, er as inputPress, et as useAnchoredPopupScrollLock, fr as useRegisterFieldControl, ft as popupStateMapping, g as _enum, gr as DEFAULT_FIELD_STATE_ATTRIBUTES, ht as useOpenInteractionType, i as TooltipTrigger, in as useValueAsRef, it as InternalBackdrop, j as union, jr as useMergedRefs, k as strictObject, kn as isFirefox, kr as NOOP, lt as inertValue, mr as useBaseUiId, n as TooltipContent, nr as listNavigation, nt as usePositioner, p as timeZoneOffsetMinutes, pr as useFieldRootContext, pt as pressableTriggerOpenStateMapping, rn as createSelector, rr as none, rt as getDisabledMountTransitionStyles, sn as useTimeout, st as useDirection, t as Tooltip, tr as itemPress, ur as useLabelableContext, ut as getPseudoElementBounds, v as boolean, vr as visuallyHidden, vt as useTypeahead, wn as isInteractiveElement, wr as cva, x as json$3, xr as Button, xt as useInteractions, y as discriminatedUnion, yr as visuallyHiddenInput, zn as TransitionStatusDataAttributes } from "./tooltip-DSBF3bRw.js";
6
- import { $t as SelectGroup, At as requestInputMappings, B as authoringDefinitionSchemas, Bt as schemaObject, Ct as connectorProxyInputs, D as nodeSystemOutputPorts, Dt as connectorProxyTask, G as workflowAgentToolSchema, Gt as flowStateValuesSchema, H as connectorCapabilitySchema, Ht as isSchemaKeyword, I as otherwiseOutput, It as webhookSupportsBody, J as webhookResponseAllowsBody, Jt as skipDuplicatesTask, K as webhookHeaderValuePort, Kt as flowStateViewSchema, Lt as comparePorts, Mt as renameOutputMapping, N as nodeInputMappings, Nt as renamedPort, Ot as withConnectorProxyParameterFields, Pt as httpHeaderNameIssue, Q as workflowOutputsPort, Qt as SelectContent, Rt as matchesSchema, S as resourceNameIssue, U as decodeRevisionContent, Ut as format, V as connectorAgentToolSchema, W as httpCapabilitySchema, Wt as flowStateSummarySchema, Xt as Select, Y as webhookResponseInputs, Yt as dequal$1, Z as webhookStatusCodePort, _ as applyFlowChanges$1, a as DialogFooter, an as hasNullItemLabel, bt as connectorProxyConfigSchema, cn as stringifyAsValue, d as Field, dn as findItemIndex, dt as withHttpParameterSource, en as SelectItem, fn as removeItem, gt as decisionTask, h as FieldLabel, hn as Input, i as DialogDescription, in as resolveAriaLabelledBy, it as checkJsonDepth, j as conditionInputPorts, jt as remapInputMappings, k as clearConditionBindings, kt as withConnectorProxyParameterSource, ln as compareItemEquality, lt as httpRequestTask, mn as Label, n as DialogClose, nn as SelectTrigger, nt as retryConfigurationSchema, o as DialogHeader, on as isGroupedItems, p as FieldError, pn as selectedValueIncludes, q as webhookHeadersPort, qt as skipDuplicatesConfigSchema, r as DialogContent, rn as SelectValue, s as DialogTitle, sn as stringifyAsLabel, st as httpRequestConfigSchema, t as Dialog, un as defaultItemEquality, ut as withHttpParameterFields, v as isTriggerNode, x as normalizeNodeName, xt as connectorProxyHasBody, y as nextNodeName, z as agentToolFields, zt as portsAssignable } from "./dialog-b3hsdu8i.js";
5
+ import { $n as inputClear, A as string$1, Bn as transitionStatusMapping, Br as useStableCallback, C as literal, Cr as cn, Dn as getTarget, Dr as EMPTY_ARRAY, E as object$2, En as contains, Er as useRenderElement, Et as useFloatingRootContext, F as IndexGuessBehavior, Fr as formatErrorMessage, Ft as useDismiss, Gn as createGenericEventDetails, I as useCompositeListItem, In as useTransitionStatus, Ir as mergeProps, It as useClick, Jn as closePress, Kt as DROPDOWN_COLLISION_AVOIDANCE, Ln as useOpenChangeComplete, Lr as useIsoLayoutEffect, Lt as FloatingFocusManager, M as unknown, Mn as ownerDocument, Mr as useButton, Nn as useLabelableId, O as record$3, On as isAndroid, Or as EMPTY_OBJECT, Qn as inputChange, Qt as useStore, S as lazy$1, Sn as stopEvent, Sr as buttonVariants, T as number, Tn as activeElement, Tr as clsx, Un as useValueChanged, Vr as useRefWithInit, Wn as createChangeEventDetails, Wr as isElement, Wt as FloatingPortal, Yn as escapeKey, Zt as Store, _ as array, _r as fieldValidityMapping, an as useOnFirstRender, at as useAnchorPositioning, b as int, br as useControlled, bt as useListNavigation, ct as CompositeList, dr as useFormContext, er as inputPress, et as useAnchoredPopupScrollLock, fr as useRegisterFieldControl, ft as popupStateMapping, g as _enum, gr as DEFAULT_FIELD_STATE_ATTRIBUTES, ht as useOpenInteractionType, i as TooltipTrigger, in as useValueAsRef, it as InternalBackdrop, j as union, jr as useMergedRefs, k as strictObject, kn as isFirefox, kr as NOOP, lt as inertValue, mr as useBaseUiId, n as TooltipContent, nr as listNavigation, nt as usePositioner, p as timeZoneOffsetMinutes, pr as useFieldRootContext, pt as pressableTriggerOpenStateMapping, rn as createSelector, rr as none, rt as getDisabledMountTransitionStyles, sn as useTimeout, st as useDirection, t as Tooltip, tr as itemPress, ur as useLabelableContext, ut as getPseudoElementBounds, v as boolean, vr as visuallyHidden, vt as useTypeahead, wn as isInteractiveElement, wr as cva, x as json$3, xr as Button, xt as useInteractions, y as discriminatedUnion, yr as visuallyHiddenInput, zn as TransitionStatusDataAttributes } from "./tooltip-BZ6tpqnr.js";
6
+ import { $t as SelectGroup, At as requestInputMappings, B as authoringDefinitionSchemas, Bt as schemaObject, Ct as connectorProxyInputs, D as nodeSystemOutputPorts, Dt as connectorProxyTask, G as workflowAgentToolSchema, Gt as flowStateValuesSchema, H as connectorCapabilitySchema, Ht as isSchemaKeyword, I as otherwiseOutput, It as webhookSupportsBody, J as webhookResponseAllowsBody, Jt as skipDuplicatesTask, K as webhookHeaderValuePort, Kt as flowStateViewSchema, Lt as comparePorts, Mt as renameOutputMapping, N as nodeInputMappings, Nt as renamedPort, Ot as withConnectorProxyParameterFields, Pt as httpHeaderNameIssue, Q as workflowOutputsPort, Qt as SelectContent, Rt as matchesSchema, S as resourceNameIssue, U as decodeRevisionContent, Ut as format, V as connectorAgentToolSchema, W as httpCapabilitySchema, Wt as flowStateSummarySchema, Xt as Select, Y as webhookResponseInputs, Yt as dequal$1, Z as webhookStatusCodePort, _ as applyFlowChanges$1, a as DialogFooter, an as hasNullItemLabel, bt as connectorProxyConfigSchema, cn as stringifyAsValue, d as Field, dn as findItemIndex, dt as withHttpParameterSource, en as SelectItem, fn as removeItem, gt as decisionTask, h as FieldLabel, hn as Input, i as DialogDescription, in as resolveAriaLabelledBy, it as checkJsonDepth, j as conditionInputPorts, jt as remapInputMappings, k as clearConditionBindings, kt as withConnectorProxyParameterSource, ln as compareItemEquality, lt as httpRequestTask, mn as Label, n as DialogClose, nn as SelectTrigger, nt as retryConfigurationSchema, o as DialogHeader, on as isGroupedItems, p as FieldError, pn as selectedValueIncludes, q as webhookHeadersPort, qt as skipDuplicatesConfigSchema, r as DialogContent, rn as SelectValue, s as DialogTitle, sn as stringifyAsLabel, st as httpRequestConfigSchema, t as Dialog, un as defaultItemEquality, ut as withHttpParameterFields, v as isTriggerNode, x as normalizeNodeName, xt as connectorProxyHasBody, y as nextNodeName, z as agentToolFields, zt as portsAssignable } from "./dialog-Bi-MVTGj.js";
7
7
  import { a as uiLanguages, n as isUiLanguage, r as resolveUiLanguage } from "./languages-gYzoQqCi.js";
8
8
  import "./lib-Dws05GHj.js";
9
9
  import { i as objectValue, s as valueType, t as initialValue } from "./value-BbFQZZ_V.js";
@@ -4235,6 +4235,14 @@ function runEvents(value) {
4235
4235
  };
4236
4236
  }
4237
4237
  var segment$1 = encodeURIComponent;
4238
+ async function responseJson(response, signal) {
4239
+ try {
4240
+ return await response.json();
4241
+ } catch (error) {
4242
+ if (signal?.aborted) throw signal.reason ?? error;
4243
+ return invalidResponse(`HTTP ${response.status} response body is not JSON.`);
4244
+ }
4245
+ }
4238
4246
  function operationKey(operation) {
4239
4247
  return `${operation}-${randomId()}`;
4240
4248
  }
@@ -4533,7 +4541,7 @@ var ControlClient = class {
4533
4541
  };
4534
4542
  return {
4535
4543
  modified: true,
4536
- data: query.decode(await response.json()),
4544
+ data: query.decode(await responseJson(response, signal)),
4537
4545
  etag: nextETag
4538
4546
  };
4539
4547
  }
@@ -4562,7 +4570,7 @@ var ControlClient = class {
4562
4570
  };
4563
4571
  }
4564
4572
  return {
4565
- data: decodeTriggerCatalog(await response.json()),
4573
+ data: decodeTriggerCatalog(await responseJson(response, signal)),
4566
4574
  etag: response.headers.get("etag")?.trim() || null
4567
4575
  };
4568
4576
  }
@@ -5071,7 +5079,7 @@ var ControlClient = class {
5071
5079
  try {
5072
5080
  value = await response.json();
5073
5081
  } catch {
5074
- return invalidResponse();
5082
+ return invalidResponse(`HTTP ${response.status} response did not include a JSON error body.`);
5075
5083
  }
5076
5084
  const error = record$2(value).error;
5077
5085
  const source = error == null ? void 0 : record$2(error);
@@ -5080,12 +5088,7 @@ var ControlClient = class {
5080
5088
  return response;
5081
5089
  }
5082
5090
  async request(path, init = {}) {
5083
- const response = await this.response(path, init);
5084
- try {
5085
- return await response.json();
5086
- } catch {
5087
- return invalidResponse();
5088
- }
5091
+ return await responseJson(await this.response(path, init), init.signal);
5089
5092
  }
5090
5093
  };
5091
5094
  //#endregion
@@ -1,15 +1,15 @@
1
1
  import { o as __toESM, r as __exportAll, t as __commonJSMin } from "./rolldown-runtime-CEgmsyvS.js";
2
- import { $ as waitBranchDescription, A as DropdownMenuItem, B as CompositeItem, C as IconifyProvider, D as DropdownMenuCheckboxItem, E as DropdownMenu, F as DropdownMenuSub, I as DropdownMenuSubContent, L as DropdownMenuSubTrigger, M as DropdownMenuRadioGroup, N as DropdownMenuRadioItem, O as DropdownMenuContent, P as DropdownMenuSeparator, R as DropdownMenuTrigger, _ as Z$1, a as CompositeRoot, c as PopoverContent, d as PopoverPanelContent, dt as useAriaLabelledBy, f as PopoverTitle, g as VirtualScrollArea, h as ScrollArea, i as Textarea, j as DropdownMenuLabel, k as DropdownMenuGroup, l as PopoverDescription, m as NativeScrollArea, p as PopoverTrigger, s as Popover, u as PopoverHeader, ut as Checkbox, v as ContentIcon } from "./wrapLayout-B0AT8_-i.js";
2
+ import { $ as waitBranchDescription, A as DropdownMenuItem, B as CompositeItem, C as IconifyProvider, D as DropdownMenuCheckboxItem, E as DropdownMenu, F as DropdownMenuSub, I as DropdownMenuSubContent, L as DropdownMenuSubTrigger, M as DropdownMenuRadioGroup, N as DropdownMenuRadioItem, O as DropdownMenuContent, P as DropdownMenuSeparator, R as DropdownMenuTrigger, _ as Z$1, a as CompositeRoot, c as PopoverContent, d as PopoverPanelContent, dt as useAriaLabelledBy, f as PopoverTitle, g as VirtualScrollArea, h as ScrollArea, i as Textarea, j as DropdownMenuLabel, k as DropdownMenuGroup, l as PopoverDescription, m as NativeScrollArea, p as PopoverTrigger, s as Popover, u as PopoverHeader, ut as Checkbox, v as ContentIcon } from "./wrapLayout-BB_qwy3k.js";
3
3
  import { i as compute, l as val } from "./dist-bO8nvHFH.js";
4
4
  import { c as useLang, l as useTranslate, o as I18nProvider, r as isPlainObject, s as useI18n, u as useVal } from "./dist-BFmpkX4P.js";
5
- import { $ as useToolbarRootContext, A as string, Bn as transitionStatusMapping, Br as useStableCallback, Cr as cn, Er as useRenderElement, Fr as formatErrorMessage, In as useTransitionStatus, Ir as mergeProps, Ln as useOpenChangeComplete, Lr as useIsoLayoutEffect, Mr as useButton, Nn as useLabelableId, Or as EMPTY_OBJECT, Qt as useStore, Sr as buttonVariants, Un as useValueChanged, Wn as createChangeEventDetails, _r as fieldValidityMapping, a as createTooltipHandle, br as useControlled, c as TooltipPositioner, d as TooltipRoot, dr as useFormContext, fr as useRegisterFieldControl, i as TooltipTrigger, jr as useMergedRefs, l as TooltipPortal, mr as useBaseUiId, mt as triggerOpenStateMapping, n as TooltipContent, nn as require_builtin_esm_external_require_react, o as TooltipArrow, p as timeZoneOffsetMinutes, pr as useFieldRootContext, qn as clearPress, r as TooltipProvider, rr as none, s as TooltipPopup, t as Tooltip, u as TooltipTrigger$1, ur as useLabelableContext, vr as visuallyHidden, wr as cva, xr as Button$1, yr as visuallyHiddenInput, zr as error$1 } from "./tooltip-DSBF3bRw.js";
6
- import { $ as waitAutoContinueSchema, $t as SelectGroup, A as comparisonIssue, Bt as schemaObject, D as nodeSystemOutputPorts, Dt as connectorProxyTask, E as nodeErrorSchema, Et as connectorProxySupportsBody, F as operatorsForType, Ft as webhookMethods, It as webhookSupportsBody, J as webhookResponseAllowsBody, K as webhookHeaderValuePort, L as unaryOperator, O as supportsNodeErrorHandling, P as operandHandle, Pt as httpHeaderNameIssue, Q as workflowOutputsPort, Qt as SelectContent, R as valueType, Rt as matchesSchema, St as connectorProxyHeaderSchema, T as workflowToolNameIssue, Tt as connectorProxyQuerySchema, U as decodeRevisionContent, Vt as variableInputCompatible, X as webhookResponseTimeout, Xt as Select$1, Y as webhookResponseInputs, Yt as dequal, Z as webhookStatusCodePort, Zt as SelectChevron, _t as defaultDecisionQuestion, a as DialogFooter, at as httpHeaderSchema, b as nodeNameIssue, c as DialogTrigger, ct as httpRequestIssues, d as Field, en as SelectItem, et as defaultNodeRetry, f as FieldDescription, ft as isHttpHost, gn as ChevronDown, gt as decisionTask, h as FieldLabel, hn as Input, ht as decisionQuestionIssues, i as DialogDescription, l as Icon, lt as httpRequestTask, m as FieldGroup, mn as Label, n as DialogClose, nn as SelectTrigger, nt as retryConfigurationSchema, o as DialogHeader, ot as httpQuerySchema, p as FieldError, pt as decisionLimits, q as webhookHeadersPort, qt as skipDuplicatesConfigSchema, r as DialogContent, rn as SelectValue, rt as supportsNodeRetry, s as DialogTitle, t as Dialog, tn as SelectSeparator, tt as nodeRetryLimits, u as Spinner, vt as limitDecisionQuestions, wt as connectorProxyIssues, xt as connectorProxyHasBody, yt as connectorProxyBodyInput, zt as portsAssignable } from "./dialog-b3hsdu8i.js";
7
- import { C as isMac, S as toManifestNodeId, T as flowPngAspectRatios, _ as E$1, a as CanvasNodeIcon, b as toViewEdge, c as collapseAllNested, d as IconStack, f as selectableTimeZones, g as cronDescription, h as timeZoneOffset, i as pasteVideoLink, l as formatDuration, m as timeZoneLongLabel, n as setAddItemId, o as defaultTriggerIcon, p as timeZoneLabel, s as JSONViewer, t as FlowCanvas, u as useDebouncedValue, v as CanvasTooltip, w as isSameViewport, x as toManifestHandleName, y as CanvasStore } from "./FlowCanvas-CHIaMaBv.js";
8
- import { $ as resourceValue, $t as WorkflowExportDialog, A as schemaForEditor, An as TabsTrigger, Ar as serverAddress, B as datePickerValue, Bn as EmptyMedia, Br as ApiError, Cn as selectors, Cr as inputValue, D as defaultValueEditorSchema, Dn as Tabs, Dr as openApiTask, Dt as diagnosticMessage, E as supportsFeishuChatFilter, En as IconPickerButton, Er as openApiFieldIssues, F as calendarChange, Fn as InputGroupInput, Fr as workflowCandidateGroup, G as indexAddNodeOptions, Gn as SourceSelect, H as isDateFormat, Hn as Badge, Hr as eventSourceKind, I as calendarDate, In as Empty, Ir as workflowCapability, Jn as EventSourceSetup, Kn as createI18n, L as dateFromTimeZone, Ln as EmptyContent, Lr as workflowSelectionTask, M as getDefaultValue, Mn as followWorkbenchLink, Mr as sameWorkflowInterface, N as isUnconstrainedSchema, Nn as InputGroup, Nr as workflowAgentTool, O as editorComponent, On as TabsContent, Or as securityOptions, Ot as diagnosticNodeId, P as typeOfSchema, Pn as InputGroupAddon, Q as resourceData, R as dateInTimeZone, Rn as EmptyDescription, Sn as ComboboxRoot, Sr as triggerConfigValues, St as revisionView, T as feishuResourceKind, Tn as useComboboxRootContext, Tr as object$1, V as dateTimeWall, Vn as EmptyTitle, Vr as controlErrorCode, Wn as SourceForm, Y as connectorActionPresentation, Yn as errorNotice, Z as observeResource, Zt as dequal$1, _n as ComboboxList, _t as actionSummary, ar as webhookResponseDiagnostics, bn as ComboboxInputGroup, bt as canCancelRun, cn as selectionMenuItemClass, dn as valueEditor_module_default, dr as isJsonObject, dt as loadJson, en as WorkflowExportMenuItem, er as decodeResultList, fn as ComboboxItemIndicator, ft as designerGraph, gn as ComboboxPortal, gt as triggerNodeIcon, hn as ComboboxPositioner, ht as semanticNodeIcon, ir as resolutionOutputPorts, it as decodeAppCatalogResponse, j as valueForEditor, jr as servers, jt as connectionCatalog, k as editorGroups, kn as TabsList, kr as selectOperation, kt as schemaMismatchMessage, ln as ValueControl, mn as ComboboxPopup, mt as nodeTitle, n as agentTool, nn as IdTooltip, nr as executionReachableNodes, or as sourceOutputLabel, ot as getAppCatalogCache, pn as ComboboxItem, pt as nodeIcon, q as mapSource, qn as FeishuEventPicker, rn as FlowSettingsButton, rr as inputSourceCandidates, sn as selectionMenuContentClass, sr as sourcePort, tn as useWorkflowExportAction, tt as provider, un as ValueEditorFeedback, ur as triggerOutputDefinitions, vn as GroupCollectionProvider, vt as providerIcon, wn as useComboboxInputValueContext, wr as listOperations, xn as ComboboxInput, xr as triggerConfigValue, xt as hasRunFilter, yn as ComboboxTrigger, z as datePickerChange, zn as EmptyHeader } from "./flowChanges-BvSWezEb.js";
5
+ import { $ as useToolbarRootContext, A as string, Bn as transitionStatusMapping, Br as useStableCallback, Cr as cn, Er as useRenderElement, Fr as formatErrorMessage, In as useTransitionStatus, Ir as mergeProps, Ln as useOpenChangeComplete, Lr as useIsoLayoutEffect, Mr as useButton, Nn as useLabelableId, Or as EMPTY_OBJECT, Qt as useStore, Sr as buttonVariants, Un as useValueChanged, Wn as createChangeEventDetails, _r as fieldValidityMapping, a as createTooltipHandle, br as useControlled, c as TooltipPositioner, d as TooltipRoot, dr as useFormContext, fr as useRegisterFieldControl, i as TooltipTrigger, jr as useMergedRefs, l as TooltipPortal, mr as useBaseUiId, mt as triggerOpenStateMapping, n as TooltipContent, nn as require_builtin_esm_external_require_react, o as TooltipArrow, p as timeZoneOffsetMinutes, pr as useFieldRootContext, qn as clearPress, r as TooltipProvider, rr as none, s as TooltipPopup, t as Tooltip, u as TooltipTrigger$1, ur as useLabelableContext, vr as visuallyHidden, wr as cva, xr as Button$1, yr as visuallyHiddenInput, zr as error$1 } from "./tooltip-BZ6tpqnr.js";
6
+ import { $ as waitAutoContinueSchema, $t as SelectGroup, A as comparisonIssue, Bt as schemaObject, D as nodeSystemOutputPorts, Dt as connectorProxyTask, E as nodeErrorSchema, Et as connectorProxySupportsBody, F as operatorsForType, Ft as webhookMethods, It as webhookSupportsBody, J as webhookResponseAllowsBody, K as webhookHeaderValuePort, L as unaryOperator, O as supportsNodeErrorHandling, P as operandHandle, Pt as httpHeaderNameIssue, Q as workflowOutputsPort, Qt as SelectContent, R as valueType, Rt as matchesSchema, St as connectorProxyHeaderSchema, T as workflowToolNameIssue, Tt as connectorProxyQuerySchema, U as decodeRevisionContent, Vt as variableInputCompatible, X as webhookResponseTimeout, Xt as Select$1, Y as webhookResponseInputs, Yt as dequal, Z as webhookStatusCodePort, Zt as SelectChevron, _t as defaultDecisionQuestion, a as DialogFooter, at as httpHeaderSchema, b as nodeNameIssue, c as DialogTrigger, ct as httpRequestIssues, d as Field, en as SelectItem, et as defaultNodeRetry, f as FieldDescription, ft as isHttpHost, gn as ChevronDown, gt as decisionTask, h as FieldLabel, hn as Input, ht as decisionQuestionIssues, i as DialogDescription, l as Icon, lt as httpRequestTask, m as FieldGroup, mn as Label, n as DialogClose, nn as SelectTrigger, nt as retryConfigurationSchema, o as DialogHeader, ot as httpQuerySchema, p as FieldError, pt as decisionLimits, q as webhookHeadersPort, qt as skipDuplicatesConfigSchema, r as DialogContent, rn as SelectValue, rt as supportsNodeRetry, s as DialogTitle, t as Dialog, tn as SelectSeparator, tt as nodeRetryLimits, u as Spinner, vt as limitDecisionQuestions, wt as connectorProxyIssues, xt as connectorProxyHasBody, yt as connectorProxyBodyInput, zt as portsAssignable } from "./dialog-Bi-MVTGj.js";
7
+ import { C as isMac, S as toManifestNodeId, T as flowPngAspectRatios, _ as E$1, a as CanvasNodeIcon, b as toViewEdge, c as collapseAllNested, d as IconStack, f as selectableTimeZones, g as cronDescription, h as timeZoneOffset, i as pasteVideoLink, l as formatDuration, m as timeZoneLongLabel, n as setAddItemId, o as defaultTriggerIcon, p as timeZoneLabel, s as JSONViewer, t as FlowCanvas, u as useDebouncedValue, v as CanvasTooltip, w as isSameViewport, x as toManifestHandleName, y as CanvasStore } from "./FlowCanvas-SqPUBqze.js";
8
+ import { $ as resourceValue, $t as WorkflowExportDialog, A as schemaForEditor, An as TabsTrigger, Ar as serverAddress, B as datePickerValue, Bn as EmptyMedia, Br as ApiError, Cn as selectors, Cr as inputValue, D as defaultValueEditorSchema, Dn as Tabs, Dr as openApiTask, Dt as diagnosticMessage, E as supportsFeishuChatFilter, En as IconPickerButton, Er as openApiFieldIssues, F as calendarChange, Fn as InputGroupInput, Fr as workflowCandidateGroup, G as indexAddNodeOptions, Gn as SourceSelect, H as isDateFormat, Hn as Badge, Hr as eventSourceKind, I as calendarDate, In as Empty, Ir as workflowCapability, Jn as EventSourceSetup, Kn as createI18n, L as dateFromTimeZone, Ln as EmptyContent, Lr as workflowSelectionTask, M as getDefaultValue, Mn as followWorkbenchLink, Mr as sameWorkflowInterface, N as isUnconstrainedSchema, Nn as InputGroup, Nr as workflowAgentTool, O as editorComponent, On as TabsContent, Or as securityOptions, Ot as diagnosticNodeId, P as typeOfSchema, Pn as InputGroupAddon, Q as resourceData, R as dateInTimeZone, Rn as EmptyDescription, Sn as ComboboxRoot, Sr as triggerConfigValues, St as revisionView, T as feishuResourceKind, Tn as useComboboxRootContext, Tr as object$1, V as dateTimeWall, Vn as EmptyTitle, Vr as controlErrorCode, Wn as SourceForm, Y as connectorActionPresentation, Yn as errorNotice, Z as observeResource, Zt as dequal$1, _n as ComboboxList, _t as actionSummary, ar as webhookResponseDiagnostics, bn as ComboboxInputGroup, bt as canCancelRun, cn as selectionMenuItemClass, dn as valueEditor_module_default, dr as isJsonObject, dt as loadJson, en as WorkflowExportMenuItem, er as decodeResultList, fn as ComboboxItemIndicator, ft as designerGraph, gn as ComboboxPortal, gt as triggerNodeIcon, hn as ComboboxPositioner, ht as semanticNodeIcon, ir as resolutionOutputPorts, it as decodeAppCatalogResponse, j as valueForEditor, jr as servers, jt as connectionCatalog, k as editorGroups, kn as TabsList, kr as selectOperation, kt as schemaMismatchMessage, ln as ValueControl, mn as ComboboxPopup, mt as nodeTitle, n as agentTool, nn as IdTooltip, nr as executionReachableNodes, or as sourceOutputLabel, ot as getAppCatalogCache, pn as ComboboxItem, pt as nodeIcon, q as mapSource, qn as FeishuEventPicker, rn as FlowSettingsButton, rr as inputSourceCandidates, sn as selectionMenuContentClass, sr as sourcePort, tn as useWorkflowExportAction, tt as provider, un as ValueEditorFeedback, ur as triggerOutputDefinitions, vn as GroupCollectionProvider, vt as providerIcon, wn as useComboboxInputValueContext, wr as listOperations, xn as ComboboxInput, xr as triggerConfigValue, xt as hasRunFilter, yn as ComboboxTrigger, z as datePickerChange, zn as EmptyHeader } from "./flowChanges-CnOOPJJR.js";
9
9
  import { r as resolveUiLanguage } from "./languages-gYzoQqCi.js";
10
10
  import { a as renameObjectField, i as objectValue, n as isJsonValue, o as setObjectField, r as jsonDataTypes, s as valueType$1, t as initialValue } from "./value-BbFQZZ_V.js";
11
11
  import { n as compile, r as validate } from "./flowRunInputEditorStore-ys1-w9GW.js";
12
- import { t as WorkbenchSelect } from "./workbenchSelect-Di1Bm_-d.js";
12
+ import { t as WorkbenchSelect } from "./workbenchSelect-CHOeceKA.js";
13
13
  import * as React from "react";
14
14
  import reactExports, { Children, Fragment, Suspense, createContext, forwardRef, isValidElement, lazy, memo, useCallback, useContext, useEffect, useId, useImperativeHandle, useLayoutEffect, useMemo, useRef, useState } from "react";
15
15
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
@@ -232,7 +232,7 @@ function CanvasHistoryScope({ history, disabled, ...props }) {
232
232
  }
233
233
  //#endregion
234
234
  //#region src/workbench/browser/runtime/editor/commentInspector.tsx
235
- var MarkdownContent = lazy(() => import("./markdownContent-BR9-1ikU.js"));
235
+ var MarkdownContent = lazy(() => import("./markdownContent-D0BBrFcF.js"));
236
236
  /** A comment is presentation data; editing it does not require the canvas store. */
237
237
  function CommentInspector({ title, content, disabled = false, readOnly, dark, onSave }) {
238
238
  const t = useTranslate();
@@ -36136,7 +36136,7 @@ function FlowEditor({ portalRoot, navigationIsland, onRun, onRunStarted, onClose
36136
36136
  const { ignoredNodeIds, onIgnoreNodes } = useIgnoredNodes(flowId ?? "");
36137
36137
  const renderPng = useCallback(async (options) => {
36138
36138
  const model = store.$.designer.value;
36139
- const { flowToPng } = await import("./exportPng-DGHcejgy.js");
36139
+ const { flowToPng } = await import("./exportPng-CLZKdNzR.js");
36140
36140
  return flowToPng(model, language, {
36141
36141
  ...options,
36142
36142
  ignoredNodeIds
@@ -1,6 +1,6 @@
1
1
  import { o as __toESM, r as __exportAll, t as __commonJSMin } from "./rolldown-runtime-CEgmsyvS.js";
2
2
  import { i as isString, l as useTranslate } from "./dist-BFmpkX4P.js";
3
- import { r as getVideoLink } from "./FlowCanvas-CHIaMaBv.js";
3
+ import { r as getVideoLink } from "./FlowCanvas-SqPUBqze.js";
4
4
  import { memo, useEffect, useMemo, useRef } from "react";
5
5
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
6
6
  //#region ../../node_modules/.bun/deepmerge@4.3.1/node_modules/deepmerge/dist/cjs.js
@@ -92,7 +92,7 @@
92
92
 
93
93
  .open-flow-theme {
94
94
  --_open-flow-theme: light;
95
- color-scheme: var(--_open-flow-theme);
95
+ color-scheme: light;
96
96
  --_open-flow-background: var(--open-flow-background, light-dark(#fdfdfd, #1c1c1c));
97
97
  --_open-flow-foreground: var(--open-flow-foreground, light-dark(#242424, #eee));
98
98
  --_open-flow-card: var(--open-flow-card, light-dark(#fefefe, #242424));
@@ -131,6 +131,7 @@
131
131
 
132
132
  .open-flow-theme[data-theme="dark"] {
133
133
  --_open-flow-theme: dark;
134
+ color-scheme: dark;
134
135
  }
135
136
 
136
137
  .open-flow-theme, .open-flow-canvas-root :is(.react-flow__controls, [data-canvas-control-scope]) {
@@ -1450,6 +1451,10 @@
1450
1451
  min-height: min(360px, 80dvh);
1451
1452
  }
1452
1453
 
1454
+ :where(.open-flow-theme, .open-flow-workbench, .open-flow-canvas-root) .min-h-min {
1455
+ min-height: min-content;
1456
+ }
1457
+
1453
1458
  :where(.open-flow-theme, .open-flow-workbench, .open-flow-canvas-root) .w-\(--anchor-width\) {
1454
1459
  width: var(--anchor-width);
1455
1460
  }
@@ -6131,23 +6136,20 @@
6131
6136
  }
6132
6137
 
6133
6138
  .open-flow-navigation-menu {
6139
+ width: max-content;
6140
+ max-width: calc(100vw - 16px);
6141
+ max-height: var(--available-height);
6142
+ overscroll-behavior: contain;
6134
6143
  border: 1px solid var(--ui-border);
6135
6144
  border-radius: var(--ui-radius);
6136
6145
  background: var(--ui-popover);
6137
6146
  color: var(--ui-popover-foreground);
6138
- margin: 0;
6147
+ gap: 0;
6139
6148
  padding: 4px;
6140
- position: fixed;
6141
- inset: 48px 16px auto auto;
6149
+ overflow-y: auto;
6142
6150
  box-shadow: 0 4px 12px #0002;
6143
6151
  }
6144
6152
 
6145
- .open-flow-navigation-menu:popover-open {
6146
- flex-direction: column;
6147
- align-items: stretch;
6148
- display: flex;
6149
- }
6150
-
6151
6153
  .open-flow-navigation-menu button[aria-pressed="true"] {
6152
6154
  background: var(--ui-muted);
6153
6155
  }
@@ -40257,6 +40257,7 @@ var cva = (base, config) => (props) => {
40257
40257
  //#region src/ui/browser/button.tsx
40258
40258
  var buttonVariants = cva("nodrag group/button relative inline-flex shrink-0 items-center justify-center rounded-[var(--ui-control-radius,calc(var(--ui-radius)_+_2px))] border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap no-underline transition-[color,background-color,border-color,box-shadow,opacity,transform] outline-none select-none before:absolute before:inset-0 before:content-[''] motion-reduce:transition-none focus-visible:border-border focus-visible:outline-2 focus-visible:outline-solid focus-visible:ring-0 focus-visible:aria-invalid:ring-0 focus-visible:outline-offset-1 focus-visible:outline-ring focus-visible:aria-invalid:outline-destructive active:not-aria-[haspopup]:not-data-[variant=field]:translate-y-px disabled:pointer-events-none disabled:opacity-[var(--ui-disabled-opacity,0.5)] aria-disabled:pointer-events-none aria-disabled:opacity-[var(--ui-disabled-opacity,0.5)] aria-invalid:border-destructive [&_svg]:pointer-events-none [&_i[aria-hidden=true]]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", {
40259
40259
  variants: {
40260
+ multiline: { true: "min-h-min whitespace-normal wrap-anywhere text-center" },
40260
40261
  variant: {
40261
40262
  "default": "bg-primary text-primary-foreground hover:bg-primary/80",
40262
40263
  "outline": "border-border bg-background hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:border-input dark:bg-input/30 dark:hover:bg-[var(--ui-disabled-background,color-mix(in_srgb,var(--ui-input)_50%,transparent))]",
@@ -40285,7 +40286,7 @@ var buttonVariants = cva("nodrag group/button relative inline-flex shrink-0 item
40285
40286
  size: "default"
40286
40287
  }
40287
40288
  });
40288
- var Button$1 = forwardRef(function Button({ className, variant = "default", size = "default", ...props }, ref) {
40289
+ var Button$1 = forwardRef(function Button({ className, variant = "default", size = "default", multiline, ...props }, ref) {
40289
40290
  return /* @__PURE__ */ jsx(Button$2, {
40290
40291
  ref,
40291
40292
  "data-slot": "button",
@@ -40294,6 +40295,7 @@ var Button$1 = forwardRef(function Button({ className, variant = "default", size
40294
40295
  className: cn$1(buttonVariants({
40295
40296
  variant,
40296
40297
  size,
40298
+ multiline,
40297
40299
  className
40298
40300
  })),
40299
40301
  ...props
@@ -6,7 +6,8 @@
6
6
  /* Public --open-flow-* inputs inherit from the host; defaults resolve at each theme root. */
7
7
  .open-flow-theme {
8
8
  --_open-flow-theme: light;
9
- color-scheme: var(--_open-flow-theme);
9
+ /* Literal schemes let the production CSS compiler preserve light-dark() fallbacks. */
10
+ color-scheme: light;
10
11
  --_open-flow-background: var(--open-flow-background, light-dark(#fdfdfd, #1c1c1c));
11
12
  --_open-flow-foreground: var(--open-flow-foreground, light-dark(#242424, #eeeeee));
12
13
  --_open-flow-card: var(--open-flow-card, light-dark(#fefefe, #242424));
@@ -39,6 +40,7 @@
39
40
 
40
41
  .open-flow-theme[data-theme='dark'] {
41
42
  --_open-flow-theme: dark;
43
+ color-scheme: dark;
42
44
  }
43
45
 
44
46
  /* Product roles are shared by theme roots and explicit canvas control scopes. */
@@ -4250,6 +4250,7 @@ function cn(...inputs) {
4250
4250
  //#region src/ui/browser/button.tsx
4251
4251
  var buttonVariants = cva("nodrag group/button relative inline-flex shrink-0 items-center justify-center rounded-[var(--ui-control-radius,calc(var(--ui-radius)_+_2px))] border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap no-underline transition-[color,background-color,border-color,box-shadow,opacity,transform] outline-none select-none before:absolute before:inset-0 before:content-[''] motion-reduce:transition-none focus-visible:border-border focus-visible:outline-2 focus-visible:outline-solid focus-visible:ring-0 focus-visible:aria-invalid:ring-0 focus-visible:outline-offset-1 focus-visible:outline-ring focus-visible:aria-invalid:outline-destructive active:not-aria-[haspopup]:not-data-[variant=field]:translate-y-px disabled:pointer-events-none disabled:opacity-[var(--ui-disabled-opacity,0.5)] aria-disabled:pointer-events-none aria-disabled:opacity-[var(--ui-disabled-opacity,0.5)] aria-invalid:border-destructive [&_svg]:pointer-events-none [&_i[aria-hidden=true]]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", {
4252
4252
  variants: {
4253
+ multiline: { true: "min-h-min whitespace-normal wrap-anywhere text-center" },
4253
4254
  variant: {
4254
4255
  "default": "bg-primary text-primary-foreground hover:bg-primary/80",
4255
4256
  "outline": "border-border bg-background hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:border-input dark:bg-input/30 dark:hover:bg-[var(--ui-disabled-background,color-mix(in_srgb,var(--ui-input)_50%,transparent))]",
@@ -4278,7 +4279,7 @@ var buttonVariants = cva("nodrag group/button relative inline-flex shrink-0 item
4278
4279
  size: "default"
4279
4280
  }
4280
4281
  });
4281
- var Button = forwardRef(function Button({ className, variant = "default", size = "default", ...props }, ref) {
4282
+ var Button = forwardRef(function Button({ className, variant = "default", size = "default", multiline, ...props }, ref) {
4282
4283
  return /* @__PURE__ */ jsx(Button$1, {
4283
4284
  ref,
4284
4285
  "data-slot": "button",
@@ -4287,6 +4288,7 @@ var Button = forwardRef(function Button({ className, variant = "default", size =
4287
4288
  className: cn(buttonVariants({
4288
4289
  variant,
4289
4290
  size,
4291
+ multiline,
4290
4292
  className
4291
4293
  })),
4292
4294
  ...props
@@ -92,7 +92,7 @@
92
92
 
93
93
  .open-flow-theme {
94
94
  --_open-flow-theme: light;
95
- color-scheme: var(--_open-flow-theme);
95
+ color-scheme: light;
96
96
  --_open-flow-background: var(--open-flow-background, light-dark(#fdfdfd, #1c1c1c));
97
97
  --_open-flow-foreground: var(--open-flow-foreground, light-dark(#242424, #eee));
98
98
  --_open-flow-card: var(--open-flow-card, light-dark(#fefefe, #242424));
@@ -131,6 +131,7 @@
131
131
 
132
132
  .open-flow-theme[data-theme="dark"] {
133
133
  --_open-flow-theme: dark;
134
+ color-scheme: dark;
134
135
  }
135
136
 
136
137
  .open-flow-theme, .open-flow-canvas-root :is(.react-flow__controls, [data-canvas-control-scope]) {
@@ -1450,6 +1451,10 @@
1450
1451
  min-height: min(360px, 80dvh);
1451
1452
  }
1452
1453
 
1454
+ :where(.open-flow-theme, .open-flow-workbench, .open-flow-canvas-root) .min-h-min {
1455
+ min-height: min-content;
1456
+ }
1457
+
1453
1458
  :where(.open-flow-theme, .open-flow-workbench, .open-flow-canvas-root) .w-\(--anchor-width\) {
1454
1459
  width: var(--anchor-width);
1455
1460
  }
@@ -6131,23 +6136,20 @@
6131
6136
  }
6132
6137
 
6133
6138
  .open-flow-navigation-menu {
6139
+ width: max-content;
6140
+ max-width: calc(100vw - 16px);
6141
+ max-height: var(--available-height);
6142
+ overscroll-behavior: contain;
6134
6143
  border: 1px solid var(--ui-border);
6135
6144
  border-radius: var(--ui-radius);
6136
6145
  background: var(--ui-popover);
6137
6146
  color: var(--ui-popover-foreground);
6138
- margin: 0;
6147
+ gap: 0;
6139
6148
  padding: 4px;
6140
- position: fixed;
6141
- inset: 48px 16px auto auto;
6149
+ overflow-y: auto;
6142
6150
  box-shadow: 0 4px 12px #0002;
6143
6151
  }
6144
6152
 
6145
- .open-flow-navigation-menu:popover-open {
6146
- flex-direction: column;
6147
- align-items: stretch;
6148
- display: flex;
6149
- }
6150
-
6151
6153
  .open-flow-navigation-menu button[aria-pressed="true"] {
6152
6154
  background: var(--ui-muted);
6153
6155
  }
@@ -1,6 +1,7 @@
1
1
  import type { ComponentPropsWithoutRef, ComponentType, ForwardRefExoticComponent, ReactElement, ReactNode, RefAttributes, RefObject } from 'react';
2
2
  /** Native host button contract; Base UI composition stays internal to the product. */
3
3
  export interface ButtonProps extends ComponentPropsWithoutRef<'button'> {
4
+ multiline?: boolean;
4
5
  variant?: 'default' | 'outline' | 'secondary' | 'ghost' | 'disclosure' | 'destructive' | 'link';
5
6
  size?: 'default' | 'xs' | 'sm' | 'lg' | 'icon' | 'icon-xs' | 'icon-sm' | 'icon-lg';
6
7
  }