@kayleai/ui 0.0.1

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 (169) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +15 -0
  3. package/dist/accordion.d.ts +7 -0
  4. package/dist/accordion.d.ts.map +1 -0
  5. package/dist/accordion.js +17 -0
  6. package/dist/alert-dialog.d.ts +19 -0
  7. package/dist/alert-dialog.d.ts.map +1 -0
  8. package/dist/alert-dialog.js +41 -0
  9. package/dist/alert.d.ts +11 -0
  10. package/dist/alert.d.ts.map +1 -0
  11. package/dist/alert.js +27 -0
  12. package/dist/aspect-ratio.d.ts +5 -0
  13. package/dist/aspect-ratio.d.ts.map +1 -0
  14. package/dist/aspect-ratio.js +8 -0
  15. package/dist/avatar.d.ts +12 -0
  16. package/dist/avatar.d.ts.map +1 -0
  17. package/dist/avatar.js +23 -0
  18. package/dist/badge.d.ts +8 -0
  19. package/dist/badge.d.ts.map +1 -0
  20. package/dist/badge.js +33 -0
  21. package/dist/breadcrumb.d.ts +11 -0
  22. package/dist/breadcrumb.d.ts.map +1 -0
  23. package/dist/breadcrumb.js +38 -0
  24. package/dist/button-group.d.ts +11 -0
  25. package/dist/button-group.d.ts.map +1 -0
  26. package/dist/button-group.js +38 -0
  27. package/dist/button.d.ts +9 -0
  28. package/dist/button.d.ts.map +1 -0
  29. package/dist/button.js +34 -0
  30. package/dist/calendar.d.ts +8 -0
  31. package/dist/calendar.d.ts.map +1 -0
  32. package/dist/calendar.js +81 -0
  33. package/dist/card.d.ts +12 -0
  34. package/dist/card.d.ts.map +1 -0
  35. package/dist/card.js +24 -0
  36. package/dist/carousel.d.ts +28 -0
  37. package/dist/carousel.d.ts.map +1 -0
  38. package/dist/carousel.js +95 -0
  39. package/dist/chart.d.ts +41 -0
  40. package/dist/chart.d.ts.map +1 -0
  41. package/dist/chart.js +135 -0
  42. package/dist/checkbox.d.ts +4 -0
  43. package/dist/checkbox.d.ts.map +1 -0
  44. package/dist/checkbox.js +8 -0
  45. package/dist/collapsible.d.ts +6 -0
  46. package/dist/collapsible.d.ts.map +1 -0
  47. package/dist/collapsible.js +13 -0
  48. package/dist/combobox.d.ts +24 -0
  49. package/dist/combobox.d.ts.map +1 -0
  50. package/dist/combobox.js +58 -0
  51. package/dist/command.d.ts +20 -0
  52. package/dist/command.d.ts.map +1 -0
  53. package/dist/command.js +35 -0
  54. package/dist/context-menu.d.ts +26 -0
  55. package/dist/context-menu.d.ts.map +1 -0
  56. package/dist/context-menu.js +50 -0
  57. package/dist/css/index.css +129 -0
  58. package/dist/dialog.d.ts +18 -0
  59. package/dist/dialog.d.ts.map +1 -0
  60. package/dist/dialog.js +37 -0
  61. package/dist/drawer.d.ts +14 -0
  62. package/dist/drawer.d.ts.map +1 -0
  63. package/dist/drawer.js +35 -0
  64. package/dist/dropdown-menu.d.ts +26 -0
  65. package/dist/dropdown-menu.d.ts.map +1 -0
  66. package/dist/dropdown-menu.js +50 -0
  67. package/dist/empty.d.ts +12 -0
  68. package/dist/empty.d.ts.map +1 -0
  69. package/dist/empty.js +33 -0
  70. package/dist/field.d.ts +25 -0
  71. package/dist/field.d.ts.map +1 -0
  72. package/dist/field.js +72 -0
  73. package/dist/hover-card.d.ts +6 -0
  74. package/dist/hover-card.d.ts.map +1 -0
  75. package/dist/hover-card.js +14 -0
  76. package/dist/input-group.d.ts +19 -0
  77. package/dist/input-group.d.ts.map +1 -0
  78. package/dist/input-group.js +60 -0
  79. package/dist/input-otp.d.ts +11 -0
  80. package/dist/input-otp.d.ts.map +1 -0
  81. package/dist/input-otp.js +24 -0
  82. package/dist/input.d.ts +4 -0
  83. package/dist/input.d.ts.map +1 -0
  84. package/dist/input.js +7 -0
  85. package/dist/item.d.ts +23 -0
  86. package/dist/item.d.ts.map +1 -0
  87. package/dist/item.js +80 -0
  88. package/dist/kbd.d.ts +4 -0
  89. package/dist/kbd.d.ts.map +1 -0
  90. package/dist/kbd.js +9 -0
  91. package/dist/label.d.ts +4 -0
  92. package/dist/label.d.ts.map +1 -0
  93. package/dist/label.js +9 -0
  94. package/dist/menubar.d.ts +24 -0
  95. package/dist/menubar.d.ts.map +1 -0
  96. package/dist/menubar.js +55 -0
  97. package/dist/navigation-menu.d.ts +12 -0
  98. package/dist/navigation-menu.d.ts.map +1 -0
  99. package/dist/navigation-menu.js +31 -0
  100. package/dist/pagination.d.ts +14 -0
  101. package/dist/pagination.d.ts.map +1 -0
  102. package/dist/pagination.js +26 -0
  103. package/dist/popover.d.ts +10 -0
  104. package/dist/popover.d.ts.map +1 -0
  105. package/dist/popover.js +22 -0
  106. package/dist/progress.d.ts +8 -0
  107. package/dist/progress.d.ts.map +1 -0
  108. package/dist/progress.js +20 -0
  109. package/dist/radio-group.d.ts +6 -0
  110. package/dist/radio-group.d.ts.map +1 -0
  111. package/dist/radio-group.js +12 -0
  112. package/dist/resizable.d.ts +9 -0
  113. package/dist/resizable.d.ts.map +1 -0
  114. package/dist/resizable.js +14 -0
  115. package/dist/scroll-area.d.ts +5 -0
  116. package/dist/scroll-area.d.ts.map +1 -0
  117. package/dist/scroll-area.js +10 -0
  118. package/dist/select.d.ts +16 -0
  119. package/dist/select.d.ts.map +1 -0
  120. package/dist/select.js +34 -0
  121. package/dist/separator.d.ts +4 -0
  122. package/dist/separator.d.ts.map +1 -0
  123. package/dist/separator.js +7 -0
  124. package/dist/sheet.d.ts +15 -0
  125. package/dist/sheet.d.ts.map +1 -0
  126. package/dist/sheet.js +36 -0
  127. package/dist/sidebar.d.ts +63 -0
  128. package/dist/sidebar.d.ts.map +1 -0
  129. package/dist/sidebar.js +256 -0
  130. package/dist/skeleton.d.ts +3 -0
  131. package/dist/skeleton.d.ts.map +1 -0
  132. package/dist/skeleton.js +6 -0
  133. package/dist/slider.d.ts +4 -0
  134. package/dist/slider.d.ts.map +1 -0
  135. package/dist/slider.js +15 -0
  136. package/dist/sonner.d.ts +4 -0
  137. package/dist/sonner.d.ts.map +1 -0
  138. package/dist/sonner.js +20 -0
  139. package/dist/spinner.d.ts +3 -0
  140. package/dist/spinner.d.ts.map +1 -0
  141. package/dist/spinner.js +7 -0
  142. package/dist/switch.d.ts +6 -0
  143. package/dist/switch.d.ts.map +1 -0
  144. package/dist/switch.js +8 -0
  145. package/dist/table.d.ts +11 -0
  146. package/dist/table.d.ts.map +1 -0
  147. package/dist/table.js +27 -0
  148. package/dist/tabs.d.ts +11 -0
  149. package/dist/tabs.d.ts.map +1 -0
  150. package/dist/tabs.js +29 -0
  151. package/dist/textarea.d.ts +4 -0
  152. package/dist/textarea.d.ts.map +1 -0
  153. package/dist/textarea.js +6 -0
  154. package/dist/toggle-group.d.ts +11 -0
  155. package/dist/toggle-group.d.ts.map +1 -0
  156. package/dist/toggle-group.js +24 -0
  157. package/dist/toggle.d.ts +9 -0
  158. package/dist/toggle.d.ts.map +1 -0
  159. package/dist/toggle.js +25 -0
  160. package/dist/tooltip.d.ts +7 -0
  161. package/dist/tooltip.d.ts.map +1 -0
  162. package/dist/tooltip.js +17 -0
  163. package/dist/utils/cn.d.ts +3 -0
  164. package/dist/utils/cn.d.ts.map +1 -0
  165. package/dist/utils/cn.js +5 -0
  166. package/dist/utils/is-mobile.d.ts +2 -0
  167. package/dist/utils/is-mobile.d.ts.map +1 -0
  168. package/dist/utils/is-mobile.js +4 -0
  169. package/package.json +77 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input-group.d.ts","sourceRoot":"","sources":["../src/input-group.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAKlC,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAavE;AAED,QAAA,MAAM,uBAAuB;;8EAmB5B,CAAC;AAEF,iBAAS,eAAe,CAAC,EACvB,SAAS,EACT,KAAsB,EACtB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,OAAO,uBAAuB,CAAC,2CAiB5E;AAED,QAAA,MAAM,wBAAwB;;8EAe7B,CAAC;AAEF,iBAAS,gBAAgB,CAAC,EACxB,SAAS,EACT,IAAe,EACf,OAAiB,EACjB,IAAW,EACX,GAAG,KAAK,EACT,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,GAC3D,YAAY,CAAC,OAAO,wBAAwB,CAAC,GAAG;IAC9C,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;CACtC,2CAUF;AAED,iBAAS,cAAc,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,2CAU5E;AAED,iBAAS,eAAe,CAAC,EACvB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,2CAW/B;AAED,iBAAS,kBAAkB,CAAC,EAC1B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,2CAWlC;AAED,OAAO,EACL,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,kBAAkB,GACnB,CAAC"}
@@ -0,0 +1,60 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { cva } from "class-variance-authority";
3
+ import { Button } from "./button";
4
+ import { Input } from "./input";
5
+ import { Textarea } from "./textarea";
6
+ import { cn } from "./utils/cn";
7
+ function InputGroup({ className, ...props }) {
8
+ return (
9
+ // biome-ignore lint/a11y: intentional
10
+ _jsx("div", { className: cn("group/input-group relative flex h-9 w-full min-w-0 items-center rounded-4xl border border-input bg-input/30 outline-none transition-colors has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-start]]:h-auto has-[>textarea]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-start]]:flex-col has-[textarea]:rounded-xl has-data-[align=block-end]:rounded-2xl has-data-[align=block-start]:rounded-2xl has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot][aria-invalid=true]]:border-destructive has-[[data-slot=input-group-control]:focus-visible]:ring-[3px] has-[[data-slot=input-group-control]:focus-visible]:ring-ring/50 has-[[data-slot][aria-invalid=true]]:ring-[3px] has-[[data-slot][aria-invalid=true]]:ring-destructive/20 dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40 has-[>[data-align=block-end]]:[&>input]:pt-3 has-[>[data-align=inline-end]]:[&>input]:pr-1.5 has-[>[data-align=block-start]]:[&>input]:pb-3 has-[>[data-align=inline-start]]:[&>input]:pl-1.5 [[data-slot=combobox-content]_&]:focus-within:border-inherit [[data-slot=combobox-content]_&]:focus-within:ring-0", className), "data-slot": "input-group", role: "group", ...props }));
11
+ }
12
+ const inputGroupAddonVariants = cva("flex h-auto cursor-text select-none items-center justify-center gap-2 py-2 font-medium text-muted-foreground text-sm **:data-[slot=kbd]:rounded-4xl **:data-[slot=kbd]:bg-muted-foreground/10 **:data-[slot=kbd]:px-1.5 group-data-[disabled=true]/input-group:opacity-50 [&>svg:not([class*='size-'])]:size-4", {
13
+ variants: {
14
+ align: {
15
+ "inline-start": "order-first pl-3 has-[>button]:ml-[-0.25rem] has-[>kbd]:ml-[-0.15rem]",
16
+ "inline-end": "order-last pr-3 has-[>button]:mr-[-0.25rem] has-[>kbd]:mr-[-0.15rem]",
17
+ "block-start": "order-first w-full justify-start px-3 pt-3 group-has-[>input]/input-group:pt-3 [.border-b]:pb-3",
18
+ "block-end": "order-last w-full justify-start px-3 pb-3 group-has-[>input]/input-group:pb-3 [.border-t]:pt-3",
19
+ },
20
+ },
21
+ defaultVariants: {
22
+ align: "inline-start",
23
+ },
24
+ });
25
+ function InputGroupAddon({ className, align = "inline-start", ...props }) {
26
+ return (
27
+ // biome-ignore lint/a11y: intentional
28
+ _jsx("div", { className: cn(inputGroupAddonVariants({ align }), className), "data-align": align, "data-slot": "input-group-addon", onClick: (e) => {
29
+ if (e.target.closest("button")) {
30
+ return;
31
+ }
32
+ e.currentTarget.parentElement?.querySelector("input")?.focus();
33
+ }, role: "group", ...props }));
34
+ }
35
+ const inputGroupButtonVariants = cva("flex items-center gap-2 rounded-4xl text-sm shadow-none", {
36
+ variants: {
37
+ size: {
38
+ xs: "h-6 gap-1 px-1.5 [&>svg:not([class*='size-'])]:size-3.5",
39
+ sm: "",
40
+ "icon-xs": "size-6 p-0 has-[>svg]:p-0",
41
+ "icon-sm": "size-8 p-0 has-[>svg]:p-0",
42
+ },
43
+ },
44
+ defaultVariants: {
45
+ size: "xs",
46
+ },
47
+ });
48
+ function InputGroupButton({ className, type = "button", variant = "ghost", size = "xs", ...props }) {
49
+ return (_jsx(Button, { className: cn(inputGroupButtonVariants({ size }), className), "data-size": size, type: type, variant: variant, ...props }));
50
+ }
51
+ function InputGroupText({ className, ...props }) {
52
+ return (_jsx("span", { className: cn("flex items-center gap-2 text-muted-foreground text-sm [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none", className), ...props }));
53
+ }
54
+ function InputGroupInput({ className, ...props }) {
55
+ return (_jsx(Input, { className: cn("flex-1 rounded-none border-0 bg-transparent shadow-none ring-0 focus-visible:ring-0 aria-invalid:ring-0 dark:bg-transparent", className), "data-slot": "input-group-control", ...props }));
56
+ }
57
+ function InputGroupTextarea({ className, ...props }) {
58
+ return (_jsx(Textarea, { className: cn("flex-1 resize-none rounded-none border-0 bg-transparent py-2 shadow-none ring-0 focus-visible:ring-0 aria-invalid:ring-0 dark:bg-transparent", className), "data-slot": "input-group-control", ...props }));
59
+ }
60
+ export { InputGroup, InputGroupAddon, InputGroupButton, InputGroupText, InputGroupInput, InputGroupTextarea, };
@@ -0,0 +1,11 @@
1
+ import { OTPInput } from "input-otp";
2
+ declare function InputOTP({ className, containerClassName, ...props }: React.ComponentProps<typeof OTPInput> & {
3
+ containerClassName?: string;
4
+ }): import("react/jsx-runtime").JSX.Element;
5
+ declare function InputOTPGroup({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
6
+ declare function InputOTPSlot({ index, className, ...props }: React.ComponentProps<"div"> & {
7
+ index: number;
8
+ }): import("react/jsx-runtime").JSX.Element;
9
+ declare function InputOTPSeparator({ ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
10
+ export { InputOTP, InputOTPGroup, InputOTPSlot, InputOTPSeparator };
11
+ //# sourceMappingURL=input-otp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input-otp.d.ts","sourceRoot":"","sources":["../src/input-otp.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAmB,MAAM,WAAW,CAAC;AAKtD,iBAAS,QAAQ,CAAC,EAChB,SAAS,EACT,kBAAkB,EAClB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,QAAQ,CAAC,GAAG;IACzC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,2CAaA;AAED,iBAAS,aAAa,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAW1E;AAED,iBAAS,YAAY,CAAC,EACpB,KAAK,EACL,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG;IAC/B,KAAK,EAAE,MAAM,CAAC;CACf,2CAsBA;AAED,iBAAS,iBAAiB,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAanE;AAED,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,YAAY,EAAE,iBAAiB,EAAE,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { OTPInput, OTPInputContext } from "input-otp";
3
+ import { MinusIcon } from "lucide-react";
4
+ import { useContext } from "react";
5
+ import { cn } from "./utils/cn";
6
+ function InputOTP({ className, containerClassName, ...props }) {
7
+ return (_jsx(OTPInput, { className: cn("disabled:cursor-not-allowed", className), containerClassName: cn("cn-input-otp flex items-center has-disabled:opacity-50", containerClassName), "data-slot": "input-otp", spellCheck: false, ...props }));
8
+ }
9
+ function InputOTPGroup({ className, ...props }) {
10
+ return (_jsx("div", { className: cn("flex items-center rounded-4xl has-aria-invalid:border-destructive has-aria-invalid:ring-[3px] has-aria-invalid:ring-destructive/20 dark:has-aria-invalid:ring-destructive/40", className), "data-slot": "input-otp-group", ...props }));
11
+ }
12
+ function InputOTPSlot({ index, className, ...props }) {
13
+ const inputOTPContext = useContext(OTPInputContext);
14
+ const { char, hasFakeCaret, isActive } = inputOTPContext?.slots[index] ?? {};
15
+ return (_jsxs("div", { className: cn("relative flex size-9 items-center justify-center border-input border-y border-r bg-input/30 text-sm outline-none transition-all first:rounded-l-4xl first:border-l last:rounded-r-4xl aria-invalid:border-destructive data-[active=true]:z-10 data-[active=true]:border-ring data-[active=true]:ring-[3px] data-[active=true]:ring-ring/50 data-[active=true]:aria-invalid:border-destructive data-[active=true]:aria-invalid:ring-destructive/20 dark:data-[active=true]:aria-invalid:ring-destructive/40", className), "data-active": isActive, "data-slot": "input-otp-slot", ...props, children: [char, hasFakeCaret ? (_jsx("div", { className: "pointer-events-none absolute inset-0 flex items-center justify-center", children: _jsx("div", { className: "h-4 w-px animate-caret-blink bg-foreground duration-1000" }) })) : null] }));
16
+ }
17
+ function InputOTPSeparator({ ...props }) {
18
+ return (
19
+ // biome-ignore lint/a11y: intentional
20
+ _jsx("div", { className: "flex items-center [&_svg:not([class*='size-'])]:size-4", "data-slot": "input-otp-separator",
21
+ // biome-ignore lint/a11y: intentional
22
+ role: "separator", ...props, children: _jsx(MinusIcon, {}) }));
23
+ }
24
+ export { InputOTP, InputOTPGroup, InputOTPSlot, InputOTPSeparator };
@@ -0,0 +1,4 @@
1
+ import type * as React from "react";
2
+ declare function Input({ className, type, ...props }: React.ComponentProps<"input">): import("react/jsx-runtime").JSX.Element;
3
+ export { Input };
4
+ //# sourceMappingURL=input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../src/input.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAIpC,iBAAS,KAAK,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,2CAY1E;AAED,OAAO,EAAE,KAAK,EAAE,CAAC"}
package/dist/input.js ADDED
@@ -0,0 +1,7 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { Input as InputPrimitive } from "@base-ui/react/input";
3
+ import { cn } from "./utils/cn";
4
+ function Input({ className, type, ...props }) {
5
+ return (_jsx(InputPrimitive, { className: cn("h-9 w-full min-w-0 rounded-4xl border border-input bg-input/30 px-3 py-1 text-base outline-none transition-colors file:inline-flex file:h-7 file:border-0 file:bg-transparent file:font-medium file:text-foreground file:text-sm placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-[3px] aria-invalid:ring-destructive/20 md:text-sm dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40", className), "data-slot": "input", type: type, ...props }));
6
+ }
7
+ export { Input };
package/dist/item.d.ts ADDED
@@ -0,0 +1,23 @@
1
+ import { useRender } from "@base-ui/react/use-render";
2
+ import { type VariantProps } from "class-variance-authority";
3
+ import type * as React from "react";
4
+ import { Separator } from "./separator";
5
+ declare function ItemGroup({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
6
+ declare function ItemSeparator({ className, ...props }: React.ComponentProps<typeof Separator>): import("react/jsx-runtime").JSX.Element;
7
+ declare const itemVariants: (props?: ({
8
+ variant?: "default" | "outline" | "muted" | null | undefined;
9
+ size?: "default" | "xs" | "sm" | null | undefined;
10
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
11
+ declare function Item({ className, variant, size, render, ...props }: useRender.ComponentProps<"div"> & VariantProps<typeof itemVariants>): React.ReactElement<unknown, string | React.JSXElementConstructor<any>>;
12
+ declare const itemMediaVariants: (props?: ({
13
+ variant?: "image" | "default" | "icon" | null | undefined;
14
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
15
+ declare function ItemMedia({ className, variant, ...props }: React.ComponentProps<"div"> & VariantProps<typeof itemMediaVariants>): import("react/jsx-runtime").JSX.Element;
16
+ declare function ItemContent({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
17
+ declare function ItemTitle({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
18
+ declare function ItemDescription({ className, ...props }: React.ComponentProps<"p">): import("react/jsx-runtime").JSX.Element;
19
+ declare function ItemActions({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
20
+ declare function ItemHeader({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
21
+ declare function ItemFooter({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
22
+ export { Item, ItemMedia, ItemContent, ItemActions, ItemGroup, ItemSeparator, ItemTitle, ItemDescription, ItemHeader, ItemFooter, };
23
+ //# sourceMappingURL=item.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"item.d.ts","sourceRoot":"","sources":["../src/item.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,iBAAS,SAAS,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAatE;AAED,iBAAS,aAAa,CAAC,EACrB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,SAAS,CAAC,2CASxC;AAED,QAAA,MAAM,YAAY;;;8EAoBjB,CAAC;AAEF,iBAAS,IAAI,CAAC,EACZ,SAAS,EACT,OAAmB,EACnB,IAAgB,EAChB,MAAM,EACN,GAAG,KAAK,EACT,EAAE,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,OAAO,YAAY,CAAC,0EAgBrE;AAED,QAAA,MAAM,iBAAiB;;8EAetB,CAAC;AAEF,iBAAS,SAAS,CAAC,EACjB,SAAS,EACT,OAAmB,EACnB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,OAAO,iBAAiB,CAAC,2CAStE;AAED,iBAAS,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAWxE;AAED,iBAAS,SAAS,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAWtE;AAED,iBAAS,eAAe,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,2CAW1E;AAED,iBAAS,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAQxE;AAED,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAWvE;AAED,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAWvE;AAED,OAAO,EACL,IAAI,EACJ,SAAS,EACT,WAAW,EACX,WAAW,EACX,SAAS,EACT,aAAa,EACb,SAAS,EACT,eAAe,EACf,UAAU,EACV,UAAU,GACX,CAAC"}
package/dist/item.js ADDED
@@ -0,0 +1,80 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { mergeProps } from "@base-ui/react/merge-props";
3
+ import { useRender } from "@base-ui/react/use-render";
4
+ import { cva } from "class-variance-authority";
5
+ import { Separator } from "./separator";
6
+ import { cn } from "./utils/cn";
7
+ function ItemGroup({ className, ...props }) {
8
+ return (
9
+ // biome-ignore lint/a11y: intentional
10
+ _jsx("div", { className: cn("group/item-group flex w-full flex-col gap-4 has-[[data-size=sm]]:gap-2.5 has-[[data-size=xs]]:gap-2", className), "data-slot": "item-group", role: "list", ...props }));
11
+ }
12
+ function ItemSeparator({ className, ...props }) {
13
+ return (_jsx(Separator, { className: cn("my-2", className), "data-slot": "item-separator", orientation: "horizontal", ...props }));
14
+ }
15
+ const itemVariants = cva("group/item flex w-full flex-wrap items-center rounded-2xl border text-sm outline-none transition-colors duration-100 focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 [a]:transition-colors [a]:hover:bg-muted", {
16
+ variants: {
17
+ variant: {
18
+ default: "border-transparent",
19
+ outline: "border-border",
20
+ muted: "border-transparent bg-muted/50",
21
+ },
22
+ size: {
23
+ default: "gap-3.5 px-4 py-3.5",
24
+ sm: "gap-3.5 px-3.5 py-3",
25
+ xs: "gap-2.5 px-3 py-2.5 [[data-slot=dropdown-menu-content]_&]:p-0",
26
+ },
27
+ },
28
+ defaultVariants: {
29
+ variant: "default",
30
+ size: "default",
31
+ },
32
+ });
33
+ function Item({ className, variant = "default", size = "default", render, ...props }) {
34
+ return useRender({
35
+ defaultTagName: "div",
36
+ props: mergeProps({
37
+ className: cn(itemVariants({ variant, size, className })),
38
+ }, props),
39
+ render,
40
+ state: {
41
+ slot: "item",
42
+ variant,
43
+ size,
44
+ },
45
+ });
46
+ }
47
+ const itemMediaVariants = cva("flex shrink-0 items-center justify-center gap-2 group-has-[[data-slot=item-description]]/item:translate-y-0.5 group-has-[[data-slot=item-description]]/item:self-start [&_svg]:pointer-events-none", {
48
+ variants: {
49
+ variant: {
50
+ default: "bg-transparent",
51
+ icon: "[&_svg:not([class*='size-'])]:size-4",
52
+ image: "size-10 overflow-hidden rounded-lg group-data-[size=sm]/item:size-8 group-data-[size=xs]/item:size-6 group-data-[size=xs]/item:rounded-md [&_img]:size-full [&_img]:object-cover",
53
+ },
54
+ },
55
+ defaultVariants: {
56
+ variant: "default",
57
+ },
58
+ });
59
+ function ItemMedia({ className, variant = "default", ...props }) {
60
+ return (_jsx("div", { className: cn(itemMediaVariants({ variant, className })), "data-slot": "item-media", "data-variant": variant, ...props }));
61
+ }
62
+ function ItemContent({ className, ...props }) {
63
+ return (_jsx("div", { className: cn("flex flex-1 flex-col gap-1 group-data-[size=xs]/item:gap-0.5 [&+[data-slot=item-content]]:flex-none", className), "data-slot": "item-content", ...props }));
64
+ }
65
+ function ItemTitle({ className, ...props }) {
66
+ return (_jsx("div", { className: cn("line-clamp-1 flex w-fit items-center gap-2 font-medium text-sm leading-snug underline-offset-4", className), "data-slot": "item-title", ...props }));
67
+ }
68
+ function ItemDescription({ className, ...props }) {
69
+ return (_jsx("p", { className: cn("line-clamp-2 text-left font-normal text-muted-foreground text-sm [&>a:hover]:text-primary [&>a]:underline [&>a]:underline-offset-4", className), "data-slot": "item-description", ...props }));
70
+ }
71
+ function ItemActions({ className, ...props }) {
72
+ return (_jsx("div", { className: cn("flex items-center gap-2", className), "data-slot": "item-actions", ...props }));
73
+ }
74
+ function ItemHeader({ className, ...props }) {
75
+ return (_jsx("div", { className: cn("flex basis-full items-center justify-between gap-2", className), "data-slot": "item-header", ...props }));
76
+ }
77
+ function ItemFooter({ className, ...props }) {
78
+ return (_jsx("div", { className: cn("flex basis-full items-center justify-between gap-2", className), "data-slot": "item-footer", ...props }));
79
+ }
80
+ export { Item, ItemMedia, ItemContent, ItemActions, ItemGroup, ItemSeparator, ItemTitle, ItemDescription, ItemHeader, ItemFooter, };
package/dist/kbd.d.ts ADDED
@@ -0,0 +1,4 @@
1
+ declare function Kbd({ className, ...props }: React.ComponentProps<"kbd">): import("react/jsx-runtime").JSX.Element;
2
+ declare function KbdGroup({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
3
+ export { Kbd, KbdGroup };
4
+ //# sourceMappingURL=kbd.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kbd.d.ts","sourceRoot":"","sources":["../src/kbd.tsx"],"names":[],"mappings":"AAEA,iBAAS,GAAG,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAWhE;AAED,iBAAS,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAQrE;AAED,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC"}
package/dist/kbd.js ADDED
@@ -0,0 +1,9 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { cn } from "./utils/cn";
3
+ function Kbd({ className, ...props }) {
4
+ return (_jsx("kbd", { className: cn("pointer-events-none inline-flex h-5 w-fit min-w-5 select-none items-center justify-center gap-1 rounded-sm bg-muted px-1 font-medium font-sans text-muted-foreground text-xs [&_svg:not([class*='size-'])]:size-3 [[data-slot=tooltip-content]_&]:bg-background/20 [[data-slot=tooltip-content]_&]:text-background dark:[[data-slot=tooltip-content]_&]:bg-background/10", className), "data-slot": "kbd", ...props }));
5
+ }
6
+ function KbdGroup({ className, ...props }) {
7
+ return (_jsx("kbd", { className: cn("inline-flex items-center gap-1", className), "data-slot": "kbd-group", ...props }));
8
+ }
9
+ export { Kbd, KbdGroup };
@@ -0,0 +1,4 @@
1
+ import type * as React from "react";
2
+ declare function Label({ className, ...props }: React.ComponentProps<"label">): import("react/jsx-runtime").JSX.Element;
3
+ export { Label };
4
+ //# sourceMappingURL=label.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"label.d.ts","sourceRoot":"","sources":["../src/label.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAIpC,iBAAS,KAAK,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,2CAYpE;AAED,OAAO,EAAE,KAAK,EAAE,CAAC"}
package/dist/label.js ADDED
@@ -0,0 +1,9 @@
1
+ "use client";
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ import { cn } from "./utils/cn";
4
+ function Label({ className, ...props }) {
5
+ return (
6
+ // biome-ignore lint/a11y: intentional
7
+ _jsx("label", { className: cn("flex select-none items-center gap-2 font-medium text-sm leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-50 group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50", className), "data-slot": "label", ...props }));
8
+ }
9
+ export { Label };
@@ -0,0 +1,24 @@
1
+ import { Menu as MenuPrimitive } from "@base-ui/react/menu";
2
+ import { Menubar as MenubarPrimitive } from "@base-ui/react/menubar";
3
+ import type * as React from "react";
4
+ import { DropdownMenu, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger } from "./dropdown-menu";
5
+ declare function Menubar({ className, ...props }: MenubarPrimitive.Props): import("react/jsx-runtime").JSX.Element;
6
+ declare function MenubarMenu({ ...props }: React.ComponentProps<typeof DropdownMenu>): import("react/jsx-runtime").JSX.Element;
7
+ declare function MenubarGroup({ ...props }: React.ComponentProps<typeof DropdownMenuGroup>): import("react/jsx-runtime").JSX.Element;
8
+ declare function MenubarPortal({ ...props }: React.ComponentProps<typeof DropdownMenuPortal>): import("react/jsx-runtime").JSX.Element;
9
+ declare function MenubarTrigger({ className, ...props }: React.ComponentProps<typeof DropdownMenuTrigger>): import("react/jsx-runtime").JSX.Element;
10
+ declare function MenubarContent({ className, align, alignOffset, sideOffset, ...props }: React.ComponentProps<typeof DropdownMenuContent>): import("react/jsx-runtime").JSX.Element;
11
+ declare function MenubarItem({ className, inset, variant, ...props }: React.ComponentProps<typeof DropdownMenuItem>): import("react/jsx-runtime").JSX.Element;
12
+ declare function MenubarCheckboxItem({ className, children, checked, ...props }: MenuPrimitive.CheckboxItem.Props): import("react/jsx-runtime").JSX.Element;
13
+ declare function MenubarRadioGroup({ ...props }: React.ComponentProps<typeof DropdownMenuRadioGroup>): import("react/jsx-runtime").JSX.Element;
14
+ declare function MenubarRadioItem({ className, children, ...props }: MenuPrimitive.RadioItem.Props): import("react/jsx-runtime").JSX.Element;
15
+ declare function MenubarLabel({ className, inset, ...props }: React.ComponentProps<typeof DropdownMenuLabel>): import("react/jsx-runtime").JSX.Element;
16
+ declare function MenubarSeparator({ className, ...props }: React.ComponentProps<typeof DropdownMenuSeparator>): import("react/jsx-runtime").JSX.Element;
17
+ declare function MenubarShortcut({ className, ...props }: React.ComponentProps<typeof DropdownMenuShortcut>): import("react/jsx-runtime").JSX.Element;
18
+ declare function MenubarSub({ ...props }: React.ComponentProps<typeof DropdownMenuSub>): import("react/jsx-runtime").JSX.Element;
19
+ declare function MenubarSubTrigger({ className, inset, ...props }: React.ComponentProps<typeof DropdownMenuSubTrigger> & {
20
+ inset?: boolean;
21
+ }): import("react/jsx-runtime").JSX.Element;
22
+ declare function MenubarSubContent({ className, ...props }: React.ComponentProps<typeof DropdownMenuSubContent>): import("react/jsx-runtime").JSX.Element;
23
+ export { Menubar, MenubarPortal, MenubarMenu, MenubarTrigger, MenubarContent, MenubarGroup, MenubarSeparator, MenubarLabel, MenubarItem, MenubarShortcut, MenubarCheckboxItem, MenubarRadioGroup, MenubarRadioItem, MenubarSub, MenubarSubTrigger, MenubarSubContent, };
24
+ //# sourceMappingURL=menubar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"menubar.d.ts","sourceRoot":"","sources":["../src/menubar.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,IAAI,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAErE,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AACpC,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,sBAAsB,EACtB,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EACpB,MAAM,iBAAiB,CAAC;AAGzB,iBAAS,OAAO,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,gBAAgB,CAAC,KAAK,2CAW/D;AAED,iBAAS,WAAW,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,YAAY,CAAC,2CAE3E;AAED,iBAAS,YAAY,CAAC,EACpB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,iBAAiB,CAAC,2CAEhD;AAED,iBAAS,aAAa,CAAC,EACrB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,kBAAkB,CAAC,2CAEjD;AAED,iBAAS,cAAc,CAAC,EACtB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,mBAAmB,CAAC,2CAWlD;AAED,iBAAS,cAAc,CAAC,EACtB,SAAS,EACT,KAAe,EACf,WAAgB,EAChB,UAAc,EACd,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,mBAAmB,CAAC,2CAclD;AAED,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,KAAK,EACL,OAAmB,EACnB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,2CAa/C;AAED,iBAAS,mBAAmB,CAAC,EAC3B,SAAS,EACT,QAAQ,EACR,OAAO,EACP,GAAG,KAAK,EACT,EAAE,aAAa,CAAC,YAAY,CAAC,KAAK,2CAmBlC;AAED,iBAAS,iBAAiB,CAAC,EACzB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,sBAAsB,CAAC,2CAErD;AAED,iBAAS,gBAAgB,CAAC,EACxB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,aAAa,CAAC,SAAS,CAAC,KAAK,2CAkB/B;AAED,iBAAS,YAAY,CAAC,EACpB,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,iBAAiB,CAAC,2CAYhD;AAED,iBAAS,gBAAgB,CAAC,EACxB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,qBAAqB,CAAC,2CAQpD;AAED,iBAAS,eAAe,CAAC,EACvB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,oBAAoB,CAAC,2CAWnD;AAED,iBAAS,UAAU,CAAC,EAClB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,2CAE9C;AAED,iBAAS,iBAAiB,CAAC,EACzB,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,sBAAsB,CAAC,GAAG;IACvD,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,2CAYA;AAED,iBAAS,iBAAiB,CAAC,EACzB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,sBAAsB,CAAC,2CAWrD;AAED,OAAO,EACL,OAAO,EACP,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACZ,WAAW,EACX,eAAe,EACf,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,UAAU,EACV,iBAAiB,EACjB,iBAAiB,GAClB,CAAC"}
@@ -0,0 +1,55 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Menu as MenuPrimitive } from "@base-ui/react/menu";
3
+ import { Menubar as MenubarPrimitive } from "@base-ui/react/menubar";
4
+ import { CheckIcon } from "lucide-react";
5
+ import { DropdownMenu, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, } from "./dropdown-menu";
6
+ import { cn } from "./utils/cn";
7
+ function Menubar({ className, ...props }) {
8
+ return (_jsx(MenubarPrimitive, { className: cn("flex h-9 items-center rounded-2xl border bg-background p-1", className), "data-slot": "menubar", ...props }));
9
+ }
10
+ function MenubarMenu({ ...props }) {
11
+ return _jsx(DropdownMenu, { "data-slot": "menubar-menu", ...props });
12
+ }
13
+ function MenubarGroup({ ...props }) {
14
+ return _jsx(DropdownMenuGroup, { "data-slot": "menubar-group", ...props });
15
+ }
16
+ function MenubarPortal({ ...props }) {
17
+ return _jsx(DropdownMenuPortal, { "data-slot": "menubar-portal", ...props });
18
+ }
19
+ function MenubarTrigger({ className, ...props }) {
20
+ return (_jsx(DropdownMenuTrigger, { className: cn("flex select-none items-center rounded-xl px-2.5 py-1 font-medium text-sm outline-hidden hover:bg-muted aria-expanded:bg-muted", className), "data-slot": "menubar-trigger", ...props }));
21
+ }
22
+ function MenubarContent({ className, align = "start", alignOffset = -4, sideOffset = 8, ...props }) {
23
+ return (_jsx(DropdownMenuContent, { align: align, alignOffset: alignOffset, className: cn("data-open:fade-in-0 data-open:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 min-w-48 rounded-2xl bg-popover p-1 text-popover-foreground shadow-2xl ring-1 ring-foreground/5 duration-100 data-open:animate-in", className), "data-slot": "menubar-content", sideOffset: sideOffset, ...props }));
24
+ }
25
+ function MenubarItem({ className, inset, variant = "default", ...props }) {
26
+ return (_jsx(DropdownMenuItem, { className: cn("data-[variant=destructive]:*:[svg]:!text-destructive group/menubar-item gap-2.5 rounded-xl px-3 py-2 text-sm focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-[inset]:pl-8 data-[variant=destructive]:text-destructive data-[disabled]:opacity-50 data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 [&_svg:not([class*='size-'])]:size-4", className), "data-inset": inset, "data-slot": "menubar-item", "data-variant": variant, ...props }));
27
+ }
28
+ function MenubarCheckboxItem({ className, children, checked, ...props }) {
29
+ return (_jsxs(MenuPrimitive.CheckboxItem, { checked: checked, className: cn("relative flex cursor-default select-none items-center gap-2.5 rounded-xl py-2 pr-3 pl-8 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0", className), "data-slot": "menubar-checkbox-item", ...props, children: [_jsx("span", { className: "pointer-events-none absolute left-2 flex size-4 items-center justify-center [&_svg:not([class*='size-'])]:size-4", children: _jsx(MenuPrimitive.CheckboxItemIndicator, { children: _jsx(CheckIcon, {}) }) }), children] }));
30
+ }
31
+ function MenubarRadioGroup({ ...props }) {
32
+ return _jsx(DropdownMenuRadioGroup, { "data-slot": "menubar-radio-group", ...props });
33
+ }
34
+ function MenubarRadioItem({ className, children, ...props }) {
35
+ return (_jsxs(MenuPrimitive.RadioItem, { className: cn("relative flex cursor-default select-none items-center gap-2.5 rounded-xl py-2 pr-3 pl-8 text-sm outline-hidden focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0", className), "data-slot": "menubar-radio-item", ...props, children: [_jsx("span", { className: "pointer-events-none absolute left-2 flex size-4 items-center justify-center [&_svg:not([class*='size-'])]:size-4", children: _jsx(MenuPrimitive.RadioItemIndicator, { children: _jsx(CheckIcon, {}) }) }), children] }));
36
+ }
37
+ function MenubarLabel({ className, inset, ...props }) {
38
+ return (_jsx(DropdownMenuLabel, { className: cn("px-3.5 py-2.5 text-muted-foreground text-xs data-[inset]:pl-8", className), "data-inset": inset, "data-slot": "menubar-label", ...props }));
39
+ }
40
+ function MenubarSeparator({ className, ...props }) {
41
+ return (_jsx(DropdownMenuSeparator, { className: cn("-mx-1 my-1 h-px bg-border/50", className), "data-slot": "menubar-separator", ...props }));
42
+ }
43
+ function MenubarShortcut({ className, ...props }) {
44
+ return (_jsx(DropdownMenuShortcut, { className: cn("ml-auto text-muted-foreground text-xs tracking-widest group-focus/menubar-item:text-accent-foreground", className), "data-slot": "menubar-shortcut", ...props }));
45
+ }
46
+ function MenubarSub({ ...props }) {
47
+ return _jsx(DropdownMenuSub, { "data-slot": "menubar-sub", ...props });
48
+ }
49
+ function MenubarSubTrigger({ className, inset, ...props }) {
50
+ return (_jsx(DropdownMenuSubTrigger, { className: cn("gap-2 rounded-xl px-3 py-2 text-sm focus:bg-accent focus:text-accent-foreground data-open:bg-accent data-[inset]:pl-8 data-open:text-accent-foreground [&_svg:not([class*='size-'])]:size-4", className), "data-inset": inset, "data-slot": "menubar-sub-trigger", ...props }));
51
+ }
52
+ function MenubarSubContent({ className, ...props }) {
53
+ return (_jsx(DropdownMenuSubContent, { className: cn("data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-open:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 min-w-32 rounded-2xl bg-popover p-1 text-popover-foreground shadow-2xl ring-1 ring-foreground/5 duration-100 data-closed:animate-out data-open:animate-in", className), "data-slot": "menubar-sub-content", ...props }));
54
+ }
55
+ export { Menubar, MenubarPortal, MenubarMenu, MenubarTrigger, MenubarContent, MenubarGroup, MenubarSeparator, MenubarLabel, MenubarItem, MenubarShortcut, MenubarCheckboxItem, MenubarRadioGroup, MenubarRadioItem, MenubarSub, MenubarSubTrigger, MenubarSubContent, };
@@ -0,0 +1,12 @@
1
+ import { NavigationMenu as NavigationMenuPrimitive } from "@base-ui/react/navigation-menu";
2
+ declare function NavigationMenu({ className, children, ...props }: NavigationMenuPrimitive.Root.Props): import("react/jsx-runtime").JSX.Element;
3
+ declare function NavigationMenuList({ className, ...props }: NavigationMenuPrimitive.List.Props): import("react/jsx-runtime").JSX.Element;
4
+ declare function NavigationMenuItem({ className, ...props }: NavigationMenuPrimitive.Item.Props): import("react/jsx-runtime").JSX.Element;
5
+ declare const navigationMenuTriggerStyle: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
6
+ declare function NavigationMenuTrigger({ className, children, ...props }: NavigationMenuPrimitive.Trigger.Props): import("react/jsx-runtime").JSX.Element;
7
+ declare function NavigationMenuContent({ className, ...props }: NavigationMenuPrimitive.Content.Props): import("react/jsx-runtime").JSX.Element;
8
+ declare function NavigationMenuPositioner({ className, side, sideOffset, align, alignOffset, ...props }: NavigationMenuPrimitive.Positioner.Props): import("react/jsx-runtime").JSX.Element;
9
+ declare function NavigationMenuLink({ className, ...props }: NavigationMenuPrimitive.Link.Props): import("react/jsx-runtime").JSX.Element;
10
+ declare function NavigationMenuIndicator({ className, ...props }: NavigationMenuPrimitive.Icon.Props): import("react/jsx-runtime").JSX.Element;
11
+ export { NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, navigationMenuTriggerStyle, NavigationMenuPositioner, };
12
+ //# sourceMappingURL=navigation-menu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"navigation-menu.d.ts","sourceRoot":"","sources":["../src/navigation-menu.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,IAAI,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAK3F,iBAAS,cAAc,CAAC,EACtB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,uBAAuB,CAAC,IAAI,CAAC,KAAK,2CAcpC;AAED,iBAAS,kBAAkB,CAAC,EAC1B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,uBAAuB,CAAC,IAAI,CAAC,KAAK,2CAWpC;AAED,iBAAS,kBAAkB,CAAC,EAC1B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,uBAAuB,CAAC,IAAI,CAAC,KAAK,2CAQpC;AAED,QAAA,MAAM,0BAA0B,oFAE/B,CAAC;AAEF,iBAAS,qBAAqB,CAAC,EAC7B,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,uBAAuB,CAAC,OAAO,CAAC,KAAK,2CAcvC;AAED,iBAAS,qBAAqB,CAAC,EAC7B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,uBAAuB,CAAC,OAAO,CAAC,KAAK,2CAWvC;AAED,iBAAS,wBAAwB,CAAC,EAChC,SAAS,EACT,IAAe,EACf,UAAc,EACd,KAAe,EACf,WAAe,EACf,GAAG,KAAK,EACT,EAAE,uBAAuB,CAAC,UAAU,CAAC,KAAK,2CAoB1C;AAED,iBAAS,kBAAkB,CAAC,EAC1B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,uBAAuB,CAAC,IAAI,CAAC,KAAK,2CAWpC;AAED,iBAAS,uBAAuB,CAAC,EAC/B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,uBAAuB,CAAC,IAAI,CAAC,KAAK,2CAapC;AAED,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,uBAAuB,EACvB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,qBAAqB,EACrB,0BAA0B,EAC1B,wBAAwB,GACzB,CAAC"}
@@ -0,0 +1,31 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { NavigationMenu as NavigationMenuPrimitive } from "@base-ui/react/navigation-menu";
3
+ import { cva } from "class-variance-authority";
4
+ import { ChevronDownIcon } from "lucide-react";
5
+ import { cn } from "./utils/cn";
6
+ function NavigationMenu({ className, children, ...props }) {
7
+ return (_jsxs(NavigationMenuPrimitive.Root, { className: cn("group/navigation-menu relative flex max-w-max flex-1 items-center justify-center", className), "data-slot": "navigation-menu", ...props, children: [children, _jsx(NavigationMenuPositioner, {})] }));
8
+ }
9
+ function NavigationMenuList({ className, ...props }) {
10
+ return (_jsx(NavigationMenuPrimitive.List, { className: cn("group flex flex-1 list-none items-center justify-center gap-0", className), "data-slot": "navigation-menu-list", ...props }));
11
+ }
12
+ function NavigationMenuItem({ className, ...props }) {
13
+ return (_jsx(NavigationMenuPrimitive.Item, { className: cn("relative", className), "data-slot": "navigation-menu-item", ...props }));
14
+ }
15
+ const navigationMenuTriggerStyle = cva("group/navigation-menu-trigger inline-flex h-9 w-max items-center justify-center rounded-2xl bg-background px-4.5 py-2.5 font-medium text-sm outline-none transition-all hover:bg-muted focus:bg-muted focus-visible:outline-1 focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 data-open:bg-muted/50 data-popup-open:bg-muted/50 data-open:focus:bg-muted data-open:hover:bg-muted data-popup-open:hover:bg-muted");
16
+ function NavigationMenuTrigger({ className, children, ...props }) {
17
+ return (_jsxs(NavigationMenuPrimitive.Trigger, { className: cn(navigationMenuTriggerStyle(), "group", className), "data-slot": "navigation-menu-trigger", ...props, children: [children, " ", _jsx(ChevronDownIcon, { "aria-hidden": "true", className: "relative top-[1px] ml-1 size-3 transition duration-300 group-data-open/navigation-menu-trigger:rotate-180 group-data-popup-open/navigation-menu-trigger:rotate-180" })] }));
18
+ }
19
+ function NavigationMenuContent({ className, ...props }) {
20
+ return (_jsx(NavigationMenuPrimitive.Content, { className: cn("data-[motion^=from-]:fade-in data-[motion^=to-]:fade-out data-[motion=from-end]:slide-in-from-right-52 data-[motion=from-start]:slide-in-from-left-52 data-[motion=to-end]:slide-out-to-right-52 data-[motion=to-start]:slide-out-to-left-52 group-data-[viewport=false]/navigation-menu:data-closed:zoom-out-95 group-data-[viewport=false]/navigation-menu:data-open:zoom-in-95 group-data-[viewport=false]/navigation-menu:data-open:fade-in-0 group-data-[viewport=false]/navigation-menu:data-closed:fade-out-0 h-full w-auto p-2.5 pr-3 ease-[cubic-bezier(0.22,1,0.36,1)] data-[motion^=from-]:animate-in data-[motion^=to-]:animate-out **:data-[slot=navigation-menu-link]:focus:outline-none **:data-[slot=navigation-menu-link]:focus:ring-0 group-data-[viewport=false]/navigation-menu:rounded-2xl group-data-[viewport=false]/navigation-menu:bg-popover group-data-[viewport=false]/navigation-menu:text-popover-foreground group-data-[viewport=false]/navigation-menu:shadow-2xl group-data-[viewport=false]/navigation-menu:ring-1 group-data-[viewport=false]/navigation-menu:ring-foreground/5 group-data-[viewport=false]/navigation-menu:duration-300 group-data-[viewport=false]/navigation-menu:data-closed:animate-out group-data-[viewport=false]/navigation-menu:data-open:animate-in", className), "data-slot": "navigation-menu-content", ...props }));
21
+ }
22
+ function NavigationMenuPositioner({ className, side = "bottom", sideOffset = 8, align = "start", alignOffset = 0, ...props }) {
23
+ return (_jsx(NavigationMenuPrimitive.Portal, { children: _jsx(NavigationMenuPrimitive.Positioner, { align: align, alignOffset: alignOffset, className: cn("isolate z-50 h-[var(--positioner-height)] w-[var(--positioner-width)] max-w-[var(--available-width)] transition-[top,left,right,bottom] duration-300 ease-[cubic-bezier(0.22,1,0.36,1)] data-[instant]:transition-none data-[side=bottom]:before:top-[-10px] data-[side=bottom]:before:right-0 data-[side=bottom]:before:left-0", className), side: side, sideOffset: sideOffset, ...props, children: _jsx(NavigationMenuPrimitive.Popup, { className: "relative h-(--popup-height) w-(--popup-width) xs:w-(--popup-width) origin-(--transform-origin) rounded-2xl bg-popover text-popover-foreground shadow outline-none ring-1 ring-foreground/5 transition-all ease-[cubic-bezier(0.22,1,0.36,1)] data-[ending-style]:scale-90 data-[starting-style]:scale-90 data-[ending-style]:opacity-0 data-[starting-style]:opacity-0 data-[ending-style]:duration-150", children: _jsx(NavigationMenuPrimitive.Viewport, { className: "relative size-full overflow-hidden" }) }) }) }));
24
+ }
25
+ function NavigationMenuLink({ className, ...props }) {
26
+ return (_jsx(NavigationMenuPrimitive.Link, { className: cn("flex items-center gap-1.5 rounded-xl p-3 text-sm outline-none transition-all hover:bg-muted focus:bg-muted focus-visible:outline-1 focus-visible:ring-[3px] focus-visible:ring-ring/50 data-[active=true]:bg-muted/50 data-[active=true]:focus:bg-muted data-[active=true]:hover:bg-muted [&_svg:not([class*='size-'])]:size-4", className), "data-slot": "navigation-menu-link", ...props }));
27
+ }
28
+ function NavigationMenuIndicator({ className, ...props }) {
29
+ return (_jsx(NavigationMenuPrimitive.Icon, { className: cn("data-[state=hidden]:fade-out data-[state=visible]:fade-in top-full z-[1] flex h-1.5 items-end justify-center overflow-hidden data-[state=hidden]:animate-out data-[state=visible]:animate-in", className), "data-slot": "navigation-menu-indicator", ...props, children: _jsx("div", { className: "relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm bg-border shadow-md" }) }));
30
+ }
31
+ export { NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, navigationMenuTriggerStyle, NavigationMenuPositioner, };
@@ -0,0 +1,14 @@
1
+ import type * as React from "react";
2
+ import { Button } from "./button";
3
+ declare function Pagination({ className, ...props }: React.ComponentProps<"nav">): import("react/jsx-runtime").JSX.Element;
4
+ declare function PaginationContent({ className, ...props }: React.ComponentProps<"ul">): import("react/jsx-runtime").JSX.Element;
5
+ declare function PaginationItem({ ...props }: React.ComponentProps<"li">): import("react/jsx-runtime").JSX.Element;
6
+ type PaginationLinkProps = {
7
+ isActive?: boolean;
8
+ } & Pick<React.ComponentProps<typeof Button>, "size"> & React.ComponentProps<"a">;
9
+ declare function PaginationLink({ className, isActive, size, ...props }: PaginationLinkProps): import("react/jsx-runtime").JSX.Element;
10
+ declare function PaginationPrevious({ className, ...props }: React.ComponentProps<typeof PaginationLink>): import("react/jsx-runtime").JSX.Element;
11
+ declare function PaginationNext({ className, ...props }: React.ComponentProps<typeof PaginationLink>): import("react/jsx-runtime").JSX.Element;
12
+ declare function PaginationEllipsis({ className, ...props }: React.ComponentProps<"span">): import("react/jsx-runtime").JSX.Element;
13
+ export { Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, };
14
+ //# sourceMappingURL=pagination.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../src/pagination.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CASvE;AAED,iBAAS,iBAAiB,CAAC,EACzB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,2CAQ5B;AAED,iBAAS,cAAc,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,2CAE/D;AAED,KAAK,mBAAmB,GAAG;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,MAAM,CAAC,EAAE,MAAM,CAAC,GACnD,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;AAE5B,iBAAS,cAAc,CAAC,EACtB,SAAS,EACT,QAAQ,EACR,IAAa,EACb,GAAG,KAAK,EACT,EAAE,mBAAmB,2CAkBrB;AAED,iBAAS,kBAAkB,CAAC,EAC1B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,cAAc,CAAC,2CAY7C;AAED,iBAAS,cAAc,CAAC,EACtB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,cAAc,CAAC,2CAY7C;AAED,iBAAS,kBAAkB,CAAC,EAC1B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,2CAe9B;AAED,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,cAAc,EACd,kBAAkB,GACnB,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { ChevronLeftIcon, ChevronRightIcon, MoreHorizontalIcon, } from "lucide-react";
3
+ import { Button } from "./button";
4
+ import { cn } from "./utils/cn";
5
+ function Pagination({ className, ...props }) {
6
+ return (_jsx("nav", { "aria-label": "pagination", className: cn("mx-auto flex w-full justify-center", className), "data-slot": "pagination", ...props }));
7
+ }
8
+ function PaginationContent({ className, ...props }) {
9
+ return (_jsx("ul", { className: cn("flex items-center gap-1", className), "data-slot": "pagination-content", ...props }));
10
+ }
11
+ function PaginationItem({ ...props }) {
12
+ return _jsx("li", { "data-slot": "pagination-item", ...props });
13
+ }
14
+ function PaginationLink({ className, isActive, size = "icon", ...props }) {
15
+ return (_jsx(Button, { className: cn(className), nativeButton: false, render: _jsx("a", { "aria-current": isActive ? "page" : undefined, "data-active": isActive, "data-slot": "pagination-link", ...props }), size: size, variant: isActive ? "outline" : "ghost" }));
16
+ }
17
+ function PaginationPrevious({ className, ...props }) {
18
+ return (_jsxs(PaginationLink, { "aria-label": "Go to previous page", className: cn("pl-2!", className), size: "default", ...props, children: [_jsx(ChevronLeftIcon, { "data-icon": "inline-start" }), _jsx("span", { className: "hidden sm:block", children: "Previous" })] }));
19
+ }
20
+ function PaginationNext({ className, ...props }) {
21
+ return (_jsxs(PaginationLink, { "aria-label": "Go to next page", className: cn("pr-2!", className), size: "default", ...props, children: [_jsx("span", { className: "hidden sm:block", children: "Next" }), _jsx(ChevronRightIcon, { "data-icon": "inline-end" })] }));
22
+ }
23
+ function PaginationEllipsis({ className, ...props }) {
24
+ return (_jsxs("span", { "aria-hidden": true, className: cn("flex size-9 items-center justify-center [&_svg:not([class*='size-'])]:size-4", className), "data-slot": "pagination-ellipsis", ...props, children: [_jsx(MoreHorizontalIcon, {}), _jsx("span", { className: "sr-only", children: "More pages" })] }));
25
+ }
26
+ export { Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, };
@@ -0,0 +1,10 @@
1
+ import { Popover as PopoverPrimitive } from "@base-ui/react/popover";
2
+ import type * as React from "react";
3
+ declare function Popover({ ...props }: PopoverPrimitive.Root.Props): import("react/jsx-runtime").JSX.Element;
4
+ declare function PopoverTrigger({ ...props }: PopoverPrimitive.Trigger.Props): import("react/jsx-runtime").JSX.Element;
5
+ declare function PopoverContent({ className, align, alignOffset, side, sideOffset, ...props }: PopoverPrimitive.Popup.Props & Pick<PopoverPrimitive.Positioner.Props, "align" | "alignOffset" | "side" | "sideOffset">): import("react/jsx-runtime").JSX.Element;
6
+ declare function PopoverHeader({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
7
+ declare function PopoverTitle({ className, ...props }: PopoverPrimitive.Title.Props): import("react/jsx-runtime").JSX.Element;
8
+ declare function PopoverDescription({ className, ...props }: PopoverPrimitive.Description.Props): import("react/jsx-runtime").JSX.Element;
9
+ export { Popover, PopoverContent, PopoverDescription, PopoverHeader, PopoverTitle, PopoverTrigger, };
10
+ //# sourceMappingURL=popover.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"popover.d.ts","sourceRoot":"","sources":["../src/popover.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAIpC,iBAAS,OAAO,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,gBAAgB,CAAC,IAAI,CAAC,KAAK,2CAEzD;AAED,iBAAS,cAAc,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,gBAAgB,CAAC,OAAO,CAAC,KAAK,2CAEnE;AAED,iBAAS,cAAc,CAAC,EACtB,SAAS,EACT,KAAgB,EAChB,WAAe,EACf,IAAe,EACf,UAAc,EACd,GAAG,KAAK,EACT,EAAE,gBAAgB,CAAC,KAAK,CAAC,KAAK,GAC7B,IAAI,CACF,gBAAgB,CAAC,UAAU,CAAC,KAAK,EACjC,OAAO,GAAG,aAAa,GAAG,MAAM,GAAG,YAAY,CAChD,2CAqBF;AAED,iBAAS,aAAa,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAQ1E;AAED,iBAAS,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,gBAAgB,CAAC,KAAK,CAAC,KAAK,2CAQ1E;AAED,iBAAS,kBAAkB,CAAC,EAC1B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,gBAAgB,CAAC,WAAW,CAAC,KAAK,2CAQpC;AAED,OAAO,EACL,OAAO,EACP,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,YAAY,EACZ,cAAc,GACf,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { Popover as PopoverPrimitive } from "@base-ui/react/popover";
3
+ import { cn } from "./utils/cn";
4
+ function Popover({ ...props }) {
5
+ return _jsx(PopoverPrimitive.Root, { "data-slot": "popover", ...props });
6
+ }
7
+ function PopoverTrigger({ ...props }) {
8
+ return _jsx(PopoverPrimitive.Trigger, { "data-slot": "popover-trigger", ...props });
9
+ }
10
+ function PopoverContent({ className, align = "center", alignOffset = 0, side = "bottom", sideOffset = 4, ...props }) {
11
+ return (_jsx(PopoverPrimitive.Portal, { children: _jsx(PopoverPrimitive.Positioner, { align: align, alignOffset: alignOffset, className: "isolate z-50", side: side, sideOffset: sideOffset, children: _jsx(PopoverPrimitive.Popup, { className: cn("data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-open:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 flex w-72 origin-(--transform-origin) flex-col gap-4 rounded-2xl bg-popover p-4 text-popover-foreground text-sm shadow-2xl outline-hidden ring-1 ring-foreground/5 duration-100 data-closed:animate-out data-open:animate-in", className), "data-slot": "popover-content", ...props }) }) }));
12
+ }
13
+ function PopoverHeader({ className, ...props }) {
14
+ return (_jsx("div", { className: cn("flex flex-col gap-1 text-sm", className), "data-slot": "popover-header", ...props }));
15
+ }
16
+ function PopoverTitle({ className, ...props }) {
17
+ return (_jsx(PopoverPrimitive.Title, { className: cn("font-medium text-base", className), "data-slot": "popover-title", ...props }));
18
+ }
19
+ function PopoverDescription({ className, ...props }) {
20
+ return (_jsx(PopoverPrimitive.Description, { className: cn("text-muted-foreground", className), "data-slot": "popover-description", ...props }));
21
+ }
22
+ export { Popover, PopoverContent, PopoverDescription, PopoverHeader, PopoverTitle, PopoverTrigger, };
@@ -0,0 +1,8 @@
1
+ import { Progress as ProgressPrimitive } from "@base-ui/react/progress";
2
+ declare function Progress({ className, children, value, ...props }: ProgressPrimitive.Root.Props): import("react/jsx-runtime").JSX.Element;
3
+ declare function ProgressTrack({ className, ...props }: ProgressPrimitive.Track.Props): import("react/jsx-runtime").JSX.Element;
4
+ declare function ProgressIndicator({ className, ...props }: ProgressPrimitive.Indicator.Props): import("react/jsx-runtime").JSX.Element;
5
+ declare function ProgressLabel({ className, ...props }: ProgressPrimitive.Label.Props): import("react/jsx-runtime").JSX.Element;
6
+ declare function ProgressValue({ className, ...props }: ProgressPrimitive.Value.Props): import("react/jsx-runtime").JSX.Element;
7
+ export { Progress, ProgressTrack, ProgressIndicator, ProgressLabel, ProgressValue, };
8
+ //# sourceMappingURL=progress.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"progress.d.ts","sourceRoot":"","sources":["../src/progress.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,IAAI,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAIxE,iBAAS,QAAQ,CAAC,EAChB,SAAS,EACT,QAAQ,EACR,KAAK,EACL,GAAG,KAAK,EACT,EAAE,iBAAiB,CAAC,IAAI,CAAC,KAAK,2CAc9B;AAED,iBAAS,aAAa,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,iBAAiB,CAAC,KAAK,CAAC,KAAK,2CAW5E;AAED,iBAAS,iBAAiB,CAAC,EACzB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,iBAAiB,CAAC,SAAS,CAAC,KAAK,2CAQnC;AAED,iBAAS,aAAa,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,iBAAiB,CAAC,KAAK,CAAC,KAAK,2CAQ5E;AAED,iBAAS,aAAa,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,iBAAiB,CAAC,KAAK,CAAC,KAAK,2CAW5E;AAED,OAAO,EACL,QAAQ,EACR,aAAa,EACb,iBAAiB,EACjB,aAAa,EACb,aAAa,GACd,CAAC"}
@@ -0,0 +1,20 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { Progress as ProgressPrimitive } from "@base-ui/react/progress";
4
+ import { cn } from "./utils/cn";
5
+ function Progress({ className, children, value, ...props }) {
6
+ return (_jsxs(ProgressPrimitive.Root, { className: cn("flex flex-wrap gap-3", className), "data-slot": "progress", value: value, ...props, children: [children, _jsx(ProgressTrack, { children: _jsx(ProgressIndicator, {}) })] }));
7
+ }
8
+ function ProgressTrack({ className, ...props }) {
9
+ return (_jsx(ProgressPrimitive.Track, { className: cn("relative flex h-3 w-full items-center overflow-x-hidden rounded-4xl bg-muted", className), "data-slot": "progress-track", ...props }));
10
+ }
11
+ function ProgressIndicator({ className, ...props }) {
12
+ return (_jsx(ProgressPrimitive.Indicator, { className: cn("h-full bg-primary transition-all", className), "data-slot": "progress-indicator", ...props }));
13
+ }
14
+ function ProgressLabel({ className, ...props }) {
15
+ return (_jsx(ProgressPrimitive.Label, { className: cn("font-medium text-sm", className), "data-slot": "progress-label", ...props }));
16
+ }
17
+ function ProgressValue({ className, ...props }) {
18
+ return (_jsx(ProgressPrimitive.Value, { className: cn("ml-auto text-muted-foreground text-sm tabular-nums", className), "data-slot": "progress-value", ...props }));
19
+ }
20
+ export { Progress, ProgressTrack, ProgressIndicator, ProgressLabel, ProgressValue, };
@@ -0,0 +1,6 @@
1
+ import { Radio as RadioPrimitive } from "@base-ui/react/radio";
2
+ import { RadioGroup as RadioGroupPrimitive } from "@base-ui/react/radio-group";
3
+ declare function RadioGroup({ className, ...props }: RadioGroupPrimitive.Props): import("react/jsx-runtime").JSX.Element;
4
+ declare function RadioGroupItem({ className, ...props }: RadioPrimitive.Root.Props): import("react/jsx-runtime").JSX.Element;
5
+ export { RadioGroup, RadioGroupItem };
6
+ //# sourceMappingURL=radio-group.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radio-group.d.ts","sourceRoot":"","sources":["../src/radio-group.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EAAE,UAAU,IAAI,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAI/E,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,mBAAmB,CAAC,KAAK,2CAQrE;AAED,iBAAS,cAAc,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,IAAI,CAAC,KAAK,2CAkBzE;AAED,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC"}