@mission-studio/puck 1.0.3 → 1.0.15

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.
@@ -292,8 +292,15 @@ function Paragraph({
292
292
  return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("p", { id, style, children: resolvedText });
293
293
  }
294
294
 
295
- // components/page/Button.tsx
296
- var import_google = require("@next/third-parties/google");
295
+ // hooks/useGtmEvent.ts
296
+ function useGtmEvent() {
297
+ return (eventName, data) => {
298
+ if (typeof window === "undefined") return;
299
+ if (typeof window.gtag === "function") {
300
+ window.gtag("event", eventName, data || {});
301
+ }
302
+ };
303
+ }
297
304
 
298
305
  // hooks/useUtmParams.ts
299
306
  var import_react3 = require("react");
@@ -385,6 +392,7 @@ function Button({
385
392
  const { resolveColor: resolveColor2 } = useTheme();
386
393
  const { getEntryValue } = useEntries();
387
394
  const utm = useUtmParams();
395
+ const sendEvent = useGtmEvent();
388
396
  const resolvedText = (() => {
389
397
  if (!text) return "Button";
390
398
  if (typeof text === "string") return text;
@@ -397,14 +405,13 @@ function Button({
397
405
  return "Button";
398
406
  })();
399
407
  const handleClick = () => {
400
- (0, import_google.sendGTMEvent)({
401
- event: "button_click",
402
- value: {
403
- text: resolvedText,
404
- href: href || void 0,
405
- variant,
406
- ...utm
407
- }
408
+ const sessionId = typeof window !== "undefined" ? sessionStorage.getItem("session_id") : null;
409
+ sendEvent("button_click", {
410
+ text: resolvedText,
411
+ href: href || void 0,
412
+ variant,
413
+ session_id: sessionId,
414
+ ...utm
408
415
  });
409
416
  };
410
417
  const resolvedColor = (() => {
@@ -619,7 +626,6 @@ function Image({
619
626
 
620
627
  // components/page/ImageCarousel.tsx
621
628
  var import_react4 = require("react");
622
- var import_google2 = require("@next/third-parties/google");
623
629
  var import_jsx_runtime7 = require("react/jsx-runtime");
624
630
  var aspectRatioMap2 = {
625
631
  "16:9": "16 / 9",
@@ -649,6 +655,7 @@ function ImageCarousel({
649
655
  const [currentIndex, setCurrentIndex] = (0, import_react4.useState)(0);
650
656
  const { resolveColor: resolveColor2 } = useTheme();
651
657
  const utm = useUtmParams();
658
+ const sendEvent = useGtmEvent();
652
659
  const resolvedArrowColor = (() => {
653
660
  if (!arrowColor) return { color: "#FFFFFF", opacity: 100 };
654
661
  if (typeof arrowColor === "string")
@@ -671,39 +678,30 @@ function ImageCarousel({
671
678
  const goToPrevious = () => {
672
679
  const newIndex = currentIndex === 0 ? images.length - 1 : currentIndex - 1;
673
680
  setCurrentIndex(newIndex);
674
- (0, import_google2.sendGTMEvent)({
675
- event: "carousel_navigate",
676
- value: {
677
- direction: "previous",
678
- slideIndex: newIndex,
679
- totalSlides: images.length,
680
- ...utm
681
- }
681
+ sendEvent("carousel_navigate", {
682
+ direction: "previous",
683
+ slideIndex: newIndex,
684
+ totalSlides: images.length,
685
+ ...utm
682
686
  });
683
687
  };
684
688
  const goToNext = () => {
685
689
  const newIndex = currentIndex === images.length - 1 ? 0 : currentIndex + 1;
686
690
  setCurrentIndex(newIndex);
687
- (0, import_google2.sendGTMEvent)({
688
- event: "carousel_navigate",
689
- value: {
690
- direction: "next",
691
- slideIndex: newIndex,
692
- totalSlides: images.length,
693
- ...utm
694
- }
691
+ sendEvent("carousel_navigate", {
692
+ direction: "next",
693
+ slideIndex: newIndex,
694
+ totalSlides: images.length,
695
+ ...utm
695
696
  });
696
697
  };
697
698
  const goToSlide = (index2) => {
698
699
  setCurrentIndex(index2);
699
- (0, import_google2.sendGTMEvent)({
700
- event: "carousel_navigate",
701
- value: {
702
- direction: "direct",
703
- slideIndex: index2,
704
- totalSlides: images.length,
705
- ...utm
706
- }
700
+ sendEvent("carousel_navigate", {
701
+ direction: "direct",
702
+ slideIndex: index2,
703
+ totalSlides: images.length,
704
+ ...utm
707
705
  });
708
706
  };
709
707
  if (images.length === 0) {
@@ -1833,7 +1831,6 @@ function FeatureGrid({
1833
1831
 
1834
1832
  // components/page/Footer.tsx
1835
1833
  var import_lucide_react3 = require("lucide-react");
1836
- var import_google3 = require("@next/third-parties/google");
1837
1834
  var import_jsx_runtime20 = require("react/jsx-runtime");
1838
1835
  function Footer({
1839
1836
  logo,
@@ -1847,6 +1844,7 @@ function Footer({
1847
1844
  }) {
1848
1845
  const DropZone = puck?.renderDropZone;
1849
1846
  const utm = useUtmParams();
1847
+ const sendEvent = useGtmEvent();
1850
1848
  const getSocialPlatform = (url) => {
1851
1849
  if (url.includes("facebook")) return "facebook";
1852
1850
  if (url.includes("instagram")) return "instagram";
@@ -1855,13 +1853,10 @@ function Footer({
1855
1853
  };
1856
1854
  const handleSocialClick = (url) => {
1857
1855
  const platform2 = getSocialPlatform(url);
1858
- (0, import_google3.sendGTMEvent)({
1859
- event: "social_click",
1860
- value: {
1861
- platform: platform2,
1862
- url,
1863
- ...utm
1864
- }
1856
+ sendEvent("social_click", {
1857
+ platform: platform2,
1858
+ url,
1859
+ ...utm
1865
1860
  });
1866
1861
  };
1867
1862
  const socialLinks = [
@@ -1899,9 +1894,7 @@ function Footer({
1899
1894
 
1900
1895
  // components/page/Topbar.tsx
1901
1896
  var import_react5 = require("react");
1902
- var import_link = __toESM(require("next/link"));
1903
1897
  var import_lucide_react4 = require("lucide-react");
1904
- var import_google4 = require("@next/third-parties/google");
1905
1898
  var import_jsx_runtime21 = require("react/jsx-runtime");
1906
1899
  function Topbar({
1907
1900
  logo,
@@ -1915,26 +1908,21 @@ function Topbar({
1915
1908
  const DropZone = puck?.renderDropZone;
1916
1909
  const [mobileMenuOpen, setMobileMenuOpen] = (0, import_react5.useState)(false);
1917
1910
  const utm = useUtmParams();
1911
+ const sendEvent = useGtmEvent();
1918
1912
  const handleNavClick = (item) => {
1919
- (0, import_google4.sendGTMEvent)({
1920
- event: "nav_click",
1921
- value: {
1922
- name: item.name,
1923
- url: item.url,
1924
- linkType: item.linkType || "internal",
1925
- ...utm
1926
- }
1913
+ sendEvent("nav_click", {
1914
+ name: item.name,
1915
+ url: item.url,
1916
+ linkType: item.linkType || "internal",
1917
+ ...utm
1927
1918
  });
1928
1919
  };
1929
1920
  const handleMobileMenuToggle = () => {
1930
1921
  const newState = !mobileMenuOpen;
1931
1922
  setMobileMenuOpen(newState);
1932
- (0, import_google4.sendGTMEvent)({
1933
- event: "mobile_menu_toggle",
1934
- value: {
1935
- open: newState,
1936
- ...utm
1937
- }
1923
+ sendEvent("mobile_menu_toggle", {
1924
+ open: newState,
1925
+ ...utm
1938
1926
  });
1939
1927
  };
1940
1928
  const renderLink = (item, index2) => {
@@ -1966,7 +1954,7 @@ function Topbar({
1966
1954
  );
1967
1955
  }
1968
1956
  return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
1969
- import_link.default,
1957
+ "a",
1970
1958
  {
1971
1959
  href: item.url,
1972
1960
  className,
@@ -1989,18 +1977,15 @@ function Topbar({
1989
1977
  style: { maxWidth },
1990
1978
  children: [
1991
1979
  /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
1992
- import_link.default,
1980
+ "a",
1993
1981
  {
1994
1982
  href: logoUrl,
1995
1983
  className: "flex-shrink-0",
1996
- onClick: () => (0, import_google4.sendGTMEvent)({
1997
- event: "nav_click",
1998
- value: {
1999
- name: "logo",
2000
- url: logoUrl,
2001
- linkType: "internal",
2002
- ...utm
2003
- }
1984
+ onClick: () => sendEvent("nav_click", {
1985
+ name: "logo",
1986
+ url: logoUrl,
1987
+ linkType: "internal",
1988
+ ...utm
2004
1989
  }),
2005
1990
  children: logo ? /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("img", { src: logo, alt: "Logo", className: "h-8" }) : /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("span", { className: "text-xl font-bold", children: "Logo" })
2006
1991
  }
@@ -2032,7 +2017,6 @@ function Topbar({
2032
2017
  // components/page/Popup.tsx
2033
2018
  var import_react6 = require("react");
2034
2019
  var import_lucide_react5 = require("lucide-react");
2035
- var import_google5 = require("@next/third-parties/google");
2036
2020
  var import_jsx_runtime22 = require("react/jsx-runtime");
2037
2021
  function Icon2({ name, ...props }) {
2038
2022
  const formatted = name.charAt(0).toUpperCase() + name.slice(1);
@@ -2063,23 +2047,18 @@ function Popup({
2063
2047
  }) {
2064
2048
  const [isOpen, setIsOpen] = (0, import_react6.useState)(false);
2065
2049
  const utm = useUtmParams();
2050
+ const sendEvent = useGtmEvent();
2066
2051
  const handleOpen = () => {
2067
2052
  setIsOpen(true);
2068
- (0, import_google5.sendGTMEvent)({
2069
- event: "popup_open",
2070
- value: {
2071
- ctaText,
2072
- type: textLink ? "link" : "button",
2073
- ...utm
2074
- }
2053
+ sendEvent("popup_open", {
2054
+ ctaText,
2055
+ type: textLink ? "link" : "button",
2056
+ ...utm
2075
2057
  });
2076
2058
  };
2077
2059
  const handleClose = () => {
2078
2060
  setIsOpen(false);
2079
- (0, import_google5.sendGTMEvent)({
2080
- event: "popup_close",
2081
- value: { ctaText, ...utm }
2082
- });
2061
+ sendEvent("popup_close", { ctaText, ...utm });
2083
2062
  };
2084
2063
  const trigger = textLink ? /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
2085
2064
  "button",
@@ -2547,8 +2526,8 @@ function ColorPickerField({
2547
2526
  }
2548
2527
 
2549
2528
  // node_modules/@radix-ui/react-select/dist/index.mjs
2550
- var React32 = __toESM(require("react"), 1);
2551
- var ReactDOM5 = __toESM(require("react-dom"), 1);
2529
+ var React31 = __toESM(require("react"), 1);
2530
+ var ReactDOM4 = __toESM(require("react-dom"), 1);
2552
2531
 
2553
2532
  // node_modules/@radix-ui/number/dist/index.mjs
2554
2533
  function clamp(value, [min2, max2]) {
@@ -5514,51 +5493,13 @@ var Portal = React18.forwardRef((props, forwardedRef) => {
5514
5493
  });
5515
5494
  Portal.displayName = PORTAL_NAME;
5516
5495
 
5517
- // node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-primitive/dist/index.mjs
5518
- var React19 = __toESM(require("react"), 1);
5519
- var ReactDOM4 = __toESM(require("react-dom"), 1);
5520
- var import_react_slot5 = require("@radix-ui/react-slot");
5521
- var import_jsx_runtime40 = require("react/jsx-runtime");
5522
- var NODES2 = [
5523
- "a",
5524
- "button",
5525
- "div",
5526
- "form",
5527
- "h2",
5528
- "h3",
5529
- "img",
5530
- "input",
5531
- "label",
5532
- "li",
5533
- "nav",
5534
- "ol",
5535
- "p",
5536
- "select",
5537
- "span",
5538
- "svg",
5539
- "ul"
5540
- ];
5541
- var Primitive2 = NODES2.reduce((primitive, node) => {
5542
- const Slot3 = (0, import_react_slot5.createSlot)(`Primitive.${node}`);
5543
- const Node2 = React19.forwardRef((props, forwardedRef) => {
5544
- const { asChild, ...primitiveProps } = props;
5545
- const Comp = asChild ? Slot3 : node;
5546
- if (typeof window !== "undefined") {
5547
- window[/* @__PURE__ */ Symbol.for("radix-ui")] = true;
5548
- }
5549
- return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(Comp, { ...primitiveProps, ref: forwardedRef });
5550
- });
5551
- Node2.displayName = `Primitive.${node}`;
5552
- return { ...primitive, [node]: Node2 };
5553
- }, {});
5554
-
5555
5496
  // node_modules/@radix-ui/react-select/dist/index.mjs
5556
- var import_react_slot6 = require("@radix-ui/react-slot");
5497
+ var import_react_slot5 = require("@radix-ui/react-slot");
5557
5498
 
5558
5499
  // node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs
5559
- var React20 = __toESM(require("react"), 1);
5500
+ var React19 = __toESM(require("react"), 1);
5560
5501
  var React23 = __toESM(require("react"), 1);
5561
- var useInsertionEffect = React20[" useInsertionEffect ".trim().toString()] || useLayoutEffect2;
5502
+ var useInsertionEffect = React19[" useInsertionEffect ".trim().toString()] || useLayoutEffect2;
5562
5503
  function useControllableState({
5563
5504
  prop,
5564
5505
  defaultProp,
@@ -5573,8 +5514,8 @@ function useControllableState({
5573
5514
  const isControlled = prop !== void 0;
5574
5515
  const value = isControlled ? prop : uncontrolledProp;
5575
5516
  if (true) {
5576
- const isControlledRef = React20.useRef(prop !== void 0);
5577
- React20.useEffect(() => {
5517
+ const isControlledRef = React19.useRef(prop !== void 0);
5518
+ React19.useEffect(() => {
5578
5519
  const wasControlled = isControlledRef.current;
5579
5520
  if (wasControlled !== isControlled) {
5580
5521
  const from = wasControlled ? "controlled" : "uncontrolled";
@@ -5586,7 +5527,7 @@ function useControllableState({
5586
5527
  isControlledRef.current = isControlled;
5587
5528
  }, [isControlled, caller]);
5588
5529
  }
5589
- const setValue = React20.useCallback(
5530
+ const setValue = React19.useCallback(
5590
5531
  (nextValue) => {
5591
5532
  if (isControlled) {
5592
5533
  const value2 = isFunction(nextValue) ? nextValue(prop) : nextValue;
@@ -5605,13 +5546,13 @@ function useUncontrolledState({
5605
5546
  defaultProp,
5606
5547
  onChange
5607
5548
  }) {
5608
- const [value, setValue] = React20.useState(defaultProp);
5609
- const prevValueRef = React20.useRef(value);
5610
- const onChangeRef = React20.useRef(onChange);
5549
+ const [value, setValue] = React19.useState(defaultProp);
5550
+ const prevValueRef = React19.useRef(value);
5551
+ const onChangeRef = React19.useRef(onChange);
5611
5552
  useInsertionEffect(() => {
5612
5553
  onChangeRef.current = onChange;
5613
5554
  }, [onChange]);
5614
- React20.useEffect(() => {
5555
+ React19.useEffect(() => {
5615
5556
  if (prevValueRef.current !== value) {
5616
5557
  onChangeRef.current?.(value);
5617
5558
  prevValueRef.current = value;
@@ -5624,10 +5565,10 @@ function isFunction(value) {
5624
5565
  }
5625
5566
 
5626
5567
  // node_modules/@radix-ui/react-use-previous/dist/index.mjs
5627
- var React21 = __toESM(require("react"), 1);
5568
+ var React20 = __toESM(require("react"), 1);
5628
5569
  function usePrevious(value) {
5629
- const ref = React21.useRef({ value, previous: value });
5630
- return React21.useMemo(() => {
5570
+ const ref = React20.useRef({ value, previous: value });
5571
+ return React20.useMemo(() => {
5631
5572
  if (ref.current.value !== value) {
5632
5573
  ref.current.previous = ref.current.value;
5633
5574
  ref.current.value = value;
@@ -5637,8 +5578,8 @@ function usePrevious(value) {
5637
5578
  }
5638
5579
 
5639
5580
  // node_modules/@radix-ui/react-visually-hidden/dist/index.mjs
5640
- var React24 = __toESM(require("react"), 1);
5641
- var import_jsx_runtime41 = require("react/jsx-runtime");
5581
+ var React21 = __toESM(require("react"), 1);
5582
+ var import_jsx_runtime40 = require("react/jsx-runtime");
5642
5583
  var VISUALLY_HIDDEN_STYLES = Object.freeze({
5643
5584
  // See: https://github.com/twbs/bootstrap/blob/main/scss/mixins/_visually-hidden.scss
5644
5585
  position: "absolute",
@@ -5653,9 +5594,9 @@ var VISUALLY_HIDDEN_STYLES = Object.freeze({
5653
5594
  wordWrap: "normal"
5654
5595
  });
5655
5596
  var NAME2 = "VisuallyHidden";
5656
- var VisuallyHidden = React24.forwardRef(
5597
+ var VisuallyHidden = React21.forwardRef(
5657
5598
  (props, forwardedRef) => {
5658
- return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
5599
+ return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
5659
5600
  Primitive.span,
5660
5601
  {
5661
5602
  ...props,
@@ -5821,10 +5762,10 @@ function __spreadArray(to, from, pack) {
5821
5762
  }
5822
5763
 
5823
5764
  // node_modules/react-remove-scroll/dist/es2015/Combination.js
5824
- var React31 = __toESM(require("react"));
5765
+ var React30 = __toESM(require("react"));
5825
5766
 
5826
5767
  // node_modules/react-remove-scroll/dist/es2015/UI.js
5827
- var React27 = __toESM(require("react"));
5768
+ var React26 = __toESM(require("react"));
5828
5769
 
5829
5770
  // node_modules/react-remove-scroll-bar/dist/es2015/constants.js
5830
5771
  var zeroRightClassName = "right-scroll-bar-position";
@@ -5871,8 +5812,8 @@ function useCallbackRef2(initialValue, callback) {
5871
5812
  }
5872
5813
 
5873
5814
  // node_modules/use-callback-ref/dist/es2015/useMergeRef.js
5874
- var React25 = __toESM(require("react"));
5875
- var useIsomorphicLayoutEffect = typeof window !== "undefined" ? React25.useLayoutEffect : React25.useEffect;
5815
+ var React24 = __toESM(require("react"));
5816
+ var useIsomorphicLayoutEffect = typeof window !== "undefined" ? React24.useLayoutEffect : React24.useEffect;
5876
5817
  var currentValues = /* @__PURE__ */ new WeakMap();
5877
5818
  function useMergeRefs(refs, defaultValue) {
5878
5819
  var callbackRef = useCallbackRef2(defaultValue || null, function(newValue) {
@@ -5989,7 +5930,7 @@ function createSidecarMedium(options) {
5989
5930
  }
5990
5931
 
5991
5932
  // node_modules/use-sidecar/dist/es2015/exports.js
5992
- var React26 = __toESM(require("react"));
5933
+ var React25 = __toESM(require("react"));
5993
5934
  var SideCar = function(_a) {
5994
5935
  var sideCar = _a.sideCar, rest = __rest(_a, ["sideCar"]);
5995
5936
  if (!sideCar) {
@@ -5999,7 +5940,7 @@ var SideCar = function(_a) {
5999
5940
  if (!Target) {
6000
5941
  throw new Error("Sidecar medium not found");
6001
5942
  }
6002
- return React26.createElement(Target, __assign({}, rest));
5943
+ return React25.createElement(Target, __assign({}, rest));
6003
5944
  };
6004
5945
  SideCar.isSideCarExport = true;
6005
5946
  function exportSidecar(medium, exported) {
@@ -6014,9 +5955,9 @@ var effectCar = createSidecarMedium();
6014
5955
  var nothing = function() {
6015
5956
  return;
6016
5957
  };
6017
- var RemoveScroll = React27.forwardRef(function(props, parentRef) {
6018
- var ref = React27.useRef(null);
6019
- var _a = React27.useState({
5958
+ var RemoveScroll = React26.forwardRef(function(props, parentRef) {
5959
+ var ref = React26.useRef(null);
5960
+ var _a = React26.useState({
6020
5961
  onScrollCapture: nothing,
6021
5962
  onWheelCapture: nothing,
6022
5963
  onTouchMoveCapture: nothing
@@ -6025,11 +5966,11 @@ var RemoveScroll = React27.forwardRef(function(props, parentRef) {
6025
5966
  var SideCar2 = sideCar;
6026
5967
  var containerRef = useMergeRefs([ref, parentRef]);
6027
5968
  var containerProps = __assign(__assign({}, rest), callbacks);
6028
- return React27.createElement(
6029
- React27.Fragment,
5969
+ return React26.createElement(
5970
+ React26.Fragment,
6030
5971
  null,
6031
- enabled && React27.createElement(SideCar2, { sideCar: effectCar, removeScrollBar, shards, noRelative, noIsolation, inert, setCallbacks, allowPinchZoom: !!allowPinchZoom, lockRef: ref, gapMode }),
6032
- forwardProps ? React27.cloneElement(React27.Children.only(children), __assign(__assign({}, containerProps), { ref: containerRef })) : React27.createElement(Container2, __assign({}, containerProps, { className, ref: containerRef }), children)
5972
+ enabled && React26.createElement(SideCar2, { sideCar: effectCar, removeScrollBar, shards, noRelative, noIsolation, inert, setCallbacks, allowPinchZoom: !!allowPinchZoom, lockRef: ref, gapMode }),
5973
+ forwardProps ? React26.cloneElement(React26.Children.only(children), __assign(__assign({}, containerProps), { ref: containerRef })) : React26.createElement(Container2, __assign({}, containerProps, { className, ref: containerRef }), children)
6033
5974
  );
6034
5975
  });
6035
5976
  RemoveScroll.defaultProps = {
@@ -6043,13 +5984,13 @@ RemoveScroll.classNames = {
6043
5984
  };
6044
5985
 
6045
5986
  // node_modules/react-remove-scroll/dist/es2015/SideEffect.js
6046
- var React30 = __toESM(require("react"));
5987
+ var React29 = __toESM(require("react"));
6047
5988
 
6048
5989
  // node_modules/react-remove-scroll-bar/dist/es2015/component.js
6049
- var React29 = __toESM(require("react"));
5990
+ var React28 = __toESM(require("react"));
6050
5991
 
6051
5992
  // node_modules/react-style-singleton/dist/es2015/hook.js
6052
- var React28 = __toESM(require("react"));
5993
+ var React27 = __toESM(require("react"));
6053
5994
 
6054
5995
  // node_modules/get-nonce/dist/es2015/index.js
6055
5996
  var currentNonce;
@@ -6113,7 +6054,7 @@ var stylesheetSingleton = function() {
6113
6054
  var styleHookSingleton = function() {
6114
6055
  var sheet = stylesheetSingleton();
6115
6056
  return function(styles, isDynamic) {
6116
- React28.useEffect(function() {
6057
+ React27.useEffect(function() {
6117
6058
  sheet.add(styles);
6118
6059
  return function() {
6119
6060
  sheet.remove();
@@ -6187,7 +6128,7 @@ var getCurrentUseCounter = function() {
6187
6128
  return isFinite(counter) ? counter : 0;
6188
6129
  };
6189
6130
  var useLockAttribute = function() {
6190
- React29.useEffect(function() {
6131
+ React28.useEffect(function() {
6191
6132
  document.body.setAttribute(lockAttribute, (getCurrentUseCounter() + 1).toString());
6192
6133
  return function() {
6193
6134
  var newCounter = getCurrentUseCounter() - 1;
@@ -6202,10 +6143,10 @@ var useLockAttribute = function() {
6202
6143
  var RemoveScrollBar = function(_a) {
6203
6144
  var noRelative = _a.noRelative, noImportant = _a.noImportant, _b = _a.gapMode, gapMode = _b === void 0 ? "margin" : _b;
6204
6145
  useLockAttribute();
6205
- var gap = React29.useMemo(function() {
6146
+ var gap = React28.useMemo(function() {
6206
6147
  return getGapWidth(gapMode);
6207
6148
  }, [gapMode]);
6208
- return React29.createElement(Style, { styles: getStyles(gap, !noRelative, gapMode, !noImportant ? "!important" : "") });
6149
+ return React28.createElement(Style, { styles: getStyles(gap, !noRelative, gapMode, !noImportant ? "!important" : "") });
6209
6150
  };
6210
6151
 
6211
6152
  // node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js
@@ -6346,16 +6287,16 @@ var generateStyle = function(id) {
6346
6287
  var idCounter = 0;
6347
6288
  var lockStack = [];
6348
6289
  function RemoveScrollSideCar(props) {
6349
- var shouldPreventQueue = React30.useRef([]);
6350
- var touchStartRef = React30.useRef([0, 0]);
6351
- var activeAxis = React30.useRef();
6352
- var id = React30.useState(idCounter++)[0];
6353
- var Style2 = React30.useState(styleSingleton)[0];
6354
- var lastProps = React30.useRef(props);
6355
- React30.useEffect(function() {
6290
+ var shouldPreventQueue = React29.useRef([]);
6291
+ var touchStartRef = React29.useRef([0, 0]);
6292
+ var activeAxis = React29.useRef();
6293
+ var id = React29.useState(idCounter++)[0];
6294
+ var Style2 = React29.useState(styleSingleton)[0];
6295
+ var lastProps = React29.useRef(props);
6296
+ React29.useEffect(function() {
6356
6297
  lastProps.current = props;
6357
6298
  }, [props]);
6358
- React30.useEffect(function() {
6299
+ React29.useEffect(function() {
6359
6300
  if (props.inert) {
6360
6301
  document.body.classList.add("block-interactivity-".concat(id));
6361
6302
  var allow_1 = __spreadArray([props.lockRef.current], (props.shards || []).map(extractRef), true).filter(Boolean);
@@ -6371,7 +6312,7 @@ function RemoveScrollSideCar(props) {
6371
6312
  }
6372
6313
  return;
6373
6314
  }, [props.inert, props.lockRef.current, props.shards]);
6374
- var shouldCancelEvent = React30.useCallback(function(event, parent) {
6315
+ var shouldCancelEvent = React29.useCallback(function(event, parent) {
6375
6316
  if ("touches" in event && event.touches.length === 2 || event.type === "wheel" && event.ctrlKey) {
6376
6317
  return !lastProps.current.allowPinchZoom;
6377
6318
  }
@@ -6413,7 +6354,7 @@ function RemoveScrollSideCar(props) {
6413
6354
  var cancelingAxis = activeAxis.current || currentAxis;
6414
6355
  return handleScroll(cancelingAxis, parent, event, cancelingAxis === "h" ? deltaX : deltaY, true);
6415
6356
  }, []);
6416
- var shouldPrevent = React30.useCallback(function(_event) {
6357
+ var shouldPrevent = React29.useCallback(function(_event) {
6417
6358
  var event = _event;
6418
6359
  if (!lockStack.length || lockStack[lockStack.length - 1] !== Style2) {
6419
6360
  return;
@@ -6440,7 +6381,7 @@ function RemoveScrollSideCar(props) {
6440
6381
  }
6441
6382
  }
6442
6383
  }, []);
6443
- var shouldCancel = React30.useCallback(function(name, delta, target, should) {
6384
+ var shouldCancel = React29.useCallback(function(name, delta, target, should) {
6444
6385
  var event = { name, delta, target, should, shadowParent: getOutermostShadowParent(target) };
6445
6386
  shouldPreventQueue.current.push(event);
6446
6387
  setTimeout(function() {
@@ -6449,17 +6390,17 @@ function RemoveScrollSideCar(props) {
6449
6390
  });
6450
6391
  }, 1);
6451
6392
  }, []);
6452
- var scrollTouchStart = React30.useCallback(function(event) {
6393
+ var scrollTouchStart = React29.useCallback(function(event) {
6453
6394
  touchStartRef.current = getTouchXY(event);
6454
6395
  activeAxis.current = void 0;
6455
6396
  }, []);
6456
- var scrollWheel = React30.useCallback(function(event) {
6397
+ var scrollWheel = React29.useCallback(function(event) {
6457
6398
  shouldCancel(event.type, getDeltaXY(event), event.target, shouldCancelEvent(event, props.lockRef.current));
6458
6399
  }, []);
6459
- var scrollTouchMove = React30.useCallback(function(event) {
6400
+ var scrollTouchMove = React29.useCallback(function(event) {
6460
6401
  shouldCancel(event.type, getTouchXY(event), event.target, shouldCancelEvent(event, props.lockRef.current));
6461
6402
  }, []);
6462
- React30.useEffect(function() {
6403
+ React29.useEffect(function() {
6463
6404
  lockStack.push(Style2);
6464
6405
  props.setCallbacks({
6465
6406
  onScrollCapture: scrollWheel,
@@ -6479,11 +6420,11 @@ function RemoveScrollSideCar(props) {
6479
6420
  };
6480
6421
  }, []);
6481
6422
  var removeScrollBar = props.removeScrollBar, inert = props.inert;
6482
- return React30.createElement(
6483
- React30.Fragment,
6423
+ return React29.createElement(
6424
+ React29.Fragment,
6484
6425
  null,
6485
- inert ? React30.createElement(Style2, { styles: generateStyle(id) }) : null,
6486
- removeScrollBar ? React30.createElement(RemoveScrollBar, { noRelative: props.noRelative, gapMode: props.gapMode }) : null
6426
+ inert ? React29.createElement(Style2, { styles: generateStyle(id) }) : null,
6427
+ removeScrollBar ? React29.createElement(RemoveScrollBar, { noRelative: props.noRelative, gapMode: props.gapMode }) : null
6487
6428
  );
6488
6429
  }
6489
6430
  function getOutermostShadowParent(node) {
@@ -6502,14 +6443,14 @@ function getOutermostShadowParent(node) {
6502
6443
  var sidecar_default = exportSidecar(effectCar, RemoveScrollSideCar);
6503
6444
 
6504
6445
  // node_modules/react-remove-scroll/dist/es2015/Combination.js
6505
- var ReactRemoveScroll = React31.forwardRef(function(props, ref) {
6506
- return React31.createElement(RemoveScroll, __assign({}, props, { ref, sideCar: sidecar_default }));
6446
+ var ReactRemoveScroll = React30.forwardRef(function(props, ref) {
6447
+ return React30.createElement(RemoveScroll, __assign({}, props, { ref, sideCar: sidecar_default }));
6507
6448
  });
6508
6449
  ReactRemoveScroll.classNames = RemoveScroll.classNames;
6509
6450
  var Combination_default = ReactRemoveScroll;
6510
6451
 
6511
6452
  // node_modules/@radix-ui/react-select/dist/index.mjs
6512
- var import_jsx_runtime42 = require("react/jsx-runtime");
6453
+ var import_jsx_runtime41 = require("react/jsx-runtime");
6513
6454
  var OPEN_KEYS = [" ", "Enter", "ArrowUp", "ArrowDown"];
6514
6455
  var SELECTION_KEYS = [" ", "Enter"];
6515
6456
  var SELECT_NAME = "Select";
@@ -6539,9 +6480,9 @@ var Select = (props) => {
6539
6480
  form
6540
6481
  } = props;
6541
6482
  const popperScope = usePopperScope(__scopeSelect);
6542
- const [trigger, setTrigger] = React32.useState(null);
6543
- const [valueNode, setValueNode] = React32.useState(null);
6544
- const [valueNodeHasChildren, setValueNodeHasChildren] = React32.useState(false);
6483
+ const [trigger, setTrigger] = React31.useState(null);
6484
+ const [valueNode, setValueNode] = React31.useState(null);
6485
+ const [valueNodeHasChildren, setValueNodeHasChildren] = React31.useState(false);
6545
6486
  const direction = useDirection(dir);
6546
6487
  const [open, setOpen] = useControllableState({
6547
6488
  prop: openProp,
@@ -6555,11 +6496,11 @@ var Select = (props) => {
6555
6496
  onChange: onValueChange,
6556
6497
  caller: SELECT_NAME
6557
6498
  });
6558
- const triggerPointerDownPosRef = React32.useRef(null);
6499
+ const triggerPointerDownPosRef = React31.useRef(null);
6559
6500
  const isFormControl = trigger ? form || !!trigger.closest("form") : true;
6560
- const [nativeOptionsSet, setNativeOptionsSet] = React32.useState(/* @__PURE__ */ new Set());
6501
+ const [nativeOptionsSet, setNativeOptionsSet] = React31.useState(/* @__PURE__ */ new Set());
6561
6502
  const nativeSelectKey = Array.from(nativeOptionsSet).map((option) => option.props.value).join(";");
6562
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Root22, { ...popperScope, children: /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
6503
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(Root22, { ...popperScope, children: /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(
6563
6504
  SelectProvider,
6564
6505
  {
6565
6506
  required,
@@ -6579,14 +6520,14 @@ var Select = (props) => {
6579
6520
  triggerPointerDownPosRef,
6580
6521
  disabled,
6581
6522
  children: [
6582
- /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Collection.Provider, { scope: __scopeSelect, children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
6523
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(Collection.Provider, { scope: __scopeSelect, children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
6583
6524
  SelectNativeOptionsProvider,
6584
6525
  {
6585
6526
  scope: props.__scopeSelect,
6586
- onNativeOptionAdd: React32.useCallback((option) => {
6527
+ onNativeOptionAdd: React31.useCallback((option) => {
6587
6528
  setNativeOptionsSet((prev) => new Set(prev).add(option));
6588
6529
  }, []),
6589
- onNativeOptionRemove: React32.useCallback((option) => {
6530
+ onNativeOptionRemove: React31.useCallback((option) => {
6590
6531
  setNativeOptionsSet((prev) => {
6591
6532
  const optionsSet = new Set(prev);
6592
6533
  optionsSet.delete(option);
@@ -6596,7 +6537,7 @@ var Select = (props) => {
6596
6537
  children
6597
6538
  }
6598
6539
  ) }),
6599
- isFormControl ? /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
6540
+ isFormControl ? /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(
6600
6541
  SelectBubbleInput,
6601
6542
  {
6602
6543
  "aria-hidden": true,
@@ -6609,7 +6550,7 @@ var Select = (props) => {
6609
6550
  disabled,
6610
6551
  form,
6611
6552
  children: [
6612
- value === void 0 ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("option", { value: "" }) : null,
6553
+ value === void 0 ? /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("option", { value: "" }) : null,
6613
6554
  Array.from(nativeOptionsSet)
6614
6555
  ]
6615
6556
  },
@@ -6621,7 +6562,7 @@ var Select = (props) => {
6621
6562
  };
6622
6563
  Select.displayName = SELECT_NAME;
6623
6564
  var TRIGGER_NAME = "SelectTrigger";
6624
- var SelectTrigger = React32.forwardRef(
6565
+ var SelectTrigger = React31.forwardRef(
6625
6566
  (props, forwardedRef) => {
6626
6567
  const { __scopeSelect, disabled = false, ...triggerProps } = props;
6627
6568
  const popperScope = usePopperScope(__scopeSelect);
@@ -6629,7 +6570,7 @@ var SelectTrigger = React32.forwardRef(
6629
6570
  const isDisabled = context.disabled || disabled;
6630
6571
  const composedRefs = useComposedRefs(forwardedRef, context.onTriggerChange);
6631
6572
  const getItems = useCollection(__scopeSelect);
6632
- const pointerTypeRef = React32.useRef("touch");
6573
+ const pointerTypeRef = React31.useRef("touch");
6633
6574
  const [searchRef, handleTypeaheadSearch, resetTypeahead] = useTypeaheadSearch((search) => {
6634
6575
  const enabledItems = getItems().filter((item) => !item.disabled);
6635
6576
  const currentItem = enabledItems.find((item) => item.value === context.value);
@@ -6650,8 +6591,8 @@ var SelectTrigger = React32.forwardRef(
6650
6591
  };
6651
6592
  }
6652
6593
  };
6653
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Anchor, { asChild: true, ...popperScope, children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
6654
- Primitive2.button,
6594
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(Anchor, { asChild: true, ...popperScope, children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
6595
+ Primitive.button,
6655
6596
  {
6656
6597
  type: "button",
6657
6598
  role: "combobox",
@@ -6699,7 +6640,7 @@ var SelectTrigger = React32.forwardRef(
6699
6640
  );
6700
6641
  SelectTrigger.displayName = TRIGGER_NAME;
6701
6642
  var VALUE_NAME = "SelectValue";
6702
- var SelectValue = React32.forwardRef(
6643
+ var SelectValue = React31.forwardRef(
6703
6644
  (props, forwardedRef) => {
6704
6645
  const { __scopeSelect, className, style, children, placeholder = "", ...valueProps } = props;
6705
6646
  const context = useSelectContext(VALUE_NAME, __scopeSelect);
@@ -6709,55 +6650,55 @@ var SelectValue = React32.forwardRef(
6709
6650
  useLayoutEffect2(() => {
6710
6651
  onValueNodeHasChildrenChange(hasChildren);
6711
6652
  }, [onValueNodeHasChildrenChange, hasChildren]);
6712
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
6713
- Primitive2.span,
6653
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
6654
+ Primitive.span,
6714
6655
  {
6715
6656
  ...valueProps,
6716
6657
  ref: composedRefs,
6717
6658
  style: { pointerEvents: "none" },
6718
- children: shouldShowPlaceholder(context.value) ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_jsx_runtime42.Fragment, { children: placeholder }) : children
6659
+ children: shouldShowPlaceholder(context.value) ? /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_jsx_runtime41.Fragment, { children: placeholder }) : children
6719
6660
  }
6720
6661
  );
6721
6662
  }
6722
6663
  );
6723
6664
  SelectValue.displayName = VALUE_NAME;
6724
6665
  var ICON_NAME = "SelectIcon";
6725
- var SelectIcon = React32.forwardRef(
6666
+ var SelectIcon = React31.forwardRef(
6726
6667
  (props, forwardedRef) => {
6727
6668
  const { __scopeSelect, children, ...iconProps } = props;
6728
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Primitive2.span, { "aria-hidden": true, ...iconProps, ref: forwardedRef, children: children || "\u25BC" });
6669
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(Primitive.span, { "aria-hidden": true, ...iconProps, ref: forwardedRef, children: children || "\u25BC" });
6729
6670
  }
6730
6671
  );
6731
6672
  SelectIcon.displayName = ICON_NAME;
6732
6673
  var PORTAL_NAME2 = "SelectPortal";
6733
6674
  var SelectPortal = (props) => {
6734
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Portal, { asChild: true, ...props });
6675
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(Portal, { asChild: true, ...props });
6735
6676
  };
6736
6677
  SelectPortal.displayName = PORTAL_NAME2;
6737
6678
  var CONTENT_NAME2 = "SelectContent";
6738
- var SelectContent = React32.forwardRef(
6679
+ var SelectContent = React31.forwardRef(
6739
6680
  (props, forwardedRef) => {
6740
6681
  const context = useSelectContext(CONTENT_NAME2, props.__scopeSelect);
6741
- const [fragment, setFragment] = React32.useState();
6682
+ const [fragment, setFragment] = React31.useState();
6742
6683
  useLayoutEffect2(() => {
6743
6684
  setFragment(new DocumentFragment());
6744
6685
  }, []);
6745
6686
  if (!context.open) {
6746
6687
  const frag = fragment;
6747
- return frag ? ReactDOM5.createPortal(
6748
- /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(SelectContentProvider, { scope: props.__scopeSelect, children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Collection.Slot, { scope: props.__scopeSelect, children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { children: props.children }) }) }),
6688
+ return frag ? ReactDOM4.createPortal(
6689
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(SelectContentProvider, { scope: props.__scopeSelect, children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(Collection.Slot, { scope: props.__scopeSelect, children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("div", { children: props.children }) }) }),
6749
6690
  frag
6750
6691
  ) : null;
6751
6692
  }
6752
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(SelectContentImpl, { ...props, ref: forwardedRef });
6693
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(SelectContentImpl, { ...props, ref: forwardedRef });
6753
6694
  }
6754
6695
  );
6755
6696
  SelectContent.displayName = CONTENT_NAME2;
6756
6697
  var CONTENT_MARGIN = 10;
6757
6698
  var [SelectContentProvider, useSelectContentContext] = createSelectContext(CONTENT_NAME2);
6758
6699
  var CONTENT_IMPL_NAME = "SelectContentImpl";
6759
- var Slot2 = (0, import_react_slot6.createSlot)("SelectContent.RemoveScroll");
6760
- var SelectContentImpl = React32.forwardRef(
6700
+ var Slot2 = (0, import_react_slot5.createSlot)("SelectContent.RemoveScroll");
6701
+ var SelectContentImpl = React31.forwardRef(
6761
6702
  (props, forwardedRef) => {
6762
6703
  const {
6763
6704
  __scopeSelect,
@@ -6781,21 +6722,21 @@ var SelectContentImpl = React32.forwardRef(
6781
6722
  ...contentProps
6782
6723
  } = props;
6783
6724
  const context = useSelectContext(CONTENT_NAME2, __scopeSelect);
6784
- const [content, setContent] = React32.useState(null);
6785
- const [viewport, setViewport] = React32.useState(null);
6725
+ const [content, setContent] = React31.useState(null);
6726
+ const [viewport, setViewport] = React31.useState(null);
6786
6727
  const composedRefs = useComposedRefs(forwardedRef, (node) => setContent(node));
6787
- const [selectedItem, setSelectedItem] = React32.useState(null);
6788
- const [selectedItemText, setSelectedItemText] = React32.useState(
6728
+ const [selectedItem, setSelectedItem] = React31.useState(null);
6729
+ const [selectedItemText, setSelectedItemText] = React31.useState(
6789
6730
  null
6790
6731
  );
6791
6732
  const getItems = useCollection(__scopeSelect);
6792
- const [isPositioned, setIsPositioned] = React32.useState(false);
6793
- const firstValidItemFoundRef = React32.useRef(false);
6794
- React32.useEffect(() => {
6733
+ const [isPositioned, setIsPositioned] = React31.useState(false);
6734
+ const firstValidItemFoundRef = React31.useRef(false);
6735
+ React31.useEffect(() => {
6795
6736
  if (content) return hideOthers(content);
6796
6737
  }, [content]);
6797
6738
  useFocusGuards();
6798
- const focusFirst2 = React32.useCallback(
6739
+ const focusFirst2 = React31.useCallback(
6799
6740
  (candidates) => {
6800
6741
  const [firstItem, ...restItems] = getItems().map((item) => item.ref.current);
6801
6742
  const [lastItem] = restItems.slice(-1);
@@ -6811,17 +6752,17 @@ var SelectContentImpl = React32.forwardRef(
6811
6752
  },
6812
6753
  [getItems, viewport]
6813
6754
  );
6814
- const focusSelectedItem = React32.useCallback(
6755
+ const focusSelectedItem = React31.useCallback(
6815
6756
  () => focusFirst2([selectedItem, content]),
6816
6757
  [focusFirst2, selectedItem, content]
6817
6758
  );
6818
- React32.useEffect(() => {
6759
+ React31.useEffect(() => {
6819
6760
  if (isPositioned) {
6820
6761
  focusSelectedItem();
6821
6762
  }
6822
6763
  }, [isPositioned, focusSelectedItem]);
6823
6764
  const { onOpenChange, triggerPointerDownPosRef } = context;
6824
- React32.useEffect(() => {
6765
+ React31.useEffect(() => {
6825
6766
  if (content) {
6826
6767
  let pointerMoveDelta = { x: 0, y: 0 };
6827
6768
  const handlePointerMove = (event) => {
@@ -6851,7 +6792,7 @@ var SelectContentImpl = React32.forwardRef(
6851
6792
  };
6852
6793
  }
6853
6794
  }, [content, onOpenChange, triggerPointerDownPosRef]);
6854
- React32.useEffect(() => {
6795
+ React31.useEffect(() => {
6855
6796
  const close = () => onOpenChange(false);
6856
6797
  window.addEventListener("blur", close);
6857
6798
  window.addEventListener("resize", close);
@@ -6868,7 +6809,7 @@ var SelectContentImpl = React32.forwardRef(
6868
6809
  setTimeout(() => nextItem.ref.current.focus());
6869
6810
  }
6870
6811
  });
6871
- const itemRefCallback = React32.useCallback(
6812
+ const itemRefCallback = React31.useCallback(
6872
6813
  (node, value, disabled) => {
6873
6814
  const isFirstValidItem = !firstValidItemFoundRef.current && !disabled;
6874
6815
  const isSelectedItem = context.value !== void 0 && context.value === value;
@@ -6879,8 +6820,8 @@ var SelectContentImpl = React32.forwardRef(
6879
6820
  },
6880
6821
  [context.value]
6881
6822
  );
6882
- const handleItemLeave = React32.useCallback(() => content?.focus(), [content]);
6883
- const itemTextRefCallback = React32.useCallback(
6823
+ const handleItemLeave = React31.useCallback(() => content?.focus(), [content]);
6824
+ const itemTextRefCallback = React31.useCallback(
6884
6825
  (node, value, disabled) => {
6885
6826
  const isFirstValidItem = !firstValidItemFoundRef.current && !disabled;
6886
6827
  const isSelectedItem = context.value !== void 0 && context.value === value;
@@ -6903,7 +6844,7 @@ var SelectContentImpl = React32.forwardRef(
6903
6844
  hideWhenDetached,
6904
6845
  avoidCollisions
6905
6846
  } : {};
6906
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
6847
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
6907
6848
  SelectContentProvider,
6908
6849
  {
6909
6850
  scope: __scopeSelect,
@@ -6919,7 +6860,7 @@ var SelectContentImpl = React32.forwardRef(
6919
6860
  position,
6920
6861
  isPositioned,
6921
6862
  searchRef,
6922
- children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Combination_default, { as: Slot2, allowPinchZoom: true, children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
6863
+ children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(Combination_default, { as: Slot2, allowPinchZoom: true, children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
6923
6864
  FocusScope,
6924
6865
  {
6925
6866
  asChild: true,
@@ -6931,7 +6872,7 @@ var SelectContentImpl = React32.forwardRef(
6931
6872
  context.trigger?.focus({ preventScroll: true });
6932
6873
  event.preventDefault();
6933
6874
  }),
6934
- children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
6875
+ children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
6935
6876
  DismissableLayer,
6936
6877
  {
6937
6878
  asChild: true,
@@ -6940,7 +6881,7 @@ var SelectContentImpl = React32.forwardRef(
6940
6881
  onPointerDownOutside,
6941
6882
  onFocusOutside: (event) => event.preventDefault(),
6942
6883
  onDismiss: () => context.onOpenChange(false),
6943
- children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
6884
+ children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
6944
6885
  SelectPosition,
6945
6886
  {
6946
6887
  role: "listbox",
@@ -6991,18 +6932,18 @@ var SelectContentImpl = React32.forwardRef(
6991
6932
  );
6992
6933
  SelectContentImpl.displayName = CONTENT_IMPL_NAME;
6993
6934
  var ITEM_ALIGNED_POSITION_NAME = "SelectItemAlignedPosition";
6994
- var SelectItemAlignedPosition = React32.forwardRef((props, forwardedRef) => {
6935
+ var SelectItemAlignedPosition = React31.forwardRef((props, forwardedRef) => {
6995
6936
  const { __scopeSelect, onPlaced, ...popperProps } = props;
6996
6937
  const context = useSelectContext(CONTENT_NAME2, __scopeSelect);
6997
6938
  const contentContext = useSelectContentContext(CONTENT_NAME2, __scopeSelect);
6998
- const [contentWrapper, setContentWrapper] = React32.useState(null);
6999
- const [content, setContent] = React32.useState(null);
6939
+ const [contentWrapper, setContentWrapper] = React31.useState(null);
6940
+ const [content, setContent] = React31.useState(null);
7000
6941
  const composedRefs = useComposedRefs(forwardedRef, (node) => setContent(node));
7001
6942
  const getItems = useCollection(__scopeSelect);
7002
- const shouldExpandOnScrollRef = React32.useRef(false);
7003
- const shouldRepositionRef = React32.useRef(true);
6943
+ const shouldExpandOnScrollRef = React31.useRef(false);
6944
+ const shouldRepositionRef = React31.useRef(true);
7004
6945
  const { viewport, selectedItem, selectedItemText, focusSelectedItem } = contentContext;
7005
- const position = React32.useCallback(() => {
6946
+ const position = React31.useCallback(() => {
7006
6947
  if (context.trigger && context.valueNode && contentWrapper && content && viewport && selectedItem && selectedItemText) {
7007
6948
  const triggerRect = context.trigger.getBoundingClientRect();
7008
6949
  const contentRect = content.getBoundingClientRect();
@@ -7102,11 +7043,11 @@ var SelectItemAlignedPosition = React32.forwardRef((props, forwardedRef) => {
7102
7043
  onPlaced
7103
7044
  ]);
7104
7045
  useLayoutEffect2(() => position(), [position]);
7105
- const [contentZIndex, setContentZIndex] = React32.useState();
7046
+ const [contentZIndex, setContentZIndex] = React31.useState();
7106
7047
  useLayoutEffect2(() => {
7107
7048
  if (content) setContentZIndex(window.getComputedStyle(content).zIndex);
7108
7049
  }, [content]);
7109
- const handleScrollButtonChange = React32.useCallback(
7050
+ const handleScrollButtonChange = React31.useCallback(
7110
7051
  (node) => {
7111
7052
  if (node && shouldRepositionRef.current === true) {
7112
7053
  position();
@@ -7116,14 +7057,14 @@ var SelectItemAlignedPosition = React32.forwardRef((props, forwardedRef) => {
7116
7057
  },
7117
7058
  [position, focusSelectedItem]
7118
7059
  );
7119
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
7060
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
7120
7061
  SelectViewportProvider,
7121
7062
  {
7122
7063
  scope: __scopeSelect,
7123
7064
  contentWrapper,
7124
7065
  shouldExpandOnScrollRef,
7125
7066
  onScrollButtonChange: handleScrollButtonChange,
7126
- children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
7067
+ children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
7127
7068
  "div",
7128
7069
  {
7129
7070
  ref: setContentWrapper,
@@ -7133,8 +7074,8 @@ var SelectItemAlignedPosition = React32.forwardRef((props, forwardedRef) => {
7133
7074
  position: "fixed",
7134
7075
  zIndex: contentZIndex
7135
7076
  },
7136
- children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
7137
- Primitive2.div,
7077
+ children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
7078
+ Primitive.div,
7138
7079
  {
7139
7080
  ...popperProps,
7140
7081
  ref: composedRefs,
@@ -7155,7 +7096,7 @@ var SelectItemAlignedPosition = React32.forwardRef((props, forwardedRef) => {
7155
7096
  });
7156
7097
  SelectItemAlignedPosition.displayName = ITEM_ALIGNED_POSITION_NAME;
7157
7098
  var POPPER_POSITION_NAME = "SelectPopperPosition";
7158
- var SelectPopperPosition = React32.forwardRef((props, forwardedRef) => {
7099
+ var SelectPopperPosition = React31.forwardRef((props, forwardedRef) => {
7159
7100
  const {
7160
7101
  __scopeSelect,
7161
7102
  align = "start",
@@ -7163,7 +7104,7 @@ var SelectPopperPosition = React32.forwardRef((props, forwardedRef) => {
7163
7104
  ...popperProps
7164
7105
  } = props;
7165
7106
  const popperScope = usePopperScope(__scopeSelect);
7166
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
7107
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
7167
7108
  Content,
7168
7109
  {
7169
7110
  ...popperScope,
@@ -7190,15 +7131,15 @@ var SelectPopperPosition = React32.forwardRef((props, forwardedRef) => {
7190
7131
  SelectPopperPosition.displayName = POPPER_POSITION_NAME;
7191
7132
  var [SelectViewportProvider, useSelectViewportContext] = createSelectContext(CONTENT_NAME2, {});
7192
7133
  var VIEWPORT_NAME = "SelectViewport";
7193
- var SelectViewport = React32.forwardRef(
7134
+ var SelectViewport = React31.forwardRef(
7194
7135
  (props, forwardedRef) => {
7195
7136
  const { __scopeSelect, nonce, ...viewportProps } = props;
7196
7137
  const contentContext = useSelectContentContext(VIEWPORT_NAME, __scopeSelect);
7197
7138
  const viewportContext = useSelectViewportContext(VIEWPORT_NAME, __scopeSelect);
7198
7139
  const composedRefs = useComposedRefs(forwardedRef, contentContext.onViewportChange);
7199
- const prevScrollTopRef = React32.useRef(0);
7200
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(import_jsx_runtime42.Fragment, { children: [
7201
- /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
7140
+ const prevScrollTopRef = React31.useRef(0);
7141
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(import_jsx_runtime41.Fragment, { children: [
7142
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
7202
7143
  "style",
7203
7144
  {
7204
7145
  dangerouslySetInnerHTML: {
@@ -7207,8 +7148,8 @@ var SelectViewport = React32.forwardRef(
7207
7148
  nonce
7208
7149
  }
7209
7150
  ),
7210
- /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Collection.Slot, { scope: __scopeSelect, children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
7211
- Primitive2.div,
7151
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(Collection.Slot, { scope: __scopeSelect, children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
7152
+ Primitive.div,
7212
7153
  {
7213
7154
  "data-radix-select-viewport": "",
7214
7155
  role: "presentation",
@@ -7259,26 +7200,26 @@ var SelectViewport = React32.forwardRef(
7259
7200
  SelectViewport.displayName = VIEWPORT_NAME;
7260
7201
  var GROUP_NAME = "SelectGroup";
7261
7202
  var [SelectGroupContextProvider, useSelectGroupContext] = createSelectContext(GROUP_NAME);
7262
- var SelectGroup = React32.forwardRef(
7203
+ var SelectGroup = React31.forwardRef(
7263
7204
  (props, forwardedRef) => {
7264
7205
  const { __scopeSelect, ...groupProps } = props;
7265
7206
  const groupId = useId();
7266
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(SelectGroupContextProvider, { scope: __scopeSelect, id: groupId, children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Primitive2.div, { role: "group", "aria-labelledby": groupId, ...groupProps, ref: forwardedRef }) });
7207
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(SelectGroupContextProvider, { scope: __scopeSelect, id: groupId, children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(Primitive.div, { role: "group", "aria-labelledby": groupId, ...groupProps, ref: forwardedRef }) });
7267
7208
  }
7268
7209
  );
7269
7210
  SelectGroup.displayName = GROUP_NAME;
7270
7211
  var LABEL_NAME = "SelectLabel";
7271
- var SelectLabel = React32.forwardRef(
7212
+ var SelectLabel = React31.forwardRef(
7272
7213
  (props, forwardedRef) => {
7273
7214
  const { __scopeSelect, ...labelProps } = props;
7274
7215
  const groupContext = useSelectGroupContext(LABEL_NAME, __scopeSelect);
7275
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Primitive2.div, { id: groupContext.id, ...labelProps, ref: forwardedRef });
7216
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(Primitive.div, { id: groupContext.id, ...labelProps, ref: forwardedRef });
7276
7217
  }
7277
7218
  );
7278
7219
  SelectLabel.displayName = LABEL_NAME;
7279
7220
  var ITEM_NAME = "SelectItem";
7280
7221
  var [SelectItemContextProvider, useSelectItemContext] = createSelectContext(ITEM_NAME);
7281
- var SelectItem = React32.forwardRef(
7222
+ var SelectItem = React31.forwardRef(
7282
7223
  (props, forwardedRef) => {
7283
7224
  const {
7284
7225
  __scopeSelect,
@@ -7290,14 +7231,14 @@ var SelectItem = React32.forwardRef(
7290
7231
  const context = useSelectContext(ITEM_NAME, __scopeSelect);
7291
7232
  const contentContext = useSelectContentContext(ITEM_NAME, __scopeSelect);
7292
7233
  const isSelected = context.value === value;
7293
- const [textValue, setTextValue] = React32.useState(textValueProp ?? "");
7294
- const [isFocused, setIsFocused] = React32.useState(false);
7234
+ const [textValue, setTextValue] = React31.useState(textValueProp ?? "");
7235
+ const [isFocused, setIsFocused] = React31.useState(false);
7295
7236
  const composedRefs = useComposedRefs(
7296
7237
  forwardedRef,
7297
7238
  (node) => contentContext.itemRefCallback?.(node, value, disabled)
7298
7239
  );
7299
7240
  const textId = useId();
7300
- const pointerTypeRef = React32.useRef("touch");
7241
+ const pointerTypeRef = React31.useRef("touch");
7301
7242
  const handleSelect = () => {
7302
7243
  if (!disabled) {
7303
7244
  context.onValueChange(value);
@@ -7309,7 +7250,7 @@ var SelectItem = React32.forwardRef(
7309
7250
  "A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder."
7310
7251
  );
7311
7252
  }
7312
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
7253
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
7313
7254
  SelectItemContextProvider,
7314
7255
  {
7315
7256
  scope: __scopeSelect,
@@ -7317,18 +7258,18 @@ var SelectItem = React32.forwardRef(
7317
7258
  disabled,
7318
7259
  textId,
7319
7260
  isSelected,
7320
- onItemTextChange: React32.useCallback((node) => {
7261
+ onItemTextChange: React31.useCallback((node) => {
7321
7262
  setTextValue((prevTextValue) => prevTextValue || (node?.textContent ?? "").trim());
7322
7263
  }, []),
7323
- children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
7264
+ children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
7324
7265
  Collection.ItemSlot,
7325
7266
  {
7326
7267
  scope: __scopeSelect,
7327
7268
  value,
7328
7269
  disabled,
7329
7270
  textValue,
7330
- children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
7331
- Primitive2.div,
7271
+ children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
7272
+ Primitive.div,
7332
7273
  {
7333
7274
  role: "option",
7334
7275
  "aria-labelledby": textId,
@@ -7380,14 +7321,14 @@ var SelectItem = React32.forwardRef(
7380
7321
  );
7381
7322
  SelectItem.displayName = ITEM_NAME;
7382
7323
  var ITEM_TEXT_NAME = "SelectItemText";
7383
- var SelectItemText = React32.forwardRef(
7324
+ var SelectItemText = React31.forwardRef(
7384
7325
  (props, forwardedRef) => {
7385
7326
  const { __scopeSelect, className, style, ...itemTextProps } = props;
7386
7327
  const context = useSelectContext(ITEM_TEXT_NAME, __scopeSelect);
7387
7328
  const contentContext = useSelectContentContext(ITEM_TEXT_NAME, __scopeSelect);
7388
7329
  const itemContext = useSelectItemContext(ITEM_TEXT_NAME, __scopeSelect);
7389
7330
  const nativeOptionsContext = useSelectNativeOptionsContext(ITEM_TEXT_NAME, __scopeSelect);
7390
- const [itemTextNode, setItemTextNode] = React32.useState(null);
7331
+ const [itemTextNode, setItemTextNode] = React31.useState(null);
7391
7332
  const composedRefs = useComposedRefs(
7392
7333
  forwardedRef,
7393
7334
  (node) => setItemTextNode(node),
@@ -7395,8 +7336,8 @@ var SelectItemText = React32.forwardRef(
7395
7336
  (node) => contentContext.itemTextRefCallback?.(node, itemContext.value, itemContext.disabled)
7396
7337
  );
7397
7338
  const textContent = itemTextNode?.textContent;
7398
- const nativeOption = React32.useMemo(
7399
- () => /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("option", { value: itemContext.value, disabled: itemContext.disabled, children: textContent }, itemContext.value),
7339
+ const nativeOption = React31.useMemo(
7340
+ () => /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("option", { value: itemContext.value, disabled: itemContext.disabled, children: textContent }, itemContext.value),
7400
7341
  [itemContext.disabled, itemContext.value, textContent]
7401
7342
  );
7402
7343
  const { onNativeOptionAdd, onNativeOptionRemove } = nativeOptionsContext;
@@ -7404,27 +7345,27 @@ var SelectItemText = React32.forwardRef(
7404
7345
  onNativeOptionAdd(nativeOption);
7405
7346
  return () => onNativeOptionRemove(nativeOption);
7406
7347
  }, [onNativeOptionAdd, onNativeOptionRemove, nativeOption]);
7407
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(import_jsx_runtime42.Fragment, { children: [
7408
- /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Primitive2.span, { id: itemContext.textId, ...itemTextProps, ref: composedRefs }),
7409
- itemContext.isSelected && context.valueNode && !context.valueNodeHasChildren ? ReactDOM5.createPortal(itemTextProps.children, context.valueNode) : null
7348
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(import_jsx_runtime41.Fragment, { children: [
7349
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(Primitive.span, { id: itemContext.textId, ...itemTextProps, ref: composedRefs }),
7350
+ itemContext.isSelected && context.valueNode && !context.valueNodeHasChildren ? ReactDOM4.createPortal(itemTextProps.children, context.valueNode) : null
7410
7351
  ] });
7411
7352
  }
7412
7353
  );
7413
7354
  SelectItemText.displayName = ITEM_TEXT_NAME;
7414
7355
  var ITEM_INDICATOR_NAME = "SelectItemIndicator";
7415
- var SelectItemIndicator = React32.forwardRef(
7356
+ var SelectItemIndicator = React31.forwardRef(
7416
7357
  (props, forwardedRef) => {
7417
7358
  const { __scopeSelect, ...itemIndicatorProps } = props;
7418
7359
  const itemContext = useSelectItemContext(ITEM_INDICATOR_NAME, __scopeSelect);
7419
- return itemContext.isSelected ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Primitive2.span, { "aria-hidden": true, ...itemIndicatorProps, ref: forwardedRef }) : null;
7360
+ return itemContext.isSelected ? /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(Primitive.span, { "aria-hidden": true, ...itemIndicatorProps, ref: forwardedRef }) : null;
7420
7361
  }
7421
7362
  );
7422
7363
  SelectItemIndicator.displayName = ITEM_INDICATOR_NAME;
7423
7364
  var SCROLL_UP_BUTTON_NAME = "SelectScrollUpButton";
7424
- var SelectScrollUpButton = React32.forwardRef((props, forwardedRef) => {
7365
+ var SelectScrollUpButton = React31.forwardRef((props, forwardedRef) => {
7425
7366
  const contentContext = useSelectContentContext(SCROLL_UP_BUTTON_NAME, props.__scopeSelect);
7426
7367
  const viewportContext = useSelectViewportContext(SCROLL_UP_BUTTON_NAME, props.__scopeSelect);
7427
- const [canScrollUp, setCanScrollUp] = React32.useState(false);
7368
+ const [canScrollUp, setCanScrollUp] = React31.useState(false);
7428
7369
  const composedRefs = useComposedRefs(forwardedRef, viewportContext.onScrollButtonChange);
7429
7370
  useLayoutEffect2(() => {
7430
7371
  if (contentContext.viewport && contentContext.isPositioned) {
@@ -7439,7 +7380,7 @@ var SelectScrollUpButton = React32.forwardRef((props, forwardedRef) => {
7439
7380
  return () => viewport.removeEventListener("scroll", handleScroll22);
7440
7381
  }
7441
7382
  }, [contentContext.viewport, contentContext.isPositioned]);
7442
- return canScrollUp ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
7383
+ return canScrollUp ? /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
7443
7384
  SelectScrollButtonImpl,
7444
7385
  {
7445
7386
  ...props,
@@ -7455,10 +7396,10 @@ var SelectScrollUpButton = React32.forwardRef((props, forwardedRef) => {
7455
7396
  });
7456
7397
  SelectScrollUpButton.displayName = SCROLL_UP_BUTTON_NAME;
7457
7398
  var SCROLL_DOWN_BUTTON_NAME = "SelectScrollDownButton";
7458
- var SelectScrollDownButton = React32.forwardRef((props, forwardedRef) => {
7399
+ var SelectScrollDownButton = React31.forwardRef((props, forwardedRef) => {
7459
7400
  const contentContext = useSelectContentContext(SCROLL_DOWN_BUTTON_NAME, props.__scopeSelect);
7460
7401
  const viewportContext = useSelectViewportContext(SCROLL_DOWN_BUTTON_NAME, props.__scopeSelect);
7461
- const [canScrollDown, setCanScrollDown] = React32.useState(false);
7402
+ const [canScrollDown, setCanScrollDown] = React31.useState(false);
7462
7403
  const composedRefs = useComposedRefs(forwardedRef, viewportContext.onScrollButtonChange);
7463
7404
  useLayoutEffect2(() => {
7464
7405
  if (contentContext.viewport && contentContext.isPositioned) {
@@ -7474,7 +7415,7 @@ var SelectScrollDownButton = React32.forwardRef((props, forwardedRef) => {
7474
7415
  return () => viewport.removeEventListener("scroll", handleScroll22);
7475
7416
  }
7476
7417
  }, [contentContext.viewport, contentContext.isPositioned]);
7477
- return canScrollDown ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
7418
+ return canScrollDown ? /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
7478
7419
  SelectScrollButtonImpl,
7479
7420
  {
7480
7421
  ...props,
@@ -7489,26 +7430,26 @@ var SelectScrollDownButton = React32.forwardRef((props, forwardedRef) => {
7489
7430
  ) : null;
7490
7431
  });
7491
7432
  SelectScrollDownButton.displayName = SCROLL_DOWN_BUTTON_NAME;
7492
- var SelectScrollButtonImpl = React32.forwardRef((props, forwardedRef) => {
7433
+ var SelectScrollButtonImpl = React31.forwardRef((props, forwardedRef) => {
7493
7434
  const { __scopeSelect, onAutoScroll, ...scrollIndicatorProps } = props;
7494
7435
  const contentContext = useSelectContentContext("SelectScrollButton", __scopeSelect);
7495
- const autoScrollTimerRef = React32.useRef(null);
7436
+ const autoScrollTimerRef = React31.useRef(null);
7496
7437
  const getItems = useCollection(__scopeSelect);
7497
- const clearAutoScrollTimer = React32.useCallback(() => {
7438
+ const clearAutoScrollTimer = React31.useCallback(() => {
7498
7439
  if (autoScrollTimerRef.current !== null) {
7499
7440
  window.clearInterval(autoScrollTimerRef.current);
7500
7441
  autoScrollTimerRef.current = null;
7501
7442
  }
7502
7443
  }, []);
7503
- React32.useEffect(() => {
7444
+ React31.useEffect(() => {
7504
7445
  return () => clearAutoScrollTimer();
7505
7446
  }, [clearAutoScrollTimer]);
7506
7447
  useLayoutEffect2(() => {
7507
7448
  const activeItem = getItems().find((item) => item.ref.current === document.activeElement);
7508
7449
  activeItem?.ref.current?.scrollIntoView({ block: "nearest" });
7509
7450
  }, [getItems]);
7510
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
7511
- Primitive2.div,
7451
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
7452
+ Primitive.div,
7512
7453
  {
7513
7454
  "aria-hidden": true,
7514
7455
  ...scrollIndicatorProps,
@@ -7532,31 +7473,31 @@ var SelectScrollButtonImpl = React32.forwardRef((props, forwardedRef) => {
7532
7473
  );
7533
7474
  });
7534
7475
  var SEPARATOR_NAME = "SelectSeparator";
7535
- var SelectSeparator = React32.forwardRef(
7476
+ var SelectSeparator = React31.forwardRef(
7536
7477
  (props, forwardedRef) => {
7537
7478
  const { __scopeSelect, ...separatorProps } = props;
7538
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Primitive2.div, { "aria-hidden": true, ...separatorProps, ref: forwardedRef });
7479
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(Primitive.div, { "aria-hidden": true, ...separatorProps, ref: forwardedRef });
7539
7480
  }
7540
7481
  );
7541
7482
  SelectSeparator.displayName = SEPARATOR_NAME;
7542
7483
  var ARROW_NAME2 = "SelectArrow";
7543
- var SelectArrow = React32.forwardRef(
7484
+ var SelectArrow = React31.forwardRef(
7544
7485
  (props, forwardedRef) => {
7545
7486
  const { __scopeSelect, ...arrowProps } = props;
7546
7487
  const popperScope = usePopperScope(__scopeSelect);
7547
7488
  const context = useSelectContext(ARROW_NAME2, __scopeSelect);
7548
7489
  const contentContext = useSelectContentContext(ARROW_NAME2, __scopeSelect);
7549
- return context.open && contentContext.position === "popper" ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Arrow2, { ...popperScope, ...arrowProps, ref: forwardedRef }) : null;
7490
+ return context.open && contentContext.position === "popper" ? /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(Arrow2, { ...popperScope, ...arrowProps, ref: forwardedRef }) : null;
7550
7491
  }
7551
7492
  );
7552
7493
  SelectArrow.displayName = ARROW_NAME2;
7553
7494
  var BUBBLE_INPUT_NAME = "SelectBubbleInput";
7554
- var SelectBubbleInput = React32.forwardRef(
7495
+ var SelectBubbleInput = React31.forwardRef(
7555
7496
  ({ __scopeSelect, value, ...props }, forwardedRef) => {
7556
- const ref = React32.useRef(null);
7497
+ const ref = React31.useRef(null);
7557
7498
  const composedRefs = useComposedRefs(forwardedRef, ref);
7558
7499
  const prevValue = usePrevious(value);
7559
- React32.useEffect(() => {
7500
+ React31.useEffect(() => {
7560
7501
  const select = ref.current;
7561
7502
  if (!select) return;
7562
7503
  const selectProto = window.HTMLSelectElement.prototype;
@@ -7571,8 +7512,8 @@ var SelectBubbleInput = React32.forwardRef(
7571
7512
  select.dispatchEvent(event);
7572
7513
  }
7573
7514
  }, [prevValue, value]);
7574
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
7575
- Primitive2.select,
7515
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
7516
+ Primitive.select,
7576
7517
  {
7577
7518
  ...props,
7578
7519
  style: { ...VISUALLY_HIDDEN_STYLES, ...props.style },
@@ -7588,9 +7529,9 @@ function shouldShowPlaceholder(value) {
7588
7529
  }
7589
7530
  function useTypeaheadSearch(onSearchChange) {
7590
7531
  const handleSearchChange = useCallbackRef(onSearchChange);
7591
- const searchRef = React32.useRef("");
7592
- const timerRef = React32.useRef(0);
7593
- const handleTypeaheadSearch = React32.useCallback(
7532
+ const searchRef = React31.useRef("");
7533
+ const timerRef = React31.useRef(0);
7534
+ const handleTypeaheadSearch = React31.useCallback(
7594
7535
  (key) => {
7595
7536
  const search = searchRef.current + key;
7596
7537
  handleSearchChange(search);
@@ -7602,11 +7543,11 @@ function useTypeaheadSearch(onSearchChange) {
7602
7543
  },
7603
7544
  [handleSearchChange]
7604
7545
  );
7605
- const resetTypeahead = React32.useCallback(() => {
7546
+ const resetTypeahead = React31.useCallback(() => {
7606
7547
  searchRef.current = "";
7607
7548
  window.clearTimeout(timerRef.current);
7608
7549
  }, []);
7609
- React32.useEffect(() => {
7550
+ React31.useEffect(() => {
7610
7551
  return () => window.clearTimeout(timerRef.current);
7611
7552
  }, []);
7612
7553
  return [searchRef, handleTypeaheadSearch, resetTypeahead];
@@ -7641,16 +7582,16 @@ var ScrollDownButton = SelectScrollDownButton;
7641
7582
 
7642
7583
  // shadcn/select.tsx
7643
7584
  var import_lucide_react8 = require("lucide-react");
7644
- var import_jsx_runtime43 = require("react/jsx-runtime");
7585
+ var import_jsx_runtime42 = require("react/jsx-runtime");
7645
7586
  function Select2({
7646
7587
  ...props
7647
7588
  }) {
7648
- return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(Root23, { "data-slot": "select", ...props });
7589
+ return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Root23, { "data-slot": "select", ...props });
7649
7590
  }
7650
7591
  function SelectValue2({
7651
7592
  ...props
7652
7593
  }) {
7653
- return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(Value, { "data-slot": "select-value", ...props });
7594
+ return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Value, { "data-slot": "select-value", ...props });
7654
7595
  }
7655
7596
  function SelectTrigger2({
7656
7597
  className,
@@ -7658,7 +7599,7 @@ function SelectTrigger2({
7658
7599
  children,
7659
7600
  ...props
7660
7601
  }) {
7661
- return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(
7602
+ return /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
7662
7603
  Trigger,
7663
7604
  {
7664
7605
  "data-slot": "select-trigger",
@@ -7670,7 +7611,7 @@ function SelectTrigger2({
7670
7611
  ...props,
7671
7612
  children: [
7672
7613
  children,
7673
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(Icon3, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_lucide_react8.ChevronDownIcon, { className: "size-4 opacity-50" }) })
7614
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Icon3, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_lucide_react8.ChevronDownIcon, { className: "size-4 opacity-50" }) })
7674
7615
  ]
7675
7616
  }
7676
7617
  );
@@ -7682,7 +7623,7 @@ function SelectContent2({
7682
7623
  align = "center",
7683
7624
  ...props
7684
7625
  }) {
7685
- return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(Portal2, { children: /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(
7626
+ return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Portal2, { children: /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
7686
7627
  Content2,
7687
7628
  {
7688
7629
  "data-slot": "select-content",
@@ -7695,8 +7636,8 @@ function SelectContent2({
7695
7636
  align,
7696
7637
  ...props,
7697
7638
  children: [
7698
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(SelectScrollUpButton2, {}),
7699
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
7639
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(SelectScrollUpButton2, {}),
7640
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
7700
7641
  Viewport,
7701
7642
  {
7702
7643
  className: cn(
@@ -7706,7 +7647,7 @@ function SelectContent2({
7706
7647
  children
7707
7648
  }
7708
7649
  ),
7709
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(SelectScrollDownButton2, {})
7650
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(SelectScrollDownButton2, {})
7710
7651
  ]
7711
7652
  }
7712
7653
  ) });
@@ -7716,7 +7657,7 @@ function SelectItem2({
7716
7657
  children,
7717
7658
  ...props
7718
7659
  }) {
7719
- return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(
7660
+ return /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
7720
7661
  Item,
7721
7662
  {
7722
7663
  "data-slot": "select-item",
@@ -7726,15 +7667,15 @@ function SelectItem2({
7726
7667
  ),
7727
7668
  ...props,
7728
7669
  children: [
7729
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
7670
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
7730
7671
  "span",
7731
7672
  {
7732
7673
  "data-slot": "select-item-indicator",
7733
7674
  className: "absolute right-2 flex size-3.5 items-center justify-center",
7734
- children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_lucide_react8.CheckIcon, { className: "size-4" }) })
7675
+ children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_lucide_react8.CheckIcon, { className: "size-4" }) })
7735
7676
  }
7736
7677
  ),
7737
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(ItemText, { children })
7678
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(ItemText, { children })
7738
7679
  ]
7739
7680
  }
7740
7681
  );
@@ -7743,7 +7684,7 @@ function SelectScrollUpButton2({
7743
7684
  className,
7744
7685
  ...props
7745
7686
  }) {
7746
- return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
7687
+ return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
7747
7688
  ScrollUpButton,
7748
7689
  {
7749
7690
  "data-slot": "select-scroll-up-button",
@@ -7752,7 +7693,7 @@ function SelectScrollUpButton2({
7752
7693
  className
7753
7694
  ),
7754
7695
  ...props,
7755
- children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_lucide_react8.ChevronUpIcon, { className: "size-4" })
7696
+ children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_lucide_react8.ChevronUpIcon, { className: "size-4" })
7756
7697
  }
7757
7698
  );
7758
7699
  }
@@ -7760,7 +7701,7 @@ function SelectScrollDownButton2({
7760
7701
  className,
7761
7702
  ...props
7762
7703
  }) {
7763
- return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
7704
+ return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
7764
7705
  ScrollDownButton,
7765
7706
  {
7766
7707
  "data-slot": "select-scroll-down-button",
@@ -7769,13 +7710,13 @@ function SelectScrollDownButton2({
7769
7710
  className
7770
7711
  ),
7771
7712
  ...props,
7772
- children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_lucide_react8.ChevronDownIcon, { className: "size-4" })
7713
+ children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_lucide_react8.ChevronDownIcon, { className: "size-4" })
7773
7714
  }
7774
7715
  );
7775
7716
  }
7776
7717
 
7777
7718
  // fields/EntryBoundTextField.tsx
7778
- var import_jsx_runtime44 = require("react/jsx-runtime");
7719
+ var import_jsx_runtime43 = require("react/jsx-runtime");
7779
7720
  function isEntryBoundValue7(value) {
7780
7721
  return typeof value === "object" && value !== null && "useEntry" in value;
7781
7722
  }
@@ -7830,10 +7771,10 @@ function EntryBoundTextField({
7830
7771
  }
7831
7772
  };
7832
7773
  const hasEntries = entryNames.length > 0;
7833
- return /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: "flex flex-col gap-2", children: [
7834
- /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: "flex items-center justify-between", children: [
7835
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("span", { className: "text-sm font-medium", children: label }),
7836
- hasEntries && /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
7774
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("div", { className: "flex flex-col gap-2", children: [
7775
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("div", { className: "flex items-center justify-between", children: [
7776
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("span", { className: "text-sm font-medium", children: label }),
7777
+ hasEntries && /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
7837
7778
  Toggle,
7838
7779
  {
7839
7780
  pressed: isUsingEntry,
@@ -7846,38 +7787,38 @@ function EntryBoundTextField({
7846
7787
  }
7847
7788
  )
7848
7789
  ] }),
7849
- isUsingEntry ? /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: "space-y-2", children: [
7850
- /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: "flex gap-2", children: [
7851
- /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(
7790
+ isUsingEntry ? /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("div", { className: "space-y-2", children: [
7791
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("div", { className: "flex gap-2", children: [
7792
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(
7852
7793
  Select2,
7853
7794
  {
7854
7795
  value: currentEntryName,
7855
7796
  onValueChange: handleEntryChange,
7856
7797
  disabled,
7857
7798
  children: [
7858
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(SelectTrigger2, { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(SelectValue2, { placeholder: "Select entry" }) }),
7859
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(SelectContent2, { children: entryNames.map((name) => /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(SelectItem2, { value: name, children: name }, name)) })
7799
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(SelectTrigger2, { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(SelectValue2, { placeholder: "Select entry" }) }),
7800
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(SelectContent2, { children: entryNames.map((name) => /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(SelectItem2, { value: name, children: name }, name)) })
7860
7801
  ]
7861
7802
  }
7862
7803
  ),
7863
- /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(
7804
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(
7864
7805
  Select2,
7865
7806
  {
7866
7807
  value: currentFieldKey,
7867
7808
  onValueChange: handleFieldChange,
7868
7809
  disabled: disabled || !currentEntryName,
7869
7810
  children: [
7870
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(SelectTrigger2, { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(SelectValue2, { placeholder: "Select field" }) }),
7871
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(SelectContent2, { children: availableFields.map((field) => /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(SelectItem2, { value: field, children: field }, field)) })
7811
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(SelectTrigger2, { className: "flex-1", children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(SelectValue2, { placeholder: "Select field" }) }),
7812
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(SelectContent2, { children: availableFields.map((field) => /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(SelectItem2, { value: field, children: field }, field)) })
7872
7813
  ]
7873
7814
  }
7874
7815
  )
7875
7816
  ] }),
7876
- resolvedValue && /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: "bg-muted rounded-md p-2", children: [
7877
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(Label, { className: "text-muted-foreground text-xs", children: "Preview" }),
7878
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("p", { className: "text-sm", children: resolvedValue })
7817
+ resolvedValue && /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("div", { className: "bg-muted rounded-md p-2", children: [
7818
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(Label, { className: "text-muted-foreground text-xs", children: "Preview" }),
7819
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("p", { className: "text-sm", children: resolvedValue })
7879
7820
  ] })
7880
- ] }) : /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
7821
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
7881
7822
  Input,
7882
7823
  {
7883
7824
  value: resolvedValue,
@@ -7896,7 +7837,7 @@ function createEntryBoundTextField(label, placeholder) {
7896
7837
  value,
7897
7838
  onChange,
7898
7839
  readOnly
7899
- }) => /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
7840
+ }) => /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
7900
7841
  EntryBoundTextField,
7901
7842
  {
7902
7843
  value,
@@ -7911,7 +7852,7 @@ function createEntryBoundTextField(label, placeholder) {
7911
7852
 
7912
7853
  // fields/ResponsiveToggleField.tsx
7913
7854
  var import_lucide_react9 = require("lucide-react");
7914
- var import_jsx_runtime45 = require("react/jsx-runtime");
7855
+ var import_jsx_runtime44 = require("react/jsx-runtime");
7915
7856
  var breakpoints = [
7916
7857
  { key: "mobile", label: "Mobile", icon: import_lucide_react9.Smartphone },
7917
7858
  { key: "desktop", label: "Desktop", icon: import_lucide_react9.Monitor }
@@ -7932,9 +7873,9 @@ function ResponsiveToggleField({
7932
7873
  [key]: !visibility[key]
7933
7874
  });
7934
7875
  };
7935
- return /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)("div", { className: "flex flex-col gap-3", children: [
7936
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(Label, { className: "text-sm font-medium", children: label }),
7937
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: "flex gap-2", children: breakpoints.map(({ key, label: bpLabel, icon: Icon4 }) => /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
7876
+ return /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)("div", { className: "flex flex-col gap-3", children: [
7877
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(Label, { className: "text-sm font-medium", children: label }),
7878
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "flex gap-2", children: breakpoints.map(({ key, label: bpLabel, icon: Icon4 }) => /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(
7938
7879
  "button",
7939
7880
  {
7940
7881
  type: "button",
@@ -7946,13 +7887,13 @@ function ResponsiveToggleField({
7946
7887
  ),
7947
7888
  "aria-label": `${bpLabel} visibility`,
7948
7889
  children: [
7949
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(Icon4, { className: "size-5" }),
7950
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("span", { className: "text-xs font-medium", children: bpLabel })
7890
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(Icon4, { className: "size-5" }),
7891
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("span", { className: "text-xs font-medium", children: bpLabel })
7951
7892
  ]
7952
7893
  },
7953
7894
  key
7954
7895
  )) }),
7955
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("p", { className: "text-muted-foreground text-xs", children: !visibility.mobile && !visibility.desktop ? "Hidden on all devices" : `Visible on ${[
7896
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("p", { className: "text-muted-foreground text-xs", children: !visibility.mobile && !visibility.desktop ? "Hidden on all devices" : `Visible on ${[
7956
7897
  visibility.mobile && "mobile",
7957
7898
  visibility.desktop && "desktop"
7958
7899
  ].filter(Boolean).join(" & ")}` })
@@ -7960,7 +7901,7 @@ function ResponsiveToggleField({
7960
7901
  }
7961
7902
 
7962
7903
  // fields/ShadowField.tsx
7963
- var import_jsx_runtime46 = require("react/jsx-runtime");
7904
+ var import_jsx_runtime45 = require("react/jsx-runtime");
7964
7905
  function ShadowField({
7965
7906
  value,
7966
7907
  onChangeAction,
@@ -7968,9 +7909,9 @@ function ShadowField({
7968
7909
  label
7969
7910
  }) {
7970
7911
  const currentValue = value ?? "none";
7971
- return /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)("div", { className: "flex flex-col gap-3", children: [
7972
- /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(Label, { className: "text-sm font-medium", children: label }),
7973
- /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", { className: "grid grid-cols-4 gap-2", children: shadowPresets.map((preset) => /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(
7912
+ return /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)("div", { className: "flex flex-col gap-3", children: [
7913
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(Label, { className: "text-sm font-medium", children: label }),
7914
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: "grid grid-cols-4 gap-2", children: shadowPresets.map((preset) => /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
7974
7915
  Button2,
7975
7916
  {
7976
7917
  type: "button",
@@ -7983,14 +7924,14 @@ function ShadowField({
7983
7924
  currentValue === preset.value && "ring-ring ring-2"
7984
7925
  ),
7985
7926
  children: [
7986
- /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
7927
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
7987
7928
  "div",
7988
7929
  {
7989
7930
  className: "bg-background size-8 rounded",
7990
7931
  style: { boxShadow: preset.css }
7991
7932
  }
7992
7933
  ),
7993
- /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("span", { className: "text-xs", children: preset.label })
7934
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("span", { className: "text-xs", children: preset.label })
7994
7935
  ]
7995
7936
  },
7996
7937
  preset.value
@@ -8022,7 +7963,7 @@ var getClosestSpacingValue = (value) => {
8022
7963
  };
8023
7964
 
8024
7965
  // fields/SpacingSliderField.tsx
8025
- var import_jsx_runtime47 = require("react/jsx-runtime");
7966
+ var import_jsx_runtime46 = require("react/jsx-runtime");
8026
7967
  var MAX_VALUE2 = spacingScale[spacingScale.length - 1].value;
8027
7968
  function SpacingSliderField({
8028
7969
  value,
@@ -8062,10 +8003,10 @@ function SpacingSliderField({
8062
8003
  };
8063
8004
  const matchingPreset = spacingScale.find((s) => s.value === currentValue);
8064
8005
  const displayLabel = matchingPreset?.label ?? "Custom";
8065
- return /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("div", { className: "flex flex-col gap-3", children: [
8066
- /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("div", { className: "flex items-center justify-between", children: [
8067
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(Label, { className: "text-sm font-medium", children: label }),
8068
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
8006
+ return /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)("div", { className: "flex flex-col gap-3", children: [
8007
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)("div", { className: "flex items-center justify-between", children: [
8008
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(Label, { className: "text-sm font-medium", children: label }),
8009
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
8069
8010
  Toggle,
8070
8011
  {
8071
8012
  pressed: quantized,
@@ -8074,13 +8015,13 @@ function SpacingSliderField({
8074
8015
  variant: "outline",
8075
8016
  "aria-label": "Snap to grid",
8076
8017
  title: quantized ? "Snap to grid (on)" : "Snap to grid (off)",
8077
- children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react10.Magnet, { className: "size-3.5" })
8018
+ children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_lucide_react10.Magnet, { className: "size-3.5" })
8078
8019
  }
8079
8020
  )
8080
8021
  ] }),
8081
- /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("div", { className: "flex items-center gap-2", children: [
8082
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "text-muted-foreground flex-1 text-sm", children: displayLabel }),
8083
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
8022
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)("div", { className: "flex items-center gap-2", children: [
8023
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("span", { className: "text-muted-foreground flex-1 text-sm", children: displayLabel }),
8024
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
8084
8025
  Input,
8085
8026
  {
8086
8027
  type: "number",
@@ -8092,9 +8033,9 @@ function SpacingSliderField({
8092
8033
  max: MAX_VALUE2
8093
8034
  }
8094
8035
  ),
8095
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "text-muted-foreground text-xs", children: "px" })
8036
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("span", { className: "text-muted-foreground text-xs", children: "px" })
8096
8037
  ] }),
8097
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
8038
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
8098
8039
  Slider,
8099
8040
  {
8100
8041
  value: [currentValue],
@@ -8105,7 +8046,7 @@ function SpacingSliderField({
8105
8046
  disabled
8106
8047
  }
8107
8048
  ),
8108
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("div", { className: "flex flex-wrap gap-1", children: spacingScale.filter((_, i) => i % 2 === 0 || i === spacingScale.length - 1).map((preset) => /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
8049
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", { className: "flex flex-wrap gap-1", children: spacingScale.filter((_, i) => i % 2 === 0 || i === spacingScale.length - 1).map((preset) => /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
8109
8050
  Button2,
8110
8051
  {
8111
8052
  type: "button",
@@ -8121,7 +8062,7 @@ function SpacingSliderField({
8121
8062
  }
8122
8063
 
8123
8064
  // fields/ThemeableColorField.tsx
8124
- var import_jsx_runtime48 = require("react/jsx-runtime");
8065
+ var import_jsx_runtime47 = require("react/jsx-runtime");
8125
8066
  function isThemeableValue12(value) {
8126
8067
  return typeof value === "object" && value !== null && "useTheme" in value;
8127
8068
  }
@@ -8146,10 +8087,10 @@ function ThemeableColorField({
8146
8087
  const handleColorChange = (newColor) => {
8147
8088
  onChange({ useTheme: false, value: newColor });
8148
8089
  };
8149
- return /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("div", { className: "flex flex-col gap-2", children: [
8150
- /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("div", { className: "flex items-center justify-between", children: [
8151
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("span", { className: "text-sm font-medium", children: label }),
8152
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
8090
+ return /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("div", { className: "flex flex-col gap-2", children: [
8091
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("div", { className: "flex items-center justify-between", children: [
8092
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "text-sm font-medium", children: label }),
8093
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
8153
8094
  Toggle,
8154
8095
  {
8155
8096
  pressed: isUsingTheme,
@@ -8162,8 +8103,8 @@ function ThemeableColorField({
8162
8103
  }
8163
8104
  )
8164
8105
  ] }),
8165
- isUsingTheme ? /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("div", { className: "flex items-center gap-2 rounded-md border p-2", children: [
8166
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
8106
+ isUsingTheme ? /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("div", { className: "flex items-center gap-2 rounded-md border p-2", children: [
8107
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
8167
8108
  "div",
8168
8109
  {
8169
8110
  className: "size-6 shrink-0 rounded border",
@@ -8172,11 +8113,11 @@ function ThemeableColorField({
8172
8113
  }
8173
8114
  }
8174
8115
  ),
8175
- /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)("span", { className: "text-muted-foreground text-sm capitalize", children: [
8116
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)("span", { className: "text-muted-foreground text-sm capitalize", children: [
8176
8117
  "Theme: ",
8177
8118
  themeKey
8178
8119
  ] })
8179
- ] }) : /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
8120
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
8180
8121
  ColorPickerField,
8181
8122
  {
8182
8123
  value: customValue,
@@ -8195,7 +8136,7 @@ function createThemeableColorField(label, themeKey) {
8195
8136
  value,
8196
8137
  onChange,
8197
8138
  readOnly
8198
- }) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
8139
+ }) => /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
8199
8140
  ThemeableColorField,
8200
8141
  {
8201
8142
  value,
@@ -8209,10 +8150,10 @@ function createThemeableColorField(label, themeKey) {
8209
8150
  }
8210
8151
 
8211
8152
  // fields/TypographyField.tsx
8212
- var import_jsx_runtime49 = require("react/jsx-runtime");
8153
+ var import_jsx_runtime48 = require("react/jsx-runtime");
8213
8154
 
8214
8155
  // fields/index.tsx
8215
- var import_jsx_runtime50 = require("react/jsx-runtime");
8156
+ var import_jsx_runtime49 = require("react/jsx-runtime");
8216
8157
  function createColorField(label) {
8217
8158
  return {
8218
8159
  type: "custom",
@@ -8221,7 +8162,7 @@ function createColorField(label) {
8221
8162
  value,
8222
8163
  onChange,
8223
8164
  readOnly
8224
- }) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
8165
+ }) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8225
8166
  ColorPickerField,
8226
8167
  {
8227
8168
  value,
@@ -8240,7 +8181,7 @@ function createSpacingField(label) {
8240
8181
  value,
8241
8182
  onChange,
8242
8183
  readOnly
8243
- }) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
8184
+ }) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8244
8185
  SpacingSliderField,
8245
8186
  {
8246
8187
  value,
@@ -8259,7 +8200,7 @@ function createShadowField(label) {
8259
8200
  value,
8260
8201
  onChange,
8261
8202
  readOnly
8262
- }) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
8203
+ }) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8263
8204
  ShadowField,
8264
8205
  {
8265
8206
  value,
@@ -8278,7 +8219,7 @@ function createBorderRadiusField(label) {
8278
8219
  value,
8279
8220
  onChange,
8280
8221
  readOnly
8281
- }) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
8222
+ }) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8282
8223
  BorderRadiusField,
8283
8224
  {
8284
8225
  value,
@@ -8297,7 +8238,7 @@ function createResponsiveField(label) {
8297
8238
  value,
8298
8239
  onChange,
8299
8240
  readOnly
8300
- }) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
8241
+ }) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8301
8242
  ResponsiveToggleField,
8302
8243
  {
8303
8244
  value,
@@ -8310,7 +8251,7 @@ function createResponsiveField(label) {
8310
8251
  }
8311
8252
 
8312
8253
  // config.tsx
8313
- var import_jsx_runtime51 = require("react/jsx-runtime");
8254
+ var import_jsx_runtime50 = require("react/jsx-runtime");
8314
8255
  var config = {
8315
8256
  categories: {
8316
8257
  typography: {
@@ -8427,7 +8368,7 @@ var config = {
8427
8368
  letterSpacing: "normal",
8428
8369
  lineHeight: "tight"
8429
8370
  },
8430
- render: (props) => /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(Heading, { ...props })
8371
+ render: (props) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(Heading, { ...props })
8431
8372
  },
8432
8373
  Paragraph: {
8433
8374
  fields: {
@@ -8478,7 +8419,7 @@ var config = {
8478
8419
  align: "left",
8479
8420
  lineHeight: "normal"
8480
8421
  },
8481
- render: (props) => /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(Paragraph, { ...props })
8422
+ render: (props) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(Paragraph, { ...props })
8482
8423
  },
8483
8424
  // ==================
8484
8425
  // ACTIONS
@@ -8551,7 +8492,7 @@ var config = {
8551
8492
  align: "center",
8552
8493
  target: "_self"
8553
8494
  },
8554
- render: (props) => /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(Button, { ...props })
8495
+ render: (props) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(Button, { ...props })
8555
8496
  },
8556
8497
  // ==================
8557
8498
  // MEDIA
@@ -8631,7 +8572,7 @@ var config = {
8631
8572
  align: "center",
8632
8573
  captionColor: { useTheme: true, themeKey: "muted" }
8633
8574
  },
8634
- render: (props) => /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(Image, { ...props })
8575
+ render: (props) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(Image, { ...props })
8635
8576
  },
8636
8577
  ImageCarousel: {
8637
8578
  fields: {
@@ -8695,7 +8636,7 @@ var config = {
8695
8636
  arrowColor: { useTheme: true, themeKey: "background" },
8696
8637
  dotColor: { useTheme: true, themeKey: "primary" }
8697
8638
  },
8698
- render: (props) => /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(ImageCarousel, { ...props })
8639
+ render: (props) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(ImageCarousel, { ...props })
8699
8640
  },
8700
8641
  VideoEmbed: {
8701
8642
  fields: {
@@ -8767,7 +8708,7 @@ var config = {
8767
8708
  muted: false,
8768
8709
  loop: false
8769
8710
  },
8770
- render: (props) => /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(VideoEmbed, { ...props })
8711
+ render: (props) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(VideoEmbed, { ...props })
8771
8712
  },
8772
8713
  Icon: {
8773
8714
  fields: {
@@ -8804,7 +8745,7 @@ var config = {
8804
8745
  color: { useTheme: true, themeKey: "primary" },
8805
8746
  align: "center"
8806
8747
  },
8807
- render: (props) => /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(Icon, { ...props })
8748
+ render: (props) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(Icon, { ...props })
8808
8749
  },
8809
8750
  // ==================
8810
8751
  // LAYOUT
@@ -8835,7 +8776,7 @@ var config = {
8835
8776
  contentMaxWidth: "1400px",
8836
8777
  visibility: { mobile: true, desktop: true }
8837
8778
  },
8838
- render: (props) => /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(Section, { ...props })
8779
+ render: (props) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(Section, { ...props })
8839
8780
  },
8840
8781
  Container: {
8841
8782
  fields: {
@@ -8888,7 +8829,7 @@ var config = {
8888
8829
  paddingY: "none",
8889
8830
  centered: true
8890
8831
  },
8891
- render: (props) => /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(Container, { ...props })
8832
+ render: (props) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(Container, { ...props })
8892
8833
  },
8893
8834
  Columns: {
8894
8835
  fields: {
@@ -8933,7 +8874,7 @@ var config = {
8933
8874
  verticalAlign: "top",
8934
8875
  stackOnMobile: true
8935
8876
  },
8936
- render: (props) => /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(Columns, { ...props })
8877
+ render: (props) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(Columns, { ...props })
8937
8878
  },
8938
8879
  Card: {
8939
8880
  fields: {
@@ -8990,7 +8931,7 @@ var config = {
8990
8931
  shadow: "sm",
8991
8932
  padding: "md"
8992
8933
  },
8993
- render: (props) => /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(Card, { ...props })
8934
+ render: (props) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(Card, { ...props })
8994
8935
  },
8995
8936
  Divider: {
8996
8937
  fields: {
@@ -9046,7 +8987,7 @@ var config = {
9046
8987
  align: "center",
9047
8988
  spacing: "md"
9048
8989
  },
9049
- render: (props) => /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(Divider, { ...props })
8990
+ render: (props) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(Divider, { ...props })
9050
8991
  },
9051
8992
  Spacer: {
9052
8993
  fields: {
@@ -9066,7 +9007,7 @@ var config = {
9066
9007
  defaultProps: {
9067
9008
  size: "md"
9068
9009
  },
9069
- render: (props) => /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(Spacer, { ...props })
9010
+ render: (props) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(Spacer, { ...props })
9070
9011
  },
9071
9012
  // ==================
9072
9013
  // LEGACY COMPONENTS
@@ -9119,7 +9060,7 @@ var config = {
9119
9060
  gradientColor1: { useTheme: true, themeKey: "primary" },
9120
9061
  gradientColor2: { useTheme: true, themeKey: "secondary" }
9121
9062
  },
9122
- render: (props) => /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(TextBlock, { ...props })
9063
+ render: (props) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(TextBlock, { ...props })
9123
9064
  },
9124
9065
  CustomImage: {
9125
9066
  fields: {
@@ -9146,7 +9087,7 @@ var config = {
9146
9087
  alignment: "center",
9147
9088
  fitContent: false
9148
9089
  },
9149
- render: (props) => /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(CustomImage, { ...props })
9090
+ render: (props) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(CustomImage, { ...props })
9150
9091
  },
9151
9092
  FeaturesList: {
9152
9093
  fields: {
@@ -9187,7 +9128,7 @@ var config = {
9187
9128
  size: "medium",
9188
9129
  iconColor: { color: "#3B82F6", opacity: 100 }
9189
9130
  },
9190
- render: (props) => /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(FeaturesList, { ...props })
9131
+ render: (props) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(FeaturesList, { ...props })
9191
9132
  },
9192
9133
  FeatureGrid: {
9193
9134
  fields: {
@@ -9243,7 +9184,7 @@ var config = {
9243
9184
  iconColor: { color: "#3B82F6", opacity: 100 },
9244
9185
  textColor: { color: "#000000", opacity: 100 }
9245
9186
  },
9246
- render: (props) => /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(FeatureGrid, { ...props })
9187
+ render: (props) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(FeatureGrid, { ...props })
9247
9188
  },
9248
9189
  Footer: {
9249
9190
  fields: {
@@ -9260,7 +9201,7 @@ var config = {
9260
9201
  backgroundColor: { color: "#111827", opacity: 100 },
9261
9202
  textColor: { color: "#FFFFFF", opacity: 100 }
9262
9203
  },
9263
- render: (props) => /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(Footer, { ...props })
9204
+ render: (props) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(Footer, { ...props })
9264
9205
  },
9265
9206
  Topbar: {
9266
9207
  fields: {
@@ -9295,7 +9236,7 @@ var config = {
9295
9236
  textColor: { color: "#000000", opacity: 100 },
9296
9237
  maxWidth: "1400px"
9297
9238
  },
9298
- render: (props) => /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(Topbar, { ...props })
9239
+ render: (props) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(Topbar, { ...props })
9299
9240
  },
9300
9241
  Popup: {
9301
9242
  fields: {
@@ -9343,7 +9284,7 @@ var config = {
9343
9284
  width: "medium",
9344
9285
  textLink: false
9345
9286
  },
9346
- render: (props) => /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(Popup, { ...props })
9287
+ render: (props) => /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(Popup, { ...props })
9347
9288
  }
9348
9289
  }
9349
9290
  };