@oomol-lab/open-flow 0.1.0-beta.90 → 0.1.0-beta.91

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 (37) hide show
  1. package/dist/browser/{FlowCanvas-C4iuvVKB.js → FlowCanvas-CZEphIhX.js} +169 -2324
  2. package/dist/browser/{createResourceDialog-BstGO0m4.js → createResourceDialog-CJbZa2gA.js} +2 -2
  3. package/dist/browser/{dialog-Bi-MVTGj.js → dialog-E1WkapJU.js} +10 -2
  4. package/dist/browser/{exportPng-DMsB9ku_.js → exportPng-c4or5th8.js} +2 -2
  5. package/dist/browser/{flowChanges-SKYJBr6X.js → flowChanges-DsLZdENA.js} +20 -37
  6. package/dist/browser/{flowWorkspace-4UHRaHcz.js → flowWorkspace-CxLQWUdj.js} +54 -19
  7. package/dist/browser/{markdownContent-B75ojl0E.js → markdownContent-BsdTdwBU.js} +1 -1
  8. package/dist/browser/preview.js +231 -68
  9. package/dist/browser/workbench.js +6 -6
  10. package/dist/browser/{workbenchSelect-CHOeceKA.js → workbenchSelect-BfQfMWuY.js} +1 -1
  11. package/dist/browser/{wrapLayout-DU5HG1qH.js → wrapLayout-ZOG4AikN.js} +2493 -200
  12. package/dist/command/index.js +58 -55
  13. package/dist/common/control-api-conformance.js +896 -8
  14. package/dist/common/control-api.js +896 -8
  15. package/dist/common/control-requests.js +17 -6
  16. package/dist/common/decision.js +10 -2
  17. package/dist/common/flow-authoring.js +896 -8
  18. package/dist/common/flow-change.js +896 -8
  19. package/dist/common/flow-encoding.js +896 -8
  20. package/dist/common/flow-semantics.js +10 -2
  21. package/dist/common/integration-trigger.js +10 -2
  22. package/dist/common/licenses.md +2 -0
  23. package/dist/common/mcp.js +896 -8
  24. package/dist/common/openapi.js +10 -2
  25. package/dist/common/poll-trigger.js +10 -2
  26. package/dist/common/provider-triggers.js +1 -1
  27. package/dist/common/scheduler.js +10 -2
  28. package/dist/common/webhook-trigger.js +890 -2
  29. package/dist/common/workflow.js +14 -3
  30. package/dist/render/browser/runtime.js +966 -59
  31. package/dist/render/node/index.js +792 -4
  32. package/package.json +1 -1
  33. package/src/control/common/authoringTools.ts +4 -2
  34. package/src/flow/common/schemaComparer.ts +12 -2
  35. package/src/json-schema-subset/checker/equals.ts +3 -0
  36. package/src/trigger/providers/catalog.generated.json +9 -1
  37. package/src/workflow/common/workflow.ts +4 -3
@@ -1,6 +1,6 @@
1
1
  import { a as derive, l as val, r as combine } from "./dist-bO8nvHFH.js";
2
2
  import { u as useVal } from "./dist-BFmpkX4P.js";
3
- import { $ as useToolbarRootContext, $t as fastComponent, An as isMac, Ar as warn, At as useImplicitActiveTrigger, B as ARROW_LEFT, Bn as transitionStatusMapping, Br as useStableCallback, Bt as useFloatingNodeId, Cr as cn, Ct as useHoverFloatingInteraction, Dn as getTarget, Dr as EMPTY_ARRAY$1, Dt as createInitialPopupStoreState, En as contains, Er as useRenderElement, Fn as createLucideIcon, Fr as formatErrorMessage, Ft as useDismiss, G as HORIZONTAL_KEYS, Gr as isHTMLElement$1, Gt as CLICK_TRIGGER_IDENTIFIER, H as ARROW_UP, Hn as useOnMount, Hr as getParentNode, Ht as useFloatingTree, I as useCompositeListItem, In as useTransitionStatus, Ir as mergeProps, It as useClick, Jn as closePress, Jt as FocusGuard, K as HORIZONTAL_KEYS_WITH_EXTRA_KEYS, Kn as cancelOpen, Kr as isLastTraversableNode, Kt as DROPDOWN_COLLISION_AVOIDANCE, L as ALL_KEYS, Ln as useOpenChangeComplete, Lr as useIsoLayoutEffect, Lt as FloatingFocusManager, Mn as ownerDocument, Mr as useButton, Mt as useTriggerDataForwarding, Nr as CompositeRootContext, Nt as useTriggerRegistration, Or as EMPTY_OBJECT, Ot as popupStoreSelectors, P as Separator, Pn as Check, Pr as useCompositeRootContext, Q as scrollIntoViewIfNeeded, R as ARROW_DOWN, Rn as useAnimationsFinished, Rr as SafeReact, Rt as FloatingNode, St as useHoverReferenceInteraction, Tr as clsx, Tt as useSyncedFloatingRootContext, U as COMPOSITE_KEYS, Un as useValueChanged, Ut as FloatingTreeStore, V as ARROW_RIGHT, Vr as useRefWithInit, Vt as useFloatingParentNodeId, Wn as createChangeEventDetails, Wt as FloatingPortal, X as VERTICAL_KEYS_WITH_EXTRA_KEYS, Xn as focusOut, Xt as ReactStore, Y as VERTICAL_KEYS, Z as isNativeInput, Zn as imperativeAction, _n as getMaxListIndex, _r as fieldValidityMapping, _t as safePolygon, an as useOnFirstRender, ar as siblingOpen, at as useAnchorPositioning, bn as isListIndexDisabled, br as useControlled, bt as useListNavigation, cn as getNextTabbable, ct as CompositeList, dn as isOutsideEvent, dr as useFormContext, en as fastComponentRef, et as useAnchoredPopupScrollLock, fn as createGridCellMap, fr as useRegisterFieldControl, ft as popupStateMapping, gn as getGridNavigatedIndex, hn as getGridCellIndices, hr as useId$1, ht as useOpenInteractionType, it as InternalBackdrop, jr as useMergedRefs, jt as useOpenStateTransitions, kr as NOOP, kt as PopupTriggerMap, ln as getTabbableAfterElement, lt as inertValue, mn as getGridCellIndexOfCorner, mr as useBaseUiId, mt as triggerOpenStateMapping, nt as usePositioner, on as Timeout, ot as adaptiveOrigin, pn as findNonDisabledListIndex, pr as useFieldRootContext, pt as pressableTriggerOpenStateMapping, q as MODIFIER_KEYS, qt as POPUP_COLLISION_AVOIDANCE, rn as createSelector, rr as none, rt as getDisabledMountTransitionStyles, sn as useTimeout, sr as triggerHover, st as useDirection, tr as itemPress, un as getTabbableBeforeElement, ur as useLabelableContext, ut as getPseudoElementBounds, vn as getMinListIndex, vr as visuallyHidden, vt as useTypeahead, wt as useFocus, xr as Button, xt as useInteractions, yn as isIndexOutOfListBounds, yr as visuallyHiddenInput, yt as useRole, z as ARROW_KEYS, zt as FloatingTree } from "./tooltip-BZ6tpqnr.js";
3
+ import { $ as useToolbarRootContext, $t as fastComponent, An as isMac, Ar as warn, At as useImplicitActiveTrigger, B as ARROW_LEFT, Bn as transitionStatusMapping, Br as useStableCallback, Bt as useFloatingNodeId, Cr as cn$1, Ct as useHoverFloatingInteraction, Dn as getTarget, Dr as EMPTY_ARRAY$1, Dt as createInitialPopupStoreState, En as contains, Er as useRenderElement, Fn as createLucideIcon, Fr as formatErrorMessage, Ft as useDismiss, G as HORIZONTAL_KEYS, Gr as isHTMLElement$1, Gt as CLICK_TRIGGER_IDENTIFIER, H as ARROW_UP, Hn as useOnMount, Hr as getParentNode, Ht as useFloatingTree, I as useCompositeListItem, In as useTransitionStatus, Ir as mergeProps, It as useClick, Jn as closePress, Jt as FocusGuard, K as HORIZONTAL_KEYS_WITH_EXTRA_KEYS, Kn as cancelOpen, Kr as isLastTraversableNode, Kt as DROPDOWN_COLLISION_AVOIDANCE, L as ALL_KEYS, Ln as useOpenChangeComplete, Lr as useIsoLayoutEffect, Lt as FloatingFocusManager, Mn as ownerDocument, Mr as useButton, Mt as useTriggerDataForwarding, Nr as CompositeRootContext, Nt as useTriggerRegistration, Or as EMPTY_OBJECT, Ot as popupStoreSelectors, P as Separator, Pn as Check, Pr as useCompositeRootContext, Q as scrollIntoViewIfNeeded, R as ARROW_DOWN, Rn as useAnimationsFinished, Rr as SafeReact, Rt as FloatingNode, St as useHoverReferenceInteraction, Tr as clsx, Tt as useSyncedFloatingRootContext, U as COMPOSITE_KEYS, Un as useValueChanged, Ut as FloatingTreeStore, V as ARROW_RIGHT, Vr as useRefWithInit, Vt as useFloatingParentNodeId, Wn as createChangeEventDetails, Wt as FloatingPortal, X as VERTICAL_KEYS_WITH_EXTRA_KEYS, Xn as focusOut, Xt as ReactStore, Y as VERTICAL_KEYS, Z as isNativeInput, Zn as imperativeAction, _n as getMaxListIndex, _r as fieldValidityMapping, _t as safePolygon, an as useOnFirstRender, ar as siblingOpen, at as useAnchorPositioning, bn as isListIndexDisabled, br as useControlled, bt as useListNavigation, cn as getNextTabbable, ct as CompositeList, dn as isOutsideEvent, dr as useFormContext, en as fastComponentRef, et as useAnchoredPopupScrollLock, fn as createGridCellMap, fr as useRegisterFieldControl, ft as popupStateMapping, gn as getGridNavigatedIndex, hn as getGridCellIndices, hr as useId$1, ht as useOpenInteractionType, it as InternalBackdrop, jr as useMergedRefs, jt as useOpenStateTransitions, kr as NOOP, kt as PopupTriggerMap, ln as getTabbableAfterElement, lt as inertValue, mn as getGridCellIndexOfCorner, mr as useBaseUiId, mt as triggerOpenStateMapping, nt as usePositioner, on as Timeout, ot as adaptiveOrigin, pn as findNonDisabledListIndex, pr as useFieldRootContext, pt as pressableTriggerOpenStateMapping, q as MODIFIER_KEYS, qt as POPUP_COLLISION_AVOIDANCE, rn as createSelector, rr as none, rt as getDisabledMountTransitionStyles, sn as useTimeout, sr as triggerHover, st as useDirection, tr as itemPress, un as getTabbableBeforeElement, ur as useLabelableContext, ut as getPseudoElementBounds, vn as getMinListIndex, vr as visuallyHidden, vt as useTypeahead, wt as useFocus, xr as Button, xt as useInteractions, yn as isIndexOutOfListBounds, yr as visuallyHiddenInput, yt as useRole, z as ARROW_KEYS, zt as FloatingTree } from "./tooltip-BZ6tpqnr.js";
4
4
  import * as React from "react";
5
5
  import reactExports, { createContext, forwardRef, memo, useCallback, useContext, useEffect, useImperativeHandle, useLayoutEffect, useMemo, useReducer, useRef, useState } from "react";
6
6
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
@@ -720,7 +720,7 @@ function Checkbox({ className, indeterminate, ...props }) {
720
720
  return /* @__PURE__ */ jsx(CheckboxRoot, {
721
721
  "data-slot": "checkbox",
722
722
  indeterminate,
723
- className: cn("peer relative flex size-4 shrink-0 items-center justify-center rounded-[4px] border border-input transition-colors outline-none group-has-disabled/field:opacity-[var(--ui-disabled-opacity,0.5)] group-has-[:focus-visible]/field-label:outline-none group-has-[:focus-visible]/field-label:not-data-checked:border-input after:absolute after:-inset-x-3 after:-inset-y-2 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 disabled:cursor-[var(--ui-disabled-cursor,not-allowed)] disabled:opacity-[var(--ui-disabled-opacity,0.5)] aria-invalid:border-destructive aria-invalid:aria-checked:border-destructive dark:not-data-disabled:bg-input/30 data-disabled:data-indeterminate:bg-[color-mix(in_srgb,var(--ui-foreground)_3%,var(--ui-control-background,var(--ui-background)))] data-disabled:data-indeterminate:text-muted-foreground data-disabled:data-checked:bg-clip-padding data-disabled:data-checked:bg-primary/60 data-disabled:data-checked:border-primary/60 data-disabled:data-checked:text-primary-foreground not-data-disabled:data-checked:border-primary not-data-disabled:data-checked:bg-primary not-data-disabled:data-checked:text-primary-foreground group-has-[:focus-visible]/field-label:not-data-disabled:data-checked:border-primary dark:not-data-disabled:data-checked:bg-primary", className),
723
+ className: cn$1("peer relative flex size-4 shrink-0 items-center justify-center rounded-[4px] border border-input transition-colors outline-none group-has-disabled/field:opacity-[var(--ui-disabled-opacity,0.5)] group-has-[:focus-visible]/field-label:outline-none group-has-[:focus-visible]/field-label:not-data-checked:border-input after:absolute after:-inset-x-3 after:-inset-y-2 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 disabled:cursor-[var(--ui-disabled-cursor,not-allowed)] disabled:opacity-[var(--ui-disabled-opacity,0.5)] aria-invalid:border-destructive aria-invalid:aria-checked:border-destructive dark:not-data-disabled:bg-input/30 data-disabled:data-indeterminate:bg-[color-mix(in_srgb,var(--ui-foreground)_3%,var(--ui-control-background,var(--ui-background)))] data-disabled:data-indeterminate:text-muted-foreground data-disabled:data-checked:bg-clip-padding data-disabled:data-checked:bg-primary/60 data-disabled:data-checked:border-primary/60 data-disabled:data-checked:text-primary-foreground not-data-disabled:data-checked:border-primary not-data-disabled:data-checked:bg-primary not-data-disabled:data-checked:text-primary-foreground group-has-[:focus-visible]/field-label:not-data-disabled:data-checked:border-primary dark:not-data-disabled:data-checked:bg-primary", className),
724
724
  ...props,
725
725
  children: /* @__PURE__ */ jsx(CheckboxIndicator, {
726
726
  "data-slot": "checkbox-indicator",
@@ -7823,7 +7823,7 @@ function DropdownMenuContent({ align = "start", alignOffset = 0, container, coll
7823
7823
  positionMethod,
7824
7824
  children: /* @__PURE__ */ jsx(MenuPopup, {
7825
7825
  "data-slot": "dropdown-menu-content",
7826
- className: cn("z-50 max-h-(--available-height) w-(--anchor-width) min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto overscroll-contain rounded-[var(--ui-control-radius,8px)] bg-popover p-1 text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:overflow-hidden data-closed:fade-out-0 data-closed:zoom-out-95 motion-reduce:animate-none motion-reduce:transition-none", className),
7826
+ className: cn$1("z-50 max-h-(--available-height) w-(--anchor-width) min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto overscroll-contain rounded-[var(--ui-control-radius,8px)] bg-popover p-1 text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:overflow-hidden data-closed:fade-out-0 data-closed:zoom-out-95 motion-reduce:animate-none motion-reduce:transition-none", className),
7827
7827
  ...props
7828
7828
  })
7829
7829
  })
@@ -7839,7 +7839,7 @@ function DropdownMenuLabel({ className, inset, ...props }) {
7839
7839
  return /* @__PURE__ */ jsx(MenuGroupLabel, {
7840
7840
  "data-slot": "dropdown-menu-label",
7841
7841
  "data-inset": inset,
7842
- className: cn("px-1.5 py-1 text-xs font-medium text-muted-foreground data-inset:pl-7.5", className),
7842
+ className: cn$1("px-1.5 py-1 text-xs font-medium text-muted-foreground data-inset:pl-7.5", className),
7843
7843
  ...props
7844
7844
  });
7845
7845
  }
@@ -7848,7 +7848,7 @@ function DropdownMenuItem({ className, inset, variant = "default", ...props }) {
7848
7848
  "data-slot": "dropdown-menu-item",
7849
7849
  "data-inset": inset,
7850
7850
  "data-variant": variant,
7851
- className: cn("group/dropdown-menu-item relative flex cursor-default items-center gap-2 rounded-[calc(var(--ui-control-radius,calc(var(--radius-md)_+_2px))_-_2px)] px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7.5 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-[variant=destructive]:*:[svg]:text-destructive", className),
7851
+ className: cn$1("group/dropdown-menu-item relative flex cursor-default items-center gap-2 rounded-[calc(var(--ui-control-radius,calc(var(--radius-md)_+_2px))_-_2px)] px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7.5 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-[variant=destructive]:*:[svg]:text-destructive", className),
7852
7852
  ...props
7853
7853
  });
7854
7854
  }
@@ -7862,7 +7862,7 @@ function DropdownMenuSubTrigger({ className, inset, children, ...props }) {
7862
7862
  return /* @__PURE__ */ jsxs(MenuSubmenuTrigger, {
7863
7863
  "data-slot": "dropdown-menu-sub-trigger",
7864
7864
  "data-inset": inset,
7865
- className: cn("flex cursor-default items-center gap-2 rounded-[calc(var(--ui-control-radius,calc(var(--radius-md)_+_2px))_-_2px)] px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7.5 data-popup-open:bg-accent data-popup-open:text-accent-foreground data-open:bg-accent data-open:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
7865
+ className: cn$1("flex cursor-default items-center gap-2 rounded-[calc(var(--ui-control-radius,calc(var(--radius-md)_+_2px))_-_2px)] px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7.5 data-popup-open:bg-accent data-popup-open:text-accent-foreground data-open:bg-accent data-open:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
7866
7866
  ...props,
7867
7867
  children: [children, /* @__PURE__ */ jsx(ChevronRight, { className: "ml-auto" })]
7868
7868
  });
@@ -7870,7 +7870,7 @@ function DropdownMenuSubTrigger({ className, inset, children, ...props }) {
7870
7870
  function DropdownMenuSubContent({ align = "start", alignOffset = -3, side = "right", sideOffset = 0, className, ...props }) {
7871
7871
  return /* @__PURE__ */ jsx(DropdownMenuContent, {
7872
7872
  "data-slot": "dropdown-menu-sub-content",
7873
- className: cn("w-auto min-w-[96px] rounded-lg bg-popover p-1 text-popover-foreground shadow-lg ring-1 ring-foreground/10 duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95 motion-reduce:animate-none motion-reduce:transition-none", className),
7873
+ className: cn$1("w-auto min-w-[96px] rounded-lg bg-popover p-1 text-popover-foreground shadow-lg ring-1 ring-foreground/10 duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95 motion-reduce:animate-none motion-reduce:transition-none", className),
7874
7874
  align,
7875
7875
  alignOffset,
7876
7876
  side,
@@ -7882,7 +7882,7 @@ function DropdownMenuCheckboxItem({ className, children, checked, inset, ...prop
7882
7882
  return /* @__PURE__ */ jsxs(MenuCheckboxItem, {
7883
7883
  "data-slot": "dropdown-menu-checkbox-item",
7884
7884
  "data-inset": inset,
7885
- className: cn("relative flex cursor-default items-center gap-2 rounded-[calc(var(--ui-control-radius,calc(var(--radius-md)_+_2px))_-_2px)] py-1 pr-8 pl-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:pl-7.5 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
7885
+ className: cn$1("relative flex cursor-default items-center gap-2 rounded-[calc(var(--ui-control-radius,calc(var(--radius-md)_+_2px))_-_2px)] py-1 pr-8 pl-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:pl-7.5 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
7886
7886
  checked,
7887
7887
  ...props,
7888
7888
  children: [/* @__PURE__ */ jsx("span", {
@@ -7906,7 +7906,7 @@ var DropdownMenuRadioItem = React.forwardRef(function DropdownMenuRadioItem({ cl
7906
7906
  ref,
7907
7907
  "data-slot": "dropdown-menu-radio-item",
7908
7908
  "data-inset": inset,
7909
- className: cn("relative flex cursor-default items-center gap-2 rounded-[calc(var(--ui-control-radius,calc(var(--radius-md)_+_2px))_-_2px)] py-1 pr-8 pl-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:pl-7.5 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
7909
+ className: cn$1("relative flex cursor-default items-center gap-2 rounded-[calc(var(--ui-control-radius,calc(var(--radius-md)_+_2px))_-_2px)] py-1 pr-8 pl-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:pl-7.5 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
7910
7910
  ...props,
7911
7911
  children: [/* @__PURE__ */ jsx("span", {
7912
7912
  className: "pointer-events-none absolute inset-y-0 right-2 flex items-center justify-center",
@@ -7921,7 +7921,7 @@ var DropdownMenuRadioItem = React.forwardRef(function DropdownMenuRadioItem({ cl
7921
7921
  function DropdownMenuSeparator({ className, ...props }) {
7922
7922
  return /* @__PURE__ */ jsx(Separator, {
7923
7923
  "data-slot": "dropdown-menu-separator",
7924
- className: cn("-mx-1 my-1 h-px bg-border", className),
7924
+ className: cn$1("-mx-1 my-1 h-px bg-border", className),
7925
7925
  ...props
7926
7926
  });
7927
7927
  }
@@ -9130,9 +9130,9 @@ var S$2 = "marginBottom";
9130
9130
  var m$1 = "overflowX";
9131
9131
  var O$1 = "overflowY";
9132
9132
  var C$1 = "width";
9133
- var $$1 = "height";
9133
+ var $$2 = "height";
9134
9134
  var x$1 = "visible";
9135
- var H$1 = "hidden";
9135
+ var H$2 = "hidden";
9136
9136
  var E$1 = "scroll";
9137
9137
  var capitalizeFirstLetter = (t) => {
9138
9138
  const n = String(t || "");
@@ -9331,10 +9331,10 @@ var removeElements = (t) => {
9331
9331
  var appendChildren = (t, n) => bind(removeElements, t && n && each(createOrKeepArray(n), ((n) => {
9332
9332
  if (n) t.appendChild(n);
9333
9333
  })));
9334
- var D$1;
9335
- var getTrustedTypePolicy = () => D$1;
9334
+ var D$2;
9335
+ var getTrustedTypePolicy = () => D$2;
9336
9336
  var setTrustedTypePolicy = (t) => {
9337
- D$1 = t;
9337
+ D$2 = t;
9338
9338
  };
9339
9339
  var createDiv = (t) => {
9340
9340
  const n = document.createElement("div");
@@ -9400,21 +9400,21 @@ var topRightBottomLeft = (t, n, o) => {
9400
9400
  };
9401
9401
  var getTrasformTranslateValue = (t, n) => `translate${isObject(t) ? `(${t.x},${t.y})` : `${n ? "X" : "Y"}(${t})`}`;
9402
9402
  var elementHasDimensions = (t) => !!(t.offsetWidth || t.offsetHeight || t.getClientRects().length);
9403
- var z$1 = {
9403
+ var z$2 = {
9404
9404
  w: 0,
9405
9405
  h: 0
9406
9406
  };
9407
9407
  var getElmWidthHeightProperty = (t, n) => n ? {
9408
9408
  w: n[`${t}Width`],
9409
9409
  h: n[`${t}Height`]
9410
- } : z$1;
9410
+ } : z$2;
9411
9411
  var getWindowSize = (t) => getElmWidthHeightProperty("inner", t || n);
9412
9412
  var I$1 = bind(getElmWidthHeightProperty, "offset");
9413
- var A$1 = bind(getElmWidthHeightProperty, "client");
9414
- var T$1 = bind(getElmWidthHeightProperty, "scroll");
9413
+ var A$2 = bind(getElmWidthHeightProperty, "client");
9414
+ var T$2 = bind(getElmWidthHeightProperty, "scroll");
9415
9415
  var getFractionalSize = (t) => {
9416
9416
  const n = parseFloat(getStyles(t, C$1)) || 0;
9417
- const o = parseFloat(getStyles(t, $$1)) || 0;
9417
+ const o = parseFloat(getStyles(t, $$2)) || 0;
9418
9418
  return {
9419
9419
  w: n - e(n),
9420
9420
  h: o - e(o)
@@ -9422,7 +9422,7 @@ var getFractionalSize = (t) => {
9422
9422
  };
9423
9423
  var getBoundingClientRect = (t) => t.getBoundingClientRect();
9424
9424
  var hasDimensions = (t) => !!t && elementHasDimensions(t);
9425
- var domRectHasDimensions = (t) => !!(t && (t[$$1] || t[C$1]));
9425
+ var domRectHasDimensions = (t) => !!(t && (t[$$2] || t[C$1]));
9426
9426
  var domRectAppeared = (t, n) => {
9427
9427
  const o = domRectHasDimensions(t);
9428
9428
  return !domRectHasDimensions(n) && o;
@@ -9573,7 +9573,7 @@ var createEventListenerHub = (t) => {
9573
9573
  ];
9574
9574
  };
9575
9575
  var k$1 = {};
9576
- var M$1 = {};
9576
+ var M$2 = {};
9577
9577
  var addPlugins = (t) => {
9578
9578
  each(t, ((t) => each(t, ((n, o) => {
9579
9579
  k$1[o] = t[o];
@@ -9585,53 +9585,53 @@ var registerPluginModuleInstances = (t, n, o) => keys(t).map(((s) => {
9585
9585
  const a = o ? c : e;
9586
9586
  if (a) {
9587
9587
  const t = o ? a(r, i, n) : a(n);
9588
- return (l || M$1)[s] = t;
9588
+ return (l || M$2)[s] = t;
9589
9589
  }
9590
9590
  }));
9591
9591
  var getInstancePluginModuleInstance = (t, n) => t[n];
9592
- var getStaticPluginModuleInstance = (t) => getInstancePluginModuleInstance(M$1, t);
9593
- var R$1 = "__osOptionsValidationPlugin";
9594
- var V$1 = `data-overlayscrollbars`;
9592
+ var getStaticPluginModuleInstance = (t) => getInstancePluginModuleInstance(M$2, t);
9593
+ var R$2 = "__osOptionsValidationPlugin";
9594
+ var V$2 = `data-overlayscrollbars`;
9595
9595
  var L$1 = "os-environment";
9596
- var P$1 = `${L$1}-scrollbar-hidden`;
9597
- var U$1 = `${V$1}-initialize`;
9596
+ var P$2 = `${L$1}-scrollbar-hidden`;
9597
+ var U$2 = `${V$2}-initialize`;
9598
9598
  var N$1 = "noClipping";
9599
- var q$2 = `${V$1}-body`;
9600
- var B$1 = V$1;
9599
+ var q$3 = `${V$2}-body`;
9600
+ var B$2 = V$2;
9601
9601
  var F$2 = "host";
9602
- var j$1 = `${V$1}-viewport`;
9603
- var X$1 = m$1;
9604
- var Y$1 = O$1;
9602
+ var j$1 = `${V$2}-viewport`;
9603
+ var X$2 = m$1;
9604
+ var Y$2 = O$1;
9605
9605
  var W$1 = "arrange";
9606
- var J$1 = "measuring";
9606
+ var J$2 = "measuring";
9607
9607
  var G$1 = "scrolling";
9608
- var K$1 = "scrollbarHidden";
9609
- var Q$1 = "noContent";
9610
- var Z$1 = `${V$1}-padding`;
9611
- var tt = `${V$1}-content`;
9612
- var nt = "os-size-observer";
9613
- var ot = `${nt}-appear`;
9614
- var st = `${nt}-listener`;
9615
- `${st}`;
9616
- `${st}`;
9617
- var it = "os-trinsic-observer";
9618
- var lt = "os-theme-none";
9619
- var at = "os-scrollbar";
9620
- var ut = `${at}-rtl`;
9621
- var ft = `${at}-horizontal`;
9622
- var _t = `${at}-vertical`;
9623
- var dt = `${at}-track`;
9624
- var pt = `${at}-handle`;
9625
- var vt = `${at}-visible`;
9626
- var gt = `${at}-cornerless`;
9627
- var ht = `${at}-interaction`;
9628
- var bt = `${at}-unusable`;
9629
- var yt = `${at}-auto-hide`;
9630
- var wt = `${yt}-hidden`;
9631
- var St = `${at}-wheel`;
9632
- var mt = `${dt}-interactive`;
9633
- var Ot = `${pt}-interactive`;
9634
- var Ct = "__osSizeObserverPlugin";
9608
+ var K$2 = "scrollbarHidden";
9609
+ var Q$2 = "noContent";
9610
+ var Z$2 = `${V$2}-padding`;
9611
+ var tt$1 = `${V$2}-content`;
9612
+ var nt$1 = "os-size-observer";
9613
+ var ot$1 = `${nt$1}-appear`;
9614
+ var st$1 = `${nt$1}-listener`;
9615
+ `${st$1}`;
9616
+ `${st$1}`;
9617
+ var it$1 = "os-trinsic-observer";
9618
+ var lt$1 = "os-theme-none";
9619
+ var at$1 = "os-scrollbar";
9620
+ var ut$1 = `${at$1}-rtl`;
9621
+ var ft$1 = `${at$1}-horizontal`;
9622
+ var _t$1 = `${at$1}-vertical`;
9623
+ var dt$1 = `${at$1}-track`;
9624
+ var pt = `${at$1}-handle`;
9625
+ var vt$1 = `${at$1}-visible`;
9626
+ var gt$1 = `${at$1}-cornerless`;
9627
+ var ht$1 = `${at$1}-interaction`;
9628
+ var bt = `${at$1}-unusable`;
9629
+ var yt$1 = `${at$1}-auto-hide`;
9630
+ var wt$1 = `${yt$1}-hidden`;
9631
+ var St = `${at$1}-wheel`;
9632
+ var mt$1 = `${dt$1}-interactive`;
9633
+ var Ot$1 = `${pt}-interactive`;
9634
+ var Ct$1 = "__osSizeObserverPlugin";
9635
9635
  var getShowNativeOverlaidScrollbars = (t, n) => {
9636
9636
  const { M: o } = n;
9637
9637
  const [s, e] = t("showNativeOverlaidScrollbars");
@@ -9640,13 +9640,13 @@ var getShowNativeOverlaidScrollbars = (t, n) => {
9640
9640
  var overflowIsVisible = (t) => t.indexOf(x$1) === 0;
9641
9641
  var overflowBehaviorToOverflowStyle = (t) => t.replace(`${x$1}-`, "");
9642
9642
  var overflowCssValueToOverflowStyle = (t, n) => {
9643
- if (t === "auto") return n ? E$1 : H$1;
9644
- const o = t || H$1;
9643
+ if (t === "auto") return n ? E$1 : H$2;
9644
+ const o = t || H$2;
9645
9645
  return [
9646
- H$1,
9646
+ H$2,
9647
9647
  E$1,
9648
9648
  x$1
9649
- ].includes(o) ? o : H$1;
9649
+ ].includes(o) ? o : H$2;
9650
9650
  };
9651
9651
  var getElementOverflowStyle = (t, n) => {
9652
9652
  const { overflowX: o, overflowY: s } = getStyles(t, [m$1, O$1]);
@@ -9655,29 +9655,29 @@ var getElementOverflowStyle = (t, n) => {
9655
9655
  y: overflowCssValueToOverflowStyle(s, n.y)
9656
9656
  };
9657
9657
  };
9658
- var xt = "__osScrollbarsHidingPlugin";
9659
- var Et = "__osClickScrollPlugin";
9658
+ var xt$1 = "__osScrollbarsHidingPlugin";
9659
+ var Et$1 = "__osClickScrollPlugin";
9660
9660
  var opsStringify = (t) => JSON.stringify(t, ((t, n) => {
9661
9661
  if (isFunction(n)) throw 0;
9662
9662
  return n;
9663
9663
  }));
9664
9664
  var getPropByPath = (t, n) => t ? `${n}`.split(".").reduce(((t, n) => t && hasOwnProperty(t, n) ? t[n] : void 0), t) : void 0;
9665
- var zt = [0, 33];
9666
- var It = [33, 99];
9665
+ var zt$1 = [0, 33];
9666
+ var It$1 = [33, 99];
9667
9667
  var At = [
9668
9668
  222,
9669
9669
  666,
9670
9670
  true
9671
9671
  ];
9672
- var Tt = {
9672
+ var Tt$1 = {
9673
9673
  paddingAbsolute: false,
9674
9674
  showNativeOverlaidScrollbars: false,
9675
9675
  update: {
9676
9676
  elementEvents: [["img", "load"]],
9677
9677
  debounce: {
9678
- mutation: zt,
9678
+ mutation: zt$1,
9679
9679
  resize: null,
9680
- event: It,
9680
+ event: It$1,
9681
9681
  env: At
9682
9682
  },
9683
9683
  attributes: null,
@@ -9722,17 +9722,17 @@ var getOptionsDiff = (t, n) => {
9722
9722
  return o;
9723
9723
  };
9724
9724
  var createOptionCheck = (t, n, o) => (s) => [getPropByPath(t, s), o || getPropByPath(n, s) !== void 0];
9725
- var kt;
9726
- var getNonce = () => kt;
9725
+ var kt$1;
9726
+ var getNonce = () => kt$1;
9727
9727
  var setNonce = (t) => {
9728
- kt = t;
9728
+ kt$1 = t;
9729
9729
  };
9730
- var Mt;
9730
+ var Mt$1;
9731
9731
  var createEnvironment = () => {
9732
9732
  const getNativeScrollbarSize = (t, n, o) => {
9733
9733
  appendChildren(document.body, t);
9734
9734
  appendChildren(document.body, t);
9735
- const s = A$1(t);
9735
+ const s = A$2(t);
9736
9736
  const e = I$1(t);
9737
9737
  const c = getFractionalSize(n);
9738
9738
  if (o) removeElements(t);
@@ -9743,14 +9743,14 @@ var createEnvironment = () => {
9743
9743
  };
9744
9744
  const getNativeScrollbarsHiding = (t) => {
9745
9745
  let n = false;
9746
- const o = addClass(t, P$1);
9746
+ const o = addClass(t, P$2);
9747
9747
  try {
9748
9748
  n = getStyles(t, "scrollbar-width") === "none" || getStyles(t, "display", "::-webkit-scrollbar") === "none";
9749
9749
  } catch (s) {}
9750
9750
  o();
9751
9751
  return n;
9752
9752
  };
9753
- const s = createDOM(`<div class="${L$1}"><div></div><style>${`.${L$1}{scroll-behavior:auto!important;position:fixed;opacity:0;visibility:hidden;overflow:scroll;height:200px;width:200px;z-index:-1}.${L$1} div{width:200%;height:200%;margin:10px 0}.${P$1}{scrollbar-width:none!important}.${P$1}::-webkit-scrollbar,.${P$1}::-webkit-scrollbar-corner{appearance:none!important;display:none!important;width:0!important;height:0!important}`}</style></div>`)[0];
9753
+ const s = createDOM(`<div class="${L$1}"><div></div><style>${`.${L$1}{scroll-behavior:auto!important;position:fixed;opacity:0;visibility:hidden;overflow:scroll;height:200px;width:200px;z-index:-1}.${L$1} div{width:200%;height:200%;margin:10px 0}.${P$2}{scrollbar-width:none!important}.${P$2}::-webkit-scrollbar,.${P$2}::-webkit-scrollbar-corner{appearance:none!important;display:none!important;width:0!important;height:0!important}`}</style></div>`)[0];
9754
9754
  const e = s.firstChild;
9755
9755
  const c = s.lastChild;
9756
9756
  const r = getNonce();
@@ -9779,7 +9779,7 @@ var createEnvironment = () => {
9779
9779
  body: null
9780
9780
  }
9781
9781
  };
9782
- const g = assignDeep({}, Tt);
9782
+ const g = assignDeep({}, Tt$1);
9783
9783
  const h = bind(assignDeep, {}, g);
9784
9784
  const b = bind(assignDeep, {}, v);
9785
9785
  const y = {
@@ -9816,8 +9816,8 @@ var createEnvironment = () => {
9816
9816
  return y;
9817
9817
  };
9818
9818
  var getEnvironment = () => {
9819
- if (!Mt) Mt = createEnvironment();
9820
- return Mt;
9819
+ if (!Mt$1) Mt$1 = createEnvironment();
9820
+ return Mt$1;
9821
9821
  };
9822
9822
  var createEventContentChange = (t, n, o) => {
9823
9823
  let s = false;
@@ -9924,17 +9924,17 @@ var createDOMObserver = (t, n, o, s) => {
9924
9924
  if (e) return observerCallback(true, h.takeRecords());
9925
9925
  }];
9926
9926
  };
9927
- var Rt = null;
9927
+ var Rt$1 = null;
9928
9928
  var createSizeObserver = (t, n, o) => {
9929
9929
  const { ft: s } = o || {};
9930
- const e = getStaticPluginModuleInstance(Ct);
9930
+ const e = getStaticPluginModuleInstance(Ct$1);
9931
9931
  const [c] = createCache({
9932
9932
  o: false,
9933
9933
  u: true
9934
9934
  });
9935
9935
  return () => {
9936
9936
  const o = [];
9937
- const i = createDOM(`<div class="${nt}"><div class="${st}"></div></div>`)[0];
9937
+ const i = createDOM(`<div class="${nt$1}"><div class="${st$1}"></div></div>`)[0];
9938
9938
  const l = i.firstChild;
9939
9939
  const onSizeChangedCallbackProxy = (t) => {
9940
9940
  const o = isArray(t) && !isEmptyArray(t);
@@ -9953,12 +9953,12 @@ var createSizeObserver = (t, n, o) => {
9953
9953
  });
9954
9954
  };
9955
9955
  if (d$1) {
9956
- if (!isBoolean(Rt)) {
9956
+ if (!isBoolean(Rt$1)) {
9957
9957
  const n = new d$1(noop);
9958
9958
  n.observe(t, { get box() {
9959
- Rt = true;
9959
+ Rt$1 = true;
9960
9960
  } });
9961
- Rt = Rt || false;
9961
+ Rt$1 = Rt$1 || false;
9962
9962
  n.disconnect();
9963
9963
  }
9964
9964
  const n = debounce(onSizeChangedCallbackProxy, {
@@ -9967,11 +9967,11 @@ var createSizeObserver = (t, n, o) => {
9967
9967
  });
9968
9968
  const resizeObserverCallback = (t) => n(t);
9969
9969
  const s = new d$1(resizeObserverCallback);
9970
- s.observe(Rt ? t : l);
9970
+ s.observe(Rt$1 ? t : l);
9971
9971
  push(o, [() => {
9972
9972
  s.disconnect();
9973
- }, !Rt && appendChildren(t, i)]);
9974
- if (Rt) {
9973
+ }, !Rt$1 && appendChildren(t, i)]);
9974
+ if (Rt$1) {
9975
9975
  const n = new d$1(resizeObserverCallback);
9976
9976
  n.observe(t, { box: "border-box" });
9977
9977
  push(o, (() => n.disconnect()));
@@ -9979,7 +9979,7 @@ var createSizeObserver = (t, n, o) => {
9979
9979
  } else if (e) {
9980
9980
  const [n, c] = e(l, onSizeChangedCallbackProxy, s);
9981
9981
  push(o, concat([
9982
- addClass(i, ot),
9982
+ addClass(i, ot$1),
9983
9983
  addEventListener(i, "animationstart", n),
9984
9984
  appendChildren(t, i)
9985
9985
  ], c));
@@ -9990,7 +9990,7 @@ var createSizeObserver = (t, n, o) => {
9990
9990
  var createTrinsicObserver = (t, n) => {
9991
9991
  let o;
9992
9992
  const isHeightIntrinsic = (t) => t.h === 0 || t.isIntersecting || t.intersectionRatio > 0;
9993
- const s = createDiv(it);
9993
+ const s = createDiv(it$1);
9994
9994
  const [e] = createCache({ o: false });
9995
9995
  const triggerOnTrinsicChangedCallback = (t, o) => {
9996
9996
  if (t) {
@@ -10028,7 +10028,7 @@ var createObserversSetup = (t, n, o, s) => {
10028
10028
  let a;
10029
10029
  let u;
10030
10030
  let f;
10031
- const _ = `[${B$1}]`;
10031
+ const _ = `[${B$2}]`;
10032
10032
  const p = `[${j$1}]`;
10033
10033
  const v = [
10034
10034
  "id",
@@ -10083,7 +10083,7 @@ var createObserversSetup = (t, n, o, s) => {
10083
10083
  B: getDirectionIsRTL(g)
10084
10084
  };
10085
10085
  const H = getEnvironment();
10086
- const E = getStaticPluginModuleInstance(xt);
10086
+ const E = getStaticPluginModuleInstance(xt$1);
10087
10087
  const [D] = createCache({
10088
10088
  i: equalWH,
10089
10089
  o: {
@@ -10092,13 +10092,13 @@ var createObserversSetup = (t, n, o, s) => {
10092
10092
  }
10093
10093
  }, (() => {
10094
10094
  const s = E && E.R(t, n, x, H, o).Y;
10095
- const c = !(m && S) && hasAttrClass(h, B$1, N$1);
10095
+ const c = !(m && S) && hasAttrClass(h, B$2, N$1);
10096
10096
  const r = !S && O(W$1);
10097
10097
  const i = r && getElementScroll(y);
10098
10098
  const l = i && $();
10099
- const a = C(J$1, c);
10099
+ const a = C(J$2, c);
10100
10100
  const u = r && s && s();
10101
- const f = T$1(b);
10101
+ const f = T$2(b);
10102
10102
  const _ = getFractionalSize(b);
10103
10103
  if (u) u();
10104
10104
  scrollElementTo(y, i);
@@ -10200,7 +10200,7 @@ var createObserversSetup = (t, n, o, s) => {
10200
10200
  it: _,
10201
10201
  ut: (t, n) => {
10202
10202
  const { target: o, attributeName: s } = t;
10203
- return (!n && s && !S ? liesBetween(o, _, p) : false) || !!closest(o, `.${at}`) || ignoreMutationFromOptions(t);
10203
+ return (!n && s && !S ? liesBetween(o, _, p) : false) || !!closest(o, `.${at$1}`) || ignoreMutationFromOptions(t);
10204
10204
  }
10205
10205
  });
10206
10206
  a = t();
@@ -10211,7 +10211,7 @@ var createObserversSetup = (t, n, o, s) => {
10211
10211
  if (isArray(y) || isNumber(y)) {
10212
10212
  e = y;
10213
10213
  c = false;
10214
- r = It;
10214
+ r = It$1;
10215
10215
  i = At;
10216
10216
  } else if (isPlainObject(y)) {
10217
10217
  e = y.mutation;
@@ -10385,8 +10385,8 @@ var createScrollbarsSetupElements = (t, n, o, s) => {
10385
10385
  };
10386
10386
  const generateScrollbarDOM = (t) => {
10387
10387
  const n = t ? "x" : "y";
10388
- const e = createDiv(`${at} ${t ? ft : _t}`);
10389
- const c = createDiv(dt);
10388
+ const e = createDiv(`${at$1} ${t ? ft$1 : _t$1}`);
10389
+ const c = createDiv(dt$1);
10390
10390
  const r = createDiv(pt);
10391
10391
  const i = {
10392
10392
  Lt: e,
@@ -10446,7 +10446,7 @@ var createScrollbarsSetupEvents = (t, n, o, s, r) => (i, l, u) => {
10446
10446
  const createInteractiveScrollEvents = () => {
10447
10447
  const n = "pointerup pointercancel lostpointercapture";
10448
10448
  const r = `client${u ? "X" : "Y"}`;
10449
- const i = u ? C$1 : $$1;
10449
+ const i = u ? C$1 : $$2;
10450
10450
  const l = u ? "left" : "top";
10451
10451
  const a = u ? "w" : "h";
10452
10452
  const f = u ? "x" : "y";
@@ -10513,7 +10513,7 @@ var createScrollbarsSetupEvents = (t, n, o, s, r) => (i, l, u) => {
10513
10513
  h.setPointerCapture(s.pointerId);
10514
10514
  if (t) moveHandleRelative(k);
10515
10515
  else if (!d) {
10516
- const t = getStaticPluginModuleInstance(Et);
10516
+ const t = getStaticPluginModuleInstance(Et$1);
10517
10517
  if (t) {
10518
10518
  const { Vt: n } = o;
10519
10519
  const s = t(scrollRelative, moveHandleRelative, bind(getHandleOffset), k, n[f], S, !!u, ((t) => {
@@ -10531,10 +10531,10 @@ var createScrollbarsSetupEvents = (t, n, o, s, r) => (i, l, u) => {
10531
10531
  return bind(runEachAndClear, [
10532
10532
  addEventListener(y, "pointermove pointerleave", s(r)),
10533
10533
  addEventListener(h, "pointerenter", s((() => {
10534
- l(ht, true);
10534
+ l(ht$1, true);
10535
10535
  }))),
10536
10536
  addEventListener(h, "pointerleave pointercancel", s((() => {
10537
- l(ht, false);
10537
+ l(ht$1, false);
10538
10538
  }))),
10539
10539
  addEventListener(h, "wheel", s(((t) => {
10540
10540
  const { deltaX: n, deltaY: o, deltaMode: s } = t;
@@ -10555,7 +10555,7 @@ var createScrollbarsSetupEvents = (t, n, o, s, r) => (i, l, u) => {
10555
10555
  }),
10556
10556
  !d && addEventListener(h, "mousedown", s((() => {
10557
10557
  const t = getFocusedElement();
10558
- if (hasAttr(t, j$1) || hasAttr(t, B$1) || t === document.body) a$1(bind(focusElement, _), 25);
10558
+ if (hasAttr(t, j$1) || hasAttr(t, B$2) || t === document.body) a$1(bind(focusElement, _), 25);
10559
10559
  }))),
10560
10560
  addEventListener(h, "pointerdown", (() => {
10561
10561
  const t = addEventListener(v, "click", ((t) => {
@@ -10606,7 +10606,7 @@ var createScrollbarsSetup = (t, n, o, s, e, c, r) => {
10606
10606
  m();
10607
10607
  const hide = (t) => {
10608
10608
  if (o.Kt) return;
10609
- z(wt, t);
10609
+ z(wt$1, t);
10610
10610
  };
10611
10611
  if (t) hide();
10612
10612
  else {
@@ -10636,8 +10636,8 @@ var createScrollbarsSetup = (t, n, o, s, e, c, r) => {
10636
10636
  }
10637
10637
  };
10638
10638
  const manageAutoHideSuspension = (t) => {
10639
- z(yt, t, true);
10640
- z(yt, t, false);
10639
+ z(yt$1, t, true);
10640
+ z(yt$1, t, false);
10641
10641
  };
10642
10642
  const M = [
10643
10643
  m,
@@ -10660,7 +10660,7 @@ var createScrollbarsSetup = (t, n, o, s, e, c, r) => {
10660
10660
  k();
10661
10661
  })))
10662
10662
  ];
10663
- const R = getStaticPluginModuleInstance(xt);
10663
+ const R = getStaticPluginModuleInstance(xt$1);
10664
10664
  return [
10665
10665
  () => bind(runEachAndClear, push(M, C())),
10666
10666
  ({ Dt: t, It: n, Zt: o, tn: c }) => {
@@ -10686,11 +10686,11 @@ var createScrollbarsSetup = (t, n, o, s, e, c, r) => {
10686
10686
  const ot = tt || nt;
10687
10687
  const setScrollbarVisibility = (t, n, o) => {
10688
10688
  const s = t.includes(E$1) && (L === x$1 || L === "auto" && n === E$1);
10689
- z(vt, s, o);
10689
+ z(vt$1, s, o);
10690
10690
  return s;
10691
10691
  };
10692
10692
  d = F;
10693
- if ($ || nt) z(lt, ot);
10693
+ if ($ || nt) z(lt$1, ot);
10694
10694
  if (V) {
10695
10695
  z(f);
10696
10696
  z(M, true);
@@ -10713,12 +10713,12 @@ var createScrollbarsSetup = (t, n, o, s, e, c, r) => {
10713
10713
  u = U === "never";
10714
10714
  manageScrollbarsAutoHide(u, true);
10715
10715
  }
10716
- if (X) z(Ot, j);
10717
- if (W) z(mt, !!Y);
10716
+ if (X) z(Ot$1, j);
10717
+ if (W) z(mt$1, !!Y);
10718
10718
  if (Z) {
10719
10719
  const t = setScrollbarVisibility(J.x, m.x, true);
10720
10720
  const n = setScrollbarVisibility(J.y, m.y, false);
10721
- z(gt, !(t && n));
10721
+ z(gt$1, !(t && n));
10722
10722
  }
10723
10723
  if (Q) {
10724
10724
  A();
@@ -10727,7 +10727,7 @@ var createScrollbarsSetup = (t, n, o, s, e, c, r) => {
10727
10727
  if (v) T();
10728
10728
  z(bt, !O.x, true);
10729
10729
  z(bt, !O.y, false);
10730
- z(ut, b && !D);
10730
+ z(ut$1, b && !D);
10731
10731
  }
10732
10732
  },
10733
10733
  {},
@@ -10754,7 +10754,7 @@ var createStructureSetupElements = (t) => {
10754
10754
  const $ = bind(w, S, l);
10755
10755
  const elementHasOverflow = (t) => {
10756
10756
  const n = I$1(t);
10757
- const o = T$1(t);
10757
+ const o = T$2(t);
10758
10758
  const s = getStyles(t, m$1);
10759
10759
  const e = getStyles(t, O$1);
10760
10760
  return o.w - n.w > 0 && !overflowIsVisible(s) || o.h - n.h > 0 && !overflowIsVisible(e);
@@ -10797,9 +10797,9 @@ var createStructureSetupElements = (t) => {
10797
10797
  };
10798
10798
  const { dt: Y, vt: W, ln: J, L: Q, ht: nt } = X;
10799
10799
  const ot = [() => {
10800
- removeAttrs(W, [B$1, U$1]);
10801
- removeAttrs(Y, U$1);
10802
- if (g) removeAttrs(b, [U$1, B$1]);
10800
+ removeAttrs(W, [B$2, U$2]);
10801
+ removeAttrs(Y, U$2);
10802
+ if (g) removeAttrs(b, [U$2, B$2]);
10803
10803
  }];
10804
10804
  let st = contents([
10805
10805
  nt,
@@ -10824,13 +10824,13 @@ var createStructureSetupElements = (t) => {
10824
10824
  const o = "tabindex";
10825
10825
  const s = getAttr(Q, o);
10826
10826
  const c = prepareWrapUnwrapFocus(n);
10827
- setAttrs(W, B$1, H ? "" : F$2);
10828
- setAttrs(J, Z$1, "");
10827
+ setAttrs(W, B$2, H ? "" : F$2);
10828
+ setAttrs(J, Z$2, "");
10829
10829
  setAttrs(Q, j$1, "");
10830
- setAttrs(nt, tt, "");
10830
+ setAttrs(nt, tt$1, "");
10831
10831
  if (!H) {
10832
10832
  setAttrs(Q, o, s || "-1");
10833
- if (g) setAttrs(b, q$2, "");
10833
+ if (g) setAttrs(b, q$3, "");
10834
10834
  }
10835
10835
  appendChildren(et, st);
10836
10836
  appendChildren(W, J);
@@ -10841,10 +10841,10 @@ var createStructureSetupElements = (t) => {
10841
10841
  const n = elementIsGenerated(Q);
10842
10842
  const e = n && t === Q ? Y : t;
10843
10843
  const c = prepareWrapUnwrapFocus(e);
10844
- removeAttrs(J, Z$1);
10845
- removeAttrs(nt, tt);
10844
+ removeAttrs(J, Z$2);
10845
+ removeAttrs(nt, tt$1);
10846
10846
  removeAttrs(Q, j$1);
10847
- if (g) removeAttrs(b, q$2);
10847
+ if (g) removeAttrs(b, q$3);
10848
10848
  if (s) setAttrs(Q, o, s);
10849
10849
  else removeAttrs(Q, o);
10850
10850
  if (elementIsGenerated(nt)) unwrap(nt);
@@ -10854,7 +10854,7 @@ var createStructureSetupElements = (t) => {
10854
10854
  c();
10855
10855
  }]);
10856
10856
  if (e && !H) {
10857
- addAttrClass(Q, j$1, K$1);
10857
+ addAttrClass(Q, j$1, K$2);
10858
10858
  push(ot, bind(removeAttrs, Q, j$1));
10859
10859
  }
10860
10860
  focusElement(!H && g && n === Y && t.top === t ? Q : n);
@@ -10871,7 +10871,7 @@ var createStructureSetupElements = (t) => {
10871
10871
  var createTrinsicUpdateSegment = ({ ht: t }) => ({ Zt: n, fn: o, It: s }) => {
10872
10872
  const { $t: e } = n || {};
10873
10873
  const { Ot: c } = o;
10874
- if (t && (e || s)) setStyles(t, { [$$1]: c && "100%" });
10874
+ if (t && (e || s)) setStyles(t, { [$$2]: c && "100%" });
10875
10875
  };
10876
10876
  var createPaddingUpdateSegment = ({ vt: t, ln: n, L: o, V: s }, e) => {
10877
10877
  const [c, r] = createCache({
@@ -10941,7 +10941,7 @@ var createOverflowUpdateSegment = (t, s) => {
10941
10941
  o: {}
10942
10942
  };
10943
10943
  const setMeasuringMode = (t) => {
10944
- p(J$1, !h && t);
10944
+ p(J$2, !h && t);
10945
10945
  };
10946
10946
  const getFlowDirectionStyles = () => getStyles(a, w);
10947
10947
  const getMeasuredScrollCoordinates = (t, n) => {
@@ -10969,14 +10969,14 @@ var createOverflowUpdateSegment = (t, s) => {
10969
10969
  I: true,
10970
10970
  A: true
10971
10971
  });
10972
- const i = p(Q$1, true);
10972
+ const i = p(Q$2, true);
10973
10973
  scrollElementTo(_, {
10974
10974
  x: 0,
10975
10975
  y: 0
10976
10976
  });
10977
10977
  i();
10978
10978
  const u = getElementScroll(_);
10979
- const d = T$1(_);
10979
+ const d = T$2(_);
10980
10980
  scrollElementTo(_, {
10981
10981
  x: d.w,
10982
10982
  y: d.h
@@ -11019,13 +11019,13 @@ var createOverflowUpdateSegment = (t, s) => {
11019
11019
  };
11020
11020
  const getViewportOverflowStyle = (t, n) => {
11021
11021
  const getAxisOverflowStyle = (t, n, o, s) => {
11022
- const e = t === x$1 ? H$1 : overflowBehaviorToOverflowStyle(t);
11022
+ const e = t === x$1 ? H$2 : overflowBehaviorToOverflowStyle(t);
11023
11023
  const c = overflowIsVisible(t);
11024
11024
  const r = overflowIsVisible(o);
11025
- if (!n && !s) return H$1;
11025
+ if (!n && !s) return H$2;
11026
11026
  if (c && r) return x$1;
11027
- if (c) return n && s ? e : n ? x$1 : H$1;
11028
- return n ? e : r && s ? x$1 : H$1;
11027
+ if (c) return n && s ? e : n ? x$1 : H$2;
11028
+ return n ? e : r && s ? x$1 : H$2;
11029
11029
  };
11030
11030
  return {
11031
11031
  x: getAxisOverflowStyle(n.x, t.x, n.y, t.y),
@@ -11035,7 +11035,7 @@ var createOverflowUpdateSegment = (t, s) => {
11035
11035
  const setViewportOverflowStyle = (t) => {
11036
11036
  const createAllOverflowStyleClassNames = (t) => [
11037
11037
  x$1,
11038
- H$1,
11038
+ H$2,
11039
11039
  E$1
11040
11040
  ].map(((n) => createViewportOverflowStyleClassName(overflowCssValueToOverflowStyle(n), t)));
11041
11041
  const n = createAllOverflowStyleClassNames(true).concat(createAllOverflowStyleClassNames()).join(" ");
@@ -11043,7 +11043,7 @@ var createOverflowUpdateSegment = (t, s) => {
11043
11043
  p(keys(t).map(((n) => createViewportOverflowStyleClassName(t[n], n === "x"))).join(" "), true);
11044
11044
  };
11045
11045
  const [O, C] = createCache(S, bind(getFractionalSize, a));
11046
- const [$, D] = createCache(S, bind(T$1, a));
11046
+ const [$, D] = createCache(S, bind(T$2, a));
11047
11047
  const [z, I] = createCache(S);
11048
11048
  const [k] = createCache(m);
11049
11049
  const [M, R] = createCache(S);
@@ -11056,9 +11056,9 @@ var createOverflowUpdateSegment = (t, s) => {
11056
11056
  i: (t, n) => equalXY(t.T, n.T) && equalXY(t.k, n.k),
11057
11057
  o: getZeroScrollCoordinates()
11058
11058
  });
11059
- const q = getStaticPluginModuleInstance(xt);
11059
+ const q = getStaticPluginModuleInstance(xt$1);
11060
11060
  const createViewportOverflowStyleClassName = (t, n) => {
11061
- return `${n ? X$1 : Y$1}${capitalizeFirstLetter(t)}`;
11061
+ return `${n ? X$2 : Y$2}${capitalizeFirstLetter(t)}`;
11062
11062
  };
11063
11063
  return ({ Dt: n, Zt: o, fn: c, It: l }, { dn: u }) => {
11064
11064
  const { _t: f, Ht: _, xt: d, Ct: y, ft: w, Et: S } = o || {};
@@ -11072,13 +11072,13 @@ var createOverflowUpdateSegment = (t, s) => {
11072
11072
  let Q = D(l);
11073
11073
  let tt = I(l);
11074
11074
  let nt = R(l);
11075
- if (F && g) p(K$1, !T);
11075
+ if (F && g) p(K$2, !T);
11076
11076
  if (J) {
11077
- if (hasAttrClass(r, B$1, N$1)) setMeasuringMode(true);
11077
+ if (hasAttrClass(r, B$2, N$1)) setMeasuringMode(true);
11078
11078
  const t = H && H();
11079
11079
  const [n] = G = O(l);
11080
11080
  const [o] = Q = $(l);
11081
- const s = A$1(a);
11081
+ const s = A$2(a);
11082
11082
  const e = h && getWindowSize(v());
11083
11083
  const c = {
11084
11084
  w: b(o.w + n.w),
@@ -11116,8 +11116,8 @@ var createOverflowUpdateSegment = (t, s) => {
11116
11116
  }
11117
11117
  }
11118
11118
  const [wt, St] = V(yt);
11119
- addRemoveAttrClass(r, B$1, N$1, ft);
11120
- addRemoveAttrClass(i, Z$1, N$1, ft);
11119
+ addRemoveAttrClass(r, B$2, N$1, ft);
11120
+ addRemoveAttrClass(i, Z$2, N$1, ft);
11121
11121
  assignDeep(s, {
11122
11122
  rn: wt,
11123
11123
  Vt: {
@@ -11167,8 +11167,8 @@ var createStructureSetup = (t) => {
11167
11167
  y: 0
11168
11168
  },
11169
11169
  rn: {
11170
- x: H$1,
11171
- y: H$1
11170
+ x: H$2,
11171
+ y: H$2
11172
11172
  },
11173
11173
  j: {
11174
11174
  x: false,
@@ -11291,14 +11291,14 @@ var createSetups = (t, n, o, s) => {
11291
11291
  f
11292
11292
  ];
11293
11293
  };
11294
- var Vt = /* @__PURE__ */ new WeakMap();
11294
+ var Vt$1 = /* @__PURE__ */ new WeakMap();
11295
11295
  var addInstance = (t, n) => {
11296
- Vt.set(t, n);
11296
+ Vt$1.set(t, n);
11297
11297
  };
11298
11298
  var removeInstance = (t) => {
11299
- Vt.delete(t);
11299
+ Vt$1.delete(t);
11300
11300
  };
11301
- var getInstance = (t) => Vt.get(t);
11301
+ var getInstance = (t) => Vt$1.get(t);
11302
11302
  var OverlayScrollbars = (t, n, o) => {
11303
11303
  const { tt: s } = getEnvironment();
11304
11304
  const e = isHTMLElement(t);
@@ -11309,7 +11309,7 @@ var OverlayScrollbars = (t, n, o) => {
11309
11309
  const i = {};
11310
11310
  const validateOptions = (t) => {
11311
11311
  const n = removeUndefinedProperties(t);
11312
- const o = getStaticPluginModuleInstance(R$1);
11312
+ const o = getStaticPluginModuleInstance(R$2);
11313
11313
  return o ? o(n, true) : n;
11314
11314
  };
11315
11315
  const l = assignDeep({}, s(), validateOptions(n));
@@ -11510,7 +11510,7 @@ var F$1 = (l) => {
11510
11510
  f ? a(m, f) : m();
11511
11511
  }, () => r.current], []);
11512
11512
  };
11513
- var q$1 = (l, o) => {
11513
+ var q$2 = (l, o) => {
11514
11514
  const { element: t = "div", options: c, events: a, defer: i, children: r, ...u } = l, s = t, n = useRef(null), e = useRef(null), [v, f] = F$1({
11515
11515
  options: c,
11516
11516
  events: a,
@@ -11544,7 +11544,7 @@ var q$1 = (l, o) => {
11544
11544
  "data-overlayscrollbars-contents": "",
11545
11545
  ref: e
11546
11546
  }, r));
11547
- }, g$1 = forwardRef(q$1), u = null, { min: d, max: a, abs: h, floor: g } = Math, p = (e, t, o) => d(o, a(t, e)), v = (e) => [...e].sort((e, t) => e - t), m = "function" == typeof queueMicrotask ? queueMicrotask : (e) => {
11547
+ }, g$1 = forwardRef(q$2), u = null, { min: d, max: a, abs: h, floor: g } = Math, p = (e, t, o) => d(o, a(t, e)), v = (e) => [...e].sort((e, t) => e - t), m = "function" == typeof queueMicrotask ? queueMicrotask : (e) => {
11548
11548
  Promise.resolve().then(e);
11549
11549
  }, _ = () => {
11550
11550
  let e;
@@ -11558,10 +11558,10 @@ var q$1 = (l, o) => {
11558
11558
  const n = o ? "unshift" : "push";
11559
11559
  for (let o = 0; o < t; o++) e[n](-1);
11560
11560
  return e;
11561
- }, $ = (e, t) => {
11561
+ }, $$1 = (e, t) => {
11562
11562
  const o = e.t[t];
11563
11563
  return -1 === o ? e.o : o;
11564
- }, z = (e, t, o) => {
11564
+ }, z$1 = (e, t, o) => {
11565
11565
  const n = -1 === e.t[t];
11566
11566
  return e.t[t] = o, e.i = d(t, e.i), n;
11567
11567
  }, b = (e, t) => {
@@ -11569,7 +11569,7 @@ var q$1 = (l, o) => {
11569
11569
  if (e.i >= t) return e.u[t];
11570
11570
  e.i < 0 && (e.u[0] = 0, e.i = 0);
11571
11571
  let o = e.i, n = e.u[o];
11572
- for (; o < t;) n += $(e, o), e.u[++o] = n;
11572
+ for (; o < t;) n += $$1(e, o), e.u[++o] = n;
11573
11573
  return e.i = t, n;
11574
11574
  }, y = (e, t, o = 0, n = e.l - 1) => {
11575
11575
  let r = o;
@@ -11581,7 +11581,7 @@ var q$1 = (l, o) => {
11581
11581
  }, x = (e, t, o) => {
11582
11582
  const n = t - e.l;
11583
11583
  return e.i = o ? -1 : d(t - 1, e.i), e.l = t, n > 0 ? (S(e.u, n), S(e.t, n, o), e.o * n) : (e.u.splice(n), (o ? e.t.splice(0, -n) : e.t.splice(n)).reduce((t, o) => t - (-1 === o ? e.o : o), 0));
11584
- }, I = "undefined" != typeof window, k = (e) => e.documentElement, R = (e) => e.ownerDocument, T = (e) => e.defaultView, C = /*#__PURE__*/ w(() => !!/iP(hone|od|ad)/.test(navigator.userAgent) || "MacIntel" === navigator.platform && navigator.maxTouchPoints > 0), M = /*#__PURE__*/ w(() => "scrollBehavior" in k(document).style), O = (e) => a(e.h(), e.p()), E = (e, t = 40, o = 0, n, r = !1) => {
11584
+ }, I = "undefined" != typeof window, k = (e) => e.documentElement, R$1 = (e) => e.ownerDocument, T$1 = (e) => e.defaultView, C = /*#__PURE__*/ w(() => !!/iP(hone|od|ad)/.test(navigator.userAgent) || "MacIntel" === navigator.platform && navigator.maxTouchPoints > 0), M$1 = /*#__PURE__*/ w(() => "scrollBehavior" in k(document).style), O = (e) => a(e.h(), e.p()), E = (e, t = 40, o = 0, n, r = !1) => {
11585
11585
  let s = !!o, i = 1, l = 0, c = 0, f = 0, g = 0, p = 0, m = 0, _ = 0, w = 0, I = u, k = [0, s ? a(o - 1, 0) : -1], R = 0, T = !1;
11586
11586
  const M = ((e, t, o) => ({
11587
11587
  o: t,
@@ -11601,7 +11601,7 @@ var q$1 = (l, o) => {
11601
11601
  })(M, e, t, k[0]), B = () => b(M, M.l), J = (e, t) => {
11602
11602
  const o = b(M, e) - p;
11603
11603
  return t ? B() - o - A(e) : o;
11604
- }, A = (e) => $(M, e), L = (e, t = -1) => M.t[e] === t, N = (e) => {
11604
+ }, A = (e) => $$1(M, e), L = (e, t = -1) => M.t[e] === t, N = (e) => {
11605
11605
  e && (C() && 0 !== _ || I && 1 === w ? p += e : g += e);
11606
11606
  };
11607
11607
  return {
@@ -11667,7 +11667,7 @@ var q$1 = (l, o) => {
11667
11667
  return n && (e += o - A(t)), e;
11668
11668
  }, 0));
11669
11669
  for (const [t, o] of e) {
11670
- const e = A(t), n = z(M, t, o);
11670
+ const e = A(t), n = z$1(M, t, o);
11671
11671
  r && (R += n ? o : o - e);
11672
11672
  }
11673
11673
  r && l && R > l && (N(((e, t) => {
@@ -11700,7 +11700,7 @@ var q$1 = (l, o) => {
11700
11700
  }));
11701
11701
  }
11702
11702
  };
11703
- }, H = setTimeout, W = (e, t) => t ? -e : e, B = (e, t, o, n, r, s) => {
11703
+ }, H$1 = setTimeout, W = (e, t) => t ? -e : e, B$1 = (e, t, o, n, r, s) => {
11704
11704
  const i = Date.now;
11705
11705
  let l = 0, c = !1, f = !1, d = !1, a = !1;
11706
11706
  const h = (() => {
@@ -11708,7 +11708,7 @@ var q$1 = (l, o) => {
11708
11708
  const o = () => {
11709
11709
  t != u && clearTimeout(t);
11710
11710
  }, n = () => {
11711
- o(), t = H(() => {
11711
+ o(), t = H$1(() => {
11712
11712
  t = u, (() => {
11713
11713
  if (c || f) return c = !1, void h();
11714
11714
  d = !1, e.B(2);
@@ -11736,7 +11736,7 @@ var q$1 = (l, o) => {
11736
11736
  t && (r(t, o, a), a = !1, o && e.p() > e.h() && e.B(1, n()));
11737
11737
  }
11738
11738
  };
11739
- }, J = (e, t, o) => {
11739
+ }, J$1 = (e, t, o) => {
11740
11740
  let n;
11741
11741
  return [async (r, s) => {
11742
11742
  if (!await t()) return;
@@ -11745,11 +11745,11 @@ var q$1 = (l, o) => {
11745
11745
  const [t, o] = _();
11746
11746
  return n = () => {
11747
11747
  o(!1);
11748
- }, e.p() && H(n, 150), [t, e.W(2, () => {
11748
+ }, e.p() && H$1(n, 150), [t, e.W(2, () => {
11749
11749
  o(!0);
11750
11750
  })];
11751
11751
  };
11752
- if (s && M()) e.B(8, r()), m(async () => {
11752
+ if (s && M$1()) e.B(8, r()), m(async () => {
11753
11753
  for (;;) {
11754
11754
  let t = !0;
11755
11755
  for (let [o, n] = e.S(); o <= n; o++) if (e.I(o)) {
@@ -11777,9 +11777,9 @@ var q$1 = (l, o) => {
11777
11777
  }, () => {
11778
11778
  n && n();
11779
11779
  }];
11780
- }, A = (e, t) => {
11780
+ }, A$1 = (e, t) => {
11781
11781
  let o, n, r = _(), s = !1;
11782
- const i = t ? "scrollLeft" : "scrollTop", l = t ? "overflowX" : "overflowY", [c, f] = J(e, () => r[0], (e, n) => {
11782
+ const i = t ? "scrollLeft" : "scrollTop", l = t ? "overflowX" : "overflowY", [c, f] = J$1(e, () => r[0], (e, n) => {
11783
11783
  e = W(e, s), n ? o.scrollTo({
11784
11784
  [t ? "left" : "top"]: e,
11785
11785
  behavior: "smooth"
@@ -11787,10 +11787,10 @@ var q$1 = (l, o) => {
11787
11787
  });
11788
11788
  return {
11789
11789
  N(c, u) {
11790
- o = u, t && (s = "rtl" === getComputedStyle(u).direction), n = B(e, u, t, () => W(u[i], s), (t, o, n) => {
11790
+ o = u, t && (s = "rtl" === getComputedStyle(u).direction), n = B$1(e, u, t, () => W(u[i], s), (t, o, n) => {
11791
11791
  if (n) {
11792
11792
  const e = u.style, t = e[l];
11793
- e[l] = "hidden", H(() => {
11793
+ e[l] = "hidden", H$1(() => {
11794
11794
  e[l] = t;
11795
11795
  });
11796
11796
  }
@@ -11822,11 +11822,11 @@ var q$1 = (l, o) => {
11822
11822
  n && n.L();
11823
11823
  }
11824
11824
  };
11825
- }, P = (e) => {
11825
+ }, P$1 = (e) => {
11826
11826
  let t;
11827
11827
  return {
11828
11828
  j(o) {
11829
- (t || (t = new (T(R(o))).ResizeObserver(e))).observe(o);
11829
+ (t || (t = new (T$1(R$1(o))).ResizeObserver(e))).observe(o);
11830
11830
  },
11831
11831
  D(e) {
11832
11832
  t.unobserve(e);
@@ -11835,9 +11835,9 @@ var q$1 = (l, o) => {
11835
11835
  t && t.disconnect();
11836
11836
  }
11837
11837
  };
11838
- }, V = (e, t) => {
11838
+ }, V$1 = (e, t) => {
11839
11839
  let o;
11840
- const n = t ? "width" : "height", r = /* @__PURE__ */ new WeakMap(), s = P((t) => {
11840
+ const n = t ? "width" : "height", r = /* @__PURE__ */ new WeakMap(), s = P$1((t) => {
11841
11841
  const s = [];
11842
11842
  for (const { target: i, contentRect: l } of t) if (i.offsetParent) if (i === o) e.B(4, l[n]);
11843
11843
  else {
@@ -11855,23 +11855,23 @@ var q$1 = (l, o) => {
11855
11855
  }),
11856
11856
  v: s.A
11857
11857
  };
11858
- }, q = I ? useLayoutEffect : useEffect, j = "current", D = (e, t) => {
11859
- if (Array.isArray(e)) for (const o of e) D(o, t);
11858
+ }, q$1 = I ? useLayoutEffect : useEffect, j = "current", D$1 = (e, t) => {
11859
+ if (Array.isArray(e)) for (const o of e) D$1(o, t);
11860
11860
  else null == e || "boolean" == typeof e || t.push(e);
11861
11861
  }, G = (e, t) => {
11862
11862
  const o = e.key;
11863
11863
  return null != o ? o : "_" + t;
11864
- }, U = (e) => {
11864
+ }, U$1 = (e) => {
11865
11865
  const t = useRef(null);
11866
11866
  return t[j] || (t[j] = e());
11867
11867
  }, F = (e) => {
11868
11868
  const t = useRef(e);
11869
- return q(() => {
11869
+ return q$1(() => {
11870
11870
  t[j] = e;
11871
11871
  }, [e]), t;
11872
- }, K = /*#__PURE__*/ memo(({ Z: t, ee: o, te: r, oe: i, ne: l, re: c, se: f, ie: u }) => {
11872
+ }, K$1 = /*#__PURE__*/ memo(({ Z: t, ee: o, te: r, oe: i, ne: l, re: c, se: f, ie: u }) => {
11873
11873
  const d = useRef(null);
11874
- q(() => o(d[j], r), [r]);
11874
+ q$1(() => o(d[j], r), [r]);
11875
11875
  const a = useMemo(() => {
11876
11876
  const e = {
11877
11877
  contain: "layout style",
@@ -11898,27 +11898,27 @@ var q$1 = (l, o) => {
11898
11898
  index: r,
11899
11899
  children: t
11900
11900
  });
11901
- }), Q = (e, t) => useMemo(() => {
11901
+ }), Q$1 = (e, t) => useMemo(() => {
11902
11902
  if ("function" == typeof e) return [(o) => e(t[o], o), t.length];
11903
11903
  const o = ((e) => {
11904
11904
  const t = [];
11905
- return D(e, t), t;
11905
+ return D$1(e, t), t;
11906
11906
  })(e);
11907
11907
  return [(e) => o[e], o.length];
11908
- }, [e, t]), Z = /*#__PURE__*/ forwardRef(({ children: t, data: o, bufferSize: r, itemSize: s, shift: i, horizontal: u, keepMounted: d, cache: a, startMargin: h = 0, ssrCount: g, as: p = "div", item: _ = "div", scrollRef: w, onScroll: S, onScrollEnd: $ }, z) => {
11909
- const [b, y] = Q(t, o), x = useRef(null), I = useRef(!!g), k = F(S), R = F($), [T, C, M, H] = U(() => {
11908
+ }, [e, t]), Z$1 = /*#__PURE__*/ forwardRef(({ children: t, data: o, bufferSize: r, itemSize: s, shift: i, horizontal: u, keepMounted: d, cache: a, startMargin: h = 0, ssrCount: g, as: p = "div", item: _ = "div", scrollRef: w, onScroll: S, onScrollEnd: $ }, z) => {
11909
+ const [b, y] = Q$1(t, o), x = useRef(null), I = useRef(!!g), k = F(S), R = F($), [T, C, M, H] = U$1(() => {
11910
11910
  const e = !!u, t = E(y, s, g, a, !s);
11911
11911
  return [
11912
11912
  t,
11913
- V(t, e),
11914
- A(t, e),
11913
+ V$1(t, e),
11914
+ A$1(t, e),
11915
11915
  e
11916
11916
  ];
11917
11917
  });
11918
11918
  y !== T.T() && T.B(5, [y, i]), h !== T.O() && T.B(6, h);
11919
11919
  const [W, B] = useReducer(T.m, void 0, T.m), J = T.M(), L = T.h(), N = M.P(), P = [], X = (t) => {
11920
11920
  const o = b(t);
11921
- return jsx(K, {
11921
+ return jsx(K$1, {
11922
11922
  ee: C.U,
11923
11923
  te: t,
11924
11924
  oe: T.k(t, N),
@@ -11929,7 +11929,7 @@ var q$1 = (l, o) => {
11929
11929
  ie: I[j]
11930
11930
  }, G(o, t));
11931
11931
  };
11932
- if (q(() => {
11932
+ if (q$1(() => {
11933
11933
  I[j] = !1, T.W(1, (e) => {
11934
11934
  e ? flushSync(B) : B();
11935
11935
  }), T.W(4, () => {
@@ -11945,7 +11945,7 @@ var q$1 = (l, o) => {
11945
11945
  }) : t(e.parentElement), () => {
11946
11946
  T.v(), C.v(), M.v();
11947
11947
  };
11948
- }, []), q(() => {
11948
+ }, []), q$1(() => {
11949
11949
  M.q();
11950
11950
  }, [W]), useImperativeHandle(z, () => ({
11951
11951
  get cache() {
@@ -11986,7 +11986,7 @@ var q$1 = (l, o) => {
11986
11986
  },
11987
11987
  children: P
11988
11988
  });
11989
- }), ee = /*#__PURE__*/ forwardRef(({ children: t, data: o, bufferSize: n, itemSize: r, shift: s, horizontal: i, keepMounted: l, cache: c, ssrCount: f, item: u, onScroll: d, onScrollEnd: a, style: h, ...g }, p) => jsx("div", {
11989
+ }), ee$1 = /*#__PURE__*/ forwardRef(({ children: t, data: o, bufferSize: n, itemSize: r, shift: s, horizontal: i, keepMounted: l, cache: c, ssrCount: f, item: u, onScroll: d, onScrollEnd: a, style: h, ...g }, p) => jsx("div", {
11990
11990
  ...g,
11991
11991
  style: {
11992
11992
  display: i ? "inline-block" : "block",
@@ -11996,7 +11996,7 @@ var q$1 = (l, o) => {
11996
11996
  height: "100%",
11997
11997
  ...h
11998
11998
  },
11999
- children: jsx(Z, {
11999
+ children: jsx(Z$1, {
12000
12000
  ref: p,
12001
12001
  data: o,
12002
12002
  bufferSize: n,
@@ -12074,7 +12074,7 @@ function VirtualScrollArea({ listRef, className, onScrollIntent, onWheel, onKeyD
12074
12074
  if (event.target instanceof Element && event.target.closest(".os-scrollbar") != null) onScrollIntent?.();
12075
12075
  },
12076
12076
  onTouchStart: onScrollIntent,
12077
- children: /* @__PURE__ */ jsx(ee, {
12077
+ children: /* @__PURE__ */ jsx(ee$1, {
12078
12078
  ...props,
12079
12079
  ref: listRef,
12080
12080
  onWheel: (event) => {
@@ -12125,11 +12125,11 @@ function PopoverContent({ className, positionerClassName, positionerStyle, align
12125
12125
  alignOffset,
12126
12126
  side,
12127
12127
  sideOffset,
12128
- className: cn("isolate z-50", positionerClassName),
12128
+ className: cn$1("isolate z-50", positionerClassName),
12129
12129
  style: positionerStyle,
12130
12130
  children: /* @__PURE__ */ jsx(PopoverPopup, {
12131
12131
  "data-slot": "popover-content",
12132
- className: cn("z-50 flex w-72 origin-(--transform-origin) flex-col gap-2.5 rounded-lg bg-popover p-2.5 text-sm text-popover-foreground shadow-md ring-1 ring-foreground/10 outline-hidden duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95 motion-reduce:animate-none motion-reduce:transition-none", className),
12132
+ className: cn$1("z-50 flex w-72 origin-(--transform-origin) flex-col gap-2.5 rounded-lg bg-popover p-2.5 text-sm text-popover-foreground shadow-md ring-1 ring-foreground/10 outline-hidden duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95 motion-reduce:animate-none motion-reduce:transition-none", className),
12133
12133
  ...props
12134
12134
  })
12135
12135
  })
@@ -12138,21 +12138,21 @@ function PopoverContent({ className, positionerClassName, positionerStyle, align
12138
12138
  function PopoverHeader({ className, ...props }) {
12139
12139
  return /* @__PURE__ */ jsx("div", {
12140
12140
  "data-slot": "popover-header",
12141
- className: cn("flex flex-col gap-0.5 text-sm", className),
12141
+ className: cn$1("flex flex-col gap-0.5 text-sm", className),
12142
12142
  ...props
12143
12143
  });
12144
12144
  }
12145
12145
  function PopoverTitle({ className, ...props }) {
12146
12146
  return /* @__PURE__ */ jsx(PopoverTitle$1, {
12147
12147
  "data-slot": "popover-title",
12148
- className: cn("m-0 text-sm font-medium", className),
12148
+ className: cn$1("m-0 text-sm font-medium", className),
12149
12149
  ...props
12150
12150
  });
12151
12151
  }
12152
12152
  function PopoverDescription({ className, ...props }) {
12153
12153
  return /* @__PURE__ */ jsx(PopoverDescription$1, {
12154
12154
  "data-slot": "popover-description",
12155
- className: cn("text-muted-foreground", className),
12155
+ className: cn$1("text-muted-foreground", className),
12156
12156
  ...props
12157
12157
  });
12158
12158
  }
@@ -12170,7 +12170,7 @@ function PopoverPanelContent({ title, sectionTitle, closeLabel, footer, children
12170
12170
  align: "start",
12171
12171
  sideOffset: 2,
12172
12172
  ...props,
12173
- className: cn("w-80 max-w-[calc(100vw-24px)] max-h-[min(80vh,680px,var(--available-height))] gap-0 overflow-hidden bg-popover p-0 text-xs [--ui-control-radius:6px]", props.className),
12173
+ className: cn$1("w-80 max-w-[calc(100vw-24px)] max-h-[min(80vh,680px,var(--available-height))] gap-0 overflow-hidden bg-popover p-0 text-xs [--ui-control-radius:6px]", props.className),
12174
12174
  children: [
12175
12175
  /* @__PURE__ */ jsxs("div", {
12176
12176
  className: "flex h-10 shrink-0 items-center gap-2 px-3",
@@ -12456,7 +12456,7 @@ var Textarea = React.forwardRef(function Textarea({ className, ...props }, ref)
12456
12456
  return /* @__PURE__ */ jsx("textarea", {
12457
12457
  ref,
12458
12458
  "data-slot": "textarea",
12459
- className: cn("flex field-sizing-content min-h-16 w-full rounded-[var(--ui-control-radius,calc(var(--ui-radius)_+_2px))] border border-input bg-[var(--ui-control-background,var(--ui-muted))] px-2.5 py-2 text-[length:var(--ui-textarea-font-size,var(--ui-font-size))] leading-5 transition-colors outline-none read-only:cursor-default placeholder:text-muted-foreground focus-visible:text-field-focus focus-visible:aria-invalid:invalid-text-field-focus disabled:cursor-[var(--ui-disabled-cursor,not-allowed)] disabled:bg-[var(--ui-disabled-background,color-mix(in_srgb,var(--ui-input)_50%,transparent))] disabled:opacity-[var(--ui-disabled-opacity,0.5)] aria-invalid:border-destructive dark:bg-[var(--ui-control-background,var(--ui-muted))] dark:disabled:bg-[var(--ui-disabled-background,color-mix(in_srgb,var(--ui-input)_80%,transparent))]", className),
12459
+ className: cn$1("flex field-sizing-content min-h-16 w-full rounded-[var(--ui-control-radius,calc(var(--ui-radius)_+_2px))] border border-input bg-[var(--ui-control-background,var(--ui-muted))] px-2.5 py-2 text-[length:var(--ui-textarea-font-size,var(--ui-font-size))] leading-5 transition-colors outline-none read-only:cursor-default placeholder:text-muted-foreground focus-visible:text-field-focus focus-visible:aria-invalid:invalid-text-field-focus disabled:cursor-[var(--ui-disabled-cursor,not-allowed)] disabled:bg-[var(--ui-disabled-background,color-mix(in_srgb,var(--ui-input)_50%,transparent))] disabled:opacity-[var(--ui-disabled-opacity,0.5)] aria-invalid:border-destructive dark:bg-[var(--ui-control-background,var(--ui-muted))] dark:disabled:bg-[var(--ui-disabled-background,color-mix(in_srgb,var(--ui-input)_80%,transparent))]", className),
12460
12460
  ...props
12461
12461
  });
12462
12462
  });
@@ -12466,6 +12466,2299 @@ function canvasDirection(value) {
12466
12466
  return value === "vertical" ? "vertical" : "horizontal";
12467
12467
  }
12468
12468
  //#endregion
12469
+ //#region ../../node_modules/.bun/@dagrejs+dagre@3.1.1/node_modules/@dagrejs/dagre/dist/dagre.esm.js
12470
+ var Te = Object.defineProperty;
12471
+ var In = (e, n, t) => n in e ? Te(e, n, {
12472
+ enumerable: !0,
12473
+ configurable: !0,
12474
+ writable: !0,
12475
+ value: t
12476
+ }) : e[n] = t;
12477
+ var Sn = (e, n) => {
12478
+ for (var t in n) Te(e, t, {
12479
+ get: n[t],
12480
+ enumerable: !0
12481
+ });
12482
+ };
12483
+ var je = (e, n, t) => In(e, typeof n != "symbol" ? n + "" : n, t);
12484
+ var ie = {};
12485
+ Sn(ie, {
12486
+ Graph: () => T,
12487
+ alg: () => H
12488
+ });
12489
+ var Mn = Object.defineProperty;
12490
+ var Se = (e, n) => {
12491
+ for (var t in n) Mn(e, t, {
12492
+ get: n[t],
12493
+ enumerable: !0
12494
+ });
12495
+ };
12496
+ var Q = class {
12497
+ constructor(e) {
12498
+ this._isDirected = !0, this._isMultigraph = !1, this._isCompound = !1, this._nodes = {}, this._in = {}, this._preds = {}, this._out = {}, this._sucs = {}, this._edgeObjs = {}, this._edgeLabels = {}, this._nodeCount = 0, this._edgeCount = 0, this._defaultNodeLabelFn = () => {}, this._defaultEdgeLabelFn = () => {}, e && (this._isDirected = "directed" in e ? e.directed : !0, this._isMultigraph = "multigraph" in e ? e.multigraph : !1, this._isCompound = "compound" in e ? e.compound : !1), this._isCompound && (this._parent = {}, this._children = {}, this._children["\0"] = {});
12499
+ }
12500
+ isDirected() {
12501
+ return this._isDirected;
12502
+ }
12503
+ isMultigraph() {
12504
+ return this._isMultigraph;
12505
+ }
12506
+ isCompound() {
12507
+ return this._isCompound;
12508
+ }
12509
+ setGraph(e) {
12510
+ return this._label = e, this;
12511
+ }
12512
+ graph() {
12513
+ return this._label;
12514
+ }
12515
+ setDefaultNodeLabel(e) {
12516
+ return typeof e != "function" ? this._defaultNodeLabelFn = () => e : this._defaultNodeLabelFn = e, this;
12517
+ }
12518
+ nodeCount() {
12519
+ return this._nodeCount;
12520
+ }
12521
+ nodes() {
12522
+ return Object.keys(this._nodes);
12523
+ }
12524
+ sources() {
12525
+ return this.nodes().filter((e) => Object.keys(this._in[e]).length === 0);
12526
+ }
12527
+ sinks() {
12528
+ return this.nodes().filter((e) => Object.keys(this._out[e]).length === 0);
12529
+ }
12530
+ setNodes(e, n) {
12531
+ return e.forEach((t) => {
12532
+ n !== void 0 ? this.setNode(t, n) : this.setNode(t);
12533
+ }), this;
12534
+ }
12535
+ setNode(e, n) {
12536
+ return e in this._nodes ? (arguments.length > 1 && (this._nodes[e] = n), this) : (this._nodes[e] = arguments.length > 1 ? n : this._defaultNodeLabelFn(e), this._isCompound && (this._parent[e] = "\0", this._children[e] = {}, this._children["\0"][e] = !0), this._in[e] = {}, this._preds[e] = {}, this._out[e] = {}, this._sucs[e] = {}, ++this._nodeCount, this);
12537
+ }
12538
+ node(e) {
12539
+ return this._nodes[e];
12540
+ }
12541
+ hasNode(e) {
12542
+ return e in this._nodes;
12543
+ }
12544
+ removeNode(e) {
12545
+ if (e in this._nodes) {
12546
+ let n = (t) => this.removeEdge(this._edgeObjs[t]);
12547
+ delete this._nodes[e], this._isCompound && (this._removeFromParentsChildList(e), delete this._parent[e], this.children(e).forEach((t) => {
12548
+ this.setParent(t);
12549
+ }), delete this._children[e]), Object.keys(this._in[e]).forEach(n), delete this._in[e], delete this._preds[e], Object.keys(this._out[e]).forEach(n), delete this._out[e], delete this._sucs[e], --this._nodeCount;
12550
+ }
12551
+ return this;
12552
+ }
12553
+ setParent(e, n) {
12554
+ if (!this._isCompound) throw new Error("Cannot set parent in a non-compound graph");
12555
+ if (n === void 0) n = "\0";
12556
+ else {
12557
+ n += "";
12558
+ for (let t = n; t !== void 0; t = this.parent(t)) if (t === e) throw new Error("Setting " + n + " as parent of " + e + " would create a cycle");
12559
+ this.setNode(n);
12560
+ }
12561
+ return this.setNode(e), this._removeFromParentsChildList(e), this._parent[e] = n, this._children[n][e] = !0, this;
12562
+ }
12563
+ parent(e) {
12564
+ if (this._isCompound) {
12565
+ let n = this._parent[e];
12566
+ if (n !== "\0") return n;
12567
+ }
12568
+ }
12569
+ children(e = "\0") {
12570
+ if (this._isCompound) {
12571
+ let n = this._children[e];
12572
+ if (n) return Object.keys(n);
12573
+ } else {
12574
+ if (e === "\0") return this.nodes();
12575
+ if (this.hasNode(e)) return [];
12576
+ }
12577
+ return [];
12578
+ }
12579
+ predecessors(e) {
12580
+ let n = this._preds[e];
12581
+ if (n) return Object.keys(n);
12582
+ }
12583
+ successors(e) {
12584
+ let n = this._sucs[e];
12585
+ if (n) return Object.keys(n);
12586
+ }
12587
+ neighbors(e) {
12588
+ let n = this.predecessors(e);
12589
+ if (n) {
12590
+ let t = new Set(n), r = this.successors(e);
12591
+ if (r) for (let o of r) t.add(o);
12592
+ return Array.from(t.values());
12593
+ }
12594
+ }
12595
+ isLeaf(e) {
12596
+ var n;
12597
+ let t;
12598
+ return this.isDirected() ? t = this.successors(e) : t = this.neighbors(e), ((n = t == null ? void 0 : t.length) != null ? n : 0) === 0;
12599
+ }
12600
+ filterNodes(e) {
12601
+ let n = new this.constructor({
12602
+ directed: this._isDirected,
12603
+ multigraph: this._isMultigraph,
12604
+ compound: this._isCompound
12605
+ });
12606
+ n.setGraph(this.graph()), Object.entries(this._nodes).forEach(([o, i]) => {
12607
+ e(o) && n.setNode(o, i);
12608
+ }), Object.values(this._edgeObjs).forEach((o) => {
12609
+ n.hasNode(o.v) && n.hasNode(o.w) && n.setEdge(o, this.edge(o));
12610
+ });
12611
+ let t = {}, r = (o) => {
12612
+ let i = this.parent(o);
12613
+ return !i || n.hasNode(i) ? (t[o] = i, i) : i in t ? t[i] : r(i);
12614
+ };
12615
+ return this._isCompound && n.nodes().forEach((o) => n.setParent(o, r(o))), n;
12616
+ }
12617
+ setDefaultEdgeLabel(e) {
12618
+ return typeof e != "function" ? this._defaultEdgeLabelFn = () => e : this._defaultEdgeLabelFn = e, this;
12619
+ }
12620
+ edgeCount() {
12621
+ return this._edgeCount;
12622
+ }
12623
+ edges() {
12624
+ return Object.values(this._edgeObjs);
12625
+ }
12626
+ setPath(e, n) {
12627
+ return e.reduce((t, r) => (n !== void 0 ? this.setEdge(t, r, n) : this.setEdge(t, r), r)), this;
12628
+ }
12629
+ setEdge(e, n, t, r) {
12630
+ let o, i, s, a, l = !1;
12631
+ typeof e == "object" && e !== null && "v" in e ? (o = e.v, i = e.w, s = e.name, arguments.length === 2 && (a = n, l = !0)) : (o = e, i = n, s = r, arguments.length > 2 && (a = t, l = !0)), o = "" + o, i = "" + i, s !== void 0 && (s = "" + s);
12632
+ let u = z(this._isDirected, o, i, s);
12633
+ if (u in this._edgeLabels) return l && (this._edgeLabels[u] = a), this;
12634
+ if (s !== void 0 && !this._isMultigraph) throw new Error("Cannot set a named edge when isMultigraph = false");
12635
+ this.setNode(o), this.setNode(i), this._edgeLabels[u] = l ? a : this._defaultEdgeLabelFn(o, i, s);
12636
+ let d = Pn(this._isDirected, o, i, s);
12637
+ return o = d.v, i = d.w, Object.freeze(d), this._edgeObjs[u] = d, Re(this._preds[i], o), Re(this._sucs[o], i), this._in[i][u] = d, this._out[o][u] = d, this._edgeCount++, this;
12638
+ }
12639
+ edge(e, n, t) {
12640
+ let r = arguments.length === 1 ? oe(this._isDirected, e) : z(this._isDirected, e, n, t);
12641
+ return this._edgeLabels[r];
12642
+ }
12643
+ edgeAsObj(e, n, t) {
12644
+ let r = arguments.length === 1 ? this.edge(e) : this.edge(e, n, t);
12645
+ return typeof r != "object" || r === null ? { label: r } : r;
12646
+ }
12647
+ hasEdge(e, n, t) {
12648
+ return (arguments.length === 1 ? oe(this._isDirected, e) : z(this._isDirected, e, n, t)) in this._edgeLabels;
12649
+ }
12650
+ removeEdge(e, n, t) {
12651
+ let r = arguments.length === 1 ? oe(this._isDirected, e) : z(this._isDirected, e, n, t), o = this._edgeObjs[r];
12652
+ if (o) {
12653
+ let i = o.v, s = o.w;
12654
+ delete this._edgeLabels[r], delete this._edgeObjs[r], Ie(this._preds[s], i), Ie(this._sucs[i], s), delete this._in[s][r], delete this._out[i][r], this._edgeCount--;
12655
+ }
12656
+ return this;
12657
+ }
12658
+ inEdges(e, n) {
12659
+ return this.isDirected() ? this.filterEdges(this._in[e], e, n) : this.nodeEdges(e, n);
12660
+ }
12661
+ outEdges(e, n) {
12662
+ return this.isDirected() ? this.filterEdges(this._out[e], e, n) : this.nodeEdges(e, n);
12663
+ }
12664
+ nodeEdges(e, n) {
12665
+ if (e in this._nodes) return this.filterEdges({
12666
+ ...this._in[e],
12667
+ ...this._out[e]
12668
+ }, e, n);
12669
+ }
12670
+ _removeFromParentsChildList(e) {
12671
+ delete this._children[this._parent[e]][e];
12672
+ }
12673
+ filterEdges(e, n, t) {
12674
+ if (!e) return;
12675
+ let r = Object.values(e);
12676
+ return t ? r.filter((o) => o.v === n && o.w === t || o.v === t && o.w === n) : r;
12677
+ }
12678
+ };
12679
+ function Re(e, n) {
12680
+ e[n] ? e[n]++ : e[n] = 1;
12681
+ }
12682
+ function Ie(e, n) {
12683
+ e[n] !== void 0 && !--e[n] && delete e[n];
12684
+ }
12685
+ function z(e, n, t, r) {
12686
+ let o = "" + n, i = "" + t;
12687
+ if (!e && o > i) {
12688
+ let s = o;
12689
+ o = i, i = s;
12690
+ }
12691
+ return o + "" + i + "" + (r === void 0 ? "\0" : r);
12692
+ }
12693
+ function Pn(e, n, t, r) {
12694
+ let o = "" + n, i = "" + t;
12695
+ if (!e && o > i) {
12696
+ let a = o;
12697
+ o = i, i = a;
12698
+ }
12699
+ let s = {
12700
+ v: o,
12701
+ w: i
12702
+ };
12703
+ return r && (s.name = r), s;
12704
+ }
12705
+ function oe(e, n) {
12706
+ return z(e, n.v, n.w, n.name);
12707
+ }
12708
+ Se({}, {
12709
+ read: () => Yn,
12710
+ write: () => An
12711
+ });
12712
+ function An(e) {
12713
+ let n = {
12714
+ options: {
12715
+ directed: e.isDirected(),
12716
+ multigraph: e.isMultigraph(),
12717
+ compound: e.isCompound()
12718
+ },
12719
+ nodes: Vn(e),
12720
+ edges: Dn(e)
12721
+ }, t = e.graph();
12722
+ return t !== void 0 && (n.value = structuredClone(t)), n;
12723
+ }
12724
+ function Vn(e) {
12725
+ return e.nodes().map((n) => {
12726
+ let t = e.node(n), r = e.parent(n), o = { v: n };
12727
+ return t !== void 0 && (o.value = t), r !== void 0 && (o.parent = r), o;
12728
+ });
12729
+ }
12730
+ function Dn(e) {
12731
+ return e.edges().map((n) => {
12732
+ let t = e.edge(n), r = {
12733
+ v: n.v,
12734
+ w: n.w
12735
+ };
12736
+ return n.name !== void 0 && (r.name = n.name), t !== void 0 && (r.value = t), r;
12737
+ });
12738
+ }
12739
+ function Yn(e) {
12740
+ let n = new Q(e.options);
12741
+ return e.value !== void 0 && n.setGraph(e.value), e.nodes.forEach((t) => {
12742
+ n.setNode(t.v, t.value), t.parent && n.setParent(t.v, t.parent);
12743
+ }), e.edges.forEach((t) => {
12744
+ n.setEdge({
12745
+ v: t.v,
12746
+ w: t.w,
12747
+ name: t.name
12748
+ }, t.value);
12749
+ }), n;
12750
+ }
12751
+ var H = {};
12752
+ Se(H, {
12753
+ CycleException: () => K,
12754
+ bellmanFord: () => Me,
12755
+ components: () => Xn,
12756
+ dijkstra: () => J,
12757
+ dijkstraAll: () => qn,
12758
+ findCycles: () => $n,
12759
+ floydWarshall: () => Jn,
12760
+ isAcyclic: () => Qn,
12761
+ postorder: () => et,
12762
+ preorder: () => nt,
12763
+ prim: () => tt,
12764
+ shortestPaths: () => rt,
12765
+ tarjan: () => Fe,
12766
+ topsort: () => Ae
12767
+ });
12768
+ var Wn = () => 1;
12769
+ function Me(e, n, t, r) {
12770
+ return Bn(e, String(n), t || Wn, r || function(o) {
12771
+ var i;
12772
+ return (i = e.outEdges(o)) != null ? i : [];
12773
+ });
12774
+ }
12775
+ function Bn(e, n, t, r) {
12776
+ let o = {}, i, s = 0, a = e.nodes(), l = function(c) {
12777
+ let f = o[c.v], h = o[c.w];
12778
+ if (!f || !h) return;
12779
+ let p = t(c);
12780
+ f.distance + p < h.distance && (o[c.w] = {
12781
+ distance: f.distance + p,
12782
+ predecessor: c.v
12783
+ }, i = !0);
12784
+ }, u = function() {
12785
+ a.forEach(function(c) {
12786
+ r(c).forEach(function(f) {
12787
+ let h = f.v === c ? f.v : f.w, p = h === f.v ? f.w : f.v;
12788
+ l({
12789
+ v: h,
12790
+ w: p
12791
+ });
12792
+ });
12793
+ });
12794
+ };
12795
+ a.forEach(function(c) {
12796
+ let f = c === n ? 0 : Number.POSITIVE_INFINITY;
12797
+ o[c] = {
12798
+ distance: f,
12799
+ predecessor: ""
12800
+ };
12801
+ });
12802
+ let d = a.length;
12803
+ for (let c = 1; c < d && (i = !1, s++, u(), !!i); c++);
12804
+ if (s === d - 1 && (i = !1, u(), i)) throw new Error("The graph contains a negative weight cycle");
12805
+ return o;
12806
+ }
12807
+ function Xn(e) {
12808
+ let n = {}, t = [], r;
12809
+ function o(i) {
12810
+ var s, a;
12811
+ i in n || (n[i] = !0, r.push(i), (s = e.successors(i)) == null || s.forEach(o), (a = e.predecessors(i)) == null || a.forEach(o));
12812
+ }
12813
+ return e.nodes().forEach(function(i) {
12814
+ r = [], o(i), r.length && t.push(r);
12815
+ }), t;
12816
+ }
12817
+ var Pe = class {
12818
+ constructor() {
12819
+ this._arr = [], this._keyIndices = {};
12820
+ }
12821
+ size() {
12822
+ return this._arr.length;
12823
+ }
12824
+ keys() {
12825
+ return this._arr.map((e) => e.key);
12826
+ }
12827
+ has(e) {
12828
+ return e in this._keyIndices;
12829
+ }
12830
+ priority(e) {
12831
+ let n = this._keyIndices[e];
12832
+ if (n !== void 0) return this._arr[n].priority;
12833
+ }
12834
+ min() {
12835
+ if (this.size() === 0) throw new Error("Queue underflow");
12836
+ return this._arr[0].key;
12837
+ }
12838
+ add(e, n) {
12839
+ let t = this._keyIndices, r = String(e);
12840
+ if (!(r in t)) {
12841
+ let o = this._arr, i = o.length;
12842
+ return t[r] = i, o.push({
12843
+ key: r,
12844
+ priority: n
12845
+ }), this._decrease(i), !0;
12846
+ }
12847
+ return !1;
12848
+ }
12849
+ removeMin() {
12850
+ if (this.size() === 0) throw new Error("Queue underflow");
12851
+ this._swap(0, this._arr.length - 1);
12852
+ let e = this._arr.pop();
12853
+ return delete this._keyIndices[e.key], this._heapify(0), e.key;
12854
+ }
12855
+ decrease(e, n) {
12856
+ let t = this._keyIndices[e];
12857
+ if (t === void 0) throw new Error(`Key not found: ${e}`);
12858
+ let r = this._arr[t].priority;
12859
+ if (n > r) throw new Error(`New priority is greater than current priority. Key: ${e} Old: ${r} New: ${n}`);
12860
+ this._arr[t].priority = n, this._decrease(t);
12861
+ }
12862
+ _heapify(e) {
12863
+ let n = this._arr, t = 2 * e, r = t + 1, o = e;
12864
+ t < n.length && (o = n[t].priority < n[o].priority ? t : o, r < n.length && (o = n[r].priority < n[o].priority ? r : o), o !== e && (this._swap(e, o), this._heapify(o)));
12865
+ }
12866
+ _decrease(e) {
12867
+ let n = this._arr, t = n[e].priority, r;
12868
+ for (; e !== 0 && (r = e >> 1, !(n[r].priority < t));) this._swap(e, r), e = r;
12869
+ }
12870
+ _swap(e, n) {
12871
+ let t = this._arr, r = this._keyIndices, o = t[e], i = t[n];
12872
+ t[e] = i, t[n] = o, r[i.key] = e, r[o.key] = n;
12873
+ }
12874
+ };
12875
+ var zn = () => 1;
12876
+ function J(e, n, t, r) {
12877
+ let o = function(i) {
12878
+ var s;
12879
+ return (s = e.outEdges(i)) != null ? s : [];
12880
+ };
12881
+ return Hn(e, String(n), t || zn, r || o);
12882
+ }
12883
+ function Hn(e, n, t, r) {
12884
+ let o = {}, i = new Pe(), s, a, l = function(u) {
12885
+ let d = u.v !== s ? u.v : u.w, c = o[d];
12886
+ if (!c) return;
12887
+ let f = t(u), h = a.distance + f;
12888
+ if (f < 0) throw new Error("dijkstra does not allow negative edge weights. Bad edge: " + u + " Weight: " + f);
12889
+ h < c.distance && (c.distance = h, c.predecessor = s, i.decrease(d, h));
12890
+ };
12891
+ for (e.nodes().forEach(function(u) {
12892
+ let d = u === n ? 0 : Number.POSITIVE_INFINITY;
12893
+ o[u] = {
12894
+ distance: d,
12895
+ predecessor: ""
12896
+ }, i.add(u, d);
12897
+ }); i.size() > 0;) {
12898
+ s = i.removeMin();
12899
+ let u = o[s];
12900
+ if (!u || u.distance === Number.POSITIVE_INFINITY) break;
12901
+ a = u, r(s).forEach(l);
12902
+ }
12903
+ return o;
12904
+ }
12905
+ function qn(e, n, t) {
12906
+ return e.nodes().reduce(function(r, o) {
12907
+ return r[o] = J(e, o, n, t), r;
12908
+ }, {});
12909
+ }
12910
+ function Fe(e) {
12911
+ let n = 0, t = [], r = {}, o = [];
12912
+ function i(s) {
12913
+ var a;
12914
+ let l = r[s] = {
12915
+ onStack: !0,
12916
+ lowlink: n,
12917
+ index: n++
12918
+ };
12919
+ if (t.push(s), (a = e.successors(s)) == null || a.forEach(function(u) {
12920
+ if (u in r) {
12921
+ let d = r[u];
12922
+ d != null && d.onStack && (l.lowlink = Math.min(l.lowlink, d.index));
12923
+ } else {
12924
+ i(u);
12925
+ let d = r[u];
12926
+ d && (l.lowlink = Math.min(l.lowlink, d.lowlink));
12927
+ }
12928
+ }), l.lowlink === l.index) {
12929
+ let u = [], d;
12930
+ do {
12931
+ d = t.pop();
12932
+ let c = r[d];
12933
+ c && (c.onStack = !1), u.push(d);
12934
+ } while (s !== d);
12935
+ o.push(u);
12936
+ }
12937
+ }
12938
+ return e.nodes().forEach(function(s) {
12939
+ s in r || i(s);
12940
+ }), o;
12941
+ }
12942
+ function $n(e) {
12943
+ return Fe(e).filter(function(n) {
12944
+ var t;
12945
+ let r = n[0];
12946
+ return r ? n.length > 1 || n.length === 1 && ((t = e.outEdges(r, r)) != null ? t : []).length > 0 : !1;
12947
+ });
12948
+ }
12949
+ var Un = () => 1;
12950
+ function Jn(e, n, t) {
12951
+ return Kn(e, n || Un, t || function(r) {
12952
+ var o;
12953
+ return (o = e.outEdges(r)) != null ? o : [];
12954
+ });
12955
+ }
12956
+ function Kn(e, n, t) {
12957
+ let r = {}, o = e.nodes();
12958
+ return o.forEach(function(i) {
12959
+ let s = {};
12960
+ r[i] = s, s[i] = {
12961
+ distance: 0,
12962
+ predecessor: ""
12963
+ }, o.forEach(function(a) {
12964
+ i !== a && (s[a] = {
12965
+ distance: Number.POSITIVE_INFINITY,
12966
+ predecessor: ""
12967
+ });
12968
+ }), t(i).forEach(function(a) {
12969
+ let l = a.v === i ? a.w : a.v, u = n(a);
12970
+ s[l] = {
12971
+ distance: u,
12972
+ predecessor: i
12973
+ };
12974
+ });
12975
+ }), o.forEach(function(i) {
12976
+ let s = r[i];
12977
+ s && o.forEach(function(a) {
12978
+ let l = r[a];
12979
+ l && o.forEach(function(u) {
12980
+ let d = l[i], c = s[u], f = l[u];
12981
+ if (d && c && f) {
12982
+ let h = d.distance + c.distance;
12983
+ h < f.distance && (f.distance = h, f.predecessor = c.predecessor);
12984
+ }
12985
+ });
12986
+ });
12987
+ }), r;
12988
+ }
12989
+ var K = class extends Error {
12990
+ constructor(e) {
12991
+ super(e), this.name = "CycleException";
12992
+ }
12993
+ };
12994
+ function Ae(e) {
12995
+ let n = {}, t = {}, r = [];
12996
+ function o(i) {
12997
+ var s;
12998
+ if (i in t) throw new K();
12999
+ i in n || (t[i] = !0, n[i] = !0, (s = e.predecessors(i)) == null || s.forEach(o), delete t[i], r.push(i));
13000
+ }
13001
+ if (e.sinks().forEach(o), Object.keys(n).length !== e.nodeCount()) throw new K();
13002
+ return r;
13003
+ }
13004
+ function Qn(e) {
13005
+ try {
13006
+ Ae(e);
13007
+ } catch (n) {
13008
+ if (n instanceof K) return !1;
13009
+ throw n;
13010
+ }
13011
+ return !0;
13012
+ }
13013
+ function Zn(e, n, t, r, o) {
13014
+ Array.isArray(n) || (n = [n]);
13015
+ let i = ((a) => {
13016
+ var l;
13017
+ return (l = e.isDirected() ? e.successors(a) : e.neighbors(a)) != null ? l : [];
13018
+ }), s = {};
13019
+ return n.forEach(function(a) {
13020
+ if (!e.hasNode(a)) throw new Error("Graph does not have node: " + a);
13021
+ o = Ve(e, a, t === "post", s, i, r, o);
13022
+ }), o;
13023
+ }
13024
+ function Ve(e, n, t, r, o, i, s) {
13025
+ return n in r || (r[n] = !0, t || (s = i(s, n)), o(n).forEach(function(a) {
13026
+ s = Ve(e, a, t, r, o, i, s);
13027
+ }), t && (s = i(s, n))), s;
13028
+ }
13029
+ function De(e, n, t) {
13030
+ return Zn(e, n, t, function(r, o) {
13031
+ return r.push(o), r;
13032
+ }, []);
13033
+ }
13034
+ function et(e, n) {
13035
+ return De(e, n, "post");
13036
+ }
13037
+ function nt(e, n) {
13038
+ return De(e, n, "pre");
13039
+ }
13040
+ function tt(e, n) {
13041
+ var t;
13042
+ let r = new Q(), o = {}, i = new Pe(), s;
13043
+ function a(d) {
13044
+ let c = d.v === s ? d.w : d.v, f = i.priority(c);
13045
+ if (f !== void 0) {
13046
+ let h = n(d);
13047
+ h < f && (o[c] = s, i.decrease(c, h));
13048
+ }
13049
+ }
13050
+ if (e.nodeCount() === 0) return r;
13051
+ e.nodes().forEach(function(d) {
13052
+ i.add(d, Number.POSITIVE_INFINITY), r.setNode(d);
13053
+ });
13054
+ let l = e.nodes()[0];
13055
+ l !== void 0 && i.decrease(l, 0);
13056
+ let u = !1;
13057
+ for (; i.size() > 0;) {
13058
+ if (s = i.removeMin(), s in o) r.setEdge(s, o[s]);
13059
+ else {
13060
+ if (u) throw new Error("Input graph is not connected: " + e);
13061
+ u = !0;
13062
+ }
13063
+ (t = e.nodeEdges(s)) == null || t.forEach(a);
13064
+ }
13065
+ return r;
13066
+ }
13067
+ function rt(e, n, t, r) {
13068
+ return ot(e, n, t, r != null ? r : ((o) => {
13069
+ var i;
13070
+ return (i = e.outEdges(o)) != null ? i : [];
13071
+ }));
13072
+ }
13073
+ function ot(e, n, t, r) {
13074
+ if (t === void 0) return J(e, n, t, r);
13075
+ let o = !1, i = e.nodes();
13076
+ for (let s = 0; s < i.length; s++) {
13077
+ let a = i[s];
13078
+ if (a === void 0) continue;
13079
+ let l = r(a);
13080
+ for (let u = 0; u < l.length; u++) {
13081
+ let d = l[u];
13082
+ if (!d) continue;
13083
+ let c = d.v === a ? d.v : d.w;
13084
+ t({
13085
+ v: c,
13086
+ w: c === d.v ? d.w : d.v
13087
+ }) < 0 && (o = !0);
13088
+ }
13089
+ if (o) return Me(e, n, t, r);
13090
+ }
13091
+ return J(e, n, t, r);
13092
+ }
13093
+ var T = Q;
13094
+ function M(e, n, t, r) {
13095
+ let o = r;
13096
+ for (; e.hasNode(o);) o = $(r);
13097
+ return t.dummy = n, e.setNode(o, t), o;
13098
+ }
13099
+ function Ye(e) {
13100
+ let n = new T().setGraph(e.graph());
13101
+ return e.nodes().forEach((t) => n.setNode(t, e.node(t))), e.edges().forEach((t) => {
13102
+ let r = n.edge(t.v, t.w) || {
13103
+ weight: 0,
13104
+ minlen: 1
13105
+ }, o = e.edge(t);
13106
+ n.setEdge(t.v, t.w, {
13107
+ weight: r.weight + o.weight,
13108
+ minlen: Math.max(r.minlen, o.minlen)
13109
+ });
13110
+ }), n;
13111
+ }
13112
+ function Z(e) {
13113
+ let n = new T({ multigraph: e.isMultigraph() }).setGraph(e.graph());
13114
+ return e.nodes().forEach((t) => {
13115
+ e.children(t).length || n.setNode(t, e.node(t));
13116
+ }), e.edges().forEach((t) => {
13117
+ n.setEdge(t, e.edge(t));
13118
+ }), n;
13119
+ }
13120
+ function se(e, n) {
13121
+ let t = e.x, r = e.y, o = n.x - t, i = n.y - r, s = e.width / 2, a = e.height / 2;
13122
+ if (!o && !i) throw new Error("Not possible to find intersection inside of the rectangle");
13123
+ let l, u;
13124
+ return Math.abs(i) * s > Math.abs(o) * a ? (i < 0 && (a = -a), l = a * o / i, u = a) : (o < 0 && (s = -s), l = s, u = s * i / o), {
13125
+ x: t + l,
13126
+ y: r + u
13127
+ };
13128
+ }
13129
+ function P(e) {
13130
+ let n = A(de(e) + 1).map(() => []);
13131
+ return e.nodes().forEach((t) => {
13132
+ let r = e.node(t), o = r.rank;
13133
+ o !== void 0 && (n[o] || (n[o] = []), n[o][r.order] = t);
13134
+ }), n;
13135
+ }
13136
+ function We(e) {
13137
+ let n = e.nodes().map((r) => {
13138
+ let o = e.node(r).rank;
13139
+ return o === void 0 ? Number.MAX_VALUE : o;
13140
+ }), t = R(Math.min, n);
13141
+ e.nodes().forEach((r) => {
13142
+ let o = e.node(r);
13143
+ Object.hasOwn(o, "rank") && (o.rank -= t);
13144
+ });
13145
+ }
13146
+ function Be(e) {
13147
+ let n = e.nodes().map((s) => e.node(s).rank).filter((s) => s !== void 0), t = R(Math.min, n), r = [];
13148
+ e.nodes().forEach((s) => {
13149
+ let a = e.node(s).rank - t;
13150
+ r[a] || (r[a] = []), r[a].push(s);
13151
+ });
13152
+ let o = 0, i = e.graph().nodeRankFactor;
13153
+ Array.from(r).forEach((s, a) => {
13154
+ s === void 0 && a % i !== 0 ? --o : s !== void 0 && o && s.forEach((l) => e.node(l).rank += o);
13155
+ });
13156
+ }
13157
+ function ae(e, n, t, r) {
13158
+ let o = {
13159
+ width: 0,
13160
+ height: 0
13161
+ };
13162
+ return arguments.length >= 4 && (o.rank = t, o.order = r), M(e, "border", o, n);
13163
+ }
13164
+ function it(e, n = Xe) {
13165
+ let t = [];
13166
+ for (let r = 0; r < e.length; r += n) {
13167
+ let o = e.slice(r, r + n);
13168
+ t.push(o);
13169
+ }
13170
+ return t;
13171
+ }
13172
+ var Xe = 65535;
13173
+ function R(e, n) {
13174
+ if (n.length > Xe) return e(...it(n).map((r) => e(...r)));
13175
+ else return e(...n);
13176
+ }
13177
+ function de(e) {
13178
+ let t = e.nodes().map((r) => {
13179
+ let o = e.node(r).rank;
13180
+ return o === void 0 ? Number.MIN_VALUE : o;
13181
+ });
13182
+ return R(Math.max, t);
13183
+ }
13184
+ function ze(e, n) {
13185
+ let t = {
13186
+ lhs: [],
13187
+ rhs: []
13188
+ };
13189
+ return e.forEach((r) => {
13190
+ n(r) ? t.lhs.push(r) : t.rhs.push(r);
13191
+ }), t;
13192
+ }
13193
+ function q(e, n) {
13194
+ return n();
13195
+ }
13196
+ var st = 0;
13197
+ function $(e) {
13198
+ return e + ("" + ++st);
13199
+ }
13200
+ function A(e, n, t = 1) {
13201
+ n ?? (n = e, e = 0);
13202
+ let r = (i) => i < n;
13203
+ t < 0 && (r = (i) => n < i);
13204
+ let o = [];
13205
+ for (let i = e; r(i); i += t) o.push(i);
13206
+ return o;
13207
+ }
13208
+ function B(e, n) {
13209
+ let t = {};
13210
+ for (let r of n) e[r] !== void 0 && (t[r] = e[r]);
13211
+ return t;
13212
+ }
13213
+ function X(e, n) {
13214
+ let t;
13215
+ return typeof n == "string" ? t = (r) => r[n] : t = n, Object.entries(e).reduce((r, [o, i]) => (r[o] = t(i, o), r), {});
13216
+ }
13217
+ function He(e, n) {
13218
+ return e.reduce((t, r, o) => (t[r] = n[o], t), {});
13219
+ }
13220
+ var D = "\0";
13221
+ function ee(e, n, t) {
13222
+ var u, d, c, f, h, p;
13223
+ if (!(e && n && t && n.dummy === "edge" && t.dummy === "edge" && n.edgeObj && t.edgeObj && e[n.edgeObj.v] && e[t.edgeObj.v] && e[n.edgeObj.w] && e[t.edgeObj.w])) return 0;
13224
+ let r = !0;
13225
+ n.edgeObj.w === t.edgeObj.w && (r = !1);
13226
+ let o = r ? (d = (u = e[n.edgeObj.v]) == null ? void 0 : u.rank) != null ? d : NaN : (f = (c = e[n.edgeObj.w]) == null ? void 0 : c.rank) != null ? f : NaN, i = Object.entries(e).find((E) => {
13227
+ var y, L;
13228
+ return ((y = E[1].edgeObj) == null ? void 0 : y.v) === n.edgeObj.v && ((L = E[1].edgeObj) == null ? void 0 : L.w) === n.edgeObj.w && E[1].rank === o;
13229
+ }), s = Object.entries(e).find((E) => {
13230
+ var y, L;
13231
+ return ((y = E[1].edgeObj) == null ? void 0 : y.v) === t.edgeObj.v && ((L = E[1].edgeObj) == null ? void 0 : L.w) === t.edgeObj.w && E[1].rank === o;
13232
+ });
13233
+ if (!i || !s) return 0;
13234
+ let a = (h = i[1].order) != null ? h : NaN, l = (p = s[1].order) != null ? p : NaN;
13235
+ return isNaN(a - l) ? 0 : a - l;
13236
+ }
13237
+ var ce = class {
13238
+ constructor() {
13239
+ je(this, "_sentinel");
13240
+ let n = {};
13241
+ n._next = n._prev = n, this._sentinel = n;
13242
+ }
13243
+ dequeue() {
13244
+ let n = this._sentinel, t = n._prev;
13245
+ if (t !== n) return qe(t), t;
13246
+ }
13247
+ enqueue(n) {
13248
+ let t = this._sentinel;
13249
+ n._prev && n._next && qe(n), n._next = t._next, t._next._prev = n, t._next = n, n._prev = t;
13250
+ }
13251
+ toString() {
13252
+ let n = [], t = this._sentinel, r = t._prev;
13253
+ for (; r !== t;) n.push(JSON.stringify(r, at)), r = r._prev;
13254
+ return "[" + n.join(", ") + "]";
13255
+ }
13256
+ };
13257
+ function qe(e) {
13258
+ e._prev._next = e._next, e._next._prev = e._prev, delete e._next, delete e._prev;
13259
+ }
13260
+ function at(e, n) {
13261
+ if (e !== "_next" && e !== "_prev") return n;
13262
+ }
13263
+ var $e = ce;
13264
+ var dt = () => 1;
13265
+ function be(e, n) {
13266
+ if (e.nodeCount() <= 1) return [];
13267
+ let t = ut(e, n || dt);
13268
+ return lt(t.graph, t.buckets, t.zeroIdx).flatMap((o) => e.outEdges(o.v, o.w) || []);
13269
+ }
13270
+ function lt(e, n, t) {
13271
+ var a;
13272
+ let r = [], o = n[n.length - 1], i = n[0], s;
13273
+ for (; e.nodeCount();) {
13274
+ for (; s = i.dequeue();) fe(e, n, t, s);
13275
+ for (; s = o.dequeue();) fe(e, n, t, s);
13276
+ if (e.nodeCount()) {
13277
+ for (let l = n.length - 2; l > 0; --l) if (s = (a = n[l]) == null ? void 0 : a.dequeue(), s) {
13278
+ r = r.concat(fe(e, n, t, s, !0) || []);
13279
+ break;
13280
+ }
13281
+ }
13282
+ }
13283
+ return r;
13284
+ }
13285
+ function fe(e, n, t, r, o) {
13286
+ let i = [], s = o ? i : void 0;
13287
+ return (e.inEdges(r.v) || []).forEach((a) => {
13288
+ let l = e.edge(a), u = e.node(a.v);
13289
+ o && i.push({
13290
+ v: a.v,
13291
+ w: a.w
13292
+ }), u.out -= l, he(n, t, u);
13293
+ }), (e.outEdges(r.v) || []).forEach((a) => {
13294
+ let l = e.edge(a), u = a.w, d = e.node(u);
13295
+ d.in -= l, he(n, t, d);
13296
+ }), e.removeNode(r.v), s;
13297
+ }
13298
+ function ut(e, n) {
13299
+ let t = new T(), r = 0, o = 0;
13300
+ e.nodes().forEach((a) => {
13301
+ t.setNode(a, {
13302
+ v: a,
13303
+ in: 0,
13304
+ out: 0
13305
+ });
13306
+ }), e.edges().forEach((a) => {
13307
+ let l = t.edge(a.v, a.w) || 0, u = n(a), d = l + u;
13308
+ t.setEdge(a.v, a.w, d);
13309
+ let c = t.node(a.v), f = t.node(a.w);
13310
+ o = Math.max(o, c.out += u), r = Math.max(r, f.in += u);
13311
+ });
13312
+ let i = ct(o + r + 3).map(() => new $e()), s = r + 1;
13313
+ return t.nodes().forEach((a) => {
13314
+ he(i, s, t.node(a));
13315
+ }), {
13316
+ graph: t,
13317
+ buckets: i,
13318
+ zeroIdx: s
13319
+ };
13320
+ }
13321
+ function he(e, n, t) {
13322
+ var r, o, i;
13323
+ t.out ? t.in ? (i = e[t.out - t.in + n]) == null || i.enqueue(t) : (o = e[e.length - 1]) == null || o.enqueue(t) : (r = e[0]) == null || r.enqueue(t);
13324
+ }
13325
+ function ct(e) {
13326
+ let n = [];
13327
+ for (let t = 0; t < e; t++) n.push(t);
13328
+ return n;
13329
+ }
13330
+ function Ue(e, n) {
13331
+ (e.graph().acyclicer === "greedy" ? be(e, r(e)) : ft(e, n != null ? n : null)).forEach((o) => {
13332
+ let i = e.edge(o);
13333
+ e.removeEdge(o), i.forwardName = o.name, i.reversed = !0, e.setEdge(o.w, o.v, i, $("rev"));
13334
+ });
13335
+ function r(o) {
13336
+ return (i) => o.edge(i).weight;
13337
+ }
13338
+ }
13339
+ function ft(e, n) {
13340
+ let t = [], r = {}, o = {};
13341
+ function i(l) {
13342
+ Object.hasOwn(o, l) || (o[l] = !0, r[l] = !0, e.outEdges(l).forEach((u) => {
13343
+ Object.hasOwn(r, u.w) ? t.push(u) : i(u.w);
13344
+ }), delete r[l]);
13345
+ }
13346
+ function s(l) {
13347
+ var u;
13348
+ Object.hasOwn(o, l) || (o[l] = !0, r[l] = !0, (u = e.outEdges(l)) == null || u.forEach((d) => {
13349
+ var c, f;
13350
+ Object.hasOwn(r, d.w) || ((c = n.node(l)) == null ? void 0 : c.rank) > ((f = n.node(d.w)) == null ? void 0 : f.rank) && ht(e, d.w, d) ? t.push(d) : s(d.w);
13351
+ }), delete r[l]);
13352
+ }
13353
+ let a = i;
13354
+ return n && typeof n.node == "function" && (a = s), e.sources().forEach(a), e.nodes().forEach(a), t;
13355
+ }
13356
+ function Je(e) {
13357
+ e.edges().forEach((n) => {
13358
+ let t = e.edge(n);
13359
+ if (t.reversed) {
13360
+ e.removeEdge(n);
13361
+ let r = t.forwardName;
13362
+ delete t.reversed, delete t.forwardName, e.setEdge(n.w, n.v, t, r);
13363
+ }
13364
+ });
13365
+ }
13366
+ function ht(e, n, t) {
13367
+ let r = /* @__PURE__ */ new Set();
13368
+ function o(i) {
13369
+ var s;
13370
+ if (e.sources().includes(i)) return !0;
13371
+ r.add(i);
13372
+ for (let a of (s = e.inEdges(i)) != null ? s : []) if (!(a.v === t.v && a.w === t.w) && !r.has(a.v) && o(a.v)) return !0;
13373
+ return !1;
13374
+ }
13375
+ return o(n);
13376
+ }
13377
+ function Ke(e) {
13378
+ e.graph().dummyChains = [], e.edges().forEach((n) => gt(e, n));
13379
+ }
13380
+ function gt(e, n) {
13381
+ let t = n.v, r = e.node(t).rank, o = n.w, i = e.node(o).rank, s = n.name, a = e.edge(n), l = a.labelRank;
13382
+ if (i === r + 1) return;
13383
+ e.removeEdge(n);
13384
+ let u, d, c;
13385
+ for (c = 0, ++r; r < i; ++c, ++r) a.points = [], d = {
13386
+ width: 0,
13387
+ height: 0,
13388
+ edgeLabel: a,
13389
+ edgeObj: n,
13390
+ rank: r
13391
+ }, u = M(e, "edge", d, "_d"), r === l && (d.width = a.width, d.height = a.height, d.dummy = "edge-label", d.labelpos = a.labelpos), e.setEdge(t, u, { weight: a.weight }, s), c === 0 && e.graph().dummyChains.push(u), t = u;
13392
+ e.setEdge(t, o, { weight: a.weight }, s);
13393
+ }
13394
+ function Qe(e) {
13395
+ e.graph().dummyChains.forEach((n) => {
13396
+ let t = e.node(n), r = t.edgeLabel, o;
13397
+ for (e.setEdge(t.edgeObj, r); t.dummy;) o = e.successors(n)[0], e.removeNode(n), r.points.push({
13398
+ x: t.x,
13399
+ y: t.y
13400
+ }), t.dummy === "edge-label" && (r.x = t.x, r.y = t.y, r.width = t.width, r.height = t.height), n = o, t = e.node(n);
13401
+ });
13402
+ }
13403
+ function U(e) {
13404
+ let n = {};
13405
+ function t(r) {
13406
+ let o = e.node(r);
13407
+ if (Object.hasOwn(n, r)) return o.rank;
13408
+ n[r] = !0;
13409
+ let i = e.outEdges(r), s = i ? i.map((l) => l == null ? Number.POSITIVE_INFINITY : t(l.w) - e.edge(l).minlen) : [], a = R(Math.min, s);
13410
+ return a === Number.POSITIVE_INFINITY && (a = 0), o.rank = a;
13411
+ }
13412
+ e.sources().forEach(t);
13413
+ }
13414
+ function V(e, n) {
13415
+ return e.node(n.w).rank - e.node(n.v).rank - e.edge(n).minlen;
13416
+ }
13417
+ var ne = mt;
13418
+ function mt(e) {
13419
+ let n = new T({ directed: !1 }), t = e.nodes();
13420
+ if (t.length === 0) throw new Error("Graph must have at least one node");
13421
+ let r = t[0], o = e.nodeCount();
13422
+ n.setNode(r, {});
13423
+ let i, s;
13424
+ for (; Et(n, e) < o && (i = Lt(n, e), !!i);) s = n.hasNode(i.v) ? V(e, i) : -V(e, i), yt(n, e, s);
13425
+ return n;
13426
+ }
13427
+ function Et(e, n) {
13428
+ function t(r) {
13429
+ let o = n.nodeEdges(r);
13430
+ o && o.forEach((i) => {
13431
+ let s = i.v, a = r === s ? i.w : s;
13432
+ !e.hasNode(a) && !V(n, i) && (e.setNode(a, {}), e.setEdge(r, a, {}), t(a));
13433
+ });
13434
+ }
13435
+ return e.nodes().forEach(t), e.nodeCount();
13436
+ }
13437
+ function Lt(e, n) {
13438
+ return n.edges().reduce((r, o) => {
13439
+ let i = Number.POSITIVE_INFINITY;
13440
+ return e.hasNode(o.v) !== e.hasNode(o.w) && (i = V(n, o)), i < r[0] ? [i, o] : r;
13441
+ }, [Number.POSITIVE_INFINITY, null])[1];
13442
+ }
13443
+ function yt(e, n, t) {
13444
+ e.nodes().forEach((r) => n.node(r).rank += t);
13445
+ }
13446
+ var { preorder: wt, postorder: Nt } = H, en = Y;
13447
+ Y.initLowLimValues = pe;
13448
+ Y.initCutValues = ge;
13449
+ Y.calcCutValue = nn;
13450
+ Y.leaveEdge = rn;
13451
+ Y.enterEdge = on;
13452
+ Y.exchangeEdges = sn;
13453
+ function Y(e) {
13454
+ e = Ye(e), U(e);
13455
+ let n = ne(e);
13456
+ pe(n), ge(n, e);
13457
+ let t, r;
13458
+ for (; t = rn(n);) r = on(n, e, t), sn(n, e, t, r);
13459
+ }
13460
+ function ge(e, n) {
13461
+ let t = Nt(e, e.nodes());
13462
+ t = t.slice(0, t.length - 1), t.forEach((r) => Gt(e, n, r));
13463
+ }
13464
+ function Gt(e, n, t) {
13465
+ let o = e.node(t).parent, i = e.edge(t, o);
13466
+ i.cutvalue = nn(e, n, t);
13467
+ }
13468
+ function nn(e, n, t) {
13469
+ let o = e.node(t).parent, i = !0, s = n.edge(t, o), a = 0;
13470
+ s || (i = !1, s = n.edge(o, t)), a = s.weight;
13471
+ let l = n.nodeEdges(t);
13472
+ return l && l.forEach((u) => {
13473
+ let d = u.v === t, c = d ? u.w : u.v;
13474
+ if (c !== o) {
13475
+ let f = d === i, h = n.edge(u).weight;
13476
+ if (a += f ? h : -h, kt(e, t, c)) {
13477
+ let E = e.edge(t, c).cutvalue;
13478
+ a += f ? -E : E;
13479
+ }
13480
+ }
13481
+ }), a;
13482
+ }
13483
+ function pe(e, n) {
13484
+ arguments.length < 2 && (n = e.nodes()[0]), tn(e, {}, 1, n);
13485
+ }
13486
+ function tn(e, n, t, r, o) {
13487
+ let i = t, s = e.node(r);
13488
+ n[r] = !0;
13489
+ let a = e.neighbors(r);
13490
+ return a && a.forEach((l) => {
13491
+ Object.hasOwn(n, l) || (t = tn(e, n, t, l, r));
13492
+ }), s.low = i, s.lim = t++, o ? s.parent = o : delete s.parent, t;
13493
+ }
13494
+ function rn(e) {
13495
+ return e.edges().find((n) => e.edge(n).cutvalue < 0);
13496
+ }
13497
+ function on(e, n, t) {
13498
+ let r = t.v, o = t.w;
13499
+ n.hasEdge(r, o) || (r = t.w, o = t.v);
13500
+ let i = e.node(r), s = e.node(o), a = i, l = !1;
13501
+ return i.lim > s.lim && (a = s, l = !0), n.edges().filter((d) => l === Ze(e, e.node(d.v), a) && l !== Ze(e, e.node(d.w), a)).reduce((d, c) => V(n, c) < V(n, d) ? c : d);
13502
+ }
13503
+ function sn(e, n, t, r) {
13504
+ let o = t.v, i = t.w;
13505
+ e.removeEdge(o, i), e.setEdge(r.v, r.w, {}), pe(e), ge(e, n), vt(e, n);
13506
+ }
13507
+ function vt(e, n) {
13508
+ let t = e.nodes().find((o) => !e.node(o).parent);
13509
+ if (!t) return;
13510
+ let r = wt(e, [t]);
13511
+ r = r.slice(1), r.forEach((o) => {
13512
+ let s = e.node(o).parent, a = n.edge(o, s), l = !1;
13513
+ a || (a = n.edge(s, o), l = !0), n.node(o).rank = n.node(s).rank + (l ? a.minlen : -a.minlen);
13514
+ });
13515
+ }
13516
+ function kt(e, n, t) {
13517
+ return e.hasEdge(n, t);
13518
+ }
13519
+ function Ze(e, n, t) {
13520
+ return t.low <= n.lim && n.lim <= t.lim;
13521
+ }
13522
+ var dn = xt;
13523
+ function xt(e) {
13524
+ let n = e.graph().ranker;
13525
+ if (typeof n == "function") return n(e);
13526
+ switch (n) {
13527
+ case "network-simplex":
13528
+ an(e);
13529
+ break;
13530
+ case "tight-tree":
13531
+ Ot(e);
13532
+ break;
13533
+ case "longest-path":
13534
+ _t(e);
13535
+ break;
13536
+ case "none": break;
13537
+ default: an(e);
13538
+ }
13539
+ }
13540
+ var _t = U;
13541
+ function Ot(e) {
13542
+ U(e), ne(e);
13543
+ }
13544
+ function an(e) {
13545
+ en(e);
13546
+ }
13547
+ var ln = Ct;
13548
+ function Ct(e) {
13549
+ let n = jt(e), t = e.graph();
13550
+ if (!Array.isArray(t.dummyChains)) return;
13551
+ t.dummyChains.forEach((o) => {
13552
+ let i = e.node(o), s = i.edgeObj, a = Tt(e, n, s.v, s.w), l = a.path, u = a.lca, d = 0, c = l[d], f = !0;
13553
+ for (; o !== s.w;) {
13554
+ if (i = e.node(o), f) {
13555
+ for (; (c = l[d]) !== u && e.node(c).maxRank < i.rank;) d++;
13556
+ c === u && (f = !1);
13557
+ }
13558
+ if (!f) {
13559
+ for (; d < l.length - 1 && e.node(l[d + 1]).minRank <= i.rank;) d++;
13560
+ c = l[d];
13561
+ }
13562
+ c !== void 0 && e.setParent(o, c), o = e.successors(o)[0];
13563
+ }
13564
+ });
13565
+ }
13566
+ function Tt(e, n, t, r) {
13567
+ let o = [], i = [], s = Math.min(n[t].low, n[r].low), a = Math.max(n[t].lim, n[r].lim), l;
13568
+ l = t;
13569
+ do
13570
+ l = e.parent(l), o.push(l);
13571
+ while (l && (n[l].low > s || a > n[l].lim));
13572
+ let u = l, d = r;
13573
+ for (; (d = e.parent(d)) !== u;) i.push(d);
13574
+ return {
13575
+ path: o.concat(i.reverse()),
13576
+ lca: u
13577
+ };
13578
+ }
13579
+ function jt(e) {
13580
+ let n = {}, t = 0;
13581
+ function r(o) {
13582
+ let i = t;
13583
+ e.children(o).forEach(r), n[o] = {
13584
+ low: i,
13585
+ lim: t++
13586
+ };
13587
+ }
13588
+ return e.children(D).forEach(r), n;
13589
+ }
13590
+ function un(e) {
13591
+ let n = M(e, "root", {}, "_root"), t = Rt(e), r = Object.values(t), o = R(Math.max, r) - 1, i = 2 * o + 1;
13592
+ e.graph().nestingRoot = n, e.edges().forEach((a) => e.edge(a).minlen *= i);
13593
+ let s = It(e) + 1;
13594
+ e.children(D).forEach((a) => {
13595
+ cn(e, n, i, s, o, t, a);
13596
+ }), e.graph().nodeRankFactor = i;
13597
+ }
13598
+ function cn(e, n, t, r, o, i, s) {
13599
+ var c;
13600
+ let a = e.children(s);
13601
+ if (!a.length) {
13602
+ s !== n && e.setEdge(n, s, {
13603
+ weight: 0,
13604
+ minlen: t
13605
+ });
13606
+ return;
13607
+ }
13608
+ let l = ae(e, "_bt"), u = ae(e, "_bb"), d = e.node(s);
13609
+ e.setParent(l, s), d.borderTop = l, e.setParent(u, s), d.borderBottom = u, a.forEach((f) => {
13610
+ var b;
13611
+ cn(e, n, t, r, o, i, f);
13612
+ let h = e.node(f), p = h.borderTop ? h.borderTop : f, E = h.borderBottom ? h.borderBottom : f, y = h.borderTop ? r : 2 * r, L = p !== E ? 1 : o - ((b = i[s]) != null ? b : 0) + 1;
13613
+ e.setEdge(l, p, {
13614
+ weight: y,
13615
+ minlen: L,
13616
+ nestingEdge: !0
13617
+ }), e.setEdge(E, u, {
13618
+ weight: y,
13619
+ minlen: L,
13620
+ nestingEdge: !0
13621
+ });
13622
+ }), e.parent(s) || e.setEdge(n, l, {
13623
+ weight: 0,
13624
+ minlen: o + ((c = i[s]) != null ? c : 0)
13625
+ });
13626
+ }
13627
+ function Rt(e) {
13628
+ let n = {};
13629
+ function t(r, o) {
13630
+ let i = e.children(r);
13631
+ i && i.length && i.forEach((s) => t(s, o + 1)), n[r] = o;
13632
+ }
13633
+ return e.children(D).forEach((r) => t(r, 1)), n;
13634
+ }
13635
+ function It(e) {
13636
+ return e.edges().reduce((n, t) => n + e.edge(t).weight, 0);
13637
+ }
13638
+ function fn(e) {
13639
+ let n = e.graph();
13640
+ e.removeNode(n.nestingRoot), delete n.nestingRoot, e.edges().forEach((t) => {
13641
+ e.edge(t).nestingEdge && e.removeEdge(t);
13642
+ });
13643
+ }
13644
+ var bn = Mt;
13645
+ function Mt(e) {
13646
+ function n(t) {
13647
+ let r = e.children(t), o = e.node(t);
13648
+ if (r.length && r.forEach(n), o && Object.hasOwn(o, "minRank")) {
13649
+ o.borderLeft = [], o.borderRight = [];
13650
+ for (let i = o.minRank, s = o.maxRank + 1; i < s; ++i) hn(e, "borderLeft", "_bl", t, o, i), hn(e, "borderRight", "_br", t, o, i);
13651
+ }
13652
+ }
13653
+ e.children(D).forEach(n);
13654
+ }
13655
+ function hn(e, n, t, r, o, i) {
13656
+ let s = {
13657
+ width: 0,
13658
+ height: 0,
13659
+ rank: i,
13660
+ borderType: n
13661
+ }, a = o[n][i - 1], l = M(e, "border", s, t);
13662
+ o[n][i] = l, e.setParent(l, r), a && e.setEdge(a, l, { weight: 1 });
13663
+ }
13664
+ function pn(e) {
13665
+ var t;
13666
+ let n = (t = e.graph().rankdir) == null ? void 0 : t.toLowerCase();
13667
+ (n === "lr" || n === "rl") && En(e);
13668
+ }
13669
+ function mn(e) {
13670
+ var t;
13671
+ let n = (t = e.graph().rankdir) == null ? void 0 : t.toLowerCase();
13672
+ (n === "bt" || n === "rl") && Pt(e), (n === "lr" || n === "rl") && (Ft(e), En(e));
13673
+ }
13674
+ function En(e) {
13675
+ e.nodes().forEach((n) => gn(e.node(n))), e.edges().forEach((n) => gn(e.edge(n)));
13676
+ }
13677
+ function gn(e) {
13678
+ let n = e.width;
13679
+ e.width = e.height, e.height = n;
13680
+ }
13681
+ function Pt(e) {
13682
+ e.nodes().forEach((n) => me(e.node(n))), e.edges().forEach((n) => {
13683
+ var r;
13684
+ let t = e.edge(n);
13685
+ (r = t.points) == null || r.forEach(me), Object.hasOwn(t, "y") && me(t);
13686
+ });
13687
+ }
13688
+ function me(e) {
13689
+ e.y = -e.y;
13690
+ }
13691
+ function Ft(e) {
13692
+ e.nodes().forEach((n) => Ee(e.node(n))), e.edges().forEach((n) => {
13693
+ var r;
13694
+ let t = e.edge(n);
13695
+ (r = t.points) == null || r.forEach(Ee), Object.hasOwn(t, "x") && Ee(t);
13696
+ });
13697
+ }
13698
+ function Ee(e) {
13699
+ let n = e.x;
13700
+ e.x = e.y, e.y = n;
13701
+ }
13702
+ function Le(e, n = null) {
13703
+ let t = {}, r = e.nodes().filter((d) => !e.children(d).length), o = r.map((d) => e.node(d).rank), s = A(R(Math.max, o) + 1).map(() => []);
13704
+ function a(d) {
13705
+ if (t[d]) return;
13706
+ t[d] = !0;
13707
+ let c = e.node(d);
13708
+ s[c.rank].push(d);
13709
+ let f = e.successors(d);
13710
+ f && [...f].sort((p, E) => u(p, E)).forEach(a);
13711
+ }
13712
+ r.sort((d, c) => e.node(d).rank - e.node(c).rank).forEach(a);
13713
+ function u(d, c) {
13714
+ return ee(n, e.node(d), e.node(c));
13715
+ }
13716
+ return s;
13717
+ }
13718
+ function ye(e, n) {
13719
+ let t = 0;
13720
+ for (let r = 1; r < n.length; ++r) t += Vt(e, n[r - 1], n[r]);
13721
+ return t;
13722
+ }
13723
+ function Vt(e, n, t) {
13724
+ let r = He(t, t.map((u, d) => d)), o = n.flatMap((u) => {
13725
+ let d = e.outEdges(u);
13726
+ return d ? d.map((c) => ({
13727
+ pos: r[c.w],
13728
+ weight: e.edge(c).weight
13729
+ })).sort((c, f) => c.pos - f.pos) : [];
13730
+ }), i = 1;
13731
+ for (; i < t.length;) i <<= 1;
13732
+ let s = 2 * i - 1;
13733
+ i -= 1;
13734
+ let a = new Array(s).fill(0), l = 0;
13735
+ return o.forEach((u) => {
13736
+ let d = u.pos + i;
13737
+ a[d] += u.weight;
13738
+ let c = 0;
13739
+ for (; d > 0;) d % 2 && (c += a[d + 1]), d = d - 1 >> 1, a[d] += u.weight;
13740
+ l += u.weight * c;
13741
+ }), l;
13742
+ }
13743
+ function we(e, n = []) {
13744
+ return n.map((t) => {
13745
+ let r = e.inEdges(t);
13746
+ if (!r || !r.length) return { v: t };
13747
+ {
13748
+ let o = r.reduce((i, s) => {
13749
+ let a = e.edge(s), l = e.node(s.v);
13750
+ return {
13751
+ sum: i.sum + a.weight * l.order,
13752
+ weight: i.weight + a.weight
13753
+ };
13754
+ }, {
13755
+ sum: 0,
13756
+ weight: 0
13757
+ });
13758
+ return {
13759
+ v: t,
13760
+ barycenter: o.sum / o.weight,
13761
+ weight: o.weight
13762
+ };
13763
+ }
13764
+ });
13765
+ }
13766
+ function Ne(e, n) {
13767
+ let t = {};
13768
+ e.forEach((o, i) => {
13769
+ let s = {
13770
+ indegree: 0,
13771
+ in: [],
13772
+ out: [],
13773
+ vs: [o.v],
13774
+ i
13775
+ };
13776
+ o.barycenter !== void 0 && (s.barycenter = o.barycenter, s.weight = o.weight), t[o.v] = s;
13777
+ }), n.edges().forEach((o) => {
13778
+ let i = t[o.v], s = t[o.w];
13779
+ i !== void 0 && s !== void 0 && (s.indegree++, i.out.push(s));
13780
+ });
13781
+ return Dt(Object.values(t).filter((o) => !o.indegree));
13782
+ }
13783
+ function Dt(e) {
13784
+ let n = [];
13785
+ function t(o) {
13786
+ return (i) => {
13787
+ i.merged || (i.barycenter === void 0 || o.barycenter === void 0 || i.barycenter >= o.barycenter) && Yt(o, i);
13788
+ };
13789
+ }
13790
+ function r(o) {
13791
+ return (i) => {
13792
+ i.in.push(o), --i.indegree === 0 && e.push(i);
13793
+ };
13794
+ }
13795
+ for (; e.length;) {
13796
+ let o = e.pop();
13797
+ n.push(o), o.in.reverse().forEach(t(o)), o.out.forEach(r(o));
13798
+ }
13799
+ return n.filter((o) => !o.merged).map((o) => B(o, [
13800
+ "vs",
13801
+ "i",
13802
+ "barycenter",
13803
+ "weight"
13804
+ ]));
13805
+ }
13806
+ function Yt(e, n) {
13807
+ let t = 0, r = 0;
13808
+ e.weight && (t += e.barycenter * e.weight, r += e.weight), n.weight && (t += n.barycenter * n.weight, r += n.weight), e.vs = n.vs.concat(e.vs), e.barycenter = t / r, e.weight = r, e.i = Math.min(n.i, e.i), n.merged = !0;
13809
+ }
13810
+ function Ge(e, n, t, r, o) {
13811
+ let i = {}, s = null, a = null, l = o;
13812
+ typeof n == "boolean" ? (l = n, i = {}) : n && (i = n, s = t != null ? t : null, a = r != null ? r : null);
13813
+ let u = ze(e, (L) => Object.hasOwn(L, "barycenter")), d = u.lhs, c = u.rhs.sort((L, b) => b.i - L.i), f = [], h = 0, p = 0, E = 0;
13814
+ d.sort(Wt(a, s, !!l));
13815
+ for (let [L, b] of Object.entries(i)) {
13816
+ let g = d.findIndex((m) => m.vs[0] === L);
13817
+ d.splice(g + 1, 0, b);
13818
+ }
13819
+ E = Ln(f, c, E), d.forEach((L) => {
13820
+ E += L.vs.length, f.push(L.vs), h += L.barycenter * L.weight, p += L.weight, E = Ln(f, c, E);
13821
+ });
13822
+ let y = { vs: f.flat(1) };
13823
+ return p && (y.barycenter = h / p, y.weight = p), y;
13824
+ }
13825
+ function Ln(e, n, t) {
13826
+ let r;
13827
+ for (; n.length && (r = n[n.length - 1]).i <= t;) n.pop(), e.push(r.vs), t++;
13828
+ return t;
13829
+ }
13830
+ function Wt(e, n, t) {
13831
+ return (r, o) => {
13832
+ if (r.barycenter < o.barycenter) return -1;
13833
+ if (r.barycenter > o.barycenter) return 1;
13834
+ if (e && (typeof r.vs[0] == "string" || typeof o.vs[0] == "string")) {
13835
+ let a = ee(n, e.node(r.vs[0]), e.node(o.vs[0]));
13836
+ if (a !== 0) return a;
13837
+ }
13838
+ return t ? o.i - r.i : r.i - o.i;
13839
+ };
13840
+ }
13841
+ function te(e, n, t, r, o) {
13842
+ var L, b, g, m, w, k, _, C, j, I, S;
13843
+ let i = null, s = o;
13844
+ typeof r == "boolean" ? (s = r, i = null) : r !== void 0 && (i = r);
13845
+ let a = e.children(n), l = e.node(n), u = l ? l.borderLeft : void 0, d = l ? l.borderRight : void 0, c = {};
13846
+ u && (a = a.filter((G) => G !== u && G !== d));
13847
+ let f = we(e, a);
13848
+ f.forEach((G) => {
13849
+ if (e.children(G.v).length) {
13850
+ let { result: x } = te(e, G.v, t, i, s);
13851
+ c[G.v] = x, Object.hasOwn(x, "barycenter") && Xt(G, x);
13852
+ }
13853
+ });
13854
+ let h = Ne(f, t);
13855
+ Bt(h, c);
13856
+ let p = {}, E = !1;
13857
+ for (let G = 0; G < h.length; G++) for (let x = G + 1; x < h.length; x++) if (!(!h[G] || !h[x] || !((L = h[G]) != null && L.barycenter) || !((b = h[x]) != null && b.barycenter)) && ((g = h[G]) == null ? void 0 : g.barycenter) === h[x].barycenter) {
13858
+ let v = (w = (m = h[G]) == null ? void 0 : m.vs[0]) != null ? w : "", N = (_ = (k = h[x]) == null ? void 0 : k.vs[0]) != null ? _ : "", O = e.node(v), W = e.node(N);
13859
+ if (O.dummy === "edge" && W.dummy === "edge" && ((C = O.edgeObj) == null ? void 0 : C.v) === ((j = W.edgeObj) == null ? void 0 : j.v) && ((I = O.edgeObj) == null ? void 0 : I.w) === ((S = W.edgeObj) == null ? void 0 : S.w)) if (O.edgeLabel.reversed) {
13860
+ p[N] = h[G], h.splice(G, 1), G--;
13861
+ break;
13862
+ } else p[v] = h[x], h.splice(x, 1), x--;
13863
+ else E = !0;
13864
+ }
13865
+ let y = Ge(h, p, i, e, s);
13866
+ if (u && d) {
13867
+ y.vs = [
13868
+ u,
13869
+ y.vs,
13870
+ d
13871
+ ].flat(1);
13872
+ let G = e.predecessors(u);
13873
+ if (G && G.length) {
13874
+ let x = e.node(G[0]), v = e.predecessors(d), N = e.node(v[0]);
13875
+ Object.hasOwn(y, "barycenter") || (y.barycenter = 0, y.weight = 0), y.barycenter = (y.barycenter * y.weight + x.order + N.order) / (y.weight + 2), y.weight += 2;
13876
+ }
13877
+ }
13878
+ return Object.defineProperty(y, "result", {
13879
+ value: y,
13880
+ enumerable: !1,
13881
+ configurable: !0,
13882
+ writable: !0
13883
+ }), Object.defineProperty(y, "usedBias", {
13884
+ value: E,
13885
+ enumerable: !1,
13886
+ configurable: !0,
13887
+ writable: !0
13888
+ }), y;
13889
+ }
13890
+ function Bt(e, n) {
13891
+ e.forEach((t) => {
13892
+ t.vs = t.vs.flatMap((r) => n[r] ? n[r].vs : r);
13893
+ });
13894
+ }
13895
+ function Xt(e, n) {
13896
+ e.barycenter !== void 0 ? (e.barycenter = (e.barycenter * e.weight + n.barycenter * n.weight) / (e.weight + n.weight), e.weight += n.weight) : (e.barycenter = n.barycenter, e.weight = n.weight);
13897
+ }
13898
+ function ve(e, n, t, r) {
13899
+ r || (r = e.nodes());
13900
+ let o = zt(e), i = new T({ compound: !0 }).setGraph({ root: o }).setDefaultNodeLabel((s) => e.node(s));
13901
+ return r.forEach((s) => {
13902
+ let a = e.node(s), l = e.parent(s);
13903
+ if (a.rank === n || a.minRank <= n && n <= a.maxRank) {
13904
+ i.setNode(s), i.setParent(s, l || o);
13905
+ let u = e[t](s);
13906
+ u && u.forEach((d) => {
13907
+ let c = d.v === s ? d.w : d.v, f = i.edge(c, s), h = f !== void 0 ? f.weight : 0;
13908
+ i.setEdge(c, s, { weight: e.edge(d).weight + h });
13909
+ }), Object.hasOwn(a, "minRank") && i.setNode(s, {
13910
+ borderLeft: a.borderLeft[n],
13911
+ borderRight: a.borderRight[n]
13912
+ });
13913
+ }
13914
+ }), i;
13915
+ }
13916
+ function zt(e) {
13917
+ let n;
13918
+ for (; e.hasNode(n = $("_root")););
13919
+ return n;
13920
+ }
13921
+ function ke(e, n, t) {
13922
+ let r = {}, o;
13923
+ t.forEach((i) => {
13924
+ let s = e.parent(i), a, l;
13925
+ for (; s;) {
13926
+ if (a = e.parent(s), a ? (l = r[a], r[a] = s) : (l = o, o = s), l && l !== s) {
13927
+ n.setEdge(l, s);
13928
+ return;
13929
+ }
13930
+ s = a;
13931
+ }
13932
+ });
13933
+ }
13934
+ function re(e, n = {}, t = null) {
13935
+ if (typeof n.customOrder == "function") {
13936
+ n.customOrder(e, re);
13937
+ return;
13938
+ }
13939
+ let r = de(e), o = yn(e, A(1, r + 1), "inEdges"), i = yn(e, A(r - 1, -1, -1), "outEdges"), s = Le(e, t);
13940
+ if (wn(e, s), n.disableOptimalOrderHeuristic) return;
13941
+ let a = Number.POSITIVE_INFINITY, l, u = n.constraints || [];
13942
+ for (let d = 0, c = 0; c < 4; ++d, ++c) {
13943
+ Ht(d % 2 ? o : i, d % 4 >= 2, u, t), s = P(e);
13944
+ let f = ye(e, s);
13945
+ f < a ? (c = 0, l = Object.assign({}, s), a = f) : f === a && (l = structuredClone(s));
13946
+ }
13947
+ wn(e, l);
13948
+ }
13949
+ function yn(e, n, t) {
13950
+ let r = /* @__PURE__ */ new Map(), o = (i, s) => {
13951
+ r.has(i) || r.set(i, []), r.get(i).push(s);
13952
+ };
13953
+ for (let i of e.nodes()) {
13954
+ let s = e.node(i);
13955
+ if (typeof s.rank == "number" && o(s.rank, i), typeof s.minRank == "number" && typeof s.maxRank == "number") for (let a = s.minRank; a <= s.maxRank; a++) a !== s.rank && o(a, i);
13956
+ }
13957
+ return n.map(function(i) {
13958
+ return ve(e, i, t, r.get(i) || []);
13959
+ });
13960
+ }
13961
+ function Ht(e, n, t, r) {
13962
+ let o = !0, i = new T();
13963
+ e.forEach(function(s) {
13964
+ t.forEach((d) => i.setEdge(d.left, d.right));
13965
+ let a = s.graph().root, { result: l, usedBias: u } = te(s, a, i, r, o);
13966
+ n && u && (o = !o), l.vs.forEach((d, c) => s.node(d).order = c), ke(s, i, l.vs);
13967
+ });
13968
+ }
13969
+ function wn(e, n) {
13970
+ Object.values(n).forEach((t) => t.forEach((r, o) => e.node(r).order = o));
13971
+ }
13972
+ function qt(e, n) {
13973
+ let t = {};
13974
+ function r(o, i) {
13975
+ let s = 0, a = 0, l = o.length, u = i[i.length - 1];
13976
+ return i.forEach((d, c) => {
13977
+ let f = Ut(e, d), h = f ? e.node(f).order : l;
13978
+ (f || d === u) && (i.slice(a, c + 1).forEach((p) => {
13979
+ let E = e.predecessors(p);
13980
+ E && E.forEach((y) => {
13981
+ let L = e.node(y), b = L.order;
13982
+ (b < s || h < b) && !(L.dummy && e.node(p).dummy) && Gn(t, y, p);
13983
+ });
13984
+ }), a = c + 1, s = h);
13985
+ }), i;
13986
+ }
13987
+ return n.length && n.reduce(r), t;
13988
+ }
13989
+ function $t(e, n) {
13990
+ let t = {};
13991
+ function r(i, s, a, l, u) {
13992
+ A(s, a).forEach((d) => {
13993
+ let c = i[d];
13994
+ if (c !== void 0 && e.node(c).dummy) {
13995
+ let f = e.predecessors(c);
13996
+ f && f.forEach((h) => {
13997
+ if (h === void 0) return;
13998
+ let p = e.node(h);
13999
+ p.dummy && (p.order < l || p.order > u) && Gn(t, h, c);
14000
+ });
14001
+ }
14002
+ });
14003
+ }
14004
+ function o(i, s) {
14005
+ let a = -1, l = -1, u = 0;
14006
+ return s.forEach((d, c) => {
14007
+ if (e.node(d).dummy === "border") {
14008
+ let f = e.predecessors(d);
14009
+ if (f && f.length) {
14010
+ let h = f[0];
14011
+ if (h === void 0) return;
14012
+ l = e.node(h).order, r(s, u, c, a, l), u = c, a = l;
14013
+ }
14014
+ }
14015
+ r(s, u, s.length, l, i.length);
14016
+ }), s;
14017
+ }
14018
+ return n.length && n.reduce(o), t;
14019
+ }
14020
+ function Ut(e, n) {
14021
+ if (e.node(n).dummy) {
14022
+ let t = e.predecessors(n);
14023
+ if (t) return t.find((r) => e.node(r).dummy);
14024
+ }
14025
+ }
14026
+ function Gn(e, n, t) {
14027
+ if (n > t) {
14028
+ let o = n;
14029
+ n = t, t = o;
14030
+ }
14031
+ let r = e[n];
14032
+ r || (e[n] = r = {}), r[t] = !0;
14033
+ }
14034
+ function Jt(e, n, t) {
14035
+ if (n > t) {
14036
+ let o = n;
14037
+ n = t, t = o;
14038
+ }
14039
+ let r = e[n];
14040
+ return r !== void 0 && Object.hasOwn(r, t);
14041
+ }
14042
+ function Kt(e, n, t, r, o) {
14043
+ let i = {}, s = {}, a = {};
14044
+ return n.forEach((l) => {
14045
+ l.forEach((u, d) => {
14046
+ i[u] = u, s[u] = u, a[u] = d;
14047
+ });
14048
+ }), n.forEach((l) => {
14049
+ let u = -1, d = -1, c = !1, f = l, h = l.findIndex((p) => (o == null ? void 0 : o.includes(p)) || Nn(p, e, o));
14050
+ h > 0 && (f = [
14051
+ l[h],
14052
+ ...l.slice(0, h),
14053
+ ...l.slice(h + 1)
14054
+ ], c = !0), f.forEach((p) => {
14055
+ var y;
14056
+ let E = r(p);
14057
+ if (E && E.length) {
14058
+ o != null && o.includes(p) && (E = E.filter((g) => Nn(g, e, o)));
14059
+ let L = E.sort((g, m) => {
14060
+ let w = a[g], k = a[m];
14061
+ return (w !== void 0 ? w : 0) - (k !== void 0 ? k : 0);
14062
+ }), b = (L.length - 1) / 2;
14063
+ for (let g = Math.floor(b), m = Math.ceil(b); g <= m; ++g) {
14064
+ let w = L[g];
14065
+ if (w === void 0) continue;
14066
+ let k = a[w];
14067
+ if (k !== void 0 && s[p] === p && u < k && a[w] !== d && !Jt(t, p, w)) {
14068
+ let _ = i[w];
14069
+ _ !== void 0 && (s[w] = p, s[p] = i[p] = _, u = k, c && (u = -1, d = (y = a[w]) != null ? y : -1, c = !1));
14070
+ }
14071
+ }
14072
+ }
14073
+ });
14074
+ }), {
14075
+ root: i,
14076
+ align: s
14077
+ };
14078
+ }
14079
+ function Qt(e, n, t, r, o = !1) {
14080
+ let i = {}, s = Zt(e, n, t, o), a = o ? "borderLeft" : "borderRight";
14081
+ function l(h, p) {
14082
+ let E = s.nodes().slice(), y = {}, L = E.pop();
14083
+ for (; L;) {
14084
+ if (y[L]) h(L);
14085
+ else {
14086
+ y[L] = !0, E.push(L);
14087
+ for (let b of p(L)) E.push(b);
14088
+ }
14089
+ L = E.pop();
14090
+ }
14091
+ }
14092
+ function u(h) {
14093
+ let p = s.inEdges(h);
14094
+ p ? i[h] = p.reduce((E, y) => {
14095
+ var g;
14096
+ let L = (g = i[y.v]) != null ? g : 0, b = s.edge(y);
14097
+ return Math.max(E, L + (b !== void 0 ? b : 0));
14098
+ }, 0) : i[h] = 0;
14099
+ }
14100
+ function d(h) {
14101
+ let p = s.outEdges(h), E = Number.POSITIVE_INFINITY;
14102
+ p && (E = p.reduce((L, b) => {
14103
+ let g = i[b.w], m = s.edge(b);
14104
+ return Math.min(L, (g !== void 0 ? g : 0) - (m !== void 0 ? m : 0));
14105
+ }, Number.POSITIVE_INFINITY));
14106
+ let y = e.node(h);
14107
+ E !== Number.POSITIVE_INFINITY && y.borderType !== a && (i[h] = Math.max(i[h] !== void 0 ? i[h] : 0, E));
14108
+ }
14109
+ function c(h) {
14110
+ return s.predecessors(h) || [];
14111
+ }
14112
+ function f(h) {
14113
+ return s.successors(h) || [];
14114
+ }
14115
+ return l(u, c), l(d, f), Object.keys(r).forEach((h) => {
14116
+ var E;
14117
+ let p = t[h];
14118
+ p !== void 0 && (i[h] = (E = i[p]) != null ? E : 0);
14119
+ }), i;
14120
+ }
14121
+ function Zt(e, n, t, r) {
14122
+ let o = new T(), i = e.graph(), s = rr(i.nodesep, i.edgesep, r);
14123
+ return n.forEach((a) => {
14124
+ let l;
14125
+ a.forEach((u) => {
14126
+ let d = t[u];
14127
+ if (d !== void 0) {
14128
+ if (o.setNode(d), l !== void 0) {
14129
+ let c = t[l];
14130
+ if (c !== void 0) {
14131
+ let f = o.edge(c, d);
14132
+ o.setEdge(c, d, Math.max(s(e, u, l), f || 0));
14133
+ }
14134
+ }
14135
+ l = u;
14136
+ }
14137
+ });
14138
+ }), o;
14139
+ }
14140
+ function er(e, n) {
14141
+ return Object.values(n).reduce((t, r) => {
14142
+ let o = Number.NEGATIVE_INFINITY, i = Number.POSITIVE_INFINITY;
14143
+ Object.entries(r).forEach(([a, l]) => {
14144
+ let u = or(e, a) / 2;
14145
+ o = Math.max(l + u, o), i = Math.min(l - u, i);
14146
+ });
14147
+ let s = o - i;
14148
+ return s < t[0] && (t = [s, r]), t;
14149
+ }, [Number.POSITIVE_INFINITY, null])[1];
14150
+ }
14151
+ function nr(e, n) {
14152
+ let t = Object.values(n), r = R(Math.min, t), o = R(Math.max, t);
14153
+ ["u", "d"].forEach((i) => {
14154
+ ["l", "r"].forEach((s) => {
14155
+ let a = i + s, l = e[a];
14156
+ if (!l || l === n) return;
14157
+ let u = Object.values(l), d = r - R(Math.min, u);
14158
+ s !== "l" && (d = o - R(Math.max, u)), d && (e[a] = X(l, (c) => c + d));
14159
+ });
14160
+ });
14161
+ }
14162
+ function tr(e, n = void 0) {
14163
+ let t = e.ul;
14164
+ return t ? X(t, (r, o) => {
14165
+ var s, a;
14166
+ if (n) {
14167
+ let u = e[n.toLowerCase()];
14168
+ if (u && u[o] !== void 0) return u[o];
14169
+ }
14170
+ let i = Object.values(e).map((l) => {
14171
+ let u = l[o];
14172
+ return u !== void 0 ? u : 0;
14173
+ }).sort((l, u) => l - u);
14174
+ return (((s = i[1]) != null ? s : 0) + ((a = i[2]) != null ? a : 0)) / 2;
14175
+ }) : {};
14176
+ }
14177
+ function vn(e, n) {
14178
+ let t = P(e), r = Object.assign(qt(e, t), $t(e, t)), o = {}, i;
14179
+ ["u", "d"].forEach((a) => {
14180
+ i = a === "u" ? t : Object.values(t).reverse(), ["l", "r"].forEach((l) => {
14181
+ l === "r" && (i = i.map((f) => Object.values(f).reverse()));
14182
+ let d = Kt(e, i, r, (f) => (a === "u" ? e.predecessors(f) : e.successors(f)) || [], n), c = Qt(e, i, d.root, d.align, l === "r");
14183
+ l === "r" && (c = X(c, (f) => -f)), o[a + l] = c;
14184
+ });
14185
+ });
14186
+ return nr(o, er(e, o)), tr(o, e.graph().align);
14187
+ }
14188
+ function rr(e, n, t) {
14189
+ return (r, o, i) => {
14190
+ let s = r.node(o), a = r.node(i), l = 0, u;
14191
+ if (l += s.width / 2, Object.hasOwn(s, "labelpos")) switch (s.labelpos.toLowerCase()) {
14192
+ case "l":
14193
+ u = -s.width / 2;
14194
+ break;
14195
+ case "r":
14196
+ u = s.width / 2;
14197
+ break;
14198
+ }
14199
+ if (u && (l += t ? u : -u), u = void 0, l += (s.dummy ? n : e) / 2, l += (a.dummy ? n : e) / 2, l += a.width / 2, Object.hasOwn(a, "labelpos")) switch (a.labelpos.toLowerCase()) {
14200
+ case "l":
14201
+ u = a.width / 2;
14202
+ break;
14203
+ case "r":
14204
+ u = -a.width / 2;
14205
+ break;
14206
+ }
14207
+ return u && (l += t ? u : -u), l;
14208
+ };
14209
+ }
14210
+ function or(e, n) {
14211
+ return e.node(n).width;
14212
+ }
14213
+ function Nn(e, n, t) {
14214
+ var s;
14215
+ if (!t) return !1;
14216
+ let r = (s = n.node(e)) == null ? void 0 : s.edgeObj;
14217
+ if (!r || n.node(e).edgeLabel.reversed) return !1;
14218
+ let o = t.indexOf(r == null ? void 0 : r.v), i = t.indexOf(r == null ? void 0 : r.w);
14219
+ return o !== -1 && i !== -1 && o === (i + 1) % t.length || o === (i - 1) % t.length;
14220
+ }
14221
+ function kn(e, n) {
14222
+ e = Z(e), ir(e), Object.entries(vn(e, n)).forEach(([t, r]) => e.node(t).x = r);
14223
+ }
14224
+ function ir(e) {
14225
+ let n = P(e), t = e.graph(), r = t.ranksep, o = t.rankalign, i = 0;
14226
+ n.forEach((s) => {
14227
+ let a = s.reduce((l, u) => {
14228
+ var c;
14229
+ let d = (c = e.node(u).height) != null ? c : 0;
14230
+ return l > d ? l : d;
14231
+ }, 0);
14232
+ s.forEach((l) => {
14233
+ let u = e.node(l);
14234
+ o === "top" ? u.y = i + u.height / 2 : o === "bottom" ? u.y = i + a - u.height / 2 : u.y = i + a / 2;
14235
+ }), i += a + r;
14236
+ });
14237
+ }
14238
+ var xn = /* @__PURE__ */ new WeakMap();
14239
+ function Oe(e, n = {}) {
14240
+ return Rn(e, q, n), e;
14241
+ }
14242
+ function _n(e, n, t) {
14243
+ let r = n;
14244
+ for (; r !== void 0;) {
14245
+ let o = e.parent(r);
14246
+ if (o === t) return r;
14247
+ r = o;
14248
+ }
14249
+ }
14250
+ function Rn(e, n, t) {
14251
+ var L;
14252
+ let r = e.nodes().filter((b) => e.children(b).length), o = {};
14253
+ r.forEach((b) => {
14254
+ let g = e.node(b);
14255
+ if (g && g.rankdir) {
14256
+ let m = new T({
14257
+ multigraph: !0,
14258
+ compound: !0
14259
+ });
14260
+ m.setGraph({ rankdir: g.rankdir });
14261
+ let w = e.children(b);
14262
+ w.forEach((v) => {
14263
+ let N = { ...e.node(v) };
14264
+ m.setNode(v, N);
14265
+ let O = e.parent(v);
14266
+ O && O !== b && w.includes(O) && m.setParent(v, O);
14267
+ });
14268
+ let k = /* @__PURE__ */ new Set();
14269
+ e.edges().forEach((v) => {
14270
+ let N = _n(e, v.v, b), O = _n(e, v.w, b);
14271
+ if (N && O && N !== O) {
14272
+ let W = `${N}\0${O}`;
14273
+ k.has(W) || (k.add(W), m.setEdge(N, O, { ...e.edge(v) }));
14274
+ }
14275
+ }), Rn(m, n, t);
14276
+ let _ = jn(m);
14277
+ On(_, n, t, null), Cn(m, _);
14278
+ let C = 1 / 0, j = 1 / 0, I = -1 / 0, S = -1 / 0;
14279
+ m.nodes().forEach((v) => {
14280
+ if (v === b) return;
14281
+ let N = m.node(v);
14282
+ N && typeof N.x == "number" && typeof N.y == "number" && typeof N.width == "number" && typeof N.height == "number" && (C = Math.min(C, N.x - N.width / 2), I = Math.max(I, N.x + N.width / 2), j = Math.min(j, N.y - N.height / 2), S = Math.max(S, N.y + N.height / 2));
14283
+ }), (!isFinite(C) || !isFinite(j) || !isFinite(I) || !isFinite(S)) && (C = j = 0, I = S = 0);
14284
+ let G = I - C, x = S - j;
14285
+ o[b] = {
14286
+ minX: C,
14287
+ minY: j,
14288
+ maxX: I,
14289
+ maxY: S,
14290
+ width: G,
14291
+ height: x,
14292
+ offsetX: C,
14293
+ offsetY: j
14294
+ }, g._dagreClusterSubgraph = m;
14295
+ }
14296
+ });
14297
+ let i = [], s = (b) => {
14298
+ let g = [], m = (e.children(b) || []).filter((w) => w !== b);
14299
+ for (; m.length > 0;) {
14300
+ let w = m.shift();
14301
+ g.push(w), (e.children(w) || []).filter((k) => k !== w).forEach((k) => m.push(k));
14302
+ }
14303
+ return g;
14304
+ }, a = /* @__PURE__ */ new Map();
14305
+ r.forEach((b) => {
14306
+ let g = e.node(b);
14307
+ g && g.rankdir && o[b] && a.set(b, (e.children(b) || []).filter((m) => m !== b));
14308
+ });
14309
+ let l = new Set([...a.values()].flat()), u = /* @__PURE__ */ new Map();
14310
+ a.forEach((b, g) => {
14311
+ l.has(g) || u.set(g, s(g));
14312
+ });
14313
+ let d = new Set([...u.values()].flat()), c = (b) => {
14314
+ for (let [g, m] of u) if (m.includes(b)) return g;
14315
+ return b;
14316
+ }, f = [];
14317
+ e.edges().forEach((b) => {
14318
+ (d.has(b.v) || d.has(b.w)) && f.push({
14319
+ edge: b,
14320
+ label: e.edge(b)
14321
+ });
14322
+ });
14323
+ let h = /* @__PURE__ */ new Map();
14324
+ d.forEach((b) => {
14325
+ let g = e.parent(b);
14326
+ h.set(b, typeof g == "string" ? g : void 0);
14327
+ }), u.forEach((b, g) => {
14328
+ let m = e.node(g), w = [];
14329
+ b.forEach((C) => {
14330
+ let j = e.node(C);
14331
+ j && (w.push({
14332
+ id: C,
14333
+ node: j,
14334
+ parent: h.get(C)
14335
+ }), e.removeNode(C));
14336
+ });
14337
+ let k = f.filter(({ edge: C }) => b.includes(C.v) || b.includes(C.w)), _ = o[g];
14338
+ m && (i.push({
14339
+ clusterId: g,
14340
+ subgraph: m._dagreClusterSubgraph,
14341
+ bounds: _,
14342
+ children: b,
14343
+ removedNodes: w,
14344
+ removedEdges: k
14345
+ }), m.width = _.width, m.height = _.height);
14346
+ });
14347
+ let p = /* @__PURE__ */ new Set();
14348
+ f.forEach(({ edge: b, label: g }) => {
14349
+ let m = c(b.v), w = c(b.w);
14350
+ if (m !== w && e.hasNode(m) && e.hasNode(w)) {
14351
+ let k = `${m}\0${w}`;
14352
+ p.has(k) || (p.add(k), e.setEdge(m, w, {
14353
+ ...g,
14354
+ width: 0,
14355
+ height: 0
14356
+ }));
14357
+ }
14358
+ });
14359
+ let E = jn(e), y = On(E, n, t, (L = xn.get(e)) != null ? L : null);
14360
+ xn.set(e, y), Cn(e, E), p.forEach((b) => {
14361
+ let g = b.indexOf("\0"), m = b.slice(0, g), w = b.slice(g + 1);
14362
+ e.hasEdge(m, w) && e.removeEdge(m, w);
14363
+ }), i.forEach(({ clusterId: b, subgraph: g, bounds: m, removedNodes: w, removedEdges: k }) => {
14364
+ var G, x;
14365
+ let _ = e.node(b), C = (G = _ == null ? void 0 : _.x) != null ? G : 0, j = (x = _ == null ? void 0 : _.y) != null ? x : 0, I = (m.minX + m.maxX) / 2, S = (m.minY + m.maxY) / 2;
14366
+ w.forEach(({ id: v, node: N, parent: O }) => {
14367
+ e.setNode(v, N), O !== void 0 && e.setParent(v, O);
14368
+ }), k.forEach(({ edge: v, label: N }) => {
14369
+ e.setEdge(v, N);
14370
+ }), g.nodes().forEach((v) => {
14371
+ if (v === b) return;
14372
+ let N = g.node(v), O = e.node(v);
14373
+ O && N && typeof N.x == "number" && typeof N.y == "number" && (O.x = C + (N.x - I), O.y = j + (N.y - S));
14374
+ }), delete _._dagreClusterSubgraph;
14375
+ }), r.forEach((b) => {
14376
+ var w, k;
14377
+ let g = e.node(b), m = o[b];
14378
+ if (g && g.rankdir && g._dagreClusterSubgraph && m) {
14379
+ let _ = g._dagreClusterSubgraph, C = (w = g.x) != null ? w : 0, j = (k = g.y) != null ? k : 0, I = (m.minX + m.maxX) / 2, S = (m.minY + m.maxY) / 2;
14380
+ _.nodes().forEach((G) => {
14381
+ if (G === b) return;
14382
+ let x = _.node(G), v = e.node(G);
14383
+ if (v && x && typeof x.x == "number" && typeof x.y == "number") {
14384
+ let N = x.x - I, O = x.y - S;
14385
+ v.x = C + N, v.y = j + O;
14386
+ }
14387
+ }), delete g._dagreClusterSubgraph;
14388
+ }
14389
+ });
14390
+ }
14391
+ function On(e, n, t, r = null) {
14392
+ var l, u;
14393
+ let o = (t == null ? void 0 : t.useDynamic) !== !1, i = o && (l = r == null ? void 0 : r.graph) != null ? l : null, s = o && (u = r == null ? void 0 : r.rawNodes) != null ? u : null;
14394
+ n(" makeSpaceForEdgeLabels", () => hr(e)), n(" removeSelfEdges", () => Nr(e)), n(" acyclic", () => Ue(e, i)), n(" nestingGraph.run", () => un(e)), n(" rank", () => dn(Z(e))), n(" injectEdgeLabelProxies", () => br(e)), n(" removeEmptyRanks", () => Be(e)), n(" nestingGraph.cleanup", () => fn(e)), n(" normalizeRanks", () => We(e)), n(" assignRankMinMax", () => gr(e)), n(" removeEdgeLabelProxies", () => pr(e)), n(" normalize.run", () => Ke(e)), n(" parentDummyChains", () => ln(e)), n(" addBorderSegments", () => bn(e)), n(" order", () => re(e, t, s)), n(" insertSelfEdges", () => Gr(e)), n(" adjustCoordinateSystem", () => pn(e)), n(" position", () => kn(e, t.corePath)), n(" positionSelfEdges", () => vr(e));
14395
+ let a = JSON.parse(JSON.stringify(e._nodes));
14396
+ return n(" removeBorderNodes", () => wr(e)), n(" normalize.undo", () => Qe(e)), n(" fixupEdgeLabelCoords", () => Lr(e)), n(" undoCoordinateSystem", () => mn(e)), n(" translateGraph", () => mr(e)), n(" assignNodeIntersects", () => Er(e)), n(" reversePoints", () => yr(e)), n(" acyclic.undo", () => Je(e)), {
14397
+ graph: e,
14398
+ rawNodes: a
14399
+ };
14400
+ }
14401
+ function Cn(e, n) {
14402
+ e.nodes().forEach((t) => {
14403
+ let r = e.node(t), o = n.node(t);
14404
+ r && (r.x = o.x, r.y = o.y, r.order = o.order, r.rank = o.rank, n.children(t).length && (r.width = o.width, r.height = o.height));
14405
+ }), e.edges().forEach((t) => {
14406
+ let r = e.edge(t), o = n.edge(t);
14407
+ r.points = o.points, Object.hasOwn(o, "x") && (r.x = o.x, r.y = o.y);
14408
+ }), e.graph().width = n.graph().width, e.graph().height = n.graph().height;
14409
+ }
14410
+ var sr = [
14411
+ "nodesep",
14412
+ "edgesep",
14413
+ "ranksep",
14414
+ "marginx",
14415
+ "marginy"
14416
+ ];
14417
+ var ar = {
14418
+ ranksep: 50,
14419
+ edgesep: 20,
14420
+ nodesep: 50,
14421
+ rankdir: "TB",
14422
+ rankalign: "center"
14423
+ };
14424
+ var dr = [
14425
+ "acyclicer",
14426
+ "ranker",
14427
+ "rankdir",
14428
+ "align",
14429
+ "rankalign"
14430
+ ];
14431
+ var lr = [
14432
+ "width",
14433
+ "height",
14434
+ "rank"
14435
+ ];
14436
+ var Tn = {
14437
+ width: 0,
14438
+ height: 0
14439
+ };
14440
+ var ur = [
14441
+ "minlen",
14442
+ "weight",
14443
+ "width",
14444
+ "height",
14445
+ "labeloffset"
14446
+ ];
14447
+ var cr = {
14448
+ minlen: 1,
14449
+ weight: 1,
14450
+ width: 0,
14451
+ height: 0,
14452
+ labeloffset: 10,
14453
+ labelpos: "r"
14454
+ };
14455
+ var fr = ["labelpos"];
14456
+ function jn(e) {
14457
+ let n = new T({
14458
+ multigraph: !0,
14459
+ compound: !0
14460
+ }), t = _e(e.graph());
14461
+ return n.setGraph(Object.assign({}, ar, xe(t, sr), B(t, dr))), e.nodes().forEach((r) => {
14462
+ let i = xe(_e(e.node(r)), lr);
14463
+ Object.keys(Tn).forEach((a) => {
14464
+ i[a] === void 0 && (i[a] = Tn[a]);
14465
+ }), n.setNode(r, i);
14466
+ let s = e.parent(r);
14467
+ s !== void 0 && n.setParent(r, s);
14468
+ }), e.edges().forEach((r) => {
14469
+ let o = _e(e.edge(r));
14470
+ n.setEdge(r, Object.assign({}, cr, xe(o, ur), B(o, fr)));
14471
+ }), n;
14472
+ }
14473
+ function hr(e) {
14474
+ let n = e.graph();
14475
+ n.ranksep /= 2, e.edges().forEach((t) => {
14476
+ var o;
14477
+ let r = e.edge(t);
14478
+ r.minlen *= 2, ((o = r.labelpos) != null ? o : "r").toLowerCase() !== "c" && (n.rankdir === "TB" || n.rankdir === "BT" ? r.width += r.labeloffset : r.height += r.labeloffset);
14479
+ });
14480
+ }
14481
+ function br(e) {
14482
+ e.edges().forEach((n) => {
14483
+ let t = e.edge(n);
14484
+ if (t.width && t.height) {
14485
+ let r = e.node(n.v);
14486
+ M(e, "edge-proxy", {
14487
+ rank: (e.node(n.w).rank - r.rank) / 2 + r.rank,
14488
+ e: n
14489
+ }, "_ep");
14490
+ }
14491
+ });
14492
+ }
14493
+ function gr(e) {
14494
+ let n = 0;
14495
+ e.nodes().forEach((t) => {
14496
+ let r = e.node(t);
14497
+ r.borderTop && (r.minRank = e.node(r.borderTop).rank, r.maxRank = e.node(r.borderBottom).rank, n = Math.max(n, r.maxRank));
14498
+ }), e.graph().maxRank = n;
14499
+ }
14500
+ function pr(e) {
14501
+ e.nodes().forEach((n) => {
14502
+ let t = e.node(n);
14503
+ if (t.dummy === "edge-proxy") {
14504
+ let r = t;
14505
+ e.edge(r.e).labelRank = t.rank, e.removeNode(n);
14506
+ }
14507
+ });
14508
+ }
14509
+ function mr(e) {
14510
+ let n = Number.POSITIVE_INFINITY, t = 0, r = Number.POSITIVE_INFINITY, o = 0, i = e.graph(), s = i.marginx || 0, a = i.marginy || 0;
14511
+ function l(u) {
14512
+ let d = u.x, c = u.y, f = u.width, h = u.height;
14513
+ n = Math.min(n, d - f / 2), t = Math.max(t, d + f / 2), r = Math.min(r, c - h / 2), o = Math.max(o, c + h / 2);
14514
+ }
14515
+ e.nodes().forEach((u) => l(e.node(u))), e.edges().forEach((u) => {
14516
+ let d = e.edge(u);
14517
+ Object.hasOwn(d, "x") && l(d);
14518
+ }), n -= s, r -= a, e.nodes().forEach((u) => {
14519
+ let d = e.node(u);
14520
+ d.x -= n, d.y -= r;
14521
+ }), e.edges().forEach((u) => {
14522
+ let d = e.edge(u);
14523
+ d.points.forEach((c) => {
14524
+ c.x -= n, c.y -= r;
14525
+ }), Object.hasOwn(d, "x") && (d.x -= n), Object.hasOwn(d, "y") && (d.y -= r);
14526
+ }), i.width = t - n + s, i.height = o - r + a;
14527
+ }
14528
+ function Er(e) {
14529
+ e.edges().forEach((n) => {
14530
+ if (n.v === n.w) return;
14531
+ let t = e.edge(n), r = e.node(n.v), o = e.node(n.w), i, s;
14532
+ t.points ? (i = t.points[0], s = t.points[t.points.length - 1]) : (t.points = [], i = o, s = r), t.points.unshift(se(r, i)), t.points.push(se(o, s));
14533
+ });
14534
+ }
14535
+ function Lr(e) {
14536
+ e.edges().forEach((n) => {
14537
+ let t = e.edge(n);
14538
+ if (Object.hasOwn(t, "x")) switch ((t.labelpos === "l" || t.labelpos === "r") && (t.width -= t.labeloffset), t.labelpos) {
14539
+ case "l":
14540
+ t.x -= t.width / 2 + t.labeloffset;
14541
+ break;
14542
+ case "r":
14543
+ t.x += t.width / 2 + t.labeloffset;
14544
+ break;
14545
+ }
14546
+ });
14547
+ }
14548
+ function yr(e) {
14549
+ e.edges().forEach((n) => {
14550
+ let t = e.edge(n);
14551
+ t.reversed && t.points.reverse();
14552
+ });
14553
+ }
14554
+ function wr(e) {
14555
+ e.nodes().forEach((n) => {
14556
+ if (e.children(n).length) {
14557
+ let t = e.node(n), r = e.node(t.borderTop), o = e.node(t.borderBottom), i = e.node(t.borderLeft[t.borderLeft.length - 1]), s = e.node(t.borderRight[t.borderRight.length - 1]);
14558
+ t.width = Math.abs(s.x - i.x), t.height = Math.abs(o.y - r.y), t.x = i.x + t.width / 2, t.y = r.y + t.height / 2;
14559
+ }
14560
+ }), e.nodes().forEach((n) => {
14561
+ e.node(n).dummy === "border" && e.removeNode(n);
14562
+ });
14563
+ }
14564
+ function Nr(e) {
14565
+ e.edges().forEach((n) => {
14566
+ if (n.v === n.w) {
14567
+ let t = e.node(n.v);
14568
+ t.selfEdges || (t.selfEdges = []), t.selfEdges.push({
14569
+ e: n,
14570
+ label: e.edge(n)
14571
+ }), e.removeEdge(n);
14572
+ }
14573
+ });
14574
+ }
14575
+ function Gr(e) {
14576
+ P(e).forEach((t) => {
14577
+ let r = 0;
14578
+ t.forEach((o, i) => {
14579
+ let s = e.node(o);
14580
+ typeof s.rank != "number" && (s.rank = 0), s.order = i + r, (s.selfEdges || []).forEach((a) => {
14581
+ M(e, "selfedge", {
14582
+ width: a.label.width,
14583
+ height: a.label.height,
14584
+ rank: s.rank,
14585
+ order: i + ++r,
14586
+ e: a.e,
14587
+ edgeLabel: a.label
14588
+ }, "_se"), (!Array.isArray(a.label.points) || a.label.points.length !== 7) && (a.label.points = [
14589
+ {
14590
+ x: 0,
14591
+ y: -10
14592
+ },
14593
+ {
14594
+ x: 0,
14595
+ y: -10
14596
+ },
14597
+ {
14598
+ x: 0,
14599
+ y: 0
14600
+ },
14601
+ {
14602
+ x: 0,
14603
+ y: 10
14604
+ },
14605
+ {
14606
+ x: 0,
14607
+ y: 10
14608
+ },
14609
+ {
14610
+ x: 0,
14611
+ y: 0
14612
+ },
14613
+ {
14614
+ x: 0,
14615
+ y: 0
14616
+ }
14617
+ ]);
14618
+ }), delete s.selfEdges;
14619
+ });
14620
+ });
14621
+ }
14622
+ function vr(e) {
14623
+ e.nodes().forEach((n) => {
14624
+ let t = e.node(n), r = (o) => typeof o == "number" && isFinite(o);
14625
+ if (t.dummy === "selfedge") {
14626
+ let o = t, i = e.node(o.e.v), s = r(i == null ? void 0 : i.x) ? i.x : 0, a = r(i == null ? void 0 : i.y) ? i.y : 0, l = r(i == null ? void 0 : i.width) ? i.width : 0, u = r(i == null ? void 0 : i.height) ? i.height : 0, d = r(t.x) ? t.x : s, c = r(t.y) ? t.y : a, f = l / 2, h = u / 2;
14627
+ o.edgeLabel.points = [
14628
+ {
14629
+ x: d + f,
14630
+ y: c - h
14631
+ },
14632
+ {
14633
+ x: d + f,
14634
+ y: c - h
14635
+ },
14636
+ {
14637
+ x: d,
14638
+ y: c
14639
+ },
14640
+ {
14641
+ x: d - f,
14642
+ y: c + h
14643
+ },
14644
+ {
14645
+ x: d - f,
14646
+ y: c + h
14647
+ },
14648
+ {
14649
+ x: d,
14650
+ y: c
14651
+ },
14652
+ {
14653
+ x: d,
14654
+ y: c
14655
+ }
14656
+ ], o.edgeLabel.x = d, o.edgeLabel.y = c, e.setEdge(o.e, o.edgeLabel), e.removeNode(n);
14657
+ } else t && Array.isArray(t.selfEdges) && t.selfEdges.forEach((o) => {
14658
+ if (!Array.isArray(o.label.points) || o.label.points.length !== 7) {
14659
+ let i = r(t.x) ? t.x : 0, s = r(t.y) ? t.y : 0, a = r(t.width) ? t.width : 0, l = r(t.height) ? t.height : 0, u = a / 2, d = l / 2;
14660
+ o.label.points = [
14661
+ {
14662
+ x: i + u,
14663
+ y: s - d
14664
+ },
14665
+ {
14666
+ x: i + u,
14667
+ y: s - d
14668
+ },
14669
+ {
14670
+ x: i,
14671
+ y: s
14672
+ },
14673
+ {
14674
+ x: i - u,
14675
+ y: s + d
14676
+ },
14677
+ {
14678
+ x: i - u,
14679
+ y: s + d
14680
+ },
14681
+ {
14682
+ x: i,
14683
+ y: s
14684
+ },
14685
+ {
14686
+ x: i,
14687
+ y: s
14688
+ }
14689
+ ];
14690
+ }
14691
+ });
14692
+ });
14693
+ }
14694
+ function xe(e, n) {
14695
+ return X(B(e, n), Number);
14696
+ }
14697
+ function _e(e) {
14698
+ let n = {};
14699
+ return e && Object.entries(e).forEach(([t, r]) => {
14700
+ typeof t == "string" && (t = t.toLowerCase()), n[t] = r;
14701
+ }), n;
14702
+ }
14703
+ /*! For license information please see dagre.esm.js.LEGAL.txt */
14704
+ //#endregion
14705
+ //#region src/canvas/browser/base/graphLayout.ts
14706
+ /** The measured dependency layout shared by canvas arrangement and image export. */
14707
+ function graphLayout(nodes, edges, direction) {
14708
+ if (!nodes.length) return {
14709
+ nodes: [],
14710
+ edges: []
14711
+ };
14712
+ const graph = new ie.Graph().setDefaultEdgeLabel(() => ({}));
14713
+ graph.setGraph({
14714
+ rankdir: direction === "vertical" ? "TB" : "LR",
14715
+ ranksep: direction === "vertical" ? 48 : 80
14716
+ });
14717
+ const singles = new Set(nodes.map((node) => node.id));
14718
+ for (const node of nodes) graph.setNode(node.id, {
14719
+ width: node.width,
14720
+ height: node.height
14721
+ });
14722
+ const connections = edges.filter((edge) => graph.hasNode(edge.source) && graph.hasNode(edge.target));
14723
+ for (const edge of connections) {
14724
+ singles.delete(edge.source);
14725
+ singles.delete(edge.target);
14726
+ graph.setEdge(edge.source, edge.target);
14727
+ }
14728
+ const isolated = [...singles];
14729
+ for (let start = 0; start < isolated.length; start += 10) for (let index = start; index < Math.min(start + 9, isolated.length - 1); index++) graph.setEdge(isolated[index], isolated[index + 1]);
14730
+ const constraints = [];
14731
+ const ordering = new ie.Graph();
14732
+ for (const node of nodes) {
14733
+ const targets = [...new Set(node.branchHandles?.flatMap((handle) => connections.filter((edge) => edge.source === node.id && edge.sourceHandle === handle).map((edge) => edge.target)))];
14734
+ for (let index = 1; index < targets.length; index++) {
14735
+ const left = targets[index - 1];
14736
+ const right = targets[index];
14737
+ ordering.setEdge(left, right);
14738
+ if (ie.alg.isAcyclic(ordering)) constraints.push({
14739
+ left,
14740
+ right
14741
+ });
14742
+ else ordering.removeEdge(left, right);
14743
+ }
14744
+ }
14745
+ Oe(graph, { constraints });
14746
+ return {
14747
+ nodes: nodes.map((node) => {
14748
+ const { x, y, width, height, rank } = graph.node(node.id);
14749
+ return {
14750
+ id: node.id,
14751
+ column: rank,
14752
+ x: x - width / 2,
14753
+ y: y - height / 2,
14754
+ width,
14755
+ height
14756
+ };
14757
+ }),
14758
+ edges: connections.map((edge) => Object.assign({}, edge, { points: graph.edge(edge.source, edge.target).points }))
14759
+ };
14760
+ }
14761
+ //#endregion
12469
14762
  //#region src/canvas/browser/base/wrapLayout.ts
12470
14763
  /** Normalize primary/cross coordinates without rotating cards. */
12471
14764
  function layoutAxes(point, direction) {
@@ -12519,4 +14812,4 @@ function wrapLayout(nodes, availableWidth) {
12519
14812
  return positions;
12520
14813
  }
12521
14814
  //#endregion
12522
- export { waitBranchDescription as $, DropdownMenuItem as A, CompositeItem as B, IconifyProvider as C, DropdownMenuCheckboxItem as D, DropdownMenu as E, DropdownMenuSub as F, MenuPopup as G, MenuRoot as H, DropdownMenuSubContent as I, ContextMenuRootContext as J, MenuItem as K, DropdownMenuSubTrigger as L, DropdownMenuRadioGroup as M, DropdownMenuRadioItem as N, DropdownMenuContent as O, DropdownMenuSeparator as P, uiLocales as Q, DropdownMenuTrigger as R, spriteIcon as S, useIconifyData as T, MenuPositioner as U, useCompositeItem as V, MenuPortal as W, MenuRootContext as X, useContextMenuRootContext as Y, useMenuRootContext as Z, Z as _, CompositeRoot as a, ja_default$1 as at, imageIcon as b, PopoverContent as c, I18n as ct, PopoverPanelContent as d, useAriaLabelledBy as dt, waitBranchLocales as et, PopoverTitle as f, useFieldItemContext as ft, VirtualScrollArea as g, ScrollArea as h, IconThemeContext as ht, Textarea as i, ko_default$1 as it, DropdownMenuLabel as j, DropdownMenuGroup as k, PopoverDescription as l, providerIconAppearance as lt, NativeScrollArea as m, useProviderIconCache as mt, wrapLayout as n, zh_CN_default$1 as nt, ACTIVE_COMPOSITE_ITEM as o, fr_default$1 as ot, PopoverTrigger as p, ProviderIconCacheContext as pt, MenuGroup as q, canvasDirection as r, ru_default$1 as rt, Popover as s, en_default$1 as st, layoutAxes as t, zh_TW_default$1 as tt, PopoverHeader as u, Checkbox as ut, ContentIcon as v, useIconifyCollectionLoader as w, placeholderIcon as x, IconImageCrossOriginContext as y, findRootOwnerId as z };
14815
+ export { useMenuRootContext as $, DropdownMenuContent as A, DropdownMenuTrigger as B, placeholderIcon as C, useIconifyData as D, useIconifyCollectionLoader as E, DropdownMenuRadioItem as F, MenuPositioner as G, CompositeItem as H, DropdownMenuSeparator as I, MenuItem as J, MenuPortal as K, DropdownMenuSub as L, DropdownMenuItem as M, DropdownMenuLabel as N, DropdownMenu as O, DropdownMenuRadioGroup as P, MenuRootContext as Q, DropdownMenuSubContent as R, imageIcon as S, IconifyProvider as T, useCompositeItem as U, findRootOwnerId as V, MenuRoot as W, ContextMenuRootContext as X, MenuGroup as Y, useContextMenuRootContext as Z, ScrollArea as _, IconThemeContext as _t, canvasDirection as a, ru_default$1 as at, ContentIcon as b, ACTIVE_COMPOSITE_ITEM as c, fr_default$1 as ct, PopoverDescription as d, providerIconAppearance as dt, uiLocales as et, PopoverHeader as f, Checkbox as ft, NativeScrollArea as g, useProviderIconCache as gt, PopoverTrigger as h, ProviderIconCacheContext as ht, ie as i, zh_CN_default$1 as it, DropdownMenuGroup as j, DropdownMenuCheckboxItem as k, Popover as l, en_default$1 as lt, PopoverTitle as m, useFieldItemContext as mt, wrapLayout as n, waitBranchLocales as nt, Textarea as o, ko_default$1 as ot, PopoverPanelContent as p, useAriaLabelledBy as pt, MenuPopup as q, graphLayout as r, zh_TW_default$1 as rt, CompositeRoot as s, ja_default$1 as st, layoutAxes as t, waitBranchDescription as tt, PopoverContent as u, I18n as ut, VirtualScrollArea as v, spriteIcon as w, IconImageCrossOriginContext as x, Z$1 as y, DropdownMenuSubTrigger as z };