@lssm/lib.ui-kit-web 1.7.3 → 1.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (250) hide show
  1. package/README.md +80 -0
  2. package/dist/node_modules/sonner/dist/index.js +1 -2
  3. package/dist/node_modules/sonner/dist/index.js.map +1 -1
  4. package/dist/tsconfig.tsbuildinfo +1 -1
  5. package/dist/ui/accordion.d.ts +5 -5
  6. package/dist/ui/accordion.js +3 -4
  7. package/dist/ui/accordion.js.map +1 -1
  8. package/dist/ui/alert-dialog.js +8 -9
  9. package/dist/ui/alert-dialog.js.map +1 -1
  10. package/dist/ui/alert.d.ts +6 -6
  11. package/dist/ui/alert.d.ts.map +1 -1
  12. package/dist/ui/alert.js +3 -3
  13. package/dist/ui/alert.js.map +1 -1
  14. package/dist/ui/aspect-ratio.d.ts +2 -2
  15. package/dist/ui/aspect-ratio.js +0 -1
  16. package/dist/ui/aspect-ratio.js.map +1 -1
  17. package/dist/ui/avatar.d.ts +4 -4
  18. package/dist/ui/avatar.d.ts.map +1 -1
  19. package/dist/ui/avatar.js +3 -4
  20. package/dist/ui/avatar.js.map +1 -1
  21. package/dist/ui/badge.d.ts +3 -3
  22. package/dist/ui/badge.js +1 -1
  23. package/dist/ui/badge.js.map +1 -1
  24. package/dist/ui/breadcrumb.d.ts +8 -8
  25. package/dist/ui/breadcrumb.d.ts.map +1 -1
  26. package/dist/ui/breadcrumb.js +6 -6
  27. package/dist/ui/breadcrumb.js.map +1 -1
  28. package/dist/ui/button.d.ts +6 -6
  29. package/dist/ui/button.js +1 -1
  30. package/dist/ui/button.js.map +1 -1
  31. package/dist/ui/calendar.d.ts +3 -3
  32. package/dist/ui/calendar.js +5 -6
  33. package/dist/ui/calendar.js.map +1 -1
  34. package/dist/ui/card.d.ts +8 -8
  35. package/dist/ui/card.js +7 -7
  36. package/dist/ui/card.js.map +1 -1
  37. package/dist/ui/carousel.d.ts +6 -6
  38. package/dist/ui/carousel.js +5 -6
  39. package/dist/ui/carousel.js.map +1 -1
  40. package/dist/ui/checkbox.d.ts +2 -2
  41. package/dist/ui/checkbox.js +1 -2
  42. package/dist/ui/checkbox.js.map +1 -1
  43. package/dist/ui/collapsible.d.ts +4 -4
  44. package/dist/ui/collapsible.js +0 -1
  45. package/dist/ui/collapsible.js.map +1 -1
  46. package/dist/ui/command.d.ts +10 -10
  47. package/dist/ui/command.js +8 -9
  48. package/dist/ui/command.js.map +1 -1
  49. package/dist/ui/confirm-dialog.d.ts +2 -2
  50. package/dist/ui/context-menu.d.ts +2 -2
  51. package/dist/ui/context-menu.d.ts.map +1 -1
  52. package/dist/ui/context-menu.js +9 -10
  53. package/dist/ui/context-menu.js.map +1 -1
  54. package/dist/ui/cta.d.ts +1 -1
  55. package/dist/ui/cta.js +1 -1
  56. package/dist/ui/cta.js.map +1 -1
  57. package/dist/ui/date-picker.d.ts +2 -2
  58. package/dist/ui/date-picker.js +0 -1
  59. package/dist/ui/date-picker.js.map +1 -1
  60. package/dist/ui/date-range-picker.d.ts +2 -2
  61. package/dist/ui/date-range-picker.js +0 -1
  62. package/dist/ui/date-range-picker.js.map +1 -1
  63. package/dist/ui/datetime-picker.d.ts +2 -2
  64. package/dist/ui/datetime-picker.d.ts.map +1 -1
  65. package/dist/ui/datetime-picker.js +0 -1
  66. package/dist/ui/datetime-picker.js.map +1 -1
  67. package/dist/ui/dialog.d.ts +11 -11
  68. package/dist/ui/dialog.d.ts.map +1 -1
  69. package/dist/ui/dialog.js +6 -7
  70. package/dist/ui/dialog.js.map +1 -1
  71. package/dist/ui/drawer.d.ts +11 -11
  72. package/dist/ui/drawer.js +6 -7
  73. package/dist/ui/drawer.js.map +1 -1
  74. package/dist/ui/dropdown-menu.d.ts +16 -16
  75. package/dist/ui/dropdown-menu.js +9 -10
  76. package/dist/ui/dropdown-menu.js.map +1 -1
  77. package/dist/ui/empty-state.d.ts +4 -4
  78. package/dist/ui/empty.d.ts +9 -9
  79. package/dist/ui/empty.js +6 -6
  80. package/dist/ui/empty.js.map +1 -1
  81. package/dist/ui/field.d.ts +11 -11
  82. package/dist/ui/field.js +10 -11
  83. package/dist/ui/field.js.map +1 -1
  84. package/dist/ui/form.d.ts +7 -7
  85. package/dist/ui/form.js +4 -5
  86. package/dist/ui/form.js.map +1 -1
  87. package/dist/ui/hover-card.d.ts +4 -4
  88. package/dist/ui/hover-card.js +1 -2
  89. package/dist/ui/hover-card.js.map +1 -1
  90. package/dist/ui/input-group.d.ts +11 -11
  91. package/dist/ui/input-group.js +6 -7
  92. package/dist/ui/input-group.js.map +1 -1
  93. package/dist/ui/input-otp.d.ts +2 -2
  94. package/dist/ui/input-otp.js +3 -4
  95. package/dist/ui/input-otp.js.map +1 -1
  96. package/dist/ui/input.d.ts +2 -2
  97. package/dist/ui/input.js +1 -1
  98. package/dist/ui/input.js.map +1 -1
  99. package/dist/ui/label.d.ts +2 -2
  100. package/dist/ui/label.js +1 -2
  101. package/dist/ui/label.js.map +1 -1
  102. package/dist/ui/link.d.ts +3 -3
  103. package/dist/ui/link.js +1 -1
  104. package/dist/ui/link.js.map +1 -1
  105. package/dist/ui/live-region.d.ts +2 -2
  106. package/dist/ui/live-region.js +0 -1
  107. package/dist/ui/live-region.js.map +1 -1
  108. package/dist/ui/loading-button.d.ts +2 -2
  109. package/dist/ui/loading-button.js +1 -1
  110. package/dist/ui/loading-button.js.map +1 -1
  111. package/dist/ui/map/MapBase.d.ts +2 -2
  112. package/dist/ui/map/MapBase.js +0 -1
  113. package/dist/ui/map/MapBase.js.map +1 -1
  114. package/dist/ui/map/MapGeoJsonOverlay.d.ts +2 -2
  115. package/dist/ui/map/MapGeoJsonOverlay.js +0 -1
  116. package/dist/ui/map/MapGeoJsonOverlay.js.map +1 -1
  117. package/dist/ui/map/MapHeatmapH3.d.ts +2 -2
  118. package/dist/ui/map/MapHeatmapH3.js +0 -1
  119. package/dist/ui/map/MapHeatmapH3.js.map +1 -1
  120. package/dist/ui/map/MapMarkers.d.ts +2 -2
  121. package/dist/ui/map/MapMarkers.js +0 -1
  122. package/dist/ui/map/MapMarkers.js.map +1 -1
  123. package/dist/ui/marketing/FeatureGrid.d.ts +2 -2
  124. package/dist/ui/marketing/Hero.d.ts +2 -2
  125. package/dist/ui/marketing/PricingTable.d.ts +2 -2
  126. package/dist/ui/menubar.d.ts +17 -17
  127. package/dist/ui/menubar.d.ts.map +1 -1
  128. package/dist/ui/menubar.js +11 -12
  129. package/dist/ui/menubar.js.map +1 -1
  130. package/dist/ui/molecules/Autocomplete/index.d.ts +2 -2
  131. package/dist/ui/molecules/Autocomplete/index.js +0 -1
  132. package/dist/ui/molecules/Autocomplete/index.js.map +1 -1
  133. package/dist/ui/molecules/SearchAndFilter/types.d.ts.map +1 -1
  134. package/dist/ui/molecules/SkeletonList.d.ts +2 -2
  135. package/dist/ui/nav-layout.d.ts +9 -9
  136. package/dist/ui/nav-layout.d.ts.map +1 -1
  137. package/dist/ui/nav-layout.js +1 -1
  138. package/dist/ui/nav-layout.js.map +1 -1
  139. package/dist/ui/navigation-menu.d.ts +11 -11
  140. package/dist/ui/navigation-menu.d.ts.map +1 -1
  141. package/dist/ui/navigation-menu.js +8 -8
  142. package/dist/ui/navigation-menu.js.map +1 -1
  143. package/dist/ui/organisms/ErrorBoundary/ErrorBoundary.d.ts +2 -2
  144. package/dist/ui/organisms/ErrorBoundary/ErrorBoundary.js +0 -1
  145. package/dist/ui/organisms/ErrorBoundary/ErrorBoundary.js.map +1 -1
  146. package/dist/ui/organisms/ListPage/ListPage.d.ts +2 -2
  147. package/dist/ui/page-header.d.ts +5 -5
  148. package/dist/ui/pagination.d.ts +6 -6
  149. package/dist/ui/pagination.js +7 -7
  150. package/dist/ui/pagination.js.map +1 -1
  151. package/dist/ui/popover.d.ts +5 -5
  152. package/dist/ui/popover.js +1 -2
  153. package/dist/ui/popover.js.map +1 -1
  154. package/dist/ui/progress.js +1 -2
  155. package/dist/ui/progress.js.map +1 -1
  156. package/dist/ui/radio-group.d.ts +3 -3
  157. package/dist/ui/radio-group.js +2 -3
  158. package/dist/ui/radio-group.js.map +1 -1
  159. package/dist/ui/resizable.d.ts +7 -7
  160. package/dist/ui/resizable.d.ts.map +1 -1
  161. package/dist/ui/resizable.js +2 -3
  162. package/dist/ui/resizable.js.map +1 -1
  163. package/dist/ui/route-announcer.d.ts +2 -2
  164. package/dist/ui/route-announcer.js +0 -1
  165. package/dist/ui/route-announcer.js.map +1 -1
  166. package/dist/ui/scroll-area.d.ts +3 -3
  167. package/dist/ui/scroll-area.js +2 -3
  168. package/dist/ui/scroll-area.js.map +1 -1
  169. package/dist/ui/section.d.ts +7 -7
  170. package/dist/ui/section.d.ts.map +1 -1
  171. package/dist/ui/section.js +1 -1
  172. package/dist/ui/section.js.map +1 -1
  173. package/dist/ui/select.d.ts +11 -11
  174. package/dist/ui/select.js +7 -8
  175. package/dist/ui/select.js.map +1 -1
  176. package/dist/ui/separator.d.ts +2 -2
  177. package/dist/ui/separator.js +1 -2
  178. package/dist/ui/separator.js.map +1 -1
  179. package/dist/ui/sheet.d.ts +9 -9
  180. package/dist/ui/sheet.js +6 -7
  181. package/dist/ui/sheet.js.map +1 -1
  182. package/dist/ui/sidebar.d.ts +28 -28
  183. package/dist/ui/sidebar.d.ts.map +1 -1
  184. package/dist/ui/sidebar.js +23 -24
  185. package/dist/ui/sidebar.js.map +1 -1
  186. package/dist/ui/skeleton.d.ts +2 -2
  187. package/dist/ui/skeleton.js +1 -1
  188. package/dist/ui/skeleton.js.map +1 -1
  189. package/dist/ui/skip-link.d.ts +2 -2
  190. package/dist/ui/skip-link.js +1 -1
  191. package/dist/ui/skip-link.js.map +1 -1
  192. package/dist/ui/slider.d.ts +2 -2
  193. package/dist/ui/slider.js +1 -2
  194. package/dist/ui/slider.js.map +1 -1
  195. package/dist/ui/sonner.d.ts +2 -2
  196. package/dist/ui/sonner.js +0 -1
  197. package/dist/ui/sonner.js.map +1 -1
  198. package/dist/ui/stack.d.ts +13 -13
  199. package/dist/ui/stack.d.ts.map +1 -1
  200. package/dist/ui/stack.js +3 -3
  201. package/dist/ui/stack.js.map +1 -1
  202. package/dist/ui/stat-card-group.d.ts +2 -2
  203. package/dist/ui/stepper.d.ts +2 -2
  204. package/dist/ui/switch.d.ts +2 -2
  205. package/dist/ui/switch.js +1 -2
  206. package/dist/ui/switch.js.map +1 -1
  207. package/dist/ui/table.d.ts +9 -9
  208. package/dist/ui/table.js +8 -9
  209. package/dist/ui/table.js.map +1 -1
  210. package/dist/ui/tabs.d.ts +5 -5
  211. package/dist/ui/tabs.js +4 -5
  212. package/dist/ui/tabs.js.map +1 -1
  213. package/dist/ui/text.d.ts +2 -2
  214. package/dist/ui/text.js +1 -1
  215. package/dist/ui/text.js.map +1 -1
  216. package/dist/ui/textarea.d.ts +2 -2
  217. package/dist/ui/textarea.js +1 -1
  218. package/dist/ui/textarea.js.map +1 -1
  219. package/dist/ui/time-picker.d.ts +2 -2
  220. package/dist/ui/time-picker.js +0 -1
  221. package/dist/ui/time-picker.js.map +1 -1
  222. package/dist/ui/toast.d.ts +2 -2
  223. package/dist/ui/toast.js +6 -7
  224. package/dist/ui/toast.js.map +1 -1
  225. package/dist/ui/toaster.d.ts +2 -2
  226. package/dist/ui/toaster.js +1 -2
  227. package/dist/ui/toaster.js.map +1 -1
  228. package/dist/ui/toggle-group.d.ts +3 -3
  229. package/dist/ui/toggle-group.js +2 -3
  230. package/dist/ui/toggle-group.js.map +1 -1
  231. package/dist/ui/toggle.d.ts +4 -4
  232. package/dist/ui/toggle.js +1 -2
  233. package/dist/ui/toggle.js.map +1 -1
  234. package/dist/ui/tooltip.d.ts +5 -5
  235. package/dist/ui/tooltip.js +2 -3
  236. package/dist/ui/tooltip.js.map +1 -1
  237. package/dist/ui/typography.d.ts +12 -12
  238. package/dist/ui/typography.js +11 -11
  239. package/dist/ui/typography.js.map +1 -1
  240. package/dist/ui/use-toast.js +0 -1
  241. package/dist/ui/use-toast.js.map +1 -1
  242. package/dist/ui/usecases/UseCaseCard.d.ts +2 -2
  243. package/dist/ui/usecases/UserStoryCard.d.ts +2 -2
  244. package/dist/ui/visually-hidden.js +1 -1
  245. package/dist/ui/visually-hidden.js.map +1 -1
  246. package/package.json +9 -10
  247. package/dist/ui/sidebar-right.d.ts +0 -165
  248. package/dist/ui/sidebar-right.d.ts.map +0 -1
  249. package/dist/ui/sidebar-right.js +0 -380
  250. package/dist/ui/sidebar-right.js.map +0 -1
@@ -1,6 +1,5 @@
1
1
  'use client';
2
2
 
3
-
4
3
  import { cn } from "./utils.js";
5
4
  import { Button, buttonVariants } from "./button.js";
6
5
  import * as React$1 from "react";
@@ -9,7 +8,7 @@ import { jsx } from "react/jsx-runtime";
9
8
  import { DayButton, DayPicker, getDefaultClassNames } from "react-day-picker";
10
9
 
11
10
  //#region ui/calendar.tsx
12
- function Calendar({ className, classNames, showOutsideDays = true, captionLayout = "label", buttonVariant = "ghost", formatters, components,...props }) {
11
+ function Calendar({ className, classNames, showOutsideDays = true, captionLayout = "label", buttonVariant = "ghost", formatters, components, ...props }) {
13
12
  const defaultClassNames = getDefaultClassNames();
14
13
  return /* @__PURE__ */ jsx(DayPicker, {
15
14
  showOutsideDays,
@@ -48,7 +47,7 @@ function Calendar({ className, classNames, showOutsideDays = true, captionLayout
48
47
  ...classNames
49
48
  },
50
49
  components: {
51
- Root: ({ className: className$1, rootRef,...props$1 }) => {
50
+ Root: ({ className: className$1, rootRef, ...props$1 }) => {
52
51
  return /* @__PURE__ */ jsx("div", {
53
52
  "data-slot": "calendar",
54
53
  ref: rootRef,
@@ -56,7 +55,7 @@ function Calendar({ className, classNames, showOutsideDays = true, captionLayout
56
55
  ...props$1
57
56
  });
58
57
  },
59
- Chevron: ({ className: className$1, orientation,...props$1 }) => {
58
+ Chevron: ({ className: className$1, orientation, ...props$1 }) => {
60
59
  if (orientation === "left") return /* @__PURE__ */ jsx(ChevronLeftIcon, {
61
60
  className: cn("size-4", className$1),
62
61
  ...props$1
@@ -71,7 +70,7 @@ function Calendar({ className, classNames, showOutsideDays = true, captionLayout
71
70
  });
72
71
  },
73
72
  DayButton: CalendarDayButton,
74
- WeekNumber: ({ children,...props$1 }) => {
73
+ WeekNumber: ({ children, ...props$1 }) => {
75
74
  return /* @__PURE__ */ jsx("td", {
76
75
  ...props$1,
77
76
  children: /* @__PURE__ */ jsx("div", {
@@ -85,7 +84,7 @@ function Calendar({ className, classNames, showOutsideDays = true, captionLayout
85
84
  ...props
86
85
  });
87
86
  }
88
- function CalendarDayButton({ className, day, modifiers,...props }) {
87
+ function CalendarDayButton({ className, day, modifiers, ...props }) {
89
88
  const defaultClassNames = getDefaultClassNames();
90
89
  const ref = React$1.useRef(null);
91
90
  React$1.useEffect(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"calendar.js","names":["props","className","React"],"sources":["../../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 './utils';\nimport { Button, buttonVariants } from './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 'group/calendar bg-background p-3 [--cell-size:--spacing(8)] in-data-[slot=card-content]:bg-transparent in-data-[slot=popover-content]:bg-transparent',\n String.raw`rtl:**:[.rdp-button\\_next>svg]:rotate-180`,\n String.raw`rtl:**:[.rdp-button\\_previous>svg]:rotate-180`,\n className\n )}\n captionLayout={captionLayout}\n 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 'size-(--cell-size) p-0 select-none aria-disabled:opacity-50',\n defaultClassNames.button_previous\n ),\n button_next: cn(\n buttonVariants({ variant: buttonVariant }),\n 'size-(--cell-size) p-0 select-none aria-disabled:opacity-50',\n defaultClassNames.button_next\n ),\n month_caption: cn(\n 'flex h-(--cell-size) w-full items-center justify-center px-(--cell-size)',\n defaultClassNames.month_caption\n ),\n dropdowns: cn(\n 'flex h-(--cell-size) w-full items-center justify-center gap-1.5 text-sm font-medium',\n defaultClassNames.dropdowns\n ),\n dropdown_root: cn(\n 'has-focus:border-ring has-focus:ring-ring/50 border-input relative rounded-md border shadow-2xs has-focus:ring-[3px]',\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 'font-medium select-none',\n captionLayout === 'label'\n ? 'text-sm'\n : '[&>svg]:text-muted-foreground flex h-8 items-center gap-1 rounded-md pr-1 pl-2 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 rounded-md text-[0.8rem] font-normal select-none',\n defaultClassNames.weekday\n ),\n week: cn('mt-2 flex w-full', defaultClassNames.week),\n week_number_header: cn(\n 'w-(--cell-size) select-none',\n defaultClassNames.week_number_header\n ),\n week_number: cn(\n 'text-muted-foreground text-[0.8rem] select-none',\n defaultClassNames.week_number\n ),\n day: cn(\n 'group/day relative aspect-square h-full w-full p-0 text-center select-none [&: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-[range-end=true]:bg-primary data-[range-middle=true]:bg-accent data-[range-start=true]:bg-primary data-[selected-single=true]:bg-primary data-[range-end=true]:text-primary-foreground data-[range-middle=true]:text-accent-foreground data-[range-start=true]:text-primary-foreground data-[selected-single=true]:text-primary-foreground group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-ring/50 dark:hover:text-accent-foreground 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:ring-[3px] data-[range-end=true]:rounded-md data-[range-end=true]:rounded-r-md data-[range-middle=true]:rounded-none data-[range-start=true]:rounded-md data-[range-start=true]:rounded-l-md [&>span]:text-xs [&>span]:opacity-70',\n defaultClassNames.day,\n className\n )}\n {...props}\n />\n );\n}\n\nexport { Calendar, CalendarDayButton };\n"],"mappings":"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"}
1
+ {"version":3,"file":"calendar.js","names":["props","className","React"],"sources":["../../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 './utils';\nimport { Button, buttonVariants } from './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 'group/calendar bg-background p-3 [--cell-size:--spacing(8)] in-data-[slot=card-content]:bg-transparent in-data-[slot=popover-content]:bg-transparent',\n String.raw`rtl:**:[.rdp-button\\_next>svg]:rotate-180`,\n String.raw`rtl:**:[.rdp-button\\_previous>svg]:rotate-180`,\n className\n )}\n captionLayout={captionLayout}\n 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 'size-(--cell-size) p-0 select-none aria-disabled:opacity-50',\n defaultClassNames.button_previous\n ),\n button_next: cn(\n buttonVariants({ variant: buttonVariant }),\n 'size-(--cell-size) p-0 select-none aria-disabled:opacity-50',\n defaultClassNames.button_next\n ),\n month_caption: cn(\n 'flex h-(--cell-size) w-full items-center justify-center px-(--cell-size)',\n defaultClassNames.month_caption\n ),\n dropdowns: cn(\n 'flex h-(--cell-size) w-full items-center justify-center gap-1.5 text-sm font-medium',\n defaultClassNames.dropdowns\n ),\n dropdown_root: cn(\n 'has-focus:border-ring has-focus:ring-ring/50 border-input relative rounded-md border shadow-2xs has-focus:ring-[3px]',\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 'font-medium select-none',\n captionLayout === 'label'\n ? 'text-sm'\n : '[&>svg]:text-muted-foreground flex h-8 items-center gap-1 rounded-md pr-1 pl-2 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 rounded-md text-[0.8rem] font-normal select-none',\n defaultClassNames.weekday\n ),\n week: cn('mt-2 flex w-full', defaultClassNames.week),\n week_number_header: cn(\n 'w-(--cell-size) select-none',\n defaultClassNames.week_number_header\n ),\n week_number: cn(\n 'text-muted-foreground text-[0.8rem] select-none',\n defaultClassNames.week_number\n ),\n day: cn(\n 'group/day relative aspect-square h-full w-full p-0 text-center select-none [&: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-[range-end=true]:bg-primary data-[range-middle=true]:bg-accent data-[range-start=true]:bg-primary data-[selected-single=true]:bg-primary data-[range-end=true]:text-primary-foreground data-[range-middle=true]:text-accent-foreground data-[range-start=true]:text-primary-foreground data-[selected-single=true]:text-primary-foreground group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-ring/50 dark:hover:text-accent-foreground 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:ring-[3px] data-[range-end=true]:rounded-md data-[range-end=true]:rounded-r-md data-[range-middle=true]:rounded-none data-[range-start=true]:rounded-md data-[range-start=true]:rounded-l-md [&>span]:text-xs [&>span]:opacity-70',\n defaultClassNames.day,\n className\n )}\n {...props}\n />\n );\n}\n\nexport { Calendar, CalendarDayButton };\n"],"mappings":"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"}
package/dist/ui/card.d.ts CHANGED
@@ -1,35 +1,35 @@
1
1
  import * as React$1 from "react";
2
- import * as react_jsx_runtime267 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime178 from "react/jsx-runtime";
3
3
 
4
4
  //#region ui/card.d.ts
5
5
  declare function Card({
6
6
  className,
7
7
  ...props
8
- }: React$1.ComponentProps<'div'>): react_jsx_runtime267.JSX.Element;
8
+ }: React$1.ComponentProps<'div'>): react_jsx_runtime178.JSX.Element;
9
9
  declare function CardHeader({
10
10
  className,
11
11
  ...props
12
- }: React$1.ComponentProps<'div'>): react_jsx_runtime267.JSX.Element;
12
+ }: React$1.ComponentProps<'div'>): react_jsx_runtime178.JSX.Element;
13
13
  declare function CardTitle({
14
14
  className,
15
15
  ...props
16
- }: React$1.ComponentProps<'div'>): react_jsx_runtime267.JSX.Element;
16
+ }: React$1.ComponentProps<'div'>): react_jsx_runtime178.JSX.Element;
17
17
  declare function CardDescription({
18
18
  className,
19
19
  ...props
20
- }: React$1.ComponentProps<'div'>): react_jsx_runtime267.JSX.Element;
20
+ }: React$1.ComponentProps<'div'>): react_jsx_runtime178.JSX.Element;
21
21
  declare function CardAction({
22
22
  className,
23
23
  ...props
24
- }: React$1.ComponentProps<'div'>): react_jsx_runtime267.JSX.Element;
24
+ }: React$1.ComponentProps<'div'>): react_jsx_runtime178.JSX.Element;
25
25
  declare function CardContent({
26
26
  className,
27
27
  ...props
28
- }: React$1.ComponentProps<'div'>): react_jsx_runtime267.JSX.Element;
28
+ }: React$1.ComponentProps<'div'>): react_jsx_runtime178.JSX.Element;
29
29
  declare function CardFooter({
30
30
  className,
31
31
  ...props
32
- }: React$1.ComponentProps<'div'>): react_jsx_runtime267.JSX.Element;
32
+ }: React$1.ComponentProps<'div'>): react_jsx_runtime178.JSX.Element;
33
33
  //#endregion
34
34
  export { Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle };
35
35
  //# sourceMappingURL=card.d.ts.map
package/dist/ui/card.js CHANGED
@@ -3,49 +3,49 @@ import "react";
3
3
  import { jsx } from "react/jsx-runtime";
4
4
 
5
5
  //#region ui/card.tsx
6
- function Card({ className,...props }) {
6
+ function Card({ className, ...props }) {
7
7
  return /* @__PURE__ */ jsx("div", {
8
8
  "data-slot": "card",
9
9
  className: cn("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-2xs", className),
10
10
  ...props
11
11
  });
12
12
  }
13
- function CardHeader({ className,...props }) {
13
+ function CardHeader({ className, ...props }) {
14
14
  return /* @__PURE__ */ jsx("div", {
15
15
  "data-slot": "card-header",
16
16
  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),
17
17
  ...props
18
18
  });
19
19
  }
20
- function CardTitle({ className,...props }) {
20
+ function CardTitle({ className, ...props }) {
21
21
  return /* @__PURE__ */ jsx("div", {
22
22
  "data-slot": "card-title",
23
23
  className: cn("leading-none font-semibold", className),
24
24
  ...props
25
25
  });
26
26
  }
27
- function CardDescription({ className,...props }) {
27
+ function CardDescription({ className, ...props }) {
28
28
  return /* @__PURE__ */ jsx("div", {
29
29
  "data-slot": "card-description",
30
30
  className: cn("text-muted-foreground text-sm", className),
31
31
  ...props
32
32
  });
33
33
  }
34
- function CardAction({ className,...props }) {
34
+ function CardAction({ className, ...props }) {
35
35
  return /* @__PURE__ */ jsx("div", {
36
36
  "data-slot": "card-action",
37
37
  className: cn("col-start-2 row-span-2 row-start-1 self-start justify-self-end", className),
38
38
  ...props
39
39
  });
40
40
  }
41
- function CardContent({ className,...props }) {
41
+ function CardContent({ className, ...props }) {
42
42
  return /* @__PURE__ */ jsx("div", {
43
43
  "data-slot": "card-content",
44
44
  className: cn("px-6", className),
45
45
  ...props
46
46
  });
47
47
  }
48
- function CardFooter({ className,...props }) {
48
+ function CardFooter({ className, ...props }) {
49
49
  return /* @__PURE__ */ jsx("div", {
50
50
  "data-slot": "card-footer",
51
51
  className: cn("flex items-center px-6 [.border-t]:pt-6", className),
@@ -1 +1 @@
1
- {"version":3,"file":"card.js","names":[],"sources":["../../ui/card.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { cn } from './utils';\n\nfunction Card({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"card\"\n className={cn(\n 'bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-2xs',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction CardHeader({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"card-header\"\n className={cn(\n '@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',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction CardTitle({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"card-title\"\n className={cn('leading-none font-semibold', className)}\n {...props}\n />\n );\n}\n\nfunction CardDescription({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"card-description\"\n className={cn('text-muted-foreground text-sm', className)}\n {...props}\n />\n );\n}\n\nfunction CardAction({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"card-action\"\n className={cn(\n 'col-start-2 row-span-2 row-start-1 self-start justify-self-end',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction CardContent({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"card-content\"\n className={cn('px-6', className)}\n {...props}\n />\n );\n}\n\nfunction CardFooter({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"card-footer\"\n className={cn('flex items-center px-6 [.border-t]:pt-6', className)}\n {...props}\n />\n );\n}\n\nexport {\n Card,\n CardHeader,\n CardFooter,\n CardTitle,\n CardAction,\n CardDescription,\n CardContent,\n};\n"],"mappings":";;;;;AAIA,SAAS,KAAK,EAAE,UAAW,GAAG,SAAsC;AAClE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,sFACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,WAAW,EAAE,UAAW,GAAG,SAAsC;AACxE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,8JACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,UAAU,EAAE,UAAW,GAAG,SAAsC;AACvE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GAAG,8BAA8B,UAAU;EACtD,GAAI;GACJ;;AAIN,SAAS,gBAAgB,EAAE,UAAW,GAAG,SAAsC;AAC7E,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GAAG,iCAAiC,UAAU;EACzD,GAAI;GACJ;;AAIN,SAAS,WAAW,EAAE,UAAW,GAAG,SAAsC;AACxE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,kEACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,YAAY,EAAE,UAAW,GAAG,SAAsC;AACzE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GAAG,QAAQ,UAAU;EAChC,GAAI;GACJ;;AAIN,SAAS,WAAW,EAAE,UAAW,GAAG,SAAsC;AACxE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GAAG,2CAA2C,UAAU;EACnE,GAAI;GACJ"}
1
+ {"version":3,"file":"card.js","names":[],"sources":["../../ui/card.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { cn } from './utils';\n\nfunction Card({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"card\"\n className={cn(\n 'bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-2xs',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction CardHeader({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"card-header\"\n className={cn(\n '@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',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction CardTitle({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"card-title\"\n className={cn('leading-none font-semibold', className)}\n {...props}\n />\n );\n}\n\nfunction CardDescription({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"card-description\"\n className={cn('text-muted-foreground text-sm', className)}\n {...props}\n />\n );\n}\n\nfunction CardAction({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"card-action\"\n className={cn(\n 'col-start-2 row-span-2 row-start-1 self-start justify-self-end',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction CardContent({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"card-content\"\n className={cn('px-6', className)}\n {...props}\n />\n );\n}\n\nfunction CardFooter({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"card-footer\"\n className={cn('flex items-center px-6 [.border-t]:pt-6', className)}\n {...props}\n />\n );\n}\n\nexport {\n Card,\n CardHeader,\n CardFooter,\n CardTitle,\n CardAction,\n CardDescription,\n CardContent,\n};\n"],"mappings":";;;;;AAIA,SAAS,KAAK,EAAE,WAAW,GAAG,SAAsC;AAClE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,sFACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,WAAW,EAAE,WAAW,GAAG,SAAsC;AACxE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,8JACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,UAAU,EAAE,WAAW,GAAG,SAAsC;AACvE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GAAG,8BAA8B,UAAU;EACtD,GAAI;GACJ;;AAIN,SAAS,gBAAgB,EAAE,WAAW,GAAG,SAAsC;AAC7E,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GAAG,iCAAiC,UAAU;EACzD,GAAI;GACJ;;AAIN,SAAS,WAAW,EAAE,WAAW,GAAG,SAAsC;AACxE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,kEACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,YAAY,EAAE,WAAW,GAAG,SAAsC;AACzE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GAAG,QAAQ,UAAU;EAChC,GAAI;GACJ;;AAIN,SAAS,WAAW,EAAE,WAAW,GAAG,SAAsC;AACxE,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GAAG,2CAA2C,UAAU;EACnE,GAAI;GACJ"}
@@ -1,6 +1,6 @@
1
1
  import { Button } from "./button.js";
2
2
  import * as React$1 from "react";
3
- import * as react_jsx_runtime256 from "react/jsx-runtime";
3
+ import * as react_jsx_runtime141 from "react/jsx-runtime";
4
4
  import useEmblaCarousel, { UseEmblaCarouselType } from "embla-carousel-react";
5
5
 
6
6
  //#region ui/carousel.d.ts
@@ -22,27 +22,27 @@ declare function Carousel({
22
22
  className,
23
23
  children,
24
24
  ...props
25
- }: React$1.ComponentProps<'div'> & CarouselProps): react_jsx_runtime256.JSX.Element;
25
+ }: React$1.ComponentProps<'div'> & CarouselProps): react_jsx_runtime141.JSX.Element;
26
26
  declare function CarouselContent({
27
27
  className,
28
28
  ...props
29
- }: React$1.ComponentProps<'div'>): react_jsx_runtime256.JSX.Element;
29
+ }: React$1.ComponentProps<'div'>): react_jsx_runtime141.JSX.Element;
30
30
  declare function CarouselItem({
31
31
  className,
32
32
  ...props
33
- }: React$1.ComponentProps<'div'>): react_jsx_runtime256.JSX.Element;
33
+ }: React$1.ComponentProps<'div'>): react_jsx_runtime141.JSX.Element;
34
34
  declare function CarouselPrevious({
35
35
  className,
36
36
  variant,
37
37
  size,
38
38
  ...props
39
- }: React$1.ComponentProps<typeof Button>): react_jsx_runtime256.JSX.Element;
39
+ }: React$1.ComponentProps<typeof Button>): react_jsx_runtime141.JSX.Element;
40
40
  declare function CarouselNext({
41
41
  className,
42
42
  variant,
43
43
  size,
44
44
  ...props
45
- }: React$1.ComponentProps<typeof Button>): react_jsx_runtime256.JSX.Element;
45
+ }: React$1.ComponentProps<typeof Button>): react_jsx_runtime141.JSX.Element;
46
46
  //#endregion
47
47
  export { Carousel, type CarouselApi, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious };
48
48
  //# sourceMappingURL=carousel.d.ts.map
@@ -1,6 +1,5 @@
1
1
  'use client';
2
2
 
3
-
4
3
  import { cn } from "./utils.js";
5
4
  import { Button } from "./button.js";
6
5
  import * as React$1 from "react";
@@ -15,7 +14,7 @@ function useCarousel() {
15
14
  if (!context) throw new Error("useCarousel must be used within a <Carousel />");
16
15
  return context;
17
16
  }
18
- function Carousel({ orientation = "horizontal", opts, setApi, plugins, className, children,...props }) {
17
+ function Carousel({ orientation = "horizontal", opts, setApi, plugins, className, children, ...props }) {
19
18
  const [carouselRef, api] = useEmblaCarousel({
20
19
  ...opts,
21
20
  axis: orientation === "horizontal" ? "x" : "y"
@@ -77,7 +76,7 @@ function Carousel({ orientation = "horizontal", opts, setApi, plugins, className
77
76
  })
78
77
  });
79
78
  }
80
- function CarouselContent({ className,...props }) {
79
+ function CarouselContent({ className, ...props }) {
81
80
  const { carouselRef, orientation } = useCarousel();
82
81
  return /* @__PURE__ */ jsx("div", {
83
82
  ref: carouselRef,
@@ -89,7 +88,7 @@ function CarouselContent({ className,...props }) {
89
88
  })
90
89
  });
91
90
  }
92
- function CarouselItem({ className,...props }) {
91
+ function CarouselItem({ className, ...props }) {
93
92
  const { orientation } = useCarousel();
94
93
  return /* @__PURE__ */ jsx("div", {
95
94
  role: "group",
@@ -99,7 +98,7 @@ function CarouselItem({ className,...props }) {
99
98
  ...props
100
99
  });
101
100
  }
102
- function CarouselPrevious({ className, variant = "outline", size = "icon",...props }) {
101
+ function CarouselPrevious({ className, variant = "outline", size = "icon", ...props }) {
103
102
  const { orientation, scrollPrev, canScrollPrev } = useCarousel();
104
103
  return /* @__PURE__ */ jsxs(Button, {
105
104
  "data-slot": "carousel-previous",
@@ -115,7 +114,7 @@ function CarouselPrevious({ className, variant = "outline", size = "icon",...pro
115
114
  })]
116
115
  });
117
116
  }
118
- function CarouselNext({ className, variant = "outline", size = "icon",...props }) {
117
+ function CarouselNext({ className, variant = "outline", size = "icon", ...props }) {
119
118
  const { orientation, scrollNext, canScrollNext } = useCarousel();
120
119
  return /* @__PURE__ */ jsxs(Button, {
121
120
  "data-slot": "carousel-next",
@@ -1 +1 @@
1
- {"version":3,"file":"carousel.js","names":["React","api"],"sources":["../../ui/carousel.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport useEmblaCarousel, {\n type UseEmblaCarouselType,\n} from 'embla-carousel-react';\nimport { ArrowLeft, ArrowRight } from 'lucide-react';\n\nimport { cn } from './utils';\nimport { Button } from './button';\n\ntype CarouselApi = UseEmblaCarouselType[1];\ntype UseCarouselParameters = Parameters<typeof useEmblaCarousel>;\ntype CarouselOptions = UseCarouselParameters[0];\ntype CarouselPlugin = UseCarouselParameters[1];\n\ninterface 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\nfunction Carousel({\n orientation = 'horizontal',\n opts,\n setApi,\n plugins,\n className,\n children,\n ...props\n}: React.ComponentProps<'div'> & CarouselProps) {\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) return;\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) return;\n setApi(api);\n }, [api, setApi]);\n\n React.useEffect(() => {\n if (!api) return;\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 onKeyDownCapture={handleKeyDown}\n className={cn('relative', className)}\n role=\"region\"\n aria-roledescription=\"carousel\"\n data-slot=\"carousel\"\n {...props}\n >\n {children}\n </div>\n </CarouselContext.Provider>\n );\n}\n\nfunction CarouselContent({ className, ...props }: React.ComponentProps<'div'>) {\n const { carouselRef, orientation } = useCarousel();\n\n return (\n <div\n ref={carouselRef}\n className=\"overflow-hidden\"\n data-slot=\"carousel-content\"\n >\n <div\n className={cn(\n 'flex',\n orientation === 'horizontal' ? '-ml-4' : '-mt-4 flex-col',\n className\n )}\n {...props}\n />\n </div>\n );\n}\n\nfunction CarouselItem({ className, ...props }: React.ComponentProps<'div'>) {\n const { orientation } = useCarousel();\n\n return (\n <div\n role=\"group\"\n aria-roledescription=\"slide\"\n data-slot=\"carousel-item\"\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}\n\nfunction CarouselPrevious({\n className,\n variant = 'outline',\n size = 'icon',\n ...props\n}: React.ComponentProps<typeof Button>) {\n const { orientation, scrollPrev, canScrollPrev } = useCarousel();\n\n return (\n <Button\n data-slot=\"carousel-previous\"\n variant={variant}\n size={size}\n className={cn(\n 'absolute size-8 rounded-full',\n orientation === 'horizontal'\n ? 'top-1/2 -left-12 -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 />\n <span className=\"sr-only\">Previous slide</span>\n </Button>\n );\n}\n\nfunction CarouselNext({\n className,\n variant = 'outline',\n size = 'icon',\n ...props\n}: React.ComponentProps<typeof Button>) {\n const { orientation, scrollNext, canScrollNext } = useCarousel();\n\n return (\n <Button\n data-slot=\"carousel-next\"\n variant={variant}\n size={size}\n className={cn(\n 'absolute size-8 rounded-full',\n orientation === 'horizontal'\n ? 'top-1/2 -right-12 -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 />\n <span className=\"sr-only\">Next slide</span>\n </Button>\n );\n}\n\nexport {\n type CarouselApi,\n Carousel,\n CarouselContent,\n CarouselItem,\n CarouselPrevious,\n CarouselNext,\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"carousel.js","names":["React","api"],"sources":["../../ui/carousel.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport useEmblaCarousel, {\n type UseEmblaCarouselType,\n} from 'embla-carousel-react';\nimport { ArrowLeft, ArrowRight } from 'lucide-react';\n\nimport { cn } from './utils';\nimport { Button } from './button';\n\ntype CarouselApi = UseEmblaCarouselType[1];\ntype UseCarouselParameters = Parameters<typeof useEmblaCarousel>;\ntype CarouselOptions = UseCarouselParameters[0];\ntype CarouselPlugin = UseCarouselParameters[1];\n\ninterface 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\nfunction Carousel({\n orientation = 'horizontal',\n opts,\n setApi,\n plugins,\n className,\n children,\n ...props\n}: React.ComponentProps<'div'> & CarouselProps) {\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) return;\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) return;\n setApi(api);\n }, [api, setApi]);\n\n React.useEffect(() => {\n if (!api) return;\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 onKeyDownCapture={handleKeyDown}\n className={cn('relative', className)}\n role=\"region\"\n aria-roledescription=\"carousel\"\n data-slot=\"carousel\"\n {...props}\n >\n {children}\n </div>\n </CarouselContext.Provider>\n );\n}\n\nfunction CarouselContent({ className, ...props }: React.ComponentProps<'div'>) {\n const { carouselRef, orientation } = useCarousel();\n\n return (\n <div\n ref={carouselRef}\n className=\"overflow-hidden\"\n data-slot=\"carousel-content\"\n >\n <div\n className={cn(\n 'flex',\n orientation === 'horizontal' ? '-ml-4' : '-mt-4 flex-col',\n className\n )}\n {...props}\n />\n </div>\n );\n}\n\nfunction CarouselItem({ className, ...props }: React.ComponentProps<'div'>) {\n const { orientation } = useCarousel();\n\n return (\n <div\n role=\"group\"\n aria-roledescription=\"slide\"\n data-slot=\"carousel-item\"\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}\n\nfunction CarouselPrevious({\n className,\n variant = 'outline',\n size = 'icon',\n ...props\n}: React.ComponentProps<typeof Button>) {\n const { orientation, scrollPrev, canScrollPrev } = useCarousel();\n\n return (\n <Button\n data-slot=\"carousel-previous\"\n variant={variant}\n size={size}\n className={cn(\n 'absolute size-8 rounded-full',\n orientation === 'horizontal'\n ? 'top-1/2 -left-12 -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 />\n <span className=\"sr-only\">Previous slide</span>\n </Button>\n );\n}\n\nfunction CarouselNext({\n className,\n variant = 'outline',\n size = 'icon',\n ...props\n}: React.ComponentProps<typeof Button>) {\n const { orientation, scrollNext, canScrollNext } = useCarousel();\n\n return (\n <Button\n data-slot=\"carousel-next\"\n variant={variant}\n size={size}\n className={cn(\n 'absolute size-8 rounded-full',\n orientation === 'horizontal'\n ? 'top-1/2 -right-12 -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 />\n <span className=\"sr-only\">Next slide</span>\n </Button>\n );\n}\n\nexport {\n type CarouselApi,\n Carousel,\n CarouselContent,\n CarouselItem,\n CarouselPrevious,\n CarouselNext,\n};\n"],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  import * as React$1 from "react";
2
- import * as react_jsx_runtime130 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime140 from "react/jsx-runtime";
3
3
  import * as CheckboxPrimitive from "@radix-ui/react-checkbox";
4
4
 
5
5
  //#region ui/checkbox.d.ts
6
6
  declare function Checkbox({
7
7
  className,
8
8
  ...props
9
- }: React$1.ComponentProps<typeof CheckboxPrimitive.Root>): react_jsx_runtime130.JSX.Element;
9
+ }: React$1.ComponentProps<typeof CheckboxPrimitive.Root>): react_jsx_runtime140.JSX.Element;
10
10
  //#endregion
11
11
  export { Checkbox };
12
12
  //# sourceMappingURL=checkbox.d.ts.map
@@ -1,6 +1,5 @@
1
1
  'use client';
2
2
 
3
-
4
3
  import { cn } from "./utils.js";
5
4
  import "react";
6
5
  import { CheckIcon } from "lucide-react";
@@ -8,7 +7,7 @@ import { jsx } from "react/jsx-runtime";
8
7
  import * as CheckboxPrimitive from "@radix-ui/react-checkbox";
9
8
 
10
9
  //#region ui/checkbox.tsx
11
- function Checkbox({ className,...props }) {
10
+ function Checkbox({ className, ...props }) {
12
11
  return /* @__PURE__ */ jsx(CheckboxPrimitive.Root, {
13
12
  "data-slot": "checkbox",
14
13
  className: cn("aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive peer border-input focus-visible:border-ring focus-visible:ring-ring/50 data-[state=checked]:border-primary data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:bg-input/30 dark:data-[state=checked]:bg-primary size-4 shrink-0 rounded-[4px] border shadow-2xs outline-hidden transition-shadow focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50", className),
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox.js","names":[],"sources":["../../ui/checkbox.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport * as CheckboxPrimitive from '@radix-ui/react-checkbox';\nimport { CheckIcon } from 'lucide-react';\n\nimport { cn } from './utils';\n\nfunction Checkbox({\n className,\n ...props\n}: React.ComponentProps<typeof CheckboxPrimitive.Root>) {\n return (\n <CheckboxPrimitive.Root\n data-slot=\"checkbox\"\n className={cn(\n 'aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive peer border-input focus-visible:border-ring focus-visible:ring-ring/50 data-[state=checked]:border-primary data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:bg-input/30 dark:data-[state=checked]:bg-primary size-4 shrink-0 rounded-[4px] border shadow-2xs outline-hidden transition-shadow focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50',\n className\n )}\n {...props}\n >\n <CheckboxPrimitive.Indicator\n data-slot=\"checkbox-indicator\"\n className=\"flex items-center justify-center text-current transition-none\"\n >\n <CheckIcon className=\"size-3.5\" />\n </CheckboxPrimitive.Indicator>\n </CheckboxPrimitive.Root>\n );\n}\n\nexport { Checkbox };\n"],"mappings":";;;;;;;;;;AAQA,SAAS,SAAS,EAChB,UACA,GAAG,SACmD;AACtD,QACE,oBAAC,kBAAkB;EACjB,aAAU;EACV,WAAW,GACT,kfACA,UACD;EACD,GAAI;YAEJ,oBAAC,kBAAkB;GACjB,aAAU;GACV,WAAU;aAEV,oBAAC,aAAU,WAAU,aAAa;IACN;GACP"}
1
+ {"version":3,"file":"checkbox.js","names":[],"sources":["../../ui/checkbox.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport * as CheckboxPrimitive from '@radix-ui/react-checkbox';\nimport { CheckIcon } from 'lucide-react';\n\nimport { cn } from './utils';\n\nfunction Checkbox({\n className,\n ...props\n}: React.ComponentProps<typeof CheckboxPrimitive.Root>) {\n return (\n <CheckboxPrimitive.Root\n data-slot=\"checkbox\"\n className={cn(\n 'aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive peer border-input focus-visible:border-ring focus-visible:ring-ring/50 data-[state=checked]:border-primary data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:bg-input/30 dark:data-[state=checked]:bg-primary size-4 shrink-0 rounded-[4px] border shadow-2xs outline-hidden transition-shadow focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50',\n className\n )}\n {...props}\n >\n <CheckboxPrimitive.Indicator\n data-slot=\"checkbox-indicator\"\n className=\"flex items-center justify-center text-current transition-none\"\n >\n <CheckIcon className=\"size-3.5\" />\n </CheckboxPrimitive.Indicator>\n </CheckboxPrimitive.Root>\n );\n}\n\nexport { Checkbox };\n"],"mappings":";;;;;;;;;AAQA,SAAS,SAAS,EAChB,WACA,GAAG,SACmD;AACtD,QACE,oBAAC,kBAAkB;EACjB,aAAU;EACV,WAAW,GACT,kfACA,UACD;EACD,GAAI;YAEJ,oBAAC,kBAAkB;GACjB,aAAU;GACV,WAAU;aAEV,oBAAC,aAAU,WAAU,aAAa;IACN;GACP"}
@@ -1,16 +1,16 @@
1
- import * as react_jsx_runtime131 from "react/jsx-runtime";
1
+ import * as react_jsx_runtime137 from "react/jsx-runtime";
2
2
  import * as CollapsiblePrimitive from "@radix-ui/react-collapsible";
3
3
 
4
4
  //#region ui/collapsible.d.ts
5
5
  declare function Collapsible({
6
6
  ...props
7
- }: React.ComponentProps<typeof CollapsiblePrimitive.Root>): react_jsx_runtime131.JSX.Element;
7
+ }: React.ComponentProps<typeof CollapsiblePrimitive.Root>): react_jsx_runtime137.JSX.Element;
8
8
  declare function CollapsibleTrigger({
9
9
  ...props
10
- }: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleTrigger>): react_jsx_runtime131.JSX.Element;
10
+ }: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleTrigger>): react_jsx_runtime137.JSX.Element;
11
11
  declare function CollapsibleContent({
12
12
  ...props
13
- }: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleContent>): react_jsx_runtime131.JSX.Element;
13
+ }: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleContent>): react_jsx_runtime137.JSX.Element;
14
14
  //#endregion
15
15
  export { Collapsible, CollapsibleContent, CollapsibleTrigger };
16
16
  //# sourceMappingURL=collapsible.d.ts.map
@@ -1,6 +1,5 @@
1
1
  'use client';
2
2
 
3
-
4
3
  import { jsx } from "react/jsx-runtime";
5
4
  import * as CollapsiblePrimitive from "@radix-ui/react-collapsible";
6
5
 
@@ -1 +1 @@
1
- {"version":3,"file":"collapsible.js","names":[],"sources":["../../ui/collapsible.tsx"],"sourcesContent":["'use client';\n\nimport * as CollapsiblePrimitive from '@radix-ui/react-collapsible';\n\nfunction Collapsible({\n ...props\n}: React.ComponentProps<typeof CollapsiblePrimitive.Root>) {\n return <CollapsiblePrimitive.Root data-slot=\"collapsible\" {...props} />;\n}\n\nfunction CollapsibleTrigger({\n ...props\n}: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleTrigger>) {\n return (\n <CollapsiblePrimitive.CollapsibleTrigger\n data-slot=\"collapsible-trigger\"\n {...props}\n />\n );\n}\n\nfunction CollapsibleContent({\n ...props\n}: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleContent>) {\n return (\n <CollapsiblePrimitive.CollapsibleContent\n data-slot=\"collapsible-content\"\n {...props}\n />\n );\n}\n\nexport { Collapsible, CollapsibleTrigger, CollapsibleContent };\n"],"mappings":";;;;;;;AAIA,SAAS,YAAY,EACnB,GAAG,SACsD;AACzD,QAAO,oBAAC,qBAAqB;EAAK,aAAU;EAAc,GAAI;GAAS;;AAGzE,SAAS,mBAAmB,EAC1B,GAAG,SACoE;AACvE,QACE,oBAAC,qBAAqB;EACpB,aAAU;EACV,GAAI;GACJ;;AAIN,SAAS,mBAAmB,EAC1B,GAAG,SACoE;AACvE,QACE,oBAAC,qBAAqB;EACpB,aAAU;EACV,GAAI;GACJ"}
1
+ {"version":3,"file":"collapsible.js","names":[],"sources":["../../ui/collapsible.tsx"],"sourcesContent":["'use client';\n\nimport * as CollapsiblePrimitive from '@radix-ui/react-collapsible';\n\nfunction Collapsible({\n ...props\n}: React.ComponentProps<typeof CollapsiblePrimitive.Root>) {\n return <CollapsiblePrimitive.Root data-slot=\"collapsible\" {...props} />;\n}\n\nfunction CollapsibleTrigger({\n ...props\n}: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleTrigger>) {\n return (\n <CollapsiblePrimitive.CollapsibleTrigger\n data-slot=\"collapsible-trigger\"\n {...props}\n />\n );\n}\n\nfunction CollapsibleContent({\n ...props\n}: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleContent>) {\n return (\n <CollapsiblePrimitive.CollapsibleContent\n data-slot=\"collapsible-content\"\n {...props}\n />\n );\n}\n\nexport { Collapsible, CollapsibleTrigger, CollapsibleContent };\n"],"mappings":";;;;;;AAIA,SAAS,YAAY,EACnB,GAAG,SACsD;AACzD,QAAO,oBAAC,qBAAqB;EAAK,aAAU;EAAc,GAAI;GAAS;;AAGzE,SAAS,mBAAmB,EAC1B,GAAG,SACoE;AACvE,QACE,oBAAC,qBAAqB;EACpB,aAAU;EACV,GAAI;GACJ;;AAIN,SAAS,mBAAmB,EAC1B,GAAG,SACoE;AACvE,QACE,oBAAC,qBAAqB;EACpB,aAAU;EACV,GAAI;GACJ"}
@@ -1,13 +1,13 @@
1
1
  import { Dialog } from "./dialog.js";
2
2
  import * as React$1 from "react";
3
- import * as react_jsx_runtime100 from "react/jsx-runtime";
3
+ import * as react_jsx_runtime235 from "react/jsx-runtime";
4
4
  import { Command as Command$1 } from "cmdk";
5
5
 
6
6
  //#region ui/command.d.ts
7
7
  declare function Command({
8
8
  className,
9
9
  ...props
10
- }: React$1.ComponentProps<typeof Command$1>): react_jsx_runtime100.JSX.Element;
10
+ }: React$1.ComponentProps<typeof Command$1>): react_jsx_runtime235.JSX.Element;
11
11
  declare function CommandDialog({
12
12
  title,
13
13
  description,
@@ -20,34 +20,34 @@ declare function CommandDialog({
20
20
  description?: string;
21
21
  className?: string;
22
22
  showCloseButton?: boolean;
23
- }): react_jsx_runtime100.JSX.Element;
23
+ }): react_jsx_runtime235.JSX.Element;
24
24
  declare function CommandInput({
25
25
  className,
26
26
  ...props
27
- }: React$1.ComponentProps<typeof Command$1.Input>): react_jsx_runtime100.JSX.Element;
27
+ }: React$1.ComponentProps<typeof Command$1.Input>): react_jsx_runtime235.JSX.Element;
28
28
  declare function CommandList({
29
29
  className,
30
30
  ...props
31
- }: React$1.ComponentProps<typeof Command$1.List>): react_jsx_runtime100.JSX.Element;
31
+ }: React$1.ComponentProps<typeof Command$1.List>): react_jsx_runtime235.JSX.Element;
32
32
  declare function CommandEmpty({
33
33
  ...props
34
- }: React$1.ComponentProps<typeof Command$1.Empty>): react_jsx_runtime100.JSX.Element;
34
+ }: React$1.ComponentProps<typeof Command$1.Empty>): react_jsx_runtime235.JSX.Element;
35
35
  declare function CommandGroup({
36
36
  className,
37
37
  ...props
38
- }: React$1.ComponentProps<typeof Command$1.Group>): react_jsx_runtime100.JSX.Element;
38
+ }: React$1.ComponentProps<typeof Command$1.Group>): react_jsx_runtime235.JSX.Element;
39
39
  declare function CommandSeparator({
40
40
  className,
41
41
  ...props
42
- }: React$1.ComponentProps<typeof Command$1.Separator>): react_jsx_runtime100.JSX.Element;
42
+ }: React$1.ComponentProps<typeof Command$1.Separator>): react_jsx_runtime235.JSX.Element;
43
43
  declare function CommandItem({
44
44
  className,
45
45
  ...props
46
- }: React$1.ComponentProps<typeof Command$1.Item>): react_jsx_runtime100.JSX.Element;
46
+ }: React$1.ComponentProps<typeof Command$1.Item>): react_jsx_runtime235.JSX.Element;
47
47
  declare function CommandShortcut({
48
48
  className,
49
49
  ...props
50
- }: React$1.ComponentProps<'span'>): react_jsx_runtime100.JSX.Element;
50
+ }: React$1.ComponentProps<'span'>): react_jsx_runtime235.JSX.Element;
51
51
  //#endregion
52
52
  export { Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut };
53
53
  //# sourceMappingURL=command.d.ts.map
@@ -1,6 +1,5 @@
1
1
  'use client';
2
2
 
3
-
4
3
  import { cn } from "./utils.js";
5
4
  import { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle } from "./dialog.js";
6
5
  import "react";
@@ -9,14 +8,14 @@ import { jsx, jsxs } from "react/jsx-runtime";
9
8
  import { Command as Command$1 } from "cmdk";
10
9
 
11
10
  //#region ui/command.tsx
12
- function Command({ className,...props }) {
11
+ function Command({ className, ...props }) {
13
12
  return /* @__PURE__ */ jsx(Command$1, {
14
13
  "data-slot": "command",
15
14
  className: cn("bg-popover text-popover-foreground flex h-full w-full flex-col overflow-hidden rounded-md", className),
16
15
  ...props
17
16
  });
18
17
  }
19
- function CommandDialog({ title = "Command Palette", description = "Search for a command to run...", children, className, showCloseButton = true,...props }) {
18
+ function CommandDialog({ title = "Command Palette", description = "Search for a command to run...", children, className, showCloseButton = true, ...props }) {
20
19
  return /* @__PURE__ */ jsxs(Dialog, {
21
20
  ...props,
22
21
  children: [/* @__PURE__ */ jsxs(DialogHeader, {
@@ -32,7 +31,7 @@ function CommandDialog({ title = "Command Palette", description = "Search for a
32
31
  })]
33
32
  });
34
33
  }
35
- function CommandInput({ className,...props }) {
34
+ function CommandInput({ className, ...props }) {
36
35
  return /* @__PURE__ */ jsxs("div", {
37
36
  "data-slot": "command-input-wrapper",
38
37
  className: "flex h-9 items-center gap-2 border-b px-3",
@@ -43,7 +42,7 @@ function CommandInput({ className,...props }) {
43
42
  })]
44
43
  });
45
44
  }
46
- function CommandList({ className,...props }) {
45
+ function CommandList({ className, ...props }) {
47
46
  return /* @__PURE__ */ jsx(Command$1.List, {
48
47
  "data-slot": "command-list",
49
48
  className: cn("max-h-[300px] scroll-py-1 overflow-x-hidden overflow-y-auto", className),
@@ -57,28 +56,28 @@ function CommandEmpty({ ...props }) {
57
56
  ...props
58
57
  });
59
58
  }
60
- function CommandGroup({ className,...props }) {
59
+ function CommandGroup({ className, ...props }) {
61
60
  return /* @__PURE__ */ jsx(Command$1.Group, {
62
61
  "data-slot": "command-group",
63
62
  className: cn("text-foreground [&_[cmdk-group-heading]]:text-muted-foreground overflow-hidden p-1 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium", className),
64
63
  ...props
65
64
  });
66
65
  }
67
- function CommandSeparator({ className,...props }) {
66
+ function CommandSeparator({ className, ...props }) {
68
67
  return /* @__PURE__ */ jsx(Command$1.Separator, {
69
68
  "data-slot": "command-separator",
70
69
  className: cn("bg-border -mx-1 h-px", className),
71
70
  ...props
72
71
  });
73
72
  }
74
- function CommandItem({ className,...props }) {
73
+ function CommandItem({ className, ...props }) {
75
74
  return /* @__PURE__ */ jsx(Command$1.Item, {
76
75
  "data-slot": "command-item",
77
76
  className: cn("data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-xs px-2 py-1.5 text-sm outline-hidden select-none data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
78
77
  ...props
79
78
  });
80
79
  }
81
- function CommandShortcut({ className,...props }) {
80
+ function CommandShortcut({ className, ...props }) {
82
81
  return /* @__PURE__ */ jsx("span", {
83
82
  "data-slot": "command-shortcut",
84
83
  className: cn("text-muted-foreground ml-auto text-xs tracking-widest", className),
@@ -1 +1 @@
1
- {"version":3,"file":"command.js","names":["CommandPrimitive"],"sources":["../../ui/command.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { Command as CommandPrimitive } from 'cmdk';\nimport { SearchIcon } from 'lucide-react';\n\nimport { cn } from './utils';\nimport {\n Dialog,\n DialogContent,\n DialogDescription,\n DialogHeader,\n DialogTitle,\n} from './dialog';\n\nfunction Command({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive>) {\n return (\n <CommandPrimitive\n data-slot=\"command\"\n className={cn(\n 'bg-popover text-popover-foreground flex h-full w-full flex-col overflow-hidden rounded-md',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction CommandDialog({\n title = 'Command Palette',\n description = 'Search for a command to run...',\n children,\n className,\n showCloseButton = true,\n ...props\n}: React.ComponentProps<typeof Dialog> & {\n title?: string;\n description?: string;\n className?: string;\n showCloseButton?: boolean;\n}) {\n return (\n <Dialog {...props}>\n <DialogHeader className=\"sr-only\">\n <DialogTitle>{title}</DialogTitle>\n <DialogDescription>{description}</DialogDescription>\n </DialogHeader>\n <DialogContent\n className={cn('overflow-hidden p-0', className)}\n showCloseButton={showCloseButton}\n >\n <Command className=\"[&_[cmdk-group-heading]]:text-muted-foreground **:data-[slot=command-input-wrapper]:h-12 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group]]:px-2 [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5\">\n {children}\n </Command>\n </DialogContent>\n </Dialog>\n );\n}\n\nfunction CommandInput({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Input>) {\n return (\n <div\n data-slot=\"command-input-wrapper\"\n className=\"flex h-9 items-center gap-2 border-b px-3\"\n >\n <SearchIcon className=\"size-4 shrink-0 opacity-50\" />\n <CommandPrimitive.Input\n data-slot=\"command-input\"\n className={cn(\n 'placeholder:text-muted-foreground flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-hidden disabled:cursor-not-allowed disabled:opacity-50',\n className\n )}\n {...props}\n />\n </div>\n );\n}\n\nfunction CommandList({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.List>) {\n return (\n <CommandPrimitive.List\n data-slot=\"command-list\"\n className={cn(\n 'max-h-[300px] scroll-py-1 overflow-x-hidden overflow-y-auto',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction CommandEmpty({\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Empty>) {\n return (\n <CommandPrimitive.Empty\n data-slot=\"command-empty\"\n className=\"py-6 text-center text-sm\"\n {...props}\n />\n );\n}\n\nfunction CommandGroup({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Group>) {\n return (\n <CommandPrimitive.Group\n data-slot=\"command-group\"\n className={cn(\n 'text-foreground [&_[cmdk-group-heading]]:text-muted-foreground overflow-hidden p-1 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction CommandSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Separator>) {\n return (\n <CommandPrimitive.Separator\n data-slot=\"command-separator\"\n className={cn('bg-border -mx-1 h-px', className)}\n {...props}\n />\n );\n}\n\nfunction CommandItem({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Item>) {\n return (\n <CommandPrimitive.Item\n data-slot=\"command-item\"\n className={cn(\n \"data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-xs px-2 py-1.5 text-sm outline-hidden select-none data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction CommandShortcut({\n className,\n ...props\n}: React.ComponentProps<'span'>) {\n return (\n <span\n data-slot=\"command-shortcut\"\n className={cn(\n 'text-muted-foreground ml-auto text-xs tracking-widest',\n className\n )}\n {...props}\n />\n );\n}\n\nexport {\n Command,\n CommandDialog,\n CommandInput,\n CommandList,\n CommandEmpty,\n CommandGroup,\n CommandItem,\n CommandShortcut,\n CommandSeparator,\n};\n"],"mappings":";;;;;;;;;;;AAeA,SAAS,QAAQ,EACf,UACA,GAAG,SAC6C;AAChD,QACE,oBAACA;EACC,aAAU;EACV,WAAW,GACT,6FACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,cAAc,EACrB,QAAQ,mBACR,cAAc,kCACd,UACA,WACA,kBAAkB,KAClB,GAAG,SAMF;AACD,QACE,qBAAC;EAAO,GAAI;aACV,qBAAC;GAAa,WAAU;cACtB,oBAAC,yBAAa,QAAoB,EAClC,oBAAC,+BAAmB,cAAgC;IACvC,EACf,oBAAC;GACC,WAAW,GAAG,uBAAuB,UAAU;GAC9B;aAEjB,oBAAC;IAAQ,WAAU;IAChB;KACO;IACI;GACT;;AAIb,SAAS,aAAa,EACpB,UACA,GAAG,SACmD;AACtD,QACE,qBAAC;EACC,aAAU;EACV,WAAU;aAEV,oBAAC,cAAW,WAAU,+BAA+B,EACrD,oBAACA,UAAiB;GAChB,aAAU;GACV,WAAW,GACT,4JACA,UACD;GACD,GAAI;IACJ;GACE;;AAIV,SAAS,YAAY,EACnB,UACA,GAAG,SACkD;AACrD,QACE,oBAACA,UAAiB;EAChB,aAAU;EACV,WAAW,GACT,+DACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,aAAa,EACpB,GAAG,SACmD;AACtD,QACE,oBAACA,UAAiB;EAChB,aAAU;EACV,WAAU;EACV,GAAI;GACJ;;AAIN,SAAS,aAAa,EACpB,UACA,GAAG,SACmD;AACtD,QACE,oBAACA,UAAiB;EAChB,aAAU;EACV,WAAW,GACT,0NACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,iBAAiB,EACxB,UACA,GAAG,SACuD;AAC1D,QACE,oBAACA,UAAiB;EAChB,aAAU;EACV,WAAW,GAAG,wBAAwB,UAAU;EAChD,GAAI;GACJ;;AAIN,SAAS,YAAY,EACnB,UACA,GAAG,SACkD;AACrD,QACE,oBAACA,UAAiB;EAChB,aAAU;EACV,WAAW,GACT,uYACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,gBAAgB,EACvB,UACA,GAAG,SAC4B;AAC/B,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,yDACA,UACD;EACD,GAAI;GACJ"}
1
+ {"version":3,"file":"command.js","names":["CommandPrimitive"],"sources":["../../ui/command.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { Command as CommandPrimitive } from 'cmdk';\nimport { SearchIcon } from 'lucide-react';\n\nimport { cn } from './utils';\nimport {\n Dialog,\n DialogContent,\n DialogDescription,\n DialogHeader,\n DialogTitle,\n} from './dialog';\n\nfunction Command({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive>) {\n return (\n <CommandPrimitive\n data-slot=\"command\"\n className={cn(\n 'bg-popover text-popover-foreground flex h-full w-full flex-col overflow-hidden rounded-md',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction CommandDialog({\n title = 'Command Palette',\n description = 'Search for a command to run...',\n children,\n className,\n showCloseButton = true,\n ...props\n}: React.ComponentProps<typeof Dialog> & {\n title?: string;\n description?: string;\n className?: string;\n showCloseButton?: boolean;\n}) {\n return (\n <Dialog {...props}>\n <DialogHeader className=\"sr-only\">\n <DialogTitle>{title}</DialogTitle>\n <DialogDescription>{description}</DialogDescription>\n </DialogHeader>\n <DialogContent\n className={cn('overflow-hidden p-0', className)}\n showCloseButton={showCloseButton}\n >\n <Command className=\"[&_[cmdk-group-heading]]:text-muted-foreground **:data-[slot=command-input-wrapper]:h-12 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group]]:px-2 [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5\">\n {children}\n </Command>\n </DialogContent>\n </Dialog>\n );\n}\n\nfunction CommandInput({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Input>) {\n return (\n <div\n data-slot=\"command-input-wrapper\"\n className=\"flex h-9 items-center gap-2 border-b px-3\"\n >\n <SearchIcon className=\"size-4 shrink-0 opacity-50\" />\n <CommandPrimitive.Input\n data-slot=\"command-input\"\n className={cn(\n 'placeholder:text-muted-foreground flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-hidden disabled:cursor-not-allowed disabled:opacity-50',\n className\n )}\n {...props}\n />\n </div>\n );\n}\n\nfunction CommandList({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.List>) {\n return (\n <CommandPrimitive.List\n data-slot=\"command-list\"\n className={cn(\n 'max-h-[300px] scroll-py-1 overflow-x-hidden overflow-y-auto',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction CommandEmpty({\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Empty>) {\n return (\n <CommandPrimitive.Empty\n data-slot=\"command-empty\"\n className=\"py-6 text-center text-sm\"\n {...props}\n />\n );\n}\n\nfunction CommandGroup({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Group>) {\n return (\n <CommandPrimitive.Group\n data-slot=\"command-group\"\n className={cn(\n 'text-foreground [&_[cmdk-group-heading]]:text-muted-foreground overflow-hidden p-1 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction CommandSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Separator>) {\n return (\n <CommandPrimitive.Separator\n data-slot=\"command-separator\"\n className={cn('bg-border -mx-1 h-px', className)}\n {...props}\n />\n );\n}\n\nfunction CommandItem({\n className,\n ...props\n}: React.ComponentProps<typeof CommandPrimitive.Item>) {\n return (\n <CommandPrimitive.Item\n data-slot=\"command-item\"\n className={cn(\n \"data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-xs px-2 py-1.5 text-sm outline-hidden select-none data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction CommandShortcut({\n className,\n ...props\n}: React.ComponentProps<'span'>) {\n return (\n <span\n data-slot=\"command-shortcut\"\n className={cn(\n 'text-muted-foreground ml-auto text-xs tracking-widest',\n className\n )}\n {...props}\n />\n );\n}\n\nexport {\n Command,\n CommandDialog,\n CommandInput,\n CommandList,\n CommandEmpty,\n CommandGroup,\n CommandItem,\n CommandShortcut,\n CommandSeparator,\n};\n"],"mappings":";;;;;;;;;;AAeA,SAAS,QAAQ,EACf,WACA,GAAG,SAC6C;AAChD,QACE,oBAACA;EACC,aAAU;EACV,WAAW,GACT,6FACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,cAAc,EACrB,QAAQ,mBACR,cAAc,kCACd,UACA,WACA,kBAAkB,MAClB,GAAG,SAMF;AACD,QACE,qBAAC;EAAO,GAAI;aACV,qBAAC;GAAa,WAAU;cACtB,oBAAC,yBAAa,QAAoB,EAClC,oBAAC,+BAAmB,cAAgC;IACvC,EACf,oBAAC;GACC,WAAW,GAAG,uBAAuB,UAAU;GAC9B;aAEjB,oBAAC;IAAQ,WAAU;IAChB;KACO;IACI;GACT;;AAIb,SAAS,aAAa,EACpB,WACA,GAAG,SACmD;AACtD,QACE,qBAAC;EACC,aAAU;EACV,WAAU;aAEV,oBAAC,cAAW,WAAU,+BAA+B,EACrD,oBAACA,UAAiB;GAChB,aAAU;GACV,WAAW,GACT,4JACA,UACD;GACD,GAAI;IACJ;GACE;;AAIV,SAAS,YAAY,EACnB,WACA,GAAG,SACkD;AACrD,QACE,oBAACA,UAAiB;EAChB,aAAU;EACV,WAAW,GACT,+DACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,aAAa,EACpB,GAAG,SACmD;AACtD,QACE,oBAACA,UAAiB;EAChB,aAAU;EACV,WAAU;EACV,GAAI;GACJ;;AAIN,SAAS,aAAa,EACpB,WACA,GAAG,SACmD;AACtD,QACE,oBAACA,UAAiB;EAChB,aAAU;EACV,WAAW,GACT,0NACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,iBAAiB,EACxB,WACA,GAAG,SACuD;AAC1D,QACE,oBAACA,UAAiB;EAChB,aAAU;EACV,WAAW,GAAG,wBAAwB,UAAU;EAChD,GAAI;GACJ;;AAIN,SAAS,YAAY,EACnB,WACA,GAAG,SACkD;AACrD,QACE,oBAACA,UAAiB;EAChB,aAAU;EACV,WAAW,GACT,uYACA,UACD;EACD,GAAI;GACJ;;AAIN,SAAS,gBAAgB,EACvB,WACA,GAAG,SAC4B;AAC/B,QACE,oBAAC;EACC,aAAU;EACV,WAAW,GACT,yDACA,UACD;EACD,GAAI;GACJ"}