@ezfit/ui 1.0.0 → 1.1.0

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
@@ -1,40 +1,40 @@
1
- import { clsx as Q } from "clsx";
2
- import { twMerge as Y } from "tailwind-merge";
3
- import { jsx as e, jsxs as l, Fragment as A } from "react/jsx-runtime";
4
- import { ArrowDown01Icon as W, InformationCircleIcon as Z, AlertCircleIcon as ee, Alert01Icon as te, CheckmarkCircle01Icon as re, Cancel01Icon as P, Loading03Icon as ae, BarChartIcon as ne, Tick02Icon as E, DropletIcon as oe, Search01Icon as se, UserIcon as ie, ChartUpIcon as le, ChartDownIcon as ce } from "@hugeicons/core-free-icons";
1
+ import { clsx as Z } from "clsx";
2
+ import { twMerge as ee } from "tailwind-merge";
3
+ import { jsx as e, jsxs as l, Fragment as P } from "react/jsx-runtime";
4
+ import { ArrowDown01Icon as G, InformationCircleIcon as te, AlertCircleIcon as re, Alert01Icon as ne, CheckmarkCircle01Icon as ae, Cancel01Icon as E, Loading03Icon as oe, BarChartIcon as se, Tick02Icon as j, ArrowLeft01Icon as ie, ArrowRight01Icon as le, DropletIcon as ce, Search01Icon as de, UserIcon as pe, ChartUpIcon as me, ChartDownIcon as ue } from "@hugeicons/core-free-icons";
5
5
  import { HugeiconsIcon as u } from "@hugeicons/react";
6
6
  import * as k from "@radix-ui/react-accordion";
7
- import { forwardRef as c, useId as j, useState as de, useCallback as V, useMemo as pe, useContext as me, createContext as ue } from "react";
8
- import { ResponsiveContainer as _, AreaChart as xe, Tooltip as G, Area as ge, BarChart as fe, XAxis as be, Bar as he, Cell as H, PieChart as Ne, Pie as ve } from "recharts";
9
- import { cva as w } from "class-variance-authority";
7
+ import { forwardRef as p, useId as F, useState as xe, useCallback as V, useMemo as ge, useContext as fe, createContext as be } from "react";
8
+ import { ResponsiveContainer as _, AreaChart as he, Tooltip as H, Area as ve, BarChart as Ne, XAxis as ye, Bar as we, Cell as O, PieChart as Ce, Pie as ke } from "recharts";
9
+ import { cva as y } from "class-variance-authority";
10
10
  import * as $ from "@radix-ui/react-checkbox";
11
11
  import * as N from "@radix-ui/react-dialog";
12
- import * as O from "@radix-ui/react-radio-group";
13
- import * as b from "@radix-ui/react-select";
14
- import * as T from "@radix-ui/react-slider";
12
+ import * as K from "@radix-ui/react-radio-group";
13
+ import * as h from "@radix-ui/react-select";
14
+ import * as I from "@radix-ui/react-slider";
15
15
  import * as L from "@radix-ui/react-switch";
16
- import * as I from "@radix-ui/react-tabs";
16
+ import * as z from "@radix-ui/react-tabs";
17
17
  import * as C from "@radix-ui/react-toast";
18
- import * as h from "@radix-ui/react-tooltip";
19
- function s(...a) {
20
- return Y(Q(a));
18
+ import * as v from "@radix-ui/react-tooltip";
19
+ function i(...n) {
20
+ return ee(Z(n));
21
21
  }
22
- const Gt = k.Root, ye = c(({ className: a, ...r }, t) => /* @__PURE__ */ e(
22
+ const Jt = k.Root, Te = p(({ className: n, ...r }, t) => /* @__PURE__ */ e(
23
23
  k.Item,
24
24
  {
25
25
  ref: t,
26
- className: s("overflow-hidden rounded-list border border-border-soft", a),
26
+ className: i("overflow-hidden rounded-list border border-border-soft", n),
27
27
  ...r
28
28
  }
29
29
  ));
30
- ye.displayName = "AccordionItem";
31
- const we = c(({ className: a, children: r, ...t }, n) => /* @__PURE__ */ e(k.Header, { className: "flex", children: /* @__PURE__ */ l(
30
+ Te.displayName = "AccordionItem";
31
+ const Ie = p(({ className: n, children: r, ...t }, a) => /* @__PURE__ */ e(k.Header, { className: "flex", children: /* @__PURE__ */ l(
32
32
  k.Trigger,
33
33
  {
34
- ref: n,
35
- className: s(
34
+ ref: a,
35
+ className: i(
36
36
  "group flex flex-1 cursor-pointer items-center justify-between p-4 text-left text-sm font-semibold outline-none focus-visible:ring-3 focus-visible:ring-ring/25",
37
- a
37
+ n
38
38
  ),
39
39
  ...t,
40
40
  children: [
@@ -42,25 +42,25 @@ const we = c(({ className: a, children: r, ...t }, n) => /* @__PURE__ */ e(k.Hea
42
42
  /* @__PURE__ */ e(
43
43
  u,
44
44
  {
45
- icon: W,
45
+ icon: G,
46
46
  className: "size-[18px] flex-none text-subtle-foreground transition-transform group-data-[state=open]:rotate-180"
47
47
  }
48
48
  )
49
49
  ]
50
50
  }
51
51
  ) }));
52
- we.displayName = "AccordionTrigger";
53
- const Ce = c(({ className: a, children: r, ...t }, n) => /* @__PURE__ */ e(
52
+ Ie.displayName = "AccordionTrigger";
53
+ const Fe = p(({ className: n, children: r, ...t }, a) => /* @__PURE__ */ e(
54
54
  k.Content,
55
55
  {
56
- ref: n,
56
+ ref: a,
57
57
  className: "overflow-hidden text-[13px] leading-relaxed text-muted-foreground data-[state=closed]:animate-[ezfade_0.18s_ease] data-[state=open]:animate-[ezfade_0.18s_ease]",
58
58
  ...t,
59
- children: /* @__PURE__ */ e("div", { className: s("px-4 pb-4", a), children: r })
59
+ children: /* @__PURE__ */ e("div", { className: i("px-4 pb-4", n), children: r })
60
60
  }
61
61
  ));
62
- Ce.displayName = "AccordionContent";
63
- const ke = w(
62
+ Fe.displayName = "AccordionContent";
63
+ const ze = y(
64
64
  "inline-flex items-center gap-1.5 rounded-pill font-semibold whitespace-nowrap",
65
65
  {
66
66
  variants: {
@@ -80,11 +80,11 @@ const ke = w(
80
80
  },
81
81
  defaultVariants: { variant: "neutral", size: "md" }
82
82
  }
83
- ), Te = c(
84
- ({ className: a, variant: r, size: t, ...n }, o) => /* @__PURE__ */ e("span", { ref: o, className: s(ke({ variant: r, size: t }), a), ...n })
83
+ ), Se = p(
84
+ ({ className: n, variant: r, size: t, ...a }, o) => /* @__PURE__ */ e("span", { ref: o, className: i(ze({ variant: r, size: t }), n), ...a })
85
85
  );
86
- Te.displayName = "Badge";
87
- const Ie = w("flex items-center gap-3.5 rounded-list border p-[15px] px-[18px]", {
86
+ Se.displayName = "Badge";
87
+ const Be = y("flex items-center gap-3.5 rounded-list border p-[15px] px-[18px]", {
88
88
  variants: {
89
89
  variant: {
90
90
  success: "border-success-border bg-success-bg",
@@ -94,44 +94,44 @@ const Ie = w("flex items-center gap-3.5 rounded-list border p-[15px] px-[18px]",
94
94
  }
95
95
  },
96
96
  defaultVariants: { variant: "info" }
97
- }), Fe = {
98
- success: re,
99
- warning: te,
100
- error: ee,
101
- info: Z
97
+ }), De = {
98
+ success: ae,
99
+ warning: ne,
100
+ error: re,
101
+ info: te
102
102
  }, M = {
103
103
  success: "text-success",
104
104
  warning: "text-warning",
105
105
  error: "text-error",
106
106
  info: "text-info"
107
- }, ze = {
107
+ }, Ae = {
108
108
  success: "text-[#166534]",
109
109
  warning: "text-[#92400E]",
110
110
  error: "text-[#991B1B]",
111
111
  info: "text-[#1E40AF]"
112
- }, Se = {
112
+ }, Pe = {
113
113
  success: "text-[#15803D]",
114
114
  warning: "text-[#B45309]",
115
115
  error: "text-[#B91C1C]",
116
116
  info: "text-[#1D4ED8]"
117
- }, Be = c(
118
- ({ className: a, variant: r = "info", title: t, children: n, onDismiss: o, ...i }, p) => {
119
- const d = r ?? "info", m = Fe[d];
120
- return /* @__PURE__ */ l("div", { ref: p, role: "alert", className: s(Ie({ variant: r }), a), ...i, children: [
117
+ }, Ee = p(
118
+ ({ className: n, variant: r = "info", title: t, children: a, onDismiss: o, ...s }, c) => {
119
+ const d = r ?? "info", m = De[d];
120
+ return /* @__PURE__ */ l("div", { ref: c, role: "alert", className: i(Be({ variant: r }), n), ...s, children: [
121
121
  /* @__PURE__ */ e(
122
122
  u,
123
123
  {
124
124
  icon: m,
125
- className: s("size-5 flex-none", M[d]),
125
+ className: i("size-5 flex-none", M[d]),
126
126
  strokeWidth: 2
127
127
  }
128
128
  ),
129
129
  /* @__PURE__ */ l("div", { className: "flex-1 text-sm", children: [
130
- t ? /* @__PURE__ */ l("span", { className: s("font-semibold", ze[d]), children: [
130
+ t ? /* @__PURE__ */ l("span", { className: i("font-semibold", Ae[d]), children: [
131
131
  t,
132
132
  " "
133
133
  ] }) : null,
134
- /* @__PURE__ */ e("span", { className: Se[d], children: n })
134
+ /* @__PURE__ */ e("span", { className: Pe[d], children: a })
135
135
  ] }),
136
136
  o ? /* @__PURE__ */ e(
137
137
  "button",
@@ -139,18 +139,18 @@ const Ie = w("flex items-center gap-3.5 rounded-list border p-[15px] px-[18px]",
139
139
  type: "button",
140
140
  onClick: o,
141
141
  "aria-label": "Fechar",
142
- className: s(
142
+ className: i(
143
143
  "flex-none cursor-pointer opacity-60 transition-opacity hover:opacity-100",
144
144
  M[d]
145
145
  ),
146
- children: /* @__PURE__ */ e(u, { icon: P, className: "size-[17px]" })
146
+ children: /* @__PURE__ */ e(u, { icon: E, className: "size-[17px]" })
147
147
  }
148
148
  ) : null
149
149
  ] });
150
150
  }
151
151
  );
152
- Be.displayName = "Banner";
153
- const De = w(
152
+ Ee.displayName = "Banner";
153
+ const je = y(
154
154
  "inline-flex items-center justify-center gap-2 font-sans font-semibold whitespace-nowrap transition-colors outline-none focus-visible:ring-3 focus-visible:ring-ring/25 disabled:pointer-events-none disabled:opacity-70",
155
155
  {
156
156
  variants: {
@@ -172,21 +172,21 @@ const De = w(
172
172
  size: "md"
173
173
  }
174
174
  }
175
- ), Ae = c(
176
- ({ className: a, variant: r, size: t, loading: n = !1, disabled: o, children: i, type: p = "button", ...d }, m) => /* @__PURE__ */ e(
175
+ ), _e = p(
176
+ ({ className: n, variant: r, size: t, loading: a = !1, disabled: o, children: s, type: c = "button", ...d }, m) => /* @__PURE__ */ e(
177
177
  "button",
178
178
  {
179
179
  ref: m,
180
- type: p,
181
- className: s(De({ variant: r, size: t }), a),
182
- disabled: o || n,
180
+ type: c,
181
+ className: i(je({ variant: r, size: t }), n),
182
+ disabled: o || a,
183
183
  ...d,
184
- children: n ? /* @__PURE__ */ e(u, { icon: ae, className: "size-[18px] animate-spin-slow" }) : i
184
+ children: a ? /* @__PURE__ */ e(u, { icon: oe, className: "size-[18px] animate-spin-slow" }) : s
185
185
  }
186
186
  )
187
187
  );
188
- Ae.displayName = "Button";
189
- const Pe = w("rounded-card", {
188
+ _e.displayName = "Button";
189
+ const Re = y("rounded-card", {
190
190
  variants: {
191
191
  variant: {
192
192
  light: "bg-card text-card-foreground shadow-card",
@@ -200,32 +200,32 @@ const Pe = w("rounded-card", {
200
200
  }
201
201
  },
202
202
  defaultVariants: { variant: "light", padding: "md" }
203
- }), Ee = c(
204
- ({ className: a, variant: r, padding: t, ...n }, o) => /* @__PURE__ */ e("div", { ref: o, className: s(Pe({ variant: r, padding: t }), a), ...n })
203
+ }), Ve = p(
204
+ ({ className: n, variant: r, padding: t, ...a }, o) => /* @__PURE__ */ e("div", { ref: o, className: i(Re({ variant: r, padding: t }), n), ...a })
205
205
  );
206
- Ee.displayName = "Card";
207
- const je = c(
208
- ({ className: a, ...r }, t) => /* @__PURE__ */ e(
206
+ Ve.displayName = "Card";
207
+ const $e = p(
208
+ ({ className: n, ...r }, t) => /* @__PURE__ */ e(
209
209
  "div",
210
210
  {
211
211
  ref: t,
212
- className: s("mb-4 flex items-start justify-between gap-3", a),
212
+ className: i("mb-4 flex items-start justify-between gap-3", n),
213
213
  ...r
214
214
  }
215
215
  )
216
216
  );
217
- je.displayName = "CardHeader";
218
- const _e = c(
219
- ({ className: a, ...r }, t) => /* @__PURE__ */ e("h3", { ref: t, className: s("text-base font-semibold", a), ...r })
217
+ $e.displayName = "CardHeader";
218
+ const Le = p(
219
+ ({ className: n, ...r }, t) => /* @__PURE__ */ e("h3", { ref: t, className: i("text-base font-semibold", n), ...r })
220
220
  );
221
- _e.displayName = "CardTitle";
222
- const Re = c(({ className: a, ...r }, t) => /* @__PURE__ */ e("p", { ref: t, className: s("text-[13px] text-subtle-foreground", a), ...r }));
223
- Re.displayName = "CardDescription";
224
- const Ve = c(
225
- ({ className: a, ...r }, t) => /* @__PURE__ */ e("div", { ref: t, className: s(a), ...r })
221
+ Le.displayName = "CardTitle";
222
+ const Me = p(({ className: n, ...r }, t) => /* @__PURE__ */ e("p", { ref: t, className: i("text-[13px] text-subtle-foreground", n), ...r }));
223
+ Me.displayName = "CardDescription";
224
+ const We = p(
225
+ ({ className: n, ...r }, t) => /* @__PURE__ */ e("div", { ref: t, className: i(n), ...r })
226
226
  );
227
- Ve.displayName = "CardContent";
228
- const y = {
227
+ We.displayName = "CardContent";
228
+ const w = {
229
229
  primary: "#1E293B",
230
230
  primaryForeground: "#FFFFFF",
231
231
  accent: "#A3E635",
@@ -249,16 +249,16 @@ const y = {
249
249
  carbsText: "#CA8A04",
250
250
  fat: "#F97316",
251
251
  cardio: "#22C55E"
252
- }, F = {
253
- protein: y.protein,
254
- carbs: y.carbs,
255
- fat: y.fat,
256
- cardio: y.cardio,
257
- accent: y.accent,
258
- primary: y.primary,
259
- muted: y.secondary,
252
+ }, S = {
253
+ protein: w.protein,
254
+ carbs: w.carbs,
255
+ fat: w.fat,
256
+ cardio: w.cardio,
257
+ accent: w.accent,
258
+ primary: w.primary,
259
+ muted: w.secondary,
260
260
  grid: "#F1F5F9"
261
- }, Ht = {
261
+ }, Qt = {
262
262
  input: "8px",
263
263
  field: "12px",
264
264
  button: "14px",
@@ -266,35 +266,35 @@ const y = {
266
266
  tile: "18px",
267
267
  card: "24px",
268
268
  pill: "999px"
269
- }, Ot = {
269
+ }, Yt = {
270
270
  sans: "'Space Grotesk', ui-sans-serif, system-ui, sans-serif",
271
271
  mono: "'Space Mono', ui-monospace, monospace"
272
- }, R = c(
273
- ({ className: a, title: r, rows: t, ...n }, o) => /* @__PURE__ */ l(
272
+ }, R = p(
273
+ ({ className: n, title: r, rows: t, ...a }, o) => /* @__PURE__ */ l(
274
274
  "div",
275
275
  {
276
276
  ref: o,
277
- className: s(
277
+ className: i(
278
278
  "min-w-[150px] rounded-[14px] bg-primary px-4 py-3 text-primary-foreground shadow-[0_8px_24px_rgba(15,23,42,0.25)]",
279
- a
279
+ n
280
280
  ),
281
- ...n,
281
+ ...a,
282
282
  children: [
283
283
  r ? /* @__PURE__ */ e("div", { className: "mb-1.5 text-[11px] text-subtle-foreground", children: r }) : null,
284
- t.map((i) => /* @__PURE__ */ l("div", { className: "flex items-center gap-2 text-[13px] font-semibold", children: [
285
- i.color ? /* @__PURE__ */ e("span", { className: "size-[9px] flex-none rounded-full", style: { background: i.color } }) : null,
286
- i.label,
287
- /* @__PURE__ */ e("span", { className: "ml-auto", children: i.value })
288
- ] }, i.label))
284
+ t.map((s) => /* @__PURE__ */ l("div", { className: "flex items-center gap-2 text-[13px] font-semibold", children: [
285
+ s.color ? /* @__PURE__ */ e("span", { className: "size-[9px] flex-none rounded-full", style: { background: s.color } }) : null,
286
+ s.label,
287
+ /* @__PURE__ */ e("span", { className: "ml-auto", children: s.value })
288
+ ] }, s.label))
289
289
  ]
290
290
  }
291
291
  )
292
292
  );
293
293
  R.displayName = "ChartTooltip";
294
- function $e(a) {
295
- return function({ active: t, payload: n, label: o }) {
296
- if (!t || !(n != null && n.length)) return null;
297
- const i = n[0];
294
+ function Ge(n) {
295
+ return function({ active: t, payload: a, label: o }) {
296
+ if (!t || !(a != null && a.length)) return null;
297
+ const s = a[0];
298
298
  return /* @__PURE__ */ e(
299
299
  R,
300
300
  {
@@ -302,47 +302,47 @@ function $e(a) {
302
302
  rows: [
303
303
  {
304
304
  label: "Valor",
305
- value: `${(i == null ? void 0 : i.value) ?? 0}${a ? ` ${a}` : ""}`,
306
- color: F.accent
305
+ value: `${(s == null ? void 0 : s.value) ?? 0}${n ? ` ${n}` : ""}`,
306
+ color: S.accent
307
307
  }
308
308
  ]
309
309
  }
310
310
  );
311
311
  };
312
312
  }
313
- function Kt({
314
- data: a,
313
+ function Zt({
314
+ data: n,
315
315
  height: r = 180,
316
- color: t = F.accent,
317
- unit: n = "",
316
+ color: t = S.accent,
317
+ unit: a = "",
318
318
  className: o
319
319
  }) {
320
- const i = "ezfit-area-gradient";
321
- return /* @__PURE__ */ e("div", { className: s("w-full", o), style: { height: r }, children: /* @__PURE__ */ e(_, { width: "100%", height: "100%", children: /* @__PURE__ */ l(xe, { data: a, margin: { top: 8, right: 8, bottom: 0, left: 8 }, children: [
322
- /* @__PURE__ */ e("defs", { children: /* @__PURE__ */ l("linearGradient", { id: i, x1: "0", y1: "0", x2: "0", y2: "1", children: [
320
+ const s = "ezfit-area-gradient";
321
+ return /* @__PURE__ */ e("div", { className: i("w-full", o), style: { height: r }, children: /* @__PURE__ */ e(_, { width: "100%", height: "100%", children: /* @__PURE__ */ l(he, { data: n, margin: { top: 8, right: 8, bottom: 0, left: 8 }, children: [
322
+ /* @__PURE__ */ e("defs", { children: /* @__PURE__ */ l("linearGradient", { id: s, x1: "0", y1: "0", x2: "0", y2: "1", children: [
323
323
  /* @__PURE__ */ e("stop", { offset: "0%", stopColor: t, stopOpacity: 0.45 }),
324
324
  /* @__PURE__ */ e("stop", { offset: "100%", stopColor: t, stopOpacity: 0 })
325
325
  ] }) }),
326
- /* @__PURE__ */ e(G, { cursor: !1, content: $e(n) }),
326
+ /* @__PURE__ */ e(H, { cursor: !1, content: Ge(a) }),
327
327
  /* @__PURE__ */ e(
328
- ge,
328
+ ve,
329
329
  {
330
330
  type: "monotone",
331
331
  dataKey: "value",
332
332
  stroke: t,
333
333
  strokeWidth: 3,
334
334
  strokeLinecap: "round",
335
- fill: `url(#${i})`,
335
+ fill: `url(#${s})`,
336
336
  dot: !1,
337
337
  activeDot: { r: 5, fill: "#fff", stroke: t, strokeWidth: 3 }
338
338
  }
339
339
  )
340
340
  ] }) }) });
341
341
  }
342
- function Le(a) {
343
- return function({ active: t, payload: n, label: o }) {
344
- if (!t || !(n != null && n.length)) return null;
345
- const i = n[0];
342
+ function He(n) {
343
+ return function({ active: t, payload: a, label: o }) {
344
+ if (!t || !(a != null && a.length)) return null;
345
+ const s = a[0];
346
346
  return /* @__PURE__ */ e(
347
347
  R,
348
348
  {
@@ -350,18 +350,18 @@ function Le(a) {
350
350
  rows: [
351
351
  {
352
352
  label: "Valor",
353
- value: `${(i == null ? void 0 : i.value) ?? 0}${a ? ` ${a}` : ""}`,
354
- color: F.accent
353
+ value: `${(s == null ? void 0 : s.value) ?? 0}${n ? ` ${n}` : ""}`,
354
+ color: S.accent
355
355
  }
356
356
  ]
357
357
  }
358
358
  );
359
359
  };
360
360
  }
361
- function qt({ data: a, activeIndex: r, height: t = 220, unit: n = "", className: o }) {
362
- return /* @__PURE__ */ e("div", { className: s("w-full", o), style: { height: t }, children: /* @__PURE__ */ e(_, { width: "100%", height: "100%", children: /* @__PURE__ */ l(fe, { data: a, margin: { top: 24, right: 0, bottom: 0, left: 0 }, children: [
361
+ function er({ data: n, activeIndex: r, height: t = 220, unit: a = "", className: o }) {
362
+ return /* @__PURE__ */ e("div", { className: i("w-full", o), style: { height: t }, children: /* @__PURE__ */ e(_, { width: "100%", height: "100%", children: /* @__PURE__ */ l(Ne, { data: n, margin: { top: 24, right: 0, bottom: 0, left: 0 }, children: [
363
363
  /* @__PURE__ */ e(
364
- be,
364
+ ye,
365
365
  {
366
366
  dataKey: "label",
367
367
  axisLine: !1,
@@ -370,47 +370,47 @@ function qt({ data: a, activeIndex: r, height: t = 220, unit: n = "", className:
370
370
  dy: 8
371
371
  }
372
372
  ),
373
- /* @__PURE__ */ e(G, { cursor: !1, content: Le(n) }),
374
- /* @__PURE__ */ e(he, { dataKey: "value", radius: [10, 10, 10, 10], maxBarSize: 40, children: a.map((i, p) => /* @__PURE__ */ e(
375
- H,
373
+ /* @__PURE__ */ e(H, { cursor: !1, content: He(a) }),
374
+ /* @__PURE__ */ e(we, { dataKey: "value", radius: [10, 10, 10, 10], maxBarSize: 40, children: n.map((s, c) => /* @__PURE__ */ e(
375
+ O,
376
376
  {
377
- fill: p === r ? F.accent : "#CBD5E1"
377
+ fill: c === r ? S.accent : "#CBD5E1"
378
378
  },
379
- i.label
379
+ s.label
380
380
  )) })
381
381
  ] }) }) });
382
382
  }
383
- const Me = c(
383
+ const Oe = p(
384
384
  ({
385
- className: a,
386
- icon: r = ne,
385
+ className: n,
386
+ icon: r = se,
387
387
  title: t = "0",
388
- description: n = "Sem dados para o periodo",
388
+ description: a = "Sem dados para o periodo",
389
389
  ...o
390
- }, i) => /* @__PURE__ */ l(
390
+ }, s) => /* @__PURE__ */ l(
391
391
  "div",
392
392
  {
393
- ref: i,
394
- className: s(
393
+ ref: s,
394
+ className: i(
395
395
  "flex h-[148px] flex-col items-center justify-center rounded-tile border-2 border-dashed border-border text-center",
396
- a
396
+ n
397
397
  ),
398
398
  ...o,
399
399
  children: [
400
400
  /* @__PURE__ */ e("div", { className: "mb-3 flex size-[46px] items-center justify-center rounded-[14px] bg-secondary", children: /* @__PURE__ */ e(u, { icon: r, className: "size-[22px] text-subtle-foreground", strokeWidth: 2 }) }),
401
401
  /* @__PURE__ */ e("div", { className: "text-[32px] leading-none font-bold text-[#CBD5E1]", children: t }),
402
- /* @__PURE__ */ e("div", { className: "mt-1.5 text-xs text-subtle-foreground", children: n })
402
+ /* @__PURE__ */ e("div", { className: "mt-1.5 text-xs text-subtle-foreground", children: a })
403
403
  ]
404
404
  }
405
405
  )
406
406
  );
407
- Me.displayName = "ChartEmptyState";
408
- const We = c(
409
- ({ className: a, items: r, ...t }, n) => /* @__PURE__ */ e("div", { ref: n, className: s("flex flex-wrap gap-3", a), ...t, children: r.map((o) => /* @__PURE__ */ l("div", { className: "inline-flex items-center gap-[7px] text-[13px]", children: [
407
+ Oe.displayName = "ChartEmptyState";
408
+ const Ke = p(
409
+ ({ className: n, items: r, ...t }, a) => /* @__PURE__ */ e("div", { ref: a, className: i("flex flex-wrap gap-3", n), ...t, children: r.map((o) => /* @__PURE__ */ l("div", { className: "inline-flex items-center gap-[7px] text-[13px]", children: [
410
410
  /* @__PURE__ */ e(
411
411
  "span",
412
412
  {
413
- className: s(
413
+ className: i(
414
414
  "size-[11px] flex-none",
415
415
  o.shape === "square" ? "rounded-[4px]" : "rounded-full"
416
416
  ),
@@ -421,20 +421,20 @@ const We = c(
421
421
  o.value ? /* @__PURE__ */ e("span", { className: "text-subtle-foreground", children: o.value }) : null
422
422
  ] }, o.label)) })
423
423
  );
424
- We.displayName = "ChartLegend";
425
- function Ut({
426
- data: a,
424
+ Ke.displayName = "ChartLegend";
425
+ function tr({
426
+ data: n,
427
427
  size: r = 120,
428
428
  thickness: t = 18,
429
- centerValue: n,
429
+ centerValue: a,
430
430
  centerCaption: o,
431
- className: i
431
+ className: s
432
432
  }) {
433
- return /* @__PURE__ */ l("div", { className: s("relative flex-none", i), style: { width: r, height: r }, children: [
434
- /* @__PURE__ */ e(_, { width: "100%", height: "100%", children: /* @__PURE__ */ e(Ne, { children: /* @__PURE__ */ e(
435
- ve,
433
+ return /* @__PURE__ */ l("div", { className: i("relative flex-none", s), style: { width: r, height: r }, children: [
434
+ /* @__PURE__ */ e(_, { width: "100%", height: "100%", children: /* @__PURE__ */ e(Ce, { children: /* @__PURE__ */ e(
435
+ ke,
436
436
  {
437
- data: a,
437
+ data: n,
438
438
  dataKey: "value",
439
439
  nameKey: "name",
440
440
  cx: "50%",
@@ -445,95 +445,136 @@ function Ut({
445
445
  endAngle: -270,
446
446
  paddingAngle: 0,
447
447
  stroke: "none",
448
- children: a.map((p) => /* @__PURE__ */ e(H, { fill: p.color }, p.name))
448
+ children: n.map((c) => /* @__PURE__ */ e(O, { fill: c.color }, c.name))
449
449
  }
450
450
  ) }) }),
451
- n || o ? /* @__PURE__ */ l("div", { className: "pointer-events-none absolute inset-0 flex flex-col items-center justify-center", children: [
452
- n ? /* @__PURE__ */ e("span", { className: "text-[22px] font-bold", children: n }) : null,
451
+ a || o ? /* @__PURE__ */ l("div", { className: "pointer-events-none absolute inset-0 flex flex-col items-center justify-center", children: [
452
+ a ? /* @__PURE__ */ e("span", { className: "text-[22px] font-bold", children: a }) : null,
453
453
  o ? /* @__PURE__ */ e("span", { className: "text-[10px] tracking-wide text-subtle-foreground uppercase", children: o }) : null
454
454
  ] }) : null
455
455
  ] });
456
456
  }
457
- const Ge = c(
458
- ({ className: a, label: r, id: t, ...n }, o) => {
459
- const i = j(), p = t ?? i, d = /* @__PURE__ */ e(
457
+ const qe = p(
458
+ ({ className: n, label: r, id: t, ...a }, o) => {
459
+ const s = F(), c = t ?? s, d = /* @__PURE__ */ e(
460
460
  $.Root,
461
461
  {
462
462
  ref: o,
463
- id: p,
464
- className: s(
463
+ id: c,
464
+ className: i(
465
465
  "flex size-[22px] flex-none cursor-pointer items-center justify-center rounded-[7px] border-2 transition-colors outline-none",
466
466
  "border-input bg-background",
467
467
  "data-[state=checked]:border-accent data-[state=checked]:bg-accent",
468
468
  "focus-visible:ring-3 focus-visible:ring-ring/25 disabled:cursor-not-allowed disabled:opacity-60",
469
- a
469
+ n
470
470
  ),
471
- ...n,
471
+ ...a,
472
472
  children: /* @__PURE__ */ e($.Indicator, { children: /* @__PURE__ */ e(
473
473
  u,
474
474
  {
475
- icon: E,
475
+ icon: j,
476
476
  className: "size-[15px] text-accent-foreground",
477
477
  strokeWidth: 3
478
478
  }
479
479
  ) })
480
480
  }
481
481
  );
482
- return r ? /* @__PURE__ */ l("label", { htmlFor: p, className: "flex cursor-pointer items-center gap-3.5", children: [
482
+ return r ? /* @__PURE__ */ l("label", { htmlFor: c, className: "flex cursor-pointer items-center gap-3.5", children: [
483
483
  d,
484
484
  /* @__PURE__ */ e("span", { className: "text-sm font-medium", children: r })
485
485
  ] }) : d;
486
486
  }
487
487
  );
488
- Ge.displayName = "Checkbox";
489
- function Xt({ columns: a, data: r, getRowKey: t, className: n, ...o }) {
490
- return /* @__PURE__ */ l("table", { className: s("w-full border-collapse", n), ...o, children: [
491
- /* @__PURE__ */ e("thead", { children: /* @__PURE__ */ e("tr", { children: a.map((i) => /* @__PURE__ */ e(
488
+ qe.displayName = "Checkbox";
489
+ function rr({ columns: n, data: r, getRowKey: t, className: a, ...o }) {
490
+ return /* @__PURE__ */ l("table", { className: i("w-full border-collapse", a), ...o, children: [
491
+ /* @__PURE__ */ e("thead", { children: /* @__PURE__ */ e("tr", { children: n.map((s) => /* @__PURE__ */ e(
492
492
  "th",
493
493
  {
494
- className: s(
494
+ className: i(
495
495
  "pb-3.5 font-mono text-[11px] font-bold tracking-wider text-subtle-foreground uppercase",
496
- i.align === "right" ? "text-right" : "text-left"
496
+ s.align === "right" ? "text-right" : "text-left"
497
497
  ),
498
- children: i.header
498
+ children: s.header
499
499
  },
500
- i.header
500
+ s.header
501
501
  )) }) }),
502
- /* @__PURE__ */ e("tbody", { children: r.map((i, p) => /* @__PURE__ */ e("tr", { className: "border-t border-border-soft", children: a.map((d) => /* @__PURE__ */ e(
502
+ /* @__PURE__ */ e("tbody", { children: r.map((s, c) => /* @__PURE__ */ e("tr", { className: "border-t border-border-soft", children: n.map((d) => /* @__PURE__ */ e(
503
503
  "td",
504
504
  {
505
- className: s(
505
+ className: i(
506
506
  "py-3.5 text-sm",
507
507
  d.align === "right" ? "text-right" : "text-left"
508
508
  ),
509
- children: d.cell(i)
509
+ children: d.cell(s)
510
510
  },
511
511
  d.header
512
- )) }, t(i, p))) })
512
+ )) }, t(s, c))) })
513
513
  ] });
514
514
  }
515
- const Jt = N.Root, Qt = N.Trigger, Yt = N.Close, He = N.Portal, K = c(({ className: a, ...r }, t) => /* @__PURE__ */ e(
515
+ const W = "flex size-9 flex-none cursor-pointer items-center justify-center rounded-pill text-muted-foreground transition-colors outline-none hover:bg-secondary hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/25 disabled:cursor-not-allowed disabled:opacity-40", Ue = p(
516
+ ({ className: n, label: r, onPrev: t, onNext: a, onLabelClick: o, nextDisabled: s = !1, ...c }, d) => /* @__PURE__ */ l(
517
+ "div",
518
+ {
519
+ ref: d,
520
+ className: i(
521
+ "inline-flex items-center gap-1 rounded-pill border border-border bg-card p-1.5",
522
+ n
523
+ ),
524
+ ...c,
525
+ children: [
526
+ /* @__PURE__ */ e("button", { type: "button", "aria-label": "Dia anterior", onClick: t, className: W, children: /* @__PURE__ */ e(u, { icon: ie, className: "size-[18px]", strokeWidth: 2 }) }),
527
+ /* @__PURE__ */ e(
528
+ "button",
529
+ {
530
+ type: "button",
531
+ onClick: o,
532
+ disabled: !o,
533
+ className: i(
534
+ "min-w-20 rounded-pill px-3 py-1.5 text-center font-sans text-sm font-semibold whitespace-nowrap outline-none",
535
+ o && "cursor-pointer transition-colors hover:bg-secondary focus-visible:ring-3 focus-visible:ring-ring/25"
536
+ ),
537
+ children: r
538
+ }
539
+ ),
540
+ /* @__PURE__ */ e(
541
+ "button",
542
+ {
543
+ type: "button",
544
+ "aria-label": "Proximo dia",
545
+ onClick: a,
546
+ disabled: s,
547
+ className: W,
548
+ children: /* @__PURE__ */ e(u, { icon: le, className: "size-[18px]", strokeWidth: 2 })
549
+ }
550
+ )
551
+ ]
552
+ }
553
+ )
554
+ );
555
+ Ue.displayName = "DateNavigator";
556
+ const nr = N.Root, ar = N.Trigger, or = N.Close, Xe = N.Portal, q = p(({ className: n, ...r }, t) => /* @__PURE__ */ e(
516
557
  N.Overlay,
517
558
  {
518
559
  ref: t,
519
- className: s(
560
+ className: i(
520
561
  "fixed inset-0 z-90 flex items-center justify-center bg-[rgba(15,23,42,0.45)] p-6 backdrop-blur-[3px] data-[state=open]:animate-fade-in",
521
- a
562
+ n
522
563
  ),
523
564
  ...r
524
565
  }
525
566
  ));
526
- K.displayName = "DialogOverlay";
527
- const Oe = c(({ className: a, children: r, showClose: t = !0, ...n }, o) => /* @__PURE__ */ e(He, { children: /* @__PURE__ */ e(K, { children: /* @__PURE__ */ l(
567
+ q.displayName = "DialogOverlay";
568
+ const Je = p(({ className: n, children: r, showClose: t = !0, ...a }, o) => /* @__PURE__ */ e(Xe, { children: /* @__PURE__ */ e(q, { children: /* @__PURE__ */ l(
528
569
  N.Content,
529
570
  {
530
571
  ref: o,
531
- className: s(
572
+ className: i(
532
573
  "relative w-full max-w-[420px] rounded-card bg-card p-[30px] shadow-[0_24px_64px_rgba(15,23,42,0.3)] outline-none data-[state=open]:animate-toast-in",
533
- a
574
+ n
534
575
  ),
535
- onOpenAutoFocus: (i) => i.preventDefault(),
536
- ...n,
576
+ onOpenAutoFocus: (s) => s.preventDefault(),
577
+ ...a,
537
578
  children: [
538
579
  r,
539
580
  t ? /* @__PURE__ */ e(
@@ -541,36 +582,36 @@ const Oe = c(({ className: a, children: r, showClose: t = !0, ...n }, o) => /* @
541
582
  {
542
583
  className: "absolute top-[30px] right-[30px] flex size-[34px] cursor-pointer items-center justify-center rounded-[11px] bg-secondary text-muted-foreground transition-colors hover:bg-secondary-hover outline-none focus-visible:ring-3 focus-visible:ring-ring/25",
543
584
  "aria-label": "Fechar",
544
- children: /* @__PURE__ */ e(u, { icon: P, className: "size-[18px]" })
585
+ children: /* @__PURE__ */ e(u, { icon: E, className: "size-[18px]" })
545
586
  }
546
587
  ) : null
547
588
  ]
548
589
  }
549
590
  ) }) }));
550
- Oe.displayName = "DialogContent";
551
- const Ke = ({ className: a, ...r }) => /* @__PURE__ */ e("div", { className: s("mb-2 flex items-start justify-between gap-3", a), ...r });
552
- Ke.displayName = "DialogHeader";
553
- const qe = c(({ className: a, ...r }, t) => /* @__PURE__ */ e(
591
+ Je.displayName = "DialogContent";
592
+ const Qe = ({ className: n, ...r }) => /* @__PURE__ */ e("div", { className: i("mb-2 flex items-start justify-between gap-3", n), ...r });
593
+ Qe.displayName = "DialogHeader";
594
+ const Ye = p(({ className: n, ...r }, t) => /* @__PURE__ */ e(
554
595
  N.Title,
555
596
  {
556
597
  ref: t,
557
- className: s("mt-3.5 mb-1.5 text-xl font-bold", a),
598
+ className: i("mt-3.5 mb-1.5 text-xl font-bold", n),
558
599
  ...r
559
600
  }
560
601
  ));
561
- qe.displayName = "DialogTitle";
562
- const Ue = c(({ className: a, ...r }, t) => /* @__PURE__ */ e(
602
+ Ye.displayName = "DialogTitle";
603
+ const Ze = p(({ className: n, ...r }, t) => /* @__PURE__ */ e(
563
604
  N.Description,
564
605
  {
565
606
  ref: t,
566
- className: s("mb-6 text-sm leading-relaxed text-muted-foreground", a),
607
+ className: i("mb-6 text-sm leading-relaxed text-muted-foreground", n),
567
608
  ...r
568
609
  }
569
610
  ));
570
- Ue.displayName = "DialogDescription";
571
- const Xe = ({ className: a, ...r }) => /* @__PURE__ */ e("div", { className: s("flex gap-3", a), ...r });
572
- Xe.displayName = "DialogFooter";
573
- const Je = w("flex flex-none items-center justify-center", {
611
+ Ze.displayName = "DialogDescription";
612
+ const et = ({ className: n, ...r }) => /* @__PURE__ */ e("div", { className: i("flex gap-3", n), ...r });
613
+ et.displayName = "DialogFooter";
614
+ const tt = y("flex flex-none items-center justify-center", {
574
615
  variants: {
575
616
  tone: {
576
617
  neutral: "bg-secondary text-foreground",
@@ -594,66 +635,66 @@ const Je = w("flex flex-none items-center justify-center", {
594
635
  }
595
636
  },
596
637
  defaultVariants: { tone: "neutral", size: "md" }
597
- }), Qe = {
638
+ }), rt = {
598
639
  sm: "size-[18px]",
599
640
  md: "size-5",
600
641
  lg: "size-[22px]",
601
642
  xl: "size-8"
602
- }, z = c(
603
- ({ className: a, tone: r, size: t = "md", icon: n, ...o }, i) => /* @__PURE__ */ e("div", { ref: i, className: s(Je({ tone: r, size: t }), a), ...o, children: /* @__PURE__ */ e(u, { icon: n, className: Qe[t ?? "md"], strokeWidth: 2 }) })
643
+ }, T = p(
644
+ ({ className: n, tone: r, size: t = "md", icon: a, ...o }, s) => /* @__PURE__ */ e("div", { ref: s, className: i(tt({ tone: r, size: t }), n), ...o, children: /* @__PURE__ */ e(u, { icon: a, className: rt[t ?? "md"], strokeWidth: 2 }) })
604
645
  );
605
- z.displayName = "IconTile";
606
- const Ye = c(
607
- ({ className: a, icon: r, title: t, description: n, action: o, ...i }, p) => /* @__PURE__ */ l(
646
+ T.displayName = "IconTile";
647
+ const nt = p(
648
+ ({ className: n, icon: r, title: t, description: a, action: o, ...s }, c) => /* @__PURE__ */ l(
608
649
  "div",
609
650
  {
610
- ref: p,
611
- className: s(
651
+ ref: c,
652
+ className: i(
612
653
  "flex flex-col items-center rounded-card bg-card p-12 text-center shadow-card",
613
- a
654
+ n
614
655
  ),
615
- ...i,
656
+ ...s,
616
657
  children: [
617
- /* @__PURE__ */ e(z, { icon: r, tone: "neutral", size: "xl", className: "mb-5 text-subtle-foreground" }),
658
+ /* @__PURE__ */ e(T, { icon: r, tone: "neutral", size: "xl", className: "mb-5 text-subtle-foreground" }),
618
659
  /* @__PURE__ */ e("h3", { className: "mb-1.5 text-lg font-bold", children: t }),
619
- n ? /* @__PURE__ */ e("p", { className: "mb-[22px] max-w-[340px] text-sm leading-relaxed text-subtle-foreground", children: n }) : null,
660
+ a ? /* @__PURE__ */ e("p", { className: "mb-[22px] max-w-[340px] text-sm leading-relaxed text-subtle-foreground", children: a }) : null,
620
661
  o
621
662
  ]
622
663
  }
623
664
  )
624
665
  );
625
- Ye.displayName = "EmptyState";
626
- const q = c(
627
- ({ className: a, selected: r = !1, ...t }, n) => /* @__PURE__ */ e(
666
+ nt.displayName = "EmptyState";
667
+ const U = p(
668
+ ({ className: n, selected: r = !1, ...t }, a) => /* @__PURE__ */ e(
628
669
  "button",
629
670
  {
630
- ref: n,
671
+ ref: a,
631
672
  type: "button",
632
673
  "aria-pressed": r,
633
- className: s(
674
+ className: i(
634
675
  "cursor-pointer rounded-pill px-3.5 py-[7px] font-sans text-[13px] whitespace-nowrap transition-colors outline-none focus-visible:ring-3 focus-visible:ring-ring/25",
635
676
  r ? "bg-primary font-semibold text-primary-foreground" : "bg-secondary font-medium text-muted-foreground hover:bg-secondary-hover",
636
- a
677
+ n
637
678
  ),
638
679
  ...t
639
680
  }
640
681
  )
641
682
  );
642
- q.displayName = "FilterChip";
643
- const Ze = c(
644
- ({ className: a, items: r, value: t, onValueChange: n, ...o }, i) => /* @__PURE__ */ e("div", { ref: i, className: s("flex flex-wrap gap-2", a), ...o, children: r.map((p) => /* @__PURE__ */ e(
645
- q,
683
+ U.displayName = "FilterChip";
684
+ const at = p(
685
+ ({ className: n, items: r, value: t, onValueChange: a, ...o }, s) => /* @__PURE__ */ e("div", { ref: s, className: i("flex flex-wrap gap-2", n), ...o, children: r.map((c) => /* @__PURE__ */ e(
686
+ U,
646
687
  {
647
- selected: p.value === t,
648
- onClick: () => n(p.value),
649
- children: p.label
688
+ selected: c.value === t,
689
+ onClick: () => a(c.value),
690
+ children: c.label
650
691
  },
651
- p.value
692
+ c.value
652
693
  )) })
653
694
  );
654
- Ze.displayName = "FilterChips";
655
- const et = c(
656
- ({ className: a, total: r, filled: t, caption: n, onCupClick: o, ...i }, p) => /* @__PURE__ */ l("div", { ref: p, className: s("flex flex-col", a), ...i, children: [
695
+ at.displayName = "FilterChips";
696
+ const ot = p(
697
+ ({ className: n, total: r, filled: t, caption: a, onCupClick: o, ...s }, c) => /* @__PURE__ */ l("div", { ref: c, className: i("flex flex-col", n), ...s, children: [
657
698
  /* @__PURE__ */ e("div", { className: "flex gap-2.5", children: Array.from({ length: r }).map((d, m) => {
658
699
  const x = m < t;
659
700
  return /* @__PURE__ */ e(
@@ -663,7 +704,7 @@ const et = c(
663
704
  "aria-label": `Copo ${m + 1}${x ? " preenchido" : ""}`,
664
705
  onClick: o ? () => o(m) : void 0,
665
706
  disabled: !o,
666
- className: s(
707
+ className: i(
667
708
  "flex h-11 flex-1 items-center justify-center rounded-[14px] transition-colors",
668
709
  o && "cursor-pointer",
669
710
  x ? "bg-protein" : "bg-info-bg"
@@ -671,8 +712,8 @@ const et = c(
671
712
  children: /* @__PURE__ */ e(
672
713
  u,
673
714
  {
674
- icon: oe,
675
- className: s("size-[18px]", x ? "text-white" : "text-[#BFDBFE]"),
715
+ icon: ce,
716
+ className: i("size-[18px]", x ? "text-white" : "text-[#BFDBFE]"),
676
717
  strokeWidth: 2
677
718
  }
678
719
  )
@@ -680,29 +721,29 @@ const et = c(
680
721
  m
681
722
  );
682
723
  }) }),
683
- n ? /* @__PURE__ */ e("div", { className: "mt-2.5 text-xs text-subtle-foreground", children: n }) : null
724
+ a ? /* @__PURE__ */ e("div", { className: "mt-2.5 text-xs text-subtle-foreground", children: a }) : null
684
725
  ] })
685
726
  );
686
- et.displayName = "HydrationTracker";
687
- const U = c(
688
- ({ className: a, label: r, error: t, hint: n, startIcon: o, suffix: i, id: p, disabled: d, ...m }, x) => {
689
- const g = j(), f = p ?? g, v = !!t, B = s(
727
+ ot.displayName = "HydrationTracker";
728
+ const X = p(
729
+ ({ className: n, label: r, error: t, hint: a, startIcon: o, suffix: s, id: c, disabled: d, ...m }, x) => {
730
+ const g = F(), f = c ?? g, b = !!t, D = i(
690
731
  "flex items-center gap-2.5 rounded-field border bg-background px-3.5 transition-colors",
691
732
  "focus-within:border-ring focus-within:ring-3 focus-within:ring-ring/10",
692
- v && "border-error ring-3 ring-error/10 focus-within:border-error focus-within:ring-error/10",
693
- !v && "border-input",
733
+ b && "border-error ring-3 ring-error/10 focus-within:border-error focus-within:ring-error/10",
734
+ !b && "border-input",
694
735
  d && "opacity-60"
695
736
  );
696
- return /* @__PURE__ */ l("div", { className: s("flex flex-col", a), children: [
737
+ return /* @__PURE__ */ l("div", { className: i("flex flex-col", n), children: [
697
738
  r ? /* @__PURE__ */ e(
698
739
  "label",
699
740
  {
700
741
  htmlFor: f,
701
- className: s("mb-[7px] text-[13px] font-semibold", v && "text-error"),
742
+ className: i("mb-[7px] text-[13px] font-semibold", b && "text-error"),
702
743
  children: r
703
744
  }
704
745
  ) : null,
705
- /* @__PURE__ */ l("div", { className: B, children: [
746
+ /* @__PURE__ */ l("div", { className: D, children: [
706
747
  o ? /* @__PURE__ */ e(
707
748
  u,
708
749
  {
@@ -717,64 +758,64 @@ const U = c(
717
758
  ref: x,
718
759
  id: f,
719
760
  disabled: d,
720
- "aria-invalid": v,
761
+ "aria-invalid": b,
721
762
  className: "w-full min-w-0 bg-transparent py-3 font-sans text-sm text-foreground outline-none placeholder:text-subtle-foreground",
722
763
  ...m
723
764
  }
724
765
  ),
725
- i ? /* @__PURE__ */ e("span", { className: "font-mono text-xs text-subtle-foreground", children: i }) : null
766
+ s ? /* @__PURE__ */ e("span", { className: "font-mono text-xs text-subtle-foreground", children: s }) : null
726
767
  ] }),
727
768
  t ? /* @__PURE__ */ e("p", { className: "mt-1.5 text-xs text-error", children: t }) : null,
728
- !t && n ? /* @__PURE__ */ e("p", { className: "mt-1.5 text-xs text-subtle-foreground", children: n }) : null
769
+ !t && a ? /* @__PURE__ */ e("p", { className: "mt-1.5 text-xs text-subtle-foreground", children: a }) : null
729
770
  ] });
730
771
  }
731
772
  );
732
- U.displayName = "Input";
733
- const tt = c(
734
- ({ placeholder: a = "Buscar...", ...r }, t) => /* @__PURE__ */ e(U, { ref: t, type: "search", startIcon: se, placeholder: a, ...r })
773
+ X.displayName = "Input";
774
+ const st = p(
775
+ ({ placeholder: n = "Buscar...", ...r }, t) => /* @__PURE__ */ e(X, { ref: t, type: "search", startIcon: de, placeholder: n, ...r })
735
776
  );
736
- tt.displayName = "SearchInput";
737
- const S = c(
777
+ st.displayName = "SearchInput";
778
+ const B = p(
738
779
  ({
739
- className: a,
780
+ className: n,
740
781
  icon: r,
741
782
  iconTone: t = "neutral",
742
- title: n,
783
+ title: a,
743
784
  subtitle: o,
744
- trailing: i,
745
- interactive: p = !1,
785
+ trailing: s,
786
+ interactive: c = !1,
746
787
  ...d
747
788
  }, m) => /* @__PURE__ */ l(
748
789
  "div",
749
790
  {
750
791
  ref: m,
751
- className: s(
792
+ className: i(
752
793
  "flex items-center gap-4 rounded-list bg-muted p-4",
753
- p && "cursor-pointer transition-colors hover:bg-secondary",
754
- a
794
+ c && "cursor-pointer transition-colors hover:bg-secondary",
795
+ n
755
796
  ),
756
797
  ...d,
757
798
  children: [
758
- /* @__PURE__ */ e(z, { icon: r, tone: t, size: "lg" }),
799
+ /* @__PURE__ */ e(T, { icon: r, tone: t, size: "lg" }),
759
800
  /* @__PURE__ */ l("div", { className: "min-w-0 flex-1", children: [
760
- /* @__PURE__ */ e("div", { className: "truncate text-[15px] font-semibold", children: n }),
801
+ /* @__PURE__ */ e("div", { className: "truncate text-[15px] font-semibold", children: a }),
761
802
  o ? /* @__PURE__ */ e("div", { className: "truncate text-xs text-subtle-foreground", children: o }) : null
762
803
  ] }),
763
- i ? /* @__PURE__ */ e("div", { className: "flex items-center gap-3.5", children: i }) : null
804
+ s ? /* @__PURE__ */ e("div", { className: "flex items-center gap-3.5", children: s }) : null
764
805
  ]
765
806
  }
766
807
  )
767
808
  );
768
- S.displayName = "ListItem";
769
- const rt = c(
770
- ({ protein: a, carbs: r, fat: t, calories: n, ...o }, i) => /* @__PURE__ */ e(
771
- S,
809
+ B.displayName = "ListItem";
810
+ const it = p(
811
+ ({ protein: n, carbs: r, fat: t, calories: a, ...o }, s) => /* @__PURE__ */ e(
812
+ B,
772
813
  {
773
- ref: i,
774
- trailing: /* @__PURE__ */ l(A, { children: [
814
+ ref: s,
815
+ trailing: /* @__PURE__ */ l(P, { children: [
775
816
  /* @__PURE__ */ l("span", { className: "text-xs font-semibold text-protein", children: [
776
817
  "P ",
777
- a,
818
+ n,
778
819
  "g"
779
820
  ] }),
780
821
  /* @__PURE__ */ l("span", { className: "text-xs font-semibold text-carbs-text", children: [
@@ -788,7 +829,7 @@ const rt = c(
788
829
  "g"
789
830
  ] }),
790
831
  /* @__PURE__ */ l("span", { className: "min-w-16 text-right text-[15px] font-bold", children: [
791
- n,
832
+ a,
792
833
  " kcal"
793
834
  ] })
794
835
  ] }),
@@ -796,14 +837,14 @@ const rt = c(
796
837
  }
797
838
  )
798
839
  );
799
- rt.displayName = "MealListItem";
800
- const at = c(
801
- ({ duration: a, calories: r, ...t }, n) => /* @__PURE__ */ e(
802
- S,
840
+ it.displayName = "MealListItem";
841
+ const lt = p(
842
+ ({ duration: n, calories: r, ...t }, a) => /* @__PURE__ */ e(
843
+ B,
803
844
  {
804
- ref: n,
805
- trailing: /* @__PURE__ */ l(A, { children: [
806
- /* @__PURE__ */ e("span", { className: "text-[13px] font-semibold text-muted-foreground", children: a }),
845
+ ref: a,
846
+ trailing: /* @__PURE__ */ l(P, { children: [
847
+ /* @__PURE__ */ e("span", { className: "text-[13px] font-semibold text-muted-foreground", children: n }),
807
848
  /* @__PURE__ */ l("span", { className: "min-w-20 text-right text-[15px] font-bold", children: [
808
849
  r,
809
850
  " kcal"
@@ -813,46 +854,46 @@ const at = c(
813
854
  }
814
855
  )
815
856
  );
816
- at.displayName = "WorkoutListItem";
817
- const nt = c(
818
- ({ amount: a, muted: r = !1, ...t }, n) => /* @__PURE__ */ e(
819
- S,
857
+ lt.displayName = "WorkoutListItem";
858
+ const ct = p(
859
+ ({ amount: n, muted: r = !1, ...t }, a) => /* @__PURE__ */ e(
860
+ B,
820
861
  {
821
- ref: n,
822
- trailing: /* @__PURE__ */ e("span", { className: s("text-[15px] font-bold", r && "text-subtle-foreground"), children: a }),
862
+ ref: a,
863
+ trailing: /* @__PURE__ */ e("span", { className: i("text-[15px] font-bold", r && "text-subtle-foreground"), children: n }),
823
864
  ...t
824
865
  }
825
866
  )
826
867
  );
827
- nt.displayName = "HydrationListItem";
828
- const ot = {
868
+ ct.displayName = "HydrationListItem";
869
+ const dt = {
829
870
  protein: { bg: "bg-protein-bg", text: "text-protein" },
830
871
  carbs: { bg: "bg-carbs-bg", text: "text-carbs-text" },
831
872
  fat: { bg: "bg-fat-bg", text: "text-fat" },
832
873
  cardio: { bg: "bg-cardio-bg", text: "text-cardio" },
833
874
  accent: { bg: "bg-accent/15", text: "text-accent-foreground" },
834
875
  primary: { bg: "bg-secondary", text: "text-foreground" }
835
- }, st = {
876
+ }, pt = {
836
877
  protein: "var(--protein)",
837
878
  carbs: "var(--carbs)",
838
879
  fat: "var(--fat)",
839
880
  cardio: "var(--cardio)",
840
881
  accent: "var(--accent)",
841
882
  primary: "var(--primary)"
842
- }, it = c(
843
- ({ className: a, items: r, ...t }, n) => /* @__PURE__ */ l("div", { ref: n, className: s("flex flex-col", a), ...t, children: [
883
+ }, mt = p(
884
+ ({ className: n, items: r, ...t }, a) => /* @__PURE__ */ l("div", { ref: a, className: i("flex flex-col", n), ...t, children: [
844
885
  /* @__PURE__ */ e("div", { className: "grid gap-3.5", style: { gridTemplateColumns: `repeat(${r.length}, 1fr)` }, children: r.map((o) => {
845
- const i = ot[o.color];
846
- return /* @__PURE__ */ l("div", { className: s("rounded-tile p-5 text-center", i.bg), children: [
847
- /* @__PURE__ */ e("div", { className: s("text-[26px] font-bold", i.text), children: o.value }),
848
- /* @__PURE__ */ e("div", { className: s("mt-0.5 text-[13px] font-semibold", i.text), children: o.label }),
886
+ const s = dt[o.color];
887
+ return /* @__PURE__ */ l("div", { className: i("rounded-tile p-5 text-center", s.bg), children: [
888
+ /* @__PURE__ */ e("div", { className: i("text-[26px] font-bold", s.text), children: o.value }),
889
+ /* @__PURE__ */ e("div", { className: i("mt-0.5 text-[13px] font-semibold", s.text), children: o.label }),
849
890
  o.goal ? /* @__PURE__ */ e("div", { className: "mt-1.5 text-[11px] text-subtle-foreground", children: o.goal }) : null
850
891
  ] }, o.label);
851
892
  }) }),
852
893
  /* @__PURE__ */ e("div", { className: "mt-5 flex h-3 overflow-hidden rounded-pill", children: r.map((o) => /* @__PURE__ */ e(
853
894
  "div",
854
895
  {
855
- style: { width: `${o.percent}%`, background: st[o.color] }
896
+ style: { width: `${o.percent}%`, background: pt[o.color] }
856
897
  },
857
898
  o.label
858
899
  )) }),
@@ -864,28 +905,28 @@ const ot = {
864
905
  ] }, o.label)) })
865
906
  ] })
866
907
  );
867
- it.displayName = "MacroBreakdown";
868
- const lt = c(
869
- ({ className: a, name: r, badge: t, online: n = !0, avatar: o, ...i }, p) => /* @__PURE__ */ l(
908
+ mt.displayName = "MacroBreakdown";
909
+ const ut = p(
910
+ ({ className: n, name: r, badge: t, online: a = !0, avatar: o, ...s }, c) => /* @__PURE__ */ l(
870
911
  "div",
871
912
  {
872
- ref: p,
873
- className: s(
913
+ ref: c,
914
+ className: i(
874
915
  "inline-flex items-center gap-3.5 rounded-pill bg-card py-3 pr-[18px] pl-3 shadow-card",
875
- a
916
+ n
876
917
  ),
877
- ...i,
918
+ ...s,
878
919
  children: [
879
920
  /* @__PURE__ */ l("div", { className: "relative", children: [
880
921
  /* @__PURE__ */ e("div", { className: "flex size-[46px] items-center justify-center overflow-hidden rounded-full bg-linear-[135deg,#BEF264,#A3E635]", children: o ?? /* @__PURE__ */ e(
881
922
  u,
882
923
  {
883
- icon: ie,
924
+ icon: pe,
884
925
  className: "size-[22px] text-accent-foreground",
885
926
  strokeWidth: 2
886
927
  }
887
928
  ) }),
888
- n ? /* @__PURE__ */ e("span", { className: "absolute right-px bottom-px size-3 rounded-full border-2 border-card bg-success" }) : null
929
+ a ? /* @__PURE__ */ e("span", { className: "absolute right-px bottom-px size-3 rounded-full border-2 border-card bg-success" }) : null
889
930
  ] }),
890
931
  /* @__PURE__ */ l("div", { className: "pr-2", children: [
891
932
  /* @__PURE__ */ e("div", { className: "text-[15px] font-bold", children: r }),
@@ -895,21 +936,21 @@ const lt = c(
895
936
  }
896
937
  )
897
938
  );
898
- lt.displayName = "ProfileCard";
899
- const ct = {
939
+ ut.displayName = "ProfileCard";
940
+ const xt = {
900
941
  protein: "var(--protein)",
901
942
  carbs: "var(--carbs)",
902
943
  fat: "var(--fat)",
903
944
  cardio: "var(--cardio)",
904
945
  accent: "var(--accent)",
905
946
  primary: "var(--primary)"
906
- }, dt = c(
907
- ({ className: a, value: r, label: t, valueLabel: n, color: o = "accent", ...i }, p) => {
947
+ }, gt = p(
948
+ ({ className: n, value: r, label: t, valueLabel: a, color: o = "accent", ...s }, c) => {
908
949
  const d = Math.min(100, Math.max(0, r));
909
- return /* @__PURE__ */ l("div", { ref: p, className: s("flex flex-col", a), ...i, children: [
910
- t || n ? /* @__PURE__ */ l("div", { className: "mb-2 flex justify-between text-[13px]", children: [
950
+ return /* @__PURE__ */ l("div", { ref: c, className: i("flex flex-col", n), ...s, children: [
951
+ t || a ? /* @__PURE__ */ l("div", { className: "mb-2 flex justify-between text-[13px]", children: [
911
952
  t ? /* @__PURE__ */ e("span", { className: "font-semibold", children: t }) : /* @__PURE__ */ e("span", {}),
912
- n ? /* @__PURE__ */ e("span", { className: "text-muted-foreground", children: n }) : null
953
+ a ? /* @__PURE__ */ e("span", { className: "text-muted-foreground", children: a }) : null
913
954
  ] }) : null,
914
955
  /* @__PURE__ */ e(
915
956
  "div",
@@ -923,7 +964,7 @@ const ct = {
923
964
  "div",
924
965
  {
925
966
  className: "h-full rounded-pill transition-[width] duration-300",
926
- style: { width: `${d}%`, background: ct[o] }
967
+ style: { width: `${d}%`, background: xt[o] }
927
968
  }
928
969
  )
929
970
  }
@@ -931,25 +972,25 @@ const ct = {
931
972
  ] });
932
973
  }
933
974
  );
934
- dt.displayName = "ProgressBar";
935
- const pt = c(
975
+ gt.displayName = "ProgressBar";
976
+ const ft = p(
936
977
  ({
937
- className: a,
978
+ className: n,
938
979
  value: r,
939
980
  size: t = 140,
940
- strokeWidth: n = 14,
981
+ strokeWidth: a = 14,
941
982
  color: o = "var(--accent)",
942
- trackColor: i = "var(--secondary)",
943
- label: p,
983
+ trackColor: s = "var(--secondary)",
984
+ label: c,
944
985
  caption: d,
945
986
  ...m
946
987
  }, x) => {
947
- const g = Math.min(100, Math.max(0, r)), f = (t - n) / 2, v = 2 * Math.PI * f, B = v * (1 - g / 100);
988
+ const g = Math.min(100, Math.max(0, r)), f = (t - a) / 2, b = 2 * Math.PI * f, D = b * (1 - g / 100);
948
989
  return /* @__PURE__ */ l(
949
990
  "div",
950
991
  {
951
992
  ref: x,
952
- className: s("relative", a),
993
+ className: i("relative", n),
953
994
  style: { width: t, height: t },
954
995
  role: "progressbar",
955
996
  "aria-valuenow": g,
@@ -965,8 +1006,8 @@ const pt = c(
965
1006
  cy: t / 2,
966
1007
  r: f,
967
1008
  fill: "none",
968
- stroke: i,
969
- strokeWidth: n
1009
+ stroke: s,
1010
+ strokeWidth: a
970
1011
  }
971
1012
  ),
972
1013
  /* @__PURE__ */ e(
@@ -977,16 +1018,16 @@ const pt = c(
977
1018
  r: f,
978
1019
  fill: "none",
979
1020
  stroke: o,
980
- strokeWidth: n,
1021
+ strokeWidth: a,
981
1022
  strokeLinecap: "round",
982
- strokeDasharray: v,
983
- strokeDashoffset: B,
1023
+ strokeDasharray: b,
1024
+ strokeDashoffset: D,
984
1025
  className: "transition-[stroke-dashoffset] duration-500"
985
1026
  }
986
1027
  )
987
1028
  ] }),
988
1029
  /* @__PURE__ */ l("div", { className: "absolute inset-0 flex flex-col items-center justify-center", children: [
989
- /* @__PURE__ */ e("span", { className: "text-[30px] font-bold", children: p ?? `${Math.round(g)}%` }),
1030
+ /* @__PURE__ */ e("span", { className: "text-[30px] font-bold", children: c ?? `${Math.round(g)}%` }),
990
1031
  d ? /* @__PURE__ */ e("span", { className: "text-xs text-subtle-foreground", children: d }) : null
991
1032
  ] })
992
1033
  ]
@@ -994,109 +1035,216 @@ const pt = c(
994
1035
  );
995
1036
  }
996
1037
  );
997
- pt.displayName = "ProgressRing";
998
- const mt = c(({ className: a, ...r }, t) => /* @__PURE__ */ e(
999
- O.Root,
1038
+ ft.displayName = "ProgressRing";
1039
+ const bt = p(({ className: n, ...r }, t) => /* @__PURE__ */ e(
1040
+ K.Root,
1000
1041
  {
1001
1042
  ref: t,
1002
- className: s("flex flex-col gap-3.5", a),
1043
+ className: i("flex flex-col gap-3.5", n),
1003
1044
  ...r
1004
1045
  }
1005
1046
  ));
1006
- mt.displayName = "RadioGroup";
1007
- const ut = c(({ className: a, label: r, id: t, ...n }, o) => {
1008
- const i = j(), p = t ?? i, d = /* @__PURE__ */ e(
1009
- O.Item,
1047
+ bt.displayName = "RadioGroup";
1048
+ const ht = p(({ className: n, label: r, id: t, ...a }, o) => {
1049
+ const s = F(), c = t ?? s, d = /* @__PURE__ */ e(
1050
+ K.Item,
1010
1051
  {
1011
1052
  ref: o,
1012
- id: p,
1013
- className: s(
1053
+ id: c,
1054
+ className: i(
1014
1055
  "flex size-[22px] flex-none cursor-pointer items-center justify-center rounded-full border-2 bg-background transition-all outline-none",
1015
1056
  "border-input data-[state=checked]:border-[6px] data-[state=checked]:border-primary",
1016
1057
  "focus-visible:ring-3 focus-visible:ring-ring/25 disabled:cursor-not-allowed disabled:opacity-60",
1017
- a
1058
+ n
1018
1059
  ),
1019
- ...n
1060
+ ...a
1020
1061
  }
1021
1062
  );
1022
- return r ? /* @__PURE__ */ l("label", { htmlFor: p, className: "flex cursor-pointer items-center gap-3.5", children: [
1063
+ return r ? /* @__PURE__ */ l("label", { htmlFor: c, className: "flex cursor-pointer items-center gap-3.5", children: [
1023
1064
  d,
1024
1065
  /* @__PURE__ */ e("span", { className: "text-sm font-medium", children: r })
1025
1066
  ] }) : d;
1026
1067
  });
1027
- ut.displayName = "RadioGroupItem";
1028
- const Zt = b.Root, er = b.Group, tr = b.Value, xt = c(({ className: a, children: r, ...t }, n) => /* @__PURE__ */ l(
1029
- b.Trigger,
1068
+ ht.displayName = "RadioGroupItem";
1069
+ const vt = y("inline-grid w-full rounded-pill bg-secondary", {
1070
+ variants: {
1071
+ size: {
1072
+ sm: "gap-1 p-1",
1073
+ md: "gap-1.5 p-1.5"
1074
+ }
1075
+ },
1076
+ defaultVariants: { size: "md" }
1077
+ });
1078
+ function sr({
1079
+ className: n,
1080
+ options: r,
1081
+ value: t,
1082
+ onValueChange: a,
1083
+ size: o,
1084
+ ...s
1085
+ }) {
1086
+ return /* @__PURE__ */ e(
1087
+ "div",
1088
+ {
1089
+ className: i(vt({ size: o }), n),
1090
+ style: { gridTemplateColumns: `repeat(${r.length}, minmax(0, 1fr))` },
1091
+ ...s,
1092
+ children: r.map((c) => {
1093
+ const d = c.value === t;
1094
+ return /* @__PURE__ */ e(
1095
+ "button",
1096
+ {
1097
+ type: "button",
1098
+ "aria-pressed": d,
1099
+ onClick: () => a(c.value),
1100
+ className: i(
1101
+ "cursor-pointer rounded-pill px-3 py-2 font-sans text-[13px] font-semibold whitespace-nowrap transition-colors outline-none focus-visible:ring-3 focus-visible:ring-ring/25",
1102
+ d ? "bg-card text-foreground shadow-sm" : "text-muted-foreground hover:text-foreground"
1103
+ ),
1104
+ children: c.label
1105
+ },
1106
+ c.value
1107
+ );
1108
+ })
1109
+ }
1110
+ );
1111
+ }
1112
+ const ir = h.Root, lr = h.Group, cr = h.Value, Nt = p(({ className: n, children: r, ...t }, a) => /* @__PURE__ */ l(
1113
+ h.Trigger,
1030
1114
  {
1031
- ref: n,
1032
- className: s(
1115
+ ref: a,
1116
+ className: i(
1033
1117
  "flex w-full cursor-pointer items-center justify-between gap-2 rounded-field border border-input bg-background px-3.5 py-[11px] font-sans text-sm font-medium text-foreground transition-colors outline-none",
1034
1118
  "hover:border-subtle-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/10 disabled:cursor-not-allowed disabled:opacity-60 data-[placeholder]:text-subtle-foreground",
1035
- a
1119
+ n
1036
1120
  ),
1037
1121
  ...t,
1038
1122
  children: [
1039
1123
  r,
1040
- /* @__PURE__ */ e(b.Icon, { asChild: !0, children: /* @__PURE__ */ e(
1124
+ /* @__PURE__ */ e(h.Icon, { asChild: !0, children: /* @__PURE__ */ e(
1041
1125
  u,
1042
1126
  {
1043
- icon: W,
1127
+ icon: G,
1044
1128
  className: "size-4 text-muted-foreground transition-transform"
1045
1129
  }
1046
1130
  ) })
1047
1131
  ]
1048
1132
  }
1049
1133
  ));
1050
- xt.displayName = "SelectTrigger";
1051
- const gt = c(({ className: a, children: r, position: t = "popper", ...n }, o) => /* @__PURE__ */ e(b.Portal, { children: /* @__PURE__ */ e(
1052
- b.Content,
1134
+ Nt.displayName = "SelectTrigger";
1135
+ const yt = p(({ className: n, children: r, position: t = "popper", ...a }, o) => /* @__PURE__ */ e(h.Portal, { children: /* @__PURE__ */ e(
1136
+ h.Content,
1053
1137
  {
1054
1138
  ref: o,
1055
1139
  position: t,
1056
- className: s(
1140
+ className: i(
1057
1141
  "z-50 min-w-[8rem] overflow-hidden rounded-list border border-border bg-card p-1.5 shadow-[0_12px_32px_rgba(15,23,42,0.14)]",
1058
1142
  t === "popper" && "data-[side=bottom]:translate-y-1",
1059
- a
1143
+ n
1060
1144
  ),
1061
- ...n,
1145
+ ...a,
1062
1146
  children: /* @__PURE__ */ e(
1063
- b.Viewport,
1147
+ h.Viewport,
1064
1148
  {
1065
- className: s(t === "popper" && "w-full min-w-[var(--radix-select-trigger-width)]"),
1149
+ className: i(t === "popper" && "w-full min-w-[var(--radix-select-trigger-width)]"),
1066
1150
  children: r
1067
1151
  }
1068
1152
  )
1069
1153
  }
1070
1154
  ) }));
1071
- gt.displayName = "SelectContent";
1072
- const ft = c(({ className: a, children: r, ...t }, n) => /* @__PURE__ */ l(
1073
- b.Item,
1155
+ yt.displayName = "SelectContent";
1156
+ const wt = p(({ className: n, children: r, ...t }, a) => /* @__PURE__ */ l(
1157
+ h.Item,
1074
1158
  {
1075
- ref: n,
1076
- className: s(
1159
+ ref: a,
1160
+ className: i(
1077
1161
  "relative flex cursor-pointer items-center justify-between rounded-[9px] px-3 py-[9px] text-sm outline-none select-none",
1078
1162
  "focus:bg-secondary data-[state=checked]:font-semibold data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
1079
- a
1163
+ n
1080
1164
  ),
1081
1165
  ...t,
1082
1166
  children: [
1083
- /* @__PURE__ */ e(b.ItemText, { children: r }),
1084
- /* @__PURE__ */ e(b.ItemIndicator, { children: /* @__PURE__ */ e(u, { icon: E, className: "size-4 text-accent-foreground", strokeWidth: 3 }) })
1167
+ /* @__PURE__ */ e(h.ItemText, { children: r }),
1168
+ /* @__PURE__ */ e(h.ItemIndicator, { children: /* @__PURE__ */ e(u, { icon: j, className: "size-4 text-accent-foreground", strokeWidth: 3 }) })
1085
1169
  ]
1086
1170
  }
1087
1171
  ));
1088
- ft.displayName = "SelectItem";
1089
- const bt = c(
1090
- ({ className: a, icon: r, label: t, active: n = !1, ...o }, i) => /* @__PURE__ */ l(
1172
+ wt.displayName = "SelectItem";
1173
+ const J = p(
1174
+ ({
1175
+ className: n,
1176
+ title: r,
1177
+ description: t,
1178
+ icon: a,
1179
+ iconTone: o = "neutral",
1180
+ selected: s = !1,
1181
+ trailing: c,
1182
+ ...d
1183
+ }, m) => /* @__PURE__ */ l(
1184
+ "button",
1185
+ {
1186
+ ref: m,
1187
+ type: "button",
1188
+ "aria-pressed": s,
1189
+ className: i(
1190
+ "flex w-full cursor-pointer items-center gap-3.5 rounded-tile border-2 bg-card p-4 text-left transition-colors outline-none",
1191
+ "focus-visible:ring-3 focus-visible:ring-ring/25",
1192
+ s ? "border-primary" : "border-border hover:border-input",
1193
+ n
1194
+ ),
1195
+ ...d,
1196
+ children: [
1197
+ a ? /* @__PURE__ */ e(T, { icon: a, tone: s ? "accent" : o, size: "sm" }) : null,
1198
+ /* @__PURE__ */ l("div", { className: "min-w-0 flex-1", children: [
1199
+ /* @__PURE__ */ e("div", { className: "text-sm font-semibold", children: r }),
1200
+ t ? /* @__PURE__ */ e("div", { className: "mt-0.5 text-[13px] text-subtle-foreground", children: t }) : null
1201
+ ] }),
1202
+ c ? /* @__PURE__ */ e("div", { className: "flex-none", children: c }) : null
1203
+ ]
1204
+ }
1205
+ )
1206
+ );
1207
+ J.displayName = "SelectableCard";
1208
+ function dr({
1209
+ className: n,
1210
+ items: r,
1211
+ value: t,
1212
+ onValueChange: a,
1213
+ columns: o = 1,
1214
+ ...s
1215
+ }) {
1216
+ return /* @__PURE__ */ e(
1217
+ "div",
1218
+ {
1219
+ className: i("grid gap-2.5", n),
1220
+ style: { gridTemplateColumns: `repeat(${o}, minmax(0, 1fr))` },
1221
+ ...s,
1222
+ children: r.map((c) => /* @__PURE__ */ e(
1223
+ J,
1224
+ {
1225
+ title: c.title,
1226
+ description: c.description,
1227
+ icon: c.icon,
1228
+ iconTone: c.iconTone,
1229
+ selected: c.value === t,
1230
+ onClick: () => a(c.value)
1231
+ },
1232
+ c.value
1233
+ ))
1234
+ }
1235
+ );
1236
+ }
1237
+ const Ct = p(
1238
+ ({ className: n, icon: r, label: t, active: a = !1, ...o }, s) => /* @__PURE__ */ l(
1091
1239
  "button",
1092
1240
  {
1093
- ref: i,
1241
+ ref: s,
1094
1242
  type: "button",
1095
- "aria-current": n ? "page" : void 0,
1096
- className: s(
1243
+ "aria-current": a ? "page" : void 0,
1244
+ className: i(
1097
1245
  "flex w-full cursor-pointer items-center gap-3 rounded-pill px-4 py-[13px] text-left font-sans text-sm font-semibold transition-colors outline-none focus-visible:ring-3 focus-visible:ring-ring/25",
1098
- n ? "bg-primary text-primary-foreground" : "text-muted-foreground hover:bg-secondary hover:text-foreground",
1099
- a
1246
+ a ? "bg-primary text-primary-foreground" : "text-muted-foreground hover:bg-secondary hover:text-foreground",
1247
+ n
1100
1248
  ),
1101
1249
  ...o,
1102
1250
  children: [
@@ -1106,26 +1254,26 @@ const bt = c(
1106
1254
  }
1107
1255
  )
1108
1256
  );
1109
- bt.displayName = "NavItem";
1110
- const ht = c(
1111
- ({ className: a, children: r, ...t }, n) => /* @__PURE__ */ e(
1257
+ Ct.displayName = "NavItem";
1258
+ const kt = p(
1259
+ ({ className: n, children: r, ...t }, a) => /* @__PURE__ */ e(
1112
1260
  "nav",
1113
1261
  {
1114
- ref: n,
1115
- className: s("rounded-card bg-card p-[18px] pt-[22px] shadow-card", a),
1262
+ ref: a,
1263
+ className: i("rounded-card bg-card p-[18px] pt-[22px] shadow-card", n),
1116
1264
  ...t,
1117
1265
  children: r
1118
1266
  }
1119
1267
  )
1120
1268
  );
1121
- ht.displayName = "Sidebar";
1122
- const Nt = c(
1123
- ({ className: a, name: r, logo: t, ...n }, o) => /* @__PURE__ */ l(
1269
+ kt.displayName = "Sidebar";
1270
+ const Tt = p(
1271
+ ({ className: n, name: r, logo: t, ...a }, o) => /* @__PURE__ */ l(
1124
1272
  "div",
1125
1273
  {
1126
1274
  ref: o,
1127
- className: s("flex items-center gap-3 px-2.5 pt-1.5 pb-[22px]", a),
1128
- ...n,
1275
+ className: i("flex items-center gap-3 px-2.5 pt-1.5 pb-[22px]", n),
1276
+ ...a,
1129
1277
  children: [
1130
1278
  /* @__PURE__ */ e("div", { className: "flex size-[42px] items-center justify-center rounded-[14px] bg-accent text-lg font-bold text-accent-foreground", children: t ?? r.charAt(0) }),
1131
1279
  /* @__PURE__ */ e("span", { className: "text-lg font-bold", children: r })
@@ -1133,29 +1281,29 @@ const Nt = c(
1133
1281
  }
1134
1282
  )
1135
1283
  );
1136
- Nt.displayName = "SidebarBrand";
1137
- const vt = c(
1138
- ({ className: a, label: r, children: t, ...n }, o) => /* @__PURE__ */ l("div", { ref: o, className: s("flex flex-col", a), ...n, children: [
1284
+ Tt.displayName = "SidebarBrand";
1285
+ const It = p(
1286
+ ({ className: n, label: r, children: t, ...a }, o) => /* @__PURE__ */ l("div", { ref: o, className: i("flex flex-col", n), ...a, children: [
1139
1287
  r ? /* @__PURE__ */ e("span", { className: "px-2.5 pt-5 pb-2.5 font-mono text-[11px] tracking-widest text-subtle-foreground uppercase", children: r }) : null,
1140
1288
  /* @__PURE__ */ e("div", { className: "flex flex-col gap-1", children: t })
1141
1289
  ] })
1142
1290
  );
1143
- vt.displayName = "SidebarSection";
1144
- const yt = c(
1145
- ({ className: a, ...r }, t) => /* @__PURE__ */ e("div", { ref: t, className: s("skeleton rounded-[7px]", a), ...r })
1291
+ It.displayName = "SidebarSection";
1292
+ const Ft = p(
1293
+ ({ className: n, ...r }, t) => /* @__PURE__ */ e("div", { ref: t, className: i("skeleton rounded-[7px]", n), ...r })
1146
1294
  );
1147
- yt.displayName = "Skeleton";
1148
- const wt = c(
1149
- ({ className: a, ...r }, t) => /* @__PURE__ */ l(
1150
- T.Root,
1295
+ Ft.displayName = "Skeleton";
1296
+ const zt = p(
1297
+ ({ className: n, ...r }, t) => /* @__PURE__ */ l(
1298
+ I.Root,
1151
1299
  {
1152
1300
  ref: t,
1153
- className: s("relative flex h-[22px] w-full touch-none items-center select-none", a),
1301
+ className: i("relative flex h-[22px] w-full touch-none items-center select-none", n),
1154
1302
  ...r,
1155
1303
  children: [
1156
- /* @__PURE__ */ e(T.Track, { className: "relative h-2 w-full grow rounded-pill bg-secondary", children: /* @__PURE__ */ e(T.Range, { className: "absolute h-full rounded-pill bg-accent" }) }),
1304
+ /* @__PURE__ */ e(I.Track, { className: "relative h-2 w-full grow rounded-pill bg-secondary", children: /* @__PURE__ */ e(I.Range, { className: "absolute h-full rounded-pill bg-accent" }) }),
1157
1305
  /* @__PURE__ */ e(
1158
- T.Thumb,
1306
+ I.Thumb,
1159
1307
  {
1160
1308
  className: "block size-[22px] rounded-full border-[3px] border-primary bg-white shadow-[0_2px_6px_rgba(15,23,42,0.2)] outline-none focus-visible:ring-3 focus-visible:ring-ring/25 disabled:opacity-60",
1161
1309
  "aria-label": "Valor"
@@ -1165,8 +1313,8 @@ const wt = c(
1165
1313
  }
1166
1314
  )
1167
1315
  );
1168
- wt.displayName = "Slider";
1169
- const Ct = w("animate-spin-slow rounded-full border-secondary border-t-accent", {
1316
+ zt.displayName = "Slider";
1317
+ const St = y("animate-spin-slow rounded-full border-secondary border-t-accent", {
1170
1318
  variants: {
1171
1319
  size: {
1172
1320
  sm: "size-6 border-[3px]",
@@ -1175,20 +1323,20 @@ const Ct = w("animate-spin-slow rounded-full border-secondary border-t-accent",
1175
1323
  }
1176
1324
  },
1177
1325
  defaultVariants: { size: "md" }
1178
- }), kt = c(
1179
- ({ className: a, size: r, ...t }, n) => /* @__PURE__ */ e(
1326
+ }), Bt = p(
1327
+ ({ className: n, size: r, ...t }, a) => /* @__PURE__ */ e(
1180
1328
  "div",
1181
1329
  {
1182
- ref: n,
1330
+ ref: a,
1183
1331
  role: "status",
1184
1332
  "aria-label": "Carregando",
1185
- className: s(Ct({ size: r }), a),
1333
+ className: i(St({ size: r }), n),
1186
1334
  ...t
1187
1335
  }
1188
1336
  )
1189
1337
  );
1190
- kt.displayName = "Spinner";
1191
- const Tt = w("rounded-card p-6", {
1338
+ Bt.displayName = "Spinner";
1339
+ const Dt = y("rounded-card p-6", {
1192
1340
  variants: {
1193
1341
  variant: {
1194
1342
  light: "bg-card text-card-foreground shadow-card",
@@ -1197,28 +1345,40 @@ const Tt = w("rounded-card p-6", {
1197
1345
  }
1198
1346
  },
1199
1347
  defaultVariants: { variant: "light" }
1200
- }), D = {
1348
+ }), A = {
1201
1349
  light: "text-muted-foreground",
1202
1350
  accent: "text-accent-muted-foreground",
1203
1351
  dark: "text-subtle-foreground"
1204
- }, It = {
1352
+ }, At = {
1205
1353
  light: "neutral",
1206
1354
  accent: "onAccent",
1207
1355
  dark: "onDark"
1208
- }, Ft = c(
1209
- ({ className: a, variant: r = "light", icon: t, iconTone: n, label: o, value: i, unit: p, trend: d, progress: m, ...x }, g) => {
1210
- const f = r ?? "light";
1211
- return /* @__PURE__ */ l("div", { ref: g, className: s(Tt({ variant: r }), a), ...x, children: [
1356
+ }, Pt = p(
1357
+ ({
1358
+ className: n,
1359
+ variant: r = "light",
1360
+ icon: t,
1361
+ iconTone: a,
1362
+ label: o,
1363
+ value: s,
1364
+ unit: c,
1365
+ trend: d,
1366
+ progress: m,
1367
+ footer: x,
1368
+ ...g
1369
+ }, f) => {
1370
+ const b = r ?? "light";
1371
+ return /* @__PURE__ */ l("div", { ref: f, className: i(Dt({ variant: r }), n), ...g, children: [
1212
1372
  /* @__PURE__ */ l("div", { className: "mb-[18px] flex items-start justify-between", children: [
1213
- /* @__PURE__ */ e(z, { icon: t, tone: n ?? It[f] }),
1373
+ /* @__PURE__ */ e(T, { icon: t, tone: a ?? At[b] }),
1214
1374
  d ? /* @__PURE__ */ e("div", { children: d }) : null
1215
1375
  ] }),
1216
- /* @__PURE__ */ e("div", { className: s("mb-1 text-[13px]", D[f]), children: o }),
1376
+ /* @__PURE__ */ e("div", { className: i("mb-1 text-[13px]", A[b]), children: o }),
1217
1377
  /* @__PURE__ */ l("div", { className: "text-[34px] leading-none font-bold tracking-tight", children: [
1218
- i,
1219
- p ? /* @__PURE__ */ e("span", { className: s("ml-1 text-[15px] font-medium", D[f]), children: p }) : null
1378
+ s,
1379
+ c ? /* @__PURE__ */ e("span", { className: i("ml-1 text-[15px] font-medium", A[b]), children: c }) : null
1220
1380
  ] }),
1221
- m ? /* @__PURE__ */ l(A, { children: [
1381
+ m ? /* @__PURE__ */ l(P, { children: [
1222
1382
  /* @__PURE__ */ e("div", { className: "mt-4 h-1.5 overflow-hidden rounded-pill bg-secondary", children: /* @__PURE__ */ e(
1223
1383
  "div",
1224
1384
  {
@@ -1229,87 +1389,123 @@ const Tt = w("rounded-card p-6", {
1229
1389
  }
1230
1390
  }
1231
1391
  ) }),
1232
- m.caption ? /* @__PURE__ */ e("div", { className: s("mt-2 text-xs", D[f]), children: m.caption }) : null
1233
- ] }) : null
1392
+ m.caption ? /* @__PURE__ */ e("div", { className: i("mt-2 text-xs", A[b]), children: m.caption }) : null
1393
+ ] }) : null,
1394
+ x ? /* @__PURE__ */ e("div", { className: "mt-[18px]", children: x }) : null
1234
1395
  ] });
1235
1396
  }
1236
1397
  );
1237
- Ft.displayName = "StatCard";
1238
- const zt = c(
1239
- ({ className: a, ...r }, t) => /* @__PURE__ */ e(
1398
+ Pt.displayName = "StatCard";
1399
+ const Et = p(
1400
+ ({ className: n, ...r }, t) => /* @__PURE__ */ e(
1240
1401
  L.Root,
1241
1402
  {
1242
1403
  ref: t,
1243
- className: s(
1404
+ className: i(
1244
1405
  "peer inline-flex h-[27px] w-[46px] flex-none cursor-pointer items-center rounded-pill p-[3px] transition-colors outline-none",
1245
1406
  "focus-visible:ring-3 focus-visible:ring-ring/25 disabled:cursor-not-allowed disabled:opacity-60",
1246
1407
  "bg-input data-[state=checked]:bg-accent",
1247
- a
1408
+ n
1248
1409
  ),
1249
1410
  ...r,
1250
1411
  children: /* @__PURE__ */ e(L.Thumb, { className: "pointer-events-none block size-[21px] rounded-full bg-white shadow-[0_1px_3px_rgba(15,23,42,0.3)] transition-transform data-[state=checked]:translate-x-[19px]" })
1251
1412
  }
1252
1413
  )
1253
1414
  );
1254
- zt.displayName = "Switch";
1255
- const rr = I.Root, St = c(({ className: a, ...r }, t) => /* @__PURE__ */ e(
1256
- I.List,
1415
+ Et.displayName = "Switch";
1416
+ const pr = z.Root, jt = p(({ className: n, ...r }, t) => /* @__PURE__ */ e(
1417
+ z.List,
1257
1418
  {
1258
1419
  ref: t,
1259
- className: s("inline-flex items-center gap-1.5 rounded-pill bg-secondary p-1.5", a),
1420
+ className: i("inline-flex items-center gap-1.5 rounded-pill bg-secondary p-1.5", n),
1260
1421
  ...r
1261
1422
  }
1262
1423
  ));
1263
- St.displayName = "TabsList";
1264
- const Bt = c(({ className: a, ...r }, t) => /* @__PURE__ */ e(
1265
- I.Trigger,
1424
+ jt.displayName = "TabsList";
1425
+ const _t = p(({ className: n, ...r }, t) => /* @__PURE__ */ e(
1426
+ z.Trigger,
1266
1427
  {
1267
1428
  ref: t,
1268
- className: s(
1429
+ className: i(
1269
1430
  "cursor-pointer rounded-pill px-[18px] py-[9px] font-sans text-sm font-semibold whitespace-nowrap text-muted-foreground transition-colors outline-none",
1270
1431
  "hover:text-foreground focus-visible:ring-3 focus-visible:ring-ring/25",
1271
1432
  "data-[state=active]:bg-primary data-[state=active]:text-primary-foreground data-[state=active]:hover:text-primary-foreground",
1272
- a
1433
+ n
1273
1434
  ),
1274
1435
  ...r
1275
1436
  }
1276
1437
  ));
1277
- Bt.displayName = "TabsTrigger";
1278
- const Dt = c(({ className: a, ...r }, t) => /* @__PURE__ */ e(
1279
- I.Content,
1438
+ _t.displayName = "TabsTrigger";
1439
+ const Rt = p(({ className: n, ...r }, t) => /* @__PURE__ */ e(
1440
+ z.Content,
1280
1441
  {
1281
1442
  ref: t,
1282
- className: s("mt-5 outline-none focus-visible:ring-3 focus-visible:ring-ring/25", a),
1443
+ className: i("mt-5 outline-none focus-visible:ring-3 focus-visible:ring-ring/25", n),
1283
1444
  ...r
1284
1445
  }
1285
1446
  ));
1286
- Dt.displayName = "TabsContent";
1287
- const X = ue(null);
1288
- function ar() {
1289
- const a = me(X);
1290
- if (!a) throw new Error("useToast deve ser usado dentro de ToastProvider");
1291
- return a;
1447
+ Rt.displayName = "TabsContent";
1448
+ const Vt = p(
1449
+ ({ className: n, label: r, error: t, hint: a, id: o, disabled: s, rows: c = 3, ...d }, m) => {
1450
+ const x = F(), g = o ?? x, f = !!t;
1451
+ return /* @__PURE__ */ l("div", { className: i("flex flex-col", n), children: [
1452
+ r ? /* @__PURE__ */ e(
1453
+ "label",
1454
+ {
1455
+ htmlFor: g,
1456
+ className: i("mb-[7px] text-[13px] font-semibold", f && "text-error"),
1457
+ children: r
1458
+ }
1459
+ ) : null,
1460
+ /* @__PURE__ */ e(
1461
+ "textarea",
1462
+ {
1463
+ ref: m,
1464
+ id: g,
1465
+ rows: c,
1466
+ disabled: s,
1467
+ "aria-invalid": f,
1468
+ className: i(
1469
+ "w-full min-w-0 resize-y rounded-field border bg-background px-3.5 py-3 font-sans text-sm text-foreground transition-colors outline-none",
1470
+ "placeholder:text-subtle-foreground focus:border-ring focus:ring-3 focus:ring-ring/10",
1471
+ f ? "border-error ring-3 ring-error/10 focus:border-error focus:ring-error/10" : "border-input",
1472
+ s && "opacity-60"
1473
+ ),
1474
+ ...d
1475
+ }
1476
+ ),
1477
+ t ? /* @__PURE__ */ e("p", { className: "mt-1.5 text-xs text-error", children: t }) : null,
1478
+ !t && a ? /* @__PURE__ */ e("p", { className: "mt-1.5 text-xs text-subtle-foreground", children: a }) : null
1479
+ ] });
1480
+ }
1481
+ );
1482
+ Vt.displayName = "Textarea";
1483
+ const Q = be(null);
1484
+ function mr() {
1485
+ const n = fe(Q);
1486
+ if (!n) throw new Error("useToast deve ser usado dentro de ToastProvider");
1487
+ return n;
1292
1488
  }
1293
- function nr({ children: a, duration: r = 3600 }) {
1294
- const [t, n] = de([]), o = V((d) => {
1295
- n((m) => {
1489
+ function ur({ children: n, duration: r = 3600 }) {
1490
+ const [t, a] = xe([]), o = V((d) => {
1491
+ a((m) => {
1296
1492
  var g;
1297
1493
  const x = (((g = m[m.length - 1]) == null ? void 0 : g.id) ?? 0) + 1;
1298
1494
  return [...m, { ...d, id: x, open: !0 }];
1299
1495
  });
1300
- }, []), i = V((d, m) => {
1301
- m || n((x) => x.filter((g) => g.id !== d));
1302
- }, []), p = pe(() => ({ toast: o }), [o]);
1303
- return /* @__PURE__ */ e(X.Provider, { value: p, children: /* @__PURE__ */ l(C.Provider, { duration: r, swipeDirection: "right", children: [
1304
- a,
1496
+ }, []), s = V((d, m) => {
1497
+ m || a((x) => x.filter((g) => g.id !== d));
1498
+ }, []), c = ge(() => ({ toast: o }), [o]);
1499
+ return /* @__PURE__ */ e(Q.Provider, { value: c, children: /* @__PURE__ */ l(C.Provider, { duration: r, swipeDirection: "right", children: [
1500
+ n,
1305
1501
  t.map((d) => {
1306
- const m = d.icon ?? E;
1502
+ const m = d.icon ?? j;
1307
1503
  return /* @__PURE__ */ l(
1308
1504
  C.Root,
1309
1505
  {
1310
1506
  open: d.open,
1311
1507
  duration: d.duration ?? r,
1312
- onOpenChange: (x) => i(d.id, x),
1508
+ onOpenChange: (x) => s(d.id, x),
1313
1509
  className: "flex items-center gap-3.5 rounded-list bg-primary px-[18px] py-[15px] text-primary-foreground shadow-[0_16px_40px_rgba(15,23,42,0.35)] data-[state=open]:animate-toast-in",
1314
1510
  children: [
1315
1511
  /* @__PURE__ */ e("div", { className: "flex size-[38px] flex-none items-center justify-center rounded-[12px] bg-accent/20", children: /* @__PURE__ */ e(u, { icon: m, className: "size-[19px] text-accent", strokeWidth: 3 }) }),
@@ -1322,7 +1518,7 @@ function nr({ children: a, duration: r = 3600 }) {
1322
1518
  {
1323
1519
  "aria-label": "Fechar",
1324
1520
  className: "flex-none cursor-pointer text-muted-foreground transition-colors hover:text-primary-foreground",
1325
- children: /* @__PURE__ */ e(u, { icon: P, className: "size-[17px]" })
1521
+ children: /* @__PURE__ */ e(u, { icon: E, className: "size-[17px]" })
1326
1522
  }
1327
1523
  )
1328
1524
  ]
@@ -1333,67 +1529,67 @@ function nr({ children: a, duration: r = 3600 }) {
1333
1529
  /* @__PURE__ */ e(
1334
1530
  C.Viewport,
1335
1531
  {
1336
- className: s(
1532
+ className: i(
1337
1533
  "fixed right-6 bottom-6 z-95 flex w-[340px] max-w-[calc(100vw-2rem)] flex-col gap-3 outline-none"
1338
1534
  )
1339
1535
  }
1340
1536
  )
1341
1537
  ] }) });
1342
1538
  }
1343
- const or = h.Provider, sr = h.Root, ir = h.Trigger, J = c(({ className: a, sideOffset: r = 8, children: t, ...n }, o) => /* @__PURE__ */ e(h.Portal, { children: /* @__PURE__ */ l(
1344
- h.Content,
1539
+ const xr = v.Provider, gr = v.Root, fr = v.Trigger, Y = p(({ className: n, sideOffset: r = 8, children: t, ...a }, o) => /* @__PURE__ */ e(v.Portal, { children: /* @__PURE__ */ l(
1540
+ v.Content,
1345
1541
  {
1346
1542
  ref: o,
1347
1543
  sideOffset: r,
1348
- className: s(
1544
+ className: i(
1349
1545
  "z-95 rounded-[10px] bg-primary px-3 py-2 text-xs font-medium text-primary-foreground shadow-[0_6px_18px_rgba(15,23,42,0.25)] data-[state=delayed-open]:animate-fade-in",
1350
- a
1546
+ n
1351
1547
  ),
1352
- ...n,
1548
+ ...a,
1353
1549
  children: [
1354
1550
  t,
1355
- /* @__PURE__ */ e(h.Arrow, { className: "fill-primary", width: 10, height: 5 })
1551
+ /* @__PURE__ */ e(v.Arrow, { className: "fill-primary", width: 10, height: 5 })
1356
1552
  ]
1357
1553
  }
1358
1554
  ) }));
1359
- J.displayName = "TooltipContent";
1360
- function lr({ content: a, children: r, side: t = "top", delayDuration: n = 150 }) {
1361
- return /* @__PURE__ */ e(h.Provider, { delayDuration: n, children: /* @__PURE__ */ l(h.Root, { children: [
1362
- /* @__PURE__ */ e(h.Trigger, { asChild: !0, children: r }),
1363
- /* @__PURE__ */ e(J, { side: t, children: a })
1555
+ Y.displayName = "TooltipContent";
1556
+ function br({ content: n, children: r, side: t = "top", delayDuration: a = 150 }) {
1557
+ return /* @__PURE__ */ e(v.Provider, { delayDuration: a, children: /* @__PURE__ */ l(v.Root, { children: [
1558
+ /* @__PURE__ */ e(v.Trigger, { asChild: !0, children: r }),
1559
+ /* @__PURE__ */ e(Y, { side: t, children: n })
1364
1560
  ] }) });
1365
1561
  }
1366
- const At = c(
1367
- ({ className: a, brand: r, actions: t, title: n, subtitle: o, children: i, ...p }, d) => /* @__PURE__ */ l(
1562
+ const $t = p(
1563
+ ({ className: n, brand: r, actions: t, title: a, subtitle: o, children: s, ...c }, d) => /* @__PURE__ */ l(
1368
1564
  "div",
1369
1565
  {
1370
1566
  ref: d,
1371
- className: s("overflow-hidden rounded-card bg-card shadow-card", a),
1372
- ...p,
1567
+ className: i("overflow-hidden rounded-card bg-card shadow-card", n),
1568
+ ...c,
1373
1569
  children: [
1374
1570
  /* @__PURE__ */ l("div", { className: "flex items-center justify-between border-b border-border-soft px-6 py-[18px]", children: [
1375
1571
  /* @__PURE__ */ e("div", { className: "text-[15px] font-bold tracking-wide", children: r }),
1376
1572
  t ? /* @__PURE__ */ e("div", { className: "flex items-center gap-[18px] text-muted-foreground", children: t }) : null
1377
1573
  ] }),
1378
- n || o || i ? /* @__PURE__ */ l("div", { className: "p-6", children: [
1379
- n ? /* @__PURE__ */ e("h3", { className: "mb-1 text-[28px] font-bold tracking-tight", children: n }) : null,
1574
+ a || o || s ? /* @__PURE__ */ l("div", { className: "p-6", children: [
1575
+ a ? /* @__PURE__ */ e("h3", { className: "mb-1 text-[28px] font-bold tracking-tight", children: a }) : null,
1380
1576
  o ? /* @__PURE__ */ e("p", { className: "text-sm text-muted-foreground", children: o }) : null,
1381
- i
1577
+ s
1382
1578
  ] }) : null
1383
1579
  ]
1384
1580
  }
1385
1581
  )
1386
1582
  );
1387
- At.displayName = "Topbar";
1388
- const Pt = c(
1389
- ({ className: a, label: r, delta: t, direction: n, positiveIsUp: o = !0, ...i }, p) => {
1390
- const d = n === "up" ? o : !o, m = n === "up" ? le : ce;
1391
- return /* @__PURE__ */ l("div", { ref: p, className: s("flex items-center justify-between", a), ...i, children: [
1583
+ $t.displayName = "Topbar";
1584
+ const Lt = p(
1585
+ ({ className: n, label: r, delta: t, direction: a, positiveIsUp: o = !0, ...s }, c) => {
1586
+ const d = a === "up" ? o : !o, m = a === "up" ? me : ue;
1587
+ return /* @__PURE__ */ l("div", { ref: c, className: i("flex items-center justify-between", n), ...s, children: [
1392
1588
  /* @__PURE__ */ e("span", { className: "text-sm font-semibold", children: r }),
1393
1589
  /* @__PURE__ */ l(
1394
1590
  "span",
1395
1591
  {
1396
- className: s(
1592
+ className: i(
1397
1593
  "inline-flex items-center gap-1.5 text-sm font-bold",
1398
1594
  d ? "text-success" : "text-error"
1399
1595
  ),
@@ -1406,96 +1602,101 @@ const Pt = c(
1406
1602
  ] });
1407
1603
  }
1408
1604
  );
1409
- Pt.displayName = "TrendItem";
1410
- const Et = c(
1411
- ({ className: a, ...r }, t) => /* @__PURE__ */ e("div", { ref: t, className: s("flex flex-col gap-4", a), ...r })
1605
+ Lt.displayName = "TrendItem";
1606
+ const Mt = p(
1607
+ ({ className: n, ...r }, t) => /* @__PURE__ */ e("div", { ref: t, className: i("flex flex-col gap-4", n), ...r })
1412
1608
  );
1413
- Et.displayName = "TrendList";
1609
+ Mt.displayName = "TrendList";
1414
1610
  export {
1415
- Gt as Accordion,
1416
- Ce as AccordionContent,
1417
- ye as AccordionItem,
1418
- we as AccordionTrigger,
1419
- Kt as AreaChart,
1420
- Te as Badge,
1421
- Be as Banner,
1422
- qt as BarChart,
1423
- Ae as Button,
1424
- Ee as Card,
1425
- Ve as CardContent,
1426
- Re as CardDescription,
1427
- je as CardHeader,
1428
- _e as CardTitle,
1429
- Me as ChartEmptyState,
1430
- We as ChartLegend,
1611
+ Jt as Accordion,
1612
+ Fe as AccordionContent,
1613
+ Te as AccordionItem,
1614
+ Ie as AccordionTrigger,
1615
+ Zt as AreaChart,
1616
+ Se as Badge,
1617
+ Ee as Banner,
1618
+ er as BarChart,
1619
+ _e as Button,
1620
+ Ve as Card,
1621
+ We as CardContent,
1622
+ Me as CardDescription,
1623
+ $e as CardHeader,
1624
+ Le as CardTitle,
1625
+ Oe as ChartEmptyState,
1626
+ Ke as ChartLegend,
1431
1627
  R as ChartTooltip,
1432
- Ge as Checkbox,
1433
- Xt as DataTable,
1434
- Jt as Dialog,
1435
- Yt as DialogClose,
1436
- Oe as DialogContent,
1437
- Ue as DialogDescription,
1438
- Xe as DialogFooter,
1439
- Ke as DialogHeader,
1440
- K as DialogOverlay,
1441
- He as DialogPortal,
1442
- qe as DialogTitle,
1443
- Qt as DialogTrigger,
1444
- Ut as DonutChart,
1445
- Ye as EmptyState,
1446
- q as FilterChip,
1447
- Ze as FilterChips,
1448
- nt as HydrationListItem,
1449
- et as HydrationTracker,
1450
- z as IconTile,
1451
- U as Input,
1452
- S as ListItem,
1453
- it as MacroBreakdown,
1454
- rt as MealListItem,
1455
- Jt as Modal,
1456
- bt as NavItem,
1457
- lt as ProfileCard,
1458
- dt as ProgressBar,
1459
- pt as ProgressRing,
1460
- mt as RadioGroup,
1461
- ut as RadioGroupItem,
1462
- tt as SearchInput,
1463
- Zt as Select,
1464
- gt as SelectContent,
1465
- er as SelectGroup,
1466
- ft as SelectItem,
1467
- xt as SelectTrigger,
1468
- tr as SelectValue,
1469
- ht as Sidebar,
1470
- Nt as SidebarBrand,
1471
- vt as SidebarSection,
1472
- yt as Skeleton,
1473
- wt as Slider,
1474
- kt as Spinner,
1475
- Ft as StatCard,
1476
- zt as Switch,
1477
- rr as Tabs,
1478
- Dt as TabsContent,
1479
- St as TabsList,
1480
- Bt as TabsTrigger,
1481
- nr as ToastProvider,
1482
- lr as Tooltip,
1483
- J as TooltipContent,
1484
- or as TooltipProvider,
1485
- sr as TooltipRoot,
1486
- ir as TooltipTrigger,
1487
- At as Topbar,
1488
- Pt as TrendItem,
1489
- Et as TrendList,
1490
- at as WorkoutListItem,
1491
- ke as badgeVariants,
1492
- De as buttonVariants,
1493
- Pe as cardVariants,
1494
- F as chartColors,
1495
- s as cn,
1496
- y as colors,
1497
- Ot as fontFamily,
1498
- Je as iconTileVariants,
1499
- Ht as radius,
1500
- ar as useToast
1628
+ qe as Checkbox,
1629
+ rr as DataTable,
1630
+ Ue as DateNavigator,
1631
+ nr as Dialog,
1632
+ or as DialogClose,
1633
+ Je as DialogContent,
1634
+ Ze as DialogDescription,
1635
+ et as DialogFooter,
1636
+ Qe as DialogHeader,
1637
+ q as DialogOverlay,
1638
+ Xe as DialogPortal,
1639
+ Ye as DialogTitle,
1640
+ ar as DialogTrigger,
1641
+ tr as DonutChart,
1642
+ nt as EmptyState,
1643
+ U as FilterChip,
1644
+ at as FilterChips,
1645
+ ct as HydrationListItem,
1646
+ ot as HydrationTracker,
1647
+ T as IconTile,
1648
+ X as Input,
1649
+ B as ListItem,
1650
+ mt as MacroBreakdown,
1651
+ it as MealListItem,
1652
+ nr as Modal,
1653
+ Ct as NavItem,
1654
+ ut as ProfileCard,
1655
+ gt as ProgressBar,
1656
+ ft as ProgressRing,
1657
+ bt as RadioGroup,
1658
+ ht as RadioGroupItem,
1659
+ st as SearchInput,
1660
+ sr as SegmentedControl,
1661
+ ir as Select,
1662
+ yt as SelectContent,
1663
+ lr as SelectGroup,
1664
+ wt as SelectItem,
1665
+ Nt as SelectTrigger,
1666
+ cr as SelectValue,
1667
+ J as SelectableCard,
1668
+ dr as SelectableCardGroup,
1669
+ kt as Sidebar,
1670
+ Tt as SidebarBrand,
1671
+ It as SidebarSection,
1672
+ Ft as Skeleton,
1673
+ zt as Slider,
1674
+ Bt as Spinner,
1675
+ Pt as StatCard,
1676
+ Et as Switch,
1677
+ pr as Tabs,
1678
+ Rt as TabsContent,
1679
+ jt as TabsList,
1680
+ _t as TabsTrigger,
1681
+ Vt as Textarea,
1682
+ ur as ToastProvider,
1683
+ br as Tooltip,
1684
+ Y as TooltipContent,
1685
+ xr as TooltipProvider,
1686
+ gr as TooltipRoot,
1687
+ fr as TooltipTrigger,
1688
+ $t as Topbar,
1689
+ Lt as TrendItem,
1690
+ Mt as TrendList,
1691
+ lt as WorkoutListItem,
1692
+ ze as badgeVariants,
1693
+ je as buttonVariants,
1694
+ Re as cardVariants,
1695
+ S as chartColors,
1696
+ i as cn,
1697
+ w as colors,
1698
+ Yt as fontFamily,
1699
+ tt as iconTileVariants,
1700
+ Qt as radius,
1701
+ mr as useToast
1501
1702
  };