@cupcodev/ui 6.1.1 → 6.1.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.
package/dist/index.js CHANGED
@@ -6074,6 +6074,104 @@ var TelescupUpload = ({
6074
6074
  ] }) });
6075
6075
  };
6076
6076
 
6077
+ // src/lib/themePreference.ts
6078
+ var THEME_STORAGE_KEY = "cupcode-theme";
6079
+ var LEGACY_THEME_STORAGE_KEY = "theme";
6080
+ var THEME_PREFERENCE_STORAGE_KEY = "cupcode-theme-preference";
6081
+ var EXPERIENCE_SETTINGS_STORAGE_KEY = "cc_user_menu_experience_settings";
6082
+ var THEME_PREFERENCE_CHANGE_EVENT = "cupcode:theme-preference-change";
6083
+ function isStoredThemeMode(value) {
6084
+ return value === "light" || value === "dark";
6085
+ }
6086
+ function parseStoredThemePreference(value) {
6087
+ return value === "light" || value === "dark" || value === "system" ? value : null;
6088
+ }
6089
+ function normalizeStoredThemePreference(value) {
6090
+ var _a78;
6091
+ return (_a78 = parseStoredThemePreference(value)) != null ? _a78 : "system";
6092
+ }
6093
+ function readStoredThemeMode() {
6094
+ var _a78;
6095
+ if (typeof window === "undefined") return null;
6096
+ try {
6097
+ const storedTheme = (_a78 = window.localStorage.getItem(THEME_STORAGE_KEY)) != null ? _a78 : window.localStorage.getItem(LEGACY_THEME_STORAGE_KEY);
6098
+ return isStoredThemeMode(storedTheme) ? storedTheme : null;
6099
+ } catch (e) {
6100
+ return null;
6101
+ }
6102
+ }
6103
+ function resolveSystemThemeMode() {
6104
+ if (typeof window !== "undefined" && window.matchMedia("(prefers-color-scheme: dark)").matches) {
6105
+ return "dark";
6106
+ }
6107
+ return "light";
6108
+ }
6109
+ function resolveAppliedThemeMode(preference) {
6110
+ return preference === "system" ? resolveSystemThemeMode() : preference;
6111
+ }
6112
+ function readStoredExperienceSettingsRecord() {
6113
+ if (typeof window === "undefined") return null;
6114
+ try {
6115
+ const raw = window.localStorage.getItem(EXPERIENCE_SETTINGS_STORAGE_KEY);
6116
+ if (!raw) return null;
6117
+ const parsed = JSON.parse(raw);
6118
+ if (!parsed || typeof parsed !== "object" || Array.isArray(parsed)) {
6119
+ return null;
6120
+ }
6121
+ return parsed;
6122
+ } catch (e) {
6123
+ return null;
6124
+ }
6125
+ }
6126
+ function persistThemePreferenceSelection(preference) {
6127
+ if (typeof window === "undefined") return;
6128
+ const appliedMode = resolveAppliedThemeMode(preference);
6129
+ try {
6130
+ window.localStorage.setItem(THEME_PREFERENCE_STORAGE_KEY, preference);
6131
+ window.localStorage.setItem(THEME_STORAGE_KEY, appliedMode);
6132
+ window.localStorage.setItem(LEGACY_THEME_STORAGE_KEY, appliedMode);
6133
+ const currentExperienceSettings = readStoredExperienceSettingsRecord();
6134
+ window.localStorage.setItem(
6135
+ EXPERIENCE_SETTINGS_STORAGE_KEY,
6136
+ JSON.stringify({
6137
+ ...currentExperienceSettings != null ? currentExperienceSettings : {},
6138
+ theme: preference
6139
+ })
6140
+ );
6141
+ } catch (e) {
6142
+ }
6143
+ window.dispatchEvent(
6144
+ new CustomEvent(THEME_PREFERENCE_CHANGE_EVENT, {
6145
+ detail: {
6146
+ appliedMode,
6147
+ preference
6148
+ }
6149
+ })
6150
+ );
6151
+ }
6152
+ function resolveStoredThemePreference(experienceSettingsTheme) {
6153
+ var _a78;
6154
+ if (typeof window === "undefined") {
6155
+ return normalizeStoredThemePreference(experienceSettingsTheme);
6156
+ }
6157
+ try {
6158
+ const storedThemePreference = parseStoredThemePreference(
6159
+ window.localStorage.getItem(THEME_PREFERENCE_STORAGE_KEY)
6160
+ );
6161
+ if (storedThemePreference) {
6162
+ return storedThemePreference;
6163
+ }
6164
+ const parsedExperienceTheme = parseStoredThemePreference(experienceSettingsTheme);
6165
+ const storedThemeMode = readStoredThemeMode();
6166
+ if (parsedExperienceTheme === "system" && storedThemeMode) {
6167
+ return storedThemeMode;
6168
+ }
6169
+ return (_a78 = parsedExperienceTheme != null ? parsedExperienceTheme : storedThemeMode) != null ? _a78 : "system";
6170
+ } catch (e) {
6171
+ return normalizeStoredThemePreference(experienceSettingsTheme);
6172
+ }
6173
+ }
6174
+
6077
6175
  // src/components/cupcode/UserMenuCupcode.tsx
6078
6176
  import { Fragment as Fragment4, jsx as jsx35, jsxs as jsxs22 } from "react/jsx-runtime";
6079
6177
  var PRESENCE_META = {
@@ -6163,12 +6261,9 @@ var CHAT_DELETED_PLACEHOLDER_TEXT = "Mensagem deletada";
6163
6261
  var CHAT_GROUP_PREFIX = "local-group";
6164
6262
  var NOTIFICATIONS_VISIBLE_LIMIT = 8;
6165
6263
  var CHAT_SETTINGS_STORAGE_KEY = "cc_user_menu_chat_settings";
6166
- var EXPERIENCE_SETTINGS_STORAGE_KEY = "cc_user_menu_experience_settings";
6264
+ var EXPERIENCE_SETTINGS_STORAGE_KEY2 = "cc_user_menu_experience_settings";
6167
6265
  var NOTIFICATION_PREFERENCES_STORAGE_KEY = "cc_user_menu_notification_preferences";
6168
6266
  var INTEGRATION_SETTINGS_STORAGE_KEY = "cc_user_menu_integration_connections";
6169
- var THEME_PREFERENCE_STORAGE_KEY = "cupcode-theme-preference";
6170
- var THEME_STORAGE_KEY = "cupcode-theme";
6171
- var LEGACY_THEME_STORAGE_KEY = "theme";
6172
6267
  var SHARED_FILE_URL_REGEX = /https?:\/\/[^\s]+/gi;
6173
6268
  var SHARED_FILE_EXTENSIONS = [
6174
6269
  ".pdf",
@@ -6345,12 +6440,6 @@ var defaultExperienceSettings = () => ({
6345
6440
  contrast: "normal",
6346
6441
  showEmailPublicly: true
6347
6442
  });
6348
- var normalizeThemePreference = (value) => {
6349
- const normalized = value == null ? void 0 : value.trim().toLowerCase();
6350
- if (normalized === "light") return "light";
6351
- if (normalized === "dark") return "dark";
6352
- return "system";
6353
- };
6354
6443
  var normalizeDensityMode = (value) => {
6355
6444
  return (value == null ? void 0 : value.trim().toLowerCase()) === "comfortable" ? "comfortable" : "compact";
6356
6445
  };
@@ -6358,16 +6447,13 @@ var normalizeContrastMode = (value) => {
6358
6447
  return (value == null ? void 0 : value.trim().toLowerCase()) === "high" ? "high" : "normal";
6359
6448
  };
6360
6449
  var readStoredExperienceSettings = () => {
6361
- var _a78, _b7, _c;
6362
6450
  const fallback = defaultExperienceSettings();
6363
6451
  if (typeof window === "undefined") return fallback;
6364
6452
  try {
6365
- const raw = window.localStorage.getItem(EXPERIENCE_SETTINGS_STORAGE_KEY);
6453
+ const raw = window.localStorage.getItem(EXPERIENCE_SETTINGS_STORAGE_KEY2);
6366
6454
  const parsed = raw ? JSON.parse(raw) : null;
6367
- const storedThemePreference = window.localStorage.getItem(THEME_PREFERENCE_STORAGE_KEY);
6368
- const legacyTheme = (_a78 = window.localStorage.getItem(THEME_STORAGE_KEY)) != null ? _a78 : window.localStorage.getItem(LEGACY_THEME_STORAGE_KEY);
6369
6455
  return {
6370
- theme: normalizeThemePreference((_c = (_b7 = parsed == null ? void 0 : parsed.theme) != null ? _b7 : storedThemePreference) != null ? _c : legacyTheme),
6456
+ theme: resolveStoredThemePreference(parsed == null ? void 0 : parsed.theme),
6371
6457
  density: normalizeDensityMode(parsed == null ? void 0 : parsed.density),
6372
6458
  contrast: normalizeContrastMode(parsed == null ? void 0 : parsed.contrast),
6373
6459
  showEmailPublicly: typeof (parsed == null ? void 0 : parsed.showEmailPublicly) === "boolean" ? parsed.showEmailPublicly : fallback.showEmailPublicly
@@ -6379,7 +6465,7 @@ var readStoredExperienceSettings = () => {
6379
6465
  var persistExperienceSettings = (settings) => {
6380
6466
  if (typeof window === "undefined") return;
6381
6467
  try {
6382
- window.localStorage.setItem(EXPERIENCE_SETTINGS_STORAGE_KEY, JSON.stringify(settings));
6468
+ window.localStorage.setItem(EXPERIENCE_SETTINGS_STORAGE_KEY2, JSON.stringify(settings));
6383
6469
  } catch (e) {
6384
6470
  }
6385
6471
  };
@@ -6411,15 +6497,6 @@ var persistIntegrationConnections = (connections) => {
6411
6497
  } catch (e) {
6412
6498
  }
6413
6499
  };
6414
- var resolveSystemThemeMode = () => {
6415
- if (typeof window !== "undefined" && window.matchMedia("(prefers-color-scheme: dark)").matches) {
6416
- return "dark";
6417
- }
6418
- return "light";
6419
- };
6420
- var resolveAppliedThemeMode = (preference) => {
6421
- return preference === "system" ? resolveSystemThemeMode() : preference;
6422
- };
6423
6500
  var applyThemePreference = (preference) => {
6424
6501
  if (typeof document === "undefined") return;
6425
6502
  const root = document.documentElement;
@@ -6429,13 +6506,7 @@ var applyThemePreference = (preference) => {
6429
6506
  root.dataset.theme = appliedMode;
6430
6507
  root.dataset.cupcodeTheme = preference;
6431
6508
  root.style.colorScheme = appliedMode;
6432
- if (typeof window === "undefined") return;
6433
- try {
6434
- window.localStorage.setItem(THEME_PREFERENCE_STORAGE_KEY, preference);
6435
- window.localStorage.setItem(THEME_STORAGE_KEY, appliedMode);
6436
- window.localStorage.setItem(LEGACY_THEME_STORAGE_KEY, appliedMode);
6437
- } catch (e) {
6438
- }
6509
+ persistThemePreferenceSelection(preference);
6439
6510
  };
6440
6511
  var applyAccessibilityAttributes = (settings) => {
6441
6512
  if (typeof document === "undefined") return;
@@ -7240,6 +7311,17 @@ var UserMenuCupcode = ({
7240
7311
  useEffect12(() => {
7241
7312
  applyThemePreference(experienceSettings.theme);
7242
7313
  }, [experienceSettings.theme]);
7314
+ useEffect12(() => {
7315
+ if (typeof window === "undefined") return;
7316
+ const syncThemePreference = () => {
7317
+ const nextThemePreference = resolveStoredThemePreference();
7318
+ setExperienceSettings(
7319
+ (current) => current.theme === nextThemePreference ? current : { ...current, theme: nextThemePreference }
7320
+ );
7321
+ };
7322
+ window.addEventListener(THEME_PREFERENCE_CHANGE_EVENT, syncThemePreference);
7323
+ return () => window.removeEventListener(THEME_PREFERENCE_CHANGE_EVENT, syncThemePreference);
7324
+ }, []);
7243
7325
  useEffect12(() => {
7244
7326
  applyAccessibilityAttributes(experienceSettings);
7245
7327
  }, [experienceSettings]);
@@ -21946,7 +22028,7 @@ function ThemeToggle({ className }) {
21946
22028
  /* @__PURE__ */ jsx38("style", { children: `
21947
22029
  :root {
21948
22030
  --toggle-width: 76px;
21949
- --toggle-height: 42px;
22031
+ --toggle-height: 38px;
21950
22032
  --thumb-size: 30px;
21951
22033
  --toggle-thumb-offset: 34px;
21952
22034
  --duration: 560ms;
@@ -22101,7 +22183,7 @@ function ThemeToggle({ className }) {
22101
22183
 
22102
22184
  .cc-theme-toggle .thumb {
22103
22185
  position: absolute;
22104
- top: 6px;
22186
+ top: 4px;
22105
22187
  left: 6px;
22106
22188
  width: var(--thumb-size);
22107
22189
  height: var(--thumb-size);
@@ -25990,35 +26072,48 @@ var ThemeToggle2 = ({
25990
26072
  onThemeChange
25991
26073
  }) => {
25992
26074
  var _a78;
26075
+ const themeContext = React33.useContext(ThemeContext);
25993
26076
  const [mounted, setMounted] = React33.useState(false);
25994
26077
  const [internalTheme, setInternalTheme] = React33.useState(defaultTheme);
25995
26078
  const isControlled = typeof theme !== "undefined";
25996
- const activeTheme = (_a78 = isControlled ? theme : internalTheme) != null ? _a78 : defaultTheme;
26079
+ const usesProviderTheme = !isControlled && themeContext !== null;
26080
+ const activeTheme = (_a78 = isControlled ? theme : usesProviderTheme ? themeContext.theme : internalTheme) != null ? _a78 : defaultTheme;
25997
26081
  React33.useEffect(() => {
25998
- if (!isControlled) {
26082
+ if (!isControlled && !usesProviderTheme) {
25999
26083
  setInternalTheme(resolveTheme(defaultTheme));
26000
26084
  }
26001
26085
  setMounted(true);
26002
- }, [defaultTheme, isControlled]);
26086
+ }, [defaultTheme, isControlled, usesProviderTheme]);
26003
26087
  React33.useEffect(() => {
26004
- if (!mounted) return;
26088
+ if (!mounted || usesProviderTheme) return;
26005
26089
  applyThemeClass(activeTheme);
26006
26090
  writeStoredTheme(activeTheme);
26007
- }, [activeTheme, mounted]);
26091
+ }, [activeTheme, mounted, usesProviderTheme]);
26008
26092
  React33.useEffect(() => {
26009
- if (isControlled || typeof document === "undefined") return;
26093
+ if (isControlled || usesProviderTheme || typeof document === "undefined") return;
26010
26094
  const observer = new MutationObserver(() => {
26011
26095
  const resolvedTheme = resolveTheme(defaultTheme);
26012
26096
  setInternalTheme((currentTheme) => currentTheme === resolvedTheme ? currentTheme : resolvedTheme);
26013
26097
  });
26014
26098
  observer.observe(document.documentElement, { attributes: true, attributeFilter: ["class", "data-theme"] });
26015
26099
  return () => observer.disconnect();
26016
- }, [defaultTheme, isControlled]);
26100
+ }, [defaultTheme, isControlled, usesProviderTheme]);
26017
26101
  if (!mounted) {
26018
26102
  return /* @__PURE__ */ jsx57("div", { className: cn("w-10 h-10 rounded-lg bg-muted", className) });
26019
26103
  }
26020
- const handleToggle = () => {
26021
- const nextTheme = activeTheme === "dark" ? "light" : "dark";
26104
+ const handleToggle = (event) => {
26105
+ var _a79;
26106
+ const currentTheme = (_a79 = readThemeFromRoot()) != null ? _a79 : activeTheme;
26107
+ const nextTheme = currentTheme === "dark" ? "light" : "dark";
26108
+ if (usesProviderTheme) {
26109
+ themeContext.toggleTheme({
26110
+ x: event.clientX,
26111
+ y: event.clientY
26112
+ });
26113
+ onThemeChange == null ? void 0 : onThemeChange(nextTheme);
26114
+ return;
26115
+ }
26116
+ persistThemePreferenceSelection(nextTheme);
26022
26117
  if (!isControlled) {
26023
26118
  setInternalTheme(nextTheme);
26024
26119
  }
@@ -26050,12 +26145,7 @@ var ThemeToggle2 = ({
26050
26145
  };
26051
26146
 
26052
26147
  // src/components/theme-provider.tsx
26053
- import {
26054
- useCallback as useCallback8,
26055
- useEffect as useEffect20,
26056
- useMemo as useMemo12,
26057
- useState as useState17
26058
- } from "react";
26148
+ import { useCallback as useCallback8, useEffect as useEffect20, useMemo as useMemo12, useState as useState17 } from "react";
26059
26149
  import { flushSync } from "react-dom";
26060
26150
  import { jsx as jsx58 } from "react/jsx-runtime";
26061
26151
  var STORAGE_KEY2 = "cupcode-theme";
@@ -26119,8 +26209,14 @@ function ThemeProvider({ children }) {
26119
26209
  if (!mounted) {
26120
26210
  return;
26121
26211
  }
26122
- persistTheme(theme);
26123
- applyThemeToRoot(theme);
26212
+ const rootTheme = getThemeFromRoot();
26213
+ if (rootTheme !== theme) {
26214
+ applyThemeToRoot(theme);
26215
+ }
26216
+ const storedTheme = getStoredTheme();
26217
+ if (storedTheme !== theme) {
26218
+ persistTheme(theme);
26219
+ }
26124
26220
  }, [mounted, theme]);
26125
26221
  useEffect20(() => {
26126
26222
  if (typeof window === "undefined") {
@@ -26156,35 +26252,47 @@ function ThemeProvider({ children }) {
26156
26252
  });
26157
26253
  return () => observer.disconnect();
26158
26254
  }, []);
26159
- const setTheme = useCallback8((nextTheme) => {
26160
- setThemeState(nextTheme);
26161
- }, []);
26162
- const toggleTheme = useCallback8((coords) => {
26255
+ const applyThemeSelection = useCallback8((nextTheme, coords) => {
26163
26256
  var _a78;
26164
26257
  const documentWithTransition = document;
26258
+ const root = document.documentElement;
26165
26259
  const prefersReducedMotion = window.matchMedia(
26166
26260
  "(prefers-reduced-motion: reduce)"
26167
26261
  ).matches;
26168
26262
  const supportsTransition = typeof documentWithTransition.startViewTransition === "function";
26169
- const flipTheme = () => {
26263
+ const commitTheme = () => {
26264
+ applyThemeToRoot(nextTheme);
26265
+ persistThemePreferenceSelection(nextTheme);
26170
26266
  setThemeState(
26171
- (currentTheme) => currentTheme === "light" ? "dark" : "light"
26267
+ (currentTheme) => currentTheme === nextTheme ? currentTheme : nextTheme
26172
26268
  );
26173
26269
  };
26174
- if (coords) {
26175
- document.documentElement.style.setProperty("--theme-x", `${coords.x}px`);
26176
- document.documentElement.style.setProperty("--theme-y", `${coords.y}px`);
26177
- }
26178
26270
  if (!supportsTransition || prefersReducedMotion) {
26179
- flipTheme();
26271
+ commitTheme();
26180
26272
  return;
26181
26273
  }
26274
+ if (coords) {
26275
+ root.style.setProperty("--theme-x", `${coords.x}px`);
26276
+ root.style.setProperty("--theme-y", `${coords.y}px`);
26277
+ } else {
26278
+ root.style.setProperty("--theme-x", "50%");
26279
+ root.style.setProperty("--theme-y", "50%");
26280
+ }
26182
26281
  (_a78 = documentWithTransition.startViewTransition) == null ? void 0 : _a78.call(documentWithTransition, () => {
26183
26282
  flushSync(() => {
26184
- flipTheme();
26283
+ commitTheme();
26185
26284
  });
26186
26285
  });
26187
26286
  }, []);
26287
+ const setTheme = useCallback8((nextTheme) => {
26288
+ applyThemeSelection(nextTheme);
26289
+ }, [applyThemeSelection]);
26290
+ const toggleTheme = useCallback8((coords) => {
26291
+ var _a78;
26292
+ const currentTheme = (_a78 = getThemeFromRoot()) != null ? _a78 : theme;
26293
+ const nextTheme = currentTheme === "light" ? "dark" : "light";
26294
+ applyThemeSelection(nextTheme, coords);
26295
+ }, [applyThemeSelection, theme]);
26188
26296
  const value = useMemo12(
26189
26297
  () => ({
26190
26298
  theme,
@@ -26342,10 +26450,10 @@ var ToastCupcode = ({
26342
26450
  };
26343
26451
 
26344
26452
  // src/components/cupcode/VideoWatchButton.tsx
26345
- import React35 from "react";
26453
+ import React34 from "react";
26346
26454
  import { jsx as jsx61, jsxs as jsxs40 } from "react/jsx-runtime";
26347
26455
  var PlayGlyph = () => /* @__PURE__ */ jsx61("svg", { viewBox: "0 0 18 18", "aria-hidden": "true", className: "h-[18px] w-[18px]", children: /* @__PURE__ */ jsx61("path", { d: "M6 4.5L13.5 9L6 13.5V4.5Z", fill: "currentColor" }) });
26348
- var VideoWatchButton = React35.forwardRef(
26456
+ var VideoWatchButton = React34.forwardRef(
26349
26457
  ({ className, label = "Assistir", type = "button", "aria-label": ariaLabel, ...props }, ref) => {
26350
26458
  return /* @__PURE__ */ jsxs40(
26351
26459
  "button",
@@ -26376,13 +26484,13 @@ var VideoWatchButton = React35.forwardRef(
26376
26484
  VideoWatchButton.displayName = "VideoWatchButton";
26377
26485
 
26378
26486
  // src/components/cupcode/TooltipCupcode.tsx
26379
- import * as React36 from "react";
26487
+ import * as React35 from "react";
26380
26488
  import * as TooltipPrimitive2 from "@radix-ui/react-tooltip";
26381
26489
  import { jsx as jsx62 } from "react/jsx-runtime";
26382
26490
  var TooltipProvider2 = TooltipPrimitive2.Provider;
26383
26491
  var TooltipCupcode = TooltipPrimitive2.Root;
26384
26492
  var TooltipTrigger2 = TooltipPrimitive2.Trigger;
26385
- var TooltipContent2 = React36.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx62(
26493
+ var TooltipContent2 = React35.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx62(
26386
26494
  TooltipPrimitive2.Content,
26387
26495
  {
26388
26496
  ref,
@@ -26403,14 +26511,14 @@ var TooltipContent2 = React36.forwardRef(({ className, sideOffset = 4, ...props
26403
26511
  TooltipContent2.displayName = TooltipPrimitive2.Content.displayName;
26404
26512
 
26405
26513
  // src/components/ui/accordion.tsx
26406
- import * as React37 from "react";
26514
+ import * as React36 from "react";
26407
26515
  import * as AccordionPrimitive2 from "@radix-ui/react-accordion";
26408
26516
  import { ChevronDown as ChevronDown6 } from "lucide-react";
26409
26517
  import { jsx as jsx63, jsxs as jsxs41 } from "react/jsx-runtime";
26410
26518
  var Accordion = AccordionPrimitive2.Root;
26411
- var AccordionItem2 = React37.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx63(AccordionPrimitive2.Item, { ref, className: cn("border-b", className), ...props }));
26519
+ var AccordionItem2 = React36.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx63(AccordionPrimitive2.Item, { ref, className: cn("border-b", className), ...props }));
26412
26520
  AccordionItem2.displayName = "AccordionItem";
26413
- var AccordionTrigger2 = React37.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx63(AccordionPrimitive2.Header, { className: "flex", children: /* @__PURE__ */ jsxs41(
26521
+ var AccordionTrigger2 = React36.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx63(AccordionPrimitive2.Header, { className: "flex", children: /* @__PURE__ */ jsxs41(
26414
26522
  AccordionPrimitive2.Trigger,
26415
26523
  {
26416
26524
  ref,
@@ -26426,7 +26534,7 @@ var AccordionTrigger2 = React37.forwardRef(({ className, children, ...props }, r
26426
26534
  }
26427
26535
  ) }));
26428
26536
  AccordionTrigger2.displayName = AccordionPrimitive2.Trigger.displayName;
26429
- var AccordionContent2 = React37.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx63(
26537
+ var AccordionContent2 = React36.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx63(
26430
26538
  AccordionPrimitive2.Content,
26431
26539
  {
26432
26540
  ref,
@@ -26438,7 +26546,7 @@ var AccordionContent2 = React37.forwardRef(({ className, children, ...props }, r
26438
26546
  AccordionContent2.displayName = AccordionPrimitive2.Content.displayName;
26439
26547
 
26440
26548
  // src/components/ui/alert.tsx
26441
- import * as React38 from "react";
26549
+ import * as React37 from "react";
26442
26550
  import { cva as cva3 } from "class-variance-authority";
26443
26551
  import { jsx as jsx64 } from "react/jsx-runtime";
26444
26552
  var alertVariants = cva3(
@@ -26455,13 +26563,13 @@ var alertVariants = cva3(
26455
26563
  }
26456
26564
  }
26457
26565
  );
26458
- var Alert = React38.forwardRef(({ className, variant, ...props }, ref) => /* @__PURE__ */ jsx64("div", { ref, role: "alert", className: cn(alertVariants({ variant }), className), ...props }));
26566
+ var Alert = React37.forwardRef(({ className, variant, ...props }, ref) => /* @__PURE__ */ jsx64("div", { ref, role: "alert", className: cn(alertVariants({ variant }), className), ...props }));
26459
26567
  Alert.displayName = "Alert";
26460
- var AlertTitle = React38.forwardRef(
26568
+ var AlertTitle = React37.forwardRef(
26461
26569
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx64("h5", { ref, className: cn("mb-1 font-medium leading-none tracking-tight", className), ...props })
26462
26570
  );
26463
26571
  AlertTitle.displayName = "AlertTitle";
26464
- var AlertDescription = React38.forwardRef(
26572
+ var AlertDescription = React37.forwardRef(
26465
26573
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx64("div", { ref, className: cn("text-sm [&_p]:leading-relaxed", className), ...props })
26466
26574
  );
26467
26575
  AlertDescription.displayName = "AlertDescription";
@@ -26471,13 +26579,13 @@ import * as AspectRatioPrimitive from "@radix-ui/react-aspect-ratio";
26471
26579
  var AspectRatio = AspectRatioPrimitive.Root;
26472
26580
 
26473
26581
  // src/components/ui/breadcrumb.tsx
26474
- import * as React39 from "react";
26582
+ import * as React38 from "react";
26475
26583
  import { Slot as Slot2 } from "@radix-ui/react-slot";
26476
26584
  import { ChevronRight as ChevronRight3, MoreHorizontal } from "lucide-react";
26477
26585
  import { jsx as jsx65, jsxs as jsxs42 } from "react/jsx-runtime";
26478
- var Breadcrumb = React39.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsx65("nav", { ref, "aria-label": "breadcrumb", ...props }));
26586
+ var Breadcrumb = React38.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsx65("nav", { ref, "aria-label": "breadcrumb", ...props }));
26479
26587
  Breadcrumb.displayName = "Breadcrumb";
26480
- var BreadcrumbList = React39.forwardRef(
26588
+ var BreadcrumbList = React38.forwardRef(
26481
26589
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx65(
26482
26590
  "ol",
26483
26591
  {
@@ -26491,16 +26599,16 @@ var BreadcrumbList = React39.forwardRef(
26491
26599
  )
26492
26600
  );
26493
26601
  BreadcrumbList.displayName = "BreadcrumbList";
26494
- var BreadcrumbItem = React39.forwardRef(
26602
+ var BreadcrumbItem = React38.forwardRef(
26495
26603
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx65("li", { ref, className: cn("inline-flex items-center gap-1.5", className), ...props })
26496
26604
  );
26497
26605
  BreadcrumbItem.displayName = "BreadcrumbItem";
26498
- var BreadcrumbLink = React39.forwardRef(({ asChild, className, ...props }, ref) => {
26606
+ var BreadcrumbLink = React38.forwardRef(({ asChild, className, ...props }, ref) => {
26499
26607
  const Comp = asChild ? Slot2 : "a";
26500
26608
  return /* @__PURE__ */ jsx65(Comp, { ref, className: cn("transition-colors hover:text-foreground", className), ...props });
26501
26609
  });
26502
26610
  BreadcrumbLink.displayName = "BreadcrumbLink";
26503
- var BreadcrumbPage = React39.forwardRef(
26611
+ var BreadcrumbPage = React38.forwardRef(
26504
26612
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx65(
26505
26613
  "span",
26506
26614
  {
@@ -26583,45 +26691,45 @@ function Calendar({ className, classNames, showOutsideDays = true, ...props }) {
26583
26691
  Calendar.displayName = "Calendar";
26584
26692
 
26585
26693
  // src/components/ui/card.tsx
26586
- import * as React40 from "react";
26694
+ import * as React39 from "react";
26587
26695
  import { jsx as jsx67 } from "react/jsx-runtime";
26588
- var Card = React40.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx67("div", { ref, className: cn("rounded-lg border bg-card text-card-foreground shadow-sm", className), ...props }));
26696
+ var Card = React39.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx67("div", { ref, className: cn("rounded-lg border bg-card text-card-foreground shadow-sm", className), ...props }));
26589
26697
  Card.displayName = "Card";
26590
- var CardHeader = React40.forwardRef(
26698
+ var CardHeader = React39.forwardRef(
26591
26699
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx67("div", { ref, className: cn("flex flex-col space-y-1.5 p-6", className), ...props })
26592
26700
  );
26593
26701
  CardHeader.displayName = "CardHeader";
26594
- var CardTitle = React40.forwardRef(
26702
+ var CardTitle = React39.forwardRef(
26595
26703
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx67("h3", { ref, className: cn("text-2xl font-semibold leading-none tracking-tight", className), ...props })
26596
26704
  );
26597
26705
  CardTitle.displayName = "CardTitle";
26598
- var CardDescription = React40.forwardRef(
26706
+ var CardDescription = React39.forwardRef(
26599
26707
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx67("p", { ref, className: cn("text-sm text-muted-foreground", className), ...props })
26600
26708
  );
26601
26709
  CardDescription.displayName = "CardDescription";
26602
- var CardContent = React40.forwardRef(
26710
+ var CardContent = React39.forwardRef(
26603
26711
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx67("div", { ref, className: cn("p-6 pt-0", className), ...props })
26604
26712
  );
26605
26713
  CardContent.displayName = "CardContent";
26606
- var CardFooter = React40.forwardRef(
26714
+ var CardFooter = React39.forwardRef(
26607
26715
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx67("div", { ref, className: cn("flex items-center p-6 pt-0", className), ...props })
26608
26716
  );
26609
26717
  CardFooter.displayName = "CardFooter";
26610
26718
 
26611
26719
  // src/components/ui/carousel.tsx
26612
- import * as React41 from "react";
26720
+ import * as React40 from "react";
26613
26721
  import useEmblaCarousel from "embla-carousel-react";
26614
26722
  import { ArrowLeft, ArrowRight } from "lucide-react";
26615
26723
  import { jsx as jsx68, jsxs as jsxs43 } from "react/jsx-runtime";
26616
- var CarouselContext = React41.createContext(null);
26724
+ var CarouselContext = React40.createContext(null);
26617
26725
  function useCarousel() {
26618
- const context = React41.useContext(CarouselContext);
26726
+ const context = React40.useContext(CarouselContext);
26619
26727
  if (!context) {
26620
26728
  throw new Error("useCarousel must be used within a <Carousel />");
26621
26729
  }
26622
26730
  return context;
26623
26731
  }
26624
- var Carousel = React41.forwardRef(
26732
+ var Carousel = React40.forwardRef(
26625
26733
  ({ orientation = "horizontal", opts, setApi, plugins, className, children, ...props }, ref) => {
26626
26734
  const [carouselRef, api] = useEmblaCarousel(
26627
26735
  {
@@ -26630,22 +26738,22 @@ var Carousel = React41.forwardRef(
26630
26738
  },
26631
26739
  plugins
26632
26740
  );
26633
- const [canScrollPrev, setCanScrollPrev] = React41.useState(false);
26634
- const [canScrollNext, setCanScrollNext] = React41.useState(false);
26635
- const onSelect = React41.useCallback((api2) => {
26741
+ const [canScrollPrev, setCanScrollPrev] = React40.useState(false);
26742
+ const [canScrollNext, setCanScrollNext] = React40.useState(false);
26743
+ const onSelect = React40.useCallback((api2) => {
26636
26744
  if (!api2) {
26637
26745
  return;
26638
26746
  }
26639
26747
  setCanScrollPrev(api2.canScrollPrev());
26640
26748
  setCanScrollNext(api2.canScrollNext());
26641
26749
  }, []);
26642
- const scrollPrev = React41.useCallback(() => {
26750
+ const scrollPrev = React40.useCallback(() => {
26643
26751
  api == null ? void 0 : api.scrollPrev();
26644
26752
  }, [api]);
26645
- const scrollNext = React41.useCallback(() => {
26753
+ const scrollNext = React40.useCallback(() => {
26646
26754
  api == null ? void 0 : api.scrollNext();
26647
26755
  }, [api]);
26648
- const handleKeyDown = React41.useCallback(
26756
+ const handleKeyDown = React40.useCallback(
26649
26757
  (event) => {
26650
26758
  if (event.key === "ArrowLeft") {
26651
26759
  event.preventDefault();
@@ -26657,13 +26765,13 @@ var Carousel = React41.forwardRef(
26657
26765
  },
26658
26766
  [scrollPrev, scrollNext]
26659
26767
  );
26660
- React41.useEffect(() => {
26768
+ React40.useEffect(() => {
26661
26769
  if (!api || !setApi) {
26662
26770
  return;
26663
26771
  }
26664
26772
  setApi(api);
26665
26773
  }, [api, setApi]);
26666
- React41.useEffect(() => {
26774
+ React40.useEffect(() => {
26667
26775
  if (!api) {
26668
26776
  return;
26669
26777
  }
@@ -26704,7 +26812,7 @@ var Carousel = React41.forwardRef(
26704
26812
  }
26705
26813
  );
26706
26814
  Carousel.displayName = "Carousel";
26707
- var CarouselContent = React41.forwardRef(
26815
+ var CarouselContent = React40.forwardRef(
26708
26816
  ({ className, ...props }, ref) => {
26709
26817
  const { carouselRef, orientation } = useCarousel();
26710
26818
  return /* @__PURE__ */ jsx68("div", { ref: carouselRef, className: "overflow-hidden", children: /* @__PURE__ */ jsx68(
@@ -26718,7 +26826,7 @@ var CarouselContent = React41.forwardRef(
26718
26826
  }
26719
26827
  );
26720
26828
  CarouselContent.displayName = "CarouselContent";
26721
- var CarouselItem = React41.forwardRef(
26829
+ var CarouselItem = React40.forwardRef(
26722
26830
  ({ className, ...props }, ref) => {
26723
26831
  const { orientation } = useCarousel();
26724
26832
  return /* @__PURE__ */ jsx68(
@@ -26734,7 +26842,7 @@ var CarouselItem = React41.forwardRef(
26734
26842
  }
26735
26843
  );
26736
26844
  CarouselItem.displayName = "CarouselItem";
26737
- var CarouselPrevious = React41.forwardRef(
26845
+ var CarouselPrevious = React40.forwardRef(
26738
26846
  ({ className, variant = "outline", size = "icon", ...props }, ref) => {
26739
26847
  const { orientation, scrollPrev, canScrollPrev } = useCarousel();
26740
26848
  return /* @__PURE__ */ jsxs43(
@@ -26760,7 +26868,7 @@ var CarouselPrevious = React41.forwardRef(
26760
26868
  }
26761
26869
  );
26762
26870
  CarouselPrevious.displayName = "CarouselPrevious";
26763
- var CarouselNext = React41.forwardRef(
26871
+ var CarouselNext = React40.forwardRef(
26764
26872
  ({ className, variant = "outline", size = "icon", ...props }, ref) => {
26765
26873
  const { orientation, scrollNext, canScrollNext } = useCarousel();
26766
26874
  return /* @__PURE__ */ jsxs43(
@@ -26788,20 +26896,20 @@ var CarouselNext = React41.forwardRef(
26788
26896
  CarouselNext.displayName = "CarouselNext";
26789
26897
 
26790
26898
  // src/components/ui/chart.tsx
26791
- import * as React42 from "react";
26899
+ import * as React41 from "react";
26792
26900
  import * as RechartsPrimitive from "recharts";
26793
26901
  import { Fragment as Fragment6, jsx as jsx69, jsxs as jsxs44 } from "react/jsx-runtime";
26794
26902
  var THEMES = { light: "", dark: ".dark" };
26795
- var ChartContext = React42.createContext(null);
26903
+ var ChartContext = React41.createContext(null);
26796
26904
  function useChart() {
26797
- const context = React42.useContext(ChartContext);
26905
+ const context = React41.useContext(ChartContext);
26798
26906
  if (!context) {
26799
26907
  throw new Error("useChart must be used within a <ChartContainer />");
26800
26908
  }
26801
26909
  return context;
26802
26910
  }
26803
- var ChartContainer = React42.forwardRef(({ id, className, children, config, ...props }, ref) => {
26804
- const uniqueId = React42.useId();
26911
+ var ChartContainer = React41.forwardRef(({ id, className, children, config, ...props }, ref) => {
26912
+ const uniqueId = React41.useId();
26805
26913
  const chartId = `chart-${id || uniqueId.replace(/:/g, "")}`;
26806
26914
  return /* @__PURE__ */ jsx69(ChartContext.Provider, { value: { config }, children: /* @__PURE__ */ jsxs44(
26807
26915
  "div",
@@ -26846,7 +26954,7 @@ ${colorConfig.map(([key, itemConfig]) => {
26846
26954
  );
26847
26955
  };
26848
26956
  var ChartTooltip = RechartsPrimitive.Tooltip;
26849
- var ChartTooltipContent = React42.forwardRef(
26957
+ var ChartTooltipContent = React41.forwardRef(
26850
26958
  ({
26851
26959
  active,
26852
26960
  payload,
@@ -26863,7 +26971,7 @@ var ChartTooltipContent = React42.forwardRef(
26863
26971
  labelKey
26864
26972
  }, ref) => {
26865
26973
  const { config } = useChart();
26866
- const tooltipLabel = React42.useMemo(() => {
26974
+ const tooltipLabel = React41.useMemo(() => {
26867
26975
  var _a78;
26868
26976
  if (hideLabel || !(payload == null ? void 0 : payload.length)) {
26869
26977
  return null;
@@ -26949,7 +27057,7 @@ var ChartTooltipContent = React42.forwardRef(
26949
27057
  );
26950
27058
  ChartTooltipContent.displayName = "ChartTooltip";
26951
27059
  var ChartLegend = RechartsPrimitive.Legend;
26952
- var ChartLegendContent = React42.forwardRef(({ className, hideIcon = false, payload, verticalAlign = "bottom", nameKey }, ref) => {
27060
+ var ChartLegendContent = React41.forwardRef(({ className, hideIcon = false, payload, verticalAlign = "bottom", nameKey }, ref) => {
26953
27061
  const { config } = useChart();
26954
27062
  if (!(payload == null ? void 0 : payload.length)) {
26955
27063
  return null;
@@ -27001,11 +27109,11 @@ function getPayloadConfigFromPayload(config, payload, key) {
27001
27109
  }
27002
27110
 
27003
27111
  // src/components/ui/checkbox.tsx
27004
- import * as React43 from "react";
27112
+ import * as React42 from "react";
27005
27113
  import * as CheckboxPrimitive from "@radix-ui/react-checkbox";
27006
27114
  import { Check as Check6 } from "lucide-react";
27007
27115
  import { jsx as jsx70 } from "react/jsx-runtime";
27008
- var Checkbox = React43.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx70(
27116
+ var Checkbox = React42.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx70(
27009
27117
  CheckboxPrimitive.Root,
27010
27118
  {
27011
27119
  ref,
@@ -27026,11 +27134,11 @@ var CollapsibleTrigger2 = CollapsiblePrimitive.CollapsibleTrigger;
27026
27134
  var CollapsibleContent2 = CollapsiblePrimitive.CollapsibleContent;
27027
27135
 
27028
27136
  // src/components/ui/command.tsx
27029
- import * as React44 from "react";
27137
+ import * as React43 from "react";
27030
27138
  import { Command as CommandPrimitive } from "cmdk";
27031
27139
  import { Search as Search3 } from "lucide-react";
27032
27140
  import { jsx as jsx71, jsxs as jsxs45 } from "react/jsx-runtime";
27033
- var Command = React44.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx71(
27141
+ var Command = React43.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx71(
27034
27142
  CommandPrimitive,
27035
27143
  {
27036
27144
  ref,
@@ -27045,7 +27153,7 @@ Command.displayName = CommandPrimitive.displayName;
27045
27153
  var CommandDialog = ({ children, ...props }) => {
27046
27154
  return /* @__PURE__ */ jsx71(Dialog, { ...props, children: /* @__PURE__ */ jsx71(DialogContent, { className: "overflow-hidden p-0 shadow-lg", children: /* @__PURE__ */ jsx71(Command, { className: "[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5", children }) }) });
27047
27155
  };
27048
- var CommandInput = React44.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxs45("div", { className: "flex items-center border-b px-3", "cmdk-input-wrapper": "", children: [
27156
+ var CommandInput = React43.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxs45("div", { className: "flex items-center border-b px-3", "cmdk-input-wrapper": "", children: [
27049
27157
  /* @__PURE__ */ jsx71(Search3, { className: "mr-2 h-4 w-4 shrink-0 opacity-50" }),
27050
27158
  /* @__PURE__ */ jsx71(
27051
27159
  CommandPrimitive.Input,
@@ -27060,7 +27168,7 @@ var CommandInput = React44.forwardRef(({ className, ...props }, ref) => /* @__PU
27060
27168
  )
27061
27169
  ] }));
27062
27170
  CommandInput.displayName = CommandPrimitive.Input.displayName;
27063
- var CommandList = React44.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx71(
27171
+ var CommandList = React43.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx71(
27064
27172
  CommandPrimitive.List,
27065
27173
  {
27066
27174
  ref,
@@ -27069,9 +27177,9 @@ var CommandList = React44.forwardRef(({ className, ...props }, ref) => /* @__PUR
27069
27177
  }
27070
27178
  ));
27071
27179
  CommandList.displayName = CommandPrimitive.List.displayName;
27072
- var CommandEmpty = React44.forwardRef((props, ref) => /* @__PURE__ */ jsx71(CommandPrimitive.Empty, { ref, className: "py-6 text-center text-sm", ...props }));
27180
+ var CommandEmpty = React43.forwardRef((props, ref) => /* @__PURE__ */ jsx71(CommandPrimitive.Empty, { ref, className: "py-6 text-center text-sm", ...props }));
27073
27181
  CommandEmpty.displayName = CommandPrimitive.Empty.displayName;
27074
- var CommandGroup = React44.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx71(
27182
+ var CommandGroup = React43.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx71(
27075
27183
  CommandPrimitive.Group,
27076
27184
  {
27077
27185
  ref,
@@ -27083,9 +27191,9 @@ var CommandGroup = React44.forwardRef(({ className, ...props }, ref) => /* @__PU
27083
27191
  }
27084
27192
  ));
27085
27193
  CommandGroup.displayName = CommandPrimitive.Group.displayName;
27086
- var CommandSeparator = React44.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx71(CommandPrimitive.Separator, { ref, className: cn("-mx-1 h-px bg-border", className), ...props }));
27194
+ var CommandSeparator = React43.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx71(CommandPrimitive.Separator, { ref, className: cn("-mx-1 h-px bg-border", className), ...props }));
27087
27195
  CommandSeparator.displayName = CommandPrimitive.Separator.displayName;
27088
- var CommandItem = React44.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx71(
27196
+ var CommandItem = React43.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx71(
27089
27197
  CommandPrimitive.Item,
27090
27198
  {
27091
27199
  ref,
@@ -27103,7 +27211,7 @@ var CommandShortcut = ({ className, ...props }) => {
27103
27211
  CommandShortcut.displayName = "CommandShortcut";
27104
27212
 
27105
27213
  // src/components/ui/context-menu.tsx
27106
- import * as React45 from "react";
27214
+ import * as React44 from "react";
27107
27215
  import * as ContextMenuPrimitive from "@radix-ui/react-context-menu";
27108
27216
  import { Check as Check7, ChevronRight as ChevronRight5, Circle as Circle3 } from "lucide-react";
27109
27217
  import { jsx as jsx72, jsxs as jsxs46 } from "react/jsx-runtime";
@@ -27113,7 +27221,7 @@ var ContextMenuGroup = ContextMenuPrimitive.Group;
27113
27221
  var ContextMenuPortal = ContextMenuPrimitive.Portal;
27114
27222
  var ContextMenuSub = ContextMenuPrimitive.Sub;
27115
27223
  var ContextMenuRadioGroup = ContextMenuPrimitive.RadioGroup;
27116
- var ContextMenuSubTrigger = React45.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxs46(
27224
+ var ContextMenuSubTrigger = React44.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxs46(
27117
27225
  ContextMenuPrimitive.SubTrigger,
27118
27226
  {
27119
27227
  ref,
@@ -27130,7 +27238,7 @@ var ContextMenuSubTrigger = React45.forwardRef(({ className, inset, children, ..
27130
27238
  }
27131
27239
  ));
27132
27240
  ContextMenuSubTrigger.displayName = ContextMenuPrimitive.SubTrigger.displayName;
27133
- var ContextMenuSubContent = React45.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx72(
27241
+ var ContextMenuSubContent = React44.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx72(
27134
27242
  ContextMenuPrimitive.SubContent,
27135
27243
  {
27136
27244
  ref,
@@ -27142,7 +27250,7 @@ var ContextMenuSubContent = React45.forwardRef(({ className, ...props }, ref) =>
27142
27250
  }
27143
27251
  ));
27144
27252
  ContextMenuSubContent.displayName = ContextMenuPrimitive.SubContent.displayName;
27145
- var ContextMenuContent = React45.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx72(ContextMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx72(
27253
+ var ContextMenuContent = React44.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx72(ContextMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx72(
27146
27254
  ContextMenuPrimitive.Content,
27147
27255
  {
27148
27256
  ref,
@@ -27154,7 +27262,7 @@ var ContextMenuContent = React45.forwardRef(({ className, ...props }, ref) => /*
27154
27262
  }
27155
27263
  ) }));
27156
27264
  ContextMenuContent.displayName = ContextMenuPrimitive.Content.displayName;
27157
- var ContextMenuItem = React45.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx72(
27265
+ var ContextMenuItem = React44.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx72(
27158
27266
  ContextMenuPrimitive.Item,
27159
27267
  {
27160
27268
  ref,
@@ -27167,7 +27275,7 @@ var ContextMenuItem = React45.forwardRef(({ className, inset, ...props }, ref) =
27167
27275
  }
27168
27276
  ));
27169
27277
  ContextMenuItem.displayName = ContextMenuPrimitive.Item.displayName;
27170
- var ContextMenuCheckboxItem = React45.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxs46(
27278
+ var ContextMenuCheckboxItem = React44.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxs46(
27171
27279
  ContextMenuPrimitive.CheckboxItem,
27172
27280
  {
27173
27281
  ref,
@@ -27184,7 +27292,7 @@ var ContextMenuCheckboxItem = React45.forwardRef(({ className, children, checked
27184
27292
  }
27185
27293
  ));
27186
27294
  ContextMenuCheckboxItem.displayName = ContextMenuPrimitive.CheckboxItem.displayName;
27187
- var ContextMenuRadioItem = React45.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs46(
27295
+ var ContextMenuRadioItem = React44.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs46(
27188
27296
  ContextMenuPrimitive.RadioItem,
27189
27297
  {
27190
27298
  ref,
@@ -27200,7 +27308,7 @@ var ContextMenuRadioItem = React45.forwardRef(({ className, children, ...props }
27200
27308
  }
27201
27309
  ));
27202
27310
  ContextMenuRadioItem.displayName = ContextMenuPrimitive.RadioItem.displayName;
27203
- var ContextMenuLabel = React45.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx72(
27311
+ var ContextMenuLabel = React44.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx72(
27204
27312
  ContextMenuPrimitive.Label,
27205
27313
  {
27206
27314
  ref,
@@ -27209,7 +27317,7 @@ var ContextMenuLabel = React45.forwardRef(({ className, inset, ...props }, ref)
27209
27317
  }
27210
27318
  ));
27211
27319
  ContextMenuLabel.displayName = ContextMenuPrimitive.Label.displayName;
27212
- var ContextMenuSeparator = React45.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx72(ContextMenuPrimitive.Separator, { ref, className: cn("-mx-1 my-1 h-px bg-border", className), ...props }));
27320
+ var ContextMenuSeparator = React44.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx72(ContextMenuPrimitive.Separator, { ref, className: cn("-mx-1 my-1 h-px bg-border", className), ...props }));
27213
27321
  ContextMenuSeparator.displayName = ContextMenuPrimitive.Separator.displayName;
27214
27322
  var ContextMenuShortcut = ({ className, ...props }) => {
27215
27323
  return /* @__PURE__ */ jsx72("span", { className: cn("ml-auto text-xs tracking-widest text-muted-foreground", className), ...props });
@@ -27217,31 +27325,31 @@ var ContextMenuShortcut = ({ className, ...props }) => {
27217
27325
  ContextMenuShortcut.displayName = "ContextMenuShortcut";
27218
27326
 
27219
27327
  // src/components/ui/form.tsx
27220
- import * as React47 from "react";
27328
+ import * as React46 from "react";
27221
27329
  import { Slot as Slot3 } from "@radix-ui/react-slot";
27222
27330
  import { Controller, FormProvider, useFormContext } from "react-hook-form";
27223
27331
 
27224
27332
  // src/components/ui/label.tsx
27225
- import * as React46 from "react";
27333
+ import * as React45 from "react";
27226
27334
  import * as LabelPrimitive from "@radix-ui/react-label";
27227
27335
  import { cva as cva4 } from "class-variance-authority";
27228
27336
  import { jsx as jsx73 } from "react/jsx-runtime";
27229
27337
  var labelVariants = cva4("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70");
27230
- var Label4 = React46.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx73(LabelPrimitive.Root, { ref, className: cn(labelVariants(), className), ...props }));
27338
+ var Label4 = React45.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx73(LabelPrimitive.Root, { ref, className: cn(labelVariants(), className), ...props }));
27231
27339
  Label4.displayName = LabelPrimitive.Root.displayName;
27232
27340
 
27233
27341
  // src/components/ui/form.tsx
27234
27342
  import { jsx as jsx74 } from "react/jsx-runtime";
27235
27343
  var Form = FormProvider;
27236
- var FormFieldContext = React47.createContext({});
27344
+ var FormFieldContext = React46.createContext({});
27237
27345
  var FormField = ({
27238
27346
  ...props
27239
27347
  }) => {
27240
27348
  return /* @__PURE__ */ jsx74(FormFieldContext.Provider, { value: { name: props.name }, children: /* @__PURE__ */ jsx74(Controller, { ...props }) });
27241
27349
  };
27242
27350
  var useFormField = () => {
27243
- const fieldContext = React47.useContext(FormFieldContext);
27244
- const itemContext = React47.useContext(FormItemContext);
27351
+ const fieldContext = React46.useContext(FormFieldContext);
27352
+ const itemContext = React46.useContext(FormItemContext);
27245
27353
  const { getFieldState, formState } = useFormContext();
27246
27354
  const fieldState = getFieldState(fieldContext.name, formState);
27247
27355
  if (!fieldContext) {
@@ -27257,20 +27365,20 @@ var useFormField = () => {
27257
27365
  ...fieldState
27258
27366
  };
27259
27367
  };
27260
- var FormItemContext = React47.createContext({});
27261
- var FormItem = React47.forwardRef(
27368
+ var FormItemContext = React46.createContext({});
27369
+ var FormItem = React46.forwardRef(
27262
27370
  ({ className, ...props }, ref) => {
27263
- const id = React47.useId();
27371
+ const id = React46.useId();
27264
27372
  return /* @__PURE__ */ jsx74(FormItemContext.Provider, { value: { id }, children: /* @__PURE__ */ jsx74("div", { ref, className: cn("space-y-2", className), ...props }) });
27265
27373
  }
27266
27374
  );
27267
27375
  FormItem.displayName = "FormItem";
27268
- var FormLabel = React47.forwardRef(({ className, ...props }, ref) => {
27376
+ var FormLabel = React46.forwardRef(({ className, ...props }, ref) => {
27269
27377
  const { error, formItemId } = useFormField();
27270
27378
  return /* @__PURE__ */ jsx74(Label4, { ref, className: cn(error && "text-destructive", className), htmlFor: formItemId, ...props });
27271
27379
  });
27272
27380
  FormLabel.displayName = "FormLabel";
27273
- var FormControl = React47.forwardRef(
27381
+ var FormControl = React46.forwardRef(
27274
27382
  ({ ...props }, ref) => {
27275
27383
  const { error, formItemId, formDescriptionId, formMessageId } = useFormField();
27276
27384
  return /* @__PURE__ */ jsx74(
@@ -27286,14 +27394,14 @@ var FormControl = React47.forwardRef(
27286
27394
  }
27287
27395
  );
27288
27396
  FormControl.displayName = "FormControl";
27289
- var FormDescription = React47.forwardRef(
27397
+ var FormDescription = React46.forwardRef(
27290
27398
  ({ className, ...props }, ref) => {
27291
27399
  const { formDescriptionId } = useFormField();
27292
27400
  return /* @__PURE__ */ jsx74("p", { ref, id: formDescriptionId, className: cn("text-sm text-muted-foreground", className), ...props });
27293
27401
  }
27294
27402
  );
27295
27403
  FormDescription.displayName = "FormDescription";
27296
- var FormMessage = React47.forwardRef(
27404
+ var FormMessage = React46.forwardRef(
27297
27405
  ({ className, children, ...props }, ref) => {
27298
27406
  const { error, formMessageId } = useFormField();
27299
27407
  const body = error ? String(error == null ? void 0 : error.message) : children;
@@ -27306,9 +27414,9 @@ var FormMessage = React47.forwardRef(
27306
27414
  FormMessage.displayName = "FormMessage";
27307
27415
 
27308
27416
  // src/components/ui/glass-card.tsx
27309
- import * as React48 from "react";
27417
+ import * as React47 from "react";
27310
27418
  import { jsx as jsx75 } from "react/jsx-runtime";
27311
- var GlassCard = React48.forwardRef(
27419
+ var GlassCard = React47.forwardRef(
27312
27420
  ({ className, ...props }, ref) => {
27313
27421
  return /* @__PURE__ */ jsx75("div", { ref, className: cn("glass-card", className), ...props });
27314
27422
  }
@@ -27316,12 +27424,12 @@ var GlassCard = React48.forwardRef(
27316
27424
  GlassCard.displayName = "GlassCard";
27317
27425
 
27318
27426
  // src/components/ui/hover-card.tsx
27319
- import * as React49 from "react";
27427
+ import * as React48 from "react";
27320
27428
  import * as HoverCardPrimitive from "@radix-ui/react-hover-card";
27321
27429
  import { jsx as jsx76 } from "react/jsx-runtime";
27322
27430
  var HoverCard = HoverCardPrimitive.Root;
27323
27431
  var HoverCardTrigger = HoverCardPrimitive.Trigger;
27324
- var HoverCardContent = React49.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx76(
27432
+ var HoverCardContent = React48.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx76(
27325
27433
  HoverCardPrimitive.Content,
27326
27434
  {
27327
27435
  ref,
@@ -27337,11 +27445,11 @@ var HoverCardContent = React49.forwardRef(({ className, align = "center", sideOf
27337
27445
  HoverCardContent.displayName = HoverCardPrimitive.Content.displayName;
27338
27446
 
27339
27447
  // src/components/ui/input-otp.tsx
27340
- import * as React50 from "react";
27448
+ import * as React49 from "react";
27341
27449
  import { OTPInput, OTPInputContext } from "input-otp";
27342
27450
  import { Dot } from "lucide-react";
27343
27451
  import { jsx as jsx77, jsxs as jsxs47 } from "react/jsx-runtime";
27344
- var InputOTP = React50.forwardRef(
27452
+ var InputOTP = React49.forwardRef(
27345
27453
  ({ className, containerClassName, ...props }, ref) => /* @__PURE__ */ jsx77(
27346
27454
  OTPInput,
27347
27455
  {
@@ -27353,12 +27461,12 @@ var InputOTP = React50.forwardRef(
27353
27461
  )
27354
27462
  );
27355
27463
  InputOTP.displayName = "InputOTP";
27356
- var InputOTPGroup = React50.forwardRef(
27464
+ var InputOTPGroup = React49.forwardRef(
27357
27465
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx77("div", { ref, className: cn("flex items-center", className), ...props })
27358
27466
  );
27359
27467
  InputOTPGroup.displayName = "InputOTPGroup";
27360
- var InputOTPSlot = React50.forwardRef(({ index, className, ...props }, ref) => {
27361
- const inputOTPContext = React50.useContext(OTPInputContext);
27468
+ var InputOTPSlot = React49.forwardRef(({ index, className, ...props }, ref) => {
27469
+ const inputOTPContext = React49.useContext(OTPInputContext);
27362
27470
  const { char, hasFakeCaret, isActive } = inputOTPContext.slots[index];
27363
27471
  return /* @__PURE__ */ jsxs47(
27364
27472
  "div",
@@ -27378,13 +27486,13 @@ var InputOTPSlot = React50.forwardRef(({ index, className, ...props }, ref) => {
27378
27486
  );
27379
27487
  });
27380
27488
  InputOTPSlot.displayName = "InputOTPSlot";
27381
- var InputOTPSeparator = React50.forwardRef(
27489
+ var InputOTPSeparator = React49.forwardRef(
27382
27490
  ({ ...props }, ref) => /* @__PURE__ */ jsx77("div", { ref, role: "separator", ...props, children: /* @__PURE__ */ jsx77(Dot, {}) })
27383
27491
  );
27384
27492
  InputOTPSeparator.displayName = "InputOTPSeparator";
27385
27493
 
27386
27494
  // src/components/ui/menubar.tsx
27387
- import * as React51 from "react";
27495
+ import * as React50 from "react";
27388
27496
  import * as MenubarPrimitive from "@radix-ui/react-menubar";
27389
27497
  import { Check as Check8, ChevronRight as ChevronRight6, Circle as Circle4 } from "lucide-react";
27390
27498
  import { jsx as jsx78, jsxs as jsxs48 } from "react/jsx-runtime";
@@ -27393,7 +27501,7 @@ var MenubarGroup = MenubarPrimitive.Group;
27393
27501
  var MenubarPortal = MenubarPrimitive.Portal;
27394
27502
  var MenubarSub = MenubarPrimitive.Sub;
27395
27503
  var MenubarRadioGroup = MenubarPrimitive.RadioGroup;
27396
- var Menubar = React51.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx78(
27504
+ var Menubar = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx78(
27397
27505
  MenubarPrimitive.Root,
27398
27506
  {
27399
27507
  ref,
@@ -27402,7 +27510,7 @@ var Menubar = React51.forwardRef(({ className, ...props }, ref) => /* @__PURE__
27402
27510
  }
27403
27511
  ));
27404
27512
  Menubar.displayName = MenubarPrimitive.Root.displayName;
27405
- var MenubarTrigger = React51.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx78(
27513
+ var MenubarTrigger = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx78(
27406
27514
  MenubarPrimitive.Trigger,
27407
27515
  {
27408
27516
  ref,
@@ -27414,7 +27522,7 @@ var MenubarTrigger = React51.forwardRef(({ className, ...props }, ref) => /* @__
27414
27522
  }
27415
27523
  ));
27416
27524
  MenubarTrigger.displayName = MenubarPrimitive.Trigger.displayName;
27417
- var MenubarSubTrigger = React51.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxs48(
27525
+ var MenubarSubTrigger = React50.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxs48(
27418
27526
  MenubarPrimitive.SubTrigger,
27419
27527
  {
27420
27528
  ref,
@@ -27431,7 +27539,7 @@ var MenubarSubTrigger = React51.forwardRef(({ className, inset, children, ...pro
27431
27539
  }
27432
27540
  ));
27433
27541
  MenubarSubTrigger.displayName = MenubarPrimitive.SubTrigger.displayName;
27434
- var MenubarSubContent = React51.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx78(
27542
+ var MenubarSubContent = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx78(
27435
27543
  MenubarPrimitive.SubContent,
27436
27544
  {
27437
27545
  ref,
@@ -27443,7 +27551,7 @@ var MenubarSubContent = React51.forwardRef(({ className, ...props }, ref) => /*
27443
27551
  }
27444
27552
  ));
27445
27553
  MenubarSubContent.displayName = MenubarPrimitive.SubContent.displayName;
27446
- var MenubarContent = React51.forwardRef(({ className, align = "start", alignOffset = -4, sideOffset = 8, ...props }, ref) => /* @__PURE__ */ jsx78(MenubarPrimitive.Portal, { children: /* @__PURE__ */ jsx78(
27554
+ var MenubarContent = React50.forwardRef(({ className, align = "start", alignOffset = -4, sideOffset = 8, ...props }, ref) => /* @__PURE__ */ jsx78(MenubarPrimitive.Portal, { children: /* @__PURE__ */ jsx78(
27447
27555
  MenubarPrimitive.Content,
27448
27556
  {
27449
27557
  ref,
@@ -27458,7 +27566,7 @@ var MenubarContent = React51.forwardRef(({ className, align = "start", alignOffs
27458
27566
  }
27459
27567
  ) }));
27460
27568
  MenubarContent.displayName = MenubarPrimitive.Content.displayName;
27461
- var MenubarItem = React51.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx78(
27569
+ var MenubarItem = React50.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx78(
27462
27570
  MenubarPrimitive.Item,
27463
27571
  {
27464
27572
  ref,
@@ -27471,7 +27579,7 @@ var MenubarItem = React51.forwardRef(({ className, inset, ...props }, ref) => /*
27471
27579
  }
27472
27580
  ));
27473
27581
  MenubarItem.displayName = MenubarPrimitive.Item.displayName;
27474
- var MenubarCheckboxItem = React51.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxs48(
27582
+ var MenubarCheckboxItem = React50.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxs48(
27475
27583
  MenubarPrimitive.CheckboxItem,
27476
27584
  {
27477
27585
  ref,
@@ -27488,7 +27596,7 @@ var MenubarCheckboxItem = React51.forwardRef(({ className, children, checked, ..
27488
27596
  }
27489
27597
  ));
27490
27598
  MenubarCheckboxItem.displayName = MenubarPrimitive.CheckboxItem.displayName;
27491
- var MenubarRadioItem = React51.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs48(
27599
+ var MenubarRadioItem = React50.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs48(
27492
27600
  MenubarPrimitive.RadioItem,
27493
27601
  {
27494
27602
  ref,
@@ -27504,7 +27612,7 @@ var MenubarRadioItem = React51.forwardRef(({ className, children, ...props }, re
27504
27612
  }
27505
27613
  ));
27506
27614
  MenubarRadioItem.displayName = MenubarPrimitive.RadioItem.displayName;
27507
- var MenubarLabel = React51.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx78(
27615
+ var MenubarLabel = React50.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx78(
27508
27616
  MenubarPrimitive.Label,
27509
27617
  {
27510
27618
  ref,
@@ -27513,7 +27621,7 @@ var MenubarLabel = React51.forwardRef(({ className, inset, ...props }, ref) => /
27513
27621
  }
27514
27622
  ));
27515
27623
  MenubarLabel.displayName = MenubarPrimitive.Label.displayName;
27516
- var MenubarSeparator = React51.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx78(MenubarPrimitive.Separator, { ref, className: cn("-mx-1 my-1 h-px bg-muted", className), ...props }));
27624
+ var MenubarSeparator = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx78(MenubarPrimitive.Separator, { ref, className: cn("-mx-1 my-1 h-px bg-muted", className), ...props }));
27517
27625
  MenubarSeparator.displayName = MenubarPrimitive.Separator.displayName;
27518
27626
  var MenubarShortcut = ({ className, ...props }) => {
27519
27627
  return /* @__PURE__ */ jsx78("span", { className: cn("ml-auto text-xs tracking-widest text-muted-foreground", className), ...props });
@@ -27521,12 +27629,12 @@ var MenubarShortcut = ({ className, ...props }) => {
27521
27629
  MenubarShortcut.displayname = "MenubarShortcut";
27522
27630
 
27523
27631
  // src/components/ui/navigation-menu.tsx
27524
- import * as React52 from "react";
27632
+ import * as React51 from "react";
27525
27633
  import * as NavigationMenuPrimitive from "@radix-ui/react-navigation-menu";
27526
27634
  import { cva as cva5 } from "class-variance-authority";
27527
27635
  import { ChevronDown as ChevronDown7 } from "lucide-react";
27528
27636
  import { jsx as jsx79, jsxs as jsxs49 } from "react/jsx-runtime";
27529
- var NavigationMenu = React52.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs49(
27637
+ var NavigationMenu = React51.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs49(
27530
27638
  NavigationMenuPrimitive.Root,
27531
27639
  {
27532
27640
  ref,
@@ -27539,7 +27647,7 @@ var NavigationMenu = React52.forwardRef(({ className, children, ...props }, ref)
27539
27647
  }
27540
27648
  ));
27541
27649
  NavigationMenu.displayName = NavigationMenuPrimitive.Root.displayName;
27542
- var NavigationMenuList = React52.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx79(
27650
+ var NavigationMenuList = React51.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx79(
27543
27651
  NavigationMenuPrimitive.List,
27544
27652
  {
27545
27653
  ref,
@@ -27552,7 +27660,7 @@ var NavigationMenuItem = NavigationMenuPrimitive.Item;
27552
27660
  var navigationMenuTriggerStyle = cva5(
27553
27661
  "group inline-flex h-10 w-max items-center justify-center rounded-md bg-background px-4 py-2 text-sm font-medium transition-colors hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground focus:outline-none disabled:pointer-events-none disabled:opacity-50 data-[active]:bg-accent/50 data-[state=open]:bg-accent/50"
27554
27662
  );
27555
- var NavigationMenuTrigger = React52.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs49(
27663
+ var NavigationMenuTrigger = React51.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs49(
27556
27664
  NavigationMenuPrimitive.Trigger,
27557
27665
  {
27558
27666
  ref,
@@ -27572,7 +27680,7 @@ var NavigationMenuTrigger = React52.forwardRef(({ className, children, ...props
27572
27680
  }
27573
27681
  ));
27574
27682
  NavigationMenuTrigger.displayName = NavigationMenuPrimitive.Trigger.displayName;
27575
- var NavigationMenuContent = React52.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx79(
27683
+ var NavigationMenuContent = React51.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx79(
27576
27684
  NavigationMenuPrimitive.Content,
27577
27685
  {
27578
27686
  ref,
@@ -27585,7 +27693,7 @@ var NavigationMenuContent = React52.forwardRef(({ className, ...props }, ref) =>
27585
27693
  ));
27586
27694
  NavigationMenuContent.displayName = NavigationMenuPrimitive.Content.displayName;
27587
27695
  var NavigationMenuLink = NavigationMenuPrimitive.Link;
27588
- var NavigationMenuViewport = React52.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx79("div", { className: cn("absolute left-0 top-full flex justify-center"), children: /* @__PURE__ */ jsx79(
27696
+ var NavigationMenuViewport = React51.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx79("div", { className: cn("absolute left-0 top-full flex justify-center"), children: /* @__PURE__ */ jsx79(
27589
27697
  NavigationMenuPrimitive.Viewport,
27590
27698
  {
27591
27699
  className: cn(
@@ -27597,7 +27705,7 @@ var NavigationMenuViewport = React52.forwardRef(({ className, ...props }, ref) =
27597
27705
  }
27598
27706
  ) }));
27599
27707
  NavigationMenuViewport.displayName = NavigationMenuPrimitive.Viewport.displayName;
27600
- var NavigationMenuIndicator = React52.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx79(
27708
+ var NavigationMenuIndicator = React51.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx79(
27601
27709
  NavigationMenuPrimitive.Indicator,
27602
27710
  {
27603
27711
  ref,
@@ -27612,7 +27720,7 @@ var NavigationMenuIndicator = React52.forwardRef(({ className, ...props }, ref)
27612
27720
  NavigationMenuIndicator.displayName = NavigationMenuPrimitive.Indicator.displayName;
27613
27721
 
27614
27722
  // src/components/ui/pagination.tsx
27615
- import * as React53 from "react";
27723
+ import * as React52 from "react";
27616
27724
  import { ChevronLeft as ChevronLeft2, ChevronRight as ChevronRight7, MoreHorizontal as MoreHorizontal2 } from "lucide-react";
27617
27725
  import { jsx as jsx80, jsxs as jsxs50 } from "react/jsx-runtime";
27618
27726
  var Pagination = ({ className, ...props }) => /* @__PURE__ */ jsx80(
@@ -27625,11 +27733,11 @@ var Pagination = ({ className, ...props }) => /* @__PURE__ */ jsx80(
27625
27733
  }
27626
27734
  );
27627
27735
  Pagination.displayName = "Pagination";
27628
- var PaginationContent = React53.forwardRef(
27736
+ var PaginationContent = React52.forwardRef(
27629
27737
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx80("ul", { ref, className: cn("flex flex-row items-center gap-1", className), ...props })
27630
27738
  );
27631
27739
  PaginationContent.displayName = "PaginationContent";
27632
- var PaginationItem = React53.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx80("li", { ref, className: cn("", className), ...props }));
27740
+ var PaginationItem = React52.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx80("li", { ref, className: cn("", className), ...props }));
27633
27741
  PaginationItem.displayName = "PaginationItem";
27634
27742
  var PaginationLink = ({ className, isActive, size = "icon", ...props }) => /* @__PURE__ */ jsx80(
27635
27743
  "a",
@@ -27663,12 +27771,12 @@ var PaginationEllipsis = ({ className, ...props }) => /* @__PURE__ */ jsxs50("sp
27663
27771
  PaginationEllipsis.displayName = "PaginationEllipsis";
27664
27772
 
27665
27773
  // src/components/ui/popover.tsx
27666
- import * as React54 from "react";
27774
+ import * as React53 from "react";
27667
27775
  import * as PopoverPrimitive from "@radix-ui/react-popover";
27668
27776
  import { jsx as jsx81 } from "react/jsx-runtime";
27669
27777
  var Popover = PopoverPrimitive.Root;
27670
27778
  var PopoverTrigger = PopoverPrimitive.Trigger;
27671
- var PopoverContent = React54.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx81(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx81(
27779
+ var PopoverContent = React53.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx81(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx81(
27672
27780
  PopoverPrimitive.Content,
27673
27781
  {
27674
27782
  ref,
@@ -27684,15 +27792,15 @@ var PopoverContent = React54.forwardRef(({ className, align = "center", sideOffs
27684
27792
  PopoverContent.displayName = PopoverPrimitive.Content.displayName;
27685
27793
 
27686
27794
  // src/components/ui/radio-group.tsx
27687
- import * as React55 from "react";
27795
+ import * as React54 from "react";
27688
27796
  import * as RadioGroupPrimitive from "@radix-ui/react-radio-group";
27689
27797
  import { Circle as Circle5 } from "lucide-react";
27690
27798
  import { jsx as jsx82 } from "react/jsx-runtime";
27691
- var RadioGroup4 = React55.forwardRef(({ className, ...props }, ref) => {
27799
+ var RadioGroup4 = React54.forwardRef(({ className, ...props }, ref) => {
27692
27800
  return /* @__PURE__ */ jsx82(RadioGroupPrimitive.Root, { className: cn("grid gap-2", className), ...props, ref });
27693
27801
  });
27694
27802
  RadioGroup4.displayName = RadioGroupPrimitive.Root.displayName;
27695
- var RadioGroupItem = React55.forwardRef(({ className, ...props }, ref) => {
27803
+ var RadioGroupItem = React54.forwardRef(({ className, ...props }, ref) => {
27696
27804
  return /* @__PURE__ */ jsx82(
27697
27805
  RadioGroupPrimitive.Item,
27698
27806
  {
@@ -27737,10 +27845,10 @@ var ResizableHandle = ({
27737
27845
  );
27738
27846
 
27739
27847
  // src/components/ui/separator.tsx
27740
- import * as React56 from "react";
27848
+ import * as React55 from "react";
27741
27849
  import * as SeparatorPrimitive from "@radix-ui/react-separator";
27742
27850
  import { jsx as jsx84 } from "react/jsx-runtime";
27743
- var Separator5 = React56.forwardRef(({ className, orientation = "horizontal", decorative = true, ...props }, ref) => /* @__PURE__ */ jsx84(
27851
+ var Separator5 = React55.forwardRef(({ className, orientation = "horizontal", decorative = true, ...props }, ref) => /* @__PURE__ */ jsx84(
27744
27852
  SeparatorPrimitive.Root,
27745
27853
  {
27746
27854
  ref,
@@ -27756,13 +27864,13 @@ Separator5.displayName = SeparatorPrimitive.Root.displayName;
27756
27864
  import * as SheetPrimitive from "@radix-ui/react-dialog";
27757
27865
  import { cva as cva6 } from "class-variance-authority";
27758
27866
  import { X as X7 } from "lucide-react";
27759
- import * as React57 from "react";
27867
+ import * as React56 from "react";
27760
27868
  import { jsx as jsx85, jsxs as jsxs51 } from "react/jsx-runtime";
27761
27869
  var Sheet = SheetPrimitive.Root;
27762
27870
  var SheetTrigger = SheetPrimitive.Trigger;
27763
27871
  var SheetClose = SheetPrimitive.Close;
27764
27872
  var SheetPortal = SheetPrimitive.Portal;
27765
- var SheetOverlay = React57.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx85(
27873
+ var SheetOverlay = React56.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx85(
27766
27874
  SheetPrimitive.Overlay,
27767
27875
  {
27768
27876
  className: cn(
@@ -27790,7 +27898,7 @@ var sheetVariants = cva6(
27790
27898
  }
27791
27899
  }
27792
27900
  );
27793
- var SheetContent = React57.forwardRef(
27901
+ var SheetContent = React56.forwardRef(
27794
27902
  ({
27795
27903
  side = "right",
27796
27904
  className,
@@ -27824,23 +27932,23 @@ var SheetHeader = ({ className, ...props }) => /* @__PURE__ */ jsx85("div", { cl
27824
27932
  SheetHeader.displayName = "SheetHeader";
27825
27933
  var SheetFooter = ({ className, ...props }) => /* @__PURE__ */ jsx85("div", { className: cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2", className), ...props });
27826
27934
  SheetFooter.displayName = "SheetFooter";
27827
- var SheetTitle = React57.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx85(SheetPrimitive.Title, { ref, className: cn("text-lg font-semibold text-foreground", className), ...props }));
27935
+ var SheetTitle = React56.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx85(SheetPrimitive.Title, { ref, className: cn("text-lg font-semibold text-foreground", className), ...props }));
27828
27936
  SheetTitle.displayName = SheetPrimitive.Title.displayName;
27829
- var SheetDescription = React57.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx85(SheetPrimitive.Description, { ref, className: cn("text-sm text-muted-foreground", className), ...props }));
27937
+ var SheetDescription = React56.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx85(SheetPrimitive.Description, { ref, className: cn("text-sm text-muted-foreground", className), ...props }));
27830
27938
  SheetDescription.displayName = SheetPrimitive.Description.displayName;
27831
27939
 
27832
27940
  // src/components/ui/sidebar.tsx
27833
- import * as React59 from "react";
27941
+ import * as React58 from "react";
27834
27942
  import { Slot as Slot4 } from "@radix-ui/react-slot";
27835
27943
  import { cva as cva7 } from "class-variance-authority";
27836
27944
  import { PanelLeft as PanelLeft2 } from "lucide-react";
27837
27945
 
27838
27946
  // src/hooks/use-mobile.tsx
27839
- import * as React58 from "react";
27947
+ import * as React57 from "react";
27840
27948
  var MOBILE_BREAKPOINT = 768;
27841
27949
  function useIsMobile() {
27842
- const [isMobile, setIsMobile] = React58.useState(void 0);
27843
- React58.useEffect(() => {
27950
+ const [isMobile, setIsMobile] = React57.useState(void 0);
27951
+ React57.useEffect(() => {
27844
27952
  const mql = window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`);
27845
27953
  const onChange = () => {
27846
27954
  setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
@@ -27860,20 +27968,20 @@ var SIDEBAR_WIDTH = "16rem";
27860
27968
  var SIDEBAR_WIDTH_MOBILE = "18rem";
27861
27969
  var SIDEBAR_WIDTH_ICON = "3rem";
27862
27970
  var SIDEBAR_KEYBOARD_SHORTCUT = "b";
27863
- var SidebarContext = React59.createContext(null);
27971
+ var SidebarContext = React58.createContext(null);
27864
27972
  function useSidebar() {
27865
- const context = React59.useContext(SidebarContext);
27973
+ const context = React58.useContext(SidebarContext);
27866
27974
  if (!context) {
27867
27975
  throw new Error("useSidebar must be used within a SidebarProvider.");
27868
27976
  }
27869
27977
  return context;
27870
27978
  }
27871
- var SidebarProvider = React59.forwardRef(({ defaultOpen = true, open: openProp, onOpenChange: setOpenProp, className, style, children, ...props }, ref) => {
27979
+ var SidebarProvider = React58.forwardRef(({ defaultOpen = true, open: openProp, onOpenChange: setOpenProp, className, style, children, ...props }, ref) => {
27872
27980
  const isMobile = useIsMobile();
27873
- const [openMobile, setOpenMobile] = React59.useState(false);
27874
- const [_open, _setOpen] = React59.useState(defaultOpen);
27981
+ const [openMobile, setOpenMobile] = React58.useState(false);
27982
+ const [_open, _setOpen] = React58.useState(defaultOpen);
27875
27983
  const open = openProp != null ? openProp : _open;
27876
- const setOpen = React59.useCallback(
27984
+ const setOpen = React58.useCallback(
27877
27985
  (value) => {
27878
27986
  const openState = typeof value === "function" ? value(open) : value;
27879
27987
  if (setOpenProp) {
@@ -27885,10 +27993,10 @@ var SidebarProvider = React59.forwardRef(({ defaultOpen = true, open: openProp,
27885
27993
  },
27886
27994
  [setOpenProp, open]
27887
27995
  );
27888
- const toggleSidebar = React59.useCallback(() => {
27996
+ const toggleSidebar = React58.useCallback(() => {
27889
27997
  return isMobile ? setOpenMobile((open2) => !open2) : setOpen((open2) => !open2);
27890
27998
  }, [isMobile, setOpen, setOpenMobile]);
27891
- React59.useEffect(() => {
27999
+ React58.useEffect(() => {
27892
28000
  const handleKeyDown = (event) => {
27893
28001
  if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {
27894
28002
  event.preventDefault();
@@ -27899,7 +28007,7 @@ var SidebarProvider = React59.forwardRef(({ defaultOpen = true, open: openProp,
27899
28007
  return () => window.removeEventListener("keydown", handleKeyDown);
27900
28008
  }, [toggleSidebar]);
27901
28009
  const state = open ? "expanded" : "collapsed";
27902
- const contextValue = React59.useMemo(
28010
+ const contextValue = React58.useMemo(
27903
28011
  () => ({
27904
28012
  state,
27905
28013
  open,
@@ -27927,7 +28035,7 @@ var SidebarProvider = React59.forwardRef(({ defaultOpen = true, open: openProp,
27927
28035
  ) }) });
27928
28036
  });
27929
28037
  SidebarProvider.displayName = "SidebarProvider";
27930
- var Sidebar = React59.forwardRef(({ side = "left", variant = "sidebar", collapsible = "offcanvas", className, children, ...props }, ref) => {
28038
+ var Sidebar = React58.forwardRef(({ side = "left", variant = "sidebar", collapsible = "offcanvas", className, children, ...props }, ref) => {
27931
28039
  const { isMobile, state, openMobile, setOpenMobile } = useSidebar();
27932
28040
  if (collapsible === "none") {
27933
28041
  return /* @__PURE__ */ jsx86(
@@ -28002,7 +28110,7 @@ var Sidebar = React59.forwardRef(({ side = "left", variant = "sidebar", collapsi
28002
28110
  );
28003
28111
  });
28004
28112
  Sidebar.displayName = "Sidebar";
28005
- var SidebarTrigger = React59.forwardRef(
28113
+ var SidebarTrigger = React58.forwardRef(
28006
28114
  ({ className, onClick, ...props }, ref) => {
28007
28115
  const { toggleSidebar } = useSidebar();
28008
28116
  return /* @__PURE__ */ jsxs52(
@@ -28027,7 +28135,7 @@ var SidebarTrigger = React59.forwardRef(
28027
28135
  }
28028
28136
  );
28029
28137
  SidebarTrigger.displayName = "SidebarTrigger";
28030
- var SidebarRail = React59.forwardRef(
28138
+ var SidebarRail = React58.forwardRef(
28031
28139
  ({ className, ...props }, ref) => {
28032
28140
  const { toggleSidebar } = useSidebar();
28033
28141
  return /* @__PURE__ */ jsx86(
@@ -28054,7 +28162,7 @@ var SidebarRail = React59.forwardRef(
28054
28162
  }
28055
28163
  );
28056
28164
  SidebarRail.displayName = "SidebarRail";
28057
- var SidebarInset = React59.forwardRef(({ className, ...props }, ref) => {
28165
+ var SidebarInset = React58.forwardRef(({ className, ...props }, ref) => {
28058
28166
  return /* @__PURE__ */ jsx86(
28059
28167
  "main",
28060
28168
  {
@@ -28069,7 +28177,7 @@ var SidebarInset = React59.forwardRef(({ className, ...props }, ref) => {
28069
28177
  );
28070
28178
  });
28071
28179
  SidebarInset.displayName = "SidebarInset";
28072
- var SidebarInput = React59.forwardRef(
28180
+ var SidebarInput = React58.forwardRef(
28073
28181
  ({ className, ...props }, ref) => {
28074
28182
  return /* @__PURE__ */ jsx86(
28075
28183
  Input,
@@ -28086,15 +28194,15 @@ var SidebarInput = React59.forwardRef(
28086
28194
  }
28087
28195
  );
28088
28196
  SidebarInput.displayName = "SidebarInput";
28089
- var SidebarHeader = React59.forwardRef(({ className, ...props }, ref) => {
28197
+ var SidebarHeader = React58.forwardRef(({ className, ...props }, ref) => {
28090
28198
  return /* @__PURE__ */ jsx86("div", { ref, "data-sidebar": "header", className: cn("flex flex-col gap-2 p-2", className), ...props });
28091
28199
  });
28092
28200
  SidebarHeader.displayName = "SidebarHeader";
28093
- var SidebarFooter = React59.forwardRef(({ className, ...props }, ref) => {
28201
+ var SidebarFooter = React58.forwardRef(({ className, ...props }, ref) => {
28094
28202
  return /* @__PURE__ */ jsx86("div", { ref, "data-sidebar": "footer", className: cn("flex flex-col gap-2 p-2", className), ...props });
28095
28203
  });
28096
28204
  SidebarFooter.displayName = "SidebarFooter";
28097
- var SidebarSeparator = React59.forwardRef(
28205
+ var SidebarSeparator = React58.forwardRef(
28098
28206
  ({ className, ...props }, ref) => {
28099
28207
  return /* @__PURE__ */ jsx86(
28100
28208
  Separator5,
@@ -28108,7 +28216,7 @@ var SidebarSeparator = React59.forwardRef(
28108
28216
  }
28109
28217
  );
28110
28218
  SidebarSeparator.displayName = "SidebarSeparator";
28111
- var SidebarContent = React59.forwardRef(({ className, ...props }, ref) => {
28219
+ var SidebarContent = React58.forwardRef(({ className, ...props }, ref) => {
28112
28220
  return /* @__PURE__ */ jsx86(
28113
28221
  "div",
28114
28222
  {
@@ -28123,7 +28231,7 @@ var SidebarContent = React59.forwardRef(({ className, ...props }, ref) => {
28123
28231
  );
28124
28232
  });
28125
28233
  SidebarContent.displayName = "SidebarContent";
28126
- var SidebarGroup = React59.forwardRef(({ className, ...props }, ref) => {
28234
+ var SidebarGroup = React58.forwardRef(({ className, ...props }, ref) => {
28127
28235
  return /* @__PURE__ */ jsx86(
28128
28236
  "div",
28129
28237
  {
@@ -28135,7 +28243,7 @@ var SidebarGroup = React59.forwardRef(({ className, ...props }, ref) => {
28135
28243
  );
28136
28244
  });
28137
28245
  SidebarGroup.displayName = "SidebarGroup";
28138
- var SidebarGroupLabel = React59.forwardRef(
28246
+ var SidebarGroupLabel = React58.forwardRef(
28139
28247
  ({ className, asChild = false, ...props }, ref) => {
28140
28248
  const Comp = asChild ? Slot4 : "div";
28141
28249
  return /* @__PURE__ */ jsx86(
@@ -28154,7 +28262,7 @@ var SidebarGroupLabel = React59.forwardRef(
28154
28262
  }
28155
28263
  );
28156
28264
  SidebarGroupLabel.displayName = "SidebarGroupLabel";
28157
- var SidebarGroupAction = React59.forwardRef(
28265
+ var SidebarGroupAction = React58.forwardRef(
28158
28266
  ({ className, asChild = false, ...props }, ref) => {
28159
28267
  const Comp = asChild ? Slot4 : "button";
28160
28268
  return /* @__PURE__ */ jsx86(
@@ -28175,13 +28283,13 @@ var SidebarGroupAction = React59.forwardRef(
28175
28283
  }
28176
28284
  );
28177
28285
  SidebarGroupAction.displayName = "SidebarGroupAction";
28178
- var SidebarGroupContent = React59.forwardRef(
28286
+ var SidebarGroupContent = React58.forwardRef(
28179
28287
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx86("div", { ref, "data-sidebar": "group-content", className: cn("w-full text-sm", className), ...props })
28180
28288
  );
28181
28289
  SidebarGroupContent.displayName = "SidebarGroupContent";
28182
- var SidebarMenu = React59.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx86("ul", { ref, "data-sidebar": "menu", className: cn("flex w-full min-w-0 flex-col gap-1", className), ...props }));
28290
+ var SidebarMenu = React58.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx86("ul", { ref, "data-sidebar": "menu", className: cn("flex w-full min-w-0 flex-col gap-1", className), ...props }));
28183
28291
  SidebarMenu.displayName = "SidebarMenu";
28184
- var SidebarMenuItem = React59.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx86("li", { ref, "data-sidebar": "menu-item", className: cn("group/menu-item relative", className), ...props }));
28292
+ var SidebarMenuItem = React58.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx86("li", { ref, "data-sidebar": "menu-item", className: cn("group/menu-item relative", className), ...props }));
28185
28293
  SidebarMenuItem.displayName = "SidebarMenuItem";
28186
28294
  var sidebarMenuButtonVariants = cva7(
28187
28295
  "peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-none ring-sidebar-ring transition-[width,height,padding] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 group-has-[[data-sidebar=menu-action]]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:!size-8 group-data-[collapsible=icon]:!p-2 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0",
@@ -28203,7 +28311,7 @@ var sidebarMenuButtonVariants = cva7(
28203
28311
  }
28204
28312
  }
28205
28313
  );
28206
- var SidebarMenuButton = React59.forwardRef(({ asChild = false, isActive = false, variant = "default", size = "default", tooltip, className, ...props }, ref) => {
28314
+ var SidebarMenuButton = React58.forwardRef(({ asChild = false, isActive = false, variant = "default", size = "default", tooltip, className, ...props }, ref) => {
28207
28315
  const Comp = asChild ? Slot4 : "button";
28208
28316
  const { isMobile, state } = useSidebar();
28209
28317
  const button = /* @__PURE__ */ jsx86(
@@ -28231,7 +28339,7 @@ var SidebarMenuButton = React59.forwardRef(({ asChild = false, isActive = false,
28231
28339
  ] });
28232
28340
  });
28233
28341
  SidebarMenuButton.displayName = "SidebarMenuButton";
28234
- var SidebarMenuAction = React59.forwardRef(({ className, asChild = false, showOnHover = false, ...props }, ref) => {
28342
+ var SidebarMenuAction = React58.forwardRef(({ className, asChild = false, showOnHover = false, ...props }, ref) => {
28235
28343
  const Comp = asChild ? Slot4 : "button";
28236
28344
  return /* @__PURE__ */ jsx86(
28237
28345
  Comp,
@@ -28254,7 +28362,7 @@ var SidebarMenuAction = React59.forwardRef(({ className, asChild = false, showOn
28254
28362
  );
28255
28363
  });
28256
28364
  SidebarMenuAction.displayName = "SidebarMenuAction";
28257
- var SidebarMenuBadge = React59.forwardRef(
28365
+ var SidebarMenuBadge = React58.forwardRef(
28258
28366
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx86(
28259
28367
  "div",
28260
28368
  {
@@ -28274,8 +28382,8 @@ var SidebarMenuBadge = React59.forwardRef(
28274
28382
  )
28275
28383
  );
28276
28384
  SidebarMenuBadge.displayName = "SidebarMenuBadge";
28277
- var SidebarMenuSkeleton = React59.forwardRef(({ className, showIcon = false, ...props }, ref) => {
28278
- const width = React59.useMemo(() => {
28385
+ var SidebarMenuSkeleton = React58.forwardRef(({ className, showIcon = false, ...props }, ref) => {
28386
+ const width = React58.useMemo(() => {
28279
28387
  return `${Math.floor(Math.random() * 40) + 50}%`;
28280
28388
  }, []);
28281
28389
  return /* @__PURE__ */ jsxs52(
@@ -28302,7 +28410,7 @@ var SidebarMenuSkeleton = React59.forwardRef(({ className, showIcon = false, ...
28302
28410
  );
28303
28411
  });
28304
28412
  SidebarMenuSkeleton.displayName = "SidebarMenuSkeleton";
28305
- var SidebarMenuSub = React59.forwardRef(
28413
+ var SidebarMenuSub = React58.forwardRef(
28306
28414
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx86(
28307
28415
  "ul",
28308
28416
  {
@@ -28318,9 +28426,9 @@ var SidebarMenuSub = React59.forwardRef(
28318
28426
  )
28319
28427
  );
28320
28428
  SidebarMenuSub.displayName = "SidebarMenuSub";
28321
- var SidebarMenuSubItem = React59.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsx86("li", { ref, ...props }));
28429
+ var SidebarMenuSubItem = React58.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsx86("li", { ref, ...props }));
28322
28430
  SidebarMenuSubItem.displayName = "SidebarMenuSubItem";
28323
- var SidebarMenuSubButton = React59.forwardRef(({ asChild = false, size = "md", isActive, className, ...props }, ref) => {
28431
+ var SidebarMenuSubButton = React58.forwardRef(({ asChild = false, size = "md", isActive, className, ...props }, ref) => {
28324
28432
  const Comp = asChild ? Slot4 : "a";
28325
28433
  return /* @__PURE__ */ jsx86(
28326
28434
  Comp,
@@ -28344,10 +28452,10 @@ var SidebarMenuSubButton = React59.forwardRef(({ asChild = false, size = "md", i
28344
28452
  SidebarMenuSubButton.displayName = "SidebarMenuSubButton";
28345
28453
 
28346
28454
  // src/components/ui/slider.tsx
28347
- import * as React60 from "react";
28455
+ import * as React59 from "react";
28348
28456
  import * as SliderPrimitive from "@radix-ui/react-slider";
28349
28457
  import { jsx as jsx87, jsxs as jsxs53 } from "react/jsx-runtime";
28350
- var Slider = React60.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxs53(
28458
+ var Slider = React59.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxs53(
28351
28459
  SliderPrimitive.Root,
28352
28460
  {
28353
28461
  ref,
@@ -28362,25 +28470,25 @@ var Slider = React60.forwardRef(({ className, ...props }, ref) => /* @__PURE__ *
28362
28470
  Slider.displayName = SliderPrimitive.Root.displayName;
28363
28471
 
28364
28472
  // src/components/ui/table.tsx
28365
- import * as React61 from "react";
28473
+ import * as React60 from "react";
28366
28474
  import { jsx as jsx88 } from "react/jsx-runtime";
28367
- var Table = React61.forwardRef(
28475
+ var Table = React60.forwardRef(
28368
28476
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx88("div", { className: "relative w-full overflow-auto", children: /* @__PURE__ */ jsx88("table", { ref, className: cn("w-full caption-bottom text-sm", className), ...props }) })
28369
28477
  );
28370
28478
  Table.displayName = "Table";
28371
- var TableHeader = React61.forwardRef(
28479
+ var TableHeader = React60.forwardRef(
28372
28480
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx88("thead", { ref, className: cn("[&_tr]:border-b", className), ...props })
28373
28481
  );
28374
28482
  TableHeader.displayName = "TableHeader";
28375
- var TableBody = React61.forwardRef(
28483
+ var TableBody = React60.forwardRef(
28376
28484
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx88("tbody", { ref, className: cn("[&_tr:last-child]:border-0", className), ...props })
28377
28485
  );
28378
28486
  TableBody.displayName = "TableBody";
28379
- var TableFooter = React61.forwardRef(
28487
+ var TableFooter = React60.forwardRef(
28380
28488
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx88("tfoot", { ref, className: cn("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0", className), ...props })
28381
28489
  );
28382
28490
  TableFooter.displayName = "TableFooter";
28383
- var TableRow = React61.forwardRef(
28491
+ var TableRow = React60.forwardRef(
28384
28492
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx88(
28385
28493
  "tr",
28386
28494
  {
@@ -28391,7 +28499,7 @@ var TableRow = React61.forwardRef(
28391
28499
  )
28392
28500
  );
28393
28501
  TableRow.displayName = "TableRow";
28394
- var TableHead = React61.forwardRef(
28502
+ var TableHead = React60.forwardRef(
28395
28503
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx88(
28396
28504
  "th",
28397
28505
  {
@@ -28405,23 +28513,23 @@ var TableHead = React61.forwardRef(
28405
28513
  )
28406
28514
  );
28407
28515
  TableHead.displayName = "TableHead";
28408
- var TableCell = React61.forwardRef(
28516
+ var TableCell = React60.forwardRef(
28409
28517
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx88("td", { ref, className: cn("p-4 align-middle [&:has([role=checkbox])]:pr-0", className), ...props })
28410
28518
  );
28411
28519
  TableCell.displayName = "TableCell";
28412
- var TableCaption = React61.forwardRef(
28520
+ var TableCaption = React60.forwardRef(
28413
28521
  ({ className, ...props }, ref) => /* @__PURE__ */ jsx88("caption", { ref, className: cn("mt-4 text-sm text-muted-foreground", className), ...props })
28414
28522
  );
28415
28523
  TableCaption.displayName = "TableCaption";
28416
28524
 
28417
28525
  // src/components/ui/toast.tsx
28418
- import * as React62 from "react";
28526
+ import * as React61 from "react";
28419
28527
  import * as ToastPrimitives from "@radix-ui/react-toast";
28420
28528
  import { cva as cva8 } from "class-variance-authority";
28421
28529
  import { X as X8 } from "lucide-react";
28422
28530
  import { jsx as jsx89 } from "react/jsx-runtime";
28423
28531
  var ToastProvider = ToastPrimitives.Provider;
28424
- var ToastViewport = React62.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx89(
28532
+ var ToastViewport = React61.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx89(
28425
28533
  ToastPrimitives.Viewport,
28426
28534
  {
28427
28535
  ref,
@@ -28447,11 +28555,11 @@ var toastVariants = cva8(
28447
28555
  }
28448
28556
  }
28449
28557
  );
28450
- var Toast = React62.forwardRef(({ className, variant, ...props }, ref) => {
28558
+ var Toast = React61.forwardRef(({ className, variant, ...props }, ref) => {
28451
28559
  return /* @__PURE__ */ jsx89(ToastPrimitives.Root, { ref, className: cn(toastVariants({ variant }), className), ...props });
28452
28560
  });
28453
28561
  Toast.displayName = ToastPrimitives.Root.displayName;
28454
- var ToastAction = React62.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx89(
28562
+ var ToastAction = React61.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx89(
28455
28563
  ToastPrimitives.Action,
28456
28564
  {
28457
28565
  ref,
@@ -28463,7 +28571,7 @@ var ToastAction = React62.forwardRef(({ className, ...props }, ref) => /* @__PUR
28463
28571
  }
28464
28572
  ));
28465
28573
  ToastAction.displayName = ToastPrimitives.Action.displayName;
28466
- var ToastClose = React62.forwardRef(({ className, onClick, ...props }, ref) => /* @__PURE__ */ jsx89(
28574
+ var ToastClose = React61.forwardRef(({ className, onClick, ...props }, ref) => /* @__PURE__ */ jsx89(
28467
28575
  ToastPrimitives.Close,
28468
28576
  {
28469
28577
  ref,
@@ -28481,9 +28589,9 @@ var ToastClose = React62.forwardRef(({ className, onClick, ...props }, ref) => /
28481
28589
  }
28482
28590
  ));
28483
28591
  ToastClose.displayName = ToastPrimitives.Close.displayName;
28484
- var ToastTitle = React62.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx89(ToastPrimitives.Title, { ref, className: cn("text-sm font-semibold", className), ...props }));
28592
+ var ToastTitle = React61.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx89(ToastPrimitives.Title, { ref, className: cn("text-sm font-semibold", className), ...props }));
28485
28593
  ToastTitle.displayName = ToastPrimitives.Title.displayName;
28486
- var ToastDescription = React62.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx89(ToastPrimitives.Description, { ref, className: cn("text-sm opacity-90", className), ...props }));
28594
+ var ToastDescription = React61.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx89(ToastPrimitives.Description, { ref, className: cn("text-sm opacity-90", className), ...props }));
28487
28595
  ToastDescription.displayName = ToastPrimitives.Description.displayName;
28488
28596
 
28489
28597
  // src/components/ui/toaster.tsx
@@ -28506,7 +28614,7 @@ function Toaster2() {
28506
28614
  }
28507
28615
 
28508
28616
  // src/components/ui/toggle.tsx
28509
- import * as React63 from "react";
28617
+ import * as React62 from "react";
28510
28618
  import * as TogglePrimitive from "@radix-ui/react-toggle";
28511
28619
  import { cva as cva9 } from "class-variance-authority";
28512
28620
  import { jsx as jsx91 } from "react/jsx-runtime";
@@ -28530,21 +28638,21 @@ var toggleVariants = cva9(
28530
28638
  }
28531
28639
  }
28532
28640
  );
28533
- var Toggle = React63.forwardRef(({ className, variant, size, ...props }, ref) => /* @__PURE__ */ jsx91(TogglePrimitive.Root, { ref, className: cn(toggleVariants({ variant, size, className })), ...props }));
28641
+ var Toggle = React62.forwardRef(({ className, variant, size, ...props }, ref) => /* @__PURE__ */ jsx91(TogglePrimitive.Root, { ref, className: cn(toggleVariants({ variant, size, className })), ...props }));
28534
28642
  Toggle.displayName = TogglePrimitive.Root.displayName;
28535
28643
 
28536
28644
  // src/components/ui/toggle-group.tsx
28537
- import * as React64 from "react";
28645
+ import * as React63 from "react";
28538
28646
  import * as ToggleGroupPrimitive from "@radix-ui/react-toggle-group";
28539
28647
  import { jsx as jsx92 } from "react/jsx-runtime";
28540
- var ToggleGroupContext = React64.createContext({
28648
+ var ToggleGroupContext = React63.createContext({
28541
28649
  size: "default",
28542
28650
  variant: "default"
28543
28651
  });
28544
- var ToggleGroup = React64.forwardRef(({ className, variant, size, children, ...props }, ref) => /* @__PURE__ */ jsx92(ToggleGroupPrimitive.Root, { ref, className: cn("flex items-center justify-center gap-1", className), ...props, children: /* @__PURE__ */ jsx92(ToggleGroupContext.Provider, { value: { variant, size }, children }) }));
28652
+ var ToggleGroup = React63.forwardRef(({ className, variant, size, children, ...props }, ref) => /* @__PURE__ */ jsx92(ToggleGroupPrimitive.Root, { ref, className: cn("flex items-center justify-center gap-1", className), ...props, children: /* @__PURE__ */ jsx92(ToggleGroupContext.Provider, { value: { variant, size }, children }) }));
28545
28653
  ToggleGroup.displayName = ToggleGroupPrimitive.Root.displayName;
28546
- var ToggleGroupItem = React64.forwardRef(({ className, children, variant, size, ...props }, ref) => {
28547
- const context = React64.useContext(ToggleGroupContext);
28654
+ var ToggleGroupItem = React63.forwardRef(({ className, children, variant, size, ...props }, ref) => {
28655
+ const context = React63.useContext(ToggleGroupContext);
28548
28656
  return /* @__PURE__ */ jsx92(
28549
28657
  ToggleGroupPrimitive.Item,
28550
28658
  {
@@ -28653,7 +28761,7 @@ var useLayoutModeControl = () => {
28653
28761
  };
28654
28762
 
28655
28763
  // src/lib/auth.tsx
28656
- import { createContext as createContext7, useCallback as useCallback12, useContext as useContext8, useEffect as useEffect26, useMemo as useMemo15, useRef as useRef13, useState as useState23 } from "react";
28764
+ import { createContext as createContext7, useCallback as useCallback12, useContext as useContext9, useEffect as useEffect26, useMemo as useMemo15, useRef as useRef13, useState as useState23 } from "react";
28657
28765
  import { jsx as jsx93 } from "react/jsx-runtime";
28658
28766
  var STORAGE_KEYS = {
28659
28767
  accessToken: "cc_access_token",
@@ -29545,7 +29653,7 @@ var AuthProvider = ({ children }) => {
29545
29653
  return /* @__PURE__ */ jsx93(AuthContext.Provider, { value, children });
29546
29654
  };
29547
29655
  var useAuth = () => {
29548
- const ctx = useContext8(AuthContext);
29656
+ const ctx = useContext9(AuthContext);
29549
29657
  if (!ctx) {
29550
29658
  throw new Error("useAuth deve ser usado dentro de AuthProvider.");
29551
29659
  }
@@ -29700,6 +29808,7 @@ export {
29700
29808
  DropdownMenuSubContent,
29701
29809
  DropdownMenuSubTrigger,
29702
29810
  DropdownMenuTrigger,
29811
+ EXPERIENCE_SETTINGS_STORAGE_KEY,
29703
29812
  EmptyState,
29704
29813
  ErrorBoundary,
29705
29814
  Eyebrow,
@@ -29723,6 +29832,7 @@ export {
29723
29832
  InputOTPSlot,
29724
29833
  JellyButton,
29725
29834
  JellyButtonOriginal,
29835
+ LEGACY_THEME_STORAGE_KEY,
29726
29836
  Label4 as Label,
29727
29837
  LoadingScreen,
29728
29838
  LoadingSpinner,
@@ -29839,6 +29949,9 @@ export {
29839
29949
  Toaster as SonnerToaster,
29840
29950
  Switch,
29841
29951
  SwitchField,
29952
+ THEME_PREFERENCE_CHANGE_EVENT,
29953
+ THEME_PREFERENCE_STORAGE_KEY,
29954
+ THEME_STORAGE_KEY,
29842
29955
  Table,
29843
29956
  TableBody,
29844
29957
  TableCaption,
@@ -29908,12 +30021,20 @@ export {
29908
30021
  getSupabase,
29909
30022
  getSupabasePublic,
29910
30023
  isRuntimeDev,
30024
+ isStoredThemeMode,
29911
30025
  navigationMenuTriggerStyle,
30026
+ normalizeStoredThemePreference,
29912
30027
  parseAssetId,
30028
+ parseStoredThemePreference,
30029
+ persistThemePreferenceSelection,
29913
30030
  readStoredLayoutMode,
30031
+ readStoredThemeMode,
29914
30032
  reducer,
30033
+ resolveAppliedThemeMode,
29915
30034
  resolveCupcodeAppVersion,
29916
30035
  resolveOidcEndpoints,
30036
+ resolveStoredThemePreference,
30037
+ resolveSystemThemeMode,
29917
30038
  resolveTelescupImageURL,
29918
30039
  responsiveSizeClasses,
29919
30040
  setCupcodeRuntimeEnv,