@popgrids/ui 0.0.9 → 0.0.10

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 (84) hide show
  1. package/dist/button-D4TdCwoe.d.cts +21 -0
  2. package/dist/button-D4TdCwoe.d.ts +21 -0
  3. package/dist/button.cjs +260 -1
  4. package/dist/button.cjs.map +1 -1
  5. package/dist/button.d.cts +3 -27
  6. package/dist/button.d.ts +3 -27
  7. package/dist/button.js +258 -1
  8. package/dist/button.js.map +1 -1
  9. package/dist/content-block.cjs +25 -1
  10. package/dist/content-block.cjs.map +1 -1
  11. package/dist/content-block.d.cts +6 -5
  12. package/dist/content-block.d.ts +6 -5
  13. package/dist/content-block.js +23 -1
  14. package/dist/content-block.js.map +1 -1
  15. package/dist/dialog.cjs +144 -1
  16. package/dist/dialog.cjs.map +1 -1
  17. package/dist/dialog.d.cts +12 -11
  18. package/dist/dialog.d.ts +12 -11
  19. package/dist/dialog.js +131 -1
  20. package/dist/dialog.js.map +1 -1
  21. package/dist/dropdown-menu.cjs +228 -1
  22. package/dist/dropdown-menu.cjs.map +1 -1
  23. package/dist/dropdown-menu.d.cts +21 -15
  24. package/dist/dropdown-menu.d.ts +21 -15
  25. package/dist/dropdown-menu.js +212 -1
  26. package/dist/dropdown-menu.js.map +1 -1
  27. package/dist/footer.cjs +191 -2
  28. package/dist/footer.cjs.map +1 -1
  29. package/dist/footer.js +189 -2
  30. package/dist/footer.js.map +1 -1
  31. package/dist/index.cjs +1148 -2
  32. package/dist/index.cjs.map +1 -1
  33. package/dist/index.d.cts +12 -7
  34. package/dist/index.d.ts +12 -7
  35. package/dist/index.js +1106 -2
  36. package/dist/index.js.map +1 -1
  37. package/dist/input.cjs +30 -1
  38. package/dist/input.cjs.map +1 -1
  39. package/dist/input.d.cts +4 -2
  40. package/dist/input.d.ts +4 -2
  41. package/dist/input.js +28 -1
  42. package/dist/input.js.map +1 -1
  43. package/dist/label.cjs +30 -1
  44. package/dist/label.cjs.map +1 -1
  45. package/dist/label.d.cts +4 -3
  46. package/dist/label.d.ts +4 -3
  47. package/dist/label.js +28 -1
  48. package/dist/label.js.map +1 -1
  49. package/dist/loader-xdvZkRei.d.cts +20 -0
  50. package/dist/loader-xdvZkRei.d.ts +20 -0
  51. package/dist/loader.cjs +127 -0
  52. package/dist/loader.cjs.map +1 -0
  53. package/dist/loader.d.cts +2 -0
  54. package/dist/loader.d.ts +2 -0
  55. package/dist/loader.js +125 -0
  56. package/dist/loader.js.map +1 -0
  57. package/dist/metafile-cjs.json +1 -0
  58. package/dist/metafile-esm.json +1 -0
  59. package/dist/notification-badge.cjs +66 -0
  60. package/dist/notification-badge.cjs.map +1 -0
  61. package/dist/notification-badge.d.cts +19 -0
  62. package/dist/notification-badge.d.ts +19 -0
  63. package/dist/notification-badge.js +64 -0
  64. package/dist/notification-badge.js.map +1 -0
  65. package/dist/section-flourish.cjs +9 -1
  66. package/dist/section-flourish.cjs.map +1 -1
  67. package/dist/section-flourish.js +7 -1
  68. package/dist/section-flourish.js.map +1 -1
  69. package/dist/section-header-BWd0FD9Q.d.cts +18 -0
  70. package/dist/section-header-BWd0FD9Q.d.ts +18 -0
  71. package/dist/section-header.cjs +150 -0
  72. package/dist/section-header.cjs.map +1 -0
  73. package/dist/section-header.d.cts +2 -0
  74. package/dist/section-header.d.ts +2 -0
  75. package/dist/section-header.js +148 -0
  76. package/dist/section-header.js.map +1 -0
  77. package/dist/theme.css +21 -14
  78. package/dist/tooltip.cjs +72 -0
  79. package/dist/tooltip.cjs.map +1 -0
  80. package/dist/tooltip.d.cts +12 -0
  81. package/dist/tooltip.d.ts +12 -0
  82. package/dist/tooltip.js +66 -0
  83. package/dist/tooltip.js.map +1 -0
  84. package/package.json +81 -30
package/dist/button.js CHANGED
@@ -1,2 +1,259 @@
1
- import {Slot}from'@radix-ui/react-slot';import {cva}from'class-variance-authority';import*as s from'react';import {clsx}from'clsx';import {twMerge}from'tailwind-merge';import {jsx,jsxs,Fragment}from'react/jsx-runtime';function u(...r){return twMerge(clsx(r))}var y=cva("inline-flex relative items-center gap-1.5 whitespace-nowrap font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none shrink-0 [&_svg]:shrink-0 text-foreground bg-background group/button outline-none focus-visible:border-ring-3 focus-visible:ring-ring/60 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{align:{left:"justify-start",center:"justify-center",right:"justify-end"},collapsed:{false:null,true:"min-w-10 max-w-10 justify-center"},outline:{false:null,true:""},leading:{false:null},theme:{base:"bg-foreground text-background",brand:"bg-primary-foreground text-primary",error:""},trailing:{false:null},variant:{default:"hover:bg-background/90",outline:"backdrop-blur-lg ",primary:"bg-primary-foreground/0 backdrop-blur-lg text-primary",secondary:"bg-secondary-foreground/0 backdrop-blur-lg text-secondary",tertiary:"bg-background/0 backdrop-blur-lg [--foreground:var(--color-text-text-default)]"},pill:{false:"rounded-xs",true:"rounded-full"},size:{default:"h-10 min-h-10 px-3 py-2 text-sm [&_svg:not([class*='size-'])]:size-[18px]",lg:"h-12 min-h-12 text-base [&_svg:not([class*='size-'])]:size-[20px]"}},defaultVariants:{align:"center",pill:false,size:"default",theme:"brand",variant:"default"},compoundVariants:[{pill:true,size:"default",class:"min-w-10 min-h-10 px-4"},{pill:true,collapsed:true,class:"max-w-10"},{pill:true,size:"lg",class:"min-w-12 min-h-12 px-4"},{pill:true,size:"lg",collapsed:true,class:"max-w-[54px] max-h-12"},{collapsed:false,size:"default",align:"left",pill:false,class:"pr-3 pl-2"},{align:"center",collapsed:false,size:"default",pill:false,class:"px-3"},{leading:true,pill:false,align:"left",size:"default",class:"pr-3 pl-2"},{collapsed:false,size:"default",pill:true,class:"px-4"},{size:"lg",pill:true,collapsed:false,class:"px-4"},{variant:"primary",outline:true,theme:"brand",class:"ring ring-primary-foreground bg-background/0 text-primary-foreground hover:ring-2 active:ring active:bg-background/1 disabled:outline-none disabled:bg-background/0 focus-visible:ring focus-visible:ring-ring focus-visible:outline-background focus-visible:bg-background/1"},{variant:"primary",theme:"brand",outline:false,class:"bg-primary-foreground text-primary hover:bg-primary-foreground hover:text-primary active:bg-primary-foreground active:text-primary focus-visible:bg-primary-foreground focus-visible:text-primary"},{variant:"secondary",outline:true,theme:"base",class:"bg-background/0 text-foreground ring ring-foreground/0 hover:ring-foreground active:ring-foreground/0 disabled:ring-foreground/0 backdrop-blur-lg focus-visible:backdrop-blur-md"},{variant:"tertiary",outline:false,theme:"base",class:"bg-background/0 text-foreground hover:ring ring-foreground/0 hover:ring-foreground active:ring-foreground/0 disabled:ring-foreground/0 backdrop-blur-lg focus-visible:backdrop-blur-md"},{variant:"primary",theme:"error",class:"bg-destructive text-foreground"},{variant:"tertiary",theme:"error",class:"bg-transparent text-destructive"}]}),x=cva("before:content-[''] before:absolute before:inset-0 before:transition-all before:rounded-[inherit] before:pointer-events-none",{variants:{outline:{false:null},variant:{default:"",outline:"",primary:"before:bg-tint-700-reversed/0 hover:before:bg-tint-700-reversed active:before:bg-tint-700-reversed/0 disabled:before:bg-tint-900-default focus-visible:before:bg-tint-700-reversed/0",secondary:"before:bg-tint-900-default hover:before:bg-tint-800-default active:before:bg-tint-900-default disabled:before:bg-tint-900-default focus-visible:before:bg-tint-800-default",tertiary:"before:bg-tint-950-reversed hover:before:bg-tint-900-default active:before:bg-tint-950-reversed disabled:before:bg-tint-950-reversed focus-visible:before:bg-tint-950-reversed"}},defaultVariants:{outline:false,variant:"default"},compoundVariants:[{outline:true,variant:"primary",class:"before:bg-tint-950-reversed hover:before:bg-tint-950-reversed active:before:bg-tint-950-reversed disabled:before:bg-tint-900-default focus-visible:before:bg-tint-950-reversed"},{outline:true,variant:"secondary",class:"before:bg-tint-950-reversed hover:before:bg-tint-950-reversed active:before:bg-tint-950-reversed disabled:before:bg-tint-900-default focus-visible:before:bg-tint-950-reversed"}]});function R(r){let t=s.Children.toArray(r).filter(e=>e==null||typeof e=="boolean"?false:typeof e=="string"?e.trim().length>0:true);if(t.length!==1)return null;let a=t[0];return s.isValidElement(a)?a:null}function S({className:r,children:t,collapsed:a=false,variant:e="default",align:d="center",outline:i=false,pill:b=false,size:f="default",theme:g="brand",leading:n,trailing:o,asChild:c=false,...p}){let v=c?Slot:"button";if(c){let m=R(t);if(!m)throw new Error("Button with `asChild` expects exactly one React element child.");return jsx(v,{"data-slot":"button",className:u(y({variant:e,size:f,align:d,outline:i,collapsed:a,pill:b,className:r,leading:!!n,theme:g,trailing:!!o}),x({variant:e,outline:i})),...p,children:m})}return jsxs(v,{"data-slot":"button",className:u(y({variant:e,size:f,align:d,outline:i,collapsed:a,pill:b,className:r,leading:!!n,theme:g,trailing:!!o}),x({variant:e,outline:i})),...p,children:[n&&jsx(Fragment,{children:n}),t&&jsx("span",{className:"min-w-0 truncate",children:t}),o&&jsx(Fragment,{children:o})]})}export{S as Button,y as buttonVariants,x as tintVariants};//# sourceMappingURL=button.js.map
1
+ import { Button as Button$1 } from '@base-ui/react/button';
2
+ import { cva } from 'class-variance-authority';
3
+ import { clsx } from 'clsx';
4
+ import { twMerge } from 'tailwind-merge';
5
+ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
6
+
7
+ // src/components/button/button.tsx
8
+ function cn(...inputs) {
9
+ return twMerge(clsx(inputs));
10
+ }
11
+ var buttonVariants = cva(
12
+ "inline-flex relative items-center gap-1.5 whitespace-nowrap font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none shrink-0 [&_svg]:shrink-0 text-foreground bg-background group/button outline-none focus-visible:border-ring-3 focus-visible:ring-ring/60 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
13
+ {
14
+ variants: {
15
+ align: {
16
+ left: "justify-start",
17
+ center: "justify-center",
18
+ right: "justify-end"
19
+ },
20
+ collapsed: {
21
+ false: null,
22
+ true: "min-w-10 max-w-10 justify-center"
23
+ },
24
+ outline: {
25
+ false: null,
26
+ true: ""
27
+ },
28
+ hasLeading: {
29
+ false: null
30
+ },
31
+ theme: {
32
+ base: "bg-foreground text-background",
33
+ brand: "bg-primary-foreground text-primary",
34
+ error: ""
35
+ },
36
+ hasTrailing: {
37
+ false: null
38
+ },
39
+ variant: {
40
+ default: "hover:bg-background/90",
41
+ outline: "backdrop-blur-lg ",
42
+ primary: "bg-primary-foreground/0 backdrop-blur-lg text-primary",
43
+ secondary: "bg-secondary-foreground/0 backdrop-blur-lg text-secondary",
44
+ tertiary: "bg-background/0 backdrop-blur-lg [--foreground:var(--color-text-text-default)]"
45
+ },
46
+ pill: {
47
+ false: "rounded-xs",
48
+ true: "rounded-full"
49
+ },
50
+ size: {
51
+ default: "h-10 min-h-10 px-3 py-2 text-sm [&_svg:not([class*='size-'])]:size-[18px]",
52
+ lg: "h-12 min-h-12 text-base [&_svg:not([class*='size-'])]:size-[20px]"
53
+ }
54
+ },
55
+ defaultVariants: {
56
+ align: "center",
57
+ outline: false,
58
+ pill: false,
59
+ size: "default",
60
+ theme: "brand",
61
+ variant: "default"
62
+ },
63
+ compoundVariants: [
64
+ {
65
+ pill: true,
66
+ size: "default",
67
+ class: "min-w-10 min-h-10 px-4"
68
+ },
69
+ {
70
+ pill: true,
71
+ collapsed: true,
72
+ class: "max-w-10"
73
+ },
74
+ {
75
+ pill: true,
76
+ size: "lg",
77
+ class: "min-w-12 min-h-12 px-4"
78
+ },
79
+ {
80
+ pill: true,
81
+ size: "lg",
82
+ collapsed: true,
83
+ class: "max-w-[54px] max-h-12"
84
+ },
85
+ {
86
+ collapsed: false,
87
+ size: "default",
88
+ align: "left",
89
+ pill: false,
90
+ class: "pr-3 pl-2"
91
+ },
92
+ {
93
+ align: "center",
94
+ collapsed: false,
95
+ size: "default",
96
+ pill: false,
97
+ class: "px-3"
98
+ },
99
+ {
100
+ hasLeading: true,
101
+ pill: false,
102
+ align: "left",
103
+ size: "default",
104
+ class: "pr-3 pl-2"
105
+ },
106
+ {
107
+ collapsed: false,
108
+ size: "default",
109
+ pill: true,
110
+ class: "px-4"
111
+ },
112
+ {
113
+ size: "lg",
114
+ pill: true,
115
+ collapsed: false,
116
+ class: "px-4"
117
+ },
118
+ {
119
+ variant: "primary",
120
+ outline: false,
121
+ theme: "base",
122
+ class: "bg-foreground text-background hover:ring-2 active:ring active:bg-background disabled:outline-none disabled:bg-black/0 disabled:text-black-alpha-600 focus-visible:ring-3 focus-visible:ring-ring focus-visible:outline-background focus-visible:bg-foreground focus-visible:text-background"
123
+ },
124
+ {
125
+ variant: "primary",
126
+ outline: true,
127
+ theme: "base",
128
+ class: "ring ring-foreground bg-background/0 text-foreground hover:ring-2 active:ring active:bg-background/1 disabled:outline-none disabled:bg-background/0 focus-visible:ring focus-visible:ring-ring focus-visible:outline-background focus-visible:bg-background/1"
129
+ },
130
+ {
131
+ variant: "primary",
132
+ outline: true,
133
+ theme: "brand",
134
+ class: "ring ring-primary-foreground bg-background/0 text-primary-foreground hover:ring-2 active:ring active:bg-background/1 disabled:outline-none disabled:bg-background/0 focus-visible:ring focus-visible:ring-ring focus-visible:outline-background focus-visible:bg-background/1"
135
+ },
136
+ {
137
+ variant: "primary",
138
+ theme: "brand",
139
+ outline: false,
140
+ class: "bg-primary-foreground text-primary hover:bg-primary-foreground hover:text-primary active:bg-primary-foreground active:text-primary focus-visible:bg-primary-foreground focus-visible:text-primary"
141
+ },
142
+ {
143
+ variant: "primary",
144
+ theme: "error",
145
+ class: "bg-destructive text-black"
146
+ },
147
+ {
148
+ variant: "secondary",
149
+ outline: false,
150
+ theme: "base",
151
+ class: "bg-background/0 text-foreground backdrop-blur-lg focus-visible:backdrop-blur-md"
152
+ },
153
+ {
154
+ variant: "secondary",
155
+ outline: true,
156
+ theme: "base",
157
+ class: "bg-background/0 text-foreground ring ring-foreground/0 hover:ring-foreground active:ring-foreground/0 disabled:ring-foreground/0 backdrop-blur-lg focus-visible:backdrop-blur-md"
158
+ },
159
+ {
160
+ variant: "tertiary",
161
+ outline: false,
162
+ theme: "base",
163
+ class: "bg-background/0 text-foreground backdrop-blur-lg focus-visible:backdrop-blur-md"
164
+ },
165
+ {
166
+ variant: "tertiary",
167
+ theme: "error",
168
+ class: "bg-transparent backdrop-blur-lg text-error-600"
169
+ }
170
+ ]
171
+ }
172
+ );
173
+ var tintVariants = cva(
174
+ "before:content-[''] before:absolute before:inset-0 before:transition-all before:rounded-[inherit] before:pointer-events-none",
175
+ {
176
+ variants: {
177
+ outline: {
178
+ false: null
179
+ },
180
+ variant: {
181
+ default: "",
182
+ outline: "",
183
+ primary: "before:bg-tint-700-reversed/0 hover:before:bg-tint-700-reversed active:before:bg-tint-700-reversed/0 disabled:before:bg-tint-900-default focus-visible:before:bg-tint-700-reversed/0",
184
+ secondary: "before:bg-tint-900-default hover:before:bg-tint-800-default active:before:bg-tint-900-default disabled:before:bg-tint-900-default focus-visible:before:bg-tint-800-default",
185
+ tertiary: "before:bg-tint-950-reversed hover:before:bg-tint-900-default active:before:bg-tint-950-reversed disabled:before:bg-tint-950-reversed focus-visible:before:bg-tint-950-reversed"
186
+ }
187
+ },
188
+ defaultVariants: {
189
+ outline: false,
190
+ variant: "default"
191
+ },
192
+ compoundVariants: [
193
+ {
194
+ outline: true,
195
+ variant: "primary",
196
+ class: "before:bg-tint-950-reversed hover:before:bg-tint-950-reversed active:before:bg-tint-950-reversed disabled:before:bg-tint-900-default focus-visible:before:bg-tint-950-reversed"
197
+ },
198
+ {
199
+ outline: true,
200
+ variant: "secondary",
201
+ class: "before:bg-tint-950-reversed hover:before:bg-tint-950-reversed active:before:bg-tint-950-reversed disabled:before:bg-tint-900-default focus-visible:before:bg-tint-950-reversed"
202
+ }
203
+ ]
204
+ }
205
+ );
206
+ function Button({
207
+ className,
208
+ children,
209
+ collapsed = false,
210
+ variant = "default",
211
+ align = "center",
212
+ outline = false,
213
+ pill = false,
214
+ size = "default",
215
+ theme = "brand",
216
+ leading,
217
+ trailing,
218
+ ...props
219
+ }) {
220
+ return /* @__PURE__ */ jsx(
221
+ Button$1,
222
+ {
223
+ "data-slot": "button",
224
+ className: cn(
225
+ buttonVariants({
226
+ variant,
227
+ size,
228
+ align,
229
+ outline,
230
+ collapsed,
231
+ pill,
232
+ className,
233
+ hasLeading: !!leading,
234
+ theme,
235
+ hasTrailing: !!trailing
236
+ }),
237
+ tintVariants({ variant, outline })
238
+ ),
239
+ ...props,
240
+ children: /* @__PURE__ */ jsxs(Fragment, { children: [
241
+ leading && /* @__PURE__ */ jsx("div", { className: "group-aria-busy/button:opacity-0", children: leading }),
242
+ children && /* @__PURE__ */ jsx("span", { className: "min-w-[18px] truncate", children }),
243
+ trailing && /* @__PURE__ */ jsx(
244
+ "div",
245
+ {
246
+ className: cn("group-aria-busy/button:opacity-0", {
247
+ "absolute top-1/2 right-0 translate-x-1/2 -translate-y-1/2": collapsed
248
+ }),
249
+ children: trailing
250
+ }
251
+ )
252
+ ] })
253
+ }
254
+ );
255
+ }
256
+
257
+ export { Button };
258
+ //# sourceMappingURL=button.js.map
2
259
  //# sourceMappingURL=button.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/lib/utils.ts","../src/components/button/button.tsx"],"names":["cn","inputs","twMerge","clsx","buttonVariants","cva","tintVariants","getSingleElementChild","children","normalized","child","only","Button","className","collapsed","variant","align","outline","pill","size","theme","leading","trailing","asChild","props","Comp","Slot","onlyChild","jsx","jsxs","Fragment"],"mappings":"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","file":"button.js","sourcesContent":["import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","\"use client\";\n\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { type VariantProps, cva } from \"class-variance-authority\";\nimport * as React from \"react\";\n\nimport { cn } from \"../../lib/utils\";\n\nconst buttonVariants = cva(\n \"inline-flex relative items-center gap-1.5 whitespace-nowrap font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none shrink-0 [&_svg]:shrink-0 text-foreground bg-background group/button outline-none focus-visible:border-ring-3 focus-visible:ring-ring/60 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive\",\n {\n variants: {\n align: {\n left: \"justify-start\",\n center: \"justify-center\",\n right: \"justify-end\",\n },\n collapsed: {\n false: null,\n true: \"min-w-10 max-w-10 justify-center\",\n },\n outline: {\n false: null,\n true: \"\",\n },\n leading: {\n false: null,\n },\n theme: {\n base: \"bg-foreground text-background\",\n brand: \"bg-primary-foreground text-primary\",\n error: \"\",\n },\n trailing: {\n false: null,\n },\n variant: {\n default: \"hover:bg-background/90\",\n outline: \"backdrop-blur-lg \",\n primary: \"bg-primary-foreground/0 backdrop-blur-lg text-primary\",\n secondary: \"bg-secondary-foreground/0 backdrop-blur-lg text-secondary\",\n tertiary: \"bg-background/0 backdrop-blur-lg [--foreground:var(--color-text-text-default)]\",\n },\n pill: {\n false: \"rounded-xs\",\n true: \"rounded-full\",\n },\n size: {\n default: \"h-10 min-h-10 px-3 py-2 text-sm [&_svg:not([class*='size-'])]:size-[18px]\",\n lg: \"h-12 min-h-12 text-base [&_svg:not([class*='size-'])]:size-[20px]\",\n },\n },\n defaultVariants: {\n align: \"center\",\n pill: false,\n size: \"default\",\n theme: \"brand\",\n variant: \"default\",\n },\n compoundVariants: [\n {\n pill: true,\n size: \"default\",\n class: \"min-w-10 min-h-10 px-4\",\n },\n {\n pill: true,\n collapsed: true,\n class: \"max-w-10\",\n },\n {\n pill: true,\n size: \"lg\",\n class: \"min-w-12 min-h-12 px-4\",\n },\n {\n pill: true,\n size: \"lg\",\n collapsed: true,\n class: \"max-w-[54px] max-h-12\",\n },\n {\n collapsed: false,\n size: \"default\",\n align: \"left\",\n pill: false,\n class: \"pr-3 pl-2\",\n },\n {\n align: \"center\",\n collapsed: false,\n size: \"default\",\n pill: false,\n class: \"px-3\",\n },\n {\n leading: true,\n pill: false,\n align: \"left\",\n size: \"default\",\n class: \"pr-3 pl-2\",\n },\n {\n collapsed: false,\n size: \"default\",\n pill: true,\n class: \"px-4\",\n },\n {\n size: \"lg\",\n pill: true,\n collapsed: false,\n class: \"px-4\",\n },\n {\n variant: \"primary\",\n outline: true,\n theme: \"brand\",\n class:\n \"ring ring-primary-foreground bg-background/0 text-primary-foreground hover:ring-2 active:ring active:bg-background/1 disabled:outline-none disabled:bg-background/0 focus-visible:ring focus-visible:ring-ring focus-visible:outline-background focus-visible:bg-background/1\",\n },\n {\n variant: \"primary\",\n theme: \"brand\",\n outline: false,\n class:\n \"bg-primary-foreground text-primary hover:bg-primary-foreground hover:text-primary active:bg-primary-foreground active:text-primary focus-visible:bg-primary-foreground focus-visible:text-primary\",\n },\n {\n variant: \"secondary\",\n outline: true,\n theme: \"base\",\n class:\n \"bg-background/0 text-foreground ring ring-foreground/0 hover:ring-foreground active:ring-foreground/0 disabled:ring-foreground/0 backdrop-blur-lg focus-visible:backdrop-blur-md\",\n },\n {\n variant: \"tertiary\",\n outline: false,\n theme: \"base\",\n class:\n \"bg-background/0 text-foreground hover:ring ring-foreground/0 hover:ring-foreground active:ring-foreground/0 disabled:ring-foreground/0 backdrop-blur-lg focus-visible:backdrop-blur-md\",\n },\n {\n variant: \"primary\",\n theme: \"error\",\n class: \"bg-destructive text-foreground\",\n },\n {\n variant: \"tertiary\",\n theme: \"error\",\n class: \"bg-transparent text-destructive\",\n },\n ],\n },\n);\n\nconst tintVariants = cva(\n \"before:content-[''] before:absolute before:inset-0 before:transition-all before:rounded-[inherit] before:pointer-events-none\",\n {\n variants: {\n outline: {\n false: null,\n },\n variant: {\n default: \"\",\n outline: \"\",\n primary:\n \"before:bg-tint-700-reversed/0 hover:before:bg-tint-700-reversed active:before:bg-tint-700-reversed/0 disabled:before:bg-tint-900-default focus-visible:before:bg-tint-700-reversed/0\",\n secondary:\n \"before:bg-tint-900-default hover:before:bg-tint-800-default active:before:bg-tint-900-default disabled:before:bg-tint-900-default focus-visible:before:bg-tint-800-default\",\n tertiary:\n \"before:bg-tint-950-reversed hover:before:bg-tint-900-default active:before:bg-tint-950-reversed disabled:before:bg-tint-950-reversed focus-visible:before:bg-tint-950-reversed\",\n },\n },\n defaultVariants: {\n outline: false,\n variant: \"default\",\n },\n compoundVariants: [\n {\n outline: true,\n variant: \"primary\",\n class:\n \"before:bg-tint-950-reversed hover:before:bg-tint-950-reversed active:before:bg-tint-950-reversed disabled:before:bg-tint-900-default focus-visible:before:bg-tint-950-reversed\",\n },\n {\n outline: true,\n variant: \"secondary\",\n class:\n \"before:bg-tint-950-reversed hover:before:bg-tint-950-reversed active:before:bg-tint-950-reversed disabled:before:bg-tint-900-default focus-visible:before:bg-tint-950-reversed\",\n },\n ],\n },\n);\n\nfunction getSingleElementChild(children: React.ReactNode) {\n // Tolerate JSX formatting whitespace/newlines (common with pretty indentation).\n const normalized = React.Children.toArray(children).filter((child) => {\n if (child === null || child === undefined) return false;\n if (typeof child === \"boolean\") return false;\n if (typeof child === \"string\") return child.trim().length > 0;\n return true;\n });\n\n if (normalized.length !== 1) return null;\n const only = normalized[0];\n return React.isValidElement(only) ? only : null;\n}\n\nfunction Button({\n className,\n children,\n collapsed = false,\n variant = \"default\",\n align = \"center\",\n outline = false,\n pill = false,\n size = \"default\",\n theme = \"brand\",\n leading,\n trailing,\n asChild = false,\n ...props\n}: React.ComponentProps<\"button\"> &\n VariantProps<typeof buttonVariants> & {\n asChild?: boolean;\n leading?: React.ReactNode;\n trailing?: React.ReactNode;\n } & VariantProps<typeof tintVariants>) {\n const Comp = asChild ? Slot : \"button\";\n\n if (asChild) {\n const onlyChild = getSingleElementChild(children);\n if (!onlyChild) {\n throw new Error(\"Button with `asChild` expects exactly one React element child.\");\n }\n\n return (\n <Comp\n data-slot=\"button\"\n className={cn(\n buttonVariants({\n variant,\n size,\n align,\n outline,\n collapsed,\n pill,\n className,\n leading: !!leading,\n theme,\n trailing: !!trailing,\n }),\n tintVariants({ variant, outline }),\n )}\n {...props}\n >\n {onlyChild}\n </Comp>\n );\n }\n\n return (\n <Comp\n data-slot=\"button\"\n className={cn(\n buttonVariants({\n variant,\n size,\n align,\n outline,\n collapsed,\n pill,\n className,\n leading: !!leading,\n theme,\n trailing: !!trailing,\n }),\n tintVariants({ variant, outline }),\n )}\n {...props}\n >\n {leading && <>{leading}</>}\n {children && <span className=\"min-w-0 truncate\">{children}</span>}\n {trailing && <>{trailing}</>}\n </Comp>\n );\n}\n\nexport { Button, buttonVariants, tintVariants };\n"]}
1
+ {"version":3,"sources":["../src/lib/utils.ts","../src/components/button/button.tsx"],"names":["ButtonPrimitive"],"mappings":";;;;;;;AAGO,SAAS,MAAM,MAAA,EAAsB;AAC1C,EAAA,OAAO,OAAA,CAAQ,IAAA,CAAK,MAAM,CAAC,CAAA;AAC7B;ACCA,IAAM,cAAA,GAAiB,GAAA;AAAA,EACrB,8aAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,KAAA,EAAO;AAAA,QACL,IAAA,EAAM,eAAA;AAAA,QACN,MAAA,EAAQ,gBAAA;AAAA,QACR,KAAA,EAAO;AAAA,OACT;AAAA,MACA,SAAA,EAAW;AAAA,QACT,KAAA,EAAO,IAAA;AAAA,QACP,IAAA,EAAM;AAAA,OACR;AAAA,MACA,OAAA,EAAS;AAAA,QACP,KAAA,EAAO,IAAA;AAAA,QACP,IAAA,EAAM;AAAA,OACR;AAAA,MACA,UAAA,EAAY;AAAA,QACV,KAAA,EAAO;AAAA,OACT;AAAA,MACA,KAAA,EAAO;AAAA,QACL,IAAA,EAAM,+BAAA;AAAA,QACN,KAAA,EAAO,oCAAA;AAAA,QACP,KAAA,EAAO;AAAA,OACT;AAAA,MACA,WAAA,EAAa;AAAA,QACX,KAAA,EAAO;AAAA,OACT;AAAA,MACA,OAAA,EAAS;AAAA,QACP,OAAA,EAAS,wBAAA;AAAA,QACT,OAAA,EAAS,mBAAA;AAAA,QACT,OAAA,EAAS,uDAAA;AAAA,QACT,SAAA,EAAW,2DAAA;AAAA,QACX,QAAA,EAAU;AAAA,OACZ;AAAA,MACA,IAAA,EAAM;AAAA,QACJ,KAAA,EAAO,YAAA;AAAA,QACP,IAAA,EAAM;AAAA,OACR;AAAA,MACA,IAAA,EAAM;AAAA,QACJ,OAAA,EAAS,2EAAA;AAAA,QACT,EAAA,EAAI;AAAA;AACN,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,KAAA,EAAO,QAAA;AAAA,MACP,OAAA,EAAS,KAAA;AAAA,MACT,IAAA,EAAM,KAAA;AAAA,MACN,IAAA,EAAM,SAAA;AAAA,MACN,KAAA,EAAO,OAAA;AAAA,MACP,OAAA,EAAS;AAAA,KACX;AAAA,IACA,gBAAA,EAAkB;AAAA,MAChB;AAAA,QACE,IAAA,EAAM,IAAA;AAAA,QACN,IAAA,EAAM,SAAA;AAAA,QACN,KAAA,EAAO;AAAA,OACT;AAAA,MACA;AAAA,QACE,IAAA,EAAM,IAAA;AAAA,QACN,SAAA,EAAW,IAAA;AAAA,QACX,KAAA,EAAO;AAAA,OACT;AAAA,MACA;AAAA,QACE,IAAA,EAAM,IAAA;AAAA,QACN,IAAA,EAAM,IAAA;AAAA,QACN,KAAA,EAAO;AAAA,OACT;AAAA,MACA;AAAA,QACE,IAAA,EAAM,IAAA;AAAA,QACN,IAAA,EAAM,IAAA;AAAA,QACN,SAAA,EAAW,IAAA;AAAA,QACX,KAAA,EAAO;AAAA,OACT;AAAA,MACA;AAAA,QACE,SAAA,EAAW,KAAA;AAAA,QACX,IAAA,EAAM,SAAA;AAAA,QACN,KAAA,EAAO,MAAA;AAAA,QACP,IAAA,EAAM,KAAA;AAAA,QACN,KAAA,EAAO;AAAA,OACT;AAAA,MACA;AAAA,QACE,KAAA,EAAO,QAAA;AAAA,QACP,SAAA,EAAW,KAAA;AAAA,QACX,IAAA,EAAM,SAAA;AAAA,QACN,IAAA,EAAM,KAAA;AAAA,QACN,KAAA,EAAO;AAAA,OACT;AAAA,MACA;AAAA,QACE,UAAA,EAAY,IAAA;AAAA,QACZ,IAAA,EAAM,KAAA;AAAA,QACN,KAAA,EAAO,MAAA;AAAA,QACP,IAAA,EAAM,SAAA;AAAA,QACN,KAAA,EAAO;AAAA,OACT;AAAA,MACA;AAAA,QACE,SAAA,EAAW,KAAA;AAAA,QACX,IAAA,EAAM,SAAA;AAAA,QACN,IAAA,EAAM,IAAA;AAAA,QACN,KAAA,EAAO;AAAA,OACT;AAAA,MACA;AAAA,QACE,IAAA,EAAM,IAAA;AAAA,QACN,IAAA,EAAM,IAAA;AAAA,QACN,SAAA,EAAW,KAAA;AAAA,QACX,KAAA,EAAO;AAAA,OACT;AAAA,MACA;AAAA,QACE,OAAA,EAAS,SAAA;AAAA,QACT,OAAA,EAAS,KAAA;AAAA,QACT,KAAA,EAAO,MAAA;AAAA,QACP,KAAA,EACE;AAAA,OACJ;AAAA,MACA;AAAA,QACE,OAAA,EAAS,SAAA;AAAA,QACT,OAAA,EAAS,IAAA;AAAA,QACT,KAAA,EAAO,MAAA;AAAA,QACP,KAAA,EACE;AAAA,OACJ;AAAA,MACA;AAAA,QACE,OAAA,EAAS,SAAA;AAAA,QACT,OAAA,EAAS,IAAA;AAAA,QACT,KAAA,EAAO,OAAA;AAAA,QACP,KAAA,EACE;AAAA,OACJ;AAAA,MACA;AAAA,QACE,OAAA,EAAS,SAAA;AAAA,QACT,KAAA,EAAO,OAAA;AAAA,QACP,OAAA,EAAS,KAAA;AAAA,QACT,KAAA,EACE;AAAA,OACJ;AAAA,MACA;AAAA,QACE,OAAA,EAAS,SAAA;AAAA,QACT,KAAA,EAAO,OAAA;AAAA,QACP,KAAA,EAAO;AAAA,OACT;AAAA,MACA;AAAA,QACE,OAAA,EAAS,WAAA;AAAA,QACT,OAAA,EAAS,KAAA;AAAA,QACT,KAAA,EAAO,MAAA;AAAA,QACP,KAAA,EAAO;AAAA,OACT;AAAA,MACA;AAAA,QACE,OAAA,EAAS,WAAA;AAAA,QACT,OAAA,EAAS,IAAA;AAAA,QACT,KAAA,EAAO,MAAA;AAAA,QACP,KAAA,EACE;AAAA,OACJ;AAAA,MACA;AAAA,QACE,OAAA,EAAS,UAAA;AAAA,QACT,OAAA,EAAS,KAAA;AAAA,QACT,KAAA,EAAO,MAAA;AAAA,QACP,KAAA,EAAO;AAAA,OACT;AAAA,MACA;AAAA,QACE,OAAA,EAAS,UAAA;AAAA,QACT,KAAA,EAAO,OAAA;AAAA,QACP,KAAA,EAAO;AAAA;AACT;AACF;AAEJ,CAAA;AAEA,IAAM,YAAA,GAAe,GAAA;AAAA,EACnB,8HAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,OAAA,EAAS;AAAA,QACP,KAAA,EAAO;AAAA,OACT;AAAA,MACA,OAAA,EAAS;AAAA,QACP,OAAA,EAAS,EAAA;AAAA,QACT,OAAA,EAAS,EAAA;AAAA,QACT,OAAA,EACE,sLAAA;AAAA,QACF,SAAA,EACE,4KAAA;AAAA,QACF,QAAA,EACE;AAAA;AACJ,KACF;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,OAAA,EAAS,KAAA;AAAA,MACT,OAAA,EAAS;AAAA,KACX;AAAA,IACA,gBAAA,EAAkB;AAAA,MAChB;AAAA,QACE,OAAA,EAAS,IAAA;AAAA,QACT,OAAA,EAAS,SAAA;AAAA,QACT,KAAA,EACE;AAAA,OACJ;AAAA,MACA;AAAA,QACE,OAAA,EAAS,IAAA;AAAA,QACT,OAAA,EAAS,WAAA;AAAA,QACT,KAAA,EACE;AAAA;AACJ;AACF;AAEJ,CAAA;AAEA,SAAS,MAAA,CAAO;AAAA,EACd,SAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA,GAAY,KAAA;AAAA,EACZ,OAAA,GAAU,SAAA;AAAA,EACV,KAAA,GAAQ,QAAA;AAAA,EACR,OAAA,GAAU,KAAA;AAAA,EACV,IAAA,GAAO,KAAA;AAAA,EACP,IAAA,GAAO,SAAA;AAAA,EACP,KAAA,GAAQ,OAAA;AAAA,EACR,OAAA;AAAA,EACA,QAAA;AAAA,EACA,GAAG;AACL,CAAA,EAAgB;AACd,EAAA,uBACE,GAAA;AAAA,IAACA,QAAA;AAAA,IAAA;AAAA,MACC,WAAA,EAAU,QAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,cAAA,CAAe;AAAA,UACb,OAAA;AAAA,UACA,IAAA;AAAA,UACA,KAAA;AAAA,UACA,OAAA;AAAA,UACA,SAAA;AAAA,UACA,IAAA;AAAA,UACA,SAAA;AAAA,UACA,UAAA,EAAY,CAAC,CAAC,OAAA;AAAA,UACd,KAAA;AAAA,UACA,WAAA,EAAa,CAAC,CAAC;AAAA,SAChB,CAAA;AAAA,QACD,YAAA,CAAa,EAAE,OAAA,EAAS,OAAA,EAAS;AAAA,OACnC;AAAA,MACC,GAAG,KAAA;AAAA,MAEJ,QAAA,kBAAA,IAAA,CAAA,QAAA,EAAA,EACG,QAAA,EAAA;AAAA,QAAA,OAAA,oBAAW,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,kCAAA,EAAoC,QAAA,EAAA,OAAA,EAAQ,CAAA;AAAA,QACtE,QAAA,oBAAY,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,yBAAyB,QAAA,EAAS,CAAA;AAAA,QAC9D,QAAA,oBACC,GAAA;AAAA,UAAC,KAAA;AAAA,UAAA;AAAA,YACC,SAAA,EAAW,GAAG,kCAAA,EAAoC;AAAA,cAChD,2DAAA,EAA6D;AAAA,aAC9D,CAAA;AAAA,YAEA,QAAA,EAAA;AAAA;AAAA;AACH,OAAA,EAEJ;AAAA;AAAA,GACF;AAEJ","file":"button.js","sourcesContent":["import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","import { Button as ButtonPrimitive } from \"@base-ui/react/button\";\nimport { cva } from \"class-variance-authority\";\n\nimport { cn } from \"../../lib/utils\";\nimport { ButtonProps } from \"./types\";\n\nconst buttonVariants = cva(\n \"inline-flex relative items-center gap-1.5 whitespace-nowrap font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none shrink-0 [&_svg]:shrink-0 text-foreground bg-background group/button outline-none focus-visible:border-ring-3 focus-visible:ring-ring/60 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive\",\n {\n variants: {\n align: {\n left: \"justify-start\",\n center: \"justify-center\",\n right: \"justify-end\",\n },\n collapsed: {\n false: null,\n true: \"min-w-10 max-w-10 justify-center\",\n },\n outline: {\n false: null,\n true: \"\",\n },\n hasLeading: {\n false: null,\n },\n theme: {\n base: \"bg-foreground text-background\",\n brand: \"bg-primary-foreground text-primary\",\n error: \"\",\n },\n hasTrailing: {\n false: null,\n },\n variant: {\n default: \"hover:bg-background/90\",\n outline: \"backdrop-blur-lg \",\n primary: \"bg-primary-foreground/0 backdrop-blur-lg text-primary\",\n secondary: \"bg-secondary-foreground/0 backdrop-blur-lg text-secondary\",\n tertiary: \"bg-background/0 backdrop-blur-lg [--foreground:var(--color-text-text-default)]\",\n },\n pill: {\n false: \"rounded-xs\",\n true: \"rounded-full\",\n },\n size: {\n default: \"h-10 min-h-10 px-3 py-2 text-sm [&_svg:not([class*='size-'])]:size-[18px]\",\n lg: \"h-12 min-h-12 text-base [&_svg:not([class*='size-'])]:size-[20px]\",\n },\n },\n defaultVariants: {\n align: \"center\",\n outline: false,\n pill: false,\n size: \"default\",\n theme: \"brand\",\n variant: \"default\",\n },\n compoundVariants: [\n {\n pill: true,\n size: \"default\",\n class: \"min-w-10 min-h-10 px-4\",\n },\n {\n pill: true,\n collapsed: true,\n class: \"max-w-10\",\n },\n {\n pill: true,\n size: \"lg\",\n class: \"min-w-12 min-h-12 px-4\",\n },\n {\n pill: true,\n size: \"lg\",\n collapsed: true,\n class: \"max-w-[54px] max-h-12\",\n },\n {\n collapsed: false,\n size: \"default\",\n align: \"left\",\n pill: false,\n class: \"pr-3 pl-2\",\n },\n {\n align: \"center\",\n collapsed: false,\n size: \"default\",\n pill: false,\n class: \"px-3\",\n },\n {\n hasLeading: true,\n pill: false,\n align: \"left\",\n size: \"default\",\n class: \"pr-3 pl-2\",\n },\n {\n collapsed: false,\n size: \"default\",\n pill: true,\n class: \"px-4\",\n },\n {\n size: \"lg\",\n pill: true,\n collapsed: false,\n class: \"px-4\",\n },\n {\n variant: \"primary\",\n outline: false,\n theme: \"base\",\n class:\n \"bg-foreground text-background hover:ring-2 active:ring active:bg-background disabled:outline-none disabled:bg-black/0 disabled:text-black-alpha-600 focus-visible:ring-3 focus-visible:ring-ring focus-visible:outline-background focus-visible:bg-foreground focus-visible:text-background\",\n },\n {\n variant: \"primary\",\n outline: true,\n theme: \"base\",\n class:\n \"ring ring-foreground bg-background/0 text-foreground hover:ring-2 active:ring active:bg-background/1 disabled:outline-none disabled:bg-background/0 focus-visible:ring focus-visible:ring-ring focus-visible:outline-background focus-visible:bg-background/1\",\n },\n {\n variant: \"primary\",\n outline: true,\n theme: \"brand\",\n class:\n \"ring ring-primary-foreground bg-background/0 text-primary-foreground hover:ring-2 active:ring active:bg-background/1 disabled:outline-none disabled:bg-background/0 focus-visible:ring focus-visible:ring-ring focus-visible:outline-background focus-visible:bg-background/1\",\n },\n {\n variant: \"primary\",\n theme: \"brand\",\n outline: false,\n class:\n \"bg-primary-foreground text-primary hover:bg-primary-foreground hover:text-primary active:bg-primary-foreground active:text-primary focus-visible:bg-primary-foreground focus-visible:text-primary\",\n },\n {\n variant: \"primary\",\n theme: \"error\",\n class: \"bg-destructive text-black\",\n },\n {\n variant: \"secondary\",\n outline: false,\n theme: \"base\",\n class: \"bg-background/0 text-foreground backdrop-blur-lg focus-visible:backdrop-blur-md\",\n },\n {\n variant: \"secondary\",\n outline: true,\n theme: \"base\",\n class:\n \"bg-background/0 text-foreground ring ring-foreground/0 hover:ring-foreground active:ring-foreground/0 disabled:ring-foreground/0 backdrop-blur-lg focus-visible:backdrop-blur-md\",\n },\n {\n variant: \"tertiary\",\n outline: false,\n theme: \"base\",\n class: \"bg-background/0 text-foreground backdrop-blur-lg focus-visible:backdrop-blur-md\",\n },\n {\n variant: \"tertiary\",\n theme: \"error\",\n class: \"bg-transparent backdrop-blur-lg text-error-600\",\n },\n ],\n },\n);\n\nconst tintVariants = cva(\n \"before:content-[''] before:absolute before:inset-0 before:transition-all before:rounded-[inherit] before:pointer-events-none\",\n {\n variants: {\n outline: {\n false: null,\n },\n variant: {\n default: \"\",\n outline: \"\",\n primary:\n \"before:bg-tint-700-reversed/0 hover:before:bg-tint-700-reversed active:before:bg-tint-700-reversed/0 disabled:before:bg-tint-900-default focus-visible:before:bg-tint-700-reversed/0\",\n secondary:\n \"before:bg-tint-900-default hover:before:bg-tint-800-default active:before:bg-tint-900-default disabled:before:bg-tint-900-default focus-visible:before:bg-tint-800-default\",\n tertiary:\n \"before:bg-tint-950-reversed hover:before:bg-tint-900-default active:before:bg-tint-950-reversed disabled:before:bg-tint-950-reversed focus-visible:before:bg-tint-950-reversed\",\n },\n },\n defaultVariants: {\n outline: false,\n variant: \"default\",\n },\n compoundVariants: [\n {\n outline: true,\n variant: \"primary\",\n class:\n \"before:bg-tint-950-reversed hover:before:bg-tint-950-reversed active:before:bg-tint-950-reversed disabled:before:bg-tint-900-default focus-visible:before:bg-tint-950-reversed\",\n },\n {\n outline: true,\n variant: \"secondary\",\n class:\n \"before:bg-tint-950-reversed hover:before:bg-tint-950-reversed active:before:bg-tint-950-reversed disabled:before:bg-tint-900-default focus-visible:before:bg-tint-950-reversed\",\n },\n ],\n },\n);\n\nfunction Button({\n className,\n children,\n collapsed = false,\n variant = \"default\",\n align = \"center\",\n outline = false,\n pill = false,\n size = \"default\",\n theme = \"brand\",\n leading,\n trailing,\n ...props\n}: ButtonProps) {\n return (\n <ButtonPrimitive\n data-slot=\"button\"\n className={cn(\n buttonVariants({\n variant,\n size,\n align,\n outline,\n collapsed,\n pill,\n className,\n hasLeading: !!leading,\n theme,\n hasTrailing: !!trailing,\n }),\n tintVariants({ variant, outline }),\n )}\n {...props}\n >\n <>\n {leading && <div className=\"group-aria-busy/button:opacity-0\">{leading}</div>}\n {children && <span className=\"min-w-[18px] truncate\">{children}</span>}\n {trailing && (\n <div\n className={cn(\"group-aria-busy/button:opacity-0\", {\n \"absolute top-1/2 right-0 translate-x-1/2 -translate-y-1/2\": collapsed,\n })}\n >\n {trailing}\n </div>\n )}\n </>\n </ButtonPrimitive>\n );\n}\n\nexport { Button };\n"]}
@@ -1,2 +1,26 @@
1
- 'use strict';var clsx=require('clsx'),tailwindMerge=require('tailwind-merge'),jsxRuntime=require('react/jsx-runtime');function i(...t){return tailwindMerge.twMerge(clsx.clsx(t))}function x({className:t,children:a,title:o,subhead:r,cta:l}){return jsxRuntime.jsxs("div",{className:i("flex max-w-xl flex-col items-start gap-3 self-stretch",t),children:[jsxRuntime.jsxs("div",{className:"flex min-h-10 items-start justify-between self-stretch",children:[jsxRuntime.jsxs("div",{className:"flex min-h-10 shrink-0 grow basis-0 flex-col items-start justify-center",children:[o&&jsxRuntime.jsx("h2",{className:"font-decor text-decor-xs self-stretch font-bold",children:o}),r&&jsxRuntime.jsx("p",{className:"text-base font-semibold",children:r})]}),jsxRuntime.jsx("div",{children:l})]}),a&&jsxRuntime.jsx("div",{className:"prose prose-base max-w-(--width-xl) pb-3",children:a})]})}exports.ContentBlock=x;//# sourceMappingURL=content-block.cjs.map
1
+ 'use strict';
2
+
3
+ var clsx = require('clsx');
4
+ var tailwindMerge = require('tailwind-merge');
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+
7
+ // src/lib/utils.ts
8
+ function cn(...inputs) {
9
+ return tailwindMerge.twMerge(clsx.clsx(inputs));
10
+ }
11
+ function ContentBlock({ className, children, title, subhead, cta }) {
12
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("flex max-w-xl flex-col items-start gap-3 self-stretch", className), children: [
13
+ (title || subhead || cta) && /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex min-h-10 items-start justify-between self-stretch", children: [
14
+ (title || subhead) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex min-h-10 shrink-0 grow basis-0 flex-col items-start justify-center", children: [
15
+ title && /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "font-decor text-decor-xs self-stretch font-bold", children: title }),
16
+ subhead && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-base font-semibold", children: subhead })
17
+ ] }),
18
+ /* @__PURE__ */ jsxRuntime.jsx("div", { children: cta })
19
+ ] }) }),
20
+ children && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "prose prose-base max-w-(--width-xl) pb-3", children })
21
+ ] });
22
+ }
23
+
24
+ exports.ContentBlock = ContentBlock;
25
+ //# sourceMappingURL=content-block.cjs.map
2
26
  //# sourceMappingURL=content-block.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/lib/utils.ts","../src/components/content-block/content-block.tsx"],"names":["cn","inputs","twMerge","clsx","ContentBlock","className","children","title","subhead","cta","jsxs","jsx"],"mappings":"sHAGO,SAASA,CAAAA,CAAAA,GAAMC,EAAsB,CAC1C,OAAOC,sBAAQC,SAAAA,CAAKF,CAAM,CAAC,CAC7B,CCKO,SAASG,CAAAA,CAAa,CAAE,SAAA,CAAAC,CAAAA,CAAW,SAAAC,CAAAA,CAAU,KAAA,CAAAC,EAAO,OAAA,CAAAC,CAAAA,CAAS,IAAAC,CAAI,CAAA,CAAsB,CAC5F,OACEC,eAAAA,CAAC,OAAI,SAAA,CAAWV,CAAAA,CAAG,uDAAA,CAAyDK,CAAS,EACnF,QAAA,CAAA,CAAAK,eAAAA,CAAC,OAAI,SAAA,CAAU,wDAAA,CAEb,UAAAA,eAAAA,CAAC,KAAA,CAAA,CAAI,UAAU,yEAAA,CACZ,QAAA,CAAA,CAAAH,GAASI,cAAAA,CAAC,IAAA,CAAA,CAAG,UAAU,iDAAA,CAAmD,QAAA,CAAAJ,EAAM,CAAA,CAChFC,CAAAA,EAAWG,eAAC,GAAA,CAAA,CAAE,SAAA,CAAU,0BAA2B,QAAA,CAAAH,CAAAA,CAAQ,GAC9D,CAAA,CAEAG,cAAAA,CAAC,OAAK,QAAA,CAAAF,CAAAA,CAAI,GACZ,CAAA,CACCH,CAAAA,EAAYK,eAAC,KAAA,CAAA,CAAI,SAAA,CAAU,2CAA4C,QAAA,CAAAL,CAAAA,CAAS,GACnF,CAEJ","file":"content-block.cjs","sourcesContent":["import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","import { cn } from \"../../lib/utils\";\n\ninterface ContentBlockProps {\n className?: string;\n children?: React.ReactNode;\n title?: string;\n subhead?: string;\n cta?: React.ReactNode;\n}\n\nexport function ContentBlock({ className, children, title, subhead, cta }: ContentBlockProps) {\n return (\n <div className={cn(\"flex max-w-xl flex-col items-start gap-3 self-stretch\", className)}>\n <div className=\"flex min-h-10 items-start justify-between self-stretch\">\n {/* Text Group */}\n <div className=\"flex min-h-10 shrink-0 grow basis-0 flex-col items-start justify-center\">\n {title && <h2 className=\"font-decor text-decor-xs self-stretch font-bold\">{title}</h2>}\n {subhead && <p className=\"text-base font-semibold\">{subhead}</p>}\n </div>\n {/* CTA */}\n <div>{cta}</div>\n </div>\n {children && <div className=\"prose prose-base max-w-(--width-xl) pb-3\">{children}</div>}\n </div>\n );\n}\n"]}
1
+ {"version":3,"sources":["../src/lib/utils.ts","../src/components/content-block/content-block.tsx"],"names":["twMerge","clsx","jsx","Fragment","jsxs"],"mappings":";;;;;;;AAGO,SAAS,MAAM,MAAA,EAAsB;AAC1C,EAAA,OAAOA,qBAAA,CAAQC,SAAA,CAAK,MAAM,CAAC,CAAA;AAC7B;ACDO,SAAS,aAAa,EAAE,SAAA,EAAW,UAAU,KAAA,EAAO,OAAA,EAAS,KAAI,EAAsB;AAC5F,EAAA,uCACG,KAAA,EAAA,EAAI,SAAA,EAAW,EAAA,CAAG,uDAAA,EAAyD,SAAS,CAAA,EACjF,QAAA,EAAA;AAAA,IAAA,CAAA,KAAA,IAAS,WAAW,GAAA,qBACpBC,cAAA,CAAAC,mBAAA,EAAA,EACE,QAAA,kBAAAC,eAAA,CAAC,KAAA,EAAA,EAAI,WAAU,wDAAA,EAEX,QAAA,EAAA;AAAA,MAAA,CAAA,KAAA,IAAS,OAAA,qBACTA,eAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,yEAAA,EACZ,QAAA,EAAA;AAAA,QAAA,KAAA,oBACCF,cAAA,CAAC,IAAA,EAAA,EAAG,SAAA,EAAU,iDAAA,EAAmD,QAAA,EAAA,KAAA,EAAM,CAAA;AAAA,QAExE,OAAA,oBAAWA,cAAA,CAAC,GAAA,EAAA,EAAE,SAAA,EAAU,2BAA2B,QAAA,EAAA,OAAA,EAAQ;AAAA,OAAA,EAC9D,CAAA;AAAA,sBAGFA,cAAA,CAAC,SAAK,QAAA,EAAA,GAAA,EAAI;AAAA,KAAA,EACZ,CAAA,EACF,CAAA;AAAA,IAED,QAAA,oBAAYA,cAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,4CAA4C,QAAA,EAAS;AAAA,GAAA,EACnF,CAAA;AAEJ","file":"content-block.cjs","sourcesContent":["import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","import { cn } from \"../../lib/utils\";\n\nimport type { ContentBlockProps } from \"./types\";\n\nexport function ContentBlock({ className, children, title, subhead, cta }: ContentBlockProps) {\n return (\n <div className={cn(\"flex max-w-xl flex-col items-start gap-3 self-stretch\", className)}>\n {(title || subhead || cta) && (\n <>\n <div className=\"flex min-h-10 items-start justify-between self-stretch\">\n {/* Text Group */}\n {(title || subhead) && (\n <div className=\"flex min-h-10 shrink-0 grow basis-0 flex-col items-start justify-center\">\n {title && (\n <h2 className=\"font-decor text-decor-xs self-stretch font-bold\">{title}</h2>\n )}\n {subhead && <p className=\"text-base font-semibold\">{subhead}</p>}\n </div>\n )}\n {/* CTA */}\n <div>{cta}</div>\n </div>\n </>\n )}\n {children && <div className=\"prose prose-base max-w-(--width-xl) pb-3\">{children}</div>}\n </div>\n );\n}\n"]}
@@ -1,12 +1,13 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
 
3
3
  interface ContentBlockProps {
4
- className?: string;
5
- children?: React.ReactNode;
6
- title?: string;
7
- subhead?: string;
8
- cta?: React.ReactNode;
4
+ className?: string;
5
+ children?: React.ReactNode;
6
+ title?: string;
7
+ subhead?: string;
8
+ cta?: React.ReactNode;
9
9
  }
10
+
10
11
  declare function ContentBlock({ className, children, title, subhead, cta }: ContentBlockProps): react_jsx_runtime.JSX.Element;
11
12
 
12
13
  export { ContentBlock };
@@ -1,12 +1,13 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
 
3
3
  interface ContentBlockProps {
4
- className?: string;
5
- children?: React.ReactNode;
6
- title?: string;
7
- subhead?: string;
8
- cta?: React.ReactNode;
4
+ className?: string;
5
+ children?: React.ReactNode;
6
+ title?: string;
7
+ subhead?: string;
8
+ cta?: React.ReactNode;
9
9
  }
10
+
10
11
  declare function ContentBlock({ className, children, title, subhead, cta }: ContentBlockProps): react_jsx_runtime.JSX.Element;
11
12
 
12
13
  export { ContentBlock };
@@ -1,2 +1,24 @@
1
- import {clsx}from'clsx';import {twMerge}from'tailwind-merge';import {jsxs,jsx}from'react/jsx-runtime';function i(...t){return twMerge(clsx(t))}function x({className:t,children:a,title:o,subhead:r,cta:l}){return jsxs("div",{className:i("flex max-w-xl flex-col items-start gap-3 self-stretch",t),children:[jsxs("div",{className:"flex min-h-10 items-start justify-between self-stretch",children:[jsxs("div",{className:"flex min-h-10 shrink-0 grow basis-0 flex-col items-start justify-center",children:[o&&jsx("h2",{className:"font-decor text-decor-xs self-stretch font-bold",children:o}),r&&jsx("p",{className:"text-base font-semibold",children:r})]}),jsx("div",{children:l})]}),a&&jsx("div",{className:"prose prose-base max-w-(--width-xl) pb-3",children:a})]})}export{x as ContentBlock};//# sourceMappingURL=content-block.js.map
1
+ import { clsx } from 'clsx';
2
+ import { twMerge } from 'tailwind-merge';
3
+ import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
4
+
5
+ // src/lib/utils.ts
6
+ function cn(...inputs) {
7
+ return twMerge(clsx(inputs));
8
+ }
9
+ function ContentBlock({ className, children, title, subhead, cta }) {
10
+ return /* @__PURE__ */ jsxs("div", { className: cn("flex max-w-xl flex-col items-start gap-3 self-stretch", className), children: [
11
+ (title || subhead || cta) && /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs("div", { className: "flex min-h-10 items-start justify-between self-stretch", children: [
12
+ (title || subhead) && /* @__PURE__ */ jsxs("div", { className: "flex min-h-10 shrink-0 grow basis-0 flex-col items-start justify-center", children: [
13
+ title && /* @__PURE__ */ jsx("h2", { className: "font-decor text-decor-xs self-stretch font-bold", children: title }),
14
+ subhead && /* @__PURE__ */ jsx("p", { className: "text-base font-semibold", children: subhead })
15
+ ] }),
16
+ /* @__PURE__ */ jsx("div", { children: cta })
17
+ ] }) }),
18
+ children && /* @__PURE__ */ jsx("div", { className: "prose prose-base max-w-(--width-xl) pb-3", children })
19
+ ] });
20
+ }
21
+
22
+ export { ContentBlock };
23
+ //# sourceMappingURL=content-block.js.map
2
24
  //# sourceMappingURL=content-block.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/lib/utils.ts","../src/components/content-block/content-block.tsx"],"names":["cn","inputs","twMerge","clsx","ContentBlock","className","children","title","subhead","cta","jsxs","jsx"],"mappings":"sGAGO,SAASA,CAAAA,CAAAA,GAAMC,EAAsB,CAC1C,OAAOC,QAAQC,IAAAA,CAAKF,CAAM,CAAC,CAC7B,CCKO,SAASG,CAAAA,CAAa,CAAE,SAAA,CAAAC,CAAAA,CAAW,SAAAC,CAAAA,CAAU,KAAA,CAAAC,EAAO,OAAA,CAAAC,CAAAA,CAAS,IAAAC,CAAI,CAAA,CAAsB,CAC5F,OACEC,IAAAA,CAAC,OAAI,SAAA,CAAWV,CAAAA,CAAG,uDAAA,CAAyDK,CAAS,EACnF,QAAA,CAAA,CAAAK,IAAAA,CAAC,OAAI,SAAA,CAAU,wDAAA,CAEb,UAAAA,IAAAA,CAAC,KAAA,CAAA,CAAI,UAAU,yEAAA,CACZ,QAAA,CAAA,CAAAH,GAASI,GAAAA,CAAC,IAAA,CAAA,CAAG,UAAU,iDAAA,CAAmD,QAAA,CAAAJ,EAAM,CAAA,CAChFC,CAAAA,EAAWG,IAAC,GAAA,CAAA,CAAE,SAAA,CAAU,0BAA2B,QAAA,CAAAH,CAAAA,CAAQ,GAC9D,CAAA,CAEAG,GAAAA,CAAC,OAAK,QAAA,CAAAF,CAAAA,CAAI,GACZ,CAAA,CACCH,CAAAA,EAAYK,IAAC,KAAA,CAAA,CAAI,SAAA,CAAU,2CAA4C,QAAA,CAAAL,CAAAA,CAAS,GACnF,CAEJ","file":"content-block.js","sourcesContent":["import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","import { cn } from \"../../lib/utils\";\n\ninterface ContentBlockProps {\n className?: string;\n children?: React.ReactNode;\n title?: string;\n subhead?: string;\n cta?: React.ReactNode;\n}\n\nexport function ContentBlock({ className, children, title, subhead, cta }: ContentBlockProps) {\n return (\n <div className={cn(\"flex max-w-xl flex-col items-start gap-3 self-stretch\", className)}>\n <div className=\"flex min-h-10 items-start justify-between self-stretch\">\n {/* Text Group */}\n <div className=\"flex min-h-10 shrink-0 grow basis-0 flex-col items-start justify-center\">\n {title && <h2 className=\"font-decor text-decor-xs self-stretch font-bold\">{title}</h2>}\n {subhead && <p className=\"text-base font-semibold\">{subhead}</p>}\n </div>\n {/* CTA */}\n <div>{cta}</div>\n </div>\n {children && <div className=\"prose prose-base max-w-(--width-xl) pb-3\">{children}</div>}\n </div>\n );\n}\n"]}
1
+ {"version":3,"sources":["../src/lib/utils.ts","../src/components/content-block/content-block.tsx"],"names":[],"mappings":";;;;;AAGO,SAAS,MAAM,MAAA,EAAsB;AAC1C,EAAA,OAAO,OAAA,CAAQ,IAAA,CAAK,MAAM,CAAC,CAAA;AAC7B;ACDO,SAAS,aAAa,EAAE,SAAA,EAAW,UAAU,KAAA,EAAO,OAAA,EAAS,KAAI,EAAsB;AAC5F,EAAA,4BACG,KAAA,EAAA,EAAI,SAAA,EAAW,EAAA,CAAG,uDAAA,EAAyD,SAAS,CAAA,EACjF,QAAA,EAAA;AAAA,IAAA,CAAA,KAAA,IAAS,WAAW,GAAA,qBACpB,GAAA,CAAA,QAAA,EAAA,EACE,QAAA,kBAAA,IAAA,CAAC,KAAA,EAAA,EAAI,WAAU,wDAAA,EAEX,QAAA,EAAA;AAAA,MAAA,CAAA,KAAA,IAAS,OAAA,qBACT,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,yEAAA,EACZ,QAAA,EAAA;AAAA,QAAA,KAAA,oBACC,GAAA,CAAC,IAAA,EAAA,EAAG,SAAA,EAAU,iDAAA,EAAmD,QAAA,EAAA,KAAA,EAAM,CAAA;AAAA,QAExE,OAAA,oBAAW,GAAA,CAAC,GAAA,EAAA,EAAE,SAAA,EAAU,2BAA2B,QAAA,EAAA,OAAA,EAAQ;AAAA,OAAA,EAC9D,CAAA;AAAA,sBAGF,GAAA,CAAC,SAAK,QAAA,EAAA,GAAA,EAAI;AAAA,KAAA,EACZ,CAAA,EACF,CAAA;AAAA,IAED,QAAA,oBAAY,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,4CAA4C,QAAA,EAAS;AAAA,GAAA,EACnF,CAAA;AAEJ","file":"content-block.js","sourcesContent":["import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","import { cn } from \"../../lib/utils\";\n\nimport type { ContentBlockProps } from \"./types\";\n\nexport function ContentBlock({ className, children, title, subhead, cta }: ContentBlockProps) {\n return (\n <div className={cn(\"flex max-w-xl flex-col items-start gap-3 self-stretch\", className)}>\n {(title || subhead || cta) && (\n <>\n <div className=\"flex min-h-10 items-start justify-between self-stretch\">\n {/* Text Group */}\n {(title || subhead) && (\n <div className=\"flex min-h-10 shrink-0 grow basis-0 flex-col items-start justify-center\">\n {title && (\n <h2 className=\"font-decor text-decor-xs self-stretch font-bold\">{title}</h2>\n )}\n {subhead && <p className=\"text-base font-semibold\">{subhead}</p>}\n </div>\n )}\n {/* CTA */}\n <div>{cta}</div>\n </div>\n </>\n )}\n {children && <div className=\"prose prose-base max-w-(--width-xl) pb-3\">{children}</div>}\n </div>\n );\n}\n"]}
package/dist/dialog.cjs CHANGED
@@ -1,2 +1,145 @@
1
- 'use strict';var e=require('@radix-ui/react-dialog'),icons=require('@untitledui/icons'),clsx=require('clsx'),tailwindMerge=require('tailwind-merge'),jsxRuntime=require('react/jsx-runtime');function _interopNamespace(e){if(e&&e.__esModule)return e;var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var e__namespace=/*#__PURE__*/_interopNamespace(e);function i(...t){return tailwindMerge.twMerge(clsx.clsx(t))}function P({...t}){return jsxRuntime.jsx(e__namespace.Root,{"data-slot":"dialog",...t})}function x({...t}){return jsxRuntime.jsx(e__namespace.Trigger,{"data-slot":"dialog-trigger",...t})}function f({...t}){return jsxRuntime.jsx(e__namespace.Portal,{"data-slot":"dialog-portal",...t})}function C({...t}){return jsxRuntime.jsx(e__namespace.Close,{"data-slot":"dialog-close",...t})}function g({className:t,...a}){return jsxRuntime.jsx(e__namespace.Overlay,{"data-slot":"dialog-overlay",className:i("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-[rgb(0_0_32_/_0.01)] backdrop-blur-sm dark:bg-[rgb(255_255_255_/_0.01)]",t),...a})}function y({className:t,children:a,bottom:l=false,showCloseButton:r=true,...n}){return jsxRuntime.jsxs(f,{"data-slot":"dialog-portal",children:[jsxRuntime.jsx(g,{}),r&&jsxRuntime.jsx(e__namespace.Close,{"data-slot":"dialog-close",asChild:true,children:jsxRuntime.jsx("button",{type:"button",className:"before:bg-tint-700-reversed fixed top-[15px] left-5 z-50 overflow-visible before:absolute before:-inset-1.5 before:z-40 before:flex before:size-[calc(100%+12px)] before:rounded-full before:backdrop-blur-sm before:content-['']",children:jsxRuntime.jsx("div",{className:"bg-foreground text-background relative z-50 flex size-10 items-center justify-center rounded-full",children:jsxRuntime.jsx(icons.XClose,{className:"size-[18px]"})})})}),jsxRuntime.jsx(e__namespace.Content,{"data-slot":"dialog-content",className:i("bg-surface-bg-default 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%] rounded-xl shadow-2xl duration-200 sm:max-w-lg",{"data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom m:max-h-full z-50 h-full max-h-full w-full max-w-full overflow-auto data-[state=closed]:duration-200 data-[state=closed]:ease-[cubic-bezier(1,0,0.72,0.32)] data-[state=open]:duration-500 data-[state=open]:ease-[cubic-bezier(0.32,0.72,0,1)] sm:max-w-full":l},t),...n,children:a})]})}function z({className:t,...a}){return jsxRuntime.jsx("div",{"data-slot":"dialog-header",className:i("flex flex-col gap-2 text-center sm:text-left",t),...a})}function R({className:t,...a}){return jsxRuntime.jsx("div",{"data-slot":"dialog-footer",className:i("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",t),...a})}function w({className:t,...a}){return jsxRuntime.jsx(e__namespace.Title,{"data-slot":"dialog-title",className:i("text-lg leading-none font-semibold",t),...a})}function N({className:t,...a}){return jsxRuntime.jsx(e__namespace.Description,{"data-slot":"dialog-description",className:i("text-muted-foreground text-sm",t),...a})}exports.Dialog=P;exports.DialogClose=C;exports.DialogContent=y;exports.DialogDescription=N;exports.DialogFooter=R;exports.DialogHeader=z;exports.DialogOverlay=g;exports.DialogPortal=f;exports.DialogTitle=w;exports.DialogTrigger=x;//# sourceMappingURL=dialog.cjs.map
1
+ 'use strict';
2
+
3
+ var react = require('@base-ui/react');
4
+ var icons = require('@untitledui/icons');
5
+ var clsx = require('clsx');
6
+ var tailwindMerge = require('tailwind-merge');
7
+ var jsxRuntime = require('react/jsx-runtime');
8
+
9
+ function cn(...inputs) {
10
+ return tailwindMerge.twMerge(clsx.clsx(inputs));
11
+ }
12
+ function DialogRoot(props) {
13
+ return /* @__PURE__ */ jsxRuntime.jsx(react.Dialog.Root, { ...props });
14
+ }
15
+ function DialogPortal(props) {
16
+ return /* @__PURE__ */ jsxRuntime.jsx(react.Dialog.Portal, { ...props });
17
+ }
18
+ function DialogTrigger(props) {
19
+ return /* @__PURE__ */ jsxRuntime.jsx(react.Dialog.Trigger, { ...props });
20
+ }
21
+ function DialogClose(props) {
22
+ return /* @__PURE__ */ jsxRuntime.jsx(react.Dialog.Close, { ...props });
23
+ }
24
+ function DialogBackdrop({
25
+ className,
26
+ ...props
27
+ }) {
28
+ return /* @__PURE__ */ jsxRuntime.jsx(
29
+ react.Dialog.Backdrop,
30
+ {
31
+ className: cn(
32
+ "fixed inset-0 min-h-dvh bg-[rgb(0_0_32/0.01)] opacity-0 backdrop-blur-sm transition-[opacity,backdrop-filter] duration-150 data-ending-style:opacity-0 data-starting-style:opacity-0 supports-[-webkit-touch-callout:none]:absolute dark:bg-[rgb(255_255_255/0.01)] dark:opacity-70",
33
+ "data-closed:opacity-0 data-open:opacity-100",
34
+ className
35
+ ),
36
+ ...props
37
+ }
38
+ );
39
+ }
40
+ function DialogViewport({
41
+ className,
42
+ ...props
43
+ }) {
44
+ return /* @__PURE__ */ jsxRuntime.jsx(
45
+ react.Dialog.Viewport,
46
+ {
47
+ className: cn(
48
+ "fixed inset-0 flex items-center justify-center overflow-hidden py-6 [@media(min-height:600px)]:pt-8 [@media(min-height:600px)]:pb-12",
49
+ className
50
+ ),
51
+ ...props
52
+ }
53
+ );
54
+ }
55
+ function DialogPopup({
56
+ className,
57
+ children,
58
+ bottom = false,
59
+ showCloseButton = true,
60
+ ...props
61
+ }) {
62
+ return /* @__PURE__ */ jsxRuntime.jsxs(react.Dialog.Portal, { children: [
63
+ /* @__PURE__ */ jsxRuntime.jsx(DialogBackdrop, {}),
64
+ /* @__PURE__ */ jsxRuntime.jsxs(react.Dialog.Popup, { className: "group/popup pointer-events-none flex h-full max-h-full min-h-0 w-full max-w-full justify-center overflow-hidden transition-opacity duration-150 data-ending-style:opacity-0 data-starting-style:opacity-0", children: [
65
+ showCloseButton && /* @__PURE__ */ jsxRuntime.jsxs(
66
+ DialogClose,
67
+ {
68
+ className: "pointer-events-auto fixed top-[15px] left-5 z-50",
69
+ "aria-label": "Close",
70
+ children: [
71
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Close" }),
72
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "before:bg-tint-700-reversed relative block before:absolute before:-inset-1.5 before:rounded-full before:backdrop-blur-sm", children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: "bg-primary-foreground text-background relative z-10 flex size-10 items-center justify-center rounded-full", children: /* @__PURE__ */ jsxRuntime.jsx(icons.XClose, { className: "size-[18px]" }) }) })
73
+ ]
74
+ }
75
+ ),
76
+ /* @__PURE__ */ jsxRuntime.jsx(
77
+ "div",
78
+ {
79
+ className: cn(
80
+ "bg-background pointer-events-auto fixed top-1/2 left-1/2 flex h-full max-h-[calc(100%-2rem)] w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 flex-col rounded-xl shadow-2xl transition-all",
81
+ {
82
+ "group-data-ending-style/popup:translate-y-0 group-data-ending-style/popup:scale-[0.98] group-data-ending-style/popup:opacity-0 group-data-starting-style/popup:translate-y-0 group-data-starting-style/popup:scale-[0.98] group-data-starting-style/popup:opacity-0": !bottom,
83
+ "group-data-open/popup:slide-in-from-bottom group-data-closed/popup:slide-out-to-bottom group-data-starting-style/popup-scale-100 group-data-ending-style/popup-scale-100 group-data-open/popup:animate-in group-data-closed/popup:animate-out top-auto bottom-0 h-full translate-y-0 rounded-b-none group-data-closed/popup:duration-200 group-data-closed/popup:ease-[cubic-bezier(1,0,0.72,0.32)] group-data-ending-style/popup:translate-y-full group-data-open/popup:duration-500 group-data-open/popup:ease-[cubic-bezier(0.32,0.72,0,1)] group-data-starting-style/popup:translate-y-full": bottom
84
+ },
85
+ className
86
+ ),
87
+ ...props,
88
+ children
89
+ }
90
+ )
91
+ ] })
92
+ ] });
93
+ }
94
+ function DialogHeader({ className, ...props }) {
95
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("flex flex-col gap-2 text-center sm:text-left", className), ...props });
96
+ }
97
+ function DialogFooter({ className, ...props }) {
98
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("flex flex-col-reverse gap-2 sm:flex-row", className), ...props });
99
+ }
100
+ function DialogTitle({ className, ...props }) {
101
+ return /* @__PURE__ */ jsxRuntime.jsx(
102
+ react.Dialog.Title,
103
+ {
104
+ className: cn("text-lg leading-none font-semibold", className),
105
+ ...props
106
+ }
107
+ );
108
+ }
109
+ function DialogDescription({
110
+ className,
111
+ ...props
112
+ }) {
113
+ return /* @__PURE__ */ jsxRuntime.jsx(
114
+ react.Dialog.Description,
115
+ {
116
+ className: cn("text-muted-foreground text-sm", className),
117
+ ...props
118
+ }
119
+ );
120
+ }
121
+ function DialogBody({ className, children, ...props }) {
122
+ return /* @__PURE__ */ jsxRuntime.jsx(
123
+ "div",
124
+ {
125
+ className: cn("flex shrink-0 grow basis-0 flex-col items-start self-stretch", className),
126
+ ...props,
127
+ children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex shrink-0 grow basis-0 flex-col items-start gap-10 self-stretch overflow-auto p-4", children })
128
+ }
129
+ );
130
+ }
131
+
132
+ exports.Dialog = DialogRoot;
133
+ exports.DialogBackdrop = DialogBackdrop;
134
+ exports.DialogBody = DialogBody;
135
+ exports.DialogClose = DialogClose;
136
+ exports.DialogDescription = DialogDescription;
137
+ exports.DialogFooter = DialogFooter;
138
+ exports.DialogHeader = DialogHeader;
139
+ exports.DialogPopup = DialogPopup;
140
+ exports.DialogPortal = DialogPortal;
141
+ exports.DialogTitle = DialogTitle;
142
+ exports.DialogTrigger = DialogTrigger;
143
+ exports.DialogViewport = DialogViewport;
144
+ //# sourceMappingURL=dialog.cjs.map
2
145
  //# sourceMappingURL=dialog.cjs.map