ml-uikit 1.1.0 → 1.1.2

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 (231) hide show
  1. package/dist/components/ui/alert.d.ts +8 -2
  2. package/dist/components/ui/alert.d.ts.map +1 -1
  3. package/dist/components/ui/badge.d.ts +1 -1
  4. package/dist/components/ui/button.d.ts.map +1 -1
  5. package/dist/components/ui/checkbox.d.ts.map +1 -1
  6. package/dist/components/ui/icon-button.d.ts +9 -0
  7. package/dist/components/ui/icon-button.d.ts.map +1 -0
  8. package/dist/components/ui/input-group.d.ts.map +1 -1
  9. package/dist/components/ui/radio-group.d.ts.map +1 -1
  10. package/dist/components/ui/select.d.ts.map +1 -1
  11. package/dist/components/ui/sidebar.d.ts.map +1 -1
  12. package/dist/components/ui/slider.d.ts.map +1 -1
  13. package/dist/components/ui/switch.d.ts.map +1 -1
  14. package/dist/components/ui/tabs.d.ts.map +1 -1
  15. package/dist/index.cjs.js +1 -1
  16. package/dist/index.cjs10.js +1 -1
  17. package/dist/index.cjs10.js.map +1 -1
  18. package/dist/index.cjs11.js +1 -1
  19. package/dist/index.cjs11.js.map +1 -1
  20. package/dist/index.cjs12.js +1 -1
  21. package/dist/index.cjs12.js.map +1 -1
  22. package/dist/index.cjs13.js +1 -1
  23. package/dist/index.cjs13.js.map +1 -1
  24. package/dist/index.cjs14.js +1 -1
  25. package/dist/index.cjs14.js.map +1 -1
  26. package/dist/index.cjs15.js +1 -7
  27. package/dist/index.cjs15.js.map +1 -1
  28. package/dist/index.cjs16.js +7 -1
  29. package/dist/index.cjs16.js.map +1 -1
  30. package/dist/index.cjs17.js +1 -1
  31. package/dist/index.cjs17.js.map +1 -1
  32. package/dist/index.cjs18.js +1 -1
  33. package/dist/index.cjs18.js.map +1 -1
  34. package/dist/index.cjs19.js +1 -1
  35. package/dist/index.cjs19.js.map +1 -1
  36. package/dist/index.cjs2.js +1 -1
  37. package/dist/index.cjs20.js +1 -1
  38. package/dist/index.cjs20.js.map +1 -1
  39. package/dist/index.cjs21.js +1 -1
  40. package/dist/index.cjs21.js.map +1 -1
  41. package/dist/index.cjs22.js +1 -1
  42. package/dist/index.cjs22.js.map +1 -1
  43. package/dist/index.cjs23.js +1 -1
  44. package/dist/index.cjs23.js.map +1 -1
  45. package/dist/index.cjs24.js +1 -1
  46. package/dist/index.cjs24.js.map +1 -1
  47. package/dist/index.cjs25.js +1 -1
  48. package/dist/index.cjs25.js.map +1 -1
  49. package/dist/index.cjs26.js +1 -1
  50. package/dist/index.cjs26.js.map +1 -1
  51. package/dist/index.cjs27.js +1 -1
  52. package/dist/index.cjs27.js.map +1 -1
  53. package/dist/index.cjs28.js +1 -1
  54. package/dist/index.cjs28.js.map +1 -1
  55. package/dist/index.cjs29.js +1 -1
  56. package/dist/index.cjs29.js.map +1 -1
  57. package/dist/index.cjs3.js +1 -1
  58. package/dist/index.cjs30.js +1 -1
  59. package/dist/index.cjs30.js.map +1 -1
  60. package/dist/index.cjs31.js +1 -1
  61. package/dist/index.cjs31.js.map +1 -1
  62. package/dist/index.cjs32.js +1 -1
  63. package/dist/index.cjs32.js.map +1 -1
  64. package/dist/index.cjs33.js +1 -1
  65. package/dist/index.cjs33.js.map +1 -1
  66. package/dist/index.cjs34.js +1 -1
  67. package/dist/index.cjs34.js.map +1 -1
  68. package/dist/index.cjs35.js +1 -1
  69. package/dist/index.cjs35.js.map +1 -1
  70. package/dist/index.cjs36.js +1 -1
  71. package/dist/index.cjs36.js.map +1 -1
  72. package/dist/index.cjs37.js +1 -1
  73. package/dist/index.cjs37.js.map +1 -1
  74. package/dist/index.cjs38.js +1 -1
  75. package/dist/index.cjs38.js.map +1 -1
  76. package/dist/index.cjs39.js +1 -1
  77. package/dist/index.cjs39.js.map +1 -1
  78. package/dist/index.cjs4.js +1 -1
  79. package/dist/index.cjs4.js.map +1 -1
  80. package/dist/index.cjs40.js +1 -1
  81. package/dist/index.cjs40.js.map +1 -1
  82. package/dist/index.cjs41.js +1 -1
  83. package/dist/index.cjs41.js.map +1 -1
  84. package/dist/index.cjs42.js +1 -1
  85. package/dist/index.cjs42.js.map +1 -1
  86. package/dist/index.cjs43.js +1 -1
  87. package/dist/index.cjs43.js.map +1 -1
  88. package/dist/index.cjs44.js +1 -1
  89. package/dist/index.cjs44.js.map +1 -1
  90. package/dist/index.cjs45.js +1 -1
  91. package/dist/index.cjs45.js.map +1 -1
  92. package/dist/index.cjs46.js +1 -1
  93. package/dist/index.cjs46.js.map +1 -1
  94. package/dist/index.cjs47.js +1 -1
  95. package/dist/index.cjs47.js.map +1 -1
  96. package/dist/index.cjs48.js +1 -1
  97. package/dist/index.cjs48.js.map +1 -1
  98. package/dist/index.cjs49.js +1 -1
  99. package/dist/index.cjs49.js.map +1 -1
  100. package/dist/index.cjs5.js +1 -1
  101. package/dist/index.cjs50.js +1 -1
  102. package/dist/index.cjs50.js.map +1 -1
  103. package/dist/index.cjs51.js +1 -1
  104. package/dist/index.cjs51.js.map +1 -1
  105. package/dist/index.cjs52.js +1 -1
  106. package/dist/index.cjs52.js.map +1 -1
  107. package/dist/index.cjs53.js +1 -1
  108. package/dist/index.cjs53.js.map +1 -1
  109. package/dist/index.cjs54.js +1 -1
  110. package/dist/index.cjs54.js.map +1 -1
  111. package/dist/index.cjs55.js +1 -1
  112. package/dist/index.cjs55.js.map +1 -1
  113. package/dist/index.cjs56.js +1 -1
  114. package/dist/index.cjs56.js.map +1 -1
  115. package/dist/index.cjs57.js +1 -1
  116. package/dist/index.cjs57.js.map +1 -1
  117. package/dist/index.cjs7.js +1 -1
  118. package/dist/index.cjs8.js +1 -1
  119. package/dist/index.cjs9.js +1 -1
  120. package/dist/index.d.ts +3 -1
  121. package/dist/index.d.ts.map +1 -1
  122. package/dist/index.es.js +321 -312
  123. package/dist/index.es.js.map +1 -1
  124. package/dist/index.es10.js +27 -27
  125. package/dist/index.es10.js.map +1 -1
  126. package/dist/index.es11.js +19 -72
  127. package/dist/index.es11.js.map +1 -1
  128. package/dist/index.es12.js +62 -157
  129. package/dist/index.es12.js.map +1 -1
  130. package/dist/index.es13.js +169 -58
  131. package/dist/index.es13.js.map +1 -1
  132. package/dist/index.es14.js +55 -157
  133. package/dist/index.es14.js.map +1 -1
  134. package/dist/index.es15.js +150 -181
  135. package/dist/index.es15.js.map +1 -1
  136. package/dist/index.es16.js +188 -21
  137. package/dist/index.es16.js.map +1 -1
  138. package/dist/index.es17.js +31 -5
  139. package/dist/index.es17.js.map +1 -1
  140. package/dist/index.es18.js +5 -103
  141. package/dist/index.es18.js.map +1 -1
  142. package/dist/index.es19.js +70 -103
  143. package/dist/index.es19.js.map +1 -1
  144. package/dist/index.es2.js +1 -1
  145. package/dist/index.es20.js +108 -61
  146. package/dist/index.es20.js.map +1 -1
  147. package/dist/index.es21.js +59 -60
  148. package/dist/index.es21.js.map +1 -1
  149. package/dist/index.es22.js +69 -114
  150. package/dist/index.es22.js.map +1 -1
  151. package/dist/index.es23.js +132 -97
  152. package/dist/index.es23.js.map +1 -1
  153. package/dist/index.es24.js +49 -156
  154. package/dist/index.es24.js.map +1 -1
  155. package/dist/index.es25.js +194 -76
  156. package/dist/index.es25.js.map +1 -1
  157. package/dist/index.es26.js +89 -20
  158. package/dist/index.es26.js.map +1 -1
  159. package/dist/index.es27.js +20 -22
  160. package/dist/index.es27.js.map +1 -1
  161. package/dist/index.es28.js +17 -144
  162. package/dist/index.es28.js.map +1 -1
  163. package/dist/index.es29.js +145 -37
  164. package/dist/index.es29.js.map +1 -1
  165. package/dist/index.es3.js +1 -1
  166. package/dist/index.es30.js +37 -179
  167. package/dist/index.es30.js.map +1 -1
  168. package/dist/index.es31.js +174 -18
  169. package/dist/index.es31.js.map +1 -1
  170. package/dist/index.es32.js +29 -16
  171. package/dist/index.es32.js.map +1 -1
  172. package/dist/index.es33.js +15 -92
  173. package/dist/index.es33.js.map +1 -1
  174. package/dist/index.es34.js +91 -189
  175. package/dist/index.es34.js.map +1 -1
  176. package/dist/index.es35.js +165 -71
  177. package/dist/index.es35.js.map +1 -1
  178. package/dist/index.es36.js +85 -84
  179. package/dist/index.es36.js.map +1 -1
  180. package/dist/index.es37.js +92 -17
  181. package/dist/index.es37.js.map +1 -1
  182. package/dist/index.es38.js +19 -21
  183. package/dist/index.es38.js.map +1 -1
  184. package/dist/index.es39.js +16 -21
  185. package/dist/index.es39.js.map +1 -1
  186. package/dist/index.es4.js +65 -26
  187. package/dist/index.es4.js.map +1 -1
  188. package/dist/index.es40.js +22 -25
  189. package/dist/index.es40.js.map +1 -1
  190. package/dist/index.es41.js +25 -104
  191. package/dist/index.es41.js.map +1 -1
  192. package/dist/index.es42.js +117 -20
  193. package/dist/index.es42.js.map +1 -1
  194. package/dist/index.es43.js +19 -97
  195. package/dist/index.es43.js.map +1 -1
  196. package/dist/index.es44.js +77 -509
  197. package/dist/index.es44.js.map +1 -1
  198. package/dist/index.es45.js +552 -11
  199. package/dist/index.es45.js.map +1 -1
  200. package/dist/index.es46.js +15 -18
  201. package/dist/index.es46.js.map +1 -1
  202. package/dist/index.es47.js +44 -19
  203. package/dist/index.es47.js.map +1 -1
  204. package/dist/index.es48.js +19 -12
  205. package/dist/index.es48.js.map +1 -1
  206. package/dist/index.es49.js +13 -22
  207. package/dist/index.es49.js.map +1 -1
  208. package/dist/index.es5.js +1 -1
  209. package/dist/index.es50.js +23 -197
  210. package/dist/index.es50.js.map +1 -1
  211. package/dist/index.es51.js +191 -28
  212. package/dist/index.es51.js.map +1 -1
  213. package/dist/index.es52.js +45 -14
  214. package/dist/index.es52.js.map +1 -1
  215. package/dist/index.es53.js +12 -28
  216. package/dist/index.es53.js.map +1 -1
  217. package/dist/index.es54.js +30 -34
  218. package/dist/index.es54.js.map +1 -1
  219. package/dist/index.es55.js +37 -19
  220. package/dist/index.es55.js.map +1 -1
  221. package/dist/index.es56.js +20 -6
  222. package/dist/index.es56.js.map +1 -1
  223. package/dist/index.es57.js +5 -11
  224. package/dist/index.es57.js.map +1 -1
  225. package/dist/index.es7.js +1 -1
  226. package/dist/index.es8.js +1 -1
  227. package/dist/index.es9.js +1 -1
  228. package/dist/style.css +436 -172
  229. package/package.json +1 -1
  230. package/dist/hooks/use-mobile.d.ts +0 -2
  231. package/dist/hooks/use-mobile.d.ts.map +0 -1
@@ -1,61 +1,172 @@
1
- import * as e from "react";
2
- import { cn as d } from "./index.es56.js";
3
- const o = e.forwardRef(({ className: a, ...r }, t) => /* @__PURE__ */ e.createElement(
4
- "div",
5
- {
6
- ref: t,
7
- className: d(
8
- "rounded-xl border bg-card text-card-foreground shadow",
9
- a
10
- ),
11
- ...r
12
- }
13
- ));
14
- o.displayName = "Card";
15
- const s = e.forwardRef(({ className: a, ...r }, t) => /* @__PURE__ */ e.createElement(
16
- "div",
17
- {
18
- ref: t,
19
- className: d("flex flex-col space-y-1.5 p-6", a),
20
- ...r
21
- }
22
- ));
23
- s.displayName = "CardHeader";
24
- const c = e.forwardRef(({ className: a, ...r }, t) => /* @__PURE__ */ e.createElement(
25
- "div",
26
- {
27
- ref: t,
28
- className: d("font-semibold leading-none tracking-tight", a),
29
- ...r
30
- }
31
- ));
32
- c.displayName = "CardTitle";
33
- const n = e.forwardRef(({ className: a, ...r }, t) => /* @__PURE__ */ e.createElement(
34
- "div",
35
- {
36
- ref: t,
37
- className: d("text-sm text-muted-foreground", a),
38
- ...r
39
- }
40
- ));
41
- n.displayName = "CardDescription";
42
- const l = e.forwardRef(({ className: a, ...r }, t) => /* @__PURE__ */ e.createElement("div", { ref: t, className: d("p-6 pt-0", a), ...r }));
43
- l.displayName = "CardContent";
44
- const m = e.forwardRef(({ className: a, ...r }, t) => /* @__PURE__ */ e.createElement(
45
- "div",
46
- {
47
- ref: t,
48
- className: d("flex items-center p-6 pt-0", a),
49
- ...r
50
- }
51
- ));
52
- m.displayName = "CardFooter";
1
+ import * as a from "react";
2
+ import { ChevronLeftIcon as x, ChevronRightIcon as b, ChevronDownIcon as w } from "lucide-react";
3
+ import { getDefaultClassNames as g, DayPicker as h } from "react-day-picker";
4
+ import { cn as e } from "./index.es57.js";
5
+ import { buttonVariants as m, Button as _ } from "./index.es10.js";
6
+ function C({
7
+ className: c,
8
+ classNames: i,
9
+ showOutsideDays: r = !0,
10
+ captionLayout: l = "label",
11
+ buttonVariant: s = "ghost",
12
+ formatters: u,
13
+ components: f,
14
+ ...p
15
+ }) {
16
+ const t = g();
17
+ return /* @__PURE__ */ a.createElement(
18
+ h,
19
+ {
20
+ showOutsideDays: r,
21
+ className: e(
22
+ "bg-background group/calendar p-3 [--cell-size:2rem] [[data-slot=card-content]_&]:bg-transparent [[data-slot=popover-content]_&]:bg-transparent",
23
+ String.raw`rtl:**:[.rdp-button\_next>svg]:rotate-180`,
24
+ String.raw`rtl:**:[.rdp-button\_previous>svg]:rotate-180`,
25
+ c
26
+ ),
27
+ captionLayout: l,
28
+ formatters: {
29
+ formatMonthDropdown: (n) => n.toLocaleString("default", { month: "short" }),
30
+ ...u
31
+ },
32
+ classNames: {
33
+ root: e("w-fit", t.root),
34
+ months: e(
35
+ "relative flex flex-col gap-4 md:flex-row",
36
+ t.months
37
+ ),
38
+ month: e("flex w-full flex-col gap-4", t.month),
39
+ nav: e(
40
+ "absolute inset-x-0 top-0 flex w-full items-center justify-between gap-1",
41
+ t.nav
42
+ ),
43
+ button_previous: e(
44
+ m({ variant: s }),
45
+ "h-[--cell-size] w-[--cell-size] select-none p-0 aria-disabled:opacity-50",
46
+ t.button_previous
47
+ ),
48
+ button_next: e(
49
+ m({ variant: s }),
50
+ "h-[--cell-size] w-[--cell-size] select-none p-0 aria-disabled:opacity-50",
51
+ t.button_next
52
+ ),
53
+ month_caption: e(
54
+ "flex h-[--cell-size] w-full items-center justify-center px-[--cell-size]",
55
+ t.month_caption
56
+ ),
57
+ dropdowns: e(
58
+ "flex h-[--cell-size] w-full items-center justify-center gap-1.5 text-sm font-medium",
59
+ t.dropdowns
60
+ ),
61
+ dropdown_root: e(
62
+ "has-focus:border-ring border-input shadow-xs has-focus:ring-ring/50 has-focus:ring-[3px] relative rounded-md border",
63
+ t.dropdown_root
64
+ ),
65
+ dropdown: e(
66
+ "bg-popover absolute inset-0 opacity-0",
67
+ t.dropdown
68
+ ),
69
+ caption_label: e(
70
+ "select-none font-medium",
71
+ l === "label" ? "text-sm" : "[&>svg]:text-muted-foreground flex h-8 items-center gap-1 rounded-md pl-2 pr-1 text-sm [&>svg]:size-3.5",
72
+ t.caption_label
73
+ ),
74
+ table: "w-full border-collapse",
75
+ weekdays: e("flex", t.weekdays),
76
+ weekday: e(
77
+ "text-muted-foreground flex-1 select-none rounded-md text-[0.8rem] font-normal",
78
+ t.weekday
79
+ ),
80
+ week: e("mt-2 flex w-full", t.week),
81
+ week_number_header: e(
82
+ "w-[--cell-size] select-none",
83
+ t.week_number_header
84
+ ),
85
+ week_number: e(
86
+ "text-muted-foreground select-none text-[0.8rem]",
87
+ t.week_number
88
+ ),
89
+ day: e(
90
+ "group/day relative aspect-square h-full w-full select-none p-0 text-center [&:first-child[data-selected=true]_button]:rounded-l-md [&:last-child[data-selected=true]_button]:rounded-r-md",
91
+ t.day
92
+ ),
93
+ range_start: e(
94
+ "bg-accent rounded-l-md",
95
+ t.range_start
96
+ ),
97
+ range_middle: e("rounded-none", t.range_middle),
98
+ range_end: e("bg-accent rounded-r-md", t.range_end),
99
+ today: e(
100
+ "bg-accent text-accent-foreground rounded-md data-[selected=true]:rounded-none",
101
+ t.today
102
+ ),
103
+ outside: e(
104
+ "text-muted-foreground aria-selected:text-muted-foreground",
105
+ t.outside
106
+ ),
107
+ disabled: e(
108
+ "text-muted-foreground opacity-50",
109
+ t.disabled
110
+ ),
111
+ hidden: e("invisible", t.hidden),
112
+ ...i
113
+ },
114
+ components: {
115
+ Root: ({ className: n, rootRef: d, ...o }) => /* @__PURE__ */ a.createElement(
116
+ "div",
117
+ {
118
+ "data-slot": "calendar",
119
+ ref: d,
120
+ className: e(n),
121
+ ...o
122
+ }
123
+ ),
124
+ Chevron: ({ className: n, orientation: d, ...o }) => d === "left" ? /* @__PURE__ */ a.createElement(x, { className: e("size-4", n), ...o }) : d === "right" ? /* @__PURE__ */ a.createElement(
125
+ b,
126
+ {
127
+ className: e("size-4", n),
128
+ ...o
129
+ }
130
+ ) : /* @__PURE__ */ a.createElement(w, { className: e("size-4", n), ...o }),
131
+ DayButton: y,
132
+ WeekNumber: ({ children: n, ...d }) => /* @__PURE__ */ a.createElement("td", { ...d }, /* @__PURE__ */ a.createElement("div", { className: "flex size-[--cell-size] items-center justify-center text-center" }, n)),
133
+ ...f
134
+ },
135
+ ...p
136
+ }
137
+ );
138
+ }
139
+ function y({
140
+ className: c,
141
+ day: i,
142
+ modifiers: r,
143
+ ...l
144
+ }) {
145
+ const s = g(), u = a.useRef(null);
146
+ return a.useEffect(() => {
147
+ r.focused && u.current?.focus();
148
+ }, [r.focused]), /* @__PURE__ */ a.createElement(
149
+ _,
150
+ {
151
+ ref: u,
152
+ variant: "ghost",
153
+ size: "icon",
154
+ "data-day": i.date.toLocaleDateString(),
155
+ "data-selected-single": r.selected && !r.range_start && !r.range_end && !r.range_middle,
156
+ "data-range-start": r.range_start,
157
+ "data-range-end": r.range_end,
158
+ "data-range-middle": r.range_middle,
159
+ className: e(
160
+ "data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground data-[range-middle=true]:bg-accent data-[range-middle=true]:text-accent-foreground data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-ring/50 flex aspect-square h-auto w-full min-w-[--cell-size] flex-col gap-1 font-normal leading-none data-[range-end=true]:rounded-md data-[range-middle=true]:rounded-none data-[range-start=true]:rounded-md group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:ring-[3px] [&>span]:text-xs [&>span]:opacity-70",
161
+ s.day,
162
+ c
163
+ ),
164
+ ...l
165
+ }
166
+ );
167
+ }
53
168
  export {
54
- o as Card,
55
- l as CardContent,
56
- n as CardDescription,
57
- m as CardFooter,
58
- s as CardHeader,
59
- c as CardTitle
169
+ C as Calendar,
170
+ y as CalendarDayButton
60
171
  };
61
172
  //# sourceMappingURL=index.es13.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es13.js","sources":["../src/components/ui/card.tsx"],"sourcesContent":["import * as React from \"react\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst Card = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\n \"rounded-xl border bg-card text-card-foreground shadow\",\n className\n )}\n {...props}\n />\n))\nCard.displayName = \"Card\"\n\nconst CardHeader = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"flex flex-col space-y-1.5 p-6\", className)}\n {...props}\n />\n))\nCardHeader.displayName = \"CardHeader\"\n\nconst CardTitle = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"font-semibold leading-none tracking-tight\", className)}\n {...props}\n />\n))\nCardTitle.displayName = \"CardTitle\"\n\nconst CardDescription = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"text-sm text-muted-foreground\", className)}\n {...props}\n />\n))\nCardDescription.displayName = \"CardDescription\"\n\nconst CardContent = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div ref={ref} className={cn(\"p-6 pt-0\", className)} {...props} />\n))\nCardContent.displayName = \"CardContent\"\n\nconst CardFooter = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"flex items-center p-6 pt-0\", className)}\n {...props}\n />\n))\nCardFooter.displayName = \"CardFooter\"\n\nexport { Card, CardHeader, CardFooter, CardTitle, CardDescription, CardContent }\n"],"names":["Card","React","className","props","ref","cn","CardHeader","CardTitle","CardDescription","CardContent","CardFooter"],"mappings":";;AAIA,MAAMA,IAAOC,EAAM,WAGjB,CAAC,EAAE,WAAAC,GAAW,GAAGC,EAAA,GAASC,MAC1B,gBAAAH,EAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,KAAAG;AAAA,IACA,WAAWC;AAAA,MACT;AAAA,MACAH;AAAA,IAAA;AAAA,IAED,GAAGC;AAAA,EAAA;AACN,CACD;AACDH,EAAK,cAAc;AAEnB,MAAMM,IAAaL,EAAM,WAGvB,CAAC,EAAE,WAAAC,GAAW,GAAGC,EAAA,GAASC,MAC1B,gBAAAH,EAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,KAAAG;AAAA,IACA,WAAWC,EAAG,iCAAiCH,CAAS;AAAA,IACvD,GAAGC;AAAA,EAAA;AACN,CACD;AACDG,EAAW,cAAc;AAEzB,MAAMC,IAAYN,EAAM,WAGtB,CAAC,EAAE,WAAAC,GAAW,GAAGC,EAAA,GAASC,MAC1B,gBAAAH,EAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,KAAAG;AAAA,IACA,WAAWC,EAAG,6CAA6CH,CAAS;AAAA,IACnE,GAAGC;AAAA,EAAA;AACN,CACD;AACDI,EAAU,cAAc;AAExB,MAAMC,IAAkBP,EAAM,WAG5B,CAAC,EAAE,WAAAC,GAAW,GAAGC,EAAA,GAASC,MAC1B,gBAAAH,EAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,KAAAG;AAAA,IACA,WAAWC,EAAG,iCAAiCH,CAAS;AAAA,IACvD,GAAGC;AAAA,EAAA;AACN,CACD;AACDK,EAAgB,cAAc;AAE9B,MAAMC,IAAcR,EAAM,WAGxB,CAAC,EAAE,WAAAC,GAAW,GAAGC,KAASC,sCACzB,OAAA,EAAI,KAAAA,GAAU,WAAWC,EAAG,YAAYH,CAAS,GAAI,GAAGC,GAAO,CACjE;AACDM,EAAY,cAAc;AAE1B,MAAMC,IAAaT,EAAM,WAGvB,CAAC,EAAE,WAAAC,GAAW,GAAGC,EAAA,GAASC,MAC1B,gBAAAH,EAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,KAAAG;AAAA,IACA,WAAWC,EAAG,8BAA8BH,CAAS;AAAA,IACpD,GAAGC;AAAA,EAAA;AACN,CACD;AACDO,EAAW,cAAc;"}
1
+ {"version":3,"file":"index.es13.js","sources":["../src/components/ui/calendar.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport {\n ChevronDownIcon,\n ChevronLeftIcon,\n ChevronRightIcon,\n} from \"lucide-react\"\nimport { DayButton, DayPicker, getDefaultClassNames } from \"react-day-picker\"\n\nimport { cn } from \"@/lib/utils\"\nimport { Button, buttonVariants } from \"@/components/ui/button\"\n\nfunction Calendar({\n className,\n classNames,\n showOutsideDays = true,\n captionLayout = \"label\",\n buttonVariant = \"ghost\",\n formatters,\n components,\n ...props\n}: React.ComponentProps<typeof DayPicker> & {\n buttonVariant?: React.ComponentProps<typeof Button>[\"variant\"]\n}) {\n const defaultClassNames = getDefaultClassNames()\n\n return (\n <DayPicker\n showOutsideDays={showOutsideDays}\n className={cn(\n \"bg-background group/calendar p-3 [--cell-size:2rem] [[data-slot=card-content]_&]:bg-transparent [[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 formatters={{\n formatMonthDropdown: (date) =>\n date.toLocaleString(\"default\", { month: \"short\" }),\n ...formatters,\n }}\n classNames={{\n root: cn(\"w-fit\", defaultClassNames.root),\n months: cn(\n \"relative flex flex-col gap-4 md:flex-row\",\n defaultClassNames.months\n ),\n month: cn(\"flex w-full flex-col gap-4\", defaultClassNames.month),\n nav: cn(\n \"absolute inset-x-0 top-0 flex w-full items-center justify-between gap-1\",\n defaultClassNames.nav\n ),\n button_previous: cn(\n buttonVariants({ variant: buttonVariant }),\n \"h-[--cell-size] w-[--cell-size] select-none p-0 aria-disabled:opacity-50\",\n defaultClassNames.button_previous\n ),\n button_next: cn(\n buttonVariants({ variant: buttonVariant }),\n \"h-[--cell-size] w-[--cell-size] select-none p-0 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(\n \"has-focus:border-ring border-input shadow-xs has-focus:ring-ring/50 has-focus:ring-[3px] relative rounded-md border\",\n defaultClassNames.dropdown_root\n ),\n dropdown: cn(\n \"bg-popover absolute inset-0 opacity-0\",\n defaultClassNames.dropdown\n ),\n caption_label: cn(\n \"select-none font-medium\",\n captionLayout === \"label\"\n ? \"text-sm\"\n : \"[&>svg]:text-muted-foreground flex h-8 items-center gap-1 rounded-md pl-2 pr-1 text-sm [&>svg]:size-3.5\",\n defaultClassNames.caption_label\n ),\n table: \"w-full border-collapse\",\n weekdays: cn(\"flex\", defaultClassNames.weekdays),\n weekday: cn(\n \"text-muted-foreground flex-1 select-none rounded-md text-[0.8rem] font-normal\",\n defaultClassNames.weekday\n ),\n week: cn(\"mt-2 flex w-full\", defaultClassNames.week),\n week_number_header: cn(\n \"w-[--cell-size] select-none\",\n defaultClassNames.week_number_header\n ),\n week_number: cn(\n \"text-muted-foreground select-none text-[0.8rem]\",\n defaultClassNames.week_number\n ),\n day: cn(\n \"group/day relative aspect-square h-full w-full select-none p-0 text-center [&:first-child[data-selected=true]_button]:rounded-l-md [&:last-child[data-selected=true]_button]:rounded-r-md\",\n defaultClassNames.day\n ),\n range_start: cn(\n \"bg-accent rounded-l-md\",\n defaultClassNames.range_start\n ),\n range_middle: cn(\"rounded-none\", defaultClassNames.range_middle),\n range_end: cn(\"bg-accent rounded-r-md\", defaultClassNames.range_end),\n today: cn(\n \"bg-accent text-accent-foreground rounded-md data-[selected=true]:rounded-none\",\n defaultClassNames.today\n ),\n outside: cn(\n \"text-muted-foreground aria-selected:text-muted-foreground\",\n defaultClassNames.outside\n ),\n disabled: cn(\n \"text-muted-foreground opacity-50\",\n defaultClassNames.disabled\n ),\n hidden: cn(\"invisible\", defaultClassNames.hidden),\n ...classNames,\n }}\n components={{\n Root: ({ className, rootRef, ...props }) => {\n return (\n <div\n data-slot=\"calendar\"\n ref={rootRef}\n className={cn(className)}\n {...props}\n />\n )\n },\n Chevron: ({ className, orientation, ...props }) => {\n if (orientation === \"left\") {\n return (\n <ChevronLeftIcon className={cn(\"size-4\", className)} {...props} />\n )\n }\n\n if (orientation === \"right\") {\n return (\n <ChevronRightIcon\n className={cn(\"size-4\", className)}\n {...props}\n />\n )\n }\n\n return (\n <ChevronDownIcon className={cn(\"size-4\", className)} {...props} />\n )\n },\n DayButton: CalendarDayButton,\n WeekNumber: ({ children, ...props }) => {\n return (\n <td {...props}>\n <div className=\"flex size-[--cell-size] items-center justify-center text-center\">\n {children}\n </div>\n </td>\n )\n },\n ...components,\n }}\n {...props}\n />\n )\n}\n\nfunction CalendarDayButton({\n className,\n day,\n modifiers,\n ...props\n}: React.ComponentProps<typeof DayButton>) {\n const defaultClassNames = getDefaultClassNames()\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 data-day={day.date.toLocaleDateString()}\n data-selected-single={\n modifiers.selected &&\n !modifiers.range_start &&\n !modifiers.range_end &&\n !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 \"data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground data-[range-middle=true]:bg-accent data-[range-middle=true]:text-accent-foreground data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-ring/50 flex aspect-square h-auto w-full min-w-[--cell-size] flex-col gap-1 font-normal leading-none data-[range-end=true]:rounded-md data-[range-middle=true]:rounded-none data-[range-start=true]:rounded-md group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:ring-[3px] [&>span]:text-xs [&>span]:opacity-70\",\n defaultClassNames.day,\n className\n )}\n {...props}\n />\n )\n}\n\nexport { Calendar, CalendarDayButton }\n"],"names":["Calendar","className","classNames","showOutsideDays","captionLayout","buttonVariant","formatters","components","props","defaultClassNames","getDefaultClassNames","React","DayPicker","cn","date","buttonVariants","rootRef","orientation","ChevronLeftIcon","ChevronRightIcon","ChevronDownIcon","CalendarDayButton","children","day","modifiers","ref","Button"],"mappings":";;;;;AAaA,SAASA,EAAS;AAAA,EAChB,WAAAC;AAAA,EACA,YAAAC;AAAA,EACA,iBAAAC,IAAkB;AAAA,EAClB,eAAAC,IAAgB;AAAA,EAChB,eAAAC,IAAgB;AAAA,EAChB,YAAAC;AAAA,EACA,YAAAC;AAAA,EACA,GAAGC;AACL,GAEG;AACD,QAAMC,IAAoBC,EAAA;AAE1B,SACE,gBAAAC,EAAA;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,iBAAAT;AAAA,MACA,WAAWU;AAAA,QACT;AAAA,QACA,OAAO;AAAA,QACP,OAAO;AAAA,QACPZ;AAAA,MAAA;AAAA,MAEF,eAAAG;AAAA,MACA,YAAY;AAAA,QACV,qBAAqB,CAACU,MACpBA,EAAK,eAAe,WAAW,EAAE,OAAO,SAAS;AAAA,QACnD,GAAGR;AAAA,MAAA;AAAA,MAEL,YAAY;AAAA,QACV,MAAMO,EAAG,SAASJ,EAAkB,IAAI;AAAA,QACxC,QAAQI;AAAA,UACN;AAAA,UACAJ,EAAkB;AAAA,QAAA;AAAA,QAEpB,OAAOI,EAAG,8BAA8BJ,EAAkB,KAAK;AAAA,QAC/D,KAAKI;AAAA,UACH;AAAA,UACAJ,EAAkB;AAAA,QAAA;AAAA,QAEpB,iBAAiBI;AAAA,UACfE,EAAe,EAAE,SAASV,GAAe;AAAA,UACzC;AAAA,UACAI,EAAkB;AAAA,QAAA;AAAA,QAEpB,aAAaI;AAAA,UACXE,EAAe,EAAE,SAASV,GAAe;AAAA,UACzC;AAAA,UACAI,EAAkB;AAAA,QAAA;AAAA,QAEpB,eAAeI;AAAA,UACb;AAAA,UACAJ,EAAkB;AAAA,QAAA;AAAA,QAEpB,WAAWI;AAAA,UACT;AAAA,UACAJ,EAAkB;AAAA,QAAA;AAAA,QAEpB,eAAeI;AAAA,UACb;AAAA,UACAJ,EAAkB;AAAA,QAAA;AAAA,QAEpB,UAAUI;AAAA,UACR;AAAA,UACAJ,EAAkB;AAAA,QAAA;AAAA,QAEpB,eAAeI;AAAA,UACb;AAAA,UACAT,MAAkB,UACd,YACA;AAAA,UACJK,EAAkB;AAAA,QAAA;AAAA,QAEpB,OAAO;AAAA,QACP,UAAUI,EAAG,QAAQJ,EAAkB,QAAQ;AAAA,QAC/C,SAASI;AAAA,UACP;AAAA,UACAJ,EAAkB;AAAA,QAAA;AAAA,QAEpB,MAAMI,EAAG,oBAAoBJ,EAAkB,IAAI;AAAA,QACnD,oBAAoBI;AAAA,UAClB;AAAA,UACAJ,EAAkB;AAAA,QAAA;AAAA,QAEpB,aAAaI;AAAA,UACX;AAAA,UACAJ,EAAkB;AAAA,QAAA;AAAA,QAEpB,KAAKI;AAAA,UACH;AAAA,UACAJ,EAAkB;AAAA,QAAA;AAAA,QAEpB,aAAaI;AAAA,UACX;AAAA,UACAJ,EAAkB;AAAA,QAAA;AAAA,QAEpB,cAAcI,EAAG,gBAAgBJ,EAAkB,YAAY;AAAA,QAC/D,WAAWI,EAAG,0BAA0BJ,EAAkB,SAAS;AAAA,QACnE,OAAOI;AAAA,UACL;AAAA,UACAJ,EAAkB;AAAA,QAAA;AAAA,QAEpB,SAASI;AAAA,UACP;AAAA,UACAJ,EAAkB;AAAA,QAAA;AAAA,QAEpB,UAAUI;AAAA,UACR;AAAA,UACAJ,EAAkB;AAAA,QAAA;AAAA,QAEpB,QAAQI,EAAG,aAAaJ,EAAkB,MAAM;AAAA,QAChD,GAAGP;AAAA,MAAA;AAAA,MAEL,YAAY;AAAA,QACV,MAAM,CAAC,EAAE,WAAAD,GAAW,SAAAe,GAAS,GAAGR,QAE5B,gBAAAG,EAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,aAAU;AAAA,YACV,KAAKK;AAAA,YACL,WAAWH,EAAGZ,CAAS;AAAA,YACtB,GAAGO;AAAAA,UAAA;AAAA,QAAA;AAAA,QAIV,SAAS,CAAC,EAAE,WAAAP,GAAW,aAAAgB,GAAa,GAAGT,QACjCS,MAAgB,SAEhB,gBAAAN,EAAA,cAACO,KAAgB,WAAWL,EAAG,UAAUZ,CAAS,GAAI,GAAGO,GAAO,IAIhES,MAAgB,UAEhB,gBAAAN,EAAA;AAAA,UAACQ;AAAA,UAAA;AAAA,YACC,WAAWN,EAAG,UAAUZ,CAAS;AAAA,YAChC,GAAGO;AAAAA,UAAA;AAAA,QAAA,IAMR,gBAAAG,EAAA,cAACS,KAAgB,WAAWP,EAAG,UAAUZ,CAAS,GAAI,GAAGO,GAAO;AAAA,QAGpE,WAAWa;AAAA,QACX,YAAY,CAAC,EAAE,UAAAC,GAAU,GAAGd,QAExB,gBAAAG,EAAA,cAAC,QAAI,GAAGH,EAAAA,mCACL,OAAA,EAAI,WAAU,kEAAA,GACZc,CACH,CACF;AAAA,QAGJ,GAAGf;AAAA,MAAA;AAAA,MAEJ,GAAGC;AAAA,IAAA;AAAA,EAAA;AAGV;AAEA,SAASa,EAAkB;AAAA,EACzB,WAAApB;AAAA,EACA,KAAAsB;AAAA,EACA,WAAAC;AAAA,EACA,GAAGhB;AACL,GAA2C;AACzC,QAAMC,IAAoBC,EAAA,GAEpBe,IAAMd,EAAM,OAA0B,IAAI;AAChD,SAAAA,EAAM,UAAU,MAAM;AACpB,IAAIa,EAAU,WAASC,EAAI,SAAS,MAAA;AAAA,EACtC,GAAG,CAACD,EAAU,OAAO,CAAC,GAGpB,gBAAAb,EAAA;AAAA,IAACe;AAAA,IAAA;AAAA,MACC,KAAAD;AAAA,MACA,SAAQ;AAAA,MACR,MAAK;AAAA,MACL,YAAUF,EAAI,KAAK,mBAAA;AAAA,MACnB,wBACEC,EAAU,YACV,CAACA,EAAU,eACX,CAACA,EAAU,aACX,CAACA,EAAU;AAAA,MAEb,oBAAkBA,EAAU;AAAA,MAC5B,kBAAgBA,EAAU;AAAA,MAC1B,qBAAmBA,EAAU;AAAA,MAC7B,WAAWX;AAAA,QACT;AAAA,QACAJ,EAAkB;AAAA,QAClBR;AAAA,MAAA;AAAA,MAED,GAAGO;AAAA,IAAA;AAAA,EAAA;AAGV;"}
@@ -1,163 +1,61 @@
1
1
  import * as e from "react";
2
- import P from "embla-carousel-react";
3
- import { ArrowLeft as S, ArrowRight as R } from "lucide-react";
4
- import { cn as m } from "./index.es56.js";
5
- import { Button as x } from "./index.es10.js";
6
- const w = e.createContext(null);
7
- function d() {
8
- const t = e.useContext(w);
9
- if (!t)
10
- throw new Error("useCarousel must be used within a <Carousel />");
11
- return t;
12
- }
13
- const k = e.forwardRef(
14
- ({
15
- orientation: t = "horizontal",
16
- opts: o,
17
- setApi: l,
18
- plugins: a,
19
- className: n,
20
- children: c,
21
- ...i
22
- }, u) => {
23
- const [h, r] = P(
24
- {
25
- ...o,
26
- axis: t === "horizontal" ? "x" : "y"
27
- },
2
+ import { cn as d } from "./index.es57.js";
3
+ const o = e.forwardRef(({ className: a, ...r }, t) => /* @__PURE__ */ e.createElement(
4
+ "div",
5
+ {
6
+ ref: t,
7
+ className: d(
8
+ "rounded-xl border bg-card text-card-foreground shadow",
28
9
  a
29
- ), [p, v] = e.useState(!1), [y, E] = e.useState(!1), f = e.useCallback((s) => {
30
- s && (v(s.canScrollPrev()), E(s.canScrollNext()));
31
- }, []), C = e.useCallback(() => {
32
- r?.scrollPrev();
33
- }, [r]), N = e.useCallback(() => {
34
- r?.scrollNext();
35
- }, [r]), b = e.useCallback(
36
- (s) => {
37
- s.key === "ArrowLeft" ? (s.preventDefault(), C()) : s.key === "ArrowRight" && (s.preventDefault(), N());
38
- },
39
- [C, N]
40
- );
41
- return e.useEffect(() => {
42
- !r || !l || l(r);
43
- }, [r, l]), e.useEffect(() => {
44
- if (r)
45
- return f(r), r.on("reInit", f), r.on("select", f), () => {
46
- r?.off("select", f);
47
- };
48
- }, [r, f]), /* @__PURE__ */ e.createElement(
49
- w.Provider,
50
- {
51
- value: {
52
- carouselRef: h,
53
- api: r,
54
- opts: o,
55
- orientation: t || (o?.axis === "y" ? "vertical" : "horizontal"),
56
- scrollPrev: C,
57
- scrollNext: N,
58
- canScrollPrev: p,
59
- canScrollNext: y
60
- }
61
- },
62
- /* @__PURE__ */ e.createElement(
63
- "div",
64
- {
65
- ref: u,
66
- onKeyDownCapture: b,
67
- className: m("relative", n),
68
- role: "region",
69
- "aria-roledescription": "carousel",
70
- ...i
71
- },
72
- c
73
- )
74
- );
10
+ ),
11
+ ...r
75
12
  }
76
- );
77
- k.displayName = "Carousel";
78
- const z = e.forwardRef(({ className: t, ...o }, l) => {
79
- const { carouselRef: a, orientation: n } = d();
80
- return /* @__PURE__ */ e.createElement("div", { ref: a, className: "overflow-hidden" }, /* @__PURE__ */ e.createElement(
81
- "div",
82
- {
83
- ref: l,
84
- className: m(
85
- "flex",
86
- n === "horizontal" ? "-ml-4" : "-mt-4 flex-col",
87
- t
88
- ),
89
- ...o
90
- }
91
- ));
92
- });
93
- z.displayName = "CarouselContent";
94
- const g = e.forwardRef(({ className: t, ...o }, l) => {
95
- const { orientation: a } = d();
96
- return /* @__PURE__ */ e.createElement(
97
- "div",
98
- {
99
- ref: l,
100
- role: "group",
101
- "aria-roledescription": "slide",
102
- className: m(
103
- "min-w-0 shrink-0 grow-0 basis-full",
104
- a === "horizontal" ? "pl-4" : "pt-4",
105
- t
106
- ),
107
- ...o
108
- }
109
- );
110
- });
111
- g.displayName = "CarouselItem";
112
- const D = e.forwardRef(({ className: t, variant: o = "outline", size: l = "icon", ...a }, n) => {
113
- const { orientation: c, scrollPrev: i, canScrollPrev: u } = d();
114
- return /* @__PURE__ */ e.createElement(
115
- x,
116
- {
117
- ref: n,
118
- variant: o,
119
- size: l,
120
- className: m(
121
- "absolute h-8 w-8 rounded-full",
122
- c === "horizontal" ? "-left-12 top-1/2 -translate-y-1/2" : "-top-12 left-1/2 -translate-x-1/2 rotate-90",
123
- t
124
- ),
125
- disabled: !u,
126
- onClick: i,
127
- ...a
128
- },
129
- /* @__PURE__ */ e.createElement(S, { className: "h-4 w-4" }),
130
- /* @__PURE__ */ e.createElement("span", { className: "sr-only" }, "Previous slide")
131
- );
132
- });
133
- D.displayName = "CarouselPrevious";
134
- const I = e.forwardRef(({ className: t, variant: o = "outline", size: l = "icon", ...a }, n) => {
135
- const { orientation: c, scrollNext: i, canScrollNext: u } = d();
136
- return /* @__PURE__ */ e.createElement(
137
- x,
138
- {
139
- ref: n,
140
- variant: o,
141
- size: l,
142
- className: m(
143
- "absolute h-8 w-8 rounded-full",
144
- c === "horizontal" ? "-right-12 top-1/2 -translate-y-1/2" : "-bottom-12 left-1/2 -translate-x-1/2 rotate-90",
145
- t
146
- ),
147
- disabled: !u,
148
- onClick: i,
149
- ...a
150
- },
151
- /* @__PURE__ */ e.createElement(R, { className: "h-4 w-4" }),
152
- /* @__PURE__ */ e.createElement("span", { className: "sr-only" }, "Next slide")
153
- );
154
- });
155
- I.displayName = "CarouselNext";
13
+ ));
14
+ o.displayName = "Card";
15
+ const s = e.forwardRef(({ className: a, ...r }, t) => /* @__PURE__ */ e.createElement(
16
+ "div",
17
+ {
18
+ ref: t,
19
+ className: d("flex flex-col space-y-1.5 p-6", a),
20
+ ...r
21
+ }
22
+ ));
23
+ s.displayName = "CardHeader";
24
+ const c = e.forwardRef(({ className: a, ...r }, t) => /* @__PURE__ */ e.createElement(
25
+ "div",
26
+ {
27
+ ref: t,
28
+ className: d("font-semibold leading-none tracking-tight", a),
29
+ ...r
30
+ }
31
+ ));
32
+ c.displayName = "CardTitle";
33
+ const n = e.forwardRef(({ className: a, ...r }, t) => /* @__PURE__ */ e.createElement(
34
+ "div",
35
+ {
36
+ ref: t,
37
+ className: d("text-sm text-muted-foreground", a),
38
+ ...r
39
+ }
40
+ ));
41
+ n.displayName = "CardDescription";
42
+ const l = e.forwardRef(({ className: a, ...r }, t) => /* @__PURE__ */ e.createElement("div", { ref: t, className: d("p-6 pt-0", a), ...r }));
43
+ l.displayName = "CardContent";
44
+ const m = e.forwardRef(({ className: a, ...r }, t) => /* @__PURE__ */ e.createElement(
45
+ "div",
46
+ {
47
+ ref: t,
48
+ className: d("flex items-center p-6 pt-0", a),
49
+ ...r
50
+ }
51
+ ));
52
+ m.displayName = "CardFooter";
156
53
  export {
157
- k as Carousel,
158
- z as CarouselContent,
159
- g as CarouselItem,
160
- I as CarouselNext,
161
- D as CarouselPrevious
54
+ o as Card,
55
+ l as CardContent,
56
+ n as CardDescription,
57
+ m as CardFooter,
58
+ s as CardHeader,
59
+ c as CardTitle
162
60
  };
163
61
  //# sourceMappingURL=index.es14.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es14.js","sources":["../src/components/ui/carousel.tsx"],"sourcesContent":["import * as React from \"react\"\nimport useEmblaCarousel, {\n type UseEmblaCarouselType,\n} from \"embla-carousel-react\"\nimport { ArrowLeft, ArrowRight } from \"lucide-react\"\n\nimport { cn } from \"@/lib/utils\"\nimport { Button } from \"@/components/ui/button\"\n\ntype CarouselApi = UseEmblaCarouselType[1]\ntype UseCarouselParameters = Parameters<typeof useEmblaCarousel>\ntype CarouselOptions = UseCarouselParameters[0]\ntype CarouselPlugin = UseCarouselParameters[1]\n\ntype CarouselProps = {\n opts?: CarouselOptions\n plugins?: CarouselPlugin\n orientation?: \"horizontal\" | \"vertical\"\n setApi?: (api: CarouselApi) => void\n}\n\ntype CarouselContextProps = {\n carouselRef: ReturnType<typeof useEmblaCarousel>[0]\n api: ReturnType<typeof useEmblaCarousel>[1]\n scrollPrev: () => void\n scrollNext: () => void\n canScrollPrev: boolean\n canScrollNext: boolean\n} & CarouselProps\n\nconst CarouselContext = React.createContext<CarouselContextProps | null>(null)\n\nfunction useCarousel() {\n const context = React.useContext(CarouselContext)\n\n if (!context) {\n throw new Error(\"useCarousel must be used within a <Carousel />\")\n }\n\n return context\n}\n\nconst Carousel = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement> & CarouselProps\n>(\n (\n {\n orientation = \"horizontal\",\n opts,\n setApi,\n plugins,\n className,\n children,\n ...props\n },\n ref\n ) => {\n const [carouselRef, api] = useEmblaCarousel(\n {\n ...opts,\n axis: orientation === \"horizontal\" ? \"x\" : \"y\",\n },\n plugins\n )\n const [canScrollPrev, setCanScrollPrev] = React.useState(false)\n const [canScrollNext, setCanScrollNext] = React.useState(false)\n\n const onSelect = React.useCallback((api: CarouselApi) => {\n if (!api) {\n return\n }\n\n setCanScrollPrev(api.canScrollPrev())\n setCanScrollNext(api.canScrollNext())\n }, [])\n\n const scrollPrev = React.useCallback(() => {\n api?.scrollPrev()\n }, [api])\n\n const scrollNext = React.useCallback(() => {\n api?.scrollNext()\n }, [api])\n\n const handleKeyDown = React.useCallback(\n (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (event.key === \"ArrowLeft\") {\n event.preventDefault()\n scrollPrev()\n } else if (event.key === \"ArrowRight\") {\n event.preventDefault()\n scrollNext()\n }\n },\n [scrollPrev, scrollNext]\n )\n\n React.useEffect(() => {\n if (!api || !setApi) {\n return\n }\n\n setApi(api)\n }, [api, setApi])\n\n React.useEffect(() => {\n if (!api) {\n return\n }\n\n onSelect(api)\n api.on(\"reInit\", onSelect)\n api.on(\"select\", onSelect)\n\n return () => {\n api?.off(\"select\", onSelect)\n }\n }, [api, onSelect])\n\n return (\n <CarouselContext.Provider\n value={{\n carouselRef,\n api: api,\n opts,\n orientation:\n orientation || (opts?.axis === \"y\" ? \"vertical\" : \"horizontal\"),\n scrollPrev,\n scrollNext,\n canScrollPrev,\n canScrollNext,\n }}\n >\n <div\n ref={ref}\n onKeyDownCapture={handleKeyDown}\n className={cn(\"relative\", className)}\n role=\"region\"\n aria-roledescription=\"carousel\"\n {...props}\n >\n {children}\n </div>\n </CarouselContext.Provider>\n )\n }\n)\nCarousel.displayName = \"Carousel\"\n\nconst CarouselContent = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => {\n const { carouselRef, orientation } = useCarousel()\n\n return (\n <div ref={carouselRef} className=\"overflow-hidden\">\n <div\n ref={ref}\n className={cn(\n \"flex\",\n orientation === \"horizontal\" ? \"-ml-4\" : \"-mt-4 flex-col\",\n className\n )}\n {...props}\n />\n </div>\n )\n})\nCarouselContent.displayName = \"CarouselContent\"\n\nconst CarouselItem = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => {\n const { orientation } = useCarousel()\n\n return (\n <div\n ref={ref}\n role=\"group\"\n aria-roledescription=\"slide\"\n className={cn(\n \"min-w-0 shrink-0 grow-0 basis-full\",\n orientation === \"horizontal\" ? \"pl-4\" : \"pt-4\",\n className\n )}\n {...props}\n />\n )\n})\nCarouselItem.displayName = \"CarouselItem\"\n\nconst CarouselPrevious = React.forwardRef<\n HTMLButtonElement,\n React.ComponentProps<typeof Button>\n>(({ className, variant = \"outline\", size = \"icon\", ...props }, ref) => {\n const { orientation, scrollPrev, canScrollPrev } = useCarousel()\n\n return (\n <Button\n ref={ref}\n variant={variant}\n size={size}\n className={cn(\n \"absolute h-8 w-8 rounded-full\",\n orientation === \"horizontal\"\n ? \"-left-12 top-1/2 -translate-y-1/2\"\n : \"-top-12 left-1/2 -translate-x-1/2 rotate-90\",\n className\n )}\n disabled={!canScrollPrev}\n onClick={scrollPrev}\n {...props}\n >\n <ArrowLeft className=\"h-4 w-4\" />\n <span className=\"sr-only\">Previous slide</span>\n </Button>\n )\n})\nCarouselPrevious.displayName = \"CarouselPrevious\"\n\nconst CarouselNext = React.forwardRef<\n HTMLButtonElement,\n React.ComponentProps<typeof Button>\n>(({ className, variant = \"outline\", size = \"icon\", ...props }, ref) => {\n const { orientation, scrollNext, canScrollNext } = useCarousel()\n\n return (\n <Button\n ref={ref}\n variant={variant}\n size={size}\n className={cn(\n \"absolute h-8 w-8 rounded-full\",\n orientation === \"horizontal\"\n ? \"-right-12 top-1/2 -translate-y-1/2\"\n : \"-bottom-12 left-1/2 -translate-x-1/2 rotate-90\",\n className\n )}\n disabled={!canScrollNext}\n onClick={scrollNext}\n {...props}\n >\n <ArrowRight className=\"h-4 w-4\" />\n <span className=\"sr-only\">Next slide</span>\n </Button>\n )\n})\nCarouselNext.displayName = \"CarouselNext\"\n\nexport {\n type CarouselApi,\n Carousel,\n CarouselContent,\n CarouselItem,\n CarouselPrevious,\n CarouselNext,\n}\n"],"names":["CarouselContext","React","useCarousel","context","Carousel","orientation","opts","setApi","plugins","className","children","props","ref","carouselRef","api","useEmblaCarousel","canScrollPrev","setCanScrollPrev","canScrollNext","setCanScrollNext","onSelect","scrollPrev","scrollNext","handleKeyDown","event","cn","CarouselContent","CarouselItem","CarouselPrevious","variant","size","Button","ArrowLeft","CarouselNext","ArrowRight"],"mappings":"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"}
1
+ {"version":3,"file":"index.es14.js","sources":["../src/components/ui/card.tsx"],"sourcesContent":["import * as React from \"react\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst Card = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\n \"rounded-xl border bg-card text-card-foreground shadow\",\n className\n )}\n {...props}\n />\n))\nCard.displayName = \"Card\"\n\nconst CardHeader = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"flex flex-col space-y-1.5 p-6\", className)}\n {...props}\n />\n))\nCardHeader.displayName = \"CardHeader\"\n\nconst CardTitle = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"font-semibold leading-none tracking-tight\", className)}\n {...props}\n />\n))\nCardTitle.displayName = \"CardTitle\"\n\nconst CardDescription = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"text-sm text-muted-foreground\", className)}\n {...props}\n />\n))\nCardDescription.displayName = \"CardDescription\"\n\nconst CardContent = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div ref={ref} className={cn(\"p-6 pt-0\", className)} {...props} />\n))\nCardContent.displayName = \"CardContent\"\n\nconst CardFooter = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"flex items-center p-6 pt-0\", className)}\n {...props}\n />\n))\nCardFooter.displayName = \"CardFooter\"\n\nexport { Card, CardHeader, CardFooter, CardTitle, CardDescription, CardContent }\n"],"names":["Card","React","className","props","ref","cn","CardHeader","CardTitle","CardDescription","CardContent","CardFooter"],"mappings":";;AAIA,MAAMA,IAAOC,EAAM,WAGjB,CAAC,EAAE,WAAAC,GAAW,GAAGC,EAAA,GAASC,MAC1B,gBAAAH,EAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,KAAAG;AAAA,IACA,WAAWC;AAAA,MACT;AAAA,MACAH;AAAA,IAAA;AAAA,IAED,GAAGC;AAAA,EAAA;AACN,CACD;AACDH,EAAK,cAAc;AAEnB,MAAMM,IAAaL,EAAM,WAGvB,CAAC,EAAE,WAAAC,GAAW,GAAGC,EAAA,GAASC,MAC1B,gBAAAH,EAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,KAAAG;AAAA,IACA,WAAWC,EAAG,iCAAiCH,CAAS;AAAA,IACvD,GAAGC;AAAA,EAAA;AACN,CACD;AACDG,EAAW,cAAc;AAEzB,MAAMC,IAAYN,EAAM,WAGtB,CAAC,EAAE,WAAAC,GAAW,GAAGC,EAAA,GAASC,MAC1B,gBAAAH,EAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,KAAAG;AAAA,IACA,WAAWC,EAAG,6CAA6CH,CAAS;AAAA,IACnE,GAAGC;AAAA,EAAA;AACN,CACD;AACDI,EAAU,cAAc;AAExB,MAAMC,IAAkBP,EAAM,WAG5B,CAAC,EAAE,WAAAC,GAAW,GAAGC,EAAA,GAASC,MAC1B,gBAAAH,EAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,KAAAG;AAAA,IACA,WAAWC,EAAG,iCAAiCH,CAAS;AAAA,IACvD,GAAGC;AAAA,EAAA;AACN,CACD;AACDK,EAAgB,cAAc;AAE9B,MAAMC,IAAcR,EAAM,WAGxB,CAAC,EAAE,WAAAC,GAAW,GAAGC,KAASC,sCACzB,OAAA,EAAI,KAAAA,GAAU,WAAWC,EAAG,YAAYH,CAAS,GAAI,GAAGC,GAAO,CACjE;AACDM,EAAY,cAAc;AAE1B,MAAMC,IAAaT,EAAM,WAGvB,CAAC,EAAE,WAAAC,GAAW,GAAGC,EAAA,GAASC,MAC1B,gBAAAH,EAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,KAAAG;AAAA,IACA,WAAWC,EAAG,8BAA8BH,CAAS;AAAA,IACpD,GAAGC;AAAA,EAAA;AACN,CACD;AACDO,EAAW,cAAc;"}