@saas-ui/react 3.0.0-alpha.4 → 3.0.0-alpha.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/chunk-2EUACKRH.js +26 -0
  3. package/dist/chunk-3Z2C27LI.js +51 -0
  4. package/dist/chunk-4TR3AOMG.js +33 -0
  5. package/dist/chunk-6LOMIKR5.js +69 -0
  6. package/dist/chunk-6ZNR6N2K.js +45 -0
  7. package/dist/chunk-7C3IZBNJ.js +38 -0
  8. package/dist/chunk-BCNPBZZK.js +45 -0
  9. package/dist/{chunk-KHRLZUV4.js → chunk-BFA5FCA2.js} +16 -1
  10. package/dist/chunk-CTOVNZVS.js +1 -0
  11. package/dist/chunk-DPMEXCSG.js +137 -0
  12. package/dist/chunk-F3CVOMG5.js +160 -0
  13. package/dist/chunk-FJFNGSPL.js +23 -0
  14. package/dist/chunk-GEPWRHHH.js +65 -0
  15. package/dist/chunk-HELHPHIQ.js +35 -0
  16. package/dist/chunk-I2RXEKTB.js +38 -0
  17. package/dist/chunk-L356FPLY.js +20 -0
  18. package/dist/chunk-LIYUBUOP.js +119 -0
  19. package/dist/chunk-M7FOBCOV.js +184 -0
  20. package/dist/chunk-NSD5HRIP.js +46 -0
  21. package/dist/chunk-QMG6HP7Z.js +87 -0
  22. package/dist/chunk-QSNSWCTM.js +32 -0
  23. package/dist/chunk-S3CQW7GD.js +100 -0
  24. package/dist/chunk-SA3OGTOO.js +23 -0
  25. package/dist/chunk-UCQ3LZIE.js +43 -0
  26. package/dist/chunk-ULAJ3JEO.js +32 -0
  27. package/dist/chunk-VF3BV2BY.js +87 -0
  28. package/dist/chunk-WYLMBMAH.js +22 -0
  29. package/dist/chunk-YWJZWB6I.js +1892 -0
  30. package/dist/chunk-ZWSZQZ5G.js +73 -0
  31. package/dist/components/app-shell/index.js +3 -40
  32. package/dist/components/avatar/index.cjs +69 -0
  33. package/dist/components/avatar/index.d.cts +18 -0
  34. package/dist/components/avatar/index.d.ts +18 -0
  35. package/dist/components/avatar/index.js +10 -0
  36. package/dist/components/breadcrumbs/index.js +3 -32
  37. package/dist/components/button/index.js +3 -40
  38. package/dist/components/checkbox/index.js +3 -15
  39. package/dist/components/command/index.js +3 -28
  40. package/dist/components/dialog/index.js +5 -67
  41. package/dist/components/drawer/index.d.cts +2 -2
  42. package/dist/components/drawer/index.d.ts +2 -2
  43. package/dist/components/drawer/index.js +5 -59
  44. package/dist/components/empty-state/index.js +3 -18
  45. package/dist/components/grid-list/index.js +3 -40
  46. package/dist/components/icon-badge/index.js +3 -33
  47. package/dist/components/link/index.js +2 -14
  48. package/dist/components/loading-overlay/index.js +5 -1885
  49. package/dist/components/menu/index.cjs +263 -0
  50. package/dist/components/menu/index.d.cts +30 -0
  51. package/dist/components/menu/index.d.ts +30 -0
  52. package/dist/components/menu/index.js +9 -0
  53. package/dist/components/navbar/index.d.cts +4 -4
  54. package/dist/components/navbar/index.d.ts +4 -4
  55. package/dist/components/navbar/index.js +3 -45
  56. package/dist/components/number-input/index.js +3 -26
  57. package/dist/components/password-input/index.js +4 -225
  58. package/dist/components/persona/index.js +6 -178
  59. package/dist/components/pin-input/index.js +3 -21
  60. package/dist/components/radio/index.js +4 -16
  61. package/dist/components/search-input/index.js +4 -114
  62. package/dist/components/segmented-control/index.cjs +2 -0
  63. package/dist/components/segmented-control/index.d.cts +2 -0
  64. package/dist/components/segmented-control/index.d.ts +2 -0
  65. package/dist/components/segmented-control/index.js +2 -0
  66. package/dist/components/select/index.js +4 -94
  67. package/dist/components/sidebar/index.d.cts +11 -11
  68. package/dist/components/sidebar/index.d.ts +11 -11
  69. package/dist/components/sidebar/index.js +7 -129
  70. package/dist/components/steps/index.js +5 -64
  71. package/dist/components/switch/index.js +3 -18
  72. package/dist/components/toaster/index.cjs +54 -0
  73. package/dist/components/toaster/index.d.cts +10 -0
  74. package/dist/components/toaster/index.d.ts +10 -0
  75. package/dist/components/toaster/index.js +10 -0
  76. package/dist/components/tooltip/index.cjs +57 -0
  77. package/dist/components/tooltip/index.d.cts +14 -0
  78. package/dist/components/tooltip/index.d.ts +14 -0
  79. package/dist/components/tooltip/index.js +8 -0
  80. package/dist/index.cjs +3707 -8
  81. package/dist/index.d.cts +37 -2
  82. package/dist/index.d.ts +37 -2
  83. package/dist/index.js +285 -4
  84. package/package.json +4 -4
package/dist/index.cjs CHANGED
@@ -17,7 +17,6 @@ var __copyProps = (to, from, except, desc) => {
17
17
  }
18
18
  return to;
19
19
  };
20
- var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
21
20
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
21
  // If the importer is in node compatibility mode or this is not an ESM
23
22
  // file that has been converted to a CommonJS file using a Babel-
@@ -31,16 +30,54 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
31
30
  // src/index.ts
32
31
  var src_exports = {};
33
32
  __export(src_exports, {
33
+ AppShell: () => AppShell,
34
+ Avatar: () => Avatar,
35
+ AvatarGroup: () => AvatarGroup,
36
+ Breadcrumb: () => namespace_exports,
37
+ Button: () => Button,
38
+ Checkbox: () => Checkbox,
39
+ CloseButton: () => CloseButton,
40
+ Command: () => Command,
41
+ Dialog: () => namespace_exports2,
42
+ Drawer: () => namespace_exports3,
43
+ EmptyState: () => EmptyState,
44
+ GridList: () => grid_list_exports,
45
+ IconBadge: () => IconBadge,
46
+ InputGroup: () => InputGroup,
47
+ Link: () => Link,
48
+ LoadingOverlay: () => loading_overlay_exports,
49
+ Menu: () => menu_exports,
50
+ Navbar: () => navbar_exports,
51
+ NumberInput: () => NumberInput,
52
+ PasswordInput: () => PasswordInput,
53
+ Persona: () => Persona,
54
+ PersonaAvatar: () => PersonaAvatar2,
55
+ PinInput: () => PinInput,
56
+ Radio: () => Radio,
57
+ RadioGroup: () => RadioGroup,
58
+ SearchInput: () => SearchInput,
59
+ Select: () => namespace_exports4,
60
+ Sidebar: () => sidebar_exports,
61
+ Spinner: () => Spinner2,
62
+ Steps: () => steps_exports,
34
63
  SuiContext: () => SuiContext,
35
64
  SuiProvider: () => SuiProvider,
36
- createSystem: () => import_react100.createSystem,
65
+ Switch: () => Switch,
66
+ Toaster: () => Toaster,
67
+ Tooltip: () => Tooltip,
68
+ createSystem: () => import_react166.createSystem,
37
69
  defaultConfig: () => defaultConfig,
70
+ defaultPresenceOptions: () => defaultPresenceOptions,
38
71
  defaultSystem: () => defaultSystem,
72
+ toast: () => toast,
39
73
  useLink: () => useLink,
74
+ useLoadingOverlayStyles: () => useLoadingOverlayStyles,
75
+ useSidebar: () => import_sidebar2.useSidebar,
76
+ useSidebarItemStyles: () => useSidebarItemStyles,
77
+ useSidebarStyles: () => useSidebarStyles,
40
78
  useSui: () => useSui
41
79
  });
42
80
  module.exports = __toCommonJS(src_exports);
43
- __reExport(src_exports, require("@saas-ui/core"), module.exports);
44
81
 
45
82
  // src/preset.ts
46
83
  var import_react97 = require("@chakra-ui/react");
@@ -7931,6 +7968,149 @@ var colors = import_react82.defineTokens.colors({
7931
7968
  800: { value: "#6d0e34" },
7932
7969
  900: { value: "#45061f" },
7933
7970
  950: { value: "#2c0514" }
7971
+ },
7972
+ slate: {
7973
+ 50: { value: "#f8fafc" },
7974
+ 100: { value: "#f1f5f9" },
7975
+ 200: { value: "#e2e8f0" },
7976
+ 300: { value: "#cbd5e1" },
7977
+ 400: { value: "#94a3b8" },
7978
+ 500: { value: "#64748b" },
7979
+ 600: { value: "#475569" },
7980
+ 700: { value: "#334155" },
7981
+ 800: { value: "#1e293b" },
7982
+ 900: { value: "#0f172a" },
7983
+ 950: { value: "#020617" }
7984
+ },
7985
+ zinc: {
7986
+ 50: { value: "#fafafa" },
7987
+ 100: { value: "#f4f4f5" },
7988
+ 200: { value: "#e4e4e7" },
7989
+ 300: { value: "#d4d4d8" },
7990
+ 400: { value: "#a1a1aa" },
7991
+ 500: { value: "#71717a" },
7992
+ 600: { value: "#52525b" },
7993
+ 700: { value: "#3f3f46" },
7994
+ 800: { value: "#27272a" },
7995
+ 900: { value: "#18181b" },
7996
+ 950: { value: "#09090b" }
7997
+ },
7998
+ neutral: {
7999
+ 50: { value: "#fafafa" },
8000
+ 100: { value: "#f5f5f5" },
8001
+ 200: { value: "#e5e5e5" },
8002
+ 300: { value: "#d4d4d4" },
8003
+ 400: { value: "#a3a3a3" },
8004
+ 500: { value: "#737373" },
8005
+ 600: { value: "#525252" },
8006
+ 700: { value: "#404040" },
8007
+ 800: { value: "#262626" },
8008
+ 900: { value: "#171717" },
8009
+ 950: { value: "#0a0a0a" }
8010
+ },
8011
+ stone: {
8012
+ 50: { value: "#fafaf9" },
8013
+ 100: { value: "#f5f5f4" },
8014
+ 200: { value: "#e7e5e4" },
8015
+ 300: { value: "#d6d3d1" },
8016
+ 400: { value: "#a8a29e" },
8017
+ 500: { value: "#78716c" },
8018
+ 600: { value: "#57534e" },
8019
+ 700: { value: "#44403c" },
8020
+ 800: { value: "#292524" },
8021
+ 900: { value: "#1c1917" },
8022
+ 950: { value: "#0c0a09" }
8023
+ },
8024
+ amber: {
8025
+ 50: { value: "#fffbeb" },
8026
+ 100: { value: "#fef3c7" },
8027
+ 200: { value: "#fde68a" },
8028
+ 300: { value: "#fcd34d" },
8029
+ 400: { value: "#fbbf24" },
8030
+ 500: { value: "#f59e0b" },
8031
+ 600: { value: "#d97706" },
8032
+ 700: { value: "#b45309" },
8033
+ 800: { value: "#92400e" },
8034
+ 900: { value: "#78350f" },
8035
+ 950: { value: "#451a03" }
8036
+ },
8037
+ lime: {
8038
+ 50: { value: "#f7fee7" },
8039
+ 100: { value: "#ecfccb" },
8040
+ 200: { value: "#d9f99d" },
8041
+ 300: { value: "#bef264" },
8042
+ 400: { value: "#a3e635" },
8043
+ 500: { value: "#84cc16" },
8044
+ 600: { value: "#65a30d" },
8045
+ 700: { value: "#4d7c0f" },
8046
+ 800: { value: "#3f6212" },
8047
+ 900: { value: "#365314" },
8048
+ 950: { value: "#1a2e05" }
8049
+ },
8050
+ emerald: {
8051
+ 50: { value: "#ecfdf5" },
8052
+ 100: { value: "#d1fae5" },
8053
+ 200: { value: "#a7f3d0" },
8054
+ 300: { value: "#6ee7b7" },
8055
+ 400: { value: "#34d399" },
8056
+ 500: { value: "#10b981" },
8057
+ 600: { value: "#059669" },
8058
+ 700: { value: "#047857" },
8059
+ 800: { value: "#065f46" },
8060
+ 900: { value: "#064e3b" },
8061
+ 950: { value: "#022c22" }
8062
+ },
8063
+ sky: {
8064
+ 50: { value: "#f0f9ff" },
8065
+ 100: { value: "#e0f2fe" },
8066
+ 200: { value: "#bae6fd" },
8067
+ 300: { value: "#7dd3fc" },
8068
+ 400: { value: "#38bdf8" },
8069
+ 500: { value: "#0ea5e9" },
8070
+ 600: { value: "#0284c7" },
8071
+ 700: { value: "#0369a1" },
8072
+ 800: { value: "#075985" },
8073
+ 900: { value: "#0c4a6e" },
8074
+ 950: { value: "#082f49" }
8075
+ },
8076
+ violet: {
8077
+ 50: { value: "#f5f3ff" },
8078
+ 100: { value: "#ede9fe" },
8079
+ 200: { value: "#ddd6fe" },
8080
+ 300: { value: "#c4b5fd" },
8081
+ 400: { value: "#a78bfa" },
8082
+ 500: { value: "#8b5cf6" },
8083
+ 600: { value: "#7c3aed" },
8084
+ 700: { value: "#6d28d9" },
8085
+ 800: { value: "#5b21b6" },
8086
+ 900: { value: "#4c1d95" },
8087
+ 950: { value: "#2e1065" }
8088
+ },
8089
+ fuchsia: {
8090
+ 50: { value: "#fdf4ff" },
8091
+ 100: { value: "#fae8ff" },
8092
+ 200: { value: "#f5d0fe" },
8093
+ 300: { value: "#f0abfc" },
8094
+ 400: { value: "#e879f9" },
8095
+ 500: { value: "#d946ef" },
8096
+ 600: { value: "#c026d3" },
8097
+ 700: { value: "#a21caf" },
8098
+ 800: { value: "#86198f" },
8099
+ 900: { value: "#701a75" },
8100
+ 950: { value: "#4a044e" }
8101
+ },
8102
+ rose: {
8103
+ 50: { value: "#fff1f2" },
8104
+ 100: { value: "#ffe4e6" },
8105
+ 200: { value: "#fecdd3" },
8106
+ 300: { value: "#fda4af" },
8107
+ 400: { value: "#fb7185" },
8108
+ 500: { value: "#f43f5e" },
8109
+ 600: { value: "#e11d48" },
8110
+ 700: { value: "#be123c" },
8111
+ 800: { value: "#9f1239" },
8112
+ 900: { value: "#881337" },
8113
+ 950: { value: "#4c0519" }
7934
8114
  }
7935
8115
  });
7936
8116
 
@@ -8409,15 +8589,15 @@ var defaultConfig = (0, import_react97.mergeConfigs)(import_react97.defaultBaseC
8409
8589
  var defaultSystem = (0, import_react97.createSystem)(defaultConfig);
8410
8590
 
8411
8591
  // src/index.ts
8412
- var import_react100 = require("@chakra-ui/react");
8592
+ var import_react166 = require("@chakra-ui/react");
8413
8593
 
8414
8594
  // src/provider/sui-provider.tsx
8415
8595
  var React = __toESM(require("react"), 1);
8416
8596
  var import_react98 = require("@chakra-ui/react");
8417
8597
  var import_jsx_runtime = require("react/jsx-runtime");
8418
8598
  var SuiContext = React.createContext({});
8419
- function SuiProvider(props) {
8420
- const { linkComponent, onError, children, ...rest } = props;
8599
+ function SuiProvider(props2) {
8600
+ const { linkComponent, onError, children, ...rest } = props2;
8421
8601
  const context = React.useMemo(
8422
8602
  () => ({
8423
8603
  linkComponent
@@ -8437,14 +8617,3533 @@ function useLink() {
8437
8617
  }
8438
8618
  return import_react99.chakra.a;
8439
8619
  }
8620
+
8621
+ // src/components/app-shell/app-shell.tsx
8622
+ var import_react100 = require("react");
8623
+ var import_react101 = require("@chakra-ui/react");
8624
+ var import_jsx_runtime2 = require("react/jsx-runtime");
8625
+ var {
8626
+ withProvider,
8627
+ withContext,
8628
+ useStyles: useAppShellStyles
8629
+ } = (0, import_react101.createSlotRecipeContext)({
8630
+ key: "suiAppShell"
8631
+ });
8632
+ var AppShellRoot = withProvider(
8633
+ "div",
8634
+ "root",
8635
+ { forwardAsChild: true }
8636
+ );
8637
+ var AppShellContent = withContext("div", "content", { forwardAsChild: true });
8638
+ var AppShellMain = withContext(
8639
+ "div",
8640
+ "main",
8641
+ { forwardAsChild: true }
8642
+ );
8643
+ var AppShell = (0, import_react100.forwardRef)(
8644
+ (props2, ref2) => {
8645
+ const { header, sidebar, aside, footer, children, ...rootProps } = props2;
8646
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(AppShellRoot, { ref: ref2, ...rootProps, children: [
8647
+ header,
8648
+ /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(AppShellContent, { children: [
8649
+ sidebar,
8650
+ /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(AppShellMain, { children }),
8651
+ aside
8652
+ ] }),
8653
+ footer
8654
+ ] });
8655
+ }
8656
+ );
8657
+ AppShell.displayName = "AppShell";
8658
+
8659
+ // src/components/avatar/avatar.tsx
8660
+ var import_react102 = require("react");
8661
+ var import_react103 = require("@chakra-ui/react");
8662
+ var import_jsx_runtime3 = require("react/jsx-runtime");
8663
+ var Avatar = (0, import_react102.forwardRef)(
8664
+ function Avatar2(props2, ref2) {
8665
+ const { name, src, srcSet, loading, icon, fallback: fallback2, children, ...rest } = props2;
8666
+ return /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(import_react103.Avatar.Root, { ref: ref2, ...rest, children: [
8667
+ /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(AvatarFallback, { name, icon, children: fallback2 }),
8668
+ /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_react103.Avatar.Image, { src, srcSet, loading }),
8669
+ children
8670
+ ] });
8671
+ }
8672
+ );
8673
+ var AvatarFallback = (0, import_react102.forwardRef)(
8674
+ function AvatarFallback2(props2, ref2) {
8675
+ const { name, icon, children, ...rest } = props2;
8676
+ return /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(import_react103.Avatar.Fallback, { ref: ref2, ...rest, children: [
8677
+ children,
8678
+ name != null && children == null && /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_jsx_runtime3.Fragment, { children: getInitials(name) }),
8679
+ name == null && children == null && /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_react103.Avatar.Icon, { asChild: !!icon, children: icon })
8680
+ ] });
8681
+ }
8682
+ );
8683
+ function getInitials(name) {
8684
+ const names = name.trim().split(" ");
8685
+ const firstName = names[0] != null ? names[0] : "";
8686
+ const lastName = names.length > 1 ? names[names.length - 1] : "";
8687
+ return firstName && lastName ? `${firstName.charAt(0)}${lastName.charAt(0)}` : firstName.charAt(0);
8688
+ }
8689
+ var AvatarGroup = (0, import_react102.forwardRef)(
8690
+ function AvatarGroup2(props2, ref2) {
8691
+ const { size, variant, borderless, ...rest } = props2;
8692
+ return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_react103.Avatar.PropsProvider, { value: { size, variant, borderless }, children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_react103.Group, { gap: "0", spaceX: "-3", ref: ref2, ...rest }) });
8693
+ }
8694
+ );
8695
+
8696
+ // src/components/breadcrumbs/namespace.ts
8697
+ var namespace_exports = {};
8698
+ __export(namespace_exports, {
8699
+ CurrentLink: () => BreadcrumbCurrentLink,
8700
+ Ellipsis: () => BreadcrumbEllipsis,
8701
+ Link: () => BreadcrumbLink,
8702
+ Root: () => BreadcrumbRoot
8703
+ });
8704
+
8705
+ // src/components/breadcrumbs/breadcrumb.tsx
8706
+ var import_react104 = require("react");
8707
+ var import_react105 = require("@chakra-ui/react");
8708
+ var import_jsx_runtime4 = require("react/jsx-runtime");
8709
+ var BreadcrumbRoot = (0, import_react104.forwardRef)(
8710
+ function BreadcrumbRoot2(props2, ref2) {
8711
+ const { separator = "/", separatorGap, children, ...rest } = props2;
8712
+ const validChildren = import_react104.Children.toArray(children).filter(import_react104.isValidElement);
8713
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_react105.Breadcrumb.Root, { ref: ref2, ...rest, children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_react105.Breadcrumb.List, { gap: separatorGap, children: validChildren.map((child, index) => {
8714
+ const last = index === validChildren.length - 1;
8715
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(import_react104.Fragment, { children: [
8716
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_react105.Breadcrumb.Item, { children: child }),
8717
+ !last && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_react105.Breadcrumb.Separator, { children: separator })
8718
+ ] }, index);
8719
+ }) }) });
8720
+ }
8721
+ );
8722
+ var BreadcrumbLink = import_react105.Breadcrumb.Link;
8723
+ var BreadcrumbCurrentLink = import_react105.Breadcrumb.CurrentLink;
8724
+ var BreadcrumbEllipsis = import_react105.Breadcrumb.Ellipsis;
8725
+
8726
+ // src/components/button/button.tsx
8727
+ var import_react106 = require("react");
8728
+ var import_react107 = require("@chakra-ui/react");
8729
+ var import_jsx_runtime5 = require("react/jsx-runtime");
8730
+ var Button = (0, import_react106.forwardRef)(
8731
+ function Button2(props2, ref2) {
8732
+ const {
8733
+ loading,
8734
+ disabled,
8735
+ loadingText,
8736
+ children,
8737
+ variant = "glass",
8738
+ colorPalette = variant === "glass" ? "accent" : "gray",
8739
+ ...rest
8740
+ } = props2;
8741
+ return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
8742
+ import_react107.Button,
8743
+ {
8744
+ colorPalette,
8745
+ disabled: loading || disabled,
8746
+ variant,
8747
+ ref: ref2,
8748
+ ...rest,
8749
+ children: loading && !loadingText ? /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(import_jsx_runtime5.Fragment, { children: [
8750
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_react107.AbsoluteCenter, { display: "inline-flex", children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_react107.Spinner, { size: "inherit", color: "inherit" }) }),
8751
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_react107.Span, { opacity: 0, children })
8752
+ ] }) : loading && loadingText ? /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(import_jsx_runtime5.Fragment, { children: [
8753
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_react107.Spinner, { size: "inherit", color: "inherit" }),
8754
+ loadingText
8755
+ ] }) : children
8756
+ }
8757
+ );
8758
+ }
8759
+ );
8760
+
8761
+ // src/components/checkbox/checkbox.tsx
8762
+ var import_react108 = require("react");
8763
+ var import_react109 = require("@chakra-ui/react");
8764
+ var import_jsx_runtime6 = require("react/jsx-runtime");
8765
+ var Checkbox = (0, import_react108.forwardRef)(
8766
+ function Checkbox2(props2, ref2) {
8767
+ const { icon, children, inputProps, rootRef, ...rest } = props2;
8768
+ return /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(import_react109.Checkbox.Root, { ref: rootRef, ...rest, children: [
8769
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_react109.Checkbox.HiddenInput, { ref: ref2, ...inputProps }),
8770
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_react109.Checkbox.Control, { children: icon || /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_react109.Checkbox.Indicator, {}) }),
8771
+ children != null && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_react109.Checkbox.Label, { children })
8772
+ ] });
8773
+ }
8774
+ );
8775
+
8776
+ // src/components/close-button/close-button.tsx
8777
+ var import_react111 = require("react");
8778
+ var import_react112 = require("@chakra-ui/react");
8779
+
8780
+ // src/components/icons/create-icon.tsx
8781
+ var import_react110 = require("@chakra-ui/react");
8782
+ var createIcon = (props2) => {
8783
+ return (0, import_react110.createIcon)({
8784
+ viewBox: "0 0 24 24",
8785
+ defaultProps: {
8786
+ fill: "none",
8787
+ stroke: "currentColor",
8788
+ strokeWidth: "2",
8789
+ strokeLinecap: "round",
8790
+ strokeLinejoin: "round"
8791
+ },
8792
+ ...props2
8793
+ });
8794
+ };
8795
+
8796
+ // src/components/icons/icons.tsx
8797
+ var import_jsx_runtime7 = require("react/jsx-runtime");
8798
+ var ChevronUpIcon = createIcon({
8799
+ displayName: "ChevronUpIcon",
8800
+ path: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("polyline", { points: "18 15 12 9 6 15" })
8801
+ });
8802
+ var ChevronDownIcon = createIcon({
8803
+ displayName: "ChevronDownIcon",
8804
+ path: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("polyline", { points: "6 9 12 15 18 9" })
8805
+ });
8806
+ var ChevronLeftIcon = createIcon({
8807
+ displayName: "ChevronLeftIcon",
8808
+ path: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("polyline", { points: "15 18 9 12 15 6" })
8809
+ });
8810
+ var ChevronRightIcon = createIcon({
8811
+ displayName: "ChevronRightIcon",
8812
+ path: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("polyline", { points: "9 18 15 12 9 6" })
8813
+ });
8814
+ var HamburgerIcon = createIcon({
8815
+ displayName: "ChevronDownIcon",
8816
+ path: /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("g", { fill: "none", children: [
8817
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("line", { x1: "3", y1: "12", x2: "21", y2: "12" }),
8818
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("line", { x1: "3", y1: "6", x2: "21", y2: "6" }),
8819
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("line", { x1: "3", y1: "18", x2: "21", y2: "18" })
8820
+ ] })
8821
+ });
8822
+ var CloseIcon = createIcon({
8823
+ displayName: "CloseIcon",
8824
+ path: /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("g", { children: [
8825
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("line", { x1: "18", y1: "6", x2: "6", y2: "18" }),
8826
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("line", { x1: "6", y1: "6", x2: "18", y2: "18" })
8827
+ ] })
8828
+ });
8829
+ var FilterIcon = createIcon({
8830
+ displayName: "FilterIcon",
8831
+ path: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("polygon", { points: "22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3" })
8832
+ });
8833
+ var CalendarIcon = createIcon({
8834
+ displayName: "CalendarIcon",
8835
+ path: /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("g", { children: [
8836
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("rect", { x: "3", y: "4", width: "18", height: "18", rx: "2", ry: "2" }),
8837
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("line", { x1: "16", y1: "2", x2: "16", y2: "6" }),
8838
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("line", { x1: "8", y1: "2", x2: "8", y2: "6" }),
8839
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("line", { x1: "3", y1: "10", x2: "21", y2: "10" })
8840
+ ] })
8841
+ });
8842
+ var PlusIcon = createIcon({
8843
+ displayName: "PlusIcon",
8844
+ path: /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("g", { children: [
8845
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("line", { x1: "12", y1: "5", x2: "12", y2: "19" }),
8846
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("line", { x1: "5", y1: "12", x2: "19", y2: "12" })
8847
+ ] })
8848
+ });
8849
+ var MinusIcon = createIcon({
8850
+ displayName: "MinusIcon",
8851
+ path: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("g", { children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("line", { x1: "5", y1: "12", x2: "19", y2: "12" }) })
8852
+ });
8853
+ var ViewOffIcon = createIcon({
8854
+ displayName: "ViewOffIcon",
8855
+ path: /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("g", { children: [
8856
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("path", { d: "M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24" }),
8857
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("line", { x1: "1", y1: "1", x2: "23", y2: "23" })
8858
+ ] })
8859
+ });
8860
+ var ViewIcon = createIcon({
8861
+ displayName: "ViewOffIcon",
8862
+ path: /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("g", { children: [
8863
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("path", { d: "M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z" }),
8864
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("circle", { cx: "12", cy: "12", r: "3" })
8865
+ ] })
8866
+ });
8867
+ var SearchIcon = createIcon({
8868
+ displayName: "SearchIcon",
8869
+ path: /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("g", { children: [
8870
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("circle", { cx: "11", cy: "11", r: "8" }),
8871
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("line", { x1: "21", y1: "21", x2: "16.65", y2: "16.65" })
8872
+ ] })
8873
+ });
8874
+ var CheckIcon = createIcon({
8875
+ displayName: "CheckIcon",
8876
+ path: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("g", { children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("polyline", { points: "20 6 9 17 4 12" }) })
8877
+ });
8878
+
8879
+ // src/components/close-button/close-button.tsx
8880
+ var import_jsx_runtime8 = require("react/jsx-runtime");
8881
+ var CloseButton = (0, import_react111.forwardRef)(
8882
+ function CloseButton2(props2, ref2) {
8883
+ var _a7;
8884
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_react112.IconButton, { variant: "ghost", "aria-label": "Close", ref: ref2, ...props2, children: (_a7 = props2.children) != null ? _a7 : /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(CloseIcon, {}) });
8885
+ }
8886
+ );
8887
+
8888
+ // src/components/command/command.tsx
8889
+ var import_react113 = require("@chakra-ui/react");
8890
+ var import_react114 = require("@chakra-ui/react");
8891
+ var import_jsx_runtime9 = require("react/jsx-runtime");
8892
+ var { withContext: withContext2 } = (0, import_react114.createRecipeContext)({
8893
+ key: "suiCommand"
8894
+ });
8895
+ var Key = ({ children }) => {
8896
+ if (typeof children !== "string") {
8897
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_jsx_runtime9.Fragment, { children });
8898
+ }
8899
+ if (["then", "or", "+"].includes(children)) {
8900
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("span", { children });
8901
+ }
8902
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_react113.Kbd, { children });
8903
+ };
8904
+ var Command = (props2) => {
8905
+ const { children, ...rest } = props2;
8906
+ if (typeof children !== "string") {
8907
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_jsx_runtime9.Fragment, { children });
8908
+ }
8909
+ const keys = children.split(/\s|\+/);
8910
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(CommandRoot, { ...rest, children: keys.map((key) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Key, { children: key }, key)) });
8911
+ };
8912
+ var CommandRoot = withContext2("span");
8913
+
8914
+ // src/components/dialog/namespace.ts
8915
+ var namespace_exports2 = {};
8916
+ __export(namespace_exports2, {
8917
+ ActionTrigger: () => DialogActionTrigger,
8918
+ Backdrop: () => DialogBackdrop,
8919
+ Body: () => DialogBody,
8920
+ CloseTrigger: () => DialogCloseTrigger,
8921
+ Content: () => DialogContent,
8922
+ Context: () => DialogContext,
8923
+ Description: () => DialogDescription,
8924
+ Footer: () => DialogFooter,
8925
+ Header: () => DialogHeader,
8926
+ Root: () => DialogRoot,
8927
+ Title: () => DialogTitle,
8928
+ Trigger: () => DialogTrigger
8929
+ });
8930
+
8931
+ // src/components/dialog/dialog.tsx
8932
+ var import_react121 = require("react");
8933
+ var import_react122 = require("@chakra-ui/react");
8934
+
8935
+ // ../../node_modules/proxy-compare/dist/index.js
8936
+ var TRACK_MEMO_SYMBOL = Symbol();
8937
+ var GET_ORIGINAL_SYMBOL = Symbol();
8938
+ var AFFECTED_PROPERTY = "a";
8939
+ var IS_TARGET_COPIED_PROPERTY = "f";
8940
+ var PROXY_PROPERTY = "p";
8941
+ var PROXY_CACHE_PROPERTY = "c";
8942
+ var TARGET_CACHE_PROPERTY = "t";
8943
+ var NEXT_OBJECT_PROPERTY = "n";
8944
+ var CHANGED_PROPERTY = "g";
8945
+ var HAS_KEY_PROPERTY = "h";
8946
+ var ALL_OWN_KEYS_PROPERTY = "w";
8947
+ var HAS_OWN_KEY_PROPERTY = "o";
8948
+ var KEYS_PROPERTY = "k";
8949
+ var newProxy = (target, handler) => new Proxy(target, handler);
8950
+ var getProto = Object.getPrototypeOf;
8951
+ var objectsToTrack = /* @__PURE__ */ new WeakMap();
8952
+ var isObjectToTrack = (obj) => obj && (objectsToTrack.has(obj) ? objectsToTrack.get(obj) : getProto(obj) === Object.prototype || getProto(obj) === Array.prototype);
8953
+ var isObject = (x) => typeof x === "object" && x !== null;
8954
+ var needsToCopyTargetObject = (obj) => Object.values(Object.getOwnPropertyDescriptors(obj)).some((descriptor) => !descriptor.configurable && !descriptor.writable);
8955
+ var copyTargetObject = (obj) => {
8956
+ if (Array.isArray(obj)) {
8957
+ return Array.from(obj);
8958
+ }
8959
+ const descriptors = Object.getOwnPropertyDescriptors(obj);
8960
+ Object.values(descriptors).forEach((desc) => {
8961
+ desc.configurable = true;
8962
+ });
8963
+ return Object.create(getProto(obj), descriptors);
8964
+ };
8965
+ var createProxyHandler = (origObj, isTargetCopied) => {
8966
+ const state = {
8967
+ [IS_TARGET_COPIED_PROPERTY]: isTargetCopied
8968
+ };
8969
+ let trackObject = false;
8970
+ const recordUsage = (type, key) => {
8971
+ if (!trackObject) {
8972
+ let used = state[AFFECTED_PROPERTY].get(origObj);
8973
+ if (!used) {
8974
+ used = {};
8975
+ state[AFFECTED_PROPERTY].set(origObj, used);
8976
+ }
8977
+ if (type === ALL_OWN_KEYS_PROPERTY) {
8978
+ used[ALL_OWN_KEYS_PROPERTY] = true;
8979
+ } else {
8980
+ let set2 = used[type];
8981
+ if (!set2) {
8982
+ set2 = /* @__PURE__ */ new Set();
8983
+ used[type] = set2;
8984
+ }
8985
+ set2.add(key);
8986
+ }
8987
+ }
8988
+ };
8989
+ const recordObjectAsUsed = () => {
8990
+ trackObject = true;
8991
+ state[AFFECTED_PROPERTY].delete(origObj);
8992
+ };
8993
+ const handler = {
8994
+ get(target, key) {
8995
+ if (key === GET_ORIGINAL_SYMBOL) {
8996
+ return origObj;
8997
+ }
8998
+ recordUsage(KEYS_PROPERTY, key);
8999
+ return createProxy(Reflect.get(target, key), state[AFFECTED_PROPERTY], state[PROXY_CACHE_PROPERTY], state[TARGET_CACHE_PROPERTY]);
9000
+ },
9001
+ has(target, key) {
9002
+ if (key === TRACK_MEMO_SYMBOL) {
9003
+ recordObjectAsUsed();
9004
+ return true;
9005
+ }
9006
+ recordUsage(HAS_KEY_PROPERTY, key);
9007
+ return Reflect.has(target, key);
9008
+ },
9009
+ getOwnPropertyDescriptor(target, key) {
9010
+ recordUsage(HAS_OWN_KEY_PROPERTY, key);
9011
+ return Reflect.getOwnPropertyDescriptor(target, key);
9012
+ },
9013
+ ownKeys(target) {
9014
+ recordUsage(ALL_OWN_KEYS_PROPERTY);
9015
+ return Reflect.ownKeys(target);
9016
+ }
9017
+ };
9018
+ if (isTargetCopied) {
9019
+ handler.set = handler.deleteProperty = () => false;
9020
+ }
9021
+ return [handler, state];
9022
+ };
9023
+ var getOriginalObject = (obj) => (
9024
+ // unwrap proxy
9025
+ obj[GET_ORIGINAL_SYMBOL] || // otherwise
9026
+ obj
9027
+ );
9028
+ var createProxy = (obj, affected, proxyCache, targetCache2) => {
9029
+ if (!isObjectToTrack(obj))
9030
+ return obj;
9031
+ let targetAndCopied = targetCache2 && targetCache2.get(obj);
9032
+ if (!targetAndCopied) {
9033
+ const target2 = getOriginalObject(obj);
9034
+ if (needsToCopyTargetObject(target2)) {
9035
+ targetAndCopied = [target2, copyTargetObject(target2)];
9036
+ } else {
9037
+ targetAndCopied = [target2];
9038
+ }
9039
+ targetCache2 === null || targetCache2 === void 0 ? void 0 : targetCache2.set(obj, targetAndCopied);
9040
+ }
9041
+ const [target, copiedTarget] = targetAndCopied;
9042
+ let handlerAndState = proxyCache && proxyCache.get(target);
9043
+ if (!handlerAndState || handlerAndState[1][IS_TARGET_COPIED_PROPERTY] !== !!copiedTarget) {
9044
+ handlerAndState = createProxyHandler(target, !!copiedTarget);
9045
+ handlerAndState[1][PROXY_PROPERTY] = newProxy(copiedTarget || target, handlerAndState[0]);
9046
+ if (proxyCache) {
9047
+ proxyCache.set(target, handlerAndState);
9048
+ }
9049
+ }
9050
+ handlerAndState[1][AFFECTED_PROPERTY] = affected;
9051
+ handlerAndState[1][PROXY_CACHE_PROPERTY] = proxyCache;
9052
+ handlerAndState[1][TARGET_CACHE_PROPERTY] = targetCache2;
9053
+ return handlerAndState[1][PROXY_PROPERTY];
9054
+ };
9055
+ var isAllOwnKeysChanged = (prevObj, nextObj) => {
9056
+ const prevKeys = Reflect.ownKeys(prevObj);
9057
+ const nextKeys = Reflect.ownKeys(nextObj);
9058
+ return prevKeys.length !== nextKeys.length || prevKeys.some((k, i) => k !== nextKeys[i]);
9059
+ };
9060
+ var isChanged = (prevObj, nextObj, affected, cache, isEqual2 = Object.is) => {
9061
+ if (isEqual2(prevObj, nextObj)) {
9062
+ return false;
9063
+ }
9064
+ if (!isObject(prevObj) || !isObject(nextObj))
9065
+ return true;
9066
+ const used = affected.get(getOriginalObject(prevObj));
9067
+ if (!used)
9068
+ return true;
9069
+ if (cache) {
9070
+ const hit = cache.get(prevObj);
9071
+ if (hit && hit[NEXT_OBJECT_PROPERTY] === nextObj) {
9072
+ return hit[CHANGED_PROPERTY];
9073
+ }
9074
+ cache.set(prevObj, {
9075
+ [NEXT_OBJECT_PROPERTY]: nextObj,
9076
+ [CHANGED_PROPERTY]: false
9077
+ });
9078
+ }
9079
+ let changed = null;
9080
+ try {
9081
+ for (const key of used[HAS_KEY_PROPERTY] || []) {
9082
+ changed = Reflect.has(prevObj, key) !== Reflect.has(nextObj, key);
9083
+ if (changed)
9084
+ return changed;
9085
+ }
9086
+ if (used[ALL_OWN_KEYS_PROPERTY] === true) {
9087
+ changed = isAllOwnKeysChanged(prevObj, nextObj);
9088
+ if (changed)
9089
+ return changed;
9090
+ } else {
9091
+ for (const key of used[HAS_OWN_KEY_PROPERTY] || []) {
9092
+ const hasPrev = !!Reflect.getOwnPropertyDescriptor(prevObj, key);
9093
+ const hasNext = !!Reflect.getOwnPropertyDescriptor(nextObj, key);
9094
+ changed = hasPrev !== hasNext;
9095
+ if (changed)
9096
+ return changed;
9097
+ }
9098
+ }
9099
+ for (const key of used[KEYS_PROPERTY] || []) {
9100
+ changed = isChanged(prevObj[key], nextObj[key], affected, cache, isEqual2);
9101
+ if (changed)
9102
+ return changed;
9103
+ }
9104
+ if (changed === null)
9105
+ changed = true;
9106
+ return changed;
9107
+ } finally {
9108
+ if (cache) {
9109
+ cache.set(prevObj, {
9110
+ [NEXT_OBJECT_PROPERTY]: nextObj,
9111
+ [CHANGED_PROPERTY]: changed
9112
+ });
9113
+ }
9114
+ }
9115
+ };
9116
+ var getUntracked = (obj) => {
9117
+ if (isObjectToTrack(obj)) {
9118
+ return obj[GET_ORIGINAL_SYMBOL] || null;
9119
+ }
9120
+ return null;
9121
+ };
9122
+ var markToTrack = (obj, mark = true) => {
9123
+ objectsToTrack.set(obj, mark);
9124
+ };
9125
+
9126
+ // ../../node_modules/@zag-js/store/dist/index.mjs
9127
+ function getGlobal() {
9128
+ if (typeof globalThis !== "undefined") return globalThis;
9129
+ if (typeof self !== "undefined") return self;
9130
+ if (typeof window !== "undefined") return window;
9131
+ if (typeof global !== "undefined") return global;
9132
+ }
9133
+ function makeGlobal(key, value) {
9134
+ const g = getGlobal();
9135
+ if (!g) return value();
9136
+ g[key] || (g[key] = value());
9137
+ return g[key];
9138
+ }
9139
+ var isDev = () => process.env.NODE_ENV !== "production";
9140
+ var isObject2 = (x) => typeof x === "object" && x !== null;
9141
+ var proxyStateMap = makeGlobal("__zag__proxyStateMap", () => /* @__PURE__ */ new WeakMap());
9142
+ var refSet = makeGlobal("__zag__refSet", () => /* @__PURE__ */ new WeakSet());
9143
+ var isReactElement = (x) => typeof x === "object" && x !== null && "$$typeof" in x;
9144
+ var isVueElement = (x) => typeof x === "object" && x !== null && "__v_isVNode" in x;
9145
+ var isDOMElement = (x) => typeof x === "object" && x !== null && "nodeType" in x && typeof x.nodeName === "string";
9146
+ var isElement = (x) => isReactElement(x) || isVueElement(x) || isDOMElement(x);
9147
+ var buildProxyFunction = (objectIs = Object.is, newProxy2 = (target, handler) => new Proxy(target, handler), canProxy = (x) => isObject2(x) && !refSet.has(x) && (Array.isArray(x) || !(Symbol.iterator in x)) && !isElement(x) && !(x instanceof WeakMap) && !(x instanceof WeakSet) && !(x instanceof Error) && !(x instanceof Number) && !(x instanceof Date) && !(x instanceof String) && !(x instanceof RegExp) && !(x instanceof ArrayBuffer), defaultHandlePromise = (promise) => {
9148
+ switch (promise.status) {
9149
+ case "fulfilled":
9150
+ return promise.value;
9151
+ case "rejected":
9152
+ throw promise.reason;
9153
+ default:
9154
+ throw promise;
9155
+ }
9156
+ }, snapCache = /* @__PURE__ */ new WeakMap(), createSnapshot = (target, version, handlePromise = defaultHandlePromise) => {
9157
+ const cache = snapCache.get(target);
9158
+ if ((cache == null ? void 0 : cache[0]) === version) {
9159
+ return cache[1];
9160
+ }
9161
+ const snap = Array.isArray(target) ? [] : Object.create(Object.getPrototypeOf(target));
9162
+ markToTrack(snap, true);
9163
+ snapCache.set(target, [version, snap]);
9164
+ Reflect.ownKeys(target).forEach((key) => {
9165
+ const value = Reflect.get(target, key);
9166
+ if (refSet.has(value)) {
9167
+ markToTrack(value, false);
9168
+ snap[key] = value;
9169
+ } else if (value instanceof Promise) {
9170
+ Object.defineProperty(snap, key, {
9171
+ get() {
9172
+ return handlePromise(value);
9173
+ }
9174
+ });
9175
+ } else if (proxyStateMap.has(value)) {
9176
+ snap[key] = snapshot(value, handlePromise);
9177
+ } else {
9178
+ snap[key] = value;
9179
+ }
9180
+ });
9181
+ return Object.freeze(snap);
9182
+ }, proxyCache = /* @__PURE__ */ new WeakMap(), versionHolder = [1, 1], proxyFunction2 = (initialObject) => {
9183
+ if (!isObject2(initialObject)) {
9184
+ throw new Error("object required");
9185
+ }
9186
+ const found = proxyCache.get(initialObject);
9187
+ if (found) {
9188
+ return found;
9189
+ }
9190
+ let version = versionHolder[0];
9191
+ const listeners = /* @__PURE__ */ new Set();
9192
+ const notifyUpdate = (op, nextVersion = ++versionHolder[0]) => {
9193
+ if (version !== nextVersion) {
9194
+ version = nextVersion;
9195
+ listeners.forEach((listener) => listener(op, nextVersion));
9196
+ }
9197
+ };
9198
+ let checkVersion = versionHolder[1];
9199
+ const ensureVersion = (nextCheckVersion = ++versionHolder[1]) => {
9200
+ if (checkVersion !== nextCheckVersion && !listeners.size) {
9201
+ checkVersion = nextCheckVersion;
9202
+ propProxyStates.forEach(([propProxyState]) => {
9203
+ const propVersion = propProxyState[1](nextCheckVersion);
9204
+ if (propVersion > version) {
9205
+ version = propVersion;
9206
+ }
9207
+ });
9208
+ }
9209
+ return version;
9210
+ };
9211
+ const createPropListener = (prop) => (op, nextVersion) => {
9212
+ const newOp = [...op];
9213
+ newOp[1] = [prop, ...newOp[1]];
9214
+ notifyUpdate(newOp, nextVersion);
9215
+ };
9216
+ const propProxyStates = /* @__PURE__ */ new Map();
9217
+ const addPropListener = (prop, propProxyState) => {
9218
+ if (isDev() && propProxyStates.has(prop)) {
9219
+ throw new Error("prop listener already exists");
9220
+ }
9221
+ if (listeners.size) {
9222
+ const remove = propProxyState[3](createPropListener(prop));
9223
+ propProxyStates.set(prop, [propProxyState, remove]);
9224
+ } else {
9225
+ propProxyStates.set(prop, [propProxyState]);
9226
+ }
9227
+ };
9228
+ const removePropListener = (prop) => {
9229
+ var _a7;
9230
+ const entry = propProxyStates.get(prop);
9231
+ if (entry) {
9232
+ propProxyStates.delete(prop);
9233
+ (_a7 = entry[1]) == null ? void 0 : _a7.call(entry);
9234
+ }
9235
+ };
9236
+ const addListener = (listener) => {
9237
+ listeners.add(listener);
9238
+ if (listeners.size === 1) {
9239
+ propProxyStates.forEach(([propProxyState, prevRemove], prop) => {
9240
+ if (isDev() && prevRemove) {
9241
+ throw new Error("remove already exists");
9242
+ }
9243
+ const remove = propProxyState[3](createPropListener(prop));
9244
+ propProxyStates.set(prop, [propProxyState, remove]);
9245
+ });
9246
+ }
9247
+ const removeListener = () => {
9248
+ listeners.delete(listener);
9249
+ if (listeners.size === 0) {
9250
+ propProxyStates.forEach(([propProxyState, remove], prop) => {
9251
+ if (remove) {
9252
+ remove();
9253
+ propProxyStates.set(prop, [propProxyState]);
9254
+ }
9255
+ });
9256
+ }
9257
+ };
9258
+ return removeListener;
9259
+ };
9260
+ const baseObject = Array.isArray(initialObject) ? [] : Object.create(Object.getPrototypeOf(initialObject));
9261
+ const handler = {
9262
+ deleteProperty(target, prop) {
9263
+ const prevValue = Reflect.get(target, prop);
9264
+ removePropListener(prop);
9265
+ const deleted = Reflect.deleteProperty(target, prop);
9266
+ if (deleted) {
9267
+ notifyUpdate(["delete", [prop], prevValue]);
9268
+ }
9269
+ return deleted;
9270
+ },
9271
+ set(target, prop, value, receiver) {
9272
+ var _a7;
9273
+ const hasPrevValue = Reflect.has(target, prop);
9274
+ const prevValue = Reflect.get(target, prop, receiver);
9275
+ if (hasPrevValue && (objectIs(prevValue, value) || proxyCache.has(value) && objectIs(prevValue, proxyCache.get(value)))) {
9276
+ return true;
9277
+ }
9278
+ removePropListener(prop);
9279
+ if (isObject2(value)) {
9280
+ value = getUntracked(value) || value;
9281
+ }
9282
+ let nextValue = value;
9283
+ if ((_a7 = Object.getOwnPropertyDescriptor(target, prop)) == null ? void 0 : _a7.set) ;
9284
+ else if (value instanceof Promise) {
9285
+ value.then((v) => {
9286
+ Object.assign(value, { status: "fulfilled", value: v });
9287
+ notifyUpdate(["resolve", [prop], v]);
9288
+ }).catch((e) => {
9289
+ Object.assign(value, { status: "rejected", reason: e });
9290
+ notifyUpdate(["reject", [prop], e]);
9291
+ });
9292
+ } else {
9293
+ if (!proxyStateMap.has(value) && canProxy(value)) {
9294
+ nextValue = proxy(value);
9295
+ }
9296
+ const childProxyState = !refSet.has(nextValue) && proxyStateMap.get(nextValue);
9297
+ if (childProxyState) {
9298
+ addPropListener(prop, childProxyState);
9299
+ }
9300
+ }
9301
+ Reflect.set(target, prop, nextValue, receiver);
9302
+ notifyUpdate(["set", [prop], value, prevValue]);
9303
+ return true;
9304
+ }
9305
+ };
9306
+ const proxyObject = newProxy2(baseObject, handler);
9307
+ proxyCache.set(initialObject, proxyObject);
9308
+ const proxyState = [baseObject, ensureVersion, createSnapshot, addListener];
9309
+ proxyStateMap.set(proxyObject, proxyState);
9310
+ Reflect.ownKeys(initialObject).forEach((key) => {
9311
+ const desc = Object.getOwnPropertyDescriptor(initialObject, key);
9312
+ if (desc.get || desc.set) {
9313
+ Object.defineProperty(baseObject, key, desc);
9314
+ } else {
9315
+ proxyObject[key] = initialObject[key];
9316
+ }
9317
+ });
9318
+ return proxyObject;
9319
+ }) => [
9320
+ // public functions
9321
+ proxyFunction2,
9322
+ // shared state
9323
+ proxyStateMap,
9324
+ refSet,
9325
+ // internal things
9326
+ objectIs,
9327
+ newProxy2,
9328
+ canProxy,
9329
+ defaultHandlePromise,
9330
+ snapCache,
9331
+ createSnapshot,
9332
+ proxyCache,
9333
+ versionHolder
9334
+ ];
9335
+ var [proxyFunction] = buildProxyFunction();
9336
+ function proxy(initialObject = {}) {
9337
+ return proxyFunction(initialObject);
9338
+ }
9339
+ function subscribe(proxyObject, callback, notifyInSync) {
9340
+ const proxyState = proxyStateMap.get(proxyObject);
9341
+ if (isDev() && !proxyState) {
9342
+ console.warn("Please use proxy object");
9343
+ }
9344
+ let promise;
9345
+ const ops = [];
9346
+ const addListener = proxyState[3];
9347
+ let isListenerActive = false;
9348
+ const listener = (op) => {
9349
+ ops.push(op);
9350
+ if (notifyInSync) {
9351
+ callback(ops.splice(0));
9352
+ return;
9353
+ }
9354
+ if (!promise) {
9355
+ promise = Promise.resolve().then(() => {
9356
+ promise = void 0;
9357
+ if (isListenerActive) {
9358
+ callback(ops.splice(0));
9359
+ }
9360
+ });
9361
+ }
9362
+ };
9363
+ const removeListener = addListener(listener);
9364
+ isListenerActive = true;
9365
+ return () => {
9366
+ isListenerActive = false;
9367
+ removeListener();
9368
+ };
9369
+ }
9370
+ function snapshot(proxyObject, handlePromise) {
9371
+ const proxyState = proxyStateMap.get(proxyObject);
9372
+ if (isDev() && !proxyState) {
9373
+ console.warn("Please use proxy object");
9374
+ }
9375
+ const [target, ensureVersion, createSnapshot] = proxyState;
9376
+ return createSnapshot(target, ensureVersion(), handlePromise);
9377
+ }
9378
+ function ref(obj) {
9379
+ refSet.add(obj);
9380
+ return obj;
9381
+ }
9382
+ function proxyWithComputed(initialObject, computedFns) {
9383
+ const keys = Object.keys(computedFns);
9384
+ keys.forEach((key) => {
9385
+ if (Object.getOwnPropertyDescriptor(initialObject, key)) {
9386
+ throw new Error("object property already defined");
9387
+ }
9388
+ const computedFn = computedFns[key];
9389
+ const { get, set: set2 } = typeof computedFn === "function" ? { get: computedFn } : computedFn;
9390
+ const desc = {};
9391
+ desc.get = () => get(snapshot(proxyObject));
9392
+ if (set2) {
9393
+ desc.set = (newValue) => set2(proxyObject, newValue);
9394
+ }
9395
+ Object.defineProperty(initialObject, key, desc);
9396
+ });
9397
+ const proxyObject = proxy(initialObject);
9398
+ return proxyObject;
9399
+ }
9400
+
9401
+ // ../../node_modules/@zag-js/utils/dist/index.mjs
9402
+ function clear(v) {
9403
+ while (v.length > 0) v.pop();
9404
+ return v;
9405
+ }
9406
+ var runIfFn = (v, ...a) => {
9407
+ const res = typeof v === "function" ? v(...a) : v;
9408
+ return res != null ? res : void 0;
9409
+ };
9410
+ var cast = (v) => v;
9411
+ var noop = () => {
9412
+ };
9413
+ var callAll = (...fns) => (...a) => {
9414
+ fns.forEach(function(fn) {
9415
+ fn == null ? void 0 : fn(...a);
9416
+ });
9417
+ };
9418
+ var uuid = /* @__PURE__ */ (() => {
9419
+ let id = 0;
9420
+ return () => {
9421
+ id++;
9422
+ return id.toString(36);
9423
+ };
9424
+ })();
9425
+ var isDev2 = () => process.env.NODE_ENV !== "production";
9426
+ var isArray = (v) => Array.isArray(v);
9427
+ var isObjectLike = (v) => v != null && typeof v === "object";
9428
+ var isObject3 = (v) => isObjectLike(v) && !isArray(v);
9429
+ var isNumber = (v) => typeof v === "number" && !Number.isNaN(v);
9430
+ var isString = (v) => typeof v === "string";
9431
+ var isFunction = (v) => typeof v === "function";
9432
+ var hasProp = (obj, prop) => Object.prototype.hasOwnProperty.call(obj, prop);
9433
+ var baseGetTag = (v) => Object.prototype.toString.call(v);
9434
+ var fnToString = Function.prototype.toString;
9435
+ var objectCtorString = fnToString.call(Object);
9436
+ var isPlainObject = (v) => {
9437
+ if (!isObjectLike(v) || baseGetTag(v) != "[object Object]") return false;
9438
+ const proto = Object.getPrototypeOf(v);
9439
+ if (proto === null) return true;
9440
+ const Ctor = hasProp(proto, "constructor") && proto.constructor;
9441
+ return typeof Ctor == "function" && Ctor instanceof Ctor && fnToString.call(Ctor) == objectCtorString;
9442
+ };
9443
+ function compact(obj) {
9444
+ if (!isPlainObject2(obj) || obj === void 0) {
9445
+ return obj;
9446
+ }
9447
+ const keys = Reflect.ownKeys(obj).filter((key) => typeof key === "string");
9448
+ const filtered = {};
9449
+ for (const key of keys) {
9450
+ const value = obj[key];
9451
+ if (value !== void 0) {
9452
+ filtered[key] = compact(value);
9453
+ }
9454
+ }
9455
+ return filtered;
9456
+ }
9457
+ var isPlainObject2 = (value) => {
9458
+ return value && typeof value === "object" && value.constructor === Object;
9459
+ };
9460
+ function warn(...a) {
9461
+ const m = a.length === 1 ? a[0] : a[1];
9462
+ const c = a.length === 2 ? a[0] : true;
9463
+ if (c && process.env.NODE_ENV !== "production") {
9464
+ console.warn(m);
9465
+ }
9466
+ }
9467
+ function invariant(...a) {
9468
+ const m = a.length === 1 ? a[0] : a[1];
9469
+ const c = a.length === 2 ? a[0] : true;
9470
+ if (c && process.env.NODE_ENV !== "production") {
9471
+ throw new Error(m);
9472
+ }
9473
+ }
9474
+
9475
+ // ../../node_modules/klona/full/index.mjs
9476
+ function set(obj, key, val) {
9477
+ if (typeof val.value === "object") val.value = klona(val.value);
9478
+ if (!val.enumerable || val.get || val.set || !val.configurable || !val.writable || key === "__proto__") {
9479
+ Object.defineProperty(obj, key, val);
9480
+ } else obj[key] = val.value;
9481
+ }
9482
+ function klona(x) {
9483
+ if (typeof x !== "object") return x;
9484
+ var i = 0, k, list, tmp, str = Object.prototype.toString.call(x);
9485
+ if (str === "[object Object]") {
9486
+ tmp = Object.create(x.__proto__ || null);
9487
+ } else if (str === "[object Array]") {
9488
+ tmp = Array(x.length);
9489
+ } else if (str === "[object Set]") {
9490
+ tmp = /* @__PURE__ */ new Set();
9491
+ x.forEach(function(val) {
9492
+ tmp.add(klona(val));
9493
+ });
9494
+ } else if (str === "[object Map]") {
9495
+ tmp = /* @__PURE__ */ new Map();
9496
+ x.forEach(function(val, key) {
9497
+ tmp.set(klona(key), klona(val));
9498
+ });
9499
+ } else if (str === "[object Date]") {
9500
+ tmp = /* @__PURE__ */ new Date(+x);
9501
+ } else if (str === "[object RegExp]") {
9502
+ tmp = new RegExp(x.source, x.flags);
9503
+ } else if (str === "[object DataView]") {
9504
+ tmp = new x.constructor(klona(x.buffer));
9505
+ } else if (str === "[object ArrayBuffer]") {
9506
+ tmp = x.slice(0);
9507
+ } else if (str.slice(-6) === "Array]") {
9508
+ tmp = new x.constructor(x);
9509
+ }
9510
+ if (tmp) {
9511
+ for (list = Object.getOwnPropertySymbols(x); i < list.length; i++) {
9512
+ set(tmp, list[i], Object.getOwnPropertyDescriptor(x, list[i]));
9513
+ }
9514
+ for (i = 0, list = Object.getOwnPropertyNames(x); i < list.length; i++) {
9515
+ if (Object.hasOwnProperty.call(tmp, k = list[i]) && tmp[k] === x[k]) continue;
9516
+ set(tmp, k, Object.getOwnPropertyDescriptor(x, k));
9517
+ }
9518
+ }
9519
+ return tmp || x;
9520
+ }
9521
+
9522
+ // ../../node_modules/@zag-js/core/dist/index.mjs
9523
+ var __defProp2 = Object.defineProperty;
9524
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
9525
+ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
9526
+ function deepMerge(source, ...objects) {
9527
+ for (const obj of objects) {
9528
+ const target = compact(obj);
9529
+ for (const key in target) {
9530
+ if (isPlainObject(obj[key])) {
9531
+ if (!source[key]) {
9532
+ source[key] = {};
9533
+ }
9534
+ deepMerge(source[key], obj[key]);
9535
+ } else {
9536
+ source[key] = obj[key];
9537
+ }
9538
+ }
9539
+ }
9540
+ return source;
9541
+ }
9542
+ function structuredClone(v) {
9543
+ return klona(v);
9544
+ }
9545
+ function toEvent(event) {
9546
+ const obj = isString(event) ? { type: event } : event;
9547
+ return obj;
9548
+ }
9549
+ function toArray(value) {
9550
+ if (!value) return [];
9551
+ return isArray(value) ? value.slice() : [value];
9552
+ }
9553
+ function isGuardHelper(value) {
9554
+ return isObject3(value) && value.predicate != null;
9555
+ }
9556
+ var Truthy = () => true;
9557
+ function determineGuardFn(guard, guardMap) {
9558
+ guard = guard != null ? guard : Truthy;
9559
+ return (context, event, meta) => {
9560
+ if (isString(guard)) {
9561
+ const value = guardMap[guard];
9562
+ return isFunction(value) ? value(context, event, meta) : value;
9563
+ }
9564
+ if (isGuardHelper(guard)) {
9565
+ return guard.predicate(guardMap)(context, event, meta);
9566
+ }
9567
+ return guard == null ? void 0 : guard(context, event, meta);
9568
+ };
9569
+ }
9570
+ function determineActionsFn(values, guardMap) {
9571
+ return (context, event, meta) => {
9572
+ if (isGuardHelper(values)) {
9573
+ return values.predicate(guardMap)(context, event, meta);
9574
+ }
9575
+ return values;
9576
+ };
9577
+ }
9578
+ function createProxy2(config) {
9579
+ var _a7, _b6, _c5, _d5, _e5;
9580
+ const computedContext = (_a7 = config.computed) != null ? _a7 : cast({});
9581
+ const initialContext = (_b6 = config.context) != null ? _b6 : cast({});
9582
+ const initialTags = config.initial ? (_d5 = (_c5 = config.states) == null ? void 0 : _c5[config.initial]) == null ? void 0 : _d5.tags : [];
9583
+ const state = proxy({
9584
+ value: (_e5 = config.initial) != null ? _e5 : "",
9585
+ previousValue: "",
9586
+ event: cast({}),
9587
+ previousEvent: cast({}),
9588
+ context: proxyWithComputed(initialContext, computedContext),
9589
+ done: false,
9590
+ tags: initialTags != null ? initialTags : [],
9591
+ hasTag(tag) {
9592
+ return this.tags.includes(tag);
9593
+ },
9594
+ matches(...value) {
9595
+ return value.includes(this.value);
9596
+ },
9597
+ can(event) {
9598
+ return cast(this).nextEvents.includes(event);
9599
+ },
9600
+ get nextEvents() {
9601
+ var _a8, _b7, _c6, _d6;
9602
+ const stateEvents = (_c6 = (_b7 = (_a8 = config.states) == null ? void 0 : _a8[this.value]) == null ? void 0 : _b7["on"]) != null ? _c6 : {};
9603
+ const globalEvents = (_d6 = config == null ? void 0 : config.on) != null ? _d6 : {};
9604
+ return Object.keys({ ...stateEvents, ...globalEvents });
9605
+ },
9606
+ get changed() {
9607
+ if (this.event.value === "machine.init" || !this.previousValue) return false;
9608
+ return this.value !== this.previousValue;
9609
+ }
9610
+ });
9611
+ return cast(state);
9612
+ }
9613
+ function determineDelayFn(delay, delaysMap) {
9614
+ return (context, event) => {
9615
+ if (isNumber(delay)) return delay;
9616
+ if (isFunction(delay)) {
9617
+ return delay(context, event);
9618
+ }
9619
+ if (isString(delay)) {
9620
+ const value = Number.parseFloat(delay);
9621
+ if (!Number.isNaN(value)) {
9622
+ return value;
9623
+ }
9624
+ if (delaysMap) {
9625
+ const valueOrFn = delaysMap == null ? void 0 : delaysMap[delay];
9626
+ invariant(
9627
+ valueOrFn == null,
9628
+ `[@zag-js/core > determine-delay] Cannot determine delay for \`${delay}\`. It doesn't exist in \`options.delays\``
9629
+ );
9630
+ return isFunction(valueOrFn) ? valueOrFn(context, event) : valueOrFn;
9631
+ }
9632
+ }
9633
+ };
9634
+ }
9635
+ function toTarget(target) {
9636
+ return isString(target) ? { target } : target;
9637
+ }
9638
+ function determineTransitionFn(transitions, guardMap) {
9639
+ return (context, event, meta) => {
9640
+ return toArray(transitions).map(toTarget).find((transition) => {
9641
+ var _a7;
9642
+ const determineGuard = determineGuardFn(transition.guard, guardMap);
9643
+ const guard = determineGuard(context, event, meta);
9644
+ return (_a7 = guard != null ? guard : transition.target) != null ? _a7 : transition.actions;
9645
+ });
9646
+ };
9647
+ }
9648
+ var Machine = class {
9649
+ // Let's get started!
9650
+ constructor(config, options) {
9651
+ var _a7, _b6, _c5, _d5, _e5, _f5, _g5, _h3, _i3, _j3, _k3;
9652
+ __publicField(
9653
+ this,
9654
+ "status",
9655
+ "Not Started"
9656
+ /* NotStarted */
9657
+ );
9658
+ __publicField(this, "state");
9659
+ __publicField(this, "initialState");
9660
+ __publicField(this, "initialContext");
9661
+ __publicField(this, "id");
9662
+ __publicField(
9663
+ this,
9664
+ "type",
9665
+ "machine"
9666
+ /* Machine */
9667
+ );
9668
+ __publicField(this, "activityEvents", /* @__PURE__ */ new Map());
9669
+ __publicField(this, "delayedEvents", /* @__PURE__ */ new Map());
9670
+ __publicField(this, "stateListeners", /* @__PURE__ */ new Set());
9671
+ __publicField(this, "doneListeners", /* @__PURE__ */ new Set());
9672
+ __publicField(this, "contextWatchers", /* @__PURE__ */ new Set());
9673
+ __publicField(this, "removeStateListener", noop);
9674
+ __publicField(this, "parent");
9675
+ __publicField(this, "children", /* @__PURE__ */ new Map());
9676
+ __publicField(this, "guardMap");
9677
+ __publicField(this, "actionMap");
9678
+ __publicField(this, "delayMap");
9679
+ __publicField(this, "activityMap");
9680
+ __publicField(this, "sync");
9681
+ __publicField(this, "options");
9682
+ __publicField(this, "config");
9683
+ __publicField(this, "_created", () => {
9684
+ var _a8;
9685
+ const event = toEvent(
9686
+ "machine.created"
9687
+ /* Created */
9688
+ );
9689
+ this.executeActions((_a8 = this.config) == null ? void 0 : _a8.created, event);
9690
+ });
9691
+ __publicField(this, "start", (init) => {
9692
+ this.state.value = "";
9693
+ this.state.tags = [];
9694
+ if (this.status === "Running") {
9695
+ return this;
9696
+ }
9697
+ this.status = "Running";
9698
+ this.removeStateListener = subscribe(
9699
+ this.state,
9700
+ () => {
9701
+ this.stateListeners.forEach((listener) => {
9702
+ listener(this.stateSnapshot);
9703
+ });
9704
+ },
9705
+ this.sync
9706
+ );
9707
+ this.setupContextWatchers();
9708
+ this.executeActivities(
9709
+ toEvent(
9710
+ "machine.start"
9711
+ /* Start */
9712
+ ),
9713
+ toArray(this.config.activities),
9714
+ "machine.start"
9715
+ /* Start */
9716
+ );
9717
+ this.executeActions(this.config.entry, toEvent(
9718
+ "machine.start"
9719
+ /* Start */
9720
+ ));
9721
+ const event = toEvent(
9722
+ "machine.init"
9723
+ /* Init */
9724
+ );
9725
+ const target = isObject3(init) ? init.value : init;
9726
+ const context = isObject3(init) ? init.context : void 0;
9727
+ if (context) {
9728
+ this.setContext(context);
9729
+ }
9730
+ const transition = {
9731
+ target: target != null ? target : this.config.initial
9732
+ };
9733
+ const next = this.getNextStateInfo(transition, event);
9734
+ this.initialState = next;
9735
+ this.performStateChangeEffects(this.state.value, next, event);
9736
+ return this;
9737
+ });
9738
+ __publicField(this, "setupContextWatchers", () => {
9739
+ const { watch } = this.config;
9740
+ if (!watch) return;
9741
+ let prev = snapshot(this.state.context);
9742
+ const cleanup = subscribe(this.state.context, () => {
9743
+ var _a8, _b7;
9744
+ const next = snapshot(this.state.context);
9745
+ for (const [key, fn] of Object.entries(watch)) {
9746
+ const isEqual2 = (_b7 = (_a8 = this.options.compareFns) == null ? void 0 : _a8[key]) != null ? _b7 : Object.is;
9747
+ if (isEqual2(prev[key], next[key])) continue;
9748
+ this.executeActions(fn, this.state.event);
9749
+ }
9750
+ prev = next;
9751
+ });
9752
+ this.contextWatchers.add(cleanup);
9753
+ });
9754
+ __publicField(this, "stop", () => {
9755
+ if (this.status === "Stopped") return;
9756
+ this.performExitEffects(this.state.value, toEvent(
9757
+ "machine.stop"
9758
+ /* Stop */
9759
+ ));
9760
+ this.executeActions(this.config.exit, toEvent(
9761
+ "machine.stop"
9762
+ /* Stop */
9763
+ ));
9764
+ this.setState("");
9765
+ this.setEvent(
9766
+ "machine.stop"
9767
+ /* Stop */
9768
+ );
9769
+ this.stopStateListeners();
9770
+ this.stopChildren();
9771
+ this.stopActivities();
9772
+ this.stopDelayedEvents();
9773
+ this.stopContextWatchers();
9774
+ this.status = "Stopped";
9775
+ return this;
9776
+ });
9777
+ __publicField(this, "stopStateListeners", () => {
9778
+ this.removeStateListener();
9779
+ this.stateListeners.clear();
9780
+ });
9781
+ __publicField(this, "stopContextWatchers", () => {
9782
+ this.contextWatchers.forEach((fn) => fn());
9783
+ this.contextWatchers.clear();
9784
+ });
9785
+ __publicField(this, "stopDelayedEvents", () => {
9786
+ this.delayedEvents.forEach((state) => {
9787
+ state.forEach((stop) => stop());
9788
+ });
9789
+ this.delayedEvents.clear();
9790
+ });
9791
+ __publicField(this, "stopActivities", (state) => {
9792
+ var _a8, _b7;
9793
+ if (state) {
9794
+ (_a8 = this.activityEvents.get(state)) == null ? void 0 : _a8.forEach((stop) => stop());
9795
+ (_b7 = this.activityEvents.get(state)) == null ? void 0 : _b7.clear();
9796
+ this.activityEvents.delete(state);
9797
+ } else {
9798
+ this.activityEvents.forEach((state2) => {
9799
+ state2.forEach((stop) => stop());
9800
+ state2.clear();
9801
+ });
9802
+ this.activityEvents.clear();
9803
+ }
9804
+ });
9805
+ __publicField(this, "sendChild", (evt, to) => {
9806
+ const event = toEvent(evt);
9807
+ const id = runIfFn(to, this.contextSnapshot);
9808
+ const child = this.children.get(id);
9809
+ if (!child) {
9810
+ invariant(`[@zag-js/core] Cannot send '${event.type}' event to unknown child`);
9811
+ }
9812
+ child.send(event);
9813
+ });
9814
+ __publicField(this, "stopChild", (id) => {
9815
+ if (!this.children.has(id)) {
9816
+ invariant(`[@zag-js/core > stop-child] Cannot stop unknown child ${id}`);
9817
+ }
9818
+ this.children.get(id).stop();
9819
+ this.children.delete(id);
9820
+ });
9821
+ __publicField(this, "removeChild", (id) => {
9822
+ this.children.delete(id);
9823
+ });
9824
+ __publicField(this, "stopChildren", () => {
9825
+ this.children.forEach((child) => child.stop());
9826
+ this.children.clear();
9827
+ });
9828
+ __publicField(this, "setParent", (parent) => {
9829
+ this.parent = parent;
9830
+ });
9831
+ __publicField(this, "spawn", (src, id) => {
9832
+ const actor = runIfFn(src);
9833
+ if (id) actor.id = id;
9834
+ actor.type = "machine.actor";
9835
+ actor.setParent(this);
9836
+ this.children.set(actor.id, cast(actor));
9837
+ actor.onDone(() => {
9838
+ this.removeChild(actor.id);
9839
+ }).start();
9840
+ return cast(ref(actor));
9841
+ });
9842
+ __publicField(this, "stopActivity", (key) => {
9843
+ var _a8;
9844
+ if (!this.state.value) return;
9845
+ const cleanups = this.activityEvents.get(this.state.value);
9846
+ (_a8 = cleanups == null ? void 0 : cleanups.get(key)) == null ? void 0 : _a8();
9847
+ cleanups == null ? void 0 : cleanups.delete(key);
9848
+ });
9849
+ __publicField(this, "addActivityCleanup", (state, key, cleanup) => {
9850
+ var _a8;
9851
+ if (!state) return;
9852
+ if (!this.activityEvents.has(state)) {
9853
+ this.activityEvents.set(state, /* @__PURE__ */ new Map([[key, cleanup]]));
9854
+ } else {
9855
+ (_a8 = this.activityEvents.get(state)) == null ? void 0 : _a8.set(key, cleanup);
9856
+ }
9857
+ });
9858
+ __publicField(this, "setState", (target) => {
9859
+ this.state.previousValue = this.state.value;
9860
+ this.state.value = target;
9861
+ const stateNode = this.getStateNode(target);
9862
+ if (target == null) {
9863
+ clear(this.state.tags);
9864
+ } else {
9865
+ this.state.tags = toArray(stateNode == null ? void 0 : stateNode.tags);
9866
+ }
9867
+ });
9868
+ __publicField(this, "setContext", (context) => {
9869
+ if (!context) return;
9870
+ deepMerge(this.state.context, compact(context));
9871
+ });
9872
+ __publicField(this, "setOptions", (options2) => {
9873
+ const opts = compact(options2);
9874
+ this.actionMap = { ...this.actionMap, ...opts.actions };
9875
+ this.delayMap = { ...this.delayMap, ...opts.delays };
9876
+ this.activityMap = { ...this.activityMap, ...opts.activities };
9877
+ this.guardMap = { ...this.guardMap, ...opts.guards };
9878
+ });
9879
+ __publicField(this, "getStateNode", (state) => {
9880
+ var _a8;
9881
+ if (!state) return;
9882
+ return (_a8 = this.config.states) == null ? void 0 : _a8[state];
9883
+ });
9884
+ __publicField(this, "getNextStateInfo", (transitions, event) => {
9885
+ var _a8;
9886
+ const transition = this.determineTransition(transitions, event);
9887
+ const isTargetless = !(transition == null ? void 0 : transition.target);
9888
+ const target = (_a8 = transition == null ? void 0 : transition.target) != null ? _a8 : this.state.value;
9889
+ const changed = this.state.value !== target;
9890
+ const stateNode = this.getStateNode(target);
9891
+ const reenter = !isTargetless && !changed && !(transition == null ? void 0 : transition.internal);
9892
+ const info = {
9893
+ reenter,
9894
+ transition,
9895
+ stateNode,
9896
+ target,
9897
+ changed
9898
+ };
9899
+ this.log("NextState:", `[${event.type}]`, this.state.value, "---->", info.target);
9900
+ return info;
9901
+ });
9902
+ __publicField(this, "getAfterActions", (transition, delay) => {
9903
+ let id;
9904
+ const current = this.state.value;
9905
+ return {
9906
+ entry: () => {
9907
+ id = globalThis.setTimeout(() => {
9908
+ const next = this.getNextStateInfo(transition, this.state.event);
9909
+ this.performStateChangeEffects(current, next, this.state.event);
9910
+ }, delay);
9911
+ },
9912
+ exit: () => {
9913
+ globalThis.clearTimeout(id);
9914
+ }
9915
+ };
9916
+ });
9917
+ __publicField(this, "getDelayedEventActions", (state) => {
9918
+ const stateNode = this.getStateNode(state);
9919
+ const event = this.state.event;
9920
+ if (!stateNode || !stateNode.after) return;
9921
+ const entries = [];
9922
+ const exits = [];
9923
+ if (isArray(stateNode.after)) {
9924
+ const transition = this.determineTransition(stateNode.after, event);
9925
+ if (!transition) return;
9926
+ if (!hasProp(transition, "delay")) {
9927
+ throw new Error(`[@zag-js/core > after] Delay is required for after transition: ${JSON.stringify(transition)}`);
9928
+ }
9929
+ const determineDelay = determineDelayFn(transition.delay, this.delayMap);
9930
+ const __delay = determineDelay(this.contextSnapshot, event);
9931
+ const actions = this.getAfterActions(transition, __delay);
9932
+ entries.push(actions.entry);
9933
+ exits.push(actions.exit);
9934
+ return { entries, exits };
9935
+ }
9936
+ if (isObject3(stateNode.after)) {
9937
+ for (const delay in stateNode.after) {
9938
+ const transition = stateNode.after[delay];
9939
+ const determineDelay = determineDelayFn(delay, this.delayMap);
9940
+ const __delay = determineDelay(this.contextSnapshot, event);
9941
+ const actions = this.getAfterActions(transition, __delay);
9942
+ entries.push(actions.entry);
9943
+ exits.push(actions.exit);
9944
+ }
9945
+ }
9946
+ return { entries, exits };
9947
+ });
9948
+ __publicField(this, "executeActions", (actions, event) => {
9949
+ var _a8;
9950
+ const pickedActions = determineActionsFn(actions, this.guardMap)(this.contextSnapshot, event, this.guardMeta);
9951
+ for (const action of toArray(pickedActions)) {
9952
+ const fn = isString(action) ? (_a8 = this.actionMap) == null ? void 0 : _a8[action] : action;
9953
+ warn(
9954
+ isString(action) && !fn,
9955
+ `[@zag-js/core > execute-actions] No implementation found for action: \`${action}\``
9956
+ );
9957
+ fn == null ? void 0 : fn(this.state.context, event, this.meta);
9958
+ }
9959
+ });
9960
+ __publicField(this, "executeActivities", (event, activities, state) => {
9961
+ var _a8;
9962
+ for (const activity of activities) {
9963
+ const fn = isString(activity) ? (_a8 = this.activityMap) == null ? void 0 : _a8[activity] : activity;
9964
+ if (!fn) {
9965
+ warn(`[@zag-js/core > execute-activity] No implementation found for activity: \`${activity}\``);
9966
+ continue;
9967
+ }
9968
+ const cleanup = fn(this.state.context, event, this.meta);
9969
+ if (cleanup) {
9970
+ const key = isString(activity) ? activity : activity.name || uuid();
9971
+ this.addActivityCleanup(state != null ? state : this.state.value, key, cleanup);
9972
+ }
9973
+ }
9974
+ });
9975
+ __publicField(this, "createEveryActivities", (every, callbackfn) => {
9976
+ if (!every) return;
9977
+ if (isArray(every)) {
9978
+ const picked = toArray(every).find((transition) => {
9979
+ const delayOrFn = transition.delay;
9980
+ const determineDelay2 = determineDelayFn(delayOrFn, this.delayMap);
9981
+ const delay2 = determineDelay2(this.contextSnapshot, this.state.event);
9982
+ const determineGuard = determineGuardFn(transition.guard, this.guardMap);
9983
+ const guard = determineGuard(this.contextSnapshot, this.state.event, this.guardMeta);
9984
+ return guard != null ? guard : delay2 != null;
9985
+ });
9986
+ if (!picked) return;
9987
+ const determineDelay = determineDelayFn(picked.delay, this.delayMap);
9988
+ const delay = determineDelay(this.contextSnapshot, this.state.event);
9989
+ const activity = () => {
9990
+ const id = globalThis.setInterval(() => {
9991
+ this.executeActions(picked.actions, this.state.event);
9992
+ }, delay);
9993
+ return () => {
9994
+ globalThis.clearInterval(id);
9995
+ };
9996
+ };
9997
+ callbackfn(activity);
9998
+ } else {
9999
+ for (const interval in every) {
10000
+ const actions = every == null ? void 0 : every[interval];
10001
+ const determineDelay = determineDelayFn(interval, this.delayMap);
10002
+ const delay = determineDelay(this.contextSnapshot, this.state.event);
10003
+ const activity = () => {
10004
+ const id = globalThis.setInterval(() => {
10005
+ this.executeActions(actions, this.state.event);
10006
+ }, delay);
10007
+ return () => {
10008
+ globalThis.clearInterval(id);
10009
+ };
10010
+ };
10011
+ callbackfn(activity);
10012
+ }
10013
+ }
10014
+ });
10015
+ __publicField(this, "setEvent", (event) => {
10016
+ this.state.previousEvent = this.state.event;
10017
+ this.state.event = ref(toEvent(event));
10018
+ });
10019
+ __publicField(this, "performExitEffects", (current, event) => {
10020
+ const currentState = this.state.value;
10021
+ if (currentState === "") return;
10022
+ const stateNode = current ? this.getStateNode(current) : void 0;
10023
+ this.stopActivities(currentState);
10024
+ const _exit = determineActionsFn(stateNode == null ? void 0 : stateNode.exit, this.guardMap)(this.contextSnapshot, event, this.guardMeta);
10025
+ const exitActions = toArray(_exit);
10026
+ const afterExitActions = this.delayedEvents.get(currentState);
10027
+ if (afterExitActions) {
10028
+ exitActions.push(...afterExitActions);
10029
+ }
10030
+ this.executeActions(exitActions, event);
10031
+ this.delayedEvents.delete(currentState);
10032
+ });
10033
+ __publicField(this, "performEntryEffects", (next, event) => {
10034
+ const stateNode = this.getStateNode(next);
10035
+ const activities = toArray(stateNode == null ? void 0 : stateNode.activities);
10036
+ this.createEveryActivities(stateNode == null ? void 0 : stateNode.every, (activity) => {
10037
+ activities.unshift(activity);
10038
+ });
10039
+ if (activities.length > 0) {
10040
+ this.executeActivities(event, activities);
10041
+ }
10042
+ const pickedActions = determineActionsFn(stateNode == null ? void 0 : stateNode.entry, this.guardMap)(
10043
+ this.contextSnapshot,
10044
+ event,
10045
+ this.guardMeta
10046
+ );
10047
+ const entryActions = toArray(pickedActions);
10048
+ const afterActions = this.getDelayedEventActions(next);
10049
+ if ((stateNode == null ? void 0 : stateNode.after) && afterActions) {
10050
+ this.delayedEvents.set(next, afterActions == null ? void 0 : afterActions.exits);
10051
+ entryActions.push(...afterActions.entries);
10052
+ }
10053
+ this.executeActions(entryActions, event);
10054
+ if ((stateNode == null ? void 0 : stateNode.type) === "final") {
10055
+ this.state.done = true;
10056
+ this.doneListeners.forEach((listener) => {
10057
+ listener(this.stateSnapshot);
10058
+ });
10059
+ this.stop();
10060
+ }
10061
+ });
10062
+ __publicField(this, "performTransitionEffects", (transitions, event) => {
10063
+ const transition = this.determineTransition(transitions, event);
10064
+ this.executeActions(transition == null ? void 0 : transition.actions, event);
10065
+ });
10066
+ __publicField(this, "performStateChangeEffects", (current, next, event) => {
10067
+ this.setEvent(event);
10068
+ const changed = next.changed || next.reenter;
10069
+ if (changed) {
10070
+ this.performExitEffects(current, event);
10071
+ }
10072
+ this.performTransitionEffects(next.transition, event);
10073
+ this.setState(next.target);
10074
+ if (changed) {
10075
+ this.performEntryEffects(next.target, event);
10076
+ }
10077
+ });
10078
+ __publicField(this, "determineTransition", (transition, event) => {
10079
+ const fn = determineTransitionFn(transition, this.guardMap);
10080
+ return fn == null ? void 0 : fn(this.contextSnapshot, event, this.guardMeta);
10081
+ });
10082
+ __publicField(this, "sendParent", (evt) => {
10083
+ var _a8;
10084
+ if (!this.parent) {
10085
+ invariant("[@zag-js/core > send-parent] Cannot send event to an unknown parent");
10086
+ }
10087
+ const event = toEvent(evt);
10088
+ (_a8 = this.parent) == null ? void 0 : _a8.send(event);
10089
+ });
10090
+ __publicField(this, "log", (...args) => {
10091
+ if (isDev2() && this.options.debug) {
10092
+ console.log(...args);
10093
+ }
10094
+ });
10095
+ __publicField(this, "send", (evt) => {
10096
+ const event = toEvent(evt);
10097
+ this.transition(this.state.value, event);
10098
+ });
10099
+ __publicField(this, "transition", (state, evt) => {
10100
+ var _a8, _b7, _c6;
10101
+ const stateNode = isString(state) ? this.getStateNode(state) : state == null ? void 0 : state.stateNode;
10102
+ const event = toEvent(evt);
10103
+ if (!stateNode && !this.config.on) {
10104
+ const msg = this.status === "Stopped" ? "[@zag-js/core > transition] Cannot transition a stopped machine" : `[@zag-js/core > transition] State does not have a definition for \`state\`: ${state}, \`event\`: ${event.type}`;
10105
+ warn(msg);
10106
+ return;
10107
+ }
10108
+ const transitions = (
10109
+ // @ts-expect-error - Fix this
10110
+ (_c6 = (_a8 = stateNode == null ? void 0 : stateNode.on) == null ? void 0 : _a8[event.type]) != null ? _c6 : (_b7 = this.config.on) == null ? void 0 : _b7[event.type]
10111
+ );
10112
+ const next = this.getNextStateInfo(transitions, event);
10113
+ this.performStateChangeEffects(this.state.value, next, event);
10114
+ return next.stateNode;
10115
+ });
10116
+ __publicField(this, "subscribe", (listener) => {
10117
+ this.stateListeners.add(listener);
10118
+ if (this.status === "Running") {
10119
+ listener(this.stateSnapshot);
10120
+ }
10121
+ return () => {
10122
+ this.stateListeners.delete(listener);
10123
+ };
10124
+ });
10125
+ __publicField(this, "onDone", (listener) => {
10126
+ this.doneListeners.add(listener);
10127
+ return this;
10128
+ });
10129
+ __publicField(this, "onTransition", (listener) => {
10130
+ this.stateListeners.add(listener);
10131
+ if (this.status === "Running") {
10132
+ listener(this.stateSnapshot);
10133
+ }
10134
+ return this;
10135
+ });
10136
+ this.config = structuredClone(config);
10137
+ this.options = structuredClone(options != null ? options : {});
10138
+ this.id = (_a7 = this.config.id) != null ? _a7 : `machine-${uuid()}`;
10139
+ this.guardMap = (_c5 = (_b6 = this.options) == null ? void 0 : _b6.guards) != null ? _c5 : {};
10140
+ this.actionMap = (_e5 = (_d5 = this.options) == null ? void 0 : _d5.actions) != null ? _e5 : {};
10141
+ this.delayMap = (_g5 = (_f5 = this.options) == null ? void 0 : _f5.delays) != null ? _g5 : {};
10142
+ this.activityMap = (_i3 = (_h3 = this.options) == null ? void 0 : _h3.activities) != null ? _i3 : {};
10143
+ this.sync = (_k3 = (_j3 = this.options) == null ? void 0 : _j3.sync) != null ? _k3 : false;
10144
+ this.state = createProxy2(this.config);
10145
+ this.initialContext = snapshot(this.state.context);
10146
+ }
10147
+ // immutable state value
10148
+ get stateSnapshot() {
10149
+ return cast(snapshot(this.state));
10150
+ }
10151
+ getState() {
10152
+ return this.stateSnapshot;
10153
+ }
10154
+ // immutable context value
10155
+ get contextSnapshot() {
10156
+ return this.stateSnapshot.context;
10157
+ }
10158
+ /**
10159
+ * A reference to the instance methods of the machine.
10160
+ * Useful when spawning child machines and managing the communication between them.
10161
+ */
10162
+ get self() {
10163
+ const self2 = this;
10164
+ return {
10165
+ id: this.id,
10166
+ send: this.send.bind(this),
10167
+ sendParent: this.sendParent.bind(this),
10168
+ sendChild: this.sendChild.bind(this),
10169
+ stop: this.stop.bind(this),
10170
+ stopChild: this.stopChild.bind(this),
10171
+ spawn: this.spawn.bind(this),
10172
+ stopActivity: this.stopActivity.bind(this),
10173
+ get state() {
10174
+ return self2.stateSnapshot;
10175
+ },
10176
+ get initialContext() {
10177
+ return self2.initialContext;
10178
+ },
10179
+ get initialState() {
10180
+ var _a7, _b6;
10181
+ return (_b6 = (_a7 = self2.initialState) == null ? void 0 : _a7.target) != null ? _b6 : "";
10182
+ }
10183
+ };
10184
+ }
10185
+ get meta() {
10186
+ var _a7, _b6;
10187
+ return {
10188
+ state: this.stateSnapshot,
10189
+ guards: this.guardMap,
10190
+ send: this.send.bind(this),
10191
+ self: this.self,
10192
+ initialContext: this.initialContext,
10193
+ initialState: (_b6 = (_a7 = this.initialState) == null ? void 0 : _a7.target) != null ? _b6 : "",
10194
+ getState: () => this.stateSnapshot,
10195
+ getAction: (key) => this.actionMap[key],
10196
+ getGuard: (key) => this.guardMap[key]
10197
+ };
10198
+ }
10199
+ get guardMeta() {
10200
+ return {
10201
+ state: this.stateSnapshot
10202
+ };
10203
+ }
10204
+ get [Symbol.toStringTag]() {
10205
+ return "Machine";
10206
+ }
10207
+ getHydrationState() {
10208
+ const state = this.getState();
10209
+ return {
10210
+ value: state.value,
10211
+ tags: state.tags
10212
+ };
10213
+ }
10214
+ };
10215
+ var createMachine = (config, options) => new Machine(config, options);
10216
+ var clsx = (...args) => args.map((str) => {
10217
+ var _a7;
10218
+ return (_a7 = str == null ? void 0 : str.trim) == null ? void 0 : _a7.call(str);
10219
+ }).filter(Boolean).join(" ");
10220
+ var CSS_REGEX = /((?:--)?(?:\w+-?)+)\s*:\s*([^;]*)/g;
10221
+ var serialize = (style) => {
10222
+ const res = {};
10223
+ let match;
10224
+ while (match = CSS_REGEX.exec(style)) {
10225
+ res[match[1]] = match[2];
10226
+ }
10227
+ return res;
10228
+ };
10229
+ var css = (a, b) => {
10230
+ if (isString(a)) {
10231
+ if (isString(b)) return `${a};${b}`;
10232
+ a = serialize(a);
10233
+ } else if (isString(b)) {
10234
+ b = serialize(b);
10235
+ }
10236
+ return Object.assign({}, a != null ? a : {}, b != null ? b : {});
10237
+ };
10238
+ function mergeProps(...args) {
10239
+ let result = {};
10240
+ for (let props2 of args) {
10241
+ for (let key in result) {
10242
+ if (key.startsWith("on") && typeof result[key] === "function" && typeof props2[key] === "function") {
10243
+ result[key] = callAll(props2[key], result[key]);
10244
+ continue;
10245
+ }
10246
+ if (key === "className" || key === "class") {
10247
+ result[key] = clsx(result[key], props2[key]);
10248
+ continue;
10249
+ }
10250
+ if (key === "style") {
10251
+ result[key] = css(result[key], props2[key]);
10252
+ continue;
10253
+ }
10254
+ result[key] = props2[key] !== void 0 ? props2[key] : result[key];
10255
+ }
10256
+ for (let key in props2) {
10257
+ if (result[key] === void 0) {
10258
+ result[key] = props2[key];
10259
+ }
10260
+ }
10261
+ }
10262
+ return result;
10263
+ }
10264
+
10265
+ // ../../node_modules/@zag-js/types/dist/index.mjs
10266
+ function createNormalizer(fn) {
10267
+ return new Proxy({}, {
10268
+ get() {
10269
+ return fn;
10270
+ }
10271
+ });
10272
+ }
10273
+ var createProps = () => (props2) => Array.from(new Set(props2));
10274
+
10275
+ // ../../node_modules/@zag-js/react/dist/index.mjs
10276
+ var import_react115 = __toESM(require("react"), 1);
10277
+ var import_react_dom = require("react-dom");
10278
+ var import_jsx_runtime10 = require("react/jsx-runtime");
10279
+ var normalizeProps = createNormalizer((v) => v);
10280
+ var isArrayLike = (value) => (value == null ? void 0 : value.constructor.name) === "Array";
10281
+ var isArrayEqual = (a, b) => {
10282
+ if (a.length !== b.length) return false;
10283
+ for (let i = 0; i < a.length; i++) {
10284
+ if (!isEqual(a[i], b[i])) return false;
10285
+ }
10286
+ return true;
10287
+ };
10288
+ var isEqual = (a, b) => {
10289
+ if (Object.is(a, b)) return true;
10290
+ if (a == null && b != null || a != null && b == null) return false;
10291
+ if (typeof (a == null ? void 0 : a.isEqual) === "function" && typeof (b == null ? void 0 : b.isEqual) === "function") {
10292
+ return a.isEqual(b);
10293
+ }
10294
+ if (typeof a === "function" && typeof b === "function") {
10295
+ return a.toString() === b.toString();
10296
+ }
10297
+ if (isArrayLike(a) && isArrayLike(b)) {
10298
+ return isArrayEqual(Array.from(a), Array.from(b));
10299
+ }
10300
+ if (!(typeof a === "object") || !(typeof b === "object")) return false;
10301
+ const keys = Object.keys(b != null ? b : /* @__PURE__ */ Object.create(null));
10302
+ const length = keys.length;
10303
+ for (let i = 0; i < length; i++) {
10304
+ const hasKey = Reflect.has(a, keys[i]);
10305
+ if (!hasKey) return false;
10306
+ }
10307
+ for (let i = 0; i < length; i++) {
10308
+ const key = keys[i];
10309
+ if (!isEqual(a[key], b[key])) return false;
10310
+ }
10311
+ return true;
10312
+ };
10313
+ var isDev3 = () => process.env.NODE_ENV !== "production";
10314
+ var fnToString2 = Function.prototype.toString;
10315
+ fnToString2.call(Object);
10316
+ function compact2(obj) {
10317
+ if (!isPlainObject3(obj) || obj === void 0) {
10318
+ return obj;
10319
+ }
10320
+ const keys = Reflect.ownKeys(obj).filter((key) => typeof key === "string");
10321
+ const filtered = {};
10322
+ for (const key of keys) {
10323
+ const value = obj[key];
10324
+ if (value !== void 0) {
10325
+ filtered[key] = compact2(value);
10326
+ }
10327
+ }
10328
+ return filtered;
10329
+ }
10330
+ var isPlainObject3 = (value) => {
10331
+ return value && typeof value === "object" && value.constructor === Object;
10332
+ };
10333
+ function useUpdateEffect(callback, deps) {
10334
+ const render = (0, import_react115.useRef)(false);
10335
+ const effect = (0, import_react115.useRef)(false);
10336
+ (0, import_react115.useEffect)(() => {
10337
+ const mounted = render.current;
10338
+ const run = mounted && effect.current;
10339
+ if (run) {
10340
+ return callback();
10341
+ }
10342
+ effect.current = true;
10343
+ }, deps);
10344
+ (0, import_react115.useEffect)(() => {
10345
+ render.current = true;
10346
+ return () => {
10347
+ render.current = false;
10348
+ };
10349
+ }, []);
10350
+ }
10351
+ var { use } = import_react115.default;
10352
+ var targetCache = makeGlobal("__zag__targetCache", () => /* @__PURE__ */ new WeakMap());
10353
+ function useSnapshot(service, options) {
10354
+ const { actions, context, sync: notifyInSync } = options != null ? options : {};
10355
+ const lastSnapshot = (0, import_react115.useRef)();
10356
+ const lastAffected = (0, import_react115.useRef)();
10357
+ const currSnapshot = (0, import_react115.useSyncExternalStore)(
10358
+ (0, import_react115.useCallback)((callback) => subscribe(service.state, callback, notifyInSync), [notifyInSync]),
10359
+ () => {
10360
+ const nextSnapshot = snapshot(service.state, use);
10361
+ try {
10362
+ if (lastSnapshot.current && lastAffected.current && !isChanged(lastSnapshot.current, nextSnapshot, lastAffected.current, /* @__PURE__ */ new WeakMap())) {
10363
+ return lastSnapshot.current;
10364
+ }
10365
+ } catch {
10366
+ }
10367
+ return nextSnapshot;
10368
+ },
10369
+ () => snapshot(service.state, use)
10370
+ );
10371
+ service.setOptions({ actions });
10372
+ const ctx = (0, import_react115.useMemo)(() => compact2(context != null ? context : {}), [context]);
10373
+ useUpdateEffect(() => {
10374
+ var _a7;
10375
+ const entries = Object.entries(ctx);
10376
+ const previousCtx = (_a7 = service.contextSnapshot) != null ? _a7 : {};
10377
+ const equality = entries.map(([key, value]) => ({
10378
+ key,
10379
+ curr: value,
10380
+ prev: previousCtx[key],
10381
+ equal: isEqual(previousCtx[key], value)
10382
+ }));
10383
+ const allEqual = equality.every(({ equal }) => equal);
10384
+ if (!allEqual) {
10385
+ service.setContext(ctx);
10386
+ }
10387
+ }, [ctx]);
10388
+ const currAffected = /* @__PURE__ */ new WeakMap();
10389
+ (0, import_react115.useEffect)(() => {
10390
+ lastSnapshot.current = currSnapshot;
10391
+ lastAffected.current = currAffected;
10392
+ });
10393
+ const proxyCache = (0, import_react115.useMemo)(() => /* @__PURE__ */ new WeakMap(), []);
10394
+ return createProxy(currSnapshot, currAffected, proxyCache, targetCache);
10395
+ }
10396
+ function useConstant(fn) {
10397
+ const ref2 = (0, import_react115.useRef)();
10398
+ if (!ref2.current) ref2.current = { v: fn() };
10399
+ return ref2.current.v;
10400
+ }
10401
+ var useSafeLayoutEffect = typeof document !== "undefined" ? import_react115.useLayoutEffect : import_react115.useEffect;
10402
+ function useService(machine2, options) {
10403
+ const { state: hydratedState, context } = options != null ? options : {};
10404
+ const service = useConstant(() => {
10405
+ const instance = typeof machine2 === "function" ? machine2() : machine2;
10406
+ if (context) instance.setContext(context);
10407
+ instance._created();
10408
+ return instance;
10409
+ });
10410
+ const snapshotRef = (0, import_react115.useRef)();
10411
+ useSafeLayoutEffect(() => {
10412
+ const stateInit = hydratedState != null ? hydratedState : snapshotRef.current;
10413
+ service.start(stateInit);
10414
+ return () => {
10415
+ if (isDev3()) {
10416
+ snapshotRef.current = service.getHydrationState();
10417
+ }
10418
+ service.stop();
10419
+ };
10420
+ }, []);
10421
+ return service;
10422
+ }
10423
+ function useMachine(machine2, options) {
10424
+ const service = useService(machine2, options);
10425
+ const state = useSnapshot(service, options);
10426
+ return [state, service.send, service];
10427
+ }
10428
+
10429
+ // ../../node_modules/@ark-ui/react/dist/utils/compose-refs.js
10430
+ function setRef(ref2, value) {
10431
+ if (typeof ref2 === "function") {
10432
+ ref2(value);
10433
+ } else if (ref2 !== null && ref2 !== void 0) {
10434
+ ref2.current = value;
10435
+ }
10436
+ }
10437
+ function composeRefs(...refs) {
10438
+ return (node) => {
10439
+ for (const ref2 of refs) {
10440
+ setRef(ref2, node);
10441
+ }
10442
+ };
10443
+ }
10444
+
10445
+ // ../../node_modules/@ark-ui/react/dist/utils/create-context.js
10446
+ var import_react116 = require("react");
10447
+ function getErrorMessage(hook, provider) {
10448
+ return `${hook} returned \`undefined\`. Seems you forgot to wrap component within ${provider}`;
10449
+ }
10450
+ function createContext2(options = {}) {
10451
+ const {
10452
+ name,
10453
+ strict = true,
10454
+ hookName = "useContext",
10455
+ providerName = "Provider",
10456
+ errorMessage,
10457
+ defaultValue
10458
+ } = options;
10459
+ const Context = (0, import_react116.createContext)(defaultValue);
10460
+ Context.displayName = name;
10461
+ function useContext$1() {
10462
+ var _a7;
10463
+ const context = (0, import_react116.useContext)(Context);
10464
+ if (!context && strict) {
10465
+ const error = new Error(errorMessage != null ? errorMessage : getErrorMessage(hookName, providerName));
10466
+ error.name = "ContextError";
10467
+ (_a7 = Error.captureStackTrace) == null ? void 0 : _a7.call(Error, error, useContext$1);
10468
+ throw error;
10469
+ }
10470
+ return context;
10471
+ }
10472
+ return [Context.Provider, useContext$1, Context];
10473
+ }
10474
+
10475
+ // ../../node_modules/@ark-ui/react/dist/utils/create-split-props.js
10476
+ var createSplitProps = () => (props2, keys) => keys.reduce(
10477
+ (previousValue, currentValue) => {
10478
+ const [target, source] = previousValue;
10479
+ const key = currentValue;
10480
+ if (source[key] !== void 0) {
10481
+ target[key] = source[key];
10482
+ }
10483
+ delete source[key];
10484
+ return [target, source];
10485
+ },
10486
+ [{}, { ...props2 }]
10487
+ );
10488
+
10489
+ // ../../node_modules/@ark-ui/react/dist/components/factory.js
10490
+ var import_react117 = require("react");
10491
+ function getRef(element) {
10492
+ var _a7, _b6;
10493
+ let getter = (_a7 = Object.getOwnPropertyDescriptor(element.props, "ref")) == null ? void 0 : _a7.get;
10494
+ let mayWarn = getter && "isReactWarning" in getter && getter.isReactWarning;
10495
+ if (mayWarn) {
10496
+ return element.ref;
10497
+ }
10498
+ getter = (_b6 = Object.getOwnPropertyDescriptor(element, "ref")) == null ? void 0 : _b6.get;
10499
+ mayWarn = getter && "isReactWarning" in getter && getter.isReactWarning;
10500
+ if (mayWarn) {
10501
+ return element.props.ref;
10502
+ }
10503
+ return element.props.ref || element.ref;
10504
+ }
10505
+ var withAsChild = (Component) => {
10506
+ const Comp = (0, import_react117.memo)(
10507
+ (0, import_react117.forwardRef)((props2, ref2) => {
10508
+ const { asChild, children, ...restProps } = props2;
10509
+ if (!asChild) {
10510
+ return (0, import_react117.createElement)(Component, { ...restProps, ref: ref2 }, children);
10511
+ }
10512
+ const onlyChild = import_react117.Children.only(children);
10513
+ if (!(0, import_react117.isValidElement)(onlyChild)) {
10514
+ return null;
10515
+ }
10516
+ const childRef = getRef(onlyChild);
10517
+ return (0, import_react117.cloneElement)(onlyChild, {
10518
+ ...mergeProps(restProps, onlyChild.props),
10519
+ ref: ref2 ? composeRefs(ref2, childRef) : childRef
10520
+ });
10521
+ })
10522
+ );
10523
+ Comp.displayName = Component.displayName || Component.name;
10524
+ return Comp;
10525
+ };
10526
+ var jsxFactory = () => {
10527
+ const cache = /* @__PURE__ */ new Map();
10528
+ return new Proxy(withAsChild, {
10529
+ apply(_target, _thisArg, argArray) {
10530
+ return withAsChild(argArray[0]);
10531
+ },
10532
+ get(_, element) {
10533
+ const asElement = element;
10534
+ if (!cache.has(asElement)) {
10535
+ cache.set(asElement, withAsChild(asElement));
10536
+ }
10537
+ return cache.get(asElement);
10538
+ }
10539
+ });
10540
+ };
10541
+ var ark = jsxFactory();
10542
+
10543
+ // ../../node_modules/@zag-js/presence/dist/index.mjs
10544
+ function connect(state, send, _normalize) {
10545
+ const present = state.matches("mounted", "unmountSuspended");
10546
+ return {
10547
+ skip: !state.context.initial && present,
10548
+ present,
10549
+ setNode(node) {
10550
+ if (!node) return;
10551
+ send({ type: "NODE.SET", node });
10552
+ },
10553
+ unmount() {
10554
+ send({ type: "UNMOUNT" });
10555
+ }
10556
+ };
10557
+ }
10558
+ function machine(ctx) {
10559
+ return createMachine(
10560
+ {
10561
+ initial: ctx.present ? "mounted" : "unmounted",
10562
+ context: {
10563
+ node: null,
10564
+ styles: null,
10565
+ unmountAnimationName: null,
10566
+ prevAnimationName: null,
10567
+ present: false,
10568
+ initial: false,
10569
+ ...ctx
10570
+ },
10571
+ exit: ["clearInitial"],
10572
+ watch: {
10573
+ present: ["setInitial", "syncPresence"]
10574
+ },
10575
+ on: {
10576
+ "NODE.SET": {
10577
+ actions: ["setNode", "setStyles"]
10578
+ }
10579
+ },
10580
+ states: {
10581
+ mounted: {
10582
+ on: {
10583
+ UNMOUNT: {
10584
+ target: "unmounted",
10585
+ actions: ["invokeOnExitComplete"]
10586
+ },
10587
+ "UNMOUNT.SUSPEND": "unmountSuspended"
10588
+ }
10589
+ },
10590
+ unmountSuspended: {
10591
+ activities: ["trackAnimationEvents"],
10592
+ after: {
10593
+ // Fallback to timeout to ensure we exit this state even if the `animationend` event
10594
+ // did not get trigger
10595
+ ANIMATION_DURATION: {
10596
+ target: "unmounted",
10597
+ actions: ["invokeOnExitComplete"]
10598
+ }
10599
+ },
10600
+ on: {
10601
+ MOUNT: {
10602
+ target: "mounted",
10603
+ actions: ["setPrevAnimationName"]
10604
+ },
10605
+ UNMOUNT: {
10606
+ target: "unmounted",
10607
+ actions: ["invokeOnExitComplete"]
10608
+ }
10609
+ }
10610
+ },
10611
+ unmounted: {
10612
+ entry: ["clearPrevAnimationName"],
10613
+ on: {
10614
+ MOUNT: {
10615
+ target: "mounted",
10616
+ actions: ["setPrevAnimationName"]
10617
+ }
10618
+ }
10619
+ }
10620
+ }
10621
+ },
10622
+ {
10623
+ delays: {
10624
+ ANIMATION_DURATION(ctx2) {
10625
+ var _a7, _b6;
10626
+ return parseMs((_a7 = ctx2.styles) == null ? void 0 : _a7.animationDuration) + parseMs((_b6 = ctx2.styles) == null ? void 0 : _b6.animationDelay) + ANIMATION_TIMEOUT_MARGIN;
10627
+ }
10628
+ },
10629
+ actions: {
10630
+ setInitial(ctx2) {
10631
+ ctx2.initial = true;
10632
+ },
10633
+ clearInitial(ctx2) {
10634
+ ctx2.initial = false;
10635
+ },
10636
+ invokeOnExitComplete(ctx2) {
10637
+ var _a7;
10638
+ (_a7 = ctx2.onExitComplete) == null ? void 0 : _a7.call(ctx2);
10639
+ },
10640
+ setNode(ctx2, evt) {
10641
+ ctx2.node = ref(evt.node);
10642
+ },
10643
+ setStyles(ctx2, evt) {
10644
+ const win = evt.node.ownerDocument.defaultView || window;
10645
+ ctx2.styles = ref(win.getComputedStyle(evt.node));
10646
+ },
10647
+ syncPresence(ctx2, _evt, { send }) {
10648
+ var _a7;
10649
+ if (ctx2.present) {
10650
+ send({ type: "MOUNT", src: "presence.changed" });
10651
+ return;
10652
+ }
10653
+ if (!ctx2.present && ((_a7 = ctx2.node) == null ? void 0 : _a7.ownerDocument.visibilityState) === "hidden") {
10654
+ send({ type: "UNMOUNT", src: "visibilitychange" });
10655
+ return;
10656
+ }
10657
+ const animationName = getAnimationName(ctx2.styles);
10658
+ const exec = ctx2.immediate ? queueMicrotask : requestAnimationFrame;
10659
+ exec(() => {
10660
+ var _a8, _b6;
10661
+ ctx2.unmountAnimationName = animationName;
10662
+ if (animationName === "none" || animationName === ctx2.prevAnimationName || ((_a8 = ctx2.styles) == null ? void 0 : _a8.display) === "none" || ((_b6 = ctx2.styles) == null ? void 0 : _b6.animationDuration) === "0s") {
10663
+ send({ type: "UNMOUNT", src: "presence.changed" });
10664
+ } else {
10665
+ send({ type: "UNMOUNT.SUSPEND" });
10666
+ }
10667
+ });
10668
+ },
10669
+ setPrevAnimationName(ctx2) {
10670
+ const exec = ctx2.immediate ? queueMicrotask : requestAnimationFrame;
10671
+ exec(() => {
10672
+ ctx2.prevAnimationName = getAnimationName(ctx2.styles);
10673
+ });
10674
+ },
10675
+ clearPrevAnimationName(ctx2) {
10676
+ ctx2.prevAnimationName = null;
10677
+ }
10678
+ },
10679
+ activities: {
10680
+ trackAnimationEvents(ctx2, _evt, { send }) {
10681
+ const node = ctx2.node;
10682
+ if (!node) return;
10683
+ const onStart = (event) => {
10684
+ var _a7, _b6, _c5;
10685
+ const target = (_c5 = (_b6 = (_a7 = event.composedPath) == null ? void 0 : _a7.call(event)) == null ? void 0 : _b6[0]) != null ? _c5 : event.target;
10686
+ if (target === node) {
10687
+ ctx2.prevAnimationName = getAnimationName(ctx2.styles);
10688
+ }
10689
+ };
10690
+ const onEnd = (event) => {
10691
+ var _a7, _b6, _c5;
10692
+ const animationName = getAnimationName(ctx2.styles);
10693
+ const target = (_c5 = (_b6 = (_a7 = event.composedPath) == null ? void 0 : _a7.call(event)) == null ? void 0 : _b6[0]) != null ? _c5 : event.target;
10694
+ if (target === node && animationName === ctx2.unmountAnimationName) {
10695
+ send({ type: "UNMOUNT", src: "animationend" });
10696
+ }
10697
+ };
10698
+ node.addEventListener("animationstart", onStart);
10699
+ node.addEventListener("animationcancel", onEnd);
10700
+ node.addEventListener("animationend", onEnd);
10701
+ return () => {
10702
+ node.removeEventListener("animationstart", onStart);
10703
+ node.removeEventListener("animationcancel", onEnd);
10704
+ node.removeEventListener("animationend", onEnd);
10705
+ };
10706
+ }
10707
+ }
10708
+ }
10709
+ );
10710
+ }
10711
+ function getAnimationName(styles) {
10712
+ return (styles == null ? void 0 : styles.animationName) || "none";
10713
+ }
10714
+ function parseMs(value) {
10715
+ return parseFloat(value || "0") * 1e3;
10716
+ }
10717
+ var ANIMATION_TIMEOUT_MARGIN = 16.667;
10718
+ var props = createProps()(["onExitComplete", "present", "immediate"]);
10719
+
10720
+ // ../../node_modules/@ark-ui/react/dist/components/presence/use-presence.js
10721
+ var import_react120 = require("react");
10722
+
10723
+ // ../../node_modules/@ark-ui/react/dist/utils/use-event.js
10724
+ var import_react118 = require("react");
10725
+ function useEvent(callback, opts = {}) {
10726
+ const { sync = false } = opts;
10727
+ const callbackRef = useLatestRef(callback);
10728
+ return (0, import_react118.useCallback)(
10729
+ // biome-ignore lint/suspicious/noExplicitAny: <explanation>
10730
+ (...args) => {
10731
+ var _a7;
10732
+ if (sync) return queueMicrotask(() => {
10733
+ var _a8;
10734
+ return (_a8 = callbackRef.current) == null ? void 0 : _a8.call(callbackRef, ...args);
10735
+ });
10736
+ return (_a7 = callbackRef.current) == null ? void 0 : _a7.call(callbackRef, ...args);
10737
+ },
10738
+ [sync, callbackRef]
10739
+ );
10740
+ }
10741
+ function useLatestRef(value) {
10742
+ const ref2 = (0, import_react118.useRef)(value);
10743
+ ref2.current = value;
10744
+ return ref2;
10745
+ }
10746
+
10747
+ // ../../node_modules/@ark-ui/react/dist/components/presence/use-presence.js
10748
+ var usePresence = (props2) => {
10749
+ const { lazyMount, unmountOnExit, ...rest } = props2;
10750
+ const wasEverPresent = (0, import_react120.useRef)(false);
10751
+ const context = {
10752
+ ...rest,
10753
+ onExitComplete: useEvent(props2.onExitComplete)
10754
+ };
10755
+ const [state, send] = useMachine(machine(context), { context });
10756
+ const api = connect(state, send, normalizeProps);
10757
+ if (api.present) {
10758
+ wasEverPresent.current = true;
10759
+ }
10760
+ const unmounted = !api.present && !wasEverPresent.current && lazyMount || unmountOnExit && !api.present && wasEverPresent.current;
10761
+ const getPresenceProps = () => ({
10762
+ "data-state": props2.present ? "open" : "closed",
10763
+ hidden: !api.present
10764
+ });
10765
+ return {
10766
+ ref: api.setNode,
10767
+ getPresenceProps,
10768
+ present: api.present,
10769
+ unmounted
10770
+ };
10771
+ };
10772
+
10773
+ // ../../node_modules/@ark-ui/react/dist/components/dialog/use-dialog-context.js
10774
+ var [DialogProvider, useDialogContext] = createContext2({
10775
+ name: "DialogContext",
10776
+ hookName: "useDialogContext",
10777
+ providerName: "<DialogProvider />"
10778
+ });
10779
+
10780
+ // ../../node_modules/@ark-ui/react/dist/components/dialog/dialog-context.js
10781
+ var DialogContext = (props2) => props2.children(useDialogContext());
10782
+
10783
+ // ../../node_modules/@ark-ui/react/dist/components/presence/split-presence-props.js
10784
+ var splitPresenceProps = (props2) => createSplitProps()(props2, [
10785
+ "immediate",
10786
+ "lazyMount",
10787
+ "onExitComplete",
10788
+ "present",
10789
+ "unmountOnExit"
10790
+ ]);
10791
+
10792
+ // src/components/dialog/dialog.tsx
10793
+ var import_jsx_runtime11 = require("react/jsx-runtime");
10794
+ var DialogContent = (0, import_react121.forwardRef)(
10795
+ function DialogContent2(props2, ref2) {
10796
+ const {
10797
+ children,
10798
+ portalled = true,
10799
+ portalRef,
10800
+ backdrop = true,
10801
+ ...rest
10802
+ } = props2;
10803
+ return /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(import_react122.Portal, { disabled: !portalled, container: portalRef, children: [
10804
+ backdrop && /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(import_react122.Dialog.Backdrop, {}),
10805
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(import_react122.Dialog.Positioner, { children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(import_react122.Dialog.Content, { ref: ref2, ...rest, asChild: false, children }) })
10806
+ ] });
10807
+ }
10808
+ );
10809
+ var DialogCloseTrigger = (0, import_react121.forwardRef)(function DialogCloseTrigger2(props2, ref2) {
10810
+ return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
10811
+ import_react122.Dialog.CloseTrigger,
10812
+ {
10813
+ position: "absolute",
10814
+ top: "2",
10815
+ insetEnd: "2",
10816
+ ...props2,
10817
+ asChild: true,
10818
+ children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(CloseButton, { size: "sm", ref: ref2, children: props2.children })
10819
+ }
10820
+ );
10821
+ });
10822
+ var DialogRoot = import_react122.Dialog.Root;
10823
+ var DialogFooter = import_react122.Dialog.Footer;
10824
+ var DialogHeader = import_react122.Dialog.Header;
10825
+ var DialogBody = import_react122.Dialog.Body;
10826
+ var DialogBackdrop = import_react122.Dialog.Backdrop;
10827
+ var DialogTitle = import_react122.Dialog.Title;
10828
+ var DialogDescription = import_react122.Dialog.Description;
10829
+ var DialogTrigger = import_react122.Dialog.Trigger;
10830
+ var DialogActionTrigger = import_react122.Dialog.ActionTrigger;
10831
+
10832
+ // src/components/drawer/namespace.ts
10833
+ var namespace_exports3 = {};
10834
+ __export(namespace_exports3, {
10835
+ ActionTrigger: () => DrawerActionTrigger,
10836
+ Backdrop: () => DrawerBackdrop,
10837
+ Body: () => DrawerBody,
10838
+ CloseTrigger: () => DrawerCloseTrigger,
10839
+ Content: () => DrawerContent,
10840
+ Context: () => DrawerContext,
10841
+ Description: () => DrawerDescription,
10842
+ Footer: () => DrawerFooter,
10843
+ Header: () => DrawerHeader,
10844
+ Root: () => DrawerRoot,
10845
+ Title: () => DrawerTitle,
10846
+ Trigger: () => DrawerTrigger
10847
+ });
10848
+
10849
+ // src/components/drawer/drawer.tsx
10850
+ var import_react123 = require("react");
10851
+ var import_react124 = require("@chakra-ui/react");
10852
+ var import_jsx_runtime12 = require("react/jsx-runtime");
10853
+ var DrawerContent = (0, import_react123.forwardRef)(
10854
+ function DrawerContent2(props2, ref2) {
10855
+ const { children, portalled = true, portalRef, offset, ...rest } = props2;
10856
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_react124.Portal, { disabled: !portalled, container: portalRef, children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_react124.Drawer.Positioner, { padding: offset, children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_react124.Drawer.Content, { ref: ref2, ...rest, asChild: false, children }) }) });
10857
+ }
10858
+ );
10859
+ var DrawerCloseTrigger = (0, import_react123.forwardRef)(function DrawerCloseTrigger2(props2, ref2) {
10860
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
10861
+ import_react124.Drawer.CloseTrigger,
10862
+ {
10863
+ position: "absolute",
10864
+ top: "2",
10865
+ insetEnd: "2",
10866
+ ...props2,
10867
+ asChild: true,
10868
+ children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(CloseButton, { size: "sm", ref: ref2 })
10869
+ }
10870
+ );
10871
+ });
10872
+ var DrawerTrigger = import_react124.Drawer.Trigger;
10873
+ var DrawerRoot = import_react124.Drawer.Root;
10874
+ var DrawerFooter = import_react124.Drawer.Footer;
10875
+ var DrawerHeader = import_react124.Drawer.Header;
10876
+ var DrawerBody = import_react124.Drawer.Body;
10877
+ var DrawerBackdrop = import_react124.Drawer.Backdrop;
10878
+ var DrawerDescription = import_react124.Drawer.Description;
10879
+ var DrawerTitle = import_react124.Drawer.Title;
10880
+ var DrawerActionTrigger = import_react124.Drawer.ActionTrigger;
10881
+ var DrawerContext = DialogContext;
10882
+
10883
+ // src/components/empty-state/empty-state.tsx
10884
+ var import_react125 = require("@chakra-ui/react");
10885
+ var import_react126 = require("react");
10886
+ var import_jsx_runtime13 = require("react/jsx-runtime");
10887
+ var EmptyState = (0, import_react126.forwardRef)(
10888
+ function EmptyState2(props2, ref2) {
10889
+ const { title, description, icon, children, ...rest } = props2;
10890
+ return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_react125.EmptyState.Root, { ref: ref2, ...rest, children: /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(import_react125.EmptyState.Content, { children: [
10891
+ icon && /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_react125.EmptyState.Indicator, { children: icon }),
10892
+ description ? /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(import_react125.VStack, { textAlign: "center", children: [
10893
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_react125.EmptyState.Title, { children: title }),
10894
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_react125.EmptyState.Description, { children: description })
10895
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_react125.EmptyState.Title, { children: title }),
10896
+ children
10897
+ ] }) });
10898
+ }
10899
+ );
10900
+
10901
+ // src/components/grid-list/grid-list.tsx
10902
+ var grid_list_exports = {};
10903
+ __export(grid_list_exports, {
10904
+ Cell: () => GridListCell,
10905
+ Header: () => GridListHeader,
10906
+ Item: () => GridListItem,
10907
+ Root: () => GridListRoot
10908
+ });
10909
+ var import_grid_list = require("@saas-ui/core/grid-list");
10910
+
10911
+ // src/components/grid-list/grid-list.context.ts
10912
+ var import_react127 = require("@chakra-ui/react");
10913
+ var {
10914
+ withProvider: withProvider2,
10915
+ withContext: withContext3,
10916
+ useStyles: useGridListStyles
10917
+ } = (0, import_react127.createSlotRecipeContext)({
10918
+ key: "suiGridList"
10919
+ });
10920
+
10921
+ // src/components/grid-list/grid-list.tsx
10922
+ var GridListRoot = withProvider2(
10923
+ import_grid_list.GridList.Root,
10924
+ "root"
10925
+ );
10926
+ var GridListItem = withContext3(
10927
+ import_grid_list.GridList.Item,
10928
+ "item"
10929
+ );
10930
+ var GridListHeader = withContext3(
10931
+ import_grid_list.GridList.Header,
10932
+ "header"
10933
+ );
10934
+ var GridListCell = withContext3(
10935
+ import_grid_list.GridList.Cell,
10936
+ "cell"
10937
+ );
10938
+
10939
+ // src/components/icon-badge/icon-badge.tsx
10940
+ var React2 = __toESM(require("react"), 1);
10941
+ var import_react128 = require("react");
10942
+ var import_react129 = require("@chakra-ui/react");
10943
+ var import_utils8 = require("@saas-ui/core/utils");
10944
+ var import_jsx_runtime14 = require("react/jsx-runtime");
10945
+ var IconBadge = React2.forwardRef(
10946
+ (props2, ref2) => {
10947
+ const { icon, children, ...rest } = props2;
10948
+ const recipe = (0, import_react129.useRecipe)({ key: "suiIconBadge", recipe: props2.recipe });
10949
+ const [variantProps, localProps] = recipe.splitVariantProps(rest);
10950
+ const styles = recipe(variantProps);
10951
+ const element = icon || children;
10952
+ const _children = (0, import_react128.isValidElement)(element) ? (0, import_react128.cloneElement)(element, {
10953
+ "aria-hidden": true,
10954
+ focusable: false
10955
+ }) : null;
10956
+ return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
10957
+ import_react129.chakra.div,
10958
+ {
10959
+ ref: ref2,
10960
+ ...localProps,
10961
+ css: [styles, props2.css],
10962
+ className: (0, import_utils8.cx)(recipe.className, props2.className),
10963
+ children: _children
10964
+ }
10965
+ );
10966
+ }
10967
+ );
10968
+
10969
+ // src/components/input-group/input-group.tsx
10970
+ var import_react130 = require("react");
10971
+ var import_react131 = require("@chakra-ui/react");
10972
+ var import_jsx_runtime15 = require("react/jsx-runtime");
10973
+ var InputGroup = (0, import_react130.forwardRef)(
10974
+ function InputGroup2(props2, ref2) {
10975
+ const {
10976
+ startElement,
10977
+ startElementProps,
10978
+ endElement,
10979
+ endElementProps,
10980
+ children,
10981
+ ...rest
10982
+ } = props2;
10983
+ return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(import_react131.Group, { ref: ref2, display: "flex", ...rest, children: [
10984
+ startElement && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_react131.InputElement, { pointerEvents: "none", ...startElementProps, children: startElement }),
10985
+ (0, import_react130.isValidElement)(children) && (0, import_react130.cloneElement)(children, {
10986
+ ...startElement && { ps: "calc(var(--input-height) - 6px)" },
10987
+ ...endElement && { pe: "calc(var(--input-height) - 6px)" },
10988
+ ...children.props
10989
+ }),
10990
+ endElement && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_react131.InputElement, { placement: "end", ...endElementProps, children: endElement })
10991
+ ] });
10992
+ }
10993
+ );
10994
+
10995
+ // src/components/link/link.tsx
10996
+ var import_react132 = __toESM(require("react"), 1);
10997
+ var import_react133 = require("@chakra-ui/react");
10998
+ var import_jsx_runtime16 = require("react/jsx-runtime");
10999
+ var Link = import_react132.default.forwardRef(
11000
+ (props2, ref2) => {
11001
+ const LinkComponent = useLink();
11002
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_react133.Link, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(LinkComponent, { ref: ref2, ...props2 }) });
11003
+ }
11004
+ );
11005
+ Link.displayName = "Link";
11006
+
11007
+ // src/components/loading-overlay/loading-overlay.tsx
11008
+ var loading_overlay_exports = {};
11009
+ __export(loading_overlay_exports, {
11010
+ Root: () => LoadingOverlayRoot,
11011
+ Spinner: () => LoadingOverlaySpinner,
11012
+ Text: () => LoadingOverlayText
11013
+ });
11014
+
11015
+ // ../../node_modules/@ark-ui/react/dist/components/presence/presence.js
11016
+ var import_jsx_runtime17 = require("react/jsx-runtime");
11017
+ var import_react134 = require("react");
11018
+ var Presence = (0, import_react134.forwardRef)((props2, ref2) => {
11019
+ const [presenceProps, localProps] = splitPresenceProps(props2);
11020
+ const presence = usePresence(presenceProps);
11021
+ if (presence.unmounted) {
11022
+ return null;
11023
+ }
11024
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
11025
+ ark.div,
11026
+ {
11027
+ ...localProps,
11028
+ ...presence.getPresenceProps(),
11029
+ "data-scope": "presence",
11030
+ "data-part": "root",
11031
+ ref: composeRefs(presence.ref, ref2)
11032
+ }
11033
+ );
11034
+ });
11035
+ Presence.displayName = "Presence";
11036
+
11037
+ // src/components/loading-overlay/loading-overlay.tsx
11038
+ var import_react138 = require("@chakra-ui/react");
11039
+
11040
+ // src/components/spinner/spinner.tsx
11041
+ var import_react135 = require("react");
11042
+ var import_react136 = require("@chakra-ui/react");
11043
+ var import_jsx_runtime18 = require("react/jsx-runtime");
11044
+ var Spinner2 = (0, import_react135.forwardRef)(
11045
+ function Spinner3(props2, ref2) {
11046
+ const { loading, children, ...rest } = props2;
11047
+ if (loading === false) {
11048
+ return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_jsx_runtime18.Fragment, { children });
11049
+ }
11050
+ return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_react136.Spinner, { ref: ref2, ...rest });
11051
+ }
11052
+ );
11053
+
11054
+ // src/components/loading-overlay/loading-overlay.context.ts
11055
+ var import_react137 = require("@chakra-ui/react");
11056
+ var {
11057
+ useStyles: useLoadingOverlayStyles,
11058
+ withContext: withContext4,
11059
+ withProvider: withProvider3
11060
+ } = (0, import_react137.createSlotRecipeContext)({
11061
+ key: "suiLoadingOverlay"
11062
+ });
11063
+
11064
+ // src/components/loading-overlay/loading-overlay.tsx
11065
+ var import_jsx_runtime19 = require("react/jsx-runtime");
11066
+ var LoadingOverlay = (props2) => {
11067
+ const { children, loading = true, ...rest } = props2;
11068
+ const [presenceProps, rootProps] = splitPresenceProps(rest);
11069
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(Presence, { present: loading, ...presenceProps, asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_react138.chakra.div, { ...rootProps, children }) });
11070
+ };
11071
+ var LoadingOverlayRoot = withProvider3(
11072
+ LoadingOverlay,
11073
+ "root"
11074
+ );
11075
+ LoadingOverlayRoot.displayName = "LoadingOverlay";
11076
+ var LoadingOverlaySpinner = Spinner2;
11077
+ var LoadingOverlayText = withContext4(
11078
+ "p",
11079
+ "text"
11080
+ );
11081
+
11082
+ // src/components/navbar/navbar.tsx
11083
+ var navbar_exports = {};
11084
+ __export(navbar_exports, {
11085
+ Brand: () => NavbarBrand,
11086
+ Content: () => NavbarContent,
11087
+ Item: () => NavbarItem,
11088
+ Link: () => NavbarLink,
11089
+ Root: () => NavbarRoot
11090
+ });
11091
+ var import_navbar = require("@saas-ui/core/navbar");
11092
+
11093
+ // src/components/navbar/navbar.context.ts
11094
+ var import_react139 = require("@chakra-ui/react");
11095
+ var {
11096
+ withProvider: withProvider4,
11097
+ withContext: withContext5,
11098
+ useStyles: useNavbarStyles
11099
+ } = (0, import_react139.createSlotRecipeContext)({
11100
+ key: "suiNavbar"
11101
+ });
11102
+
11103
+ // src/components/navbar/navbar.tsx
11104
+ var NavbarRoot = withProvider4(
11105
+ import_navbar.Navbar.Root,
11106
+ "root"
11107
+ );
11108
+ var NavbarBrand = withContext5(
11109
+ import_navbar.Navbar.Brand,
11110
+ "brand"
11111
+ );
11112
+ var NavbarContent = withContext5(
11113
+ import_navbar.Navbar.Content,
11114
+ "content"
11115
+ );
11116
+ var NavbarItem = withContext5(
11117
+ import_navbar.Navbar.Item,
11118
+ "item"
11119
+ );
11120
+ var NavbarLink = withContext5(
11121
+ import_navbar.Navbar.Link,
11122
+ "link"
11123
+ );
11124
+
11125
+ // src/components/number-input/number-input.tsx
11126
+ var import_react140 = require("react");
11127
+ var import_react141 = require("@chakra-ui/react");
11128
+ var import_jsx_runtime20 = require("react/jsx-runtime");
11129
+ var NumberInput = (0, import_react140.forwardRef)(
11130
+ function NumberInput2(props2, ref2) {
11131
+ const {
11132
+ hideControls,
11133
+ startElement,
11134
+ endElement,
11135
+ inputProps,
11136
+ rootRef,
11137
+ ...rest
11138
+ } = props2;
11139
+ return /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react141.NumberInput.Root, { ref: rootRef, ...rest, children: [
11140
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(InputGroup, { startElement, endElement, children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react141.NumberInput.Input, { ref: ref2, ...inputProps }) }),
11141
+ !hideControls && !endElement ? /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(import_react141.NumberInput.Control, { children: [
11142
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react141.NumberInput.IncrementTrigger, {}),
11143
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_react141.NumberInput.DecrementTrigger, {})
11144
+ ] }) : null
11145
+ ] });
11146
+ }
11147
+ );
11148
+
11149
+ // src/components/menu/menu.tsx
11150
+ var menu_exports = {};
11151
+ __export(menu_exports, {
11152
+ Arrow: () => MenuArrow,
11153
+ CheckboxItem: () => MenuCheckboxItem,
11154
+ Content: () => MenuContent,
11155
+ ContextTrigger: () => MenuContextTrigger,
11156
+ Item: () => MenuItem,
11157
+ ItemCommand: () => MenuItemCommand,
11158
+ ItemGroup: () => MenuItemGroup,
11159
+ ItemText: () => MenuItemText,
11160
+ RadioItem: () => MenuRadioItem,
11161
+ RadioItemGroup: () => MenuRadioItemGroup,
11162
+ Root: () => MenuRoot,
11163
+ Separator: () => MenuSeparator,
11164
+ Trigger: () => MenuTrigger,
11165
+ TriggerItem: () => MenuTriggerItem
11166
+ });
11167
+ var import_react144 = require("react");
11168
+ var import_react145 = require("@chakra-ui/react");
11169
+
11170
+ // ../../node_modules/react-icons/lib/iconBase.mjs
11171
+ var import_react143 = __toESM(require("react"), 1);
11172
+
11173
+ // ../../node_modules/react-icons/lib/iconContext.mjs
11174
+ var import_react142 = __toESM(require("react"), 1);
11175
+ var DefaultContext = {
11176
+ color: void 0,
11177
+ size: void 0,
11178
+ className: void 0,
11179
+ style: void 0,
11180
+ attr: void 0
11181
+ };
11182
+ var IconContext = import_react142.default.createContext && /* @__PURE__ */ import_react142.default.createContext(DefaultContext);
11183
+
11184
+ // ../../node_modules/react-icons/lib/iconBase.mjs
11185
+ var _excluded = ["attr", "size", "title"];
11186
+ function _objectWithoutProperties(source, excluded) {
11187
+ if (source == null) return {};
11188
+ var target = _objectWithoutPropertiesLoose(source, excluded);
11189
+ var key, i;
11190
+ if (Object.getOwnPropertySymbols) {
11191
+ var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
11192
+ for (i = 0; i < sourceSymbolKeys.length; i++) {
11193
+ key = sourceSymbolKeys[i];
11194
+ if (excluded.indexOf(key) >= 0) continue;
11195
+ if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
11196
+ target[key] = source[key];
11197
+ }
11198
+ }
11199
+ return target;
11200
+ }
11201
+ function _objectWithoutPropertiesLoose(source, excluded) {
11202
+ if (source == null) return {};
11203
+ var target = {};
11204
+ for (var key in source) {
11205
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
11206
+ if (excluded.indexOf(key) >= 0) continue;
11207
+ target[key] = source[key];
11208
+ }
11209
+ }
11210
+ return target;
11211
+ }
11212
+ function _extends() {
11213
+ _extends = Object.assign ? Object.assign.bind() : function(target) {
11214
+ for (var i = 1; i < arguments.length; i++) {
11215
+ var source = arguments[i];
11216
+ for (var key in source) {
11217
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
11218
+ target[key] = source[key];
11219
+ }
11220
+ }
11221
+ }
11222
+ return target;
11223
+ };
11224
+ return _extends.apply(this, arguments);
11225
+ }
11226
+ function ownKeys(e, r) {
11227
+ var t = Object.keys(e);
11228
+ if (Object.getOwnPropertySymbols) {
11229
+ var o = Object.getOwnPropertySymbols(e);
11230
+ r && (o = o.filter(function(r2) {
11231
+ return Object.getOwnPropertyDescriptor(e, r2).enumerable;
11232
+ })), t.push.apply(t, o);
11233
+ }
11234
+ return t;
11235
+ }
11236
+ function _objectSpread(e) {
11237
+ for (var r = 1; r < arguments.length; r++) {
11238
+ var t = null != arguments[r] ? arguments[r] : {};
11239
+ r % 2 ? ownKeys(Object(t), true).forEach(function(r2) {
11240
+ _defineProperty(e, r2, t[r2]);
11241
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function(r2) {
11242
+ Object.defineProperty(e, r2, Object.getOwnPropertyDescriptor(t, r2));
11243
+ });
11244
+ }
11245
+ return e;
11246
+ }
11247
+ function _defineProperty(obj, key, value) {
11248
+ key = _toPropertyKey(key);
11249
+ if (key in obj) {
11250
+ Object.defineProperty(obj, key, { value, enumerable: true, configurable: true, writable: true });
11251
+ } else {
11252
+ obj[key] = value;
11253
+ }
11254
+ return obj;
11255
+ }
11256
+ function _toPropertyKey(t) {
11257
+ var i = _toPrimitive(t, "string");
11258
+ return "symbol" == typeof i ? i : i + "";
11259
+ }
11260
+ function _toPrimitive(t, r) {
11261
+ if ("object" != typeof t || !t) return t;
11262
+ var e = t[Symbol.toPrimitive];
11263
+ if (void 0 !== e) {
11264
+ var i = e.call(t, r || "default");
11265
+ if ("object" != typeof i) return i;
11266
+ throw new TypeError("@@toPrimitive must return a primitive value.");
11267
+ }
11268
+ return ("string" === r ? String : Number)(t);
11269
+ }
11270
+ function Tree2Element(tree) {
11271
+ return tree && tree.map((node, i) => /* @__PURE__ */ import_react143.default.createElement(node.tag, _objectSpread({
11272
+ key: i
11273
+ }, node.attr), Tree2Element(node.child)));
11274
+ }
11275
+ function GenIcon(data) {
11276
+ return (props2) => /* @__PURE__ */ import_react143.default.createElement(IconBase, _extends({
11277
+ attr: _objectSpread({}, data.attr)
11278
+ }, props2), Tree2Element(data.child));
11279
+ }
11280
+ function IconBase(props2) {
11281
+ var elem = (conf) => {
11282
+ var {
11283
+ attr,
11284
+ size,
11285
+ title
11286
+ } = props2, svgProps = _objectWithoutProperties(props2, _excluded);
11287
+ var computedSize = size || conf.size || "1em";
11288
+ var className;
11289
+ if (conf.className) className = conf.className;
11290
+ if (props2.className) className = (className ? className + " " : "") + props2.className;
11291
+ return /* @__PURE__ */ import_react143.default.createElement("svg", _extends({
11292
+ stroke: "currentColor",
11293
+ fill: "currentColor",
11294
+ strokeWidth: "0"
11295
+ }, conf.attr, attr, svgProps, {
11296
+ className,
11297
+ style: _objectSpread(_objectSpread({
11298
+ color: props2.color || conf.color
11299
+ }, conf.style), props2.style),
11300
+ height: computedSize,
11301
+ width: computedSize,
11302
+ xmlns: "http://www.w3.org/2000/svg"
11303
+ }), title && /* @__PURE__ */ import_react143.default.createElement("title", null, title), props2.children);
11304
+ };
11305
+ return IconContext !== void 0 ? /* @__PURE__ */ import_react143.default.createElement(IconContext.Consumer, null, (conf) => elem(conf)) : elem(DefaultContext);
11306
+ }
11307
+
11308
+ // ../../node_modules/react-icons/lu/index.mjs
11309
+ function LuCheck(props2) {
11310
+ return GenIcon({ "tag": "svg", "attr": { "viewBox": "0 0 24 24", "fill": "none", "stroke": "currentColor", "strokeWidth": "2", "strokeLinecap": "round", "strokeLinejoin": "round" }, "child": [{ "tag": "polyline", "attr": { "points": "20 6 9 17 4 12" }, "child": [] }] })(props2);
11311
+ }
11312
+ function LuChevronRight(props2) {
11313
+ return GenIcon({ "tag": "svg", "attr": { "viewBox": "0 0 24 24", "fill": "none", "stroke": "currentColor", "strokeWidth": "2", "strokeLinecap": "round", "strokeLinejoin": "round" }, "child": [{ "tag": "path", "attr": { "d": "m9 18 6-6-6-6" }, "child": [] }] })(props2);
11314
+ }
11315
+ function LuEyeOff(props2) {
11316
+ return GenIcon({ "tag": "svg", "attr": { "viewBox": "0 0 24 24", "fill": "none", "stroke": "currentColor", "strokeWidth": "2", "strokeLinecap": "round", "strokeLinejoin": "round" }, "child": [{ "tag": "path", "attr": { "d": "M9.88 9.88a3 3 0 1 0 4.24 4.24" }, "child": [] }, { "tag": "path", "attr": { "d": "M10.73 5.08A10.43 10.43 0 0 1 12 5c7 0 10 7 10 7a13.16 13.16 0 0 1-1.67 2.68" }, "child": [] }, { "tag": "path", "attr": { "d": "M6.61 6.61A13.526 13.526 0 0 0 2 12s3 7 10 7a9.74 9.74 0 0 0 5.39-1.61" }, "child": [] }, { "tag": "line", "attr": { "x1": "2", "x2": "22", "y1": "2", "y2": "22" }, "child": [] }] })(props2);
11317
+ }
11318
+ function LuEye(props2) {
11319
+ return GenIcon({ "tag": "svg", "attr": { "viewBox": "0 0 24 24", "fill": "none", "stroke": "currentColor", "strokeWidth": "2", "strokeLinecap": "round", "strokeLinejoin": "round" }, "child": [{ "tag": "path", "attr": { "d": "M2 12s3-7 10-7 10 7 10 7-3 7-10 7-10-7-10-7Z" }, "child": [] }, { "tag": "circle", "attr": { "cx": "12", "cy": "12", "r": "3" }, "child": [] }] })(props2);
11320
+ }
11321
+
11322
+ // src/components/menu/menu.tsx
11323
+ var import_jsx_runtime21 = require("react/jsx-runtime");
11324
+ var MenuContent = (0, import_react144.forwardRef)(
11325
+ function MenuContent2(props2, ref2) {
11326
+ const { portalled = true, portalRef, ...rest } = props2;
11327
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_react145.Portal, { disabled: !portalled, container: portalRef, children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_react145.Menu.Positioner, { children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_react145.Menu.Content, { ref: ref2, ...rest }) }) });
11328
+ }
11329
+ );
11330
+ var MenuArrow = (0, import_react144.forwardRef)(
11331
+ function MenuArrow2(props2, ref2) {
11332
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_react145.Menu.Arrow, { ref: ref2, ...props2, children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_react145.Menu.ArrowTip, {}) });
11333
+ }
11334
+ );
11335
+ var MenuCheckboxItem = (0, import_react144.forwardRef)(function MenuCheckboxItem2(props2, ref2) {
11336
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(import_react145.Menu.CheckboxItem, { ref: ref2, ...props2, children: [
11337
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_react145.Menu.ItemIndicator, { hidden: false, children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(LuCheck, {}) }),
11338
+ props2.children
11339
+ ] });
11340
+ });
11341
+ var MenuRadioItem = (0, import_react144.forwardRef)(
11342
+ function MenuRadioItem2(props2, ref2) {
11343
+ const { children, ...rest } = props2;
11344
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(import_react145.Menu.RadioItem, { ps: "8", ref: ref2, ...rest, children: [
11345
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_react145.AbsoluteCenter, { axis: "horizontal", left: "4", asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_react145.Menu.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(LuCheck, {}) }) }),
11346
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_react145.Menu.ItemText, { children })
11347
+ ] });
11348
+ }
11349
+ );
11350
+ var MenuItemGroup = (0, import_react144.forwardRef)(
11351
+ function MenuItemGroup2(props2, ref2) {
11352
+ const { title, children, ...rest } = props2;
11353
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(import_react145.Menu.ItemGroup, { ref: ref2, ...rest, children: [
11354
+ title && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_react145.Menu.ItemGroupLabel, { userSelect: "none", children: title }),
11355
+ children
11356
+ ] });
11357
+ }
11358
+ );
11359
+ var MenuTriggerItem = (0, import_react144.forwardRef)(
11360
+ function MenuTriggerItem2(props2, ref2) {
11361
+ const { startIcon, children, ...rest } = props2;
11362
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(import_react145.Menu.TriggerItem, { ref: ref2, ...rest, children: [
11363
+ startIcon,
11364
+ children,
11365
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(LuChevronRight, {})
11366
+ ] });
11367
+ }
11368
+ );
11369
+ var MenuRadioItemGroup = import_react145.Menu.RadioItemGroup;
11370
+ var MenuContextTrigger = import_react145.Menu.ContextTrigger;
11371
+ var MenuRoot = import_react145.Menu.Root;
11372
+ var MenuSeparator = import_react145.Menu.Separator;
11373
+ var MenuItem = import_react145.Menu.Item;
11374
+ var MenuItemText = import_react145.Menu.ItemText;
11375
+ var MenuItemCommand = import_react145.Menu.ItemCommand;
11376
+ var MenuTrigger = import_react145.Menu.Trigger;
11377
+
11378
+ // src/components/password-input/password-input.tsx
11379
+ var import_react146 = require("react");
11380
+ var import_react147 = require("@chakra-ui/react");
11381
+ var import_jsx_runtime22 = require("react/jsx-runtime");
11382
+ var PasswordInput = (0, import_react146.forwardRef)(
11383
+ function PasswordInput2(props2, ref2) {
11384
+ const {
11385
+ rootProps,
11386
+ defaultVisible,
11387
+ visible: visibleProp,
11388
+ onVisibleChange,
11389
+ visibilityIcon = { on: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(LuEye, {}), off: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(LuEyeOff, {}) },
11390
+ ...rest
11391
+ } = props2;
11392
+ const [visible, setVisible] = (0, import_react147.useControllableState)({
11393
+ value: visibleProp,
11394
+ defaultValue: defaultVisible || false,
11395
+ onChange: onVisibleChange
11396
+ });
11397
+ const inputRef = (0, import_react146.useRef)(null);
11398
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
11399
+ InputGroup,
11400
+ {
11401
+ width: "full",
11402
+ endElement: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
11403
+ VisibilityTrigger,
11404
+ {
11405
+ disabled: rest.disabled,
11406
+ onPointerDown: (e) => {
11407
+ if (rest.disabled) return;
11408
+ if (e.button !== 0) return;
11409
+ e.preventDefault();
11410
+ setVisible(!visible);
11411
+ },
11412
+ children: visible ? visibilityIcon.off : visibilityIcon.on
11413
+ }
11414
+ ),
11415
+ ...rootProps,
11416
+ children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
11417
+ import_react147.Input,
11418
+ {
11419
+ ...rest,
11420
+ ref: (0, import_react147.mergeRefs)(ref2, inputRef),
11421
+ type: visible ? "text" : "password"
11422
+ }
11423
+ )
11424
+ }
11425
+ );
11426
+ }
11427
+ );
11428
+ var VisibilityTrigger = (0, import_react146.forwardRef)(
11429
+ function VisibilityTrigger2(props2, ref2) {
11430
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
11431
+ import_react147.IconButton,
11432
+ {
11433
+ tabIndex: -1,
11434
+ ref: ref2,
11435
+ me: "-2",
11436
+ aspectRatio: "square",
11437
+ size: "sm",
11438
+ variant: "ghost",
11439
+ colorPalette: "gray",
11440
+ height: "calc(100% - {spacing.2})",
11441
+ "aria-label": "Toggle password visibility",
11442
+ ...props2
11443
+ }
11444
+ );
11445
+ }
11446
+ );
11447
+
11448
+ // src/components/persona/persona.tsx
11449
+ var React7 = __toESM(require("react"), 1);
11450
+
11451
+ // src/components/persona/persona-primitive.tsx
11452
+ var import_react149 = require("react");
11453
+ var import_react150 = require("@chakra-ui/react");
11454
+ var import_utils9 = require("@saas-ui/core/utils");
11455
+
11456
+ // src/components/persona/persona.context.ts
11457
+ var import_react148 = require("@chakra-ui/react");
11458
+ var {
11459
+ useStyles: usePersonaStyles,
11460
+ withProvider: withProvider5,
11461
+ withContext: withContext6
11462
+ } = (0, import_react148.createSlotRecipeContext)({
11463
+ key: "suiPersona"
11464
+ });
11465
+
11466
+ // src/components/persona/persona-primitive.tsx
11467
+ var import_jsx_runtime23 = require("react/jsx-runtime");
11468
+ var PersonaRoot = withProvider5(
11469
+ (0, import_react149.forwardRef)((props2, ref2) => {
11470
+ const { outOfOffice, presence, ...rest } = props2;
11471
+ return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
11472
+ import_react150.chakra.div,
11473
+ {
11474
+ ref: ref2,
11475
+ ...rest,
11476
+ "data-out-of-office": (0, import_utils9.dataAttr)(outOfOffice),
11477
+ "data-presence": presence,
11478
+ css: [
11479
+ presence ? {
11480
+ "--persona-presence": `colors.presence.${presence}`
11481
+ } : void 0,
11482
+ rest.css
11483
+ ]
11484
+ }
11485
+ );
11486
+ }),
11487
+ "root"
11488
+ );
11489
+ var PersonaAvatar = (0, import_react149.forwardRef)(
11490
+ (props2, ref2) => {
11491
+ const {
11492
+ name,
11493
+ getInitials: getInitials2 = (name2) => name2 == null ? void 0 : name2[0],
11494
+ icon,
11495
+ loading,
11496
+ onError,
11497
+ src,
11498
+ srcSet,
11499
+ children,
11500
+ ...rest
11501
+ } = props2;
11502
+ return /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(import_react150.Avatar.Root, { ref: ref2, ...rest, children: [
11503
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(import_react150.Avatar.Fallback, { children: getInitials2(name) }),
11504
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
11505
+ import_react150.Avatar.Image,
11506
+ {
11507
+ src,
11508
+ srcSet,
11509
+ loading,
11510
+ onError
11511
+ }
11512
+ ),
11513
+ children
11514
+ ] });
11515
+ }
11516
+ );
11517
+ var PersonaPresenceBadge = withContext6("span", "presence");
11518
+ var PersonaDetails = withContext6(
11519
+ "div",
11520
+ "details"
11521
+ );
11522
+ var PersonaLabel = withContext6(
11523
+ "span",
11524
+ "label"
11525
+ );
11526
+ PersonaLabel.displayName = "PersonaLabel";
11527
+ var PersonaSecondaryLabel = withContext6(
11528
+ "span",
11529
+ "secondaryLabel"
11530
+ );
11531
+ var PersonaTertiaryLabel = withContext6(
11532
+ "span",
11533
+ "tertiaryLabel"
11534
+ );
11535
+
11536
+ // src/components/persona/persona.tsx
11537
+ var import_jsx_runtime24 = require("react/jsx-runtime");
11538
+ var Persona = React7.forwardRef(
11539
+ (props2, ref2) => {
11540
+ const {
11541
+ name,
11542
+ presence,
11543
+ presenceIcon,
11544
+ isOutOfOffice,
11545
+ label,
11546
+ secondaryLabel,
11547
+ tertiaryLabel,
11548
+ size,
11549
+ hideDetails,
11550
+ children,
11551
+ /** Avatar props */
11552
+ getInitials: getInitials2,
11553
+ icon,
11554
+ loading,
11555
+ onError,
11556
+ src,
11557
+ srcSet,
11558
+ ...rest
11559
+ } = props2;
11560
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(
11561
+ PersonaRoot,
11562
+ {
11563
+ ref: ref2,
11564
+ outOfOffice: isOutOfOffice,
11565
+ presence,
11566
+ ...rest,
11567
+ children: [
11568
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
11569
+ PersonaAvatar,
11570
+ {
11571
+ name,
11572
+ size,
11573
+ getInitials: getInitials2,
11574
+ icon,
11575
+ loading,
11576
+ onError,
11577
+ src,
11578
+ srcSet,
11579
+ children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(PersonaPresenceBadge, { children: presenceIcon })
11580
+ }
11581
+ ),
11582
+ !hideDetails && /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(PersonaDetails, { children: [
11583
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(PersonaLabel, { children: label || name }),
11584
+ secondaryLabel && /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(PersonaSecondaryLabel, { children: secondaryLabel }),
11585
+ tertiaryLabel && /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(PersonaTertiaryLabel, { children: tertiaryLabel }),
11586
+ children
11587
+ ] })
11588
+ ]
11589
+ }
11590
+ );
11591
+ }
11592
+ );
11593
+ Persona.displayName = "Persona";
11594
+ var PersonaAvatar2 = React7.forwardRef(function PersonaAvatar3(props2, ref2) {
11595
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(Persona, { ref: ref2, ...props2, hideDetails: true });
11596
+ });
11597
+
11598
+ // src/components/persona/presence.ts
11599
+ var defaultPresenceOptions = {
11600
+ online: {
11601
+ label: "Online",
11602
+ color: "presence.online"
11603
+ },
11604
+ offline: {
11605
+ label: "Offline",
11606
+ color: "presence.offline"
11607
+ },
11608
+ busy: {
11609
+ label: "Busy",
11610
+ color: "presence.busy"
11611
+ },
11612
+ dnd: {
11613
+ label: "Do-not-disturb",
11614
+ color: "presence.dnd"
11615
+ },
11616
+ away: {
11617
+ label: "Away",
11618
+ color: "presence.away"
11619
+ }
11620
+ };
11621
+
11622
+ // src/components/pin-input/pin-input.tsx
11623
+ var import_react151 = require("react");
11624
+ var import_react152 = require("@chakra-ui/react");
11625
+ var import_jsx_runtime25 = require("react/jsx-runtime");
11626
+ var PinInput = (0, import_react151.forwardRef)(
11627
+ function PinInput2(props2, ref2) {
11628
+ const {
11629
+ pinLength = 4,
11630
+ inputProps,
11631
+ rootRef,
11632
+ attached,
11633
+ gap = attached ? 0 : 2,
11634
+ ...rest
11635
+ } = props2;
11636
+ return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(import_react152.PinInput.Root, { ref: rootRef, ...rest, children: [
11637
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_react152.PinInput.HiddenInput, { ref: ref2, ...inputProps }),
11638
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_react152.PinInput.Control, { children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_react152.Group, { attached, gap, children: Array.from({ length: pinLength }).map((_, index) => /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_react152.PinInput.Input, { index }, index)) }) })
11639
+ ] });
11640
+ }
11641
+ );
11642
+
11643
+ // src/components/radio/radio.tsx
11644
+ var import_react153 = require("react");
11645
+ var import_react154 = require("@chakra-ui/react");
11646
+ var import_jsx_runtime26 = require("react/jsx-runtime");
11647
+ var Radio = (0, import_react153.forwardRef)(
11648
+ function Radio2(props2, ref2) {
11649
+ const { children, inputProps, rootRef, ...rest } = props2;
11650
+ return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(import_react154.RadioGroup.Item, { ref: rootRef, ...rest, children: [
11651
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_react154.RadioGroup.ItemHiddenInput, { ref: ref2, ...inputProps }),
11652
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_react154.RadioGroup.ItemIndicator, {}),
11653
+ children && /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_react154.RadioGroup.ItemText, { children })
11654
+ ] });
11655
+ }
11656
+ );
11657
+ var RadioGroup = import_react154.RadioGroup.Root;
11658
+
11659
+ // src/components/search-input/search-input.tsx
11660
+ var import_react155 = __toESM(require("react"), 1);
11661
+ var import_react156 = require("@chakra-ui/react");
11662
+ var import_utils10 = require("@saas-ui/core/utils");
11663
+ var import_jsx_runtime27 = require("react/jsx-runtime");
11664
+ var SearchInput = (0, import_react155.forwardRef)(
11665
+ (props2, ref2) => {
11666
+ const {
11667
+ placeholder = "Search",
11668
+ value: valueProp,
11669
+ defaultValue: defaultValueProp,
11670
+ size,
11671
+ variant,
11672
+ width = "full",
11673
+ icon = /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(SearchIcon, {}),
11674
+ resetIcon,
11675
+ endElement: endElementProp,
11676
+ onChange: onChangeProp,
11677
+ onReset: onResetProp,
11678
+ onKeyDown: onKeyDownProp,
11679
+ disabled,
11680
+ ...inputProps
11681
+ } = props2;
11682
+ const inputRef = import_react155.default.useRef(null);
11683
+ const [value, setValue] = (0, import_react156.useControllableState)({
11684
+ value: valueProp,
11685
+ defaultValue: defaultValueProp
11686
+ });
11687
+ const onChange = import_react155.default.useCallback(
11688
+ (e) => {
11689
+ setValue(e.target.value);
11690
+ },
11691
+ [setValue]
11692
+ );
11693
+ const onKeyDown = import_react155.default.useCallback(
11694
+ (event) => {
11695
+ if (event.key === "Escape") {
11696
+ setValue("");
11697
+ onReset();
11698
+ }
11699
+ },
11700
+ [onResetProp, setValue]
11701
+ );
11702
+ const onReset = () => {
11703
+ var _a7;
11704
+ setValue("");
11705
+ onResetProp == null ? void 0 : onResetProp();
11706
+ (_a7 = inputRef.current) == null ? void 0 : _a7.focus();
11707
+ };
11708
+ const showReset = value && !props2.disabled;
11709
+ const endElement = showReset ? /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(SearchInputResetButton, { size, children: resetIcon }) : endElementProp;
11710
+ return /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(import_react156.Group, { width, children: [
11711
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
11712
+ import_react156.InputElement,
11713
+ {
11714
+ placement: "start",
11715
+ px: "0",
11716
+ aspectRatio: "9/10",
11717
+ fontSize: size,
11718
+ children: icon
11719
+ }
11720
+ ),
11721
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
11722
+ import_react156.Input,
11723
+ {
11724
+ type: "text",
11725
+ placeholder,
11726
+ variant,
11727
+ size,
11728
+ value,
11729
+ disabled,
11730
+ ref: (0, import_react156.mergeRefs)(ref2, inputRef),
11731
+ onChange: (0, import_utils10.callAll)(onChange, onChangeProp),
11732
+ onKeyDown: (0, import_utils10.callAll)(onKeyDown, onKeyDownProp),
11733
+ ps: "calc(var(--input-height) - var(--input-height) / 10)",
11734
+ pe: "calc(var(--input-height) - var(--input-height) / 10)",
11735
+ ...inputProps
11736
+ }
11737
+ ),
11738
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_react156.InputElement, { placement: "end", children: endElement })
11739
+ ] });
11740
+ }
11741
+ );
11742
+ var SearchInputResetButton = (0, import_react155.forwardRef)(
11743
+ (props2, ref2) => {
11744
+ const { children = /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(CloseIcon, {}), ...rest } = props2;
11745
+ return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
11746
+ import_react156.IconButton,
11747
+ {
11748
+ ref: ref2,
11749
+ variant: "ghost",
11750
+ "aria-label": "Reset search",
11751
+ me: "-2",
11752
+ aspectRatio: "square",
11753
+ height: "calc(100% - {spacing.2})",
11754
+ ...rest,
11755
+ children
11756
+ }
11757
+ );
11758
+ }
11759
+ );
11760
+ SearchInput.displayName = "SearchInput";
11761
+
11762
+ // src/components/select/namespace.ts
11763
+ var namespace_exports4 = {};
11764
+ __export(namespace_exports4, {
11765
+ Content: () => SelectContent,
11766
+ Item: () => SelectItem,
11767
+ ItemGroup: () => SelectItemGroup,
11768
+ ItemText: () => SelectItemText,
11769
+ Label: () => SelectLabel,
11770
+ Root: () => SelectRoot,
11771
+ Trigger: () => SelectTrigger,
11772
+ ValueText: () => SelectValueText
11773
+ });
11774
+
11775
+ // src/components/select/select.tsx
11776
+ var import_react157 = require("react");
11777
+ var import_react158 = require("@chakra-ui/react");
11778
+ var import_jsx_runtime28 = require("react/jsx-runtime");
11779
+ var SelectTrigger = (0, import_react157.forwardRef)(
11780
+ function SelectTrigger2(props2, ref2) {
11781
+ const { children, clearable, ...rest } = props2;
11782
+ return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(import_react158.Select.Control, { ...rest, children: [
11783
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_react158.Select.Trigger, { ref: ref2, children }),
11784
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(import_react158.Select.IndicatorGroup, { children: [
11785
+ clearable && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(SelectClearTrigger, {}),
11786
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_react158.Select.Indicator, {})
11787
+ ] })
11788
+ ] });
11789
+ }
11790
+ );
11791
+ var SelectClearTrigger = (0, import_react157.forwardRef)(function SelectClearTrigger2(props2, ref2) {
11792
+ return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_react158.Select.ClearTrigger, { asChild: true, ...props2, ref: ref2, children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
11793
+ CloseButton,
11794
+ {
11795
+ size: "xs",
11796
+ variant: "plain",
11797
+ focusVisibleRing: "inside",
11798
+ focusRingWidth: "2px",
11799
+ pointerEvents: "auto"
11800
+ }
11801
+ ) });
11802
+ });
11803
+ var SelectContent = (0, import_react157.forwardRef)(
11804
+ function SelectContent2(props2, ref2) {
11805
+ const { portalled = true, portalRef, ...rest } = props2;
11806
+ return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_react158.Portal, { disabled: !portalled, container: portalRef, children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_react158.Select.Positioner, { children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_react158.Select.Content, { ...rest, ref: ref2 }) }) });
11807
+ }
11808
+ );
11809
+ var SelectItem = (0, import_react157.forwardRef)(
11810
+ function SelectItem2(props2, ref2) {
11811
+ const { item, children, ...rest } = props2;
11812
+ return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(import_react158.Select.Item, { item, ...rest, ref: ref2, children: [
11813
+ children,
11814
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_react158.Select.ItemIndicator, {})
11815
+ ] }, item.value);
11816
+ }
11817
+ );
11818
+ var SelectValueText = (0, import_react157.forwardRef)(function SelectValueText2(props2, ref2) {
11819
+ const { children, ...rest } = props2;
11820
+ return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_react158.Select.ValueText, { ...rest, ref: ref2, children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_react158.Select.Context, { children: (select) => {
11821
+ const items = select.selectedItems;
11822
+ if (items.length === 0) return props2.placeholder;
11823
+ if (children) return children(items);
11824
+ if (items.length === 1)
11825
+ return select.collection.stringifyItem(items[0]);
11826
+ return `${items.length} selected`;
11827
+ } }) });
11828
+ });
11829
+ var SelectRoot = (0, import_react157.forwardRef)(function SelectRoot2(props2, ref2) {
11830
+ return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
11831
+ import_react158.Select.Root,
11832
+ {
11833
+ ...props2,
11834
+ ref: ref2,
11835
+ positioning: { sameWidth: true, ...props2.positioning }
11836
+ }
11837
+ );
11838
+ });
11839
+ var SelectItemGroup = (0, import_react157.forwardRef)(
11840
+ function SelectItemGroup2(props2, ref2) {
11841
+ const { children, label, ...rest } = props2;
11842
+ return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(import_react158.Select.ItemGroup, { ...rest, ref: ref2, children: [
11843
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_react158.Select.ItemGroupLabel, { children: label }),
11844
+ children
11845
+ ] });
11846
+ }
11847
+ );
11848
+ var SelectLabel = import_react158.Select.Label;
11849
+ var SelectItemText = import_react158.Select.ItemText;
11850
+
11851
+ // src/components/sidebar/sidebar.tsx
11852
+ var sidebar_exports = {};
11853
+ __export(sidebar_exports, {
11854
+ Backdrop: () => SidebarBackdrop,
11855
+ Body: () => SidebarBody,
11856
+ FlyoutTrigger: () => SidebarFlyoutTrigger,
11857
+ Footer: () => SidebarFooter,
11858
+ Group: () => SidebarGroup,
11859
+ GroupContent: () => SidebarGroupContent,
11860
+ GroupEndElement: () => SidebarGroupEndElement,
11861
+ GroupHeader: () => SidebarGroupHeader,
11862
+ GroupTitle: () => SidebarGroupTitle,
11863
+ Header: () => SidebarHeader,
11864
+ NavButton: () => SidebarNavButton,
11865
+ NavItem: () => SidebarNavItem,
11866
+ NavItemEndElement: () => SidebarNavItemEndElement,
11867
+ Provider: () => SidebarProvider,
11868
+ Root: () => SidebarRoot,
11869
+ Track: () => SidebarTrack,
11870
+ Trigger: () => SidebarTrigger
11871
+ });
11872
+ var import_sidebar = require("@saas-ui/core/sidebar");
11873
+
11874
+ // src/components/sidebar/sidebar.context.ts
11875
+ var import_react159 = require("@chakra-ui/react");
11876
+ var {
11877
+ withContext: withContext7,
11878
+ useRecipeResult,
11879
+ StylesProvider,
11880
+ ClassNamesProvider,
11881
+ useStyles: useSidebarStyles
11882
+ } = (0, import_react159.createSlotRecipeContext)({
11883
+ key: "suiSidebar"
11884
+ });
11885
+ var {
11886
+ withProvider: withItemProvider,
11887
+ withContext: withItemContext,
11888
+ useStyles: useSidebarItemStyles
11889
+ } = (0, import_react159.createSlotRecipeContext)({
11890
+ key: "suiSidebarNavItem"
11891
+ });
11892
+
11893
+ // src/components/sidebar/sidebar.tsx
11894
+ var import_jsx_runtime29 = require("react/jsx-runtime");
11895
+ var SidebarProvider = function SidebarProvider2(props2) {
11896
+ return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(import_sidebar.Sidebar.Provider, { ...props2, children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(RecipeProvider, { ...props2, children: props2.children }) });
11897
+ };
11898
+ function RecipeProvider(props2) {
11899
+ const { mode } = (0, import_sidebar.useSidebar)();
11900
+ const { styles, classNames } = useRecipeResult({
11901
+ ...props2,
11902
+ mode
11903
+ });
11904
+ return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(StylesProvider, { value: styles, children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(ClassNamesProvider, { value: classNames, children: props2.children }) });
11905
+ }
11906
+ var SidebarRoot = withContext7(
11907
+ import_sidebar.Sidebar.Root,
11908
+ "root"
11909
+ );
11910
+ var SidebarTrigger = withContext7(
11911
+ import_sidebar.Sidebar.Trigger,
11912
+ "trigger",
11913
+ {
11914
+ forwardAsChild: true
11915
+ }
11916
+ );
11917
+ var SidebarFlyoutTrigger = withContext7(import_sidebar.Sidebar.FlyoutTrigger, "flyoutTrigger", {
11918
+ forwardAsChild: true
11919
+ });
11920
+ var SidebarBackdrop = withContext7(
11921
+ import_sidebar.Sidebar.Backdrop,
11922
+ "backdrop",
11923
+ {
11924
+ forwardAsChild: true
11925
+ }
11926
+ );
11927
+ var SidebarHeader = withContext7(
11928
+ import_sidebar.Sidebar.Header,
11929
+ "header"
11930
+ );
11931
+ var SidebarBody = withContext7(
11932
+ import_sidebar.Sidebar.Body,
11933
+ "body"
11934
+ );
11935
+ var SidebarFooter = withContext7(
11936
+ import_sidebar.Sidebar.Footer,
11937
+ "footer"
11938
+ );
11939
+ var SidebarTrack = withContext7(
11940
+ import_sidebar.Sidebar.Track,
11941
+ "track",
11942
+ {
11943
+ forwardAsChild: true
11944
+ }
11945
+ );
11946
+ var SidebarGroup = withContext7(
11947
+ import_sidebar.Sidebar.Group,
11948
+ "group",
11949
+ {
11950
+ defaultProps: {
11951
+ role: "group"
11952
+ }
11953
+ }
11954
+ );
11955
+ var SidebarGroupHeader = withContext7(
11956
+ import_sidebar.Sidebar.GroupHeader,
11957
+ "groupHeader"
11958
+ );
11959
+ var SidebarGroupTitle = withContext7(import_sidebar.Sidebar.GroupTitle, "groupTitle");
11960
+ var SidebarGroupEndElement = withContext7(import_sidebar.Sidebar.GroupEndElement, "groupEndElement");
11961
+ var SidebarGroupContent = withContext7(
11962
+ import_sidebar.Sidebar.GroupContent,
11963
+ "groupContent"
11964
+ );
11965
+ var SidebarNavItem = withItemProvider(
11966
+ import_sidebar.Sidebar.NavItem,
11967
+ "item"
11968
+ );
11969
+ var SidebarNavButton = withItemContext(import_sidebar.Sidebar.NavButton, "button", {
11970
+ forwardAsChild: true
11971
+ });
11972
+ var SidebarNavItemEndElement = withItemContext(import_sidebar.Sidebar.NavItemEndElement, "endElement");
11973
+
11974
+ // src/components/sidebar/index.ts
11975
+ var import_sidebar2 = require("@saas-ui/core/sidebar");
11976
+
11977
+ // src/components/toaster/toaster.tsx
11978
+ var import_react160 = require("@chakra-ui/react");
11979
+ var import_jsx_runtime30 = require("react/jsx-runtime");
11980
+ var toast = (0, import_react160.createToaster)({
11981
+ placement: "bottom-end",
11982
+ pauseOnPageIdle: true
11983
+ });
11984
+ var Toaster = () => {
11985
+ return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(import_react160.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(import_react160.Toaster, { toaster: toast, insetInline: { mdDown: "4" }, children: (toast2) => {
11986
+ var _a7;
11987
+ return /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(import_react160.Toast.Root, { width: { md: "sm" }, children: [
11988
+ toast2.type === "loading" ? /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(import_react160.Spinner, { size: "sm", color: "colorPalette.solid" }) : /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(import_react160.Toast.Indicator, {}),
11989
+ /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(import_react160.Stack, { gap: "1", flex: "1", maxWidth: "100%", children: [
11990
+ toast2.title && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(import_react160.Toast.Title, { children: toast2.title }),
11991
+ toast2.description && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(import_react160.Toast.Description, { children: toast2.description })
11992
+ ] }),
11993
+ toast2.action && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(import_react160.Toast.ActionTrigger, { children: toast2.action.label }),
11994
+ ((_a7 = toast2.meta) == null ? void 0 : _a7.closable) && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(import_react160.Toast.CloseTrigger, {})
11995
+ ] });
11996
+ } }) });
11997
+ };
11998
+
11999
+ // src/components/steps/steps.tsx
12000
+ var steps_exports = {};
12001
+ __export(steps_exports, {
12002
+ CompletedContent: () => StepsCompletedContent,
12003
+ Content: () => StepsContent,
12004
+ Indicator: () => StepsIndicator,
12005
+ Item: () => StepsItem,
12006
+ List: () => StepsList,
12007
+ NextTrigger: () => StepsNextTrigger,
12008
+ PrevTrigger: () => StepsPrevTrigger,
12009
+ Root: () => StepsRoot
12010
+ });
12011
+ var import_react161 = require("@chakra-ui/react");
12012
+ var import_jsx_runtime31 = require("react/jsx-runtime");
12013
+ var StepsItem = (props2) => {
12014
+ const { title, description, completedIcon, icon, ...rest } = props2;
12015
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(import_react161.Steps.Item, { ...rest, children: [
12016
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(import_react161.Steps.Trigger, { children: [
12017
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_react161.Steps.Indicator, { children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
12018
+ import_react161.Steps.Status,
12019
+ {
12020
+ complete: completedIcon || /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(CheckIcon, {}),
12021
+ incomplete: icon || /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_react161.Steps.Number, {})
12022
+ }
12023
+ ) }),
12024
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(StepInfo, { title, description })
12025
+ ] }),
12026
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_react161.Steps.Separator, {})
12027
+ ] });
12028
+ };
12029
+ var StepInfo = (props2) => {
12030
+ const { title, description } = props2;
12031
+ if (title && description) {
12032
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(import_react161.Box, { children: [
12033
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_react161.Steps.Title, { children: title }),
12034
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_react161.Steps.Description, { children: description })
12035
+ ] });
12036
+ }
12037
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(import_jsx_runtime31.Fragment, { children: [
12038
+ title && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_react161.Steps.Title, { children: title }),
12039
+ description && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_react161.Steps.Description, { children: description })
12040
+ ] });
12041
+ };
12042
+ var StepsIndicator = (props2) => {
12043
+ const { icon = /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_react161.Steps.Number, {}), completedIcon } = props2;
12044
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_react161.Steps.Indicator, { children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_react161.Steps.Status, { complete: completedIcon, incomplete: icon }) });
12045
+ };
12046
+ var StepsList = import_react161.Steps.List;
12047
+ var StepsRoot = import_react161.Steps.Root;
12048
+ var StepsContent = import_react161.Steps.Content;
12049
+ var StepsCompletedContent = import_react161.Steps.CompletedContent;
12050
+ var StepsNextTrigger = (props2) => {
12051
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_react161.Steps.NextTrigger, { ...props2 });
12052
+ };
12053
+ var StepsPrevTrigger = (props2) => {
12054
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_react161.Steps.PrevTrigger, { ...props2 });
12055
+ };
12056
+
12057
+ // src/components/switch/switch.tsx
12058
+ var import_react162 = require("@chakra-ui/react");
12059
+ var import_react163 = require("react");
12060
+ var import_jsx_runtime32 = require("react/jsx-runtime");
12061
+ var Switch = (0, import_react163.forwardRef)(
12062
+ function Switch2(props2, ref2) {
12063
+ const { inputProps, children, rootRef, trackLabel, thumbLabel, ...rest } = props2;
12064
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(import_react162.Switch.Root, { ref: rootRef, ...rest, children: [
12065
+ /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_react162.Switch.HiddenInput, { ref: ref2, ...inputProps }),
12066
+ /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(import_react162.Switch.Control, { children: [
12067
+ /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_react162.Switch.Thumb, { children: thumbLabel && /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_react162.Switch.ThumbIndicator, { fallback: thumbLabel == null ? void 0 : thumbLabel.off, children: thumbLabel == null ? void 0 : thumbLabel.on }) }),
12068
+ trackLabel && /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_react162.Switch.Indicator, { fallback: trackLabel.off, children: trackLabel.on })
12069
+ ] }),
12070
+ children != null && /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_react162.Switch.Label, { children })
12071
+ ] });
12072
+ }
12073
+ );
12074
+
12075
+ // src/components/tooltip/tooltip.tsx
12076
+ var import_react164 = require("react");
12077
+ var import_react165 = require("@chakra-ui/react");
12078
+ var import_jsx_runtime33 = require("react/jsx-runtime");
12079
+ var Tooltip = (0, import_react164.forwardRef)(
12080
+ function Tooltip2(props2, ref2) {
12081
+ const {
12082
+ showArrow,
12083
+ children,
12084
+ disabled,
12085
+ portalled,
12086
+ content,
12087
+ contentProps,
12088
+ portalRef,
12089
+ ...rest
12090
+ } = props2;
12091
+ if (disabled) return children;
12092
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(import_react165.Tooltip.Root, { ...rest, children: [
12093
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_react165.Tooltip.Trigger, { asChild: true, children }),
12094
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_react165.Portal, { disabled: !portalled, container: portalRef, children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_react165.Tooltip.Positioner, { children: /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(import_react165.Tooltip.Content, { ref: ref2, ...contentProps, children: [
12095
+ showArrow && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_react165.Tooltip.Arrow, { children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_react165.Tooltip.ArrowTip, {}) }),
12096
+ content
12097
+ ] }) }) })
12098
+ ] });
12099
+ }
12100
+ );
8440
12101
  // Annotate the CommonJS export names for ESM import in node:
8441
12102
  0 && (module.exports = {
12103
+ AppShell,
12104
+ Avatar,
12105
+ AvatarGroup,
12106
+ Breadcrumb,
12107
+ Button,
12108
+ Checkbox,
12109
+ CloseButton,
12110
+ Command,
12111
+ Dialog,
12112
+ Drawer,
12113
+ EmptyState,
12114
+ GridList,
12115
+ IconBadge,
12116
+ InputGroup,
12117
+ Link,
12118
+ LoadingOverlay,
12119
+ Menu,
12120
+ Navbar,
12121
+ NumberInput,
12122
+ PasswordInput,
12123
+ Persona,
12124
+ PersonaAvatar,
12125
+ PinInput,
12126
+ Radio,
12127
+ RadioGroup,
12128
+ SearchInput,
12129
+ Select,
12130
+ Sidebar,
12131
+ Spinner,
12132
+ Steps,
8442
12133
  SuiContext,
8443
12134
  SuiProvider,
12135
+ Switch,
12136
+ Toaster,
12137
+ Tooltip,
8444
12138
  createSystem,
8445
12139
  defaultConfig,
12140
+ defaultPresenceOptions,
8446
12141
  defaultSystem,
12142
+ toast,
8447
12143
  useLink,
8448
- useSui,
8449
- ...require("@saas-ui/core")
12144
+ useLoadingOverlayStyles,
12145
+ useSidebar,
12146
+ useSidebarItemStyles,
12147
+ useSidebarStyles,
12148
+ useSui
8450
12149
  });