likec4 1.44.0 → 1.45.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1450,17 +1450,51 @@ function getRefProp(element) {
1450
1450
  const version2 = React__default.version;
1451
1451
  return typeof React__default.version != "string" || version2.startsWith("18.") ? element?.ref : element?.props?.ref;
1452
1452
  }
1453
- function r$d(e2) {
1453
+ function findElementBySelector(selector2, root2 = document) {
1454
+ const element = root2.querySelector(selector2);
1455
+ if (element)
1456
+ return element;
1457
+ const allElements = root2.querySelectorAll("*");
1458
+ for (let i2 = 0; i2 < allElements.length; i2 += 1) {
1459
+ const el = allElements[i2];
1460
+ if (el.shadowRoot) {
1461
+ const shadowElement = findElementBySelector(selector2, el.shadowRoot);
1462
+ if (shadowElement)
1463
+ return shadowElement;
1464
+ }
1465
+ }
1466
+ return null;
1467
+ }
1468
+ function findElementsBySelector(selector2, root2 = document) {
1469
+ const results = [], elements = root2.querySelectorAll(selector2);
1470
+ results.push(...Array.from(elements));
1471
+ const allElements = root2.querySelectorAll("*");
1472
+ for (let i2 = 0; i2 < allElements.length; i2 += 1) {
1473
+ const el = allElements[i2];
1474
+ if (el.shadowRoot) {
1475
+ const shadowElements = findElementsBySelector(selector2, el.shadowRoot);
1476
+ results.push(...shadowElements);
1477
+ }
1478
+ }
1479
+ return results;
1480
+ }
1481
+ function getRootElement(targetElement) {
1482
+ if (!targetElement)
1483
+ return document;
1484
+ const root2 = targetElement.getRootNode();
1485
+ return root2 instanceof ShadowRoot || root2 instanceof Document ? root2 : document;
1486
+ }
1487
+ function r$f(e2) {
1454
1488
  var t2, f, n2 = "";
1455
1489
  if (typeof e2 == "string" || typeof e2 == "number") n2 += e2;
1456
1490
  else if (typeof e2 == "object") if (Array.isArray(e2)) {
1457
1491
  var o = e2.length;
1458
- for (t2 = 0; t2 < o; t2++) e2[t2] && (f = r$d(e2[t2])) && (n2 && (n2 += " "), n2 += f);
1492
+ for (t2 = 0; t2 < o; t2++) e2[t2] && (f = r$f(e2[t2])) && (n2 && (n2 += " "), n2 += f);
1459
1493
  } else for (f in e2) e2[f] && (n2 && (n2 += " "), n2 += f);
1460
1494
  return n2;
1461
1495
  }
1462
1496
  function clsx() {
1463
- for (var e2, t2, f = 0, n2 = "", o = arguments.length; f < o; f++) (e2 = arguments[f]) && (t2 = r$d(e2)) && (n2 && (n2 += " "), n2 += t2);
1497
+ for (var e2, t2, f = 0, n2 = "", o = arguments.length; f < o; f++) (e2 = arguments[f]) && (t2 = r$f(e2)) && (n2 && (n2 += " "), n2 += t2);
1464
1498
  return n2;
1465
1499
  }
1466
1500
  const EMPTY_CLASS_NAMES = {};
@@ -2436,43 +2470,43 @@ function MantineCssVariables({
2436
2470
  ) : null;
2437
2471
  }
2438
2472
  MantineCssVariables.displayName = "@mantine/CssVariables";
2439
- function setColorSchemeAttribute(colorScheme, getRootElement) {
2473
+ function setColorSchemeAttribute(colorScheme, getRootElement2) {
2440
2474
  const hasDarkColorScheme = typeof window < "u" && "matchMedia" in window && window.matchMedia("(prefers-color-scheme: dark)")?.matches, computedColorScheme = colorScheme !== "auto" ? colorScheme : hasDarkColorScheme ? "dark" : "light";
2441
- getRootElement()?.setAttribute("data-mantine-color-scheme", computedColorScheme);
2475
+ getRootElement2()?.setAttribute("data-mantine-color-scheme", computedColorScheme);
2442
2476
  }
2443
2477
  function useProviderColorScheme({
2444
2478
  manager,
2445
2479
  defaultColorScheme,
2446
- getRootElement,
2480
+ getRootElement: getRootElement2,
2447
2481
  forceColorScheme
2448
2482
  }) {
2449
2483
  const media = useRef(null), [value, setValue] = useState(() => manager.get(defaultColorScheme)), colorSchemeValue = forceColorScheme || value, setColorScheme = useCallback(
2450
2484
  (colorScheme) => {
2451
- forceColorScheme || (setColorSchemeAttribute(colorScheme, getRootElement), setValue(colorScheme), manager.set(colorScheme));
2485
+ forceColorScheme || (setColorSchemeAttribute(colorScheme, getRootElement2), setValue(colorScheme), manager.set(colorScheme));
2452
2486
  },
2453
2487
  [manager.set, colorSchemeValue, forceColorScheme]
2454
2488
  ), clearColorScheme = useCallback(() => {
2455
- setValue(defaultColorScheme), setColorSchemeAttribute(defaultColorScheme, getRootElement), manager.clear();
2489
+ setValue(defaultColorScheme), setColorSchemeAttribute(defaultColorScheme, getRootElement2), manager.clear();
2456
2490
  }, [manager.clear, defaultColorScheme]);
2457
2491
  return useEffect(() => (manager.subscribe(setColorScheme), manager.unsubscribe), [manager.subscribe, manager.unsubscribe]), useIsomorphicEffect(() => {
2458
- setColorSchemeAttribute(manager.get(defaultColorScheme), getRootElement);
2492
+ setColorSchemeAttribute(manager.get(defaultColorScheme), getRootElement2);
2459
2493
  }, []), useEffect(() => {
2460
2494
  if (forceColorScheme)
2461
- return setColorSchemeAttribute(forceColorScheme, getRootElement), () => {
2495
+ return setColorSchemeAttribute(forceColorScheme, getRootElement2), () => {
2462
2496
  };
2463
- forceColorScheme === void 0 && setColorSchemeAttribute(value, getRootElement), typeof window < "u" && "matchMedia" in window && (media.current = window.matchMedia("(prefers-color-scheme: dark)"));
2497
+ forceColorScheme === void 0 && setColorSchemeAttribute(value, getRootElement2), typeof window < "u" && "matchMedia" in window && (media.current = window.matchMedia("(prefers-color-scheme: dark)"));
2464
2498
  const listener = (event) => {
2465
- value === "auto" && setColorSchemeAttribute(event.matches ? "dark" : "light", getRootElement);
2499
+ value === "auto" && setColorSchemeAttribute(event.matches ? "dark" : "light", getRootElement2);
2466
2500
  };
2467
2501
  return media.current?.addEventListener("change", listener), () => media.current?.removeEventListener("change", listener);
2468
2502
  }, [value, forceColorScheme]), { colorScheme: colorSchemeValue, setColorScheme, clearColorScheme };
2469
2503
  }
2470
2504
  function useRespectReduceMotion({
2471
2505
  respectReducedMotion,
2472
- getRootElement
2506
+ getRootElement: getRootElement2
2473
2507
  }) {
2474
2508
  useIsomorphicEffect(() => {
2475
- respectReducedMotion && getRootElement()?.setAttribute("data-respect-reduced-motion", "true");
2509
+ respectReducedMotion && getRootElement2()?.setAttribute("data-respect-reduced-motion", "true");
2476
2510
  }, [respectReducedMotion]);
2477
2511
  }
2478
2512
  function MantineProvider({
@@ -2487,7 +2521,7 @@ function MantineProvider({
2487
2521
  classNamesPrefix = "mantine",
2488
2522
  colorSchemeManager = localStorageColorSchemeManager(),
2489
2523
  defaultColorScheme = "light",
2490
- getRootElement = () => document.documentElement,
2524
+ getRootElement: getRootElement2 = () => document.documentElement,
2491
2525
  cssVariablesResolver,
2492
2526
  forceColorScheme,
2493
2527
  stylesTransform,
@@ -2497,11 +2531,11 @@ function MantineProvider({
2497
2531
  defaultColorScheme,
2498
2532
  forceColorScheme,
2499
2533
  manager: colorSchemeManager,
2500
- getRootElement
2534
+ getRootElement: getRootElement2
2501
2535
  });
2502
2536
  return useRespectReduceMotion({
2503
2537
  respectReducedMotion: theme?.respectReducedMotion || !1,
2504
- getRootElement
2538
+ getRootElement: getRootElement2
2505
2539
  }), /* @__PURE__ */ jsx(
2506
2540
  MantineContext.Provider,
2507
2541
  {
@@ -2509,7 +2543,7 @@ function MantineProvider({
2509
2543
  colorScheme,
2510
2544
  setColorScheme,
2511
2545
  clearColorScheme,
2512
- getRootElement,
2546
+ getRootElement: getRootElement2,
2513
2547
  classNamesPrefix,
2514
2548
  getStyleNonce,
2515
2549
  cssVariablesResolver,
@@ -8937,6 +8971,7 @@ const varsResolver$w = (theme, { radius, color: color2, variant, autoContrast })
8937
8971
  closeButtonLabel,
8938
8972
  variant,
8939
8973
  autoContrast,
8974
+ role,
8940
8975
  attributes,
8941
8976
  ...others
8942
8977
  } = props2, getStyles2 = useStyles({
@@ -8959,8 +8994,8 @@ const varsResolver$w = (theme, { radius, color: color2, variant, autoContrast })
8959
8994
  ...getStyles2("root", { variant }),
8960
8995
  variant,
8961
8996
  ref,
8997
+ role: role || "alert",
8962
8998
  ...others,
8963
- role: "alert",
8964
8999
  "aria-describedby": children2 ? bodyId : void 0,
8965
9000
  "aria-labelledby": title ? titleId : void 0,
8966
9001
  children: /* @__PURE__ */ jsxs("div", { ...getStyles2("wrapper"), children: [
@@ -9096,7 +9131,7 @@ function getParsedComboboxData(data) {
9096
9131
  function getOptionsLockup(options) {
9097
9132
  return options.reduce((acc, item) => "group" in item ? { ...acc, ...getOptionsLockup(item.items) } : (acc[item.value] = item, acc), {});
9098
9133
  }
9099
- var classes$r = { dropdown: "m_88b62a41", search: "m_985517d8", options: "m_b2821a6e", option: "m_92253aa5", empty: "m_2530cd1d", header: "m_858f94bd", footer: "m_82b967cb", group: "m_254f3e4f", groupLabel: "m_2bb2e9e5", chevron: "m_2943220b", optionsDropdownOption: "m_390b5f4", optionsDropdownCheckIcon: "m_8ee53fc2" };
9134
+ var classes$r = { dropdown: "m_88b62a41", search: "m_985517d8", options: "m_b2821a6e", option: "m_92253aa5", empty: "m_2530cd1d", header: "m_858f94bd", footer: "m_82b967cb", group: "m_254f3e4f", groupLabel: "m_2bb2e9e5", chevron: "m_2943220b", optionsDropdownOption: "m_390b5f4", optionsDropdownCheckIcon: "m_8ee53fc2", optionsDropdownCheckPlaceholder: "m_a530ee0a" };
9100
9135
  const defaultProps$A = {
9101
9136
  error: null
9102
9137
  }, varsResolver$u = (theme, { size: size2, color: color2 }) => ({
@@ -9556,11 +9591,11 @@ function useCombobox({
9556
9591
  },
9557
9592
  [closeDropdown, openDropdown, dropdownOpened]
9558
9593
  ), clearSelectedItem = useCallback(() => {
9559
- const selected2 = document.querySelector(`#${listId.current} [data-combobox-selected]`);
9594
+ const root2 = getRootElement(targetRef.current), selected2 = findElementBySelector(`#${listId.current} [data-combobox-selected]`, root2);
9560
9595
  selected2?.removeAttribute("data-combobox-selected"), selected2?.removeAttribute("aria-selected");
9561
9596
  }, []), selectOption = useCallback(
9562
9597
  (index2) => {
9563
- const items = document.getElementById(listId.current)?.querySelectorAll("[data-combobox-option]");
9598
+ const root2 = getRootElement(targetRef.current), list2 = findElementBySelector(`#${listId.current}`, root2), items = list2 ? findElementsBySelector("[data-combobox-option]", list2) : null;
9564
9599
  if (!items)
9565
9600
  return null;
9566
9601
  const nextIndex = index2 >= items.length ? 0 : index2 < 0 ? items.length - 1 : index2;
@@ -9568,49 +9603,43 @@ function useCombobox({
9568
9603
  },
9569
9604
  [scrollBehavior, clearSelectedItem]
9570
9605
  ), selectActiveOption = useCallback(() => {
9571
- const activeOption = document.querySelector(
9572
- `#${listId.current} [data-combobox-active]`
9606
+ const root2 = getRootElement(targetRef.current), activeOption = findElementBySelector(
9607
+ `#${listId.current} [data-combobox-active]`,
9608
+ root2
9573
9609
  );
9574
9610
  if (activeOption) {
9575
- const items = document.querySelectorAll(
9576
- `#${listId.current} [data-combobox-option]`
9577
- ), index2 = Array.from(items).findIndex((option) => option === activeOption);
9611
+ const index2 = findElementsBySelector(
9612
+ `#${listId.current} [data-combobox-option]`,
9613
+ root2
9614
+ ).findIndex((option) => option === activeOption);
9578
9615
  return selectOption(index2);
9579
9616
  }
9580
9617
  return selectOption(0);
9581
- }, [selectOption]), selectNextOption = useCallback(
9582
- () => selectOption(
9583
- getNextIndex(
9584
- selectedOptionIndex.current,
9585
- document.querySelectorAll(`#${listId.current} [data-combobox-option]`),
9586
- loop
9587
- )
9588
- ),
9589
- [selectOption, loop]
9590
- ), selectPreviousOption = useCallback(
9591
- () => selectOption(
9592
- getPreviousIndex(
9593
- selectedOptionIndex.current,
9594
- document.querySelectorAll(`#${listId.current} [data-combobox-option]`),
9595
- loop
9596
- )
9597
- ),
9598
- [selectOption, loop]
9599
- ), selectFirstOption = useCallback(
9600
- () => selectOption(
9601
- getFirstIndex(
9602
- document.querySelectorAll(`#${listId.current} [data-combobox-option]`)
9603
- )
9604
- ),
9605
- [selectOption]
9606
- ), updateSelectedOptionIndex = useCallback(
9618
+ }, [selectOption]), selectNextOption = useCallback(() => {
9619
+ const root2 = getRootElement(targetRef.current), items = findElementsBySelector(
9620
+ `#${listId.current} [data-combobox-option]`,
9621
+ root2
9622
+ );
9623
+ return selectOption(getNextIndex(selectedOptionIndex.current, items, loop));
9624
+ }, [selectOption, loop]), selectPreviousOption = useCallback(() => {
9625
+ const root2 = getRootElement(targetRef.current), items = findElementsBySelector(
9626
+ `#${listId.current} [data-combobox-option]`,
9627
+ root2
9628
+ );
9629
+ return selectOption(getPreviousIndex(selectedOptionIndex.current, items, loop));
9630
+ }, [selectOption, loop]), selectFirstOption = useCallback(() => {
9631
+ const root2 = getRootElement(targetRef.current), items = findElementsBySelector(
9632
+ `#${listId.current} [data-combobox-option]`,
9633
+ root2
9634
+ );
9635
+ return selectOption(getFirstIndex(items));
9636
+ }, [selectOption]), updateSelectedOptionIndex = useCallback(
9607
9637
  (target = "selected", options) => {
9608
9638
  selectedIndexUpdateTimeout.current = window.setTimeout(() => {
9609
- const items = document.querySelectorAll(
9610
- `#${listId.current} [data-combobox-option]`
9611
- ), index2 = Array.from(items).findIndex(
9612
- (option) => option.hasAttribute(`data-combobox-${target}`)
9613
- );
9639
+ const root2 = getRootElement(targetRef.current), items = findElementsBySelector(
9640
+ `#${listId.current} [data-combobox-option]`,
9641
+ root2
9642
+ ), index2 = items.findIndex((option) => option.hasAttribute(`data-combobox-${target}`));
9614
9643
  selectedOptionIndex.current = index2, options?.scrollIntoView && items[index2]?.scrollIntoView({ block: "nearest", behavior: scrollBehavior });
9615
9644
  }, 0);
9616
9645
  },
@@ -9618,8 +9647,10 @@ function useCombobox({
9618
9647
  ), resetSelectedOption = useCallback(() => {
9619
9648
  selectedOptionIndex.current = -1, clearSelectedItem();
9620
9649
  }, [clearSelectedItem]), clickSelectedOption = useCallback(() => {
9621
- document.querySelectorAll(
9622
- `#${listId.current} [data-combobox-option]`
9650
+ const root2 = getRootElement(targetRef.current);
9651
+ findElementsBySelector(
9652
+ `#${listId.current} [data-combobox-option]`,
9653
+ root2
9623
9654
  )?.[selectedOptionIndex.current]?.click();
9624
9655
  }, []), setListId = useCallback((id2) => {
9625
9656
  listId.current = id2;
@@ -9828,13 +9859,14 @@ function isValueChecked(value, optionValue) {
9828
9859
  function Option({
9829
9860
  data,
9830
9861
  withCheckIcon,
9862
+ withAlignedLabels,
9831
9863
  value,
9832
9864
  checkIconPosition,
9833
9865
  unstyled,
9834
9866
  renderOption
9835
9867
  }) {
9836
9868
  if (!isOptionsGroup(data)) {
9837
- const checked = isValueChecked(value, data.value), check2 = withCheckIcon && checked && /* @__PURE__ */ jsx(CheckIcon, { className: classes$r.optionsDropdownCheckIcon }), defaultContent = /* @__PURE__ */ jsxs(Fragment$1, { children: [
9869
+ const checked = isValueChecked(value, data.value), check2 = withCheckIcon && (checked ? /* @__PURE__ */ jsx(CheckIcon, { className: classes$r.optionsDropdownCheckIcon }) : withAlignedLabels ? /* @__PURE__ */ jsx("div", { className: classes$r.optionsDropdownCheckPlaceholder }) : null), defaultContent = /* @__PURE__ */ jsxs(Fragment$1, { children: [
9838
9870
  checkIconPosition === "left" && check2,
9839
9871
  /* @__PURE__ */ jsx("span", { children: data.label }),
9840
9872
  checkIconPosition === "right" && check2
@@ -9860,6 +9892,7 @@ function Option({
9860
9892
  value,
9861
9893
  unstyled,
9862
9894
  withCheckIcon,
9895
+ withAlignedLabels,
9863
9896
  checkIconPosition,
9864
9897
  renderOption
9865
9898
  },
@@ -9878,6 +9911,7 @@ function OptionsDropdown({
9878
9911
  withScrollArea = !0,
9879
9912
  filterOptions = !0,
9880
9913
  withCheckIcon = !1,
9914
+ withAlignedLabels = !1,
9881
9915
  value,
9882
9916
  checkIconPosition,
9883
9917
  nothingFoundMessage,
@@ -9897,6 +9931,7 @@ function OptionsDropdown({
9897
9931
  {
9898
9932
  data: item,
9899
9933
  withCheckIcon,
9934
+ withAlignedLabels,
9900
9935
  value,
9901
9936
  checkIconPosition,
9902
9937
  unstyled,
@@ -9920,7 +9955,7 @@ function OptionsDropdown({
9920
9955
  ] }) });
9921
9956
  }
9922
9957
  var classes$q = { root: "m_347db0ec", "root--dot": "m_fbd81e3d", label: "m_5add502a", section: "m_91fdda9b" };
9923
- const varsResolver$s = (theme, { radius, color: color2, gradient, variant, size: size2, autoContrast }) => {
9958
+ const varsResolver$s = (theme, { radius, color: color2, gradient, variant, size: size2, autoContrast, circle }) => {
9924
9959
  const colors = theme.variantColorResolver({
9925
9960
  color: color2 || theme.primaryColor,
9926
9961
  theme,
@@ -9933,7 +9968,7 @@ const varsResolver$s = (theme, { radius, color: color2, gradient, variant, size:
9933
9968
  "--badge-height": getSize(size2, "badge-height"),
9934
9969
  "--badge-padding-x": getSize(size2, "badge-padding-x"),
9935
9970
  "--badge-fz": getSize(size2, "badge-fz"),
9936
- "--badge-radius": radius === void 0 ? void 0 : getRadius$1(radius),
9971
+ "--badge-radius": circle || radius === void 0 ? void 0 : getRadius$1(radius),
9937
9972
  "--badge-bg": color2 || variant ? colors.background : void 0,
9938
9973
  "--badge-color": color2 || variant ? colors.color : void 0,
9939
9974
  "--badge-bd": color2 || variant ? colors.border : void 0,
@@ -11483,6 +11518,7 @@ const defaultProps$g = {
11483
11518
  offset: 0,
11484
11519
  position: "right-start",
11485
11520
  transitionProps: { duration: 0 },
11521
+ openDelay: 0,
11486
11522
  middlewares: {
11487
11523
  shift: {
11488
11524
  // Enable crossAxis shift to keep submenu dropdown within viewport bounds when positioned horizontally
@@ -11491,11 +11527,11 @@ const defaultProps$g = {
11491
11527
  }
11492
11528
  };
11493
11529
  function MenuSub(_props) {
11494
- const { children: children2, closeDelay, ...others } = useProps("MenuSub", defaultProps$g, _props), id2 = useId$2(), [opened, { open, close }] = useDisclosure(!1), ctx = useSubMenuContext(), { openDropdown, closeDropdown } = useDelayedHover({
11530
+ const { children: children2, closeDelay, openDelay, ...others } = useProps("MenuSub", defaultProps$g, _props), id2 = useId$2(), [opened, { open, close }] = useDisclosure(!1), ctx = useSubMenuContext(), { openDropdown, closeDropdown } = useDelayedHover({
11495
11531
  open,
11496
11532
  close,
11497
11533
  closeDelay,
11498
- openDelay: 0
11534
+ openDelay
11499
11535
  });
11500
11536
  return /* @__PURE__ */ jsx(
11501
11537
  SubMenuProvider,
@@ -12713,6 +12749,7 @@ const defaultProps$6 = {
12713
12749
  rightSection,
12714
12750
  checkIconPosition,
12715
12751
  withCheckIcon,
12752
+ withAlignedLabels,
12716
12753
  nothingFoundMessage,
12717
12754
  name,
12718
12755
  form,
@@ -12864,6 +12901,7 @@ const defaultProps$6 = {
12864
12901
  value: _value,
12865
12902
  checkIconPosition,
12866
12903
  withCheckIcon,
12904
+ withAlignedLabels,
12867
12905
  nothingFoundMessage,
12868
12906
  unstyled,
12869
12907
  labelId: others.label ? `${_id}-label` : void 0,
@@ -17434,7 +17472,7 @@ function e$h(e2, t2, n2) {
17434
17472
  let r2 = (n3) => e2(n3, ...t2);
17435
17473
  return n2 === void 0 ? r2 : Object.assign(r2, { lazy: n2, lazyArgs: t2 });
17436
17474
  }
17437
- function t$x(t2, n2, r2) {
17475
+ function t$w(t2, n2, r2) {
17438
17476
  let i2 = t2.length - n2.length;
17439
17477
  if (i2 === 0) return t2(...n2);
17440
17478
  if (i2 === 1) return e$h(t2, n2, r2);
@@ -17445,28 +17483,28 @@ const e$g = (e2) => (n2, r2) => {
17445
17483
  if (!Number.isInteger(r2)) throw TypeError(`precision must be an integer: ${r2.toString()}`);
17446
17484
  if (r2 > 15 || r2 < -15) throw RangeError("precision must be between -15 and 15");
17447
17485
  if (Number.isNaN(n2) || !Number.isFinite(n2)) return e2(n2);
17448
- let i2 = t$w(n2, r2), a2 = e2(i2);
17449
- return t$w(a2, -r2);
17486
+ let i2 = t$v(n2, r2), a2 = e2(i2);
17487
+ return t$v(a2, -r2);
17450
17488
  };
17451
- function t$w(e2, t2) {
17489
+ function t$v(e2, t2) {
17452
17490
  let [n2, r2] = e2.toString().split("e"), i2 = (r2 === void 0 ? 0 : Number.parseInt(r2, 10)) + t2, a2 = `${n2}e${i2.toString()}`;
17453
17491
  return Number.parseFloat(a2);
17454
17492
  }
17455
- function n$v(...n2) {
17456
- return t$x(e$g(Math.ceil), n2);
17457
- }
17458
- function t$v(...t2) {
17459
- return t$x(n$u, t2);
17493
+ function n$u(...n2) {
17494
+ return t$w(e$g(Math.ceil), n2);
17460
17495
  }
17461
- const n$u = (e2, { min: t2, max: n2 }) => t2 !== void 0 && e2 < t2 ? t2 : n2 !== void 0 && e2 > n2 ? n2 : e2;
17462
17496
  function t$u(...t2) {
17463
- return t$x(n$t, t2);
17497
+ return t$w(n$t, t2);
17464
17498
  }
17465
- const n$t = (e2, t2) => [...e2, ...t2], t$t = { done: !1, hasNext: !1 };
17466
- function t$s(e2, ...t2) {
17467
- let a2 = e2, o = t2.map((e3) => "lazy" in e3 ? r$c(e3) : void 0), s = 0;
17499
+ const n$t = (e2, { min: t2, max: n2 }) => t2 !== void 0 && e2 < t2 ? t2 : n2 !== void 0 && e2 > n2 ? n2 : e2;
17500
+ function t$t(...t2) {
17501
+ return t$w(n$s, t2);
17502
+ }
17503
+ const n$s = (e2, t2) => [...e2, ...t2], t$s = { done: !1, hasNext: !1 }, r$e = (e2) => ({ hasNext: !0, next: e2, done: !1 });
17504
+ function t$r(e2, ...t2) {
17505
+ let a2 = e2, o = t2.map((e3) => "lazy" in e3 ? r$d(e3) : void 0), s = 0;
17468
17506
  for (; s < t2.length; ) {
17469
- if (o[s] === void 0 || !i$5(a2)) {
17507
+ if (o[s] === void 0 || !i$7(a2)) {
17470
17508
  let e4 = t2[s];
17471
17509
  a2 = e4(a2), s += 1;
17472
17510
  continue;
@@ -17477,20 +17515,20 @@ function t$s(e2, ...t2) {
17477
17515
  if (t3 === void 0 || (e3.push(t3), t3.isSingle)) break;
17478
17516
  }
17479
17517
  let r2 = [];
17480
- for (let t3 of a2) if (n$s(t3, r2, e3)) break;
17518
+ for (let t3 of a2) if (n$r(t3, r2, e3)) break;
17481
17519
  let { isSingle: c } = e3.at(-1);
17482
17520
  a2 = c ? r2[0] : r2, s += e3.length;
17483
17521
  }
17484
17522
  return a2;
17485
17523
  }
17486
- function n$s(t2, r2, i2) {
17524
+ function n$r(t2, r2, i2) {
17487
17525
  if (i2.length === 0) return r2.push(t2), !1;
17488
- let a2 = t2, o = t$t, s = !1;
17526
+ let a2 = t2, o = t$s, s = !1;
17489
17527
  for (let [e2, t3] of i2.entries()) {
17490
17528
  let { index: c, items: l } = t3;
17491
17529
  if (l.push(a2), o = t3(a2, c, l), t3.index += 1, o.hasNext) {
17492
17530
  if (o.hasMany ?? !1) {
17493
- for (let t4 of o.next) if (n$s(t4, r2, i2.slice(e2 + 1))) return !0;
17531
+ for (let t4 of o.next) if (n$r(t4, r2, i2.slice(e2 + 1))) return !0;
17494
17532
  return s;
17495
17533
  }
17496
17534
  a2 = o.next;
@@ -17500,32 +17538,44 @@ function n$s(t2, r2, i2) {
17500
17538
  }
17501
17539
  return o.hasNext && r2.push(a2), s;
17502
17540
  }
17503
- function r$c(e2) {
17541
+ function r$d(e2) {
17504
17542
  let { lazy: t2, lazyArgs: n2 } = e2, r2 = t2(...n2);
17505
17543
  return Object.assign(r2, { isSingle: t2.single ?? !1, index: 0, items: [] });
17506
17544
  }
17507
- function i$5(e2) {
17545
+ function i$7(e2) {
17508
17546
  return typeof e2 == "string" || typeof e2 == "object" && !!e2 && Symbol.iterator in e2;
17509
17547
  }
17510
- function t$r(t2, n2) {
17548
+ function t$q(t2, n2) {
17511
17549
  let r2 = n2.length - t2.length;
17512
17550
  if (r2 === 1) {
17513
17551
  let [r3, ...i2] = n2;
17514
- return t$s(r3, { lazy: t2, lazyArgs: i2 });
17552
+ return t$r(r3, { lazy: t2, lazyArgs: i2 });
17515
17553
  }
17516
17554
  if (r2 === 0) {
17517
17555
  let r3 = { lazy: t2, lazyArgs: n2 };
17518
- return Object.assign((t3) => t$s(t3, r3), r3);
17556
+ return Object.assign((t3) => t$r(t3, r3), r3);
17519
17557
  }
17520
17558
  throw Error("Wrong number of arguments");
17521
17559
  }
17522
- function t$q(...t2) {
17523
- return t$x(n$r, t2);
17560
+ function r$c(...e2) {
17561
+ return t$q(i$6, e2);
17524
17562
  }
17525
- const n$r = (e2, t2) => e2.length >= t2, e$f = { asc: (e2, t2) => e2 > t2, desc: (e2, t2) => e2 < t2 };
17526
- function t$p(e2, t2) {
17563
+ function i$6(n2) {
17564
+ if (n2.length === 0) return r$e;
17565
+ let r2 = /* @__PURE__ */ new Map();
17566
+ for (let e2 of n2) r2.set(e2, (r2.get(e2) ?? 0) + 1);
17567
+ return (t2) => {
17568
+ let n3 = r2.get(t2);
17569
+ return n3 === void 0 || n3 === 0 ? { done: !1, hasNext: !0, next: t2 } : (r2.set(t2, n3 - 1), t$s);
17570
+ };
17571
+ }
17572
+ function t$p(...t2) {
17573
+ return t$w(n$q, t2);
17574
+ }
17575
+ const n$q = (e2, t2) => e2.length >= t2, e$f = { asc: (e2, t2) => e2 > t2, desc: (e2, t2) => e2 < t2 };
17576
+ function t$o(e2, t2) {
17527
17577
  let [n2, ...a2] = t2;
17528
- if (!i$4(n2)) {
17578
+ if (!i$5(n2)) {
17529
17579
  let t3 = r$b(...a2);
17530
17580
  return e2(n2, t3);
17531
17581
  }
@@ -17539,51 +17589,44 @@ function r$b(t2, n2, ...i2) {
17539
17589
  return s(n3, r2) ? 1 : s(r2, n3) ? -1 : c?.(e2, t3) ?? 0;
17540
17590
  };
17541
17591
  }
17542
- function i$4(t2) {
17592
+ function i$5(t2) {
17543
17593
  if (a$3(t2)) return !0;
17544
17594
  if (typeof t2 != "object" || !Array.isArray(t2)) return !1;
17545
17595
  let [n2, r2, ...i2] = t2;
17546
17596
  return a$3(n2) && typeof r2 == "string" && r2 in e$f && i2.length === 0;
17547
17597
  }
17548
17598
  const a$3 = (e2) => typeof e2 == "function" && e2.length === 1;
17549
- function t$o(...t2) {
17550
- return t$x(Object.entries, t2);
17599
+ function t$n(...t2) {
17600
+ return t$w(Object.entries, t2);
17551
17601
  }
17552
- function n$q(...t2) {
17553
- return t$x(r$a, t2, i$3);
17602
+ function n$p(...t2) {
17603
+ return t$w(r$a, t2, i$4);
17554
17604
  }
17555
- const r$a = (e2, t2) => e2.filter(t2), i$3 = (e2) => (n2, r2, i2) => e2(n2, r2, i2) ? { done: !1, hasNext: !0, next: n2 } : t$t, e$e = (e2) => Object.assign(e2, { single: !0 });
17605
+ const r$a = (e2, t2) => e2.filter(t2), i$4 = (e2) => (n2, r2, i2) => e2(n2, r2, i2) ? { done: !1, hasNext: !0, next: n2 } : t$s, e$e = (e2) => Object.assign(e2, { single: !0 });
17556
17606
  function r$9(...t2) {
17557
- return t$x(i$2, t2, e$e(a$2));
17607
+ return t$w(i$3, t2, e$e(a$2));
17558
17608
  }
17559
- const i$2 = (e2, t2) => e2.find(t2), a$2 = (e2) => (n2, r2, i2) => e2(n2, r2, i2) ? { done: !0, hasNext: !0, next: n2 } : t$t;
17560
- function n$p(...n2) {
17561
- return t$x(r$8, n2, e$e(i$1));
17609
+ const i$3 = (e2, t2) => e2.find(t2), a$2 = (e2) => (n2, r2, i2) => e2(n2, r2, i2) ? { done: !0, hasNext: !0, next: n2 } : t$s;
17610
+ function n$o(...n2) {
17611
+ return t$w(r$8, n2, e$e(i$2));
17562
17612
  }
17563
- const r$8 = ([e2]) => e2, i$1 = () => a$1, a$1 = (e2) => ({ hasNext: !0, next: e2, done: !0 });
17564
- function t$n(...t2) {
17565
- return t$x(n$o, t2, r$7);
17613
+ const r$8 = ([e2]) => e2, i$2 = () => a$1, a$1 = (e2) => ({ hasNext: !0, next: e2, done: !0 });
17614
+ function t$m(...t2) {
17615
+ return t$w(n$n, t2, r$7);
17566
17616
  }
17567
- const n$o = (e2, t2) => e2.flatMap(t2), r$7 = (e2) => (t2, n2, r2) => {
17617
+ const n$n = (e2, t2) => e2.flatMap(t2), r$7 = (e2) => (t2, n2, r2) => {
17568
17618
  let i2 = e2(t2, n2, r2);
17569
17619
  return Array.isArray(i2) ? { done: !1, hasNext: !0, hasMany: !0, next: i2 } : { done: !1, hasNext: !0, next: i2 };
17570
17620
  };
17571
- function t$m(...t2) {
17572
- return t$x(n$n, t2, r$6);
17573
- }
17574
- function n$n(e2, t2) {
17575
- return e2.forEach(t2), e2;
17576
- }
17577
- const r$6 = (e2) => (t2, n2, r2) => (e2(t2, n2, r2), { done: !1, hasNext: !0, next: t2 });
17578
17621
  function t$l(...t2) {
17579
- return t$x(n$m, t2);
17622
+ return t$w(n$m, t2);
17580
17623
  }
17581
17624
  function n$m(e2, t2) {
17582
17625
  for (let [n2, r2] of Object.entries(e2)) t2(r2, n2, e2);
17583
17626
  return e2;
17584
17627
  }
17585
17628
  function t$k(...t2) {
17586
- return t$x(n$l, t2);
17629
+ return t$w(n$l, t2);
17587
17630
  }
17588
17631
  const n$l = (e2, t2) => {
17589
17632
  let n2 = /* @__PURE__ */ Object.create(null);
@@ -17597,13 +17640,13 @@ const n$l = (e2, t2) => {
17597
17640
  return Object.setPrototypeOf(n2, Object.prototype), n2;
17598
17641
  };
17599
17642
  function t$j(...t2) {
17600
- return t$x(n$k, t2);
17643
+ return t$w(n$k, t2);
17601
17644
  }
17602
17645
  function n$k(e2, t2) {
17603
17646
  if (e2 === t2 || Object.is(e2, t2)) return !0;
17604
17647
  if (typeof e2 != "object" || typeof t2 != "object" || e2 === null || t2 === null || Object.getPrototypeOf(e2) !== Object.getPrototypeOf(t2)) return !1;
17605
- if (Array.isArray(e2)) return r$5(e2, t2);
17606
- if (e2 instanceof Map) return i(e2, t2);
17648
+ if (Array.isArray(e2)) return r$6(e2, t2);
17649
+ if (e2 instanceof Map) return i$1(e2, t2);
17607
17650
  if (e2 instanceof Set) return a(e2, t2);
17608
17651
  if (e2 instanceof Date) return e2.getTime() === t2.getTime();
17609
17652
  if (e2 instanceof RegExp) return e2.toString() === t2.toString();
@@ -17611,12 +17654,12 @@ function n$k(e2, t2) {
17611
17654
  for (let [r2, i2] of Object.entries(e2)) if (!(r2 in t2) || !n$k(i2, t2[r2])) return !1;
17612
17655
  return !0;
17613
17656
  }
17614
- function r$5(e2, t2) {
17657
+ function r$6(e2, t2) {
17615
17658
  if (e2.length !== t2.length) return !1;
17616
17659
  for (let [r2, i2] of e2.entries()) if (!n$k(i2, t2[r2])) return !1;
17617
17660
  return !0;
17618
17661
  }
17619
- function i(e2, t2) {
17662
+ function i$1(e2, t2) {
17620
17663
  if (e2.size !== t2.size) return !1;
17621
17664
  for (let [r2, i2] of e2.entries()) if (!t2.has(r2) || !n$k(i2, t2.get(r2))) return !1;
17622
17665
  return !0;
@@ -17635,23 +17678,12 @@ function a(e2, t2) {
17635
17678
  return !0;
17636
17679
  }
17637
17680
  function n$j(...t2) {
17638
- return t$x(r$4, t2);
17681
+ return t$w(r$5, t2);
17639
17682
  }
17640
- function r$4(e2, n2) {
17683
+ function r$5(e2, n2) {
17641
17684
  for (let [r2, i2] of Object.entries(n2)) if (!Object.hasOwn(e2, r2) || !t$j(i2, e2[r2])) return !1;
17642
17685
  return !0;
17643
17686
  }
17644
- function t$i(...t2) {
17645
- return t$x(n$i, t2);
17646
- }
17647
- function n$i(e2, t2) {
17648
- let n2 = {};
17649
- for (let [r2, i2] of e2.entries()) {
17650
- let a2 = t2(i2, r2, e2);
17651
- n2[a2] = i2;
17652
- }
17653
- return n2;
17654
- }
17655
17687
  function e$d(e2) {
17656
17688
  return Array.isArray(e2);
17657
17689
  }
@@ -17682,6 +17714,36 @@ function e$4(e2) {
17682
17714
  let t2 = Object.getPrototypeOf(e2);
17683
17715
  return t2 === null || t2 === Object.prototype;
17684
17716
  }
17717
+ function t$i(...t2) {
17718
+ return t$w(n$i, t2);
17719
+ }
17720
+ function n$i(e2, t2) {
17721
+ if (e2 === t2 || Object.is(e2, t2)) return !0;
17722
+ if (typeof e2 != "object" || !e2 || typeof t2 != "object" || !t2) return !1;
17723
+ if (e2 instanceof Map && t2 instanceof Map) return r$4(e2, t2);
17724
+ if (e2 instanceof Set && t2 instanceof Set) return i(e2, t2);
17725
+ let n2 = Object.keys(e2);
17726
+ if (n2.length !== Object.keys(t2).length) return !1;
17727
+ for (let r2 of n2) {
17728
+ if (!Object.hasOwn(t2, r2)) return !1;
17729
+ let { [r2]: n3 } = e2, { [r2]: i2 } = t2;
17730
+ if (n3 !== i2 || !Object.is(n3, i2)) return !1;
17731
+ }
17732
+ return !0;
17733
+ }
17734
+ function r$4(e2, t2) {
17735
+ if (e2.size !== t2.size) return !1;
17736
+ for (let [n2, r2] of e2) {
17737
+ let e3 = t2.get(n2);
17738
+ if (r2 !== e3 || !Object.is(r2, e3)) return !1;
17739
+ }
17740
+ return !0;
17741
+ }
17742
+ function i(e2, t2) {
17743
+ if (e2.size !== t2.size) return !1;
17744
+ for (let n2 of e2) if (!t2.has(n2)) return !1;
17745
+ return !0;
17746
+ }
17685
17747
  function e$3(e2) {
17686
17748
  return typeof e2 == "string";
17687
17749
  }
@@ -17689,22 +17751,22 @@ function e$2(e2) {
17689
17751
  return !!e2;
17690
17752
  }
17691
17753
  function t$h(...t2) {
17692
- return t$x(n$h, t2);
17754
+ return t$w(n$h, t2);
17693
17755
  }
17694
17756
  const n$h = (e2, t2) => e2.join(t2);
17695
17757
  function t$g(...t2) {
17696
- return t$x(Object.keys, t2);
17758
+ return t$w(Object.keys, t2);
17697
17759
  }
17698
17760
  function t$f(...t2) {
17699
- return t$x(n$g, t2);
17761
+ return t$w(n$g, t2);
17700
17762
  }
17701
17763
  const n$g = (e2) => e2.at(-1);
17702
17764
  function t$e(...t2) {
17703
- return t$x(n$f, t2, r$3);
17765
+ return t$w(n$f, t2, r$3);
17704
17766
  }
17705
17767
  const n$f = (e2, t2) => e2.map(t2), r$3 = (e2) => (t2, n2, r2) => ({ done: !1, hasNext: !0, next: e2(t2, n2, r2) });
17706
17768
  function t$d(...t2) {
17707
- return t$x(n$e, t2);
17769
+ return t$w(n$e, t2);
17708
17770
  }
17709
17771
  function n$e(e2, t2) {
17710
17772
  let n2 = {};
@@ -17715,7 +17777,7 @@ function n$e(e2, t2) {
17715
17777
  return n2;
17716
17778
  }
17717
17779
  function t$c(...t2) {
17718
- return t$x(n$d, t2);
17780
+ return t$w(n$d, t2);
17719
17781
  }
17720
17782
  function n$d(e2, t2) {
17721
17783
  let n2 = {};
@@ -17723,7 +17785,7 @@ function n$d(e2, t2) {
17723
17785
  return n2;
17724
17786
  }
17725
17787
  function n$c(...t2) {
17726
- return t$x(r$2, t2);
17788
+ return t$w(r$2, t2);
17727
17789
  }
17728
17790
  function r$2(e2, n2) {
17729
17791
  let i2 = { ...e2, ...n2 };
@@ -17737,11 +17799,11 @@ function r$2(e2, n2) {
17737
17799
  return i2;
17738
17800
  }
17739
17801
  function n$b(...t2) {
17740
- return t$x(r$1, t2);
17802
+ return t$w(r$1, t2);
17741
17803
  }
17742
17804
  function r$1(e2, n2) {
17743
- if (!t$q(n2, 1)) return { ...e2 };
17744
- if (!t$q(n2, 2)) {
17805
+ if (!t$p(n2, 1)) return { ...e2 };
17806
+ if (!t$p(n2, 2)) {
17745
17807
  let { [n2[0]]: t2, ...r3 } = e2;
17746
17808
  return r3;
17747
17809
  }
@@ -17750,11 +17812,11 @@ function r$1(e2, n2) {
17750
17812
  return r2;
17751
17813
  }
17752
17814
  function t$b(...t2) {
17753
- return t$x(n$a, t2);
17815
+ return t$w(n$a, t2);
17754
17816
  }
17755
17817
  const n$a = (e2) => e2.length === 1 ? e2[0] : void 0;
17756
17818
  function t$a(...t2) {
17757
- return t$x(n$9, t2);
17819
+ return t$w(n$9, t2);
17758
17820
  }
17759
17821
  const n$9 = (e2, t2) => {
17760
17822
  let n2 = [[], []];
@@ -17762,7 +17824,7 @@ const n$9 = (e2, t2) => {
17762
17824
  return n2;
17763
17825
  };
17764
17826
  function t$9(...t2) {
17765
- return t$x(n$8, t2);
17827
+ return t$w(n$8, t2);
17766
17828
  }
17767
17829
  function n$8(e2, t2) {
17768
17830
  let n2 = {};
@@ -17770,7 +17832,7 @@ function n$8(e2, t2) {
17770
17832
  return n2;
17771
17833
  }
17772
17834
  function t$8(...t2) {
17773
- return t$x(n$7, t2);
17835
+ return t$w(n$7, t2);
17774
17836
  }
17775
17837
  function n$7(e2, t2) {
17776
17838
  let n2 = {};
@@ -17794,7 +17856,7 @@ function e(e2, t2) {
17794
17856
  return Math.floor(Math.random() * (r2 - n2 + 1) + n2);
17795
17857
  }
17796
17858
  function t$6(...t2) {
17797
- return t$x(n$6, t2);
17859
+ return t$w(n$6, t2);
17798
17860
  }
17799
17861
  function n$6(e2, t2) {
17800
17862
  let n2 = [];
@@ -17802,38 +17864,38 @@ function n$6(e2, t2) {
17802
17864
  return n2;
17803
17865
  }
17804
17866
  function t$5(...t2) {
17805
- return t$x(n$5, t2);
17867
+ return t$w(n$5, t2);
17806
17868
  }
17807
17869
  const n$5 = (e2, t2, n2) => e2.reduce(t2, n2);
17808
17870
  function t$4(...t2) {
17809
- return t$x(n$4, t2);
17871
+ return t$w(n$4, t2);
17810
17872
  }
17811
17873
  function n$4(e2) {
17812
17874
  return [...e2].reverse();
17813
17875
  }
17814
17876
  function t$3(...t2) {
17815
- return t$x(n$3, t2);
17877
+ return t$w(n$3, t2);
17816
17878
  }
17817
17879
  function n$3(e2, t2) {
17818
17880
  let n2 = [...e2];
17819
17881
  return n2.sort(t2), n2;
17820
17882
  }
17821
17883
  function t$2(...t2) {
17822
- return t$p(n$2, t2);
17884
+ return t$o(n$2, t2);
17823
17885
  }
17824
17886
  const n$2 = (e2, t2) => [...e2].sort(t2);
17825
17887
  function t$1(...t2) {
17826
- return t$x(n$1, t2);
17888
+ return t$w(n$1, t2);
17827
17889
  }
17828
17890
  function n$1(e2, t2) {
17829
17891
  return t2(e2), e2;
17830
17892
  }
17831
17893
  function n(...e2) {
17832
- return t$r(r, e2);
17894
+ return t$q(r, e2);
17833
17895
  }
17834
17896
  function r() {
17835
17897
  let t2 = /* @__PURE__ */ new Set();
17836
- return (n2) => t2.has(n2) ? t$t : (t2.add(n2), { done: !1, hasNext: !0, next: n2 });
17898
+ return (n2) => t2.has(n2) ? t$s : (t2.add(n2), { done: !1, hasNext: !0, next: n2 });
17837
17899
  }
17838
17900
  function useSyncedRef(value) {
17839
17901
  const ref = useRef(value);
@@ -20238,7 +20300,8 @@ const initialConnection = {
20238
20300
  to: null,
20239
20301
  toHandle: null,
20240
20302
  toPosition: null,
20241
- toNode: null
20303
+ toNode: null,
20304
+ pointer: null
20242
20305
  };
20243
20306
  var ConnectionLineType;
20244
20307
  (function(ConnectionLineType2) {
@@ -21333,7 +21396,8 @@ function onPointerDown(event, { connectionMode, connectionRadius, handleId, node
21333
21396
  to: position,
21334
21397
  toHandle: null,
21335
21398
  toPosition: oppositePosition[fromHandle.position],
21336
- toNode: null
21399
+ toNode: null,
21400
+ pointer: position
21337
21401
  };
21338
21402
  function startConnection() {
21339
21403
  connectionStarted = !0, updateConnection(previousConnection), onConnectStart?.(event, { nodeId, handleId, handleType });
@@ -21372,9 +21436,10 @@ function onPointerDown(event, { connectionMode, connectionRadius, handleId, node
21372
21436
  to: result.toHandle && isValid ? rendererPointToPoint({ x: result.toHandle.x, y: result.toHandle.y }, transform2) : position,
21373
21437
  toHandle: result.toHandle,
21374
21438
  toPosition: isValid && result.toHandle ? result.toHandle.position : oppositePosition[fromHandle.position],
21375
- toNode: result.toHandle ? nodeLookup.get(result.toHandle.nodeId) : null
21439
+ toNode: result.toHandle ? nodeLookup.get(result.toHandle.nodeId) : null,
21440
+ pointer: position
21376
21441
  };
21377
- isValid && closestHandle && previousConnection.toHandle && newConnection.toHandle && previousConnection.toHandle.type === newConnection.toHandle.type && previousConnection.toHandle.nodeId === newConnection.toHandle.nodeId && previousConnection.toHandle.id === newConnection.toHandle.id && previousConnection.to.x === newConnection.to.x && previousConnection.to.y === newConnection.to.y || (updateConnection(newConnection), previousConnection = newConnection);
21442
+ updateConnection(newConnection), previousConnection = newConnection;
21378
21443
  }
21379
21444
  function onPointerUp(event2) {
21380
21445
  if (!("touches" in event2 && event2.touches.length > 0)) {
@@ -21554,7 +21619,7 @@ function createFilter({ zoomActivationKeyPressed, zoomOnScroll, zoomOnPinch, pan
21554
21619
  return (!event.ctrlKey || isWheelEvent) && buttonAllowed;
21555
21620
  };
21556
21621
  }
21557
- function XYPanZoom({ domNode, minZoom, maxZoom, paneClickDistance, translateExtent, viewport, onPanZoom, onPanZoomStart, onPanZoomEnd, onDraggingChange }) {
21622
+ function XYPanZoom({ domNode, minZoom, maxZoom, translateExtent, viewport, onPanZoom, onPanZoomStart, onPanZoomEnd, onDraggingChange }) {
21558
21623
  const zoomPanValues = {
21559
21624
  isZoomingOrPanning: !1,
21560
21625
  usedRightMouseButton: !1,
@@ -21563,7 +21628,7 @@ function XYPanZoom({ domNode, minZoom, maxZoom, paneClickDistance, translateExte
21563
21628
  timerId: void 0,
21564
21629
  panScrollTimeout: void 0,
21565
21630
  isPanScrolling: !1
21566
- }, bbox = domNode.getBoundingClientRect(), d3ZoomInstance = zoom().clickDistance(!isNumeric(paneClickDistance) || paneClickDistance < 0 ? 0 : paneClickDistance).scaleExtent([minZoom, maxZoom]).translateExtent(translateExtent), d3Selection = select(domNode).call(d3ZoomInstance);
21631
+ }, bbox = domNode.getBoundingClientRect(), d3ZoomInstance = zoom().scaleExtent([minZoom, maxZoom]).translateExtent(translateExtent), d3Selection = select(domNode).call(d3ZoomInstance);
21567
21632
  setViewportConstrained({
21568
21633
  x: viewport.x,
21569
21634
  y: viewport.y,
@@ -21579,9 +21644,11 @@ function XYPanZoom({ domNode, minZoom, maxZoom, paneClickDistance, translateExte
21579
21644
  d3ZoomInstance?.interpolate(options?.interpolate === "linear" ? interpolate$2 : interpolateZoom).transform(getD3Transition(d3Selection, options?.duration, options?.ease, () => resolve(!0)), transform2);
21580
21645
  }) : Promise.resolve(!1);
21581
21646
  }
21582
- function update({ noWheelClassName, noPanClassName, onPaneContextMenu, userSelectionActive, panOnScroll, panOnDrag, panOnScrollMode, panOnScrollSpeed, preventScrolling, zoomOnPinch, zoomOnScroll, zoomOnDoubleClick, zoomActivationKeyPressed, lib: lib2, onTransformChange, connectionInProgress }) {
21647
+ function update({ noWheelClassName, noPanClassName, onPaneContextMenu, userSelectionActive, panOnScroll, panOnDrag, panOnScrollMode, panOnScrollSpeed, preventScrolling, zoomOnPinch, zoomOnScroll, zoomOnDoubleClick, zoomActivationKeyPressed, lib: lib2, onTransformChange, connectionInProgress, paneClickDistance, selectionOnDrag }) {
21583
21648
  userSelectionActive && !zoomPanValues.isZoomingOrPanning && destroy();
21584
- const wheelHandler = panOnScroll && !zoomActivationKeyPressed && !userSelectionActive ? createPanOnScrollHandler({
21649
+ const isPanOnScroll = panOnScroll && !zoomActivationKeyPressed && !userSelectionActive;
21650
+ d3ZoomInstance.clickDistance(selectionOnDrag ? 1 / 0 : !isNumeric(paneClickDistance) || paneClickDistance < 0 ? 0 : paneClickDistance);
21651
+ const wheelHandler = isPanOnScroll ? createPanOnScrollHandler({
21585
21652
  zoomPanValues,
21586
21653
  noWheelClassName,
21587
21654
  d3Selection,
@@ -22072,7 +22139,6 @@ const defaultNodeOrigin = [0, 0], defaultViewport = { x: 0, y: 0, zoom: 1 }, rea
22072
22139
  "onBeforeDelete",
22073
22140
  "debug",
22074
22141
  "autoPanSpeed",
22075
- "paneClickDistance",
22076
22142
  "ariaLabelConfig"
22077
22143
  ], fieldsToTrack = [...reactFlowFieldsToTrack, "rfId"], selector$l = (s) => ({
22078
22144
  setNodes: s.setNodes,
@@ -22082,8 +22148,7 @@ const defaultNodeOrigin = [0, 0], defaultViewport = { x: 0, y: 0, zoom: 1 }, rea
22082
22148
  setTranslateExtent: s.setTranslateExtent,
22083
22149
  setNodeExtent: s.setNodeExtent,
22084
22150
  reset: s.reset,
22085
- setDefaultNodesAndEdges: s.setDefaultNodesAndEdges,
22086
- setPaneClickDistance: s.setPaneClickDistance
22151
+ setDefaultNodesAndEdges: s.setDefaultNodesAndEdges
22087
22152
  }), initPrevValues = {
22088
22153
  /*
22089
22154
  * these are values that are also passed directly to other components
@@ -22096,11 +22161,10 @@ const defaultNodeOrigin = [0, 0], defaultViewport = { x: 0, y: 0, zoom: 1 }, rea
22096
22161
  maxZoom: 2,
22097
22162
  elementsSelectable: !0,
22098
22163
  noPanClassName: "nopan",
22099
- rfId: "1",
22100
- paneClickDistance: 0
22164
+ rfId: "1"
22101
22165
  };
22102
22166
  function StoreUpdater(props2) {
22103
- const { setNodes, setEdges, setMinZoom, setMaxZoom, setTranslateExtent, setNodeExtent, reset, setDefaultNodesAndEdges, setPaneClickDistance } = useStore$1(selector$l, shallow$1), store = useStoreApi();
22167
+ const { setNodes, setEdges, setMinZoom, setMaxZoom, setTranslateExtent, setNodeExtent, reset, setDefaultNodesAndEdges } = useStore$1(selector$l, shallow$1), store = useStoreApi();
22104
22168
  useEffect(() => (setDefaultNodesAndEdges(props2.defaultNodes, props2.defaultEdges), () => {
22105
22169
  previousFields.current = initPrevValues, reset();
22106
22170
  }), []);
@@ -22109,7 +22173,7 @@ function StoreUpdater(props2) {
22109
22173
  () => {
22110
22174
  for (const fieldName of fieldsToTrack) {
22111
22175
  const fieldValue = props2[fieldName], previousFieldValue = previousFields.current[fieldName];
22112
- fieldValue !== previousFieldValue && (typeof props2[fieldName] > "u" || (fieldName === "nodes" ? setNodes(fieldValue) : fieldName === "edges" ? setEdges(fieldValue) : fieldName === "minZoom" ? setMinZoom(fieldValue) : fieldName === "maxZoom" ? setMaxZoom(fieldValue) : fieldName === "translateExtent" ? setTranslateExtent(fieldValue) : fieldName === "nodeExtent" ? setNodeExtent(fieldValue) : fieldName === "paneClickDistance" ? setPaneClickDistance(fieldValue) : fieldName === "ariaLabelConfig" ? store.setState({ ariaLabelConfig: mergeAriaLabelConfig(fieldValue) }) : fieldName === "fitView" ? store.setState({ fitViewQueued: fieldValue }) : fieldName === "fitViewOptions" ? store.setState({ fitViewOptions: fieldValue }) : store.setState({ [fieldName]: fieldValue })));
22176
+ fieldValue !== previousFieldValue && (typeof props2[fieldName] > "u" || (fieldName === "nodes" ? setNodes(fieldValue) : fieldName === "edges" ? setEdges(fieldValue) : fieldName === "minZoom" ? setMinZoom(fieldValue) : fieldName === "maxZoom" ? setMaxZoom(fieldValue) : fieldName === "translateExtent" ? setTranslateExtent(fieldValue) : fieldName === "nodeExtent" ? setNodeExtent(fieldValue) : fieldName === "ariaLabelConfig" ? store.setState({ ariaLabelConfig: mergeAriaLabelConfig(fieldValue) }) : fieldName === "fitView" ? store.setState({ fitViewQueued: fieldValue }) : fieldName === "fitViewOptions" ? store.setState({ fitViewOptions: fieldValue }) : store.setState({ [fieldName]: fieldValue })));
22113
22177
  }
22114
22178
  previousFields.current = props2;
22115
22179
  },
@@ -22554,7 +22618,7 @@ const containerStyle = {
22554
22618
  lib: s.lib,
22555
22619
  connectionInProgress: s.connection.inProgress
22556
22620
  });
22557
- function ZoomPane({ onPaneContextMenu, zoomOnScroll = !0, zoomOnPinch = !0, panOnScroll = !1, panOnScrollSpeed = 0.5, panOnScrollMode = PanOnScrollMode.Free, zoomOnDoubleClick = !0, panOnDrag = !0, defaultViewport: defaultViewport2, translateExtent, minZoom, maxZoom, zoomActivationKeyCode, preventScrolling = !0, children: children2, noWheelClassName, noPanClassName, onViewportChange, isControlledViewport, paneClickDistance }) {
22621
+ function ZoomPane({ onPaneContextMenu, zoomOnScroll = !0, zoomOnPinch = !0, panOnScroll = !1, panOnScrollSpeed = 0.5, panOnScrollMode = PanOnScrollMode.Free, zoomOnDoubleClick = !0, panOnDrag = !0, defaultViewport: defaultViewport2, translateExtent, minZoom, maxZoom, zoomActivationKeyCode, preventScrolling = !0, children: children2, noWheelClassName, noPanClassName, onViewportChange, isControlledViewport, paneClickDistance, selectionOnDrag }) {
22558
22622
  const store = useStoreApi(), zoomPane = useRef(null), { userSelectionActive, lib: lib2, connectionInProgress } = useStore$1(selector$j, shallow$1), zoomActivationKeyPressed = useKeyPress(zoomActivationKeyCode), panZoom = useRef();
22559
22623
  useResizeHandler(zoomPane);
22560
22624
  const onTransformChange = useCallback((transform2) => {
@@ -22568,7 +22632,6 @@ function ZoomPane({ onPaneContextMenu, zoomOnScroll = !0, zoomOnPinch = !0, panO
22568
22632
  maxZoom,
22569
22633
  translateExtent,
22570
22634
  viewport: defaultViewport2,
22571
- paneClickDistance,
22572
22635
  onDraggingChange: (paneDragging) => store.setState({ paneDragging }),
22573
22636
  onPanZoomStart: (event, vp) => {
22574
22637
  const { onViewportChangeStart, onMoveStart } = store.getState();
@@ -22609,7 +22672,9 @@ function ZoomPane({ onPaneContextMenu, zoomOnScroll = !0, zoomOnPinch = !0, panO
22609
22672
  noWheelClassName,
22610
22673
  lib: lib2,
22611
22674
  onTransformChange,
22612
- connectionInProgress
22675
+ connectionInProgress,
22676
+ selectionOnDrag,
22677
+ paneClickDistance
22613
22678
  });
22614
22679
  }, [
22615
22680
  onPaneContextMenu,
@@ -22627,7 +22692,9 @@ function ZoomPane({ onPaneContextMenu, zoomOnScroll = !0, zoomOnPinch = !0, panO
22627
22692
  noWheelClassName,
22628
22693
  lib2,
22629
22694
  onTransformChange,
22630
- connectionInProgress
22695
+ connectionInProgress,
22696
+ selectionOnDrag,
22697
+ paneClickDistance
22631
22698
  ]), jsx("div", { className: "react-flow__renderer", ref: zoomPane, style: containerStyle, children: children2 });
22632
22699
  }
22633
22700
  const selector$i = (s) => ({
@@ -22650,8 +22717,8 @@ const wrapHandler = (handler, containerRef) => (event) => {
22650
22717
  connectionInProgress: s.connection.inProgress,
22651
22718
  dragging: s.paneDragging
22652
22719
  });
22653
- function Pane({ isSelecting, selectionKeyPressed, selectionMode = SelectionMode.Full, panOnDrag, selectionOnDrag, onSelectionStart, onSelectionEnd, onPaneClick, onPaneContextMenu, onPaneScroll, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, children: children2 }) {
22654
- const store = useStoreApi(), { userSelectionActive, elementsSelectable, dragging, connectionInProgress } = useStore$1(selector$h, shallow$1), hasActiveSelection = elementsSelectable && (isSelecting || userSelectionActive), container = useRef(null), containerBounds = useRef(), selectedNodeIds = useRef(/* @__PURE__ */ new Set()), selectedEdgeIds = useRef(/* @__PURE__ */ new Set()), selectionInProgress = useRef(!1), selectionStarted = useRef(!1), onClick = (event) => {
22720
+ function Pane({ isSelecting, selectionKeyPressed, selectionMode = SelectionMode.Full, panOnDrag, paneClickDistance, selectionOnDrag, onSelectionStart, onSelectionEnd, onPaneClick, onPaneContextMenu, onPaneScroll, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, children: children2 }) {
22721
+ const store = useStoreApi(), { userSelectionActive, elementsSelectable, dragging, connectionInProgress } = useStore$1(selector$h, shallow$1), isSelectionEnabled = elementsSelectable && (isSelecting || userSelectionActive), container = useRef(null), containerBounds = useRef(), selectedNodeIds = useRef(/* @__PURE__ */ new Set()), selectedEdgeIds = useRef(/* @__PURE__ */ new Set()), selectionInProgress = useRef(!1), onClick = (event) => {
22655
22722
  if (selectionInProgress.current || connectionInProgress) {
22656
22723
  selectionInProgress.current = !1;
22657
22724
  return;
@@ -22664,16 +22731,17 @@ function Pane({ isSelecting, selectionKeyPressed, selectionMode = SelectionMode.
22664
22731
  }
22665
22732
  onPaneContextMenu?.(event);
22666
22733
  }, onWheel = onPaneScroll ? (event) => onPaneScroll(event) : void 0, onClickCapture = (event) => {
22667
- (selectionOnDrag && container.current === event.target || !selectionOnDrag || selectionKeyPressed) && event.stopPropagation();
22734
+ selectionInProgress.current && (event.stopPropagation(), selectionInProgress.current = !1);
22668
22735
  }, onPointerDownCapture = (event) => {
22669
- const { resetSelectedElements, domNode } = store.getState();
22670
- containerBounds.current = domNode?.getBoundingClientRect();
22671
- const isNoKeyEvent = event.target !== container.current && !!event.target.closest(".nokey"), isSelectionActive = selectionOnDrag && container.current === event.target || !selectionOnDrag || selectionKeyPressed;
22672
- if (!elementsSelectable || !isSelecting || event.button !== 0 || !containerBounds.current || isNoKeyEvent || !isSelectionActive || !event.isPrimary)
22736
+ const { domNode } = store.getState();
22737
+ if (containerBounds.current = domNode?.getBoundingClientRect(), !containerBounds.current)
22673
22738
  return;
22674
- event.stopPropagation(), event.preventDefault(), event.target?.setPointerCapture?.(event.pointerId), selectionStarted.current = !0, selectionInProgress.current = !1;
22739
+ const eventTargetIsContainer = event.target === container.current;
22740
+ if (!eventTargetIsContainer && !!event.target.closest(".nokey") || !isSelecting || !(selectionOnDrag && eventTargetIsContainer || selectionKeyPressed) || event.button !== 0 || !event.isPrimary)
22741
+ return;
22742
+ event.target?.setPointerCapture?.(event.pointerId), selectionInProgress.current = !1;
22675
22743
  const { x: x2, y: y2 } = getEventPosition(event.nativeEvent, containerBounds.current);
22676
- resetSelectedElements(), store.setState({
22744
+ store.setState({
22677
22745
  userSelectionRect: {
22678
22746
  width: 0,
22679
22747
  height: 0,
@@ -22682,13 +22750,20 @@ function Pane({ isSelecting, selectionKeyPressed, selectionMode = SelectionMode.
22682
22750
  x: x2,
22683
22751
  y: y2
22684
22752
  }
22685
- }), onSelectionStart?.(event);
22753
+ }), eventTargetIsContainer || (event.stopPropagation(), event.preventDefault());
22686
22754
  }, onPointerMove = (event) => {
22687
- const { userSelectionRect, transform: transform2, nodeLookup, edgeLookup, connectionLookup, triggerNodeChanges, triggerEdgeChanges, defaultEdgeOptions } = store.getState();
22755
+ const { userSelectionRect, transform: transform2, nodeLookup, edgeLookup, connectionLookup, triggerNodeChanges, triggerEdgeChanges, defaultEdgeOptions, resetSelectedElements } = store.getState();
22688
22756
  if (!containerBounds.current || !userSelectionRect)
22689
22757
  return;
22758
+ const { x: mouseX, y: mouseY } = getEventPosition(event.nativeEvent, containerBounds.current), { startX, startY } = userSelectionRect;
22759
+ if (!selectionInProgress.current) {
22760
+ const requiredDistance = selectionKeyPressed ? 0 : paneClickDistance;
22761
+ if (Math.hypot(mouseX - startX, mouseY - startY) <= requiredDistance)
22762
+ return;
22763
+ resetSelectedElements(), onSelectionStart?.(event);
22764
+ }
22690
22765
  selectionInProgress.current = !0;
22691
- const { x: mouseX, y: mouseY } = getEventPosition(event.nativeEvent, containerBounds.current), { startX, startY } = userSelectionRect, nextUserSelectRect = {
22766
+ const nextUserSelectRect = {
22692
22767
  startX,
22693
22768
  startY,
22694
22769
  x: mouseX < startX ? mouseX : startX,
@@ -22720,17 +22795,14 @@ function Pane({ isSelecting, selectionKeyPressed, selectionMode = SelectionMode.
22720
22795
  nodesSelectionActive: !1
22721
22796
  });
22722
22797
  }, onPointerUp = (event) => {
22723
- if (event.button !== 0 || !selectionStarted.current)
22724
- return;
22725
- event.target?.releasePointerCapture?.(event.pointerId);
22726
- const { userSelectionRect } = store.getState();
22727
- !userSelectionActive && userSelectionRect && event.target === container.current && onClick?.(event), store.setState({
22798
+ event.button === 0 && (event.target?.releasePointerCapture?.(event.pointerId), !userSelectionActive && event.target === container.current && store.getState().userSelectionRect && onClick?.(event), store.setState({
22728
22799
  userSelectionActive: !1,
22729
- userSelectionRect: null,
22800
+ userSelectionRect: null
22801
+ }), selectionInProgress.current && (onSelectionEnd?.(event), store.setState({
22730
22802
  nodesSelectionActive: selectedNodeIds.current.size > 0
22731
- }), onSelectionEnd?.(event), (selectionKeyPressed || selectionOnDrag) && (selectionInProgress.current = !1), selectionStarted.current = !1;
22803
+ })));
22732
22804
  }, draggable = panOnDrag === !0 || Array.isArray(panOnDrag) && panOnDrag.includes(0);
22733
- return jsxs("div", { className: cc(["react-flow__pane", { draggable, dragging, selection: isSelecting }]), onClick: hasActiveSelection ? void 0 : wrapHandler(onClick, container), onContextMenu: wrapHandler(onContextMenu, container), onWheel: wrapHandler(onWheel, container), onPointerEnter: hasActiveSelection ? void 0 : onPaneMouseEnter, onPointerMove: hasActiveSelection ? onPointerMove : onPaneMouseMove, onPointerUp: hasActiveSelection ? onPointerUp : void 0, onPointerDownCapture: hasActiveSelection ? onPointerDownCapture : void 0, onClickCapture: hasActiveSelection ? onClickCapture : void 0, onPointerLeave: onPaneMouseLeave, ref: container, style: containerStyle, children: [children2, jsx(UserSelection, {})] });
22805
+ return jsxs("div", { className: cc(["react-flow__pane", { draggable, dragging, selection: isSelecting }]), onClick: isSelectionEnabled ? void 0 : wrapHandler(onClick, container), onContextMenu: wrapHandler(onContextMenu, container), onWheel: wrapHandler(onWheel, container), onPointerEnter: isSelectionEnabled ? void 0 : onPaneMouseEnter, onPointerMove: isSelectionEnabled ? onPointerMove : onPaneMouseMove, onPointerUp: isSelectionEnabled ? onPointerUp : void 0, onPointerDownCapture: isSelectionEnabled ? onPointerDownCapture : void 0, onClickCapture: isSelectionEnabled ? onClickCapture : void 0, onPointerLeave: onPaneMouseLeave, ref: container, style: containerStyle, children: [children2, jsx(UserSelection, {})] });
22734
22806
  }
22735
22807
  function handleNodeClick({ id: id2, store, unselect = !1, nodeRef }) {
22736
22808
  const { addSelectedNodes, unselectNodesAndEdges, multiSelectionActive, nodeLookup, onError } = store.getState(), node = nodeLookup.get(id2);
@@ -22989,7 +23061,7 @@ function NodesSelection({ onSelectionContextMenu, noPanClassName, disableKeyboar
22989
23061
  const win = typeof window < "u" ? window : void 0, selector$e = (s) => ({ nodesSelectionActive: s.nodesSelectionActive, userSelectionActive: s.userSelectionActive });
22990
23062
  function FlowRendererComponent({ children: children2, onPaneClick, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, onPaneContextMenu, onPaneScroll, paneClickDistance, deleteKeyCode, selectionKeyCode, selectionOnDrag, selectionMode, onSelectionStart, onSelectionEnd, multiSelectionKeyCode, panActivationKeyCode, zoomActivationKeyCode, elementsSelectable, zoomOnScroll, zoomOnPinch, panOnScroll: _panOnScroll, panOnScrollSpeed, panOnScrollMode, zoomOnDoubleClick, panOnDrag: _panOnDrag, defaultViewport: defaultViewport2, translateExtent, minZoom, maxZoom, preventScrolling, onSelectionContextMenu, noWheelClassName, noPanClassName, disableKeyboardA11y, onViewportChange, isControlledViewport }) {
22991
23063
  const { nodesSelectionActive, userSelectionActive } = useStore$1(selector$e), selectionKeyPressed = useKeyPress(selectionKeyCode, { target: win }), panActivationKeyPressed = useKeyPress(panActivationKeyCode, { target: win }), panOnDrag = panActivationKeyPressed || _panOnDrag, panOnScroll = panActivationKeyPressed || _panOnScroll, _selectionOnDrag = selectionOnDrag && panOnDrag !== !0, isSelecting = selectionKeyPressed || userSelectionActive || _selectionOnDrag;
22992
- return useGlobalKeyHandler({ deleteKeyCode, multiSelectionKeyCode }), jsx(ZoomPane, { onPaneContextMenu, elementsSelectable, zoomOnScroll, zoomOnPinch, panOnScroll, panOnScrollSpeed, panOnScrollMode, zoomOnDoubleClick, panOnDrag: !selectionKeyPressed && panOnDrag, defaultViewport: defaultViewport2, translateExtent, minZoom, maxZoom, zoomActivationKeyCode, preventScrolling, noWheelClassName, noPanClassName, onViewportChange, isControlledViewport, paneClickDistance, children: jsxs(Pane, { onSelectionStart, onSelectionEnd, onPaneClick, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, onPaneContextMenu, onPaneScroll, panOnDrag, isSelecting: !!isSelecting, selectionMode, selectionKeyPressed, selectionOnDrag: _selectionOnDrag, children: [children2, nodesSelectionActive && jsx(NodesSelection, { onSelectionContextMenu, noPanClassName, disableKeyboardA11y })] }) });
23064
+ return useGlobalKeyHandler({ deleteKeyCode, multiSelectionKeyCode }), jsx(ZoomPane, { onPaneContextMenu, elementsSelectable, zoomOnScroll, zoomOnPinch, panOnScroll, panOnScrollSpeed, panOnScrollMode, zoomOnDoubleClick, panOnDrag: !selectionKeyPressed && panOnDrag, defaultViewport: defaultViewport2, translateExtent, minZoom, maxZoom, zoomActivationKeyCode, preventScrolling, noWheelClassName, noPanClassName, onViewportChange, isControlledViewport, paneClickDistance, selectionOnDrag: _selectionOnDrag, children: jsxs(Pane, { onSelectionStart, onSelectionEnd, onPaneClick, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, onPaneContextMenu, onPaneScroll, panOnDrag, isSelecting: !!isSelecting, selectionMode, selectionKeyPressed, paneClickDistance, selectionOnDrag: _selectionOnDrag, children: [children2, nodesSelectionActive && jsx(NodesSelection, { onSelectionContextMenu, noPanClassName, disableKeyboardA11y })] }) });
22993
23065
  }
22994
23066
  FlowRendererComponent.displayName = "FlowRenderer";
22995
23067
  const FlowRenderer = memo$2(FlowRendererComponent), selector$d = (onlyRenderVisible) => (s) => onlyRenderVisible ? getNodesInside(s.nodeLookup, { x: 0, y: 0, width: s.width, height: s.height }, s.transform, !0).map((node) => node.id) : Array.from(s.nodeLookup.keys());
@@ -23506,11 +23578,11 @@ function ConnectionLineWrapper({ containerStyle: containerStyle2, style: style2,
23506
23578
  return !(width && nodesConnectable && inProgress) ? null : jsx("svg", { style: containerStyle2, width, height, className: "react-flow__connectionline react-flow__container", children: jsx("g", { className: cc(["react-flow__connection", getConnectionStatus(isValid)]), children: jsx(ConnectionLine, { style: style2, type, CustomComponent: component, isValid }) }) });
23507
23579
  }
23508
23580
  const ConnectionLine = ({ style: style2, type = ConnectionLineType.Bezier, CustomComponent, isValid }) => {
23509
- const { inProgress, from, fromNode, fromHandle, fromPosition, to, toNode, toHandle, toPosition } = useConnection();
23581
+ const { inProgress, from, fromNode, fromHandle, fromPosition, to, toNode, toHandle, toPosition, pointer: pointer2 } = useConnection();
23510
23582
  if (!inProgress)
23511
23583
  return;
23512
23584
  if (CustomComponent)
23513
- return jsx(CustomComponent, { connectionLineType: type, connectionLineStyle: style2, fromNode, fromHandle, fromX: from.x, fromY: from.y, toX: to.x, toY: to.y, fromPosition, toPosition, connectionStatus: getConnectionStatus(isValid), toNode, toHandle });
23585
+ return jsx(CustomComponent, { connectionLineType: type, connectionLineStyle: style2, fromNode, fromHandle, fromX: from.x, fromY: from.y, toX: to.x, toY: to.y, fromPosition, toPosition, connectionStatus: getConnectionStatus(isValid), toNode, toHandle, pointer: pointer2 });
23514
23586
  let path = "";
23515
23587
  const pathParams = {
23516
23588
  sourceX: from.x,
@@ -23775,9 +23847,6 @@ const GraphView = memo$2(GraphViewComponent), getInitialState = ({ nodes, edges,
23775
23847
  setTranslateExtent: (translateExtent) => {
23776
23848
  get2().panZoom?.setTranslateExtent(translateExtent), set2({ translateExtent });
23777
23849
  },
23778
- setPaneClickDistance: (clickDistance) => {
23779
- get2().panZoom?.setClickDistance(clickDistance);
23780
- },
23781
23850
  resetSelectedElements: () => {
23782
23851
  const { edges: edges2, nodes: nodes2, triggerNodeChanges, triggerEdgeChanges, elementsSelectable } = get2();
23783
23852
  if (!elementsSelectable)
@@ -23847,11 +23916,11 @@ const wrapperStyle = {
23847
23916
  position: "relative",
23848
23917
  zIndex: 0
23849
23918
  };
23850
- function ReactFlow({ nodes, edges, defaultNodes, defaultEdges, className, nodeTypes, edgeTypes, onNodeClick, onEdgeClick, onInit, onMove, onMoveStart, onMoveEnd, onConnect, onConnectStart, onConnectEnd, onClickConnectStart, onClickConnectEnd, onNodeMouseEnter, onNodeMouseMove, onNodeMouseLeave, onNodeContextMenu, onNodeDoubleClick, onNodeDragStart, onNodeDrag, onNodeDragStop, onNodesDelete, onEdgesDelete, onDelete, onSelectionChange, onSelectionDragStart, onSelectionDrag, onSelectionDragStop, onSelectionContextMenu, onSelectionStart, onSelectionEnd, onBeforeDelete, connectionMode, connectionLineType = ConnectionLineType.Bezier, connectionLineStyle, connectionLineComponent, connectionLineContainerStyle, deleteKeyCode = "Backspace", selectionKeyCode = "Shift", selectionOnDrag = !1, selectionMode = SelectionMode.Full, panActivationKeyCode = "Space", multiSelectionKeyCode = isMacOs() ? "Meta" : "Control", zoomActivationKeyCode = isMacOs() ? "Meta" : "Control", snapToGrid, snapGrid, onlyRenderVisibleElements = !1, selectNodesOnDrag, nodesDraggable, autoPanOnNodeFocus, nodesConnectable, nodesFocusable, nodeOrigin = defaultNodeOrigin, edgesFocusable, edgesReconnectable, elementsSelectable = !0, defaultViewport: defaultViewport$1 = defaultViewport, minZoom = 0.5, maxZoom = 2, translateExtent = infiniteExtent, preventScrolling = !0, nodeExtent, defaultMarkerColor = "#b1b1b7", zoomOnScroll = !0, zoomOnPinch = !0, panOnScroll = !1, panOnScrollSpeed = 0.5, panOnScrollMode = PanOnScrollMode.Free, zoomOnDoubleClick = !0, panOnDrag = !0, onPaneClick, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, onPaneScroll, onPaneContextMenu, paneClickDistance = 0, nodeClickDistance = 0, children: children2, onReconnect, onReconnectStart, onReconnectEnd, onEdgeContextMenu, onEdgeDoubleClick, onEdgeMouseEnter, onEdgeMouseMove, onEdgeMouseLeave, reconnectRadius = 10, onNodesChange, onEdgesChange, noDragClassName = "nodrag", noWheelClassName = "nowheel", noPanClassName = "nopan", fitView, fitViewOptions, connectOnClick, attributionPosition, proOptions, defaultEdgeOptions, elevateNodesOnSelect, elevateEdgesOnSelect, disableKeyboardA11y = !1, autoPanOnConnect, autoPanOnNodeDrag, autoPanSpeed, connectionRadius, isValidConnection, onError, style: style2, id: id2, nodeDragThreshold, connectionDragThreshold, viewport, onViewportChange, width, height, colorMode = "light", debug: debug2, onScroll, ariaLabelConfig, ...rest }, ref) {
23919
+ function ReactFlow({ nodes, edges, defaultNodes, defaultEdges, className, nodeTypes, edgeTypes, onNodeClick, onEdgeClick, onInit, onMove, onMoveStart, onMoveEnd, onConnect, onConnectStart, onConnectEnd, onClickConnectStart, onClickConnectEnd, onNodeMouseEnter, onNodeMouseMove, onNodeMouseLeave, onNodeContextMenu, onNodeDoubleClick, onNodeDragStart, onNodeDrag, onNodeDragStop, onNodesDelete, onEdgesDelete, onDelete, onSelectionChange, onSelectionDragStart, onSelectionDrag, onSelectionDragStop, onSelectionContextMenu, onSelectionStart, onSelectionEnd, onBeforeDelete, connectionMode, connectionLineType = ConnectionLineType.Bezier, connectionLineStyle, connectionLineComponent, connectionLineContainerStyle, deleteKeyCode = "Backspace", selectionKeyCode = "Shift", selectionOnDrag = !1, selectionMode = SelectionMode.Full, panActivationKeyCode = "Space", multiSelectionKeyCode = isMacOs() ? "Meta" : "Control", zoomActivationKeyCode = isMacOs() ? "Meta" : "Control", snapToGrid, snapGrid, onlyRenderVisibleElements = !1, selectNodesOnDrag, nodesDraggable, autoPanOnNodeFocus, nodesConnectable, nodesFocusable, nodeOrigin = defaultNodeOrigin, edgesFocusable, edgesReconnectable, elementsSelectable = !0, defaultViewport: defaultViewport$1 = defaultViewport, minZoom = 0.5, maxZoom = 2, translateExtent = infiniteExtent, preventScrolling = !0, nodeExtent, defaultMarkerColor = "#b1b1b7", zoomOnScroll = !0, zoomOnPinch = !0, panOnScroll = !1, panOnScrollSpeed = 0.5, panOnScrollMode = PanOnScrollMode.Free, zoomOnDoubleClick = !0, panOnDrag = !0, onPaneClick, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, onPaneScroll, onPaneContextMenu, paneClickDistance = 1, nodeClickDistance = 0, children: children2, onReconnect, onReconnectStart, onReconnectEnd, onEdgeContextMenu, onEdgeDoubleClick, onEdgeMouseEnter, onEdgeMouseMove, onEdgeMouseLeave, reconnectRadius = 10, onNodesChange, onEdgesChange, noDragClassName = "nodrag", noWheelClassName = "nowheel", noPanClassName = "nopan", fitView, fitViewOptions, connectOnClick, attributionPosition, proOptions, defaultEdgeOptions, elevateNodesOnSelect, elevateEdgesOnSelect, disableKeyboardA11y = !1, autoPanOnConnect, autoPanOnNodeDrag, autoPanSpeed, connectionRadius, isValidConnection, onError, style: style2, id: id2, nodeDragThreshold, connectionDragThreshold, viewport, onViewportChange, width, height, colorMode = "light", debug: debug2, onScroll, ariaLabelConfig, ...rest }, ref) {
23851
23920
  const rfId = id2 || "1", colorModeClassName = useColorModeClass(colorMode), wrapperOnScroll = useCallback((e2) => {
23852
23921
  e2.currentTarget.scrollTo({ top: 0, left: 0, behavior: "instant" }), onScroll?.(e2);
23853
23922
  }, [onScroll]);
23854
- return jsx("div", { "data-testid": "rf__wrapper", ...rest, onScroll: wrapperOnScroll, style: { ...style2, ...wrapperStyle }, ref, className: cc(["react-flow", className, colorModeClassName]), id: id2, role: "application", children: jsxs(Wrapper, { nodes, edges, width, height, fitView, fitViewOptions, minZoom, maxZoom, nodeOrigin, nodeExtent, children: [jsx(GraphView, { onInit, onNodeClick, onEdgeClick, onNodeMouseEnter, onNodeMouseMove, onNodeMouseLeave, onNodeContextMenu, onNodeDoubleClick, nodeTypes, edgeTypes, connectionLineType, connectionLineStyle, connectionLineComponent, connectionLineContainerStyle, selectionKeyCode, selectionOnDrag, selectionMode, deleteKeyCode, multiSelectionKeyCode, panActivationKeyCode, zoomActivationKeyCode, onlyRenderVisibleElements, defaultViewport: defaultViewport$1, translateExtent, minZoom, maxZoom, preventScrolling, zoomOnScroll, zoomOnPinch, zoomOnDoubleClick, panOnScroll, panOnScrollSpeed, panOnScrollMode, panOnDrag, onPaneClick, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, onPaneScroll, onPaneContextMenu, paneClickDistance, nodeClickDistance, onSelectionContextMenu, onSelectionStart, onSelectionEnd, onReconnect, onReconnectStart, onReconnectEnd, onEdgeContextMenu, onEdgeDoubleClick, onEdgeMouseEnter, onEdgeMouseMove, onEdgeMouseLeave, reconnectRadius, defaultMarkerColor, noDragClassName, noWheelClassName, noPanClassName, rfId, disableKeyboardA11y, nodeExtent, viewport, onViewportChange }), jsx(StoreUpdater, { nodes, edges, defaultNodes, defaultEdges, onConnect, onConnectStart, onConnectEnd, onClickConnectStart, onClickConnectEnd, nodesDraggable, autoPanOnNodeFocus, nodesConnectable, nodesFocusable, edgesFocusable, edgesReconnectable, elementsSelectable, elevateNodesOnSelect, elevateEdgesOnSelect, minZoom, maxZoom, nodeExtent, onNodesChange, onEdgesChange, snapToGrid, snapGrid, connectionMode, translateExtent, connectOnClick, defaultEdgeOptions, fitView, fitViewOptions, onNodesDelete, onEdgesDelete, onDelete, onNodeDragStart, onNodeDrag, onNodeDragStop, onSelectionDrag, onSelectionDragStart, onSelectionDragStop, onMove, onMoveStart, onMoveEnd, noPanClassName, nodeOrigin, rfId, autoPanOnConnect, autoPanOnNodeDrag, autoPanSpeed, onError, connectionRadius, isValidConnection, selectNodesOnDrag, nodeDragThreshold, connectionDragThreshold, onBeforeDelete, paneClickDistance, debug: debug2, ariaLabelConfig }), jsx(SelectionListener, { onSelectionChange }), children2, jsx(Attribution, { proOptions, position: attributionPosition }), jsx(A11yDescriptions, { rfId, disableKeyboardA11y })] }) });
23923
+ return jsx("div", { "data-testid": "rf__wrapper", ...rest, onScroll: wrapperOnScroll, style: { ...style2, ...wrapperStyle }, ref, className: cc(["react-flow", className, colorModeClassName]), id: id2, role: "application", children: jsxs(Wrapper, { nodes, edges, width, height, fitView, fitViewOptions, minZoom, maxZoom, nodeOrigin, nodeExtent, children: [jsx(GraphView, { onInit, onNodeClick, onEdgeClick, onNodeMouseEnter, onNodeMouseMove, onNodeMouseLeave, onNodeContextMenu, onNodeDoubleClick, nodeTypes, edgeTypes, connectionLineType, connectionLineStyle, connectionLineComponent, connectionLineContainerStyle, selectionKeyCode, selectionOnDrag, selectionMode, deleteKeyCode, multiSelectionKeyCode, panActivationKeyCode, zoomActivationKeyCode, onlyRenderVisibleElements, defaultViewport: defaultViewport$1, translateExtent, minZoom, maxZoom, preventScrolling, zoomOnScroll, zoomOnPinch, zoomOnDoubleClick, panOnScroll, panOnScrollSpeed, panOnScrollMode, panOnDrag, onPaneClick, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, onPaneScroll, onPaneContextMenu, paneClickDistance, nodeClickDistance, onSelectionContextMenu, onSelectionStart, onSelectionEnd, onReconnect, onReconnectStart, onReconnectEnd, onEdgeContextMenu, onEdgeDoubleClick, onEdgeMouseEnter, onEdgeMouseMove, onEdgeMouseLeave, reconnectRadius, defaultMarkerColor, noDragClassName, noWheelClassName, noPanClassName, rfId, disableKeyboardA11y, nodeExtent, viewport, onViewportChange }), jsx(StoreUpdater, { nodes, edges, defaultNodes, defaultEdges, onConnect, onConnectStart, onConnectEnd, onClickConnectStart, onClickConnectEnd, nodesDraggable, autoPanOnNodeFocus, nodesConnectable, nodesFocusable, edgesFocusable, edgesReconnectable, elementsSelectable, elevateNodesOnSelect, elevateEdgesOnSelect, minZoom, maxZoom, nodeExtent, onNodesChange, onEdgesChange, snapToGrid, snapGrid, connectionMode, translateExtent, connectOnClick, defaultEdgeOptions, fitView, fitViewOptions, onNodesDelete, onEdgesDelete, onDelete, onNodeDragStart, onNodeDrag, onNodeDragStop, onSelectionDrag, onSelectionDragStart, onSelectionDragStop, onMove, onMoveStart, onMoveEnd, noPanClassName, nodeOrigin, rfId, autoPanOnConnect, autoPanOnNodeDrag, autoPanSpeed, onError, connectionRadius, isValidConnection, selectNodesOnDrag, nodeDragThreshold, connectionDragThreshold, onBeforeDelete, debug: debug2, ariaLabelConfig }), jsx(SelectionListener, { onSelectionChange }), children2, jsx(Attribution, { proOptions, position: attributionPosition }), jsx(A11yDescriptions, { rfId, disableKeyboardA11y })] }) });
23855
23924
  }
23856
23925
  var index = fixedForwardRef(ReactFlow);
23857
23926
  const selector$6 = (s) => s.domNode?.querySelector(".react-flow__edgelabel-renderer");
@@ -24256,9 +24325,12 @@ function getShortTag(value) {
24256
24325
  function getStrictProperties(object2) {
24257
24326
  return getOwnPropertyNames(object2).concat(getOwnPropertySymbols(object2));
24258
24327
  }
24259
- var hasOwn = Object.hasOwn || (function(object2, property) {
24260
- return hasOwnProperty.call(object2, property);
24261
- });
24328
+ var hasOwn = (
24329
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
24330
+ Object.hasOwn || (function(object2, property) {
24331
+ return hasOwnProperty.call(object2, property);
24332
+ })
24333
+ );
24262
24334
  function sameValueZeroEqual(a2, b) {
24263
24335
  return a2 === b || !a2 && !b && a2 !== a2 && b !== b;
24264
24336
  }
@@ -24365,7 +24437,7 @@ function areUrlsEqual(a2, b) {
24365
24437
  function isPropertyEqual(a2, b, state, property) {
24366
24438
  return (property === REACT_OWNER || property === PREACT_OWNER || property === PREACT_VNODE) && (a2.$$typeof || b.$$typeof) ? !0 : hasOwn(b, property) && state.equals(a2[property], b[property], property, property, a2, b, state);
24367
24439
  }
24368
- var ARGUMENTS_TAG = "[object Arguments]", BOOLEAN_TAG = "[object Boolean]", DATE_TAG = "[object Date]", ERROR_TAG = "[object Error]", MAP_TAG = "[object Map]", NUMBER_TAG = "[object Number]", OBJECT_TAG = "[object Object]", REG_EXP_TAG = "[object RegExp]", SET_TAG = "[object Set]", STRING_TAG = "[object String]", URL_TAG = "[object URL]", isArray$1 = Array.isArray, isTypedArray = typeof ArrayBuffer == "function" && ArrayBuffer.isView ? ArrayBuffer.isView : null, assign$1 = Object.assign, getTag = Object.prototype.toString.call.bind(Object.prototype.toString);
24440
+ var ARGUMENTS_TAG = "[object Arguments]", BOOLEAN_TAG = "[object Boolean]", DATE_TAG = "[object Date]", ERROR_TAG = "[object Error]", MAP_TAG = "[object Map]", NUMBER_TAG = "[object Number]", OBJECT_TAG = "[object Object]", REG_EXP_TAG = "[object RegExp]", SET_TAG = "[object Set]", STRING_TAG = "[object String]", URL_TAG = "[object URL]", isArray$1 = Array.isArray, isTypedArray = typeof ArrayBuffer < "u" && typeof ArrayBuffer.isView == "function" ? ArrayBuffer.isView : null, assign$1 = Object.assign, getTag = Object.prototype.toString.call.bind(Object.prototype.toString);
24369
24441
  function createEqualityComparator(_a) {
24370
24442
  var areArraysEqual2 = _a.areArraysEqual, areDatesEqual2 = _a.areDatesEqual, areErrorsEqual2 = _a.areErrorsEqual, areFunctionsEqual2 = _a.areFunctionsEqual, areMapsEqual2 = _a.areMapsEqual, areNumbersEqual2 = _a.areNumbersEqual, areObjectsEqual2 = _a.areObjectsEqual, arePrimitiveWrappersEqual2 = _a.arePrimitiveWrappersEqual, areRegExpsEqual2 = _a.areRegExpsEqual, areSetsEqual2 = _a.areSetsEqual, areTypedArraysEqual2 = _a.areTypedArraysEqual, areUrlsEqual2 = _a.areUrlsEqual, unknownTagComparators = _a.unknownTagComparators;
24371
24443
  return function(a2, b, state) {
@@ -25459,8 +25531,7 @@ class Bezier {
25459
25531
  }
25460
25532
  }
25461
25533
  let listenerQueue = [], lqIndex = 0;
25462
- const QUEUE_ITEMS_PER_LISTENER = 4;
25463
- let atom = (initialValue) => {
25534
+ const QUEUE_ITEMS_PER_LISTENER = 4, atom = /* @__NO_SIDE_EFFECTS__ */ (initialValue) => {
25464
25535
  let listeners = [], $atom = {
25465
25536
  get() {
25466
25537
  return $atom.lc || $atom.listen(() => {
@@ -25504,8 +25575,7 @@ let atom = (initialValue) => {
25504
25575
  value: initialValue
25505
25576
  };
25506
25577
  return $atom;
25507
- };
25508
- const MOUNT = 5, UNMOUNT = 6, REVERT_MUTATION = 10;
25578
+ }, MOUNT = 5, UNMOUNT = 6, REVERT_MUTATION = 10;
25509
25579
  let on = (object2, listener, eventKey, mutateStore) => (object2.events = object2.events || {}, object2.events[eventKey + REVERT_MUTATION] || (object2.events[eventKey + REVERT_MUTATION] = mutateStore((eventProps) => {
25510
25580
  object2.events[eventKey].reduceRight((event, l) => (l(event), event), {
25511
25581
  shared: {},
@@ -31676,6 +31746,20 @@ function stopChild(actorRef) {
31676
31746
  }
31677
31747
  return stop.type = "xstate.stopChild", stop.actorRef = actorRef, stop.resolve = resolveStop, stop.execute = executeStop, stop;
31678
31748
  }
31749
+ function checkNot(snapshot, {
31750
+ context,
31751
+ event
31752
+ }, {
31753
+ guards
31754
+ }) {
31755
+ return !evaluateGuard(guards[0], context, event, snapshot);
31756
+ }
31757
+ function not(guard) {
31758
+ function not2(_args, _params) {
31759
+ return !1;
31760
+ }
31761
+ return not2.check = checkNot, not2.guards = [guard], not2;
31762
+ }
31679
31763
  function checkAnd(snapshot, {
31680
31764
  context,
31681
31765
  event
@@ -37178,7 +37262,7 @@ function cloneInputValue(nativeNode, clonedNode) {
37178
37262
  }
37179
37263
  function cloneSelectValue(nativeNode, clonedNode) {
37180
37264
  if (isInstanceOfElement(nativeNode, HTMLSelectElement)) {
37181
- const clonedSelect = clonedNode, selectedOption = Array.from(clonedSelect.children).find((child) => nativeNode.value === child.getAttribute("value"));
37265
+ const selectedOption = Array.from(clonedNode.children).find((child) => nativeNode.value === child.getAttribute("value"));
37182
37266
  selectedOption && selectedOption.setAttribute("selected", "");
37183
37267
  }
37184
37268
  }
@@ -40918,17 +41002,17 @@ const stringbool = (...args) => _stringbool({
40918
41002
  Transform: ZodTransform
40919
41003
  }, ...args);
40920
41004
  export {
40921
- Tooltip as $,
41005
+ t$l as $,
40922
41006
  MantineProvider as A,
40923
41007
  Background as B,
40924
41008
  useMantineStyleNonce as C,
40925
41009
  domMax as D,
40926
41010
  MotionConfig as E,
40927
41011
  e$a as F,
40928
- t$s as G,
41012
+ t$r as G,
40929
41013
  t$h as H,
40930
- t$n as I,
40931
- t$o as J,
41014
+ t$m as I,
41015
+ t$n as J,
40932
41016
  useId$2 as K,
40933
41017
  LazyMotion as L,
40934
41018
  MantineContext as M,
@@ -40943,245 +41027,247 @@ export {
40943
41027
  emit as V,
40944
41028
  assertEvent as W,
40945
41029
  assign as X,
40946
- ActionIcon as Y,
40947
- MotionButton as Z,
40948
- MotionDiv as _,
41030
+ getViewportForBounds as Y,
41031
+ getNodesBounds as Z,
41032
+ getEdgePosition as _,
40949
41033
  BackgroundVariant as a,
40950
- Tree as a$,
40951
- Breadcrumbs as a0,
40952
- Menu as a1,
40953
- UnstyledButton as a2,
40954
- Badge as a3,
40955
- SegmentedControl as a4,
40956
- Divider as a5,
40957
- AnimatePresence as a6,
40958
- useHover$1 as a7,
40959
- Popover as a8,
40960
- PopoverTarget as a9,
40961
- Space as aA,
40962
- Stack as aB,
40963
- CheckIcon as aC,
40964
- rem as aD,
40965
- useUpdateEffect as aE,
40966
- Slider as aF,
40967
- Paper as aG,
40968
- Group as aH,
40969
- MenuTarget as aI,
40970
- MenuDropdown as aJ,
40971
- MenuItem as aK,
40972
- useFocusTrap as aL,
40973
- useReducedMotionConfig as aM,
40974
- useTimeoutEffect as aN,
40975
- m as aO,
40976
- ReactRemoveScroll as aP,
40977
- useThrottledCallback as aQ,
40978
- Input as aR,
40979
- createScopedKeydownHandler as aS,
40980
- t$3 as aT,
40981
- Highlight as aU,
40982
- useMountEffect as aV,
40983
- e$8 as aW,
40984
- useActorRef as aX,
40985
- LayoutGroup as aY,
40986
- useTree as aZ,
40987
- Alert as a_,
40988
- PopoverDropdown as aa,
40989
- Box as ab,
40990
- FloatingIndicator as ac,
40991
- Flex as ad,
40992
- useDebouncedCallback as ae,
40993
- useUncontrolled as af,
40994
- clampUseMovePosition as ag,
40995
- useMove as ah,
40996
- useMergedRef as ai,
40997
- TooltipGroup as aj,
40998
- useDebouncedValue as ak,
40999
- e$2 as al,
41000
- EdgeLabelRenderer as am,
41001
- useDebouncedState as an,
41002
- NodeToolbar as ao,
41003
- Position as ap,
41004
- Handle as aq,
41005
- CopyButton as ar,
41006
- HoverCard as as,
41007
- HoverCardTarget as at,
41008
- HoverCardDropdown as au,
41009
- Notification as av,
41010
- isMacOs as aw,
41011
- Portal as ax,
41012
- NavLink as ay,
41013
- ColorSwatch as az,
41034
+ HoverCardDropdown as a$,
41035
+ t$k as a0,
41036
+ e$1 as a1,
41037
+ t$e as a2,
41038
+ t$t as a3,
41039
+ n$p as a4,
41040
+ n$b as a5,
41041
+ r$9 as a6,
41042
+ t$b as a7,
41043
+ n as a8,
41044
+ dagre as a9,
41045
+ Badge as aA,
41046
+ SegmentedControl as aB,
41047
+ Divider as aC,
41048
+ AnimatePresence as aD,
41049
+ useHover$1 as aE,
41050
+ Popover as aF,
41051
+ PopoverTarget as aG,
41052
+ PopoverDropdown as aH,
41053
+ Box as aI,
41054
+ FloatingIndicator as aJ,
41055
+ Flex as aK,
41056
+ useDebouncedCallback as aL,
41057
+ useUncontrolled as aM,
41058
+ clampUseMovePosition as aN,
41059
+ useMove as aO,
41060
+ useMergedRef as aP,
41061
+ TooltipGroup as aQ,
41062
+ useDebouncedValue as aR,
41063
+ EdgeLabelRenderer as aS,
41064
+ e$5 as aT,
41065
+ useDebouncedState as aU,
41066
+ NodeToolbar as aV,
41067
+ Position as aW,
41068
+ Handle as aX,
41069
+ CopyButton as aY,
41070
+ HoverCard as aZ,
41071
+ HoverCardTarget as a_,
41072
+ t$5 as aa,
41073
+ t$1 as ab,
41074
+ t$2 as ac,
41075
+ enqueueActions as ad,
41076
+ cancel as ae,
41077
+ fromPromise as af,
41078
+ applyEdgeChanges as ag,
41079
+ applyNodeChanges as ah,
41080
+ e$6 as ai,
41081
+ sendTo as aj,
41082
+ stopChild as ak,
41083
+ spawnChild as al,
41084
+ e$3 as am,
41085
+ not as an,
41086
+ fromCallback as ao,
41087
+ t$f as ap,
41088
+ t$4 as aq,
41089
+ getHotkeyHandler as ar,
41090
+ e$2 as as,
41091
+ ActionIcon as at,
41092
+ MotionButton as au,
41093
+ MotionDiv as av,
41094
+ Tooltip as aw,
41095
+ Breadcrumbs as ax,
41096
+ Menu as ay,
41097
+ UnstyledButton as az,
41014
41098
  useCustomCompareEffect as b,
41015
- useRerender as b$,
41016
- getBezierPath as b0,
41017
- t$l as b1,
41018
- t$k as b2,
41019
- e$1 as b3,
41020
- t$e as b4,
41021
- t$u as b5,
41022
- n$q as b6,
41023
- r$9 as b7,
41024
- t$b as b8,
41025
- n as b9,
41026
- VisuallyHidden as bA,
41027
- n$p as bB,
41028
- useWindowEvent as bC,
41029
- FocusTrap as bD,
41030
- Title as bE,
41031
- useFocusWithin as bF,
41032
- useCombobox as bG,
41033
- ComboboxOption as bH,
41034
- Combobox as bI,
41035
- ComboboxTarget as bJ,
41036
- ComboboxDropdown as bK,
41037
- ComboboxOptions as bL,
41038
- ComboboxEmpty as bM,
41039
- useHotkeys as bN,
41040
- Grid as bO,
41041
- GridCol as bP,
41042
- getNodesBounds as bQ,
41043
- getEdgePosition as bR,
41044
- autoUpdate as bS,
41045
- computePosition as bT,
41046
- offset$1 as bU,
41047
- autoPlacement as bV,
41048
- size$1 as bW,
41049
- hide$1 as bX,
41050
- useLocalStorage as bY,
41051
- Card as bZ,
41052
- n$v as b_,
41053
- dagre as ba,
41054
- t$5 as bb,
41055
- t$1 as bc,
41056
- t$2 as bd,
41057
- ReactFlowProvider as be,
41058
- useStateHistory as bf,
41059
- useRafEffect as bg,
41060
- Panel$1 as bh,
41061
- Anchor as bi,
41062
- Pill as bj,
41063
- useViewportSize as bk,
41064
- useSessionStorage as bl,
41065
- t$a as bm,
41066
- useDragControls as bn,
41067
- useMotionValue as bo,
41068
- CloseButton as bp,
41069
- ActionIconGroup as bq,
41070
- Tabs as br,
41071
- TabsList as bs,
41072
- TabsTab as bt,
41073
- TabsPanel as bu,
41074
- ScrollArea as bv,
41075
- e$6 as bw,
41076
- useCallbackRef as bx,
41077
- animate as by,
41078
- e$7 as bz,
41099
+ Combobox as b$,
41100
+ Notification as b0,
41101
+ isMacOs as b1,
41102
+ Portal as b2,
41103
+ NavLink as b3,
41104
+ ColorSwatch as b4,
41105
+ Space as b5,
41106
+ Stack as b6,
41107
+ CheckIcon as b7,
41108
+ rem as b8,
41109
+ useUpdateEffect as b9,
41110
+ useRafEffect as bA,
41111
+ Panel$1 as bB,
41112
+ Anchor as bC,
41113
+ Pill as bD,
41114
+ useViewportSize as bE,
41115
+ useSessionStorage as bF,
41116
+ t$a as bG,
41117
+ useDragControls as bH,
41118
+ useMotionValue as bI,
41119
+ CloseButton as bJ,
41120
+ ActionIconGroup as bK,
41121
+ Tabs as bL,
41122
+ TabsList as bM,
41123
+ TabsTab as bN,
41124
+ TabsPanel as bO,
41125
+ ScrollArea as bP,
41126
+ useCallbackRef as bQ,
41127
+ animate as bR,
41128
+ e$7 as bS,
41129
+ VisuallyHidden as bT,
41130
+ n$o as bU,
41131
+ useWindowEvent as bV,
41132
+ FocusTrap as bW,
41133
+ Title as bX,
41134
+ useFocusWithin as bY,
41135
+ useCombobox as bZ,
41136
+ ComboboxOption as b_,
41137
+ Slider as ba,
41138
+ Paper as bb,
41139
+ Group as bc,
41140
+ MenuTarget as bd,
41141
+ MenuDropdown as be,
41142
+ MenuItem as bf,
41143
+ useFocusTrap as bg,
41144
+ useReducedMotionConfig as bh,
41145
+ useTimeoutEffect as bi,
41146
+ m as bj,
41147
+ ReactRemoveScroll as bk,
41148
+ useThrottledCallback as bl,
41149
+ Input as bm,
41150
+ createScopedKeydownHandler as bn,
41151
+ t$3 as bo,
41152
+ Highlight as bp,
41153
+ useMountEffect as bq,
41154
+ e$8 as br,
41155
+ useActorRef as bs,
41156
+ LayoutGroup as bt,
41157
+ useTree as bu,
41158
+ Alert as bv,
41159
+ Tree as bw,
41160
+ getBezierPath as bx,
41161
+ ReactFlowProvider as by,
41162
+ useStateHistory as bz,
41079
41163
  useStoreApi as c,
41080
- ModalBody as c$,
41081
- t$f as c0,
41082
- d3line as c1,
41083
- curveCatmullRomOpen as c2,
41084
- getSmoothStepPath as c3,
41085
- t$m as c4,
41086
- produce as c5,
41087
- useTimeout as c6,
41088
- useDebouncedCallback$1 as c7,
41089
- useCustomCompareMemo as c8,
41090
- t$9 as c9,
41091
- t$c as cA,
41092
- useRouter as cB,
41093
- isNotFound as cC,
41094
- Container as cD,
41095
- Code as cE,
41096
- Link as cF,
41097
- useNavigate as cG,
41098
- createRootRouteWithContext as cH,
41099
- stripSearchParams as cI,
41100
- Outlet as cJ,
41101
- createFileRoute as cK,
41102
- useDocumentTitle as cL,
41103
- Loader as cM,
41104
- useStore as cN,
41105
- Navigate as cO,
41106
- useParams as cP,
41107
- SimpleGrid as cQ,
41108
- useInViewport as cR,
41109
- e as cS,
41110
- notFound as cT,
41111
- useComputedColorScheme as cU,
41112
- onMount as cV,
41113
- Drawer as cW,
41114
- Select as cX,
41115
- ModalRoot as cY,
41116
- ModalOverlay as cZ,
41117
- ModalContent as c_,
41118
- n$c as ca,
41119
- t$i as cb,
41120
- enqueueActions as cc,
41121
- cancel as cd,
41122
- fromPromise as ce,
41123
- getViewportForBounds as cf,
41124
- applyEdgeChanges as cg,
41125
- applyNodeChanges as ch,
41126
- sendTo as ci,
41127
- stopChild as cj,
41128
- spawnChild as ck,
41129
- e$3 as cl,
41130
- fromCallback as cm,
41131
- t$4 as cn,
41132
- getHotkeyHandler as co,
41133
- nodeToRect as cp,
41134
- and as cq,
41135
- or as cr,
41136
- t$8 as cs,
41137
- e$c as ct,
41138
- toRgba as cu,
41139
- t$6 as cv,
41140
- mix as cw,
41141
- toHex as cx,
41142
- scale as cy,
41143
- e$4 as cz,
41164
+ ModalOverlay as c$,
41165
+ ComboboxTarget as c0,
41166
+ ComboboxDropdown as c1,
41167
+ ComboboxOptions as c2,
41168
+ ComboboxEmpty as c3,
41169
+ useHotkeys as c4,
41170
+ Grid as c5,
41171
+ GridCol as c6,
41172
+ autoUpdate as c7,
41173
+ computePosition as c8,
41174
+ offset$1 as c9,
41175
+ scale as cA,
41176
+ e$4 as cB,
41177
+ t$c as cC,
41178
+ useRouter as cD,
41179
+ isNotFound as cE,
41180
+ Container as cF,
41181
+ Code as cG,
41182
+ Link as cH,
41183
+ useNavigate as cI,
41184
+ createRootRouteWithContext as cJ,
41185
+ stripSearchParams as cK,
41186
+ Outlet as cL,
41187
+ createFileRoute as cM,
41188
+ useDocumentTitle as cN,
41189
+ Loader as cO,
41190
+ useStore as cP,
41191
+ Navigate as cQ,
41192
+ useParams as cR,
41193
+ SimpleGrid as cS,
41194
+ useInViewport as cT,
41195
+ e as cU,
41196
+ notFound as cV,
41197
+ useComputedColorScheme as cW,
41198
+ onMount as cX,
41199
+ Drawer as cY,
41200
+ Select as cZ,
41201
+ ModalRoot as c_,
41202
+ autoPlacement as ca,
41203
+ size$1 as cb,
41204
+ hide$1 as cc,
41205
+ useLocalStorage as cd,
41206
+ Card as ce,
41207
+ n$u as cf,
41208
+ useRerender as cg,
41209
+ d3line as ch,
41210
+ curveCatmullRomOpen as ci,
41211
+ getSmoothStepPath as cj,
41212
+ r$c as ck,
41213
+ produce as cl,
41214
+ useTimeout as cm,
41215
+ useDebouncedCallback$1 as cn,
41216
+ useCustomCompareMemo as co,
41217
+ t$9 as cp,
41218
+ n$c as cq,
41219
+ nodeToRect as cr,
41220
+ and as cs,
41221
+ or as ct,
41222
+ log as cu,
41223
+ e$c as cv,
41224
+ toRgba as cw,
41225
+ t$6 as cx,
41226
+ mix as cy,
41227
+ toHex as cz,
41144
41228
  deepEqual as d,
41145
- useMatches as d0,
41146
- useMantineTheme as d1,
41147
- useMediaQuery as d2,
41148
- useDisclosure as d3,
41149
- useParentMatches as d4,
41150
- MenuLabel as d5,
41151
- useSearch as d6,
41152
- LoadingOverlay as d7,
41153
- toBlob as d8,
41154
- useAsync as d9,
41155
- PanelGroup as da,
41156
- Panel as db,
41157
- PanelResizeHandle as dc,
41158
- Burger as dd,
41159
- RouterProvider as de,
41160
- createRouter as df,
41161
- createHashHistory as dg,
41162
- createBrowserHistory as dh,
41163
- createTheme as di,
41164
- object as dj,
41165
- literal as dk,
41166
- stringbool as dl,
41167
- string as dm,
41168
- formatError as dn,
41229
+ ModalContent as d0,
41230
+ ModalBody as d1,
41231
+ useMatches as d2,
41232
+ useMantineTheme as d3,
41233
+ useMediaQuery as d4,
41234
+ useDisclosure as d5,
41235
+ useParentMatches as d6,
41236
+ MenuLabel as d7,
41237
+ useSearch as d8,
41238
+ LoadingOverlay as d9,
41239
+ toBlob as da,
41240
+ useAsync as db,
41241
+ PanelGroup as dc,
41242
+ Panel as dd,
41243
+ PanelResizeHandle as de,
41244
+ Burger as df,
41245
+ RouterProvider as dg,
41246
+ createRouter as dh,
41247
+ createHashHistory as di,
41248
+ createBrowserHistory as dj,
41249
+ createTheme as dk,
41250
+ object as dl,
41251
+ literal as dm,
41252
+ stringbool as dn,
41253
+ string as dp,
41254
+ formatError as dq,
41169
41255
  useStore$1 as e,
41170
41256
  useReactFlow as f,
41171
- t$q as g,
41257
+ t$p as g,
41172
41258
  Bezier as h,
41173
- getNodeDimensions as i,
41174
- e$d as j,
41175
- e$5 as k,
41176
- useMantineColorScheme as l,
41177
- index as m,
41259
+ e$d as i,
41260
+ getNodeDimensions as j,
41261
+ useMantineColorScheme as k,
41262
+ index as l,
41263
+ e$b as m,
41178
41264
  n$j as n,
41179
- e$b as o,
41180
- n$b as p,
41265
+ t$8 as o,
41266
+ t$i as p,
41181
41267
  createSafeContext as q,
41182
41268
  atom as r,
41183
41269
  shallowEqual as s,
41184
- t$v as t,
41270
+ t$u as t,
41185
41271
  useFirstMountState as u,
41186
41272
  useIsomorphicLayoutEffect$3 as v,
41187
41273
  useSyncedRef as w,