kuzenbo 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.
- package/LICENSE +21 -0
- package/README.md +185 -0
- package/dist/accordion-trigger-D5XnBMS6.d.ts +24 -0
- package/dist/accordion-trigger-TjAe8JHy.js +53 -0
- package/dist/alert-dialog-trigger-BV0BsaVU.d.ts +638 -0
- package/dist/alert-dialog-trigger-D5BRoizR.js +98 -0
- package/dist/alert-title-CISzcj0X.js +28 -0
- package/dist/alert-title-CVC9G-Xf.d.ts +22 -0
- package/dist/announcement-title-CCZuGB1O.d.ts +18 -0
- package/dist/announcement-title-CIwzt9Wl.js +18 -0
- package/dist/autocomplete-value-BhyszIrf.d.ts +111 -0
- package/dist/autocomplete-value-DNJ3sAIH.js +141 -0
- package/dist/avatar-image-BKgKyzVw.d.ts +35 -0
- package/dist/avatar-image-Bw3G-Bl6.js +45 -0
- package/dist/breadcrumb-separator-D66-B1DA.d.ts +44 -0
- package/dist/breadcrumb-separator-Do-19Uow.js +74 -0
- package/dist/button-group-text-D98w78rH.js +25 -0
- package/dist/calendar-week-number-6AXvZ4Ij.js +72 -0
- package/dist/calendar-week-number-in2gpvA_.d.ts +36 -0
- package/dist/card-title-CbRPAh3M.js +52 -0
- package/dist/card-title-DSDluDoy.d.ts +40 -0
- package/dist/carousel-previous-B_jysGv_.js +89 -0
- package/dist/chart-tooltip-content-h5oLtil-.js +144 -0
- package/dist/collapsible-trigger-DcQWODN-.js +20 -0
- package/dist/collapsible-trigger-aZF7_mPR.d.ts +15 -0
- package/dist/command-shortcut-DoWM7Mnm.js +97 -0
- package/dist/context-menu-trigger-CYBhdcpg.js +147 -0
- package/dist/context-menu-trigger-Du2vcTco.d.ts +103 -0
- package/dist/dialog-trigger-CR23tYql.js +97 -0
- package/dist/dialog-trigger-xeE4e96-.d.ts +74 -0
- package/dist/drawer-trigger-7jI4Zmqs.js +79 -0
- package/dist/drawer-trigger-H_Wv5R00.d.ts +67 -0
- package/dist/dropdown-menu-trigger-CFdruqOk.d.ts +108 -0
- package/dist/dropdown-menu-trigger-IKeAoU_a.js +152 -0
- package/dist/dropzone-context-BRX1K7nw.d.ts +45 -0
- package/dist/dropzone-status-CW-3AXuh.js +33 -0
- package/dist/emoji-picker-skin-tone-selector-Cmv-1vDO.js +117 -0
- package/dist/emoji-picker-skin-tone-selector-yMYxt4oJ.d.ts +67 -0
- package/dist/empty-title-CH3DhcfT.d.ts +53 -0
- package/dist/empty-title-CHNBH7WJ.js +53 -0
- package/dist/form-field-title-CNrq8v88.js +101 -0
- package/dist/hooks/use-isomorphic-effect.d.ts +7 -0
- package/dist/hooks/use-isomorphic-effect.js +7 -0
- package/dist/hooks/use-mobile.d.ts +4 -0
- package/dist/hooks/use-mobile.js +20 -0
- package/dist/hover-card-trigger-B9jf3FEB.js +31 -0
- package/dist/hover-card-trigger-BqVoZ7h4.d.ts +20 -0
- package/dist/index.d.ts +122 -0
- package/dist/index.js +130 -0
- package/dist/input-group-textarea-voYOV11-.js +79 -0
- package/dist/input-otp-slot-DWbXhUmU.js +45 -0
- package/dist/input-otp-slot-eVdOjx8C.d.ts +24 -0
- package/dist/item-title-BYrYJZpa.js +89 -0
- package/dist/kbd-group-CT-Xtgug.js +12 -0
- package/dist/kbd-group-D3yVrb2D.d.ts +10 -0
- package/dist/marquee-item-BGJ5NSiz.js +29 -0
- package/dist/marquee-item-DD6JuLJ4.d.ts +32 -0
- package/dist/menubar-trigger-BLg3XdRv.d.ts +104 -0
- package/dist/menubar-trigger-aKMWAxdz.js +146 -0
- package/dist/meter-value-BmxUICOA.js +37 -0
- package/dist/meter-value-DYkZLCtx.d.ts +30 -0
- package/dist/navigation-menu-trigger-Bf60DnIz.d.ts +53 -0
- package/dist/navigation-menu-trigger-D80wiliM.js +82 -0
- package/dist/number-field-scrub-area-CXSyafBE.js +80 -0
- package/dist/optional-portal-C7TpYnOc.js +15 -0
- package/dist/pagination-previous-DPZrRgiD.js +88 -0
- package/dist/pagination-previous-qJeZZTou.d.ts +45 -0
- package/dist/pill-status-CD9XXuE7.js +74 -0
- package/dist/pill-status-rg-3AMSI.d.ts +77 -0
- package/dist/popover-trigger-B9PVErig.d.ts +39 -0
- package/dist/popover-trigger-C8dP_u7N.js +52 -0
- package/dist/progress-value-CFlgP0nv.d.ts +28 -0
- package/dist/progress-value-CfCodKnX.js +37 -0
- package/dist/radio-group-item-09fw05Va.d.ts +10 -0
- package/dist/radio-group-item-CQjCazjw.js +24 -0
- package/dist/rating-star-6ov3lbpn.d.ts +57 -0
- package/dist/rating-star-BuLQfAnZ.js +110 -0
- package/dist/resizable-panel-B4lAr8Vb.d.ts +19 -0
- package/dist/resizable-panel-BO97wcPj.js +21 -0
- package/dist/scroll-bar-BQzpb5hF.js +19 -0
- package/dist/scroll-bar-vYvxEOph.d.ts +11 -0
- package/dist/select-value-BUnWentK.js +117 -0
- package/dist/select-value-DG31IHy3.d.ts +70 -0
- package/dist/sheet-trigger-CLgKANrf.d.ts +64 -0
- package/dist/sheet-trigger-CUU7xwUn.js +95 -0
- package/dist/sidebar-trigger-BCjVuIqi.js +366 -0
- package/dist/styles.css +145 -0
- package/dist/table-row-BxhKJPfE.d.ts +46 -0
- package/dist/table-row-D63xalkM.js +60 -0
- package/dist/tabs-trigger-B2mBxFgq.js +38 -0
- package/dist/tabs-trigger-BGo2XGvh.d.ts +41 -0
- package/dist/timeline-title-BH8JxX2n.js +389 -0
- package/dist/toggle-group-item-Bz_ohmnY.d.ts +53 -0
- package/dist/toggle-group-item-aggwtgam.js +34 -0
- package/dist/toolbar-separator-7CgKz2aX.d.ts +40 -0
- package/dist/toolbar-separator-Bre5OtBI.js +41 -0
- package/dist/tooltip-trigger-CrAGfaqr.d.ts +27 -0
- package/dist/tooltip-trigger-Z-aPDRog.js +37 -0
- package/dist/ui/accordion.d.ts +27 -0
- package/dist/ui/accordion.js +17 -0
- package/dist/ui/affix.d.ts +49 -0
- package/dist/ui/affix.js +57 -0
- package/dist/ui/alert-dialog.d.ts +123 -0
- package/dist/ui/alert-dialog.js +23 -0
- package/dist/ui/alert.d.ts +58 -0
- package/dist/ui/alert.js +59 -0
- package/dist/ui/announcement.d.ts +27 -0
- package/dist/ui/announcement.js +16 -0
- package/dist/ui/aspect-ratio.d.ts +13 -0
- package/dist/ui/aspect-ratio.js +13 -0
- package/dist/ui/autocomplete.d.ts +67 -0
- package/dist/ui/autocomplete.js +30 -0
- package/dist/ui/avatar.d.ts +37 -0
- package/dist/ui/avatar.js +22 -0
- package/dist/ui/badge.d.ts +54 -0
- package/dist/ui/badge.js +33 -0
- package/dist/ui/breadcrumb.d.ts +41 -0
- package/dist/ui/breadcrumb.js +20 -0
- package/dist/ui/button-group.d.ts +94 -0
- package/dist/ui/button-group.js +24 -0
- package/dist/ui/button.d.ts +91 -0
- package/dist/ui/button.js +64 -0
- package/dist/ui/calendar.d.ts +52 -0
- package/dist/ui/calendar.js +64 -0
- package/dist/ui/card.d.ts +40 -0
- package/dist/ui/card.js +20 -0
- package/dist/ui/carousel.d.ts +100 -0
- package/dist/ui/carousel.js +76 -0
- package/dist/ui/chart.d.ts +61 -0
- package/dist/ui/chart.js +34 -0
- package/dist/ui/checkbox-group.d.ts +12 -0
- package/dist/ui/checkbox-group.js +13 -0
- package/dist/ui/checkbox.d.ts +12 -0
- package/dist/ui/checkbox.js +27 -0
- package/dist/ui/collapsible.d.ts +19 -0
- package/dist/ui/collapsible.js +16 -0
- package/dist/ui/combobox.d.ts +95 -0
- package/dist/ui/combobox.js +31 -0
- package/dist/ui/command.d.ts +146 -0
- package/dist/ui/command.js +24 -0
- package/dist/ui/context-menu.d.ts +83 -0
- package/dist/ui/context-menu.js +26 -0
- package/dist/ui/country-flag.d.ts +18 -0
- package/dist/ui/country-flag.js +36 -0
- package/dist/ui/dialog.d.ts +53 -0
- package/dist/ui/dialog.js +23 -0
- package/dist/ui/drawer.d.ts +52 -0
- package/dist/ui/drawer.js +24 -0
- package/dist/ui/dropdown-menu.d.ts +88 -0
- package/dist/ui/dropdown-menu.js +26 -0
- package/dist/ui/dropzone.d.ts +233 -0
- package/dist/ui/dropzone.js +180 -0
- package/dist/ui/emoji-picker.d.ts +46 -0
- package/dist/ui/emoji-picker.js +23 -0
- package/dist/ui/empty.d.ts +50 -0
- package/dist/ui/empty.js +18 -0
- package/dist/ui/form-field.d.ts +134 -0
- package/dist/ui/form-field.js +33 -0
- package/dist/ui/google-logo.d.ts +13 -0
- package/dist/ui/google-logo.js +36 -0
- package/dist/ui/hover-card.d.ts +24 -0
- package/dist/ui/hover-card.js +16 -0
- package/dist/ui/input-group.d.ts +141 -0
- package/dist/ui/input-group.js +21 -0
- package/dist/ui/input-otp.d.ts +31 -0
- package/dist/ui/input-otp.js +19 -0
- package/dist/ui/input.d.ts +12 -0
- package/dist/ui/input.js +14 -0
- package/dist/ui/item.d.ts +158 -0
- package/dist/ui/item.js +50 -0
- package/dist/ui/kbd.d.ts +18 -0
- package/dist/ui/kbd.js +14 -0
- package/dist/ui/label.d.ts +12 -0
- package/dist/ui/label.js +15 -0
- package/dist/ui/marquee.d.ts +30 -0
- package/dist/ui/marquee.js +17 -0
- package/dist/ui/menubar.d.ts +228 -0
- package/dist/ui/menubar.js +29 -0
- package/dist/ui/meter.d.ts +29 -0
- package/dist/ui/meter.js +19 -0
- package/dist/ui/navigation-menu.d.ts +12 -0
- package/dist/ui/navigation-menu.js +15 -0
- package/dist/ui/number-field.d.ts +41 -0
- package/dist/ui/number-field.js +33 -0
- package/dist/ui/pagination.d.ts +38 -0
- package/dist/ui/pagination.js +20 -0
- package/dist/ui/pill.d.ts +49 -0
- package/dist/ui/pill.js +21 -0
- package/dist/ui/popover.d.ts +37 -0
- package/dist/ui/popover.js +19 -0
- package/dist/ui/portal.d.ts +29 -0
- package/dist/ui/portal.js +52 -0
- package/dist/ui/progress.d.ts +31 -0
- package/dist/ui/progress.js +22 -0
- package/dist/ui/qr-code.d.ts +20 -0
- package/dist/ui/qr-code.js +78 -0
- package/dist/ui/radio-group.d.ts +18 -0
- package/dist/ui/radio-group.js +15 -0
- package/dist/ui/rating.d.ts +80 -0
- package/dist/ui/rating.js +59 -0
- package/dist/ui/resizable.d.ts +25 -0
- package/dist/ui/resizable.js +18 -0
- package/dist/ui/scroll-area.d.ts +19 -0
- package/dist/ui/scroll-area.js +24 -0
- package/dist/ui/select.d.ts +65 -0
- package/dist/ui/select.js +23 -0
- package/dist/ui/separator.d.ts +12 -0
- package/dist/ui/separator.js +14 -0
- package/dist/ui/sheet.d.ts +54 -0
- package/dist/ui/sheet.js +23 -0
- package/dist/ui/sidebar.d.ts +247 -0
- package/dist/ui/sidebar.js +83 -0
- package/dist/ui/skeleton.d.ts +11 -0
- package/dist/ui/skeleton.js +12 -0
- package/dist/ui/slider.d.ts +15 -0
- package/dist/ui/slider.js +47 -0
- package/dist/ui/spacer.d.ts +18 -0
- package/dist/ui/spacer.js +25 -0
- package/dist/ui/spinner.d.ts +12 -0
- package/dist/ui/spinner.js +17 -0
- package/dist/ui/surface.d.ts +41 -0
- package/dist/ui/surface.js +31 -0
- package/dist/ui/switch.d.ts +14 -0
- package/dist/ui/switch.js +20 -0
- package/dist/ui/table.d.ts +41 -0
- package/dist/ui/table.js +34 -0
- package/dist/ui/tabs.d.ts +43 -0
- package/dist/ui/tabs.js +20 -0
- package/dist/ui/textarea.d.ts +13 -0
- package/dist/ui/textarea.js +14 -0
- package/dist/ui/theme-icon.d.ts +77 -0
- package/dist/ui/theme-icon.js +56 -0
- package/dist/ui/timeline.d.ts +96 -0
- package/dist/ui/timeline.js +88 -0
- package/dist/ui/toast.d.ts +50 -0
- package/dist/ui/toast.js +23 -0
- package/dist/ui/toggle-group.d.ts +31 -0
- package/dist/ui/toggle-group.js +31 -0
- package/dist/ui/toggle.d.ts +46 -0
- package/dist/ui/toggle.js +34 -0
- package/dist/ui/toolbar.d.ts +33 -0
- package/dist/ui/toolbar.js +19 -0
- package/dist/ui/tooltip.d.ts +29 -0
- package/dist/ui/tooltip.js +17 -0
- package/dist/ui/video-player.d.ts +48 -0
- package/dist/ui/video-player.js +37 -0
- package/dist/use-chart-BRpzPrMJ.d.ts +77 -0
- package/dist/use-combobox-anchor-2KUf_cBk.js +198 -0
- package/dist/use-combobox-anchor-ByuqnpKH.d.ts +120 -0
- package/dist/use-number-field-Dzl9JLNK.d.ts +55 -0
- package/dist/use-timeline-BRlmxoQ7.d.ts +81 -0
- package/dist/use-toast-BGG4leSx.d.ts +118 -0
- package/dist/use-toast-DjRKuQG6.js +129 -0
- package/dist/video-player-volume-range-D971L6mz.d.ts +65 -0
- package/dist/video-player-volume-range-V7x0b1-r.js +66 -0
- package/package.json +128 -0
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { cn, tv } from "tailwind-variants";
|
|
2
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { ArrowDown01Icon } from "@hugeicons/core-free-icons";
|
|
4
|
+
import { HugeiconsIcon } from "@hugeicons/react";
|
|
5
|
+
import { NavigationMenu } from "@base-ui/react/navigation-menu";
|
|
6
|
+
|
|
7
|
+
//#region src/components/navigation-menu/navigation-menu-positioner.tsx
|
|
8
|
+
const NavigationMenuPositioner = ({ className, side = "bottom", sideOffset = 8, align = "start", alignOffset = 0, ...props }) => /* @__PURE__ */ jsx(NavigationMenu.Portal, { children: /* @__PURE__ */ jsx(NavigationMenu.Positioner, {
|
|
9
|
+
align,
|
|
10
|
+
alignOffset,
|
|
11
|
+
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),
|
|
12
|
+
side,
|
|
13
|
+
sideOffset,
|
|
14
|
+
...props,
|
|
15
|
+
children: /* @__PURE__ */ jsx(NavigationMenu.Popup, {
|
|
16
|
+
className: "relative h-(--popup-height) w-(--popup-width) xs:w-(--popup-width) origin-(--transform-origin) rounded-lg bg-popover text-popover-foreground shadow outline-none ring-1 ring-foreground/10 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",
|
|
17
|
+
children: /* @__PURE__ */ jsx(NavigationMenu.Viewport, { className: "relative size-full overflow-hidden" })
|
|
18
|
+
})
|
|
19
|
+
}) });
|
|
20
|
+
|
|
21
|
+
//#endregion
|
|
22
|
+
//#region src/components/navigation-menu/navigation-menu-content.tsx
|
|
23
|
+
const NavigationMenuContent = ({ className, ...props }) => /* @__PURE__ */ jsx(NavigationMenu.Content, {
|
|
24
|
+
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-1 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-lg group-data-[viewport=false]/navigation-menu:bg-popover group-data-[viewport=false]/navigation-menu:text-popover-foreground group-data-[viewport=false]/navigation-menu:shadow group-data-[viewport=false]/navigation-menu:ring-1 group-data-[viewport=false]/navigation-menu:ring-foreground/10 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),
|
|
25
|
+
"data-slot": "navigation-menu-content",
|
|
26
|
+
...props
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
//#endregion
|
|
30
|
+
//#region src/components/navigation-menu/navigation-menu-indicator.tsx
|
|
31
|
+
const NavigationMenuIndicator = ({ className, ...props }) => /* @__PURE__ */ jsx(NavigationMenu.Icon, {
|
|
32
|
+
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),
|
|
33
|
+
"data-slot": "navigation-menu-indicator",
|
|
34
|
+
...props,
|
|
35
|
+
children: /* @__PURE__ */ jsx("div", { className: "relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm bg-border shadow-md" })
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
//#endregion
|
|
39
|
+
//#region src/components/navigation-menu/navigation-menu-item.tsx
|
|
40
|
+
const NavigationMenuItem = ({ className, ...props }) => /* @__PURE__ */ jsx(NavigationMenu.Item, {
|
|
41
|
+
className: cn("relative", className),
|
|
42
|
+
"data-slot": "navigation-menu-item",
|
|
43
|
+
...props
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
//#endregion
|
|
47
|
+
//#region src/components/navigation-menu/navigation-menu-link.tsx
|
|
48
|
+
const NavigationMenuLink = ({ className, ...props }) => /* @__PURE__ */ jsx(NavigationMenu.Link, {
|
|
49
|
+
className: cn("flex flex-col gap-2 in-data-[slot=navigation-menu-content]:rounded-md rounded-lg p-2 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:bg-muted/50 data-active:focus:bg-muted data-active:hover:bg-muted [&_svg:not([class*='size-'])]:size-4", className),
|
|
50
|
+
"data-slot": "navigation-menu-link",
|
|
51
|
+
...props
|
|
52
|
+
});
|
|
53
|
+
|
|
54
|
+
//#endregion
|
|
55
|
+
//#region src/components/navigation-menu/navigation-menu-list.tsx
|
|
56
|
+
const NavigationMenuList = ({ className, ...props }) => /* @__PURE__ */ jsx(NavigationMenu.List, {
|
|
57
|
+
className: cn("group flex flex-1 list-none items-center justify-center gap-0", className),
|
|
58
|
+
"data-slot": "navigation-menu-list",
|
|
59
|
+
...props
|
|
60
|
+
});
|
|
61
|
+
|
|
62
|
+
//#endregion
|
|
63
|
+
//#region src/components/navigation-menu/navigation-menu-trigger.tsx
|
|
64
|
+
const navigationMenuTriggerStyle = tv({ base: "group/navigation-menu-trigger inline-flex h-9 w-max cursor-pointer items-center justify-center rounded-lg bg-background px-2.5 py-1.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:cursor-not-allowed 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" });
|
|
65
|
+
const NavigationMenuTrigger = ({ className, children, ...props }) => /* @__PURE__ */ jsxs(NavigationMenu.Trigger, {
|
|
66
|
+
className: cn(navigationMenuTriggerStyle(), "group", className),
|
|
67
|
+
"data-slot": "navigation-menu-trigger",
|
|
68
|
+
...props,
|
|
69
|
+
children: [
|
|
70
|
+
children,
|
|
71
|
+
" ",
|
|
72
|
+
/* @__PURE__ */ jsx(HugeiconsIcon, {
|
|
73
|
+
"aria-hidden": "true",
|
|
74
|
+
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",
|
|
75
|
+
icon: ArrowDown01Icon,
|
|
76
|
+
strokeWidth: 2
|
|
77
|
+
})
|
|
78
|
+
]
|
|
79
|
+
});
|
|
80
|
+
|
|
81
|
+
//#endregion
|
|
82
|
+
export { NavigationMenuIndicator as a, NavigationMenuItem as i, NavigationMenuList as n, NavigationMenuContent as o, NavigationMenuLink as r, NavigationMenuPositioner as s, NavigationMenuTrigger as t };
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { cn } from "tailwind-variants";
|
|
2
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { Add01Icon, ArrowHorizontalIcon, MinusSignIcon } from "@hugeicons/core-free-icons";
|
|
4
|
+
import { HugeiconsIcon } from "@hugeicons/react";
|
|
5
|
+
import { createContext, useContext } from "react";
|
|
6
|
+
import { NumberField } from "@base-ui/react/number-field";
|
|
7
|
+
|
|
8
|
+
//#region src/components/number-field/number-field-decrement.tsx
|
|
9
|
+
const NumberFieldDecrement = ({ className, ...props }) => /* @__PURE__ */ jsx(NumberField.Decrement, {
|
|
10
|
+
className: cn("flex size-9 select-none items-center justify-center rounded-l-md border bg-input transition-colors hover:border-ring/70 disabled:pointer-events-none disabled:opacity-50", className),
|
|
11
|
+
"data-slot": "number-field-decrement",
|
|
12
|
+
...props,
|
|
13
|
+
children: /* @__PURE__ */ jsx(HugeiconsIcon, { icon: MinusSignIcon })
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
//#endregion
|
|
17
|
+
//#region src/components/number-field/number-field-group.tsx
|
|
18
|
+
const NumberFieldGroup = ({ className, ...props }) => /* @__PURE__ */ jsx(NumberField.Group, {
|
|
19
|
+
className: cn("flex rounded-md text-foreground shadow-xs transition-shadow", className),
|
|
20
|
+
"data-slot": "number-field-group",
|
|
21
|
+
...props
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
//#endregion
|
|
25
|
+
//#region src/components/number-field/number-field-increment.tsx
|
|
26
|
+
const NumberFieldIncrement = ({ className, ...props }) => /* @__PURE__ */ jsx(NumberField.Increment, {
|
|
27
|
+
className: cn("flex size-9 select-none items-center justify-center rounded-r-md border bg-input transition-colors hover:border-ring/70 disabled:pointer-events-none disabled:opacity-50", className),
|
|
28
|
+
"data-slot": "number-field-increment",
|
|
29
|
+
...props,
|
|
30
|
+
children: /* @__PURE__ */ jsx(HugeiconsIcon, { icon: Add01Icon })
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
//#endregion
|
|
34
|
+
//#region src/components/number-field/number-field-input.tsx
|
|
35
|
+
const NumberFieldInput = ({ className, ...props }) => /* @__PURE__ */ jsx(NumberField.Input, {
|
|
36
|
+
className: cn("h-9 w-20 border-y text-center text-sm tabular-nums transition-colors hover:border-ring/70 focus:z-1 focus:outline-[3px] focus:-outline-offset-1 disabled:pointer-events-none disabled:opacity-50", className),
|
|
37
|
+
"data-slot": "number-field-input",
|
|
38
|
+
...props
|
|
39
|
+
});
|
|
40
|
+
|
|
41
|
+
//#endregion
|
|
42
|
+
//#region src/components/number-field/number-field-scrub-area-cursor.tsx
|
|
43
|
+
const NumberFieldScrubAreaCursor = ({ className, ...props }) => /* @__PURE__ */ jsx(NumberField.ScrubAreaCursor, {
|
|
44
|
+
className: cn("drop-shadow-sm filter", className),
|
|
45
|
+
"data-slot": "number-field-scrub-area-cursor",
|
|
46
|
+
...props,
|
|
47
|
+
children: /* @__PURE__ */ jsx(HugeiconsIcon, {
|
|
48
|
+
className: "size-4.5",
|
|
49
|
+
icon: ArrowHorizontalIcon
|
|
50
|
+
})
|
|
51
|
+
});
|
|
52
|
+
|
|
53
|
+
//#endregion
|
|
54
|
+
//#region src/components/number-field/use-number-field.ts
|
|
55
|
+
const NumberFieldContext = createContext(null);
|
|
56
|
+
const useNumberField = () => {
|
|
57
|
+
const context = useContext(NumberFieldContext);
|
|
58
|
+
if (!context) throw new Error("useNumberField must be used within a NumberField");
|
|
59
|
+
return context;
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
//#endregion
|
|
63
|
+
//#region src/components/number-field/number-field-scrub-area.tsx
|
|
64
|
+
const NumberFieldScrubArea = ({ className, ...props }) => {
|
|
65
|
+
const { id: fieldId } = useNumberField();
|
|
66
|
+
return /* @__PURE__ */ jsxs(NumberField.ScrubArea, {
|
|
67
|
+
className: cn("cursor-ew-resize", className),
|
|
68
|
+
"data-slot": "number-field-scrub-area",
|
|
69
|
+
...props,
|
|
70
|
+
children: [/* @__PURE__ */ jsx("label", {
|
|
71
|
+
className: "cursor-ew-resize font-medium text-foreground text-sm",
|
|
72
|
+
"data-slot": "number-field-label",
|
|
73
|
+
htmlFor: fieldId,
|
|
74
|
+
children: "Amount"
|
|
75
|
+
}), /* @__PURE__ */ jsx(NumberFieldScrubAreaCursor, {})]
|
|
76
|
+
});
|
|
77
|
+
};
|
|
78
|
+
|
|
79
|
+
//#endregion
|
|
80
|
+
export { NumberFieldInput as a, NumberFieldDecrement as c, NumberFieldScrubAreaCursor as i, NumberFieldContext as n, NumberFieldIncrement as o, useNumberField as r, NumberFieldGroup as s, NumberFieldScrubArea as t };
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Portal } from "./ui/portal.js";
|
|
2
|
+
import { jsx } from "react/jsx-runtime";
|
|
3
|
+
|
|
4
|
+
//#region src/components/portal/optional-portal.tsx
|
|
5
|
+
const isTestEnvironment = () => typeof process !== "undefined" && (process.env.NODE_ENV === "test" || process.env.VITEST === "true" || process.env.JEST_WORKER_ID !== void 0);
|
|
6
|
+
const OptionalPortal = ({ withinPortal = true, children, ...others }) => {
|
|
7
|
+
if (isTestEnvironment() || !withinPortal) return children;
|
|
8
|
+
return /* @__PURE__ */ jsx(Portal, {
|
|
9
|
+
...others,
|
|
10
|
+
children
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
//#endregion
|
|
15
|
+
export { OptionalPortal as t };
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { Button } from "./ui/button.js";
|
|
2
|
+
import { cn } from "tailwind-variants";
|
|
3
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
4
|
+
import { ArrowLeft01Icon, ArrowRight01Icon, MoreHorizontalCircle01Icon } from "@hugeicons/core-free-icons";
|
|
5
|
+
import { HugeiconsIcon } from "@hugeicons/react";
|
|
6
|
+
|
|
7
|
+
//#region src/components/pagination/pagination-content.tsx
|
|
8
|
+
const PaginationContent = ({ className, ...props }) => /* @__PURE__ */ jsx("ul", {
|
|
9
|
+
className: cn("flex items-center gap-0.5", className),
|
|
10
|
+
"data-slot": "pagination-content",
|
|
11
|
+
...props
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
//#endregion
|
|
15
|
+
//#region src/components/pagination/pagination-ellipsis.tsx
|
|
16
|
+
const PaginationEllipsis = ({ className, ...props }) => /* @__PURE__ */ jsxs("span", {
|
|
17
|
+
"aria-hidden": true,
|
|
18
|
+
className: cn("flex size-8 items-center items-center justify-center justify-center [&_svg:not([class*='size-'])]:size-4", className),
|
|
19
|
+
"data-slot": "pagination-ellipsis",
|
|
20
|
+
...props,
|
|
21
|
+
children: [/* @__PURE__ */ jsx(HugeiconsIcon, {
|
|
22
|
+
icon: MoreHorizontalCircle01Icon,
|
|
23
|
+
strokeWidth: 2
|
|
24
|
+
}), /* @__PURE__ */ jsx("span", {
|
|
25
|
+
className: "sr-only",
|
|
26
|
+
children: "More pages"
|
|
27
|
+
})]
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
//#endregion
|
|
31
|
+
//#region src/components/pagination/pagination-item.tsx
|
|
32
|
+
const PaginationItem = ({ ...props }) => /* @__PURE__ */ jsx("li", {
|
|
33
|
+
"data-slot": "pagination-item",
|
|
34
|
+
...props
|
|
35
|
+
});
|
|
36
|
+
|
|
37
|
+
//#endregion
|
|
38
|
+
//#region src/components/pagination/pagination-link.tsx
|
|
39
|
+
const PaginationLink = ({ className, isActive, size = "icon", ...props }) => /* @__PURE__ */ jsx(Button, {
|
|
40
|
+
className: cn(className),
|
|
41
|
+
nativeButton: false,
|
|
42
|
+
render: /* @__PURE__ */ jsx("a", {
|
|
43
|
+
"aria-current": isActive ? "page" : void 0,
|
|
44
|
+
"aria-label": "pagination link",
|
|
45
|
+
"data-active": isActive,
|
|
46
|
+
"data-slot": "pagination-link",
|
|
47
|
+
...props
|
|
48
|
+
}),
|
|
49
|
+
size,
|
|
50
|
+
variant: isActive ? "outline" : "ghost"
|
|
51
|
+
});
|
|
52
|
+
|
|
53
|
+
//#endregion
|
|
54
|
+
//#region src/components/pagination/pagination-next.tsx
|
|
55
|
+
const PaginationNext = ({ className, ...props }) => /* @__PURE__ */ jsxs(PaginationLink, {
|
|
56
|
+
"aria-label": "Go to next page",
|
|
57
|
+
className: cn("pr-1.5!", className),
|
|
58
|
+
size: "default",
|
|
59
|
+
...props,
|
|
60
|
+
children: [/* @__PURE__ */ jsx("span", {
|
|
61
|
+
className: "hidden sm:block",
|
|
62
|
+
children: "Next"
|
|
63
|
+
}), /* @__PURE__ */ jsx(HugeiconsIcon, {
|
|
64
|
+
"data-icon": "inline-end",
|
|
65
|
+
icon: ArrowRight01Icon,
|
|
66
|
+
strokeWidth: 2
|
|
67
|
+
})]
|
|
68
|
+
});
|
|
69
|
+
|
|
70
|
+
//#endregion
|
|
71
|
+
//#region src/components/pagination/pagination-previous.tsx
|
|
72
|
+
const PaginationPrevious = ({ className, ...props }) => /* @__PURE__ */ jsxs(PaginationLink, {
|
|
73
|
+
"aria-label": "Go to previous page",
|
|
74
|
+
className: cn("pl-1.5!", className),
|
|
75
|
+
size: "default",
|
|
76
|
+
...props,
|
|
77
|
+
children: [/* @__PURE__ */ jsx(HugeiconsIcon, {
|
|
78
|
+
"data-icon": "inline-start",
|
|
79
|
+
icon: ArrowLeft01Icon,
|
|
80
|
+
strokeWidth: 2
|
|
81
|
+
}), /* @__PURE__ */ jsx("span", {
|
|
82
|
+
className: "hidden sm:block",
|
|
83
|
+
children: "Previous"
|
|
84
|
+
})]
|
|
85
|
+
});
|
|
86
|
+
|
|
87
|
+
//#endregion
|
|
88
|
+
export { PaginationEllipsis as a, PaginationItem as i, PaginationNext as n, PaginationContent as o, PaginationLink as r, PaginationPrevious as t };
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { Button } from "./ui/button.js";
|
|
2
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
3
|
+
import { ComponentProps } from "react";
|
|
4
|
+
|
|
5
|
+
//#region src/components/pagination/pagination-link.d.ts
|
|
6
|
+
type PaginationLinkProps = {
|
|
7
|
+
isActive?: boolean;
|
|
8
|
+
} & Pick<ComponentProps<typeof Button>, "size"> & ComponentProps<"a">;
|
|
9
|
+
declare const PaginationLink: ({
|
|
10
|
+
className,
|
|
11
|
+
isActive,
|
|
12
|
+
size,
|
|
13
|
+
...props
|
|
14
|
+
}: PaginationLinkProps) => react_jsx_runtime0.JSX.Element;
|
|
15
|
+
//#endregion
|
|
16
|
+
//#region src/components/pagination/pagination-content.d.ts
|
|
17
|
+
declare const PaginationContent: ({
|
|
18
|
+
className,
|
|
19
|
+
...props
|
|
20
|
+
}: ComponentProps<"ul">) => react_jsx_runtime0.JSX.Element;
|
|
21
|
+
//#endregion
|
|
22
|
+
//#region src/components/pagination/pagination-ellipsis.d.ts
|
|
23
|
+
declare const PaginationEllipsis: ({
|
|
24
|
+
className,
|
|
25
|
+
...props
|
|
26
|
+
}: ComponentProps<"span">) => react_jsx_runtime0.JSX.Element;
|
|
27
|
+
//#endregion
|
|
28
|
+
//#region src/components/pagination/pagination-item.d.ts
|
|
29
|
+
declare const PaginationItem: ({
|
|
30
|
+
...props
|
|
31
|
+
}: ComponentProps<"li">) => react_jsx_runtime0.JSX.Element;
|
|
32
|
+
//#endregion
|
|
33
|
+
//#region src/components/pagination/pagination-next.d.ts
|
|
34
|
+
declare const PaginationNext: ({
|
|
35
|
+
className,
|
|
36
|
+
...props
|
|
37
|
+
}: ComponentProps<typeof PaginationLink>) => react_jsx_runtime0.JSX.Element;
|
|
38
|
+
//#endregion
|
|
39
|
+
//#region src/components/pagination/pagination-previous.d.ts
|
|
40
|
+
declare const PaginationPrevious: ({
|
|
41
|
+
className,
|
|
42
|
+
...props
|
|
43
|
+
}: ComponentProps<typeof PaginationLink>) => react_jsx_runtime0.JSX.Element;
|
|
44
|
+
//#endregion
|
|
45
|
+
export { PaginationContent as a, PaginationEllipsis as i, PaginationNext as n, PaginationLink as o, PaginationItem as r, PaginationLinkProps as s, PaginationPrevious as t };
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { Button } from "./ui/button.js";
|
|
2
|
+
import { i as AvatarFallback, t as AvatarImage } from "./avatar-image-Bw3G-Bl6.js";
|
|
3
|
+
import { Avatar } from "./ui/avatar.js";
|
|
4
|
+
import { cn } from "tailwind-variants";
|
|
5
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
6
|
+
import { ArrowDown01Icon, ArrowUp01Icon, MinusSignIcon } from "@hugeicons/core-free-icons";
|
|
7
|
+
import { HugeiconsIcon } from "@hugeicons/react";
|
|
8
|
+
|
|
9
|
+
//#region src/components/pill/pill-avatar.tsx
|
|
10
|
+
const PillAvatar = ({ fallback, className, ...props }) => /* @__PURE__ */ jsxs(Avatar, {
|
|
11
|
+
className: cn("-ml-1 h-4 w-4", className),
|
|
12
|
+
children: [/* @__PURE__ */ jsx(AvatarImage, { ...props }), /* @__PURE__ */ jsx(AvatarFallback, { children: fallback })]
|
|
13
|
+
});
|
|
14
|
+
|
|
15
|
+
//#endregion
|
|
16
|
+
//#region src/components/pill/pill-avatar-group.tsx
|
|
17
|
+
const PillAvatarGroup = ({ children, className, ...props }) => /* @__PURE__ */ jsx("div", {
|
|
18
|
+
className: cn("flex items-center -space-x-1", "[&>*:not(:first-of-type)]:[mask-image:radial-gradient(circle_9px_at_-4px_50%,transparent_99%,white_100%)]", className),
|
|
19
|
+
...props,
|
|
20
|
+
children
|
|
21
|
+
});
|
|
22
|
+
|
|
23
|
+
//#endregion
|
|
24
|
+
//#region src/components/pill/pill-button.tsx
|
|
25
|
+
const PillButton = ({ className, ...props }) => /* @__PURE__ */ jsx(Button, {
|
|
26
|
+
className: cn("-my-2 -mr-2 size-6 rounded-full p-0.5 hover:bg-foreground/5", className),
|
|
27
|
+
size: "icon",
|
|
28
|
+
variant: "ghost",
|
|
29
|
+
...props
|
|
30
|
+
});
|
|
31
|
+
|
|
32
|
+
//#endregion
|
|
33
|
+
//#region src/components/pill/pill-delta.tsx
|
|
34
|
+
const PillDelta = ({ className, delta }) => {
|
|
35
|
+
if (!delta) return /* @__PURE__ */ jsx(HugeiconsIcon, {
|
|
36
|
+
className: cn("size-3 text-muted-foreground", className),
|
|
37
|
+
icon: MinusSignIcon
|
|
38
|
+
});
|
|
39
|
+
if (delta > 0) return /* @__PURE__ */ jsx(HugeiconsIcon, {
|
|
40
|
+
className: cn("size-3 text-emerald-500", className),
|
|
41
|
+
icon: ArrowUp01Icon
|
|
42
|
+
});
|
|
43
|
+
return /* @__PURE__ */ jsx(HugeiconsIcon, {
|
|
44
|
+
className: cn("size-3 text-rose-500", className),
|
|
45
|
+
icon: ArrowDown01Icon
|
|
46
|
+
});
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
//#endregion
|
|
50
|
+
//#region src/components/pill/pill-icon.tsx
|
|
51
|
+
const PillIcon = ({ icon, className, ...props }) => /* @__PURE__ */ jsx(HugeiconsIcon, {
|
|
52
|
+
className: cn("size-3 text-muted-foreground", className),
|
|
53
|
+
icon,
|
|
54
|
+
size: 12,
|
|
55
|
+
...props
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
//#endregion
|
|
59
|
+
//#region src/components/pill/pill-indicator.tsx
|
|
60
|
+
const PillIndicator = ({ variant = "success", pulse = false }) => /* @__PURE__ */ jsxs("span", {
|
|
61
|
+
className: "relative flex size-2",
|
|
62
|
+
children: [pulse && /* @__PURE__ */ jsx("span", { className: cn("absolute inline-flex h-full w-full animate-ping rounded-full opacity-75", variant === "success" && "bg-emerald-400", variant === "error" && "bg-rose-400", variant === "warning" && "bg-amber-400", variant === "info" && "bg-sky-400") }), /* @__PURE__ */ jsx("span", { className: cn("relative inline-flex size-2 rounded-full", variant === "success" && "bg-emerald-500", variant === "error" && "bg-rose-500", variant === "warning" && "bg-amber-500", variant === "info" && "bg-sky-500") })]
|
|
63
|
+
});
|
|
64
|
+
|
|
65
|
+
//#endregion
|
|
66
|
+
//#region src/components/pill/pill-status.tsx
|
|
67
|
+
const PillStatus = ({ children, className, ...props }) => /* @__PURE__ */ jsx("div", {
|
|
68
|
+
className: cn("flex items-center gap-2 border-r pr-2 font-medium", className),
|
|
69
|
+
...props,
|
|
70
|
+
children
|
|
71
|
+
});
|
|
72
|
+
|
|
73
|
+
//#endregion
|
|
74
|
+
export { PillButton as a, PillDelta as i, PillIndicator as n, PillAvatarGroup as o, PillIcon as r, PillAvatar as s, PillStatus as t };
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { t as AvatarImage } from "./avatar-image-BKgKyzVw.js";
|
|
2
|
+
import { Button } from "./ui/button.js";
|
|
3
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
4
|
+
import { HugeiconsIcon, HugeiconsProps } from "@hugeicons/react";
|
|
5
|
+
import { ComponentProps, ReactNode } from "react";
|
|
6
|
+
|
|
7
|
+
//#region src/components/pill/pill-avatar.d.ts
|
|
8
|
+
type PillAvatarProps = ComponentProps<typeof AvatarImage> & {
|
|
9
|
+
fallback?: string;
|
|
10
|
+
};
|
|
11
|
+
declare const PillAvatar: ({
|
|
12
|
+
fallback,
|
|
13
|
+
className,
|
|
14
|
+
...props
|
|
15
|
+
}: PillAvatarProps) => react_jsx_runtime0.JSX.Element;
|
|
16
|
+
//#endregion
|
|
17
|
+
//#region src/components/pill/pill-avatar-group.d.ts
|
|
18
|
+
type PillAvatarGroupProps = {
|
|
19
|
+
children: ReactNode;
|
|
20
|
+
className?: string;
|
|
21
|
+
} & ComponentProps<"div">;
|
|
22
|
+
declare const PillAvatarGroup: ({
|
|
23
|
+
children,
|
|
24
|
+
className,
|
|
25
|
+
...props
|
|
26
|
+
}: PillAvatarGroupProps) => react_jsx_runtime0.JSX.Element;
|
|
27
|
+
//#endregion
|
|
28
|
+
//#region src/components/pill/pill-button.d.ts
|
|
29
|
+
type PillButtonProps = ComponentProps<typeof Button>;
|
|
30
|
+
declare const PillButton: ({
|
|
31
|
+
className,
|
|
32
|
+
...props
|
|
33
|
+
}: PillButtonProps) => react_jsx_runtime0.JSX.Element;
|
|
34
|
+
//#endregion
|
|
35
|
+
//#region src/components/pill/pill-delta.d.ts
|
|
36
|
+
interface PillDeltaProps {
|
|
37
|
+
className?: string;
|
|
38
|
+
delta: number;
|
|
39
|
+
}
|
|
40
|
+
declare const PillDelta: ({
|
|
41
|
+
className,
|
|
42
|
+
delta
|
|
43
|
+
}: PillDeltaProps) => react_jsx_runtime0.JSX.Element;
|
|
44
|
+
//#endregion
|
|
45
|
+
//#region src/components/pill/pill-icon.d.ts
|
|
46
|
+
type PillIconProps = {
|
|
47
|
+
icon: NonNullable<HugeiconsProps["icon"]>;
|
|
48
|
+
className?: string;
|
|
49
|
+
} & ComponentProps<typeof HugeiconsIcon>;
|
|
50
|
+
declare const PillIcon: ({
|
|
51
|
+
icon,
|
|
52
|
+
className,
|
|
53
|
+
...props
|
|
54
|
+
}: PillIconProps) => react_jsx_runtime0.JSX.Element;
|
|
55
|
+
//#endregion
|
|
56
|
+
//#region src/components/pill/pill-indicator.d.ts
|
|
57
|
+
interface PillIndicatorProps {
|
|
58
|
+
variant?: "success" | "error" | "warning" | "info";
|
|
59
|
+
pulse?: boolean;
|
|
60
|
+
}
|
|
61
|
+
declare const PillIndicator: ({
|
|
62
|
+
variant,
|
|
63
|
+
pulse
|
|
64
|
+
}: PillIndicatorProps) => react_jsx_runtime0.JSX.Element;
|
|
65
|
+
//#endregion
|
|
66
|
+
//#region src/components/pill/pill-status.d.ts
|
|
67
|
+
type PillStatusProps = {
|
|
68
|
+
children: ReactNode;
|
|
69
|
+
className?: string;
|
|
70
|
+
} & ComponentProps<"div">;
|
|
71
|
+
declare const PillStatus: ({
|
|
72
|
+
children,
|
|
73
|
+
className,
|
|
74
|
+
...props
|
|
75
|
+
}: PillStatusProps) => react_jsx_runtime0.JSX.Element;
|
|
76
|
+
//#endregion
|
|
77
|
+
export { PillIcon as a, PillDeltaProps as c, PillAvatarGroup as d, PillAvatarGroupProps as f, PillIndicatorProps as i, PillButton as l, PillAvatarProps as m, PillStatusProps as n, PillIconProps as o, PillAvatar as p, PillIndicator as r, PillDelta as s, PillStatus as t, PillButtonProps as u };
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
2
|
+
import { ComponentProps } from "react";
|
|
3
|
+
import { Popover } from "@base-ui/react/popover";
|
|
4
|
+
|
|
5
|
+
//#region src/components/popover/popover-content.d.ts
|
|
6
|
+
declare const PopoverContent: ({
|
|
7
|
+
className,
|
|
8
|
+
align,
|
|
9
|
+
alignOffset,
|
|
10
|
+
side,
|
|
11
|
+
sideOffset,
|
|
12
|
+
...props
|
|
13
|
+
}: Popover.Popup.Props & Pick<Popover.Positioner.Props, "align" | "alignOffset" | "side" | "sideOffset">) => react_jsx_runtime0.JSX.Element;
|
|
14
|
+
//#endregion
|
|
15
|
+
//#region src/components/popover/popover-description.d.ts
|
|
16
|
+
declare const PopoverDescription: ({
|
|
17
|
+
className,
|
|
18
|
+
...props
|
|
19
|
+
}: Popover.Description.Props) => react_jsx_runtime0.JSX.Element;
|
|
20
|
+
//#endregion
|
|
21
|
+
//#region src/components/popover/popover-header.d.ts
|
|
22
|
+
declare const PopoverHeader: ({
|
|
23
|
+
className,
|
|
24
|
+
...props
|
|
25
|
+
}: ComponentProps<"div">) => react_jsx_runtime0.JSX.Element;
|
|
26
|
+
//#endregion
|
|
27
|
+
//#region src/components/popover/popover-title.d.ts
|
|
28
|
+
declare const PopoverTitle: ({
|
|
29
|
+
className,
|
|
30
|
+
...props
|
|
31
|
+
}: Popover.Title.Props) => react_jsx_runtime0.JSX.Element;
|
|
32
|
+
//#endregion
|
|
33
|
+
//#region src/components/popover/popover-trigger.d.ts
|
|
34
|
+
declare const PopoverTrigger: ({
|
|
35
|
+
className,
|
|
36
|
+
...props
|
|
37
|
+
}: Popover.Trigger.Props) => react_jsx_runtime0.JSX.Element;
|
|
38
|
+
//#endregion
|
|
39
|
+
export { PopoverContent as a, PopoverDescription as i, PopoverTitle as n, PopoverHeader as r, PopoverTrigger as t };
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { cn } from "tailwind-variants";
|
|
2
|
+
import { jsx } from "react/jsx-runtime";
|
|
3
|
+
import { Popover } from "@base-ui/react/popover";
|
|
4
|
+
|
|
5
|
+
//#region src/components/popover/popover-content.tsx
|
|
6
|
+
const PopoverContent = ({ className, align = "center", alignOffset = 0, side = "bottom", sideOffset = 4, ...props }) => /* @__PURE__ */ jsx(Popover.Portal, { children: /* @__PURE__ */ jsx(Popover.Positioner, {
|
|
7
|
+
align,
|
|
8
|
+
alignOffset,
|
|
9
|
+
className: "isolate z-50",
|
|
10
|
+
side,
|
|
11
|
+
sideOffset,
|
|
12
|
+
children: /* @__PURE__ */ jsx(Popover.Popup, {
|
|
13
|
+
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-md bg-popover p-4 text-popover-foreground text-sm shadow-md outline-hidden ring-1 ring-foreground/10 duration-100 data-closed:animate-out data-open:animate-in", className),
|
|
14
|
+
"data-slot": "popover-content",
|
|
15
|
+
...props
|
|
16
|
+
})
|
|
17
|
+
}) });
|
|
18
|
+
|
|
19
|
+
//#endregion
|
|
20
|
+
//#region src/components/popover/popover-description.tsx
|
|
21
|
+
const PopoverDescription = ({ className, ...props }) => /* @__PURE__ */ jsx(Popover.Description, {
|
|
22
|
+
className: cn("text-muted-foreground", className),
|
|
23
|
+
"data-slot": "popover-description",
|
|
24
|
+
...props
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
//#endregion
|
|
28
|
+
//#region src/components/popover/popover-header.tsx
|
|
29
|
+
const PopoverHeader = ({ className, ...props }) => /* @__PURE__ */ jsx("div", {
|
|
30
|
+
className: cn("flex flex-col gap-0.5 text-sm", className),
|
|
31
|
+
"data-slot": "popover-header",
|
|
32
|
+
...props
|
|
33
|
+
});
|
|
34
|
+
|
|
35
|
+
//#endregion
|
|
36
|
+
//#region src/components/popover/popover-title.tsx
|
|
37
|
+
const PopoverTitle = ({ className, ...props }) => /* @__PURE__ */ jsx(Popover.Title, {
|
|
38
|
+
className: cn("font-medium", className),
|
|
39
|
+
"data-slot": "popover-title",
|
|
40
|
+
...props
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
//#endregion
|
|
44
|
+
//#region src/components/popover/popover-trigger.tsx
|
|
45
|
+
const PopoverTrigger = ({ className, ...props }) => /* @__PURE__ */ jsx(Popover.Trigger, {
|
|
46
|
+
className: cn("cursor-pointer", className),
|
|
47
|
+
"data-slot": "popover-trigger",
|
|
48
|
+
...props
|
|
49
|
+
});
|
|
50
|
+
|
|
51
|
+
//#endregion
|
|
52
|
+
export { PopoverContent as a, PopoverDescription as i, PopoverTitle as n, PopoverHeader as r, PopoverTrigger as t };
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
2
|
+
import { Progress } from "@base-ui/react/progress";
|
|
3
|
+
|
|
4
|
+
//#region src/components/progress/progress-indicator.d.ts
|
|
5
|
+
declare const ProgressIndicator: ({
|
|
6
|
+
className,
|
|
7
|
+
...props
|
|
8
|
+
}: Progress.Indicator.Props) => react_jsx_runtime0.JSX.Element;
|
|
9
|
+
//#endregion
|
|
10
|
+
//#region src/components/progress/progress-label.d.ts
|
|
11
|
+
declare const ProgressLabel: ({
|
|
12
|
+
className,
|
|
13
|
+
...props
|
|
14
|
+
}: Progress.Label.Props) => react_jsx_runtime0.JSX.Element;
|
|
15
|
+
//#endregion
|
|
16
|
+
//#region src/components/progress/progress-track.d.ts
|
|
17
|
+
declare const ProgressTrack: ({
|
|
18
|
+
className,
|
|
19
|
+
...props
|
|
20
|
+
}: Progress.Track.Props) => react_jsx_runtime0.JSX.Element;
|
|
21
|
+
//#endregion
|
|
22
|
+
//#region src/components/progress/progress-value.d.ts
|
|
23
|
+
declare const ProgressValue: ({
|
|
24
|
+
className,
|
|
25
|
+
...props
|
|
26
|
+
}: Progress.Value.Props) => react_jsx_runtime0.JSX.Element;
|
|
27
|
+
//#endregion
|
|
28
|
+
export { ProgressIndicator as i, ProgressTrack as n, ProgressLabel as r, ProgressValue as t };
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { cn } from "tailwind-variants";
|
|
2
|
+
import { jsx } from "react/jsx-runtime";
|
|
3
|
+
import { Progress } from "@base-ui/react/progress";
|
|
4
|
+
|
|
5
|
+
//#region src/components/progress/progress-indicator.tsx
|
|
6
|
+
const ProgressIndicator = ({ className, ...props }) => /* @__PURE__ */ jsx(Progress.Indicator, {
|
|
7
|
+
className: cn("h-full bg-primary transition-all", className),
|
|
8
|
+
"data-slot": "progress-indicator",
|
|
9
|
+
...props
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
//#endregion
|
|
13
|
+
//#region src/components/progress/progress-label.tsx
|
|
14
|
+
const ProgressLabel = ({ className, ...props }) => /* @__PURE__ */ jsx(Progress.Label, {
|
|
15
|
+
className: cn("font-medium text-sm", className),
|
|
16
|
+
"data-slot": "progress-label",
|
|
17
|
+
...props
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
//#endregion
|
|
21
|
+
//#region src/components/progress/progress-track.tsx
|
|
22
|
+
const ProgressTrack = ({ className, ...props }) => /* @__PURE__ */ jsx(Progress.Track, {
|
|
23
|
+
className: cn("relative flex h-1 w-full items-center overflow-x-hidden rounded-full bg-muted", className),
|
|
24
|
+
"data-slot": "progress-track",
|
|
25
|
+
...props
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
//#endregion
|
|
29
|
+
//#region src/components/progress/progress-value.tsx
|
|
30
|
+
const ProgressValue = ({ className, ...props }) => /* @__PURE__ */ jsx(Progress.Value, {
|
|
31
|
+
className: cn("ml-auto text-muted-foreground text-sm tabular-nums", className),
|
|
32
|
+
"data-slot": "progress-value",
|
|
33
|
+
...props
|
|
34
|
+
});
|
|
35
|
+
|
|
36
|
+
//#endregion
|
|
37
|
+
export { ProgressIndicator as i, ProgressTrack as n, ProgressLabel as r, ProgressValue as t };
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
2
|
+
import { Radio } from "@base-ui/react/radio";
|
|
3
|
+
|
|
4
|
+
//#region src/components/radio-group/radio-group-item.d.ts
|
|
5
|
+
declare const RadioGroupItem: ({
|
|
6
|
+
className,
|
|
7
|
+
...props
|
|
8
|
+
}: Radio.Root.Props) => react_jsx_runtime0.JSX.Element;
|
|
9
|
+
//#endregion
|
|
10
|
+
export { RadioGroupItem as t };
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { cn } from "tailwind-variants";
|
|
2
|
+
import { jsx } from "react/jsx-runtime";
|
|
3
|
+
import { CircleIcon } from "@hugeicons/core-free-icons";
|
|
4
|
+
import { HugeiconsIcon } from "@hugeicons/react";
|
|
5
|
+
import { Radio } from "@base-ui/react/radio";
|
|
6
|
+
|
|
7
|
+
//#region src/components/radio-group/radio-group-item.tsx
|
|
8
|
+
const RadioGroupItem = ({ className, ...props }) => /* @__PURE__ */ jsx(Radio.Root, {
|
|
9
|
+
className: cn("group/radio-group-item peer relative flex aspect-square size-4 shrink-0 cursor-pointer rounded-full border border-input text-primary shadow-xs outline-none after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-[3px] aria-invalid:ring-destructive/20 dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40", className),
|
|
10
|
+
"data-slot": "radio-group-item",
|
|
11
|
+
...props,
|
|
12
|
+
children: /* @__PURE__ */ jsx(Radio.Indicator, {
|
|
13
|
+
className: "flex size-4 items-center justify-center text-primary group-aria-invalid/radio-group-item:text-destructive",
|
|
14
|
+
"data-slot": "radio-group-indicator",
|
|
15
|
+
children: /* @__PURE__ */ jsx(HugeiconsIcon, {
|
|
16
|
+
className: "absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2 fill-current",
|
|
17
|
+
icon: CircleIcon,
|
|
18
|
+
strokeWidth: 2
|
|
19
|
+
})
|
|
20
|
+
})
|
|
21
|
+
});
|
|
22
|
+
|
|
23
|
+
//#endregion
|
|
24
|
+
export { RadioGroupItem as t };
|