@codefast/ui 0.3.11-canary.2 → 0.3.12-canary.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 (246) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/README.md +38 -14
  3. package/dist/components/accordion.d.ts +11 -29
  4. package/dist/components/accordion.d.ts.map +1 -0
  5. package/dist/components/accordion.js +10 -37
  6. package/dist/components/alert-dialog.d.ts +25 -60
  7. package/dist/components/alert-dialog.d.ts.map +1 -0
  8. package/dist/components/alert-dialog.js +16 -69
  9. package/dist/components/alert.d.ts +16 -27
  10. package/dist/components/alert.d.ts.map +1 -0
  11. package/dist/components/alert.js +22 -30
  12. package/dist/components/aspect-ratio.d.ts +5 -8
  13. package/dist/components/aspect-ratio.d.ts.map +1 -0
  14. package/dist/components/aspect-ratio.js +5 -7
  15. package/dist/components/avatar.d.ts +7 -17
  16. package/dist/components/avatar.d.ts.map +1 -0
  17. package/dist/components/avatar.js +7 -18
  18. package/dist/components/badge.d.ts +15 -21
  19. package/dist/components/badge.d.ts.map +1 -0
  20. package/dist/components/badge.js +23 -20
  21. package/dist/components/breadcrumb.d.ts +13 -35
  22. package/dist/components/breadcrumb.d.ts.map +1 -0
  23. package/dist/components/breadcrumb.js +13 -49
  24. package/dist/components/button-group.d.ts +15 -29
  25. package/dist/components/button-group.d.ts.map +1 -0
  26. package/dist/components/button-group.js +22 -27
  27. package/dist/components/button.d.ts +26 -35
  28. package/dist/components/button.d.ts.map +1 -0
  29. package/dist/components/button.js +43 -51
  30. package/dist/components/calendar.d.ts +10 -24
  31. package/dist/components/calendar.d.ts.map +1 -0
  32. package/dist/components/calendar.js +75 -92
  33. package/dist/components/card.d.ts +11 -34
  34. package/dist/components/card.d.ts.map +1 -0
  35. package/dist/components/card.js +11 -39
  36. package/dist/components/carousel.d.ts +25 -55
  37. package/dist/components/carousel.d.ts.map +1 -0
  38. package/dist/components/carousel.js +82 -114
  39. package/dist/components/chart.d.ts +37 -72
  40. package/dist/components/chart.d.ts.map +1 -0
  41. package/dist/components/chart.js +161 -150
  42. package/dist/components/checkbox-cards.d.ts +9 -15
  43. package/dist/components/checkbox-cards.d.ts.map +1 -0
  44. package/dist/components/checkbox-cards.js +8 -22
  45. package/dist/components/checkbox-group.d.ts +9 -16
  46. package/dist/components/checkbox-group.d.ts.map +1 -0
  47. package/dist/components/checkbox-group.js +7 -19
  48. package/dist/components/checkbox.d.ts +5 -9
  49. package/dist/components/checkbox.d.ts.map +1 -0
  50. package/dist/components/checkbox.js +6 -14
  51. package/dist/components/collapsible.d.ts +7 -14
  52. package/dist/components/collapsible.d.ts.map +1 -0
  53. package/dist/components/collapsible.js +7 -15
  54. package/dist/components/command.d.ts +24 -55
  55. package/dist/components/command.d.ts.map +1 -0
  56. package/dist/components/command.js +18 -69
  57. package/dist/components/context-menu.d.ts +23 -72
  58. package/dist/components/context-menu.d.ts.map +1 -0
  59. package/dist/components/context-menu.js +21 -89
  60. package/dist/components/dialog.d.ts +23 -53
  61. package/dist/components/dialog.d.ts.map +1 -0
  62. package/dist/components/dialog.js +20 -72
  63. package/dist/components/drawer.d.ts +29 -60
  64. package/dist/components/drawer.d.ts.map +1 -0
  65. package/dist/components/drawer.js +16 -58
  66. package/dist/components/dropdown-menu.d.ts +23 -73
  67. package/dist/components/dropdown-menu.d.ts.map +1 -0
  68. package/dist/components/dropdown-menu.js +21 -96
  69. package/dist/components/empty.d.ts +16 -37
  70. package/dist/components/empty.d.ts.map +1 -0
  71. package/dist/components/empty.js +24 -44
  72. package/dist/components/field.d.ts +26 -63
  73. package/dist/components/field.d.ts.map +1 -0
  74. package/dist/components/field.js +46 -89
  75. package/dist/components/form.d.ts +16 -37
  76. package/dist/components/form.d.ts.map +1 -0
  77. package/dist/components/form.js +50 -66
  78. package/dist/components/hover-card.d.ts +8 -21
  79. package/dist/components/hover-card.d.ts.map +1 -0
  80. package/dist/components/hover-card.js +8 -23
  81. package/dist/components/input-group.d.ts +29 -53
  82. package/dist/components/input-group.d.ts.map +1 -0
  83. package/dist/components/input-group.js +59 -66
  84. package/dist/components/input-number.d.ts +8 -28
  85. package/dist/components/input-number.d.ts.map +1 -0
  86. package/dist/components/input-number.js +14 -55
  87. package/dist/components/input-otp.d.ts +11 -24
  88. package/dist/components/input-otp.d.ts.map +1 -0
  89. package/dist/components/input-otp.js +13 -34
  90. package/dist/components/input-password.d.ts +6 -12
  91. package/dist/components/input-password.d.ts.map +1 -0
  92. package/dist/components/input-password.js +10 -31
  93. package/dist/components/input-search.d.ts +9 -18
  94. package/dist/components/input-search.d.ts.map +1 -0
  95. package/dist/components/input-search.js +16 -44
  96. package/dist/components/input.d.ts +5 -10
  97. package/dist/components/input.d.ts.map +1 -0
  98. package/dist/components/input.js +5 -9
  99. package/dist/components/item.d.ts +33 -69
  100. package/dist/components/item.d.ts.map +1 -0
  101. package/dist/components/item.js +47 -90
  102. package/dist/components/kbd.d.ts +6 -13
  103. package/dist/components/kbd.d.ts.map +1 -0
  104. package/dist/components/kbd.js +6 -13
  105. package/dist/components/label.d.ts +5 -9
  106. package/dist/components/label.d.ts.map +1 -0
  107. package/dist/components/label.js +5 -8
  108. package/dist/components/menubar.d.ts +24 -80
  109. package/dist/components/menubar.d.ts.map +1 -0
  110. package/dist/components/menubar.js +23 -99
  111. package/dist/components/native-select.d.ts +7 -16
  112. package/dist/components/native-select.d.ts.map +1 -0
  113. package/dist/components/native-select.js +7 -25
  114. package/dist/components/navigation-menu.d.ts +13 -36
  115. package/dist/components/navigation-menu.d.ts.map +1 -0
  116. package/dist/components/navigation-menu.js +25 -61
  117. package/dist/components/pagination.d.ts +15 -35
  118. package/dist/components/pagination.d.ts.map +1 -0
  119. package/dist/components/pagination.js +13 -55
  120. package/dist/components/popover.d.ts +9 -24
  121. package/dist/components/popover.d.ts.map +1 -0
  122. package/dist/components/popover.js +9 -27
  123. package/dist/components/progress-circle.d.ts +89 -106
  124. package/dist/components/progress-circle.d.ts.map +1 -0
  125. package/dist/components/progress-circle.js +70 -103
  126. package/dist/components/progress.d.ts +5 -10
  127. package/dist/components/progress.d.ts.map +1 -0
  128. package/dist/components/progress.js +7 -13
  129. package/dist/components/radio-cards.d.ts +5 -10
  130. package/dist/components/radio-cards.d.ts.map +1 -0
  131. package/dist/components/radio-cards.js +7 -21
  132. package/dist/components/radio-group.d.ts +6 -13
  133. package/dist/components/radio-group.d.ts.map +1 -0
  134. package/dist/components/radio-group.js +6 -17
  135. package/dist/components/radio.d.ts +6 -12
  136. package/dist/components/radio.d.ts.map +1 -0
  137. package/dist/components/radio.js +5 -10
  138. package/dist/components/resizable.d.ts +8 -18
  139. package/dist/components/resizable.d.ts.map +1 -0
  140. package/dist/components/resizable.js +7 -21
  141. package/dist/components/scroll-area.d.ts +21 -33
  142. package/dist/components/scroll-area.d.ts.map +1 -0
  143. package/dist/components/scroll-area.js +64 -84
  144. package/dist/components/select.d.ts +17 -50
  145. package/dist/components/select.d.ts.map +1 -0
  146. package/dist/components/select.js +26 -78
  147. package/dist/components/separator.d.ts +20 -29
  148. package/dist/components/separator.d.ts.map +1 -0
  149. package/dist/components/separator.js +27 -36
  150. package/dist/components/sheet.d.ts +30 -62
  151. package/dist/components/sheet.d.ts.map +1 -0
  152. package/dist/components/sheet.js +36 -80
  153. package/dist/components/sidebar.d.ts +67 -160
  154. package/dist/components/sidebar.d.ts.map +1 -0
  155. package/dist/components/sidebar.js +166 -301
  156. package/dist/components/skeleton.d.ts +5 -9
  157. package/dist/components/skeleton.d.ts.map +1 -0
  158. package/dist/components/skeleton.js +5 -8
  159. package/dist/components/slider.d.ts +5 -13
  160. package/dist/components/slider.d.ts.map +1 -0
  161. package/dist/components/slider.js +12 -34
  162. package/dist/components/sonner.d.ts +8 -10
  163. package/dist/components/sonner.d.ts.map +1 -0
  164. package/dist/components/sonner.js +13 -16
  165. package/dist/components/spinner.d.ts +6 -12
  166. package/dist/components/spinner.d.ts.map +1 -0
  167. package/dist/components/spinner.js +20 -33
  168. package/dist/components/switch.d.ts +5 -9
  169. package/dist/components/switch.d.ts.map +1 -0
  170. package/dist/components/switch.js +5 -12
  171. package/dist/components/table.d.ts +12 -37
  172. package/dist/components/table.d.ts.map +1 -0
  173. package/dist/components/table.js +12 -47
  174. package/dist/components/tabs.d.ts +8 -21
  175. package/dist/components/tabs.d.ts.map +1 -0
  176. package/dist/components/tabs.js +8 -23
  177. package/dist/components/textarea.d.ts +5 -9
  178. package/dist/components/textarea.d.ts.map +1 -0
  179. package/dist/components/textarea.js +5 -8
  180. package/dist/components/toggle-group.d.ts +10 -24
  181. package/dist/components/toggle-group.d.ts.map +1 -0
  182. package/dist/components/toggle-group.js +20 -38
  183. package/dist/components/toggle.d.ts +18 -25
  184. package/dist/components/toggle.d.ts.map +1 -0
  185. package/dist/components/toggle.js +24 -29
  186. package/dist/components/tooltip.d.ts +9 -24
  187. package/dist/components/tooltip.d.ts.map +1 -0
  188. package/dist/components/tooltip.js +9 -28
  189. package/dist/hooks/use-animated-value.d.ts +2 -4
  190. package/dist/hooks/use-animated-value.d.ts.map +1 -0
  191. package/dist/hooks/use-animated-value.js +67 -58
  192. package/dist/hooks/use-copy-to-clipboard.d.ts +6 -11
  193. package/dist/hooks/use-copy-to-clipboard.d.ts.map +1 -0
  194. package/dist/hooks/use-copy-to-clipboard.js +42 -39
  195. package/dist/hooks/use-is-mobile.d.ts +2 -4
  196. package/dist/hooks/use-is-mobile.d.ts.map +1 -0
  197. package/dist/hooks/use-is-mobile.js +20 -23
  198. package/dist/hooks/use-media-query.d.ts +2 -4
  199. package/dist/hooks/use-media-query.d.ts.map +1 -0
  200. package/dist/hooks/use-media-query.js +49 -46
  201. package/dist/hooks/use-mutation-observer.d.ts +3 -6
  202. package/dist/hooks/use-mutation-observer.d.ts.map +1 -0
  203. package/dist/hooks/use-mutation-observer.js +33 -34
  204. package/dist/hooks/use-pagination.d.ts +15 -22
  205. package/dist/hooks/use-pagination.d.ts.map +1 -0
  206. package/dist/hooks/use-pagination.js +99 -99
  207. package/dist/index.d.ts +131 -69
  208. package/dist/index.d.ts.map +1 -0
  209. package/dist/index.js +68 -69
  210. package/dist/primitives/checkbox-group.d.ts +84 -105
  211. package/dist/primitives/checkbox-group.d.ts.map +1 -0
  212. package/dist/primitives/checkbox-group.js +91 -105
  213. package/dist/primitives/input-number.d.ts +41 -51
  214. package/dist/primitives/input-number.d.ts.map +1 -0
  215. package/dist/primitives/input-number.js +417 -473
  216. package/dist/primitives/input.d.ts +43 -48
  217. package/dist/primitives/input.d.ts.map +1 -0
  218. package/dist/primitives/input.js +67 -66
  219. package/dist/primitives/progress-circle.d.ts +49 -79
  220. package/dist/primitives/progress-circle.d.ts.map +1 -0
  221. package/dist/primitives/progress-circle.js +134 -149
  222. package/package.json +17 -10
  223. package/{dist → src}/css/preset.css +1 -1
  224. /package/{dist → src}/css/amber.css +0 -0
  225. /package/{dist → src}/css/blue.css +0 -0
  226. /package/{dist → src}/css/cyan.css +0 -0
  227. /package/{dist → src}/css/emerald.css +0 -0
  228. /package/{dist → src}/css/fuchsia.css +0 -0
  229. /package/{dist → src}/css/gray.css +0 -0
  230. /package/{dist → src}/css/green.css +0 -0
  231. /package/{dist → src}/css/indigo.css +0 -0
  232. /package/{dist → src}/css/lime.css +0 -0
  233. /package/{dist → src}/css/neutral.css +0 -0
  234. /package/{dist → src}/css/orange.css +0 -0
  235. /package/{dist → src}/css/pink.css +0 -0
  236. /package/{dist → src}/css/purple.css +0 -0
  237. /package/{dist → src}/css/red.css +0 -0
  238. /package/{dist → src}/css/rose.css +0 -0
  239. /package/{dist → src}/css/sky.css +0 -0
  240. /package/{dist → src}/css/slate.css +0 -0
  241. /package/{dist → src}/css/stone.css +0 -0
  242. /package/{dist → src}/css/style.css +0 -0
  243. /package/{dist → src}/css/teal.css +0 -0
  244. /package/{dist → src}/css/violet.css +0 -0
  245. /package/{dist → src}/css/yellow.css +0 -0
  246. /package/{dist → src}/css/zinc.css +0 -0
@@ -1,135 +1,103 @@
1
1
  "use client";
2
- import { Button } from "./button.js";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { cn } from "@codefast/tailwind-variants";
4
- import { ArrowLeftIcon, ArrowRightIcon } from "lucide-react";
5
- import { jsx, jsxs } from "react/jsx-runtime";
6
- import { useCallback, useEffect, useState } from "react";
7
4
  import { createContextScope } from "@radix-ui/react-context";
8
5
  import useEmblaCarousel from "embla-carousel-react";
9
- //#region src/components/carousel.tsx
6
+ import { ArrowLeftIcon, ArrowRightIcon } from "lucide-react";
7
+ import { useCallback, useEffect, useState } from "react";
8
+ import { Button } from "#components/button";
9
+ /* -----------------------------------------------------------------------------
10
+ * Context: Carousel
11
+ * -------------------------------------------------------------------------- */
10
12
  const CAROUSEL_NAME = "Carousel";
11
13
  const [createCarouselContext, createCarouselScope] = createContextScope(CAROUSEL_NAME);
12
14
  const [CarouselContextProvider, useCarouselContext] = createCarouselContext(CAROUSEL_NAME);
13
15
  function Carousel({ __scopeCarousel, children, className, opts, orientation, plugins, setApi, ...props }) {
14
- const [carouselRef, api] = useEmblaCarousel({
15
- ...opts,
16
- axis: orientation === "vertical" ? "y" : "x"
17
- }, plugins);
18
- const [canScrollPrevious, setCanScrollPrevious] = useState(false);
19
- const [canScrollNext, setCanScrollNext] = useState(false);
20
- const onSelect = useCallback((carouselApi) => {
21
- if (!carouselApi) return;
22
- setCanScrollPrevious(carouselApi.canScrollPrev());
23
- setCanScrollNext(carouselApi.canScrollNext());
24
- }, []);
25
- const scrollPrevious = useCallback(() => {
26
- api?.scrollPrev();
27
- }, [api]);
28
- const scrollNext = useCallback(() => {
29
- api?.scrollNext();
30
- }, [api]);
31
- const handleKeyDown = useCallback((event) => {
32
- if (event.key === "ArrowLeft") {
33
- event.preventDefault();
34
- scrollPrevious();
35
- } else if (event.key === "ArrowRight") {
36
- event.preventDefault();
37
- scrollNext();
38
- }
39
- }, [scrollPrevious, scrollNext]);
40
- useEffect(() => {
41
- if (!api || !setApi) return;
42
- setApi(api);
43
- }, [api, setApi]);
44
- useEffect(() => {
45
- if (!api) return;
46
- queueMicrotask(() => {
47
- onSelect(api);
48
- });
49
- api.on("reInit", onSelect);
50
- api.on("select", onSelect);
51
- return () => {
52
- api.off("select", onSelect);
53
- };
54
- }, [api, onSelect]);
55
- return /* @__PURE__ */ jsx(CarouselContextProvider, {
56
- api,
57
- canScrollNext,
58
- canScrollPrev: canScrollPrevious,
59
- carouselRef,
60
- opts,
61
- orientation: orientation ?? (opts?.axis === "y" ? "vertical" : "horizontal"),
62
- scope: __scopeCarousel,
63
- scrollNext,
64
- scrollPrev: scrollPrevious,
65
- children: /* @__PURE__ */ jsx("div", {
66
- className: cn("relative", className),
67
- "data-slot": "carousel",
68
- onKeyDownCapture: handleKeyDown,
69
- ...props,
70
- children
71
- })
72
- });
16
+ const [carouselRef, api] = useEmblaCarousel({
17
+ ...opts,
18
+ axis: orientation === "vertical" ? "y" : "x",
19
+ }, plugins);
20
+ const [canScrollPrevious, setCanScrollPrevious] = useState(false);
21
+ const [canScrollNext, setCanScrollNext] = useState(false);
22
+ const onSelect = useCallback((carouselApi) => {
23
+ if (!carouselApi) {
24
+ return;
25
+ }
26
+ setCanScrollPrevious(carouselApi.canScrollPrev());
27
+ setCanScrollNext(carouselApi.canScrollNext());
28
+ }, []);
29
+ const scrollPrevious = useCallback(() => {
30
+ api?.scrollPrev();
31
+ }, [api]);
32
+ const scrollNext = useCallback(() => {
33
+ api?.scrollNext();
34
+ }, [api]);
35
+ const handleKeyDown = useCallback((event) => {
36
+ if (event.key === "ArrowLeft") {
37
+ event.preventDefault();
38
+ scrollPrevious();
39
+ }
40
+ else if (event.key === "ArrowRight") {
41
+ event.preventDefault();
42
+ scrollNext();
43
+ }
44
+ }, [scrollPrevious, scrollNext]);
45
+ useEffect(() => {
46
+ if (!api || !setApi) {
47
+ return;
48
+ }
49
+ setApi(api);
50
+ }, [api, setApi]);
51
+ useEffect(() => {
52
+ if (!api) {
53
+ return;
54
+ }
55
+ // Defer onSelect to avoid synchronous setState in effect
56
+ queueMicrotask(() => {
57
+ onSelect(api);
58
+ });
59
+ api.on("reInit", onSelect);
60
+ api.on("select", onSelect);
61
+ return () => {
62
+ api.off("select", onSelect);
63
+ };
64
+ }, [api, onSelect]);
65
+ return (_jsx(CarouselContextProvider, { api: api, canScrollNext: canScrollNext, canScrollPrev: canScrollPrevious, carouselRef: carouselRef, opts: opts, orientation: orientation ?? (opts?.axis === "y" ? "vertical" : "horizontal"), scope: __scopeCarousel, scrollNext: scrollNext, scrollPrev: scrollPrevious, children: _jsx("div", { className: cn("relative", className), "data-slot": "carousel", onKeyDownCapture: handleKeyDown, ...props, children: children }) }));
73
66
  }
67
+ /* -----------------------------------------------------------------------------
68
+ * Component: CarouselContent
69
+ * -------------------------------------------------------------------------- */
74
70
  const CAROUSEL_CONTENT_NAME = "CarouselContent";
75
71
  function CarouselContent({ __scopeCarousel, className, classNames, ...props }) {
76
- const { carouselRef, orientation } = useCarouselContext(CAROUSEL_CONTENT_NAME, __scopeCarousel);
77
- return /* @__PURE__ */ jsx("div", {
78
- ref: carouselRef,
79
- className: cn("overflow-hidden", classNames?.wrapper),
80
- "data-slot": "carousel-content",
81
- children: /* @__PURE__ */ jsx("div", {
82
- className: cn("flex", orientation === "horizontal" ? "-ml-4" : "-mt-4 flex-col", classNames?.content, className),
83
- ...props
84
- })
85
- });
72
+ const { carouselRef, orientation } = useCarouselContext(CAROUSEL_CONTENT_NAME, __scopeCarousel);
73
+ return (_jsx("div", { ref: carouselRef, className: cn("overflow-hidden", classNames?.wrapper), "data-slot": "carousel-content", children: _jsx("div", { className: cn("flex", orientation === "horizontal" ? "-ml-4" : "-mt-4 flex-col", classNames?.content, className), ...props }) }));
86
74
  }
75
+ /* -----------------------------------------------------------------------------
76
+ * Component: CarouselItem
77
+ * -------------------------------------------------------------------------- */
87
78
  const CAROUSEL_ITEM_NAME = "CarouselItem";
88
79
  function CarouselItem({ __scopeCarousel, className, ...props }) {
89
- const { orientation } = useCarouselContext(CAROUSEL_ITEM_NAME, __scopeCarousel);
90
- return /* @__PURE__ */ jsx("div", {
91
- "aria-roledescription": "slide",
92
- className: cn("min-w-0 shrink-0 grow-0 basis-full", orientation === "horizontal" ? "pl-4" : "pt-4", className),
93
- "data-slot": "carousel-item",
94
- role: "group",
95
- ...props
96
- });
80
+ const { orientation } = useCarouselContext(CAROUSEL_ITEM_NAME, __scopeCarousel);
81
+ return (_jsx("div", { "aria-roledescription": "slide", className: cn("min-w-0 shrink-0 grow-0 basis-full", orientation === "horizontal" ? "pl-4" : "pt-4", className), "data-slot": "carousel-item", role: "group", ...props }));
97
82
  }
83
+ /* -----------------------------------------------------------------------------
84
+ * Component: CarouselPrevious
85
+ * -------------------------------------------------------------------------- */
98
86
  const CAROUSEL_PREVIOUS_NAME = "CarouselPrevious";
99
87
  function CarouselPrevious({ __scopeCarousel, className, size = "icon", variant = "outline", ...props }) {
100
- const { canScrollPrev, orientation, scrollPrev } = useCarouselContext(CAROUSEL_PREVIOUS_NAME, __scopeCarousel);
101
- return /* @__PURE__ */ jsxs(Button, {
102
- "aria-label": "Previous slide",
103
- className: cn("absolute size-8 shadow-none", orientation === "horizontal" ? "top-1/2 -left-12 -translate-y-1/2" : "-top-12 left-1/2 -translate-x-1/2 rotate-90", className),
104
- "data-slot": "carousel-previous",
105
- disabled: !canScrollPrev,
106
- size,
107
- variant,
108
- onClick: scrollPrev,
109
- ...props,
110
- children: [/* @__PURE__ */ jsx(ArrowLeftIcon, {}), /* @__PURE__ */ jsx("span", {
111
- className: "sr-only",
112
- children: "Previous slide"
113
- })]
114
- });
88
+ const { canScrollPrev, orientation, scrollPrev } = useCarouselContext(CAROUSEL_PREVIOUS_NAME, __scopeCarousel);
89
+ return (_jsxs(Button, { "aria-label": "Previous slide", className: cn("absolute size-8 shadow-none", orientation === "horizontal"
90
+ ? "top-1/2 -left-12 -translate-y-1/2"
91
+ : "-top-12 left-1/2 -translate-x-1/2 rotate-90", className), "data-slot": "carousel-previous", disabled: !canScrollPrev, size: size, variant: variant, onClick: scrollPrev, ...props, children: [_jsx(ArrowLeftIcon, {}), _jsx("span", { className: "sr-only", children: "Previous slide" })] }));
115
92
  }
93
+ /* -----------------------------------------------------------------------------
94
+ * Component: CarouselNext
95
+ * -------------------------------------------------------------------------- */
116
96
  const CAROUSEL_NEXT_NAME = "CarouselNext";
117
97
  function CarouselNext({ __scopeCarousel, className, size = "icon", variant = "outline", ...props }) {
118
- const { canScrollNext, orientation, scrollNext } = useCarouselContext(CAROUSEL_NEXT_NAME, __scopeCarousel);
119
- return /* @__PURE__ */ jsxs(Button, {
120
- "aria-label": "Next slide",
121
- className: cn("absolute size-8 shadow-none", orientation === "horizontal" ? "top-1/2 -right-12 -translate-y-1/2" : "-bottom-12 left-1/2 -translate-x-1/2 rotate-90", className),
122
- "data-slot": "carousel-next",
123
- disabled: !canScrollNext,
124
- size,
125
- variant,
126
- onClick: scrollNext,
127
- ...props,
128
- children: [/* @__PURE__ */ jsx(ArrowRightIcon, {}), /* @__PURE__ */ jsx("span", {
129
- className: "sr-only",
130
- children: "Next slide"
131
- })]
132
- });
98
+ const { canScrollNext, orientation, scrollNext } = useCarouselContext(CAROUSEL_NEXT_NAME, __scopeCarousel);
99
+ return (_jsxs(Button, { "aria-label": "Next slide", className: cn("absolute size-8 shadow-none", orientation === "horizontal"
100
+ ? "top-1/2 -right-12 -translate-y-1/2"
101
+ : "-bottom-12 left-1/2 -translate-x-1/2 rotate-90", className), "data-slot": "carousel-next", disabled: !canScrollNext, size: size, variant: variant, onClick: scrollNext, ...props, children: [_jsx(ArrowRightIcon, {}), _jsx("span", { className: "sr-only", children: "Next slide" })] }));
133
102
  }
134
- //#endregion
135
- export { Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, createCarouselScope };
103
+ export { Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, createCarouselScope, };
@@ -1,93 +1,58 @@
1
- import * as _$react from "react";
2
- import { ComponentProps, ComponentType, JSX, ReactNode } from "react";
3
- import * as _$_radix_ui_react_context0 from "@radix-ui/react-context";
4
- import { Scope } from "@radix-ui/react-context";
1
+ import type { Scope } from "@radix-ui/react-context";
2
+ import type { ComponentProps, ComponentType, JSX, ReactNode } from "react";
3
+ import type { NameType, Payload, ValueType } from "recharts/types/component/DefaultTooltipContent";
4
+ import type { TooltipContentProps, TooltipProps } from "recharts";
5
5
  import * as RechartsPrimitive from "recharts";
6
- import { TooltipContentProps, TooltipProps } from "recharts";
7
- import { NameType, Payload, ValueType } from "recharts/types/component/DefaultTooltipContent";
8
-
9
- //#region src/components/chart.d.ts
10
- type ExtractProps<T> = T extends ((props: infer P) => ReactNode) ? P : never;
6
+ type ExtractProps<T> = T extends (props: infer P) => ReactNode ? P : never;
11
7
  type MakeOptional<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;
12
8
  declare const THEMES: {
13
- readonly dark: ".dark";
14
- readonly light: "";
9
+ readonly dark: ".dark";
10
+ readonly light: "";
15
11
  };
16
12
  type ChartConfig = Record<string, {
17
- label?: ReactNode;
18
- icon?: ComponentType;
13
+ label?: ReactNode;
14
+ icon?: ComponentType;
19
15
  } & ({
20
- color?: never;
21
- theme: Record<keyof typeof THEMES, string>;
16
+ color?: never;
17
+ theme: Record<keyof typeof THEMES, string>;
22
18
  } | {
23
- color?: string;
24
- theme?: never;
19
+ color?: string;
20
+ theme?: never;
25
21
  })>;
26
22
  type ScopedProps<P> = P & {
27
- __scopeChart?: Scope;
23
+ __scopeChart?: Scope;
28
24
  };
29
- declare const createChartScope: _$_radix_ui_react_context0.CreateScope;
25
+ declare const createChartScope: import("@radix-ui/react-context").CreateScope;
30
26
  interface ChartContainerProps extends ComponentProps<"div"> {
31
- children: ComponentProps<typeof RechartsPrimitive.ResponsiveContainer>["children"];
32
- config: ChartConfig;
27
+ children: ComponentProps<typeof RechartsPrimitive.ResponsiveContainer>["children"];
28
+ config: ChartConfig;
33
29
  }
34
- declare function ChartContainer({
35
- __scopeChart,
36
- children,
37
- className,
38
- config,
39
- id,
40
- ...props
41
- }: ScopedProps<ChartContainerProps>): JSX.Element;
30
+ declare function ChartContainer({ __scopeChart, children, className, config, id, ...props }: ScopedProps<ChartContainerProps>): JSX.Element;
42
31
  interface ChartStyleProps {
43
- config: ChartConfig;
44
- id: string;
32
+ config: ChartConfig;
33
+ id: string;
45
34
  }
46
- declare function ChartStyle({
47
- config,
48
- id
49
- }: ChartStyleProps): ReactNode;
35
+ declare function ChartStyle({ config, id }: ChartStyleProps): ReactNode;
50
36
  type ChartTooltipProps<TValue extends ValueType, TName extends NameType> = TooltipProps<TValue, TName>;
51
37
  declare const ChartTooltip: typeof RechartsPrimitive.Tooltip;
52
38
  type ChartTooltipContentProps<TValue extends ValueType, TName extends NameType> = Omit<MakeOptional<TooltipContentProps<TValue, TName>, "accessibilityLayer" | "active" | "activeIndex" | "coordinate" | "payload">, "payload"> & {
53
- hideIndicator?: boolean;
54
- hideLabel?: boolean;
55
- indicator?: "dashed" | "dot" | "line";
56
- labelKey?: string;
57
- nameKey?: string;
58
- color?: string | undefined;
59
- className?: string | undefined;
60
- payload?: Payload<TValue, TName>[];
39
+ hideIndicator?: boolean;
40
+ hideLabel?: boolean;
41
+ indicator?: "dashed" | "dot" | "line";
42
+ labelKey?: string;
43
+ nameKey?: string;
44
+ color?: string | undefined;
45
+ className?: string | undefined;
46
+ payload?: Payload<TValue, TName>[];
61
47
  };
62
- declare function ChartTooltipContent<TValue extends ValueType, TName extends NameType>({
63
- __scopeChart,
64
- active,
65
- className,
66
- color,
67
- formatter,
68
- hideIndicator,
69
- hideLabel,
70
- indicator,
71
- label,
72
- labelClassName,
73
- labelFormatter,
74
- labelKey,
75
- nameKey,
76
- payload
77
- }: ScopedProps<ChartTooltipContentProps<TValue, TName>>): ReactNode;
48
+ declare function ChartTooltipContent<TValue extends ValueType, TName extends NameType>({ __scopeChart, active, className, color, formatter, hideIndicator, hideLabel, indicator, label, labelClassName, labelFormatter, labelKey, nameKey, payload, }: ScopedProps<ChartTooltipContentProps<TValue, TName>>): ReactNode;
78
49
  type ChartLegendProps = ComponentProps<typeof RechartsPrimitive.Legend>;
79
- declare const ChartLegend: _$react.MemoExoticComponent<(outsideProps: RechartsPrimitive.LegendProps) => React.ReactPortal | null>;
50
+ declare const ChartLegend: import("react").MemoExoticComponent<(outsideProps: RechartsPrimitive.LegendProps) => React.ReactPortal | null>;
80
51
  type ChartLegendContentProps = ComponentProps<"div"> & ExtractProps<RechartsPrimitive.LegendProps["content"]> & {
81
- hideIcon?: boolean;
82
- nameKey?: string;
52
+ hideIcon?: boolean;
53
+ nameKey?: string;
83
54
  };
84
- declare function ChartLegendContent({
85
- __scopeChart,
86
- className,
87
- hideIcon,
88
- nameKey,
89
- payload,
90
- verticalAlign
91
- }: ScopedProps<ChartLegendContentProps>): ReactNode;
92
- //#endregion
93
- export { type ChartConfig, ChartContainer, type ChartContainerProps, ChartLegend, ChartLegendContent, type ChartLegendContentProps, type ChartLegendProps, ChartStyle, type ChartStyleProps, ChartTooltip, ChartTooltipContent, type ChartTooltipContentProps, type ChartTooltipProps, createChartScope };
55
+ declare function ChartLegendContent({ __scopeChart, className, hideIcon, nameKey, payload, verticalAlign, }: ScopedProps<ChartLegendContentProps>): ReactNode;
56
+ export type { ChartConfig, ChartContainerProps, ChartLegendContentProps, ChartLegendProps, ChartStyleProps, ChartTooltipContentProps, ChartTooltipProps, };
57
+ export { ChartContainer, ChartLegend, ChartLegendContent, ChartStyle, ChartTooltip, ChartTooltipContent, createChartScope, };
58
+ //# sourceMappingURL=chart.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chart.d.ts","sourceRoot":"","sources":["../../src/components/chart.tsx"],"names":[],"mappings":"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"}