@grupo-elo-editorial/shared-ui-react 1.0.0 → 1.2.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,23 +1,25 @@
1
- import { clsx as K } from "clsx";
2
- import { twMerge as J } from "tailwind-merge";
3
- import { jsx as e, jsxs as s, Fragment as j } from "react/jsx-runtime";
4
- import { forwardRef as N, useState as k, useEffect as D } from "react";
5
- import { Loader2 as E, User as Y, Star as Z, CheckIcon as V, ChevronDownIcon as B, ChevronUpIcon as O, CircleIcon as ee, Heart as te, ShoppingCart as _, Search as L, X as ae, Minus as H, Plus as q, ChevronRight as F, FileX as re, Package as ie, AlertCircle as se, RefreshCw as oe, Home as ne, XIcon as G, Eye as le, Moon as de, Sun as ce, ChevronLeft as ue } from "lucide-react";
6
- import { cva as $ } from "class-variance-authority";
7
- import * as y from "@radix-ui/react-select";
8
- import * as A from "@radix-ui/react-checkbox";
1
+ "use client";
2
+ import { clsx as J } from "clsx";
3
+ import { twMerge as ee } from "tailwind-merge";
4
+ import { jsx as e, jsxs as i, Fragment as A } from "react/jsx-runtime";
5
+ import { forwardRef as N, useState as k, useEffect as M } from "react";
6
+ import { Loader2 as V, User as te, Star as ae, CheckIcon as U, ChevronDownIcon as E, ChevronUpIcon as re, CircleIcon as oe, ShoppingCart as L, Heart as ie, Search as Q, X as ne, Minus as se, Plus as le, ChevronRight as W, FileX as de, Package as ce, AlertCircle as ue, RefreshCw as me, Home as fe, XIcon as K, Accessibility as ge, ZoomOut as ve, ZoomIn as pe, Moon as be, Sun as he, ChevronLeft as xe, Menu as Ne, ChevronDown as O, Instagram as we, Facebook as ye, Youtube as ke, Linkedin as ze, Mail as Ce } from "lucide-react";
7
+ import { cva as P } from "class-variance-authority";
8
+ import * as z from "@radix-ui/react-select";
9
+ import * as F from "@radix-ui/react-checkbox";
9
10
  import * as T from "@radix-ui/react-radio-group";
10
- import * as M from "@radix-ui/react-switch";
11
- import { Slot as me } from "@radix-ui/react-slot";
12
- import * as I from "@radix-ui/react-accordion";
13
- import * as C from "@radix-ui/react-tooltip";
14
- import { toast as jt } from "sonner";
15
- import { Progress as Pt } from "@radix-ui/react-progress";
11
+ import * as q from "@radix-ui/react-switch";
12
+ import { Slot as Se } from "@radix-ui/react-slot";
13
+ import * as _ from "@radix-ui/react-accordion";
14
+ import * as I from "@radix-ui/react-tooltip";
15
+ import { toast as na } from "sonner";
16
+ import { Progress as la } from "@radix-ui/react-progress";
16
17
  import * as w from "@radix-ui/react-dialog";
17
- function i(...a) {
18
- return J(K(a));
18
+ import * as S from "@radix-ui/react-navigation-menu";
19
+ function o(...a) {
20
+ return ee(J(a));
19
21
  }
20
- const Q = $(
22
+ const X = P(
21
23
  "inline-flex items-center justify-center gap-2 rounded-lg font-medium transition-all duration-200 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 whitespace-nowrap",
22
24
  {
23
25
  variants: {
@@ -43,43 +45,43 @@ const Q = $(
43
45
  size: "md"
44
46
  }
45
47
  }
46
- ), z = N(
48
+ ), C = N(
47
49
  ({
48
50
  className: a,
49
51
  variant: t,
50
52
  size: r,
51
- fullWidth: o,
52
- isLoading: n,
53
- leftIcon: d,
53
+ fullWidth: n,
54
+ isLoading: s,
55
+ leftIcon: c,
54
56
  rightIcon: l,
55
- children: c,
56
- disabled: g,
57
- ...f
58
- }, p) => /* @__PURE__ */ e(
57
+ children: m,
58
+ disabled: f,
59
+ ...u
60
+ }, v) => /* @__PURE__ */ e(
59
61
  "button",
60
62
  {
61
- className: i(Q({ variant: t, size: r, fullWidth: o, className: a })),
62
- ref: p,
63
- disabled: g || n,
64
- ...f,
65
- children: n ? /* @__PURE__ */ s(j, { children: [
66
- /* @__PURE__ */ e(E, { className: "h-4 w-4 animate-spin" }),
67
- c && /* @__PURE__ */ e("span", { children: c })
68
- ] }) : /* @__PURE__ */ s(j, { children: [
69
- d && /* @__PURE__ */ e("span", { className: "inline-flex", children: d }),
70
- c,
63
+ className: o(X({ variant: t, size: r, fullWidth: n, className: a })),
64
+ ref: v,
65
+ disabled: f || s,
66
+ ...u,
67
+ children: s ? /* @__PURE__ */ i(A, { children: [
68
+ /* @__PURE__ */ e(V, { className: "h-4 w-4 animate-spin" }),
69
+ m && /* @__PURE__ */ e("span", { children: m })
70
+ ] }) : /* @__PURE__ */ i(A, { children: [
71
+ c && /* @__PURE__ */ e("span", { className: "inline-flex", children: c }),
72
+ m,
71
73
  l && /* @__PURE__ */ e("span", { className: "inline-flex", children: l })
72
74
  ] })
73
75
  }
74
76
  )
75
77
  );
76
- z.displayName = "Button";
77
- const fe = N(
78
- ({ className: a, error: t, helperText: r, ...o }, n) => /* @__PURE__ */ s("div", { className: "w-full", children: [
78
+ C.displayName = "Button";
79
+ const Ie = N(
80
+ ({ className: a, error: t, helperText: r, ...n }, s) => /* @__PURE__ */ i("div", { className: "w-full", children: [
79
81
  /* @__PURE__ */ e(
80
82
  "textarea",
81
83
  {
82
- className: i(
84
+ className: o(
83
85
  "flex min-h-[80px] w-full rounded-lg border-2 border-[var(--border)] bg-[var(--input-background)] px-3 py-2 text-base transition-colors",
84
86
  "placeholder:text-[var(--muted-foreground)]",
85
87
  "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] focus-visible:ring-offset-2",
@@ -88,14 +90,14 @@ const fe = N(
88
90
  t && "border-[var(--destructive)] focus-visible:ring-[var(--destructive)]",
89
91
  a
90
92
  ),
91
- ref: n,
92
- ...o
93
+ ref: s,
94
+ ...n
93
95
  }
94
96
  ),
95
97
  r && /* @__PURE__ */ e(
96
98
  "p",
97
99
  {
98
- className: i(
100
+ className: o(
99
101
  "mt-1.5 text-sm",
100
102
  t ? "text-[var(--destructive)]" : "text-[var(--muted-foreground)]"
101
103
  ),
@@ -104,8 +106,8 @@ const fe = N(
104
106
  )
105
107
  ] })
106
108
  );
107
- fe.displayName = "Textarea";
108
- const ge = $(
109
+ Ie.displayName = "Textarea";
110
+ const je = P(
109
111
  "inline-flex items-center rounded-full font-medium transition-colors whitespace-nowrap",
110
112
  {
111
113
  variants: {
@@ -129,20 +131,20 @@ const ge = $(
129
131
  size: "md"
130
132
  }
131
133
  }
132
- ), P = N(
133
- ({ className: a, variant: t, size: r, icon: o, onRemove: n, children: d, ...l }, c) => /* @__PURE__ */ s(
134
+ ), D = N(
135
+ ({ className: a, variant: t, size: r, icon: n, onRemove: s, children: c, ...l }, m) => /* @__PURE__ */ i(
134
136
  "div",
135
137
  {
136
- ref: c,
137
- className: i(ge({ variant: t, size: r }), a),
138
+ ref: m,
139
+ className: o(je({ variant: t, size: r }), a),
138
140
  ...l,
139
141
  children: [
140
- o && /* @__PURE__ */ e("span", { className: "mr-1 inline-flex", children: o }),
141
- d,
142
- n && /* @__PURE__ */ e(
142
+ n && /* @__PURE__ */ e("span", { className: "mr-1 inline-flex", children: n }),
143
+ c,
144
+ s && /* @__PURE__ */ e(
143
145
  "button",
144
146
  {
145
- onClick: n,
147
+ onClick: s,
146
148
  className: "ml-1 inline-flex hover:opacity-70 focus:outline-none focus:ring-1 focus:ring-[var(--ring)] rounded-full",
147
149
  "aria-label": "Remove",
148
150
  children: "×"
@@ -152,8 +154,8 @@ const ge = $(
152
154
  }
153
155
  )
154
156
  );
155
- P.displayName = "Badge";
156
- const pe = $(
157
+ D.displayName = "Badge";
158
+ const Me = P(
157
159
  "relative inline-flex items-center justify-center overflow-hidden rounded-full bg-[var(--muted)] text-[var(--muted-foreground)] flex-shrink-0",
158
160
  {
159
161
  variants: {
@@ -168,9 +170,9 @@ const pe = $(
168
170
  size: "md"
169
171
  }
170
172
  }
171
- ), ve = N(
172
- ({ className: a, size: t, src: r, alt: o, name: n, showStatus: d, statusType: l = "online", ...c }, g) => {
173
- const [f, p] = k(!1), v = (m) => m.split(" ").map((u) => u[0]).join("").toUpperCase().slice(0, 2), b = {
173
+ ), _e = N(
174
+ ({ className: a, size: t, src: r, alt: n, name: s, showStatus: c, statusType: l = "online", ...m }, f) => {
175
+ const [u, v] = k(!1), g = (x) => x.split(" ").map((d) => d[0]).join("").toUpperCase().slice(0, 2), b = {
174
176
  online: "bg-[var(--success)]",
175
177
  offline: "bg-[var(--muted-foreground)]",
176
178
  away: "bg-[var(--warning)]",
@@ -181,21 +183,21 @@ const pe = $(
181
183
  lg: "h-3 w-3 border-2",
182
184
  xl: "h-4 w-4 border-2"
183
185
  };
184
- return /* @__PURE__ */ s("div", { ref: g, className: i(pe({ size: t }), "relative", a), children: [
185
- r && !f ? /* @__PURE__ */ e(
186
+ return /* @__PURE__ */ i("div", { ref: f, className: o(Me({ size: t }), "relative", a), children: [
187
+ r && !u ? /* @__PURE__ */ e(
186
188
  "img",
187
189
  {
188
190
  src: r,
189
- alt: o || n || "Avatar",
190
- onError: () => p(!0),
191
+ alt: n || s || "Avatar",
192
+ onError: () => v(!0),
191
193
  className: "h-full w-full object-cover",
192
- ...c
194
+ ...m
193
195
  }
194
- ) : n ? /* @__PURE__ */ e("span", { className: "font-medium", children: v(n) }) : /* @__PURE__ */ e(Y, { className: "h-1/2 w-1/2" }),
195
- d && /* @__PURE__ */ e(
196
+ ) : s ? /* @__PURE__ */ e("span", { className: "font-medium", children: g(s) }) : /* @__PURE__ */ e(te, { className: "h-1/2 w-1/2" }),
197
+ c && /* @__PURE__ */ e(
196
198
  "span",
197
199
  {
198
- className: i(
200
+ className: o(
199
201
  "absolute bottom-0 right-0 rounded-full border-[var(--background)]",
200
202
  b[l],
201
203
  h[t || "md"]
@@ -206,8 +208,8 @@ const pe = $(
206
208
  ] });
207
209
  }
208
210
  );
209
- ve.displayName = "Avatar";
210
- const be = $("animate-spin text-[var(--brand-primary)]", {
211
+ _e.displayName = "Avatar";
212
+ const Pe = P("animate-spin text-[var(--brand-primary)]", {
211
213
  variants: {
212
214
  size: {
213
215
  sm: "h-4 w-4",
@@ -219,47 +221,47 @@ const be = $("animate-spin text-[var(--brand-primary)]", {
219
221
  defaultVariants: {
220
222
  size: "md"
221
223
  }
222
- }), he = N(
223
- ({ className: a, size: t, label: r, ...o }, n) => /* @__PURE__ */ s(
224
+ }), Ae = N(
225
+ ({ className: a, size: t, label: r, ...n }, s) => /* @__PURE__ */ i(
224
226
  "div",
225
227
  {
226
- ref: n,
228
+ ref: s,
227
229
  role: "status",
228
230
  "aria-label": r || "Loading",
229
- className: i("inline-flex items-center justify-center", a),
230
- ...o,
231
+ className: o("inline-flex items-center justify-center", a),
232
+ ...n,
231
233
  children: [
232
- /* @__PURE__ */ e(E, { className: i(be({ size: t })) }),
234
+ /* @__PURE__ */ e(V, { className: o(Pe({ size: t })) }),
233
235
  /* @__PURE__ */ e("span", { className: "sr-only", children: r || "Loading" })
234
236
  ]
235
237
  }
236
238
  )
237
239
  );
238
- he.displayName = "Spinner";
239
- const xe = N(
240
- ({ className: a, orientation: t = "horizontal", variant: r = "solid", text: o, ...n }, d) => {
240
+ Ae.displayName = "Spinner";
241
+ const De = N(
242
+ ({ className: a, orientation: t = "horizontal", variant: r = "solid", text: n, ...s }, c) => {
241
243
  const l = {
242
244
  solid: "border-solid",
243
245
  dashed: "border-dashed",
244
246
  dotted: "border-dotted"
245
247
  };
246
- return o && t === "horizontal" ? /* @__PURE__ */ s("div", { className: i("flex items-center gap-4 my-4", a), role: "separator", children: [
248
+ return n && t === "horizontal" ? /* @__PURE__ */ i("div", { className: o("flex items-center gap-4 my-4", a), role: "separator", children: [
247
249
  /* @__PURE__ */ e(
248
250
  "hr",
249
251
  {
250
- ref: d,
251
- className: i(
252
+ ref: c,
253
+ className: o(
252
254
  "flex-1 border-[var(--border)]",
253
255
  l[r]
254
256
  ),
255
- ...n
257
+ ...s
256
258
  }
257
259
  ),
258
- /* @__PURE__ */ e("span", { className: "text-sm text-[var(--muted-foreground)]", children: o }),
260
+ /* @__PURE__ */ e("span", { className: "text-sm text-[var(--muted-foreground)]", children: n }),
259
261
  /* @__PURE__ */ e(
260
262
  "hr",
261
263
  {
262
- className: i(
264
+ className: o(
263
265
  "flex-1 border-[var(--border)]",
264
266
  l[r]
265
267
  )
@@ -268,75 +270,75 @@ const xe = N(
268
270
  ] }) : /* @__PURE__ */ e(
269
271
  "hr",
270
272
  {
271
- ref: d,
273
+ ref: c,
272
274
  role: "separator",
273
275
  "aria-orientation": t,
274
- className: i(
276
+ className: o(
275
277
  "border-[var(--border)]",
276
278
  l[r],
277
279
  t === "vertical" ? "h-full w-px border-l" : "w-full border-t my-4",
278
280
  a
279
281
  ),
280
- ...n
282
+ ...s
281
283
  }
282
284
  );
283
285
  }
284
286
  );
285
- xe.displayName = "Divider";
286
- const U = N(
287
+ De.displayName = "Divider";
288
+ const $ = N(
287
289
  ({
288
290
  className: a,
289
291
  value: t = 0,
290
292
  maxRating: r = 5,
291
- size: o = "md",
292
- readonly: n = !1,
293
- onChange: d,
293
+ size: n = "md",
294
+ readonly: s = !1,
295
+ onChange: c,
294
296
  showValue: l = !1,
295
- ...c
296
- }, g) => {
297
- const [f, p] = k(0), v = {
297
+ ...m
298
+ }, f) => {
299
+ const [u, v] = k(0), g = {
298
300
  sm: "h-4 w-4",
299
301
  md: "h-5 w-5",
300
302
  lg: "h-6 w-6"
301
- }, b = (m) => {
302
- !n && d && d(m);
303
- }, h = f || t;
304
- return /* @__PURE__ */ s(
303
+ }, b = (x) => {
304
+ !s && c && c(x);
305
+ }, h = u || t;
306
+ return /* @__PURE__ */ i(
305
307
  "div",
306
308
  {
307
- ref: g,
308
- className: i("inline-flex items-center gap-1", a),
309
+ ref: f,
310
+ className: o("inline-flex items-center gap-1", a),
309
311
  role: "group",
310
312
  "aria-label": `Rating: ${t} out of ${r}`,
311
- ...c,
313
+ ...m,
312
314
  children: [
313
- /* @__PURE__ */ e("div", { className: "flex items-center gap-0.5", children: Array.from({ length: r }, (m, u) => u + 1).map((m) => {
314
- const u = m <= h;
315
+ /* @__PURE__ */ e("div", { className: "flex items-center gap-0.5", children: Array.from({ length: r }, (x, d) => d + 1).map((x) => {
316
+ const d = x <= h;
315
317
  return /* @__PURE__ */ e(
316
318
  "button",
317
319
  {
318
320
  type: "button",
319
- disabled: n,
320
- onClick: () => b(m),
321
- onMouseEnter: () => !n && p(m),
322
- onMouseLeave: () => !n && p(0),
323
- className: i(
321
+ disabled: s,
322
+ onClick: () => b(x),
323
+ onMouseEnter: () => !s && v(x),
324
+ onMouseLeave: () => !s && v(0),
325
+ className: o(
324
326
  "transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] focus-visible:ring-offset-1 rounded",
325
- n ? "cursor-default" : "cursor-pointer hover:scale-110"
327
+ s ? "cursor-default" : "cursor-pointer hover:scale-110"
326
328
  ),
327
- "aria-label": `Rate ${m} out of ${r}`,
329
+ "aria-label": `Rate ${x} out of ${r}`,
328
330
  children: /* @__PURE__ */ e(
329
- Z,
331
+ ae,
330
332
  {
331
- className: i(
332
- v[o],
333
+ className: o(
334
+ g[n],
333
335
  "transition-all",
334
- u ? "fill-[var(--warning)] text-[var(--warning)]" : "fill-none text-[var(--muted-foreground)]"
336
+ d ? "fill-[var(--warning)] text-[var(--warning)]" : "fill-none text-[var(--muted-foreground)]"
335
337
  )
336
338
  }
337
339
  )
338
340
  },
339
- m
341
+ x
340
342
  );
341
343
  }) }),
342
344
  l && /* @__PURE__ */ e("span", { className: "ml-1 text-sm font-medium text-[var(--foreground)]", children: t.toFixed(1) })
@@ -345,14 +347,14 @@ const U = N(
345
347
  );
346
348
  }
347
349
  );
348
- U.displayName = "Rating";
349
- function Fe({ className: a, type: t, ...r }) {
350
+ $.displayName = "Rating";
351
+ function kt({ className: a, type: t, ...r }) {
350
352
  return /* @__PURE__ */ e(
351
353
  "input",
352
354
  {
353
355
  type: t,
354
356
  "data-slot": "input",
355
- className: i(
357
+ className: o(
356
358
  "file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input flex h-9 w-full min-w-0 rounded-md border px-3 py-1 text-base bg-input-background transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",
357
359
  "focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]",
358
360
  "aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
@@ -362,153 +364,153 @@ function Fe({ className: a, type: t, ...r }) {
362
364
  }
363
365
  );
364
366
  }
365
- function Ge({
367
+ function zt({
366
368
  ...a
367
369
  }) {
368
- return /* @__PURE__ */ e(y.Root, { "data-slot": "select", ...a });
370
+ return /* @__PURE__ */ e(z.Root, { "data-slot": "select", ...a });
369
371
  }
370
- function Qe({
372
+ function Ct({
371
373
  ...a
372
374
  }) {
373
- return /* @__PURE__ */ e(y.Value, { "data-slot": "select-value", ...a });
375
+ return /* @__PURE__ */ e(z.Value, { "data-slot": "select-value", ...a });
374
376
  }
375
- function Ue({
377
+ function St({
376
378
  className: a,
377
379
  size: t = "default",
378
380
  children: r,
379
- ...o
381
+ ...n
380
382
  }) {
381
- return /* @__PURE__ */ s(
382
- y.Trigger,
383
+ return /* @__PURE__ */ i(
384
+ z.Trigger,
383
385
  {
384
386
  "data-slot": "select-trigger",
385
387
  "data-size": t,
386
- className: i(
388
+ className: o(
387
389
  "border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-full items-center justify-between gap-2 rounded-md border bg-input-background px-3 py-2 text-sm whitespace-nowrap transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
388
390
  a
389
391
  ),
390
- ...o,
392
+ ...n,
391
393
  children: [
392
394
  r,
393
- /* @__PURE__ */ e(y.Icon, { asChild: !0, children: /* @__PURE__ */ e(B, { className: "size-4 opacity-50" }) })
395
+ /* @__PURE__ */ e(z.Icon, { asChild: !0, children: /* @__PURE__ */ e(E, { className: "size-4 opacity-50" }) })
394
396
  ]
395
397
  }
396
398
  );
397
399
  }
398
- function We({
400
+ function It({
399
401
  className: a,
400
402
  children: t,
401
403
  position: r = "popper",
402
- ...o
404
+ ...n
403
405
  }) {
404
- return /* @__PURE__ */ e(y.Portal, { children: /* @__PURE__ */ s(
405
- y.Content,
406
+ return /* @__PURE__ */ e(z.Portal, { children: /* @__PURE__ */ i(
407
+ z.Content,
406
408
  {
407
409
  "data-slot": "select-content",
408
- className: i(
410
+ className: o(
409
411
  "bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border shadow-md",
410
412
  r === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",
411
413
  a
412
414
  ),
413
415
  position: r,
414
- ...o,
416
+ ...n,
415
417
  children: [
416
- /* @__PURE__ */ e(Ne, {}),
418
+ /* @__PURE__ */ e(Ee, {}),
417
419
  /* @__PURE__ */ e(
418
- y.Viewport,
420
+ z.Viewport,
419
421
  {
420
- className: i(
422
+ className: o(
421
423
  "p-1",
422
424
  r === "popper" && "h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"
423
425
  ),
424
426
  children: t
425
427
  }
426
428
  ),
427
- /* @__PURE__ */ e(we, {})
429
+ /* @__PURE__ */ e(Le, {})
428
430
  ]
429
431
  }
430
432
  ) });
431
433
  }
432
- function Xe({
434
+ function jt({
433
435
  className: a,
434
436
  children: t,
435
437
  ...r
436
438
  }) {
437
- return /* @__PURE__ */ s(
438
- y.Item,
439
+ return /* @__PURE__ */ i(
440
+ z.Item,
439
441
  {
440
442
  "data-slot": "select-item",
441
- className: i(
443
+ className: o(
442
444
  "focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",
443
445
  a
444
446
  ),
445
447
  ...r,
446
448
  children: [
447
- /* @__PURE__ */ e("span", { className: "absolute right-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ e(y.ItemIndicator, { children: /* @__PURE__ */ e(V, { className: "size-4" }) }) }),
448
- /* @__PURE__ */ e(y.ItemText, { children: t })
449
+ /* @__PURE__ */ e("span", { className: "absolute right-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ e(z.ItemIndicator, { children: /* @__PURE__ */ e(U, { className: "size-4" }) }) }),
450
+ /* @__PURE__ */ e(z.ItemText, { children: t })
449
451
  ]
450
452
  }
451
453
  );
452
454
  }
453
- function Ne({
455
+ function Ee({
454
456
  className: a,
455
457
  ...t
456
458
  }) {
457
459
  return /* @__PURE__ */ e(
458
- y.ScrollUpButton,
460
+ z.ScrollUpButton,
459
461
  {
460
462
  "data-slot": "select-scroll-up-button",
461
- className: i(
463
+ className: o(
462
464
  "flex cursor-default items-center justify-center py-1",
463
465
  a
464
466
  ),
465
467
  ...t,
466
- children: /* @__PURE__ */ e(O, { className: "size-4" })
468
+ children: /* @__PURE__ */ e(re, { className: "size-4" })
467
469
  }
468
470
  );
469
471
  }
470
- function we({
472
+ function Le({
471
473
  className: a,
472
474
  ...t
473
475
  }) {
474
476
  return /* @__PURE__ */ e(
475
- y.ScrollDownButton,
477
+ z.ScrollDownButton,
476
478
  {
477
479
  "data-slot": "select-scroll-down-button",
478
- className: i(
480
+ className: o(
479
481
  "flex cursor-default items-center justify-center py-1",
480
482
  a
481
483
  ),
482
484
  ...t,
483
- children: /* @__PURE__ */ e(B, { className: "size-4" })
485
+ children: /* @__PURE__ */ e(E, { className: "size-4" })
484
486
  }
485
487
  );
486
488
  }
487
- function Ke({
489
+ function Mt({
488
490
  className: a,
489
491
  ...t
490
492
  }) {
491
493
  return /* @__PURE__ */ e(
492
- A.Root,
494
+ F.Root,
493
495
  {
494
496
  "data-slot": "checkbox",
495
- className: i(
497
+ className: o(
496
498
  "peer border bg-input-background dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",
497
499
  a
498
500
  ),
499
501
  ...t,
500
502
  children: /* @__PURE__ */ e(
501
- A.Indicator,
503
+ F.Indicator,
502
504
  {
503
505
  "data-slot": "checkbox-indicator",
504
506
  className: "flex items-center justify-center text-current transition-none",
505
- children: /* @__PURE__ */ e(V, { className: "size-3.5" })
507
+ children: /* @__PURE__ */ e(U, { className: "size-3.5" })
506
508
  }
507
509
  )
508
510
  }
509
511
  );
510
512
  }
511
- function Je({
513
+ function _t({
512
514
  className: a,
513
515
  ...t
514
516
  }) {
@@ -516,12 +518,12 @@ function Je({
516
518
  T.Root,
517
519
  {
518
520
  "data-slot": "radio-group",
519
- className: i("grid gap-3", a),
521
+ className: o("grid gap-3", a),
520
522
  ...t
521
523
  }
522
524
  );
523
525
  }
524
- function Ye({
526
+ function Pt({
525
527
  className: a,
526
528
  ...t
527
529
  }) {
@@ -529,7 +531,7 @@ function Ye({
529
531
  T.Item,
530
532
  {
531
533
  "data-slot": "radio-group-item",
532
- className: i(
534
+ className: o(
533
535
  "border-input text-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 aspect-square size-4 shrink-0 rounded-full border shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",
534
536
  a
535
537
  ),
@@ -539,30 +541,30 @@ function Ye({
539
541
  {
540
542
  "data-slot": "radio-group-indicator",
541
543
  className: "relative flex items-center justify-center",
542
- children: /* @__PURE__ */ e(ee, { className: "fill-primary absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2" })
544
+ children: /* @__PURE__ */ e(oe, { className: "fill-primary absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2" })
543
545
  }
544
546
  )
545
547
  }
546
548
  );
547
549
  }
548
- function Ze({
550
+ function At({
549
551
  className: a,
550
552
  ...t
551
553
  }) {
552
554
  return /* @__PURE__ */ e(
553
- M.Root,
555
+ q.Root,
554
556
  {
555
557
  "data-slot": "switch",
556
- className: i(
558
+ className: o(
557
559
  "peer data-[state=checked]:bg-primary data-[state=unchecked]:bg-switch-background focus-visible:border-ring focus-visible:ring-ring/50 dark:data-[state=unchecked]:bg-input/80 inline-flex h-[1.15rem] w-8 shrink-0 items-center rounded-full border border-transparent transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",
558
560
  a
559
561
  ),
560
562
  ...t,
561
563
  children: /* @__PURE__ */ e(
562
- M.Thumb,
564
+ q.Thumb,
563
565
  {
564
566
  "data-slot": "switch-thumb",
565
- className: i(
567
+ className: o(
566
568
  "bg-card dark:data-[state=unchecked]:bg-card-foreground dark:data-[state=checked]:bg-primary-foreground pointer-events-none block size-4 rounded-full ring-0 transition-transform data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0"
567
569
  )
568
570
  }
@@ -570,110 +572,221 @@ function Ze({
570
572
  }
571
573
  );
572
574
  }
575
+ function H({
576
+ href: a,
577
+ className: t,
578
+ children: r
579
+ }) {
580
+ return a ? /* @__PURE__ */ e("a", { href: a, className: t, tabIndex: -1, "aria-hidden": "true", children: r }) : /* @__PURE__ */ e("div", { className: t, children: r });
581
+ }
573
582
  const R = N(
574
583
  ({
575
584
  className: a,
576
585
  image: t,
577
586
  title: r,
578
- price: o,
579
- originalPrice: n,
580
- rating: d,
581
- reviewCount: l,
582
- badge: c,
583
- badgeVariant: g = "default",
584
- isSkeleton: f = !1,
585
- isOutOfStock: p = !1,
586
- onAddToCart: v,
587
- onToggleFavorite: b,
588
- isFavorite: h = !1,
589
- ...m
590
- }, u) => f ? /* @__PURE__ */ s(
587
+ author: n,
588
+ price: s,
589
+ originalPrice: c,
590
+ rating: l,
591
+ reviewCount: m,
592
+ badge: f,
593
+ badgeVariant: u = "default",
594
+ isSkeleton: v = !1,
595
+ isOutOfStock: g = !1,
596
+ onAddToCart: b,
597
+ onToggleFavorite: h,
598
+ isFavorite: x = !1,
599
+ href: d,
600
+ orientation: p = "vertical",
601
+ ...y
602
+ }, j) => v ? /* @__PURE__ */ i(
591
603
  "div",
592
604
  {
593
- ref: u,
594
- className: i(
595
- "flex flex-col rounded-lg border-2 border-[var(--border)] bg-[var(--card)] p-4 animate-pulse",
605
+ ref: j,
606
+ className: o(
607
+ "flex rounded-lg border-2 border-[var(--border)] bg-[var(--card)] p-4 animate-pulse",
608
+ p === "horizontal" ? "flex-row gap-3" : "flex-col",
596
609
  a
597
610
  ),
598
- ...m,
611
+ ...y,
599
612
  children: [
600
- /* @__PURE__ */ e("div", { className: "aspect-square w-full rounded-lg bg-[var(--muted)]" }),
601
- /* @__PURE__ */ e("div", { className: "mt-3 h-4 w-3/4 rounded bg-[var(--muted)]" }),
602
- /* @__PURE__ */ e("div", { className: "mt-2 h-4 w-1/2 rounded bg-[var(--muted)]" }),
603
- /* @__PURE__ */ e("div", { className: "mt-3 h-10 w-full rounded bg-[var(--muted)]" })
613
+ /* @__PURE__ */ e(
614
+ "div",
615
+ {
616
+ className: o(
617
+ "rounded-lg bg-[var(--muted)]",
618
+ p === "horizontal" ? "h-24 w-20 shrink-0" : "aspect-square w-full"
619
+ )
620
+ }
621
+ ),
622
+ /* @__PURE__ */ i("div", { className: o("flex flex-col gap-2", p === "horizontal" ? "flex-1" : "mt-3"), children: [
623
+ /* @__PURE__ */ e("div", { className: "h-4 w-3/4 rounded bg-[var(--muted)]" }),
624
+ /* @__PURE__ */ e("div", { className: "h-4 w-1/2 rounded bg-[var(--muted)]" }),
625
+ /* @__PURE__ */ e("div", { className: "h-10 w-full rounded bg-[var(--muted)]" })
626
+ ] })
604
627
  ]
605
628
  }
606
- ) : /* @__PURE__ */ s(
629
+ ) : p === "horizontal" ? /* @__PURE__ */ i(
607
630
  "div",
608
631
  {
609
- ref: u,
610
- className: i(
611
- "group relative flex flex-col rounded-lg border-2 border-[var(--border)] bg-[var(--card)] transition-all hover:shadow-lg",
612
- p && "opacity-60",
632
+ ref: j,
633
+ className: o(
634
+ "group relative flex flex-row gap-3 rounded-lg border-2 border-[var(--border)] bg-[var(--card)] p-3 transition-all hover:shadow-md",
635
+ g && "opacity-60",
613
636
  a
614
637
  ),
615
- ...m,
638
+ ...y,
616
639
  children: [
617
- /* @__PURE__ */ s("div", { className: "relative aspect-square w-full overflow-hidden rounded-t-lg", children: [
618
- /* @__PURE__ */ e(
619
- "img",
640
+ /* @__PURE__ */ e(
641
+ H,
642
+ {
643
+ href: d,
644
+ className: "block h-24 w-20 shrink-0 overflow-hidden rounded-lg",
645
+ children: /* @__PURE__ */ e(
646
+ "img",
647
+ {
648
+ src: t,
649
+ alt: r,
650
+ className: "h-full w-full object-cover transition-transform duration-300 group-hover:scale-105"
651
+ }
652
+ )
653
+ }
654
+ ),
655
+ /* @__PURE__ */ i("div", { className: "flex min-w-0 flex-1 flex-col gap-1", children: [
656
+ d ? /* @__PURE__ */ e(
657
+ "a",
620
658
  {
621
- src: t,
622
- alt: r,
623
- className: "h-full w-full object-cover transition-transform group-hover:scale-105"
659
+ href: d,
660
+ className: "line-clamp-2 text-sm font-medium text-[var(--card-foreground)] hover:text-[var(--brand-primary)] transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] rounded",
661
+ children: r
624
662
  }
625
- ),
626
- c && /* @__PURE__ */ e("div", { className: "absolute left-3 top-3", children: /* @__PURE__ */ e(P, { variant: g, children: c }) }),
627
- p && /* @__PURE__ */ e("div", { className: "absolute inset-0 flex items-center justify-center bg-black/60", children: /* @__PURE__ */ e(P, { variant: "danger", size: "lg", children: "Esgotado" }) }),
663
+ ) : /* @__PURE__ */ e("h3", { className: "line-clamp-2 text-sm font-medium text-[var(--card-foreground)]", children: r }),
664
+ n && /* @__PURE__ */ e("p", { className: "text-xs text-[var(--muted-foreground)]", children: n }),
665
+ l !== void 0 && /* @__PURE__ */ i("div", { className: "flex items-center gap-1", children: [
666
+ /* @__PURE__ */ e($, { value: l, size: "sm", readonly: !0 }),
667
+ m !== void 0 && /* @__PURE__ */ i("span", { className: "text-xs text-[var(--muted-foreground)]", children: [
668
+ "(",
669
+ m,
670
+ ")"
671
+ ] })
672
+ ] }),
673
+ /* @__PURE__ */ i("div", { className: "flex items-baseline gap-2", children: [
674
+ /* @__PURE__ */ i("span", { className: "text-base font-bold text-[var(--foreground)]", children: [
675
+ "R$ ",
676
+ s.toFixed(2)
677
+ ] }),
678
+ c && c > s && /* @__PURE__ */ i("span", { className: "text-xs text-[var(--muted-foreground)] line-through", children: [
679
+ "R$ ",
680
+ c.toFixed(2)
681
+ ] })
682
+ ] }),
628
683
  b && /* @__PURE__ */ e(
629
- "button",
684
+ C,
630
685
  {
631
686
  onClick: b,
632
- className: "absolute right-3 top-3 rounded-full bg-white/90 p-2 transition-all hover:bg-white focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]",
633
- "aria-label": h ? "Remove from favorites" : "Add to favorites",
634
- children: /* @__PURE__ */ e(
635
- te,
687
+ disabled: g,
688
+ variant: "primary",
689
+ size: "sm",
690
+ fullWidth: !0,
691
+ leftIcon: /* @__PURE__ */ e(L, { className: "h-3.5 w-3.5" }),
692
+ className: "mt-auto",
693
+ children: g ? "Indisponível" : "Adicionar"
694
+ }
695
+ )
696
+ ] })
697
+ ]
698
+ }
699
+ ) : /* @__PURE__ */ i(
700
+ "div",
701
+ {
702
+ ref: j,
703
+ className: o(
704
+ "group relative flex flex-col rounded-lg border-2 border-[var(--border)] bg-[var(--card)] transition-all hover:shadow-lg",
705
+ g && "opacity-60",
706
+ a
707
+ ),
708
+ ...y,
709
+ children: [
710
+ /* @__PURE__ */ i(
711
+ H,
712
+ {
713
+ href: d,
714
+ className: "relative block aspect-[3/4] w-full overflow-hidden rounded-t-lg",
715
+ children: [
716
+ /* @__PURE__ */ e(
717
+ "img",
636
718
  {
637
- className: i(
638
- "h-5 w-5",
639
- h ? "fill-[var(--destructive)] text-[var(--destructive)]" : "text-[var(--foreground)]"
640
- )
719
+ src: t,
720
+ alt: r,
721
+ className: "h-full w-full object-cover transition-transform group-hover:scale-105"
641
722
  }
642
- )
723
+ ),
724
+ f && /* @__PURE__ */ e("div", { className: "absolute left-3 top-3", children: /* @__PURE__ */ e(D, { variant: u, children: f }) }),
725
+ g && /* @__PURE__ */ e("div", { className: "absolute inset-0 flex items-center justify-center bg-black/60", children: /* @__PURE__ */ e(D, { variant: "danger", size: "lg", children: "Esgotado" }) })
726
+ ]
727
+ }
728
+ ),
729
+ h && /* @__PURE__ */ e(
730
+ "button",
731
+ {
732
+ onClick: h,
733
+ className: "absolute right-3 top-3 rounded-full bg-white/90 p-2 transition-all hover:bg-white focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]",
734
+ "aria-label": x ? "Remover dos favoritos" : "Adicionar aos favoritos",
735
+ children: /* @__PURE__ */ e(
736
+ ie,
737
+ {
738
+ className: o(
739
+ "h-5 w-5",
740
+ x ? "fill-[var(--destructive)] text-[var(--destructive)]" : "text-[var(--foreground)]"
741
+ )
742
+ }
743
+ )
744
+ }
745
+ ),
746
+ /* @__PURE__ */ i("div", { className: "flex flex-1 flex-col p-4", children: [
747
+ d ? /* @__PURE__ */ e(
748
+ "a",
749
+ {
750
+ href: d,
751
+ className: "line-clamp-2 text-base font-medium text-[var(--card-foreground)] hover:text-[var(--brand-primary)] transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] rounded",
752
+ children: r
643
753
  }
644
- )
645
- ] }),
646
- /* @__PURE__ */ s("div", { className: "flex flex-1 flex-col p-4", children: [
647
- /* @__PURE__ */ e("h3", { className: "line-clamp-2 text-base font-medium text-[var(--card-foreground)]", children: r }),
648
- d !== void 0 && /* @__PURE__ */ s("div", { className: "mt-2 flex items-center gap-2", children: [
649
- /* @__PURE__ */ e(U, { value: d, size: "sm", readonly: !0 }),
650
- l !== void 0 && /* @__PURE__ */ s("span", { className: "text-sm text-[var(--muted-foreground)]", children: [
754
+ ) : /* @__PURE__ */ e("h3", { className: "line-clamp-2 text-base font-medium text-[var(--card-foreground)]", children: r }),
755
+ n && /* @__PURE__ */ e("p", { className: "mt-1 text-sm text-[var(--muted-foreground)]", children: n }),
756
+ l !== void 0 && /* @__PURE__ */ i("div", { className: "mt-2 flex items-center gap-2", children: [
757
+ /* @__PURE__ */ e($, { value: l, size: "sm", readonly: !0 }),
758
+ m !== void 0 && /* @__PURE__ */ i("span", { className: "text-sm text-[var(--muted-foreground)]", children: [
651
759
  "(",
652
- l,
760
+ m,
653
761
  ")"
654
762
  ] })
655
763
  ] }),
656
- /* @__PURE__ */ s("div", { className: "mt-3 flex items-baseline gap-2", children: [
657
- /* @__PURE__ */ s("span", { className: "text-xl font-bold text-[var(--foreground)]", children: [
764
+ /* @__PURE__ */ i("div", { className: "mt-3 flex items-baseline gap-2", children: [
765
+ /* @__PURE__ */ i("span", { className: "text-xl font-bold text-[var(--foreground)]", children: [
658
766
  "R$ ",
659
- o.toFixed(2)
767
+ s.toFixed(2)
660
768
  ] }),
661
- n && n > o && /* @__PURE__ */ s("span", { className: "text-sm text-[var(--muted-foreground)] line-through", children: [
769
+ c && c > s && /* @__PURE__ */ i("span", { className: "text-sm text-[var(--muted-foreground)] line-through", children: [
662
770
  "R$ ",
663
- n.toFixed(2)
771
+ c.toFixed(2)
664
772
  ] })
665
773
  ] }),
666
- v && /* @__PURE__ */ e(
667
- z,
774
+ b && /* @__PURE__ */ e(
775
+ C,
668
776
  {
669
- onClick: v,
670
- disabled: p,
777
+ onClick: b,
778
+ disabled: g,
671
779
  variant: "primary",
672
780
  size: "md",
673
781
  fullWidth: !0,
674
- leftIcon: /* @__PURE__ */ e(_, { className: "h-4 w-4" }),
675
- className: "mt-4",
676
- children: p ? "Indisponível" : "Adicionar"
782
+ leftIcon: /* @__PURE__ */ e(L, { className: "h-4 w-4" }),
783
+ className: o(
784
+ "mt-4 transition-all duration-200",
785
+ "opacity-0 translate-y-2",
786
+ "group-hover:opacity-100 group-hover:translate-y-0",
787
+ "focus-visible:opacity-100 focus-visible:translate-y-0"
788
+ ),
789
+ children: g ? "Indisponível" : "Adicionar"
677
790
  }
678
791
  )
679
792
  ] })
@@ -682,124 +795,124 @@ const R = N(
682
795
  )
683
796
  );
684
797
  R.displayName = "ProductCard";
685
- const ye = N(
798
+ const Te = N(
686
799
  ({
687
800
  className: a,
688
801
  onSearch: t,
689
802
  onClear: r,
690
- isLoading: o = !1,
691
- size: n = "md",
692
- placeholder: d = "Buscar...",
803
+ isLoading: n = !1,
804
+ size: s = "md",
805
+ placeholder: c = "Buscar...",
693
806
  value: l,
694
- onChange: c,
695
- ...g
696
- }, f) => {
697
- const [p, v] = k(""), b = l !== void 0 ? l : p, h = {
807
+ onChange: m,
808
+ ...f
809
+ }, u) => {
810
+ const [v, g] = k(""), b = l !== void 0 ? l : v, h = {
698
811
  sm: "h-9 text-sm",
699
812
  md: "h-11 text-base",
700
813
  lg: "h-14 text-lg"
701
- }, m = (S) => {
702
- const X = S.target.value;
703
- l === void 0 && v(X), c == null || c(S);
704
- }, u = () => {
705
- l === void 0 && v(""), r == null || r();
706
- }, x = (S) => {
707
- S.key === "Enter" && t && t(b);
814
+ }, x = (y) => {
815
+ const j = y.target.value;
816
+ l === void 0 && g(j), m == null || m(y);
817
+ }, d = () => {
818
+ l === void 0 && g(""), r == null || r();
819
+ }, p = (y) => {
820
+ y.key === "Enter" && t && t(b);
708
821
  };
709
- return /* @__PURE__ */ e("div", { className: i("relative w-full", a), children: /* @__PURE__ */ s("div", { className: "relative flex items-center", children: [
710
- /* @__PURE__ */ e(L, { className: "absolute left-3 h-5 w-5 text-[var(--muted-foreground)] pointer-events-none" }),
822
+ return /* @__PURE__ */ e("div", { className: o("relative w-full", a), children: /* @__PURE__ */ i("div", { className: "relative flex items-center", children: [
823
+ /* @__PURE__ */ e(Q, { className: "absolute left-3 h-5 w-5 text-[var(--muted-foreground)] pointer-events-none" }),
711
824
  /* @__PURE__ */ e(
712
825
  "input",
713
826
  {
714
- ref: f,
827
+ ref: u,
715
828
  type: "search",
716
829
  value: b,
717
- onChange: m,
718
- onKeyDown: x,
719
- placeholder: d,
720
- className: i(
830
+ onChange: x,
831
+ onKeyDown: p,
832
+ placeholder: c,
833
+ className: o(
721
834
  "w-full rounded-lg border-2 border-[var(--border)] bg-[var(--input-background)] pl-10 pr-10 font-normal transition-colors",
722
835
  "placeholder:text-[var(--muted-foreground)]",
723
836
  "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] focus-visible:ring-offset-2",
724
837
  "disabled:cursor-not-allowed disabled:opacity-50",
725
- h[n]
838
+ h[s]
726
839
  ),
727
- ...g
840
+ ...f
728
841
  }
729
842
  ),
730
- /* @__PURE__ */ s("div", { className: "absolute right-3 flex items-center gap-1", children: [
731
- o && /* @__PURE__ */ e(E, { className: "h-5 w-5 animate-spin text-[var(--muted-foreground)]" }),
732
- b && !o && /* @__PURE__ */ e(
843
+ /* @__PURE__ */ i("div", { className: "absolute right-3 flex items-center gap-1", children: [
844
+ n && /* @__PURE__ */ e(V, { className: "h-5 w-5 animate-spin text-[var(--muted-foreground)]" }),
845
+ b && !n && /* @__PURE__ */ e(
733
846
  "button",
734
847
  {
735
848
  type: "button",
736
- onClick: u,
849
+ onClick: d,
737
850
  className: "rounded-full p-1 hover:bg-[var(--muted)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]",
738
851
  "aria-label": "Clear search",
739
- children: /* @__PURE__ */ e(ae, { className: "h-4 w-4 text-[var(--muted-foreground)]" })
852
+ children: /* @__PURE__ */ e(ne, { className: "h-4 w-4 text-[var(--muted-foreground)]" })
740
853
  }
741
854
  )
742
855
  ] })
743
856
  ] }) });
744
857
  }
745
858
  );
746
- ye.displayName = "SearchBar";
747
- const ke = N(
859
+ Te.displayName = "SearchBar";
860
+ const $e = N(
748
861
  ({
749
862
  className: a,
750
863
  price: t,
751
864
  originalPrice: r,
752
- currency: o = "R$",
753
- size: n = "md",
754
- showDiscount: d = !0,
865
+ currency: n = "R$",
866
+ size: s = "md",
867
+ showDiscount: c = !0,
755
868
  installments: l,
756
- ...c
757
- }, g) => {
758
- const f = r && r > t ? Math.round((r - t) / r * 100) : 0, p = {
869
+ ...m
870
+ }, f) => {
871
+ const u = r && r > t ? Math.round((r - t) / r * 100) : 0, v = {
759
872
  sm: "text-base",
760
873
  md: "text-xl",
761
874
  lg: "text-2xl",
762
875
  xl: "text-4xl"
763
- }, v = {
876
+ }, g = {
764
877
  sm: "text-xs",
765
878
  md: "text-sm",
766
879
  lg: "text-base",
767
880
  xl: "text-xl"
768
881
  };
769
- return /* @__PURE__ */ s("div", { ref: g, className: i("flex flex-col gap-1", a), ...c, children: [
770
- /* @__PURE__ */ s("div", { className: "flex items-center gap-2 flex-wrap", children: [
771
- /* @__PURE__ */ s("div", { className: "flex items-baseline gap-2", children: [
772
- /* @__PURE__ */ s("span", { className: i("font-bold text-[var(--foreground)]", p[n]), children: [
773
- o,
882
+ return /* @__PURE__ */ i("div", { ref: f, className: o("flex flex-col gap-1", a), ...m, children: [
883
+ /* @__PURE__ */ i("div", { className: "flex items-center gap-2 flex-wrap", children: [
884
+ /* @__PURE__ */ i("div", { className: "flex items-baseline gap-2", children: [
885
+ /* @__PURE__ */ i("span", { className: o("font-bold text-[var(--foreground)]", v[s]), children: [
886
+ n,
774
887
  " ",
775
888
  t.toFixed(2)
776
889
  ] }),
777
- r && r > t && /* @__PURE__ */ s(
890
+ r && r > t && /* @__PURE__ */ i(
778
891
  "span",
779
892
  {
780
- className: i(
893
+ className: o(
781
894
  "text-[var(--muted-foreground)] line-through",
782
- v[n]
895
+ g[s]
783
896
  ),
784
897
  children: [
785
- o,
898
+ n,
786
899
  " ",
787
900
  r.toFixed(2)
788
901
  ]
789
902
  }
790
903
  )
791
904
  ] }),
792
- d && f > 0 && /* @__PURE__ */ s(P, { variant: "success", size: "sm", children: [
905
+ c && u > 0 && /* @__PURE__ */ i(D, { variant: "success", size: "sm", children: [
793
906
  "-",
794
- f,
907
+ u,
795
908
  "%"
796
909
  ] })
797
910
  ] }),
798
- l && /* @__PURE__ */ s("p", { className: "text-sm text-[var(--muted-foreground)]", children: [
911
+ l && /* @__PURE__ */ i("p", { className: "text-sm text-[var(--muted-foreground)]", children: [
799
912
  "ou ",
800
913
  l.count,
801
914
  "x de ",
802
- o,
915
+ n,
803
916
  " ",
804
917
  l.value.toFixed(2),
805
918
  " sem juros"
@@ -807,49 +920,49 @@ const ke = N(
807
920
  ] });
808
921
  }
809
922
  );
810
- ke.displayName = "PriceDisplay";
811
- const ze = N(
923
+ $e.displayName = "PriceDisplay";
924
+ const Re = N(
812
925
  ({
813
926
  className: a,
814
927
  value: t,
815
928
  min: r = 1,
816
- max: o = 99,
817
- onChange: n,
818
- size: d = "md",
929
+ max: n = 99,
930
+ onChange: s,
931
+ size: c = "md",
819
932
  disabled: l = !1,
820
- showLabel: c = !1,
821
- ...g
822
- }, f) => {
823
- const p = () => {
824
- t < o && n(t + 1);
825
- }, v = () => {
826
- t > r && n(t - 1);
827
- }, b = (u) => {
828
- const x = parseInt(u.target.value);
829
- !isNaN(x) && x >= r && x <= o && n(x);
933
+ showLabel: m = !1,
934
+ ...f
935
+ }, u) => {
936
+ const v = () => {
937
+ t < n && s(t + 1);
938
+ }, g = () => {
939
+ t > r && s(t - 1);
940
+ }, b = (d) => {
941
+ const p = parseInt(d.target.value);
942
+ !isNaN(p) && p >= r && p <= n && s(p);
830
943
  }, h = {
831
944
  sm: "h-8 w-8",
832
945
  md: "h-10 w-10",
833
946
  lg: "h-12 w-12"
834
- }, m = {
947
+ }, x = {
835
948
  sm: "h-8 w-12 text-sm",
836
949
  md: "h-10 w-14 text-base",
837
950
  lg: "h-12 w-16 text-lg"
838
951
  };
839
- return /* @__PURE__ */ s("div", { ref: f, className: i("inline-flex flex-col gap-1", a), ...g, children: [
840
- c && /* @__PURE__ */ e("label", { className: "text-sm font-medium text-[var(--foreground)]", children: "Quantidade" }),
841
- /* @__PURE__ */ s("div", { className: "inline-flex items-center gap-2", children: [
952
+ return /* @__PURE__ */ i("div", { ref: u, className: o("inline-flex flex-col gap-1", a), ...f, children: [
953
+ m && /* @__PURE__ */ e("label", { className: "text-sm font-medium text-[var(--foreground)]", children: "Quantidade" }),
954
+ /* @__PURE__ */ i("div", { className: "inline-flex items-center gap-2", children: [
842
955
  /* @__PURE__ */ e(
843
- z,
956
+ C,
844
957
  {
845
958
  type: "button",
846
959
  variant: "secondary",
847
960
  size: "sm",
848
- onClick: v,
961
+ onClick: g,
849
962
  disabled: l || t <= r,
850
- className: i(h[d], "p-0"),
963
+ className: o(h[c], "p-0"),
851
964
  "aria-label": "Decrease quantity",
852
- children: /* @__PURE__ */ e(H, { className: "h-4 w-4" })
965
+ children: /* @__PURE__ */ e(se, { className: "h-4 w-4" })
853
966
  }
854
967
  ),
855
968
  /* @__PURE__ */ e(
@@ -859,72 +972,72 @@ const ze = N(
859
972
  value: t,
860
973
  onChange: b,
861
974
  min: r,
862
- max: o,
975
+ max: n,
863
976
  disabled: l,
864
- className: i(
977
+ className: o(
865
978
  "rounded-lg border-2 border-[var(--border)] bg-[var(--input-background)] text-center font-medium transition-colors",
866
979
  "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] focus-visible:ring-offset-2",
867
980
  "disabled:cursor-not-allowed disabled:opacity-50",
868
981
  "[appearance:textfield] [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:appearance-none",
869
- m[d]
982
+ x[c]
870
983
  ),
871
984
  "aria-label": "Quantity"
872
985
  }
873
986
  ),
874
987
  /* @__PURE__ */ e(
875
- z,
988
+ C,
876
989
  {
877
990
  type: "button",
878
991
  variant: "secondary",
879
992
  size: "sm",
880
- onClick: p,
881
- disabled: l || t >= o,
882
- className: i(h[d], "p-0"),
993
+ onClick: v,
994
+ disabled: l || t >= n,
995
+ className: o(h[c], "p-0"),
883
996
  "aria-label": "Increase quantity",
884
- children: /* @__PURE__ */ e(q, { className: "h-4 w-4" })
997
+ children: /* @__PURE__ */ e(le, { className: "h-4 w-4" })
885
998
  }
886
999
  )
887
1000
  ] })
888
1001
  ] });
889
1002
  }
890
1003
  );
891
- ze.displayName = "QuantitySelector";
892
- const Se = N(
893
- ({ className: a, label: t, htmlFor: r, required: o, error: n, helperText: d, children: l, ...c }, g) => /* @__PURE__ */ s("div", { ref: g, className: i("flex flex-col gap-1.5", a), ...c, children: [
894
- t && /* @__PURE__ */ s(
1004
+ Re.displayName = "QuantitySelector";
1005
+ const Be = N(
1006
+ ({ className: a, label: t, htmlFor: r, required: n, error: s, helperText: c, children: l, ...m }, f) => /* @__PURE__ */ i("div", { ref: f, className: o("flex flex-col gap-1.5", a), ...m, children: [
1007
+ t && /* @__PURE__ */ i(
895
1008
  "label",
896
1009
  {
897
1010
  htmlFor: r,
898
1011
  className: "text-sm font-medium text-[var(--foreground)]",
899
1012
  children: [
900
1013
  t,
901
- o && /* @__PURE__ */ e("span", { className: "ml-1 text-[var(--destructive)]", children: "*" })
1014
+ n && /* @__PURE__ */ e("span", { className: "ml-1 text-[var(--destructive)]", children: "*" })
902
1015
  ]
903
1016
  }
904
1017
  ),
905
1018
  l,
906
- (n || d) && /* @__PURE__ */ e(
1019
+ (s || c) && /* @__PURE__ */ e(
907
1020
  "p",
908
1021
  {
909
- className: i(
1022
+ className: o(
910
1023
  "text-sm",
911
- n ? "text-[var(--destructive)]" : "text-[var(--muted-foreground)]"
1024
+ s ? "text-[var(--destructive)]" : "text-[var(--muted-foreground)]"
912
1025
  ),
913
- children: n || d
1026
+ children: s || c
914
1027
  }
915
1028
  )
916
1029
  ] })
917
1030
  );
918
- Se.displayName = "FormGroup";
919
- function Oe({ ...a }) {
1031
+ Be.displayName = "FormGroup";
1032
+ function Dt({ ...a }) {
920
1033
  return /* @__PURE__ */ e("nav", { "aria-label": "breadcrumb", "data-slot": "breadcrumb", ...a });
921
1034
  }
922
- function et({ className: a, ...t }) {
1035
+ function Et({ className: a, ...t }) {
923
1036
  return /* @__PURE__ */ e(
924
1037
  "ol",
925
1038
  {
926
1039
  "data-slot": "breadcrumb-list",
927
- className: i(
1040
+ className: o(
928
1041
  "text-muted-foreground flex flex-wrap items-center gap-1.5 text-sm break-words sm:gap-2.5",
929
1042
  a
930
1043
  ),
@@ -932,31 +1045,31 @@ function et({ className: a, ...t }) {
932
1045
  }
933
1046
  );
934
1047
  }
935
- function tt({ className: a, ...t }) {
1048
+ function Lt({ className: a, ...t }) {
936
1049
  return /* @__PURE__ */ e(
937
1050
  "li",
938
1051
  {
939
1052
  "data-slot": "breadcrumb-item",
940
- className: i("inline-flex items-center gap-1.5", a),
1053
+ className: o("inline-flex items-center gap-1.5", a),
941
1054
  ...t
942
1055
  }
943
1056
  );
944
1057
  }
945
- function at({
1058
+ function Tt({
946
1059
  asChild: a,
947
1060
  className: t,
948
1061
  ...r
949
1062
  }) {
950
1063
  return /* @__PURE__ */ e(
951
- a ? me : "a",
1064
+ a ? Se : "a",
952
1065
  {
953
1066
  "data-slot": "breadcrumb-link",
954
- className: i("hover:text-foreground transition-colors", t),
1067
+ className: o("hover:text-foreground transition-colors", t),
955
1068
  ...r
956
1069
  }
957
1070
  );
958
1071
  }
959
- function rt({ className: a, ...t }) {
1072
+ function $t({ className: a, ...t }) {
960
1073
  return /* @__PURE__ */ e(
961
1074
  "span",
962
1075
  {
@@ -964,12 +1077,12 @@ function rt({ className: a, ...t }) {
964
1077
  role: "link",
965
1078
  "aria-disabled": "true",
966
1079
  "aria-current": "page",
967
- className: i("text-foreground font-normal", a),
1080
+ className: o("text-foreground font-normal", a),
968
1081
  ...t
969
1082
  }
970
1083
  );
971
1084
  }
972
- function it({
1085
+ function Rt({
973
1086
  children: a,
974
1087
  className: t,
975
1088
  ...r
@@ -980,72 +1093,72 @@ function it({
980
1093
  "data-slot": "breadcrumb-separator",
981
1094
  role: "presentation",
982
1095
  "aria-hidden": "true",
983
- className: i("[&>svg]:size-3.5", t),
1096
+ className: o("[&>svg]:size-3.5", t),
984
1097
  ...r,
985
- children: a ?? /* @__PURE__ */ e(F, {})
1098
+ children: a ?? /* @__PURE__ */ e(W, {})
986
1099
  }
987
1100
  );
988
1101
  }
989
- function st({
1102
+ function Bt({
990
1103
  ...a
991
1104
  }) {
992
- return /* @__PURE__ */ e(I.Root, { "data-slot": "accordion", ...a });
1105
+ return /* @__PURE__ */ e(_.Root, { "data-slot": "accordion", ...a });
993
1106
  }
994
- function ot({
1107
+ function Vt({
995
1108
  className: a,
996
1109
  ...t
997
1110
  }) {
998
1111
  return /* @__PURE__ */ e(
999
- I.Item,
1112
+ _.Item,
1000
1113
  {
1001
1114
  "data-slot": "accordion-item",
1002
- className: i("border-b last:border-b-0", a),
1115
+ className: o("border-b last:border-b-0", a),
1003
1116
  ...t
1004
1117
  }
1005
1118
  );
1006
1119
  }
1007
- function nt({
1120
+ function Ft({
1008
1121
  className: a,
1009
1122
  children: t,
1010
1123
  ...r
1011
1124
  }) {
1012
- return /* @__PURE__ */ e(I.Header, { className: "flex", children: /* @__PURE__ */ s(
1013
- I.Trigger,
1125
+ return /* @__PURE__ */ e(_.Header, { className: "flex", children: /* @__PURE__ */ i(
1126
+ _.Trigger,
1014
1127
  {
1015
1128
  "data-slot": "accordion-trigger",
1016
- className: i(
1129
+ className: o(
1017
1130
  "focus-visible:border-ring focus-visible:ring-ring/50 flex flex-1 items-start justify-between gap-4 rounded-md py-4 text-left text-sm font-medium transition-all outline-none hover:underline focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180",
1018
1131
  a
1019
1132
  ),
1020
1133
  ...r,
1021
1134
  children: [
1022
1135
  t,
1023
- /* @__PURE__ */ e(B, { className: "text-muted-foreground pointer-events-none size-4 shrink-0 translate-y-0.5 transition-transform duration-200" })
1136
+ /* @__PURE__ */ e(E, { className: "text-muted-foreground pointer-events-none size-4 shrink-0 translate-y-0.5 transition-transform duration-200" })
1024
1137
  ]
1025
1138
  }
1026
1139
  ) });
1027
1140
  }
1028
- function lt({
1141
+ function qt({
1029
1142
  className: a,
1030
1143
  children: t,
1031
1144
  ...r
1032
1145
  }) {
1033
1146
  return /* @__PURE__ */ e(
1034
- I.Content,
1147
+ _.Content,
1035
1148
  {
1036
1149
  "data-slot": "accordion-content",
1037
1150
  className: "data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm",
1038
1151
  ...r,
1039
- children: /* @__PURE__ */ e("div", { className: i("pt-0 pb-4", a), children: t })
1152
+ children: /* @__PURE__ */ e("div", { className: o("pt-0 pb-4", a), children: t })
1040
1153
  }
1041
1154
  );
1042
1155
  }
1043
- function Ce({
1156
+ function Ve({
1044
1157
  delayDuration: a = 0,
1045
1158
  ...t
1046
1159
  }) {
1047
1160
  return /* @__PURE__ */ e(
1048
- C.Provider,
1161
+ I.Provider,
1049
1162
  {
1050
1163
  "data-slot": "tooltip-provider",
1051
1164
  delayDuration: a,
@@ -1053,57 +1166,57 @@ function Ce({
1053
1166
  }
1054
1167
  );
1055
1168
  }
1056
- function dt({
1169
+ function Ht({
1057
1170
  ...a
1058
1171
  }) {
1059
- return /* @__PURE__ */ e(Ce, { children: /* @__PURE__ */ e(C.Root, { "data-slot": "tooltip", ...a }) });
1172
+ return /* @__PURE__ */ e(Ve, { children: /* @__PURE__ */ e(I.Root, { "data-slot": "tooltip", ...a }) });
1060
1173
  }
1061
- function ct({
1174
+ function Gt({
1062
1175
  ...a
1063
1176
  }) {
1064
- return /* @__PURE__ */ e(C.Trigger, { "data-slot": "tooltip-trigger", ...a });
1177
+ return /* @__PURE__ */ e(I.Trigger, { "data-slot": "tooltip-trigger", ...a });
1065
1178
  }
1066
- function ut({
1179
+ function Ut({
1067
1180
  className: a,
1068
1181
  sideOffset: t = 0,
1069
1182
  children: r,
1070
- ...o
1183
+ ...n
1071
1184
  }) {
1072
- return /* @__PURE__ */ e(C.Portal, { children: /* @__PURE__ */ s(
1073
- C.Content,
1185
+ return /* @__PURE__ */ e(I.Portal, { children: /* @__PURE__ */ i(
1186
+ I.Content,
1074
1187
  {
1075
1188
  "data-slot": "tooltip-content",
1076
1189
  sideOffset: t,
1077
- className: i(
1190
+ className: o(
1078
1191
  "bg-primary text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance",
1079
1192
  a
1080
1193
  ),
1081
- ...o,
1194
+ ...n,
1082
1195
  children: [
1083
1196
  r,
1084
- /* @__PURE__ */ e(C.Arrow, { className: "bg-primary fill-primary z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]" })
1197
+ /* @__PURE__ */ e(I.Arrow, { className: "bg-primary fill-primary z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]" })
1085
1198
  ]
1086
1199
  }
1087
1200
  ) });
1088
1201
  }
1089
- const Ie = N(
1202
+ const Fe = N(
1090
1203
  ({
1091
1204
  className: a,
1092
1205
  variant: t = "default",
1093
1206
  title: r,
1094
- subtitle: o,
1095
- description: n,
1096
- primaryCTA: d,
1207
+ subtitle: n,
1208
+ description: s,
1209
+ primaryCTA: c,
1097
1210
  secondaryCTA: l,
1098
- backgroundImage: c,
1099
- overlay: g = !0,
1100
- children: f,
1101
- ...p
1102
- }, v) => /* @__PURE__ */ s(
1211
+ backgroundImage: m,
1212
+ overlay: f = !0,
1213
+ children: u,
1214
+ ...v
1215
+ }, g) => /* @__PURE__ */ i(
1103
1216
  "section",
1104
1217
  {
1105
- ref: v,
1106
- className: i(
1218
+ ref: g,
1219
+ className: o(
1107
1220
  "relative flex min-h-[400px] w-full flex-col justify-center px-6 py-16 lg:px-12 lg:py-24",
1108
1221
  {
1109
1222
  default: "items-start text-left",
@@ -1112,69 +1225,69 @@ const Ie = N(
1112
1225
  }[t],
1113
1226
  a
1114
1227
  ),
1115
- ...p,
1228
+ ...v,
1116
1229
  children: [
1117
- c && /* @__PURE__ */ s(j, { children: [
1230
+ m && /* @__PURE__ */ i(A, { children: [
1118
1231
  /* @__PURE__ */ e(
1119
1232
  "div",
1120
1233
  {
1121
1234
  className: "absolute inset-0 bg-cover bg-center bg-no-repeat",
1122
- style: { backgroundImage: `url(${c})` }
1235
+ style: { backgroundImage: `url(${m})` }
1123
1236
  }
1124
1237
  ),
1125
- g && /* @__PURE__ */ e("div", { className: "absolute inset-0 bg-gradient-to-r from-black/70 to-black/30" })
1238
+ f && /* @__PURE__ */ e("div", { className: "absolute inset-0 bg-gradient-to-r from-black/70 to-black/30" })
1126
1239
  ] }),
1127
- /* @__PURE__ */ s(
1240
+ /* @__PURE__ */ i(
1128
1241
  "div",
1129
1242
  {
1130
- className: i(
1243
+ className: o(
1131
1244
  "relative z-10 max-w-7xl mx-auto w-full",
1132
1245
  t === "centered" && "flex flex-col items-center"
1133
1246
  ),
1134
1247
  children: [
1135
- /* @__PURE__ */ s("div", { className: i("max-w-3xl", t === "split" && "max-w-none"), children: [
1136
- o && /* @__PURE__ */ e(
1248
+ /* @__PURE__ */ i("div", { className: o("max-w-3xl", t === "split" && "max-w-none"), children: [
1249
+ n && /* @__PURE__ */ e(
1137
1250
  "p",
1138
1251
  {
1139
- className: i(
1252
+ className: o(
1140
1253
  "mb-4 text-sm font-semibold uppercase tracking-wider",
1141
- c ? "text-[var(--warning)]" : "text-[var(--brand-primary)]"
1254
+ m ? "text-[var(--warning)]" : "text-[var(--brand-primary)]"
1142
1255
  ),
1143
- children: o
1256
+ children: n
1144
1257
  }
1145
1258
  ),
1146
1259
  /* @__PURE__ */ e(
1147
1260
  "h1",
1148
1261
  {
1149
- className: i(
1262
+ className: o(
1150
1263
  "text-4xl font-bold leading-tight lg:text-5xl xl:text-6xl",
1151
- c ? "text-white" : "text-[var(--foreground)]"
1264
+ m ? "text-white" : "text-[var(--foreground)]"
1152
1265
  ),
1153
1266
  children: r
1154
1267
  }
1155
1268
  ),
1156
- n && /* @__PURE__ */ e(
1269
+ s && /* @__PURE__ */ e(
1157
1270
  "p",
1158
1271
  {
1159
- className: i(
1272
+ className: o(
1160
1273
  "mt-6 text-lg lg:text-xl",
1161
- c ? "text-gray-200" : "text-[var(--muted-foreground)]"
1274
+ m ? "text-gray-200" : "text-[var(--muted-foreground)]"
1162
1275
  ),
1163
- children: n
1276
+ children: s
1164
1277
  }
1165
1278
  ),
1166
- (d || l) && /* @__PURE__ */ s("div", { className: "mt-8 flex flex-wrap gap-4", children: [
1167
- d && /* @__PURE__ */ e(
1168
- z,
1279
+ (c || l) && /* @__PURE__ */ i("div", { className: "mt-8 flex flex-wrap gap-4", children: [
1280
+ c && /* @__PURE__ */ e(
1281
+ C,
1169
1282
  {
1170
1283
  size: "lg",
1171
- onClick: d.onClick,
1284
+ onClick: c.onClick,
1172
1285
  variant: "primary",
1173
- children: d.label
1286
+ children: c.label
1174
1287
  }
1175
1288
  ),
1176
1289
  l && /* @__PURE__ */ e(
1177
- z,
1290
+ C,
1178
1291
  {
1179
1292
  size: "lg",
1180
1293
  onClick: l.onClick,
@@ -1184,53 +1297,53 @@ const Ie = N(
1184
1297
  )
1185
1298
  ] })
1186
1299
  ] }),
1187
- t === "split" && f && /* @__PURE__ */ e("div", { className: "mt-8 lg:mt-0", children: f })
1300
+ t === "split" && u && /* @__PURE__ */ e("div", { className: "mt-8 lg:mt-0", children: u })
1188
1301
  ]
1189
1302
  }
1190
1303
  ),
1191
- t !== "split" && f && /* @__PURE__ */ e("div", { className: "relative z-10 mt-12 w-full max-w-7xl mx-auto", children: f })
1304
+ t !== "split" && u && /* @__PURE__ */ e("div", { className: "relative z-10 mt-12 w-full max-w-7xl mx-auto", children: u })
1192
1305
  ]
1193
1306
  }
1194
1307
  )
1195
1308
  );
1196
- Ie.displayName = "Hero";
1197
- const W = N(
1309
+ Fe.displayName = "Hero";
1310
+ const Y = N(
1198
1311
  ({
1199
1312
  className: a,
1200
1313
  variant: t = "default",
1201
1314
  icon: r,
1202
- title: o,
1203
- description: n,
1204
- action: d,
1315
+ title: n,
1316
+ description: s,
1317
+ action: c,
1205
1318
  ...l
1206
- }, c) => {
1207
- const f = r || {
1208
- default: /* @__PURE__ */ e(ie, { className: "h-16 w-16" }),
1209
- search: /* @__PURE__ */ e(L, { className: "h-16 w-16" }),
1210
- cart: /* @__PURE__ */ e(_, { className: "h-16 w-16" }),
1211
- error: /* @__PURE__ */ e(re, { className: "h-16 w-16" })
1319
+ }, m) => {
1320
+ const u = r || {
1321
+ default: /* @__PURE__ */ e(ce, { className: "h-16 w-16" }),
1322
+ search: /* @__PURE__ */ e(Q, { className: "h-16 w-16" }),
1323
+ cart: /* @__PURE__ */ e(L, { className: "h-16 w-16" }),
1324
+ error: /* @__PURE__ */ e(de, { className: "h-16 w-16" })
1212
1325
  }[t];
1213
- return /* @__PURE__ */ s(
1326
+ return /* @__PURE__ */ i(
1214
1327
  "div",
1215
1328
  {
1216
- ref: c,
1217
- className: i(
1329
+ ref: m,
1330
+ className: o(
1218
1331
  "flex flex-col items-center justify-center py-16 px-6 text-center",
1219
1332
  a
1220
1333
  ),
1221
1334
  ...l,
1222
1335
  children: [
1223
- /* @__PURE__ */ e("div", { className: "rounded-full bg-[var(--muted)] p-6 text-[var(--muted-foreground)]", children: f }),
1224
- /* @__PURE__ */ e("h3", { className: "mt-6 text-xl font-semibold text-[var(--foreground)]", children: o }),
1225
- n && /* @__PURE__ */ e("p", { className: "mt-2 max-w-md text-[var(--muted-foreground)]", children: n }),
1226
- d && /* @__PURE__ */ e(
1227
- z,
1336
+ /* @__PURE__ */ e("div", { className: "rounded-full bg-[var(--muted)] p-6 text-[var(--muted-foreground)]", children: u }),
1337
+ /* @__PURE__ */ e("h3", { className: "mt-6 text-xl font-semibold text-[var(--foreground)]", children: n }),
1338
+ s && /* @__PURE__ */ e("p", { className: "mt-2 max-w-md text-[var(--muted-foreground)]", children: s }),
1339
+ c && /* @__PURE__ */ e(
1340
+ C,
1228
1341
  {
1229
- onClick: d.onClick,
1342
+ onClick: c.onClick,
1230
1343
  variant: "primary",
1231
1344
  size: "lg",
1232
1345
  className: "mt-6",
1233
- children: d.label
1346
+ children: c.label
1234
1347
  }
1235
1348
  )
1236
1349
  ]
@@ -1238,20 +1351,20 @@ const W = N(
1238
1351
  );
1239
1352
  }
1240
1353
  );
1241
- W.displayName = "EmptyState";
1242
- const je = N(
1354
+ Y.displayName = "EmptyState";
1355
+ const qe = N(
1243
1356
  ({
1244
1357
  className: a,
1245
1358
  type: t = "generic",
1246
1359
  title: r,
1247
- message: o,
1248
- onRetry: n,
1249
- onGoHome: d,
1360
+ message: n,
1361
+ onRetry: s,
1362
+ onGoHome: c,
1250
1363
  showRetry: l = !0,
1251
- showHome: c = !0,
1252
- ...g
1253
- }, f) => {
1254
- const v = {
1364
+ showHome: m = !0,
1365
+ ...f
1366
+ }, u) => {
1367
+ const g = {
1255
1368
  404: {
1256
1369
  title: "Página não encontrada",
1257
1370
  message: "A página que você está procurando não existe ou foi movida.",
@@ -1272,43 +1385,43 @@ const je = N(
1272
1385
  message: "Ocorreu um erro inesperado. Por favor, tente novamente.",
1273
1386
  code: ""
1274
1387
  }
1275
- }[t], b = r || v.title, h = o || v.message;
1276
- return /* @__PURE__ */ s(
1388
+ }[t], b = r || g.title, h = n || g.message;
1389
+ return /* @__PURE__ */ i(
1277
1390
  "div",
1278
1391
  {
1279
- ref: f,
1280
- className: i(
1392
+ ref: u,
1393
+ className: o(
1281
1394
  "flex min-h-[500px] flex-col items-center justify-center py-16 px-6 text-center",
1282
1395
  a
1283
1396
  ),
1284
1397
  role: "alert",
1285
1398
  "aria-live": "assertive",
1286
- ...g,
1399
+ ...f,
1287
1400
  children: [
1288
- /* @__PURE__ */ s("div", { className: "flex flex-col items-center gap-4", children: [
1289
- v.code && /* @__PURE__ */ e("h1", { className: "text-9xl font-bold text-[var(--muted)] opacity-40", children: v.code }),
1290
- /* @__PURE__ */ e("div", { className: "rounded-full bg-[var(--destructive)]/10 p-6 text-[var(--destructive)]", children: /* @__PURE__ */ e(se, { className: "h-16 w-16" }) })
1401
+ /* @__PURE__ */ i("div", { className: "flex flex-col items-center gap-4", children: [
1402
+ g.code && /* @__PURE__ */ e("h1", { className: "text-9xl font-bold text-[var(--muted)] opacity-40", children: g.code }),
1403
+ /* @__PURE__ */ e("div", { className: "rounded-full bg-[var(--destructive)]/10 p-6 text-[var(--destructive)]", children: /* @__PURE__ */ e(ue, { className: "h-16 w-16" }) })
1291
1404
  ] }),
1292
1405
  /* @__PURE__ */ e("h2", { className: "mt-6 text-2xl font-bold text-[var(--foreground)]", children: b }),
1293
1406
  /* @__PURE__ */ e("p", { className: "mt-2 max-w-md text-[var(--muted-foreground)]", children: h }),
1294
- /* @__PURE__ */ s("div", { className: "mt-8 flex flex-wrap gap-4 justify-center", children: [
1295
- l && n && /* @__PURE__ */ e(
1296
- z,
1407
+ /* @__PURE__ */ i("div", { className: "mt-8 flex flex-wrap gap-4 justify-center", children: [
1408
+ l && s && /* @__PURE__ */ e(
1409
+ C,
1297
1410
  {
1298
- onClick: n,
1411
+ onClick: s,
1299
1412
  variant: "primary",
1300
1413
  size: "lg",
1301
- leftIcon: /* @__PURE__ */ e(oe, { className: "h-5 w-5" }),
1414
+ leftIcon: /* @__PURE__ */ e(me, { className: "h-5 w-5" }),
1302
1415
  children: "Tentar novamente"
1303
1416
  }
1304
1417
  ),
1305
- c && d && /* @__PURE__ */ e(
1306
- z,
1418
+ m && c && /* @__PURE__ */ e(
1419
+ C,
1307
1420
  {
1308
- onClick: d,
1421
+ onClick: c,
1309
1422
  variant: "secondary",
1310
1423
  size: "lg",
1311
- leftIcon: /* @__PURE__ */ e(ne, { className: "h-5 w-5" }),
1424
+ leftIcon: /* @__PURE__ */ e(fe, { className: "h-5 w-5" }),
1312
1425
  children: "Voltar ao início"
1313
1426
  }
1314
1427
  )
@@ -1318,41 +1431,41 @@ const je = N(
1318
1431
  );
1319
1432
  }
1320
1433
  );
1321
- je.displayName = "ErrorState";
1322
- const De = N(
1434
+ qe.displayName = "ErrorState";
1435
+ const He = N(
1323
1436
  ({
1324
1437
  className: a,
1325
1438
  products: t,
1326
1439
  columns: r = 4,
1327
- gap: o = "md",
1328
- isLoading: n = !1,
1329
- skeletonCount: d = 8,
1440
+ gap: n = "md",
1441
+ isLoading: s = !1,
1442
+ skeletonCount: c = 8,
1330
1443
  emptyStateMessage: l = "Nenhum produto encontrado",
1331
- onEmptyAction: c,
1332
- ...g
1333
- }, f) => {
1334
- const p = {
1444
+ onEmptyAction: m,
1445
+ ...f
1446
+ }, u) => {
1447
+ const v = {
1335
1448
  2: "grid-cols-1 sm:grid-cols-2",
1336
1449
  3: "grid-cols-1 sm:grid-cols-2 lg:grid-cols-3",
1337
1450
  4: "grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4",
1338
1451
  5: "grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4 xl:grid-cols-5"
1339
- }, v = {
1452
+ }, g = {
1340
1453
  sm: "gap-4",
1341
1454
  md: "gap-6",
1342
1455
  lg: "gap-8"
1343
1456
  };
1344
- return n ? /* @__PURE__ */ e(
1457
+ return s ? /* @__PURE__ */ e(
1345
1458
  "div",
1346
1459
  {
1347
- ref: f,
1348
- className: i(
1460
+ ref: u,
1461
+ className: o(
1349
1462
  "grid",
1350
- p[r],
1351
- v[o],
1463
+ v[r],
1464
+ g[n],
1352
1465
  a
1353
1466
  ),
1354
- ...g,
1355
- children: Array.from({ length: d }).map((b, h) => /* @__PURE__ */ e(
1467
+ ...f,
1468
+ children: Array.from({ length: c }).map((b, h) => /* @__PURE__ */ e(
1356
1469
  R,
1357
1470
  {
1358
1471
  image: "",
@@ -1364,49 +1477,49 @@ const De = N(
1364
1477
  ))
1365
1478
  }
1366
1479
  ) : t.length === 0 ? /* @__PURE__ */ e(
1367
- W,
1480
+ Y,
1368
1481
  {
1369
1482
  variant: "search",
1370
1483
  title: l,
1371
1484
  description: "Tente ajustar seus filtros ou realizar uma nova busca",
1372
- action: c ? {
1485
+ action: m ? {
1373
1486
  label: "Limpar filtros",
1374
- onClick: c
1487
+ onClick: m
1375
1488
  } : void 0
1376
1489
  }
1377
1490
  ) : /* @__PURE__ */ e(
1378
1491
  "div",
1379
1492
  {
1380
- ref: f,
1381
- className: i(
1493
+ ref: u,
1494
+ className: o(
1382
1495
  "grid",
1383
- p[r],
1384
- v[o],
1496
+ v[r],
1497
+ g[n],
1385
1498
  a
1386
1499
  ),
1387
- ...g,
1500
+ ...f,
1388
1501
  children: t.map((b, h) => /* @__PURE__ */ e(R, { ...b }, h))
1389
1502
  }
1390
1503
  );
1391
1504
  }
1392
1505
  );
1393
- De.displayName = "ProductGrid";
1394
- function mt({
1506
+ He.displayName = "ProductGrid";
1507
+ function Qt({
1395
1508
  ...a
1396
1509
  }) {
1397
1510
  return /* @__PURE__ */ e(w.Root, { "data-slot": "dialog", ...a });
1398
1511
  }
1399
- function ft({
1512
+ function Wt({
1400
1513
  ...a
1401
1514
  }) {
1402
1515
  return /* @__PURE__ */ e(w.Trigger, { "data-slot": "dialog-trigger", ...a });
1403
1516
  }
1404
- function Pe({
1517
+ function Ge({
1405
1518
  ...a
1406
1519
  }) {
1407
1520
  return /* @__PURE__ */ e(w.Portal, { "data-slot": "dialog-portal", ...a });
1408
1521
  }
1409
- function $e({
1522
+ function Ue({
1410
1523
  className: a,
1411
1524
  ...t
1412
1525
  }) {
@@ -1414,7 +1527,7 @@ function $e({
1414
1527
  w.Overlay,
1415
1528
  {
1416
1529
  "data-slot": "dialog-overlay",
1417
- className: i(
1530
+ className: o(
1418
1531
  "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",
1419
1532
  a
1420
1533
  ),
@@ -1422,26 +1535,26 @@ function $e({
1422
1535
  }
1423
1536
  );
1424
1537
  }
1425
- function gt({
1538
+ function Kt({
1426
1539
  className: a,
1427
1540
  children: t,
1428
1541
  ...r
1429
1542
  }) {
1430
- return /* @__PURE__ */ s(Pe, { "data-slot": "dialog-portal", children: [
1431
- /* @__PURE__ */ e($e, {}),
1432
- /* @__PURE__ */ s(
1543
+ return /* @__PURE__ */ i(Ge, { "data-slot": "dialog-portal", children: [
1544
+ /* @__PURE__ */ e(Ue, {}),
1545
+ /* @__PURE__ */ i(
1433
1546
  w.Content,
1434
1547
  {
1435
1548
  "data-slot": "dialog-content",
1436
- className: i(
1549
+ className: o(
1437
1550
  "bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg",
1438
1551
  a
1439
1552
  ),
1440
1553
  ...r,
1441
1554
  children: [
1442
1555
  t,
1443
- /* @__PURE__ */ s(w.Close, { className: "ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", children: [
1444
- /* @__PURE__ */ e(G, {}),
1556
+ /* @__PURE__ */ i(w.Close, { className: "ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", children: [
1557
+ /* @__PURE__ */ e(K, {}),
1445
1558
  /* @__PURE__ */ e("span", { className: "sr-only", children: "Close" })
1446
1559
  ] })
1447
1560
  ]
@@ -1449,22 +1562,22 @@ function gt({
1449
1562
  )
1450
1563
  ] });
1451
1564
  }
1452
- function pt({ className: a, ...t }) {
1565
+ function Ot({ className: a, ...t }) {
1453
1566
  return /* @__PURE__ */ e(
1454
1567
  "div",
1455
1568
  {
1456
1569
  "data-slot": "dialog-header",
1457
- className: i("flex flex-col gap-2 text-center sm:text-left", a),
1570
+ className: o("flex flex-col gap-2 text-center sm:text-left", a),
1458
1571
  ...t
1459
1572
  }
1460
1573
  );
1461
1574
  }
1462
- function vt({ className: a, ...t }) {
1575
+ function Xt({ className: a, ...t }) {
1463
1576
  return /* @__PURE__ */ e(
1464
1577
  "div",
1465
1578
  {
1466
1579
  "data-slot": "dialog-footer",
1467
- className: i(
1580
+ className: o(
1468
1581
  "flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",
1469
1582
  a
1470
1583
  ),
@@ -1472,7 +1585,7 @@ function vt({ className: a, ...t }) {
1472
1585
  }
1473
1586
  );
1474
1587
  }
1475
- function bt({
1588
+ function Yt({
1476
1589
  className: a,
1477
1590
  ...t
1478
1591
  }) {
@@ -1480,12 +1593,12 @@ function bt({
1480
1593
  w.Title,
1481
1594
  {
1482
1595
  "data-slot": "dialog-title",
1483
- className: i("text-lg leading-none font-semibold", a),
1596
+ className: o("text-lg leading-none font-semibold", a),
1484
1597
  ...t
1485
1598
  }
1486
1599
  );
1487
1600
  }
1488
- function ht({
1601
+ function Zt({
1489
1602
  className: a,
1490
1603
  ...t
1491
1604
  }) {
@@ -1493,25 +1606,30 @@ function ht({
1493
1606
  w.Description,
1494
1607
  {
1495
1608
  "data-slot": "dialog-description",
1496
- className: i("text-muted-foreground text-sm", a),
1609
+ className: o("text-muted-foreground text-sm", a),
1497
1610
  ...t
1498
1611
  }
1499
1612
  );
1500
1613
  }
1501
- function xt({ ...a }) {
1614
+ function Qe({ ...a }) {
1502
1615
  return /* @__PURE__ */ e(w.Root, { "data-slot": "sheet", ...a });
1503
1616
  }
1504
- function Nt({
1617
+ function We({
1505
1618
  ...a
1506
1619
  }) {
1507
1620
  return /* @__PURE__ */ e(w.Trigger, { "data-slot": "sheet-trigger", ...a });
1508
1621
  }
1509
- function Te({
1622
+ function Ke({
1623
+ ...a
1624
+ }) {
1625
+ return /* @__PURE__ */ e(w.Close, { "data-slot": "sheet-close", ...a });
1626
+ }
1627
+ function Oe({
1510
1628
  ...a
1511
1629
  }) {
1512
1630
  return /* @__PURE__ */ e(w.Portal, { "data-slot": "sheet-portal", ...a });
1513
1631
  }
1514
- function Re({
1632
+ function Xe({
1515
1633
  className: a,
1516
1634
  ...t
1517
1635
  }) {
@@ -1519,7 +1637,7 @@ function Re({
1519
1637
  w.Overlay,
1520
1638
  {
1521
1639
  "data-slot": "sheet-overlay",
1522
- className: i(
1640
+ className: o(
1523
1641
  "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",
1524
1642
  a
1525
1643
  ),
@@ -1527,19 +1645,19 @@ function Re({
1527
1645
  }
1528
1646
  );
1529
1647
  }
1530
- function wt({
1648
+ function Ye({
1531
1649
  className: a,
1532
1650
  children: t,
1533
1651
  side: r = "right",
1534
- ...o
1652
+ ...n
1535
1653
  }) {
1536
- return /* @__PURE__ */ s(Te, { children: [
1537
- /* @__PURE__ */ e(Re, {}),
1538
- /* @__PURE__ */ s(
1654
+ return /* @__PURE__ */ i(Oe, { children: [
1655
+ /* @__PURE__ */ e(Xe, {}),
1656
+ /* @__PURE__ */ i(
1539
1657
  w.Content,
1540
1658
  {
1541
1659
  "data-slot": "sheet-content",
1542
- className: i(
1660
+ className: o(
1543
1661
  "bg-background data-[state=open]:animate-in data-[state=closed]:animate-out fixed z-50 flex flex-col gap-4 shadow-lg transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500",
1544
1662
  r === "right" && "data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right inset-y-0 right-0 h-full w-3/4 border-l sm:max-w-sm",
1545
1663
  r === "left" && "data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left inset-y-0 left-0 h-full w-3/4 border-r sm:max-w-sm",
@@ -1547,11 +1665,11 @@ function wt({
1547
1665
  r === "bottom" && "data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom inset-x-0 bottom-0 h-auto border-t",
1548
1666
  a
1549
1667
  ),
1550
- ...o,
1668
+ ...n,
1551
1669
  children: [
1552
1670
  t,
1553
- /* @__PURE__ */ s(w.Close, { className: "ring-offset-background focus:ring-ring data-[state=open]:bg-secondary absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none", children: [
1554
- /* @__PURE__ */ e(G, { className: "size-4" }),
1671
+ /* @__PURE__ */ i(w.Close, { className: "ring-offset-background focus:ring-ring data-[state=open]:bg-secondary absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none", children: [
1672
+ /* @__PURE__ */ e(K, { className: "size-4" }),
1555
1673
  /* @__PURE__ */ e("span", { className: "sr-only", children: "Close" })
1556
1674
  ] })
1557
1675
  ]
@@ -1559,27 +1677,27 @@ function wt({
1559
1677
  )
1560
1678
  ] });
1561
1679
  }
1562
- function yt({ className: a, ...t }) {
1680
+ function Ze({ className: a, ...t }) {
1563
1681
  return /* @__PURE__ */ e(
1564
1682
  "div",
1565
1683
  {
1566
1684
  "data-slot": "sheet-header",
1567
- className: i("flex flex-col gap-1.5 p-4", a),
1685
+ className: o("flex flex-col gap-1.5 p-4", a),
1568
1686
  ...t
1569
1687
  }
1570
1688
  );
1571
1689
  }
1572
- function kt({ className: a, ...t }) {
1690
+ function Jt({ className: a, ...t }) {
1573
1691
  return /* @__PURE__ */ e(
1574
1692
  "div",
1575
1693
  {
1576
1694
  "data-slot": "sheet-footer",
1577
- className: i("mt-auto flex flex-col gap-2 p-4", a),
1695
+ className: o("mt-auto flex flex-col gap-2 p-4", a),
1578
1696
  ...t
1579
1697
  }
1580
1698
  );
1581
1699
  }
1582
- function zt({
1700
+ function Je({
1583
1701
  className: a,
1584
1702
  ...t
1585
1703
  }) {
@@ -1587,12 +1705,12 @@ function zt({
1587
1705
  w.Title,
1588
1706
  {
1589
1707
  "data-slot": "sheet-title",
1590
- className: i("text-foreground font-semibold", a),
1708
+ className: o("text-foreground font-semibold", a),
1591
1709
  ...t
1592
1710
  }
1593
1711
  );
1594
1712
  }
1595
- function St({
1713
+ function ea({
1596
1714
  className: a,
1597
1715
  ...t
1598
1716
  }) {
@@ -1600,315 +1718,844 @@ function St({
1600
1718
  w.Description,
1601
1719
  {
1602
1720
  "data-slot": "sheet-description",
1603
- className: i("text-muted-foreground text-sm", a),
1721
+ className: o("text-muted-foreground text-sm", a),
1604
1722
  ...t
1605
1723
  }
1606
1724
  );
1607
1725
  }
1608
- const Ee = N(
1609
- ({ className: a, onThemeChange: t, onFontSizeChange: r, ...o }, n) => {
1610
- const [d, l] = k("light"), [c, g] = k(16), [f, p] = k(!1);
1611
- D(() => {
1612
- const m = document.documentElement.classList.contains("dark");
1613
- l(m ? "dark" : "light");
1614
- const u = getComputedStyle(document.documentElement).getPropertyValue("--font-size");
1615
- u && g(parseInt(u));
1616
- }, []), D(() => {
1617
- if (!f && typeof window < "u" && !document.querySelector('script[src*="vlibras"]')) {
1618
- const u = document.createElement("script");
1619
- u.src = "https://vlibras.gov.br/app/vlibras-plugin.js", u.async = !0, u.onload = () => {
1620
- p(!0), window.VLibras && new window.VLibras.Widget("https://vlibras.gov.br/app");
1621
- }, document.body.appendChild(u);
1726
+ const et = N(
1727
+ ({ className: a, onThemeChange: t, onFontSizeChange: r, showA11yLink: n = !1, ...s }, c) => {
1728
+ const [l, m] = k("light"), [f, u] = k(16), [v, g] = k(!1);
1729
+ M(() => {
1730
+ const p = localStorage.getItem("a11y-theme") ?? document.documentElement.getAttribute("data-theme") ?? "light";
1731
+ m(p);
1732
+ const y = Number(localStorage.getItem("a11y-font-size"));
1733
+ Number.isFinite(y) && y > 0 && u(y);
1734
+ }, []), M(() => {
1735
+ if (!v && typeof window < "u" && !document.querySelector('script[src*="vlibras"]')) {
1736
+ const p = document.createElement("script");
1737
+ p.src = "https://vlibras.gov.br/app/vlibras-plugin.js", p.async = !0, p.onload = () => {
1738
+ g(!0), window.VLibras && new window.VLibras.Widget("https://vlibras.gov.br/app");
1739
+ }, document.body.appendChild(p);
1622
1740
  }
1623
- }, [f]);
1624
- const v = () => {
1625
- const m = d === "light" ? "dark" : "light";
1626
- l(m), document.documentElement.classList.toggle("dark"), t == null || t(m), localStorage.setItem("theme", m);
1627
- }, b = () => {
1628
- const m = Math.min(c + 2, 24);
1629
- g(m), document.documentElement.style.setProperty("--font-size", `${m}px`), r == null || r(m), localStorage.setItem("fontSize", m.toString());
1741
+ }, [v]);
1742
+ const b = () => {
1743
+ const d = l === "light" ? "dark" : "light";
1744
+ m(d), document.documentElement.setAttribute("data-theme", d), localStorage.setItem("a11y-theme", d), t == null || t(d);
1630
1745
  }, h = () => {
1631
- const m = Math.max(c - 2, 12);
1632
- g(m), document.documentElement.style.setProperty("--font-size", `${m}px`), r == null || r(m), localStorage.setItem("fontSize", m.toString());
1746
+ const d = Math.min(f + 2, 24);
1747
+ u(d), document.documentElement.style.setProperty("--font-size", `${d}px`), document.documentElement.style.fontSize = `${d}px`, localStorage.setItem("a11y-font-size", d.toString()), r == null || r(d);
1748
+ }, x = () => {
1749
+ const d = Math.max(f - 2, 12);
1750
+ u(d), document.documentElement.style.setProperty("--font-size", `${d}px`), document.documentElement.style.fontSize = `${d}px`, localStorage.setItem("a11y-font-size", d.toString()), r == null || r(d);
1633
1751
  };
1634
- return /* @__PURE__ */ s(
1752
+ return /* @__PURE__ */ e(
1635
1753
  "div",
1636
1754
  {
1637
- ref: n,
1638
- className: i(
1639
- "flex items-center justify-end gap-2 bg-[var(--secondary)] px-4 py-2 border-b border-[var(--border)]",
1755
+ ref: c,
1756
+ className: o(
1757
+ "w-full border-b border-[var(--border)] bg-[var(--card)] sticky top-0 z-50",
1640
1758
  a
1641
1759
  ),
1642
1760
  role: "toolbar",
1643
- "aria-label": "Barra de acessibilidade",
1644
- ...o,
1645
- children: [
1646
- /* @__PURE__ */ s(
1647
- "a",
1648
- {
1649
- href: "/acessibilidade",
1650
- className: "flex items-center gap-1.5 text-sm text-[var(--foreground)] hover:text-[var(--brand-primary)] transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] rounded px-2 py-1 min-h-[44px]",
1651
- children: [
1652
- /* @__PURE__ */ e(le, { className: "h-4 w-4" }),
1653
- /* @__PURE__ */ e("span", { className: "hidden sm:inline", children: "Acessibilidade" })
1654
- ]
1655
- }
1656
- ),
1657
- /* @__PURE__ */ s("div", { className: "flex items-center gap-1 border-l border-[var(--border)] pl-2", children: [
1761
+ "aria-label": "Ferramentas de acessibilidade",
1762
+ ...s,
1763
+ children: /* @__PURE__ */ i("div", { className: "mx-auto max-w-7xl px-4 py-2 flex items-center justify-between", children: [
1764
+ /* @__PURE__ */ i("div", { className: "flex items-center gap-2 text-sm text-[var(--muted-foreground)]", children: [
1765
+ /* @__PURE__ */ e(ge, { className: "h-4 w-4 flex-shrink-0", "aria-hidden": "true" }),
1766
+ /* @__PURE__ */ e("span", { className: "hidden sm:inline", children: "Ferramentas de Acessibilidade" })
1767
+ ] }),
1768
+ /* @__PURE__ */ i("div", { className: "flex items-center gap-2 md:gap-4", children: [
1769
+ n && /* @__PURE__ */ e(
1770
+ "a",
1771
+ {
1772
+ href: "/acessibilidade",
1773
+ className: "flex items-center gap-1.5 text-sm text-[var(--muted-foreground)] hover:text-[var(--primary)] transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] rounded px-2 py-1 min-h-[44px]",
1774
+ children: /* @__PURE__ */ e("span", { className: "hidden sm:inline", children: "Acessibilidade" })
1775
+ }
1776
+ ),
1777
+ /* @__PURE__ */ i("div", { role: "group", "aria-label": "Tamanho da fonte", className: "flex items-center gap-1", children: [
1778
+ /* @__PURE__ */ e(
1779
+ "button",
1780
+ {
1781
+ type: "button",
1782
+ onClick: x,
1783
+ disabled: f <= 12,
1784
+ "aria-label": "Diminuir tamanho da fonte",
1785
+ className: o(
1786
+ "p-2 rounded-md transition-colors text-[var(--muted-foreground)] hover:bg-[var(--muted)]",
1787
+ "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]",
1788
+ "disabled:opacity-40 disabled:cursor-not-allowed"
1789
+ ),
1790
+ children: /* @__PURE__ */ e(ve, { className: "h-4 w-4" })
1791
+ }
1792
+ ),
1793
+ /* @__PURE__ */ e("span", { className: "text-xs text-[var(--muted-foreground)] w-3 text-center select-none", "aria-hidden": "true", children: "A" }),
1794
+ /* @__PURE__ */ e(
1795
+ "button",
1796
+ {
1797
+ type: "button",
1798
+ onClick: h,
1799
+ disabled: f >= 24,
1800
+ "aria-label": "Aumentar tamanho da fonte",
1801
+ className: o(
1802
+ "p-2 rounded-md transition-colors text-[var(--muted-foreground)] hover:bg-[var(--muted)]",
1803
+ "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]",
1804
+ "disabled:opacity-40 disabled:cursor-not-allowed"
1805
+ ),
1806
+ children: /* @__PURE__ */ e(pe, { className: "h-4 w-4" })
1807
+ }
1808
+ )
1809
+ ] }),
1658
1810
  /* @__PURE__ */ e(
1659
1811
  "button",
1660
1812
  {
1661
1813
  type: "button",
1662
- onClick: h,
1663
- disabled: c <= 12,
1664
- "aria-label": "Diminuir tamanho da fonte",
1665
- title: "Diminuir fonte (A-)",
1666
- className: i(
1667
- "inline-flex items-center justify-center rounded-lg min-w-[44px] min-h-[44px] px-3 text-[var(--foreground)] hover:bg-[var(--accent)] transition-colors",
1668
- "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] focus-visible:ring-offset-2",
1669
- "disabled:opacity-50 disabled:cursor-not-allowed"
1814
+ onClick: b,
1815
+ "aria-label": l === "light" ? "Ativar modo escuro" : "Ativar modo claro",
1816
+ className: o(
1817
+ "p-2 rounded-md transition-colors text-[var(--muted-foreground)] hover:bg-[var(--muted)]",
1818
+ "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]"
1670
1819
  ),
1671
- children: /* @__PURE__ */ e(H, { className: "h-4 w-4" })
1820
+ children: l === "light" ? /* @__PURE__ */ e(be, { className: "h-4 w-4" }) : /* @__PURE__ */ e(he, { className: "h-4 w-4" })
1672
1821
  }
1673
1822
  ),
1674
- /* @__PURE__ */ s("span", { className: "text-xs text-[var(--muted-foreground)] min-w-[32px] text-center font-medium", children: [
1675
- "A",
1676
- c > 16 && "+",
1677
- c < 16 && "-"
1678
- ] }),
1679
1823
  /* @__PURE__ */ e(
1680
1824
  "button",
1681
1825
  {
1682
1826
  type: "button",
1683
- onClick: b,
1684
- disabled: c >= 24,
1685
- "aria-label": "Aumentar tamanho da fonte",
1686
- title: "Aumentar fonte (A+)",
1687
- className: i(
1688
- "inline-flex items-center justify-center rounded-lg min-w-[44px] min-h-[44px] px-3 text-[var(--foreground)] hover:bg-[var(--accent)] transition-colors",
1689
- "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] focus-visible:ring-offset-2",
1690
- "disabled:opacity-50 disabled:cursor-not-allowed"
1827
+ onClick: () => g((d) => !d),
1828
+ "aria-label": "Ativar VLibras",
1829
+ "aria-pressed": v,
1830
+ className: o(
1831
+ "px-3 py-1 text-xs font-medium rounded-md transition-colors",
1832
+ "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]"
1691
1833
  ),
1692
- children: /* @__PURE__ */ e(q, { className: "h-4 w-4" })
1834
+ style: {
1835
+ backgroundColor: v ? "var(--primary)" : "transparent",
1836
+ color: v ? "var(--primary-foreground)" : "var(--muted-foreground)",
1837
+ border: v ? "none" : "1px solid var(--border)"
1838
+ },
1839
+ children: "VLibras"
1693
1840
  }
1694
1841
  )
1695
- ] }),
1696
- /* @__PURE__ */ e("div", { className: "border-l border-[var(--border)] pl-2", children: /* @__PURE__ */ e(
1697
- "button",
1698
- {
1699
- type: "button",
1700
- onClick: v,
1701
- "aria-label": `Alternar para modo ${d === "light" ? "escuro" : "claro"}`,
1702
- title: `Modo ${d === "light" ? "escuro" : "claro"}`,
1703
- className: i(
1704
- "inline-flex items-center justify-center rounded-lg min-w-[44px] min-h-[44px] px-3 text-[var(--foreground)] hover:bg-[var(--accent)] transition-colors",
1705
- "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] focus-visible:ring-offset-2"
1706
- ),
1707
- children: d === "light" ? /* @__PURE__ */ e(de, { className: "h-4 w-4" }) : /* @__PURE__ */ e(ce, { className: "h-4 w-4" })
1708
- }
1709
- ) }),
1710
- f && /* @__PURE__ */ s("div", { vw: "true", className: "enabled", children: [
1711
- /* @__PURE__ */ e("div", { "vw-access-button": "true", className: "active" }),
1712
- /* @__PURE__ */ e("div", { "vw-plugin-wrapper": "true", children: /* @__PURE__ */ e("div", { className: "vw-plugin-top-wrapper" }) })
1713
1842
  ] })
1714
- ]
1843
+ ] })
1715
1844
  }
1716
1845
  );
1717
1846
  }
1718
1847
  );
1719
- Ee.displayName = "TopAccessibilityBar";
1720
- const Be = N(
1848
+ et.displayName = "TopAccessibilityBar";
1849
+ const tt = N(
1721
1850
  ({
1722
1851
  className: a,
1723
1852
  slides: t,
1724
1853
  autoplayDelay: r = 5e3,
1725
- autoplay: o = !0,
1726
- ...n
1727
- }, d) => {
1728
- const [l, c] = k(0), [g, f] = k(!1), [p, v] = k(!1);
1729
- D(() => {
1730
- const u = window.matchMedia("(prefers-reduced-motion: reduce)");
1731
- v(u.matches);
1732
- const x = (S) => {
1733
- v(S.matches);
1854
+ autoplay: n = !0,
1855
+ ...s
1856
+ }, c) => {
1857
+ const [l, m] = k(0), [f, u] = k(!1), [v, g] = k(!1);
1858
+ M(() => {
1859
+ const d = window.matchMedia("(prefers-reduced-motion: reduce)");
1860
+ g(d.matches);
1861
+ const p = (y) => {
1862
+ g(y.matches);
1734
1863
  };
1735
- return u.addEventListener("change", x), () => u.removeEventListener("change", x);
1736
- }, []), D(() => {
1737
- if (!o || g || p) return;
1738
- const u = setInterval(() => {
1739
- c((x) => (x + 1) % t.length);
1864
+ return d.addEventListener("change", p), () => d.removeEventListener("change", p);
1865
+ }, []), M(() => {
1866
+ if (!n || f || v) return;
1867
+ const d = setInterval(() => {
1868
+ m((p) => (p + 1) % t.length);
1740
1869
  }, r);
1741
- return () => clearInterval(u);
1742
- }, [o, r, t.length, g, p]);
1743
- const b = (u) => {
1744
- c(u), f(!0), setTimeout(() => f(!1), r);
1870
+ return () => clearInterval(d);
1871
+ }, [n, r, t.length, f, v]);
1872
+ const b = (d) => {
1873
+ m(d), u(!0), setTimeout(() => u(!1), r);
1745
1874
  }, h = () => {
1746
1875
  b((l - 1 + t.length) % t.length);
1747
- }, m = () => {
1876
+ }, x = () => {
1748
1877
  b((l + 1) % t.length);
1749
1878
  };
1750
- return t.length === 0 ? null : (t[l], /* @__PURE__ */ s(
1879
+ return t.length === 0 ? null : (t[l], /* @__PURE__ */ i(
1751
1880
  "div",
1752
1881
  {
1753
- ref: d,
1754
- className: i("relative w-full overflow-hidden", a),
1755
- onMouseEnter: () => f(!0),
1756
- onMouseLeave: () => f(!1),
1757
- ...n,
1882
+ ref: c,
1883
+ className: o("relative w-full overflow-hidden", a),
1884
+ onMouseEnter: () => u(!0),
1885
+ onMouseLeave: () => u(!1),
1886
+ ...s,
1758
1887
  children: [
1759
- /* @__PURE__ */ e("div", { className: "relative", children: t.map((u, x) => /* @__PURE__ */ s(
1888
+ /* @__PURE__ */ e("div", { className: "relative", children: t.map((d, p) => /* @__PURE__ */ i(
1760
1889
  "div",
1761
1890
  {
1762
- className: i(
1891
+ className: o(
1763
1892
  "w-full transition-opacity duration-700",
1764
- x === l ? "block" : "hidden"
1893
+ p === l ? "block" : "hidden"
1765
1894
  ),
1766
- "aria-hidden": x !== l,
1895
+ "aria-hidden": p !== l,
1767
1896
  children: [
1768
- /* @__PURE__ */ s("picture", { children: [
1897
+ /* @__PURE__ */ i("picture", { children: [
1769
1898
  /* @__PURE__ */ e(
1770
1899
  "source",
1771
1900
  {
1772
1901
  media: "(min-width: 1024px)",
1773
- srcSet: `${u.imageDesktop} 1x, ${u.imageDesktop.replace(/\.(jpg|png)$/, "@2x.$1")} 2x`
1902
+ srcSet: `${d.imageDesktop} 1x, ${d.imageDesktop.replace(/\.(jpg|png)$/, "@2x.$1")} 2x`
1774
1903
  }
1775
1904
  ),
1776
1905
  /* @__PURE__ */ e(
1777
1906
  "source",
1778
1907
  {
1779
1908
  media: "(min-width: 768px)",
1780
- srcSet: `${u.imageTablet} 1x, ${u.imageTablet.replace(/\.(jpg|png)$/, "@2x.$1")} 2x`
1909
+ srcSet: `${d.imageTablet} 1x, ${d.imageTablet.replace(/\.(jpg|png)$/, "@2x.$1")} 2x`
1781
1910
  }
1782
1911
  ),
1783
1912
  /* @__PURE__ */ e(
1784
1913
  "img",
1785
1914
  {
1786
- src: u.imageMobile,
1787
- srcSet: `${u.imageMobile} 1x, ${u.imageMobile.replace(/\.(jpg|png)$/, "@2x.$1")} 2x`,
1788
- alt: u.title,
1789
- className: "w-full object-cover aspect-[3/4] md:aspect-video",
1790
- loading: x === 0 ? "eager" : "lazy"
1915
+ src: d.imageMobile,
1916
+ srcSet: `${d.imageMobile} 1x, ${d.imageMobile.replace(/\.(jpg|png)$/, "@2x.$1")} 2x`,
1917
+ alt: d.title,
1918
+ className: "w-full object-cover aspect-[5/6] md:aspect-video lg:aspect-[1920/700]",
1919
+ loading: p === 0 ? "eager" : "lazy"
1791
1920
  }
1792
1921
  )
1793
1922
  ] }),
1794
- /* @__PURE__ */ e("div", { className: "absolute inset-0 flex items-center justify-center md:justify-start bg-gradient-to-t from-black/70 via-black/30 to-transparent md:bg-gradient-to-r md:from-black/80 md:via-black/50 md:to-transparent", children: /* @__PURE__ */ e("div", { className: "max-w-7xl mx-auto px-6 lg:px-12 w-full", children: /* @__PURE__ */ s("div", { className: "max-w-2xl text-center md:text-left", children: [
1795
- /* @__PURE__ */ e("h2", { className: "text-3xl md:text-4xl lg:text-5xl font-bold text-white mb-4", children: u.title }),
1796
- /* @__PURE__ */ e("p", { className: "text-lg md:text-xl text-gray-200 mb-6", children: u.description }),
1797
- u.cta && /* @__PURE__ */ e(
1923
+ /* @__PURE__ */ e("div", { className: "absolute inset-0 flex items-center justify-center md:justify-start bg-gradient-to-t from-black/70 via-black/30 to-transparent md:bg-gradient-to-r md:from-black/80 md:via-black/50 md:to-transparent", children: /* @__PURE__ */ e("div", { className: "max-w-7xl mx-auto px-6 lg:px-12 w-full", children: /* @__PURE__ */ i("div", { className: "max-w-2xl text-center md:text-left", children: [
1924
+ /* @__PURE__ */ e("h2", { className: "text-3xl md:text-4xl lg:text-5xl font-bold text-white mb-4", children: d.title }),
1925
+ /* @__PURE__ */ e("p", { className: "text-lg md:text-xl text-gray-200 mb-6", children: d.description }),
1926
+ d.cta && /* @__PURE__ */ e(
1798
1927
  "a",
1799
1928
  {
1800
- href: u.cta.href,
1801
- className: Q({ variant: "primary", size: "lg" }),
1802
- children: u.cta.label
1929
+ href: d.cta.href,
1930
+ className: X({ variant: "primary", size: "lg" }),
1931
+ children: d.cta.label
1803
1932
  }
1804
1933
  )
1805
1934
  ] }) }) })
1806
1935
  ]
1807
1936
  },
1808
- u.id
1937
+ d.id
1809
1938
  )) }),
1810
- t.length > 1 && /* @__PURE__ */ s(j, { children: [
1939
+ t.length > 1 && /* @__PURE__ */ i(A, { children: [
1811
1940
  /* @__PURE__ */ e(
1812
1941
  "button",
1813
1942
  {
1814
1943
  onClick: h,
1815
1944
  className: "absolute left-4 top-1/2 -translate-y-1/2 rounded-full bg-white/90 p-2 shadow-lg transition-all hover:bg-white focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] min-w-[44px] min-h-[44px]",
1816
1945
  "aria-label": "Slide anterior",
1817
- children: /* @__PURE__ */ e(ue, { className: "h-6 w-6 text-gray-900" })
1946
+ children: /* @__PURE__ */ e(xe, { className: "h-6 w-6 text-gray-900" })
1818
1947
  }
1819
1948
  ),
1820
1949
  /* @__PURE__ */ e(
1821
1950
  "button",
1822
1951
  {
1823
- onClick: m,
1952
+ onClick: x,
1824
1953
  className: "absolute right-4 top-1/2 -translate-y-1/2 rounded-full bg-white/90 p-2 shadow-lg transition-all hover:bg-white focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] min-w-[44px] min-h-[44px]",
1825
1954
  "aria-label": "Próximo slide",
1826
- children: /* @__PURE__ */ e(F, { className: "h-6 w-6 text-gray-900" })
1955
+ children: /* @__PURE__ */ e(W, { className: "h-6 w-6 text-gray-900" })
1827
1956
  }
1828
1957
  )
1829
1958
  ] }),
1830
- t.length > 1 && /* @__PURE__ */ e("div", { className: "absolute bottom-4 left-1/2 -translate-x-1/2 flex gap-2", children: t.map((u, x) => /* @__PURE__ */ e(
1959
+ t.length > 1 && /* @__PURE__ */ e("div", { className: "absolute bottom-4 left-1/2 -translate-x-1/2 flex gap-2", children: t.map((d, p) => /* @__PURE__ */ e(
1831
1960
  "button",
1832
1961
  {
1833
- onClick: () => b(x),
1834
- className: i(
1962
+ onClick: () => b(p),
1963
+ className: o(
1835
1964
  "h-2 rounded-full transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] min-w-[44px] min-h-[24px] flex items-center justify-center",
1836
- x === l ? "w-8 bg-white" : "w-2 bg-white/50 hover:bg-white/70"
1965
+ p === l ? "w-8 bg-white" : "w-2 bg-white/50 hover:bg-white/70"
1837
1966
  ),
1838
- "aria-label": `Ir para slide ${x + 1}`,
1839
- "aria-current": x === l
1967
+ "aria-label": `Ir para slide ${p + 1}`,
1968
+ "aria-current": p === l
1840
1969
  },
1841
- x
1970
+ p
1842
1971
  )) })
1843
1972
  ]
1844
1973
  }
1845
1974
  ));
1846
1975
  }
1847
1976
  );
1848
- Be.displayName = "HeroCarousel";
1977
+ tt.displayName = "HeroCarousel";
1978
+ function at({
1979
+ className: a,
1980
+ children: t,
1981
+ viewport: r = !0,
1982
+ ...n
1983
+ }) {
1984
+ return /* @__PURE__ */ i(
1985
+ S.Root,
1986
+ {
1987
+ "data-slot": "navigation-menu",
1988
+ "data-viewport": r,
1989
+ className: o(
1990
+ "group/navigation-menu relative flex max-w-max flex-1 items-center justify-center",
1991
+ a
1992
+ ),
1993
+ ...n,
1994
+ children: [
1995
+ t,
1996
+ r && /* @__PURE__ */ e(st, {})
1997
+ ]
1998
+ }
1999
+ );
2000
+ }
2001
+ function rt({
2002
+ className: a,
2003
+ ...t
2004
+ }) {
2005
+ return /* @__PURE__ */ e(
2006
+ S.List,
2007
+ {
2008
+ "data-slot": "navigation-menu-list",
2009
+ className: o(
2010
+ "group flex flex-1 list-none items-center justify-center gap-1",
2011
+ a
2012
+ ),
2013
+ ...t
2014
+ }
2015
+ );
2016
+ }
2017
+ function G({
2018
+ className: a,
2019
+ ...t
2020
+ }) {
2021
+ return /* @__PURE__ */ e(
2022
+ S.Item,
2023
+ {
2024
+ "data-slot": "navigation-menu-item",
2025
+ className: o("relative", a),
2026
+ ...t
2027
+ }
2028
+ );
2029
+ }
2030
+ const ot = P(
2031
+ "group inline-flex h-9 w-max items-center justify-center rounded-md bg-background px-4 py-2 text-sm font-medium hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground disabled:pointer-events-none disabled:opacity-50 data-[state=open]:hover:bg-accent data-[state=open]:text-accent-foreground data-[state=open]:focus:bg-accent data-[state=open]:bg-accent/50 focus-visible:ring-ring/50 outline-none transition-[color,box-shadow] focus-visible:ring-[3px] focus-visible:outline-1"
2032
+ );
2033
+ function it({
2034
+ className: a,
2035
+ children: t,
2036
+ ...r
2037
+ }) {
2038
+ return /* @__PURE__ */ i(
2039
+ S.Trigger,
2040
+ {
2041
+ "data-slot": "navigation-menu-trigger",
2042
+ className: o(ot(), "group", a),
2043
+ ...r,
2044
+ children: [
2045
+ t,
2046
+ " ",
2047
+ /* @__PURE__ */ e(
2048
+ E,
2049
+ {
2050
+ className: "relative top-[1px] ml-1 size-3 transition duration-300 group-data-[state=open]:rotate-180",
2051
+ "aria-hidden": "true"
2052
+ }
2053
+ )
2054
+ ]
2055
+ }
2056
+ );
2057
+ }
2058
+ function nt({
2059
+ className: a,
2060
+ ...t
2061
+ }) {
2062
+ return /* @__PURE__ */ e(
2063
+ S.Content,
2064
+ {
2065
+ "data-slot": "navigation-menu-content",
2066
+ className: o(
2067
+ "data-[motion^=from-]:animate-in data-[motion^=to-]:animate-out data-[motion^=from-]:fade-in data-[motion^=to-]:fade-out data-[motion=from-end]:slide-in-from-right-52 data-[motion=from-start]:slide-in-from-left-52 data-[motion=to-end]:slide-out-to-right-52 data-[motion=to-start]:slide-out-to-left-52 top-0 left-0 w-full p-2 pr-2.5 md:absolute md:w-auto",
2068
+ "group-data-[viewport=false]/navigation-menu:bg-popover group-data-[viewport=false]/navigation-menu:text-popover-foreground group-data-[viewport=false]/navigation-menu:data-[state=open]:animate-in group-data-[viewport=false]/navigation-menu:data-[state=closed]:animate-out group-data-[viewport=false]/navigation-menu:data-[state=closed]:zoom-out-95 group-data-[viewport=false]/navigation-menu:data-[state=open]:zoom-in-95 group-data-[viewport=false]/navigation-menu:data-[state=open]:fade-in-0 group-data-[viewport=false]/navigation-menu:data-[state=closed]:fade-out-0 group-data-[viewport=false]/navigation-menu:top-full group-data-[viewport=false]/navigation-menu:mt-1.5 group-data-[viewport=false]/navigation-menu:overflow-hidden group-data-[viewport=false]/navigation-menu:rounded-md group-data-[viewport=false]/navigation-menu:border group-data-[viewport=false]/navigation-menu:shadow group-data-[viewport=false]/navigation-menu:duration-200 **:data-[slot=navigation-menu-link]:focus:ring-0 **:data-[slot=navigation-menu-link]:focus:outline-none",
2069
+ a
2070
+ ),
2071
+ ...t
2072
+ }
2073
+ );
2074
+ }
2075
+ function st({
2076
+ className: a,
2077
+ ...t
2078
+ }) {
2079
+ return /* @__PURE__ */ e(
2080
+ "div",
2081
+ {
2082
+ className: o(
2083
+ "absolute top-full left-0 isolate z-50 flex justify-center"
2084
+ ),
2085
+ children: /* @__PURE__ */ e(
2086
+ S.Viewport,
2087
+ {
2088
+ "data-slot": "navigation-menu-viewport",
2089
+ className: o(
2090
+ "origin-top-center bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-90 relative mt-1.5 h-[var(--radix-navigation-menu-viewport-height)] w-full overflow-hidden rounded-md border shadow md:w-[var(--radix-navigation-menu-viewport-width)]",
2091
+ a
2092
+ ),
2093
+ ...t
2094
+ }
2095
+ )
2096
+ }
2097
+ );
2098
+ }
2099
+ function B({
2100
+ className: a,
2101
+ ...t
2102
+ }) {
2103
+ return /* @__PURE__ */ e(
2104
+ S.Link,
2105
+ {
2106
+ "data-slot": "navigation-menu-link",
2107
+ className: o(
2108
+ "data-[active=true]:focus:bg-accent data-[active=true]:hover:bg-accent data-[active=true]:bg-accent/50 data-[active=true]:text-accent-foreground hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground focus-visible:ring-ring/50 [&_svg:not([class*='text-'])]:text-muted-foreground flex flex-col gap-1 rounded-sm p-2 text-sm transition-all outline-none focus-visible:ring-[3px] focus-visible:outline-1 [&_svg:not([class*='size-'])]:size-4",
2109
+ a
2110
+ ),
2111
+ ...t
2112
+ }
2113
+ );
2114
+ }
2115
+ function lt({ items: a }) {
2116
+ return /* @__PURE__ */ e("ul", { className: "grid gap-0.5 p-2 min-w-[180px]", role: "none", children: a.map(
2117
+ (t) => {
2118
+ var r;
2119
+ return (r = t.children) != null && r.length ? /* @__PURE__ */ i("li", { role: "none", children: [
2120
+ /* @__PURE__ */ e(
2121
+ "span",
2122
+ {
2123
+ className: "block px-3 py-1 text-xs font-semibold uppercase tracking-wider text-[var(--muted-foreground)]",
2124
+ role: "presentation",
2125
+ children: t.label
2126
+ }
2127
+ ),
2128
+ /* @__PURE__ */ e("ul", { className: "ml-1", role: "none", children: t.children.map((n) => /* @__PURE__ */ e("li", { role: "none", children: /* @__PURE__ */ e(
2129
+ B,
2130
+ {
2131
+ href: n.href ?? "#",
2132
+ className: "block rounded px-3 py-1.5 text-sm text-[var(--foreground)] hover:bg-[var(--accent)] transition-colors",
2133
+ children: n.label
2134
+ }
2135
+ ) }, n.id)) })
2136
+ ] }, t.id) : /* @__PURE__ */ e("li", { role: "none", children: /* @__PURE__ */ e(
2137
+ B,
2138
+ {
2139
+ href: t.href ?? "#",
2140
+ className: "block rounded px-3 py-1.5 text-sm text-[var(--foreground)] hover:bg-[var(--accent)] transition-colors",
2141
+ children: t.label
2142
+ }
2143
+ ) }, t.id);
2144
+ }
2145
+ ) });
2146
+ }
2147
+ function Z({ item: a, depth: t = 0 }) {
2148
+ var c;
2149
+ const [r, n] = k(!1);
2150
+ return !((c = a.children) != null && c.length) ? /* @__PURE__ */ e(Ke, { asChild: !0, children: /* @__PURE__ */ e(
2151
+ "a",
2152
+ {
2153
+ href: a.href ?? "#",
2154
+ className: o(
2155
+ "flex min-h-[44px] items-center rounded py-2 text-sm text-[var(--foreground)] hover:text-[var(--brand-primary)] transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]",
2156
+ t > 0 && "pl-4 text-xs text-[var(--muted-foreground)]"
2157
+ ),
2158
+ children: a.label
2159
+ }
2160
+ ) }) : /* @__PURE__ */ i("div", { children: [
2161
+ /* @__PURE__ */ i(
2162
+ "button",
2163
+ {
2164
+ type: "button",
2165
+ "aria-expanded": r,
2166
+ "aria-controls": `mobile-nav-${a.id}`,
2167
+ onClick: () => n((l) => !l),
2168
+ className: o(
2169
+ "flex min-h-[44px] w-full items-center justify-between rounded py-2 text-sm font-medium text-[var(--foreground)] hover:text-[var(--brand-primary)] transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]",
2170
+ t > 0 && "pl-4"
2171
+ ),
2172
+ children: [
2173
+ /* @__PURE__ */ e("span", { children: a.label }),
2174
+ /* @__PURE__ */ e(
2175
+ O,
2176
+ {
2177
+ "aria-hidden": "true",
2178
+ className: o(
2179
+ "h-4 w-4 text-[var(--muted-foreground)] transition-transform duration-200",
2180
+ r && "rotate-180"
2181
+ )
2182
+ }
2183
+ )
2184
+ ]
2185
+ }
2186
+ ),
2187
+ r && /* @__PURE__ */ e(
2188
+ "div",
2189
+ {
2190
+ id: `mobile-nav-${a.id}`,
2191
+ className: "mb-1 ml-2 border-l-2 border-[var(--border)] pl-3",
2192
+ children: a.children.map((l) => /* @__PURE__ */ e(Z, { item: l, depth: t + 1 }, l.id))
2193
+ }
2194
+ )
2195
+ ] });
2196
+ }
2197
+ const dt = N(
2198
+ ({ items: a, logo: t, rightSlot: r, searchSlot: n, drawerFooter: s, className: c, ...l }, m) => /* @__PURE__ */ e(
2199
+ "header",
2200
+ {
2201
+ ref: m,
2202
+ className: o(
2203
+ "sticky top-0 z-40 border-b border-[var(--border)] bg-[var(--card)]",
2204
+ c
2205
+ ),
2206
+ ...l,
2207
+ children: /* @__PURE__ */ i("div", { className: "px-4", children: [
2208
+ /* @__PURE__ */ i("div", { className: "flex items-center py-3 gap-4", children: [
2209
+ t && /* @__PURE__ */ e("div", { className: "flex-shrink-0", children: t }),
2210
+ n && /* @__PURE__ */ e("div", { className: "hidden flex-1 md:flex", children: n }),
2211
+ /* @__PURE__ */ e("div", { className: "flex-1 md:hidden", "aria-hidden": "true" }),
2212
+ r && /* @__PURE__ */ e("div", { className: "flex items-center", children: r }),
2213
+ /* @__PURE__ */ i(Qe, { children: [
2214
+ /* @__PURE__ */ e(We, { asChild: !0, children: /* @__PURE__ */ e(
2215
+ "button",
2216
+ {
2217
+ type: "button",
2218
+ "aria-label": "Abrir menu de navegação",
2219
+ className: "inline-flex min-h-[44px] min-w-[44px] items-center justify-center rounded-lg text-[var(--foreground)] transition-colors hover:bg-[var(--accent)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] md:hidden",
2220
+ children: /* @__PURE__ */ e(Ne, { className: "h-5 w-5", "aria-hidden": "true" })
2221
+ }
2222
+ ) }),
2223
+ /* @__PURE__ */ i(Ye, { side: "left", className: "flex flex-col p-0", children: [
2224
+ /* @__PURE__ */ i(Ze, { className: "border-b border-[var(--border)] px-5 py-4", children: [
2225
+ /* @__PURE__ */ e(Je, { className: "sr-only", children: "Menu de navegação" }),
2226
+ t && /* @__PURE__ */ e("div", { className: "flex items-center", children: t })
2227
+ ] }),
2228
+ n && /* @__PURE__ */ e("div", { className: "border-b border-[var(--border)] px-5 py-4", children: n }),
2229
+ /* @__PURE__ */ e(
2230
+ "nav",
2231
+ {
2232
+ "aria-label": "Menu principal",
2233
+ className: "flex-1 overflow-y-auto px-5 py-3",
2234
+ children: /* @__PURE__ */ e("div", { className: "divide-y divide-[var(--border)]", children: a.map((f) => /* @__PURE__ */ e("div", { className: "py-0.5", children: /* @__PURE__ */ e(Z, { item: f }) }, f.id)) })
2235
+ }
2236
+ ),
2237
+ s && /* @__PURE__ */ e("div", { className: "border-t border-[var(--border)] px-5 py-4", children: s })
2238
+ ] })
2239
+ ] })
2240
+ ] }),
2241
+ /* @__PURE__ */ e(
2242
+ "nav",
2243
+ {
2244
+ "aria-label": "Menu principal",
2245
+ className: "hidden border-t border-[var(--border)] py-2 md:flex",
2246
+ children: /* @__PURE__ */ e(at, { children: /* @__PURE__ */ e(rt, { children: a.map(
2247
+ (f) => {
2248
+ var u;
2249
+ return (u = f.children) != null && u.length ? /* @__PURE__ */ i(G, { children: [
2250
+ /* @__PURE__ */ e(it, { className: "h-9 bg-transparent text-sm text-[var(--foreground)] hover:bg-[var(--accent)]", children: f.label }),
2251
+ /* @__PURE__ */ e(nt, { children: /* @__PURE__ */ e(lt, { items: f.children }) })
2252
+ ] }, f.id) : /* @__PURE__ */ e(G, { children: /* @__PURE__ */ e(
2253
+ B,
2254
+ {
2255
+ href: f.href ?? "#",
2256
+ className: "inline-flex h-9 items-center rounded-md px-4 text-sm font-medium text-[var(--foreground)] transition-colors hover:bg-[var(--accent)] hover:text-[var(--accent-foreground)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]",
2257
+ children: f.label
2258
+ }
2259
+ ) }, f.id);
2260
+ }
2261
+ ) }) })
2262
+ }
2263
+ )
2264
+ ] })
2265
+ }
2266
+ )
2267
+ );
2268
+ dt.displayName = "MegaMenu";
2269
+ const ct = [
2270
+ {
2271
+ id: "catalogo",
2272
+ title: "Catálogo",
2273
+ links: [
2274
+ { label: "Livros", href: "/livros/catalogo" },
2275
+ { label: "Coleções", href: "/livros/colecoes" },
2276
+ { label: "Lançamentos", href: "/livros/catalogo?ordem=recentes" },
2277
+ { label: "Mais Vendidos", href: "/livros/catalogo?ordem=mais_vendidos" },
2278
+ { label: "Vale Presente", href: "/livros/vale-presente" }
2279
+ ]
2280
+ },
2281
+ {
2282
+ id: "editora",
2283
+ title: "Editora",
2284
+ links: [
2285
+ { label: "Autores", href: "/autores" },
2286
+ { label: "LABBOOK", href: "/labbook" },
2287
+ { label: "Projetos", href: "/projetos" },
2288
+ { label: "Fale Conosco", href: "/editora/contato" },
2289
+ { label: "FAQ", href: "/editora/faq" }
2290
+ ]
2291
+ },
2292
+ {
2293
+ id: "institucional",
2294
+ title: "Institucional",
2295
+ links: [
2296
+ { label: "Distribuidores", href: "/distribuidores" },
2297
+ { label: "Como Comprar", href: "/como-comprar" },
2298
+ { label: "Informações de Entrega", href: "/informacoes-entrega" },
2299
+ { label: "Sobre o APP", href: "/sobre-app" }
2300
+ ]
2301
+ }
2302
+ ], ut = [
2303
+ { label: "Instagram", href: "https://instagram.com/eloeditora", Icon: we },
2304
+ { label: "Facebook", href: "https://facebook.com/eloeditora", Icon: ye },
2305
+ { label: "YouTube", href: "https://youtube.com/@eloeditora", Icon: ke },
2306
+ { label: "LinkedIn", href: "https://linkedin.com/company/eloeditora", Icon: ze }
2307
+ ];
2308
+ function mt({ onSubmit: a }) {
2309
+ const [t, r] = k(""), [n, s] = k(!1);
2310
+ return /* @__PURE__ */ e("div", { className: "bg-[var(--brand-primary)] py-10", children: /* @__PURE__ */ i("div", { className: "mx-auto max-w-lg px-4 text-center", children: [
2311
+ /* @__PURE__ */ e(Ce, { className: "mx-auto mb-4 h-10 w-10 text-white", "aria-hidden": "true" }),
2312
+ /* @__PURE__ */ e("h2", { className: "text-xl font-semibold text-white sm:text-2xl", children: "Receba novidades e ofertas exclusivas" }),
2313
+ /* @__PURE__ */ e("p", { className: "mt-2 text-sm", style: { color: "rgba(255,255,255,0.85)" }, children: "Cadastre-se e fique por dentro dos lançamentos. Sem spam." }),
2314
+ n ? /* @__PURE__ */ e("p", { className: "mt-6 text-sm font-medium text-white", children: "Obrigado! Você está na lista. ✓" }) : /* @__PURE__ */ i("form", { onSubmit: (l) => {
2315
+ l.preventDefault(), t && (a == null || a(t), s(!0), r(""));
2316
+ }, className: "mt-6 flex flex-col gap-2 sm:flex-row", children: [
2317
+ /* @__PURE__ */ e("label", { htmlFor: "footer-newsletter-email", className: "sr-only", children: "Seu e-mail" }),
2318
+ /* @__PURE__ */ e(
2319
+ "input",
2320
+ {
2321
+ id: "footer-newsletter-email",
2322
+ type: "email",
2323
+ required: !0,
2324
+ value: t,
2325
+ onChange: (l) => r(l.target.value),
2326
+ placeholder: "Seu melhor e-mail",
2327
+ className: "min-h-[44px] flex-1 rounded-lg px-4 text-sm text-[#1a1e2e] placeholder:text-gray-400 focus:outline-none focus:ring-2 focus:ring-white"
2328
+ }
2329
+ ),
2330
+ /* @__PURE__ */ e(
2331
+ "button",
2332
+ {
2333
+ type: "submit",
2334
+ className: "min-h-[44px] whitespace-nowrap rounded-lg bg-white px-6 text-sm font-semibold transition-colors hover:bg-gray-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white focus-visible:ring-offset-2 focus-visible:ring-offset-[var(--brand-primary)]",
2335
+ style: { color: "var(--brand-primary)" },
2336
+ children: "Cadastrar"
2337
+ }
2338
+ )
2339
+ ] })
2340
+ ] }) });
2341
+ }
2342
+ function ft({ title: a, links: t }) {
2343
+ const [r, n] = k(!1);
2344
+ return /* @__PURE__ */ i("div", { className: "border-b border-[var(--border)] md:border-none", children: [
2345
+ /* @__PURE__ */ i(
2346
+ "button",
2347
+ {
2348
+ type: "button",
2349
+ "aria-expanded": r,
2350
+ onClick: () => n((s) => !s),
2351
+ className: "flex w-full items-center justify-between py-4 text-left text-sm font-semibold text-[var(--foreground)] md:hidden",
2352
+ children: [
2353
+ a,
2354
+ /* @__PURE__ */ e(
2355
+ O,
2356
+ {
2357
+ "aria-hidden": "true",
2358
+ className: o("h-4 w-4 text-[var(--muted-foreground)] transition-transform duration-200", r && "rotate-180")
2359
+ }
2360
+ )
2361
+ ]
2362
+ }
2363
+ ),
2364
+ /* @__PURE__ */ e("p", { className: "hidden text-sm font-semibold text-[var(--foreground)] md:block", children: a }),
2365
+ /* @__PURE__ */ e(
2366
+ "ul",
2367
+ {
2368
+ className: o(
2369
+ "flex flex-col gap-2 overflow-hidden transition-all duration-200 md:mt-3 md:max-h-none md:pb-0",
2370
+ r ? "max-h-96 pb-4" : "max-h-0 md:max-h-none"
2371
+ ),
2372
+ role: "list",
2373
+ children: t.map((s) => /* @__PURE__ */ e("li", { children: /* @__PURE__ */ e(
2374
+ "a",
2375
+ {
2376
+ href: s.href,
2377
+ className: "text-sm text-[var(--muted-foreground)] transition-colors hover:text-[var(--brand-primary)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] rounded",
2378
+ children: s.label
2379
+ }
2380
+ ) }, s.label))
2381
+ }
2382
+ )
2383
+ ] });
2384
+ }
2385
+ const gt = ({ brand: a = "elo-editora", onNewsletterSubmit: t, className: r, ...n }) => {
2386
+ const [s, c] = k("light");
2387
+ M(() => {
2388
+ const u = document.documentElement;
2389
+ c(u.getAttribute("data-theme") ?? "light");
2390
+ const v = new MutationObserver(() => {
2391
+ c(u.getAttribute("data-theme") ?? "light");
2392
+ });
2393
+ return v.observe(u, { attributes: !0, attributeFilter: ["data-theme"] }), () => v.disconnect();
2394
+ }, []);
2395
+ const l = a === "perabook" ? s === "dark" ? "/logos/logo_PeraBook_institucional_tarja_branca.png" : "/logos/PeraBook_instituicional.png" : s === "dark" ? "/logos/logo_elo_editora_texto_branco.png" : "/logos/logo_elo_editora_texto_azul.png", m = a === "perabook" ? "PeraBook" : "Elo Editora", f = a === "perabook" ? "Educação socioemocional e diversidade cultural" : "Literatura infantojuvenil que transforma vidas";
2396
+ return /* @__PURE__ */ i(
2397
+ "footer",
2398
+ {
2399
+ className: o("border-t border-[var(--border)] bg-[var(--card)] text-[var(--foreground)]", r),
2400
+ "aria-label": "Rodapé do site",
2401
+ ...n,
2402
+ children: [
2403
+ /* @__PURE__ */ e(mt, { onSubmit: t }),
2404
+ /* @__PURE__ */ i("div", { className: "mx-auto max-w-screen-xl px-4", children: [
2405
+ /* @__PURE__ */ i("div", { className: "py-10 md:grid md:grid-cols-4 md:gap-8", children: [
2406
+ /* @__PURE__ */ i("div", { className: "mb-8 md:mb-0", children: [
2407
+ /* @__PURE__ */ e(
2408
+ "img",
2409
+ {
2410
+ src: l,
2411
+ alt: m,
2412
+ width: 120,
2413
+ height: 40,
2414
+ className: "h-10 w-auto object-contain"
2415
+ }
2416
+ ),
2417
+ /* @__PURE__ */ e("p", { className: "mt-3 max-w-xs text-sm text-[var(--muted-foreground)]", children: f }),
2418
+ /* @__PURE__ */ e("div", { className: "mt-6 flex flex-wrap gap-2", "aria-label": "Redes sociais", children: ut.map(({ label: u, href: v, Icon: g }) => /* @__PURE__ */ e(
2419
+ "a",
2420
+ {
2421
+ href: v,
2422
+ target: "_blank",
2423
+ rel: "noopener noreferrer",
2424
+ "aria-label": u,
2425
+ className: "flex h-9 w-9 items-center justify-center rounded-full border border-[var(--border)] text-[var(--muted-foreground)] transition-colors hover:border-[var(--brand-primary)] hover:bg-[var(--brand-primary)] hover:text-white focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]",
2426
+ children: /* @__PURE__ */ e(g, { className: "h-4 w-4", "aria-hidden": "true" })
2427
+ },
2428
+ u
2429
+ )) }),
2430
+ /* @__PURE__ */ i("div", { className: "mt-6 space-y-1 text-sm", children: [
2431
+ /* @__PURE__ */ e("p", { className: "text-[var(--muted-foreground)]", children: "Atendimento:" }),
2432
+ /* @__PURE__ */ e("p", { className: "font-medium text-[var(--foreground)]", children: "contato@grupoeloediorial.com.br" }),
2433
+ /* @__PURE__ */ e("p", { className: "font-medium text-[var(--foreground)]", children: "(11) 3000-0000" })
2434
+ ] })
2435
+ ] }),
2436
+ ct.map((u) => /* @__PURE__ */ e(ft, { title: u.title, links: u.links }, u.id))
2437
+ ] }),
2438
+ /* @__PURE__ */ i("div", { className: "flex flex-col gap-2 border-t border-[var(--border)] py-6 text-xs text-[var(--muted-foreground)] sm:flex-row sm:items-center sm:justify-between", children: [
2439
+ /* @__PURE__ */ i("p", { children: [
2440
+ "© ",
2441
+ (/* @__PURE__ */ new Date()).getFullYear(),
2442
+ " Grupo ELO Editorial. Todos os direitos reservados."
2443
+ ] }),
2444
+ /* @__PURE__ */ i("nav", { "aria-label": "Links legais", className: "flex flex-wrap gap-4", children: [
2445
+ /* @__PURE__ */ e("a", { href: "/editora/privacidade/politica", className: "transition-colors hover:text-[var(--foreground)]", children: "Política de Privacidade" }),
2446
+ /* @__PURE__ */ e("a", { href: "/editora/privacidade/cookies", className: "transition-colors hover:text-[var(--foreground)]", children: "Cookies" }),
2447
+ /* @__PURE__ */ e("a", { href: "/editora/privacidade/demais", className: "transition-colors hover:text-[var(--foreground)]", children: "Termos de Uso" })
2448
+ ] })
2449
+ ] })
2450
+ ] })
2451
+ ]
2452
+ }
2453
+ );
2454
+ };
2455
+ gt.displayName = "Footer";
2456
+ function ta({ children: a, as: t = "div", className: r }) {
2457
+ return /* @__PURE__ */ e(
2458
+ t,
2459
+ {
2460
+ "data-slot": "container",
2461
+ className: o("w-full mx-auto px-[var(--container-px)]", r),
2462
+ style: { maxWidth: "var(--container-max)" },
2463
+ children: a
2464
+ }
2465
+ );
2466
+ }
2467
+ function aa({ children: a, className: t }) {
2468
+ return /* @__PURE__ */ e(
2469
+ "div",
2470
+ {
2471
+ "data-slot": "grid",
2472
+ className: o(
2473
+ "grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-[var(--grid-gutter)]",
2474
+ t
2475
+ ),
2476
+ children: a
2477
+ }
2478
+ );
2479
+ }
2480
+ const vt = {
2481
+ 1: "col-span-1",
2482
+ 2: "col-span-2",
2483
+ 3: "col-span-3",
2484
+ 4: "col-span-4",
2485
+ 5: "col-span-5",
2486
+ 6: "col-span-6"
2487
+ };
2488
+ function ra({ children: a, span: t, className: r }) {
2489
+ return /* @__PURE__ */ e("div", { "data-slot": "col", className: o("min-w-0", t && vt[t], r), children: a });
2490
+ }
1849
2491
  export {
1850
- st as Accordion,
1851
- lt as AccordionContent,
1852
- ot as AccordionItem,
1853
- nt as AccordionTrigger,
1854
- ve as Avatar,
1855
- P as Badge,
1856
- Oe as Breadcrumb,
1857
- tt as BreadcrumbItem,
1858
- at as BreadcrumbLink,
1859
- et as BreadcrumbList,
1860
- rt as BreadcrumbPage,
1861
- it as BreadcrumbSeparator,
1862
- z as Button,
1863
- Ke as Checkbox,
1864
- gt as DialogContent,
1865
- ht as DialogDescription,
1866
- vt as DialogFooter,
1867
- pt as DialogHeader,
1868
- bt as DialogTitle,
1869
- ft as DialogTrigger,
1870
- xe as Divider,
1871
- xt as Drawer,
1872
- W as EmptyState,
1873
- je as ErrorState,
1874
- Se as FormGroup,
1875
- Ie as Hero,
1876
- Be as HeroCarousel,
1877
- Fe as Input,
1878
- mt as Modal,
1879
- ke as PriceDisplay,
2492
+ Bt as Accordion,
2493
+ qt as AccordionContent,
2494
+ Vt as AccordionItem,
2495
+ Ft as AccordionTrigger,
2496
+ _e as Avatar,
2497
+ D as Badge,
2498
+ Dt as Breadcrumb,
2499
+ Lt as BreadcrumbItem,
2500
+ Tt as BreadcrumbLink,
2501
+ Et as BreadcrumbList,
2502
+ $t as BreadcrumbPage,
2503
+ Rt as BreadcrumbSeparator,
2504
+ C as Button,
2505
+ Mt as Checkbox,
2506
+ ra as Col,
2507
+ ta as Container,
2508
+ Kt as DialogContent,
2509
+ Zt as DialogDescription,
2510
+ Xt as DialogFooter,
2511
+ Ot as DialogHeader,
2512
+ Yt as DialogTitle,
2513
+ Wt as DialogTrigger,
2514
+ De as Divider,
2515
+ Qe as Drawer,
2516
+ Y as EmptyState,
2517
+ qe as ErrorState,
2518
+ gt as Footer,
2519
+ Be as FormGroup,
2520
+ aa as Grid,
2521
+ Fe as Hero,
2522
+ tt as HeroCarousel,
2523
+ kt as Input,
2524
+ dt as MegaMenu,
2525
+ Qt as Modal,
2526
+ $e as PriceDisplay,
1880
2527
  R as ProductCard,
1881
- De as ProductGrid,
1882
- Pt as ProgressBar,
1883
- ze as QuantitySelector,
1884
- Je as RadioGroup,
1885
- Ye as RadioGroupItem,
1886
- U as Rating,
1887
- ye as SearchBar,
1888
- Ge as Select,
1889
- We as SelectContent,
1890
- Xe as SelectItem,
1891
- Ue as SelectTrigger,
1892
- Qe as SelectValue,
1893
- wt as SheetContent,
1894
- St as SheetDescription,
1895
- kt as SheetFooter,
1896
- yt as SheetHeader,
1897
- zt as SheetTitle,
1898
- Nt as SheetTrigger,
1899
- he as Spinner,
1900
- fe as Textarea,
1901
- Ze as Toggle,
1902
- dt as Tooltip,
1903
- ut as TooltipContent,
1904
- Ce as TooltipProvider,
1905
- ct as TooltipTrigger,
1906
- Ee as TopAccessibilityBar,
1907
- pe as avatarVariants,
1908
- ge as badgeVariants,
1909
- Q as buttonVariants,
1910
- i as cn,
1911
- be as spinnerVariants,
1912
- jt as toast
2528
+ He as ProductGrid,
2529
+ la as ProgressBar,
2530
+ Re as QuantitySelector,
2531
+ _t as RadioGroup,
2532
+ Pt as RadioGroupItem,
2533
+ $ as Rating,
2534
+ Te as SearchBar,
2535
+ zt as Select,
2536
+ It as SelectContent,
2537
+ jt as SelectItem,
2538
+ St as SelectTrigger,
2539
+ Ct as SelectValue,
2540
+ Ye as SheetContent,
2541
+ ea as SheetDescription,
2542
+ Jt as SheetFooter,
2543
+ Ze as SheetHeader,
2544
+ Je as SheetTitle,
2545
+ We as SheetTrigger,
2546
+ Ae as Spinner,
2547
+ Ie as Textarea,
2548
+ At as Toggle,
2549
+ Ht as Tooltip,
2550
+ Ut as TooltipContent,
2551
+ Ve as TooltipProvider,
2552
+ Gt as TooltipTrigger,
2553
+ et as TopAccessibilityBar,
2554
+ Me as avatarVariants,
2555
+ je as badgeVariants,
2556
+ X as buttonVariants,
2557
+ o as cn,
2558
+ Pe as spinnerVariants,
2559
+ na as toast
1913
2560
  };
1914
2561
  //# sourceMappingURL=index.js.map