@uselets/ui 1.7.2 → 1.9.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 (304) hide show
  1. package/README.md +10 -3
  2. package/dist/{chart-DHS2QeM8.d.ts → chart-lqgodZYQ.d.ts} +11 -7
  3. package/dist/cli/uselets.mjs.map +1 -1
  4. package/dist/components/accordion.d.ts +5 -5
  5. package/dist/components/accordion.js +1 -1
  6. package/dist/components/accordion.js.map +1 -1
  7. package/dist/components/alert-dialog.d.ts +13 -13
  8. package/dist/components/alert-dialog.js +1 -1
  9. package/dist/components/alert-dialog.js.map +1 -1
  10. package/dist/components/alert.d.ts +5 -5
  11. package/dist/components/alert.js +1 -1
  12. package/dist/components/alert.js.map +1 -1
  13. package/dist/components/anchor.d.ts +2 -2
  14. package/dist/components/anchor.js +1 -1
  15. package/dist/components/anchor.js.map +1 -1
  16. package/dist/components/area-chart.d.ts +7 -3
  17. package/dist/components/area-chart.js +1 -1
  18. package/dist/components/area-chart.js.map +1 -1
  19. package/dist/components/avatar.d.ts +7 -7
  20. package/dist/components/avatar.js +1 -1
  21. package/dist/components/avatar.js.map +1 -1
  22. package/dist/components/badge.d.ts +3 -3
  23. package/dist/components/badge.js +1 -1
  24. package/dist/components/badge.js.map +1 -1
  25. package/dist/components/bar-chart.d.ts +7 -3
  26. package/dist/components/bar-chart.js +1 -1
  27. package/dist/components/bar-chart.js.map +1 -1
  28. package/dist/components/breadcrumb.d.ts +8 -8
  29. package/dist/components/breadcrumb.js +1 -1
  30. package/dist/components/breadcrumb.js.map +1 -1
  31. package/dist/components/button-group.d.ts +4 -4
  32. package/dist/components/button-group.js +1 -1
  33. package/dist/components/button-group.js.map +1 -1
  34. package/dist/components/button.d.ts +3 -3
  35. package/dist/components/button.js +1 -1
  36. package/dist/components/button.js.map +1 -1
  37. package/dist/components/calendar.d.ts +3 -3
  38. package/dist/components/calendar.js +1 -1
  39. package/dist/components/calendar.js.map +1 -1
  40. package/dist/components/card.d.ts +9 -9
  41. package/dist/components/card.js +1 -1
  42. package/dist/components/card.js.map +1 -1
  43. package/dist/components/carousel.d.ts +7 -7
  44. package/dist/components/carousel.js +1 -1
  45. package/dist/components/carousel.js.map +1 -1
  46. package/dist/components/carousel.spec.js +1 -1
  47. package/dist/components/carousel.spec.js.map +1 -1
  48. package/dist/components/center.d.ts +2 -2
  49. package/dist/components/center.js +1 -1
  50. package/dist/components/center.js.map +1 -1
  51. package/dist/components/chart.d.ts +2 -2
  52. package/dist/components/chart.js +2 -2
  53. package/dist/components/chart.js.map +1 -1
  54. package/dist/components/checkbox.d.ts +2 -2
  55. package/dist/components/checkbox.js +1 -1
  56. package/dist/components/checkbox.js.map +1 -1
  57. package/dist/components/code.d.ts +2 -2
  58. package/dist/components/code.js +1 -1
  59. package/dist/components/code.js.map +1 -1
  60. package/dist/components/collapsible.d.ts +4 -4
  61. package/dist/components/collapsible.js +1 -1
  62. package/dist/components/collapsible.js.map +1 -1
  63. package/dist/components/combobox.d.ts +16 -16
  64. package/dist/components/combobox.js +1 -1
  65. package/dist/components/combobox.js.map +1 -1
  66. package/dist/components/command.d.ts +10 -10
  67. package/dist/components/command.js +1 -1
  68. package/dist/components/command.js.map +1 -1
  69. package/dist/components/container.d.ts +2 -2
  70. package/dist/components/container.js +1 -1
  71. package/dist/components/container.js.map +1 -1
  72. package/dist/components/data-table.d.ts +9 -9
  73. package/dist/components/data-table.js +1 -1
  74. package/dist/components/data-table.js.map +1 -1
  75. package/dist/components/date-range-picker.d.ts +12 -12
  76. package/dist/components/date-range-picker.js +1 -1
  77. package/dist/components/date-range-picker.js.map +1 -1
  78. package/dist/components/dialog.d.ts +12 -12
  79. package/dist/components/dialog.js +1 -1
  80. package/dist/components/dialog.js.map +1 -1
  81. package/dist/components/donut-chart.d.ts +2 -2
  82. package/dist/components/donut-chart.js +1 -1
  83. package/dist/components/donut-chart.js.map +1 -1
  84. package/dist/components/drawer.d.ts +14 -12
  85. package/dist/components/drawer.js +1 -1
  86. package/dist/components/drawer.js.map +1 -1
  87. package/dist/components/dropdown-menu.d.ts +16 -16
  88. package/dist/components/dropdown-menu.js +1 -1
  89. package/dist/components/dropdown-menu.js.map +1 -1
  90. package/dist/components/dropzone.d.ts +2 -2
  91. package/dist/components/dropzone.js +1 -1
  92. package/dist/components/dropzone.js.map +1 -1
  93. package/dist/components/empty.d.ts +7 -7
  94. package/dist/components/empty.js +1 -1
  95. package/dist/components/empty.js.map +1 -1
  96. package/dist/components/field.d.ts +11 -11
  97. package/dist/components/field.js +1 -1
  98. package/dist/components/field.js.map +1 -1
  99. package/dist/components/field.spec.js +1 -1
  100. package/dist/components/field.spec.js.map +1 -1
  101. package/dist/components/flex.d.ts +2 -2
  102. package/dist/components/flex.js +1 -1
  103. package/dist/components/flex.js.map +1 -1
  104. package/dist/components/grid.d.ts +3 -3
  105. package/dist/components/grid.js +1 -1
  106. package/dist/components/grid.js.map +1 -1
  107. package/dist/components/group.d.ts +2 -2
  108. package/dist/components/group.js +1 -1
  109. package/dist/components/group.js.map +1 -1
  110. package/dist/components/heading.d.ts +2 -2
  111. package/dist/components/heading.js +1 -1
  112. package/dist/components/heading.js.map +1 -1
  113. package/dist/components/hover-card.d.ts +4 -4
  114. package/dist/components/hover-card.js +1 -1
  115. package/dist/components/hover-card.js.map +1 -1
  116. package/dist/components/input-group.d.ts +7 -7
  117. package/dist/components/input-group.js +1 -1
  118. package/dist/components/input-group.js.map +1 -1
  119. package/dist/components/input-otp.d.ts +5 -5
  120. package/dist/components/input-otp.js +1 -1
  121. package/dist/components/input-otp.js.map +1 -1
  122. package/dist/components/input.d.ts +2 -2
  123. package/dist/components/input.js +1 -1
  124. package/dist/components/input.js.map +1 -1
  125. package/dist/components/kbd.d.ts +3 -3
  126. package/dist/components/kbd.js +1 -1
  127. package/dist/components/kbd.js.map +1 -1
  128. package/dist/components/label.d.ts +2 -2
  129. package/dist/components/label.js +1 -1
  130. package/dist/components/label.js.map +1 -1
  131. package/dist/components/list.d.ts +4 -4
  132. package/dist/components/list.js +1 -1
  133. package/dist/components/list.js.map +1 -1
  134. package/dist/components/mask-input.d.ts +2 -2
  135. package/dist/components/mask-input.js +1 -1
  136. package/dist/components/mask-input.js.map +1 -1
  137. package/dist/components/native-select.d.ts +4 -4
  138. package/dist/components/native-select.js +1 -1
  139. package/dist/components/native-select.js.map +1 -1
  140. package/dist/components/navigation-menu.d.ts +9 -9
  141. package/dist/components/navigation-menu.js +1 -1
  142. package/dist/components/navigation-menu.js.map +1 -1
  143. package/dist/components/pagination.d.ts +8 -8
  144. package/dist/components/pagination.js +1 -1
  145. package/dist/components/pagination.js.map +1 -1
  146. package/dist/components/pie-chart.d.ts +10 -4
  147. package/dist/components/pie-chart.js +1 -1
  148. package/dist/components/pie-chart.js.map +1 -1
  149. package/dist/components/popover.d.ts +8 -8
  150. package/dist/components/popover.js +1 -1
  151. package/dist/components/popover.js.map +1 -1
  152. package/dist/components/progress.d.ts +2 -2
  153. package/dist/components/progress.js +1 -1
  154. package/dist/components/progress.js.map +1 -1
  155. package/dist/components/radio-group.d.ts +3 -3
  156. package/dist/components/radio-group.js +1 -1
  157. package/dist/components/radio-group.js.map +1 -1
  158. package/dist/components/resizable.d.ts +4 -4
  159. package/dist/components/resizable.js +1 -1
  160. package/dist/components/resizable.js.map +1 -1
  161. package/dist/components/scroll-area.d.ts +3 -3
  162. package/dist/components/scroll-area.js +1 -1
  163. package/dist/components/scroll-area.js.map +1 -1
  164. package/dist/components/select.d.ts +11 -11
  165. package/dist/components/select.js +1 -1
  166. package/dist/components/select.js.map +1 -1
  167. package/dist/components/separator.d.ts +2 -2
  168. package/dist/components/separator.js +1 -1
  169. package/dist/components/separator.js.map +1 -1
  170. package/dist/components/sidebar.d.ts +25 -25
  171. package/dist/components/sidebar.js +1 -1
  172. package/dist/components/sidebar.js.map +1 -1
  173. package/dist/components/simple-grid.d.ts +2 -2
  174. package/dist/components/simple-grid.js +1 -1
  175. package/dist/components/simple-grid.js.map +1 -1
  176. package/dist/components/skeleton.d.ts +2 -2
  177. package/dist/components/skeleton.js +1 -1
  178. package/dist/components/skeleton.js.map +1 -1
  179. package/dist/components/skeleton.spec.js +1 -1
  180. package/dist/components/skeleton.spec.js.map +1 -1
  181. package/dist/components/slider.d.ts +2 -2
  182. package/dist/components/slider.js +1 -1
  183. package/dist/components/slider.js.map +1 -1
  184. package/dist/components/sonner.d.ts +2 -2
  185. package/dist/components/sonner.js +1 -1
  186. package/dist/components/sonner.js.map +1 -1
  187. package/dist/components/spinner.d.ts +2 -2
  188. package/dist/components/spinner.js +1 -1
  189. package/dist/components/spinner.js.map +1 -1
  190. package/dist/components/stack.d.ts +2 -2
  191. package/dist/components/stack.js +1 -1
  192. package/dist/components/stack.js.map +1 -1
  193. package/dist/components/switch.d.ts +2 -2
  194. package/dist/components/switch.js +1 -1
  195. package/dist/components/switch.js.map +1 -1
  196. package/dist/components/table.d.ts +10 -10
  197. package/dist/components/table.js +1 -1
  198. package/dist/components/table.js.map +1 -1
  199. package/dist/components/tabs.d.ts +5 -5
  200. package/dist/components/tabs.js +1 -1
  201. package/dist/components/tabs.js.map +1 -1
  202. package/dist/components/text.d.ts +2 -2
  203. package/dist/components/text.js +1 -1
  204. package/dist/components/text.js.map +1 -1
  205. package/dist/components/textarea.d.ts +2 -2
  206. package/dist/components/textarea.js +1 -1
  207. package/dist/components/textarea.js.map +1 -1
  208. package/dist/components/theme.d.ts +3 -3
  209. package/dist/components/theme.js +1 -1
  210. package/dist/components/theme.js.map +1 -1
  211. package/dist/components/timeline.d.ts +3 -3
  212. package/dist/components/timeline.js +1 -1
  213. package/dist/components/timeline.js.map +1 -1
  214. package/dist/components/toggle-group.d.ts +3 -3
  215. package/dist/components/toggle-group.js +1 -1
  216. package/dist/components/toggle-group.js.map +1 -1
  217. package/dist/components/toggle.d.ts +2 -2
  218. package/dist/components/toggle.js +1 -1
  219. package/dist/components/toggle.js.map +1 -1
  220. package/dist/components/tooltip.d.ts +6 -6
  221. package/dist/components/tooltip.js +1 -1
  222. package/dist/components/tooltip.js.map +1 -1
  223. package/dist/components/unstyled-button.d.ts +2 -2
  224. package/dist/components/unstyled-button.js +1 -1
  225. package/dist/components/unstyled-button.js.map +1 -1
  226. package/dist/components/visibility.d.ts +3 -3
  227. package/dist/components/visibility.js +1 -1
  228. package/dist/components/visibility.js.map +1 -1
  229. package/dist/{dist-C35vdEt2.js → dist-B-hwiqYg.js} +13 -13
  230. package/dist/dist-B-hwiqYg.js.map +1 -0
  231. package/dist/hooks/use-breakpoint-value.d.ts +1 -1
  232. package/dist/hooks/use-breakpoint-value.js +1 -1
  233. package/dist/hooks/use-breakpoint-value.js.map +1 -1
  234. package/dist/hooks/use-breakpoint-value.spec.js +1 -1
  235. package/dist/hooks/use-breakpoint-value.spec.js.map +1 -1
  236. package/dist/hooks/use-breakpoint.d.ts +1 -1
  237. package/dist/hooks/use-breakpoint.js +1 -1
  238. package/dist/hooks/use-breakpoint.js.map +1 -1
  239. package/dist/hooks/use-breakpoint.spec.js +1 -1
  240. package/dist/hooks/use-breakpoint.spec.js.map +1 -1
  241. package/dist/hooks/use-disclosure.d.ts +1 -1
  242. package/dist/hooks/use-disclosure.js +1 -1
  243. package/dist/hooks/use-disclosure.js.map +1 -1
  244. package/dist/hooks/use-disclosure.spec.js +1 -1
  245. package/dist/hooks/use-disclosure.spec.js.map +1 -1
  246. package/dist/hooks/use-document-visibility.d.ts +1 -1
  247. package/dist/hooks/use-document-visibility.js +1 -1
  248. package/dist/hooks/use-document-visibility.js.map +1 -1
  249. package/dist/hooks/use-document-visibility.spec.js +1 -1
  250. package/dist/hooks/use-document-visibility.spec.js.map +1 -1
  251. package/dist/hooks/use-idle.d.ts +1 -1
  252. package/dist/hooks/use-idle.js +1 -1
  253. package/dist/hooks/use-idle.js.map +1 -1
  254. package/dist/hooks/use-idle.spec.js +1 -1
  255. package/dist/hooks/use-idle.spec.js.map +1 -1
  256. package/dist/hooks/use-interval.d.ts +1 -1
  257. package/dist/hooks/use-interval.js +1 -1
  258. package/dist/hooks/use-interval.js.map +1 -1
  259. package/dist/hooks/use-interval.spec.js +1 -1
  260. package/dist/hooks/use-interval.spec.js.map +1 -1
  261. package/dist/hooks/use-local-storage.d.ts +1 -1
  262. package/dist/hooks/use-local-storage.js +1 -1
  263. package/dist/hooks/use-local-storage.js.map +1 -1
  264. package/dist/hooks/use-local-storage.spec.js +1 -1
  265. package/dist/hooks/use-local-storage.spec.js.map +1 -1
  266. package/dist/hooks/use-mask.d.ts +1 -1
  267. package/dist/hooks/use-mask.js +1 -1
  268. package/dist/hooks/use-mask.js.map +1 -1
  269. package/dist/hooks/use-mobile.d.ts +1 -1
  270. package/dist/hooks/use-mobile.js +1 -1
  271. package/dist/hooks/use-mobile.js.map +1 -1
  272. package/dist/hooks/use-mobile.spec.js +1 -1
  273. package/dist/hooks/use-mobile.spec.js.map +1 -1
  274. package/dist/index.d.ts +2 -2
  275. package/dist/index.js +1 -1
  276. package/dist/lib/badge.d.ts +11 -11
  277. package/dist/lib/badge.js +1 -1
  278. package/dist/lib/badge.js.map +1 -1
  279. package/dist/lib/button.d.ts +11 -11
  280. package/dist/lib/button.js +1 -1
  281. package/dist/lib/button.js.map +1 -1
  282. package/dist/lib/color.d.ts +11 -11
  283. package/dist/lib/color.js +1 -1
  284. package/dist/lib/color.js.map +1 -1
  285. package/dist/lib/compose-refs.d.ts +1 -1
  286. package/dist/lib/compose-refs.js +1 -1
  287. package/dist/lib/compose-refs.js.map +1 -1
  288. package/dist/lib/utils.d.ts +1 -1
  289. package/dist/lib/utils.js +1 -1
  290. package/dist/lib/utils.js.map +1 -1
  291. package/dist/{magic-string.es-C-uSEkg2.js → magic-string.es-DbBO8R0S.js} +2 -2
  292. package/dist/{magic-string.es-C-uSEkg2.js.map → magic-string.es-DbBO8R0S.js.map} +1 -1
  293. package/dist/{react.esm-BagSCtI3.js → react.esm-D88qr0ij.js} +12 -12
  294. package/dist/{react.esm-BagSCtI3.js.map → react.esm-D88qr0ij.js.map} +1 -1
  295. package/dist/skills/uselets-ui/references/component-catalog.md +8 -7
  296. package/dist/skills/uselets-ui/references/package-guide.md +7 -1
  297. package/dist/styles/gomax.css +16 -0
  298. package/dist/styles/max.css +16 -0
  299. package/dist/styles/theme.css +8 -0
  300. package/package.json +17 -14
  301. package/skills/uselets-ui/references/component-catalog.md +8 -7
  302. package/skills/uselets-ui/references/package-guide.md +7 -1
  303. package/dist/dist-C35vdEt2.js.map +0 -1
  304. /package/dist/{chunk-CHh1Zzun.js → rolldown-runtime-Bdj-bS2b.js} +0 -0
@@ -1,4 +1,4 @@
1
- import { n as __name } from "../chunk-CHh1Zzun.js";
1
+ import { n as __name } from "../rolldown-runtime-Bdj-bS2b.js";
2
2
  import { Avatar as Avatar$1 } from "radix-ui";
3
3
  import * as React from "react";
4
4
 
@@ -15,27 +15,27 @@ declare function Avatar({
15
15
  className,
16
16
  size,
17
17
  ...props
18
- }: AvatarProps): import("react/jsx-runtime").JSX.Element;
18
+ }: AvatarProps): React.JSX.Element;
19
19
  declare function AvatarImage({
20
20
  className,
21
21
  ...props
22
- }: AvatarImageProps): import("react/jsx-runtime").JSX.Element;
22
+ }: AvatarImageProps): React.JSX.Element;
23
23
  declare function AvatarFallback({
24
24
  className,
25
25
  ...props
26
- }: AvatarFallbackProps): import("react/jsx-runtime").JSX.Element;
26
+ }: AvatarFallbackProps): React.JSX.Element;
27
27
  declare function AvatarBadge({
28
28
  className,
29
29
  ...props
30
- }: AvatarBadgeProps): import("react/jsx-runtime").JSX.Element;
30
+ }: AvatarBadgeProps): React.JSX.Element;
31
31
  declare function AvatarGroup({
32
32
  className,
33
33
  ...props
34
- }: AvatarGroupProps): import("react/jsx-runtime").JSX.Element;
34
+ }: AvatarGroupProps): React.JSX.Element;
35
35
  declare function AvatarGroupCount({
36
36
  className,
37
37
  ...props
38
- }: AvatarGroupCountProps): import("react/jsx-runtime").JSX.Element;
38
+ }: AvatarGroupCountProps): React.JSX.Element;
39
39
  //#endregion
40
40
  export { Avatar, AvatarBadge, AvatarBadgeProps, AvatarFallback, AvatarFallbackProps, AvatarGroup, AvatarGroupCount, AvatarGroupCountProps, AvatarGroupProps, AvatarImage, AvatarImageProps, AvatarProps };
41
41
  //# sourceMappingURL=avatar.d.ts.map
@@ -1,2 +1,2 @@
1
- import"../chunk-CHh1Zzun.js";import{cn as e}from"../lib/utils.js";import{Avatar as t}from"radix-ui";import{jsx as n}from"react/jsx-runtime";function Avatar({className:r,size:i=`md`,...a}){return n(t.Root,{"data-slot":`avatar`,"data-size":i,className:e(`group/avatar relative flex shrink-0 size-8 rounded-full select-none`,`data-[size=lg]:size-10 data-[size=sm]:size-6`,`after:absolute after:inset-0 after:rounded-full after:border after:border-border after:mix-blend-darken dark:after:mix-blend-lighten`,r),...a})}function AvatarImage({className:r,...i}){return n(t.Image,{"data-slot":`avatar-image`,className:e(`rounded-full aspect-square size-full object-cover`,r),...i})}function AvatarFallback({className:r,...i}){return n(t.Fallback,{"data-slot":`avatar-fallback`,className:e(`bg-muted text-muted-foreground rounded-full flex size-full items-center justify-center text-sm group-data-[size=sm]/avatar:text-xs`,r),...i})}function AvatarBadge({className:t,...r}){return n(`span`,{"data-slot":`avatar-badge`,className:e(`bg-primary text-primary-foreground ring-background absolute right-0 bottom-0 z-10 inline-flex items-center justify-center rounded-full bg-blend-color ring-2 select-none`,`group-data-[size=sm]/avatar:size-2 group-data-[size=sm]/avatar:[&>svg]:hidden`,`group-data-[size=md]/avatar:size-2.5 group-data-[size=md]/avatar:[&>svg]:size-2`,`group-data-[size=lg]/avatar:size-3 group-data-[size=lg]/avatar:[&>svg]:size-2`,t),...r})}function AvatarGroup({className:t,...r}){return n(`div`,{"data-slot":`avatar-group`,className:e(`*:data-[slot=avatar]:ring-background group/avatar-group flex -space-x-2 *:data-[slot=avatar]:ring-2`,t),...r})}function AvatarGroupCount({className:t,...r}){return n(`div`,{"data-slot":`avatar-group-count`,className:e(`bg-muted text-muted-foreground ring-background relative flex shrink-0 items-center justify-center size-8 rounded-full text-sm ring-2`,`group-has-data-[size=lg]/avatar-group:size-10 group-has-data-[size=sm]/avatar-group:size-6`,`[&>svg]:size-4 group-has-data-[size=lg]/avatar-group:[&>svg]:size-5 group-has-data-[size=sm]/avatar-group:[&>svg]:size-3`,t),...r})}export{Avatar,AvatarBadge,AvatarFallback,AvatarGroup,AvatarGroupCount,AvatarImage};
1
+ import"../rolldown-runtime-Bdj-bS2b.js";import{cn as e}from"../lib/utils.js";import{Avatar as t}from"radix-ui";import{jsx as n}from"react/jsx-runtime";function Avatar({className:r,size:i=`md`,...a}){return n(t.Root,{"data-slot":`avatar`,"data-size":i,className:e(`group/avatar relative flex shrink-0 size-8 rounded-full select-none`,`data-[size=lg]:size-10 data-[size=sm]:size-6`,`after:absolute after:inset-0 after:rounded-full after:border after:border-border after:mix-blend-darken dark:after:mix-blend-lighten`,r),...a})}function AvatarImage({className:r,...i}){return n(t.Image,{"data-slot":`avatar-image`,className:e(`rounded-full aspect-square size-full object-cover`,r),...i})}function AvatarFallback({className:r,...i}){return n(t.Fallback,{"data-slot":`avatar-fallback`,className:e(`bg-muted text-muted-foreground rounded-full flex size-full items-center justify-center text-sm group-data-[size=sm]/avatar:text-xs`,r),...i})}function AvatarBadge({className:t,...r}){return n(`span`,{"data-slot":`avatar-badge`,className:e(`bg-primary text-primary-foreground ring-background absolute right-0 bottom-0 z-10 inline-flex items-center justify-center rounded-full bg-blend-color ring-2 select-none`,`group-data-[size=sm]/avatar:size-2 group-data-[size=sm]/avatar:[&>svg]:hidden`,`group-data-[size=md]/avatar:size-2.5 group-data-[size=md]/avatar:[&>svg]:size-2`,`group-data-[size=lg]/avatar:size-3 group-data-[size=lg]/avatar:[&>svg]:size-2`,t),...r})}function AvatarGroup({className:t,...r}){return n(`div`,{"data-slot":`avatar-group`,className:e(`*:data-[slot=avatar]:ring-background group/avatar-group flex -space-x-2 *:data-[slot=avatar]:ring-2`,t),...r})}function AvatarGroupCount({className:t,...r}){return n(`div`,{"data-slot":`avatar-group-count`,className:e(`bg-muted text-muted-foreground ring-background relative flex shrink-0 items-center justify-center size-8 rounded-full text-sm ring-2`,`group-has-data-[size=lg]/avatar-group:size-10 group-has-data-[size=sm]/avatar-group:size-6`,`[&>svg]:size-4 group-has-data-[size=lg]/avatar-group:[&>svg]:size-5 group-has-data-[size=sm]/avatar-group:[&>svg]:size-3`,t),...r})}export{Avatar,AvatarBadge,AvatarFallback,AvatarGroup,AvatarGroupCount,AvatarImage};
2
2
  //# sourceMappingURL=avatar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"avatar.js","names":["AvatarPrimitive"],"sources":["../../src/components/avatar.tsx"],"sourcesContent":["import type * as React from 'react'\n\nimport { Avatar as AvatarPrimitive } from 'radix-ui'\n\nimport { cn } from '../lib/utils'\n\nexport type AvatarProps = React.ComponentProps<typeof AvatarPrimitive.Root> & {\n size?: 'sm' | 'md' | 'lg'\n}\n\nexport type AvatarImageProps = React.ComponentProps<typeof AvatarPrimitive.Image>\n\nexport type AvatarFallbackProps = React.ComponentProps<typeof AvatarPrimitive.Fallback>\n\nexport type AvatarBadgeProps = React.ComponentProps<'span'>\n\nexport type AvatarGroupProps = React.ComponentProps<'div'>\n\nexport type AvatarGroupCountProps = React.ComponentProps<'div'>\n\nfunction Avatar({ className, size = 'md', ...props }: AvatarProps) {\n return (\n <AvatarPrimitive.Root\n data-slot=\"avatar\"\n data-size={size}\n className={cn(\n 'group/avatar relative flex shrink-0 size-8 rounded-full select-none',\n 'data-[size=lg]:size-10 data-[size=sm]:size-6',\n 'after:absolute after:inset-0 after:rounded-full after:border after:border-border after:mix-blend-darken dark:after:mix-blend-lighten',\n className\n )}\n {...props}\n />\n )\n}\n\nfunction AvatarImage({ className, ...props }: AvatarImageProps) {\n return (\n <AvatarPrimitive.Image\n data-slot=\"avatar-image\"\n className={cn('rounded-full aspect-square size-full object-cover', className)}\n {...props}\n />\n )\n}\n\nfunction AvatarFallback({ className, ...props }: AvatarFallbackProps) {\n return (\n <AvatarPrimitive.Fallback\n data-slot=\"avatar-fallback\"\n className={cn(\n 'bg-muted text-muted-foreground rounded-full flex size-full items-center justify-center text-sm group-data-[size=sm]/avatar:text-xs',\n className\n )}\n {...props}\n />\n )\n}\n\nfunction AvatarBadge({ className, ...props }: AvatarBadgeProps) {\n return (\n <span\n data-slot=\"avatar-badge\"\n className={cn(\n 'bg-primary text-primary-foreground ring-background absolute right-0 bottom-0 z-10 inline-flex items-center justify-center rounded-full bg-blend-color ring-2 select-none',\n 'group-data-[size=sm]/avatar:size-2 group-data-[size=sm]/avatar:[&>svg]:hidden',\n 'group-data-[size=md]/avatar:size-2.5 group-data-[size=md]/avatar:[&>svg]:size-2',\n 'group-data-[size=lg]/avatar:size-3 group-data-[size=lg]/avatar:[&>svg]:size-2',\n className\n )}\n {...props}\n />\n )\n}\n\nfunction AvatarGroup({ className, ...props }: AvatarGroupProps) {\n return (\n <div\n data-slot=\"avatar-group\"\n className={cn(\n '*:data-[slot=avatar]:ring-background group/avatar-group flex -space-x-2 *:data-[slot=avatar]:ring-2',\n className\n )}\n {...props}\n />\n )\n}\n\nfunction AvatarGroupCount({ className, ...props }: AvatarGroupCountProps) {\n return (\n <div\n data-slot=\"avatar-group-count\"\n className={cn(\n 'bg-muted text-muted-foreground ring-background relative flex shrink-0 items-center justify-center size-8 rounded-full text-sm ring-2',\n 'group-has-data-[size=lg]/avatar-group:size-10 group-has-data-[size=sm]/avatar-group:size-6',\n '[&>svg]:size-4 group-has-data-[size=lg]/avatar-group:[&>svg]:size-5 group-has-data-[size=sm]/avatar-group:[&>svg]:size-3',\n className\n )}\n {...props}\n />\n )\n}\n\nexport { Avatar, AvatarBadge, AvatarFallback, AvatarGroup, AvatarGroupCount, AvatarImage }\n"],"mappings":"4IAoBA,SAAS,OAAO,CAAE,YAAW,OAAO,KAAM,GAAG,GAAsB,CACjE,OACE,EAACA,EAAgB,KAAjB,CACE,YAAU,SACV,YAAW,EACX,UAAW,EACT,sEACA,+CACA,uIACA,CACF,EACA,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,YAAY,CAAE,YAAW,GAAG,GAA2B,CAC9D,OACE,EAACA,EAAgB,MAAjB,CACE,YAAU,eACV,UAAW,EAAG,oDAAqD,CAAS,EAC5E,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,eAAe,CAAE,YAAW,GAAG,GAA8B,CACpE,OACE,EAACA,EAAgB,SAAjB,CACE,YAAU,kBACV,UAAW,EACT,qIACA,CACF,EACA,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,YAAY,CAAE,YAAW,GAAG,GAA2B,CAC9D,OACE,EAAC,OAAD,CACE,YAAU,eACV,UAAW,EACT,2KACA,gFACA,kFACA,gFACA,CACF,EACA,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,YAAY,CAAE,YAAW,GAAG,GAA2B,CAC9D,OACE,EAAC,MAAD,CACE,YAAU,eACV,UAAW,EACT,sGACA,CACF,EACA,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,iBAAiB,CAAE,YAAW,GAAG,GAAgC,CACxE,OACE,EAAC,MAAD,CACE,YAAU,qBACV,UAAW,EACT,uIACA,6FACA,2HACA,CACF,EACA,GAAI,CACL,CAAA,CAEL"}
1
+ {"version":3,"file":"avatar.js","names":["AvatarPrimitive"],"sources":["../../src/components/avatar.tsx"],"sourcesContent":["import type * as React from 'react'\n\nimport { Avatar as AvatarPrimitive } from 'radix-ui'\n\nimport { cn } from '../lib/utils'\n\nexport type AvatarProps = React.ComponentProps<typeof AvatarPrimitive.Root> & {\n size?: 'sm' | 'md' | 'lg'\n}\n\nexport type AvatarImageProps = React.ComponentProps<typeof AvatarPrimitive.Image>\n\nexport type AvatarFallbackProps = React.ComponentProps<typeof AvatarPrimitive.Fallback>\n\nexport type AvatarBadgeProps = React.ComponentProps<'span'>\n\nexport type AvatarGroupProps = React.ComponentProps<'div'>\n\nexport type AvatarGroupCountProps = React.ComponentProps<'div'>\n\nfunction Avatar({ className, size = 'md', ...props }: AvatarProps) {\n return (\n <AvatarPrimitive.Root\n data-slot=\"avatar\"\n data-size={size}\n className={cn(\n 'group/avatar relative flex shrink-0 size-8 rounded-full select-none',\n 'data-[size=lg]:size-10 data-[size=sm]:size-6',\n 'after:absolute after:inset-0 after:rounded-full after:border after:border-border after:mix-blend-darken dark:after:mix-blend-lighten',\n className\n )}\n {...props}\n />\n )\n}\n\nfunction AvatarImage({ className, ...props }: AvatarImageProps) {\n return (\n <AvatarPrimitive.Image\n data-slot=\"avatar-image\"\n className={cn('rounded-full aspect-square size-full object-cover', className)}\n {...props}\n />\n )\n}\n\nfunction AvatarFallback({ className, ...props }: AvatarFallbackProps) {\n return (\n <AvatarPrimitive.Fallback\n data-slot=\"avatar-fallback\"\n className={cn(\n 'bg-muted text-muted-foreground rounded-full flex size-full items-center justify-center text-sm group-data-[size=sm]/avatar:text-xs',\n className\n )}\n {...props}\n />\n )\n}\n\nfunction AvatarBadge({ className, ...props }: AvatarBadgeProps) {\n return (\n <span\n data-slot=\"avatar-badge\"\n className={cn(\n 'bg-primary text-primary-foreground ring-background absolute right-0 bottom-0 z-10 inline-flex items-center justify-center rounded-full bg-blend-color ring-2 select-none',\n 'group-data-[size=sm]/avatar:size-2 group-data-[size=sm]/avatar:[&>svg]:hidden',\n 'group-data-[size=md]/avatar:size-2.5 group-data-[size=md]/avatar:[&>svg]:size-2',\n 'group-data-[size=lg]/avatar:size-3 group-data-[size=lg]/avatar:[&>svg]:size-2',\n className\n )}\n {...props}\n />\n )\n}\n\nfunction AvatarGroup({ className, ...props }: AvatarGroupProps) {\n return (\n <div\n data-slot=\"avatar-group\"\n className={cn(\n '*:data-[slot=avatar]:ring-background group/avatar-group flex -space-x-2 *:data-[slot=avatar]:ring-2',\n className\n )}\n {...props}\n />\n )\n}\n\nfunction AvatarGroupCount({ className, ...props }: AvatarGroupCountProps) {\n return (\n <div\n data-slot=\"avatar-group-count\"\n className={cn(\n 'bg-muted text-muted-foreground ring-background relative flex shrink-0 items-center justify-center size-8 rounded-full text-sm ring-2',\n 'group-has-data-[size=lg]/avatar-group:size-10 group-has-data-[size=sm]/avatar-group:size-6',\n '[&>svg]:size-4 group-has-data-[size=lg]/avatar-group:[&>svg]:size-5 group-has-data-[size=sm]/avatar-group:[&>svg]:size-3',\n className\n )}\n {...props}\n />\n )\n}\n\nexport { Avatar, AvatarBadge, AvatarFallback, AvatarGroup, AvatarGroupCount, AvatarImage }\n"],"mappings":"uJAoBA,SAAS,OAAO,CAAE,YAAW,OAAO,KAAM,GAAG,GAAsB,CACjE,OACE,EAACA,EAAgB,KAAjB,CACE,YAAU,SACV,YAAW,EACX,UAAW,EACT,sEACA,+CACA,uIACA,CACF,EACA,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,YAAY,CAAE,YAAW,GAAG,GAA2B,CAC9D,OACE,EAACA,EAAgB,MAAjB,CACE,YAAU,eACV,UAAW,EAAG,oDAAqD,CAAS,EAC5E,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,eAAe,CAAE,YAAW,GAAG,GAA8B,CACpE,OACE,EAACA,EAAgB,SAAjB,CACE,YAAU,kBACV,UAAW,EACT,qIACA,CACF,EACA,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,YAAY,CAAE,YAAW,GAAG,GAA2B,CAC9D,OACE,EAAC,OAAD,CACE,YAAU,eACV,UAAW,EACT,2KACA,gFACA,kFACA,gFACA,CACF,EACA,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,YAAY,CAAE,YAAW,GAAG,GAA2B,CAC9D,OACE,EAAC,MAAD,CACE,YAAU,eACV,UAAW,EACT,sGACA,CACF,EACA,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,iBAAiB,CAAE,YAAW,GAAG,GAAgC,CACxE,OACE,EAAC,MAAD,CACE,YAAU,qBACV,UAAW,EACT,uIACA,6FACA,2HACA,CACF,EACA,GAAI,CACL,CAAA,CAEL"}
@@ -1,11 +1,11 @@
1
- import { n as __name } from "../chunk-CHh1Zzun.js";
1
+ import { n as __name } from "../rolldown-runtime-Bdj-bS2b.js";
2
2
  import { VariantProps } from "class-variance-authority";
3
3
  import * as React from "react";
4
4
 
5
5
  //#region src/components/badge.d.ts
6
6
  declare const badgeVariants: (props?: ({
7
7
  size?: "xs" | "sm" | "md" | "lg" | "xl" | null | undefined;
8
- variant?: "solid" | "outline" | "subtle" | "ghost" | "link" | null | undefined;
8
+ variant?: "solid" | "secondary" | "outline" | "subtle" | null | undefined;
9
9
  color?: "primary" | "brand" | "gray" | "zinc" | "red" | "yellow" | "blue" | "indigo" | "pink" | "green" | null | undefined;
10
10
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
11
11
  type BadgeProps = React.ComponentProps<'span'> & VariantProps<typeof badgeVariants> & {
@@ -18,7 +18,7 @@ declare function Badge({
18
18
  color,
19
19
  asChild,
20
20
  ...props
21
- }: BadgeProps): import("react/jsx-runtime").JSX.Element;
21
+ }: BadgeProps): React.JSX.Element;
22
22
  //#endregion
23
23
  export { Badge, BadgeProps, badgeVariants };
24
24
  //# sourceMappingURL=badge.d.ts.map
@@ -1,2 +1,2 @@
1
- import"../chunk-CHh1Zzun.js";import{cn as e}from"../lib/utils.js";import{badgeColorVariants as t}from"../lib/badge.js";import{Slot as n}from"radix-ui";import{jsx as r}from"react/jsx-runtime";import{cva as i}from"class-variance-authority";const a=i(`group/badge inline-flex w-fit items-center justify-center overflow-hidden border border-transparent font-semibold whitespace-nowrap transition-all focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none`,{variants:{size:{xs:`h-4 gap-0.5 px-1.5 text-[10px] rounded-[4px] [&>svg]:size-2.5! has-data-[icon=inline-end]:pr-1 has-data-[icon=inline-start]:pl-1`,sm:`h-4.5 gap-0.5 px-2 text-[11px] rounded-[5px] [&>svg]:size-2.5! has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5`,md:`h-5 gap-1 px-2 py-0.5 text-xs rounded-[6px] [&>svg]:size-3! has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5`,lg:`h-6 gap-1 px-2.5 text-xs rounded-[7px] [&>svg]:size-3.5! has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2`,xl:`h-7 gap-1.5 px-3 text-sm rounded-[8px] [&>svg]:size-4! has-data-[icon=inline-end]:pr-2.5 has-data-[icon=inline-start]:pl-2.5`},variant:{solid:`bg-(--badge-solid) text-(--badge-solid-foreground) [a]:hover:opacity-90`,outline:`border-(--badge-outline-border) text-(--badge-outline-foreground) [a]:hover:bg-(--badge-soft) [a]:hover:text-(--badge-soft-foreground)`,subtle:`bg-(--badge-soft) text-(--badge-soft-foreground) [a]:hover:bg-(--badge-soft-hover)`,ghost:`text-(--badge-ghost-foreground) [a]:hover:bg-(--badge-ghost-hover) [a]:hover:text-(--badge-ghost-foreground)`,link:`text-(--badge-link-foreground) underline-offset-4 [a]:hover:underline`},color:t},defaultVariants:{size:`md`,variant:`solid`,color:`primary`}});function Badge({className:t,size:i=`md`,variant:o=`solid`,color:s=`primary`,asChild:c=!1,...l}){return r(c?n.Root:`span`,{"data-slot":`badge`,"data-size":i,"data-variant":o,"data-color":s,className:e(a({size:i,variant:o,color:s}),t),...l})}export{Badge,a as badgeVariants};
1
+ import"../rolldown-runtime-Bdj-bS2b.js";import{cn as e}from"../lib/utils.js";import{badgeColorVariants as t}from"../lib/badge.js";import{Slot as n}from"radix-ui";import{jsx as r}from"react/jsx-runtime";import{cva as i}from"class-variance-authority";const a=i(`group/badge inline-flex w-fit items-center justify-center overflow-hidden border border-transparent font-semibold whitespace-nowrap transition-all focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none`,{variants:{size:{xs:`h-4 gap-0.5 px-1.5 text-[10px] rounded-[4px] [&>svg]:size-2.5! has-data-[icon=inline-end]:pr-1 has-data-[icon=inline-start]:pl-1`,sm:`h-4.5 gap-0.5 px-2 text-[11px] rounded-[5px] [&>svg]:size-2.5! has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5`,md:`h-5 gap-1 px-2 py-0.5 text-xs rounded-[6px] [&>svg]:size-3! has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5`,lg:`h-6 gap-1 px-2.5 text-xs rounded-[7px] [&>svg]:size-3.5! has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2`,xl:`h-7 gap-1.5 px-3 text-sm rounded-[8px] [&>svg]:size-4! has-data-[icon=inline-end]:pr-2.5 has-data-[icon=inline-start]:pl-2.5`},variant:{solid:`bg-(--badge-solid) text-(--badge-solid-foreground) [a]:hover:opacity-90`,secondary:`border-border bg-background text-foreground [a]:hover:bg-muted dark:border-input dark:bg-input/30 dark:[a]:hover:bg-input/50`,outline:`border-(--badge-outline-border) text-(--badge-outline-foreground) [a]:hover:bg-(--badge-soft) [a]:hover:text-(--badge-soft-foreground)`,subtle:`bg-(--badge-soft) text-(--badge-soft-foreground) [a]:hover:bg-(--badge-soft-hover)`},color:t},defaultVariants:{size:`md`,variant:`solid`,color:`primary`}});function Badge({className:t,size:i=`md`,variant:o=`solid`,color:s=`primary`,asChild:c=!1,...l}){return r(c?n.Root:`span`,{"data-slot":`badge`,"data-size":i,"data-variant":o,"data-color":s,className:e(a({size:i,variant:o,color:s}),t),...l})}export{Badge,a as badgeVariants};
2
2
  //# sourceMappingURL=badge.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"badge.js","names":[],"sources":["../../src/components/badge.tsx"],"sourcesContent":["import type * as React from 'react'\n\nimport { cva, type VariantProps } from 'class-variance-authority'\nimport { Slot } from 'radix-ui'\n\nimport { badgeColorVariants } from '../lib/badge'\nimport { cn } from '../lib/utils'\n\nconst badgeVariants = cva(\n 'group/badge inline-flex w-fit items-center justify-center overflow-hidden border border-transparent font-semibold whitespace-nowrap transition-all focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none',\n {\n variants: {\n size: {\n xs: 'h-4 gap-0.5 px-1.5 text-[10px] rounded-[4px] [&>svg]:size-2.5! has-data-[icon=inline-end]:pr-1 has-data-[icon=inline-start]:pl-1',\n sm: 'h-4.5 gap-0.5 px-2 text-[11px] rounded-[5px] [&>svg]:size-2.5! has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5',\n md: 'h-5 gap-1 px-2 py-0.5 text-xs rounded-[6px] [&>svg]:size-3! has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5',\n lg: 'h-6 gap-1 px-2.5 text-xs rounded-[7px] [&>svg]:size-3.5! has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2',\n xl: 'h-7 gap-1.5 px-3 text-sm rounded-[8px] [&>svg]:size-4! has-data-[icon=inline-end]:pr-2.5 has-data-[icon=inline-start]:pl-2.5'\n },\n variant: {\n solid: 'bg-(--badge-solid) text-(--badge-solid-foreground) [a]:hover:opacity-90',\n outline:\n 'border-(--badge-outline-border) text-(--badge-outline-foreground) [a]:hover:bg-(--badge-soft) [a]:hover:text-(--badge-soft-foreground)',\n subtle: 'bg-(--badge-soft) text-(--badge-soft-foreground) [a]:hover:bg-(--badge-soft-hover)',\n ghost:\n 'text-(--badge-ghost-foreground) [a]:hover:bg-(--badge-ghost-hover) [a]:hover:text-(--badge-ghost-foreground)',\n link: 'text-(--badge-link-foreground) underline-offset-4 [a]:hover:underline'\n },\n color: badgeColorVariants\n },\n defaultVariants: {\n size: 'md',\n variant: 'solid',\n color: 'primary'\n }\n }\n)\n\nexport type BadgeProps = React.ComponentProps<'span'> &\n VariantProps<typeof badgeVariants> & {\n asChild?: boolean\n }\n\nfunction Badge({\n className,\n size = 'md',\n variant = 'solid',\n color = 'primary',\n asChild = false,\n ...props\n}: BadgeProps) {\n const Comp = asChild ? Slot.Root : 'span'\n\n return (\n <Comp\n data-slot=\"badge\"\n data-size={size}\n data-variant={variant}\n data-color={color}\n className={cn(badgeVariants({ size, variant, color }), className)}\n {...props}\n />\n )\n}\n\nexport { Badge, badgeVariants }\n"],"mappings":"8OAQA,MAAM,EAAgB,EACpB,sWACA,CACE,SAAU,CACR,KAAM,CACJ,GAAI,mIACJ,GAAI,uIACJ,GAAI,oIACJ,GAAI,6HACJ,GAAI,8HACN,EACA,QAAS,CACP,MAAO,0EACP,QACE,yIACF,OAAQ,qFACR,MACE,+GACF,KAAM,uEACR,EACA,MAAO,CACT,EACA,gBAAiB,CACf,KAAM,KACN,QAAS,QACT,MAAO,SACT,CACF,CACF,EAOA,SAAS,MAAM,CACb,YACA,OAAO,KACP,UAAU,QACV,QAAQ,UACR,UAAU,GACV,GAAG,GACU,CAGb,OACE,EAHW,EAAU,EAAK,KAAO,OAGjC,CACE,YAAU,QACV,YAAW,EACX,eAAc,EACd,aAAY,EACZ,UAAW,EAAG,EAAc,CAAE,OAAM,UAAS,OAAM,CAAC,EAAG,CAAS,EAChE,GAAI,CACL,CAAA,CAEL"}
1
+ {"version":3,"file":"badge.js","names":[],"sources":["../../src/components/badge.tsx"],"sourcesContent":["import type * as React from 'react'\n\nimport { cva, type VariantProps } from 'class-variance-authority'\nimport { Slot } from 'radix-ui'\n\nimport { badgeColorVariants } from '../lib/badge'\nimport { cn } from '../lib/utils'\n\nconst badgeVariants = cva(\n 'group/badge inline-flex w-fit items-center justify-center overflow-hidden border border-transparent font-semibold whitespace-nowrap transition-all focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none',\n {\n variants: {\n size: {\n xs: 'h-4 gap-0.5 px-1.5 text-[10px] rounded-[4px] [&>svg]:size-2.5! has-data-[icon=inline-end]:pr-1 has-data-[icon=inline-start]:pl-1',\n sm: 'h-4.5 gap-0.5 px-2 text-[11px] rounded-[5px] [&>svg]:size-2.5! has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5',\n md: 'h-5 gap-1 px-2 py-0.5 text-xs rounded-[6px] [&>svg]:size-3! has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5',\n lg: 'h-6 gap-1 px-2.5 text-xs rounded-[7px] [&>svg]:size-3.5! has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2',\n xl: 'h-7 gap-1.5 px-3 text-sm rounded-[8px] [&>svg]:size-4! has-data-[icon=inline-end]:pr-2.5 has-data-[icon=inline-start]:pl-2.5'\n },\n variant: {\n solid: 'bg-(--badge-solid) text-(--badge-solid-foreground) [a]:hover:opacity-90',\n secondary:\n 'border-border bg-background text-foreground [a]:hover:bg-muted dark:border-input dark:bg-input/30 dark:[a]:hover:bg-input/50',\n outline:\n 'border-(--badge-outline-border) text-(--badge-outline-foreground) [a]:hover:bg-(--badge-soft) [a]:hover:text-(--badge-soft-foreground)',\n subtle: 'bg-(--badge-soft) text-(--badge-soft-foreground) [a]:hover:bg-(--badge-soft-hover)'\n },\n color: badgeColorVariants\n },\n defaultVariants: {\n size: 'md',\n variant: 'solid',\n color: 'primary'\n }\n }\n)\n\nexport type BadgeProps = React.ComponentProps<'span'> &\n VariantProps<typeof badgeVariants> & {\n asChild?: boolean\n }\n\nfunction Badge({\n className,\n size = 'md',\n variant = 'solid',\n color = 'primary',\n asChild = false,\n ...props\n}: BadgeProps) {\n const Comp = asChild ? Slot.Root : 'span'\n\n return (\n <Comp\n data-slot=\"badge\"\n data-size={size}\n data-variant={variant}\n data-color={color}\n className={cn(badgeVariants({ size, variant, color }), className)}\n {...props}\n />\n )\n}\n\nexport { Badge, badgeVariants }\n"],"mappings":"yPAQA,MAAM,EAAgB,EACpB,sWACA,CACE,SAAU,CACR,KAAM,CACJ,GAAI,mIACJ,GAAI,uIACJ,GAAI,oIACJ,GAAI,6HACJ,GAAI,8HACN,EACA,QAAS,CACP,MAAO,0EACP,UACE,+HACF,QACE,yIACF,OAAQ,oFACV,EACA,MAAO,CACT,EACA,gBAAiB,CACf,KAAM,KACN,QAAS,QACT,MAAO,SACT,CACF,CACF,EAOA,SAAS,MAAM,CACb,YACA,OAAO,KACP,UAAU,QACV,QAAQ,UACR,UAAU,GACV,GAAG,GACU,CAGb,OACE,EAHW,EAAU,EAAK,KAAO,OAGjC,CACE,YAAU,QACV,YAAW,EACX,eAAc,EACd,aAAY,EACZ,UAAW,EAAG,EAAc,CAAE,OAAM,UAAS,OAAM,CAAC,EAAG,CAAS,EAChE,GAAI,CACL,CAAA,CAEL"}
@@ -1,12 +1,14 @@
1
- import { n as __name } from "../chunk-CHh1Zzun.js";
2
- import { f as ChartTooltipContentProps, o as ChartLegendContentProps } from "../chart-DHS2QeM8.js";
1
+ import { n as __name } from "../rolldown-runtime-Bdj-bS2b.js";
2
+ import { c as ChartLegendContentProps, m as ChartTooltipContentProps, n as ChartColorKey } from "../chart-lqgodZYQ.js";
3
3
  import * as React from "react";
4
+ import { Bar } from "recharts";
4
5
 
5
6
  //#region src/components/bar-chart.d.ts
6
7
  type BarChartSeries = {
7
8
  name: string;
8
9
  label?: string;
9
10
  color?: string;
11
+ colorKey?: ChartColorKey;
10
12
  };
11
13
  type BarChartType = 'default' | 'stacked' | 'percent';
12
14
  type BarChartOrientation = 'vertical' | 'horizontal';
@@ -28,6 +30,7 @@ type BarChartProps = Omit<React.ComponentProps<'div'>, 'children'> & {
28
30
  animationDuration?: number;
29
31
  tooltipProps?: ChartTooltipContentProps;
30
32
  legendProps?: ChartLegendContentProps;
33
+ barProps?: Partial<React.ComponentProps<typeof Bar>>;
31
34
  };
32
35
  declare function BarChart({
33
36
  className,
@@ -47,8 +50,9 @@ declare function BarChart({
47
50
  animationDuration,
48
51
  tooltipProps,
49
52
  legendProps,
53
+ barProps,
50
54
  ...props
51
- }: BarChartProps): import("react/jsx-runtime").JSX.Element;
55
+ }: BarChartProps): React.JSX.Element;
52
56
  //#endregion
53
57
  export { BarChart, BarChartGridAxis, BarChartOrientation, BarChartProps, BarChartSeries, BarChartType };
54
58
  //# sourceMappingURL=bar-chart.d.ts.map
@@ -1,2 +1,2 @@
1
- import"../chunk-CHh1Zzun.js";import{cn as e}from"../lib/utils.js";import{ChartContainer as t,ChartLegendContent as n,ChartTooltipContent as r}from"./chart.js";import{jsx as i,jsxs as a}from"react/jsx-runtime";import*as o from"react";import{Bar as s,BarChart as c,CartesianGrid as l,Legend as u,Tooltip as d,XAxis as f,YAxis as p}from"recharts";const m=[`var(--chart-1)`,`var(--chart-2)`,`var(--chart-3)`,`var(--chart-4)`,`var(--chart-5)`];function buildConfig(e){return e.reduce((e,t,n)=>(e[t.name]={label:t.label??t.name,color:t.color??m[n%m.length]},e),{})}function BarChart({className:m,data:h,series:g,dataKey:_,type:v=`default`,orientation:y=`vertical`,withXAxis:b=!0,withYAxis:x=!0,gridAxis:S=`x`,withTooltip:C=!0,withLegend:w=!1,barSize:T,radius:E=4,unit:D,animationDuration:O,tooltipProps:k,legendProps:A,...j}){let M=o.useMemo(()=>buildConfig(g),[g]),N=v===`default`?void 0:`stack`,P=v===`percent`?`expand`:void 0,F=y===`horizontal`,I={dataKey:_,tickLine:!1,axisLine:!1,tickMargin:8},L=v===`percent`?e=>`${Math.round(e*100)}%`:D?e=>`${e}${D}`:void 0;return i(t,{"data-slot":`bar-chart`,className:e(`w-full`,m),config:M,...j,children:a(c,{data:h,stackOffset:P,layout:F?`vertical`:`horizontal`,children:[S!==`none`&&i(l,{vertical:S===`y`||S===`xy`,horizontal:S===`x`||S===`xy`}),b&&(F?i(f,{type:`number`,tickLine:!1,axisLine:!1,tickMargin:8,tickFormatter:L}):i(f,{type:`category`,...I})),x&&(F?i(p,{type:`category`,...I}):i(p,{type:`number`,tickLine:!1,axisLine:!1,tickMargin:8,tickFormatter:L})),C&&i(d,{cursor:!1,content:i(r,{...k})}),w&&i(u,{content:i(n,{...A})}),g.map(e=>i(s,{dataKey:e.name,stackId:N,fill:`var(--color-${e.name})`,radius:E,barSize:T,animationDuration:O,isAnimationActive:O!==0},e.name))]})})}export{BarChart};
1
+ import"../rolldown-runtime-Bdj-bS2b.js";import{cn as e}from"../lib/utils.js";import{ChartContainer as t,ChartLegendContent as n,ChartTooltipContent as r,DEFAULT_CHART_PALETTE as i,resolveChartColor as a}from"./chart.js";import{jsx as o,jsxs as s}from"react/jsx-runtime";import*as c from"react";import{Bar as l,BarChart as u,CartesianGrid as d,Legend as f,Tooltip as p,XAxis as m,YAxis as h}from"recharts";function buildConfig(e){return e.reduce((e,t,n)=>(e[t.name]={label:t.label??t.name,color:t.color??a(t.colorKey)??i[n%i.length]},e),{})}function BarChart({className:i,data:a,series:g,dataKey:_,type:v=`default`,orientation:y=`vertical`,withXAxis:b=!0,withYAxis:x=!0,gridAxis:S=`x`,withTooltip:C=!0,withLegend:w=!1,barSize:T,radius:E=4,unit:D,animationDuration:O,tooltipProps:k,legendProps:A,barProps:j,...M}){let N=c.useMemo(()=>buildConfig(g),[g]),P=v==="default"?void 0:`stack`,F=v===`percent`?`expand`:void 0,I=y===`horizontal`,L={dataKey:_,tickLine:!1,axisLine:!1,tickMargin:8},R=v===`percent`?e=>`${Math.round(e*100)}%`:D?e=>`${e}${D}`:void 0;return o(t,{"data-slot":`bar-chart`,className:e(`w-full`,i),config:N,...M,children:s(u,{data:a,stackOffset:F,layout:I?`vertical`:`horizontal`,children:[S!==`none`&&o(d,{vertical:S===`y`||S===`xy`,horizontal:S===`x`||S===`xy`}),b&&(I?o(m,{type:`number`,tickLine:!1,axisLine:!1,tickMargin:8,tickFormatter:R}):o(m,{type:`category`,...L})),x&&(I?o(h,{type:`category`,...L}):o(h,{type:`number`,tickLine:!1,axisLine:!1,tickMargin:8,tickFormatter:R})),C&&o(p,{cursor:!1,content:o(r,{...k})}),w&&o(f,{content:o(n,{...A})}),g.map(e=>o(l,{dataKey:e.name,stackId:P,fill:`var(--color-${e.name})`,radius:E,barSize:T,animationDuration:O,isAnimationActive:O!==0,...j},e.name))]})})}export{BarChart};
2
2
  //# sourceMappingURL=bar-chart.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bar-chart.js","names":["RechartsBarChart"],"sources":["../../src/components/bar-chart.tsx"],"sourcesContent":["import * as React from 'react'\n\nimport { Bar, CartesianGrid, Legend, BarChart as RechartsBarChart, Tooltip, XAxis, YAxis } from 'recharts'\n\nimport { cn } from '../lib/utils'\nimport {\n type ChartConfig,\n ChartContainer,\n ChartLegendContent,\n type ChartLegendContentProps,\n ChartTooltipContent,\n type ChartTooltipContentProps\n} from './chart'\n\nconst DEFAULT_PALETTE = [\n 'var(--chart-1)',\n 'var(--chart-2)',\n 'var(--chart-3)',\n 'var(--chart-4)',\n 'var(--chart-5)'\n] as const\n\nexport type BarChartSeries = {\n name: string\n label?: string\n color?: string\n}\n\nexport type BarChartType = 'default' | 'stacked' | 'percent'\nexport type BarChartOrientation = 'vertical' | 'horizontal'\nexport type BarChartGridAxis = 'none' | 'x' | 'y' | 'xy'\n\nexport type BarChartProps = Omit<React.ComponentProps<'div'>, 'children'> & {\n data: Array<Record<string, unknown>>\n series: BarChartSeries[]\n dataKey: string\n type?: BarChartType\n orientation?: BarChartOrientation\n withXAxis?: boolean\n withYAxis?: boolean\n gridAxis?: BarChartGridAxis\n withTooltip?: boolean\n withLegend?: boolean\n barSize?: number\n radius?: number | [number, number, number, number]\n unit?: string\n animationDuration?: number\n tooltipProps?: ChartTooltipContentProps\n legendProps?: ChartLegendContentProps\n}\n\nfunction buildConfig(series: BarChartSeries[]): ChartConfig {\n return series.reduce<ChartConfig>((acc, item, index) => {\n acc[item.name] = {\n label: item.label ?? item.name,\n color: item.color ?? DEFAULT_PALETTE[index % DEFAULT_PALETTE.length]\n }\n return acc\n }, {})\n}\n\nfunction BarChart({\n className,\n data,\n series,\n dataKey,\n type = 'default',\n orientation = 'vertical',\n withXAxis = true,\n withYAxis = true,\n gridAxis = 'x',\n withTooltip = true,\n withLegend = false,\n barSize,\n radius = 4,\n unit,\n animationDuration,\n tooltipProps,\n legendProps,\n ...props\n}: BarChartProps) {\n const config = React.useMemo(() => buildConfig(series), [series])\n const stackId = type === 'default' ? undefined : 'stack'\n const stackOffset = type === 'percent' ? 'expand' : undefined\n const isHorizontal = orientation === 'horizontal'\n\n const categoryAxisProps = {\n dataKey,\n tickLine: false,\n axisLine: false,\n tickMargin: 8\n } as const\n\n const valueTickFormatter =\n type === 'percent'\n ? (value: number) => `${Math.round(value * 100)}%`\n : unit\n ? (value: number) => `${value}${unit}`\n : undefined\n\n return (\n <ChartContainer data-slot=\"bar-chart\" className={cn('w-full', className)} config={config} {...props}>\n <RechartsBarChart data={data} stackOffset={stackOffset} layout={isHorizontal ? 'vertical' : 'horizontal'}>\n {gridAxis !== 'none' && (\n <CartesianGrid\n vertical={gridAxis === 'y' || gridAxis === 'xy'}\n horizontal={gridAxis === 'x' || gridAxis === 'xy'}\n />\n )}\n {withXAxis &&\n (isHorizontal ? (\n <XAxis type=\"number\" tickLine={false} axisLine={false} tickMargin={8} tickFormatter={valueTickFormatter} />\n ) : (\n <XAxis type=\"category\" {...categoryAxisProps} />\n ))}\n {withYAxis &&\n (isHorizontal ? (\n <YAxis type=\"category\" {...categoryAxisProps} />\n ) : (\n <YAxis type=\"number\" tickLine={false} axisLine={false} tickMargin={8} tickFormatter={valueTickFormatter} />\n ))}\n {withTooltip && <Tooltip cursor={false} content={<ChartTooltipContent {...tooltipProps} />} />}\n {withLegend && <Legend content={<ChartLegendContent {...legendProps} />} />}\n {series.map((item) => (\n <Bar\n key={item.name}\n dataKey={item.name}\n stackId={stackId}\n fill={`var(--color-${item.name})`}\n radius={radius}\n barSize={barSize}\n animationDuration={animationDuration}\n isAnimationActive={animationDuration !== 0}\n />\n ))}\n </RechartsBarChart>\n </ChartContainer>\n )\n}\n\nexport { BarChart }\n"],"mappings":"wVAcA,MAAM,EAAkB,CACtB,iBACA,iBACA,iBACA,iBACA,gBACF,EA+BA,SAAS,YAAY,EAAuC,CAC1D,OAAO,EAAO,QAAqB,EAAK,EAAM,KAC5C,EAAI,EAAK,MAAQ,CACf,MAAO,EAAK,OAAS,EAAK,KAC1B,MAAO,EAAK,OAAS,EAAgB,EAAQ,EAAgB,OAC/D,EACO,GACN,CAAC,CAAC,CACP,CAEA,SAAS,SAAS,CAChB,YACA,OACA,SACA,UACA,OAAO,UACP,cAAc,WACd,YAAY,GACZ,YAAY,GACZ,WAAW,IACX,cAAc,GACd,aAAa,GACb,UACA,SAAS,EACT,OACA,oBACA,eACA,cACA,GAAG,GACa,CAChB,IAAM,EAAS,EAAM,YAAc,YAAY,CAAM,EAAG,CAAC,CAAM,CAAC,EAC1D,EAAU,IAAS,UAAY,IAAA,GAAY,QAC3C,EAAc,IAAS,UAAY,SAAW,IAAA,GAC9C,EAAe,IAAgB,aAE/B,EAAoB,CACxB,UACA,SAAU,GACV,SAAU,GACV,WAAY,CACd,EAEM,EACJ,IAAS,UACJ,GAAkB,GAAG,KAAK,MAAM,EAAQ,GAAG,EAAE,GAC9C,EACG,GAAkB,GAAG,IAAQ,IAC9B,IAAA,GAER,OACE,EAAC,EAAD,CAAgB,YAAU,YAAY,UAAW,EAAG,SAAU,CAAS,EAAW,SAAQ,GAAI,WAC5F,EAACA,EAAD,CAAwB,OAAmB,cAAa,OAAQ,EAAe,WAAa,sBAA5F,CACG,IAAa,QACZ,EAAC,EAAD,CACE,SAAU,IAAa,KAAO,IAAa,KAC3C,WAAY,IAAa,KAAO,IAAa,IAC9C,CAAA,EAEF,IACE,EACC,EAAC,EAAD,CAAO,KAAK,SAAS,SAAU,GAAO,SAAU,GAAO,WAAY,EAAG,cAAe,CAAqB,CAAA,EAE1G,EAAC,EAAD,CAAO,KAAK,WAAW,GAAI,CAAoB,CAAA,GAElD,IACE,EACC,EAAC,EAAD,CAAO,KAAK,WAAW,GAAI,CAAoB,CAAA,EAE/C,EAAC,EAAD,CAAO,KAAK,SAAS,SAAU,GAAO,SAAU,GAAO,WAAY,EAAG,cAAe,CAAqB,CAAA,GAE7G,GAAe,EAAC,EAAD,CAAS,OAAQ,GAAO,QAAS,EAAC,EAAD,CAAqB,GAAI,CAAe,CAAA,CAAI,CAAA,EAC5F,GAAc,EAAC,EAAD,CAAQ,QAAS,EAAC,EAAD,CAAoB,GAAI,CAAc,CAAA,CAAI,CAAA,EACzE,EAAO,IAAK,GACX,EAAC,EAAD,CAEE,QAAS,EAAK,KACL,UACT,KAAM,eAAe,EAAK,KAAK,GACvB,SACC,UACU,oBACnB,kBAAmB,IAAsB,CAC1C,EARM,EAAK,IAQX,CACF,CACe,GACJ,CAAA,CAEpB"}
1
+ {"version":3,"file":"bar-chart.js","names":["RechartsBarChart"],"sources":["../../src/components/bar-chart.tsx"],"sourcesContent":["import * as React from 'react'\n\nimport { Bar, CartesianGrid, Legend, BarChart as RechartsBarChart, Tooltip, XAxis, YAxis } from 'recharts'\n\nimport { cn } from '../lib/utils'\nimport {\n type ChartColorKey,\n type ChartConfig,\n ChartContainer,\n ChartLegendContent,\n type ChartLegendContentProps,\n ChartTooltipContent,\n type ChartTooltipContentProps,\n DEFAULT_CHART_PALETTE,\n resolveChartColor\n} from './chart'\n\nexport type BarChartSeries = {\n name: string\n label?: string\n color?: string\n colorKey?: ChartColorKey\n}\n\nexport type BarChartType = 'default' | 'stacked' | 'percent'\nexport type BarChartOrientation = 'vertical' | 'horizontal'\nexport type BarChartGridAxis = 'none' | 'x' | 'y' | 'xy'\n\nexport type BarChartProps = Omit<React.ComponentProps<'div'>, 'children'> & {\n data: Array<Record<string, unknown>>\n series: BarChartSeries[]\n dataKey: string\n type?: BarChartType\n orientation?: BarChartOrientation\n withXAxis?: boolean\n withYAxis?: boolean\n gridAxis?: BarChartGridAxis\n withTooltip?: boolean\n withLegend?: boolean\n barSize?: number\n radius?: number | [number, number, number, number]\n unit?: string\n animationDuration?: number\n tooltipProps?: ChartTooltipContentProps\n legendProps?: ChartLegendContentProps\n barProps?: Partial<React.ComponentProps<typeof Bar>>\n}\n\nfunction buildConfig(series: BarChartSeries[]): ChartConfig {\n return series.reduce<ChartConfig>((acc, item, index) => {\n acc[item.name] = {\n label: item.label ?? item.name,\n color:\n item.color ?? resolveChartColor(item.colorKey) ?? DEFAULT_CHART_PALETTE[index % DEFAULT_CHART_PALETTE.length]\n }\n return acc\n }, {})\n}\n\nfunction BarChart({\n className,\n data,\n series,\n dataKey,\n type = 'default',\n orientation = 'vertical',\n withXAxis = true,\n withYAxis = true,\n gridAxis = 'x',\n withTooltip = true,\n withLegend = false,\n barSize,\n radius = 4,\n unit,\n animationDuration,\n tooltipProps,\n legendProps,\n barProps,\n ...props\n}: BarChartProps) {\n const config = React.useMemo(() => buildConfig(series), [series])\n const stackId = type === 'default' ? undefined : 'stack'\n const stackOffset = type === 'percent' ? 'expand' : undefined\n const isHorizontal = orientation === 'horizontal'\n\n const categoryAxisProps = {\n dataKey,\n tickLine: false,\n axisLine: false,\n tickMargin: 8\n } as const\n\n const valueTickFormatter =\n type === 'percent'\n ? (value: number) => `${Math.round(value * 100)}%`\n : unit\n ? (value: number) => `${value}${unit}`\n : undefined\n\n return (\n <ChartContainer data-slot=\"bar-chart\" className={cn('w-full', className)} config={config} {...props}>\n <RechartsBarChart data={data} stackOffset={stackOffset} layout={isHorizontal ? 'vertical' : 'horizontal'}>\n {gridAxis !== 'none' && (\n <CartesianGrid\n vertical={gridAxis === 'y' || gridAxis === 'xy'}\n horizontal={gridAxis === 'x' || gridAxis === 'xy'}\n />\n )}\n {withXAxis &&\n (isHorizontal ? (\n <XAxis type=\"number\" tickLine={false} axisLine={false} tickMargin={8} tickFormatter={valueTickFormatter} />\n ) : (\n <XAxis type=\"category\" {...categoryAxisProps} />\n ))}\n {withYAxis &&\n (isHorizontal ? (\n <YAxis type=\"category\" {...categoryAxisProps} />\n ) : (\n <YAxis type=\"number\" tickLine={false} axisLine={false} tickMargin={8} tickFormatter={valueTickFormatter} />\n ))}\n {withTooltip && <Tooltip cursor={false} content={<ChartTooltipContent {...tooltipProps} />} />}\n {withLegend && <Legend content={<ChartLegendContent {...legendProps} />} />}\n {series.map((item) => (\n <Bar\n key={item.name}\n dataKey={item.name}\n stackId={stackId}\n fill={`var(--color-${item.name})`}\n radius={radius}\n barSize={barSize}\n animationDuration={animationDuration}\n isAnimationActive={animationDuration !== 0}\n {...barProps}\n />\n ))}\n </RechartsBarChart>\n </ChartContainer>\n )\n}\n\nexport { BarChart }\n"],"mappings":"qZAgDA,SAAS,YAAY,EAAuC,CAC1D,OAAO,EAAO,QAAqB,EAAK,EAAM,KAC5C,EAAI,EAAK,MAAQ,CACf,MAAO,EAAK,OAAS,EAAK,KAC1B,MACE,EAAK,OAAS,EAAkB,EAAK,QAAQ,GAAK,EAAsB,EAAQ,EAAsB,OAC1G,EACO,GACN,CAAC,CAAC,CACP,CAEA,SAAS,SAAS,CAChB,YACA,OACA,SACA,UACA,OAAO,UACP,cAAc,WACd,YAAY,GACZ,YAAY,GACZ,WAAW,IACX,cAAc,GACd,aAAa,GACb,UACA,SAAS,EACT,OACA,oBACA,eACA,cACA,WACA,GAAG,GACa,CAChB,IAAM,EAAS,EAAM,YAAc,YAAY,CAAM,EAAG,CAAC,CAAM,CAAC,EAC1D,EAAU,IAAS,UAAY,IAAA,GAAY,QAC3C,EAAc,IAAS,UAAY,SAAW,IAAA,GAC9C,EAAe,IAAgB,aAE/B,EAAoB,CACxB,UACA,SAAU,GACV,SAAU,GACV,WAAY,CACd,EAEM,EACJ,IAAS,UACJ,GAAkB,GAAG,KAAK,MAAM,EAAQ,GAAG,EAAE,GAC9C,EACG,GAAkB,GAAG,IAAQ,IAC9B,IAAA,GAER,OACE,EAAC,EAAD,CAAgB,YAAU,YAAY,UAAW,EAAG,SAAU,CAAS,EAAW,SAAQ,GAAI,WAC5F,EAACA,EAAD,CAAwB,OAAmB,cAAa,OAAQ,EAAe,WAAa,sBAA5F,CACG,IAAa,QACZ,EAAC,EAAD,CACE,SAAU,IAAa,KAAO,IAAa,KAC3C,WAAY,IAAa,KAAO,IAAa,IAC9C,CAAA,EAEF,IACE,EACC,EAAC,EAAD,CAAO,KAAK,SAAS,SAAU,GAAO,SAAU,GAAO,WAAY,EAAG,cAAe,CAAqB,CAAA,EAE1G,EAAC,EAAD,CAAO,KAAK,WAAW,GAAI,CAAoB,CAAA,GAElD,IACE,EACC,EAAC,EAAD,CAAO,KAAK,WAAW,GAAI,CAAoB,CAAA,EAE/C,EAAC,EAAD,CAAO,KAAK,SAAS,SAAU,GAAO,SAAU,GAAO,WAAY,EAAG,cAAe,CAAqB,CAAA,GAE7G,GAAe,EAAC,EAAD,CAAS,OAAQ,GAAO,QAAS,EAAC,EAAD,CAAqB,GAAI,CAAe,CAAA,CAAI,CAAA,EAC5F,GAAc,EAAC,EAAD,CAAQ,QAAS,EAAC,EAAD,CAAoB,GAAI,CAAc,CAAA,CAAI,CAAA,EACzE,EAAO,IAAK,GACX,EAAC,EAAD,CAEE,QAAS,EAAK,KACL,UACT,KAAM,eAAe,EAAK,KAAK,GACvB,SACC,UACU,oBACnB,kBAAmB,IAAsB,EACzC,GAAI,CACL,EATM,EAAK,IASX,CACF,CACe,GACJ,CAAA,CAEpB"}
@@ -1,4 +1,4 @@
1
- import { n as __name } from "../chunk-CHh1Zzun.js";
1
+ import { n as __name } from "../rolldown-runtime-Bdj-bS2b.js";
2
2
  import * as React from "react";
3
3
 
4
4
  //#region src/components/breadcrumb.d.ts
@@ -14,33 +14,33 @@ type BreadcrumbEllipsisProps = React.ComponentProps<'span'>;
14
14
  declare function Breadcrumb({
15
15
  className,
16
16
  ...props
17
- }: BreadcrumbProps): import("react/jsx-runtime").JSX.Element;
17
+ }: BreadcrumbProps): React.JSX.Element;
18
18
  declare function BreadcrumbList({
19
19
  className,
20
20
  ...props
21
- }: BreadcrumbListProps): import("react/jsx-runtime").JSX.Element;
21
+ }: BreadcrumbListProps): React.JSX.Element;
22
22
  declare function BreadcrumbItem({
23
23
  className,
24
24
  ...props
25
- }: BreadcrumbItemProps): import("react/jsx-runtime").JSX.Element;
25
+ }: BreadcrumbItemProps): React.JSX.Element;
26
26
  declare function BreadcrumbLink({
27
27
  asChild,
28
28
  className,
29
29
  ...props
30
- }: BreadcrumbLinkProps): import("react/jsx-runtime").JSX.Element;
30
+ }: BreadcrumbLinkProps): React.JSX.Element;
31
31
  declare function BreadcrumbPage({
32
32
  className,
33
33
  ...props
34
- }: BreadcrumbPageProps): import("react/jsx-runtime").JSX.Element;
34
+ }: BreadcrumbPageProps): React.JSX.Element;
35
35
  declare function BreadcrumbSeparator({
36
36
  children,
37
37
  className,
38
38
  ...props
39
- }: BreadcrumbSeparatorProps): import("react/jsx-runtime").JSX.Element;
39
+ }: BreadcrumbSeparatorProps): React.JSX.Element;
40
40
  declare function BreadcrumbEllipsis({
41
41
  className,
42
42
  ...props
43
- }: BreadcrumbEllipsisProps): import("react/jsx-runtime").JSX.Element;
43
+ }: BreadcrumbEllipsisProps): React.JSX.Element;
44
44
  //#endregion
45
45
  export { Breadcrumb, BreadcrumbEllipsis, BreadcrumbEllipsisProps, BreadcrumbItem, BreadcrumbItemProps, BreadcrumbLink, BreadcrumbLinkProps, BreadcrumbList, BreadcrumbListProps, BreadcrumbPage, BreadcrumbPageProps, BreadcrumbProps, BreadcrumbSeparator, BreadcrumbSeparatorProps };
46
46
  //# sourceMappingURL=breadcrumb.d.ts.map
@@ -1,2 +1,2 @@
1
- import"../chunk-CHh1Zzun.js";import{cn as e}from"../lib/utils.js";import{IconChevronRight as t,IconDots as n}from"@tabler/icons-react";import{Slot as r}from"radix-ui";import{jsx as i,jsxs as a}from"react/jsx-runtime";function Breadcrumb({className:t,...n}){return i(`nav`,{"aria-label":`breadcrumb`,"data-slot":`breadcrumb`,className:e(t),...n})}function BreadcrumbList({className:t,...n}){return i(`ol`,{"data-slot":`breadcrumb-list`,className:e(`flex flex-wrap items-center gap-1.5 text-sm wrap-break-word text-muted-foreground`,t),...n})}function BreadcrumbItem({className:t,...n}){return i(`li`,{"data-slot":`breadcrumb-item`,className:e(`inline-flex items-center gap-1`,t),...n})}function BreadcrumbLink({asChild:t,className:n,...a}){return i(t?r.Root:`a`,{"data-slot":`breadcrumb-link`,className:e(`transition-colors hover:text-foreground`,n),...a})}function BreadcrumbPage({className:t,...n}){return i(`span`,{"data-slot":`breadcrumb-page`,"aria-current":`page`,className:e(`font-normal text-foreground`,t),...n})}function BreadcrumbSeparator({children:n,className:r,...a}){return i(`li`,{"data-slot":`breadcrumb-separator`,role:`presentation`,"aria-hidden":`true`,className:e(`[&>svg]:size-3.5`,r),...a,children:n??i(t,{})})}function BreadcrumbEllipsis({className:t,...r}){return a(`span`,{"data-slot":`breadcrumb-ellipsis`,role:`presentation`,"aria-hidden":`true`,className:e(`flex size-5 items-center justify-center [&>svg]:size-4`,t),...r,children:[i(n,{}),i(`span`,{className:`sr-only`,children:`More`})]})}export{Breadcrumb,BreadcrumbEllipsis,BreadcrumbItem,BreadcrumbLink,BreadcrumbList,BreadcrumbPage,BreadcrumbSeparator};
1
+ import"../rolldown-runtime-Bdj-bS2b.js";import{cn as e}from"../lib/utils.js";import{IconChevronRight as t,IconDots as n}from"@tabler/icons-react";import{Slot as r}from"radix-ui";import{jsx as i,jsxs as a}from"react/jsx-runtime";function Breadcrumb({className:t,...n}){return i(`nav`,{"aria-label":`breadcrumb`,"data-slot":`breadcrumb`,className:e(t),...n})}function BreadcrumbList({className:t,...n}){return i(`ol`,{"data-slot":`breadcrumb-list`,className:e(`flex flex-wrap items-center gap-1.5 text-sm wrap-break-word text-muted-foreground`,t),...n})}function BreadcrumbItem({className:t,...n}){return i(`li`,{"data-slot":`breadcrumb-item`,className:e(`inline-flex items-center gap-1`,t),...n})}function BreadcrumbLink({asChild:t,className:n,...a}){return i(t?r.Root:`a`,{"data-slot":`breadcrumb-link`,className:e(`transition-colors hover:text-foreground`,n),...a})}function BreadcrumbPage({className:t,...n}){return i(`span`,{"data-slot":`breadcrumb-page`,"aria-current":`page`,className:e(`font-normal text-foreground`,t),...n})}function BreadcrumbSeparator({children:n,className:r,...a}){return i(`li`,{"data-slot":`breadcrumb-separator`,role:`presentation`,"aria-hidden":`true`,className:e(`[&>svg]:size-3.5`,r),...a,children:n??i(t,{})})}function BreadcrumbEllipsis({className:t,...r}){return a(`span`,{"data-slot":`breadcrumb-ellipsis`,role:`presentation`,"aria-hidden":`true`,className:e(`flex size-5 items-center justify-center [&>svg]:size-4`,t),...r,children:[i(n,{}),i(`span`,{className:`sr-only`,children:`More`})]})}export{Breadcrumb,BreadcrumbEllipsis,BreadcrumbItem,BreadcrumbLink,BreadcrumbList,BreadcrumbPage,BreadcrumbSeparator};
2
2
  //# sourceMappingURL=breadcrumb.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"breadcrumb.js","names":[],"sources":["../../src/components/breadcrumb.tsx"],"sourcesContent":["import type * as React from 'react'\n\nimport { IconChevronRight, IconDots } from '@tabler/icons-react'\nimport { Slot } from 'radix-ui'\n\nimport { cn } from '../lib/utils'\n\nexport type BreadcrumbProps = React.ComponentProps<'nav'>\n\nexport type BreadcrumbListProps = React.ComponentProps<'ol'>\n\nexport type BreadcrumbItemProps = React.ComponentProps<'li'>\n\nexport type BreadcrumbLinkProps = React.ComponentProps<'a'> & {\n asChild?: boolean\n}\n\nexport type BreadcrumbPageProps = React.ComponentProps<'span'>\n\nexport type BreadcrumbSeparatorProps = React.ComponentProps<'li'>\n\nexport type BreadcrumbEllipsisProps = React.ComponentProps<'span'>\n\nfunction Breadcrumb({ className, ...props }: BreadcrumbProps) {\n return <nav aria-label=\"breadcrumb\" data-slot=\"breadcrumb\" className={cn(className)} {...props} />\n}\n\nfunction BreadcrumbList({ className, ...props }: BreadcrumbListProps) {\n return (\n <ol\n data-slot=\"breadcrumb-list\"\n className={cn('flex flex-wrap items-center gap-1.5 text-sm wrap-break-word text-muted-foreground', className)}\n {...props}\n />\n )\n}\n\nfunction BreadcrumbItem({ className, ...props }: BreadcrumbItemProps) {\n return <li data-slot=\"breadcrumb-item\" className={cn('inline-flex items-center gap-1', className)} {...props} />\n}\n\nfunction BreadcrumbLink({ asChild, className, ...props }: BreadcrumbLinkProps) {\n const Comp = asChild ? Slot.Root : 'a'\n\n return (\n <Comp data-slot=\"breadcrumb-link\" className={cn('transition-colors hover:text-foreground', className)} {...props} />\n )\n}\n\nfunction BreadcrumbPage({ className, ...props }: BreadcrumbPageProps) {\n return (\n <span\n data-slot=\"breadcrumb-page\"\n aria-current=\"page\"\n className={cn('font-normal text-foreground', className)}\n {...props}\n />\n )\n}\n\nfunction BreadcrumbSeparator({ children, className, ...props }: BreadcrumbSeparatorProps) {\n return (\n <li\n data-slot=\"breadcrumb-separator\"\n role=\"presentation\"\n aria-hidden=\"true\"\n className={cn('[&>svg]:size-3.5', className)}\n {...props}\n >\n {children ?? <IconChevronRight />}\n </li>\n )\n}\n\nfunction BreadcrumbEllipsis({ className, ...props }: BreadcrumbEllipsisProps) {\n return (\n <span\n data-slot=\"breadcrumb-ellipsis\"\n role=\"presentation\"\n aria-hidden=\"true\"\n className={cn('flex size-5 items-center justify-center [&>svg]:size-4', className)}\n {...props}\n >\n <IconDots />\n <span className=\"sr-only\">More</span>\n </span>\n )\n}\n\nexport {\n Breadcrumb,\n BreadcrumbEllipsis,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator\n}\n"],"mappings":"yNAuBA,SAAS,WAAW,CAAE,YAAW,GAAG,GAA0B,CAC5D,OAAO,EAAC,MAAD,CAAK,aAAW,aAAa,YAAU,aAAa,UAAW,EAAG,CAAS,EAAG,GAAI,CAAQ,CAAA,CACnG,CAEA,SAAS,eAAe,CAAE,YAAW,GAAG,GAA8B,CACpE,OACE,EAAC,KAAD,CACE,YAAU,kBACV,UAAW,EAAG,oFAAqF,CAAS,EAC5G,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,eAAe,CAAE,YAAW,GAAG,GAA8B,CACpE,OAAO,EAAC,KAAD,CAAI,YAAU,kBAAkB,UAAW,EAAG,iCAAkC,CAAS,EAAG,GAAI,CAAQ,CAAA,CACjH,CAEA,SAAS,eAAe,CAAE,UAAS,YAAW,GAAG,GAA8B,CAG7E,OACE,EAHW,EAAU,EAAK,KAAO,IAGjC,CAAM,YAAU,kBAAkB,UAAW,EAAG,0CAA2C,CAAS,EAAG,GAAI,CAAQ,CAAA,CAEvH,CAEA,SAAS,eAAe,CAAE,YAAW,GAAG,GAA8B,CACpE,OACE,EAAC,OAAD,CACE,YAAU,kBACV,eAAa,OACb,UAAW,EAAG,8BAA+B,CAAS,EACtD,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,oBAAoB,CAAE,WAAU,YAAW,GAAG,GAAmC,CACxF,OACE,EAAC,KAAD,CACE,YAAU,uBACV,KAAK,eACL,cAAY,OACZ,UAAW,EAAG,mBAAoB,CAAS,EAC3C,GAAI,WAEH,GAAY,EAAC,EAAD,CAAmB,CAAA,CAC9B,CAAA,CAER,CAEA,SAAS,mBAAmB,CAAE,YAAW,GAAG,GAAkC,CAC5E,OACE,EAAC,OAAD,CACE,YAAU,sBACV,KAAK,eACL,cAAY,OACZ,UAAW,EAAG,yDAA0D,CAAS,EACjF,GAAI,WALN,CAOE,EAAC,EAAD,CAAW,CAAA,EACX,EAAC,OAAD,CAAM,UAAU,mBAAU,MAAU,CAAA,CAChC,GAEV"}
1
+ {"version":3,"file":"breadcrumb.js","names":[],"sources":["../../src/components/breadcrumb.tsx"],"sourcesContent":["import type * as React from 'react'\n\nimport { IconChevronRight, IconDots } from '@tabler/icons-react'\nimport { Slot } from 'radix-ui'\n\nimport { cn } from '../lib/utils'\n\nexport type BreadcrumbProps = React.ComponentProps<'nav'>\n\nexport type BreadcrumbListProps = React.ComponentProps<'ol'>\n\nexport type BreadcrumbItemProps = React.ComponentProps<'li'>\n\nexport type BreadcrumbLinkProps = React.ComponentProps<'a'> & {\n asChild?: boolean\n}\n\nexport type BreadcrumbPageProps = React.ComponentProps<'span'>\n\nexport type BreadcrumbSeparatorProps = React.ComponentProps<'li'>\n\nexport type BreadcrumbEllipsisProps = React.ComponentProps<'span'>\n\nfunction Breadcrumb({ className, ...props }: BreadcrumbProps) {\n return <nav aria-label=\"breadcrumb\" data-slot=\"breadcrumb\" className={cn(className)} {...props} />\n}\n\nfunction BreadcrumbList({ className, ...props }: BreadcrumbListProps) {\n return (\n <ol\n data-slot=\"breadcrumb-list\"\n className={cn('flex flex-wrap items-center gap-1.5 text-sm wrap-break-word text-muted-foreground', className)}\n {...props}\n />\n )\n}\n\nfunction BreadcrumbItem({ className, ...props }: BreadcrumbItemProps) {\n return <li data-slot=\"breadcrumb-item\" className={cn('inline-flex items-center gap-1', className)} {...props} />\n}\n\nfunction BreadcrumbLink({ asChild, className, ...props }: BreadcrumbLinkProps) {\n const Comp = asChild ? Slot.Root : 'a'\n\n return (\n <Comp data-slot=\"breadcrumb-link\" className={cn('transition-colors hover:text-foreground', className)} {...props} />\n )\n}\n\nfunction BreadcrumbPage({ className, ...props }: BreadcrumbPageProps) {\n return (\n <span\n data-slot=\"breadcrumb-page\"\n aria-current=\"page\"\n className={cn('font-normal text-foreground', className)}\n {...props}\n />\n )\n}\n\nfunction BreadcrumbSeparator({ children, className, ...props }: BreadcrumbSeparatorProps) {\n return (\n <li\n data-slot=\"breadcrumb-separator\"\n role=\"presentation\"\n aria-hidden=\"true\"\n className={cn('[&>svg]:size-3.5', className)}\n {...props}\n >\n {children ?? <IconChevronRight />}\n </li>\n )\n}\n\nfunction BreadcrumbEllipsis({ className, ...props }: BreadcrumbEllipsisProps) {\n return (\n <span\n data-slot=\"breadcrumb-ellipsis\"\n role=\"presentation\"\n aria-hidden=\"true\"\n className={cn('flex size-5 items-center justify-center [&>svg]:size-4', className)}\n {...props}\n >\n <IconDots />\n <span className=\"sr-only\">More</span>\n </span>\n )\n}\n\nexport {\n Breadcrumb,\n BreadcrumbEllipsis,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator\n}\n"],"mappings":"oOAuBA,SAAS,WAAW,CAAE,YAAW,GAAG,GAA0B,CAC5D,OAAO,EAAC,MAAD,CAAK,aAAW,aAAa,YAAU,aAAa,UAAW,EAAG,CAAS,EAAG,GAAI,CAAQ,CAAA,CACnG,CAEA,SAAS,eAAe,CAAE,YAAW,GAAG,GAA8B,CACpE,OACE,EAAC,KAAD,CACE,YAAU,kBACV,UAAW,EAAG,oFAAqF,CAAS,EAC5G,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,eAAe,CAAE,YAAW,GAAG,GAA8B,CACpE,OAAO,EAAC,KAAD,CAAI,YAAU,kBAAkB,UAAW,EAAG,iCAAkC,CAAS,EAAG,GAAI,CAAQ,CAAA,CACjH,CAEA,SAAS,eAAe,CAAE,UAAS,YAAW,GAAG,GAA8B,CAG7E,OACE,EAHW,EAAU,EAAK,KAAO,IAGjC,CAAM,YAAU,kBAAkB,UAAW,EAAG,0CAA2C,CAAS,EAAG,GAAI,CAAQ,CAAA,CAEvH,CAEA,SAAS,eAAe,CAAE,YAAW,GAAG,GAA8B,CACpE,OACE,EAAC,OAAD,CACE,YAAU,kBACV,eAAa,OACb,UAAW,EAAG,8BAA+B,CAAS,EACtD,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,oBAAoB,CAAE,WAAU,YAAW,GAAG,GAAmC,CACxF,OACE,EAAC,KAAD,CACE,YAAU,uBACV,KAAK,eACL,cAAY,OACZ,UAAW,EAAG,mBAAoB,CAAS,EAC3C,GAAI,WAEH,GAAY,EAAC,EAAD,CAAmB,CAAA,CAC9B,CAAA,CAER,CAEA,SAAS,mBAAmB,CAAE,YAAW,GAAG,GAAkC,CAC5E,OACE,EAAC,OAAD,CACE,YAAU,sBACV,KAAK,eACL,cAAY,OACZ,UAAW,EAAG,yDAA0D,CAAS,EACjF,GAAI,WALN,CAOE,EAAC,EAAD,CAAW,CAAA,EACX,EAAC,OAAD,CAAM,UAAU,mBAAU,MAAU,CAAA,CAChC,GAEV"}
@@ -1,4 +1,4 @@
1
- import { n as __name } from "../chunk-CHh1Zzun.js";
1
+ import { n as __name } from "../rolldown-runtime-Bdj-bS2b.js";
2
2
  import { Separator } from "./separator.js";
3
3
  import { VariantProps } from "class-variance-authority";
4
4
 
@@ -15,17 +15,17 @@ declare function ButtonGroup({
15
15
  className,
16
16
  orientation,
17
17
  ...props
18
- }: ButtonGroupProps): import("react/jsx-runtime").JSX.Element;
18
+ }: ButtonGroupProps): import("react").JSX.Element;
19
19
  declare function ButtonGroupText({
20
20
  className,
21
21
  asChild,
22
22
  ...props
23
- }: ButtonGroupTextProps): import("react/jsx-runtime").JSX.Element;
23
+ }: ButtonGroupTextProps): import("react").JSX.Element;
24
24
  declare function ButtonGroupSeparator({
25
25
  className,
26
26
  orientation,
27
27
  ...props
28
- }: ButtonGroupSeparatorProps): import("react/jsx-runtime").JSX.Element;
28
+ }: ButtonGroupSeparatorProps): import("react").JSX.Element;
29
29
  //#endregion
30
30
  export { ButtonGroup, ButtonGroupProps, ButtonGroupSeparator, ButtonGroupSeparatorProps, ButtonGroupText, ButtonGroupTextProps, buttonGroupVariants };
31
31
  //# sourceMappingURL=button-group.d.ts.map
@@ -1,2 +1,2 @@
1
- import"../chunk-CHh1Zzun.js";import{cn as e}from"../lib/utils.js";import{Separator as t}from"./separator.js";import{Slot as n}from"radix-ui";import{jsx as r}from"react/jsx-runtime";import{cva as i}from"class-variance-authority";const a=i(`flex w-fit items-stretch *:focus-visible:relative *:focus-visible:z-10 has-[>[data-slot=button-group]]:gap-2 has-[select[aria-hidden=true]:last-child]:[&>[data-slot=select-trigger]:last-of-type]:rounded-r-lg [&>[data-slot=select-trigger]:not([class*='w-'])]:w-fit [&>input]:flex-1`,{variants:{orientation:{horizontal:`[&>*:not(:first-child)]:rounded-l-none [&>*:not(:first-child)]:border-l-0 [&>*:not(:last-child)]:rounded-r-none [&>[data-slot]:not(:has(~[data-slot]))]:rounded-r-lg!`,vertical:`flex-col [&>*:not(:first-child)]:rounded-t-none [&>*:not(:first-child)]:border-t-0 [&>*:not(:last-child)]:rounded-b-none [&>[data-slot]:not(:has(~[data-slot]))]:rounded-b-lg!`}},defaultVariants:{orientation:`horizontal`}});function ButtonGroup({className:t,orientation:n,...i}){return r(`div`,{"data-slot":`button-group`,"data-orientation":n,className:e(a({orientation:n}),t),...i})}function ButtonGroupText({className:t,asChild:i=!1,...a}){return r(i?n.Root:`div`,{className:e(`flex items-center gap-2 rounded-lg border bg-muted px-2.5 text-sm font-medium [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4`,t),...a})}function ButtonGroupSeparator({className:n,orientation:i=`vertical`,...a}){return r(t,{"data-slot":`button-group-separator`,orientation:i,className:e(`relative self-stretch bg-input data-horizontal:mx-px data-horizontal:w-auto data-vertical:my-px data-vertical:h-auto`,n),...a})}export{ButtonGroup,ButtonGroupSeparator,ButtonGroupText,a as buttonGroupVariants};
1
+ import"../rolldown-runtime-Bdj-bS2b.js";import{cn as e}from"../lib/utils.js";import{Separator as t}from"./separator.js";import{Slot as n}from"radix-ui";import{jsx as r}from"react/jsx-runtime";import{cva as i}from"class-variance-authority";const a=i(`flex w-fit items-stretch *:focus-visible:relative *:focus-visible:z-10 has-[>[data-slot=button-group]]:gap-2 has-[select[aria-hidden=true]:last-child]:[&>[data-slot=select-trigger]:last-of-type]:rounded-r-lg [&>[data-slot=select-trigger]:not([class*='w-'])]:w-fit [&>input]:flex-1`,{variants:{orientation:{horizontal:`[&>*:not(:first-child)]:rounded-l-none [&>*:not(:first-child)]:border-l-0 [&>*:not(:last-child)]:rounded-r-none [&>[data-slot]:not(:has(~[data-slot]))]:rounded-r-lg!`,vertical:`flex-col [&>*:not(:first-child)]:rounded-t-none [&>*:not(:first-child)]:border-t-0 [&>*:not(:last-child)]:rounded-b-none [&>[data-slot]:not(:has(~[data-slot]))]:rounded-b-lg!`}},defaultVariants:{orientation:`horizontal`}});function ButtonGroup({className:t,orientation:n,...i}){return r(`div`,{"data-slot":`button-group`,"data-orientation":n,className:e(a({orientation:n}),t),...i})}function ButtonGroupText({className:t,asChild:i=!1,...a}){return r(i?n.Root:`div`,{className:e(`flex items-center gap-2 rounded-lg border bg-muted px-2.5 text-sm font-medium [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4`,t),...a})}function ButtonGroupSeparator({className:n,orientation:i=`vertical`,...a}){return r(t,{"data-slot":`button-group-separator`,orientation:i,className:e(`relative self-stretch bg-input data-horizontal:mx-px data-horizontal:w-auto data-vertical:my-px data-vertical:h-auto`,n),...a})}export{ButtonGroup,ButtonGroupSeparator,ButtonGroupText,a as buttonGroupVariants};
2
2
  //# sourceMappingURL=button-group.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"button-group.js","names":["Separator"],"sources":["../../src/components/button-group.tsx"],"sourcesContent":["import { cva, type VariantProps } from 'class-variance-authority'\nimport { Slot } from 'radix-ui'\n\nimport { cn } from '../lib/utils'\nimport { Separator } from './separator'\n\nconst buttonGroupVariants = cva(\n \"flex w-fit items-stretch *:focus-visible:relative *:focus-visible:z-10 has-[>[data-slot=button-group]]:gap-2 has-[select[aria-hidden=true]:last-child]:[&>[data-slot=select-trigger]:last-of-type]:rounded-r-lg [&>[data-slot=select-trigger]:not([class*='w-'])]:w-fit [&>input]:flex-1\",\n {\n variants: {\n orientation: {\n horizontal:\n '[&>*:not(:first-child)]:rounded-l-none [&>*:not(:first-child)]:border-l-0 [&>*:not(:last-child)]:rounded-r-none [&>[data-slot]:not(:has(~[data-slot]))]:rounded-r-lg!',\n vertical:\n 'flex-col [&>*:not(:first-child)]:rounded-t-none [&>*:not(:first-child)]:border-t-0 [&>*:not(:last-child)]:rounded-b-none [&>[data-slot]:not(:has(~[data-slot]))]:rounded-b-lg!'\n }\n },\n defaultVariants: {\n orientation: 'horizontal'\n }\n }\n)\n\nexport type ButtonGroupProps = React.ComponentProps<'div'> & VariantProps<typeof buttonGroupVariants>\n\nexport type ButtonGroupTextProps = React.ComponentProps<'div'> & {\n asChild?: boolean\n}\n\nexport type ButtonGroupSeparatorProps = React.ComponentProps<typeof Separator>\n\nfunction ButtonGroup({ className, orientation, ...props }: ButtonGroupProps) {\n return (\n <div\n data-slot=\"button-group\"\n data-orientation={orientation}\n className={cn(buttonGroupVariants({ orientation }), className)}\n {...props}\n />\n )\n}\n\nfunction ButtonGroupText({ className, asChild = false, ...props }: ButtonGroupTextProps) {\n const Comp = asChild ? Slot.Root : 'div'\n\n return (\n <Comp\n className={cn(\n \"flex items-center gap-2 rounded-lg border bg-muted px-2.5 text-sm font-medium [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction ButtonGroupSeparator({ className, orientation = 'vertical', ...props }: ButtonGroupSeparatorProps) {\n return (\n <Separator\n data-slot=\"button-group-separator\"\n orientation={orientation}\n className={cn(\n 'relative self-stretch bg-input data-horizontal:mx-px data-horizontal:w-auto data-vertical:my-px data-vertical:h-auto',\n className\n )}\n {...props}\n />\n )\n}\n\nexport { ButtonGroup, ButtonGroupSeparator, ButtonGroupText, buttonGroupVariants }\n"],"mappings":"oOAMA,MAAM,EAAsB,EAC1B,2RACA,CACE,SAAU,CACR,YAAa,CACX,WACE,wKACF,SACE,gLACJ,CACF,EACA,gBAAiB,CACf,YAAa,YACf,CACF,CACF,EAUA,SAAS,YAAY,CAAE,YAAW,cAAa,GAAG,GAA2B,CAC3E,OACE,EAAC,MAAD,CACE,YAAU,eACV,mBAAkB,EAClB,UAAW,EAAG,EAAoB,CAAE,aAAY,CAAC,EAAG,CAAS,EAC7D,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,gBAAgB,CAAE,YAAW,UAAU,GAAO,GAAG,GAA+B,CAGvF,OACE,EAHW,EAAU,EAAK,KAAO,MAGjC,CACE,UAAW,EACT,iJACA,CACF,EACA,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,qBAAqB,CAAE,YAAW,cAAc,WAAY,GAAG,GAAoC,CAC1G,OACE,EAACA,EAAD,CACE,YAAU,yBACG,cACb,UAAW,EACT,uHACA,CACF,EACA,GAAI,CACL,CAAA,CAEL"}
1
+ {"version":3,"file":"button-group.js","names":["Separator"],"sources":["../../src/components/button-group.tsx"],"sourcesContent":["import { cva, type VariantProps } from 'class-variance-authority'\nimport { Slot } from 'radix-ui'\n\nimport { cn } from '../lib/utils'\nimport { Separator } from './separator'\n\nconst buttonGroupVariants = cva(\n \"flex w-fit items-stretch *:focus-visible:relative *:focus-visible:z-10 has-[>[data-slot=button-group]]:gap-2 has-[select[aria-hidden=true]:last-child]:[&>[data-slot=select-trigger]:last-of-type]:rounded-r-lg [&>[data-slot=select-trigger]:not([class*='w-'])]:w-fit [&>input]:flex-1\",\n {\n variants: {\n orientation: {\n horizontal:\n '[&>*:not(:first-child)]:rounded-l-none [&>*:not(:first-child)]:border-l-0 [&>*:not(:last-child)]:rounded-r-none [&>[data-slot]:not(:has(~[data-slot]))]:rounded-r-lg!',\n vertical:\n 'flex-col [&>*:not(:first-child)]:rounded-t-none [&>*:not(:first-child)]:border-t-0 [&>*:not(:last-child)]:rounded-b-none [&>[data-slot]:not(:has(~[data-slot]))]:rounded-b-lg!'\n }\n },\n defaultVariants: {\n orientation: 'horizontal'\n }\n }\n)\n\nexport type ButtonGroupProps = React.ComponentProps<'div'> & VariantProps<typeof buttonGroupVariants>\n\nexport type ButtonGroupTextProps = React.ComponentProps<'div'> & {\n asChild?: boolean\n}\n\nexport type ButtonGroupSeparatorProps = React.ComponentProps<typeof Separator>\n\nfunction ButtonGroup({ className, orientation, ...props }: ButtonGroupProps) {\n return (\n <div\n data-slot=\"button-group\"\n data-orientation={orientation}\n className={cn(buttonGroupVariants({ orientation }), className)}\n {...props}\n />\n )\n}\n\nfunction ButtonGroupText({ className, asChild = false, ...props }: ButtonGroupTextProps) {\n const Comp = asChild ? Slot.Root : 'div'\n\n return (\n <Comp\n className={cn(\n \"flex items-center gap-2 rounded-lg border bg-muted px-2.5 text-sm font-medium [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction ButtonGroupSeparator({ className, orientation = 'vertical', ...props }: ButtonGroupSeparatorProps) {\n return (\n <Separator\n data-slot=\"button-group-separator\"\n orientation={orientation}\n className={cn(\n 'relative self-stretch bg-input data-horizontal:mx-px data-horizontal:w-auto data-vertical:my-px data-vertical:h-auto',\n className\n )}\n {...props}\n />\n )\n}\n\nexport { ButtonGroup, ButtonGroupSeparator, ButtonGroupText, buttonGroupVariants }\n"],"mappings":"+OAMA,MAAM,EAAsB,EAC1B,2RACA,CACE,SAAU,CACR,YAAa,CACX,WACE,wKACF,SACE,gLACJ,CACF,EACA,gBAAiB,CACf,YAAa,YACf,CACF,CACF,EAUA,SAAS,YAAY,CAAE,YAAW,cAAa,GAAG,GAA2B,CAC3E,OACE,EAAC,MAAD,CACE,YAAU,eACV,mBAAkB,EAClB,UAAW,EAAG,EAAoB,CAAE,aAAY,CAAC,EAAG,CAAS,EAC7D,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,gBAAgB,CAAE,YAAW,UAAU,GAAO,GAAG,GAA+B,CAGvF,OACE,EAHW,EAAU,EAAK,KAAO,MAGjC,CACE,UAAW,EACT,iJACA,CACF,EACA,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,qBAAqB,CAAE,YAAW,cAAc,WAAY,GAAG,GAAoC,CAC1G,OACE,EAACA,EAAD,CACE,YAAU,yBACG,cACb,UAAW,EACT,uHACA,CACF,EACA,GAAI,CACL,CAAA,CAEL"}
@@ -1,10 +1,10 @@
1
- import { n as __name } from "../chunk-CHh1Zzun.js";
1
+ import { n as __name } from "../rolldown-runtime-Bdj-bS2b.js";
2
2
  import { VariantProps } from "class-variance-authority";
3
3
  import * as React from "react";
4
4
 
5
5
  //#region src/components/button.d.ts
6
6
  declare const buttonVariants: (props?: ({
7
- variant?: "solid" | "outline" | "subtle" | "ghost" | "link" | "secondary" | null | undefined;
7
+ variant?: "solid" | "secondary" | "outline" | "subtle" | "ghost" | "link" | null | undefined;
8
8
  color?: "primary" | "brand" | "gray" | "zinc" | "red" | "yellow" | "blue" | "indigo" | "pink" | "green" | null | undefined;
9
9
  size?: "xs" | "sm" | "md" | "lg" | "xl" | "icon" | "icon-xs" | "icon-sm" | "icon-lg" | "icon-xl" | null | undefined;
10
10
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
@@ -22,7 +22,7 @@ declare function Button({
22
22
  disabled,
23
23
  loading,
24
24
  ...props
25
- }: ButtonProps): import("react/jsx-runtime").JSX.Element;
25
+ }: ButtonProps): React.JSX.Element;
26
26
  //#endregion
27
27
  export { Button, ButtonProps, buttonVariants };
28
28
  //# sourceMappingURL=button.d.ts.map
@@ -1,2 +1,2 @@
1
- import"../chunk-CHh1Zzun.js";import{cn as e}from"../lib/utils.js";import{buttonColorVariants as t}from"../lib/button.js";import{Spinner as n}from"./spinner.js";import{Slot as r}from"radix-ui";import{Fragment as i,jsx as a,jsxs as o}from"react/jsx-runtime";import{cva as s}from"class-variance-authority";const c=s(`focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 relative rounded-full border border-transparent bg-clip-padding text-sm font-medium focus-visible:ring-3 aria-invalid:ring-3 [&_svg:not([class*='size-'])]:size-4 inline-flex items-center justify-center whitespace-nowrap transition-all [&_svg]:transition-colors disabled:pointer-events-none disabled:opacity-50 disabled:data-[loading=true]:pointer-events-auto disabled:data-[loading=true]:cursor-not-allowed disabled:data-[loading=true]:opacity-100 [&_svg]:pointer-events-none shrink-0 [&_svg]:shrink-0 outline-none group/button select-none`,{variants:{variant:{solid:`bg-(--button-solid) text-(--button-solid-foreground) hover:bg-(--button-solid-hover) data-[loading=true]:hover:bg-(--button-solid)`,secondary:`border-border bg-background hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50`,outline:`border-(--button-outline-border) bg-transparent text-(--button-outline-foreground) hover:bg-(--button-solid) hover:text-(--button-solid-foreground) hover:[&_svg]:text-(--button-solid-foreground) data-[loading=true]:hover:bg-background data-[loading=true]:hover:text-(--button-outline-foreground) aria-expanded:bg-(--button-solid) aria-expanded:text-(--button-solid-foreground) aria-expanded:[&_svg]:text-(--button-solid-foreground)`,subtle:`bg-(--button-soft) text-(--button-soft-foreground) hover:bg-(--button-soft-hover) hover:text-(--button-soft-foreground) data-[loading=true]:hover:bg-(--button-soft) data-[loading=true]:hover:text-(--button-soft-foreground) aria-expanded:bg-(--button-soft-hover) aria-expanded:text-(--button-soft-foreground)`,ghost:`text-(--button-ghost-foreground) hover:bg-(--button-ghost-hover) hover:text-(--button-ghost-foreground) data-[loading=true]:hover:bg-transparent data-[loading=true]:hover:text-(--button-ghost-foreground) aria-expanded:bg-(--button-ghost-hover) aria-expanded:text-(--button-ghost-foreground)`,link:`text-(--button-link-foreground) underline-offset-4 hover:underline data-[loading=true]:hover:no-underline`},color:t,size:{xs:`h-7 gap-1 px-2 text-xs in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3`,sm:`h-8 gap-1 px-2.5 text-[0.8rem] in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5`,md:`h-9 gap-1.5 px-2.5 in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2`,lg:`h-10 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3`,xl:`h-11 gap-2 px-3 has-data-[icon=inline-end]:pr-4 has-data-[icon=inline-start]:pl-4`,icon:`size-9`,"icon-xs":`size-7 in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3`,"icon-sm":`size-8 in-data-[slot=button-group]:rounded-lg`,"icon-lg":`size-10`,"icon-xl":`size-11`}},defaultVariants:{variant:`solid`,color:`primary`,size:`md`}});function Button({children:t,className:s,variant:l=`solid`,color:u=`primary`,size:d=`md`,asChild:f=!1,disabled:p,loading:m=!1,...h}){return a(f?r.Root:`button`,{type:f?void 0:`button`,"data-slot":`button`,"data-variant":l,"data-color":u,"data-size":d,"data-loading":m,"aria-busy":m?!0:void 0,disabled:p||m,className:e(c({variant:l,color:u,size:d,className:s})),...h,children:m&&!f?o(i,{children:[a(`span`,{className:`invisible inline-flex items-center gap-[inherit]`,children:t}),a(`span`,{className:`absolute inset-0 inline-flex items-center justify-center`,children:a(n,{})})]}):m?a(n,{}):t})}export{Button,c as buttonVariants};
1
+ import"../rolldown-runtime-Bdj-bS2b.js";import{cn as e}from"../lib/utils.js";import{buttonColorVariants as t}from"../lib/button.js";import{Spinner as n}from"./spinner.js";import{Slot as r}from"radix-ui";import{Fragment as i,jsx as a,jsxs as o}from"react/jsx-runtime";import{cva as s}from"class-variance-authority";const c=s(`focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 relative rounded-full border border-transparent bg-clip-padding text-sm font-semibold focus-visible:ring-3 aria-invalid:ring-3 [&_svg:not([class*='size-'])]:size-4 inline-flex items-center justify-center whitespace-nowrap transition-all [&_svg]:transition-colors disabled:pointer-events-none disabled:opacity-50 disabled:data-[loading=true]:pointer-events-auto disabled:data-[loading=true]:cursor-not-allowed disabled:data-[loading=true]:opacity-100 [&_svg]:pointer-events-none shrink-0 [&_svg]:shrink-0 outline-none group/button select-none`,{variants:{variant:{solid:`bg-(--button-solid) text-(--button-solid-foreground) hover:bg-(--button-solid-hover) data-[loading=true]:hover:bg-(--button-solid)`,secondary:`border-border bg-background hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50`,outline:`border-(--button-outline-border) bg-transparent text-(--button-outline-foreground) hover:bg-(--button-solid) hover:text-(--button-solid-foreground) hover:[&_svg]:text-(--button-solid-foreground) data-[loading=true]:hover:bg-background data-[loading=true]:hover:text-(--button-outline-foreground) aria-expanded:bg-(--button-solid) aria-expanded:text-(--button-solid-foreground) aria-expanded:[&_svg]:text-(--button-solid-foreground)`,subtle:`bg-(--button-soft) text-(--button-soft-foreground) hover:bg-(--button-soft-hover) hover:text-(--button-soft-foreground) data-[loading=true]:hover:bg-(--button-soft) data-[loading=true]:hover:text-(--button-soft-foreground) aria-expanded:bg-(--button-soft-hover) aria-expanded:text-(--button-soft-foreground)`,ghost:`text-(--button-ghost-foreground) hover:bg-(--button-ghost-hover) hover:text-(--button-ghost-foreground) data-[loading=true]:hover:bg-transparent data-[loading=true]:hover:text-(--button-ghost-foreground) aria-expanded:bg-(--button-ghost-hover) aria-expanded:text-(--button-ghost-foreground)`,link:`text-(--button-link-foreground) underline-offset-4 hover:underline data-[loading=true]:hover:no-underline`},color:t,size:{xs:`h-7 gap-1 px-2 text-xs in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3`,sm:`h-8 gap-1 px-2.5 text-[0.8rem] in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5`,md:`h-9 gap-1.5 px-2.5 in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2`,lg:`h-10 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3`,xl:`h-11 gap-2 px-3 has-data-[icon=inline-end]:pr-4 has-data-[icon=inline-start]:pl-4`,icon:`size-9`,"icon-xs":`size-7 in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3`,"icon-sm":`size-8 in-data-[slot=button-group]:rounded-lg`,"icon-lg":`size-10`,"icon-xl":`size-11`}},defaultVariants:{variant:`solid`,color:`primary`,size:`md`}});function Button({children:t,className:s,variant:l=`solid`,color:u=`primary`,size:d=`md`,asChild:f=!1,disabled:p,loading:m=!1,...h}){return a(f?r.Root:`button`,{type:f?void 0:`button`,"data-slot":`button`,"data-variant":l,"data-color":u,"data-size":d,"data-loading":m,"aria-busy":m?!0:void 0,disabled:p||m,className:e(c({variant:l,color:u,size:d,className:s})),...h,children:m&&!f?o(i,{children:[a(`span`,{className:`invisible inline-flex items-center gap-[inherit]`,children:t}),a(`span`,{className:`absolute inset-0 inline-flex items-center justify-center`,children:a(n,{})})]}):m?a(n,{}):t})}export{Button,c as buttonVariants};
2
2
  //# sourceMappingURL=button.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"button.js","names":[],"sources":["../../src/components/button.tsx"],"sourcesContent":["import type * as React from 'react'\n\nimport { cva, type VariantProps } from 'class-variance-authority'\nimport { Slot } from 'radix-ui'\n\nimport { buttonColorVariants } from '../lib/button'\nimport { cn } from '../lib/utils'\nimport { Spinner } from './spinner'\n\nconst buttonVariants = cva(\n \"focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 relative rounded-full border border-transparent bg-clip-padding text-sm font-medium focus-visible:ring-3 aria-invalid:ring-3 [&_svg:not([class*='size-'])]:size-4 inline-flex items-center justify-center whitespace-nowrap transition-all [&_svg]:transition-colors disabled:pointer-events-none disabled:opacity-50 disabled:data-[loading=true]:pointer-events-auto disabled:data-[loading=true]:cursor-not-allowed disabled:data-[loading=true]:opacity-100 [&_svg]:pointer-events-none shrink-0 [&_svg]:shrink-0 outline-none group/button select-none\",\n {\n variants: {\n variant: {\n solid:\n 'bg-(--button-solid) text-(--button-solid-foreground) hover:bg-(--button-solid-hover) data-[loading=true]:hover:bg-(--button-solid)',\n secondary:\n 'border-border bg-background hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50',\n outline:\n 'border-(--button-outline-border) bg-transparent text-(--button-outline-foreground) hover:bg-(--button-solid) hover:text-(--button-solid-foreground) hover:[&_svg]:text-(--button-solid-foreground) data-[loading=true]:hover:bg-background data-[loading=true]:hover:text-(--button-outline-foreground) aria-expanded:bg-(--button-solid) aria-expanded:text-(--button-solid-foreground) aria-expanded:[&_svg]:text-(--button-solid-foreground)',\n subtle:\n 'bg-(--button-soft) text-(--button-soft-foreground) hover:bg-(--button-soft-hover) hover:text-(--button-soft-foreground) data-[loading=true]:hover:bg-(--button-soft) data-[loading=true]:hover:text-(--button-soft-foreground) aria-expanded:bg-(--button-soft-hover) aria-expanded:text-(--button-soft-foreground)',\n ghost:\n 'text-(--button-ghost-foreground) hover:bg-(--button-ghost-hover) hover:text-(--button-ghost-foreground) data-[loading=true]:hover:bg-transparent data-[loading=true]:hover:text-(--button-ghost-foreground) aria-expanded:bg-(--button-ghost-hover) aria-expanded:text-(--button-ghost-foreground)',\n link: 'text-(--button-link-foreground) underline-offset-4 hover:underline data-[loading=true]:hover:no-underline'\n },\n color: buttonColorVariants,\n size: {\n xs: \"h-7 gap-1 px-2 text-xs in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3\",\n sm: \"h-8 gap-1 px-2.5 text-[0.8rem] in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5\",\n md: 'h-9 gap-1.5 px-2.5 in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2',\n lg: 'h-10 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3',\n xl: 'h-11 gap-2 px-3 has-data-[icon=inline-end]:pr-4 has-data-[icon=inline-start]:pl-4',\n icon: 'size-9',\n 'icon-xs': \"size-7 in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3\",\n 'icon-sm': 'size-8 in-data-[slot=button-group]:rounded-lg',\n 'icon-lg': 'size-10',\n 'icon-xl': 'size-11'\n }\n },\n defaultVariants: {\n variant: 'solid',\n color: 'primary',\n size: 'md'\n }\n }\n)\n\nexport type ButtonProps = React.ComponentProps<'button'> &\n VariantProps<typeof buttonVariants> & {\n asChild?: boolean\n loading?: boolean\n }\n\nfunction Button({\n children,\n className,\n variant = 'solid',\n color = 'primary',\n size = 'md',\n asChild = false,\n disabled,\n loading = false,\n ...props\n}: ButtonProps) {\n const Comp = asChild ? Slot.Root : 'button'\n const isDisabled = disabled || loading\n\n return (\n <Comp\n type={!asChild ? 'button' : undefined}\n data-slot=\"button\"\n data-variant={variant}\n data-color={color}\n data-size={size}\n data-loading={loading}\n aria-busy={loading ? true : undefined}\n disabled={isDisabled}\n className={cn(buttonVariants({ variant, color, size, className }))}\n {...props}\n >\n {loading && !asChild ? (\n <>\n <span className=\"invisible inline-flex items-center gap-[inherit]\">{children}</span>\n <span className=\"absolute inset-0 inline-flex items-center justify-center\">\n <Spinner />\n </span>\n </>\n ) : loading ? (\n <Spinner />\n ) : (\n children\n )}\n </Comp>\n )\n}\n\nexport { Button, buttonVariants }\n"],"mappings":"+SASA,MAAM,EAAiB,EACrB,kuBACA,CACE,SAAU,CACR,QAAS,CACP,MACE,qIACF,UACE,kLACF,QACE,kbACF,OACE,sTACF,MACE,qSACF,KAAM,2GACR,EACA,MAAO,EACP,KAAM,CACJ,GAAI,2KACJ,GAAI,qLACJ,GAAI,8HACJ,GAAI,wFACJ,GAAI,oFACJ,KAAM,SACN,UAAW,qFACX,UAAW,gDACX,UAAW,UACX,UAAW,SACb,CACF,EACA,gBAAiB,CACf,QAAS,QACT,MAAO,UACP,KAAM,IACR,CACF,CACF,EAQA,SAAS,OAAO,CACd,WACA,YACA,UAAU,QACV,QAAQ,UACR,OAAO,KACP,UAAU,GACV,WACA,UAAU,GACV,GAAG,GACW,CAId,OACE,EAJW,EAAU,EAAK,KAAO,SAIjC,CACE,KAAO,EAAqB,IAAA,GAAX,SACjB,YAAU,SACV,eAAc,EACd,aAAY,EACZ,YAAW,EACX,eAAc,EACd,YAAW,EAAU,GAAO,IAAA,GAC5B,SAXe,GAAY,EAY3B,UAAW,EAAG,EAAe,CAAE,UAAS,QAAO,OAAM,WAAU,CAAC,CAAC,EACjE,GAAI,WAEH,GAAW,CAAC,EACX,EAAA,EAAA,CAAA,SAAA,CACE,EAAC,OAAD,CAAM,UAAU,mDAAoD,UAAe,CAAA,EACnF,EAAC,OAAD,CAAM,UAAU,oEACd,EAAC,EAAD,CAAU,CAAA,CACN,CAAA,CACN,CAAA,CAAA,EACA,EACF,EAAC,EAAD,CAAU,CAAA,EAEV,CAEE,CAAA,CAEV"}
1
+ {"version":3,"file":"button.js","names":[],"sources":["../../src/components/button.tsx"],"sourcesContent":["import type * as React from 'react'\n\nimport { cva, type VariantProps } from 'class-variance-authority'\nimport { Slot } from 'radix-ui'\n\nimport { buttonColorVariants } from '../lib/button'\nimport { cn } from '../lib/utils'\nimport { Spinner } from './spinner'\n\nconst buttonVariants = cva(\n \"focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 relative rounded-full border border-transparent bg-clip-padding text-sm font-semibold focus-visible:ring-3 aria-invalid:ring-3 [&_svg:not([class*='size-'])]:size-4 inline-flex items-center justify-center whitespace-nowrap transition-all [&_svg]:transition-colors disabled:pointer-events-none disabled:opacity-50 disabled:data-[loading=true]:pointer-events-auto disabled:data-[loading=true]:cursor-not-allowed disabled:data-[loading=true]:opacity-100 [&_svg]:pointer-events-none shrink-0 [&_svg]:shrink-0 outline-none group/button select-none\",\n {\n variants: {\n variant: {\n solid:\n 'bg-(--button-solid) text-(--button-solid-foreground) hover:bg-(--button-solid-hover) data-[loading=true]:hover:bg-(--button-solid)',\n secondary:\n 'border-border bg-background hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50',\n outline:\n 'border-(--button-outline-border) bg-transparent text-(--button-outline-foreground) hover:bg-(--button-solid) hover:text-(--button-solid-foreground) hover:[&_svg]:text-(--button-solid-foreground) data-[loading=true]:hover:bg-background data-[loading=true]:hover:text-(--button-outline-foreground) aria-expanded:bg-(--button-solid) aria-expanded:text-(--button-solid-foreground) aria-expanded:[&_svg]:text-(--button-solid-foreground)',\n subtle:\n 'bg-(--button-soft) text-(--button-soft-foreground) hover:bg-(--button-soft-hover) hover:text-(--button-soft-foreground) data-[loading=true]:hover:bg-(--button-soft) data-[loading=true]:hover:text-(--button-soft-foreground) aria-expanded:bg-(--button-soft-hover) aria-expanded:text-(--button-soft-foreground)',\n ghost:\n 'text-(--button-ghost-foreground) hover:bg-(--button-ghost-hover) hover:text-(--button-ghost-foreground) data-[loading=true]:hover:bg-transparent data-[loading=true]:hover:text-(--button-ghost-foreground) aria-expanded:bg-(--button-ghost-hover) aria-expanded:text-(--button-ghost-foreground)',\n link: 'text-(--button-link-foreground) underline-offset-4 hover:underline data-[loading=true]:hover:no-underline'\n },\n color: buttonColorVariants,\n size: {\n xs: \"h-7 gap-1 px-2 text-xs in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3\",\n sm: \"h-8 gap-1 px-2.5 text-[0.8rem] in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5\",\n md: 'h-9 gap-1.5 px-2.5 in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2',\n lg: 'h-10 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3',\n xl: 'h-11 gap-2 px-3 has-data-[icon=inline-end]:pr-4 has-data-[icon=inline-start]:pl-4',\n icon: 'size-9',\n 'icon-xs': \"size-7 in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3\",\n 'icon-sm': 'size-8 in-data-[slot=button-group]:rounded-lg',\n 'icon-lg': 'size-10',\n 'icon-xl': 'size-11'\n }\n },\n defaultVariants: {\n variant: 'solid',\n color: 'primary',\n size: 'md'\n }\n }\n)\n\nexport type ButtonProps = React.ComponentProps<'button'> &\n VariantProps<typeof buttonVariants> & {\n asChild?: boolean\n loading?: boolean\n }\n\nfunction Button({\n children,\n className,\n variant = 'solid',\n color = 'primary',\n size = 'md',\n asChild = false,\n disabled,\n loading = false,\n ...props\n}: ButtonProps) {\n const Comp = asChild ? Slot.Root : 'button'\n const isDisabled = disabled || loading\n\n return (\n <Comp\n type={!asChild ? 'button' : undefined}\n data-slot=\"button\"\n data-variant={variant}\n data-color={color}\n data-size={size}\n data-loading={loading}\n aria-busy={loading ? true : undefined}\n disabled={isDisabled}\n className={cn(buttonVariants({ variant, color, size, className }))}\n {...props}\n >\n {loading && !asChild ? (\n <>\n <span className=\"invisible inline-flex items-center gap-[inherit]\">{children}</span>\n <span className=\"absolute inset-0 inline-flex items-center justify-center\">\n <Spinner />\n </span>\n </>\n ) : loading ? (\n <Spinner />\n ) : (\n children\n )}\n </Comp>\n )\n}\n\nexport { Button, buttonVariants }\n"],"mappings":"0TASA,MAAM,EAAiB,EACrB,ouBACA,CACE,SAAU,CACR,QAAS,CACP,MACE,qIACF,UACE,kLACF,QACE,kbACF,OACE,sTACF,MACE,qSACF,KAAM,2GACR,EACA,MAAO,EACP,KAAM,CACJ,GAAI,2KACJ,GAAI,qLACJ,GAAI,8HACJ,GAAI,wFACJ,GAAI,oFACJ,KAAM,SACN,UAAW,qFACX,UAAW,gDACX,UAAW,UACX,UAAW,SACb,CACF,EACA,gBAAiB,CACf,QAAS,QACT,MAAO,UACP,KAAM,IACR,CACF,CACF,EAQA,SAAS,OAAO,CACd,WACA,YACA,UAAU,QACV,QAAQ,UACR,OAAO,KACP,UAAU,GACV,WACA,UAAU,GACV,GAAG,GACW,CAId,OACE,EAJW,EAAU,EAAK,KAAO,SAIjC,CACE,KAAO,EAAqB,IAAA,GAAX,SACjB,YAAU,SACV,eAAc,EACd,aAAY,EACZ,YAAW,EACX,eAAc,EACd,YAAW,EAAU,GAAO,IAAA,GAC5B,SAXe,GAAY,EAY3B,UAAW,EAAG,EAAe,CAAE,UAAS,QAAO,OAAM,WAAU,CAAC,CAAC,EACjE,GAAI,WAEH,GAAW,CAAC,EACX,EAAA,EAAA,CAAA,SAAA,CACE,EAAC,OAAD,CAAM,UAAU,mDAAoD,UAAe,CAAA,EACnF,EAAC,OAAD,CAAM,UAAU,oEACd,EAAC,EAAD,CAAU,CAAA,CACN,CAAA,CACN,CAAA,CAAA,EACA,EACF,EAAC,EAAD,CAAU,CAAA,EAEV,CAEE,CAAA,CAEV"}
@@ -1,4 +1,4 @@
1
- import { n as __name } from "../chunk-CHh1Zzun.js";
1
+ import { n as __name } from "../rolldown-runtime-Bdj-bS2b.js";
2
2
  import { Button } from "./button.js";
3
3
  import * as React from "react";
4
4
  import { DateRange, DayButton, DayPicker, Locale } from "react-day-picker";
@@ -21,14 +21,14 @@ declare function Calendar({
21
21
  formatters,
22
22
  components,
23
23
  ...props
24
- }: CalendarProps): import("react/jsx-runtime").JSX.Element;
24
+ }: CalendarProps): React.JSX.Element;
25
25
  declare function CalendarDayButton({
26
26
  className,
27
27
  day,
28
28
  modifiers,
29
29
  locale,
30
30
  ...props
31
- }: CalendarDayButtonProps): import("react/jsx-runtime").JSX.Element;
31
+ }: CalendarDayButtonProps): React.JSX.Element;
32
32
  //#endregion
33
33
  export { Calendar, CalendarDayButton, CalendarDayButtonProps, CalendarProps, type DateRange, locale };
34
34
  //# sourceMappingURL=calendar.d.ts.map
@@ -1,2 +1,2 @@
1
- import"../chunk-CHh1Zzun.js";import{cn as e}from"../lib/utils.js";import{Button as t,buttonVariants as n}from"./button.js";import{IconChevronDown as r,IconChevronLeft as i,IconChevronRight as a}from"@tabler/icons-react";import{jsx as o}from"react/jsx-runtime";import*as s from"react";import{DayPicker as c,getDefaultClassNames as l}from"react-day-picker";import*as u from"react-day-picker/locale";function Calendar({className:t,classNames:s,showOutsideDays:u=!0,captionLayout:d=`label`,buttonVariant:f=`ghost`,locale:p,formatters:m,components:h,...g}){let _=l();return o(c,{showOutsideDays:u,className:e(`group/calendar bg-background p-2 [--cell-radius:var(--radius-md)] [--cell-size:--spacing(7)] in-data-[slot=card-content]:bg-transparent in-data-[slot=popover-content]:bg-transparent`,String.raw`rtl:**:[.rdp-button\_next>svg]:rotate-180`,String.raw`rtl:**:[.rdp-button\_previous>svg]:rotate-180`,t),captionLayout:d,locale:p,formatters:{formatMonthDropdown:e=>e.toLocaleString(p?.code,{month:`short`}),...m},classNames:{root:e(`w-fit`,_.root),months:e(`relative flex gap-4`,_.months),month:e(`flex w-full flex-col gap-4`,_.month),nav:e(`absolute inset-x-0 top-0 flex w-full items-center justify-between gap-1`,_.nav),button_previous:e(n({variant:f}),`size-(--cell-size) p-0 select-none aria-disabled:opacity-50`,_.button_previous),button_next:e(n({variant:f}),`size-(--cell-size) p-0 select-none aria-disabled:opacity-50`,_.button_next),month_caption:e(`flex h-(--cell-size) w-full items-center justify-center px-(--cell-size)`,_.month_caption),dropdowns:e(`flex h-(--cell-size) w-full items-center justify-center gap-1.5 text-sm font-medium`,_.dropdowns),dropdown_root:e(`relative rounded-(--cell-radius)`,_.dropdown_root),dropdown:e(`absolute inset-0 bg-popover opacity-0`,_.dropdown),caption_label:e(`font-medium select-none`,d===`label`?`text-sm`:`flex items-center gap-1 rounded-(--cell-radius) text-sm [&>svg]:size-3.5 [&>svg]:text-muted-foreground`,_.caption_label),table:`w-full border-collapse`,weekdays:e(`flex`,_.weekdays),weekday:e(`flex-1 rounded-(--cell-radius) text-[0.8rem] font-normal text-muted-foreground select-none`,_.weekday),week:e(`mt-2 flex w-full`,_.week),week_number_header:e(`w-(--cell-size) text-xs font-normal text-muted-foreground select-none`,_.week_number_header),week_number:e(`text-xs font-normal tabular-nums text-muted-foreground select-none`,_.week_number),day:e(`group/day relative aspect-square h-full w-full rounded-(--cell-radius) p-0 text-center select-none [&:last-child[data-selected=true]_button]:rounded-r-(--cell-radius)`,g.showWeekNumber?`[&:nth-child(2)[data-selected=true]_button]:rounded-l-(--cell-radius)`:`[&:first-child[data-selected=true]_button]:rounded-l-(--cell-radius)`,_.day),range_start:e(`relative isolate z-0 rounded-l-(--cell-radius) bg-primary-50 after:absolute after:inset-y-0 after:right-0 after:w-4 after:bg-primary-50 dark:bg-primary-950 dark:after:bg-primary-950`,_.range_start),range_middle:e(`rounded-none`,_.range_middle),range_end:e(`relative isolate z-0 rounded-r-(--cell-radius) bg-primary-50 after:absolute after:inset-y-0 after:left-0 after:w-4 after:bg-primary-50 dark:bg-primary-950 dark:after:bg-primary-950`,_.range_end),today:e(`rounded-(--cell-radius) bg-muted text-foreground data-[selected=true]:rounded-none`,_.today),outside:e(`text-muted-foreground aria-selected:text-muted-foreground`,_.outside),disabled:e(`text-muted-foreground opacity-50`,_.disabled),hidden:e(`invisible`,_.hidden),...s},components:{Root:({className:t,rootRef:n,...r})=>o(`div`,{"data-slot":`calendar`,ref:n,className:e(t),...r}),Chevron:({className:t,orientation:n,...s})=>o(n===`left`?i:n===`right`?a:r,{className:e(`size-4`,t),...s}),DayButton:({...e})=>o(CalendarDayButton,{locale:p,...e}),WeekNumber:({children:e,...t})=>o(`td`,{...t,children:o(`div`,{className:`flex size-(--cell-size) items-center justify-center text-center text-xs font-normal tabular-nums`,children:e})}),...h},...g})}function CalendarDayButton({className:n,day:r,modifiers:i,locale:a,...c}){let u=l(),d=r.date.getDay()===0||r.date.getDay()===6,f=s.useRef(null);return s.useEffect(()=>{i.focused&&f.current?.focus()},[i.focused]),o(t,{ref:f,variant:`ghost`,size:`icon`,color:`zinc`,"data-day":r.date.toLocaleDateString(a?.code),"data-weekend":d,"data-selected-single":i.selected&&!i.range_start&&!i.range_end&&!i.range_middle,"data-range-start":i.range_start,"data-range-end":i.range_end,"data-range-middle":i.range_middle,className:e(`relative isolate z-10 flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 border-0 text-foreground leading-none font-normal`,`hover:bg-primary-50 hover:text-foreground dark:hover:bg-primary-950 dark:hover:text-foreground`,`group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-[3px] group-data-[focused=true]/day:ring-ring/50`,`data-[weekend=true]:text-destructive data-[weekend=true]:hover:bg-red-50 data-[weekend=true]:hover:text-destructive dark:data-[weekend=true]:hover:bg-red-950`,`data-[range-middle=true]:rounded-none data-[range-middle=true]:bg-primary-50 data-[range-middle=true]:text-foreground data-[range-middle=true]:hover:bg-primary-50 data-[range-middle=true]:hover:text-foreground dark:data-[range-middle=true]:bg-primary-950 dark:data-[range-middle=true]:hover:bg-primary-950`,`data-[range-middle=true]:data-[weekend=true]:text-destructive data-[range-middle=true]:data-[weekend=true]:hover:bg-red-50 data-[range-middle=true]:data-[weekend=true]:hover:text-destructive dark:data-[range-middle=true]:data-[weekend=true]:hover:bg-red-950`,`data-[range-end=true]:rounded-(--cell-radius) data-[range-end=true]:rounded-r-(--cell-radius) data-[range-end=true]:bg-primary-500 data-[range-end=true]:text-white data-[range-end=true]:hover:bg-primary-500 data-[range-end=true]:hover:text-white dark:data-[range-end=true]:hover:bg-primary-500`,`data-[range-end=true]:data-[weekend=true]:text-white data-[range-end=true]:data-[weekend=true]:hover:text-white`,`data-[range-start=true]:rounded-(--cell-radius) data-[range-start=true]:rounded-l-(--cell-radius) data-[range-start=true]:bg-primary-500 data-[range-start=true]:text-white data-[range-start=true]:hover:bg-primary-500 data-[range-start=true]:hover:text-white dark:data-[range-start=true]:hover:bg-primary-500`,`data-[range-start=true]:data-[weekend=true]:text-white data-[range-start=true]:data-[weekend=true]:hover:text-white`,`data-[selected-single=true]:bg-primary-500 data-[selected-single=true]:text-white data-[selected-single=true]:hover:bg-primary-500 data-[selected-single=true]:hover:text-white dark:data-[selected-single=true]:hover:bg-primary-500`,`data-[selected-single=true]:data-[weekend=true]:text-white data-[selected-single=true]:data-[weekend=true]:hover:text-white`,`[&>span]:text-xs [&>span]:opacity-70`,u.day,n),...c})}export{Calendar,CalendarDayButton,u as locale};
1
+ import"../rolldown-runtime-Bdj-bS2b.js";import{cn as e}from"../lib/utils.js";import{Button as t,buttonVariants as n}from"./button.js";import{IconChevronDown as r,IconChevronLeft as i,IconChevronRight as a}from"@tabler/icons-react";import{jsx as o}from"react/jsx-runtime";import*as s from"react";import{DayPicker as c,getDefaultClassNames as l}from"react-day-picker";import*as u from"react-day-picker/locale";function Calendar({className:t,classNames:s,showOutsideDays:u=!0,captionLayout:d=`label`,buttonVariant:f=`ghost`,locale:p,formatters:m,components:h,...g}){let _=l();return o(c,{showOutsideDays:u,className:e(`group/calendar bg-background p-2 [--cell-radius:var(--radius-md)] [--cell-size:--spacing(7)] in-data-[slot=card-content]:bg-transparent in-data-[slot=popover-content]:bg-transparent`,String.raw`rtl:**:[.rdp-button\_next>svg]:rotate-180`,String.raw`rtl:**:[.rdp-button\_previous>svg]:rotate-180`,t),captionLayout:d,locale:p,formatters:{formatMonthDropdown:e=>e.toLocaleString(p?.code,{month:`short`}),...m},classNames:{root:e(`w-fit`,_.root),months:e(`relative flex gap-4`,_.months),month:e(`flex w-full flex-col gap-4`,_.month),nav:e(`absolute inset-x-0 top-0 flex w-full items-center justify-between gap-1`,_.nav),button_previous:e(n({variant:f}),`size-(--cell-size) p-0 select-none aria-disabled:opacity-50`,_.button_previous),button_next:e(n({variant:f}),`size-(--cell-size) p-0 select-none aria-disabled:opacity-50`,_.button_next),month_caption:e(`flex h-(--cell-size) w-full items-center justify-center px-(--cell-size)`,_.month_caption),dropdowns:e(`flex h-(--cell-size) w-full items-center justify-center gap-1.5 text-sm font-medium`,_.dropdowns),dropdown_root:e(`relative rounded-(--cell-radius)`,_.dropdown_root),dropdown:e(`absolute inset-0 bg-popover opacity-0`,_.dropdown),caption_label:e(`font-medium select-none`,d===`label`?`text-sm`:`flex items-center gap-1 rounded-(--cell-radius) text-sm [&>svg]:size-3.5 [&>svg]:text-muted-foreground`,_.caption_label),month_grid:`w-full border-collapse`,weekdays:e(`flex`,_.weekdays),weekday:e(`flex-1 rounded-(--cell-radius) text-[0.8rem] font-normal text-muted-foreground select-none`,_.weekday),week:e(`mt-2 flex w-full`,_.week),week_number_header:e(`w-(--cell-size) text-xs font-normal text-muted-foreground select-none`,_.week_number_header),week_number:e(`text-xs font-normal tabular-nums text-muted-foreground select-none`,_.week_number),day:e(`group/day relative aspect-square h-full w-full rounded-(--cell-radius) p-0 text-center select-none [&:last-child[data-selected=true]_button]:rounded-r-(--cell-radius)`,g.showWeekNumber?`[&:nth-child(2)[data-selected=true]_button]:rounded-l-(--cell-radius)`:`[&:first-child[data-selected=true]_button]:rounded-l-(--cell-radius)`,_.day),range_start:e(`relative isolate z-0 rounded-l-(--cell-radius) bg-primary-50 after:absolute after:inset-y-0 after:right-0 after:w-4 after:bg-primary-50 dark:bg-primary-950 dark:after:bg-primary-950`,_.range_start),range_middle:e(`rounded-none`,_.range_middle),range_end:e(`relative isolate z-0 rounded-r-(--cell-radius) bg-primary-50 after:absolute after:inset-y-0 after:left-0 after:w-4 after:bg-primary-50 dark:bg-primary-950 dark:after:bg-primary-950`,_.range_end),today:e(`rounded-(--cell-radius) bg-muted text-foreground data-[selected=true]:rounded-none`,_.today),outside:e(`text-muted-foreground aria-selected:text-muted-foreground`,_.outside),disabled:e(`text-muted-foreground opacity-50`,_.disabled),hidden:e(`invisible`,_.hidden),...s},components:{Root:({className:t,rootRef:n,...r})=>o(`div`,{"data-slot":`calendar`,ref:n,className:e(t),...r}),Chevron:({className:t,orientation:n,...s})=>o(n===`left`?i:n===`right`?a:r,{className:e(`size-4`,t),...s}),DayButton:({...e})=>o(CalendarDayButton,{locale:p,...e}),WeekNumber:({children:e,...t})=>o(`td`,{...t,children:o(`div`,{className:`flex size-(--cell-size) items-center justify-center text-center text-xs font-normal tabular-nums`,children:e})}),...h},...g})}function CalendarDayButton({className:n,day:r,modifiers:i,locale:a,...c}){let u=l(),d=r.date.getDay()===0||r.date.getDay()===6,f=s.useRef(null);return s.useEffect(()=>{i.focused&&f.current?.focus()},[i.focused]),o(t,{ref:f,variant:`ghost`,size:`icon`,color:`zinc`,"data-day":r.date.toLocaleDateString(a?.code),"data-weekend":d,"data-selected-single":i.selected&&!i.range_start&&!i.range_end&&!i.range_middle,"data-range-start":i.range_start,"data-range-end":i.range_end,"data-range-middle":i.range_middle,className:e(`relative isolate z-10 flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 border-0 text-foreground leading-none font-normal`,`hover:bg-primary-50 hover:text-foreground dark:hover:bg-primary-950 dark:hover:text-foreground`,`group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-[3px] group-data-[focused=true]/day:ring-ring/50`,`data-[weekend=true]:text-destructive data-[weekend=true]:hover:bg-red-50 data-[weekend=true]:hover:text-destructive dark:data-[weekend=true]:hover:bg-red-950`,`data-[range-middle=true]:rounded-none data-[range-middle=true]:bg-primary-50 data-[range-middle=true]:text-foreground data-[range-middle=true]:hover:bg-primary-50 data-[range-middle=true]:hover:text-foreground dark:data-[range-middle=true]:bg-primary-950 dark:data-[range-middle=true]:hover:bg-primary-950`,`data-[range-middle=true]:data-[weekend=true]:text-destructive data-[range-middle=true]:data-[weekend=true]:hover:bg-red-50 data-[range-middle=true]:data-[weekend=true]:hover:text-destructive dark:data-[range-middle=true]:data-[weekend=true]:hover:bg-red-950`,`data-[range-end=true]:rounded-(--cell-radius) data-[range-end=true]:rounded-r-(--cell-radius) data-[range-end=true]:bg-primary-500 data-[range-end=true]:text-white data-[range-end=true]:hover:bg-primary-500 data-[range-end=true]:hover:text-white dark:data-[range-end=true]:hover:bg-primary-500`,`data-[range-end=true]:data-[weekend=true]:text-white data-[range-end=true]:data-[weekend=true]:hover:text-white`,`data-[range-start=true]:rounded-(--cell-radius) data-[range-start=true]:rounded-l-(--cell-radius) data-[range-start=true]:bg-primary-500 data-[range-start=true]:text-white data-[range-start=true]:hover:bg-primary-500 data-[range-start=true]:hover:text-white dark:data-[range-start=true]:hover:bg-primary-500`,`data-[range-start=true]:data-[weekend=true]:text-white data-[range-start=true]:data-[weekend=true]:hover:text-white`,`data-[selected-single=true]:bg-primary-500 data-[selected-single=true]:text-white data-[selected-single=true]:hover:bg-primary-500 data-[selected-single=true]:hover:text-white dark:data-[selected-single=true]:hover:bg-primary-500`,`data-[selected-single=true]:data-[weekend=true]:text-white data-[selected-single=true]:data-[weekend=true]:hover:text-white`,`[&>span]:text-xs [&>span]:opacity-70`,u.day,n),...c})}export{Calendar,CalendarDayButton,u as locale};
2
2
  //# sourceMappingURL=calendar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"calendar.js","names":[],"sources":["../../src/components/calendar.tsx"],"sourcesContent":["import * as React from 'react'\nimport { type DateRange, type DayButton, DayPicker, getDefaultClassNames, type Locale } from 'react-day-picker'\nimport * as locale from 'react-day-picker/locale'\n\nimport { IconChevronDown, IconChevronLeft, IconChevronRight } from '@tabler/icons-react'\n\nimport { cn } from '../lib/utils'\nimport { Button, buttonVariants } from './button'\n\nexport type CalendarProps = React.ComponentProps<typeof DayPicker> & {\n buttonVariant?: React.ComponentProps<typeof Button>['variant']\n}\n\nexport type CalendarDayButtonProps = Omit<React.ComponentProps<typeof DayButton>, 'color'> & {\n locale?: Partial<Locale>\n}\n\nfunction Calendar({\n className,\n classNames,\n showOutsideDays = true,\n captionLayout = 'label',\n buttonVariant = 'ghost',\n locale,\n formatters,\n components,\n ...props\n}: CalendarProps) {\n const defaultClassNames = getDefaultClassNames()\n\n return (\n <DayPicker\n showOutsideDays={showOutsideDays}\n className={cn(\n 'group/calendar bg-background p-2 [--cell-radius:var(--radius-md)] [--cell-size:--spacing(7)] in-data-[slot=card-content]:bg-transparent in-data-[slot=popover-content]:bg-transparent',\n String.raw`rtl:**:[.rdp-button\\_next>svg]:rotate-180`,\n String.raw`rtl:**:[.rdp-button\\_previous>svg]:rotate-180`,\n className\n )}\n captionLayout={captionLayout}\n locale={locale}\n formatters={{\n formatMonthDropdown: (date) => date.toLocaleString(locale?.code, { month: 'short' }),\n ...formatters\n }}\n classNames={{\n root: cn('w-fit', defaultClassNames.root),\n months: cn('relative flex gap-4', defaultClassNames.months),\n month: cn('flex w-full flex-col gap-4', defaultClassNames.month),\n nav: cn('absolute inset-x-0 top-0 flex w-full items-center justify-between gap-1', defaultClassNames.nav),\n button_previous: cn(\n buttonVariants({ variant: buttonVariant }),\n 'size-(--cell-size) p-0 select-none aria-disabled:opacity-50',\n defaultClassNames.button_previous\n ),\n button_next: cn(\n buttonVariants({ variant: buttonVariant }),\n 'size-(--cell-size) p-0 select-none aria-disabled:opacity-50',\n defaultClassNames.button_next\n ),\n month_caption: cn(\n 'flex h-(--cell-size) w-full items-center justify-center px-(--cell-size)',\n defaultClassNames.month_caption\n ),\n dropdowns: cn(\n 'flex h-(--cell-size) w-full items-center justify-center gap-1.5 text-sm font-medium',\n defaultClassNames.dropdowns\n ),\n dropdown_root: cn('relative rounded-(--cell-radius)', defaultClassNames.dropdown_root),\n dropdown: cn('absolute inset-0 bg-popover opacity-0', defaultClassNames.dropdown),\n caption_label: cn(\n 'font-medium select-none',\n captionLayout === 'label'\n ? 'text-sm'\n : 'flex items-center gap-1 rounded-(--cell-radius) text-sm [&>svg]:size-3.5 [&>svg]:text-muted-foreground',\n defaultClassNames.caption_label\n ),\n table: 'w-full border-collapse',\n weekdays: cn('flex', defaultClassNames.weekdays),\n weekday: cn(\n 'flex-1 rounded-(--cell-radius) text-[0.8rem] font-normal text-muted-foreground select-none',\n defaultClassNames.weekday\n ),\n week: cn('mt-2 flex w-full', defaultClassNames.week),\n week_number_header: cn(\n 'w-(--cell-size) text-xs font-normal text-muted-foreground select-none',\n defaultClassNames.week_number_header\n ),\n week_number: cn(\n 'text-xs font-normal tabular-nums text-muted-foreground select-none',\n defaultClassNames.week_number\n ),\n day: cn(\n 'group/day relative aspect-square h-full w-full rounded-(--cell-radius) p-0 text-center select-none [&:last-child[data-selected=true]_button]:rounded-r-(--cell-radius)',\n props.showWeekNumber\n ? '[&:nth-child(2)[data-selected=true]_button]:rounded-l-(--cell-radius)'\n : '[&:first-child[data-selected=true]_button]:rounded-l-(--cell-radius)',\n defaultClassNames.day\n ),\n range_start: cn(\n 'relative isolate z-0 rounded-l-(--cell-radius) bg-primary-50 after:absolute after:inset-y-0 after:right-0 after:w-4 after:bg-primary-50 dark:bg-primary-950 dark:after:bg-primary-950',\n defaultClassNames.range_start\n ),\n range_middle: cn('rounded-none', defaultClassNames.range_middle),\n range_end: cn(\n 'relative isolate z-0 rounded-r-(--cell-radius) bg-primary-50 after:absolute after:inset-y-0 after:left-0 after:w-4 after:bg-primary-50 dark:bg-primary-950 dark:after:bg-primary-950',\n defaultClassNames.range_end\n ),\n today: cn(\n 'rounded-(--cell-radius) bg-muted text-foreground data-[selected=true]:rounded-none',\n defaultClassNames.today\n ),\n outside: cn('text-muted-foreground aria-selected:text-muted-foreground', defaultClassNames.outside),\n disabled: cn('text-muted-foreground opacity-50', defaultClassNames.disabled),\n hidden: cn('invisible', defaultClassNames.hidden),\n ...classNames\n }}\n components={{\n Root: ({ className, rootRef, ...props }) => {\n return (\n <div data-slot=\"calendar\" ref={rootRef as React.Ref<HTMLDivElement>} className={cn(className)} {...props} />\n )\n },\n Chevron: ({ className, orientation, ...props }) => {\n if (orientation === 'left') {\n return <IconChevronLeft className={cn('size-4', className)} {...props} />\n }\n\n if (orientation === 'right') {\n return <IconChevronRight className={cn('size-4', className)} {...props} />\n }\n\n return <IconChevronDown className={cn('size-4', className)} {...props} />\n },\n DayButton: ({ ...props }) => <CalendarDayButton locale={locale} {...props} />,\n WeekNumber: ({ children, ...props }) => {\n return (\n <td {...props}>\n <div className=\"flex size-(--cell-size) items-center justify-center text-center text-xs font-normal tabular-nums\">\n {children}\n </div>\n </td>\n )\n },\n ...components\n }}\n {...props}\n />\n )\n}\n\nfunction CalendarDayButton({ className, day, modifiers, locale, ...props }: CalendarDayButtonProps) {\n const defaultClassNames = getDefaultClassNames()\n const isWeekend = day.date.getDay() === 0 || day.date.getDay() === 6\n\n const ref = React.useRef<HTMLButtonElement>(null)\n React.useEffect(() => {\n if (modifiers.focused) ref.current?.focus()\n }, [modifiers.focused])\n\n return (\n <Button\n ref={ref}\n variant=\"ghost\"\n size=\"icon\"\n color=\"zinc\"\n data-day={day.date.toLocaleDateString(locale?.code)}\n data-weekend={isWeekend}\n data-selected-single={\n modifiers.selected && !modifiers.range_start && !modifiers.range_end && !modifiers.range_middle\n }\n data-range-start={modifiers.range_start}\n data-range-end={modifiers.range_end}\n data-range-middle={modifiers.range_middle}\n className={cn(\n 'relative isolate z-10 flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 border-0 text-foreground leading-none font-normal',\n 'hover:bg-primary-50 hover:text-foreground dark:hover:bg-primary-950 dark:hover:text-foreground',\n 'group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-[3px] group-data-[focused=true]/day:ring-ring/50',\n 'data-[weekend=true]:text-destructive data-[weekend=true]:hover:bg-red-50 data-[weekend=true]:hover:text-destructive dark:data-[weekend=true]:hover:bg-red-950',\n 'data-[range-middle=true]:rounded-none data-[range-middle=true]:bg-primary-50 data-[range-middle=true]:text-foreground data-[range-middle=true]:hover:bg-primary-50 data-[range-middle=true]:hover:text-foreground dark:data-[range-middle=true]:bg-primary-950 dark:data-[range-middle=true]:hover:bg-primary-950',\n 'data-[range-middle=true]:data-[weekend=true]:text-destructive data-[range-middle=true]:data-[weekend=true]:hover:bg-red-50 data-[range-middle=true]:data-[weekend=true]:hover:text-destructive dark:data-[range-middle=true]:data-[weekend=true]:hover:bg-red-950',\n 'data-[range-end=true]:rounded-(--cell-radius) data-[range-end=true]:rounded-r-(--cell-radius) data-[range-end=true]:bg-primary-500 data-[range-end=true]:text-white data-[range-end=true]:hover:bg-primary-500 data-[range-end=true]:hover:text-white dark:data-[range-end=true]:hover:bg-primary-500',\n 'data-[range-end=true]:data-[weekend=true]:text-white data-[range-end=true]:data-[weekend=true]:hover:text-white',\n 'data-[range-start=true]:rounded-(--cell-radius) data-[range-start=true]:rounded-l-(--cell-radius) data-[range-start=true]:bg-primary-500 data-[range-start=true]:text-white data-[range-start=true]:hover:bg-primary-500 data-[range-start=true]:hover:text-white dark:data-[range-start=true]:hover:bg-primary-500',\n 'data-[range-start=true]:data-[weekend=true]:text-white data-[range-start=true]:data-[weekend=true]:hover:text-white',\n 'data-[selected-single=true]:bg-primary-500 data-[selected-single=true]:text-white data-[selected-single=true]:hover:bg-primary-500 data-[selected-single=true]:hover:text-white dark:data-[selected-single=true]:hover:bg-primary-500',\n 'data-[selected-single=true]:data-[weekend=true]:text-white data-[selected-single=true]:data-[weekend=true]:hover:text-white',\n '[&>span]:text-xs [&>span]:opacity-70',\n defaultClassNames.day,\n className\n )}\n {...props}\n />\n )\n}\n\nexport { Calendar, CalendarDayButton, type DateRange, locale }\n"],"mappings":"6YAiBA,SAAS,SAAS,CAChB,YACA,aACA,kBAAkB,GAClB,gBAAgB,QAChB,gBAAgB,QAChB,SACA,aACA,aACA,GAAG,GACa,CAChB,IAAM,EAAoB,EAAqB,EAE/C,OACE,EAAC,EAAD,CACmB,kBACjB,UAAW,EACT,wLACA,OAAO,GAAG,4CACV,OAAO,GAAG,gDACV,CACF,EACe,gBACP,SACR,WAAY,CACV,oBAAsB,GAAS,EAAK,eAAe,GAAQ,KAAM,CAAE,MAAO,OAAQ,CAAC,EACnF,GAAG,CACL,EACA,WAAY,CACV,KAAM,EAAG,QAAS,EAAkB,IAAI,EACxC,OAAQ,EAAG,sBAAuB,EAAkB,MAAM,EAC1D,MAAO,EAAG,6BAA8B,EAAkB,KAAK,EAC/D,IAAK,EAAG,0EAA2E,EAAkB,GAAG,EACxG,gBAAiB,EACf,EAAe,CAAE,QAAS,CAAc,CAAC,EACzC,8DACA,EAAkB,eACpB,EACA,YAAa,EACX,EAAe,CAAE,QAAS,CAAc,CAAC,EACzC,8DACA,EAAkB,WACpB,EACA,cAAe,EACb,2EACA,EAAkB,aACpB,EACA,UAAW,EACT,sFACA,EAAkB,SACpB,EACA,cAAe,EAAG,mCAAoC,EAAkB,aAAa,EACrF,SAAU,EAAG,wCAAyC,EAAkB,QAAQ,EAChF,cAAe,EACb,0BACA,IAAkB,QACd,UACA,yGACJ,EAAkB,aACpB,EACA,MAAO,yBACP,SAAU,EAAG,OAAQ,EAAkB,QAAQ,EAC/C,QAAS,EACP,6FACA,EAAkB,OACpB,EACA,KAAM,EAAG,mBAAoB,EAAkB,IAAI,EACnD,mBAAoB,EAClB,wEACA,EAAkB,kBACpB,EACA,YAAa,EACX,qEACA,EAAkB,WACpB,EACA,IAAK,EACH,yKACA,EAAM,eACF,wEACA,uEACJ,EAAkB,GACpB,EACA,YAAa,EACX,wLACA,EAAkB,WACpB,EACA,aAAc,EAAG,eAAgB,EAAkB,YAAY,EAC/D,UAAW,EACT,uLACA,EAAkB,SACpB,EACA,MAAO,EACL,qFACA,EAAkB,KACpB,EACA,QAAS,EAAG,4DAA6D,EAAkB,OAAO,EAClG,SAAU,EAAG,mCAAoC,EAAkB,QAAQ,EAC3E,OAAQ,EAAG,YAAa,EAAkB,MAAM,EAChD,GAAG,CACL,EACA,WAAY,CACV,MAAO,CAAE,YAAW,UAAS,GAAG,KAE5B,EAAC,MAAD,CAAK,YAAU,WAAW,IAAK,EAAsC,UAAW,EAAG,CAAS,EAAG,GAAI,CAAQ,CAAA,EAG/G,SAAU,CAAE,YAAW,cAAa,GAAG,KAE5B,EADL,IAAgB,OACV,EAGN,IAAgB,QACV,EAGF,EAPC,CAAiB,UAAW,EAAG,SAAU,CAAS,EAAG,GAAI,CAAQ,CAAA,EAS5E,WAAY,CAAE,GAAG,KAAY,EAAC,kBAAD,CAA2B,SAAQ,GAAI,CAAQ,CAAA,EAC5E,YAAa,CAAE,WAAU,GAAG,KAExB,EAAC,KAAD,CAAI,GAAI,WACN,EAAC,MAAD,CAAK,UAAU,mGACZ,UACE,CAAA,CACH,CAAA,EAGR,GAAG,CACL,EACA,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,kBAAkB,CAAE,YAAW,MAAK,YAAW,SAAQ,GAAG,GAAiC,CAClG,IAAM,EAAoB,EAAqB,EACzC,EAAY,EAAI,KAAK,OAAO,IAAM,GAAK,EAAI,KAAK,OAAO,IAAM,EAE7D,EAAM,EAAM,OAA0B,IAAI,EAKhD,OAJA,EAAM,cAAgB,CAChB,EAAU,SAAS,EAAI,SAAS,MAAM,CAC5C,EAAG,CAAC,EAAU,OAAO,CAAC,EAGpB,EAAC,EAAD,CACO,MACL,QAAQ,QACR,KAAK,OACL,MAAM,OACN,WAAU,EAAI,KAAK,mBAAmB,GAAQ,IAAI,EAClD,eAAc,EACd,uBACE,EAAU,UAAY,CAAC,EAAU,aAAe,CAAC,EAAU,WAAa,CAAC,EAAU,aAErF,mBAAkB,EAAU,YAC5B,iBAAgB,EAAU,UAC1B,oBAAmB,EAAU,aAC7B,UAAW,EACT,iJACA,iGACA,0MACA,gKACA,oTACA,oQACA,wSACA,kHACA,sTACA,sHACA,wOACA,8HACA,uCACA,EAAkB,IAClB,CACF,EACA,GAAI,CACL,CAAA,CAEL"}
1
+ {"version":3,"file":"calendar.js","names":[],"sources":["../../src/components/calendar.tsx"],"sourcesContent":["import * as React from 'react'\nimport { type DateRange, type DayButton, DayPicker, getDefaultClassNames, type Locale } from 'react-day-picker'\nimport * as locale from 'react-day-picker/locale'\n\nimport { IconChevronDown, IconChevronLeft, IconChevronRight } from '@tabler/icons-react'\n\nimport { cn } from '../lib/utils'\nimport { Button, buttonVariants } from './button'\n\nexport type CalendarProps = React.ComponentProps<typeof DayPicker> & {\n buttonVariant?: React.ComponentProps<typeof Button>['variant']\n}\n\nexport type CalendarDayButtonProps = Omit<React.ComponentProps<typeof DayButton>, 'color'> & {\n locale?: Partial<Locale>\n}\n\nfunction Calendar({\n className,\n classNames,\n showOutsideDays = true,\n captionLayout = 'label',\n buttonVariant = 'ghost',\n locale,\n formatters,\n components,\n ...props\n}: CalendarProps) {\n const defaultClassNames = getDefaultClassNames()\n\n return (\n <DayPicker\n showOutsideDays={showOutsideDays}\n className={cn(\n 'group/calendar bg-background p-2 [--cell-radius:var(--radius-md)] [--cell-size:--spacing(7)] in-data-[slot=card-content]:bg-transparent in-data-[slot=popover-content]:bg-transparent',\n String.raw`rtl:**:[.rdp-button\\_next>svg]:rotate-180`,\n String.raw`rtl:**:[.rdp-button\\_previous>svg]:rotate-180`,\n className\n )}\n captionLayout={captionLayout}\n locale={locale}\n formatters={{\n formatMonthDropdown: (date) => date.toLocaleString(locale?.code, { month: 'short' }),\n ...formatters\n }}\n classNames={{\n root: cn('w-fit', defaultClassNames.root),\n months: cn('relative flex gap-4', defaultClassNames.months),\n month: cn('flex w-full flex-col gap-4', defaultClassNames.month),\n nav: cn('absolute inset-x-0 top-0 flex w-full items-center justify-between gap-1', defaultClassNames.nav),\n button_previous: cn(\n buttonVariants({ variant: buttonVariant }),\n 'size-(--cell-size) p-0 select-none aria-disabled:opacity-50',\n defaultClassNames.button_previous\n ),\n button_next: cn(\n buttonVariants({ variant: buttonVariant }),\n 'size-(--cell-size) p-0 select-none aria-disabled:opacity-50',\n defaultClassNames.button_next\n ),\n month_caption: cn(\n 'flex h-(--cell-size) w-full items-center justify-center px-(--cell-size)',\n defaultClassNames.month_caption\n ),\n dropdowns: cn(\n 'flex h-(--cell-size) w-full items-center justify-center gap-1.5 text-sm font-medium',\n defaultClassNames.dropdowns\n ),\n dropdown_root: cn('relative rounded-(--cell-radius)', defaultClassNames.dropdown_root),\n dropdown: cn('absolute inset-0 bg-popover opacity-0', defaultClassNames.dropdown),\n caption_label: cn(\n 'font-medium select-none',\n captionLayout === 'label'\n ? 'text-sm'\n : 'flex items-center gap-1 rounded-(--cell-radius) text-sm [&>svg]:size-3.5 [&>svg]:text-muted-foreground',\n defaultClassNames.caption_label\n ),\n month_grid: 'w-full border-collapse',\n weekdays: cn('flex', defaultClassNames.weekdays),\n weekday: cn(\n 'flex-1 rounded-(--cell-radius) text-[0.8rem] font-normal text-muted-foreground select-none',\n defaultClassNames.weekday\n ),\n week: cn('mt-2 flex w-full', defaultClassNames.week),\n week_number_header: cn(\n 'w-(--cell-size) text-xs font-normal text-muted-foreground select-none',\n defaultClassNames.week_number_header\n ),\n week_number: cn(\n 'text-xs font-normal tabular-nums text-muted-foreground select-none',\n defaultClassNames.week_number\n ),\n day: cn(\n 'group/day relative aspect-square h-full w-full rounded-(--cell-radius) p-0 text-center select-none [&:last-child[data-selected=true]_button]:rounded-r-(--cell-radius)',\n props.showWeekNumber\n ? '[&:nth-child(2)[data-selected=true]_button]:rounded-l-(--cell-radius)'\n : '[&:first-child[data-selected=true]_button]:rounded-l-(--cell-radius)',\n defaultClassNames.day\n ),\n range_start: cn(\n 'relative isolate z-0 rounded-l-(--cell-radius) bg-primary-50 after:absolute after:inset-y-0 after:right-0 after:w-4 after:bg-primary-50 dark:bg-primary-950 dark:after:bg-primary-950',\n defaultClassNames.range_start\n ),\n range_middle: cn('rounded-none', defaultClassNames.range_middle),\n range_end: cn(\n 'relative isolate z-0 rounded-r-(--cell-radius) bg-primary-50 after:absolute after:inset-y-0 after:left-0 after:w-4 after:bg-primary-50 dark:bg-primary-950 dark:after:bg-primary-950',\n defaultClassNames.range_end\n ),\n today: cn(\n 'rounded-(--cell-radius) bg-muted text-foreground data-[selected=true]:rounded-none',\n defaultClassNames.today\n ),\n outside: cn('text-muted-foreground aria-selected:text-muted-foreground', defaultClassNames.outside),\n disabled: cn('text-muted-foreground opacity-50', defaultClassNames.disabled),\n hidden: cn('invisible', defaultClassNames.hidden),\n ...classNames\n }}\n components={{\n Root: ({ className, rootRef, ...props }) => {\n return (\n <div data-slot=\"calendar\" ref={rootRef as React.Ref<HTMLDivElement>} className={cn(className)} {...props} />\n )\n },\n Chevron: ({ className, orientation, ...props }) => {\n if (orientation === 'left') {\n return <IconChevronLeft className={cn('size-4', className)} {...props} />\n }\n\n if (orientation === 'right') {\n return <IconChevronRight className={cn('size-4', className)} {...props} />\n }\n\n return <IconChevronDown className={cn('size-4', className)} {...props} />\n },\n DayButton: ({ ...props }) => <CalendarDayButton locale={locale} {...props} />,\n WeekNumber: ({ children, ...props }) => {\n return (\n <td {...props}>\n <div className=\"flex size-(--cell-size) items-center justify-center text-center text-xs font-normal tabular-nums\">\n {children}\n </div>\n </td>\n )\n },\n ...components\n }}\n {...props}\n />\n )\n}\n\nfunction CalendarDayButton({ className, day, modifiers, locale, ...props }: CalendarDayButtonProps) {\n const defaultClassNames = getDefaultClassNames()\n const isWeekend = day.date.getDay() === 0 || day.date.getDay() === 6\n\n const ref = React.useRef<HTMLButtonElement>(null)\n React.useEffect(() => {\n if (modifiers.focused) ref.current?.focus()\n }, [modifiers.focused])\n\n return (\n <Button\n ref={ref}\n variant=\"ghost\"\n size=\"icon\"\n color=\"zinc\"\n data-day={day.date.toLocaleDateString(locale?.code)}\n data-weekend={isWeekend}\n data-selected-single={\n modifiers.selected && !modifiers.range_start && !modifiers.range_end && !modifiers.range_middle\n }\n data-range-start={modifiers.range_start}\n data-range-end={modifiers.range_end}\n data-range-middle={modifiers.range_middle}\n className={cn(\n 'relative isolate z-10 flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 border-0 text-foreground leading-none font-normal',\n 'hover:bg-primary-50 hover:text-foreground dark:hover:bg-primary-950 dark:hover:text-foreground',\n 'group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-[3px] group-data-[focused=true]/day:ring-ring/50',\n 'data-[weekend=true]:text-destructive data-[weekend=true]:hover:bg-red-50 data-[weekend=true]:hover:text-destructive dark:data-[weekend=true]:hover:bg-red-950',\n 'data-[range-middle=true]:rounded-none data-[range-middle=true]:bg-primary-50 data-[range-middle=true]:text-foreground data-[range-middle=true]:hover:bg-primary-50 data-[range-middle=true]:hover:text-foreground dark:data-[range-middle=true]:bg-primary-950 dark:data-[range-middle=true]:hover:bg-primary-950',\n 'data-[range-middle=true]:data-[weekend=true]:text-destructive data-[range-middle=true]:data-[weekend=true]:hover:bg-red-50 data-[range-middle=true]:data-[weekend=true]:hover:text-destructive dark:data-[range-middle=true]:data-[weekend=true]:hover:bg-red-950',\n 'data-[range-end=true]:rounded-(--cell-radius) data-[range-end=true]:rounded-r-(--cell-radius) data-[range-end=true]:bg-primary-500 data-[range-end=true]:text-white data-[range-end=true]:hover:bg-primary-500 data-[range-end=true]:hover:text-white dark:data-[range-end=true]:hover:bg-primary-500',\n 'data-[range-end=true]:data-[weekend=true]:text-white data-[range-end=true]:data-[weekend=true]:hover:text-white',\n 'data-[range-start=true]:rounded-(--cell-radius) data-[range-start=true]:rounded-l-(--cell-radius) data-[range-start=true]:bg-primary-500 data-[range-start=true]:text-white data-[range-start=true]:hover:bg-primary-500 data-[range-start=true]:hover:text-white dark:data-[range-start=true]:hover:bg-primary-500',\n 'data-[range-start=true]:data-[weekend=true]:text-white data-[range-start=true]:data-[weekend=true]:hover:text-white',\n 'data-[selected-single=true]:bg-primary-500 data-[selected-single=true]:text-white data-[selected-single=true]:hover:bg-primary-500 data-[selected-single=true]:hover:text-white dark:data-[selected-single=true]:hover:bg-primary-500',\n 'data-[selected-single=true]:data-[weekend=true]:text-white data-[selected-single=true]:data-[weekend=true]:hover:text-white',\n '[&>span]:text-xs [&>span]:opacity-70',\n defaultClassNames.day,\n className\n )}\n {...props}\n />\n )\n}\n\nexport { Calendar, CalendarDayButton, type DateRange, locale }\n"],"mappings":"wZAiBA,SAAS,SAAS,CAChB,YACA,aACA,kBAAkB,GAClB,gBAAgB,QAChB,gBAAgB,QAChB,SACA,aACA,aACA,GAAG,GACa,CAChB,IAAM,EAAoB,EAAqB,EAE/C,OACE,EAAC,EAAD,CACmB,kBACjB,UAAW,EACT,wLACA,OAAO,GAAG,4CACV,OAAO,GAAG,gDACV,CACF,EACe,gBACP,SACR,WAAY,CACV,oBAAsB,GAAS,EAAK,eAAe,GAAQ,KAAM,CAAE,MAAO,OAAQ,CAAC,EACnF,GAAG,CACL,EACA,WAAY,CACV,KAAM,EAAG,QAAS,EAAkB,IAAI,EACxC,OAAQ,EAAG,sBAAuB,EAAkB,MAAM,EAC1D,MAAO,EAAG,6BAA8B,EAAkB,KAAK,EAC/D,IAAK,EAAG,0EAA2E,EAAkB,GAAG,EACxG,gBAAiB,EACf,EAAe,CAAE,QAAS,CAAc,CAAC,EACzC,8DACA,EAAkB,eACpB,EACA,YAAa,EACX,EAAe,CAAE,QAAS,CAAc,CAAC,EACzC,8DACA,EAAkB,WACpB,EACA,cAAe,EACb,2EACA,EAAkB,aACpB,EACA,UAAW,EACT,sFACA,EAAkB,SACpB,EACA,cAAe,EAAG,mCAAoC,EAAkB,aAAa,EACrF,SAAU,EAAG,wCAAyC,EAAkB,QAAQ,EAChF,cAAe,EACb,0BACA,IAAkB,QACd,UACA,yGACJ,EAAkB,aACpB,EACA,WAAY,yBACZ,SAAU,EAAG,OAAQ,EAAkB,QAAQ,EAC/C,QAAS,EACP,6FACA,EAAkB,OACpB,EACA,KAAM,EAAG,mBAAoB,EAAkB,IAAI,EACnD,mBAAoB,EAClB,wEACA,EAAkB,kBACpB,EACA,YAAa,EACX,qEACA,EAAkB,WACpB,EACA,IAAK,EACH,yKACA,EAAM,eACF,wEACA,uEACJ,EAAkB,GACpB,EACA,YAAa,EACX,wLACA,EAAkB,WACpB,EACA,aAAc,EAAG,eAAgB,EAAkB,YAAY,EAC/D,UAAW,EACT,uLACA,EAAkB,SACpB,EACA,MAAO,EACL,qFACA,EAAkB,KACpB,EACA,QAAS,EAAG,4DAA6D,EAAkB,OAAO,EAClG,SAAU,EAAG,mCAAoC,EAAkB,QAAQ,EAC3E,OAAQ,EAAG,YAAa,EAAkB,MAAM,EAChD,GAAG,CACL,EACA,WAAY,CACV,MAAO,CAAE,YAAW,UAAS,GAAG,KAE5B,EAAC,MAAD,CAAK,YAAU,WAAW,IAAK,EAAsC,UAAW,EAAG,CAAS,EAAG,GAAI,CAAQ,CAAA,EAG/G,SAAU,CAAE,YAAW,cAAa,GAAG,KAE5B,EADL,IAAgB,OACV,EAGN,IAAgB,QACV,EAGF,EAPC,CAAiB,UAAW,EAAG,SAAU,CAAS,EAAG,GAAI,CAAQ,CAAA,EAS5E,WAAY,CAAE,GAAG,KAAY,EAAC,kBAAD,CAA2B,SAAQ,GAAI,CAAQ,CAAA,EAC5E,YAAa,CAAE,WAAU,GAAG,KAExB,EAAC,KAAD,CAAI,GAAI,WACN,EAAC,MAAD,CAAK,UAAU,mGACZ,UACE,CAAA,CACH,CAAA,EAGR,GAAG,CACL,EACA,GAAI,CACL,CAAA,CAEL,CAEA,SAAS,kBAAkB,CAAE,YAAW,MAAK,YAAW,SAAQ,GAAG,GAAiC,CAClG,IAAM,EAAoB,EAAqB,EACzC,EAAY,EAAI,KAAK,OAAO,IAAM,GAAK,EAAI,KAAK,OAAO,IAAM,EAE7D,EAAM,EAAM,OAA0B,IAAI,EAKhD,OAJA,EAAM,cAAgB,CAChB,EAAU,SAAS,EAAI,SAAS,MAAM,CAC5C,EAAG,CAAC,EAAU,OAAO,CAAC,EAGpB,EAAC,EAAD,CACO,MACL,QAAQ,QACR,KAAK,OACL,MAAM,OACN,WAAU,EAAI,KAAK,mBAAmB,GAAQ,IAAI,EAClD,eAAc,EACd,uBACE,EAAU,UAAY,CAAC,EAAU,aAAe,CAAC,EAAU,WAAa,CAAC,EAAU,aAErF,mBAAkB,EAAU,YAC5B,iBAAgB,EAAU,UAC1B,oBAAmB,EAAU,aAC7B,UAAW,EACT,iJACA,iGACA,0MACA,gKACA,oTACA,oQACA,wSACA,kHACA,sTACA,sHACA,wOACA,8HACA,uCACA,EAAkB,IAClB,CACF,EACA,GAAI,CACL,CAAA,CAEL"}