@mlw-packages/react-components 1.7.5 → 1.7.7

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
@@ -32,9 +32,9 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
32
32
  ));
33
33
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
34
34
 
35
- // node_modules/picocolors/picocolors.browser.js
35
+ // node_modules/.pnpm/picocolors@1.1.1/node_modules/picocolors/picocolors.browser.js
36
36
  var require_picocolors_browser = __commonJS({
37
- "node_modules/picocolors/picocolors.browser.js"(exports, module2) {
37
+ "node_modules/.pnpm/picocolors@1.1.1/node_modules/picocolors/picocolors.browser.js"(exports, module2) {
38
38
  "use strict";
39
39
  var x = String;
40
40
  var create = function() {
@@ -45,9 +45,9 @@ var require_picocolors_browser = __commonJS({
45
45
  }
46
46
  });
47
47
 
48
- // node_modules/tailwindcss/lib/util/log.js
48
+ // node_modules/.pnpm/tailwindcss@3.4.18_yaml@2.8.1/node_modules/tailwindcss/lib/util/log.js
49
49
  var require_log = __commonJS({
50
- "node_modules/tailwindcss/lib/util/log.js"(exports) {
50
+ "node_modules/.pnpm/tailwindcss@3.4.18_yaml@2.8.1/node_modules/tailwindcss/lib/util/log.js"(exports) {
51
51
  "use strict";
52
52
  Object.defineProperty(exports, "__esModule", {
53
53
  value: true
@@ -112,9 +112,9 @@ var require_log = __commonJS({
112
112
  }
113
113
  });
114
114
 
115
- // node_modules/tailwindcss/lib/public/colors.js
115
+ // node_modules/.pnpm/tailwindcss@3.4.18_yaml@2.8.1/node_modules/tailwindcss/lib/public/colors.js
116
116
  var require_colors = __commonJS({
117
- "node_modules/tailwindcss/lib/public/colors.js"(exports) {
117
+ "node_modules/.pnpm/tailwindcss@3.4.18_yaml@2.8.1/node_modules/tailwindcss/lib/public/colors.js"(exports) {
118
118
  "use strict";
119
119
  Object.defineProperty(exports, "__esModule", {
120
120
  value: true
@@ -473,9 +473,9 @@ var require_colors = __commonJS({
473
473
  }
474
474
  });
475
475
 
476
- // node_modules/tailwindcss/colors.js
476
+ // node_modules/.pnpm/tailwindcss@3.4.18_yaml@2.8.1/node_modules/tailwindcss/colors.js
477
477
  var require_colors2 = __commonJS({
478
- "node_modules/tailwindcss/colors.js"(exports, module2) {
478
+ "node_modules/.pnpm/tailwindcss@3.4.18_yaml@2.8.1/node_modules/tailwindcss/colors.js"(exports, module2) {
479
479
  "use strict";
480
480
  var colors2 = require_colors();
481
481
  module2.exports = (colors2.__esModule ? colors2 : { default: colors2 }).default;
@@ -501,7 +501,7 @@ __export(index_exports, {
501
501
  AvatarFallbackBase: () => AvatarFallbackBase,
502
502
  AvatarImageBase: () => AvatarImageBase,
503
503
  BackButton: () => BackButton,
504
- BadgeBase: () => BadgeBase,
504
+ Badge: () => Badge,
505
505
  BarChart: () => BarChart_default,
506
506
  BreadcrumbBase: () => BreadcrumbBase,
507
507
  BreadcrumbEllipsisBase: () => BreadcrumbEllipsisBase,
@@ -523,7 +523,7 @@ __export(index_exports, {
523
523
  CarouselContentBase: () => CarouselContentBase,
524
524
  CarouselItemBase: () => CarouselItemBase,
525
525
  CarouselNextBase: () => CarouselNextBase,
526
- CarouselPrevious: () => CarouselPrevious,
526
+ CarouselPreviousBase: () => CarouselPreviousBase,
527
527
  ChangeButton: () => ChangeButton,
528
528
  Chart: () => Chart_default,
529
529
  CheckButton: () => CheckButton,
@@ -706,6 +706,7 @@ __export(index_exports, {
706
706
  SidebarTriggerBase: () => SidebarTriggerBase,
707
707
  SkeletonBase: () => SkeletonBase,
708
708
  SlideBase: () => SlideBase,
709
+ StatusIndicator: () => StatusIndicator,
709
710
  SwitchBase: () => SwitchBase,
710
711
  TableBase: () => TableBase,
711
712
  TableBodyBase: () => TableBodyBase,
@@ -2524,67 +2525,80 @@ var Highlights = ({
2524
2525
  initial: "hidden",
2525
2526
  animate: "visible",
2526
2527
  exit: "exit",
2527
- children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
2528
- ButtonBase,
2529
- {
2530
- asChild: true,
2531
- variant: "ghost",
2532
- onClick: () => toggleHighlight(k),
2533
- title: isHighlighted ? `Desativar ${label}` : `Ativar ${label}`,
2534
- className: pillClasses,
2535
- style: { minWidth: showFullLabel ? void 0 : 36 },
2536
- "aria-pressed": isHighlighted,
2537
- children: /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(
2538
- import_framer_motion8.motion.button,
2539
- {
2540
- whileHover: { scale: isHighlighted ? 1.04 : 1.03 },
2541
- whileTap: { scale: 0.96 },
2542
- animate: isHighlighted ? { scale: 1.02 } : { scale: 1 },
2543
- className: "flex items-center gap-2 min-w-0 pr-2",
2544
- children: [
2545
- /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
2546
- import_framer_motion8.motion.span,
2547
- {
2548
- className: cn("w-3 h-3 rounded-sm flex-shrink-0 border"),
2549
- style: {
2550
- backgroundColor: color,
2551
- borderColor: isHighlighted ? color : "transparent",
2552
- boxShadow: isHighlighted ? `0 6px 20px ${color}33` : void 0
2553
- },
2554
- layout: true,
2555
- initial: { scale: 0.8, opacity: 0.9 },
2556
- animate: { scale: 1, opacity: 1 },
2557
- transition: { type: "spring", stiffness: 400, damping: 30 }
2558
- }
2559
- ),
2560
- showFullLabel ? /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_framer_motion8.motion.span, { className: "truncate max-w-[10rem] pr-2", layout: true, children: label }) : showShortLabel ? /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
2561
- import_framer_motion8.motion.span,
2562
- {
2563
- className: "truncate max-w-[6rem] text-xs pr-2",
2564
- layout: true,
2565
- children: label
2566
- }
2567
- ) : null,
2568
- /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
2569
- import_framer_motion8.motion.span,
2570
- {
2571
- "aria-hidden": true,
2572
- initial: { opacity: 0, scale: 0.6 },
2573
- animate: isHighlighted ? { opacity: 1, scale: 1 } : { opacity: 0, scale: 0.6 },
2574
- transition: { type: "spring", stiffness: 450, damping: 28 },
2575
- className: cn(
2576
- "pointer-events-none absolute right-2 -translate-y-1/2 text-xs text-foreground flex items-center justify-center",
2577
- isHighlighted ? "" : "opacity-0 pointer-events-none"
2578
- ),
2579
- style: { width: 18, height: 18 },
2580
- children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_ssr3.CheckIcon, {})
2528
+ children: (() => {
2529
+ const MotionButtonBase = (0, import_framer_motion8.motion)(
2530
+ ButtonBase
2531
+ );
2532
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(
2533
+ MotionButtonBase,
2534
+ {
2535
+ variant: "ghost",
2536
+ onClick: () => toggleHighlight(k),
2537
+ title: isHighlighted ? `Desativar ${label}` : `Ativar ${label}`,
2538
+ className: pillClasses,
2539
+ style: { minWidth: showFullLabel ? void 0 : 36 },
2540
+ "aria-pressed": isHighlighted,
2541
+ whileHover: { scale: isHighlighted ? 1.04 : 1.03 },
2542
+ whileTap: { scale: 0.96 },
2543
+ animate: isHighlighted ? { scale: 1.02 } : { scale: 1 },
2544
+ children: [
2545
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
2546
+ import_framer_motion8.motion.span,
2547
+ {
2548
+ className: cn("w-3 h-3 rounded-sm flex-shrink-0 border"),
2549
+ style: {
2550
+ backgroundColor: color,
2551
+ borderColor: isHighlighted ? color : "transparent",
2552
+ boxShadow: isHighlighted ? `0 6px 20px ${color}33` : void 0
2553
+ },
2554
+ layout: true,
2555
+ initial: { scale: 0.8, opacity: 0.9 },
2556
+ animate: { scale: 1, opacity: 1 },
2557
+ transition: {
2558
+ type: "spring",
2559
+ stiffness: 400,
2560
+ damping: 30
2581
2561
  }
2582
- )
2583
- ]
2584
- }
2585
- )
2586
- }
2587
- )
2562
+ }
2563
+ ),
2564
+ showFullLabel ? /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
2565
+ import_framer_motion8.motion.span,
2566
+ {
2567
+ className: "truncate max-w-[10rem] pr-2",
2568
+ layout: true,
2569
+ children: label
2570
+ }
2571
+ ) : showShortLabel ? /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
2572
+ import_framer_motion8.motion.span,
2573
+ {
2574
+ className: "truncate max-w-[6rem] text-xs pr-2",
2575
+ layout: true,
2576
+ children: label
2577
+ }
2578
+ ) : null,
2579
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
2580
+ import_framer_motion8.motion.span,
2581
+ {
2582
+ "aria-hidden": true,
2583
+ initial: { opacity: 0, scale: 0.6 },
2584
+ animate: isHighlighted ? { opacity: 1, scale: 1 } : { opacity: 0, scale: 0.6 },
2585
+ transition: {
2586
+ type: "spring",
2587
+ stiffness: 450,
2588
+ damping: 28
2589
+ },
2590
+ className: cn(
2591
+ "pointer-events-none absolute right-2 -translate-y-1/2 text-xs text-foreground flex items-center justify-center",
2592
+ isHighlighted ? "" : "opacity-0 pointer-events-none"
2593
+ ),
2594
+ style: { width: 18, height: 18 },
2595
+ children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_ssr3.CheckIcon, {})
2596
+ }
2597
+ )
2598
+ ]
2599
+ }
2600
+ );
2601
+ })()
2588
2602
  },
2589
2603
  `pill-${k}`
2590
2604
  );
@@ -5887,208 +5901,56 @@ var AvatarFallbackBase = React16.forwardRef(({ className, ...props }, ref) => /*
5887
5901
  ));
5888
5902
  AvatarFallbackBase.displayName = AvatarPrimitive.Fallback.displayName;
5889
5903
 
5890
- // src/components/ui/data/BadgeBase.tsx
5904
+ // src/components/ui/data/Badge.tsx
5891
5905
  var import_react_slot3 = require("@radix-ui/react-slot");
5892
5906
  var import_class_variance_authority2 = require("class-variance-authority");
5893
5907
  var import_jsx_runtime32 = require("react/jsx-runtime");
5894
- var tailwindColors = {
5895
- // Red
5896
- "red-50": "#fef2f2",
5897
- "red-100": "#fee2e2",
5898
- "red-200": "#fecaca",
5899
- "red-300": "#fca5a5",
5900
- "red-400": "#f87171",
5901
- "red-500": "#ef4444",
5902
- "red-600": "#dc2626",
5903
- "red-700": "#b91c1c",
5904
- "red-800": "#991b1b",
5905
- "red-900": "#7f1d1d",
5906
- // Orange
5907
- "orange-50": "#fff7ed",
5908
- "orange-100": "#ffedd5",
5909
- "orange-200": "#fed7aa",
5910
- "orange-300": "#fdba74",
5911
- "orange-400": "#fb923c",
5912
- "orange-500": "#f97316",
5913
- "orange-600": "#ea580c",
5914
- "orange-700": "#c2410c",
5915
- "orange-800": "#9a3412",
5916
- "orange-900": "#7c2d12",
5917
- // Yellow
5918
- "yellow-50": "#fefce8",
5919
- "yellow-100": "#fef3c7",
5920
- "yellow-200": "#fde68a",
5921
- "yellow-300": "#fcd34d",
5922
- "yellow-400": "#fbbf24",
5923
- "yellow-500": "#f59e0b",
5924
- "yellow-600": "#d97706",
5925
- "yellow-700": "#b45309",
5926
- "yellow-800": "#92400e",
5927
- "yellow-900": "#78350f",
5928
- // Green
5929
- "green-50": "#f0fdf4",
5930
- "green-100": "#dcfce7",
5931
- "green-200": "#bbf7d0",
5932
- "green-300": "#86efac",
5933
- "green-400": "#4ade80",
5934
- "green-500": "#22c55e",
5935
- "green-600": "#16a34a",
5936
- "green-700": "#15803d",
5937
- "green-800": "#166534",
5938
- "green-900": "#14532d",
5939
- // Blue
5940
- "blue-50": "#eff6ff",
5941
- "blue-100": "#dbeafe",
5942
- "blue-200": "#bfdbfe",
5943
- "blue-300": "#93c5fd",
5944
- "blue-400": "#60a5fa",
5945
- "blue-500": "#3b82f6",
5946
- "blue-600": "#2563eb",
5947
- "blue-700": "#1d4ed8",
5948
- "blue-800": "#1e40af",
5949
- "blue-900": "#1e3a8a",
5950
- // Purple
5951
- "purple-50": "#faf5ff",
5952
- "purple-100": "#f3e8ff",
5953
- "purple-200": "#e9d5ff",
5954
- "purple-300": "#d8b4fe",
5955
- "purple-400": "#c084fc",
5956
- "purple-500": "#a855f7",
5957
- "purple-600": "#9333ea",
5958
- "purple-700": "#7c3aed",
5959
- "purple-800": "#6b21a8",
5960
- "purple-900": "#581c87",
5961
- // Pink
5962
- "pink-50": "#fdf2f8",
5963
- "pink-100": "#fce7f3",
5964
- "pink-200": "#fbcfe8",
5965
- "pink-300": "#f9a8d4",
5966
- "pink-400": "#f472b6",
5967
- "pink-500": "#ec4899",
5968
- "pink-600": "#db2777",
5969
- "pink-700": "#be185d",
5970
- "pink-800": "#9d174d",
5971
- "pink-900": "#831843",
5972
- // Gray
5973
- "gray-50": "#f9fafb",
5974
- "gray-100": "#f3f4f6",
5975
- "gray-200": "#e5e7eb",
5976
- "gray-300": "#d1d5db",
5977
- "gray-400": "#9ca3af",
5978
- "gray-500": "#6b7280",
5979
- "gray-600": "#4b5563",
5980
- "gray-700": "#374151",
5981
- "gray-800": "#1f2937",
5982
- "gray-900": "#111827",
5983
- // Indigo
5984
- "indigo-50": "#eef2ff",
5985
- "indigo-100": "#e0e7ff",
5986
- "indigo-200": "#c7d2fe",
5987
- "indigo-300": "#a5b4fc",
5988
- "indigo-400": "#818cf8",
5989
- "indigo-500": "#6366f1",
5990
- "indigo-600": "#4f46e5",
5991
- "indigo-700": "#4338ca",
5992
- "indigo-800": "#3730a3",
5993
- "indigo-900": "#312e81",
5994
- // Teal
5995
- "teal-50": "#f0fdfa",
5996
- "teal-100": "#ccfbf1",
5997
- "teal-200": "#99f6e4",
5998
- "teal-300": "#5eead4",
5999
- "teal-400": "#2dd4bf",
6000
- "teal-500": "#14b8a6",
6001
- "teal-600": "#0d9488",
6002
- "teal-700": "#0f766e",
6003
- "teal-800": "#115e59",
6004
- "teal-900": "#134e4a",
6005
- // Emerald
6006
- "emerald-50": "#ecfdf5",
6007
- "emerald-100": "#d1fae5",
6008
- "emerald-200": "#a7f3d0",
6009
- "emerald-300": "#6ee7b7",
6010
- "emerald-400": "#34d399",
6011
- "emerald-500": "#10b981",
6012
- "emerald-600": "#059669",
6013
- "emerald-700": "#047857",
6014
- "emerald-800": "#065f46",
6015
- "emerald-900": "#064e3b",
6016
- // Cyan
6017
- "cyan-50": "#ecfeff",
6018
- "cyan-100": "#cffafe",
6019
- "cyan-200": "#a5f3fc",
6020
- "cyan-300": "#67e8f9",
6021
- "cyan-400": "#22d3ee",
6022
- "cyan-500": "#06b6d4",
6023
- "cyan-600": "#0891b2",
6024
- "cyan-700": "#0e7490",
6025
- "cyan-800": "#155e75",
6026
- "cyan-900": "#164e63"
6027
- };
6028
- var getTailwindColor = (color) => {
6029
- if (color.startsWith("#") || color.startsWith("rgb") || color.startsWith("hsl")) {
6030
- return color;
6031
- }
6032
- if (tailwindColors[color]) {
6033
- return tailwindColors[color];
6034
- }
6035
- if (!color.includes("-")) {
6036
- const defaultColor = `${color}-500`;
6037
- if (tailwindColors[defaultColor]) {
6038
- return tailwindColors[defaultColor];
6039
- }
6040
- }
6041
- return color;
6042
- };
6043
5908
  var badgeVariants = (0, import_class_variance_authority2.cva)(
6044
- "inline-flex items-center justify-center rounded-md border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",
5909
+ "inline-flex items-center justify-center rounded-md border text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",
6045
5910
  {
6046
5911
  variants: {
6047
- variant: {
6048
- default: "border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90",
6049
- secondary: "border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",
6050
- destructive: "border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
6051
- outline: "text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground"
6052
- },
6053
- status: {
6054
- success: "bg-green-500 border-white dark:border-zinc-900",
6055
- desactivated: "bg-gray-400 border-white dark:border-zinc-900",
6056
- destructive: "bg-red-500 border-white dark:border-zinc-900",
6057
- away: "bg-yellow-400 border-white dark:border-zinc-900",
6058
- custom: "border-white dark:border-zinc-900"
5912
+ size: {
5913
+ sm: "px-1 py-0.5 text-xs",
5914
+ md: "px-2 py-1 text-xs",
5915
+ lg: "px-3 py-1 text-sm"
6059
5916
  }
6060
5917
  },
6061
5918
  defaultVariants: {
6062
- variant: "default"
5919
+ size: "md"
6063
5920
  }
6064
5921
  }
6065
5922
  );
6066
- function BadgeBase({
5923
+ function Badge({
6067
5924
  className,
6068
- variant,
6069
- status,
6070
- statusColor,
5925
+ color,
5926
+ size = "md",
6071
5927
  asChild = false,
6072
5928
  children,
6073
5929
  style,
6074
5930
  ...props
6075
5931
  }) {
6076
5932
  const Comp = asChild ? import_react_slot3.Slot : "span";
6077
- const isStatus = Boolean(status);
6078
- const resolvedStatusColor = statusColor ? getTailwindColor(statusColor) : void 0;
6079
- const customStyle = status === "custom" && resolvedStatusColor ? { ...style, backgroundColor: resolvedStatusColor } : style;
5933
+ const customStyle = style;
5934
+ const colorClasses = {
5935
+ green: "bg-green-50 text-green-500 border-green-200",
5936
+ gray: "bg-gray-50 text-gray-500 border-gray-200",
5937
+ red: "bg-red-50 text-red-500 border-red-200",
5938
+ yellow: "bg-yellow-50 text-yellow-600 border-yellow-200",
5939
+ blue: "bg-blue-50 text-blue-500 border-blue-200",
5940
+ purple: "bg-purple-50 text-purple-500 border-purple-200"
5941
+ };
6080
5942
  return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
6081
5943
  Comp,
6082
5944
  {
6083
5945
  "data-slot": "badge",
6084
5946
  className: cn(
6085
- badgeVariants({ variant, status: isStatus ? status : void 0 }),
6086
- isStatus && "absolute bottom-0 right-0 rounded-full p-0 h-4 w-4 flex items-center justify-center border-2",
5947
+ badgeVariants({ size }),
5948
+ color ? colorClasses[color] : void 0,
6087
5949
  className
6088
5950
  ),
6089
5951
  style: customStyle,
6090
5952
  ...props,
6091
- children: isStatus ? null : children
5953
+ children
6092
5954
  }
6093
5955
  );
6094
5956
  }
@@ -7534,64 +7396,78 @@ var CollapsibleContentBase = React25.forwardRef(({ className, children, ...props
7534
7396
  ),
7535
7397
  "data-slot": "collapsible-content",
7536
7398
  ...props,
7537
- children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "pb-3 pt-1", children })
7399
+ children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { children })
7538
7400
  }
7539
7401
  );
7540
7402
  });
7541
7403
  CollapsibleContentBase.displayName = CollapsiblePrimitive.CollapsibleContent.displayName;
7542
7404
 
7543
- // src/components/ui/form/DebounceInput.tsx
7544
- var import_react30 = require("react");
7545
- var import_react31 = require("@phosphor-icons/react");
7546
- var import_jsx_runtime45 = require("react/jsx-runtime");
7547
-
7548
7405
  // src/components/ui/form/HoverCardBase.tsx
7406
+ var React26 = __toESM(require("react"));
7549
7407
  var HoverCardPrimitive = __toESM(require("@radix-ui/react-hover-card"));
7550
- var import_jsx_runtime46 = require("react/jsx-runtime");
7408
+ var import_jsx_runtime45 = require("react/jsx-runtime");
7551
7409
  function HoverCardBase(props) {
7552
- return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(HoverCardPrimitive.Root, { ...props });
7410
+ return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(HoverCardPrimitive.Root, { ...props });
7553
7411
  }
7554
7412
  function HoverCardTriggerBase(props) {
7555
- return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(HoverCardPrimitive.Trigger, { ...props });
7556
- }
7557
- function HoverCardContentBase({
7558
- className,
7559
- align = "center",
7560
- sideOffset = 4,
7561
- ...props
7562
- }) {
7563
- return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(HoverCardPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
7564
- HoverCardPrimitive.Content,
7565
- {
7566
- align,
7567
- sideOffset,
7568
- className: cn(
7569
- "z-50 w-64 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none",
7570
- "data-[state=open]:animate-in data-[state=closed]:animate-out",
7571
- "data-[state=open]:fade-in-0 data-[state=closed]:fade-out-0",
7572
- "data-[state=open]:zoom-in-95 data-[state=closed]:zoom-out-95",
7573
- "data-[side=bottom]:slide-in-from-top-2",
7574
- "data-[side=left]:slide-in-from-right-2",
7575
- "data-[side=right]:slide-in-from-left-2",
7576
- "data-[side=top]:slide-in-from-bottom-2",
7577
- className
7578
- ),
7579
- ...props
7580
- }
7581
- ) });
7413
+ return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(HoverCardPrimitive.Trigger, { ...props });
7582
7414
  }
7415
+ var HoverCardContentBase = React26.forwardRef(
7416
+ ({ className, align = "center", sideOffset = 6, children, ...props }, ref) => {
7417
+ return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(HoverCardPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
7418
+ HoverCardPrimitive.Content,
7419
+ {
7420
+ ref,
7421
+ align,
7422
+ sideOffset,
7423
+ className: cn(
7424
+ "z-50 w-64 max-w-[90vw] rounded-lg border bg-popover p-4 text-popover-foreground shadow-lg outline-none backdrop-blur-sm relative transform-gpu",
7425
+ "motion-safe:transition-all motion-safe:duration-200 motion-safe:ease-out",
7426
+ "motion-reduce:transition-none motion-reduce:transform-none",
7427
+ "data-[state=open]:scale-100 data-[state=closed]:scale-95",
7428
+ "data-[state=open]:shadow-2xl data-[state=closed]:shadow-lg",
7429
+ "data-[state=open]:animate-in data-[state=closed]:animate-out",
7430
+ "data-[state=open]:fade-in-0 data-[state=closed]:fade-out-0",
7431
+ "data-[state=open]:zoom-in-95 data-[state=closed]:zoom-out-95",
7432
+ "data-[side=bottom]:origin-top data-[side=top]:origin-bottom data-[side=left]:origin-right data-[side=right]:origin-left",
7433
+ "data-[side=bottom]:slide-in-from-top-2",
7434
+ "data-[side=left]:slide-in-from-right-2",
7435
+ "data-[side=right]:slide-in-from-left-2",
7436
+ "data-[side=top]:slide-in-from-bottom-2",
7437
+ className
7438
+ ),
7439
+ ...props,
7440
+ children: [
7441
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
7442
+ HoverCardPrimitive.Arrow,
7443
+ {
7444
+ className: cn(
7445
+ "fill-popover stroke-[rgba(0,0,0,0.06)] dark:stroke-[rgba(255,255,255,0.06)]",
7446
+ "motion-safe:transition-transform motion-safe:duration-200",
7447
+ // subtle arrow nudge depending on side
7448
+ "data-[side=top]:-translate-y-1 data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1"
7449
+ )
7450
+ }
7451
+ ),
7452
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: "relative z-10", children })
7453
+ ]
7454
+ }
7455
+ ) });
7456
+ }
7457
+ );
7458
+ HoverCardContentBase.displayName = HoverCardPrimitive.Content.displayName;
7583
7459
 
7584
7460
  // src/components/ui/form/Input-OTP-Base.tsx
7585
- var React26 = __toESM(require("react"));
7461
+ var React27 = __toESM(require("react"));
7586
7462
  var import_input_otp = require("input-otp");
7587
- var import_react32 = require("@phosphor-icons/react");
7588
- var import_jsx_runtime47 = require("react/jsx-runtime");
7463
+ var import_react30 = require("@phosphor-icons/react");
7464
+ var import_jsx_runtime46 = require("react/jsx-runtime");
7589
7465
  function InputOTPBase({
7590
7466
  className,
7591
7467
  containerClassName,
7592
7468
  ...props
7593
7469
  }) {
7594
- return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
7470
+ return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
7595
7471
  import_input_otp.OTPInput,
7596
7472
  {
7597
7473
  "data-slot": "input-otp",
@@ -7605,7 +7481,7 @@ function InputOTPBase({
7605
7481
  );
7606
7482
  }
7607
7483
  function InputOTPGroupBase({ className, ...props }) {
7608
- return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
7484
+ return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
7609
7485
  "div",
7610
7486
  {
7611
7487
  "data-slot": "input-otp-group",
@@ -7619,9 +7495,9 @@ function InputOTPSlotBase({
7619
7495
  className,
7620
7496
  ...props
7621
7497
  }) {
7622
- const inputOTPContext = React26.useContext(import_input_otp.OTPInputContext);
7498
+ const inputOTPContext = React27.useContext(import_input_otp.OTPInputContext);
7623
7499
  const { char, hasFakeCaret, isActive } = inputOTPContext?.slots[index] ?? {};
7624
- return /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(
7500
+ return /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(
7625
7501
  "div",
7626
7502
  {
7627
7503
  "data-slot": "input-otp-slot",
@@ -7633,20 +7509,20 @@ function InputOTPSlotBase({
7633
7509
  ...props,
7634
7510
  children: [
7635
7511
  char,
7636
- hasFakeCaret && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("div", { className: "pointer-events-none absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("div", { className: "animate-caret-blink bg-foreground h-4 w-px duration-1000" }) })
7512
+ hasFakeCaret && /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", { className: "pointer-events-none absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", { className: "animate-caret-blink bg-foreground h-4 w-px duration-1000" }) })
7637
7513
  ]
7638
7514
  }
7639
7515
  );
7640
7516
  }
7641
7517
  function InputOTPSeparatorBase({ ...props }) {
7642
- return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("div", { "data-slot": "input-otp-separator", role: "separator", ...props, children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_react32.MinusIcon, {}) });
7518
+ return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", { "data-slot": "input-otp-separator", role: "separator", ...props, children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_react30.MinusIcon, {}) });
7643
7519
  }
7644
7520
 
7645
7521
  // src/components/ui/form/SliderBase.tsx
7646
- var React27 = __toESM(require("react"));
7522
+ var React28 = __toESM(require("react"));
7647
7523
  var SliderPrimitive = __toESM(require("@radix-ui/react-slider"));
7648
- var import_jsx_runtime48 = require("react/jsx-runtime");
7649
- var SlideBase = React27.forwardRef(
7524
+ var import_jsx_runtime47 = require("react/jsx-runtime");
7525
+ var SlideBase = React28.forwardRef(
7650
7526
  ({
7651
7527
  className,
7652
7528
  orientation = "horizontal",
@@ -7656,13 +7532,13 @@ var SlideBase = React27.forwardRef(
7656
7532
  ...props
7657
7533
  }, ref) => {
7658
7534
  const isVertical = orientation === "vertical";
7659
- return /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)(
7535
+ return /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(
7660
7536
  "div",
7661
7537
  {
7662
7538
  className: cn("flex flex-col gap-1", isVertical ? "h-full " : "w-full"),
7663
7539
  children: [
7664
- label && /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(LabelBase_default, { className: "py-2", children: label }),
7665
- /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)(
7540
+ label && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(LabelBase_default, { className: "py-2", children: label }),
7541
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(
7666
7542
  "div",
7667
7543
  {
7668
7544
  className: cn(
@@ -7670,8 +7546,8 @@ var SlideBase = React27.forwardRef(
7670
7546
  isVertical ? "flex-col h-full" : "flex-row items-center w-full"
7671
7547
  ),
7672
7548
  children: [
7673
- leftIcon && /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("div", { className: "flex items-center justify-center", children: leftIcon }),
7674
- /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)(
7549
+ leftIcon && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("div", { className: "flex items-center justify-center", children: leftIcon }),
7550
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(
7675
7551
  SliderPrimitive.Root,
7676
7552
  {
7677
7553
  ref,
@@ -7683,14 +7559,14 @@ var SlideBase = React27.forwardRef(
7683
7559
  ),
7684
7560
  ...props,
7685
7561
  children: [
7686
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
7562
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
7687
7563
  SliderPrimitive.Track,
7688
7564
  {
7689
7565
  className: cn(
7690
7566
  "relative overflow-hidden bg-primary/20 rounded-full",
7691
7567
  isVertical ? "w-1.5 h-full" : "h-1.5 w-full"
7692
7568
  ),
7693
- children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
7569
+ children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
7694
7570
  SliderPrimitive.Range,
7695
7571
  {
7696
7572
  className: cn(
@@ -7701,7 +7577,7 @@ var SlideBase = React27.forwardRef(
7701
7577
  )
7702
7578
  }
7703
7579
  ),
7704
- /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
7580
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
7705
7581
  SliderPrimitive.Thumb,
7706
7582
  {
7707
7583
  className: cn(
@@ -7714,7 +7590,7 @@ var SlideBase = React27.forwardRef(
7714
7590
  ]
7715
7591
  }
7716
7592
  ),
7717
- rightIcon && /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("div", { className: "flex items-center justify-center", children: rightIcon })
7593
+ rightIcon && /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("div", { className: "flex items-center justify-center", children: rightIcon })
7718
7594
  ]
7719
7595
  }
7720
7596
  )
@@ -7726,10 +7602,10 @@ var SlideBase = React27.forwardRef(
7726
7602
  SlideBase.displayName = "SlideBase";
7727
7603
 
7728
7604
  // src/components/ui/form/SmallButtons.tsx
7729
- var React28 = __toESM(require("react"));
7730
- var import_react33 = require("@phosphor-icons/react");
7731
- var import_jsx_runtime49 = require("react/jsx-runtime");
7732
- var EditButton = React28.forwardRef(
7605
+ var React29 = __toESM(require("react"));
7606
+ var import_react31 = require("@phosphor-icons/react");
7607
+ var import_jsx_runtime48 = require("react/jsx-runtime");
7608
+ var EditButton = React29.forwardRef(
7733
7609
  ({
7734
7610
  disabled,
7735
7611
  onClick,
@@ -7740,7 +7616,7 @@ var EditButton = React28.forwardRef(
7740
7616
  variant = "default",
7741
7617
  size = "icon",
7742
7618
  ...props
7743
- }, ref) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
7619
+ }, ref) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
7744
7620
  ButtonBase,
7745
7621
  {
7746
7622
  ref,
@@ -7757,8 +7633,8 @@ var EditButton = React28.forwardRef(
7757
7633
  className
7758
7634
  ),
7759
7635
  ...props,
7760
- children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
7761
- import_react33.PencilSimpleIcon,
7636
+ children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
7637
+ import_react31.PencilSimpleIcon,
7762
7638
  {
7763
7639
  size: iconSize,
7764
7640
  color: iconColor,
@@ -7769,7 +7645,7 @@ var EditButton = React28.forwardRef(
7769
7645
  )
7770
7646
  );
7771
7647
  EditButton.displayName = "EditButton";
7772
- var ChangeButton = React28.forwardRef(
7648
+ var ChangeButton = React29.forwardRef(
7773
7649
  ({
7774
7650
  disabled,
7775
7651
  onClick,
@@ -7780,7 +7656,7 @@ var ChangeButton = React28.forwardRef(
7780
7656
  variant = "default",
7781
7657
  size = "icon",
7782
7658
  ...props
7783
- }, ref) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
7659
+ }, ref) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
7784
7660
  ButtonBase,
7785
7661
  {
7786
7662
  ref,
@@ -7797,8 +7673,8 @@ var ChangeButton = React28.forwardRef(
7797
7673
  className
7798
7674
  ),
7799
7675
  ...props,
7800
- children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
7801
- import_react33.ArrowsLeftRightIcon,
7676
+ children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
7677
+ import_react31.ArrowsLeftRightIcon,
7802
7678
  {
7803
7679
  size: iconSize,
7804
7680
  color: iconColor,
@@ -7809,7 +7685,7 @@ var ChangeButton = React28.forwardRef(
7809
7685
  )
7810
7686
  );
7811
7687
  ChangeButton.displayName = "ChangeButton";
7812
- var SaveButton = React28.forwardRef(
7688
+ var SaveButton = React29.forwardRef(
7813
7689
  ({
7814
7690
  disabled,
7815
7691
  onClick,
@@ -7820,7 +7696,7 @@ var SaveButton = React28.forwardRef(
7820
7696
  variant = "default",
7821
7697
  size = "icon",
7822
7698
  ...props
7823
- }, ref) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
7699
+ }, ref) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
7824
7700
  ButtonBase,
7825
7701
  {
7826
7702
  ref,
@@ -7837,8 +7713,8 @@ var SaveButton = React28.forwardRef(
7837
7713
  className
7838
7714
  ),
7839
7715
  ...props,
7840
- children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
7841
- import_react33.FloppyDiskIcon,
7716
+ children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
7717
+ import_react31.FloppyDiskIcon,
7842
7718
  {
7843
7719
  size: iconSize,
7844
7720
  color: iconColor,
@@ -7849,7 +7725,7 @@ var SaveButton = React28.forwardRef(
7849
7725
  )
7850
7726
  );
7851
7727
  SaveButton.displayName = "SaveButton";
7852
- var AddButton = React28.forwardRef(
7728
+ var AddButton = React29.forwardRef(
7853
7729
  ({
7854
7730
  disabled,
7855
7731
  onClick,
@@ -7860,7 +7736,7 @@ var AddButton = React28.forwardRef(
7860
7736
  variant = "default",
7861
7737
  size = "icon",
7862
7738
  ...props
7863
- }, ref) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
7739
+ }, ref) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
7864
7740
  ButtonBase,
7865
7741
  {
7866
7742
  ref,
@@ -7877,8 +7753,8 @@ var AddButton = React28.forwardRef(
7877
7753
  className
7878
7754
  ),
7879
7755
  ...props,
7880
- children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
7881
- import_react33.PlusIcon,
7756
+ children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
7757
+ import_react31.PlusIcon,
7882
7758
  {
7883
7759
  size: iconSize,
7884
7760
  color: iconColor,
@@ -7889,7 +7765,7 @@ var AddButton = React28.forwardRef(
7889
7765
  )
7890
7766
  );
7891
7767
  AddButton.displayName = "AddButton";
7892
- var CloseButton = React28.forwardRef(
7768
+ var CloseButton = React29.forwardRef(
7893
7769
  ({
7894
7770
  disabled,
7895
7771
  onClick,
@@ -7900,7 +7776,7 @@ var CloseButton = React28.forwardRef(
7900
7776
  variant = "ghost",
7901
7777
  size = "icon",
7902
7778
  ...props
7903
- }, ref) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
7779
+ }, ref) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
7904
7780
  ButtonBase,
7905
7781
  {
7906
7782
  ref,
@@ -7917,8 +7793,8 @@ var CloseButton = React28.forwardRef(
7917
7793
  className
7918
7794
  ),
7919
7795
  ...props,
7920
- children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
7921
- import_react33.XIcon,
7796
+ children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
7797
+ import_react31.XIcon,
7922
7798
  {
7923
7799
  size: iconSize,
7924
7800
  color: iconColor,
@@ -7934,7 +7810,7 @@ var DownloadButton = ({
7934
7810
  onClick,
7935
7811
  testid = "button-download",
7936
7812
  ...props
7937
- }) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
7813
+ }) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
7938
7814
  ButtonBase,
7939
7815
  {
7940
7816
  variant: "outline",
@@ -7949,8 +7825,8 @@ var DownloadButton = ({
7949
7825
  "disabled:hover:scale-100"
7950
7826
  ),
7951
7827
  ...props,
7952
- children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
7953
- import_react33.DownloadSimpleIcon,
7828
+ children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
7829
+ import_react31.DownloadSimpleIcon,
7954
7830
  {
7955
7831
  size: 18,
7956
7832
  className: "transition-transform duration-300 group-hover:translate-y-0.5"
@@ -7963,7 +7839,7 @@ var UploadButton = ({
7963
7839
  onClick,
7964
7840
  testid = "button-upload",
7965
7841
  ...props
7966
- }) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
7842
+ }) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
7967
7843
  ButtonBase,
7968
7844
  {
7969
7845
  variant: "outline",
@@ -7978,8 +7854,8 @@ var UploadButton = ({
7978
7854
  "disabled:hover:scale-100"
7979
7855
  ),
7980
7856
  ...props,
7981
- children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
7982
- import_react33.UploadSimpleIcon,
7857
+ children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
7858
+ import_react31.UploadSimpleIcon,
7983
7859
  {
7984
7860
  size: 18,
7985
7861
  className: "transition-transform duration-300 group-hover:-translate-y-0.5"
@@ -7992,7 +7868,7 @@ var CopyButton = ({
7992
7868
  onClick,
7993
7869
  testid = "button-copy",
7994
7870
  ...props
7995
- }) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
7871
+ }) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
7996
7872
  ButtonBase,
7997
7873
  {
7998
7874
  variant: "ghost",
@@ -8007,8 +7883,8 @@ var CopyButton = ({
8007
7883
  "disabled:hover:scale-100"
8008
7884
  ),
8009
7885
  ...props,
8010
- children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8011
- import_react33.CopyIcon,
7886
+ children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
7887
+ import_react31.CopyIcon,
8012
7888
  {
8013
7889
  size: 18,
8014
7890
  className: "transition-transform duration-200 group-hover:scale-110"
@@ -8021,7 +7897,7 @@ var RefreshButton = ({
8021
7897
  onClick,
8022
7898
  testid = "button-refresh",
8023
7899
  ...props
8024
- }) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
7900
+ }) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
8025
7901
  ButtonBase,
8026
7902
  {
8027
7903
  variant: "ghost",
@@ -8036,8 +7912,8 @@ var RefreshButton = ({
8036
7912
  "disabled:hover:scale-100"
8037
7913
  ),
8038
7914
  ...props,
8039
- children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8040
- import_react33.ArrowClockwiseIcon,
7915
+ children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
7916
+ import_react31.ArrowClockwiseIcon,
8041
7917
  {
8042
7918
  size: 18,
8043
7919
  className: "transition-transform duration-500 group-hover:rotate-180"
@@ -8050,7 +7926,7 @@ var SearchButton = ({
8050
7926
  onClick,
8051
7927
  testid = "button-search",
8052
7928
  ...props
8053
- }) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
7929
+ }) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
8054
7930
  ButtonBase,
8055
7931
  {
8056
7932
  variant: "outline",
@@ -8065,8 +7941,8 @@ var SearchButton = ({
8065
7941
  "disabled:hover:scale-100"
8066
7942
  ),
8067
7943
  ...props,
8068
- children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8069
- import_react33.MagnifyingGlassIcon,
7944
+ children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
7945
+ import_react31.MagnifyingGlassIcon,
8070
7946
  {
8071
7947
  size: 18,
8072
7948
  className: "transition-transform duration-200 group-hover:scale-110 group-hover:-rotate-12"
@@ -8079,7 +7955,7 @@ var BackButton = ({
8079
7955
  onClick,
8080
7956
  testid = "button-back",
8081
7957
  ...props
8082
- }) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
7958
+ }) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
8083
7959
  ButtonBase,
8084
7960
  {
8085
7961
  variant: "ghost",
@@ -8094,8 +7970,8 @@ var BackButton = ({
8094
7970
  "disabled:hover:scale-100"
8095
7971
  ),
8096
7972
  ...props,
8097
- children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8098
- import_react33.ArrowLeftIcon,
7973
+ children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
7974
+ import_react31.ArrowLeftIcon,
8099
7975
  {
8100
7976
  size: 18,
8101
7977
  className: "transition-transform duration-300 group-hover:-translate-x-1"
@@ -8108,7 +7984,7 @@ var SettingsButton = ({
8108
7984
  onClick,
8109
7985
  testid = "button-settings",
8110
7986
  ...props
8111
- }) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
7987
+ }) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
8112
7988
  ButtonBase,
8113
7989
  {
8114
7990
  variant: "ghost",
@@ -8123,8 +7999,8 @@ var SettingsButton = ({
8123
7999
  "disabled:hover:scale-100"
8124
8000
  ),
8125
8001
  ...props,
8126
- children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8127
- import_react33.GearIcon,
8002
+ children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
8003
+ import_react31.GearIcon,
8128
8004
  {
8129
8005
  size: 18,
8130
8006
  className: "transition-transform duration-500 group-hover:rotate-90"
@@ -8137,7 +8013,7 @@ var NotificationButton = ({
8137
8013
  onClick,
8138
8014
  testid = "button-notification",
8139
8015
  ...props
8140
- }) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8016
+ }) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
8141
8017
  ButtonBase,
8142
8018
  {
8143
8019
  variant: "ghost",
@@ -8152,8 +8028,8 @@ var NotificationButton = ({
8152
8028
  "disabled:hover:scale-100"
8153
8029
  ),
8154
8030
  ...props,
8155
- children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8156
- import_react33.BellIcon,
8031
+ children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
8032
+ import_react31.BellIcon,
8157
8033
  {
8158
8034
  size: 18,
8159
8035
  className: "transition-transform duration-300 group-hover:scale-110 group-hover:-rotate-12"
@@ -8166,7 +8042,7 @@ var MoreButton = ({
8166
8042
  onClick,
8167
8043
  testid = "button-more",
8168
8044
  ...props
8169
- }) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8045
+ }) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
8170
8046
  ButtonBase,
8171
8047
  {
8172
8048
  variant: "ghost",
@@ -8181,8 +8057,8 @@ var MoreButton = ({
8181
8057
  "disabled:hover:scale-100"
8182
8058
  ),
8183
8059
  ...props,
8184
- children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8185
- import_react33.DotsThreeIcon,
8060
+ children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
8061
+ import_react31.DotsThreeIcon,
8186
8062
  {
8187
8063
  size: 18,
8188
8064
  className: "transition-transform duration-200 group-hover:scale-110"
@@ -8195,7 +8071,7 @@ var CheckButton = ({
8195
8071
  onClick,
8196
8072
  testid = "button-check",
8197
8073
  ...props
8198
- }) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8074
+ }) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
8199
8075
  ButtonBase,
8200
8076
  {
8201
8077
  variant: "default",
@@ -8210,8 +8086,8 @@ var CheckButton = ({
8210
8086
  "disabled:hover:scale-100"
8211
8087
  ),
8212
8088
  ...props,
8213
- children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8214
- import_react33.CheckIcon,
8089
+ children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
8090
+ import_react31.CheckIcon,
8215
8091
  {
8216
8092
  size: 18,
8217
8093
  className: "transition-transform duration-200 group-hover:scale-110"
@@ -8230,7 +8106,7 @@ var FilterButton = ({
8230
8106
  variant,
8231
8107
  size = "icon",
8232
8108
  ...props
8233
- }) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8109
+ }) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
8234
8110
  ButtonBase,
8235
8111
  {
8236
8112
  variant: variant || (active ? "default" : "outline"),
@@ -8246,8 +8122,8 @@ var FilterButton = ({
8246
8122
  className
8247
8123
  ),
8248
8124
  ...props,
8249
- children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8250
- import_react33.FunnelIcon,
8125
+ children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
8126
+ import_react31.FunnelIcon,
8251
8127
  {
8252
8128
  size: iconSize,
8253
8129
  color: iconColor,
@@ -8268,7 +8144,7 @@ var LikeButton = ({
8268
8144
  variant = "ghost",
8269
8145
  size = "icon",
8270
8146
  ...props
8271
- }) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8147
+ }) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
8272
8148
  ButtonBase,
8273
8149
  {
8274
8150
  variant,
@@ -8285,8 +8161,8 @@ var LikeButton = ({
8285
8161
  className
8286
8162
  ),
8287
8163
  ...props,
8288
- children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8289
- import_react33.HeartIcon,
8164
+ children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
8165
+ import_react31.HeartIcon,
8290
8166
  {
8291
8167
  size: iconSize,
8292
8168
  color: iconColor,
@@ -8307,7 +8183,7 @@ var FavoriteButton = ({
8307
8183
  variant = "ghost",
8308
8184
  size = "icon",
8309
8185
  ...props
8310
- }) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8186
+ }) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
8311
8187
  ButtonBase,
8312
8188
  {
8313
8189
  variant,
@@ -8324,8 +8200,8 @@ var FavoriteButton = ({
8324
8200
  className
8325
8201
  ),
8326
8202
  ...props,
8327
- children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8328
- import_react33.StarIcon,
8203
+ children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
8204
+ import_react31.StarIcon,
8329
8205
  {
8330
8206
  size: iconSize,
8331
8207
  color: iconColor,
@@ -8346,7 +8222,7 @@ var VisibilityButton = ({
8346
8222
  variant = "ghost",
8347
8223
  size = "icon",
8348
8224
  ...props
8349
- }) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8225
+ }) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
8350
8226
  ButtonBase,
8351
8227
  {
8352
8228
  variant,
@@ -8362,15 +8238,15 @@ var VisibilityButton = ({
8362
8238
  className
8363
8239
  ),
8364
8240
  ...props,
8365
- children: isVisible ? /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8366
- import_react33.EyeIcon,
8241
+ children: isVisible ? /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
8242
+ import_react31.EyeIcon,
8367
8243
  {
8368
8244
  size: iconSize,
8369
8245
  color: iconColor,
8370
8246
  className: "transition-opacity duration-200"
8371
8247
  }
8372
- ) : /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8373
- import_react33.EyeSlashIcon,
8248
+ ) : /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
8249
+ import_react31.EyeSlashIcon,
8374
8250
  {
8375
8251
  size: iconSize,
8376
8252
  color: iconColor,
@@ -8379,8 +8255,8 @@ var VisibilityButton = ({
8379
8255
  )
8380
8256
  }
8381
8257
  );
8382
- var ViewButton = (props) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(VisibilityButton, { isVisible: true, testid: "button-view", ...props });
8383
- var HideButton = (props) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(VisibilityButton, { isVisible: false, testid: "button-hide", ...props });
8258
+ var ViewButton = (props) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(VisibilityButton, { isVisible: true, testid: "button-view", ...props });
8259
+ var HideButton = (props) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(VisibilityButton, { isVisible: false, testid: "button-hide", ...props });
8384
8260
  var LockButton = ({
8385
8261
  disabled,
8386
8262
  onClick,
@@ -8392,7 +8268,7 @@ var LockButton = ({
8392
8268
  variant = "ghost",
8393
8269
  size = "icon",
8394
8270
  ...props
8395
- }) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8271
+ }) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
8396
8272
  ButtonBase,
8397
8273
  {
8398
8274
  variant,
@@ -8409,15 +8285,15 @@ var LockButton = ({
8409
8285
  className
8410
8286
  ),
8411
8287
  ...props,
8412
- children: isLocked ? /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8413
- import_react33.LockIcon,
8288
+ children: isLocked ? /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
8289
+ import_react31.LockIcon,
8414
8290
  {
8415
8291
  size: iconSize,
8416
8292
  color: iconColor,
8417
8293
  className: "transition-all duration-200 group-hover:scale-110"
8418
8294
  }
8419
- ) : /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8420
- import_react33.LockOpenIcon,
8295
+ ) : /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
8296
+ import_react31.LockOpenIcon,
8421
8297
  {
8422
8298
  size: iconSize,
8423
8299
  color: iconColor,
@@ -8426,14 +8302,14 @@ var LockButton = ({
8426
8302
  )
8427
8303
  }
8428
8304
  );
8429
- var UnlockButton = (props) => /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(LockButton, { isLocked: false, testid: "button-unlock", ...props });
8305
+ var UnlockButton = (props) => /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(LockButton, { isLocked: false, testid: "button-unlock", ...props });
8430
8306
 
8431
8307
  // src/components/ui/form/SwitchBase.tsx
8432
- var React29 = __toESM(require("react"));
8308
+ var React30 = __toESM(require("react"));
8433
8309
  var SwitchPrimitives = __toESM(require("@radix-ui/react-switch"));
8434
- var import_jsx_runtime50 = require("react/jsx-runtime");
8435
- var SwitchBase = React29.forwardRef(({ className, testid: dataTestId = "switch-base", ...props }, ref) => {
8436
- return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
8310
+ var import_jsx_runtime49 = require("react/jsx-runtime");
8311
+ var SwitchBase = React30.forwardRef(({ className, testid: dataTestId = "switch-base", ...props }, ref) => {
8312
+ return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8437
8313
  SwitchPrimitives.Root,
8438
8314
  {
8439
8315
  ...props,
@@ -8443,7 +8319,7 @@ var SwitchBase = React29.forwardRef(({ className, testid: dataTestId = "switch-b
8443
8319
  className
8444
8320
  ),
8445
8321
  "data-testid": dataTestId,
8446
- children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
8322
+ children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
8447
8323
  SwitchPrimitives.Thumb,
8448
8324
  {
8449
8325
  className: cn(
@@ -8461,18 +8337,18 @@ var SwitchBase = React29.forwardRef(({ className, testid: dataTestId = "switch-b
8461
8337
  SwitchBase.displayName = SwitchPrimitives.Root.displayName;
8462
8338
 
8463
8339
  // src/components/ui/form/TextAreaBase.tsx
8464
- var React30 = __toESM(require("react"));
8340
+ var React31 = __toESM(require("react"));
8465
8341
  var import_framer_motion12 = require("framer-motion");
8466
- var import_react34 = require("@phosphor-icons/react");
8467
- var import_jsx_runtime51 = require("react/jsx-runtime");
8468
- var TextAreaBase = React30.forwardRef(
8342
+ var import_react32 = require("@phosphor-icons/react");
8343
+ var import_jsx_runtime50 = require("react/jsx-runtime");
8344
+ var TextAreaBase = React31.forwardRef(
8469
8345
  ({ className, clearable = false, onClear, ...props }, ref) => {
8470
- const [isFocused, setIsFocused] = React30.useState(false);
8471
- const [hasContent, setHasContent] = React30.useState(
8346
+ const [isFocused, setIsFocused] = React31.useState(false);
8347
+ const [hasContent, setHasContent] = React31.useState(
8472
8348
  !!props.value || !!props.defaultValue
8473
8349
  );
8474
- const [showConfirmTooltip, setShowConfirmTooltip] = React30.useState(false);
8475
- const textareaRef = React30.useRef(null);
8350
+ const [showConfirmTooltip, setShowConfirmTooltip] = React31.useState(false);
8351
+ const textareaRef = React31.useRef(null);
8476
8352
  const handleFocus = (e) => {
8477
8353
  setIsFocused(true);
8478
8354
  props.onFocus?.(e);
@@ -8508,12 +8384,12 @@ var TextAreaBase = React30.forwardRef(
8508
8384
  const handleCancelClear = () => {
8509
8385
  setShowConfirmTooltip(false);
8510
8386
  };
8511
- React30.useImperativeHandle(ref, () => textareaRef.current);
8512
- React30.useEffect(() => {
8387
+ React31.useImperativeHandle(ref, () => textareaRef.current);
8388
+ React31.useEffect(() => {
8513
8389
  setHasContent(!!props.value || !!props.defaultValue);
8514
8390
  }, [props.value, props.defaultValue]);
8515
- return /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("div", { className: "relative", children: [
8516
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
8391
+ return /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "relative", children: [
8392
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
8517
8393
  "textarea",
8518
8394
  {
8519
8395
  className: cn(
@@ -8536,13 +8412,13 @@ var TextAreaBase = React30.forwardRef(
8536
8412
  ...props
8537
8413
  }
8538
8414
  ),
8539
- clearable && hasContent && /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(TooltipProviderBase, { children: /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(
8415
+ clearable && hasContent && /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(TooltipProviderBase, { children: /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(
8540
8416
  TooltipBase,
8541
8417
  {
8542
8418
  open: showConfirmTooltip,
8543
8419
  onOpenChange: setShowConfirmTooltip,
8544
8420
  children: [
8545
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(TooltipTriggerBase, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
8421
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(TooltipTriggerBase, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
8546
8422
  import_framer_motion12.motion.button,
8547
8423
  {
8548
8424
  type: "button",
@@ -8560,18 +8436,18 @@ var TextAreaBase = React30.forwardRef(
8560
8436
  ),
8561
8437
  disabled: props.disabled,
8562
8438
  "aria-label": "Limpar texto",
8563
- children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_react34.TrashIcon, { size: 16, weight: "regular" })
8439
+ children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_react32.TrashIcon, { size: 16, weight: "regular" })
8564
8440
  }
8565
8441
  ) }),
8566
- /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(
8442
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(
8567
8443
  TooltipContentBase,
8568
8444
  {
8569
8445
  side: "left",
8570
8446
  className: "bg-background border border-border shadow-lg p-3 flex flex-col gap-2",
8571
8447
  children: [
8572
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("p", { className: "text-sm text-foreground font-medium mb-1", children: "Limpar todo o texto?" }),
8573
- /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)("div", { className: "flex gap-2", children: [
8574
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
8448
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("p", { className: "text-sm text-foreground font-medium mb-1", children: "Limpar todo o texto?" }),
8449
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)("div", { className: "flex gap-2", children: [
8450
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
8575
8451
  "button",
8576
8452
  {
8577
8453
  type: "button",
@@ -8585,7 +8461,7 @@ var TextAreaBase = React30.forwardRef(
8585
8461
  children: "Confirmar"
8586
8462
  }
8587
8463
  ),
8588
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
8464
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
8589
8465
  "button",
8590
8466
  {
8591
8467
  type: "button",
@@ -8606,17 +8482,17 @@ var TextAreaBase = React30.forwardRef(
8606
8482
  ]
8607
8483
  }
8608
8484
  ) }),
8609
- /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
8485
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
8610
8486
  import_framer_motion12.motion.div,
8611
8487
  {
8612
8488
  className: "pointer-events-none absolute inset-0 rounded-lg",
8613
8489
  initial: { opacity: 0 },
8614
8490
  animate: { opacity: isFocused ? 1 : 0 },
8615
8491
  transition: { duration: 0.3 },
8616
- children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "absolute inset-0 rounded-lg bg-gradient-to-r from-ring/20 via-ring/10 to-ring/20 blur-sm" })
8492
+ children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { className: "absolute inset-0 rounded-lg bg-gradient-to-r from-ring/20 via-ring/10 to-ring/20 blur-sm" })
8617
8493
  }
8618
8494
  ),
8619
- isFocused && hasContent && props.maxLength && /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(
8495
+ isFocused && hasContent && props.maxLength && /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(
8620
8496
  import_framer_motion12.motion.div,
8621
8497
  {
8622
8498
  initial: { opacity: 0, y: -10 },
@@ -8636,13 +8512,13 @@ var TextAreaBase = React30.forwardRef(
8636
8512
  TextAreaBase.displayName = "TextAreaBase";
8637
8513
 
8638
8514
  // src/components/ui/layout/CarouselBase.tsx
8639
- var React31 = __toESM(require("react"));
8515
+ var React32 = __toESM(require("react"));
8640
8516
  var import_embla_carousel_react = __toESM(require("embla-carousel-react"));
8641
- var import_react35 = require("@phosphor-icons/react");
8642
- var import_jsx_runtime52 = require("react/jsx-runtime");
8643
- var CarouselContext = React31.createContext(null);
8517
+ var import_react33 = require("@phosphor-icons/react");
8518
+ var import_jsx_runtime51 = require("react/jsx-runtime");
8519
+ var CarouselContext = React32.createContext(null);
8644
8520
  function useCarousel() {
8645
- const context = React31.useContext(CarouselContext);
8521
+ const context = React32.useContext(CarouselContext);
8646
8522
  if (!context) {
8647
8523
  throw new Error("useCarousel must be used within a <CarouselBase />");
8648
8524
  }
@@ -8664,20 +8540,20 @@ function CarouselBase({
8664
8540
  },
8665
8541
  plugins
8666
8542
  );
8667
- const [canScrollPrev, setCanScrollPrev] = React31.useState(false);
8668
- const [canScrollNext, setCanScrollNext] = React31.useState(false);
8669
- const onSelect = React31.useCallback((api2) => {
8543
+ const [canScrollPrev, setCanScrollPrev] = React32.useState(false);
8544
+ const [canScrollNext, setCanScrollNext] = React32.useState(false);
8545
+ const onSelect = React32.useCallback((api2) => {
8670
8546
  if (!api2) return;
8671
8547
  setCanScrollPrev(api2.canScrollPrev());
8672
8548
  setCanScrollNext(api2.canScrollNext());
8673
8549
  }, []);
8674
- const scrollPrev = React31.useCallback(() => {
8550
+ const scrollPrev = React32.useCallback(() => {
8675
8551
  api?.scrollPrev();
8676
8552
  }, [api]);
8677
- const scrollNext = React31.useCallback(() => {
8553
+ const scrollNext = React32.useCallback(() => {
8678
8554
  api?.scrollNext();
8679
8555
  }, [api]);
8680
- const handleKeyDown = React31.useCallback(
8556
+ const handleKeyDown = React32.useCallback(
8681
8557
  (event) => {
8682
8558
  if (event.key === "ArrowLeft") {
8683
8559
  event.preventDefault();
@@ -8689,11 +8565,11 @@ function CarouselBase({
8689
8565
  },
8690
8566
  [scrollPrev, scrollNext]
8691
8567
  );
8692
- React31.useEffect(() => {
8568
+ React32.useEffect(() => {
8693
8569
  if (!api || !setApi) return;
8694
8570
  setApi(api);
8695
8571
  }, [api, setApi]);
8696
- React31.useEffect(() => {
8572
+ React32.useEffect(() => {
8697
8573
  if (!api) return;
8698
8574
  onSelect(api);
8699
8575
  api.on("reInit", onSelect);
@@ -8702,7 +8578,7 @@ function CarouselBase({
8702
8578
  api?.off("select", onSelect);
8703
8579
  };
8704
8580
  }, [api, onSelect]);
8705
- return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
8581
+ return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
8706
8582
  CarouselContext.Provider,
8707
8583
  {
8708
8584
  value: {
@@ -8715,7 +8591,7 @@ function CarouselBase({
8715
8591
  canScrollPrev,
8716
8592
  canScrollNext
8717
8593
  },
8718
- children: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
8594
+ children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
8719
8595
  "div",
8720
8596
  {
8721
8597
  onKeyDownCapture: handleKeyDown,
@@ -8735,13 +8611,13 @@ function CarouselContentBase({
8735
8611
  ...props
8736
8612
  }) {
8737
8613
  const { carouselRef, orientation } = useCarousel();
8738
- return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
8614
+ return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
8739
8615
  "div",
8740
8616
  {
8741
8617
  ref: carouselRef,
8742
8618
  className: "overflow-hidden",
8743
8619
  "data-slot": "carousel-content",
8744
- children: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
8620
+ children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
8745
8621
  "div",
8746
8622
  {
8747
8623
  className: cn(
@@ -8760,7 +8636,7 @@ function CarouselItemBase({
8760
8636
  ...props
8761
8637
  }) {
8762
8638
  const { orientation } = useCarousel();
8763
- return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
8639
+ return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
8764
8640
  "div",
8765
8641
  {
8766
8642
  role: "group",
@@ -8775,30 +8651,32 @@ function CarouselItemBase({
8775
8651
  }
8776
8652
  );
8777
8653
  }
8778
- function CarouselPrevious({
8654
+ function CarouselPreviousBase({
8779
8655
  className,
8780
8656
  variant = "outline",
8781
8657
  size = "icon",
8782
8658
  ...props
8783
8659
  }) {
8784
8660
  const { orientation, scrollPrev, canScrollPrev } = useCarousel();
8785
- return /* @__PURE__ */ (0, import_jsx_runtime52.jsxs)(
8661
+ const btnRef = React32.useRef(null);
8662
+ return /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(
8786
8663
  ButtonBase,
8787
8664
  {
8788
8665
  "data-slot": "carousel-previous",
8789
8666
  variant,
8790
8667
  size,
8668
+ ref: btnRef,
8791
8669
  className: cn(
8792
- "absolute size-8 rounded-full",
8793
- orientation === "horizontal" ? "top-1/2 -left-12 -translate-y-1/2" : "-top-12 left-1/2 -translate-x-1/2 rotate-90",
8670
+ "absolute size-8 rounded-l-3xl px-6",
8671
+ orientation === "horizontal" ? "top-2 right-1" : "bottom-64 left-1/3 rotate-90",
8794
8672
  className
8795
8673
  ),
8796
8674
  disabled: !canScrollPrev,
8797
8675
  onClick: scrollPrev,
8798
8676
  ...props,
8799
8677
  children: [
8800
- /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_react35.ArrowLeftIcon, {}),
8801
- /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("span", { className: "sr-only", children: "Previous slide" })
8678
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_react33.ArrowLeftIcon, {}),
8679
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("span", { className: "sr-only", children: "Previous slide" })
8802
8680
  ]
8803
8681
  }
8804
8682
  );
@@ -8810,37 +8688,39 @@ function CarouselNextBase({
8810
8688
  ...props
8811
8689
  }) {
8812
8690
  const { orientation, scrollNext, canScrollNext } = useCarousel();
8813
- return /* @__PURE__ */ (0, import_jsx_runtime52.jsxs)(
8691
+ const btnRef = React32.useRef(null);
8692
+ return /* @__PURE__ */ (0, import_jsx_runtime51.jsxs)(
8814
8693
  ButtonBase,
8815
8694
  {
8816
8695
  "data-slot": "carousel-next",
8817
8696
  variant,
8818
8697
  size,
8698
+ ref: btnRef,
8819
8699
  className: cn(
8820
- "absolute size-8 rounded-full",
8821
- orientation === "horizontal" ? "top-1/2 -right-12 -translate-y-1/2" : "-bottom-12 left-1/2 -translate-x-1/2 rotate-90",
8700
+ "absolute size-8 rounded-r-3xl px-6",
8701
+ orientation === "horizontal" ? "top-2" : "left-14 -translate-x-1/2 rotate-90",
8822
8702
  className
8823
8703
  ),
8824
8704
  disabled: !canScrollNext,
8825
8705
  onClick: scrollNext,
8826
8706
  ...props,
8827
8707
  children: [
8828
- /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_react35.ArrowRightIcon, {}),
8829
- /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("span", { className: "sr-only", children: "Next slide" })
8708
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(import_react33.ArrowRightIcon, {}),
8709
+ /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("span", { className: "sr-only", children: "Next slide" })
8830
8710
  ]
8831
8711
  }
8832
8712
  );
8833
8713
  }
8834
8714
 
8835
8715
  // src/components/ui/layout/SeparatorBase.tsx
8836
- var React32 = __toESM(require("react"));
8716
+ var React33 = __toESM(require("react"));
8837
8717
  var SeparatorPrimitive = __toESM(require("@radix-ui/react-separator"));
8838
8718
  var import_framer_motion13 = require("framer-motion");
8839
- var import_jsx_runtime53 = require("react/jsx-runtime");
8840
- var SeparatorBase = React32.forwardRef(
8719
+ var import_jsx_runtime52 = require("react/jsx-runtime");
8720
+ var SeparatorBase = React33.forwardRef(
8841
8721
  ({ className, orientation = "horizontal", decorative = true, ...props }, ref) => {
8842
8722
  const isHorizontal = orientation === "horizontal";
8843
- return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
8723
+ return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
8844
8724
  SeparatorPrimitive.Root,
8845
8725
  {
8846
8726
  ref,
@@ -8848,7 +8728,7 @@ var SeparatorBase = React32.forwardRef(
8848
8728
  orientation,
8849
8729
  asChild: true,
8850
8730
  ...props,
8851
- children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
8731
+ children: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
8852
8732
  import_framer_motion13.motion.div,
8853
8733
  {
8854
8734
  className: cn(
@@ -8871,9 +8751,9 @@ var SeparatorBase = React32.forwardRef(
8871
8751
  SeparatorBase.displayName = SeparatorPrimitive.Root.displayName;
8872
8752
 
8873
8753
  // src/components/ui/layout/TableBase.tsx
8874
- var React33 = __toESM(require("react"));
8875
- var import_jsx_runtime54 = require("react/jsx-runtime");
8876
- var TableBase = React33.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("div", { className: "relative w-full overflow-auto", children: /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
8754
+ var React34 = __toESM(require("react"));
8755
+ var import_jsx_runtime53 = require("react/jsx-runtime");
8756
+ var TableBase = React34.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("div", { className: "relative w-full overflow-auto", children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
8877
8757
  "table",
8878
8758
  {
8879
8759
  ref,
@@ -8882,9 +8762,9 @@ var TableBase = React33.forwardRef(({ className, ...props }, ref) => /* @__PURE_
8882
8762
  }
8883
8763
  ) }));
8884
8764
  TableBase.displayName = "TableBase";
8885
- var TableHeaderBase = React33.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("thead", { ref, className: cn("[&_tr]:border-b", className), ...props }));
8765
+ var TableHeaderBase = React34.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime53.jsx)("thead", { ref, className: cn("[&_tr]:border-b", className), ...props }));
8886
8766
  TableHeaderBase.displayName = "TableHeaderBase";
8887
- var TableBodyBase = React33.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
8767
+ var TableBodyBase = React34.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
8888
8768
  "tbody",
8889
8769
  {
8890
8770
  ref,
@@ -8893,7 +8773,7 @@ var TableBodyBase = React33.forwardRef(({ className, ...props }, ref) => /* @__P
8893
8773
  }
8894
8774
  ));
8895
8775
  TableBodyBase.displayName = "TableBodyBase";
8896
- var TableFooterBase = React33.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
8776
+ var TableFooterBase = React34.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
8897
8777
  "tfoot",
8898
8778
  {
8899
8779
  ref,
@@ -8905,7 +8785,7 @@ var TableFooterBase = React33.forwardRef(({ className, ...props }, ref) => /* @_
8905
8785
  }
8906
8786
  ));
8907
8787
  TableFooterBase.displayName = "TableFooterBase";
8908
- var TableRowBase = React33.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
8788
+ var TableRowBase = React34.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
8909
8789
  "tr",
8910
8790
  {
8911
8791
  ref,
@@ -8917,7 +8797,7 @@ var TableRowBase = React33.forwardRef(({ className, ...props }, ref) => /* @__PU
8917
8797
  }
8918
8798
  ));
8919
8799
  TableRowBase.displayName = "TableRowBase";
8920
- var TableHeadBase = React33.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
8800
+ var TableHeadBase = React34.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
8921
8801
  "th",
8922
8802
  {
8923
8803
  ref,
@@ -8929,7 +8809,7 @@ var TableHeadBase = React33.forwardRef(({ className, ...props }, ref) => /* @__P
8929
8809
  }
8930
8810
  ));
8931
8811
  TableHeadBase.displayName = "TableHeadBase";
8932
- var TableCellBase = React33.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
8812
+ var TableCellBase = React34.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
8933
8813
  "td",
8934
8814
  {
8935
8815
  ref,
@@ -8941,7 +8821,7 @@ var TableCellBase = React33.forwardRef(({ className, ...props }, ref) => /* @__P
8941
8821
  }
8942
8822
  ));
8943
8823
  TableCellBase.displayName = "TableCellBase";
8944
- var TableCaptionBase = React33.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
8824
+ var TableCaptionBase = React34.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
8945
8825
  "caption",
8946
8826
  {
8947
8827
  ref,
@@ -8952,11 +8832,11 @@ var TableCaptionBase = React33.forwardRef(({ className, ...props }, ref) => /* @
8952
8832
  TableCaptionBase.displayName = "TableCaptionBase";
8953
8833
 
8954
8834
  // src/components/ui/layout/TabsBase.tsx
8955
- var React34 = __toESM(require("react"));
8835
+ var React35 = __toESM(require("react"));
8956
8836
  var TabsPrimitive = __toESM(require("@radix-ui/react-tabs"));
8957
- var import_jsx_runtime55 = require("react/jsx-runtime");
8837
+ var import_jsx_runtime54 = require("react/jsx-runtime");
8958
8838
  var TabsBase = TabsPrimitive.Root;
8959
- var TabsListBase = React34.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
8839
+ var TabsListBase = React35.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
8960
8840
  TabsPrimitive.List,
8961
8841
  {
8962
8842
  ref,
@@ -8969,49 +8849,52 @@ var TabsListBase = React34.forwardRef(({ className, ...props }, ref) => /* @__PU
8969
8849
  }
8970
8850
  ));
8971
8851
  TabsListBase.displayName = TabsPrimitive.List.displayName;
8972
- var TabsTriggerBase = React34.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
8973
- TabsPrimitive.Trigger,
8974
- {
8975
- ref,
8976
- className: cn(
8977
- "relative inline-flex items-center justify-center whitespace-nowrap px-4 py-2 text-sm font-medium",
8978
- "text-muted-foreground hover:text-foreground",
8979
- "transition-colors duration-300 ease-in-out",
8980
- "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
8981
- "disabled:pointer-events-none disabled:opacity-50",
8982
- "data-[state=active]:text-primary",
8983
- "after:absolute after:bottom-0 after:left-0 after:h-[2px] after:w-full",
8984
- "after:scale-x-0 after:bg-primary after:origin-left",
8985
- "after:transition-transform after:duration-500 after:ease-[cubic-bezier(0.34,1.56,0.64,1)]",
8986
- "data-[state=active]:after:scale-x-100",
8987
- className
8988
- ),
8989
- ...props
8990
- }
8991
- ));
8992
- var TabsContentBase = React34.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
8993
- TabsPrimitive.Content,
8994
- {
8995
- ref,
8996
- className: cn(
8997
- "mt-4 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
8998
- "animate-in fade-in-0 duration-500 ease-in-out",
8999
- className
9000
- ),
9001
- ...props
9002
- }
9003
- ));
8852
+ var TabsTriggerBase = React35.forwardRef(({ className, animation = "default", ...props }, ref) => {
8853
+ const base = cn(
8854
+ "relative inline-flex items-center justify-center whitespace-nowrap px-4 py-2 text-sm font-medium",
8855
+ "text-muted-foreground hover:text-foreground",
8856
+ "transition-colors duration-300 ease-in-out",
8857
+ "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
8858
+ "disabled:pointer-events-none disabled:opacity-50",
8859
+ "data-[state=active]:text-primary",
8860
+ className
8861
+ );
8862
+ const animationClasses = animation === "none" ? "" : animation === "scale" ? "transform transition-transform data-[state=active]:scale-105" : "after:absolute after:bottom-0 after:left-0 after:h-[2px] after:w-full after:scale-x-0 after:bg-primary after:origin-left after:transition-transform after:duration-500 after:ease-[cubic-bezier(0.34,1.56,0.64,1)] data-[state=active]:after:scale-x-100";
8863
+ return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
8864
+ TabsPrimitive.Trigger,
8865
+ {
8866
+ ref,
8867
+ className: cn(base, animationClasses),
8868
+ ...props
8869
+ }
8870
+ );
8871
+ });
8872
+ var TabsContentBase = React35.forwardRef(({ className, animation = "default", ...props }, ref) => {
8873
+ const animationClasses = animation === "none" ? "" : animation === "slide" ? "animate-in slide-in-from-left-2 duration-500 ease-in-out" : "animate-in fade-in-0 duration-500 ease-in-out";
8874
+ return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
8875
+ TabsPrimitive.Content,
8876
+ {
8877
+ ref,
8878
+ className: cn(
8879
+ "mt-4 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
8880
+ animationClasses,
8881
+ className
8882
+ ),
8883
+ ...props
8884
+ }
8885
+ );
8886
+ });
9004
8887
  TabsContentBase.displayName = TabsPrimitive.Content.displayName;
9005
8888
 
9006
8889
  // src/components/ui/navigation/BreadcrumbBase.tsx
9007
8890
  var import_react_slot4 = require("@radix-ui/react-slot");
9008
- var import_react36 = require("@phosphor-icons/react");
9009
- var import_jsx_runtime56 = require("react/jsx-runtime");
8891
+ var import_react34 = require("@phosphor-icons/react");
8892
+ var import_jsx_runtime55 = require("react/jsx-runtime");
9010
8893
  function BreadcrumbBase({ ...props }) {
9011
- return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("nav", { "aria-label": "breadcrumb", "data-slot": "breadcrumb", ...props });
8894
+ return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("nav", { "aria-label": "breadcrumb", "data-slot": "breadcrumb", ...props });
9012
8895
  }
9013
8896
  function BreadcrumbListBase({ className, ...props }) {
9014
- return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
8897
+ return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
9015
8898
  "ol",
9016
8899
  {
9017
8900
  "data-slot": "breadcrumb-list",
@@ -9024,7 +8907,7 @@ function BreadcrumbListBase({ className, ...props }) {
9024
8907
  );
9025
8908
  }
9026
8909
  function BreadcrumbItemBase({ className, ...props }) {
9027
- return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
8910
+ return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
9028
8911
  "li",
9029
8912
  {
9030
8913
  "data-slot": "breadcrumb-item",
@@ -9039,7 +8922,7 @@ function BreadcrumbLinkBase({
9039
8922
  ...props
9040
8923
  }) {
9041
8924
  const Comp = asChild ? import_react_slot4.Slot : "a";
9042
- return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
8925
+ return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
9043
8926
  Comp,
9044
8927
  {
9045
8928
  "data-slot": "breadcrumb-link",
@@ -9049,7 +8932,7 @@ function BreadcrumbLinkBase({
9049
8932
  );
9050
8933
  }
9051
8934
  function BreadcrumbPageBase({ className, ...props }) {
9052
- return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
8935
+ return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
9053
8936
  "span",
9054
8937
  {
9055
8938
  "data-slot": "breadcrumb-page",
@@ -9066,7 +8949,7 @@ function BreadcrumbSeparatorBase({
9066
8949
  className,
9067
8950
  ...props
9068
8951
  }) {
9069
- return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
8952
+ return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
9070
8953
  "li",
9071
8954
  {
9072
8955
  "data-slot": "breadcrumb-separator",
@@ -9074,7 +8957,7 @@ function BreadcrumbSeparatorBase({
9074
8957
  "aria-hidden": "true",
9075
8958
  className: cn("[&>svg]:size-3.5", className),
9076
8959
  ...props,
9077
- children: children ?? /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_react36.CaretRightIcon, {})
8960
+ children: children ?? /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_react34.CaretRightIcon, {})
9078
8961
  }
9079
8962
  );
9080
8963
  }
@@ -9082,7 +8965,7 @@ function BreadcrumbEllipsisBase({
9082
8965
  className,
9083
8966
  ...props
9084
8967
  }) {
9085
- return /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)(
8968
+ return /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)(
9086
8969
  "span",
9087
8970
  {
9088
8971
  "data-slot": "breadcrumb-ellipsis",
@@ -9091,8 +8974,8 @@ function BreadcrumbEllipsisBase({
9091
8974
  className: cn("flex size-9 items-center justify-center", className),
9092
8975
  ...props,
9093
8976
  children: [
9094
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(import_react36.DotsThreeIcon, { className: "size-4" }),
9095
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("span", { className: "sr-only", children: "More" })
8977
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_react34.DotsThreeIcon, { className: "size-4" }),
8978
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("span", { className: "sr-only", children: "More" })
9096
8979
  ]
9097
8980
  }
9098
8981
  );
@@ -9100,15 +8983,15 @@ function BreadcrumbEllipsisBase({
9100
8983
 
9101
8984
  // src/components/ui/navigation/NavigationMenuBase.tsx
9102
8985
  var NavigationMenuPrimitive = __toESM(require("@radix-ui/react-navigation-menu"));
9103
- var import_react37 = require("@phosphor-icons/react");
9104
- var import_jsx_runtime57 = require("react/jsx-runtime");
8986
+ var import_react35 = require("@phosphor-icons/react");
8987
+ var import_jsx_runtime56 = require("react/jsx-runtime");
9105
8988
  function NavigationMenuBase({
9106
8989
  className,
9107
8990
  children,
9108
8991
  viewport = true,
9109
8992
  ...props
9110
8993
  }) {
9111
- return /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)(
8994
+ return /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)(
9112
8995
  NavigationMenuPrimitive.Root,
9113
8996
  {
9114
8997
  "data-slot": "navigation-menu",
@@ -9120,7 +9003,7 @@ function NavigationMenuBase({
9120
9003
  ...props,
9121
9004
  children: [
9122
9005
  children,
9123
- viewport && /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(NavigationMenuViewportBase, {})
9006
+ viewport && /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(NavigationMenuViewportBase, {})
9124
9007
  ]
9125
9008
  }
9126
9009
  );
@@ -9129,7 +9012,7 @@ function NavigationMenuListBase({
9129
9012
  className,
9130
9013
  ...props
9131
9014
  }) {
9132
- return /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
9015
+ return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
9133
9016
  NavigationMenuPrimitive.List,
9134
9017
  {
9135
9018
  "data-slot": "navigation-menu-list",
@@ -9145,7 +9028,7 @@ function NavigationMenuItemBase({
9145
9028
  className,
9146
9029
  ...props
9147
9030
  }) {
9148
- return /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
9031
+ return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
9149
9032
  NavigationMenuPrimitive.Item,
9150
9033
  {
9151
9034
  "data-slot": "navigation-menu-item",
@@ -9159,7 +9042,7 @@ function NavigationMenuTriggerBase({
9159
9042
  children,
9160
9043
  ...props
9161
9044
  }) {
9162
- return /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)(
9045
+ return /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)(
9163
9046
  NavigationMenuPrimitive.Trigger,
9164
9047
  {
9165
9048
  "data-slot": "navigation-menu-trigger",
@@ -9167,8 +9050,8 @@ function NavigationMenuTriggerBase({
9167
9050
  ...props,
9168
9051
  children: [
9169
9052
  children,
9170
- /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
9171
- import_react37.CaretDownIcon,
9053
+ /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
9054
+ import_react35.CaretDownIcon,
9172
9055
  {
9173
9056
  className: "relative top-[1px] ml-1 size-3 transition duration-300 group-data-[state=open]:rotate-180",
9174
9057
  "aria-hidden": "true"
@@ -9182,7 +9065,7 @@ function NavigationMenuContentBase({
9182
9065
  className,
9183
9066
  ...props
9184
9067
  }) {
9185
- return /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
9068
+ return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
9186
9069
  NavigationMenuPrimitive.Content,
9187
9070
  {
9188
9071
  "data-slot": "navigation-menu-content",
@@ -9199,7 +9082,7 @@ function NavigationMenuViewportBase({
9199
9082
  className,
9200
9083
  ...props
9201
9084
  }) {
9202
- return /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: cn("absolute top-full left-0 isolate z-50 flex justify-center"), children: /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
9085
+ return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: cn("absolute top-full left-0 isolate z-50 flex justify-center"), children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
9203
9086
  NavigationMenuPrimitive.Viewport,
9204
9087
  {
9205
9088
  "data-slot": "navigation-menu-viewport",
@@ -9215,7 +9098,7 @@ function NavigationMenuLinkBase({
9215
9098
  className,
9216
9099
  ...props
9217
9100
  }) {
9218
- return /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
9101
+ return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
9219
9102
  NavigationMenuPrimitive.Link,
9220
9103
  {
9221
9104
  "data-slot": "navigation-menu-link",
@@ -9231,7 +9114,7 @@ function NavigationMenuIndicatorBase({
9231
9114
  className,
9232
9115
  ...props
9233
9116
  }) {
9234
- return /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
9117
+ return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
9235
9118
  NavigationMenuPrimitive.Indicator,
9236
9119
  {
9237
9120
  "data-slot": "navigation-menu-indicator",
@@ -9240,22 +9123,22 @@ function NavigationMenuIndicatorBase({
9240
9123
  className
9241
9124
  ),
9242
9125
  ...props,
9243
- children: /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "bg-border relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm shadow-md" })
9126
+ children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "bg-border relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm shadow-md" })
9244
9127
  }
9245
9128
  );
9246
9129
  }
9247
9130
 
9248
9131
  // src/components/ui/navigation/SidebarBase.tsx
9249
- var React37 = __toESM(require("react"));
9132
+ var React38 = __toESM(require("react"));
9250
9133
  var import_react_slot5 = require("@radix-ui/react-slot");
9251
9134
  var import_class_variance_authority5 = require("class-variance-authority");
9252
9135
 
9253
9136
  // src/hooks/use-mobile.tsx
9254
- var React35 = __toESM(require("react"));
9137
+ var React36 = __toESM(require("react"));
9255
9138
  var MOBILE_BREAKPOINT = 768;
9256
9139
  function useIsMobile() {
9257
- const [isMobile, setIsMobile] = React35.useState(void 0);
9258
- React35.useEffect(() => {
9140
+ const [isMobile, setIsMobile] = React36.useState(void 0);
9141
+ React36.useEffect(() => {
9259
9142
  const mql = window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`);
9260
9143
  const onChange = () => {
9261
9144
  setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
@@ -9268,16 +9151,16 @@ function useIsMobile() {
9268
9151
  }
9269
9152
 
9270
9153
  // src/components/ui/overlays/SheetBase.tsx
9271
- var React36 = __toESM(require("react"));
9154
+ var React37 = __toESM(require("react"));
9272
9155
  var SheetPrimitive = __toESM(require("@radix-ui/react-dialog"));
9273
9156
  var import_class_variance_authority4 = require("class-variance-authority");
9274
- var import_react38 = require("@phosphor-icons/react");
9275
- var import_jsx_runtime58 = require("react/jsx-runtime");
9157
+ var import_react36 = require("@phosphor-icons/react");
9158
+ var import_jsx_runtime57 = require("react/jsx-runtime");
9276
9159
  var SheetBase = SheetPrimitive.Root;
9277
9160
  var SheetTriggerBase = SheetPrimitive.Trigger;
9278
9161
  var SheetCloseBase = SheetPrimitive.Close;
9279
9162
  var SheetPortalBase = SheetPrimitive.Portal;
9280
- var SheetOverlayBase = React36.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9163
+ var SheetOverlayBase = React37.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
9281
9164
  SheetPrimitive.Overlay,
9282
9165
  {
9283
9166
  className: cn(
@@ -9305,18 +9188,18 @@ var sheetVariants = (0, import_class_variance_authority4.cva)(
9305
9188
  }
9306
9189
  }
9307
9190
  );
9308
- var SheetContentBase = React36.forwardRef(({ side = "right", className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(SheetPortalBase, { children: [
9309
- /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(SheetOverlayBase, {}),
9310
- /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(
9191
+ var SheetContentBase = React37.forwardRef(({ side = "right", className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)(SheetPortalBase, { children: [
9192
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(SheetOverlayBase, {}),
9193
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)(
9311
9194
  SheetPrimitive.Content,
9312
9195
  {
9313
9196
  ref,
9314
9197
  className: cn(sheetVariants({ side }), className),
9315
9198
  ...props,
9316
9199
  children: [
9317
- /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(SheetPrimitive.Close, { className: "absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary", children: [
9318
- /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_react38.XIcon, { className: "h-4 w-4" }),
9319
- /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("span", { className: "sr-only", children: "Close" })
9200
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)(SheetPrimitive.Close, { className: "absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary", children: [
9201
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(import_react36.XIcon, { className: "h-4 w-4" }),
9202
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("span", { className: "sr-only", children: "Close" })
9320
9203
  ] }),
9321
9204
  children
9322
9205
  ]
@@ -9327,7 +9210,7 @@ SheetContentBase.displayName = SheetPrimitive.Content.displayName;
9327
9210
  var SheetHeaderBase = ({
9328
9211
  className,
9329
9212
  ...props
9330
- }) => /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9213
+ }) => /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
9331
9214
  "div",
9332
9215
  {
9333
9216
  className: cn(
@@ -9341,7 +9224,7 @@ SheetHeaderBase.displayName = "SheetHeaderBase";
9341
9224
  var SheetFooterBase = ({
9342
9225
  className,
9343
9226
  ...props
9344
- }) => /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9227
+ }) => /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
9345
9228
  "div",
9346
9229
  {
9347
9230
  className: cn(
@@ -9352,7 +9235,7 @@ var SheetFooterBase = ({
9352
9235
  }
9353
9236
  );
9354
9237
  SheetFooterBase.displayName = "SheetFooterBase";
9355
- var SheetTitleBase = React36.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9238
+ var SheetTitleBase = React37.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
9356
9239
  SheetPrimitive.Title,
9357
9240
  {
9358
9241
  ref,
@@ -9361,7 +9244,7 @@ var SheetTitleBase = React36.forwardRef(({ className, ...props }, ref) => /* @__
9361
9244
  }
9362
9245
  ));
9363
9246
  SheetTitleBase.displayName = SheetPrimitive.Title.displayName;
9364
- var SheetDescriptionBase = React36.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9247
+ var SheetDescriptionBase = React37.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
9365
9248
  SheetPrimitive.Description,
9366
9249
  {
9367
9250
  ref,
@@ -9372,17 +9255,17 @@ var SheetDescriptionBase = React36.forwardRef(({ className, ...props }, ref) =>
9372
9255
  SheetDescriptionBase.displayName = SheetPrimitive.Description.displayName;
9373
9256
 
9374
9257
  // src/components/ui/navigation/SidebarBase.tsx
9375
- var import_react39 = require("@phosphor-icons/react");
9376
- var import_jsx_runtime59 = require("react/jsx-runtime");
9258
+ var import_react37 = require("@phosphor-icons/react");
9259
+ var import_jsx_runtime58 = require("react/jsx-runtime");
9377
9260
  var SIDEBAR_COOKIE_NAME = "sidebar:state";
9378
9261
  var SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7;
9379
9262
  var SIDEBAR_WIDTH = "16rem";
9380
9263
  var SIDEBAR_WIDTH_MOBILE = "18rem";
9381
9264
  var SIDEBAR_WIDTH_ICON = "3rem";
9382
9265
  var SIDEBAR_KEYBOARD_SHORTCUT = "b";
9383
- var SidebarContext = React37.createContext(null);
9266
+ var SidebarContext = React38.createContext(null);
9384
9267
  function UseSideBarBase() {
9385
- const context = React37.useContext(SidebarContext);
9268
+ const context = React38.useContext(SidebarContext);
9386
9269
  if (!context) {
9387
9270
  throw new Error(
9388
9271
  "UseSideBarBase must be used within a SidebarProviderBase."
@@ -9390,7 +9273,7 @@ function UseSideBarBase() {
9390
9273
  }
9391
9274
  return context;
9392
9275
  }
9393
- var SidebarProviderBase = React37.forwardRef(
9276
+ var SidebarProviderBase = React38.forwardRef(
9394
9277
  ({
9395
9278
  defaultOpen = true,
9396
9279
  open: openProp,
@@ -9401,10 +9284,10 @@ var SidebarProviderBase = React37.forwardRef(
9401
9284
  ...props
9402
9285
  }, ref) => {
9403
9286
  const isMobile = useIsMobile();
9404
- const [openMobile, setOpenMobile] = React37.useState(false);
9405
- const [_open, _setOpen] = React37.useState(defaultOpen);
9287
+ const [openMobile, setOpenMobile] = React38.useState(false);
9288
+ const [_open, _setOpen] = React38.useState(defaultOpen);
9406
9289
  const open = openProp ?? _open;
9407
- const setOpen = React37.useCallback(
9290
+ const setOpen = React38.useCallback(
9408
9291
  (value) => {
9409
9292
  const openState = typeof value === "function" ? value(open) : value;
9410
9293
  if (setOpenProp) {
@@ -9416,10 +9299,10 @@ var SidebarProviderBase = React37.forwardRef(
9416
9299
  },
9417
9300
  [setOpenProp, open]
9418
9301
  );
9419
- const toggleSidebar = React37.useCallback(() => {
9302
+ const toggleSidebar = React38.useCallback(() => {
9420
9303
  return isMobile ? setOpenMobile((open2) => !open2) : setOpen((open2) => !open2);
9421
9304
  }, [isMobile, setOpen, setOpenMobile]);
9422
- React37.useEffect(() => {
9305
+ React38.useEffect(() => {
9423
9306
  const handleKeyDown = (event) => {
9424
9307
  if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {
9425
9308
  event.preventDefault();
@@ -9430,7 +9313,7 @@ var SidebarProviderBase = React37.forwardRef(
9430
9313
  return () => window.removeEventListener("keydown", handleKeyDown);
9431
9314
  }, [toggleSidebar]);
9432
9315
  const state = open ? "expanded" : "collapsed";
9433
- const contextValue = React37.useMemo(
9316
+ const contextValue = React38.useMemo(
9434
9317
  () => ({
9435
9318
  state,
9436
9319
  open,
@@ -9442,7 +9325,7 @@ var SidebarProviderBase = React37.forwardRef(
9442
9325
  }),
9443
9326
  [state, open, setOpen, isMobile, openMobile, setOpenMobile, toggleSidebar]
9444
9327
  );
9445
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(SidebarContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(TooltipProviderBase, { delayDuration: 0, children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9328
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(SidebarContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(TooltipProviderBase, { delayDuration: 0, children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9446
9329
  "div",
9447
9330
  {
9448
9331
  style: {
@@ -9462,7 +9345,7 @@ var SidebarProviderBase = React37.forwardRef(
9462
9345
  }
9463
9346
  );
9464
9347
  SidebarProviderBase.displayName = "SidebarProviderBase";
9465
- var SidebarBase = React37.forwardRef(
9348
+ var SidebarBase = React38.forwardRef(
9466
9349
  ({
9467
9350
  side = "left",
9468
9351
  variant = "sidebar",
@@ -9473,7 +9356,7 @@ var SidebarBase = React37.forwardRef(
9473
9356
  }, ref) => {
9474
9357
  const { isMobile, state, openMobile, setOpenMobile } = UseSideBarBase();
9475
9358
  if (collapsible === "none") {
9476
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9359
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9477
9360
  "div",
9478
9361
  {
9479
9362
  className: cn(
@@ -9487,7 +9370,7 @@ var SidebarBase = React37.forwardRef(
9487
9370
  );
9488
9371
  }
9489
9372
  if (isMobile) {
9490
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(SheetBase, { open: openMobile, onOpenChange: setOpenMobile, ...props, children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9373
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(SheetBase, { open: openMobile, onOpenChange: setOpenMobile, ...props, children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9491
9374
  SheetContentBase,
9492
9375
  {
9493
9376
  "data-sidebar": "sidebar",
@@ -9497,11 +9380,11 @@ var SidebarBase = React37.forwardRef(
9497
9380
  "--sidebar-width": SIDEBAR_WIDTH_MOBILE
9498
9381
  },
9499
9382
  side,
9500
- children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("div", { className: "flex h-full w-full flex-col", children })
9383
+ children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("div", { className: "flex h-full w-full flex-col", children })
9501
9384
  }
9502
9385
  ) });
9503
9386
  }
9504
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(
9387
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(
9505
9388
  "div",
9506
9389
  {
9507
9390
  ref,
@@ -9511,7 +9394,7 @@ var SidebarBase = React37.forwardRef(
9511
9394
  "data-variant": variant,
9512
9395
  "data-side": side,
9513
9396
  children: [
9514
- /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9397
+ /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9515
9398
  "div",
9516
9399
  {
9517
9400
  className: cn(
@@ -9522,7 +9405,7 @@ var SidebarBase = React37.forwardRef(
9522
9405
  )
9523
9406
  }
9524
9407
  ),
9525
- /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9408
+ /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9526
9409
  "div",
9527
9410
  {
9528
9411
  className: cn(
@@ -9533,7 +9416,7 @@ var SidebarBase = React37.forwardRef(
9533
9416
  className
9534
9417
  ),
9535
9418
  ...props,
9536
- children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9419
+ children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9537
9420
  "div",
9538
9421
  {
9539
9422
  "data-sidebar": "sidebar",
@@ -9549,9 +9432,9 @@ var SidebarBase = React37.forwardRef(
9549
9432
  }
9550
9433
  );
9551
9434
  SidebarBase.displayName = "SidebarBase";
9552
- var SidebarTriggerBase = React37.forwardRef(({ className, onClick, ...props }, ref) => {
9435
+ var SidebarTriggerBase = React38.forwardRef(({ className, onClick, ...props }, ref) => {
9553
9436
  const { toggleSidebar } = UseSideBarBase();
9554
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(
9437
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(
9555
9438
  ButtonBase,
9556
9439
  {
9557
9440
  ref,
@@ -9565,16 +9448,16 @@ var SidebarTriggerBase = React37.forwardRef(({ className, onClick, ...props }, r
9565
9448
  },
9566
9449
  ...props,
9567
9450
  children: [
9568
- /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("span", { className: "sr-only", children: "Toggle SidebarBase" }),
9569
- /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_react39.SidebarSimpleIcon, {})
9451
+ /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("span", { className: "sr-only", children: "Toggle SidebarBase" }),
9452
+ /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_react37.SidebarSimpleIcon, {})
9570
9453
  ]
9571
9454
  }
9572
9455
  ) });
9573
9456
  });
9574
9457
  SidebarTriggerBase.displayName = "SidebarTriggerBase";
9575
- var SidebarRailBase = React37.forwardRef(({ className, ...props }, ref) => {
9458
+ var SidebarRailBase = React38.forwardRef(({ className, ...props }, ref) => {
9576
9459
  const { toggleSidebar } = UseSideBarBase();
9577
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9460
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9578
9461
  "button",
9579
9462
  {
9580
9463
  ref,
@@ -9597,8 +9480,8 @@ var SidebarRailBase = React37.forwardRef(({ className, ...props }, ref) => {
9597
9480
  );
9598
9481
  });
9599
9482
  SidebarRailBase.displayName = "SidebarRailBase";
9600
- var SidebarInsetBase = React37.forwardRef(({ className, ...props }, ref) => {
9601
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9483
+ var SidebarInsetBase = React38.forwardRef(({ className, ...props }, ref) => {
9484
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9602
9485
  "main",
9603
9486
  {
9604
9487
  ref,
@@ -9612,8 +9495,8 @@ var SidebarInsetBase = React37.forwardRef(({ className, ...props }, ref) => {
9612
9495
  );
9613
9496
  });
9614
9497
  SidebarInsetBase.displayName = "SidebarInsetBase";
9615
- var SidebarInputBase = React37.forwardRef(({ className, ...props }, ref) => {
9616
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9498
+ var SidebarInputBase = React38.forwardRef(({ className, ...props }, ref) => {
9499
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9617
9500
  InputBase,
9618
9501
  {
9619
9502
  ref,
@@ -9627,8 +9510,8 @@ var SidebarInputBase = React37.forwardRef(({ className, ...props }, ref) => {
9627
9510
  );
9628
9511
  });
9629
9512
  SidebarInputBase.displayName = "SidebarInputBase";
9630
- var SidebarHeaderBase = React37.forwardRef(({ className, ...props }, ref) => {
9631
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9513
+ var SidebarHeaderBase = React38.forwardRef(({ className, ...props }, ref) => {
9514
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9632
9515
  "div",
9633
9516
  {
9634
9517
  ref,
@@ -9639,8 +9522,8 @@ var SidebarHeaderBase = React37.forwardRef(({ className, ...props }, ref) => {
9639
9522
  );
9640
9523
  });
9641
9524
  SidebarHeaderBase.displayName = "SidebarHeaderBase";
9642
- var SidebarFooterBase = React37.forwardRef(({ className, ...props }, ref) => {
9643
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9525
+ var SidebarFooterBase = React38.forwardRef(({ className, ...props }, ref) => {
9526
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9644
9527
  "div",
9645
9528
  {
9646
9529
  ref,
@@ -9651,8 +9534,8 @@ var SidebarFooterBase = React37.forwardRef(({ className, ...props }, ref) => {
9651
9534
  );
9652
9535
  });
9653
9536
  SidebarFooterBase.displayName = "SidebarFooterBase";
9654
- var SidebarSeparatorBase = React37.forwardRef(({ className, ...props }, ref) => {
9655
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9537
+ var SidebarSeparatorBase = React38.forwardRef(({ className, ...props }, ref) => {
9538
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9656
9539
  SeparatorBase,
9657
9540
  {
9658
9541
  ref,
@@ -9663,8 +9546,8 @@ var SidebarSeparatorBase = React37.forwardRef(({ className, ...props }, ref) =>
9663
9546
  );
9664
9547
  });
9665
9548
  SidebarSeparatorBase.displayName = "SidebarSeparatorBase";
9666
- var SidebarContentBase = React37.forwardRef(({ className, ...props }, ref) => {
9667
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9549
+ var SidebarContentBase = React38.forwardRef(({ className, ...props }, ref) => {
9550
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9668
9551
  "div",
9669
9552
  {
9670
9553
  ref,
@@ -9678,8 +9561,8 @@ var SidebarContentBase = React37.forwardRef(({ className, ...props }, ref) => {
9678
9561
  );
9679
9562
  });
9680
9563
  SidebarContentBase.displayName = "SidebarContentBase";
9681
- var SidebarGroupBase = React37.forwardRef(({ className, ...props }, ref) => {
9682
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9564
+ var SidebarGroupBase = React38.forwardRef(({ className, ...props }, ref) => {
9565
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9683
9566
  "div",
9684
9567
  {
9685
9568
  ref,
@@ -9690,9 +9573,9 @@ var SidebarGroupBase = React37.forwardRef(({ className, ...props }, ref) => {
9690
9573
  );
9691
9574
  });
9692
9575
  SidebarGroupBase.displayName = "SidebarGroupBase";
9693
- var SidebarGroupLabelBase = React37.forwardRef(({ className, asChild = false, ...props }, ref) => {
9576
+ var SidebarGroupLabelBase = React38.forwardRef(({ className, asChild = false, ...props }, ref) => {
9694
9577
  const Comp = asChild ? import_react_slot5.Slot : "div";
9695
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9578
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9696
9579
  Comp,
9697
9580
  {
9698
9581
  ref,
@@ -9707,9 +9590,9 @@ var SidebarGroupLabelBase = React37.forwardRef(({ className, asChild = false, ..
9707
9590
  );
9708
9591
  });
9709
9592
  SidebarGroupLabelBase.displayName = "SidebarGroupLabelBase";
9710
- var SidebarGroupActionBase = React37.forwardRef(({ className, asChild = false, ...props }, ref) => {
9593
+ var SidebarGroupActionBase = React38.forwardRef(({ className, asChild = false, ...props }, ref) => {
9711
9594
  const Comp = asChild ? import_react_slot5.Slot : "button";
9712
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9595
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9713
9596
  Comp,
9714
9597
  {
9715
9598
  ref,
@@ -9726,7 +9609,7 @@ var SidebarGroupActionBase = React37.forwardRef(({ className, asChild = false, .
9726
9609
  );
9727
9610
  });
9728
9611
  SidebarGroupActionBase.displayName = "SidebarGroupActionBase";
9729
- var SidebarGroupContentBase = React37.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9612
+ var SidebarGroupContentBase = React38.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9730
9613
  "div",
9731
9614
  {
9732
9615
  ref,
@@ -9736,7 +9619,7 @@ var SidebarGroupContentBase = React37.forwardRef(({ className, ...props }, ref)
9736
9619
  }
9737
9620
  ));
9738
9621
  SidebarGroupContentBase.displayName = "SidebarGroupContentBase";
9739
- var SidebarMenuBase = React37.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9622
+ var SidebarMenuBase = React38.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9740
9623
  "ul",
9741
9624
  {
9742
9625
  ref,
@@ -9746,7 +9629,7 @@ var SidebarMenuBase = React37.forwardRef(({ className, ...props }, ref) => /* @_
9746
9629
  }
9747
9630
  ));
9748
9631
  SidebarMenuBase.displayName = "SidebarMenuBase";
9749
- var SidebarMenuItemBase = React37.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9632
+ var SidebarMenuItemBase = React38.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9750
9633
  "li",
9751
9634
  {
9752
9635
  ref,
@@ -9776,7 +9659,7 @@ var sidebarMenuButtonVariants = (0, import_class_variance_authority5.cva)(
9776
9659
  }
9777
9660
  }
9778
9661
  );
9779
- var SidebarMenuButtonBase = React37.forwardRef(
9662
+ var SidebarMenuButtonBase = React38.forwardRef(
9780
9663
  ({
9781
9664
  asChild = false,
9782
9665
  isActive = false,
@@ -9788,7 +9671,7 @@ var SidebarMenuButtonBase = React37.forwardRef(
9788
9671
  }, ref) => {
9789
9672
  const Comp = asChild ? import_react_slot5.Slot : "button";
9790
9673
  const { isMobile, state } = UseSideBarBase();
9791
- const button = /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9674
+ const button = /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9792
9675
  Comp,
9793
9676
  {
9794
9677
  ref,
@@ -9807,9 +9690,9 @@ var SidebarMenuButtonBase = React37.forwardRef(
9807
9690
  children: tooltip
9808
9691
  };
9809
9692
  }
9810
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(TooltipBase, { children: [
9811
- /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(TooltipTriggerBase, { asChild: true, children: button }),
9812
- /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9693
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(TooltipBase, { children: [
9694
+ /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(TooltipTriggerBase, { asChild: true, children: button }),
9695
+ /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9813
9696
  TooltipContentBase,
9814
9697
  {
9815
9698
  side: "right",
@@ -9822,9 +9705,9 @@ var SidebarMenuButtonBase = React37.forwardRef(
9822
9705
  }
9823
9706
  );
9824
9707
  SidebarMenuButtonBase.displayName = "SidebarMenuButtonBase";
9825
- var SidebarMenuActionBase = React37.forwardRef(({ className, asChild = false, showOnHover = false, ...props }, ref) => {
9708
+ var SidebarMenuActionBase = React38.forwardRef(({ className, asChild = false, showOnHover = false, ...props }, ref) => {
9826
9709
  const Comp = asChild ? import_react_slot5.Slot : "button";
9827
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9710
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9828
9711
  Comp,
9829
9712
  {
9830
9713
  ref,
@@ -9845,7 +9728,7 @@ var SidebarMenuActionBase = React37.forwardRef(({ className, asChild = false, sh
9845
9728
  );
9846
9729
  });
9847
9730
  SidebarMenuActionBase.displayName = "SidebarMenuActionBase";
9848
- var SidebarMenuBadgeBase = React37.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9731
+ var SidebarMenuBadgeBase = React38.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9849
9732
  "div",
9850
9733
  {
9851
9734
  ref,
@@ -9863,11 +9746,11 @@ var SidebarMenuBadgeBase = React37.forwardRef(({ className, ...props }, ref) =>
9863
9746
  }
9864
9747
  ));
9865
9748
  SidebarMenuBadgeBase.displayName = "SidebarMenuBadgeBase";
9866
- var SidebarMenuSkeletonBase = React37.forwardRef(({ className, showIcon = false, ...props }, ref) => {
9867
- const width = React37.useMemo(() => {
9749
+ var SidebarMenuSkeletonBase = React38.forwardRef(({ className, showIcon = false, ...props }, ref) => {
9750
+ const width = React38.useMemo(() => {
9868
9751
  return `${Math.floor(Math.random() * 40) + 50}%`;
9869
9752
  }, []);
9870
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(
9753
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(
9871
9754
  "div",
9872
9755
  {
9873
9756
  ref,
@@ -9875,14 +9758,14 @@ var SidebarMenuSkeletonBase = React37.forwardRef(({ className, showIcon = false,
9875
9758
  className: cn("flex h-8 items-center gap-2 rounded-md px-2", className),
9876
9759
  ...props,
9877
9760
  children: [
9878
- showIcon && /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9761
+ showIcon && /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9879
9762
  SkeletonBase,
9880
9763
  {
9881
9764
  className: "size-4 rounded-md",
9882
9765
  "data-sidebar": "menu-skeleton-icon"
9883
9766
  }
9884
9767
  ),
9885
- /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9768
+ /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9886
9769
  SkeletonBase,
9887
9770
  {
9888
9771
  className: "h-4 max-w-[--skeleton-width] flex-1",
@@ -9897,7 +9780,7 @@ var SidebarMenuSkeletonBase = React37.forwardRef(({ className, showIcon = false,
9897
9780
  );
9898
9781
  });
9899
9782
  SidebarMenuSkeletonBase.displayName = "SidebarMenuSkeletonBase";
9900
- var SidebarMenuSubBase = React37.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9783
+ var SidebarMenuSubBase = React38.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9901
9784
  "ul",
9902
9785
  {
9903
9786
  ref,
@@ -9911,11 +9794,11 @@ var SidebarMenuSubBase = React37.forwardRef(({ className, ...props }, ref) => /*
9911
9794
  }
9912
9795
  ));
9913
9796
  SidebarMenuSubBase.displayName = "SidebarMenuSubBase";
9914
- var SidebarMenuSubItemBase = React37.forwardRef(({ ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("li", { ref, ...props }));
9797
+ var SidebarMenuSubItemBase = React38.forwardRef(({ ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("li", { ref, ...props }));
9915
9798
  SidebarMenuSubItemBase.displayName = "SidebarMenuSubItemBase";
9916
- var SidebarMenuSubButtonBase = React37.forwardRef(({ asChild = false, size = "md", isActive, className, ...props }, ref) => {
9799
+ var SidebarMenuSubButtonBase = React38.forwardRef(({ asChild = false, size = "md", isActive, className, ...props }, ref) => {
9917
9800
  const Comp = asChild ? import_react_slot5.Slot : "a";
9918
- return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9801
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
9919
9802
  Comp,
9920
9803
  {
9921
9804
  ref,
@@ -9938,32 +9821,32 @@ SidebarMenuSubButtonBase.displayName = "SidebarMenuSubButtonBase";
9938
9821
 
9939
9822
  // src/components/ui/overlays/DrawerBase.tsx
9940
9823
  var import_vaul = require("vaul");
9941
- var import_jsx_runtime60 = require("react/jsx-runtime");
9824
+ var import_jsx_runtime59 = require("react/jsx-runtime");
9942
9825
  function DrawerBase({
9943
9826
  ...props
9944
9827
  }) {
9945
- return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_vaul.Drawer.Root, { "data-slot": "drawer", ...props });
9828
+ return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_vaul.Drawer.Root, { "data-slot": "drawer", ...props });
9946
9829
  }
9947
9830
  function DrawerTriggerBase({
9948
9831
  ...props
9949
9832
  }) {
9950
- return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_vaul.Drawer.Trigger, { "data-slot": "drawer-trigger", ...props });
9833
+ return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_vaul.Drawer.Trigger, { "data-slot": "drawer-trigger", ...props });
9951
9834
  }
9952
9835
  function DrawerPortalBase({
9953
9836
  ...props
9954
9837
  }) {
9955
- return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_vaul.Drawer.Portal, { "data-slot": "drawer-portal", ...props });
9838
+ return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_vaul.Drawer.Portal, { "data-slot": "drawer-portal", ...props });
9956
9839
  }
9957
9840
  function DrawerCloseBase({
9958
9841
  ...props
9959
9842
  }) {
9960
- return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(import_vaul.Drawer.Close, { "data-slot": "drawer-close", ...props });
9843
+ return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_vaul.Drawer.Close, { "data-slot": "drawer-close", ...props });
9961
9844
  }
9962
9845
  function DrawerOverlayBase({
9963
9846
  className,
9964
9847
  ...props
9965
9848
  }) {
9966
- return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
9849
+ return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
9967
9850
  import_vaul.Drawer.Overlay,
9968
9851
  {
9969
9852
  "data-slot": "drawer-overlay",
@@ -9980,9 +9863,9 @@ function DrawerContentBase({
9980
9863
  children,
9981
9864
  ...props
9982
9865
  }) {
9983
- return /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)(DrawerPortalBase, { children: [
9984
- /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(DrawerOverlayBase, {}),
9985
- /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)(
9866
+ return /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(DrawerPortalBase, { children: [
9867
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(DrawerOverlayBase, {}),
9868
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(
9986
9869
  import_vaul.Drawer.Content,
9987
9870
  {
9988
9871
  "data-slot": "drawer-content",
@@ -9996,7 +9879,7 @@ function DrawerContentBase({
9996
9879
  ),
9997
9880
  ...props,
9998
9881
  children: [
9999
- /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "bg-muted mx-auto mt-4 hidden h-2 w-[100px] shrink-0 rounded-full group-data-[vaul-drawer-direction=bottom]/drawer-content:block" }),
9882
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)("div", { className: "bg-muted mx-auto mt-4 hidden h-2 w-[100px] shrink-0 rounded-full group-data-[vaul-drawer-direction=bottom]/drawer-content:block" }),
10000
9883
  children
10001
9884
  ]
10002
9885
  }
@@ -10007,7 +9890,7 @@ function DrawerHeaderBase({
10007
9890
  className,
10008
9891
  ...props
10009
9892
  }) {
10010
- return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
9893
+ return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
10011
9894
  "div",
10012
9895
  {
10013
9896
  "data-slot": "drawer-header",
@@ -10023,7 +9906,7 @@ function DrawerFooterBase({
10023
9906
  className,
10024
9907
  ...props
10025
9908
  }) {
10026
- return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
9909
+ return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
10027
9910
  "div",
10028
9911
  {
10029
9912
  "data-slot": "drawer-footer",
@@ -10036,7 +9919,7 @@ function DrawerTitleBase({
10036
9919
  className,
10037
9920
  ...props
10038
9921
  }) {
10039
- return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
9922
+ return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
10040
9923
  import_vaul.Drawer.Title,
10041
9924
  {
10042
9925
  "data-slot": "drawer-title",
@@ -10049,7 +9932,7 @@ function DrawerDescriptionBase({
10049
9932
  className,
10050
9933
  ...props
10051
9934
  }) {
10052
- return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
9935
+ return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
10053
9936
  import_vaul.Drawer.Description,
10054
9937
  {
10055
9938
  "data-slot": "drawer-description",
@@ -10060,11 +9943,11 @@ function DrawerDescriptionBase({
10060
9943
  }
10061
9944
 
10062
9945
  // src/hooks/use-universal-tooltip.tsx
10063
- var import_react40 = require("react");
10064
- var import_jsx_runtime61 = require("react/jsx-runtime");
10065
- var UniversalTooltipContext = (0, import_react40.createContext)(null);
9946
+ var import_react38 = require("react");
9947
+ var import_jsx_runtime60 = require("react/jsx-runtime");
9948
+ var UniversalTooltipContext = (0, import_react38.createContext)(null);
10066
9949
  var useUniversalTooltip = () => {
10067
- const context = (0, import_react40.useContext)(UniversalTooltipContext);
9950
+ const context = (0, import_react38.useContext)(UniversalTooltipContext);
10068
9951
  if (!context) {
10069
9952
  throw new Error("useUniversalTooltip deve ser usado dentro de UniversalTooltipProvider");
10070
9953
  }
@@ -10072,7 +9955,7 @@ var useUniversalTooltip = () => {
10072
9955
  };
10073
9956
  var useTooltip = () => {
10074
9957
  const { addTooltip, removeTooltip, startDrag } = useUniversalTooltip();
10075
- const createTooltip = (0, import_react40.useCallback)((element, content, options) => {
9958
+ const createTooltip = (0, import_react38.useCallback)((element, content, options) => {
10076
9959
  const rect = element.getBoundingClientRect();
10077
9960
  let position;
10078
9961
  switch (options?.position || "auto") {
@@ -10102,7 +9985,7 @@ var useTooltip = () => {
10102
9985
  metadata: options?.metadata
10103
9986
  });
10104
9987
  }, [addTooltip]);
10105
- const handleElementMouseDown = (0, import_react40.useCallback)((tooltipId, event) => {
9988
+ const handleElementMouseDown = (0, import_react38.useCallback)((tooltipId, event) => {
10106
9989
  const rect = event.target.getBoundingClientRect();
10107
9990
  const offset = {
10108
9991
  x: event.clientX - rect.left,
@@ -10119,7 +10002,7 @@ var useTooltip = () => {
10119
10002
 
10120
10003
  // src/components/ui/UniversalTooltipRenderer.tsx
10121
10004
  var import_ssr6 = require("@phosphor-icons/react/dist/ssr");
10122
- var import_jsx_runtime62 = require("react/jsx-runtime");
10005
+ var import_jsx_runtime61 = require("react/jsx-runtime");
10123
10006
  var UniversalTooltipRenderer = ({
10124
10007
  className,
10125
10008
  showCloseButton = true,
@@ -10136,8 +10019,8 @@ var UniversalTooltipRenderer = ({
10136
10019
  clearAllTooltips
10137
10020
  } = useUniversalTooltip();
10138
10021
  const { removeTooltip, handleElementMouseDown } = useTooltip();
10139
- return /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)("div", { className: cn("fixed inset-0 pointer-events-none z-50", className), children: [
10140
- showCloseAllButton && tooltips.length > 1 && /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: "fixed top-6 left-1/2 transform -translate-x-1/2 z-50 pointer-events-auto animate-in fade-in slide-in-from-top-2 duration-300", children: /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(
10022
+ return /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)("div", { className: cn("fixed inset-0 pointer-events-none z-50", className), children: [
10023
+ showCloseAllButton && tooltips.length > 1 && /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className: "fixed top-6 left-1/2 transform -translate-x-1/2 z-50 pointer-events-auto animate-in fade-in slide-in-from-top-2 duration-300", children: /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)(
10141
10024
  "button",
10142
10025
  {
10143
10026
  onClick: clearAllTooltips,
@@ -10159,8 +10042,8 @@ var UniversalTooltipRenderer = ({
10159
10042
  const endX = isHorizontal ? Math.max(guide.sourceTooltip.left + guide.sourceTooltip.width / 2, guide.targetTooltip.left + guide.targetTooltip.width / 2) : guide.targetTooltip.left + guide.targetTooltip.width / 2;
10160
10043
  const startY = isHorizontal ? guide.sourceTooltip.top + guide.sourceTooltip.height / 2 : Math.min(guide.sourceTooltip.top + guide.sourceTooltip.height / 2, guide.targetTooltip.top + guide.targetTooltip.height / 2);
10161
10044
  const endY = isHorizontal ? guide.targetTooltip.top + guide.targetTooltip.height / 2 : Math.max(guide.sourceTooltip.top + guide.sourceTooltip.height / 2, guide.targetTooltip.top + guide.targetTooltip.height / 2);
10162
- return /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)("div", { className: "pointer-events-none", children: [
10163
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
10045
+ return /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)("div", { className: "pointer-events-none", children: [
10046
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
10164
10047
  "div",
10165
10048
  {
10166
10049
  className: cn("fixed z-30", guideClassName),
@@ -10179,7 +10062,7 @@ var UniversalTooltipRenderer = ({
10179
10062
  }
10180
10063
  }
10181
10064
  ),
10182
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
10065
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
10183
10066
  "div",
10184
10067
  {
10185
10068
  className: "fixed z-31",
@@ -10195,7 +10078,7 @@ var UniversalTooltipRenderer = ({
10195
10078
  }
10196
10079
  }
10197
10080
  ),
10198
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
10081
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
10199
10082
  "div",
10200
10083
  {
10201
10084
  className: "fixed z-31",
@@ -10213,7 +10096,7 @@ var UniversalTooltipRenderer = ({
10213
10096
  )
10214
10097
  ] }, index);
10215
10098
  }),
10216
- tooltips.map((tooltip) => /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)(
10099
+ tooltips.map((tooltip) => /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)(
10217
10100
  "div",
10218
10101
  {
10219
10102
  className: cn(
@@ -10227,12 +10110,12 @@ var UniversalTooltipRenderer = ({
10227
10110
  },
10228
10111
  onMouseDown: (e) => handleElementMouseDown(tooltip.id, e),
10229
10112
  children: [
10230
- /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)("div", { className: "flex items-center justify-between p-3 border-b bg-muted/20 rounded-t-lg", children: [
10231
- /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)("div", { className: "flex items-center gap-2", children: [
10232
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: "w-2 h-2 bg-primary rounded-full" }),
10233
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("span", { className: "text-sm font-medium text-muted-foreground", children: "Tooltip" })
10113
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)("div", { className: "flex items-center justify-between p-3 border-b bg-muted/20 rounded-t-lg", children: [
10114
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)("div", { className: "flex items-center gap-2", children: [
10115
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className: "w-2 h-2 bg-primary rounded-full" }),
10116
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("span", { className: "text-sm font-medium text-muted-foreground", children: "Tooltip" })
10234
10117
  ] }),
10235
- showCloseButton && /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
10118
+ showCloseButton && /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
10236
10119
  "button",
10237
10120
  {
10238
10121
  onClick: (e) => {
@@ -10243,11 +10126,11 @@ var UniversalTooltipRenderer = ({
10243
10126
  "text-muted-foreground hover:text-foreground transition-colors p-1 hover:bg-muted rounded",
10244
10127
  closeButtonClassName
10245
10128
  ),
10246
- children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_ssr6.XIcon, { size: 16 })
10129
+ children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_ssr6.XIcon, { size: 16 })
10247
10130
  }
10248
10131
  )
10249
10132
  ] }),
10250
- /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: "p-4", children: tooltip.content })
10133
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className: "p-4", children: tooltip.content })
10251
10134
  ]
10252
10135
  },
10253
10136
  tooltip.id
@@ -10259,39 +10142,39 @@ var UniversalTooltipRenderer = ({
10259
10142
  var import_date_fns = require("date-fns");
10260
10143
 
10261
10144
  // src/components/picker/calendar.tsx
10262
- var React39 = __toESM(require("react"));
10145
+ var React40 = __toESM(require("react"));
10263
10146
  var import_react_day_picker2 = require("react-day-picker");
10264
- var import_react41 = require("@phosphor-icons/react");
10147
+ var import_react39 = require("@phosphor-icons/react");
10265
10148
  var import_framer_motion14 = require("framer-motion");
10266
- var import_jsx_runtime63 = require("react/jsx-runtime");
10149
+ var import_jsx_runtime62 = require("react/jsx-runtime");
10267
10150
  function CalendarBase2({
10268
10151
  className,
10269
10152
  classNames,
10270
10153
  showOutsideDays = true,
10271
10154
  ...props
10272
10155
  }) {
10273
- const [month, setMonth] = React39.useState(
10156
+ const [month, setMonth] = React40.useState(
10274
10157
  props.month || props.defaultMonth || /* @__PURE__ */ new Date()
10275
10158
  );
10276
- const [direction, setDirection] = React39.useState(1);
10159
+ const [direction, setDirection] = React40.useState(1);
10277
10160
  const handleMonthChange = (newMonth) => {
10278
10161
  const isNext = newMonth > month ? 1 : -1;
10279
10162
  setDirection(isNext);
10280
10163
  setMonth(newMonth);
10281
10164
  props.onMonthChange?.(newMonth);
10282
10165
  };
10283
- return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
10166
+ return /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
10284
10167
  "div",
10285
10168
  {
10286
10169
  className: cn(
10287
10170
  "rounded-md border bg-background p-2 sm:p-3 md:p-4 overflow-hidden flex flex-col",
10288
10171
  className
10289
10172
  ),
10290
- children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("div", { className: "relative flex-1 flex flex-col min-h-0", children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_framer_motion14.AnimatePresence, { initial: false, mode: "wait", custom: direction, children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
10173
+ children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: "relative flex-1 flex flex-col min-h-0", children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_framer_motion14.AnimatePresence, { initial: false, mode: "wait", custom: direction, children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
10291
10174
  "div",
10292
10175
  {
10293
10176
  className: "w-full h-full flex flex-col",
10294
- children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
10177
+ children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
10295
10178
  import_react_day_picker2.DayPicker,
10296
10179
  {
10297
10180
  showOutsideDays,
@@ -10315,7 +10198,7 @@ function CalendarBase2({
10315
10198
  head_cell: "text-muted-foreground rounded-md font-semibold text-[clamp(0.575rem,1.2vw,0.75rem)] sm:text-[clamp(0.65rem,1.1vw,0.825rem)] text-center pb-1 uppercase tracking-wider",
10316
10199
  row: "grid grid-cols-7 gap-1",
10317
10200
  cell: cn(
10318
- "min-w-0 h-9 sm:h-10 md:h-11 p-0 relative flex items-center justify-center",
10201
+ "min-w-0 h-9 sm:h-10 md:h-10 p-0 relative flex items-center justify-center",
10319
10202
  "[&:has([aria-selected].day-range-end)]:rounded-r-lg",
10320
10203
  "[&:has([aria-selected].day-range-start)]:rounded-l-lg",
10321
10204
  "[&:has([aria-selected].day-outside)]:bg-muted/50",
@@ -10335,8 +10218,8 @@ function CalendarBase2({
10335
10218
  ...classNames
10336
10219
  },
10337
10220
  components: {
10338
- IconLeft: () => /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_react41.CaretLeftIcon, { className: "h-4 w-4" }),
10339
- IconRight: () => /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_react41.CaretRightIcon, { className: "h-4 w-4" })
10221
+ IconLeft: () => /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_react39.CaretLeftIcon, { className: "h-4 w-4" }),
10222
+ IconRight: () => /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(import_react39.CaretRightIcon, { className: "h-4 w-4" })
10340
10223
  },
10341
10224
  ...props
10342
10225
  }
@@ -10351,15 +10234,15 @@ CalendarBase2.displayName = "CalendarBase";
10351
10234
 
10352
10235
  // src/components/picker/DateTimePicker.tsx
10353
10236
  var import_locale = require("date-fns/locale");
10354
- var import_react44 = require("react");
10237
+ var import_react42 = require("react");
10355
10238
 
10356
10239
  // src/components/picker/TimePicker.tsx
10357
10240
  var import_framer_motion15 = require("framer-motion");
10358
- var React41 = __toESM(require("react"));
10241
+ var React42 = __toESM(require("react"));
10359
10242
 
10360
10243
  // src/components/picker/TimePickerInput.tsx
10361
- var import_react42 = require("@phosphor-icons/react");
10362
- var import_react43 = __toESM(require("react"));
10244
+ var import_react40 = require("@phosphor-icons/react");
10245
+ var import_react41 = __toESM(require("react"));
10363
10246
 
10364
10247
  // src/components/picker/utils/time-picker-utils.ts
10365
10248
  function isValidHour(value) {
@@ -10501,8 +10384,8 @@ function display12HourValue(hours) {
10501
10384
  }
10502
10385
 
10503
10386
  // src/components/picker/TimePickerInput.tsx
10504
- var import_jsx_runtime64 = require("react/jsx-runtime");
10505
- var TimePickerInput = import_react43.default.forwardRef(
10387
+ var import_jsx_runtime63 = require("react/jsx-runtime");
10388
+ var TimePickerInput = import_react41.default.forwardRef(
10506
10389
  ({
10507
10390
  className,
10508
10391
  type = "tel",
@@ -10521,10 +10404,10 @@ var TimePickerInput = import_react43.default.forwardRef(
10521
10404
  label,
10522
10405
  ...props
10523
10406
  }, ref) => {
10524
- const [flag, setFlag] = import_react43.default.useState(false);
10525
- const [prevIntKey, setPrevIntKey] = import_react43.default.useState("0");
10526
- const [isFocused, setIsFocused] = import_react43.default.useState(false);
10527
- import_react43.default.useEffect(() => {
10407
+ const [flag, setFlag] = import_react41.default.useState(false);
10408
+ const [prevIntKey, setPrevIntKey] = import_react41.default.useState("0");
10409
+ const [isFocused, setIsFocused] = import_react41.default.useState(false);
10410
+ import_react41.default.useEffect(() => {
10528
10411
  if (flag) {
10529
10412
  const timer = setTimeout(() => {
10530
10413
  setFlag(false);
@@ -10532,7 +10415,7 @@ var TimePickerInput = import_react43.default.forwardRef(
10532
10415
  return () => clearTimeout(timer);
10533
10416
  }
10534
10417
  }, [flag]);
10535
- const calculatedValue = import_react43.default.useMemo(() => {
10418
+ const calculatedValue = import_react41.default.useMemo(() => {
10536
10419
  return getDateByType(date, picker);
10537
10420
  }, [date, picker]);
10538
10421
  const calculateNewValue = (key) => {
@@ -10588,8 +10471,8 @@ var TimePickerInput = import_react43.default.forwardRef(
10588
10471
  const baseLabel = getPickerLabel();
10589
10472
  return `${baseLabel}, valor atual: ${calculatedValue}.`;
10590
10473
  };
10591
- return /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "relative group flex flex-col items-center", children: [
10592
- getPickerLabel() && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
10474
+ return /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)("div", { className: "relative group flex flex-col items-center", children: [
10475
+ getPickerLabel() && /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
10593
10476
  "label",
10594
10477
  {
10595
10478
  htmlFor: id || picker,
@@ -10597,7 +10480,7 @@ var TimePickerInput = import_react43.default.forwardRef(
10597
10480
  children: getPickerLabel()
10598
10481
  }
10599
10482
  ),
10600
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(
10483
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(
10601
10484
  "div",
10602
10485
  {
10603
10486
  className: cn(
@@ -10605,7 +10488,7 @@ var TimePickerInput = import_react43.default.forwardRef(
10605
10488
  "transition-all duration-200"
10606
10489
  ),
10607
10490
  children: [
10608
- showArrows && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
10491
+ showArrows && /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
10609
10492
  "button",
10610
10493
  {
10611
10494
  type: "button",
@@ -10621,11 +10504,11 @@ var TimePickerInput = import_react43.default.forwardRef(
10621
10504
  ),
10622
10505
  tabIndex: -1,
10623
10506
  "aria-label": `Incrementar ${getPickerLabel().toLowerCase()}`,
10624
- children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_react42.CaretUpIcon, { size: 14, className: "sm:w-4 sm:h-4" })
10507
+ children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_react40.CaretUpIcon, { size: 14, className: "sm:w-4 sm:h-4" })
10625
10508
  }
10626
10509
  ),
10627
- /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "relative", children: [
10628
- /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
10510
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)("div", { className: "relative", children: [
10511
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
10629
10512
  "input",
10630
10513
  {
10631
10514
  ref,
@@ -10670,9 +10553,9 @@ var TimePickerInput = import_react43.default.forwardRef(
10670
10553
  ...props
10671
10554
  }
10672
10555
  ),
10673
- isFocused && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("div", { className: "absolute inset-0 rounded-lg ring-2 ring-primary/20 pointer-events-none animate-pulse" })
10556
+ isFocused && /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("div", { className: "absolute inset-0 rounded-lg ring-2 ring-primary/20 pointer-events-none animate-pulse" })
10674
10557
  ] }),
10675
- showArrows && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
10558
+ showArrows && /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
10676
10559
  "button",
10677
10560
  {
10678
10561
  type: "button",
@@ -10688,7 +10571,7 @@ var TimePickerInput = import_react43.default.forwardRef(
10688
10571
  ),
10689
10572
  tabIndex: -1,
10690
10573
  "aria-label": `Decrementar ${getPickerLabel().toLowerCase()}`,
10691
- children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_react42.CaretDownIcon, { size: 14, className: "sm:w-4 sm:h-4" })
10574
+ children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_react40.CaretDownIcon, { size: 14, className: "sm:w-4 sm:h-4" })
10692
10575
  }
10693
10576
  )
10694
10577
  ]
@@ -10700,16 +10583,16 @@ var TimePickerInput = import_react43.default.forwardRef(
10700
10583
  TimePickerInput.displayName = "TimePickerInput";
10701
10584
 
10702
10585
  // src/components/picker/TimePicker.tsx
10703
- var import_jsx_runtime65 = require("react/jsx-runtime");
10586
+ var import_jsx_runtime64 = require("react/jsx-runtime");
10704
10587
  function TimePicker({
10705
10588
  date,
10706
10589
  setDate,
10707
10590
  hideSeconds,
10708
10591
  enableButton
10709
10592
  }) {
10710
- const minuteRef = React41.useRef(null);
10711
- const hourRef = React41.useRef(null);
10712
- const secondRef = React41.useRef(null);
10593
+ const minuteRef = React42.useRef(null);
10594
+ const hourRef = React42.useRef(null);
10595
+ const secondRef = React42.useRef(null);
10713
10596
  const containerVariants = {
10714
10597
  hidden: { opacity: 0, y: 10 },
10715
10598
  visible: {
@@ -10725,7 +10608,7 @@ function TimePicker({
10725
10608
  hidden: { opacity: 0, y: 10 },
10726
10609
  visible: { opacity: 1, y: 0 }
10727
10610
  };
10728
- return /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(
10611
+ return /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)(
10729
10612
  import_framer_motion15.motion.div,
10730
10613
  {
10731
10614
  variants: containerVariants,
@@ -10733,12 +10616,12 @@ function TimePicker({
10733
10616
  animate: "visible",
10734
10617
  className: "flex items-end justify-center gap-2 sm:gap-3 p-2 sm:p-3 md:p-4 rounded-lg bg-muted/20 border border-border/50 w-full max-w-full overflow-hidden",
10735
10618
  children: [
10736
- /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
10619
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
10737
10620
  import_framer_motion15.motion.div,
10738
10621
  {
10739
10622
  variants: itemVariants2,
10740
10623
  className: "grid gap-1 sm:gap-2 text-center flex-shrink-0 min-w-0",
10741
- children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
10624
+ children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
10742
10625
  TimePickerInput,
10743
10626
  {
10744
10627
  picker: "hours",
@@ -10751,12 +10634,12 @@ function TimePicker({
10751
10634
  )
10752
10635
  }
10753
10636
  ),
10754
- /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
10637
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
10755
10638
  import_framer_motion15.motion.div,
10756
10639
  {
10757
10640
  variants: itemVariants2,
10758
10641
  className: "grid gap-1 sm:gap-2 text-center flex-shrink-0 min-w-0",
10759
- children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
10642
+ children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
10760
10643
  TimePickerInput,
10761
10644
  {
10762
10645
  picker: "minutes",
@@ -10770,7 +10653,7 @@ function TimePicker({
10770
10653
  )
10771
10654
  }
10772
10655
  ),
10773
- /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_framer_motion15.AnimatePresence, { children: !hideSeconds && /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_jsx_runtime65.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
10656
+ /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_framer_motion15.AnimatePresence, { children: !hideSeconds && /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(import_jsx_runtime64.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
10774
10657
  import_framer_motion15.motion.div,
10775
10658
  {
10776
10659
  variants: itemVariants2,
@@ -10778,7 +10661,7 @@ function TimePicker({
10778
10661
  animate: "visible",
10779
10662
  exit: "hidden",
10780
10663
  className: "grid gap-1 sm:gap-2 text-center flex-shrink-0 min-w-0",
10781
- children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
10664
+ children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
10782
10665
  TimePickerInput,
10783
10666
  {
10784
10667
  picker: "seconds",
@@ -10797,8 +10680,8 @@ function TimePicker({
10797
10680
  }
10798
10681
 
10799
10682
  // src/components/picker/DateTimePicker.tsx
10800
- var import_react45 = require("@phosphor-icons/react");
10801
- var import_jsx_runtime66 = require("react/jsx-runtime");
10683
+ var import_react43 = require("@phosphor-icons/react");
10684
+ var import_jsx_runtime65 = require("react/jsx-runtime");
10802
10685
  function DateTimePicker({
10803
10686
  label,
10804
10687
  date,
@@ -10806,17 +10689,15 @@ function DateTimePicker({
10806
10689
  displayFormat,
10807
10690
  hideTime,
10808
10691
  hideSeconds,
10809
- hideHour,
10810
- hideMinute,
10811
10692
  fromDate,
10812
10693
  toDate,
10813
10694
  disabled,
10814
10695
  className,
10815
10696
  error
10816
10697
  }) {
10817
- const [internalDate, setInternalDate] = (0, import_react44.useState)(date);
10818
- const [open, setOpen] = (0, import_react44.useState)(false);
10819
- const [timePickerOpen, setTimePickerOpen] = (0, import_react44.useState)(false);
10698
+ const [internalDate, setInternalDate] = (0, import_react42.useState)(date);
10699
+ const [open, setOpen] = (0, import_react42.useState)(false);
10700
+ const [timePickerOpen, setTimePickerOpen] = (0, import_react42.useState)(false);
10820
10701
  const handleSelect = (newDay) => {
10821
10702
  if (!newDay) return;
10822
10703
  if (!internalDate) {
@@ -10836,34 +10717,30 @@ function DateTimePicker({
10836
10717
  };
10837
10718
  const getTimeFormat = () => {
10838
10719
  if (hideTime) return "";
10839
- if (hideHour && hideMinute) return "";
10840
- if (hideHour) return hideSeconds ? "mm" : "mm:ss";
10841
- if (hideMinute) return hideSeconds ? "HH" : "HH':00'";
10842
10720
  return hideSeconds ? "HH:mm" : "HH:mm:ss";
10843
10721
  };
10844
10722
  const getDisplayFormat = () => {
10845
- if (displayFormat) {
10846
- return displayFormat;
10847
- }
10848
10723
  const timeFormat = getTimeFormat();
10849
- if (!timeFormat) return "PPP";
10850
- return `PPP - ${timeFormat}`;
10851
- };
10852
- (0, import_react44.useEffect)(() => {
10853
- if (date) {
10854
- setInternalDate(date);
10724
+ if (displayFormat === true) {
10725
+ if (!timeFormat) return "dd/MM/yyyy";
10726
+ return `dd/MM/yyyy - ${timeFormat}`;
10855
10727
  }
10728
+ if (!timeFormat) return "dd MMMM yyyy";
10729
+ return `dd MMMM yyyy - ${timeFormat}`;
10730
+ };
10731
+ (0, import_react42.useEffect)(() => {
10732
+ setInternalDate(date);
10856
10733
  }, [date, open]);
10857
- return /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("div", { className: cn("space-y-2 w-full sm:w-auto", className), children: [
10858
- label && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(LabelBase_default, { children: label }),
10859
- /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(PopoverBase, { open, onOpenChange: setOpen, children: [
10860
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
10734
+ return /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: cn("space-y-2 w-full sm:w-auto", className), children: [
10735
+ label && /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(LabelBase_default, { children: label }),
10736
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(PopoverBase, { open, onOpenChange: setOpen, children: [
10737
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
10861
10738
  PopoverTriggerBase,
10862
10739
  {
10863
10740
  disabled,
10864
10741
  asChild: true,
10865
10742
  className: cn(error && "border-red-500"),
10866
- children: /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(
10743
+ children: /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(
10867
10744
  ButtonBase,
10868
10745
  {
10869
10746
  variant: "outline",
@@ -10872,7 +10749,7 @@ function DateTimePicker({
10872
10749
  !date && "text-muted-foreground"
10873
10750
  ),
10874
10751
  children: [
10875
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
10752
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
10876
10753
  "span",
10877
10754
  {
10878
10755
  className: cn(
@@ -10882,14 +10759,14 @@ function DateTimePicker({
10882
10759
  children: date ? (0, import_date_fns.format)(date, getDisplayFormat(), { locale: import_locale.ptBR }) : "Selecione uma data"
10883
10760
  }
10884
10761
  ),
10885
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_react45.CalendarBlankIcon, { className: "flex-shrink-0 w-5 h-5 sm:w-6 sm:h-6" })
10762
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_react43.CalendarBlankIcon, { className: "flex-shrink-0 w-5 h-5 sm:w-6 sm:h-6" })
10886
10763
  ]
10887
10764
  }
10888
10765
  )
10889
10766
  }
10890
10767
  ),
10891
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(ErrorMessage_default, { error }),
10892
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
10768
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(ErrorMessage_default, { error }),
10769
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
10893
10770
  PopoverContentBase,
10894
10771
  {
10895
10772
  className: "w-full p-0",
@@ -10898,31 +10775,28 @@ function DateTimePicker({
10898
10775
  side: "bottom",
10899
10776
  avoidCollisions: true,
10900
10777
  collisionPadding: 8,
10901
- children: /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("div", { className: "flex flex-col space-y-2 sm:space-y-3 p-2 sm:p-3 md:p-4 max-h-[calc(100vh-4rem)] overflow-y-auto", children: [
10902
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
10778
+ children: /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex flex-col space-y-2 sm:space-y-3 p-2 sm:p-3 md:p-4 max-h-[calc(100vh-4rem)] overflow-y-auto", children: [
10779
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
10903
10780
  CalendarBase2,
10904
10781
  {
10905
10782
  mode: "single",
10906
10783
  locale: import_locale.ptBR,
10907
10784
  selected: internalDate,
10908
- onSelect: (d) => handleSelect(d),
10785
+ onSelect: (d) => handleSelect(d ?? void 0),
10909
10786
  initialFocus: true,
10910
- defaultMonth: fromDate ?? toDate ?? internalDate,
10787
+ defaultMonth: fromDate ?? toDate ?? internalDate ?? void 0,
10911
10788
  fromDate,
10912
10789
  toDate,
10913
- className: cn(
10914
- "w-full",
10915
- (hideTime || hideHour && hideMinute) && "border-0"
10916
- )
10790
+ className: cn("w-full", hideTime && "border-0")
10917
10791
  }
10918
10792
  ),
10919
- !hideTime && !(hideHour && hideMinute) && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { className: "flex justify-center w-full px-2", children: /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(
10793
+ !hideTime && /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { className: "flex justify-center w-full px-2", children: /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(
10920
10794
  PopoverBase,
10921
10795
  {
10922
10796
  open: timePickerOpen,
10923
10797
  onOpenChange: setTimePickerOpen,
10924
10798
  children: [
10925
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(PopoverTriggerBase, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(
10799
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(PopoverTriggerBase, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)(
10926
10800
  ButtonBase,
10927
10801
  {
10928
10802
  variant: "outline",
@@ -10938,14 +10812,14 @@ function DateTimePicker({
10938
10812
  "min-h-[36px] sm:min-h-[40px]"
10939
10813
  ),
10940
10814
  children: [
10941
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_react45.ClockIcon, { className: "text-primary flex-shrink-0 w-4 h-4 sm:w-5 sm:h-5" }),
10942
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("span", { className: "text-black truncate", children: internalDate ? (0, import_date_fns.format)(internalDate, getTimeFormat() || "HH:mm", {
10815
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_react43.ClockIcon, { className: "text-primary flex-shrink-0 w-4 h-4 sm:w-5 sm:h-5" }),
10816
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("span", { className: "text-black truncate", children: internalDate ? (0, import_date_fns.format)(internalDate, getTimeFormat() || "HH:mm", {
10943
10817
  locale: import_locale.ptBR
10944
10818
  }) : "00:00" })
10945
10819
  ]
10946
10820
  }
10947
10821
  ) }),
10948
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
10822
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
10949
10823
  PopoverContentBase,
10950
10824
  {
10951
10825
  className: "w-[calc(100vw-2rem)] max-w-sm p-3 sm:p-3 rounded-md",
@@ -10954,17 +10828,17 @@ function DateTimePicker({
10954
10828
  sideOffset: 8,
10955
10829
  avoidCollisions: true,
10956
10830
  collisionPadding: 8,
10957
- children: /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("div", { className: "flex flex-col items-center space-y-2 sm:space-y-3", children: [
10958
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("h4", { className: "text-sm sm:text-base font-medium text-center", children: "Alterar Hor\xE1rio" }),
10959
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
10831
+ children: /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex flex-col items-center space-y-2 sm:space-y-3", children: [
10832
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("h4", { className: "text-sm sm:text-base font-medium text-center", children: "Alterar Hor\xE1rio" }),
10833
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
10960
10834
  TimePicker,
10961
10835
  {
10962
- setDate: handleTimeChange,
10836
+ setDate: (d) => handleTimeChange(d ?? void 0),
10963
10837
  date: internalDate,
10964
10838
  hideSeconds
10965
10839
  }
10966
10840
  ),
10967
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
10841
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
10968
10842
  ButtonBase,
10969
10843
  {
10970
10844
  size: "sm",
@@ -10988,14 +10862,14 @@ function DateTimePicker({
10988
10862
  }
10989
10863
 
10990
10864
  // src/components/picker/RangePicker.tsx
10991
- var React42 = __toESM(require("react"));
10865
+ var React43 = __toESM(require("react"));
10992
10866
  var import_react_day_picker3 = require("react-day-picker");
10993
10867
  var import_pt_BR = __toESM(require("date-fns/locale/pt-BR"));
10994
10868
  var import_date_fns2 = require("date-fns");
10995
- var import_react46 = require("@phosphor-icons/react");
10869
+ var import_react44 = require("@phosphor-icons/react");
10996
10870
  var import_framer_motion16 = require("framer-motion");
10997
10871
  var import_ssr7 = require("@phosphor-icons/react/dist/ssr");
10998
- var import_jsx_runtime67 = require("react/jsx-runtime");
10872
+ var import_jsx_runtime66 = require("react/jsx-runtime");
10999
10873
  var dateFnsLocale = import_pt_BR.default?.default ?? import_pt_BR.default;
11000
10874
  function RangePicker({
11001
10875
  value,
@@ -11005,10 +10879,10 @@ function RangePicker({
11005
10879
  maxDate,
11006
10880
  error
11007
10881
  }) {
11008
- const [open, setOpen] = React42.useState(false);
11009
- const [range, setRange] = React42.useState(value);
10882
+ const [open, setOpen] = React43.useState(false);
10883
+ const [range, setRange] = React43.useState(value);
11010
10884
  const controls = (0, import_framer_motion16.useAnimation)();
11011
- React42.useEffect(() => {
10885
+ React43.useEffect(() => {
11012
10886
  setRange(value);
11013
10887
  }, [value]);
11014
10888
  const handleSelect = (selected) => {
@@ -11019,20 +10893,20 @@ function RangePicker({
11019
10893
  setRange(void 0);
11020
10894
  onChange?.(void 0);
11021
10895
  };
11022
- return /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(PopoverBase, { open, onOpenChange: setOpen, children: [
11023
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(PopoverTriggerBase, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
10896
+ return /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(PopoverBase, { open, onOpenChange: setOpen, children: [
10897
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(PopoverTriggerBase, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
11024
10898
  import_framer_motion16.motion.div,
11025
10899
  {
11026
10900
  whileTap: { scale: 0.97 },
11027
10901
  whileHover: { scale: open ? 1.03 : 1.01 },
11028
10902
  transition: { type: "spring", stiffness: 300, damping: 20 },
11029
- children: /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(
10903
+ children: /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(
11030
10904
  ButtonBase,
11031
10905
  {
11032
10906
  variant: "outline",
11033
10907
  className: "flex gap-2 transition-all duration-200 min-w-[250px] text-left justify-between items-center",
11034
10908
  children: [
11035
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
10909
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
11036
10910
  import_framer_motion16.motion.span,
11037
10911
  {
11038
10912
  className: "text-sm font-medium",
@@ -11043,12 +10917,12 @@ function RangePicker({
11043
10917
  })} - ${(0, import_date_fns2.format)(range.to, "P", { locale: dateFnsLocale })}` : label
11044
10918
  }
11045
10919
  ),
11046
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
10920
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
11047
10921
  import_framer_motion16.motion.span,
11048
10922
  {
11049
10923
  animate: open ? { rotate: 8, scale: 1.15 } : { rotate: 0, scale: 1 },
11050
10924
  transition: { type: "spring", stiffness: 300, damping: 18 },
11051
- children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_react46.CalendarBlankIcon, { className: "w-4 h-4 transition-transform group-hover:scale-110" })
10925
+ children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_react44.CalendarBlankIcon, { className: "w-4 h-4 transition-transform group-hover:scale-110" })
11052
10926
  }
11053
10927
  )
11054
10928
  ]
@@ -11056,13 +10930,13 @@ function RangePicker({
11056
10930
  )
11057
10931
  }
11058
10932
  ) }),
11059
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(ErrorMessage_default, { error }),
11060
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_framer_motion16.AnimatePresence, { children: open && /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
10933
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(ErrorMessage_default, { error }),
10934
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_framer_motion16.AnimatePresence, { children: open && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
11061
10935
  PopoverContentBase,
11062
10936
  {
11063
10937
  asChild: true,
11064
10938
  className: "w-auto min-w-[250px] p-0 shadow-xl overflow-y-hidden",
11065
- children: /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(
10939
+ children: /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(
11066
10940
  import_framer_motion16.motion.div,
11067
10941
  {
11068
10942
  initial: { opacity: 0, y: 16 },
@@ -11070,7 +10944,7 @@ function RangePicker({
11070
10944
  exit: { opacity: 0, y: 16 },
11071
10945
  transition: { duration: 0.18, ease: "easeOut" },
11072
10946
  children: [
11073
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { className: "p-4", children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
10947
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { className: "p-4", children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
11074
10948
  import_framer_motion16.motion.div,
11075
10949
  {
11076
10950
  initial: { opacity: 0, y: 8 },
@@ -11078,7 +10952,7 @@ function RangePicker({
11078
10952
  exit: { opacity: 0, y: 8 },
11079
10953
  transition: { duration: 0.18 },
11080
10954
  className: "w-full",
11081
- children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
10955
+ children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
11082
10956
  import_react_day_picker3.DayPicker,
11083
10957
  {
11084
10958
  mode: "range",
@@ -11125,20 +10999,20 @@ function RangePicker({
11125
10999
  day_hidden: "invisible"
11126
11000
  },
11127
11001
  components: {
11128
- IconLeft: () => /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_react46.CaretLeftIcon, { className: "h-4 w-4" }),
11129
- IconRight: () => /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_react46.CaretRightIcon, { className: "h-4 w-4" })
11002
+ IconLeft: () => /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_react44.CaretLeftIcon, { className: "h-4 w-4" }),
11003
+ IconRight: () => /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_react44.CaretRightIcon, { className: "h-4 w-4" })
11130
11004
  }
11131
11005
  }
11132
11006
  )
11133
11007
  }
11134
11008
  ) }),
11135
- /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)("div", { className: "flex justify-end gap-2 px-4 pb-4", children: [
11136
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { style: { display: "inline-block" }, children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
11009
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("div", { className: "flex justify-end gap-2 px-4 pb-4", children: [
11010
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { style: { display: "inline-block" }, children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
11137
11011
  import_framer_motion16.motion.div,
11138
11012
  {
11139
11013
  whileHover: { scale: 1.03 },
11140
11014
  whileTap: { scale: 0.95 },
11141
- children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
11015
+ children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
11142
11016
  ButtonBase,
11143
11017
  {
11144
11018
  variant: "outline",
@@ -11148,17 +11022,17 @@ function RangePicker({
11148
11022
  to: /* @__PURE__ */ new Date()
11149
11023
  });
11150
11024
  },
11151
- children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_ssr7.CalendarDotIcon, {})
11025
+ children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_ssr7.CalendarDotIcon, {})
11152
11026
  }
11153
11027
  )
11154
11028
  }
11155
11029
  ) }),
11156
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { style: { display: "inline-block" }, children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
11030
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { style: { display: "inline-block" }, children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
11157
11031
  import_framer_motion16.motion.div,
11158
11032
  {
11159
11033
  whileHover: { scale: 1.03 },
11160
11034
  whileTap: { scale: 0.95 },
11161
- children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
11035
+ children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
11162
11036
  ButtonBase,
11163
11037
  {
11164
11038
  variant: "outline",
@@ -11170,12 +11044,12 @@ function RangePicker({
11170
11044
  )
11171
11045
  }
11172
11046
  ) }),
11173
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { style: { display: "inline-block", width: "100%" }, children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
11047
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { style: { display: "inline-block", width: "100%" }, children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
11174
11048
  import_framer_motion16.motion.div,
11175
11049
  {
11176
11050
  whileHover: { scale: 1.02 },
11177
11051
  whileTap: { scale: 0.98 },
11178
- children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
11052
+ children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
11179
11053
  ButtonBase,
11180
11054
  {
11181
11055
  className: "font-semibold w-full text-center",
@@ -11198,25 +11072,25 @@ RangePicker.displayName = "RangePicker";
11198
11072
 
11199
11073
  // src/components/ui/navigation/ContextMenuBase.tsx
11200
11074
  var ContextMenuPrimitive = __toESM(require("@radix-ui/react-context-menu"));
11201
- var import_react47 = require("@phosphor-icons/react");
11202
- var import_jsx_runtime68 = require("react/jsx-runtime");
11075
+ var import_react45 = require("@phosphor-icons/react");
11076
+ var import_jsx_runtime67 = require("react/jsx-runtime");
11203
11077
  function ContextMenuBase(props) {
11204
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(ContextMenuPrimitive.Root, { "data-slot": "context-menu", ...props });
11078
+ return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(ContextMenuPrimitive.Root, { "data-slot": "context-menu", ...props });
11205
11079
  }
11206
11080
  function ContextMenuTriggerBase(props) {
11207
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(ContextMenuPrimitive.Trigger, { "data-slot": "context-menu-trigger", ...props });
11081
+ return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(ContextMenuPrimitive.Trigger, { "data-slot": "context-menu-trigger", ...props });
11208
11082
  }
11209
11083
  function ContextMenuGroupBase(props) {
11210
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(ContextMenuPrimitive.Group, { "data-slot": "context-menu-group", ...props });
11084
+ return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(ContextMenuPrimitive.Group, { "data-slot": "context-menu-group", ...props });
11211
11085
  }
11212
11086
  function ContextMenuPortalBase(props) {
11213
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(ContextMenuPrimitive.Portal, { "data-slot": "context-menu-portal", ...props });
11087
+ return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(ContextMenuPrimitive.Portal, { "data-slot": "context-menu-portal", ...props });
11214
11088
  }
11215
11089
  function ContextMenuSubBase(props) {
11216
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(ContextMenuPrimitive.Sub, { "data-slot": "context-menu-sub", ...props });
11090
+ return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(ContextMenuPrimitive.Sub, { "data-slot": "context-menu-sub", ...props });
11217
11091
  }
11218
11092
  function ContextMenuRadioGroupBase(props) {
11219
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(ContextMenuPrimitive.RadioGroup, { "data-slot": "context-menu-radio-group", ...props });
11093
+ return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(ContextMenuPrimitive.RadioGroup, { "data-slot": "context-menu-radio-group", ...props });
11220
11094
  }
11221
11095
  function ContextMenuSubTriggerBase({
11222
11096
  className,
@@ -11224,7 +11098,7 @@ function ContextMenuSubTriggerBase({
11224
11098
  children,
11225
11099
  ...props
11226
11100
  }) {
11227
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
11101
+ return /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(
11228
11102
  ContextMenuPrimitive.SubTrigger,
11229
11103
  {
11230
11104
  "data-slot": "context-menu-sub-trigger",
@@ -11240,7 +11114,7 @@ function ContextMenuSubTriggerBase({
11240
11114
  ...props,
11241
11115
  children: [
11242
11116
  children,
11243
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_react47.CaretRightIcon, { className: "ml-auto" })
11117
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_react45.CaretRightIcon, { className: "ml-auto" })
11244
11118
  ]
11245
11119
  }
11246
11120
  );
@@ -11249,7 +11123,7 @@ function ContextMenuSubContentBase({
11249
11123
  className,
11250
11124
  ...props
11251
11125
  }) {
11252
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
11126
+ return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
11253
11127
  ContextMenuPrimitive.SubContent,
11254
11128
  {
11255
11129
  "data-slot": "context-menu-sub-content",
@@ -11269,7 +11143,7 @@ function ContextMenuContentBase({
11269
11143
  className,
11270
11144
  ...props
11271
11145
  }) {
11272
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(ContextMenuPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
11146
+ return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(ContextMenuPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
11273
11147
  ContextMenuPrimitive.Content,
11274
11148
  {
11275
11149
  "data-slot": "context-menu-content",
@@ -11292,7 +11166,7 @@ function ContextMenuItemBase({
11292
11166
  variant = "default",
11293
11167
  ...props
11294
11168
  }) {
11295
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
11169
+ return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
11296
11170
  ContextMenuPrimitive.Item,
11297
11171
  {
11298
11172
  "data-slot": "context-menu-item",
@@ -11320,7 +11194,7 @@ function ContextMenuCheckboxItemBase({
11320
11194
  checked,
11321
11195
  ...props
11322
11196
  }) {
11323
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
11197
+ return /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(
11324
11198
  ContextMenuPrimitive.CheckboxItem,
11325
11199
  {
11326
11200
  "data-slot": "context-menu-checkbox-item",
@@ -11335,7 +11209,7 @@ function ContextMenuCheckboxItemBase({
11335
11209
  checked,
11336
11210
  ...props,
11337
11211
  children: [
11338
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(ContextMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_react47.CheckIcon, { className: "size-4" }) }) }),
11212
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(ContextMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_react45.CheckIcon, { className: "size-4" }) }) }),
11339
11213
  children
11340
11214
  ]
11341
11215
  }
@@ -11346,7 +11220,7 @@ function ContextMenuRadioItemBase({
11346
11220
  children,
11347
11221
  ...props
11348
11222
  }) {
11349
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
11223
+ return /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(
11350
11224
  ContextMenuPrimitive.RadioItem,
11351
11225
  {
11352
11226
  "data-slot": "context-menu-radio-item",
@@ -11360,7 +11234,7 @@ function ContextMenuRadioItemBase({
11360
11234
  ),
11361
11235
  ...props,
11362
11236
  children: [
11363
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(ContextMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_react47.CircleIcon, { className: "size-2 fill-current" }) }) }),
11237
+ /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(ContextMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_react45.CircleIcon, { className: "size-2 fill-current" }) }) }),
11364
11238
  children
11365
11239
  ]
11366
11240
  }
@@ -11371,7 +11245,7 @@ function ContextMenuLabelBase({
11371
11245
  inset,
11372
11246
  ...props
11373
11247
  }) {
11374
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
11248
+ return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
11375
11249
  ContextMenuPrimitive.Label,
11376
11250
  {
11377
11251
  "data-slot": "context-menu-label",
@@ -11385,7 +11259,7 @@ function ContextMenuSeparatorBase({
11385
11259
  className,
11386
11260
  ...props
11387
11261
  }) {
11388
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
11262
+ return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
11389
11263
  ContextMenuPrimitive.Separator,
11390
11264
  {
11391
11265
  "data-slot": "context-menu-separator",
@@ -11398,7 +11272,7 @@ function ContextMenuShortcutBase({
11398
11272
  className,
11399
11273
  ...props
11400
11274
  }) {
11401
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
11275
+ return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
11402
11276
  "span",
11403
11277
  {
11404
11278
  "data-slot": "context-menu-shortcut",
@@ -11409,10 +11283,10 @@ function ContextMenuShortcutBase({
11409
11283
  }
11410
11284
 
11411
11285
  // src/components/ui/CodeBlock.tsx
11412
- var import_react48 = require("@phosphor-icons/react");
11413
- var import_react49 = __toESM(require("react"));
11286
+ var import_react46 = require("@phosphor-icons/react");
11287
+ var import_react47 = __toESM(require("react"));
11414
11288
  var import_react_syntax_highlighter = require("react-syntax-highlighter");
11415
- var import_jsx_runtime69 = require("react/jsx-runtime");
11289
+ var import_jsx_runtime68 = require("react/jsx-runtime");
11416
11290
  var CodeBlock = ({
11417
11291
  language,
11418
11292
  filename,
@@ -11422,11 +11296,11 @@ var CodeBlock = ({
11422
11296
  breadcrumb = [],
11423
11297
  showStats = true
11424
11298
  }) => {
11425
- const [copied, setCopied] = import_react49.default.useState(false);
11426
- const [activeTab, setActiveTab] = import_react49.default.useState(0);
11427
- const [isExpanded, setIsExpanded] = import_react49.default.useState(false);
11299
+ const [copied, setCopied] = import_react47.default.useState(false);
11300
+ const [activeTab, setActiveTab] = import_react47.default.useState(0);
11301
+ const [isExpanded, setIsExpanded] = import_react47.default.useState(false);
11428
11302
  const tabsExist = tabs.length > 0;
11429
- const cssVars = import_react49.default.useMemo(
11303
+ const cssVars = import_react47.default.useMemo(
11430
11304
  () => ({
11431
11305
  container: {
11432
11306
  backgroundColor: "hsl(var(--card))",
@@ -11491,12 +11365,12 @@ var CodeBlock = ({
11491
11365
  case "jsx":
11492
11366
  case "typescript":
11493
11367
  case "tsx":
11494
- return /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_react48.CodeIcon, { size: "1em", className: "text-yellow-400" });
11368
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_react46.CodeIcon, { size: "1em", className: "text-yellow-400" });
11495
11369
  case "bash":
11496
11370
  case "shell":
11497
- return /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_react48.TerminalIcon, { size: "1em", className: "text-green-400" });
11371
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_react46.TerminalIcon, { size: "1em", className: "text-green-400" });
11498
11372
  default:
11499
- return /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_react48.FileArchiveIcon, { size: "1em", className: "text-blue-400" });
11373
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_react46.FileArchiveIcon, { size: "1em", className: "text-blue-400" });
11500
11374
  }
11501
11375
  };
11502
11376
  const getCodeStats = (source) => {
@@ -11506,24 +11380,24 @@ var CodeBlock = ({
11506
11380
  return { lines, chars, words };
11507
11381
  };
11508
11382
  const stats = showStats ? getCodeStats(activeCodeSanitized) : null;
11509
- return /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(
11383
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
11510
11384
  "div",
11511
11385
  {
11512
11386
  className: `relative w-full rounded-xl overflow-hidden shadow-sm border no-underline-code`,
11513
11387
  style: cssVars.container,
11514
11388
  children: [
11515
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("style", { children: `.no-underline-code a { text-decoration: none !important; text-shadow: none !important; box-shadow: none !important; } .no-underline-code code a { text-decoration: none !important; }` }),
11516
- /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: `flex items-stretch min-h-[3rem]`, style: cssVars.header, children: [
11517
- /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "flex-1 flex items-center min-w-0 px-3", children: [
11518
- /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "flex gap-2 mr-3 shrink-0", children: [
11519
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "w-3 h-3 rounded-full bg-red-500" }),
11520
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "w-3 h-3 rounded-full bg-yellow-500" }),
11521
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "w-3 h-3 rounded-full bg-green-500" })
11389
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("style", { children: `.no-underline-code a { text-decoration: none !important; text-shadow: none !important; box-shadow: none !important; } .no-underline-code code a { text-decoration: none !important; }` }),
11390
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: `flex items-stretch min-h-[3rem]`, style: cssVars.header, children: [
11391
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex-1 flex items-center min-w-0 px-3", children: [
11392
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex gap-2 mr-3 shrink-0", children: [
11393
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "w-3 h-3 rounded-full bg-red-500" }),
11394
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "w-3 h-3 rounded-full bg-yellow-500" }),
11395
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "w-3 h-3 rounded-full bg-green-500" })
11522
11396
  ] }),
11523
- breadcrumb.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "flex items-center min-w-0", children: [
11524
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_react48.FolderIcon, { size: "1em", style: cssVars.icon }),
11525
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "flex items-center min-w-0 ml-2", children: breadcrumb.map((crumb, index) => /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(import_react49.default.Fragment, { children: [
11526
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
11397
+ breadcrumb.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex items-center min-w-0", children: [
11398
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_react46.FolderIcon, { size: "1em", style: cssVars.icon }),
11399
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "flex items-center min-w-0 ml-2", children: breadcrumb.map((crumb, index) => /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(import_react47.default.Fragment, { children: [
11400
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
11527
11401
  "span",
11528
11402
  {
11529
11403
  className: "text-xs truncate",
@@ -11531,8 +11405,8 @@ var CodeBlock = ({
11531
11405
  children: crumb
11532
11406
  }
11533
11407
  ),
11534
- index < breadcrumb.length - 1 && /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
11535
- import_react48.ArrowRightIcon,
11408
+ index < breadcrumb.length - 1 && /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
11409
+ import_react46.ArrowRightIcon,
11536
11410
  {
11537
11411
  size: "0.75em",
11538
11412
  style: cssVars.icon,
@@ -11542,8 +11416,8 @@ var CodeBlock = ({
11542
11416
  ] }, index)) })
11543
11417
  ] })
11544
11418
  ] }),
11545
- /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "flex items-center justify-end shrink-0 px-2", children: [
11546
- stats && /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(
11419
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex items-center justify-end shrink-0 px-2", children: [
11420
+ stats && /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
11547
11421
  "div",
11548
11422
  {
11549
11423
  className: `text-xs mx-2 truncate hidden md:block`,
@@ -11556,44 +11430,44 @@ var CodeBlock = ({
11556
11430
  ]
11557
11431
  }
11558
11432
  ),
11559
- /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "flex", children: [
11560
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
11433
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex", children: [
11434
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
11561
11435
  "button",
11562
11436
  {
11563
11437
  onClick: () => setIsExpanded(!isExpanded),
11564
11438
  className: `p-2 transition-colors hover:bg-gray-200 dark:hover:bg-slate-700`,
11565
11439
  title: "Toggle fullscreen",
11566
- children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_react48.ArrowsOutIcon, { size: "1em", style: cssVars.icon })
11440
+ children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_react46.ArrowsOutIcon, { size: "1em", style: cssVars.icon })
11567
11441
  }
11568
11442
  ),
11569
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
11443
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
11570
11444
  "button",
11571
11445
  {
11572
11446
  onClick: downloadCode,
11573
11447
  className: `p-2 transition-colors hover:bg-gray-200 dark:hover:bg-slate-700`,
11574
11448
  title: "Download code",
11575
- children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_react48.DownloadIcon, { size: "1em", style: cssVars.icon })
11449
+ children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_react46.DownloadIcon, { size: "1em", style: cssVars.icon })
11576
11450
  }
11577
11451
  ),
11578
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
11452
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
11579
11453
  "button",
11580
11454
  {
11581
11455
  onClick: copyToClipboard,
11582
11456
  className: `p-2 transition-colors hover:bg-gray-200 dark:hover:bg-slate-700`,
11583
11457
  title: "Copy code",
11584
- children: copied ? /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
11585
- import_react48.CheckIcon,
11458
+ children: copied ? /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
11459
+ import_react46.CheckIcon,
11586
11460
  {
11587
11461
  size: "1em",
11588
11462
  style: { color: "hsl(var(--primary))" }
11589
11463
  }
11590
- ) : /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_react48.CopyIcon, { size: "1em", style: cssVars.icon })
11464
+ ) : /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_react46.CopyIcon, { size: "1em", style: cssVars.icon })
11591
11465
  }
11592
11466
  )
11593
11467
  ] })
11594
11468
  ] })
11595
11469
  ] }),
11596
- tabsExist && /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
11470
+ tabsExist && /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
11597
11471
  "div",
11598
11472
  {
11599
11473
  className: `flex border-b overflow-x-auto`,
@@ -11601,7 +11475,7 @@ var CodeBlock = ({
11601
11475
  borderColor: "hsl(var(--border))",
11602
11476
  backgroundColor: "hsl(var(--popover))"
11603
11477
  },
11604
- children: tabs.map((tab, index) => /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(
11478
+ children: tabs.map((tab, index) => /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
11605
11479
  "button",
11606
11480
  {
11607
11481
  onClick: () => setActiveTab(index),
@@ -11612,14 +11486,14 @@ var CodeBlock = ({
11612
11486
  } : void 0,
11613
11487
  children: [
11614
11488
  getLanguageIcon(tab.language || language),
11615
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("span", { className: "truncate max-w-[10rem]", children: tab.name })
11489
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { className: "truncate max-w-[10rem]", children: tab.name })
11616
11490
  ]
11617
11491
  },
11618
11492
  index
11619
11493
  ))
11620
11494
  }
11621
11495
  ),
11622
- !tabsExist && filename && /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
11496
+ !tabsExist && filename && /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
11623
11497
  "div",
11624
11498
  {
11625
11499
  className: "flex items-center px-3 py-2 border-b",
@@ -11627,9 +11501,9 @@ var CodeBlock = ({
11627
11501
  borderColor: "hsl(var(--border))",
11628
11502
  backgroundColor: "hsl(var(--popover))"
11629
11503
  },
11630
- children: /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "flex items-center gap-2 min-w-0", children: [
11504
+ children: /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex items-center gap-2 min-w-0", children: [
11631
11505
  getLanguageIcon(language),
11632
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
11506
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
11633
11507
  "span",
11634
11508
  {
11635
11509
  className: "text-sm font-medium truncate",
@@ -11640,11 +11514,11 @@ var CodeBlock = ({
11640
11514
  ] })
11641
11515
  }
11642
11516
  ),
11643
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
11517
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
11644
11518
  "div",
11645
11519
  {
11646
11520
  className: `relative ${isExpanded ? "max-h-screen overflow-auto" : "max-h-96 overflow-auto"}`,
11647
- children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
11521
+ children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
11648
11522
  import_react_syntax_highlighter.Prism,
11649
11523
  {
11650
11524
  language: activeLanguage,
@@ -11678,7 +11552,7 @@ var CodeBlock = ({
11678
11552
  )
11679
11553
  }
11680
11554
  ),
11681
- showStats && stats && /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(
11555
+ showStats && stats && /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
11682
11556
  "div",
11683
11557
  {
11684
11558
  className: "px-3 py-2 border-t text-xs flex items-center justify-between min-h-[2.5rem]",
@@ -11688,20 +11562,20 @@ var CodeBlock = ({
11688
11562
  color: "hsl(var(--muted-foreground))"
11689
11563
  },
11690
11564
  children: [
11691
- /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "flex items-center gap-3 min-w-0", children: [
11692
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("span", { className: "truncate", children: activeLanguage.toUpperCase() }),
11693
- /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("span", { className: "truncate hidden sm:inline", children: [
11565
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex items-center gap-3 min-w-0", children: [
11566
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { className: "truncate", children: activeLanguage.toUpperCase() }),
11567
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("span", { className: "truncate hidden sm:inline", children: [
11694
11568
  stats.lines,
11695
11569
  " lines"
11696
11570
  ] }),
11697
- /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("span", { className: "truncate hidden md:inline", children: [
11571
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("span", { className: "truncate hidden md:inline", children: [
11698
11572
  stats.chars,
11699
11573
  " chars"
11700
11574
  ] })
11701
11575
  ] }),
11702
- /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "flex items-center gap-1 shrink-0", children: [
11703
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_react48.GearIcon, { size: "0.75em", style: cssVars.icon }),
11704
- /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("span", { children: "UTF-8" })
11576
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex items-center gap-1 shrink-0", children: [
11577
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(import_react46.GearIcon, { size: "0.75em", style: cssVars.icon }),
11578
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("span", { children: "UTF-8" })
11705
11579
  ] })
11706
11580
  ]
11707
11581
  }
@@ -11711,6 +11585,78 @@ var CodeBlock = ({
11711
11585
  );
11712
11586
  };
11713
11587
 
11588
+ // src/components/ui/data/StatusIndicator.tsx
11589
+ var import_jsx_runtime69 = require("react/jsx-runtime");
11590
+ function StatusIndicator({
11591
+ color = "green",
11592
+ size = "sm",
11593
+ position = "top-right",
11594
+ show = true,
11595
+ children,
11596
+ className,
11597
+ ...props
11598
+ }) {
11599
+ const absolutePositionClasses = {
11600
+ "top-right": "absolute top-0 right-0 translate-x-1/2 -translate-y-1/2",
11601
+ "top-left": "absolute top-0 left-0 -translate-x-1/2 -translate-y-1/2",
11602
+ "bottom-right": "absolute bottom-0 right-0 translate-x-1/2 translate-y-1/2",
11603
+ "bottom-left": "absolute bottom-0 left-0 -translate-x-1/2 translate-y-1/2"
11604
+ };
11605
+ const sizeClasses = {
11606
+ xs: "h-2 w-2",
11607
+ sm: "h-2.5 w-2.5",
11608
+ md: "h-3 w-3",
11609
+ lg: "h-4 w-4"
11610
+ };
11611
+ const colorClasses = {
11612
+ green: "bg-green-500",
11613
+ gray: "bg-gray-400",
11614
+ red: "bg-red-500",
11615
+ yellow: "bg-yellow-400",
11616
+ blue: "bg-blue-500",
11617
+ purple: "bg-purple-500",
11618
+ retire: "bg-slate-300/70 ring-1 ring-slate-200"
11619
+ };
11620
+ const dotClass = cn(
11621
+ "rounded-full inline-block",
11622
+ sizeClasses[size],
11623
+ colorClasses[color],
11624
+ "flex-shrink-0"
11625
+ );
11626
+ if (position === "inline") {
11627
+ return /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)(
11628
+ "span",
11629
+ {
11630
+ className: cn("inline-flex items-center gap-2", className),
11631
+ ...props,
11632
+ children: [
11633
+ show && /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("span", { className: dotClass, "aria-hidden": !show }),
11634
+ children && /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("span", { className: "truncate", children })
11635
+ ]
11636
+ }
11637
+ );
11638
+ }
11639
+ return /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: cn("relative inline-flex", className), ...props, children: [
11640
+ show && /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
11641
+ "span",
11642
+ {
11643
+ "aria-hidden": !show,
11644
+ className: cn(
11645
+ "pointer-events-none z-10",
11646
+ absolutePositionClasses[position]
11647
+ ),
11648
+ children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("span", { className: dotClass })
11649
+ }
11650
+ ),
11651
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "min-w-0", children })
11652
+ ] });
11653
+ }
11654
+
11655
+ // src/components/ui/form/DebouncedInput.tsx
11656
+ var import_react48 = require("react");
11657
+ var import_react49 = require("@phosphor-icons/react");
11658
+ var import_jsx_runtime70 = require("react/jsx-runtime");
11659
+
11714
11660
  // src/hooks/use-drag.tsx
11715
11661
  var import_react50 = require("react");
11716
11662
  var useDrag = (options = {}) => {