@grupo-elo-editorial/shared-ui-react 1.0.0 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +69 -0
- package/dist/components/layout/Col.d.ts +29 -0
- package/dist/components/layout/Container.d.ts +21 -0
- package/dist/components/layout/Grid.d.ts +24 -0
- package/dist/components/layout/index.d.ts +6 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +119 -81
- package/dist/index.js.map +1 -1
- package/dist/style.css +1 -1
- package/package.json +3 -3
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# Changelog — `@grupo-elo-editorial/shared-ui-react`
|
|
2
|
+
|
|
3
|
+
Format: [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) · Versioning: [SemVer](https://semver.org/spec/v2.0.0.html).
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## [1.1.0] — 2026-05-20 (Layout primitives + Figma shared-ui sync)
|
|
8
|
+
|
|
9
|
+
Additive sync with the upstream Figma shared-ui file (`q4V5CYymU4oU5nlbbHNmh8`) and with `@grupo-elo-editorial/design-tokens@3.1.0`. No breaking changes; consumers of `^1.0.0` can bump to `^1.1.0` with zero code changes.
|
|
10
|
+
|
|
11
|
+
### Added — Layout primitives
|
|
12
|
+
|
|
13
|
+
Three new layout components that consume the breakpoint/container/grid tokens introduced in `design-tokens@3.1.0`:
|
|
14
|
+
|
|
15
|
+
- **`Container`** — page-level wrapper. Centers content within `var(--container-max)` (1280px) with responsive `var(--container-px)` (1.5rem) horizontal padding. Polymorphic via the `as` prop (defaults to `'div'`).
|
|
16
|
+
- **`Grid`** — responsive grid primitive. Default progression: `grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4` with `gap-[var(--grid-gutter)]` (1.5rem). Override via `className`.
|
|
17
|
+
- **`Col`** — grid cell with explicit column span (1–6). Always includes `min-w-0` to prevent overflow on wide content (long text, large images) — addresses the implicit `min-width: auto` gotcha on grid items.
|
|
18
|
+
|
|
19
|
+
```tsx
|
|
20
|
+
import { Container, Grid, Col } from '@grupo-elo-editorial/shared-ui-react';
|
|
21
|
+
|
|
22
|
+
<Container as="section">
|
|
23
|
+
<Grid>
|
|
24
|
+
<Col><ProductCard ... /></Col>
|
|
25
|
+
<Col><ProductCard ... /></Col>
|
|
26
|
+
<Col span={2}>Wide cell</Col>
|
|
27
|
+
</Grid>
|
|
28
|
+
</Container>
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
### Added — docs
|
|
32
|
+
|
|
33
|
+
- `docs/SHARED_UI_STANDARDS.md` — prescriptive guide for the package: filosofia, naming conventions, design tokens, A11y WCAG 2.2 AA, estados de componentes, props API, composição, testes, performance, checklist de qualidade, versionamento.
|
|
34
|
+
|
|
35
|
+
### Changed
|
|
36
|
+
|
|
37
|
+
- `package.json` `version` bumped `1.0.0 → 1.1.0`.
|
|
38
|
+
- `package.json` `description` updated to mention layout primitives + new `design-tokens@^3.1.0` minimum.
|
|
39
|
+
- `src/index.ts` now re-exports `Container`, `Grid`, `Col` (and their `ContainerProps`/`GridProps`/`ColProps` types) from `./components/layout`.
|
|
40
|
+
- `repository.url` now uses canonical `git+https://` scheme (eliminates `npm publish` warning).
|
|
41
|
+
|
|
42
|
+
### Compat with design-tokens v3.1.0
|
|
43
|
+
|
|
44
|
+
`@grupo-elo-editorial/design-tokens@^3.1.0` is the minimum effective dependency now (the layout primitives use `var(--container-max)`, `var(--container-px)`, and `var(--grid-gutter)` which were introduced in 3.1.0). Older 3.0.x of design-tokens still works for everything _except_ the layout primitives, which will render with browser-default sizing if the consumer hasn't bumped design-tokens.
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
## [1.0.0] — 2026-05-13 (Initial release — port from Figma)
|
|
49
|
+
|
|
50
|
+
First public release. 42 components ported 1:1 from the Figma Make export `loEUZ5dnW0f4e8GwQIEWSz`.
|
|
51
|
+
|
|
52
|
+
### Added
|
|
53
|
+
|
|
54
|
+
- **7 custom atoms**: Button, Textarea, Badge, Avatar, Spinner, Divider, Rating
|
|
55
|
+
- **5 custom molecules**: ProductCard, SearchBar, PriceDisplay, QuantitySelector, FormGroup
|
|
56
|
+
- **4 custom organisms**: Hero, EmptyState, ErrorState, ProductGrid
|
|
57
|
+
- **2 PRD domain components**: TopAccessibilityBar, HeroCarousel
|
|
58
|
+
- **~50 shadcn/ui primitives** in `components/ui/` — Radix wrappers (Dialog, Sheet, Select, Tooltip, Accordion, Checkbox, Switch, RadioGroup, Breadcrumb, Progress, Calendar, Carousel, Chart, Command, ContextMenu, Drawer, DropdownMenu, Form, HoverCard, InputOTP, Menubar, NavigationMenu, Pagination, Popover, Resizable, ScrollArea, Separator, Sidebar, Skeleton, Slider, Sonner, Table, Tabs, ToggleGroup, …).
|
|
59
|
+
- **Re-exports** from atoms/molecules/organisms barrels: `Input`, `Select*`, `Checkbox`, `RadioGroup*`, `Toggle (= Switch)`, `Breadcrumb*`, `Accordion*`, `Tooltip*`, `ProgressBar`, `toast (sonner)`, `Modal (= Dialog)`, `Drawer (= Sheet)`.
|
|
60
|
+
- **`figma/ImageWithFallback`** helper.
|
|
61
|
+
- **Util**: `cn` (clsx + tailwind-merge).
|
|
62
|
+
- **Bundled CSS**: `dist/style.css` (96 kB, gzip 9 kB) — Lato fonts + Tailwind v4 + multibrand theme tokens with `[data-brand]` / `[data-theme]` selectors (aligned with `@grupo-elo-editorial/design-tokens@^3.0.0`).
|
|
63
|
+
- **Docs imported from Figma**: `docs/COMPONENT_LIBRARY.md`, `docs/CORRECTIONS.md`, `docs/GUIDELINES.md`.
|
|
64
|
+
|
|
65
|
+
### Notes
|
|
66
|
+
|
|
67
|
+
- Stack: React 18+/19, TypeScript, Tailwind CSS v4, Radix UI, Lucide icons, Sonner toasts, `class-variance-authority` for variants.
|
|
68
|
+
- Brand + theme contract: `<html data-brand="elo-editora|perabook" data-theme="light|dark">` — same as design-tokens.
|
|
69
|
+
- The Figma export used `.brand-elo` / `.brand-pera` / `.dark` class selectors; this port adapted to `[data-brand]` / `[data-theme]` attribute selectors to match the design-tokens v3 contract. Component code consumes `var(--brand-*)` so the visual result is identical.
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
export interface ColProps {
|
|
3
|
+
children: ReactNode;
|
|
4
|
+
/**
|
|
5
|
+
* How many grid columns this cell spans (1–6). When omitted, the cell takes
|
|
6
|
+
* one column at every breakpoint.
|
|
7
|
+
*/
|
|
8
|
+
span?: 1 | 2 | 3 | 4 | 5 | 6;
|
|
9
|
+
className?: string;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Grid cell with explicit column span. Always includes `min-w-0` to prevent
|
|
13
|
+
* grid items from overflowing when their content (long text, large images) is
|
|
14
|
+
* wider than the available column — without this the implicit `min-width: auto`
|
|
15
|
+
* on grid items would push the cell beyond its grid track.
|
|
16
|
+
*
|
|
17
|
+
* Use inside `<Grid>`. Not strictly required (you can use a plain `<div>` for
|
|
18
|
+
* 1-column cells), but recommended for any cell that spans multiple columns.
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ```tsx
|
|
22
|
+
* <Grid>
|
|
23
|
+
* <Col span={2}>Wide cell</Col>
|
|
24
|
+
* <Col>Standard cell</Col>
|
|
25
|
+
* <Col>Standard cell</Col>
|
|
26
|
+
* </Grid>
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
export declare function Col({ children, span, className }: ColProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { type ElementType, type ReactNode } from 'react';
|
|
2
|
+
export interface ContainerProps {
|
|
3
|
+
children: ReactNode;
|
|
4
|
+
/** Override the wrapper element. Default `'div'`. */
|
|
5
|
+
as?: ElementType;
|
|
6
|
+
className?: string;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Page-level content wrapper. Centers content within `var(--container-max)`
|
|
10
|
+
* (1280px by default in `@grupo-elo-editorial/design-tokens@^3.1.0`) and applies
|
|
11
|
+
* the responsive `var(--container-px)` horizontal padding.
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```tsx
|
|
15
|
+
* <Container as="section">
|
|
16
|
+
* <h2>Section heading</h2>
|
|
17
|
+
* <p>Body content stays within the centered, padded container.</p>
|
|
18
|
+
* </Container>
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
export declare function Container({ children, as: Tag, className }: ContainerProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
export interface GridProps {
|
|
3
|
+
children: ReactNode;
|
|
4
|
+
/**
|
|
5
|
+
* Override the default responsive column progression
|
|
6
|
+
* (`grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4`) by appending Tailwind utility classes here.
|
|
7
|
+
*/
|
|
8
|
+
className?: string;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Responsive grid primitive. Defaults to the progression defined by the
|
|
12
|
+
* `--grid-cols-{default,sm,md,lg}` tokens (1 → 2 → 3 → 4 columns) and the
|
|
13
|
+
* `--grid-gutter` (1.5rem) gap, both shipped by
|
|
14
|
+
* `@grupo-elo-editorial/design-tokens@^3.1.0`.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```tsx
|
|
18
|
+
* <Grid>
|
|
19
|
+
* <Col><ProductCard ... /></Col>
|
|
20
|
+
* <Col><ProductCard ... /></Col>
|
|
21
|
+
* </Grid>
|
|
22
|
+
* ```
|
|
23
|
+
*/
|
|
24
|
+
export declare function Grid({ children, className }: GridProps): import("react/jsx-runtime").JSX.Element;
|
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
|
@@ -2,7 +2,7 @@ import { clsx as K } from "clsx";
|
|
|
2
2
|
import { twMerge as J } from "tailwind-merge";
|
|
3
3
|
import { jsx as e, jsxs as s, Fragment as j } from "react/jsx-runtime";
|
|
4
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
|
|
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 G, FileX as re, Package as ie, AlertCircle as se, RefreshCw as oe, Home as ne, XIcon as F, Eye as le, Moon as de, Sun as ce, ChevronLeft as ue } from "lucide-react";
|
|
6
6
|
import { cva as $ } from "class-variance-authority";
|
|
7
7
|
import * as y from "@radix-ui/react-select";
|
|
8
8
|
import * as A from "@radix-ui/react-checkbox";
|
|
@@ -11,8 +11,8 @@ import * as M from "@radix-ui/react-switch";
|
|
|
11
11
|
import { Slot as me } from "@radix-ui/react-slot";
|
|
12
12
|
import * as I from "@radix-ui/react-accordion";
|
|
13
13
|
import * as C from "@radix-ui/react-tooltip";
|
|
14
|
-
import { toast as
|
|
15
|
-
import { Progress as
|
|
14
|
+
import { toast as Tt } from "sonner";
|
|
15
|
+
import { Progress as Et } from "@radix-ui/react-progress";
|
|
16
16
|
import * as w from "@radix-ui/react-dialog";
|
|
17
17
|
function i(...a) {
|
|
18
18
|
return J(K(a));
|
|
@@ -362,17 +362,17 @@ function Fe({ className: a, type: t, ...r }) {
|
|
|
362
362
|
}
|
|
363
363
|
);
|
|
364
364
|
}
|
|
365
|
-
function
|
|
365
|
+
function Qe({
|
|
366
366
|
...a
|
|
367
367
|
}) {
|
|
368
368
|
return /* @__PURE__ */ e(y.Root, { "data-slot": "select", ...a });
|
|
369
369
|
}
|
|
370
|
-
function
|
|
370
|
+
function Ue({
|
|
371
371
|
...a
|
|
372
372
|
}) {
|
|
373
373
|
return /* @__PURE__ */ e(y.Value, { "data-slot": "select-value", ...a });
|
|
374
374
|
}
|
|
375
|
-
function
|
|
375
|
+
function We({
|
|
376
376
|
className: a,
|
|
377
377
|
size: t = "default",
|
|
378
378
|
children: r,
|
|
@@ -395,7 +395,7 @@ function Ue({
|
|
|
395
395
|
}
|
|
396
396
|
);
|
|
397
397
|
}
|
|
398
|
-
function
|
|
398
|
+
function Xe({
|
|
399
399
|
className: a,
|
|
400
400
|
children: t,
|
|
401
401
|
position: r = "popper",
|
|
@@ -429,7 +429,7 @@ function We({
|
|
|
429
429
|
}
|
|
430
430
|
) });
|
|
431
431
|
}
|
|
432
|
-
function
|
|
432
|
+
function Ke({
|
|
433
433
|
className: a,
|
|
434
434
|
children: t,
|
|
435
435
|
...r
|
|
@@ -484,7 +484,7 @@ function we({
|
|
|
484
484
|
}
|
|
485
485
|
);
|
|
486
486
|
}
|
|
487
|
-
function
|
|
487
|
+
function Je({
|
|
488
488
|
className: a,
|
|
489
489
|
...t
|
|
490
490
|
}) {
|
|
@@ -508,7 +508,7 @@ function Ke({
|
|
|
508
508
|
}
|
|
509
509
|
);
|
|
510
510
|
}
|
|
511
|
-
function
|
|
511
|
+
function Ye({
|
|
512
512
|
className: a,
|
|
513
513
|
...t
|
|
514
514
|
}) {
|
|
@@ -521,7 +521,7 @@ function Je({
|
|
|
521
521
|
}
|
|
522
522
|
);
|
|
523
523
|
}
|
|
524
|
-
function
|
|
524
|
+
function Ze({
|
|
525
525
|
className: a,
|
|
526
526
|
...t
|
|
527
527
|
}) {
|
|
@@ -545,7 +545,7 @@ function Ye({
|
|
|
545
545
|
}
|
|
546
546
|
);
|
|
547
547
|
}
|
|
548
|
-
function
|
|
548
|
+
function Oe({
|
|
549
549
|
className: a,
|
|
550
550
|
...t
|
|
551
551
|
}) {
|
|
@@ -916,10 +916,10 @@ const Se = N(
|
|
|
916
916
|
] })
|
|
917
917
|
);
|
|
918
918
|
Se.displayName = "FormGroup";
|
|
919
|
-
function
|
|
919
|
+
function et({ ...a }) {
|
|
920
920
|
return /* @__PURE__ */ e("nav", { "aria-label": "breadcrumb", "data-slot": "breadcrumb", ...a });
|
|
921
921
|
}
|
|
922
|
-
function
|
|
922
|
+
function tt({ className: a, ...t }) {
|
|
923
923
|
return /* @__PURE__ */ e(
|
|
924
924
|
"ol",
|
|
925
925
|
{
|
|
@@ -932,7 +932,7 @@ function et({ className: a, ...t }) {
|
|
|
932
932
|
}
|
|
933
933
|
);
|
|
934
934
|
}
|
|
935
|
-
function
|
|
935
|
+
function at({ className: a, ...t }) {
|
|
936
936
|
return /* @__PURE__ */ e(
|
|
937
937
|
"li",
|
|
938
938
|
{
|
|
@@ -942,7 +942,7 @@ function tt({ className: a, ...t }) {
|
|
|
942
942
|
}
|
|
943
943
|
);
|
|
944
944
|
}
|
|
945
|
-
function
|
|
945
|
+
function rt({
|
|
946
946
|
asChild: a,
|
|
947
947
|
className: t,
|
|
948
948
|
...r
|
|
@@ -956,7 +956,7 @@ function at({
|
|
|
956
956
|
}
|
|
957
957
|
);
|
|
958
958
|
}
|
|
959
|
-
function
|
|
959
|
+
function it({ className: a, ...t }) {
|
|
960
960
|
return /* @__PURE__ */ e(
|
|
961
961
|
"span",
|
|
962
962
|
{
|
|
@@ -969,7 +969,7 @@ function rt({ className: a, ...t }) {
|
|
|
969
969
|
}
|
|
970
970
|
);
|
|
971
971
|
}
|
|
972
|
-
function
|
|
972
|
+
function st({
|
|
973
973
|
children: a,
|
|
974
974
|
className: t,
|
|
975
975
|
...r
|
|
@@ -982,16 +982,16 @@ function it({
|
|
|
982
982
|
"aria-hidden": "true",
|
|
983
983
|
className: i("[&>svg]:size-3.5", t),
|
|
984
984
|
...r,
|
|
985
|
-
children: a ?? /* @__PURE__ */ e(
|
|
985
|
+
children: a ?? /* @__PURE__ */ e(G, {})
|
|
986
986
|
}
|
|
987
987
|
);
|
|
988
988
|
}
|
|
989
|
-
function
|
|
989
|
+
function ot({
|
|
990
990
|
...a
|
|
991
991
|
}) {
|
|
992
992
|
return /* @__PURE__ */ e(I.Root, { "data-slot": "accordion", ...a });
|
|
993
993
|
}
|
|
994
|
-
function
|
|
994
|
+
function nt({
|
|
995
995
|
className: a,
|
|
996
996
|
...t
|
|
997
997
|
}) {
|
|
@@ -1004,7 +1004,7 @@ function ot({
|
|
|
1004
1004
|
}
|
|
1005
1005
|
);
|
|
1006
1006
|
}
|
|
1007
|
-
function
|
|
1007
|
+
function lt({
|
|
1008
1008
|
className: a,
|
|
1009
1009
|
children: t,
|
|
1010
1010
|
...r
|
|
@@ -1025,7 +1025,7 @@ function nt({
|
|
|
1025
1025
|
}
|
|
1026
1026
|
) });
|
|
1027
1027
|
}
|
|
1028
|
-
function
|
|
1028
|
+
function dt({
|
|
1029
1029
|
className: a,
|
|
1030
1030
|
children: t,
|
|
1031
1031
|
...r
|
|
@@ -1053,17 +1053,17 @@ function Ce({
|
|
|
1053
1053
|
}
|
|
1054
1054
|
);
|
|
1055
1055
|
}
|
|
1056
|
-
function
|
|
1056
|
+
function ct({
|
|
1057
1057
|
...a
|
|
1058
1058
|
}) {
|
|
1059
1059
|
return /* @__PURE__ */ e(Ce, { children: /* @__PURE__ */ e(C.Root, { "data-slot": "tooltip", ...a }) });
|
|
1060
1060
|
}
|
|
1061
|
-
function
|
|
1061
|
+
function ut({
|
|
1062
1062
|
...a
|
|
1063
1063
|
}) {
|
|
1064
1064
|
return /* @__PURE__ */ e(C.Trigger, { "data-slot": "tooltip-trigger", ...a });
|
|
1065
1065
|
}
|
|
1066
|
-
function
|
|
1066
|
+
function mt({
|
|
1067
1067
|
className: a,
|
|
1068
1068
|
sideOffset: t = 0,
|
|
1069
1069
|
children: r,
|
|
@@ -1391,12 +1391,12 @@ const De = N(
|
|
|
1391
1391
|
}
|
|
1392
1392
|
);
|
|
1393
1393
|
De.displayName = "ProductGrid";
|
|
1394
|
-
function
|
|
1394
|
+
function ft({
|
|
1395
1395
|
...a
|
|
1396
1396
|
}) {
|
|
1397
1397
|
return /* @__PURE__ */ e(w.Root, { "data-slot": "dialog", ...a });
|
|
1398
1398
|
}
|
|
1399
|
-
function
|
|
1399
|
+
function gt({
|
|
1400
1400
|
...a
|
|
1401
1401
|
}) {
|
|
1402
1402
|
return /* @__PURE__ */ e(w.Trigger, { "data-slot": "dialog-trigger", ...a });
|
|
@@ -1422,7 +1422,7 @@ function $e({
|
|
|
1422
1422
|
}
|
|
1423
1423
|
);
|
|
1424
1424
|
}
|
|
1425
|
-
function
|
|
1425
|
+
function pt({
|
|
1426
1426
|
className: a,
|
|
1427
1427
|
children: t,
|
|
1428
1428
|
...r
|
|
@@ -1441,7 +1441,7 @@ function gt({
|
|
|
1441
1441
|
children: [
|
|
1442
1442
|
t,
|
|
1443
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(
|
|
1444
|
+
/* @__PURE__ */ e(F, {}),
|
|
1445
1445
|
/* @__PURE__ */ e("span", { className: "sr-only", children: "Close" })
|
|
1446
1446
|
] })
|
|
1447
1447
|
]
|
|
@@ -1449,7 +1449,7 @@ function gt({
|
|
|
1449
1449
|
)
|
|
1450
1450
|
] });
|
|
1451
1451
|
}
|
|
1452
|
-
function
|
|
1452
|
+
function vt({ className: a, ...t }) {
|
|
1453
1453
|
return /* @__PURE__ */ e(
|
|
1454
1454
|
"div",
|
|
1455
1455
|
{
|
|
@@ -1459,7 +1459,7 @@ function pt({ className: a, ...t }) {
|
|
|
1459
1459
|
}
|
|
1460
1460
|
);
|
|
1461
1461
|
}
|
|
1462
|
-
function
|
|
1462
|
+
function bt({ className: a, ...t }) {
|
|
1463
1463
|
return /* @__PURE__ */ e(
|
|
1464
1464
|
"div",
|
|
1465
1465
|
{
|
|
@@ -1472,7 +1472,7 @@ function vt({ className: a, ...t }) {
|
|
|
1472
1472
|
}
|
|
1473
1473
|
);
|
|
1474
1474
|
}
|
|
1475
|
-
function
|
|
1475
|
+
function ht({
|
|
1476
1476
|
className: a,
|
|
1477
1477
|
...t
|
|
1478
1478
|
}) {
|
|
@@ -1485,7 +1485,7 @@ function bt({
|
|
|
1485
1485
|
}
|
|
1486
1486
|
);
|
|
1487
1487
|
}
|
|
1488
|
-
function
|
|
1488
|
+
function xt({
|
|
1489
1489
|
className: a,
|
|
1490
1490
|
...t
|
|
1491
1491
|
}) {
|
|
@@ -1498,10 +1498,10 @@ function ht({
|
|
|
1498
1498
|
}
|
|
1499
1499
|
);
|
|
1500
1500
|
}
|
|
1501
|
-
function
|
|
1501
|
+
function Nt({ ...a }) {
|
|
1502
1502
|
return /* @__PURE__ */ e(w.Root, { "data-slot": "sheet", ...a });
|
|
1503
1503
|
}
|
|
1504
|
-
function
|
|
1504
|
+
function wt({
|
|
1505
1505
|
...a
|
|
1506
1506
|
}) {
|
|
1507
1507
|
return /* @__PURE__ */ e(w.Trigger, { "data-slot": "sheet-trigger", ...a });
|
|
@@ -1527,7 +1527,7 @@ function Re({
|
|
|
1527
1527
|
}
|
|
1528
1528
|
);
|
|
1529
1529
|
}
|
|
1530
|
-
function
|
|
1530
|
+
function yt({
|
|
1531
1531
|
className: a,
|
|
1532
1532
|
children: t,
|
|
1533
1533
|
side: r = "right",
|
|
@@ -1551,7 +1551,7 @@ function wt({
|
|
|
1551
1551
|
children: [
|
|
1552
1552
|
t,
|
|
1553
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(
|
|
1554
|
+
/* @__PURE__ */ e(F, { className: "size-4" }),
|
|
1555
1555
|
/* @__PURE__ */ e("span", { className: "sr-only", children: "Close" })
|
|
1556
1556
|
] })
|
|
1557
1557
|
]
|
|
@@ -1559,7 +1559,7 @@ function wt({
|
|
|
1559
1559
|
)
|
|
1560
1560
|
] });
|
|
1561
1561
|
}
|
|
1562
|
-
function
|
|
1562
|
+
function kt({ className: a, ...t }) {
|
|
1563
1563
|
return /* @__PURE__ */ e(
|
|
1564
1564
|
"div",
|
|
1565
1565
|
{
|
|
@@ -1569,7 +1569,7 @@ function yt({ className: a, ...t }) {
|
|
|
1569
1569
|
}
|
|
1570
1570
|
);
|
|
1571
1571
|
}
|
|
1572
|
-
function
|
|
1572
|
+
function zt({ className: a, ...t }) {
|
|
1573
1573
|
return /* @__PURE__ */ e(
|
|
1574
1574
|
"div",
|
|
1575
1575
|
{
|
|
@@ -1579,7 +1579,7 @@ function kt({ className: a, ...t }) {
|
|
|
1579
1579
|
}
|
|
1580
1580
|
);
|
|
1581
1581
|
}
|
|
1582
|
-
function
|
|
1582
|
+
function St({
|
|
1583
1583
|
className: a,
|
|
1584
1584
|
...t
|
|
1585
1585
|
}) {
|
|
@@ -1592,7 +1592,7 @@ function zt({
|
|
|
1592
1592
|
}
|
|
1593
1593
|
);
|
|
1594
1594
|
}
|
|
1595
|
-
function
|
|
1595
|
+
function Ct({
|
|
1596
1596
|
className: a,
|
|
1597
1597
|
...t
|
|
1598
1598
|
}) {
|
|
@@ -1823,7 +1823,7 @@ const Be = N(
|
|
|
1823
1823
|
onClick: m,
|
|
1824
1824
|
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
1825
|
"aria-label": "Próximo slide",
|
|
1826
|
-
children: /* @__PURE__ */ e(
|
|
1826
|
+
children: /* @__PURE__ */ e(G, { className: "h-6 w-6 text-gray-900" })
|
|
1827
1827
|
}
|
|
1828
1828
|
)
|
|
1829
1829
|
] }),
|
|
@@ -1846,69 +1846,107 @@ const Be = N(
|
|
|
1846
1846
|
}
|
|
1847
1847
|
);
|
|
1848
1848
|
Be.displayName = "HeroCarousel";
|
|
1849
|
+
function It({ children: a, as: t = "div", className: r }) {
|
|
1850
|
+
return /* @__PURE__ */ e(
|
|
1851
|
+
t,
|
|
1852
|
+
{
|
|
1853
|
+
"data-slot": "container",
|
|
1854
|
+
className: i("w-full mx-auto px-[var(--container-px)]", r),
|
|
1855
|
+
style: { maxWidth: "var(--container-max)" },
|
|
1856
|
+
children: a
|
|
1857
|
+
}
|
|
1858
|
+
);
|
|
1859
|
+
}
|
|
1860
|
+
function jt({ children: a, className: t }) {
|
|
1861
|
+
return /* @__PURE__ */ e(
|
|
1862
|
+
"div",
|
|
1863
|
+
{
|
|
1864
|
+
"data-slot": "grid",
|
|
1865
|
+
className: i(
|
|
1866
|
+
"grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-[var(--grid-gutter)]",
|
|
1867
|
+
t
|
|
1868
|
+
),
|
|
1869
|
+
children: a
|
|
1870
|
+
}
|
|
1871
|
+
);
|
|
1872
|
+
}
|
|
1873
|
+
const Ae = {
|
|
1874
|
+
1: "col-span-1",
|
|
1875
|
+
2: "col-span-2",
|
|
1876
|
+
3: "col-span-3",
|
|
1877
|
+
4: "col-span-4",
|
|
1878
|
+
5: "col-span-5",
|
|
1879
|
+
6: "col-span-6"
|
|
1880
|
+
};
|
|
1881
|
+
function Dt({ children: a, span: t, className: r }) {
|
|
1882
|
+
return /* @__PURE__ */ e("div", { "data-slot": "col", className: i("min-w-0", t && Ae[t], r), children: a });
|
|
1883
|
+
}
|
|
1849
1884
|
export {
|
|
1850
|
-
|
|
1851
|
-
|
|
1852
|
-
|
|
1853
|
-
|
|
1885
|
+
ot as Accordion,
|
|
1886
|
+
dt as AccordionContent,
|
|
1887
|
+
nt as AccordionItem,
|
|
1888
|
+
lt as AccordionTrigger,
|
|
1854
1889
|
ve as Avatar,
|
|
1855
1890
|
P as Badge,
|
|
1856
|
-
|
|
1857
|
-
|
|
1858
|
-
|
|
1859
|
-
|
|
1860
|
-
|
|
1861
|
-
|
|
1891
|
+
et as Breadcrumb,
|
|
1892
|
+
at as BreadcrumbItem,
|
|
1893
|
+
rt as BreadcrumbLink,
|
|
1894
|
+
tt as BreadcrumbList,
|
|
1895
|
+
it as BreadcrumbPage,
|
|
1896
|
+
st as BreadcrumbSeparator,
|
|
1862
1897
|
z as Button,
|
|
1863
|
-
|
|
1864
|
-
|
|
1865
|
-
|
|
1866
|
-
|
|
1867
|
-
|
|
1868
|
-
bt as
|
|
1869
|
-
|
|
1898
|
+
Je as Checkbox,
|
|
1899
|
+
Dt as Col,
|
|
1900
|
+
It as Container,
|
|
1901
|
+
pt as DialogContent,
|
|
1902
|
+
xt as DialogDescription,
|
|
1903
|
+
bt as DialogFooter,
|
|
1904
|
+
vt as DialogHeader,
|
|
1905
|
+
ht as DialogTitle,
|
|
1906
|
+
gt as DialogTrigger,
|
|
1870
1907
|
xe as Divider,
|
|
1871
|
-
|
|
1908
|
+
Nt as Drawer,
|
|
1872
1909
|
W as EmptyState,
|
|
1873
1910
|
je as ErrorState,
|
|
1874
1911
|
Se as FormGroup,
|
|
1912
|
+
jt as Grid,
|
|
1875
1913
|
Ie as Hero,
|
|
1876
1914
|
Be as HeroCarousel,
|
|
1877
1915
|
Fe as Input,
|
|
1878
|
-
|
|
1916
|
+
ft as Modal,
|
|
1879
1917
|
ke as PriceDisplay,
|
|
1880
1918
|
R as ProductCard,
|
|
1881
1919
|
De as ProductGrid,
|
|
1882
|
-
|
|
1920
|
+
Et as ProgressBar,
|
|
1883
1921
|
ze as QuantitySelector,
|
|
1884
|
-
|
|
1885
|
-
|
|
1922
|
+
Ye as RadioGroup,
|
|
1923
|
+
Ze as RadioGroupItem,
|
|
1886
1924
|
U as Rating,
|
|
1887
1925
|
ye as SearchBar,
|
|
1888
|
-
|
|
1889
|
-
|
|
1890
|
-
|
|
1891
|
-
|
|
1892
|
-
|
|
1893
|
-
|
|
1894
|
-
|
|
1895
|
-
|
|
1896
|
-
|
|
1897
|
-
|
|
1898
|
-
|
|
1926
|
+
Qe as Select,
|
|
1927
|
+
Xe as SelectContent,
|
|
1928
|
+
Ke as SelectItem,
|
|
1929
|
+
We as SelectTrigger,
|
|
1930
|
+
Ue as SelectValue,
|
|
1931
|
+
yt as SheetContent,
|
|
1932
|
+
Ct as SheetDescription,
|
|
1933
|
+
zt as SheetFooter,
|
|
1934
|
+
kt as SheetHeader,
|
|
1935
|
+
St as SheetTitle,
|
|
1936
|
+
wt as SheetTrigger,
|
|
1899
1937
|
he as Spinner,
|
|
1900
1938
|
fe as Textarea,
|
|
1901
|
-
|
|
1902
|
-
|
|
1903
|
-
|
|
1939
|
+
Oe as Toggle,
|
|
1940
|
+
ct as Tooltip,
|
|
1941
|
+
mt as TooltipContent,
|
|
1904
1942
|
Ce as TooltipProvider,
|
|
1905
|
-
|
|
1943
|
+
ut as TooltipTrigger,
|
|
1906
1944
|
Ee as TopAccessibilityBar,
|
|
1907
1945
|
pe as avatarVariants,
|
|
1908
1946
|
ge as badgeVariants,
|
|
1909
1947
|
Q as buttonVariants,
|
|
1910
1948
|
i as cn,
|
|
1911
1949
|
be as spinnerVariants,
|
|
1912
|
-
|
|
1950
|
+
Tt as toast
|
|
1913
1951
|
};
|
|
1914
1952
|
//# sourceMappingURL=index.js.map
|