@misael703/ui 1.16.0 → 1.18.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.
Files changed (75) hide show
  1. package/dist/{chunk-BBZESXFJ.mjs → chunk-2I7NE7QR.mjs} +2 -2
  2. package/dist/chunk-2I7NE7QR.mjs.map +1 -0
  3. package/dist/{chunk-N5D6AC6M.mjs → chunk-4QHE5H36.mjs} +34 -3
  4. package/dist/chunk-4QHE5H36.mjs.map +1 -0
  5. package/dist/{chunk-BGIX6G5V.mjs → chunk-5A3MAGA3.mjs} +48 -10
  6. package/dist/chunk-5A3MAGA3.mjs.map +1 -0
  7. package/dist/{chunk-DHCJMYFD.mjs → chunk-B4I6BMNS.mjs} +7 -3
  8. package/dist/chunk-B4I6BMNS.mjs.map +1 -0
  9. package/dist/{chunk-62F5E5NQ.js → chunk-DGBVPXGW.js} +14 -14
  10. package/dist/{chunk-62F5E5NQ.js.map → chunk-DGBVPXGW.js.map} +1 -1
  11. package/dist/{chunk-Y6AYAE4O.mjs → chunk-E462CF6P.mjs} +19 -21
  12. package/dist/chunk-E462CF6P.mjs.map +1 -0
  13. package/dist/{chunk-TIO7MIUN.js → chunk-FS42XEU7.js} +49 -9
  14. package/dist/chunk-FS42XEU7.js.map +1 -0
  15. package/dist/{chunk-OXX5RSZQ.js → chunk-IZELILHK.js} +2 -2
  16. package/dist/chunk-IZELILHK.js.map +1 -0
  17. package/dist/{chunk-DY3DCHWD.mjs → chunk-L4ITC2U6.mjs} +3 -3
  18. package/dist/{chunk-DY3DCHWD.mjs.map → chunk-L4ITC2U6.mjs.map} +1 -1
  19. package/dist/{chunk-D7RM4AY4.js → chunk-MJ6UOTWQ.js} +13 -13
  20. package/dist/{chunk-D7RM4AY4.js.map → chunk-MJ6UOTWQ.js.map} +1 -1
  21. package/dist/{chunk-HHEYTMBY.js → chunk-MVJITG75.js} +37 -2
  22. package/dist/chunk-MVJITG75.js.map +1 -0
  23. package/dist/{chunk-YL2IWHUZ.mjs → chunk-PKCLA2FD.mjs} +3 -3
  24. package/dist/{chunk-YL2IWHUZ.mjs.map → chunk-PKCLA2FD.mjs.map} +1 -1
  25. package/dist/{chunk-AZBX7UFI.js → chunk-PRECODB3.js} +8 -2
  26. package/dist/chunk-PRECODB3.js.map +1 -0
  27. package/dist/{chunk-7LCZ6ABE.js → chunk-SZWROXKE.js} +19 -21
  28. package/dist/chunk-SZWROXKE.js.map +1 -0
  29. package/dist/{chunk-ZMRN4DMC.js → chunk-XCZVZVYJ.js} +9 -9
  30. package/dist/{chunk-ZMRN4DMC.js.map → chunk-XCZVZVYJ.js.map} +1 -1
  31. package/dist/{chunk-5MIN6LUP.mjs → chunk-YNU45Y5T.mjs} +3 -3
  32. package/dist/{chunk-5MIN6LUP.mjs.map → chunk-YNU45Y5T.mjs.map} +1 -1
  33. package/dist/components/AdvancedPickers.js +6 -6
  34. package/dist/components/AdvancedPickers.mjs +2 -2
  35. package/dist/components/AppShell.d.mts +66 -21
  36. package/dist/components/AppShell.d.ts +66 -21
  37. package/dist/components/AppShell.js +3 -3
  38. package/dist/components/AppShell.mjs +1 -1
  39. package/dist/components/Display.d.mts +4 -3
  40. package/dist/components/Display.d.ts +4 -3
  41. package/dist/components/Display.js +12 -12
  42. package/dist/components/Display.mjs +1 -1
  43. package/dist/components/Display3.js +8 -8
  44. package/dist/components/Display3.mjs +2 -2
  45. package/dist/components/Layout.d.mts +32 -2
  46. package/dist/components/Layout.d.ts +32 -2
  47. package/dist/components/Layout.js +26 -18
  48. package/dist/components/Layout.mjs +1 -1
  49. package/dist/components/Pickers.js +7 -7
  50. package/dist/components/Pickers.mjs +2 -2
  51. package/dist/components/Toggle.d.mts +17 -1
  52. package/dist/components/Toggle.d.ts +17 -1
  53. package/dist/components/Toggle.js +12 -4
  54. package/dist/components/Toggle.mjs +1 -1
  55. package/dist/index.d.mts +5 -5
  56. package/dist/index.d.ts +5 -5
  57. package/dist/index.js +98 -66
  58. package/dist/index.mjs +9 -9
  59. package/dist/styles.css +1 -1
  60. package/dist/tokens.css +1 -1
  61. package/dist/utils/dateFormat.d.mts +24 -1
  62. package/dist/utils/dateFormat.d.ts +24 -1
  63. package/dist/utils/dateFormat.js +26 -10
  64. package/dist/utils/dateFormat.mjs +1 -1
  65. package/package.json +1 -1
  66. package/dist/chunk-7LCZ6ABE.js.map +0 -1
  67. package/dist/chunk-AZBX7UFI.js.map +0 -1
  68. package/dist/chunk-BBZESXFJ.mjs.map +0 -1
  69. package/dist/chunk-BGIX6G5V.mjs.map +0 -1
  70. package/dist/chunk-DHCJMYFD.mjs.map +0 -1
  71. package/dist/chunk-HHEYTMBY.js.map +0 -1
  72. package/dist/chunk-N5D6AC6M.mjs.map +0 -1
  73. package/dist/chunk-OXX5RSZQ.js.map +0 -1
  74. package/dist/chunk-TIO7MIUN.js.map +0 -1
  75. package/dist/chunk-Y6AYAE4O.mjs.map +0 -1
@@ -26,42 +26,87 @@ interface AppShellHeader {
26
26
  /** Right slot — notifications, user avatar, utilities. */
27
27
  right?: React.ReactNode;
28
28
  }
29
- interface AppShellProps {
30
- brand?: React.ReactNode;
31
- brandCollapsed?: React.ReactNode;
29
+ /**
30
+ * Props shared by both layouts. The layout-specific props live in
31
+ * `AppShellSideProps` / `AppShellTopProps`; `AppShellProps` is the
32
+ * discriminated union of the two, keyed on `headerLayout`.
33
+ */
34
+ interface AppShellBaseProps {
32
35
  sections: NavSection[];
33
- topbar?: React.ReactNode;
34
36
  footer?: React.ReactNode;
35
- user?: React.ReactNode;
36
37
  defaultCollapsed?: boolean;
37
38
  collapsed?: boolean;
38
39
  onCollapsedChange?: (c: boolean) => void;
39
40
  children: React.ReactNode;
40
41
  className?: string;
41
42
  /**
42
- * Sidebar color theme:
43
+ * Color theme (applies to both layouts):
43
44
  * - `default` (light): claro, mejor para apps data-heavy de uso prolongado.
44
- * - `brand`: sidebar azul de marca con texto blanco. Mayor brand recall.
45
+ * - `brand`: superficie azul de marca con texto blanco. Mayor brand recall.
46
+ * En `side` tiñe el sidebar; en `top` tiñe header + sidebar (un solo knob).
45
47
  */
46
48
  theme?: AppShellTheme;
47
49
  /** Render-prop for navigation links so the host app can use Next.js Link, etc. */
48
50
  linkAs?: (item: NavItem, content: React.ReactNode, className: string) => React.ReactNode;
51
+ }
52
+ /**
53
+ * Sidebar layout (default, `headerLayout="side"` or omitted). The brand
54
+ * block + collapse rail live in the sidebar; the topbar sits over the
55
+ * content with a mobile hamburger. `header` is **not** valid here — that
56
+ * slot belongs to the `top` layout.
57
+ */
58
+ interface AppShellSideProps extends AppShellBaseProps {
59
+ headerLayout?: 'side';
60
+ /** Brand node in the sidebar header (expanded state). */
61
+ brand?: React.ReactNode;
62
+ /** Brand node shown when the rail is collapsed. Falls back to `brand`. */
63
+ brandCollapsed?: React.ReactNode;
64
+ /** Content of the topbar over the page (search, etc.). */
65
+ topbar?: React.ReactNode;
66
+ /** User slot at the right of the topbar (avatar/menu). */
67
+ user?: React.ReactNode;
68
+ /** Not valid in the `side` layout — the header slots belong to `top`. */
69
+ header?: never;
70
+ }
71
+ /**
72
+ * Top-header layout (`headerLayout="top"`, v1.15.0). Full-width header
73
+ * above the body with three slots (`header.{left,center,right}`); the
74
+ * centre slot lands at the **true viewport centre** (1fr·auto·1fr grid).
75
+ * The sidebar has no brand block and `collapsed` hides it entirely (no
76
+ * 72px rail); the header is **invariant** to the collapse. `theme="brand"`
77
+ * tints both bands. The `side`-only props are **not** valid here — put your
78
+ * chrome in `header`.
79
+ */
80
+ interface AppShellTopProps extends AppShellBaseProps {
81
+ headerLayout: 'top';
82
+ /** Slots for the full-width header. Brand usually goes in `center`. */
83
+ header?: AppShellHeader;
49
84
  /**
50
- * Where the chrome lives. Default `'side'` is the legacy layout. `'top'`
51
- * renders a full-width header above the body with three slots
52
- * (`header.left/center/right`); the centre slot lands at the **true
53
- * viewport centre** (1fr·auto·1fr column grid). The sidebar has no brand
54
- * block (brand goes in `header.center`) and `collapsed` hides the
55
- * sidebar entirely — no 72px rail. The topbar is **invariant** to the
56
- * collapse (only the sidebar changes width). `theme="brand"` tints both
57
- * header and sidebar with the same brand colour (single knob). `brand`,
58
- * `brandCollapsed` and `topbar` are ignored when `'top'`.
85
+ * Theme of the **header band only**, independent of the sidebar (`theme`).
86
+ * Defaults to `theme`, so `theme="brand"` still tints both bands (no
87
+ * change for existing consumers). Set `theme="default" headerTheme="brand"`
88
+ * for a branded top bar over a neutral, legible sidebar common in
89
+ * data-heavy admin apps.
59
90
  */
60
- headerLayout?: AppShellHeaderLayout;
61
- /** Slots for the top-layout header (only used when `headerLayout="top"`). */
62
- header?: AppShellHeader;
91
+ headerTheme?: AppShellTheme;
92
+ /** Not valid in `top` — use `header.center` for the brand. */
93
+ brand?: never;
94
+ /** Not valid in `top` — the sidebar collapses entirely. */
95
+ brandCollapsed?: never;
96
+ /** Not valid in `top` — use the `header` slots. */
97
+ topbar?: never;
98
+ /** Not valid in `top` — use `header.right`. */
99
+ user?: never;
63
100
  }
64
- declare function AppShell({ brand, brandCollapsed, sections, topbar, footer, user, defaultCollapsed, collapsed: ctrlCollapsed, onCollapsedChange, children, className, theme, linkAs, headerLayout, header, }: AppShellProps): react_jsx_runtime.JSX.Element;
101
+ /**
102
+ * Discriminated union keyed on `headerLayout`. TypeScript enforces that
103
+ * `header` is only accepted with `headerLayout="top"` and that
104
+ * `brand`/`brandCollapsed`/`topbar`/`user` are only accepted with the
105
+ * (default) `side` layout — passing the wrong prop for the layout is a
106
+ * compile error instead of being silently ignored at runtime.
107
+ */
108
+ type AppShellProps = AppShellSideProps | AppShellTopProps;
109
+ declare function AppShell(props: AppShellProps): react_jsx_runtime.JSX.Element;
65
110
  interface PageHeaderProps {
66
111
  title: React.ReactNode;
67
112
  description?: React.ReactNode;
@@ -75,4 +120,4 @@ interface PageHeaderProps {
75
120
  }
76
121
  declare function PageHeader({ title, description, breadcrumbs, actions, meta, className }: PageHeaderProps): react_jsx_runtime.JSX.Element;
77
122
 
78
- export { AppShell, type AppShellHeader, type AppShellHeaderLayout, type AppShellProps, type AppShellTheme, type NavItem, type NavSection, PageHeader, type PageHeaderProps };
123
+ export { AppShell, type AppShellBaseProps, type AppShellHeader, type AppShellHeaderLayout, type AppShellProps, type AppShellSideProps, type AppShellTheme, type AppShellTopProps, type NavItem, type NavSection, PageHeader, type PageHeaderProps };
@@ -26,42 +26,87 @@ interface AppShellHeader {
26
26
  /** Right slot — notifications, user avatar, utilities. */
27
27
  right?: React.ReactNode;
28
28
  }
29
- interface AppShellProps {
30
- brand?: React.ReactNode;
31
- brandCollapsed?: React.ReactNode;
29
+ /**
30
+ * Props shared by both layouts. The layout-specific props live in
31
+ * `AppShellSideProps` / `AppShellTopProps`; `AppShellProps` is the
32
+ * discriminated union of the two, keyed on `headerLayout`.
33
+ */
34
+ interface AppShellBaseProps {
32
35
  sections: NavSection[];
33
- topbar?: React.ReactNode;
34
36
  footer?: React.ReactNode;
35
- user?: React.ReactNode;
36
37
  defaultCollapsed?: boolean;
37
38
  collapsed?: boolean;
38
39
  onCollapsedChange?: (c: boolean) => void;
39
40
  children: React.ReactNode;
40
41
  className?: string;
41
42
  /**
42
- * Sidebar color theme:
43
+ * Color theme (applies to both layouts):
43
44
  * - `default` (light): claro, mejor para apps data-heavy de uso prolongado.
44
- * - `brand`: sidebar azul de marca con texto blanco. Mayor brand recall.
45
+ * - `brand`: superficie azul de marca con texto blanco. Mayor brand recall.
46
+ * En `side` tiñe el sidebar; en `top` tiñe header + sidebar (un solo knob).
45
47
  */
46
48
  theme?: AppShellTheme;
47
49
  /** Render-prop for navigation links so the host app can use Next.js Link, etc. */
48
50
  linkAs?: (item: NavItem, content: React.ReactNode, className: string) => React.ReactNode;
51
+ }
52
+ /**
53
+ * Sidebar layout (default, `headerLayout="side"` or omitted). The brand
54
+ * block + collapse rail live in the sidebar; the topbar sits over the
55
+ * content with a mobile hamburger. `header` is **not** valid here — that
56
+ * slot belongs to the `top` layout.
57
+ */
58
+ interface AppShellSideProps extends AppShellBaseProps {
59
+ headerLayout?: 'side';
60
+ /** Brand node in the sidebar header (expanded state). */
61
+ brand?: React.ReactNode;
62
+ /** Brand node shown when the rail is collapsed. Falls back to `brand`. */
63
+ brandCollapsed?: React.ReactNode;
64
+ /** Content of the topbar over the page (search, etc.). */
65
+ topbar?: React.ReactNode;
66
+ /** User slot at the right of the topbar (avatar/menu). */
67
+ user?: React.ReactNode;
68
+ /** Not valid in the `side` layout — the header slots belong to `top`. */
69
+ header?: never;
70
+ }
71
+ /**
72
+ * Top-header layout (`headerLayout="top"`, v1.15.0). Full-width header
73
+ * above the body with three slots (`header.{left,center,right}`); the
74
+ * centre slot lands at the **true viewport centre** (1fr·auto·1fr grid).
75
+ * The sidebar has no brand block and `collapsed` hides it entirely (no
76
+ * 72px rail); the header is **invariant** to the collapse. `theme="brand"`
77
+ * tints both bands. The `side`-only props are **not** valid here — put your
78
+ * chrome in `header`.
79
+ */
80
+ interface AppShellTopProps extends AppShellBaseProps {
81
+ headerLayout: 'top';
82
+ /** Slots for the full-width header. Brand usually goes in `center`. */
83
+ header?: AppShellHeader;
49
84
  /**
50
- * Where the chrome lives. Default `'side'` is the legacy layout. `'top'`
51
- * renders a full-width header above the body with three slots
52
- * (`header.left/center/right`); the centre slot lands at the **true
53
- * viewport centre** (1fr·auto·1fr column grid). The sidebar has no brand
54
- * block (brand goes in `header.center`) and `collapsed` hides the
55
- * sidebar entirely — no 72px rail. The topbar is **invariant** to the
56
- * collapse (only the sidebar changes width). `theme="brand"` tints both
57
- * header and sidebar with the same brand colour (single knob). `brand`,
58
- * `brandCollapsed` and `topbar` are ignored when `'top'`.
85
+ * Theme of the **header band only**, independent of the sidebar (`theme`).
86
+ * Defaults to `theme`, so `theme="brand"` still tints both bands (no
87
+ * change for existing consumers). Set `theme="default" headerTheme="brand"`
88
+ * for a branded top bar over a neutral, legible sidebar common in
89
+ * data-heavy admin apps.
59
90
  */
60
- headerLayout?: AppShellHeaderLayout;
61
- /** Slots for the top-layout header (only used when `headerLayout="top"`). */
62
- header?: AppShellHeader;
91
+ headerTheme?: AppShellTheme;
92
+ /** Not valid in `top` — use `header.center` for the brand. */
93
+ brand?: never;
94
+ /** Not valid in `top` — the sidebar collapses entirely. */
95
+ brandCollapsed?: never;
96
+ /** Not valid in `top` — use the `header` slots. */
97
+ topbar?: never;
98
+ /** Not valid in `top` — use `header.right`. */
99
+ user?: never;
63
100
  }
64
- declare function AppShell({ brand, brandCollapsed, sections, topbar, footer, user, defaultCollapsed, collapsed: ctrlCollapsed, onCollapsedChange, children, className, theme, linkAs, headerLayout, header, }: AppShellProps): react_jsx_runtime.JSX.Element;
101
+ /**
102
+ * Discriminated union keyed on `headerLayout`. TypeScript enforces that
103
+ * `header` is only accepted with `headerLayout="top"` and that
104
+ * `brand`/`brandCollapsed`/`topbar`/`user` are only accepted with the
105
+ * (default) `side` layout — passing the wrong prop for the layout is a
106
+ * compile error instead of being silently ignored at runtime.
107
+ */
108
+ type AppShellProps = AppShellSideProps | AppShellTopProps;
109
+ declare function AppShell(props: AppShellProps): react_jsx_runtime.JSX.Element;
65
110
  interface PageHeaderProps {
66
111
  title: React.ReactNode;
67
112
  description?: React.ReactNode;
@@ -75,4 +120,4 @@ interface PageHeaderProps {
75
120
  }
76
121
  declare function PageHeader({ title, description, breadcrumbs, actions, meta, className }: PageHeaderProps): react_jsx_runtime.JSX.Element;
77
122
 
78
- export { AppShell, type AppShellHeader, type AppShellHeaderLayout, type AppShellProps, type AppShellTheme, type NavItem, type NavSection, PageHeader, type PageHeaderProps };
123
+ export { AppShell, type AppShellBaseProps, type AppShellHeader, type AppShellHeaderLayout, type AppShellProps, type AppShellSideProps, type AppShellTheme, type AppShellTopProps, type NavItem, type NavSection, PageHeader, type PageHeaderProps };
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
  'use strict';
3
3
 
4
- var chunk7LCZ6ABE_js = require('../chunk-7LCZ6ABE.js');
4
+ var chunkSZWROXKE_js = require('../chunk-SZWROXKE.js');
5
5
  require('../chunk-4VMQLSHV.js');
6
6
  require('../chunk-RQOTH7I7.js');
7
7
  require('../chunk-PASF6T4H.js');
@@ -10,11 +10,11 @@ require('../chunk-PASF6T4H.js');
10
10
 
11
11
  Object.defineProperty(exports, "AppShell", {
12
12
  enumerable: true,
13
- get: function () { return chunk7LCZ6ABE_js.AppShell; }
13
+ get: function () { return chunkSZWROXKE_js.AppShell; }
14
14
  });
15
15
  Object.defineProperty(exports, "PageHeader", {
16
16
  enumerable: true,
17
- get: function () { return chunk7LCZ6ABE_js.PageHeader; }
17
+ get: function () { return chunkSZWROXKE_js.PageHeader; }
18
18
  });
19
19
  //# sourceMappingURL=AppShell.js.map
20
20
  //# sourceMappingURL=AppShell.js.map
@@ -1,5 +1,5 @@
1
1
  'use client';
2
- export { AppShell, PageHeader } from '../chunk-Y6AYAE4O.mjs';
2
+ export { AppShell, PageHeader } from '../chunk-E462CF6P.mjs';
3
3
  import '../chunk-PQV7HHCJ.mjs';
4
4
  import '../chunk-CIBJKJV3.mjs';
5
5
  import '../chunk-IEPCH3JB.mjs';
@@ -2,7 +2,8 @@ import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import * as React from 'react';
3
3
  import { Extensible } from '../utils/types.mjs';
4
4
 
5
- type CardAccent = 'brand' | 'secondary' | 'success' | 'warning' | 'danger' | 'info';
5
+ type CategoryAccent = 'cat-1' | 'cat-2' | 'cat-3' | 'cat-4' | 'cat-5' | 'cat-6';
6
+ type CardAccent = 'brand' | 'secondary' | 'success' | 'warning' | 'danger' | 'info' | 'neutral' | CategoryAccent;
6
7
  interface CardProps extends React.HTMLAttributes<HTMLDivElement> {
7
8
  interactive?: boolean;
8
9
  accent?: Extensible<CardAccent>;
@@ -17,7 +18,7 @@ declare const Card: React.ForwardRefExoticComponent<CardProps & React.RefAttribu
17
18
  declare const CardHeader: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
18
19
  declare const CardBody: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
19
20
  declare const CardFooter: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
20
- type BadgeVariant = 'primary' | 'accent' | 'success' | 'warning' | 'danger' | 'info' | 'neutral';
21
+ type BadgeVariant = 'primary' | 'accent' | 'success' | 'warning' | 'danger' | 'info' | 'neutral' | CategoryAccent;
21
22
  interface BadgeProps extends React.HTMLAttributes<HTMLSpanElement> {
22
23
  variant?: Extensible<BadgeVariant>;
23
24
  dot?: boolean;
@@ -84,4 +85,4 @@ interface ProductCardProps extends React.HTMLAttributes<HTMLElement> {
84
85
  }
85
86
  declare function ProductCard({ sku, name, price, image, imageAlt, tag, footer, className, ...rest }: ProductCardProps): react_jsx_runtime.JSX.Element;
86
87
 
87
- export { Alert, type AlertProps, type AlertVariant, Badge, type BadgeProps, type BadgeVariant, Card, type CardAccent, CardBody, CardFooter, CardHeader, type CardProps, Chip, ChipGroup, type ChipProps, ProductCard, type ProductCardProps, Skeleton, type SkeletonProps, Spinner, type SpinnerProps };
88
+ export { Alert, type AlertProps, type AlertVariant, Badge, type BadgeProps, type BadgeVariant, Card, type CardAccent, CardBody, CardFooter, CardHeader, type CardProps, type CategoryAccent, Chip, ChipGroup, type ChipProps, ProductCard, type ProductCardProps, Skeleton, type SkeletonProps, Spinner, type SpinnerProps };
@@ -2,7 +2,8 @@ import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import * as React from 'react';
3
3
  import { Extensible } from '../utils/types.js';
4
4
 
5
- type CardAccent = 'brand' | 'secondary' | 'success' | 'warning' | 'danger' | 'info';
5
+ type CategoryAccent = 'cat-1' | 'cat-2' | 'cat-3' | 'cat-4' | 'cat-5' | 'cat-6';
6
+ type CardAccent = 'brand' | 'secondary' | 'success' | 'warning' | 'danger' | 'info' | 'neutral' | CategoryAccent;
6
7
  interface CardProps extends React.HTMLAttributes<HTMLDivElement> {
7
8
  interactive?: boolean;
8
9
  accent?: Extensible<CardAccent>;
@@ -17,7 +18,7 @@ declare const Card: React.ForwardRefExoticComponent<CardProps & React.RefAttribu
17
18
  declare const CardHeader: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
18
19
  declare const CardBody: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
19
20
  declare const CardFooter: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
20
- type BadgeVariant = 'primary' | 'accent' | 'success' | 'warning' | 'danger' | 'info' | 'neutral';
21
+ type BadgeVariant = 'primary' | 'accent' | 'success' | 'warning' | 'danger' | 'info' | 'neutral' | CategoryAccent;
21
22
  interface BadgeProps extends React.HTMLAttributes<HTMLSpanElement> {
22
23
  variant?: Extensible<BadgeVariant>;
23
24
  dot?: boolean;
@@ -84,4 +85,4 @@ interface ProductCardProps extends React.HTMLAttributes<HTMLElement> {
84
85
  }
85
86
  declare function ProductCard({ sku, name, price, image, imageAlt, tag, footer, className, ...rest }: ProductCardProps): react_jsx_runtime.JSX.Element;
86
87
 
87
- export { Alert, type AlertProps, type AlertVariant, Badge, type BadgeProps, type BadgeVariant, Card, type CardAccent, CardBody, CardFooter, CardHeader, type CardProps, Chip, ChipGroup, type ChipProps, ProductCard, type ProductCardProps, Skeleton, type SkeletonProps, Spinner, type SpinnerProps };
88
+ export { Alert, type AlertProps, type AlertVariant, Badge, type BadgeProps, type BadgeVariant, Card, type CardAccent, CardBody, CardFooter, CardHeader, type CardProps, type CategoryAccent, Chip, ChipGroup, type ChipProps, ProductCard, type ProductCardProps, Skeleton, type SkeletonProps, Spinner, type SpinnerProps };
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
  'use strict';
3
3
 
4
- var chunkOXX5RSZQ_js = require('../chunk-OXX5RSZQ.js');
4
+ var chunkIZELILHK_js = require('../chunk-IZELILHK.js');
5
5
  require('../chunk-4VMQLSHV.js');
6
6
  require('../chunk-EUB4PHPI.js');
7
7
  require('../chunk-RQOTH7I7.js');
@@ -11,47 +11,47 @@ require('../chunk-PASF6T4H.js');
11
11
 
12
12
  Object.defineProperty(exports, "Alert", {
13
13
  enumerable: true,
14
- get: function () { return chunkOXX5RSZQ_js.Alert; }
14
+ get: function () { return chunkIZELILHK_js.Alert; }
15
15
  });
16
16
  Object.defineProperty(exports, "Badge", {
17
17
  enumerable: true,
18
- get: function () { return chunkOXX5RSZQ_js.Badge; }
18
+ get: function () { return chunkIZELILHK_js.Badge; }
19
19
  });
20
20
  Object.defineProperty(exports, "Card", {
21
21
  enumerable: true,
22
- get: function () { return chunkOXX5RSZQ_js.Card; }
22
+ get: function () { return chunkIZELILHK_js.Card; }
23
23
  });
24
24
  Object.defineProperty(exports, "CardBody", {
25
25
  enumerable: true,
26
- get: function () { return chunkOXX5RSZQ_js.CardBody; }
26
+ get: function () { return chunkIZELILHK_js.CardBody; }
27
27
  });
28
28
  Object.defineProperty(exports, "CardFooter", {
29
29
  enumerable: true,
30
- get: function () { return chunkOXX5RSZQ_js.CardFooter; }
30
+ get: function () { return chunkIZELILHK_js.CardFooter; }
31
31
  });
32
32
  Object.defineProperty(exports, "CardHeader", {
33
33
  enumerable: true,
34
- get: function () { return chunkOXX5RSZQ_js.CardHeader; }
34
+ get: function () { return chunkIZELILHK_js.CardHeader; }
35
35
  });
36
36
  Object.defineProperty(exports, "Chip", {
37
37
  enumerable: true,
38
- get: function () { return chunkOXX5RSZQ_js.Chip; }
38
+ get: function () { return chunkIZELILHK_js.Chip; }
39
39
  });
40
40
  Object.defineProperty(exports, "ChipGroup", {
41
41
  enumerable: true,
42
- get: function () { return chunkOXX5RSZQ_js.ChipGroup; }
42
+ get: function () { return chunkIZELILHK_js.ChipGroup; }
43
43
  });
44
44
  Object.defineProperty(exports, "ProductCard", {
45
45
  enumerable: true,
46
- get: function () { return chunkOXX5RSZQ_js.ProductCard; }
46
+ get: function () { return chunkIZELILHK_js.ProductCard; }
47
47
  });
48
48
  Object.defineProperty(exports, "Skeleton", {
49
49
  enumerable: true,
50
- get: function () { return chunkOXX5RSZQ_js.Skeleton; }
50
+ get: function () { return chunkIZELILHK_js.Skeleton; }
51
51
  });
52
52
  Object.defineProperty(exports, "Spinner", {
53
53
  enumerable: true,
54
- get: function () { return chunkOXX5RSZQ_js.Spinner; }
54
+ get: function () { return chunkIZELILHK_js.Spinner; }
55
55
  });
56
56
  //# sourceMappingURL=Display.js.map
57
57
  //# sourceMappingURL=Display.js.map
@@ -1,5 +1,5 @@
1
1
  'use client';
2
- export { Alert, Badge, Card, CardBody, CardFooter, CardHeader, Chip, ChipGroup, ProductCard, Skeleton, Spinner } from '../chunk-BBZESXFJ.mjs';
2
+ export { Alert, Badge, Card, CardBody, CardFooter, CardHeader, Chip, ChipGroup, ProductCard, Skeleton, Spinner } from '../chunk-2I7NE7QR.mjs';
3
3
  import '../chunk-PQV7HHCJ.mjs';
4
4
  import '../chunk-IEPKSPBX.mjs';
5
5
  import '../chunk-CIBJKJV3.mjs';
@@ -1,9 +1,9 @@
1
1
  'use client';
2
2
  'use strict';
3
3
 
4
- var chunkZMRN4DMC_js = require('../chunk-ZMRN4DMC.js');
4
+ var chunkXCZVZVYJ_js = require('../chunk-XCZVZVYJ.js');
5
5
  require('../chunk-56NJXIH7.js');
6
- require('../chunk-HHEYTMBY.js');
6
+ require('../chunk-MVJITG75.js');
7
7
  require('../chunk-XMLBKK7X.js');
8
8
  require('../chunk-7I5LFBQR.js');
9
9
  require('../chunk-WAGWB35Q.js');
@@ -16,27 +16,27 @@ require('../chunk-PASF6T4H.js');
16
16
 
17
17
  Object.defineProperty(exports, "Calendar", {
18
18
  enumerable: true,
19
- get: function () { return chunkZMRN4DMC_js.Calendar; }
19
+ get: function () { return chunkXCZVZVYJ_js.Calendar; }
20
20
  });
21
21
  Object.defineProperty(exports, "StatusIndicator", {
22
22
  enumerable: true,
23
- get: function () { return chunkZMRN4DMC_js.StatusIndicator; }
23
+ get: function () { return chunkXCZVZVYJ_js.StatusIndicator; }
24
24
  });
25
25
  Object.defineProperty(exports, "Timeline", {
26
26
  enumerable: true,
27
- get: function () { return chunkZMRN4DMC_js.Timeline; }
27
+ get: function () { return chunkXCZVZVYJ_js.Timeline; }
28
28
  });
29
29
  Object.defineProperty(exports, "TimelineItem", {
30
30
  enumerable: true,
31
- get: function () { return chunkZMRN4DMC_js.TimelineItem; }
31
+ get: function () { return chunkXCZVZVYJ_js.TimelineItem; }
32
32
  });
33
33
  Object.defineProperty(exports, "Tree", {
34
34
  enumerable: true,
35
- get: function () { return chunkZMRN4DMC_js.Tree; }
35
+ get: function () { return chunkXCZVZVYJ_js.Tree; }
36
36
  });
37
37
  Object.defineProperty(exports, "UserCell", {
38
38
  enumerable: true,
39
- get: function () { return chunkZMRN4DMC_js.UserCell; }
39
+ get: function () { return chunkXCZVZVYJ_js.UserCell; }
40
40
  });
41
41
  //# sourceMappingURL=Display3.js.map
42
42
  //# sourceMappingURL=Display3.js.map
@@ -1,7 +1,7 @@
1
1
  'use client';
2
- export { Calendar, StatusIndicator, Timeline, TimelineItem, Tree, UserCell } from '../chunk-YL2IWHUZ.mjs';
2
+ export { Calendar, StatusIndicator, Timeline, TimelineItem, Tree, UserCell } from '../chunk-PKCLA2FD.mjs';
3
3
  import '../chunk-OJNEGJ3P.mjs';
4
- import '../chunk-N5D6AC6M.mjs';
4
+ import '../chunk-4QHE5H36.mjs';
5
5
  import '../chunk-6P2TKRTL.mjs';
6
6
  import '../chunk-PRML6VEF.mjs';
7
7
  import '../chunk-FKBQYQQD.mjs';
@@ -56,12 +56,42 @@ interface ContainerProps extends React.HTMLAttributes<HTMLDivElement> {
56
56
  size?: 'sm' | 'md' | 'lg' | 'xl' | 'full';
57
57
  }
58
58
  declare function Container({ size, className, style, ...rest }: ContainerProps): react_jsx_runtime.JSX.Element;
59
+ /**
60
+ * Column count. A number/string is fixed; an object is responsive per
61
+ * breakpoint (each breakpoint inherits the previous one if omitted).
62
+ * Breakpoints match the kit tokens: sm 480 · md 768 · lg 1024 · xl 1280.
63
+ */
64
+ type ResponsiveColumns = number | string | {
65
+ base?: number;
66
+ sm?: number;
67
+ md?: number;
68
+ lg?: number;
69
+ xl?: number;
70
+ };
59
71
  interface GridProps extends React.HTMLAttributes<HTMLDivElement> {
60
- columns?: number | string;
72
+ columns?: ResponsiveColumns;
61
73
  gap?: SpaceToken;
74
+ /** Intrinsically responsive auto-fit columns; takes precedence over `columns`. */
62
75
  minColWidth?: number | string;
63
76
  }
64
77
  declare function Grid({ columns, gap, minColWidth, className, style, ...rest }: GridProps): react_jsx_runtime.JSX.Element;
78
+ /**
79
+ * Horizontal group that wraps — the "cluster" layout primitive (Braid /
80
+ * Every Layout). Sugar for `<Stack direction="row" wrap>`. Use for tag
81
+ * lists, button rows, filter chips: items flow and wrap, gap stays even.
82
+ */
83
+ declare const Cluster: React.ForwardRefExoticComponent<Omit<StackProps, "wrap" | "direction"> & React.RefAttributes<HTMLDivElement>>;
84
+ interface SpacerProps extends React.HTMLAttributes<HTMLDivElement> {
85
+ /** Fixed size on a space token. Omit for a flexible spacer (`flex: 1`). */
86
+ size?: SpaceToken;
87
+ }
88
+ /**
89
+ * Spacing element. With `size`, a fixed gap on the space scale. Without it,
90
+ * a flexible spacer that eats remaining space in a flex container (pushes
91
+ * siblings apart) — e.g. a toolbar with left items + `<Spacer />` + right
92
+ * items.
93
+ */
94
+ declare function Spacer({ size, style, ...rest }: SpacerProps): react_jsx_runtime.JSX.Element;
65
95
  interface KeyValueProps extends React.HTMLAttributes<HTMLDListElement> {
66
96
  /** Override del ancho de la columna de keys (default 200px) */
67
97
  keyWidth?: number | string;
@@ -87,4 +117,4 @@ interface StepperProps {
87
117
  }
88
118
  declare function Stepper({ steps, current, className }: StepperProps): react_jsx_runtime.JSX.Element;
89
119
 
90
- export { Container, type ContainerProps, Divider, type DividerProps, Grid, type GridProps, HStack, KeyValue, type KeyValueProps, KeyValueRow, type KeyValueRowProps, ListGroup, ListGroupItem, type ListGroupItemProps, Stack, type StackProps, Stepper, type StepperProps, Tab, TabList, TabPanel, type TabProps, Table, Tabs, type TabsProps, Tooltip, type TooltipProps, VStack };
120
+ export { Cluster, Container, type ContainerProps, Divider, type DividerProps, Grid, type GridProps, HStack, KeyValue, type KeyValueProps, KeyValueRow, type KeyValueRowProps, ListGroup, ListGroupItem, type ListGroupItemProps, type ResponsiveColumns, Spacer, type SpacerProps, Stack, type StackProps, Stepper, type StepperProps, Tab, TabList, TabPanel, type TabProps, Table, Tabs, type TabsProps, Tooltip, type TooltipProps, VStack };
@@ -56,12 +56,42 @@ interface ContainerProps extends React.HTMLAttributes<HTMLDivElement> {
56
56
  size?: 'sm' | 'md' | 'lg' | 'xl' | 'full';
57
57
  }
58
58
  declare function Container({ size, className, style, ...rest }: ContainerProps): react_jsx_runtime.JSX.Element;
59
+ /**
60
+ * Column count. A number/string is fixed; an object is responsive per
61
+ * breakpoint (each breakpoint inherits the previous one if omitted).
62
+ * Breakpoints match the kit tokens: sm 480 · md 768 · lg 1024 · xl 1280.
63
+ */
64
+ type ResponsiveColumns = number | string | {
65
+ base?: number;
66
+ sm?: number;
67
+ md?: number;
68
+ lg?: number;
69
+ xl?: number;
70
+ };
59
71
  interface GridProps extends React.HTMLAttributes<HTMLDivElement> {
60
- columns?: number | string;
72
+ columns?: ResponsiveColumns;
61
73
  gap?: SpaceToken;
74
+ /** Intrinsically responsive auto-fit columns; takes precedence over `columns`. */
62
75
  minColWidth?: number | string;
63
76
  }
64
77
  declare function Grid({ columns, gap, minColWidth, className, style, ...rest }: GridProps): react_jsx_runtime.JSX.Element;
78
+ /**
79
+ * Horizontal group that wraps — the "cluster" layout primitive (Braid /
80
+ * Every Layout). Sugar for `<Stack direction="row" wrap>`. Use for tag
81
+ * lists, button rows, filter chips: items flow and wrap, gap stays even.
82
+ */
83
+ declare const Cluster: React.ForwardRefExoticComponent<Omit<StackProps, "wrap" | "direction"> & React.RefAttributes<HTMLDivElement>>;
84
+ interface SpacerProps extends React.HTMLAttributes<HTMLDivElement> {
85
+ /** Fixed size on a space token. Omit for a flexible spacer (`flex: 1`). */
86
+ size?: SpaceToken;
87
+ }
88
+ /**
89
+ * Spacing element. With `size`, a fixed gap on the space scale. Without it,
90
+ * a flexible spacer that eats remaining space in a flex container (pushes
91
+ * siblings apart) — e.g. a toolbar with left items + `<Spacer />` + right
92
+ * items.
93
+ */
94
+ declare function Spacer({ size, style, ...rest }: SpacerProps): react_jsx_runtime.JSX.Element;
65
95
  interface KeyValueProps extends React.HTMLAttributes<HTMLDListElement> {
66
96
  /** Override del ancho de la columna de keys (default 200px) */
67
97
  keyWidth?: number | string;
@@ -87,4 +117,4 @@ interface StepperProps {
87
117
  }
88
118
  declare function Stepper({ steps, current, className }: StepperProps): react_jsx_runtime.JSX.Element;
89
119
 
90
- export { Container, type ContainerProps, Divider, type DividerProps, Grid, type GridProps, HStack, KeyValue, type KeyValueProps, KeyValueRow, type KeyValueRowProps, ListGroup, ListGroupItem, type ListGroupItemProps, Stack, type StackProps, Stepper, type StepperProps, Tab, TabList, TabPanel, type TabProps, Table, Tabs, type TabsProps, Tooltip, type TooltipProps, VStack };
120
+ export { Cluster, Container, type ContainerProps, Divider, type DividerProps, Grid, type GridProps, HStack, KeyValue, type KeyValueProps, KeyValueRow, type KeyValueRowProps, ListGroup, ListGroupItem, type ListGroupItemProps, type ResponsiveColumns, Spacer, type SpacerProps, Stack, type StackProps, Stepper, type StepperProps, Tab, TabList, TabPanel, type TabProps, Table, Tabs, type TabsProps, Tooltip, type TooltipProps, VStack };