@hexclave/ui 1.0.0 → 1.0.2

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 (144) hide show
  1. package/dist/components/action-dialog.d.ts +3 -3
  2. package/dist/components/action-dialog.d.ts.map +1 -1
  3. package/dist/components/action-dialog.js.map +1 -1
  4. package/dist/components/brand-icons.js +3 -3
  5. package/dist/components/brand-icons.js.map +1 -1
  6. package/dist/components/copy-button.d.ts +2 -2
  7. package/dist/components/copy-button.js +2 -2
  8. package/dist/components/copy-button.js.map +1 -1
  9. package/dist/components/data-table/data-table.js +2 -2
  10. package/dist/components/data-table/data-table.js.map +1 -1
  11. package/dist/components/data-table/toolbar.js +3 -3
  12. package/dist/components/data-table/toolbar.js.map +1 -1
  13. package/dist/components/ui/accordion.js +4 -4
  14. package/dist/components/ui/accordion.js.map +1 -1
  15. package/dist/components/ui/alert.js +4 -4
  16. package/dist/components/ui/alert.js.map +1 -1
  17. package/dist/components/ui/avatar.js +4 -4
  18. package/dist/components/ui/avatar.js.map +1 -1
  19. package/dist/components/ui/badge.js +2 -2
  20. package/dist/components/ui/badge.js.map +1 -1
  21. package/dist/components/ui/breadcrumb.js +6 -6
  22. package/dist/components/ui/breadcrumb.js.map +1 -1
  23. package/dist/components/ui/button.js +7 -7
  24. package/dist/components/ui/button.js.map +1 -1
  25. package/dist/components/ui/card.js +8 -8
  26. package/dist/components/ui/card.js.map +1 -1
  27. package/dist/components/ui/checkbox.js +2 -2
  28. package/dist/components/ui/checkbox.js.map +1 -1
  29. package/dist/components/ui/command.js +8 -8
  30. package/dist/components/ui/command.js.map +1 -1
  31. package/dist/components/ui/context-menu.js +9 -9
  32. package/dist/components/ui/context-menu.js.map +1 -1
  33. package/dist/components/ui/dialog.js +5 -5
  34. package/dist/components/ui/dialog.js.map +1 -1
  35. package/dist/components/ui/dropdown-menu.js +16 -16
  36. package/dist/components/ui/dropdown-menu.js.map +1 -1
  37. package/dist/components/ui/form.js +8 -8
  38. package/dist/components/ui/form.js.map +1 -1
  39. package/dist/components/ui/hover-card.js +2 -2
  40. package/dist/components/ui/hover-card.js.map +1 -1
  41. package/dist/components/ui/inline-code.js +7 -7
  42. package/dist/components/ui/inline-code.js.map +1 -1
  43. package/dist/components/ui/input-otp.js +5 -5
  44. package/dist/components/ui/input-otp.js.map +1 -1
  45. package/dist/components/ui/input.js +3 -3
  46. package/dist/components/ui/input.js.map +1 -1
  47. package/dist/components/ui/label.js +3 -3
  48. package/dist/components/ui/label.js.map +1 -1
  49. package/dist/components/ui/menubar.js +2 -2
  50. package/dist/components/ui/menubar.js.map +1 -1
  51. package/dist/components/ui/navigation-menu.js +7 -7
  52. package/dist/components/ui/navigation-menu.js.map +1 -1
  53. package/dist/components/ui/password-input.js +2 -2
  54. package/dist/components/ui/password-input.js.map +1 -1
  55. package/dist/components/ui/popover.js +2 -2
  56. package/dist/components/ui/popover.js.map +1 -1
  57. package/dist/components/ui/progress.js +2 -2
  58. package/dist/components/ui/progress.js.map +1 -1
  59. package/dist/components/ui/radio-group.js +3 -3
  60. package/dist/components/ui/radio-group.js.map +1 -1
  61. package/dist/components/ui/resizable.d.ts +1 -1
  62. package/dist/components/ui/resizable.d.ts.map +1 -1
  63. package/dist/components/ui/scroll-area.js +3 -3
  64. package/dist/components/ui/scroll-area.js.map +1 -1
  65. package/dist/components/ui/select.js +8 -8
  66. package/dist/components/ui/select.js.map +1 -1
  67. package/dist/components/ui/separator.js +2 -2
  68. package/dist/components/ui/separator.js.map +1 -1
  69. package/dist/components/ui/sheet.js +5 -5
  70. package/dist/components/ui/sheet.js.map +1 -1
  71. package/dist/components/ui/slider.js +2 -2
  72. package/dist/components/ui/slider.js.map +1 -1
  73. package/dist/components/ui/spinner.js +2 -2
  74. package/dist/components/ui/spinner.js.map +1 -1
  75. package/dist/components/ui/switch.js +9 -9
  76. package/dist/components/ui/switch.js.map +1 -1
  77. package/dist/components/ui/table.js +9 -9
  78. package/dist/components/ui/table.js.map +1 -1
  79. package/dist/components/ui/tabs.js +4 -4
  80. package/dist/components/ui/tabs.js.map +1 -1
  81. package/dist/components/ui/textarea.js +2 -2
  82. package/dist/components/ui/textarea.js.map +1 -1
  83. package/dist/components/ui/toast.js +7 -7
  84. package/dist/components/ui/toast.js.map +1 -1
  85. package/dist/components/ui/toggle-group.js +3 -3
  86. package/dist/components/ui/toggle-group.js.map +1 -1
  87. package/dist/components/ui/toggle.js +2 -2
  88. package/dist/components/ui/toggle.js.map +1 -1
  89. package/dist/components/ui/tooltip.js +3 -3
  90. package/dist/components/ui/tooltip.js.map +1 -1
  91. package/dist/components/ui/typography.d.ts +1 -1
  92. package/dist/components/ui/typography.js +2 -2
  93. package/dist/components/ui/typography.js.map +1 -1
  94. package/dist/esm/components/action-dialog.d.ts +3 -3
  95. package/dist/esm/components/action-dialog.d.ts.map +1 -1
  96. package/dist/esm/components/action-dialog.js.map +1 -1
  97. package/dist/esm/components/brand-icons.js.map +1 -1
  98. package/dist/esm/components/copy-button.d.ts +2 -2
  99. package/dist/esm/components/copy-button.js.map +1 -1
  100. package/dist/esm/components/data-table/data-table.js.map +1 -1
  101. package/dist/esm/components/data-table/toolbar.js.map +1 -1
  102. package/dist/esm/components/ui/accordion.js.map +1 -1
  103. package/dist/esm/components/ui/alert.js.map +1 -1
  104. package/dist/esm/components/ui/avatar.js.map +1 -1
  105. package/dist/esm/components/ui/badge.js.map +1 -1
  106. package/dist/esm/components/ui/breadcrumb.js.map +1 -1
  107. package/dist/esm/components/ui/button.js.map +1 -1
  108. package/dist/esm/components/ui/card.js.map +1 -1
  109. package/dist/esm/components/ui/checkbox.js.map +1 -1
  110. package/dist/esm/components/ui/command.js.map +1 -1
  111. package/dist/esm/components/ui/context-menu.js.map +1 -1
  112. package/dist/esm/components/ui/dialog.js.map +1 -1
  113. package/dist/esm/components/ui/dropdown-menu.js.map +1 -1
  114. package/dist/esm/components/ui/form.js.map +1 -1
  115. package/dist/esm/components/ui/hover-card.js.map +1 -1
  116. package/dist/esm/components/ui/inline-code.js.map +1 -1
  117. package/dist/esm/components/ui/input-otp.js.map +1 -1
  118. package/dist/esm/components/ui/input.js.map +1 -1
  119. package/dist/esm/components/ui/label.js.map +1 -1
  120. package/dist/esm/components/ui/menubar.js.map +1 -1
  121. package/dist/esm/components/ui/navigation-menu.js.map +1 -1
  122. package/dist/esm/components/ui/password-input.js.map +1 -1
  123. package/dist/esm/components/ui/popover.js.map +1 -1
  124. package/dist/esm/components/ui/progress.js.map +1 -1
  125. package/dist/esm/components/ui/radio-group.js.map +1 -1
  126. package/dist/esm/components/ui/resizable.d.ts +1 -1
  127. package/dist/esm/components/ui/resizable.d.ts.map +1 -1
  128. package/dist/esm/components/ui/scroll-area.js.map +1 -1
  129. package/dist/esm/components/ui/select.js.map +1 -1
  130. package/dist/esm/components/ui/separator.js.map +1 -1
  131. package/dist/esm/components/ui/sheet.js.map +1 -1
  132. package/dist/esm/components/ui/slider.js.map +1 -1
  133. package/dist/esm/components/ui/spinner.js.map +1 -1
  134. package/dist/esm/components/ui/switch.js.map +1 -1
  135. package/dist/esm/components/ui/table.js.map +1 -1
  136. package/dist/esm/components/ui/tabs.js.map +1 -1
  137. package/dist/esm/components/ui/textarea.js.map +1 -1
  138. package/dist/esm/components/ui/toast.js.map +1 -1
  139. package/dist/esm/components/ui/toggle-group.js.map +1 -1
  140. package/dist/esm/components/ui/toggle.js.map +1 -1
  141. package/dist/esm/components/ui/tooltip.js.map +1 -1
  142. package/dist/esm/components/ui/typography.d.ts +1 -1
  143. package/dist/esm/components/ui/typography.js.map +1 -1
  144. package/package.json +3 -3
@@ -5,19 +5,19 @@ const require_chunk = require('../../chunk-BE-pF4vm.js');
5
5
  let react = require("react");
6
6
  react = require_chunk.__toESM(react);
7
7
  let react_jsx_runtime = require("react/jsx-runtime");
8
- let _stackframe_stack_shared_dist_utils_errors = require("@hexclave/shared/dist/utils/errors");
9
- let _stackframe_stack_shared_dist_utils_react = require("@hexclave/shared/dist/utils/react");
8
+ let _hexclave_shared_dist_utils_errors = require("@hexclave/shared/dist/utils/errors");
9
+ let _hexclave_shared_dist_utils_react = require("@hexclave/shared/dist/utils/react");
10
10
  let _radix_ui_react_icons = require("@radix-ui/react-icons");
11
11
  let ______lib_utils_js = require("../../lib/utils.js");
12
- let _stackframe_stack_shared_dist_utils_promises = require("@hexclave/shared/dist/utils/promises");
13
- let _stackframe_stack_shared_dist_hooks_use_async_callback = require("@hexclave/shared/dist/hooks/use-async-callback");
12
+ let _hexclave_shared_dist_utils_promises = require("@hexclave/shared/dist/utils/promises");
13
+ let _hexclave_shared_dist_hooks_use_async_callback = require("@hexclave/shared/dist/hooks/use-async-callback");
14
14
  let __spinner_js = require("./spinner.js");
15
15
  let _radix_ui_react_dropdown_menu = require("@radix-ui/react-dropdown-menu");
16
16
  _radix_ui_react_dropdown_menu = require_chunk.__toESM(_radix_ui_react_dropdown_menu);
17
17
 
18
18
  //#region src/components/ui/dropdown-menu.tsx
19
19
  const DropdownMenuContext = react.default.createContext(void 0);
20
- const DropdownMenu = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeeded)(({ ...props }, ref) => {
20
+ const DropdownMenu = (0, _hexclave_shared_dist_utils_react.forwardRefIfNeeded)(({ ...props }, ref) => {
21
21
  const [open, setOpen] = react.default.useState(!!props.open);
22
22
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DropdownMenuContext.Provider, {
23
23
  value: {
@@ -43,29 +43,29 @@ const DropdownMenuGroup = _radix_ui_react_dropdown_menu.Group;
43
43
  const DropdownMenuPortal = _radix_ui_react_dropdown_menu.Portal;
44
44
  const DropdownMenuSub = _radix_ui_react_dropdown_menu.Sub;
45
45
  const DropdownMenuRadioGroup = _radix_ui_react_dropdown_menu.RadioGroup;
46
- const DropdownMenuSubTrigger = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeeded)(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_radix_ui_react_dropdown_menu.SubTrigger, {
46
+ const DropdownMenuSubTrigger = (0, _hexclave_shared_dist_utils_react.forwardRefIfNeeded)(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_radix_ui_react_dropdown_menu.SubTrigger, {
47
47
  ref,
48
48
  className: (0, ______lib_utils_js.cn)("stack-scope flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent", inset && "pl-8", className),
49
49
  ...props,
50
50
  children: [children, /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_radix_ui_react_icons.ChevronRightIcon, { className: "ml-auto h-4 w-4" })]
51
51
  }));
52
52
  DropdownMenuSubTrigger.displayName = _radix_ui_react_dropdown_menu.SubTrigger.displayName;
53
- const DropdownMenuSubContent = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeeded)(({ className, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_radix_ui_react_dropdown_menu.SubContent, {
53
+ const DropdownMenuSubContent = (0, _hexclave_shared_dist_utils_react.forwardRefIfNeeded)(({ className, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_radix_ui_react_dropdown_menu.SubContent, {
54
54
  ref,
55
55
  className: (0, ______lib_utils_js.cn)("stack-scope z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2", className),
56
56
  ...props
57
57
  }));
58
58
  DropdownMenuSubContent.displayName = _radix_ui_react_dropdown_menu.SubContent.displayName;
59
- const DropdownMenuContent = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeeded)(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_radix_ui_react_dropdown_menu.Portal, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_radix_ui_react_dropdown_menu.Content, {
59
+ const DropdownMenuContent = (0, _hexclave_shared_dist_utils_react.forwardRefIfNeeded)(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_radix_ui_react_dropdown_menu.Portal, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_radix_ui_react_dropdown_menu.Content, {
60
60
  ref,
61
61
  sideOffset,
62
62
  className: (0, ______lib_utils_js.cn)("stack-scope z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md", "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2", className),
63
63
  ...props
64
64
  }) }));
65
65
  DropdownMenuContent.displayName = _radix_ui_react_dropdown_menu.Content.displayName;
66
- const DropdownMenuItem = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeeded)(({ className, inset, ...props }, ref) => {
67
- const { setOpen } = react.default.useContext(DropdownMenuContext) ?? (0, _stackframe_stack_shared_dist_utils_errors.throwErr)("No DropdownMenuContext found");
68
- const [handleClick, isLoading] = (0, _stackframe_stack_shared_dist_hooks_use_async_callback.useAsyncCallback)(async (e) => {
66
+ const DropdownMenuItem = (0, _hexclave_shared_dist_utils_react.forwardRefIfNeeded)(({ className, inset, ...props }, ref) => {
67
+ const { setOpen } = react.default.useContext(DropdownMenuContext) ?? (0, _hexclave_shared_dist_utils_errors.throwErr)("No DropdownMenuContext found");
68
+ const [handleClick, isLoading] = (0, _hexclave_shared_dist_hooks_use_async_callback.useAsyncCallback)(async (e) => {
69
69
  await props.onClick?.(e);
70
70
  setOpen(false);
71
71
  }, [props.onClick]);
@@ -77,7 +77,7 @@ const DropdownMenuItem = (0, _stackframe_stack_shared_dist_utils_react.forwardRe
77
77
  onClick: props.onClick ? (e) => {
78
78
  e.preventDefault();
79
79
  e.stopPropagation();
80
- (0, _stackframe_stack_shared_dist_utils_promises.runAsynchronouslyWithAlert)(handleClick(e));
80
+ (0, _hexclave_shared_dist_utils_promises.runAsynchronouslyWithAlert)(handleClick(e));
81
81
  } : void 0,
82
82
  children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
83
83
  style: {
@@ -96,7 +96,7 @@ const DropdownMenuItem = (0, _stackframe_stack_shared_dist_utils_react.forwardRe
96
96
  });
97
97
  });
98
98
  DropdownMenuItem.displayName = _radix_ui_react_dropdown_menu.Item.displayName;
99
- const DropdownMenuCheckboxItem = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeeded)(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_radix_ui_react_dropdown_menu.CheckboxItem, {
99
+ const DropdownMenuCheckboxItem = (0, _hexclave_shared_dist_utils_react.forwardRefIfNeeded)(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_radix_ui_react_dropdown_menu.CheckboxItem, {
100
100
  ref,
101
101
  className: (0, ______lib_utils_js.cn)("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50", className),
102
102
  checked,
@@ -107,7 +107,7 @@ const DropdownMenuCheckboxItem = (0, _stackframe_stack_shared_dist_utils_react.f
107
107
  }), children]
108
108
  }));
109
109
  DropdownMenuCheckboxItem.displayName = _radix_ui_react_dropdown_menu.CheckboxItem.displayName;
110
- const DropdownMenuRadioItem = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeeded)(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_radix_ui_react_dropdown_menu.RadioItem, {
110
+ const DropdownMenuRadioItem = (0, _hexclave_shared_dist_utils_react.forwardRefIfNeeded)(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_radix_ui_react_dropdown_menu.RadioItem, {
111
111
  ref,
112
112
  className: (0, ______lib_utils_js.cn)("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50", className),
113
113
  ...props,
@@ -117,13 +117,13 @@ const DropdownMenuRadioItem = (0, _stackframe_stack_shared_dist_utils_react.forw
117
117
  }), children]
118
118
  }));
119
119
  DropdownMenuRadioItem.displayName = _radix_ui_react_dropdown_menu.RadioItem.displayName;
120
- const DropdownMenuLabel = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeeded)(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_radix_ui_react_dropdown_menu.Label, {
120
+ const DropdownMenuLabel = (0, _hexclave_shared_dist_utils_react.forwardRefIfNeeded)(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_radix_ui_react_dropdown_menu.Label, {
121
121
  ref,
122
122
  className: (0, ______lib_utils_js.cn)("px-2 py-1.5 text-sm font-semibold", inset && "pl-8", className),
123
123
  ...props
124
124
  }));
125
125
  DropdownMenuLabel.displayName = _radix_ui_react_dropdown_menu.Label.displayName;
126
- const DropdownMenuSeparator = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeeded)(({ className, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_radix_ui_react_dropdown_menu.Separator, {
126
+ const DropdownMenuSeparator = (0, _hexclave_shared_dist_utils_react.forwardRefIfNeeded)(({ className, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_radix_ui_react_dropdown_menu.Separator, {
127
127
  ref,
128
128
  className: (0, ______lib_utils_js.cn)("-mx-1 my-1 h-px bg-muted", className),
129
129
  ...props
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-menu.js","names":["React","DropdownMenuPrimitive","ChevronRightIcon","Spinner","CheckIcon","DotFilledIcon"],"sources":["../../../src/components/ui/dropdown-menu.tsx"],"sourcesContent":["\"use client\";\n\nimport * as DropdownMenuPrimitive from \"@radix-ui/react-dropdown-menu\";\nimport { CheckIcon, ChevronRightIcon, DotFilledIcon } from \"@radix-ui/react-icons\";\nimport { forwardRefIfNeeded } from \"@stackframe/stack-shared/dist/utils/react\";\nimport React from \"react\";\n\nimport { useAsyncCallback } from \"@stackframe/stack-shared/dist/hooks/use-async-callback\";\nimport { throwErr } from \"@stackframe/stack-shared/dist/utils/errors\";\nimport { runAsynchronouslyWithAlert } from \"@stackframe/stack-shared/dist/utils/promises\";\nimport { cn } from \"../../lib/utils\";\nimport { Spinner } from \"./spinner\";\n\nconst DropdownMenuContext = React.createContext<{\n open: boolean,\n setOpen: (open: boolean) => void,\n} | undefined>(undefined);\n\nconst DropdownMenu = forwardRefIfNeeded<\n React.ElementRef<typeof DropdownMenuPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Root>\n>(({ ...props }, ref) => {\n const [open, setOpen] = React.useState(!!props.open);\n\n return (\n <DropdownMenuContext.Provider value={{\n open,\n setOpen: (o) => {\n props.onOpenChange?.(o);\n setOpen(o);\n }\n }}>\n <DropdownMenuPrimitive.Root\n {...props}\n open={props.open ?? open}\n onOpenChange={o => {\n props.onOpenChange?.(o);\n setOpen(o);\n }}\n />\n </DropdownMenuContext.Provider>\n );\n});\nDropdownMenu.displayName = DropdownMenuPrimitive.Root.displayName;\n\nconst DropdownMenuTrigger = DropdownMenuPrimitive.Trigger;\n\nconst DropdownMenuGroup = DropdownMenuPrimitive.Group;\n\nconst DropdownMenuPortal = DropdownMenuPrimitive.Portal;\n\nconst DropdownMenuSub = DropdownMenuPrimitive.Sub;\n\nconst DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup;\n\nconst DropdownMenuSubTrigger = forwardRefIfNeeded<\n React.ElementRef<typeof DropdownMenuPrimitive.SubTrigger>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.SubTrigger> & {\n inset?: boolean,\n }\n>(({ className, inset, children, ...props }, ref) => (\n <DropdownMenuPrimitive.SubTrigger\n ref={ref}\n className={cn(\n \"stack-scope flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent\",\n inset && \"pl-8\",\n className\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"ml-auto h-4 w-4\" />\n </DropdownMenuPrimitive.SubTrigger>\n));\nDropdownMenuSubTrigger.displayName =\n DropdownMenuPrimitive.SubTrigger.displayName;\n\nconst DropdownMenuSubContent = forwardRefIfNeeded<\n React.ElementRef<typeof DropdownMenuPrimitive.SubContent>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.SubContent>\n>(({ className, ...props }, ref) => (\n <DropdownMenuPrimitive.SubContent\n ref={ref}\n className={cn(\n \"stack-scope z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\n className\n )}\n {...props}\n />\n));\nDropdownMenuSubContent.displayName =\n DropdownMenuPrimitive.SubContent.displayName;\n\nconst DropdownMenuContent = forwardRefIfNeeded<\n React.ElementRef<typeof DropdownMenuPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Content>\n>(({ className, sideOffset = 4, ...props }, ref) => (\n <DropdownMenuPrimitive.Portal>\n <DropdownMenuPrimitive.Content\n ref={ref}\n sideOffset={sideOffset}\n className={cn(\n \"stack-scope z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md\",\n \"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\n className\n )}\n {...props}\n />\n </DropdownMenuPrimitive.Portal>\n));\nDropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;\n\nconst DropdownMenuItem = forwardRefIfNeeded<\n React.ElementRef<typeof DropdownMenuPrimitive.Item>,\n Omit<React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Item>, \"onClick\"> & {\n inset?: boolean,\n onClick?: (event: React.MouseEvent<HTMLDivElement, MouseEvent>) => void | Promise<void>,\n }\n>(({ className, inset, ...props }, ref) => {\n const { setOpen } = React.useContext(DropdownMenuContext) ?? throwErr(\"No DropdownMenuContext found\");\n const [handleClick, isLoading] = useAsyncCallback(async (e: React.MouseEvent<HTMLDivElement, MouseEvent>) => {\n await props.onClick?.(e);\n setOpen(false);\n }, [props.onClick]);\n\n return <DropdownMenuPrimitive.Item\n ref={ref}\n className={cn(\n \"stack-scope relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\n inset && \"pl-8\",\n className\n )}\n {...props}\n disabled={isLoading || props.disabled}\n onClick={props.onClick ? (e) => {\n e.preventDefault();\n e.stopPropagation();\n runAsynchronouslyWithAlert(handleClick(e));\n } : undefined}\n >\n <div style={{ visibility: isLoading ? \"visible\" : \"hidden\", position: \"absolute\", inset: 0, display: \"flex\", justifyContent: \"center\", alignItems: \"center\" }}>\n <Spinner />\n </div>\n <div style={{ visibility: isLoading ? \"hidden\" : \"visible\" }}>\n {props.children}\n </div>\n </DropdownMenuPrimitive.Item>;\n});\nDropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;\n\nconst DropdownMenuCheckboxItem = forwardRefIfNeeded<\n React.ElementRef<typeof DropdownMenuPrimitive.CheckboxItem>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.CheckboxItem>\n>(({ className, children, checked, ...props }, ref) => (\n <DropdownMenuPrimitive.CheckboxItem\n ref={ref}\n className={cn(\n \"relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\n className\n )}\n checked={checked}\n {...props}\n >\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <CheckIcon className=\"h-4 w-4\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.CheckboxItem>\n));\nDropdownMenuCheckboxItem.displayName =\n DropdownMenuPrimitive.CheckboxItem.displayName;\n\nconst DropdownMenuRadioItem = forwardRefIfNeeded<\n React.ElementRef<typeof DropdownMenuPrimitive.RadioItem>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.RadioItem>\n>(({ className, children, ...props }, ref) => (\n <DropdownMenuPrimitive.RadioItem\n ref={ref}\n className={cn(\n \"relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\n className\n )}\n {...props}\n >\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <DotFilledIcon className=\"h-4 w-4 fill-current\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.RadioItem>\n));\nDropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;\n\nconst DropdownMenuLabel = forwardRefIfNeeded<\n React.ElementRef<typeof DropdownMenuPrimitive.Label>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Label> & {\n inset?: boolean,\n }\n>(({ className, inset, ...props }, ref) => (\n <DropdownMenuPrimitive.Label\n ref={ref}\n className={cn(\n \"px-2 py-1.5 text-sm font-semibold\",\n inset && \"pl-8\",\n className\n )}\n {...props}\n />\n));\nDropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;\n\nconst DropdownMenuSeparator = forwardRefIfNeeded<\n React.ElementRef<typeof DropdownMenuPrimitive.Separator>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Separator>\n>(({ className, ...props }, ref) => (\n <DropdownMenuPrimitive.Separator\n ref={ref}\n className={cn(\"-mx-1 my-1 h-px bg-muted\", className)}\n {...props}\n />\n));\nDropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName;\n\nconst DropdownMenuShortcut = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLSpanElement>) => {\n return (\n <span\n className={cn(\"stack-scope ml-auto text-xs tracking-widest opacity-60\", className)}\n {...props}\n />\n );\n};\nDropdownMenuShortcut.displayName = \"DropdownMenuShortcut\";\n\nexport {\n DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator,\n DropdownMenuShortcut, DropdownMenuSub,\n DropdownMenuSubContent,\n DropdownMenuSubTrigger, DropdownMenuTrigger\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"dropdown-menu.js","names":["React","DropdownMenuPrimitive","ChevronRightIcon","Spinner","CheckIcon","DotFilledIcon"],"sources":["../../../src/components/ui/dropdown-menu.tsx"],"sourcesContent":["\"use client\";\n\nimport * as DropdownMenuPrimitive from \"@radix-ui/react-dropdown-menu\";\nimport { CheckIcon, ChevronRightIcon, DotFilledIcon } from \"@radix-ui/react-icons\";\nimport { forwardRefIfNeeded } from \"@hexclave/shared/dist/utils/react\";\nimport React from \"react\";\n\nimport { useAsyncCallback } from \"@hexclave/shared/dist/hooks/use-async-callback\";\nimport { throwErr } from \"@hexclave/shared/dist/utils/errors\";\nimport { runAsynchronouslyWithAlert } from \"@hexclave/shared/dist/utils/promises\";\nimport { cn } from \"../../lib/utils\";\nimport { Spinner } from \"./spinner\";\n\nconst DropdownMenuContext = React.createContext<{\n open: boolean,\n setOpen: (open: boolean) => void,\n} | undefined>(undefined);\n\nconst DropdownMenu = forwardRefIfNeeded<\n never,\n DropdownMenuPrimitive.DropdownMenuProps\n>(({ ...props }, ref) => {\n const [open, setOpen] = React.useState(!!props.open);\n\n return (\n <DropdownMenuContext.Provider value={{\n open,\n setOpen: (o) => {\n props.onOpenChange?.(o);\n setOpen(o);\n }\n }}>\n <DropdownMenuPrimitive.Root\n {...props}\n open={props.open ?? open}\n onOpenChange={o => {\n props.onOpenChange?.(o);\n setOpen(o);\n }}\n />\n </DropdownMenuContext.Provider>\n );\n});\nDropdownMenu.displayName = DropdownMenuPrimitive.Root.displayName;\n\nconst DropdownMenuTrigger = DropdownMenuPrimitive.Trigger;\n\nconst DropdownMenuGroup = DropdownMenuPrimitive.Group;\n\nconst DropdownMenuPortal = DropdownMenuPrimitive.Portal;\n\nconst DropdownMenuSub = DropdownMenuPrimitive.Sub;\n\nconst DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup;\n\nconst DropdownMenuSubTrigger = forwardRefIfNeeded<\n React.ElementRef<typeof DropdownMenuPrimitive.SubTrigger>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.SubTrigger> & {\n inset?: boolean,\n }\n>(({ className, inset, children, ...props }, ref) => (\n <DropdownMenuPrimitive.SubTrigger\n ref={ref}\n className={cn(\n \"stack-scope flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent\",\n inset && \"pl-8\",\n className\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"ml-auto h-4 w-4\" />\n </DropdownMenuPrimitive.SubTrigger>\n));\nDropdownMenuSubTrigger.displayName =\n DropdownMenuPrimitive.SubTrigger.displayName;\n\nconst DropdownMenuSubContent = forwardRefIfNeeded<\n React.ElementRef<typeof DropdownMenuPrimitive.SubContent>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.SubContent>\n>(({ className, ...props }, ref) => (\n <DropdownMenuPrimitive.SubContent\n ref={ref}\n className={cn(\n \"stack-scope z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\n className\n )}\n {...props}\n />\n));\nDropdownMenuSubContent.displayName =\n DropdownMenuPrimitive.SubContent.displayName;\n\nconst DropdownMenuContent = forwardRefIfNeeded<\n React.ElementRef<typeof DropdownMenuPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Content>\n>(({ className, sideOffset = 4, ...props }, ref) => (\n <DropdownMenuPrimitive.Portal>\n <DropdownMenuPrimitive.Content\n ref={ref}\n sideOffset={sideOffset}\n className={cn(\n \"stack-scope z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md\",\n \"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\n className\n )}\n {...props}\n />\n </DropdownMenuPrimitive.Portal>\n));\nDropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;\n\nconst DropdownMenuItem = forwardRefIfNeeded<\n React.ElementRef<typeof DropdownMenuPrimitive.Item>,\n Omit<React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Item>, \"onClick\"> & {\n inset?: boolean,\n onClick?: (event: React.MouseEvent<HTMLDivElement, MouseEvent>) => void | Promise<void>,\n }\n>(({ className, inset, ...props }, ref) => {\n const { setOpen } = React.useContext(DropdownMenuContext) ?? throwErr(\"No DropdownMenuContext found\");\n const [handleClick, isLoading] = useAsyncCallback(async (e: React.MouseEvent<HTMLDivElement, MouseEvent>) => {\n await props.onClick?.(e);\n setOpen(false);\n }, [props.onClick]);\n\n return <DropdownMenuPrimitive.Item\n ref={ref}\n className={cn(\n \"stack-scope relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\n inset && \"pl-8\",\n className\n )}\n {...props}\n disabled={isLoading || props.disabled}\n onClick={props.onClick ? (e) => {\n e.preventDefault();\n e.stopPropagation();\n runAsynchronouslyWithAlert(handleClick(e));\n } : undefined}\n >\n <div style={{ visibility: isLoading ? \"visible\" : \"hidden\", position: \"absolute\", inset: 0, display: \"flex\", justifyContent: \"center\", alignItems: \"center\" }}>\n <Spinner />\n </div>\n <div style={{ visibility: isLoading ? \"hidden\" : \"visible\" }}>\n {props.children}\n </div>\n </DropdownMenuPrimitive.Item>;\n});\nDropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;\n\nconst DropdownMenuCheckboxItem = forwardRefIfNeeded<\n React.ElementRef<typeof DropdownMenuPrimitive.CheckboxItem>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.CheckboxItem>\n>(({ className, children, checked, ...props }, ref) => (\n <DropdownMenuPrimitive.CheckboxItem\n ref={ref}\n className={cn(\n \"relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\n className\n )}\n checked={checked}\n {...props}\n >\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <CheckIcon className=\"h-4 w-4\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.CheckboxItem>\n));\nDropdownMenuCheckboxItem.displayName =\n DropdownMenuPrimitive.CheckboxItem.displayName;\n\nconst DropdownMenuRadioItem = forwardRefIfNeeded<\n React.ElementRef<typeof DropdownMenuPrimitive.RadioItem>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.RadioItem>\n>(({ className, children, ...props }, ref) => (\n <DropdownMenuPrimitive.RadioItem\n ref={ref}\n className={cn(\n \"relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\n className\n )}\n {...props}\n >\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <DotFilledIcon className=\"h-4 w-4 fill-current\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.RadioItem>\n));\nDropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;\n\nconst DropdownMenuLabel = forwardRefIfNeeded<\n React.ElementRef<typeof DropdownMenuPrimitive.Label>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Label> & {\n inset?: boolean,\n }\n>(({ className, inset, ...props }, ref) => (\n <DropdownMenuPrimitive.Label\n ref={ref}\n className={cn(\n \"px-2 py-1.5 text-sm font-semibold\",\n inset && \"pl-8\",\n className\n )}\n {...props}\n />\n));\nDropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;\n\nconst DropdownMenuSeparator = forwardRefIfNeeded<\n React.ElementRef<typeof DropdownMenuPrimitive.Separator>,\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Separator>\n>(({ className, ...props }, ref) => (\n <DropdownMenuPrimitive.Separator\n ref={ref}\n className={cn(\"-mx-1 my-1 h-px bg-muted\", className)}\n {...props}\n />\n));\nDropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName;\n\nconst DropdownMenuShortcut = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLSpanElement>) => {\n return (\n <span\n className={cn(\"stack-scope ml-auto text-xs tracking-widest opacity-60\", className)}\n {...props}\n />\n );\n};\nDropdownMenuShortcut.displayName = \"DropdownMenuShortcut\";\n\nexport {\n DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator,\n DropdownMenuShortcut, DropdownMenuSub,\n DropdownMenuSubContent,\n DropdownMenuSubTrigger, DropdownMenuTrigger\n};\n"],"mappings":"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"}
@@ -5,8 +5,8 @@ const require_chunk = require('../../chunk-BE-pF4vm.js');
5
5
  let react = require("react");
6
6
  react = require_chunk.__toESM(react);
7
7
  let react_jsx_runtime = require("react/jsx-runtime");
8
- let _stackframe_stack_shared_dist_utils_errors = require("@hexclave/shared/dist/utils/errors");
9
- let _stackframe_stack_shared_dist_utils_react = require("@hexclave/shared/dist/utils/react");
8
+ let _hexclave_shared_dist_utils_errors = require("@hexclave/shared/dist/utils/errors");
9
+ let _hexclave_shared_dist_utils_react = require("@hexclave/shared/dist/utils/react");
10
10
  let ______lib_utils_js = require("../../lib/utils.js");
11
11
  let _radix_ui_react_slot = require("@radix-ui/react-slot");
12
12
  let react_hook_form = require("react-hook-form");
@@ -25,7 +25,7 @@ const useFormField = () => {
25
25
  const fieldContext = react.default.useContext(FormFieldContext);
26
26
  const itemContext = react.default.useContext(FormItemContext);
27
27
  const { getFieldState, formState } = (0, react_hook_form.useFormContext)();
28
- if (!fieldContext) throw new _stackframe_stack_shared_dist_utils_errors.HexclaveAssertionError("useFormField should be used within <FormField>");
28
+ if (!fieldContext) throw new _hexclave_shared_dist_utils_errors.HexclaveAssertionError("useFormField should be used within <FormField>");
29
29
  const fieldState = getFieldState(fieldContext.name, formState);
30
30
  const { id } = itemContext;
31
31
  const formItemId = react.default.useId();
@@ -39,7 +39,7 @@ const useFormField = () => {
39
39
  };
40
40
  };
41
41
  const FormItemContext = react.default.createContext({});
42
- const FormItem = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeeded)(({ className, ...props }, ref) => {
42
+ const FormItem = (0, _hexclave_shared_dist_utils_react.forwardRefIfNeeded)(({ className, ...props }, ref) => {
43
43
  const id = react.default.useId();
44
44
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(FormItemContext.Provider, {
45
45
  value: { id },
@@ -51,7 +51,7 @@ const FormItem = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeede
51
51
  });
52
52
  });
53
53
  FormItem.displayName = "FormItem";
54
- const FormLabel = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeeded)(({ className, ...props }, ref) => {
54
+ const FormLabel = (0, _hexclave_shared_dist_utils_react.forwardRefIfNeeded)(({ className, ...props }, ref) => {
55
55
  const { error } = useFormField();
56
56
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(__label_js.SpanLabel, {
57
57
  ref,
@@ -60,7 +60,7 @@ const FormLabel = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeed
60
60
  });
61
61
  });
62
62
  FormLabel.displayName = "FormLabel";
63
- const FormControl = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeeded)(({ ...props }, ref) => {
63
+ const FormControl = (0, _hexclave_shared_dist_utils_react.forwardRefIfNeeded)(({ ...props }, ref) => {
64
64
  const { error, formItemId, formDescriptionId, formMessageId } = useFormField();
65
65
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_radix_ui_react_slot.Slot, {
66
66
  ref,
@@ -71,7 +71,7 @@ const FormControl = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNe
71
71
  });
72
72
  });
73
73
  FormControl.displayName = "FormControl";
74
- const FormDescription = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeeded)(({ className, ...props }, ref) => {
74
+ const FormDescription = (0, _hexclave_shared_dist_utils_react.forwardRefIfNeeded)(({ className, ...props }, ref) => {
75
75
  const { formDescriptionId } = useFormField();
76
76
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
77
77
  ref,
@@ -81,7 +81,7 @@ const FormDescription = (0, _stackframe_stack_shared_dist_utils_react.forwardRef
81
81
  });
82
82
  });
83
83
  FormDescription.displayName = "FormDescription";
84
- const FormMessage = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeeded)(({ className, children, ...props }, ref) => {
84
+ const FormMessage = (0, _hexclave_shared_dist_utils_react.forwardRefIfNeeded)(({ className, children, ...props }, ref) => {
85
85
  const { error, formMessageId } = useFormField();
86
86
  const body = error ? String(error.message) : children;
87
87
  if (!body) return null;
@@ -1 +1 @@
1
- {"version":3,"file":"form.js","names":["FormProvider","React","Controller","HexclaveAssertionError","SpanLabel","Slot"],"sources":["../../../src/components/ui/form.tsx"],"sourcesContent":["'use client';\n\nimport * as LabelPrimitive from \"@radix-ui/react-label\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport React from \"react\";\nimport { forwardRefIfNeeded } from \"@stackframe/stack-shared/dist/utils/react\";\nimport {\n Controller,\n ControllerProps,\n FieldPath,\n FieldValues,\n FormProvider,\n useFormContext,\n} from \"react-hook-form\";\n\nimport { HexclaveAssertionError } from \"@stackframe/stack-shared/dist/utils/errors\";\nimport { cn } from \"../../lib/utils\";\nimport { SpanLabel } from \"./label\";\n\nconst Form = FormProvider;\n\ntype FormFieldContextValue<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>\n> = {\n name: TName,\n}\n\nconst FormFieldContext = React.createContext<FormFieldContextValue | null>(null);\n\nconst FormField = <\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>\n>({\n ...props\n }: ControllerProps<TFieldValues, TName>) => {\n return (\n <FormFieldContext.Provider value={{ name: props.name }}>\n <Controller {...props} />\n </FormFieldContext.Provider>\n );\n};\n\nconst useFormField = () => {\n const fieldContext = React.useContext(FormFieldContext);\n const itemContext = React.useContext(FormItemContext);\n const { getFieldState, formState } = useFormContext();\n\n if (!fieldContext) {\n throw new HexclaveAssertionError(\"useFormField should be used within <FormField>\");\n }\n\n const fieldState = getFieldState(fieldContext.name, formState);\n\n const { id } = itemContext;\n const formItemId = React.useId();\n\n return {\n id,\n name: fieldContext.name,\n formItemId: `${formItemId}-form-item`,\n formDescriptionId: `${id}-form-item-description`,\n formMessageId: `${id}-form-item-message`,\n ...fieldState,\n };\n};\n\ntype FormItemContextValue = {\n id: string,\n}\n\nconst FormItemContext = React.createContext<FormItemContextValue>(\n {} as FormItemContextValue\n);\n\nconst FormItem = forwardRefIfNeeded<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => {\n const id = React.useId();\n\n return (\n <FormItemContext.Provider value={{ id }}>\n <div ref={ref} className={cn(\"space-y-2\", className)} {...props} />\n </FormItemContext.Provider>\n );\n});\nFormItem.displayName = \"FormItem\";\n\nconst FormLabel = forwardRefIfNeeded<\n React.ElementRef<typeof LabelPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof LabelPrimitive.Root>\n>(({ className, ...props }, ref) => {\n const { error } = useFormField();\n\n return (\n <SpanLabel\n ref={ref}\n className={cn(error && \"text-destructive\", className)}\n {...props}\n />\n );\n});\nFormLabel.displayName = \"FormLabel\";\n\nconst FormControl = forwardRefIfNeeded<\n React.ElementRef<typeof Slot>,\n React.ComponentPropsWithoutRef<typeof Slot>\n>(({ ...props }, ref) => {\n const { error, formItemId, formDescriptionId, formMessageId } = useFormField();\n\n return (\n <Slot\n ref={ref}\n id={formItemId}\n aria-describedby={\n !error\n ? `${formDescriptionId}`\n : `${formDescriptionId} ${formMessageId}`\n }\n aria-invalid={!!error}\n {...props}\n />\n );\n});\nFormControl.displayName = \"FormControl\";\n\nconst FormDescription = forwardRefIfNeeded<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLParagraphElement>\n>(({ className, ...props }, ref) => {\n const { formDescriptionId } = useFormField();\n\n return (\n <p\n ref={ref}\n id={formDescriptionId}\n className={cn(\"text-[0.8rem] text-muted-foreground\", className)}\n {...props}\n />\n );\n});\nFormDescription.displayName = \"FormDescription\";\n\nconst FormMessage = forwardRefIfNeeded<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLParagraphElement>\n>(({ className, children, ...props }, ref) => {\n const { error, formMessageId } = useFormField();\n const body = error ? String(error.message) : children;\n\n if (!body) {\n return null;\n }\n\n return (\n <p\n ref={ref}\n id={formMessageId}\n className={cn(\"text-[0.8rem] font-medium text-destructive\", className)}\n {...props}\n >\n {body}\n </p>\n );\n});\nFormMessage.displayName = \"FormMessage\";\n\nexport {\n Form, FormControl,\n FormDescription, FormField, FormItem,\n FormLabel, FormMessage, useFormField\n};\n"],"mappings":";;;;;;;;;;;;;;;AAmBA,MAAM,OAAOA;AASb,MAAM,mBAAmBC,cAAM,cAA4C,KAAK;AAEhF,MAAM,aAGJ,EACE,GAAG,YACuC;AAC5C,QACE,2CAAC,iBAAiB;EAAS,OAAO,EAAE,MAAM,MAAM,MAAM;YACpD,2CAACC,8BAAW,GAAI,QAAS;GACC;;AAIhC,MAAM,qBAAqB;CACzB,MAAM,eAAeD,cAAM,WAAW,iBAAiB;CACvD,MAAM,cAAcA,cAAM,WAAW,gBAAgB;CACrD,MAAM,EAAE,eAAe,mDAA8B;AAErD,KAAI,CAAC,aACH,OAAM,IAAIE,kEAAuB,iDAAiD;CAGpF,MAAM,aAAa,cAAc,aAAa,MAAM,UAAU;CAE9D,MAAM,EAAE,OAAO;CACf,MAAM,aAAaF,cAAM,OAAO;AAEhC,QAAO;EACL;EACA,MAAM,aAAa;EACnB,YAAY,GAAG,WAAW;EAC1B,mBAAmB,GAAG,GAAG;EACzB,eAAe,GAAG,GAAG;EACrB,GAAG;EACJ;;AAOH,MAAM,kBAAkBA,cAAM,cAC5B,EAAE,CACH;AAED,MAAM,8EAGH,EAAE,WAAW,GAAG,SAAS,QAAQ;CAClC,MAAM,KAAKA,cAAM,OAAO;AAExB,QACE,2CAAC,gBAAgB;EAAS,OAAO,EAAE,IAAI;YACrC,2CAAC;GAAS;GAAK,sCAAc,aAAa,UAAU;GAAE,GAAI;IAAS;GAC1C;EAE7B;AACF,SAAS,cAAc;AAEvB,MAAM,+EAGH,EAAE,WAAW,GAAG,SAAS,QAAQ;CAClC,MAAM,EAAE,UAAU,cAAc;AAEhC,QACE,2CAACG;EACM;EACL,sCAAc,SAAS,oBAAoB,UAAU;EACrD,GAAI;GACJ;EAEJ;AACF,UAAU,cAAc;AAExB,MAAM,iFAGH,EAAE,GAAG,SAAS,QAAQ;CACvB,MAAM,EAAE,OAAO,YAAY,mBAAmB,kBAAkB,cAAc;AAE9E,QACE,2CAACC;EACM;EACL,IAAI;EACJ,oBACE,CAAC,QACG,GAAG,sBACH,GAAG,kBAAkB,GAAG;EAE9B,gBAAc,CAAC,CAAC;EAChB,GAAI;GACJ;EAEJ;AACF,YAAY,cAAc;AAE1B,MAAM,qFAGH,EAAE,WAAW,GAAG,SAAS,QAAQ;CAClC,MAAM,EAAE,sBAAsB,cAAc;AAE5C,QACE,2CAAC;EACM;EACL,IAAI;EACJ,sCAAc,uCAAuC,UAAU;EAC/D,GAAI;GACJ;EAEJ;AACF,gBAAgB,cAAc;AAE9B,MAAM,iFAGH,EAAE,WAAW,UAAU,GAAG,SAAS,QAAQ;CAC5C,MAAM,EAAE,OAAO,kBAAkB,cAAc;CAC/C,MAAM,OAAO,QAAQ,OAAO,MAAM,QAAQ,GAAG;AAE7C,KAAI,CAAC,KACH,QAAO;AAGT,QACE,2CAAC;EACM;EACL,IAAI;EACJ,sCAAc,8CAA8C,UAAU;EACtE,GAAI;YAEH;GACC;EAEN;AACF,YAAY,cAAc"}
1
+ {"version":3,"file":"form.js","names":["FormProvider","React","Controller","HexclaveAssertionError","SpanLabel","Slot"],"sources":["../../../src/components/ui/form.tsx"],"sourcesContent":["'use client';\n\nimport * as LabelPrimitive from \"@radix-ui/react-label\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport React from \"react\";\nimport { forwardRefIfNeeded } from \"@hexclave/shared/dist/utils/react\";\nimport {\n Controller,\n ControllerProps,\n FieldPath,\n FieldValues,\n FormProvider,\n useFormContext,\n} from \"react-hook-form\";\n\nimport { HexclaveAssertionError } from \"@hexclave/shared/dist/utils/errors\";\nimport { cn } from \"../../lib/utils\";\nimport { SpanLabel } from \"./label\";\n\nconst Form = FormProvider;\n\ntype FormFieldContextValue<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>\n> = {\n name: TName,\n}\n\nconst FormFieldContext = React.createContext<FormFieldContextValue | null>(null);\n\nconst FormField = <\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>\n>({\n ...props\n }: ControllerProps<TFieldValues, TName>) => {\n return (\n <FormFieldContext.Provider value={{ name: props.name }}>\n <Controller {...props} />\n </FormFieldContext.Provider>\n );\n};\n\nconst useFormField = () => {\n const fieldContext = React.useContext(FormFieldContext);\n const itemContext = React.useContext(FormItemContext);\n const { getFieldState, formState } = useFormContext();\n\n if (!fieldContext) {\n throw new HexclaveAssertionError(\"useFormField should be used within <FormField>\");\n }\n\n const fieldState = getFieldState(fieldContext.name, formState);\n\n const { id } = itemContext;\n const formItemId = React.useId();\n\n return {\n id,\n name: fieldContext.name,\n formItemId: `${formItemId}-form-item`,\n formDescriptionId: `${id}-form-item-description`,\n formMessageId: `${id}-form-item-message`,\n ...fieldState,\n };\n};\n\ntype FormItemContextValue = {\n id: string,\n}\n\nconst FormItemContext = React.createContext<FormItemContextValue>(\n {} as FormItemContextValue\n);\n\nconst FormItem = forwardRefIfNeeded<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => {\n const id = React.useId();\n\n return (\n <FormItemContext.Provider value={{ id }}>\n <div ref={ref} className={cn(\"space-y-2\", className)} {...props} />\n </FormItemContext.Provider>\n );\n});\nFormItem.displayName = \"FormItem\";\n\nconst FormLabel = forwardRefIfNeeded<\n React.ElementRef<typeof LabelPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof LabelPrimitive.Root>\n>(({ className, ...props }, ref) => {\n const { error } = useFormField();\n\n return (\n <SpanLabel\n ref={ref}\n className={cn(error && \"text-destructive\", className)}\n {...props}\n />\n );\n});\nFormLabel.displayName = \"FormLabel\";\n\nconst FormControl = forwardRefIfNeeded<\n React.ElementRef<typeof Slot>,\n React.ComponentPropsWithoutRef<typeof Slot>\n>(({ ...props }, ref) => {\n const { error, formItemId, formDescriptionId, formMessageId } = useFormField();\n\n return (\n <Slot\n ref={ref}\n id={formItemId}\n aria-describedby={\n !error\n ? `${formDescriptionId}`\n : `${formDescriptionId} ${formMessageId}`\n }\n aria-invalid={!!error}\n {...props}\n />\n );\n});\nFormControl.displayName = \"FormControl\";\n\nconst FormDescription = forwardRefIfNeeded<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLParagraphElement>\n>(({ className, ...props }, ref) => {\n const { formDescriptionId } = useFormField();\n\n return (\n <p\n ref={ref}\n id={formDescriptionId}\n className={cn(\"text-[0.8rem] text-muted-foreground\", className)}\n {...props}\n />\n );\n});\nFormDescription.displayName = \"FormDescription\";\n\nconst FormMessage = forwardRefIfNeeded<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLParagraphElement>\n>(({ className, children, ...props }, ref) => {\n const { error, formMessageId } = useFormField();\n const body = error ? String(error.message) : children;\n\n if (!body) {\n return null;\n }\n\n return (\n <p\n ref={ref}\n id={formMessageId}\n className={cn(\"text-[0.8rem] font-medium text-destructive\", className)}\n {...props}\n >\n {body}\n </p>\n );\n});\nFormMessage.displayName = \"FormMessage\";\n\nexport {\n Form, FormControl,\n FormDescription, FormField, FormItem,\n FormLabel, FormMessage, useFormField\n};\n"],"mappings":";;;;;;;;;;;;;;;AAmBA,MAAM,OAAOA;AASb,MAAM,mBAAmBC,cAAM,cAA4C,KAAK;AAEhF,MAAM,aAGJ,EACE,GAAG,YACuC;AAC5C,QACE,2CAAC,iBAAiB;EAAS,OAAO,EAAE,MAAM,MAAM,MAAM;YACpD,2CAACC,8BAAW,GAAI,QAAS;GACC;;AAIhC,MAAM,qBAAqB;CACzB,MAAM,eAAeD,cAAM,WAAW,iBAAiB;CACvD,MAAM,cAAcA,cAAM,WAAW,gBAAgB;CACrD,MAAM,EAAE,eAAe,mDAA8B;AAErD,KAAI,CAAC,aACH,OAAM,IAAIE,0DAAuB,iDAAiD;CAGpF,MAAM,aAAa,cAAc,aAAa,MAAM,UAAU;CAE9D,MAAM,EAAE,OAAO;CACf,MAAM,aAAaF,cAAM,OAAO;AAEhC,QAAO;EACL;EACA,MAAM,aAAa;EACnB,YAAY,GAAG,WAAW;EAC1B,mBAAmB,GAAG,GAAG;EACzB,eAAe,GAAG,GAAG;EACrB,GAAG;EACJ;;AAOH,MAAM,kBAAkBA,cAAM,cAC5B,EAAE,CACH;AAED,MAAM,sEAGH,EAAE,WAAW,GAAG,SAAS,QAAQ;CAClC,MAAM,KAAKA,cAAM,OAAO;AAExB,QACE,2CAAC,gBAAgB;EAAS,OAAO,EAAE,IAAI;YACrC,2CAAC;GAAS;GAAK,sCAAc,aAAa,UAAU;GAAE,GAAI;IAAS;GAC1C;EAE7B;AACF,SAAS,cAAc;AAEvB,MAAM,uEAGH,EAAE,WAAW,GAAG,SAAS,QAAQ;CAClC,MAAM,EAAE,UAAU,cAAc;AAEhC,QACE,2CAACG;EACM;EACL,sCAAc,SAAS,oBAAoB,UAAU;EACrD,GAAI;GACJ;EAEJ;AACF,UAAU,cAAc;AAExB,MAAM,yEAGH,EAAE,GAAG,SAAS,QAAQ;CACvB,MAAM,EAAE,OAAO,YAAY,mBAAmB,kBAAkB,cAAc;AAE9E,QACE,2CAACC;EACM;EACL,IAAI;EACJ,oBACE,CAAC,QACG,GAAG,sBACH,GAAG,kBAAkB,GAAG;EAE9B,gBAAc,CAAC,CAAC;EAChB,GAAI;GACJ;EAEJ;AACF,YAAY,cAAc;AAE1B,MAAM,6EAGH,EAAE,WAAW,GAAG,SAAS,QAAQ;CAClC,MAAM,EAAE,sBAAsB,cAAc;AAE5C,QACE,2CAAC;EACM;EACL,IAAI;EACJ,sCAAc,uCAAuC,UAAU;EAC/D,GAAI;GACJ;EAEJ;AACF,gBAAgB,cAAc;AAE9B,MAAM,yEAGH,EAAE,WAAW,UAAU,GAAG,SAAS,QAAQ;CAC5C,MAAM,EAAE,OAAO,kBAAkB,cAAc;CAC/C,MAAM,OAAO,QAAQ,OAAO,MAAM,QAAQ,GAAG;AAE7C,KAAI,CAAC,KACH,QAAO;AAGT,QACE,2CAAC;EACM;EACL,IAAI;EACJ,sCAAc,8CAA8C,UAAU;EACtE,GAAI;YAEH;GACC;EAEN;AACF,YAAY,cAAc"}
@@ -5,7 +5,7 @@ const require_chunk = require('../../chunk-BE-pF4vm.js');
5
5
  let react = require("react");
6
6
  react = require_chunk.__toESM(react);
7
7
  let react_jsx_runtime = require("react/jsx-runtime");
8
- let _stackframe_stack_shared_dist_utils_react = require("@hexclave/shared/dist/utils/react");
8
+ let _hexclave_shared_dist_utils_react = require("@hexclave/shared/dist/utils/react");
9
9
  let ______lib_utils_js = require("../../lib/utils.js");
10
10
  let _radix_ui_react_hover_card = require("@radix-ui/react-hover-card");
11
11
  _radix_ui_react_hover_card = require_chunk.__toESM(_radix_ui_react_hover_card);
@@ -13,7 +13,7 @@ _radix_ui_react_hover_card = require_chunk.__toESM(_radix_ui_react_hover_card);
13
13
  //#region src/components/ui/hover-card.tsx
14
14
  const HoverCard = _radix_ui_react_hover_card.Root;
15
15
  const HoverCardTrigger = _radix_ui_react_hover_card.Trigger;
16
- const HoverCardContent = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeeded)(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_radix_ui_react_hover_card.Content, {
16
+ const HoverCardContent = (0, _hexclave_shared_dist_utils_react.forwardRefIfNeeded)(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_radix_ui_react_hover_card.Content, {
17
17
  ref,
18
18
  align,
19
19
  sideOffset,
@@ -1 +1 @@
1
- {"version":3,"file":"hover-card.js","names":["HoverCardPrimitive"],"sources":["../../../src/components/ui/hover-card.tsx"],"sourcesContent":["\"use client\";\n\nimport React from \"react\";\nimport { forwardRefIfNeeded } from \"@stackframe/stack-shared/dist/utils/react\";\nimport * as HoverCardPrimitive from \"@radix-ui/react-hover-card\";\n\nimport { cn } from \"../../lib/utils\";\n\nconst HoverCard = HoverCardPrimitive.Root;\n\nconst HoverCardTrigger = HoverCardPrimitive.Trigger;\n\nconst HoverCardContent = forwardRefIfNeeded<\n React.ElementRef<typeof HoverCardPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof HoverCardPrimitive.Content>\n>(({ className, align = \"center\", sideOffset = 4, ...props }, ref) => (\n <HoverCardPrimitive.Content\n ref={ref}\n align={align}\n sideOffset={sideOffset}\n className={cn(\n \"stack-scope z-50 w-64 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\n className\n )}\n {...props}\n />\n));\nHoverCardContent.displayName = HoverCardPrimitive.Content.displayName;\n\nexport { HoverCard, HoverCardTrigger, HoverCardContent };\n"],"mappings":";;;;;;;;;;;;;AAQA,MAAM,YAAYA,2BAAmB;AAErC,MAAM,mBAAmBA,2BAAmB;AAE5C,MAAM,sFAGH,EAAE,WAAW,QAAQ,UAAU,aAAa,GAAG,GAAG,SAAS,QAC5D,2CAACA,2BAAmB;CACb;CACE;CACK;CACZ,sCACE,0bACA,UACD;CACD,GAAI;EACJ,CACF;AACF,iBAAiB,cAAcA,2BAAmB,QAAQ"}
1
+ {"version":3,"file":"hover-card.js","names":["HoverCardPrimitive"],"sources":["../../../src/components/ui/hover-card.tsx"],"sourcesContent":["\"use client\";\n\nimport React from \"react\";\nimport { forwardRefIfNeeded } from \"@hexclave/shared/dist/utils/react\";\nimport * as HoverCardPrimitive from \"@radix-ui/react-hover-card\";\n\nimport { cn } from \"../../lib/utils\";\n\nconst HoverCard = HoverCardPrimitive.Root;\n\nconst HoverCardTrigger = HoverCardPrimitive.Trigger;\n\nconst HoverCardContent = forwardRefIfNeeded<\n React.ElementRef<typeof HoverCardPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof HoverCardPrimitive.Content>\n>(({ className, align = \"center\", sideOffset = 4, ...props }, ref) => (\n <HoverCardPrimitive.Content\n ref={ref}\n align={align}\n sideOffset={sideOffset}\n className={cn(\n \"stack-scope z-50 w-64 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\n className\n )}\n {...props}\n />\n));\nHoverCardContent.displayName = HoverCardPrimitive.Content.displayName;\n\nexport { HoverCard, HoverCardTrigger, HoverCardContent };\n"],"mappings":";;;;;;;;;;;;;AAQA,MAAM,YAAYA,2BAAmB;AAErC,MAAM,mBAAmBA,2BAAmB;AAE5C,MAAM,8EAGH,EAAE,WAAW,QAAQ,UAAU,aAAa,GAAG,GAAG,SAAS,QAC5D,2CAACA,2BAAmB;CACb;CACE;CACK;CACZ,sCACE,0bACA,UACD;CACD,GAAI;EACJ,CACF;AACF,iBAAiB,cAAcA,2BAAmB,QAAQ"}
@@ -5,14 +5,14 @@ const require_chunk = require('../../chunk-BE-pF4vm.js');
5
5
  let react = require("react");
6
6
  react = require_chunk.__toESM(react);
7
7
  let react_jsx_runtime = require("react/jsx-runtime");
8
- let _stackframe_stack_shared_dist_utils_react = require("@hexclave/shared/dist/utils/react");
8
+ let _hexclave_shared_dist_utils_react = require("@hexclave/shared/dist/utils/react");
9
9
  let ______lib_utils_js = require("../../lib/utils.js");
10
- let _stackframe_stack_shared_dist_utils_promises = require("@hexclave/shared/dist/utils/promises");
11
- let _stackframe_stack_shared_dist_utils_dom = require("@hexclave/shared/dist/utils/dom");
10
+ let _hexclave_shared_dist_utils_promises = require("@hexclave/shared/dist/utils/promises");
11
+ let _hexclave_shared_dist_utils_dom = require("@hexclave/shared/dist/utils/dom");
12
12
  let __use_toast_js = require("./use-toast.js");
13
13
 
14
14
  //#region src/components/ui/inline-code.tsx
15
- const InlineCode = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeeded)((props, ref) => {
15
+ const InlineCode = (0, _hexclave_shared_dist_utils_react.forwardRefIfNeeded)((props, ref) => {
16
16
  const { toast } = (0, __use_toast_js.useToast)();
17
17
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("code", {
18
18
  ref,
@@ -20,12 +20,12 @@ const InlineCode = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNee
20
20
  className: (0, ______lib_utils_js.cn)("stack-scope bg-zinc-200 text-zinc-700 dark:bg-zinc-800 dark:text-zinc-300 rounded-sm px-1 cursor-pointer", props.className),
21
21
  onClick: (e) => {
22
22
  props.onClick?.(e);
23
- if (!(0, _stackframe_stack_shared_dist_utils_dom.hasClickableParent)(e.currentTarget)) {
23
+ if (!(0, _hexclave_shared_dist_utils_dom.hasClickableParent)(e.currentTarget)) {
24
24
  e.stopPropagation();
25
25
  e.preventDefault();
26
- (0, _stackframe_stack_shared_dist_utils_promises.runAsynchronously)(async () => {
26
+ (0, _hexclave_shared_dist_utils_promises.runAsynchronously)(async () => {
27
27
  try {
28
- await navigator.clipboard.writeText((0, _stackframe_stack_shared_dist_utils_react.getNodeText)(props.children));
28
+ await navigator.clipboard.writeText((0, _hexclave_shared_dist_utils_react.getNodeText)(props.children));
29
29
  toast({
30
30
  description: "Copied to clipboard!",
31
31
  variant: "success"
@@ -1 +1 @@
1
- {"version":3,"file":"inline-code.js","names":[],"sources":["../../../src/components/ui/inline-code.tsx"],"sourcesContent":["\"use client\";\n\nimport { cn } from \"../../lib/utils\";\nimport React from \"react\";\nimport { forwardRefIfNeeded } from \"@stackframe/stack-shared/dist/utils/react\";\nimport { hasClickableParent } from \"@stackframe/stack-shared/dist/utils/dom\";\nimport { getNodeText } from \"@stackframe/stack-shared/dist/utils/react\";\nimport { runAsynchronously } from \"@stackframe/stack-shared/dist/utils/promises\";\nimport { useToast } from \"./use-toast\";\n\nconst InlineCode = forwardRefIfNeeded<\n React.ElementRef<\"code\">,\n React.ComponentPropsWithoutRef<\"code\">\n>((props, ref) => {\n const { toast } = useToast();\n\n return <code\n ref={ref}\n {...props}\n className={cn(\"stack-scope bg-zinc-200 text-zinc-700 dark:bg-zinc-800 dark:text-zinc-300 rounded-sm px-1 cursor-pointer\", props.className)}\n onClick={(e: React.MouseEvent<HTMLElement>) => {\n props.onClick?.(e);\n if (!hasClickableParent(e.currentTarget)) {\n e.stopPropagation();\n e.preventDefault();\n runAsynchronously(async () => {\n try {\n await navigator.clipboard.writeText(getNodeText(props.children));\n toast({ description: 'Copied to clipboard!', variant: 'success' });\n } catch (e) {\n toast({ description: 'Failed to copy to clipboard', variant: 'destructive' });\n }\n });\n }\n }}\n />;\n});\nInlineCode.displayName = \"Code\";\n\nexport { InlineCode };\n"],"mappings":";;;;;;;;;;;;;;AAUA,MAAM,gFAGH,OAAO,QAAQ;CAChB,MAAM,EAAE,wCAAqB;AAE7B,QAAO,2CAAC;EACD;EACL,GAAI;EACJ,sCAAc,4GAA4G,MAAM,UAAU;EAC1I,UAAU,MAAqC;AAC7C,SAAM,UAAU,EAAE;AAClB,OAAI,iEAAoB,EAAE,cAAc,EAAE;AACxC,MAAE,iBAAiB;AACnB,MAAE,gBAAgB;AAClB,wEAAkB,YAAY;AAC5B,SAAI;AACF,YAAM,UAAU,UAAU,qEAAsB,MAAM,SAAS,CAAC;AAChE,YAAM;OAAE,aAAa;OAAwB,SAAS;OAAW,CAAC;cAC3D,GAAG;AACV,YAAM;OAAE,aAAa;OAA+B,SAAS;OAAe,CAAC;;MAE/E;;;GAGN;EACF;AACF,WAAW,cAAc"}
1
+ {"version":3,"file":"inline-code.js","names":[],"sources":["../../../src/components/ui/inline-code.tsx"],"sourcesContent":["\"use client\";\n\nimport { cn } from \"../../lib/utils\";\nimport React from \"react\";\nimport { forwardRefIfNeeded } from \"@hexclave/shared/dist/utils/react\";\nimport { hasClickableParent } from \"@hexclave/shared/dist/utils/dom\";\nimport { getNodeText } from \"@hexclave/shared/dist/utils/react\";\nimport { runAsynchronously } from \"@hexclave/shared/dist/utils/promises\";\nimport { useToast } from \"./use-toast\";\n\nconst InlineCode = forwardRefIfNeeded<\n React.ElementRef<\"code\">,\n React.ComponentPropsWithoutRef<\"code\">\n>((props, ref) => {\n const { toast } = useToast();\n\n return <code\n ref={ref}\n {...props}\n className={cn(\"stack-scope bg-zinc-200 text-zinc-700 dark:bg-zinc-800 dark:text-zinc-300 rounded-sm px-1 cursor-pointer\", props.className)}\n onClick={(e: React.MouseEvent<HTMLElement>) => {\n props.onClick?.(e);\n if (!hasClickableParent(e.currentTarget)) {\n e.stopPropagation();\n e.preventDefault();\n runAsynchronously(async () => {\n try {\n await navigator.clipboard.writeText(getNodeText(props.children));\n toast({ description: 'Copied to clipboard!', variant: 'success' });\n } catch (e) {\n toast({ description: 'Failed to copy to clipboard', variant: 'destructive' });\n }\n });\n }\n }}\n />;\n});\nInlineCode.displayName = \"Code\";\n\nexport { InlineCode };\n"],"mappings":";;;;;;;;;;;;;;AAUA,MAAM,wEAGH,OAAO,QAAQ;CAChB,MAAM,EAAE,wCAAqB;AAE7B,QAAO,2CAAC;EACD;EACL,GAAI;EACJ,sCAAc,4GAA4G,MAAM,UAAU;EAC1I,UAAU,MAAqC;AAC7C,SAAM,UAAU,EAAE;AAClB,OAAI,yDAAoB,EAAE,cAAc,EAAE;AACxC,MAAE,iBAAiB;AACnB,MAAE,gBAAgB;AAClB,gEAAkB,YAAY;AAC5B,SAAI;AACF,YAAM,UAAU,UAAU,6DAAsB,MAAM,SAAS,CAAC;AAChE,YAAM;OAAE,aAAa;OAAwB,SAAS;OAAW,CAAC;cAC3D,GAAG;AACV,YAAM;OAAE,aAAa;OAA+B,SAAS;OAAe,CAAC;;MAE/E;;;GAGN;EACF;AACF,WAAW,cAAc"}
@@ -5,26 +5,26 @@ const require_chunk = require('../../chunk-BE-pF4vm.js');
5
5
  let react = require("react");
6
6
  react = require_chunk.__toESM(react);
7
7
  let react_jsx_runtime = require("react/jsx-runtime");
8
- let _stackframe_stack_shared_dist_utils_react = require("@hexclave/shared/dist/utils/react");
8
+ let _hexclave_shared_dist_utils_react = require("@hexclave/shared/dist/utils/react");
9
9
  let _radix_ui_react_icons = require("@radix-ui/react-icons");
10
10
  let ______lib_utils_js = require("../../lib/utils.js");
11
11
  let input_otp = require("input-otp");
12
12
 
13
13
  //#region src/components/ui/input-otp.tsx
14
- const InputOTP = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeeded)(({ className, containerClassName, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(input_otp.OTPInput, {
14
+ const InputOTP = (0, _hexclave_shared_dist_utils_react.forwardRefIfNeeded)(({ className, containerClassName, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(input_otp.OTPInput, {
15
15
  ref,
16
16
  containerClassName: (0, ______lib_utils_js.cn)("stack-scope flex items-center gap-2 has-[:disabled]:opacity-50", containerClassName),
17
17
  className: (0, ______lib_utils_js.cn)("disabled:cursor-not-allowed", className),
18
18
  ...props
19
19
  }));
20
20
  InputOTP.displayName = "InputOTP";
21
- const InputOTPGroup = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeeded)(({ className, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
21
+ const InputOTPGroup = (0, _hexclave_shared_dist_utils_react.forwardRefIfNeeded)(({ className, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
22
22
  ref,
23
23
  className: (0, ______lib_utils_js.cn)("flex items-center gap-1", className),
24
24
  ...props
25
25
  }));
26
26
  InputOTPGroup.displayName = "InputOTPGroup";
27
- const InputOTPSlot = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeeded)(({ index, className, size = "default", ...props }, ref) => {
27
+ const InputOTPSlot = (0, _hexclave_shared_dist_utils_react.forwardRefIfNeeded)(({ index, className, size = "default", ...props }, ref) => {
28
28
  const { char, hasFakeCaret, isActive } = react.default.useContext(input_otp.OTPInputContext).slots[index];
29
29
  return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
30
30
  ref,
@@ -37,7 +37,7 @@ const InputOTPSlot = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfN
37
37
  });
38
38
  });
39
39
  InputOTPSlot.displayName = "InputOTPSlot";
40
- const InputOTPSeparator = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeeded)(({ ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
40
+ const InputOTPSeparator = (0, _hexclave_shared_dist_utils_react.forwardRefIfNeeded)(({ ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
41
41
  ref,
42
42
  role: "separator",
43
43
  ...props,
@@ -1 +1 @@
1
- {"version":3,"file":"input-otp.js","names":["OTPInput","React","OTPInputContext","DashIcon"],"sources":["../../../src/components/ui/input-otp.tsx"],"sourcesContent":["\"use client\";\n\nimport React from \"react\";\nimport { forwardRefIfNeeded } from \"@stackframe/stack-shared/dist/utils/react\";\nimport { DashIcon } from \"@radix-ui/react-icons\";\nimport { OTPInput, OTPInputContext } from \"input-otp\";\n\nimport { cn } from \"../../lib/utils\";\n\nconst InputOTP: React.FC<React.ComponentPropsWithoutRef<typeof OTPInput>> = forwardRefIfNeeded<\n React.ElementRef<typeof OTPInput>,\n React.ComponentPropsWithoutRef<typeof OTPInput>\n>(({ className, containerClassName, ...props }, ref) => (\n <OTPInput\n ref={ref}\n containerClassName={cn(\n \"stack-scope flex items-center gap-2 has-[:disabled]:opacity-50\",\n containerClassName\n )}\n className={cn(\"disabled:cursor-not-allowed\", className)}\n {...props}\n />\n));\nInputOTP.displayName = \"InputOTP\";\n\nconst InputOTPGroup = forwardRefIfNeeded<\n React.ElementRef<\"div\">,\n React.ComponentPropsWithoutRef<\"div\">\n>(({ className, ...props }, ref) => (\n <div ref={ref} className={cn(\"flex items-center gap-1\", className)} {...props} />\n));\nInputOTPGroup.displayName = \"InputOTPGroup\";\n\nconst InputOTPSlot = forwardRefIfNeeded<\n React.ElementRef<\"div\">,\n React.ComponentPropsWithoutRef<\"div\"> & { index: number, size?: 'default' | 'lg' }\n>(({ index, className, size = 'default', ...props }, ref) => {\n const inputOTPContext = React.useContext(OTPInputContext);\n const { char, hasFakeCaret, isActive } = inputOTPContext.slots[index];\n\n return (\n <div\n ref={ref}\n className={cn(\n \"relative flex h-9 w-9 items-center justify-center border border-input text-sm rounded-md\",\n size === 'lg' ? 'h-10 w-10 text-lg font-medium' : '',\n isActive && \"z-10 ring-1 ring-ring\",\n className\n )}\n {...props}\n >\n {char}\n {hasFakeCaret && (\n <div className=\"pointer-events-none absolute inset-0 flex items-center justify-center\">\n <div className=\"h-4 w-px animate-caret-blink bg-foreground duration-1000\" />\n </div>\n )}\n </div>\n );\n});\nInputOTPSlot.displayName = \"InputOTPSlot\";\n\nconst InputOTPSeparator = forwardRefIfNeeded<\n React.ElementRef<\"div\">,\n React.ComponentPropsWithoutRef<\"div\">\n>(({ ...props }, ref) => (\n <div ref={ref} role=\"separator\" {...props}>\n <DashIcon />\n </div>\n));\nInputOTPSeparator.displayName = \"InputOTPSeparator\";\n\nexport { InputOTP, InputOTPGroup, InputOTPSlot, InputOTPSeparator };\n"],"mappings":";;;;;;;;;;;;;AASA,MAAM,8EAGH,EAAE,WAAW,oBAAoB,GAAG,SAAS,QAC9C,2CAACA;CACM;CACL,+CACE,kEACA,mBACD;CACD,sCAAc,+BAA+B,UAAU;CACvD,GAAI;EACJ,CACF;AACF,SAAS,cAAc;AAEvB,MAAM,mFAGH,EAAE,WAAW,GAAG,SAAS,QAC1B,2CAAC;CAAS;CAAK,sCAAc,2BAA2B,UAAU;CAAE,GAAI;EAAS,CACjF;AACF,cAAc,cAAc;AAE5B,MAAM,kFAGH,EAAE,OAAO,WAAW,OAAO,WAAW,GAAG,SAAS,QAAQ;CAE3D,MAAM,EAAE,MAAM,cAAc,aADJC,cAAM,WAAWC,0BAAgB,CACA,MAAM;AAE/D,QACE,4CAAC;EACM;EACL,sCACE,4FACA,SAAS,OAAO,kCAAkC,IAClD,YAAY,yBACZ,UACD;EACD,GAAI;aAEH,MACA,gBACC,2CAAC;GAAI,WAAU;aACb,2CAAC,SAAI,WAAU,6DAA6D;IACxE;GAEJ;EAER;AACF,aAAa,cAAc;AAE3B,MAAM,uFAGH,EAAE,GAAG,SAAS,QACf,2CAAC;CAAS;CAAK,MAAK;CAAY,GAAI;WAClC,2CAACC,mCAAW;EACR,CACN;AACF,kBAAkB,cAAc"}
1
+ {"version":3,"file":"input-otp.js","names":["OTPInput","React","OTPInputContext","DashIcon"],"sources":["../../../src/components/ui/input-otp.tsx"],"sourcesContent":["\"use client\";\n\nimport React from \"react\";\nimport { forwardRefIfNeeded } from \"@hexclave/shared/dist/utils/react\";\nimport { DashIcon } from \"@radix-ui/react-icons\";\nimport { OTPInput, OTPInputContext } from \"input-otp\";\n\nimport { cn } from \"../../lib/utils\";\n\nconst InputOTP: React.FC<React.ComponentPropsWithoutRef<typeof OTPInput>> = forwardRefIfNeeded<\n React.ElementRef<typeof OTPInput>,\n React.ComponentPropsWithoutRef<typeof OTPInput>\n>(({ className, containerClassName, ...props }, ref) => (\n <OTPInput\n ref={ref}\n containerClassName={cn(\n \"stack-scope flex items-center gap-2 has-[:disabled]:opacity-50\",\n containerClassName\n )}\n className={cn(\"disabled:cursor-not-allowed\", className)}\n {...props}\n />\n));\nInputOTP.displayName = \"InputOTP\";\n\nconst InputOTPGroup = forwardRefIfNeeded<\n React.ElementRef<\"div\">,\n React.ComponentPropsWithoutRef<\"div\">\n>(({ className, ...props }, ref) => (\n <div ref={ref} className={cn(\"flex items-center gap-1\", className)} {...props} />\n));\nInputOTPGroup.displayName = \"InputOTPGroup\";\n\nconst InputOTPSlot = forwardRefIfNeeded<\n React.ElementRef<\"div\">,\n React.ComponentPropsWithoutRef<\"div\"> & { index: number, size?: 'default' | 'lg' }\n>(({ index, className, size = 'default', ...props }, ref) => {\n const inputOTPContext = React.useContext(OTPInputContext);\n const { char, hasFakeCaret, isActive } = inputOTPContext.slots[index];\n\n return (\n <div\n ref={ref}\n className={cn(\n \"relative flex h-9 w-9 items-center justify-center border border-input text-sm rounded-md\",\n size === 'lg' ? 'h-10 w-10 text-lg font-medium' : '',\n isActive && \"z-10 ring-1 ring-ring\",\n className\n )}\n {...props}\n >\n {char}\n {hasFakeCaret && (\n <div className=\"pointer-events-none absolute inset-0 flex items-center justify-center\">\n <div className=\"h-4 w-px animate-caret-blink bg-foreground duration-1000\" />\n </div>\n )}\n </div>\n );\n});\nInputOTPSlot.displayName = \"InputOTPSlot\";\n\nconst InputOTPSeparator = forwardRefIfNeeded<\n React.ElementRef<\"div\">,\n React.ComponentPropsWithoutRef<\"div\">\n>(({ ...props }, ref) => (\n <div ref={ref} role=\"separator\" {...props}>\n <DashIcon />\n </div>\n));\nInputOTPSeparator.displayName = \"InputOTPSeparator\";\n\nexport { InputOTP, InputOTPGroup, InputOTPSlot, InputOTPSeparator };\n"],"mappings":";;;;;;;;;;;;;AASA,MAAM,sEAGH,EAAE,WAAW,oBAAoB,GAAG,SAAS,QAC9C,2CAACA;CACM;CACL,+CACE,kEACA,mBACD;CACD,sCAAc,+BAA+B,UAAU;CACvD,GAAI;EACJ,CACF;AACF,SAAS,cAAc;AAEvB,MAAM,2EAGH,EAAE,WAAW,GAAG,SAAS,QAC1B,2CAAC;CAAS;CAAK,sCAAc,2BAA2B,UAAU;CAAE,GAAI;EAAS,CACjF;AACF,cAAc,cAAc;AAE5B,MAAM,0EAGH,EAAE,OAAO,WAAW,OAAO,WAAW,GAAG,SAAS,QAAQ;CAE3D,MAAM,EAAE,MAAM,cAAc,aADJC,cAAM,WAAWC,0BAAgB,CACA,MAAM;AAE/D,QACE,4CAAC;EACM;EACL,sCACE,4FACA,SAAS,OAAO,kCAAkC,IAClD,YAAY,yBACZ,UACD;EACD,GAAI;aAEH,MACA,gBACC,2CAAC;GAAI,WAAU;aACb,2CAAC,SAAI,WAAU,6DAA6D;IACxE;GAEJ;EAER;AACF,aAAa,cAAc;AAE3B,MAAM,+EAGH,EAAE,GAAG,SAAS,QACf,2CAAC;CAAS;CAAK,MAAK;CAAY,GAAI;WAClC,2CAACC,mCAAW;EACR,CACN;AACF,kBAAkB,cAAc"}
@@ -3,11 +3,11 @@ const require_chunk = require('../../chunk-BE-pF4vm.js');
3
3
  let react = require("react");
4
4
  react = require_chunk.__toESM(react);
5
5
  let react_jsx_runtime = require("react/jsx-runtime");
6
- let _stackframe_stack_shared_dist_utils_react = require("@hexclave/shared/dist/utils/react");
6
+ let _hexclave_shared_dist_utils_react = require("@hexclave/shared/dist/utils/react");
7
7
  let ______lib_utils_js = require("../../lib/utils.js");
8
8
 
9
9
  //#region src/components/ui/input.tsx
10
- const Input = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeeded)(({ className, type, prefixItem, ...props }, ref) => {
10
+ const Input = (0, _hexclave_shared_dist_utils_react.forwardRefIfNeeded)(({ className, type, prefixItem, ...props }, ref) => {
11
11
  const baseClasses = "stack-scope flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50";
12
12
  if (prefixItem) return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
13
13
  className: "flex flex-row items-center backdrop-blur-md bg-white/20 dark:bg-black/20 flex-1",
@@ -32,7 +32,7 @@ const Input = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeeded)(
32
32
  });
33
33
  });
34
34
  Input.displayName = "Input";
35
- const DelayedInput = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeeded)(({ delay = 500, defaultValue, ...props }, ref) => {
35
+ const DelayedInput = (0, _hexclave_shared_dist_utils_react.forwardRefIfNeeded)(({ delay = 500, defaultValue, ...props }, ref) => {
36
36
  const [value, setValue] = react.default.useState(defaultValue ?? "");
37
37
  const timeout = react.default.useRef(null);
38
38
  const onChange = (e) => {
@@ -1 +1 @@
1
- {"version":3,"file":"input.js","names":["React"],"sources":["../../../src/components/ui/input.tsx"],"sourcesContent":["import { forwardRefIfNeeded } from \"@stackframe/stack-shared/dist/utils/react\";\nimport React from \"react\";\n\nimport { cn } from \"../../lib/utils\";\n\nexport type InputProps = {\n prefixItem?: React.ReactNode,\n} & React.InputHTMLAttributes<HTMLInputElement>\n\nexport const Input = forwardRefIfNeeded<HTMLInputElement, InputProps>(\n ({ className, type, prefixItem, ...props }, ref) => {\n const baseClasses = \"stack-scope flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50\";\n\n if (prefixItem) {\n return (\n <div className=\"flex flex-row items-center backdrop-blur-md bg-white/20 dark:bg-black/20 flex-1\">\n <div className={'flex self-stretch justify-center items-center text-muted-foreground pl-3 select-none bg-muted/70 pr-3 border-r border-input rounded-l-md'}>\n {prefixItem}\n </div>\n <input\n type={type}\n className={cn(baseClasses, 'rounded-l-none', className)}\n ref={ref}\n {...props}\n />\n </div>\n );\n } else {\n return (\n <div className=\"flex flex-row items-center backdrop-blur-md bg-white/20 dark:bg-black/20 flex-1\">\n <input\n type={type}\n className={cn(baseClasses, className)}\n ref={ref}\n {...props}\n />\n </div>\n );\n }\n }\n);\nInput.displayName = \"Input\";\n\n\nexport type DelayedInputProps = {\n delay?: number,\n} & InputProps\n\nexport const DelayedInput = forwardRefIfNeeded<HTMLInputElement, DelayedInputProps>(\n ({ delay = 500, defaultValue, ...props }, ref) => {\n const [value, setValue] = React.useState(defaultValue ?? \"\");\n\n const timeout = React.useRef<ReturnType<typeof setTimeout> | null>(null);\n\n const onChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n setValue(e.target.value);\n if (timeout.current) {\n clearTimeout(timeout.current);\n }\n timeout.current = setTimeout(() => {\n props.onChange?.(e);\n }, delay);\n };\n\n return <Input ref={ref} {...props} value={value} onChange={onChange} />;\n }\n);\nDelayedInput.displayName = \"DelayedInput\";\n"],"mappings":";;;;;;;;;AASA,MAAa,2EACV,EAAE,WAAW,MAAM,YAAY,GAAG,SAAS,QAAQ;CAClD,MAAM,cAAe;AAErB,KAAI,WACF,QACE,4CAAC;EAAI,WAAU;aACb,2CAAC;GAAI,WAAW;aACb;IACG,EACN,2CAAC;GACO;GACN,sCAAc,aAAa,kBAAkB,UAAU;GAClD;GACL,GAAI;IACJ;GACE;KAGR,QACE,2CAAC;EAAI,WAAU;YACb,2CAAC;GACO;GACN,sCAAc,aAAa,UAAU;GAChC;GACL,GAAI;IACJ;GACE;EAIb;AACD,MAAM,cAAc;AAOpB,MAAa,kFACV,EAAE,QAAQ,KAAK,cAAc,GAAG,SAAS,QAAQ;CAChD,MAAM,CAAC,OAAO,YAAYA,cAAM,SAAS,gBAAgB,GAAG;CAE5D,MAAM,UAAUA,cAAM,OAA6C,KAAK;CAExE,MAAM,YAAY,MAA2C;AAC3D,WAAS,EAAE,OAAO,MAAM;AACxB,MAAI,QAAQ,QACV,cAAa,QAAQ,QAAQ;AAE/B,UAAQ,UAAU,iBAAiB;AACjC,SAAM,WAAW,EAAE;KAClB,MAAM;;AAGX,QAAO,2CAAC;EAAW;EAAK,GAAI;EAAc;EAAiB;GAAY;EAE1E;AACD,aAAa,cAAc"}
1
+ {"version":3,"file":"input.js","names":["React"],"sources":["../../../src/components/ui/input.tsx"],"sourcesContent":["import { forwardRefIfNeeded } from \"@hexclave/shared/dist/utils/react\";\nimport React from \"react\";\n\nimport { cn } from \"../../lib/utils\";\n\nexport type InputProps = {\n prefixItem?: React.ReactNode,\n} & React.InputHTMLAttributes<HTMLInputElement>\n\nexport const Input = forwardRefIfNeeded<HTMLInputElement, InputProps>(\n ({ className, type, prefixItem, ...props }, ref) => {\n const baseClasses = \"stack-scope flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50\";\n\n if (prefixItem) {\n return (\n <div className=\"flex flex-row items-center backdrop-blur-md bg-white/20 dark:bg-black/20 flex-1\">\n <div className={'flex self-stretch justify-center items-center text-muted-foreground pl-3 select-none bg-muted/70 pr-3 border-r border-input rounded-l-md'}>\n {prefixItem}\n </div>\n <input\n type={type}\n className={cn(baseClasses, 'rounded-l-none', className)}\n ref={ref}\n {...props}\n />\n </div>\n );\n } else {\n return (\n <div className=\"flex flex-row items-center backdrop-blur-md bg-white/20 dark:bg-black/20 flex-1\">\n <input\n type={type}\n className={cn(baseClasses, className)}\n ref={ref}\n {...props}\n />\n </div>\n );\n }\n }\n);\nInput.displayName = \"Input\";\n\n\nexport type DelayedInputProps = {\n delay?: number,\n} & InputProps\n\nexport const DelayedInput = forwardRefIfNeeded<HTMLInputElement, DelayedInputProps>(\n ({ delay = 500, defaultValue, ...props }, ref) => {\n const [value, setValue] = React.useState(defaultValue ?? \"\");\n\n const timeout = React.useRef<ReturnType<typeof setTimeout> | null>(null);\n\n const onChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n setValue(e.target.value);\n if (timeout.current) {\n clearTimeout(timeout.current);\n }\n timeout.current = setTimeout(() => {\n props.onChange?.(e);\n }, delay);\n };\n\n return <Input ref={ref} {...props} value={value} onChange={onChange} />;\n }\n);\nDelayedInput.displayName = \"DelayedInput\";\n"],"mappings":";;;;;;;;;AASA,MAAa,mEACV,EAAE,WAAW,MAAM,YAAY,GAAG,SAAS,QAAQ;CAClD,MAAM,cAAe;AAErB,KAAI,WACF,QACE,4CAAC;EAAI,WAAU;aACb,2CAAC;GAAI,WAAW;aACb;IACG,EACN,2CAAC;GACO;GACN,sCAAc,aAAa,kBAAkB,UAAU;GAClD;GACL,GAAI;IACJ;GACE;KAGR,QACE,2CAAC;EAAI,WAAU;YACb,2CAAC;GACO;GACN,sCAAc,aAAa,UAAU;GAChC;GACL,GAAI;IACJ;GACE;EAIb;AACD,MAAM,cAAc;AAOpB,MAAa,0EACV,EAAE,QAAQ,KAAK,cAAc,GAAG,SAAS,QAAQ;CAChD,MAAM,CAAC,OAAO,YAAYA,cAAM,SAAS,gBAAgB,GAAG;CAE5D,MAAM,UAAUA,cAAM,OAA6C,KAAK;CAExE,MAAM,YAAY,MAA2C;AAC3D,WAAS,EAAE,OAAO,MAAM;AACxB,MAAI,QAAQ,QACV,cAAa,QAAQ,QAAQ;AAE/B,UAAQ,UAAU,iBAAiB;AACjC,SAAM,WAAW,EAAE;KAClB,MAAM;;AAGX,QAAO,2CAAC;EAAW;EAAK,GAAI;EAAc;EAAiB;GAAY;EAE1E;AACD,aAAa,cAAc"}
@@ -5,7 +5,7 @@ const require_chunk = require('../../chunk-BE-pF4vm.js');
5
5
  let react = require("react");
6
6
  react = require_chunk.__toESM(react);
7
7
  let react_jsx_runtime = require("react/jsx-runtime");
8
- let _stackframe_stack_shared_dist_utils_react = require("@hexclave/shared/dist/utils/react");
8
+ let _hexclave_shared_dist_utils_react = require("@hexclave/shared/dist/utils/react");
9
9
  let ______lib_utils_js = require("../../lib/utils.js");
10
10
  let class_variance_authority = require("class-variance-authority");
11
11
  let _radix_ui_react_label = require("@radix-ui/react-label");
@@ -13,13 +13,13 @@ _radix_ui_react_label = require_chunk.__toESM(_radix_ui_react_label);
13
13
 
14
14
  //#region src/components/ui/label.tsx
15
15
  const labelVariants = (0, class_variance_authority.cva)("stack-scope text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70 text-gray-600 dark:text-gray-400");
16
- const Label = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeeded)(({ className, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)("label", {
16
+ const Label = (0, _hexclave_shared_dist_utils_react.forwardRefIfNeeded)(({ className, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)("label", {
17
17
  ref,
18
18
  className: (0, ______lib_utils_js.cn)(labelVariants(), className),
19
19
  ...props
20
20
  }));
21
21
  Label.displayName = _radix_ui_react_label.Root.displayName;
22
- const SpanLabel = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeeded)(({ className, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
22
+ const SpanLabel = (0, _hexclave_shared_dist_utils_react.forwardRefIfNeeded)(({ className, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
23
23
  ref,
24
24
  className: (0, ______lib_utils_js.cn)(labelVariants(), className),
25
25
  ...props
@@ -1 +1 @@
1
- {"version":3,"file":"label.js","names":["LabelPrimitive"],"sources":["../../../src/components/ui/label.tsx"],"sourcesContent":["\"use client\";\n\nimport React from \"react\";\nimport { forwardRefIfNeeded } from \"@stackframe/stack-shared/dist/utils/react\";\nimport * as LabelPrimitive from \"@radix-ui/react-label\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"../../lib/utils\";\n\nconst labelVariants = cva(\n \"stack-scope text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70 text-gray-600 dark:text-gray-400\",\n);\n\nconst Label = forwardRefIfNeeded<\n React.ElementRef<typeof LabelPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof LabelPrimitive.Root> &\n VariantProps<typeof labelVariants>\n>(({ className, ...props }, ref) => (\n <label\n ref={ref}\n className={cn(labelVariants(), className)}\n {...props}\n />\n));\nLabel.displayName = LabelPrimitive.Root.displayName;\n\nconst SpanLabel = forwardRefIfNeeded<\n React.ElementRef<typeof LabelPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof LabelPrimitive.Root> &\n VariantProps<typeof labelVariants>\n>(({ className, ...props }, ref) => (\n <span\n ref={ref}\n className={cn(labelVariants(), className)}\n {...props}\n />\n));\nSpanLabel.displayName = LabelPrimitive.Root.displayName;\n\nexport { Label, SpanLabel };\n"],"mappings":";;;;;;;;;;;;;;AASA,MAAM,kDACJ,0IACD;AAED,MAAM,2EAIH,EAAE,WAAW,GAAG,SAAS,QAC1B,2CAAC;CACM;CACL,sCAAc,eAAe,EAAE,UAAU;CACzC,GAAI;EACJ,CACF;AACF,MAAM,cAAcA,sBAAe,KAAK;AAExC,MAAM,+EAIH,EAAE,WAAW,GAAG,SAAS,QAC1B,2CAAC;CACM;CACL,sCAAc,eAAe,EAAE,UAAU;CACzC,GAAI;EACJ,CACF;AACF,UAAU,cAAcA,sBAAe,KAAK"}
1
+ {"version":3,"file":"label.js","names":["LabelPrimitive"],"sources":["../../../src/components/ui/label.tsx"],"sourcesContent":["\"use client\";\n\nimport React from \"react\";\nimport { forwardRefIfNeeded } from \"@hexclave/shared/dist/utils/react\";\nimport * as LabelPrimitive from \"@radix-ui/react-label\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"../../lib/utils\";\n\nconst labelVariants = cva(\n \"stack-scope text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70 text-gray-600 dark:text-gray-400\",\n);\n\nconst Label = forwardRefIfNeeded<\n React.ElementRef<typeof LabelPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof LabelPrimitive.Root> &\n VariantProps<typeof labelVariants>\n>(({ className, ...props }, ref) => (\n <label\n ref={ref}\n className={cn(labelVariants(), className)}\n {...props}\n />\n));\nLabel.displayName = LabelPrimitive.Root.displayName;\n\nconst SpanLabel = forwardRefIfNeeded<\n React.ElementRef<typeof LabelPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof LabelPrimitive.Root> &\n VariantProps<typeof labelVariants>\n>(({ className, ...props }, ref) => (\n <span\n ref={ref}\n className={cn(labelVariants(), className)}\n {...props}\n />\n));\nSpanLabel.displayName = LabelPrimitive.Root.displayName;\n\nexport { Label, SpanLabel };\n"],"mappings":";;;;;;;;;;;;;;AASA,MAAM,kDACJ,0IACD;AAED,MAAM,mEAIH,EAAE,WAAW,GAAG,SAAS,QAC1B,2CAAC;CACM;CACL,sCAAc,eAAe,EAAE,UAAU;CACzC,GAAI;EACJ,CACF;AACF,MAAM,cAAcA,sBAAe,KAAK;AAExC,MAAM,uEAIH,EAAE,WAAW,GAAG,SAAS,QAC1B,2CAAC;CACM;CACL,sCAAc,eAAe,EAAE,UAAU;CACzC,GAAI;EACJ,CACF;AACF,UAAU,cAAcA,sBAAe,KAAK"}
@@ -5,7 +5,7 @@ const require_chunk = require('../../chunk-BE-pF4vm.js');
5
5
  let react = require("react");
6
6
  react = require_chunk.__toESM(react);
7
7
  let react_jsx_runtime = require("react/jsx-runtime");
8
- let _stackframe_stack_shared_dist_utils_react = require("@hexclave/shared/dist/utils/react");
8
+ let _hexclave_shared_dist_utils_react = require("@hexclave/shared/dist/utils/react");
9
9
  let _radix_ui_react_icons = require("@radix-ui/react-icons");
10
10
  let ______lib_utils_js = require("../../lib/utils.js");
11
11
  let _radix_ui_react_menubar = require("@radix-ui/react-menubar");
@@ -84,7 +84,7 @@ const MenubarLabel = react.default.forwardRef(({ className, inset, ...props }, r
84
84
  ...props
85
85
  }));
86
86
  MenubarLabel.displayName = _radix_ui_react_menubar.Label.displayName;
87
- const MenubarSeparator = (0, _stackframe_stack_shared_dist_utils_react.forwardRefIfNeeded)(({ className, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_radix_ui_react_menubar.Separator, {
87
+ const MenubarSeparator = (0, _hexclave_shared_dist_utils_react.forwardRefIfNeeded)(({ className, ...props }, ref) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_radix_ui_react_menubar.Separator, {
88
88
  ref,
89
89
  className: (0, ______lib_utils_js.cn)("-mx-1 my-1 h-px bg-muted", className),
90
90
  ...props
@@ -1 +1 @@
1
- {"version":3,"file":"menubar.js","names":["MenubarPrimitive","React","ChevronRightIcon","CheckIcon","DotFilledIcon"],"sources":["../../../src/components/ui/menubar.tsx"],"sourcesContent":["\"use client\";\n\nimport React from \"react\";\nimport { forwardRefIfNeeded } from \"@stackframe/stack-shared/dist/utils/react\";\nimport {\n CheckIcon,\n ChevronRightIcon,\n DotFilledIcon,\n} from \"@radix-ui/react-icons\";\nimport * as MenubarPrimitive from \"@radix-ui/react-menubar\";\n\nimport { cn } from \"../../lib/utils\";\n\nconst MenubarMenu = MenubarPrimitive.Menu as any;\n\nconst MenubarGroup = MenubarPrimitive.Group;\n\nconst MenubarPortal = MenubarPrimitive.Portal;\n\nconst MenubarSub = MenubarPrimitive.Sub;\n\nconst MenubarRadioGroup = MenubarPrimitive.RadioGroup;\n\nconst Menubar = React.forwardRef<\n React.ElementRef<typeof MenubarPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof MenubarPrimitive.Root>\n>(({ className, ...props }, ref) => (\n <MenubarPrimitive.Root\n ref={ref}\n className={cn(\n \"stack-scope flex h-9 items-center space-x-1 rounded-md border bg-background p-1 shadow-sm\",\n className\n )}\n {...props}\n />\n));\nMenubar.displayName = MenubarPrimitive.Root.displayName;\n\nconst MenubarTrigger = React.forwardRef<\n React.ElementRef<typeof MenubarPrimitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof MenubarPrimitive.Trigger>\n>(({ className, ...props }, ref) => (\n <MenubarPrimitive.Trigger\n ref={ref}\n className={cn(\n \"flex cursor-default select-none items-center rounded-sm px-3 py-1 text-sm font-medium outline-none focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground\",\n className\n )}\n {...props}\n />\n));\nMenubarTrigger.displayName = MenubarPrimitive.Trigger.displayName;\n\nconst MenubarSubTrigger = React.forwardRef<\n React.ElementRef<typeof MenubarPrimitive.SubTrigger>,\n React.ComponentPropsWithoutRef<typeof MenubarPrimitive.SubTrigger> & {\n inset?: boolean,\n }\n>(({ className, inset, children, ...props }, ref) => (\n <MenubarPrimitive.SubTrigger\n ref={ref}\n className={cn(\n \"flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground\",\n inset && \"pl-8\",\n className\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"ml-auto h-4 w-4\" />\n </MenubarPrimitive.SubTrigger>\n));\nMenubarSubTrigger.displayName = MenubarPrimitive.SubTrigger.displayName;\n\nconst MenubarSubContent = React.forwardRef<\n React.ElementRef<typeof MenubarPrimitive.SubContent>,\n React.ComponentPropsWithoutRef<typeof MenubarPrimitive.SubContent>\n>(({ className, ...props }, ref) => (\n <MenubarPrimitive.SubContent\n ref={ref}\n className={cn(\n \"z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\n className\n )}\n {...props}\n />\n));\nMenubarSubContent.displayName = MenubarPrimitive.SubContent.displayName;\n\nconst MenubarContent = React.forwardRef<\n React.ElementRef<typeof MenubarPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof MenubarPrimitive.Content>\n>(\n (\n { className, align = \"start\", alignOffset = -4, sideOffset = 8, ...props },\n ref\n ) => (\n <MenubarPrimitive.Portal>\n <MenubarPrimitive.Content\n ref={ref}\n align={align}\n alignOffset={alignOffset}\n sideOffset={sideOffset}\n className={cn(\n \"z-50 min-w-[12rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\n className\n )}\n {...props}\n />\n </MenubarPrimitive.Portal>\n )\n);\nMenubarContent.displayName = MenubarPrimitive.Content.displayName;\n\nconst MenubarItem = React.forwardRef<\n React.ElementRef<typeof MenubarPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof MenubarPrimitive.Item> & {\n inset?: boolean,\n }\n>(({ className, inset, ...props }, ref) => (\n <MenubarPrimitive.Item\n ref={ref}\n className={cn(\n \"relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\n inset && \"pl-8\",\n className\n )}\n {...props}\n />\n));\nMenubarItem.displayName = MenubarPrimitive.Item.displayName;\n\nconst MenubarCheckboxItem = React.forwardRef<\n React.ElementRef<typeof MenubarPrimitive.CheckboxItem>,\n React.ComponentPropsWithoutRef<typeof MenubarPrimitive.CheckboxItem>\n>(({ className, children, checked, ...props }, ref) => (\n <MenubarPrimitive.CheckboxItem\n ref={ref}\n className={cn(\n \"relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\n className\n )}\n checked={checked}\n {...props}\n >\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\n <MenubarPrimitive.ItemIndicator>\n <CheckIcon className=\"h-4 w-4\" />\n </MenubarPrimitive.ItemIndicator>\n </span>\n {children}\n </MenubarPrimitive.CheckboxItem>\n));\nMenubarCheckboxItem.displayName = MenubarPrimitive.CheckboxItem.displayName;\n\nconst MenubarRadioItem = React.forwardRef<\n React.ElementRef<typeof MenubarPrimitive.RadioItem>,\n React.ComponentPropsWithoutRef<typeof MenubarPrimitive.RadioItem>\n>(({ className, children, ...props }, ref) => (\n <MenubarPrimitive.RadioItem\n ref={ref}\n className={cn(\n \"relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\n className\n )}\n {...props}\n >\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\n <MenubarPrimitive.ItemIndicator>\n <DotFilledIcon className=\"h-4 w-4 fill-current\" />\n </MenubarPrimitive.ItemIndicator>\n </span>\n {children}\n </MenubarPrimitive.RadioItem>\n));\nMenubarRadioItem.displayName = MenubarPrimitive.RadioItem.displayName;\n\nconst MenubarLabel = React.forwardRef<\n React.ElementRef<typeof MenubarPrimitive.Label>,\n React.ComponentPropsWithoutRef<typeof MenubarPrimitive.Label> & {\n inset?: boolean,\n }\n>(({ className, inset, ...props }, ref) => (\n <MenubarPrimitive.Label\n ref={ref}\n className={cn(\n \"px-2 py-1.5 text-sm font-semibold\",\n inset && \"pl-8\",\n className\n )}\n {...props}\n />\n));\nMenubarLabel.displayName = MenubarPrimitive.Label.displayName;\n\nconst MenubarSeparator = forwardRefIfNeeded<\n React.ElementRef<typeof MenubarPrimitive.Separator>,\n React.ComponentPropsWithoutRef<typeof MenubarPrimitive.Separator>\n>(({ className, ...props }, ref) => (\n <MenubarPrimitive.Separator\n ref={ref}\n className={cn(\"-mx-1 my-1 h-px bg-muted\", className)}\n {...props}\n />\n));\nMenubarSeparator.displayName = MenubarPrimitive.Separator.displayName;\n\nconst MenubarShortcut = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLSpanElement>) => {\n return (\n <span\n className={cn(\n \"ml-auto text-xs tracking-widest text-muted-foreground\",\n className\n )}\n {...props}\n />\n );\n};\nMenubarShortcut.displayname = \"MenubarShortcut\";\n\nexport {\n Menubar,\n MenubarMenu,\n MenubarTrigger,\n MenubarContent,\n MenubarItem,\n MenubarSeparator,\n MenubarLabel,\n MenubarCheckboxItem,\n MenubarRadioGroup,\n MenubarRadioItem,\n MenubarPortal,\n MenubarSubContent,\n MenubarSubTrigger,\n MenubarGroup,\n MenubarSub,\n MenubarShortcut,\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"menubar.js","names":["MenubarPrimitive","React","ChevronRightIcon","CheckIcon","DotFilledIcon"],"sources":["../../../src/components/ui/menubar.tsx"],"sourcesContent":["\"use client\";\n\nimport React from \"react\";\nimport { forwardRefIfNeeded } from \"@hexclave/shared/dist/utils/react\";\nimport {\n CheckIcon,\n ChevronRightIcon,\n DotFilledIcon,\n} from \"@radix-ui/react-icons\";\nimport * as MenubarPrimitive from \"@radix-ui/react-menubar\";\n\nimport { cn } from \"../../lib/utils\";\n\nconst MenubarMenu = MenubarPrimitive.Menu as any;\n\nconst MenubarGroup = MenubarPrimitive.Group;\n\nconst MenubarPortal = MenubarPrimitive.Portal;\n\nconst MenubarSub = MenubarPrimitive.Sub;\n\nconst MenubarRadioGroup = MenubarPrimitive.RadioGroup;\n\nconst Menubar = React.forwardRef<\n React.ElementRef<typeof MenubarPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof MenubarPrimitive.Root>\n>(({ className, ...props }, ref) => (\n <MenubarPrimitive.Root\n ref={ref}\n className={cn(\n \"stack-scope flex h-9 items-center space-x-1 rounded-md border bg-background p-1 shadow-sm\",\n className\n )}\n {...props}\n />\n));\nMenubar.displayName = MenubarPrimitive.Root.displayName;\n\nconst MenubarTrigger = React.forwardRef<\n React.ElementRef<typeof MenubarPrimitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof MenubarPrimitive.Trigger>\n>(({ className, ...props }, ref) => (\n <MenubarPrimitive.Trigger\n ref={ref}\n className={cn(\n \"flex cursor-default select-none items-center rounded-sm px-3 py-1 text-sm font-medium outline-none focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground\",\n className\n )}\n {...props}\n />\n));\nMenubarTrigger.displayName = MenubarPrimitive.Trigger.displayName;\n\nconst MenubarSubTrigger = React.forwardRef<\n React.ElementRef<typeof MenubarPrimitive.SubTrigger>,\n React.ComponentPropsWithoutRef<typeof MenubarPrimitive.SubTrigger> & {\n inset?: boolean,\n }\n>(({ className, inset, children, ...props }, ref) => (\n <MenubarPrimitive.SubTrigger\n ref={ref}\n className={cn(\n \"flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground\",\n inset && \"pl-8\",\n className\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"ml-auto h-4 w-4\" />\n </MenubarPrimitive.SubTrigger>\n));\nMenubarSubTrigger.displayName = MenubarPrimitive.SubTrigger.displayName;\n\nconst MenubarSubContent = React.forwardRef<\n React.ElementRef<typeof MenubarPrimitive.SubContent>,\n React.ComponentPropsWithoutRef<typeof MenubarPrimitive.SubContent>\n>(({ className, ...props }, ref) => (\n <MenubarPrimitive.SubContent\n ref={ref}\n className={cn(\n \"z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\n className\n )}\n {...props}\n />\n));\nMenubarSubContent.displayName = MenubarPrimitive.SubContent.displayName;\n\nconst MenubarContent = React.forwardRef<\n React.ElementRef<typeof MenubarPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof MenubarPrimitive.Content>\n>(\n (\n { className, align = \"start\", alignOffset = -4, sideOffset = 8, ...props },\n ref\n ) => (\n <MenubarPrimitive.Portal>\n <MenubarPrimitive.Content\n ref={ref}\n align={align}\n alignOffset={alignOffset}\n sideOffset={sideOffset}\n className={cn(\n \"z-50 min-w-[12rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\n className\n )}\n {...props}\n />\n </MenubarPrimitive.Portal>\n )\n);\nMenubarContent.displayName = MenubarPrimitive.Content.displayName;\n\nconst MenubarItem = React.forwardRef<\n React.ElementRef<typeof MenubarPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof MenubarPrimitive.Item> & {\n inset?: boolean,\n }\n>(({ className, inset, ...props }, ref) => (\n <MenubarPrimitive.Item\n ref={ref}\n className={cn(\n \"relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\n inset && \"pl-8\",\n className\n )}\n {...props}\n />\n));\nMenubarItem.displayName = MenubarPrimitive.Item.displayName;\n\nconst MenubarCheckboxItem = React.forwardRef<\n React.ElementRef<typeof MenubarPrimitive.CheckboxItem>,\n React.ComponentPropsWithoutRef<typeof MenubarPrimitive.CheckboxItem>\n>(({ className, children, checked, ...props }, ref) => (\n <MenubarPrimitive.CheckboxItem\n ref={ref}\n className={cn(\n \"relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\n className\n )}\n checked={checked}\n {...props}\n >\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\n <MenubarPrimitive.ItemIndicator>\n <CheckIcon className=\"h-4 w-4\" />\n </MenubarPrimitive.ItemIndicator>\n </span>\n {children}\n </MenubarPrimitive.CheckboxItem>\n));\nMenubarCheckboxItem.displayName = MenubarPrimitive.CheckboxItem.displayName;\n\nconst MenubarRadioItem = React.forwardRef<\n React.ElementRef<typeof MenubarPrimitive.RadioItem>,\n React.ComponentPropsWithoutRef<typeof MenubarPrimitive.RadioItem>\n>(({ className, children, ...props }, ref) => (\n <MenubarPrimitive.RadioItem\n ref={ref}\n className={cn(\n \"relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\n className\n )}\n {...props}\n >\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\n <MenubarPrimitive.ItemIndicator>\n <DotFilledIcon className=\"h-4 w-4 fill-current\" />\n </MenubarPrimitive.ItemIndicator>\n </span>\n {children}\n </MenubarPrimitive.RadioItem>\n));\nMenubarRadioItem.displayName = MenubarPrimitive.RadioItem.displayName;\n\nconst MenubarLabel = React.forwardRef<\n React.ElementRef<typeof MenubarPrimitive.Label>,\n React.ComponentPropsWithoutRef<typeof MenubarPrimitive.Label> & {\n inset?: boolean,\n }\n>(({ className, inset, ...props }, ref) => (\n <MenubarPrimitive.Label\n ref={ref}\n className={cn(\n \"px-2 py-1.5 text-sm font-semibold\",\n inset && \"pl-8\",\n className\n )}\n {...props}\n />\n));\nMenubarLabel.displayName = MenubarPrimitive.Label.displayName;\n\nconst MenubarSeparator = forwardRefIfNeeded<\n React.ElementRef<typeof MenubarPrimitive.Separator>,\n React.ComponentPropsWithoutRef<typeof MenubarPrimitive.Separator>\n>(({ className, ...props }, ref) => (\n <MenubarPrimitive.Separator\n ref={ref}\n className={cn(\"-mx-1 my-1 h-px bg-muted\", className)}\n {...props}\n />\n));\nMenubarSeparator.displayName = MenubarPrimitive.Separator.displayName;\n\nconst MenubarShortcut = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLSpanElement>) => {\n return (\n <span\n className={cn(\n \"ml-auto text-xs tracking-widest text-muted-foreground\",\n className\n )}\n {...props}\n />\n );\n};\nMenubarShortcut.displayname = \"MenubarShortcut\";\n\nexport {\n Menubar,\n MenubarMenu,\n MenubarTrigger,\n MenubarContent,\n MenubarItem,\n MenubarSeparator,\n MenubarLabel,\n MenubarCheckboxItem,\n MenubarRadioGroup,\n MenubarRadioItem,\n MenubarPortal,\n MenubarSubContent,\n MenubarSubTrigger,\n MenubarGroup,\n MenubarSub,\n MenubarShortcut,\n};\n"],"mappings":"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"}