@lglab/compose-ui 0.20.0 → 0.21.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 (107) hide show
  1. package/dist/accordion.d.ts +40 -0
  2. package/dist/accordion.js +46 -0
  3. package/dist/alert-dialog.d.ts +87 -0
  4. package/dist/alert-dialog.js +112 -0
  5. package/dist/arrow-svg-C6zQTvgS.js +40 -0
  6. package/dist/avatar.d.ts +47 -0
  7. package/dist/avatar.js +81 -0
  8. package/dist/button-variants-CbFMPwc8.js +33 -0
  9. package/dist/button.d.ts +21 -0
  10. package/dist/button.js +25 -0
  11. package/dist/card.d.ts +99 -0
  12. package/dist/card.js +67 -0
  13. package/dist/collapsible.d.ts +26 -0
  14. package/dist/collapsible.js +33 -0
  15. package/dist/context-menu.d.ts +138 -0
  16. package/dist/context-menu.js +174 -0
  17. package/dist/control-variants-Bwep4n0y.js +37 -0
  18. package/dist/dialog.d.ts +92 -0
  19. package/dist/dialog.js +106 -0
  20. package/dist/drawer.d.ts +99 -0
  21. package/dist/drawer.js +112 -0
  22. package/dist/index.d.ts +1284 -47
  23. package/dist/index.js +186 -0
  24. package/dist/menu.d.ts +138 -0
  25. package/dist/menu.js +147 -0
  26. package/dist/menubar.d.ts +155 -0
  27. package/dist/menubar.js +170 -0
  28. package/dist/meter.d.ts +43 -0
  29. package/dist/meter.js +66 -0
  30. package/dist/popover.d.ts +82 -0
  31. package/dist/popover.js +95 -0
  32. package/dist/progress.d.ts +40 -0
  33. package/dist/progress.js +51 -0
  34. package/dist/scroll-area.d.ts +47 -0
  35. package/dist/scroll-area.js +57 -0
  36. package/dist/separator.d.ts +12 -0
  37. package/dist/separator.js +24 -0
  38. package/dist/slider.d.ts +47 -0
  39. package/dist/slider.js +63 -0
  40. package/dist/switch.d.ts +19 -0
  41. package/dist/switch.js +40 -0
  42. package/dist/tabs.d.ts +49 -0
  43. package/dist/tabs.js +85 -0
  44. package/dist/toggle-group.d.ts +29 -0
  45. package/dist/toggle-group.js +35 -0
  46. package/dist/toggle.d.ts +21 -0
  47. package/dist/toggle.js +16 -0
  48. package/dist/tooltip.d.ts +62 -0
  49. package/dist/tooltip.js +93 -0
  50. package/dist/utils-B6yFEsav.js +8 -0
  51. package/package.json +92 -4
  52. package/dist/components/accordion.d.ts +0 -30
  53. package/dist/components/accordion.d.ts.map +0 -1
  54. package/dist/components/alert-dialog.d.ts +0 -64
  55. package/dist/components/alert-dialog.d.ts.map +0 -1
  56. package/dist/components/avatar.d.ts +0 -38
  57. package/dist/components/avatar.d.ts.map +0 -1
  58. package/dist/components/button.d.ts +0 -16
  59. package/dist/components/button.d.ts.map +0 -1
  60. package/dist/components/card.d.ts +0 -79
  61. package/dist/components/card.d.ts.map +0 -1
  62. package/dist/components/collapsible.d.ts +0 -20
  63. package/dist/components/collapsible.d.ts.map +0 -1
  64. package/dist/components/context-menu.d.ts +0 -100
  65. package/dist/components/context-menu.d.ts.map +0 -1
  66. package/dist/components/dialog.d.ts +0 -69
  67. package/dist/components/dialog.d.ts.map +0 -1
  68. package/dist/components/drawer.d.ts +0 -74
  69. package/dist/components/drawer.d.ts.map +0 -1
  70. package/dist/components/menu.d.ts +0 -100
  71. package/dist/components/menu.d.ts.map +0 -1
  72. package/dist/components/menubar.d.ts +0 -112
  73. package/dist/components/menubar.d.ts.map +0 -1
  74. package/dist/components/meter.d.ts +0 -33
  75. package/dist/components/meter.d.ts.map +0 -1
  76. package/dist/components/popover.d.ts +0 -60
  77. package/dist/components/popover.d.ts.map +0 -1
  78. package/dist/components/progress.d.ts +0 -30
  79. package/dist/components/progress.d.ts.map +0 -1
  80. package/dist/components/scroll-area.d.ts +0 -35
  81. package/dist/components/scroll-area.d.ts.map +0 -1
  82. package/dist/components/separator.d.ts +0 -10
  83. package/dist/components/separator.d.ts.map +0 -1
  84. package/dist/components/slider.d.ts +0 -35
  85. package/dist/components/slider.d.ts.map +0 -1
  86. package/dist/components/switch.d.ts +0 -15
  87. package/dist/components/switch.d.ts.map +0 -1
  88. package/dist/components/tabs.d.ts +0 -39
  89. package/dist/components/tabs.d.ts.map +0 -1
  90. package/dist/components/toggle-group.d.ts +0 -22
  91. package/dist/components/toggle-group.d.ts.map +0 -1
  92. package/dist/components/toggle.d.ts +0 -16
  93. package/dist/components/toggle.d.ts.map +0 -1
  94. package/dist/components/tooltip.d.ts +0 -47
  95. package/dist/components/tooltip.d.ts.map +0 -1
  96. package/dist/index.d.ts.map +0 -1
  97. package/dist/index.es.js +0 -1666
  98. package/dist/lib/arrow-svg.d.ts +0 -9
  99. package/dist/lib/arrow-svg.d.ts.map +0 -1
  100. package/dist/lib/button-variants.d.ts +0 -7
  101. package/dist/lib/button-variants.d.ts.map +0 -1
  102. package/dist/lib/control-variants.d.ts +0 -7
  103. package/dist/lib/control-variants.d.ts.map +0 -1
  104. package/dist/lib/tooltip-variants.d.ts +0 -9
  105. package/dist/lib/tooltip-variants.d.ts.map +0 -1
  106. package/dist/lib/utils.d.ts +0 -3
  107. package/dist/lib/utils.d.ts.map +0 -1
package/dist/card.js ADDED
@@ -0,0 +1,67 @@
1
+ "use client";
2
+ import { jsx as r } from "react/jsx-runtime";
3
+ import { cva as d } from "class-variance-authority";
4
+ import * as i from "react";
5
+ import { c as t } from "./utils-B6yFEsav.js";
6
+ const n = d("rounded-lg bg-card text-card-foreground transition-colors", {
7
+ variants: {
8
+ variant: {
9
+ default: "border shadow-sm",
10
+ outline: "border",
11
+ elevated: "shadow-md"
12
+ }
13
+ },
14
+ defaultVariants: {
15
+ variant: "default"
16
+ }
17
+ }), l = i.forwardRef(
18
+ ({ className: a, variant: e, ...o }, s) => /* @__PURE__ */ r(
19
+ "article",
20
+ {
21
+ ref: s,
22
+ className: t(n({ variant: e }), a),
23
+ ...o
24
+ }
25
+ )
26
+ );
27
+ l.displayName = "CardRoot";
28
+ const c = ({ className: a, ...e }) => /* @__PURE__ */ r(
29
+ "div",
30
+ {
31
+ className: t(
32
+ "overflow-hidden",
33
+ "[&>img]:h-full [&>img]:w-full [&>img]:object-cover",
34
+ a
35
+ ),
36
+ ...e
37
+ }
38
+ );
39
+ c.displayName = "CardMedia";
40
+ const m = ({ className: a, ...e }) => /* @__PURE__ */ r("header", { className: t("flex flex-col gap-1 p-4", a), ...e });
41
+ m.displayName = "CardHeader";
42
+ const p = ({ as: a = "h3", className: e, ...o }) => /* @__PURE__ */ r(
43
+ a,
44
+ {
45
+ className: t("text-base font-semibold leading-tight", e),
46
+ ...o
47
+ }
48
+ );
49
+ p.displayName = "CardTitle";
50
+ const f = ({ className: a, ...e }) => /* @__PURE__ */ r("p", { className: t("text-sm", a), ...e });
51
+ f.displayName = "CardDescription";
52
+ const C = ({ className: a, ...e }) => /* @__PURE__ */ r("div", { className: t("p-4 pt-0", a), ...e });
53
+ C.displayName = "CardContent";
54
+ const u = ({ className: a, ...e }) => /* @__PURE__ */ r("section", { className: t("p-4", a), ...e });
55
+ u.displayName = "CardSection";
56
+ const N = ({ className: a, ...e }) => /* @__PURE__ */ r("footer", { className: t("flex items-center p-4", a), ...e });
57
+ N.displayName = "CardFooter";
58
+ export {
59
+ C as CardContent,
60
+ f as CardDescription,
61
+ N as CardFooter,
62
+ m as CardHeader,
63
+ c as CardMedia,
64
+ l as CardRoot,
65
+ u as CardSection,
66
+ p as CardTitle
67
+ };
@@ -0,0 +1,26 @@
1
+ import { Collapsible } from '@base-ui/react/collapsible';
2
+ import { JSX } from 'react/jsx-runtime';
3
+ import * as React_2 from 'react';
4
+
5
+ export declare const CollapsiblePanel: {
6
+ ({ className, ...props }: CollapsiblePanelProps): JSX.Element;
7
+ displayName: string;
8
+ };
9
+
10
+ export declare type CollapsiblePanelProps = React_2.ComponentProps<typeof Collapsible.Panel>;
11
+
12
+ export declare const CollapsibleRoot: {
13
+ ({ className, ...props }: CollapsibleRootProps): JSX.Element;
14
+ displayName: string;
15
+ };
16
+
17
+ export declare type CollapsibleRootProps = React_2.ComponentProps<typeof Collapsible.Root>;
18
+
19
+ export declare const CollapsibleTrigger: {
20
+ ({ className, ...props }: CollapsibleTriggerProps): JSX.Element;
21
+ displayName: string;
22
+ };
23
+
24
+ export declare type CollapsibleTriggerProps = React_2.ComponentProps<typeof Collapsible.Trigger>;
25
+
26
+ export { }
@@ -0,0 +1,33 @@
1
+ "use client";
2
+ import { jsx as a } from "react/jsx-runtime";
3
+ import { Collapsible as i } from "@base-ui/react/collapsible";
4
+ import { c as o } from "./utils-B6yFEsav.js";
5
+ const t = ({ className: e, ...l }) => /* @__PURE__ */ a(i.Root, { className: o("w-full", e), ...l });
6
+ t.displayName = "CollapsibleRoot";
7
+ const s = ({ className: e, ...l }) => /* @__PURE__ */ a(
8
+ i.Trigger,
9
+ {
10
+ className: o("flex items-center justify-between font-medium", e),
11
+ ...l
12
+ }
13
+ );
14
+ s.displayName = "CollapsibleTrigger";
15
+ const n = ({ className: e, ...l }) => /* @__PURE__ */ a(
16
+ i.Panel,
17
+ {
18
+ className: o(
19
+ '[&[hidden]:not([hidden="until-found"])]:hidden h-(--collapsible-panel-height)',
20
+ "overflow-hidden duration-200 transition-all ease-out",
21
+ "data-ending-style:h-0",
22
+ "data-starting-style:h-0",
23
+ e
24
+ ),
25
+ ...l
26
+ }
27
+ );
28
+ n.displayName = "CollapsiblePanel";
29
+ export {
30
+ n as CollapsiblePanel,
31
+ t as CollapsibleRoot,
32
+ s as CollapsibleTrigger
33
+ };
@@ -0,0 +1,138 @@
1
+ import { ContextMenu } from '@base-ui/react/context-menu';
2
+ import { JSX } from 'react/jsx-runtime';
3
+ import * as React_2 from 'react';
4
+
5
+ export declare const ContextMenuArrow: {
6
+ ({ className, ...props }: ContextMenuArrowProps): JSX.Element;
7
+ displayName: string;
8
+ };
9
+
10
+ export declare type ContextMenuArrowProps = React_2.ComponentProps<typeof ContextMenu.Arrow>;
11
+
12
+ export declare const ContextMenuCheckboxItem: {
13
+ ({ className, ...props }: ContextMenuCheckboxItemProps): JSX.Element;
14
+ displayName: string;
15
+ };
16
+
17
+ export declare const ContextMenuCheckboxItemIndicator: {
18
+ ({ className, ...props }: ContextMenuCheckboxItemIndicatorProps): JSX.Element;
19
+ displayName: string;
20
+ };
21
+
22
+ export declare type ContextMenuCheckboxItemIndicatorProps = React_2.ComponentProps<typeof ContextMenu.CheckboxItemIndicator>;
23
+
24
+ export declare const ContextMenuCheckboxItemLabel: {
25
+ ({ className, ...props }: ContextMenuCheckboxItemLabelProps): JSX.Element;
26
+ displayName: string;
27
+ };
28
+
29
+ export declare type ContextMenuCheckboxItemLabelProps = React_2.ComponentProps<'span'>;
30
+
31
+ export declare type ContextMenuCheckboxItemProps = React_2.ComponentProps<typeof ContextMenu.CheckboxItem>;
32
+
33
+ export declare const ContextMenuGroup: {
34
+ ({ className, ...props }: ContextMenuGroupProps): JSX.Element;
35
+ displayName: string;
36
+ };
37
+
38
+ export declare const ContextMenuGroupLabel: {
39
+ ({ className, ...props }: ContextMenuGroupLabelProps): JSX.Element;
40
+ displayName: string;
41
+ };
42
+
43
+ export declare type ContextMenuGroupLabelProps = React_2.ComponentProps<typeof ContextMenu.GroupLabel>;
44
+
45
+ export declare type ContextMenuGroupProps = React_2.ComponentProps<typeof ContextMenu.Group>;
46
+
47
+ export declare const ContextMenuItem: {
48
+ ({ className, ...props }: ContextMenuItemProps): JSX.Element;
49
+ displayName: string;
50
+ };
51
+
52
+ export declare type ContextMenuItemProps = React_2.ComponentProps<typeof ContextMenu.Item>;
53
+
54
+ export declare const ContextMenuPopup: {
55
+ ({ className, ...props }: ContextMenuPopupProps): JSX.Element;
56
+ displayName: string;
57
+ };
58
+
59
+ export declare type ContextMenuPopupProps = React_2.ComponentProps<typeof ContextMenu.Popup>;
60
+
61
+ export declare const ContextMenuPortal: {
62
+ (props: ContextMenuPortalProps): JSX.Element;
63
+ displayName: string;
64
+ };
65
+
66
+ export declare type ContextMenuPortalProps = React_2.ComponentProps<typeof ContextMenu.Portal>;
67
+
68
+ export declare const ContextMenuPositioner: {
69
+ ({ className, ...props }: ContextMenuPositionerProps): JSX.Element;
70
+ displayName: string;
71
+ };
72
+
73
+ export declare type ContextMenuPositionerProps = React_2.ComponentProps<typeof ContextMenu.Positioner>;
74
+
75
+ export declare const ContextMenuRadioGroup: {
76
+ ({ className, ...props }: ContextMenuRadioGroupProps): JSX.Element;
77
+ displayName: string;
78
+ };
79
+
80
+ export declare type ContextMenuRadioGroupProps = React_2.ComponentProps<typeof ContextMenu.RadioGroup>;
81
+
82
+ export declare const ContextMenuRadioItem: {
83
+ ({ className, ...props }: ContextMenuRadioItemProps): JSX.Element;
84
+ displayName: string;
85
+ };
86
+
87
+ export declare const ContextMenuRadioItemIndicator: {
88
+ ({ className, ...props }: ContextMenuRadioItemIndicatorProps): JSX.Element;
89
+ displayName: string;
90
+ };
91
+
92
+ export declare type ContextMenuRadioItemIndicatorProps = React_2.ComponentProps<typeof ContextMenu.RadioItemIndicator>;
93
+
94
+ export declare const ContextMenuRadioItemLabel: {
95
+ ({ className, ...props }: ContextMenuRadioItemLabelProps): JSX.Element;
96
+ displayName: string;
97
+ };
98
+
99
+ export declare type ContextMenuRadioItemLabelProps = React_2.ComponentProps<'span'>;
100
+
101
+ export declare type ContextMenuRadioItemProps = React_2.ComponentProps<typeof ContextMenu.RadioItem>;
102
+
103
+ export declare const ContextMenuRoot: {
104
+ (props: ContextMenuRootProps): JSX.Element;
105
+ displayName: string;
106
+ };
107
+
108
+ export declare type ContextMenuRootProps = React_2.ComponentProps<typeof ContextMenu.Root>;
109
+
110
+ export declare const ContextMenuSeparator: {
111
+ ({ className, ...props }: ContextMenuSeparatorProps): JSX.Element;
112
+ displayName: string;
113
+ };
114
+
115
+ export declare type ContextMenuSeparatorProps = React_2.ComponentProps<typeof ContextMenu.Separator>;
116
+
117
+ export declare const ContextMenuSubmenuRoot: {
118
+ (props: ContextMenuSubmenuRootProps): JSX.Element;
119
+ displayName: string;
120
+ };
121
+
122
+ export declare type ContextMenuSubmenuRootProps = React_2.ComponentProps<typeof ContextMenu.SubmenuRoot>;
123
+
124
+ export declare const ContextMenuSubmenuTrigger: {
125
+ ({ className, ...props }: ContextMenuSubmenuTriggerProps): JSX.Element;
126
+ displayName: string;
127
+ };
128
+
129
+ export declare type ContextMenuSubmenuTriggerProps = React_2.ComponentProps<typeof ContextMenu.SubmenuTrigger>;
130
+
131
+ export declare const ContextMenuTrigger: {
132
+ ({ className, ...props }: ContextMenuTriggerProps): JSX.Element;
133
+ displayName: string;
134
+ };
135
+
136
+ export declare type ContextMenuTriggerProps = React_2.ComponentProps<typeof ContextMenu.Trigger>;
137
+
138
+ export { }
@@ -0,0 +1,174 @@
1
+ "use client";
2
+ import { jsx as o } from "react/jsx-runtime";
3
+ import { ContextMenu as a } from "@base-ui/react/context-menu";
4
+ import { A as s } from "./arrow-svg-C6zQTvgS.js";
5
+ import { b as r } from "./button-variants-CbFMPwc8.js";
6
+ import { c as n } from "./utils-B6yFEsav.js";
7
+ const i = (t) => /* @__PURE__ */ o(a.Root, { ...t });
8
+ i.displayName = "ContextMenuRoot";
9
+ const u = ({ className: t, ...e }) => /* @__PURE__ */ o(a.Trigger, { className: n(t), ...e });
10
+ u.displayName = "ContextMenuTrigger";
11
+ const m = (t) => /* @__PURE__ */ o(a.Portal, { ...t });
12
+ m.displayName = "ContextMenuPortal";
13
+ const d = ({ className: t, ...e }) => /* @__PURE__ */ o(
14
+ a.Positioner,
15
+ {
16
+ className: n("z-50 outline-none", t),
17
+ sideOffset: 3,
18
+ ...e
19
+ }
20
+ );
21
+ d.displayName = "ContextMenuPositioner";
22
+ const l = ({ className: t, ...e }) => /* @__PURE__ */ o(
23
+ a.Popup,
24
+ {
25
+ className: n(
26
+ "rounded-md bg-background p-1 text-foreground shadow-sm border border-border transition-[transform,scale,opacity] data-ending-style:scale-90 data-ending-style:opacity-0 data-starting-style:scale-0 data-starting-style:opacity-0 dark:shadow-none",
27
+ "min-w-[8rem]",
28
+ t
29
+ ),
30
+ ...e
31
+ }
32
+ );
33
+ l.displayName = "ContextMenuPopup";
34
+ const c = ({ className: t, ...e }) => /* @__PURE__ */ o(
35
+ a.Arrow,
36
+ {
37
+ className: n(
38
+ "flex data-[side=bottom]:top-[-8px] data-[side=left]:right-[-13px] data-[side=left]:rotate-90 data-[side=right]:left-[-13px] data-[side=right]:-rotate-90 data-[side=top]:bottom-[-8px] data-[side=top]:rotate-180",
39
+ t
40
+ ),
41
+ ...e,
42
+ children: /* @__PURE__ */ o(s, {})
43
+ }
44
+ );
45
+ c.displayName = "ContextMenuArrow";
46
+ const p = ({ className: t, ...e }) => /* @__PURE__ */ o(
47
+ a.Item,
48
+ {
49
+ className: n(
50
+ r({ variant: "ghost", size: "sm" }),
51
+ "flex justify-start",
52
+ t
53
+ ),
54
+ ...e
55
+ }
56
+ );
57
+ p.displayName = "ContextMenuItem";
58
+ const x = ({ className: t, ...e }) => /* @__PURE__ */ o(
59
+ a.Separator,
60
+ {
61
+ className: n("-mx-1 my-1 h-px bg-border", t),
62
+ ...e
63
+ }
64
+ );
65
+ x.displayName = "ContextMenuSeparator";
66
+ const C = ({ className: t, ...e }) => /* @__PURE__ */ o(a.Group, { className: n(t), ...e });
67
+ C.displayName = "ContextMenuGroup";
68
+ const M = ({ className: t, ...e }) => /* @__PURE__ */ o(
69
+ a.GroupLabel,
70
+ {
71
+ className: n("px-3 py-1.5 text-sm font-semibold", t),
72
+ ...e
73
+ }
74
+ );
75
+ M.displayName = "ContextMenuGroupLabel";
76
+ const N = ({ className: t, ...e }) => /* @__PURE__ */ o(a.RadioGroup, { className: n(t), ...e });
77
+ N.displayName = "ContextMenuRadioGroup";
78
+ const b = ({ className: t, ...e }) => /* @__PURE__ */ o(
79
+ a.RadioItem,
80
+ {
81
+ className: n(
82
+ r({ variant: "ghost", size: "sm" }),
83
+ "grid grid-cols-[0.75rem_1fr] gap-2",
84
+ t
85
+ ),
86
+ ...e
87
+ }
88
+ );
89
+ b.displayName = "ContextMenuRadioItem";
90
+ const g = ({
91
+ className: t,
92
+ ...e
93
+ }) => /* @__PURE__ */ o(
94
+ a.CheckboxItem,
95
+ {
96
+ className: n(
97
+ r({ variant: "ghost", size: "sm" }),
98
+ "grid grid-cols-[0.75rem_1fr] gap-2",
99
+ t
100
+ ),
101
+ ...e
102
+ }
103
+ );
104
+ g.displayName = "ContextMenuCheckboxItem";
105
+ const y = ({
106
+ className: t,
107
+ ...e
108
+ }) => /* @__PURE__ */ o(
109
+ a.RadioItemIndicator,
110
+ {
111
+ className: n("col-start-1", t),
112
+ ...e
113
+ }
114
+ );
115
+ y.displayName = "ContextMenuRadioItemIndicator";
116
+ const I = ({
117
+ className: t,
118
+ ...e
119
+ }) => /* @__PURE__ */ o(
120
+ a.CheckboxItemIndicator,
121
+ {
122
+ className: n("col-start-1", t),
123
+ ...e
124
+ }
125
+ );
126
+ I.displayName = "ContextMenuCheckboxItemIndicator";
127
+ const f = ({
128
+ className: t,
129
+ ...e
130
+ }) => /* @__PURE__ */ o("span", { className: n("col-start-2", t), ...e });
131
+ f.displayName = "ContextMenuCheckboxItemLabel";
132
+ const h = ({
133
+ className: t,
134
+ ...e
135
+ }) => /* @__PURE__ */ o("span", { className: n("col-start-2", t), ...e });
136
+ h.displayName = "ContextMenuRadioItemLabel";
137
+ const R = ({
138
+ className: t,
139
+ ...e
140
+ }) => /* @__PURE__ */ o(
141
+ a.SubmenuTrigger,
142
+ {
143
+ className: n(
144
+ r({ variant: "ghost", size: "sm" }),
145
+ "flex justify-between",
146
+ t
147
+ ),
148
+ ...e
149
+ }
150
+ );
151
+ R.displayName = "ContextMenuSubmenuTrigger";
152
+ const k = (t) => /* @__PURE__ */ o(a.SubmenuRoot, { ...t });
153
+ k.displayName = "ContextMenuSubmenuRoot";
154
+ export {
155
+ c as ContextMenuArrow,
156
+ g as ContextMenuCheckboxItem,
157
+ I as ContextMenuCheckboxItemIndicator,
158
+ f as ContextMenuCheckboxItemLabel,
159
+ C as ContextMenuGroup,
160
+ M as ContextMenuGroupLabel,
161
+ p as ContextMenuItem,
162
+ l as ContextMenuPopup,
163
+ m as ContextMenuPortal,
164
+ d as ContextMenuPositioner,
165
+ N as ContextMenuRadioGroup,
166
+ b as ContextMenuRadioItem,
167
+ y as ContextMenuRadioItemIndicator,
168
+ h as ContextMenuRadioItemLabel,
169
+ i as ContextMenuRoot,
170
+ x as ContextMenuSeparator,
171
+ k as ContextMenuSubmenuRoot,
172
+ R as ContextMenuSubmenuTrigger,
173
+ u as ContextMenuTrigger
174
+ };
@@ -0,0 +1,37 @@
1
+ import { cva as e } from "class-variance-authority";
2
+ const a = e(
3
+ [
4
+ "inline-flex items-center justify-center gap-2 rounded-md",
5
+ "text-sm font-medium",
6
+ "[&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0",
7
+ "select-none transition-colors duration-200",
8
+ "border border-border bg-background shadow-xs"
9
+ ],
10
+ {
11
+ variants: {
12
+ variant: {
13
+ default: [
14
+ "hover:bg-accent hover:text-accent-foreground",
15
+ "data-pressed:border-primary data-pressed:bg-primary data-pressed:text-primary-foreground data-pressed:shadow-none",
16
+ "data-popup-open:border-primary data-popup-open:bg-primary data-popup-open:text-primary-foreground data-popup-open:shadow-none"
17
+ ],
18
+ ghost: ["hover:bg-accent"]
19
+ },
20
+ size: {
21
+ sm: "h-8 min-w-8 px-2.5 gap-1.5",
22
+ default: "h-9 min-w-9 px-3",
23
+ lg: "h-10 min-w-10 px-3.5",
24
+ icon: "size-9",
25
+ "icon-sm": "size-8",
26
+ "icon-lg": "size-10"
27
+ }
28
+ },
29
+ defaultVariants: {
30
+ variant: "default",
31
+ size: "default"
32
+ }
33
+ }
34
+ );
35
+ export {
36
+ a as c
37
+ };
@@ -0,0 +1,92 @@
1
+ import { Dialog } from '@base-ui/react/dialog';
2
+ import { JSX } from 'react/jsx-runtime';
3
+ import * as React_2 from 'react';
4
+
5
+ declare type ButtonSize = 'sm' | 'default' | 'lg' | 'icon' | 'icon-sm' | 'icon-lg';
6
+
7
+ declare type ButtonVariant = 'default' | 'secondary' | 'outline' | 'ghost' | 'destructive' | 'link';
8
+
9
+ export declare const DialogBackdrop: {
10
+ ({ className, ...props }: DialogBackdropProps): JSX.Element;
11
+ displayName: string;
12
+ };
13
+
14
+ export declare type DialogBackdropProps = React_2.ComponentProps<typeof Dialog.Backdrop>;
15
+
16
+ export declare const DialogClose: {
17
+ ({ className, variant, size, ...props }: DialogCloseProps): JSX.Element;
18
+ displayName: string;
19
+ };
20
+
21
+ export declare type DialogCloseProps = React_2.ComponentProps<typeof Dialog.Close> & {
22
+ /** Visual style variant */
23
+ variant?: ButtonVariant;
24
+ /** Size of the close button */
25
+ size?: ButtonSize;
26
+ };
27
+
28
+ export declare const DialogDescription: {
29
+ ({ className, ...props }: DialogDescriptionProps): JSX.Element;
30
+ displayName: string;
31
+ };
32
+
33
+ export declare type DialogDescriptionProps = React_2.ComponentProps<typeof Dialog.Description>;
34
+
35
+ export declare const DialogFooter: {
36
+ ({ className, ...props }: DialogFooterProps): JSX.Element;
37
+ displayName: string;
38
+ };
39
+
40
+ export declare type DialogFooterProps = React_2.HTMLAttributes<HTMLDivElement>;
41
+
42
+ export declare const DialogHeader: {
43
+ ({ className, ...props }: DialogHeaderProps): JSX.Element;
44
+ displayName: string;
45
+ };
46
+
47
+ export declare type DialogHeaderProps = React_2.HTMLAttributes<HTMLDivElement>;
48
+
49
+ export declare const DialogPopup: {
50
+ ({ className, size, ...props }: DialogPopupProps): JSX.Element;
51
+ displayName: string;
52
+ };
53
+
54
+ export declare type DialogPopupProps = React_2.ComponentProps<typeof Dialog.Popup> & {
55
+ /** Size of the dialog popup */
56
+ size?: 'sm' | 'default' | 'lg' | 'xl' | 'full';
57
+ };
58
+
59
+ export declare const DialogPortal: {
60
+ (props: DialogPortalProps): JSX.Element;
61
+ displayName: string;
62
+ };
63
+
64
+ export declare type DialogPortalProps = React_2.ComponentProps<typeof Dialog.Portal>;
65
+
66
+ export declare const DialogRoot: {
67
+ (props: DialogRootProps): JSX.Element;
68
+ displayName: string;
69
+ };
70
+
71
+ export declare type DialogRootProps = React_2.ComponentProps<typeof Dialog.Root>;
72
+
73
+ export declare const DialogTitle: {
74
+ ({ className, ...props }: DialogTitleProps): JSX.Element;
75
+ displayName: string;
76
+ };
77
+
78
+ export declare type DialogTitleProps = React_2.ComponentProps<typeof Dialog.Title>;
79
+
80
+ export declare const DialogTrigger: {
81
+ ({ className, variant, size, ...props }: DialogTriggerProps): JSX.Element;
82
+ displayName: string;
83
+ };
84
+
85
+ export declare type DialogTriggerProps = React_2.ComponentProps<typeof Dialog.Trigger> & {
86
+ /** Visual style variant */
87
+ variant?: ButtonVariant;
88
+ /** Size of the trigger button */
89
+ size?: ButtonSize;
90
+ };
91
+
92
+ export { }
package/dist/dialog.js ADDED
@@ -0,0 +1,106 @@
1
+ "use client";
2
+ import { jsx as t } from "react/jsx-runtime";
3
+ import { Dialog as o } from "@base-ui/react/dialog";
4
+ import { cva as n } from "class-variance-authority";
5
+ import { b as r } from "./button-variants-CbFMPwc8.js";
6
+ import { c as l } from "./utils-B6yFEsav.js";
7
+ const d = (a) => /* @__PURE__ */ t(o.Root, { ...a });
8
+ d.displayName = "DialogRoot";
9
+ const c = ({ className: a, variant: e, size: i, ...s }) => /* @__PURE__ */ t(
10
+ o.Trigger,
11
+ {
12
+ className: l(r({ variant: e, size: i }), a),
13
+ ...s
14
+ }
15
+ );
16
+ c.displayName = "DialogTrigger";
17
+ const g = (a) => /* @__PURE__ */ t(o.Portal, { ...a });
18
+ g.displayName = "DialogPortal";
19
+ const p = ({ className: a, ...e }) => /* @__PURE__ */ t(
20
+ o.Backdrop,
21
+ {
22
+ className: l(
23
+ "fixed inset-0 z-50 bg-black/50 backdrop-blur-sm",
24
+ "transition-opacity duration-200",
25
+ "data-starting-style:opacity-0 data-ending-style:opacity-0",
26
+ a
27
+ ),
28
+ ...e
29
+ }
30
+ );
31
+ p.displayName = "DialogBackdrop";
32
+ const m = n(
33
+ [
34
+ "fixed left-1/2 top-1/2 z-50 -translate-x-1/2 -translate-y-1/2",
35
+ "w-full max-w-[calc(100vw-2rem)] rounded-lg border border-border bg-background p-6 shadow-lg",
36
+ "transition-all duration-200",
37
+ "data-[starting-style]:scale-95 data-[starting-style]:opacity-0",
38
+ "data-[ending-style]:scale-95 data-[ending-style]:opacity-0",
39
+ "top-[calc(50%+1.25rem*var(--nested-dialogs))] scale-[calc(1-0.1*var(--nested-dialogs))]",
40
+ "data-[nested-dialog-open]:after:absolute data-[nested-dialog-open]:after:inset-0 data-[nested-dialog-open]:after:rounded-[inherit] data-[nested-dialog-open]:after:bg-black/5"
41
+ ],
42
+ {
43
+ variants: {
44
+ size: {
45
+ sm: "w-sm",
46
+ default: "w-lg",
47
+ lg: "w-2xl",
48
+ xl: "w-4xl",
49
+ full: "h-[calc(100vh-2rem)]"
50
+ }
51
+ },
52
+ defaultVariants: {
53
+ size: "default"
54
+ }
55
+ }
56
+ ), u = ({ className: a, size: e, ...i }) => /* @__PURE__ */ t(
57
+ o.Popup,
58
+ {
59
+ className: l(m({ size: e }), a),
60
+ ...i
61
+ }
62
+ );
63
+ u.displayName = "DialogPopup";
64
+ const f = ({ className: a, ...e }) => /* @__PURE__ */ t(
65
+ o.Title,
66
+ {
67
+ className: l("text-lg font-semibold leading-none tracking-tight", a),
68
+ ...e
69
+ }
70
+ );
71
+ f.displayName = "DialogTitle";
72
+ const y = ({ className: a, ...e }) => /* @__PURE__ */ t(o.Description, { className: l("mt-2", a), ...e });
73
+ y.displayName = "DialogDescription";
74
+ const D = ({ className: a, variant: e, size: i, ...s }) => /* @__PURE__ */ t(
75
+ o.Close,
76
+ {
77
+ className: l(r({ variant: e ?? "outline", size: i }), a),
78
+ ...s
79
+ }
80
+ );
81
+ D.displayName = "DialogClose";
82
+ const N = ({ className: a, ...e }) => /* @__PURE__ */ t("div", { className: l("flex flex-col space-y-1 mb-5", a), ...e });
83
+ N.displayName = "DialogHeader";
84
+ const b = ({ className: a, ...e }) => /* @__PURE__ */ t(
85
+ "div",
86
+ {
87
+ className: l(
88
+ "mt-6 flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",
89
+ a
90
+ ),
91
+ ...e
92
+ }
93
+ );
94
+ b.displayName = "DialogFooter";
95
+ export {
96
+ p as DialogBackdrop,
97
+ D as DialogClose,
98
+ y as DialogDescription,
99
+ b as DialogFooter,
100
+ N as DialogHeader,
101
+ u as DialogPopup,
102
+ g as DialogPortal,
103
+ d as DialogRoot,
104
+ f as DialogTitle,
105
+ c as DialogTrigger
106
+ };