@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,27 +1,13 @@
1
- import { Button } from "./button.js";
2
- import { ComponentProps, JSX } from "react";
3
- import { DayButton, DayPicker } from "react-day-picker";
4
-
5
- //#region src/components/calendar.d.ts
1
+ import type { ComponentProps, JSX } from "react";
2
+ import type { DayButton } from "react-day-picker";
3
+ import { DayPicker } from "react-day-picker";
4
+ import { Button } from "#components/button";
6
5
  type CalendarProps = ComponentProps<typeof DayPicker> & {
7
- buttonVariant?: ComponentProps<typeof Button>["variant"];
6
+ buttonVariant?: ComponentProps<typeof Button>["variant"];
8
7
  };
9
- declare function Calendar({
10
- buttonVariant,
11
- captionLayout,
12
- className,
13
- classNames,
14
- components,
15
- formatters,
16
- showOutsideDays,
17
- ...props
18
- }: CalendarProps): JSX.Element;
8
+ declare function Calendar({ buttonVariant, captionLayout, className, classNames, components, formatters, showOutsideDays, ...props }: CalendarProps): JSX.Element;
19
9
  type CalendarDayButtonProps = ComponentProps<typeof DayButton>;
20
- declare function CalendarDayButton({
21
- className,
22
- day,
23
- modifiers,
24
- ...props
25
- }: CalendarDayButtonProps): JSX.Element;
26
- //#endregion
27
- export { Calendar, CalendarDayButton, type CalendarDayButtonProps, type CalendarProps };
10
+ declare function CalendarDayButton({ className, day, modifiers, ...props }: CalendarDayButtonProps): JSX.Element;
11
+ export { Calendar, CalendarDayButton };
12
+ export type { CalendarDayButtonProps, CalendarProps };
13
+ //# sourceMappingURL=calendar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"calendar.d.ts","sourceRoot":"","sources":["../../src/components/calendar.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AACjD,OAAO,KAAK,EAAW,SAAS,EAAoB,MAAM,kBAAkB,CAAC;AAK7E,OAAO,EAAE,SAAS,EAAwB,MAAM,kBAAkB,CAAC;AAEnE,OAAO,EAAE,MAAM,EAAkB,MAAM,oBAAoB,CAAC;AAM5D,KAAK,aAAa,GAAG,cAAc,CAAC,OAAO,SAAS,CAAC,GAAG;IACtD,aAAa,CAAC,EAAE,cAAc,CAAC,OAAO,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC;CAC1D,CAAC;AAEF,iBAAS,QAAQ,CAAC,EAChB,aAAuB,EACvB,aAAuB,EACvB,SAAS,EACT,UAAU,EACV,UAAU,EACV,UAAU,EACV,eAAsB,EACtB,GAAG,KAAK,EACT,EAAE,aAAa,GAAG,GAAG,CAAC,OAAO,CAmG7B;AAmDD,KAAK,sBAAsB,GAAG,cAAc,CAAC,OAAO,SAAS,CAAC,CAAC;AAE/D,iBAAS,iBAAiB,CAAC,EACzB,SAAS,EACT,GAAG,EACH,SAAS,EACT,GAAG,KAAK,EACT,EAAE,sBAAsB,GAAG,GAAG,CAAC,OAAO,CAgCtC;AAMD,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,CAAC;AACvC,YAAY,EAAE,sBAAsB,EAAE,aAAa,EAAE,CAAC"}
@@ -1,108 +1,91 @@
1
1
  "use client";
2
- import { Button, buttonVariants } from "./button.js";
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
3
  import { cn } from "@codefast/tailwind-variants";
4
4
  import { ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon } from "lucide-react";
5
- import { jsx } from "react/jsx-runtime";
6
5
  import { useEffect, useRef } from "react";
7
6
  import { DayPicker, getDefaultClassNames } from "react-day-picker";
8
- //#region src/components/calendar.tsx
7
+ import { Button, buttonVariants } from "#components/button";
9
8
  function Calendar({ buttonVariant = "ghost", captionLayout = "label", className, classNames, components, formatters, showOutsideDays = true, ...props }) {
10
- const defaultClassNames = getDefaultClassNames();
11
- return /* @__PURE__ */ jsx(DayPicker, {
12
- captionLayout,
13
- className: cn("group/calendar bg-background p-3 [--cell-size:--spacing(8)] [[data-slot=card-content]_&]:bg-transparent [[data-slot=popover-content]_&]:bg-transparent", "rtl:**:[.rdp-button_next>svg]:rotate-180", "rtl:**:[.rdp-button_previous>svg]:rotate-180", className),
14
- classNames: {
15
- button_next: cn(buttonVariants({ variant: buttonVariant }), "size-(--cell-size) p-0 select-none aria-disabled:opacity-50", defaultClassNames.button_next),
16
- button_previous: cn(buttonVariants({ variant: buttonVariant }), "size-(--cell-size) p-0 select-none aria-disabled:opacity-50", defaultClassNames.button_previous),
17
- caption_label: cn("font-medium select-none", captionLayout === "label" ? "text-sm" : "flex h-8 items-center gap-1 rounded-md pr-1 pl-2 text-sm [&>svg]:size-3.5 [&>svg]:text-muted-foreground", defaultClassNames.caption_label),
18
- day: cn("group/day relative aspect-square h-full w-full p-0 text-center select-none [&:last-child[data-selected=true]_button]:rounded-r-md", props.showWeekNumber ? "[&:nth-child(2)[data-selected=true]_button]:rounded-l-md" : "[&:first-child[data-selected=true]_button]:rounded-l-md", defaultClassNames.day),
19
- disabled: cn("text-muted-foreground opacity-50", defaultClassNames.disabled),
20
- dropdown: cn("absolute inset-0 bg-popover opacity-0", defaultClassNames.dropdown),
21
- dropdown_root: cn("relative rounded-md border border-input shadow-xs has-focus:border-ring has-focus:ring-3 has-focus:ring-ring/50", defaultClassNames.dropdown_root),
22
- dropdowns: cn("flex h-(--cell-size) w-full items-center justify-center gap-1.5 text-sm font-medium", defaultClassNames.dropdowns),
23
- hidden: cn("invisible", defaultClassNames.hidden),
24
- month: cn("flex w-full flex-col gap-4", defaultClassNames.month),
25
- month_caption: cn("flex h-(--cell-size) w-full items-center justify-center px-(--cell-size)", defaultClassNames.month_caption),
26
- months: cn("relative flex flex-col gap-4 md:flex-row", defaultClassNames.months),
27
- nav: cn("absolute inset-x-0 top-0 flex w-full items-center justify-between gap-1", defaultClassNames.nav),
28
- outside: cn("text-muted-foreground aria-selected:text-muted-foreground", defaultClassNames.outside),
29
- range_end: cn("rounded-r-md bg-accent", defaultClassNames.range_end),
30
- range_middle: cn("rounded-none", defaultClassNames.range_middle),
31
- range_start: cn("rounded-l-md bg-accent", defaultClassNames.range_start),
32
- root: cn("w-fit", defaultClassNames.root),
33
- table: "w-full border-collapse",
34
- today: cn("rounded-md bg-accent text-accent-foreground data-[selected=true]:rounded-none", defaultClassNames.today),
35
- week: cn("mt-2 flex w-full", defaultClassNames.week),
36
- week_number: cn("text-[0.8rem] text-muted-foreground select-none", defaultClassNames.week_number),
37
- week_number_header: cn("w-(--cell-size) select-none", defaultClassNames.week_number_header),
38
- weekday: cn("flex-1 rounded-md text-[0.8rem] font-normal text-muted-foreground select-none", defaultClassNames.weekday),
39
- weekdays: cn("flex", defaultClassNames.weekdays),
40
- ...classNames
41
- },
42
- components: {
43
- Chevron: CalendarChevron,
44
- DayButton: CalendarDayButton,
45
- Root: CalendarRoot,
46
- WeekNumber: CalendarWeekNumber,
47
- ...components
48
- },
49
- formatters: {
50
- formatMonthDropdown: (date) => date.toLocaleString("default", { month: "short" }),
51
- ...formatters
52
- },
53
- showOutsideDays,
54
- ...props
55
- });
9
+ const defaultClassNames = getDefaultClassNames();
10
+ return (_jsx(DayPicker, { captionLayout: captionLayout, className: cn("group/calendar bg-background p-3 [--cell-size:--spacing(8)] [[data-slot=card-content]_&]:bg-transparent [[data-slot=popover-content]_&]:bg-transparent", "rtl:**:[.rdp-button_next>svg]:rotate-180", "rtl:**:[.rdp-button_previous>svg]:rotate-180", className), classNames: {
11
+ button_next: cn(buttonVariants({ variant: buttonVariant }), "size-(--cell-size) p-0 select-none aria-disabled:opacity-50", defaultClassNames.button_next),
12
+ button_previous: cn(buttonVariants({ variant: buttonVariant }), "size-(--cell-size) p-0 select-none aria-disabled:opacity-50", defaultClassNames.button_previous),
13
+ caption_label: cn("font-medium select-none", captionLayout === "label"
14
+ ? "text-sm"
15
+ : "flex h-8 items-center gap-1 rounded-md pr-1 pl-2 text-sm [&>svg]:size-3.5 [&>svg]:text-muted-foreground", defaultClassNames.caption_label),
16
+ day: cn("group/day relative aspect-square h-full w-full p-0 text-center select-none [&:last-child[data-selected=true]_button]:rounded-r-md", props.showWeekNumber
17
+ ? "[&:nth-child(2)[data-selected=true]_button]:rounded-l-md"
18
+ : "[&:first-child[data-selected=true]_button]:rounded-l-md", defaultClassNames.day),
19
+ disabled: cn("text-muted-foreground opacity-50", defaultClassNames.disabled),
20
+ dropdown: cn("absolute inset-0 bg-popover opacity-0", defaultClassNames.dropdown),
21
+ dropdown_root: cn("relative rounded-md border border-input shadow-xs has-focus:border-ring has-focus:ring-3 has-focus:ring-ring/50", defaultClassNames.dropdown_root),
22
+ dropdowns: cn("flex h-(--cell-size) w-full items-center justify-center gap-1.5 text-sm font-medium", defaultClassNames.dropdowns),
23
+ hidden: cn("invisible", defaultClassNames.hidden),
24
+ month: cn("flex w-full flex-col gap-4", defaultClassNames.month),
25
+ month_caption: cn("flex h-(--cell-size) w-full items-center justify-center px-(--cell-size)", defaultClassNames.month_caption),
26
+ months: cn("relative flex flex-col gap-4 md:flex-row", defaultClassNames.months),
27
+ nav: cn("absolute inset-x-0 top-0 flex w-full items-center justify-between gap-1", defaultClassNames.nav),
28
+ outside: cn("text-muted-foreground aria-selected:text-muted-foreground", defaultClassNames.outside),
29
+ range_end: cn("rounded-r-md bg-accent", defaultClassNames.range_end),
30
+ range_middle: cn("rounded-none", defaultClassNames.range_middle),
31
+ range_start: cn("rounded-l-md bg-accent", defaultClassNames.range_start),
32
+ root: cn("w-fit", defaultClassNames.root),
33
+ table: "w-full border-collapse",
34
+ today: cn("rounded-md bg-accent text-accent-foreground data-[selected=true]:rounded-none", defaultClassNames.today),
35
+ week: cn("mt-2 flex w-full", defaultClassNames.week),
36
+ week_number: cn("text-[0.8rem] text-muted-foreground select-none", defaultClassNames.week_number),
37
+ week_number_header: cn("w-(--cell-size) select-none", defaultClassNames.week_number_header),
38
+ weekday: cn("flex-1 rounded-md text-[0.8rem] font-normal text-muted-foreground select-none", defaultClassNames.weekday),
39
+ weekdays: cn("flex", defaultClassNames.weekdays),
40
+ ...classNames,
41
+ }, components: {
42
+ Chevron: CalendarChevron,
43
+ DayButton: CalendarDayButton,
44
+ Root: CalendarRoot,
45
+ WeekNumber: CalendarWeekNumber,
46
+ ...components,
47
+ }, formatters: {
48
+ formatMonthDropdown: (date) => date.toLocaleString("default", { month: "short" }),
49
+ ...formatters,
50
+ }, showOutsideDays: showOutsideDays, ...props }));
56
51
  }
52
+ /* -----------------------------------------------------------------------------
53
+ * Component: CalendarChevron (internal)
54
+ * -------------------------------------------------------------------------- */
57
55
  function CalendarChevron({ className, orientation, ...props }) {
58
- if (orientation === "left") return /* @__PURE__ */ jsx(ChevronLeftIcon, {
59
- className: cn("size-4", className),
60
- ...props
61
- });
62
- if (orientation === "right") return /* @__PURE__ */ jsx(ChevronRightIcon, {
63
- className: cn("size-4", className),
64
- ...props
65
- });
66
- return /* @__PURE__ */ jsx(ChevronDownIcon, {
67
- className: cn("size-4", className),
68
- ...props
69
- });
56
+ if (orientation === "left") {
57
+ return _jsx(ChevronLeftIcon, { className: cn("size-4", className), ...props });
58
+ }
59
+ if (orientation === "right") {
60
+ return _jsx(ChevronRightIcon, { className: cn("size-4", className), ...props });
61
+ }
62
+ return _jsx(ChevronDownIcon, { className: cn("size-4", className), ...props });
70
63
  }
64
+ /* -----------------------------------------------------------------------------
65
+ * Component: CalendarRoot (internal)
66
+ * -------------------------------------------------------------------------- */
71
67
  function CalendarRoot({ className, rootRef, ...props }) {
72
- return /* @__PURE__ */ jsx("div", {
73
- ref: rootRef,
74
- className: cn(className),
75
- "data-slot": "calendar",
76
- ...props
77
- });
68
+ return _jsx("div", { ref: rootRef, className: cn(className), "data-slot": "calendar", ...props });
78
69
  }
70
+ /* -----------------------------------------------------------------------------
71
+ * Component: CalendarWeekNumber (internal)
72
+ * -------------------------------------------------------------------------- */
79
73
  function CalendarWeekNumber({ children, ...props }) {
80
- return /* @__PURE__ */ jsx("td", {
81
- ...props,
82
- children: /* @__PURE__ */ jsx("div", {
83
- className: "flex size-(--cell-size) items-center justify-center text-center",
84
- children
85
- })
86
- });
74
+ return (_jsx("td", { ...props, children: _jsx("div", { className: "flex size-(--cell-size) items-center justify-center text-center", children: children }) }));
87
75
  }
88
76
  function CalendarDayButton({ className, day, modifiers, ...props }) {
89
- const defaultClassNames = getDefaultClassNames();
90
- const ref = useRef(null);
91
- useEffect(() => {
92
- if (modifiers.focused) ref.current?.focus();
93
- }, [modifiers.focused]);
94
- return /* @__PURE__ */ jsx(Button, {
95
- ref,
96
- className: cn("flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 leading-none font-normal 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-3 group-data-[focused=true]/day:ring-ring/50 data-[range-end=true]:rounded-md data-[range-end=true]:rounded-r-md data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground data-[range-middle=true]:rounded-none data-[range-middle=true]:bg-accent data-[range-middle=true]:text-accent-foreground data-[range-start=true]:rounded-md data-[range-start=true]:rounded-l-md data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground dark:hover:text-accent-foreground [&>span]:text-xs [&>span]:opacity-70", defaultClassNames.day, className),
97
- "data-day": day.date.toLocaleDateString(),
98
- "data-range-end": modifiers.range_end,
99
- "data-range-middle": modifiers.range_middle,
100
- "data-range-start": modifiers.range_start,
101
- "data-selected-single": modifiers.selected && !modifiers.range_start && !modifiers.range_end && !modifiers.range_middle,
102
- size: "icon",
103
- variant: "ghost",
104
- ...props
105
- });
77
+ const defaultClassNames = getDefaultClassNames();
78
+ const ref = useRef(null);
79
+ useEffect(() => {
80
+ if (modifiers.focused)
81
+ ref.current?.focus();
82
+ }, [modifiers.focused]);
83
+ return (_jsx(Button, { ref: ref, className: cn("flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 leading-none font-normal 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-3 group-data-[focused=true]/day:ring-ring/50 data-[range-end=true]:rounded-md data-[range-end=true]:rounded-r-md data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground data-[range-middle=true]:rounded-none data-[range-middle=true]:bg-accent data-[range-middle=true]:text-accent-foreground data-[range-start=true]:rounded-md data-[range-start=true]:rounded-l-md data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground dark:hover:text-accent-foreground [&>span]:text-xs [&>span]:opacity-70", defaultClassNames.day, className), "data-day": day.date.toLocaleDateString(), "data-range-end": modifiers.range_end, "data-range-middle": modifiers.range_middle, "data-range-start": modifiers.range_start, "data-selected-single": modifiers.selected &&
84
+ !modifiers.range_start &&
85
+ !modifiers.range_end &&
86
+ !modifiers.range_middle, size: "icon", variant: "ghost", ...props }));
106
87
  }
107
- //#endregion
88
+ /* -----------------------------------------------------------------------------
89
+ * Exports
90
+ * -------------------------------------------------------------------------- */
108
91
  export { Calendar, CalendarDayButton };
@@ -1,41 +1,18 @@
1
- import { ComponentProps, JSX } from "react";
2
-
3
- //#region src/components/card.d.ts
1
+ import type { ComponentProps, JSX } from "react";
4
2
  type CardProps = ComponentProps<"div">;
5
- declare function Card({
6
- className,
7
- ...props
8
- }: CardProps): JSX.Element;
3
+ declare function Card({ className, ...props }: CardProps): JSX.Element;
9
4
  type CardHeaderProps = ComponentProps<"div">;
10
- declare function CardHeader({
11
- className,
12
- ...props
13
- }: CardHeaderProps): JSX.Element;
5
+ declare function CardHeader({ className, ...props }: CardHeaderProps): JSX.Element;
14
6
  type CardTitleProps = ComponentProps<"div">;
15
- declare function CardTitle({
16
- children,
17
- className,
18
- ...props
19
- }: CardTitleProps): JSX.Element;
7
+ declare function CardTitle({ children, className, ...props }: CardTitleProps): JSX.Element;
20
8
  type CardDescriptionProps = ComponentProps<"div">;
21
- declare function CardDescription({
22
- className,
23
- ...props
24
- }: CardDescriptionProps): JSX.Element;
9
+ declare function CardDescription({ className, ...props }: CardDescriptionProps): JSX.Element;
25
10
  type CardContentProps = ComponentProps<"div">;
26
- declare function CardContent({
27
- className,
28
- ...props
29
- }: CardContentProps): JSX.Element;
11
+ declare function CardContent({ className, ...props }: CardContentProps): JSX.Element;
30
12
  type CardFooterProps = ComponentProps<"div">;
31
- declare function CardFooter({
32
- className,
33
- ...props
34
- }: CardFooterProps): JSX.Element;
13
+ declare function CardFooter({ className, ...props }: CardFooterProps): JSX.Element;
35
14
  type CardActionProps = ComponentProps<"div">;
36
- declare function CardAction({
37
- className,
38
- ...props
39
- }: CardActionProps): JSX.Element;
40
- //#endregion
41
- export { Card, CardAction, type CardActionProps, CardContent, type CardContentProps, CardDescription, type CardDescriptionProps, CardFooter, type CardFooterProps, CardHeader, type CardHeaderProps, type CardProps, CardTitle, type CardTitleProps };
15
+ declare function CardAction({ className, ...props }: CardActionProps): JSX.Element;
16
+ export { Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle };
17
+ export type { CardActionProps, CardContentProps, CardDescriptionProps, CardFooterProps, CardHeaderProps, CardProps, CardTitleProps, };
18
+ //# sourceMappingURL=card.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"card.d.ts","sourceRoot":"","sources":["../../src/components/card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAQjD,KAAK,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAEvC,iBAAS,IAAI,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,SAAS,GAAG,GAAG,CAAC,OAAO,CAW7D;AAMD,KAAK,eAAe,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAE7C,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,eAAe,GAAG,GAAG,CAAC,OAAO,CAWzE;AAMD,KAAK,cAAc,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAE5C,iBAAS,SAAS,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,GAAG,GAAG,CAAC,OAAO,CAMjF;AAMD,KAAK,oBAAoB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAElD,iBAAS,eAAe,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,oBAAoB,GAAG,GAAG,CAAC,OAAO,CAQnF;AAMD,KAAK,gBAAgB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAE9C,iBAAS,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,gBAAgB,GAAG,GAAG,CAAC,OAAO,CAE3E;AAMD,KAAK,eAAe,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAE7C,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,eAAe,GAAG,GAAG,CAAC,OAAO,CAQzE;AAMD,KAAK,eAAe,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAE7C,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,eAAe,GAAG,GAAG,CAAC,OAAO,CAQzE;AAMD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,eAAe,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC;AAC7F,YAAY,EACV,eAAe,EACf,gBAAgB,EAChB,oBAAoB,EACpB,eAAe,EACf,eAAe,EACf,SAAS,EACT,cAAc,GACf,CAAC"}
@@ -1,55 +1,27 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
1
2
  import { cn } from "@codefast/tailwind-variants";
2
- import { jsx } from "react/jsx-runtime";
3
- //#region src/components/card.tsx
4
3
  function Card({ className, ...props }) {
5
- return /* @__PURE__ */ jsx("div", {
6
- className: cn("flex flex-col gap-6 overflow-auto rounded-xl border bg-card py-6 text-card-foreground shadow-sm", className),
7
- "data-slot": "card",
8
- ...props
9
- });
4
+ return (_jsx("div", { className: cn("flex flex-col gap-6 overflow-auto rounded-xl border bg-card py-6 text-card-foreground shadow-sm", className), "data-slot": "card", ...props }));
10
5
  }
11
6
  function CardHeader({ className, ...props }) {
12
- return /* @__PURE__ */ jsx("div", {
13
- className: cn("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 px-6 has-[data-slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6", className),
14
- "data-slot": "card-header",
15
- ...props
16
- });
7
+ return (_jsx("div", { className: cn("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 px-6 has-[data-slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6", className), "data-slot": "card-header", ...props }));
17
8
  }
18
9
  function CardTitle({ children, className, ...props }) {
19
- return /* @__PURE__ */ jsx("div", {
20
- className: cn("leading-none font-semibold", className),
21
- "data-slot": "card-title",
22
- ...props,
23
- children
24
- });
10
+ return (_jsx("div", { className: cn("leading-none font-semibold", className), "data-slot": "card-title", ...props, children: children }));
25
11
  }
26
12
  function CardDescription({ className, ...props }) {
27
- return /* @__PURE__ */ jsx("div", {
28
- className: cn("text-sm text-muted-foreground", className),
29
- "data-slot": "card-description",
30
- ...props
31
- });
13
+ return (_jsx("div", { className: cn("text-sm text-muted-foreground", className), "data-slot": "card-description", ...props }));
32
14
  }
33
15
  function CardContent({ className, ...props }) {
34
- return /* @__PURE__ */ jsx("div", {
35
- className: cn("px-6", className),
36
- "data-slot": "card-content",
37
- ...props
38
- });
16
+ return _jsx("div", { className: cn("px-6", className), "data-slot": "card-content", ...props });
39
17
  }
40
18
  function CardFooter({ className, ...props }) {
41
- return /* @__PURE__ */ jsx("div", {
42
- className: cn("flex items-center px-6 [.border-t]:pt-6", className),
43
- "data-slot": "card-footer",
44
- ...props
45
- });
19
+ return (_jsx("div", { className: cn("flex items-center px-6 [.border-t]:pt-6", className), "data-slot": "card-footer", ...props }));
46
20
  }
47
21
  function CardAction({ className, ...props }) {
48
- return /* @__PURE__ */ jsx("div", {
49
- className: cn("col-start-2 row-span-2 row-start-1 self-start justify-self-end", className),
50
- "data-slot": "card-action",
51
- ...props
52
- });
22
+ return (_jsx("div", { className: cn("col-start-2 row-span-2 row-start-1 self-start justify-self-end", className), "data-slot": "card-action", ...props }));
53
23
  }
54
- //#endregion
24
+ /* -----------------------------------------------------------------------------
25
+ * Exports
26
+ * -------------------------------------------------------------------------- */
55
27
  export { Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle };
@@ -1,68 +1,38 @@
1
- import { Button } from "./button.js";
2
- import { ComponentProps, JSX } from "react";
3
- import * as _$_radix_ui_react_context0 from "@radix-ui/react-context";
4
- import { Scope } from "@radix-ui/react-context";
5
- import useEmblaCarousel, { UseEmblaCarouselType } from "embla-carousel-react";
6
-
7
- //#region src/components/carousel.d.ts
1
+ import type { Scope } from "@radix-ui/react-context";
2
+ import type { UseEmblaCarouselType } from "embla-carousel-react";
3
+ import type { ComponentProps, JSX } from "react";
4
+ import useEmblaCarousel from "embla-carousel-react";
5
+ import { Button } from "#components/button";
8
6
  type ScopedProps<P> = P & {
9
- __scopeCarousel?: Scope;
7
+ __scopeCarousel?: Scope;
10
8
  };
11
- declare const createCarouselScope: _$_radix_ui_react_context0.CreateScope;
9
+ declare const createCarouselScope: import("@radix-ui/react-context").CreateScope;
12
10
  type CarouselApi = UseEmblaCarouselType[1];
13
11
  type UseCarouselParameters = Parameters<typeof useEmblaCarousel>;
14
12
  type CarouselOptions = UseCarouselParameters[0];
15
13
  type CarouselPlugin = UseCarouselParameters[1];
16
14
  interface BaseCarouselProps {
17
- opts?: CarouselOptions;
18
- orientation?: "horizontal" | "vertical";
19
- plugins?: CarouselPlugin;
20
- setApi?: (api: CarouselApi) => void;
15
+ opts?: CarouselOptions;
16
+ orientation?: "horizontal" | "vertical";
17
+ plugins?: CarouselPlugin;
18
+ setApi?: (api: CarouselApi) => void;
21
19
  }
22
- interface CarouselProps extends BaseCarouselProps, ComponentProps<"div"> {}
23
- declare function Carousel({
24
- __scopeCarousel,
25
- children,
26
- className,
27
- opts,
28
- orientation,
29
- plugins,
30
- setApi,
31
- ...props
32
- }: ScopedProps<CarouselProps>): JSX.Element;
20
+ interface CarouselProps extends BaseCarouselProps, ComponentProps<"div"> {
21
+ }
22
+ declare function Carousel({ __scopeCarousel, children, className, opts, orientation, plugins, setApi, ...props }: ScopedProps<CarouselProps>): JSX.Element;
33
23
  interface CarouselContentProps extends ComponentProps<"div"> {
34
- classNames?: {
35
- content?: string;
36
- wrapper?: string;
37
- };
24
+ classNames?: {
25
+ content?: string;
26
+ wrapper?: string;
27
+ };
38
28
  }
39
- declare function CarouselContent({
40
- __scopeCarousel,
41
- className,
42
- classNames,
43
- ...props
44
- }: ScopedProps<CarouselContentProps>): JSX.Element;
29
+ declare function CarouselContent({ __scopeCarousel, className, classNames, ...props }: ScopedProps<CarouselContentProps>): JSX.Element;
45
30
  type CarouselItemProps = ComponentProps<"div">;
46
- declare function CarouselItem({
47
- __scopeCarousel,
48
- className,
49
- ...props
50
- }: ScopedProps<CarouselItemProps>): JSX.Element;
31
+ declare function CarouselItem({ __scopeCarousel, className, ...props }: ScopedProps<CarouselItemProps>): JSX.Element;
51
32
  type CarouselPreviousProps = ComponentProps<typeof Button>;
52
- declare function CarouselPrevious({
53
- __scopeCarousel,
54
- className,
55
- size,
56
- variant,
57
- ...props
58
- }: ScopedProps<CarouselPreviousProps>): JSX.Element;
33
+ declare function CarouselPrevious({ __scopeCarousel, className, size, variant, ...props }: ScopedProps<CarouselPreviousProps>): JSX.Element;
59
34
  type CarouselNextProps = ComponentProps<typeof Button>;
60
- declare function CarouselNext({
61
- __scopeCarousel,
62
- className,
63
- size,
64
- variant,
65
- ...props
66
- }: ScopedProps<CarouselNextProps>): JSX.Element;
67
- //#endregion
68
- export { Carousel, type CarouselApi, CarouselContent, type CarouselContentProps, CarouselItem, type CarouselItemProps, CarouselNext, type CarouselNextProps, CarouselPrevious, type CarouselPreviousProps, type CarouselProps, createCarouselScope };
35
+ declare function CarouselNext({ __scopeCarousel, className, size, variant, ...props }: ScopedProps<CarouselNextProps>): JSX.Element;
36
+ export type { CarouselApi, CarouselContentProps, CarouselItemProps, CarouselNextProps, CarouselPreviousProps, CarouselProps, };
37
+ export { Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, createCarouselScope, };
38
+ //# sourceMappingURL=carousel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"carousel.d.ts","sourceRoot":"","sources":["../../src/components/carousel.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,KAAK,EAAE,cAAc,EAAE,GAAG,EAAiB,MAAM,OAAO,CAAC;AAIhE,OAAO,gBAAgB,MAAM,sBAAsB,CAAC;AAIpD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAQ5C,KAAK,WAAW,CAAC,CAAC,IAAI,CAAC,GAAG;IAAE,eAAe,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC;AAEtD,QAAA,MAA8B,mBAAmB,+CAAqC,CAAC;AAEvF,KAAK,WAAW,GAAG,oBAAoB,CAAC,CAAC,CAAC,CAAC;AAC3C,KAAK,qBAAqB,GAAG,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;AACjE,KAAK,eAAe,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC;AAChD,KAAK,cAAc,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC;AAE/C,UAAU,iBAAiB;IACzB,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IACxC,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,WAAW,KAAK,IAAI,CAAC;CACrC;AAkBD,UAAU,aAAc,SAAQ,iBAAiB,EAAE,cAAc,CAAC,KAAK,CAAC;CAAG;AAE3E,iBAAS,QAAQ,CAAC,EAChB,eAAe,EACf,QAAQ,EACR,SAAS,EACT,IAAI,EACJ,WAAW,EACX,OAAO,EACP,MAAM,EACN,GAAG,KAAK,EACT,EAAE,WAAW,CAAC,aAAa,CAAC,GAAG,GAAG,CAAC,OAAO,CAyF1C;AAQD,UAAU,oBAAqB,SAAQ,cAAc,CAAC,KAAK,CAAC;IAC1D,UAAU,CAAC,EAAE;QACX,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;CACH;AAED,iBAAS,eAAe,CAAC,EACvB,eAAe,EACf,SAAS,EACT,UAAU,EACV,GAAG,KAAK,EACT,EAAE,WAAW,CAAC,oBAAoB,CAAC,GAAG,GAAG,CAAC,OAAO,CAoBjD;AAQD,KAAK,iBAAiB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAE/C,iBAAS,YAAY,CAAC,EACpB,eAAe,EACf,SAAS,EACT,GAAG,KAAK,EACT,EAAE,WAAW,CAAC,iBAAiB,CAAC,GAAG,GAAG,CAAC,OAAO,CAgB9C;AAQD,KAAK,qBAAqB,GAAG,cAAc,CAAC,OAAO,MAAM,CAAC,CAAC;AAE3D,iBAAS,gBAAgB,CAAC,EACxB,eAAe,EACf,SAAS,EACT,IAAa,EACb,OAAmB,EACnB,GAAG,KAAK,EACT,EAAE,WAAW,CAAC,qBAAqB,CAAC,GAAG,GAAG,CAAC,OAAO,CA2BlD;AAQD,KAAK,iBAAiB,GAAG,cAAc,CAAC,OAAO,MAAM,CAAC,CAAC;AAEvD,iBAAS,YAAY,CAAC,EACpB,eAAe,EACf,SAAS,EACT,IAAa,EACb,OAAmB,EACnB,GAAG,KAAK,EACT,EAAE,WAAW,CAAC,iBAAiB,CAAC,GAAG,GAAG,CAAC,OAAO,CA2B9C;AAMD,YAAY,EACV,WAAW,EACX,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,qBAAqB,EACrB,aAAa,GACd,CAAC;AACF,OAAO,EACL,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,mBAAmB,GACpB,CAAC"}