@enadhq/enad-react-sdk 1.1.0 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client/cart/components/cart-drawer.mjs +3 -3
- package/dist/client/cart/components/cart-drawer.mjs.map +1 -1
- package/dist/client/cart/components/cart-trigger.mjs +1 -1
- package/dist/client/cart/components/cart-trigger.mjs.map +1 -1
- package/dist/client/storefront/blocks/card-video.mjs +1 -1
- package/dist/client/storefront/blocks/card-video.mjs.map +1 -1
- package/dist/client/storefront/blocks/gallery-with-link-blocks.d.ts.map +1 -1
- package/dist/client/storefront/blocks/gallery-with-link-blocks.mjs +13 -5
- package/dist/client/storefront/blocks/gallery-with-link-blocks.mjs.map +1 -1
- package/dist/client/storefront/blocks/gallery.d.ts +10 -1
- package/dist/client/storefront/blocks/gallery.d.ts.map +1 -1
- package/dist/client/storefront/blocks/gallery.mjs +51 -27
- package/dist/client/storefront/blocks/gallery.mjs.map +1 -1
- package/dist/client/storefront/blocks/hero.d.ts +12 -1
- package/dist/client/storefront/blocks/hero.d.ts.map +1 -1
- package/dist/client/storefront/blocks/hero.mjs +143 -145
- package/dist/client/storefront/blocks/hero.mjs.map +1 -1
- package/dist/client/storefront/blocks/link-block-small.d.ts.map +1 -1
- package/dist/client/storefront/blocks/link-block-small.mjs +1 -1
- package/dist/client/storefront/blocks/link-block-small.mjs.map +1 -1
- package/dist/client/storefront/blocks/link-block.d.ts.map +1 -1
- package/dist/client/storefront/blocks/link-block.mjs +4 -4
- package/dist/client/storefront/blocks/link-block.mjs.map +1 -1
- package/dist/client/storefront/blocks/product-card-parts.d.ts +1 -1
- package/dist/client/storefront/blocks/product-card-parts.d.ts.map +1 -1
- package/dist/client/storefront/blocks/product-card-parts.mjs +2 -2
- package/dist/client/storefront/blocks/product-card-parts.mjs.map +1 -1
- package/dist/client/storefront/blocks/product-card.d.ts +10 -1
- package/dist/client/storefront/blocks/product-card.d.ts.map +1 -1
- package/dist/client/storefront/blocks/product-card.mjs +122 -116
- package/dist/client/storefront/blocks/product-card.mjs.map +1 -1
- package/dist/client/storefront/blocks/product-image.mjs +2 -2
- package/dist/client/storefront/blocks/product-image.mjs.map +1 -1
- package/dist/client/storefront/blocks/text-content-with-image.d.ts +14 -1
- package/dist/client/storefront/blocks/text-content-with-image.d.ts.map +1 -1
- package/dist/client/storefront/blocks/text-content-with-image.mjs +141 -164
- package/dist/client/storefront/blocks/text-content-with-image.mjs.map +1 -1
- package/dist/client/storefront/carousel/swipeable-carousel.d.ts +5 -1
- package/dist/client/storefront/carousel/swipeable-carousel.d.ts.map +1 -1
- package/dist/client/storefront/carousel/swipeable-carousel.mjs +2 -1
- package/dist/client/storefront/carousel/swipeable-carousel.mjs.map +1 -1
- package/dist/client/storefront/checkout/cart-summary.mjs +1 -1
- package/dist/client/storefront/checkout/cart-summary.mjs.map +1 -1
- package/dist/client/storefront/components/language-selector.d.ts.map +1 -1
- package/dist/client/storefront/components/language-selector.mjs +1 -1
- package/dist/client/storefront/components/language-selector.mjs.map +1 -1
- package/dist/client/storefront/components/product-recommendations.d.ts.map +1 -1
- package/dist/client/storefront/components/product-recommendations.mjs +29 -37
- package/dist/client/storefront/components/product-recommendations.mjs.map +1 -1
- package/dist/client/storefront/filters/filter-chip.d.ts +5 -2
- package/dist/client/storefront/filters/filter-chip.d.ts.map +1 -1
- package/dist/client/storefront/filters/filter-chip.mjs +6 -4
- package/dist/client/storefront/filters/filter-chip.mjs.map +1 -1
- package/dist/client/storefront/filters/filter-panel.mjs +2 -2
- package/dist/client/storefront/filters/filter-panel.mjs.map +1 -1
- package/dist/client/storefront/filters/toggle-list-view.mjs +1 -1
- package/dist/client/storefront/filters/toggle-list-view.mjs.map +1 -1
- package/dist/client/storefront/index.d.ts +12 -1
- package/dist/client/storefront/index.mjs +12 -1
- package/dist/client/storefront/layout/header.d.ts.map +1 -1
- package/dist/client/storefront/layout/header.mjs +1 -1
- package/dist/client/storefront/layout/header.mjs.map +1 -1
- package/dist/client/storefront/layout/mobile-menu-drawer.mjs +1 -1
- package/dist/client/storefront/layout/promotion-bar.d.ts.map +1 -1
- package/dist/client/storefront/layout/promotion-bar.mjs +3 -3
- package/dist/client/storefront/layout/promotion-bar.mjs.map +1 -1
- package/dist/client/storefront/primitives/block-heading.d.ts +40 -0
- package/dist/client/storefront/primitives/block-heading.d.ts.map +1 -0
- package/dist/client/storefront/primitives/block-heading.mjs +43 -0
- package/dist/client/storefront/primitives/block-heading.mjs.map +1 -0
- package/dist/client/storefront/primitives/button.d.ts +2 -2
- package/dist/client/storefront/primitives/button.d.ts.map +1 -1
- package/dist/client/storefront/primitives/button.mjs +4 -4
- package/dist/client/storefront/primitives/button.mjs.map +1 -1
- package/dist/client/storefront/primitives/cta-group.d.ts +25 -0
- package/dist/client/storefront/primitives/cta-group.d.ts.map +1 -0
- package/dist/client/storefront/primitives/cta-group.mjs +27 -0
- package/dist/client/storefront/primitives/cta-group.mjs.map +1 -0
- package/dist/client/storefront/primitives/image-with-hover.d.ts +18 -0
- package/dist/client/storefront/primitives/image-with-hover.d.ts.map +1 -0
- package/dist/client/storefront/primitives/image-with-hover.mjs +16 -0
- package/dist/client/storefront/primitives/image-with-hover.mjs.map +1 -0
- package/dist/client/storefront/primitives/index.d.ts +4 -1
- package/dist/client/storefront/primitives/index.mjs +4 -1
- package/dist/client/storefront/primitives/input.d.ts +1 -1
- package/dist/client/storefront/primitives/input.mjs.map +1 -1
- package/dist/client/storefront/primitives/pagination.mjs +2 -2
- package/dist/client/storefront/primitives/pagination.mjs.map +1 -1
- package/dist/client/storefront/product/quantity-picker.mjs +2 -2
- package/dist/client/storefront/product/quantity-picker.mjs.map +1 -1
- package/dist/client/storefront/types.d.ts +1 -1
- package/dist/client/storefront/types.d.ts.map +1 -1
- package/dist/client/storefront/types.mjs.map +1 -1
- package/dist/client/theme/apply.d.ts +1 -1
- package/dist/client/theme/apply.d.ts.map +1 -1
- package/dist/client/theme/apply.mjs +0 -12
- package/dist/client/theme/apply.mjs.map +1 -1
- package/dist/client/theme/cli.mjs +0 -16
- package/dist/client/theme/cli.mjs.map +1 -1
- package/dist/client/theme/codec.d.ts.map +1 -1
- package/dist/client/theme/codec.mjs +0 -2
- package/dist/client/theme/codec.mjs.map +1 -1
- package/dist/client/theme/defaults.d.ts +0 -2
- package/dist/client/theme/defaults.mjs +0 -2
- package/dist/client/theme/defaults.mjs.map +1 -1
- package/dist/client/ui/accordion.d.ts +12 -1
- package/dist/client/ui/accordion.d.ts.map +1 -1
- package/dist/client/ui/accordion.mjs +23 -5
- package/dist/client/ui/accordion.mjs.map +1 -1
- package/dist/client/ui/alert.d.ts +16 -7
- package/dist/client/ui/alert.d.ts.map +1 -1
- package/dist/client/ui/alert.mjs +21 -8
- package/dist/client/ui/alert.mjs.map +1 -1
- package/dist/client/ui/avatar.d.ts +10 -1
- package/dist/client/ui/avatar.d.ts.map +1 -1
- package/dist/client/ui/avatar.mjs +18 -4
- package/dist/client/ui/avatar.mjs.map +1 -1
- package/dist/client/ui/breadcrumb.d.ts +13 -1
- package/dist/client/ui/breadcrumb.d.ts.map +1 -1
- package/dist/client/ui/breadcrumb.mjs +27 -7
- package/dist/client/ui/breadcrumb.mjs.map +1 -1
- package/dist/client/ui/button.d.ts +28 -10
- package/dist/client/ui/button.d.ts.map +1 -1
- package/dist/client/ui/button.mjs +45 -20
- package/dist/client/ui/button.mjs.map +1 -1
- package/dist/client/ui/card.d.ts +20 -1
- package/dist/client/ui/card.d.ts.map +1 -1
- package/dist/client/ui/card.mjs +36 -8
- package/dist/client/ui/card.mjs.map +1 -1
- package/dist/client/ui/carousel.d.ts +9 -1
- package/dist/client/ui/carousel.d.ts.map +1 -1
- package/dist/client/ui/carousel.mjs +20 -4
- package/dist/client/ui/carousel.mjs.map +1 -1
- package/dist/client/ui/checkbox.d.ts +9 -1
- package/dist/client/ui/checkbox.d.ts.map +1 -1
- package/dist/client/ui/checkbox.mjs +12 -3
- package/dist/client/ui/checkbox.mjs.map +1 -1
- package/dist/client/ui/dialog.d.ts +13 -1
- package/dist/client/ui/dialog.d.ts.map +1 -1
- package/dist/client/ui/dialog.mjs +27 -7
- package/dist/client/ui/dialog.mjs.map +1 -1
- package/dist/client/ui/hover-card.d.ts +6 -1
- package/dist/client/ui/hover-card.d.ts.map +1 -1
- package/dist/client/ui/hover-card.mjs +4 -2
- package/dist/client/ui/hover-card.mjs.map +1 -1
- package/dist/client/ui/input.d.ts +20 -7
- package/dist/client/ui/input.d.ts.map +1 -1
- package/dist/client/ui/input.mjs +33 -9
- package/dist/client/ui/input.mjs.map +1 -1
- package/dist/client/ui/label.d.ts +6 -1
- package/dist/client/ui/label.d.ts.map +1 -1
- package/dist/client/ui/label.mjs +4 -2
- package/dist/client/ui/label.mjs.map +1 -1
- package/dist/client/ui/navigation-menu.d.ts +20 -3
- package/dist/client/ui/navigation-menu.d.ts.map +1 -1
- package/dist/client/ui/navigation-menu.mjs +34 -12
- package/dist/client/ui/navigation-menu.mjs.map +1 -1
- package/dist/client/ui/pagination.d.ts.map +1 -1
- package/dist/client/ui/pagination.mjs +3 -3
- package/dist/client/ui/pagination.mjs.map +1 -1
- package/dist/client/ui/popover.d.ts +11 -1
- package/dist/client/ui/popover.d.ts.map +1 -1
- package/dist/client/ui/popover.mjs +21 -5
- package/dist/client/ui/popover.mjs.map +1 -1
- package/dist/client/ui/progress.d.ts +9 -1
- package/dist/client/ui/progress.d.ts.map +1 -1
- package/dist/client/ui/progress.mjs +12 -3
- package/dist/client/ui/progress.mjs.map +1 -1
- package/dist/client/ui/select.d.ts +14 -2
- package/dist/client/ui/select.d.ts.map +1 -1
- package/dist/client/ui/select.mjs +35 -9
- package/dist/client/ui/select.mjs.map +1 -1
- package/dist/client/ui/separator.d.ts +6 -1
- package/dist/client/ui/separator.d.ts.map +1 -1
- package/dist/client/ui/separator.mjs +4 -2
- package/dist/client/ui/separator.mjs.map +1 -1
- package/dist/client/ui/sheet.d.ts +13 -1
- package/dist/client/ui/sheet.d.ts.map +1 -1
- package/dist/client/ui/sheet.mjs +35 -7
- package/dist/client/ui/sheet.mjs.map +1 -1
- package/dist/client/ui/slot-wrapper.d.ts +28 -0
- package/dist/client/ui/slot-wrapper.d.ts.map +1 -0
- package/dist/client/ui/slot-wrapper.mjs +38 -0
- package/dist/client/ui/slot-wrapper.mjs.map +1 -0
- package/dist/client/ui/tabs.d.ts +11 -1
- package/dist/client/ui/tabs.d.ts.map +1 -1
- package/dist/client/ui/tabs.mjs +21 -5
- package/dist/client/ui/tabs.mjs.map +1 -1
- package/dist/client/ui/toggle-group.d.ts +7 -4
- package/dist/client/ui/toggle-group.d.ts.map +1 -1
- package/dist/client/ui/toggle-group.mjs +4 -4
- package/dist/client/ui/toggle-group.mjs.map +1 -1
- package/dist/client/ui/toggle.d.ts +17 -8
- package/dist/client/ui/toggle.d.ts.map +1 -1
- package/dist/client/ui/toggle.mjs +11 -9
- package/dist/client/ui/toggle.mjs.map +1 -1
- package/dist/client/ui/tooltip.d.ts +6 -1
- package/dist/client/ui/tooltip.d.ts.map +1 -1
- package/dist/client/ui/tooltip.mjs +4 -2
- package/dist/client/ui/tooltip.mjs.map +1 -1
- package/dist/client/ui-resolver/button.d.ts +3 -4
- package/dist/client/ui-resolver/button.d.ts.map +1 -1
- package/dist/client/ui-resolver/button.mjs +2 -2
- package/dist/client/ui-resolver/button.mjs.map +1 -1
- package/dist/client/ui-resolver/card.d.ts +14 -1
- package/dist/client/ui-resolver/card.d.ts.map +1 -1
- package/dist/client/ui-resolver/card.mjs +3 -2
- package/dist/client/ui-resolver/card.mjs.map +1 -1
- package/dist/client/ui-resolver/context.mjs +1 -1
- package/dist/client/ui-resolver/context.mjs.map +1 -1
- package/dist/client/ui-resolver/index.d.ts +7 -4
- package/dist/client/ui-resolver/index.mjs +8 -6
- package/dist/client/ui-resolver/input.d.ts +3 -4
- package/dist/client/ui-resolver/input.d.ts.map +1 -1
- package/dist/client/ui-resolver/input.mjs +2 -2
- package/dist/client/ui-resolver/input.mjs.map +1 -1
- package/dist/client/ui-resolver/navigation-menu.d.ts +1 -2
- package/dist/client/ui-resolver/navigation-menu.d.ts.map +1 -1
- package/dist/client/ui-resolver/recipe.d.ts +95 -0
- package/dist/client/ui-resolver/recipe.d.ts.map +1 -0
- package/dist/client/ui-resolver/recipe.mjs +134 -0
- package/dist/client/ui-resolver/recipe.mjs.map +1 -0
- package/dist/client/ui-resolver/toggle.d.ts +2 -2
- package/dist/client/ui-resolver/toggle.mjs +2 -2
- package/dist/client/ui-resolver/toggle.mjs.map +1 -1
- package/dist/client/ui-resolver/types.d.ts +14 -0
- package/dist/client/ui-resolver/types.d.ts.map +1 -0
- package/dist/client/ui-resolver/types.mjs +1 -0
- package/dist/client/wishlist/wishlist-drawer.mjs +4 -4
- package/dist/client/wishlist/wishlist-drawer.mjs.map +1 -1
- package/dist/styles.css +1 -1
- package/package.json +4 -3
|
@@ -1,15 +1,38 @@
|
|
|
1
1
|
import { useIcon } from "../icons/icon-context.mjs";
|
|
2
2
|
import { cn } from "./utils.mjs";
|
|
3
|
+
import { defineRecipe, defineSlotRecipe } from "../ui-resolver/recipe.mjs";
|
|
3
4
|
import "react";
|
|
4
5
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
5
|
-
import { cva } from "class-variance-authority";
|
|
6
6
|
import { NavigationMenu as NavigationMenu$1 } from "radix-ui";
|
|
7
7
|
//#region src/client/ui/navigation-menu.tsx
|
|
8
|
+
const navigationMenuRecipe = defineSlotRecipe({
|
|
9
|
+
slots: [
|
|
10
|
+
"root",
|
|
11
|
+
"list",
|
|
12
|
+
"item",
|
|
13
|
+
"content",
|
|
14
|
+
"viewport",
|
|
15
|
+
"link",
|
|
16
|
+
"indicator"
|
|
17
|
+
],
|
|
18
|
+
base: {
|
|
19
|
+
root: "group/navigation-menu relative flex max-w-max flex-1 items-center justify-center",
|
|
20
|
+
list: "group flex flex-1 list-none items-center justify-center gap-1",
|
|
21
|
+
item: "relative",
|
|
22
|
+
content: "top-0 left-0 w-full p-2 pr-2.5 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 data-[motion^=from-]:animate-in data-[motion^=from-]:fade-in data-[motion^=to-]:animate-out data-[motion^=to-]:fade-out md:absolute md:w-auto group-data-[viewport=false]/navigation-menu:top-full group-data-[viewport=false]/navigation-menu:mt-1.5 group-data-[viewport=false]/navigation-menu:overflow-hidden group-data-[viewport=false]/navigation-menu:rounded-md group-data-[viewport=false]/navigation-menu:border 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:duration-200 **:data-[slot=navigation-menu-link]:focus:ring-0 **:data-[slot=navigation-menu-link]:focus:outline-none group-data-[viewport=false]/navigation-menu:data-[state=closed]:animate-out group-data-[viewport=false]/navigation-menu:data-[state=closed]:fade-out-0 group-data-[viewport=false]/navigation-menu:data-[state=closed]:zoom-out-95 group-data-[viewport=false]/navigation-menu:data-[state=open]:animate-in group-data-[viewport=false]/navigation-menu:data-[state=open]:fade-in-0 group-data-[viewport=false]/navigation-menu:data-[state=open]:zoom-in-95",
|
|
23
|
+
viewport: "origin-top-center relative mt-1.5 h-[var(--radix-navigation-menu-viewport-height)] w-full overflow-hidden rounded-[var(--enad-card-radius)] border bg-popover text-popover-foreground shadow-[var(--enad-shadow-md)] data-[state=closed]:animate-out data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:zoom-in-90 md:w-[var(--radix-navigation-menu-viewport-width)]",
|
|
24
|
+
link: "flex flex-col gap-1 rounded-sm p-2 text-sm transition-all outline-none hover:bg-accent-muted hover:text-accent-muted-foreground focus:bg-accent-muted focus:text-accent-muted-foreground focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1 data-[active=true]:bg-accent/50 data-[active=true]:text-accent-foreground data-[active=true]:hover:bg-accent data-[active=true]:focus:bg-accent [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground",
|
|
25
|
+
indicator: "top-full z-[1] flex h-1.5 items-end justify-center overflow-hidden data-[state=hidden]:animate-out data-[state=hidden]:fade-out data-[state=visible]:animate-in data-[state=visible]:fade-in"
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
const navigationMenuTriggerRecipe = defineRecipe({ base: "group inline-flex h-9 w-max items-center justify-center rounded-md bg-background px-4 py-2 text-sm font-medium transition-[color,box-shadow] outline-none hover:bg-accent-muted hover:text-accent-muted-foreground focus:bg-accent-muted focus:text-accent-muted-foreground focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=open]:bg-accent/50 data-[state=open]:text-accent-foreground data-[state=open]:hover:bg-accent data-[state=open]:focus:bg-accent" });
|
|
29
|
+
const navigationMenuTriggerStyle = () => navigationMenuTriggerRecipe();
|
|
30
|
+
const defaultClasses = navigationMenuRecipe();
|
|
8
31
|
function NavigationMenu({ className, children, viewport = true, ...props }) {
|
|
9
32
|
return /* @__PURE__ */ jsxs(NavigationMenu$1.Root, {
|
|
10
33
|
"data-slot": "navigation-menu",
|
|
11
34
|
"data-viewport": viewport,
|
|
12
|
-
className: cn(
|
|
35
|
+
className: cn(defaultClasses.root, className),
|
|
13
36
|
...props,
|
|
14
37
|
children: [children, viewport && /* @__PURE__ */ jsx(NavigationMenuViewport, {})]
|
|
15
38
|
});
|
|
@@ -17,23 +40,22 @@ function NavigationMenu({ className, children, viewport = true, ...props }) {
|
|
|
17
40
|
function NavigationMenuList({ className, ...props }) {
|
|
18
41
|
return /* @__PURE__ */ jsx(NavigationMenu$1.List, {
|
|
19
42
|
"data-slot": "navigation-menu-list",
|
|
20
|
-
className: cn(
|
|
43
|
+
className: cn(defaultClasses.list, className),
|
|
21
44
|
...props
|
|
22
45
|
});
|
|
23
46
|
}
|
|
24
47
|
function NavigationMenuItem({ className, ...props }) {
|
|
25
48
|
return /* @__PURE__ */ jsx(NavigationMenu$1.Item, {
|
|
26
49
|
"data-slot": "navigation-menu-item",
|
|
27
|
-
className: cn(
|
|
50
|
+
className: cn(defaultClasses.item, className),
|
|
28
51
|
...props
|
|
29
52
|
});
|
|
30
53
|
}
|
|
31
|
-
const navigationMenuTriggerStyle = cva("group inline-flex h-9 w-max items-center justify-center rounded-md bg-background px-4 py-2 text-sm font-medium transition-[color,box-shadow] outline-none hover:bg-accent-muted hover:text-accent-muted-foreground focus:bg-accent-muted focus:text-accent-muted-foreground focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=open]:bg-accent/50 data-[state=open]:text-accent-foreground data-[state=open]:hover:bg-accent data-[state=open]:focus:bg-accent");
|
|
32
54
|
function NavigationMenuTrigger({ className, children, ...props }) {
|
|
33
55
|
const ChevronDownIcon = useIcon("chevronDown");
|
|
34
56
|
return /* @__PURE__ */ jsxs(NavigationMenu$1.Trigger, {
|
|
35
57
|
"data-slot": "navigation-menu-trigger",
|
|
36
|
-
className: cn(
|
|
58
|
+
className: cn(navigationMenuTriggerRecipe(), "group", className),
|
|
37
59
|
...props,
|
|
38
60
|
children: [
|
|
39
61
|
children,
|
|
@@ -48,16 +70,16 @@ function NavigationMenuTrigger({ className, children, ...props }) {
|
|
|
48
70
|
function NavigationMenuContent({ className, ...props }) {
|
|
49
71
|
return /* @__PURE__ */ jsx(NavigationMenu$1.Content, {
|
|
50
72
|
"data-slot": "navigation-menu-content",
|
|
51
|
-
className: cn(
|
|
73
|
+
className: cn(defaultClasses.content, className),
|
|
52
74
|
...props
|
|
53
75
|
});
|
|
54
76
|
}
|
|
55
77
|
function NavigationMenuViewport({ className, ...props }) {
|
|
56
78
|
return /* @__PURE__ */ jsx("div", {
|
|
57
|
-
className:
|
|
79
|
+
className: "absolute top-full left-0 isolate z-50 flex justify-center",
|
|
58
80
|
children: /* @__PURE__ */ jsx(NavigationMenu$1.Viewport, {
|
|
59
81
|
"data-slot": "navigation-menu-viewport",
|
|
60
|
-
className: cn(
|
|
82
|
+
className: cn(defaultClasses.viewport, className),
|
|
61
83
|
...props
|
|
62
84
|
})
|
|
63
85
|
});
|
|
@@ -65,19 +87,19 @@ function NavigationMenuViewport({ className, ...props }) {
|
|
|
65
87
|
function NavigationMenuLink({ className, ...props }) {
|
|
66
88
|
return /* @__PURE__ */ jsx(NavigationMenu$1.Link, {
|
|
67
89
|
"data-slot": "navigation-menu-link",
|
|
68
|
-
className: cn(
|
|
90
|
+
className: cn(defaultClasses.link, className),
|
|
69
91
|
...props
|
|
70
92
|
});
|
|
71
93
|
}
|
|
72
94
|
function NavigationMenuIndicator({ className, ...props }) {
|
|
73
95
|
return /* @__PURE__ */ jsx(NavigationMenu$1.Indicator, {
|
|
74
96
|
"data-slot": "navigation-menu-indicator",
|
|
75
|
-
className: cn(
|
|
97
|
+
className: cn(defaultClasses.indicator, className),
|
|
76
98
|
...props,
|
|
77
99
|
children: /* @__PURE__ */ jsx("div", { className: "relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm bg-border shadow-md" })
|
|
78
100
|
});
|
|
79
101
|
}
|
|
80
102
|
//#endregion
|
|
81
|
-
export { NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, NavigationMenuViewport, navigationMenuTriggerStyle };
|
|
103
|
+
export { NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, NavigationMenuViewport, navigationMenuRecipe, navigationMenuTriggerRecipe, navigationMenuTriggerStyle };
|
|
82
104
|
|
|
83
105
|
//# sourceMappingURL=navigation-menu.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigation-menu.mjs","names":["NavigationMenuPrimitive"],"sources":["../../../src/client/ui/navigation-menu.tsx"],"sourcesContent":["import * as React from \"react\"
|
|
1
|
+
{"version":3,"file":"navigation-menu.mjs","names":["NavigationMenuPrimitive"],"sources":["../../../src/client/ui/navigation-menu.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { useIcon } from \"../icons/icon-context\";\nimport { NavigationMenu as NavigationMenuPrimitive } from \"radix-ui\";\n\nimport { defineSlotRecipe, defineRecipe } from \"../ui-resolver/recipe\";\nimport { cn } from \"./utils\";\n\nconst navigationMenuRecipe = defineSlotRecipe({\n slots: [\"root\", \"list\", \"item\", \"content\", \"viewport\", \"link\", \"indicator\"] as const,\n base: {\n root: \"group/navigation-menu relative flex max-w-max flex-1 items-center justify-center\",\n list: \"group flex flex-1 list-none items-center justify-center gap-1\",\n item: \"relative\",\n content:\n \"top-0 left-0 w-full p-2 pr-2.5 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 data-[motion^=from-]:animate-in data-[motion^=from-]:fade-in data-[motion^=to-]:animate-out data-[motion^=to-]:fade-out md:absolute md:w-auto group-data-[viewport=false]/navigation-menu:top-full group-data-[viewport=false]/navigation-menu:mt-1.5 group-data-[viewport=false]/navigation-menu:overflow-hidden group-data-[viewport=false]/navigation-menu:rounded-md group-data-[viewport=false]/navigation-menu:border 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:duration-200 **:data-[slot=navigation-menu-link]:focus:ring-0 **:data-[slot=navigation-menu-link]:focus:outline-none group-data-[viewport=false]/navigation-menu:data-[state=closed]:animate-out group-data-[viewport=false]/navigation-menu:data-[state=closed]:fade-out-0 group-data-[viewport=false]/navigation-menu:data-[state=closed]:zoom-out-95 group-data-[viewport=false]/navigation-menu:data-[state=open]:animate-in group-data-[viewport=false]/navigation-menu:data-[state=open]:fade-in-0 group-data-[viewport=false]/navigation-menu:data-[state=open]:zoom-in-95\",\n viewport:\n \"origin-top-center relative mt-1.5 h-[var(--radix-navigation-menu-viewport-height)] w-full overflow-hidden rounded-[var(--enad-card-radius)] border bg-popover text-popover-foreground shadow-[var(--enad-shadow-md)] data-[state=closed]:animate-out data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:zoom-in-90 md:w-[var(--radix-navigation-menu-viewport-width)]\",\n link: \"flex flex-col gap-1 rounded-sm p-2 text-sm transition-all outline-none hover:bg-accent-muted hover:text-accent-muted-foreground focus:bg-accent-muted focus:text-accent-muted-foreground focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1 data-[active=true]:bg-accent/50 data-[active=true]:text-accent-foreground data-[active=true]:hover:bg-accent data-[active=true]:focus:bg-accent [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground\",\n indicator:\n \"top-full z-[1] flex h-1.5 items-end justify-center overflow-hidden data-[state=hidden]:animate-out data-[state=hidden]:fade-out data-[state=visible]:animate-in data-[state=visible]:fade-in\",\n },\n});\n\nconst navigationMenuTriggerRecipe = defineRecipe({\n base: \"group inline-flex h-9 w-max items-center justify-center rounded-md bg-background px-4 py-2 text-sm font-medium transition-[color,box-shadow] outline-none hover:bg-accent-muted hover:text-accent-muted-foreground focus:bg-accent-muted focus:text-accent-muted-foreground focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=open]:bg-accent/50 data-[state=open]:text-accent-foreground data-[state=open]:hover:bg-accent data-[state=open]:focus:bg-accent\",\n});\n\n// Backward compat\nconst navigationMenuTriggerStyle = () => navigationMenuTriggerRecipe();\n\nconst defaultClasses = navigationMenuRecipe();\n\nfunction NavigationMenu({\n className,\n children,\n viewport = true,\n ...props\n}: React.ComponentProps<typeof NavigationMenuPrimitive.Root> & {\n viewport?: boolean;\n}) {\n return (\n <NavigationMenuPrimitive.Root\n data-slot=\"navigation-menu\"\n data-viewport={viewport}\n className={cn(defaultClasses.root, className)}\n {...props}\n >\n {children}\n {viewport && <NavigationMenuViewport />}\n </NavigationMenuPrimitive.Root>\n );\n}\n\nfunction NavigationMenuList({\n className,\n ...props\n}: React.ComponentProps<typeof NavigationMenuPrimitive.List>) {\n return (\n <NavigationMenuPrimitive.List\n data-slot=\"navigation-menu-list\"\n className={cn(defaultClasses.list, className)}\n {...props}\n />\n );\n}\n\nfunction NavigationMenuItem({\n className,\n ...props\n}: React.ComponentProps<typeof NavigationMenuPrimitive.Item>) {\n return (\n <NavigationMenuPrimitive.Item\n data-slot=\"navigation-menu-item\"\n className={cn(defaultClasses.item, className)}\n {...props}\n />\n );\n}\n\nfunction NavigationMenuTrigger({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof NavigationMenuPrimitive.Trigger>) {\n const ChevronDownIcon = useIcon(\"chevronDown\");\n\n return (\n <NavigationMenuPrimitive.Trigger\n data-slot=\"navigation-menu-trigger\"\n className={cn(navigationMenuTriggerRecipe(), \"group\", className)}\n {...props}\n >\n {children}{\" \"}\n <ChevronDownIcon\n className=\"relative top-[1px] ml-1 size-3 transition duration-300 group-data-[state=open]:rotate-180\"\n aria-hidden=\"true\"\n />\n </NavigationMenuPrimitive.Trigger>\n );\n}\n\nfunction NavigationMenuContent({\n className,\n ...props\n}: React.ComponentProps<typeof NavigationMenuPrimitive.Content>) {\n return (\n <NavigationMenuPrimitive.Content\n data-slot=\"navigation-menu-content\"\n className={cn(defaultClasses.content, className)}\n {...props}\n />\n );\n}\n\nfunction NavigationMenuViewport({\n className,\n ...props\n}: React.ComponentProps<typeof NavigationMenuPrimitive.Viewport>) {\n return (\n <div className=\"absolute top-full left-0 isolate z-50 flex justify-center\">\n <NavigationMenuPrimitive.Viewport\n data-slot=\"navigation-menu-viewport\"\n className={cn(defaultClasses.viewport, className)}\n {...props}\n />\n </div>\n );\n}\n\nfunction NavigationMenuLink({\n className,\n ...props\n}: React.ComponentProps<typeof NavigationMenuPrimitive.Link>) {\n return (\n <NavigationMenuPrimitive.Link\n data-slot=\"navigation-menu-link\"\n className={cn(defaultClasses.link, className)}\n {...props}\n />\n );\n}\n\nfunction NavigationMenuIndicator({\n className,\n ...props\n}: React.ComponentProps<typeof NavigationMenuPrimitive.Indicator>) {\n return (\n <NavigationMenuPrimitive.Indicator\n data-slot=\"navigation-menu-indicator\"\n className={cn(defaultClasses.indicator, className)}\n {...props}\n >\n <div className=\"relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm bg-border shadow-md\" />\n </NavigationMenuPrimitive.Indicator>\n );\n}\n\nexport {\n NavigationMenu,\n NavigationMenuList,\n NavigationMenuItem,\n NavigationMenuContent,\n NavigationMenuTrigger,\n NavigationMenuLink,\n NavigationMenuIndicator,\n NavigationMenuViewport,\n navigationMenuTriggerStyle,\n navigationMenuRecipe,\n navigationMenuTriggerRecipe,\n};\n"],"mappings":";;;;;;;AAOA,MAAM,uBAAuB,iBAAiB;CAC5C,OAAO;EAAC;EAAQ;EAAQ;EAAQ;EAAW;EAAY;EAAQ;EAAY;CAC3E,MAAM;EACJ,MAAM;EACN,MAAM;EACN,MAAM;EACN,SACE;EACF,UACE;EACF,MAAM;EACN,WACE;EACH;CACF,CAAC;AAEF,MAAM,8BAA8B,aAAa,EAC/C,MAAM,whBACP,CAAC;AAGF,MAAM,mCAAmC,6BAA6B;AAEtE,MAAM,iBAAiB,sBAAsB;AAE7C,SAAS,eAAe,EACtB,WACA,UACA,WAAW,MACX,GAAG,SAGF;AACD,QACE,qBAACA,iBAAwB,MAAzB;EACE,aAAU;EACV,iBAAe;EACf,WAAW,GAAG,eAAe,MAAM,UAAU;EAC7C,GAAI;YAJN,CAMG,UACA,YAAY,oBAAC,wBAAD,EAA0B,CAAA,CACV;;;AAInC,SAAS,mBAAmB,EAC1B,WACA,GAAG,SACyD;AAC5D,QACE,oBAACA,iBAAwB,MAAzB;EACE,aAAU;EACV,WAAW,GAAG,eAAe,MAAM,UAAU;EAC7C,GAAI;EACJ,CAAA;;AAIN,SAAS,mBAAmB,EAC1B,WACA,GAAG,SACyD;AAC5D,QACE,oBAACA,iBAAwB,MAAzB;EACE,aAAU;EACV,WAAW,GAAG,eAAe,MAAM,UAAU;EAC7C,GAAI;EACJ,CAAA;;AAIN,SAAS,sBAAsB,EAC7B,WACA,UACA,GAAG,SAC4D;CAC/D,MAAM,kBAAkB,QAAQ,cAAc;AAE9C,QACE,qBAACA,iBAAwB,SAAzB;EACE,aAAU;EACV,WAAW,GAAG,6BAA6B,EAAE,SAAS,UAAU;EAChE,GAAI;YAHN;GAKG;GAAU;GACX,oBAAC,iBAAD;IACE,WAAU;IACV,eAAY;IACZ,CAAA;GAC8B;;;AAItC,SAAS,sBAAsB,EAC7B,WACA,GAAG,SAC4D;AAC/D,QACE,oBAACA,iBAAwB,SAAzB;EACE,aAAU;EACV,WAAW,GAAG,eAAe,SAAS,UAAU;EAChD,GAAI;EACJ,CAAA;;AAIN,SAAS,uBAAuB,EAC9B,WACA,GAAG,SAC6D;AAChE,QACE,oBAAC,OAAD;EAAK,WAAU;YACb,oBAACA,iBAAwB,UAAzB;GACE,aAAU;GACV,WAAW,GAAG,eAAe,UAAU,UAAU;GACjD,GAAI;GACJ,CAAA;EACE,CAAA;;AAIV,SAAS,mBAAmB,EAC1B,WACA,GAAG,SACyD;AAC5D,QACE,oBAACA,iBAAwB,MAAzB;EACE,aAAU;EACV,WAAW,GAAG,eAAe,MAAM,UAAU;EAC7C,GAAI;EACJ,CAAA;;AAIN,SAAS,wBAAwB,EAC/B,WACA,GAAG,SAC8D;AACjE,QACE,oBAACA,iBAAwB,WAAzB;EACE,aAAU;EACV,WAAW,GAAG,eAAe,WAAW,UAAU;EAClD,GAAI;YAEJ,oBAAC,OAAD,EAAK,WAAU,0EAA2E,CAAA;EACxD,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pagination.d.ts","names":[],"sources":["../../../src/client/ui/pagination.tsx"],"mappings":";;;;;iBAMS,UAAA,CAAA;EAAa,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,UAAqB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,
|
|
1
|
+
{"version":3,"file":"pagination.d.ts","names":[],"sources":["../../../src/client/ui/pagination.tsx"],"mappings":";;;;;iBAMS,UAAA,CAAA;EAAa,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,UAAqB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAW/D,iBAAA,CAAA;EAAoB,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,SAAoB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAUrE,cAAA,CAAA;EAAA,GAAoB;AAAA,GAAS,OAAA,CAAM,cAAA,SAAoB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,KAI3D,mBAAA;EACH,QAAA;AAAA,IACE,IAAA,CAAK,OAAA,CAAM,cAAA,QAAsB,MAAA,aACnC,OAAA,CAAM,cAAA;AAAA,iBAEC,cAAA,CAAA;EACP,SAAA;EACA,QAAA;EACA,IAAA;EACA,QAAA;EAAA,GACG;AAAA,GACF,mBAAA,GAAmB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAqBb,kBAAA,CAAA;EAAqB,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,QAAsB,cAAA,IAAe,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAgBvF,cAAA,CAAA;EAAiB,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,QAAsB,cAAA,IAAe,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAgBnF,kBAAA,CAAA;EAAqB,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,WAAsB,kBAAA,CAAA,GAAA,CAAA,OAAA"}
|
|
@@ -31,7 +31,7 @@ function PaginationLink({ className, isActive, size = "icon", children, ...props
|
|
|
31
31
|
"data-slot": "pagination-link",
|
|
32
32
|
"data-active": isActive,
|
|
33
33
|
className: cn(buttonVariants({
|
|
34
|
-
variant: isActive ? "
|
|
34
|
+
variant: isActive ? "outlined" : "plain",
|
|
35
35
|
size
|
|
36
36
|
}), "relative hit-area-1", className),
|
|
37
37
|
...props,
|
|
@@ -42,7 +42,7 @@ function PaginationPrevious({ className, ...props }) {
|
|
|
42
42
|
const ChevronLeftIcon = useIcon("chevronLeft");
|
|
43
43
|
return /* @__PURE__ */ jsxs(PaginationLink, {
|
|
44
44
|
"aria-label": "Go to previous page",
|
|
45
|
-
size: "
|
|
45
|
+
size: "md",
|
|
46
46
|
className: cn("gap-1 px-2.5 sm:pl-2.5", className),
|
|
47
47
|
...props,
|
|
48
48
|
children: [/* @__PURE__ */ jsx(ChevronLeftIcon, {}), /* @__PURE__ */ jsx("span", {
|
|
@@ -55,7 +55,7 @@ function PaginationNext({ className, ...props }) {
|
|
|
55
55
|
const ChevronRightIcon = useIcon("chevronRight");
|
|
56
56
|
return /* @__PURE__ */ jsxs(PaginationLink, {
|
|
57
57
|
"aria-label": "Go to next page",
|
|
58
|
-
size: "
|
|
58
|
+
size: "md",
|
|
59
59
|
className: cn("gap-1 px-2.5 sm:pr-2.5", className),
|
|
60
60
|
...props,
|
|
61
61
|
children: [/* @__PURE__ */ jsx("span", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pagination.mjs","names":[],"sources":["../../../src/client/ui/pagination.tsx"],"sourcesContent":["import * as React from \"react\"
|
|
1
|
+
{"version":3,"file":"pagination.mjs","names":[],"sources":["../../../src/client/ui/pagination.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { useIcon } from \"../icons/icon-context\";\n\nimport { cn } from \"./utils\";\nimport { buttonVariants, type Button } from \"./button\";\n\nfunction Pagination({ className, ...props }: React.ComponentProps<\"nav\">) {\n return (\n <nav\n aria-label=\"pagination\"\n data-slot=\"pagination\"\n className={cn(\"mx-auto flex w-full justify-center\", className)}\n {...props}\n />\n );\n}\n\nfunction PaginationContent({ className, ...props }: React.ComponentProps<\"ul\">) {\n return (\n <ul\n data-slot=\"pagination-content\"\n className={cn(\"flex flex-row items-center gap-1\", className)}\n {...props}\n />\n );\n}\n\nfunction PaginationItem({ ...props }: React.ComponentProps<\"li\">) {\n return <li data-slot=\"pagination-item\" {...props} />;\n}\n\ntype PaginationLinkProps = {\n isActive?: boolean;\n} & Pick<React.ComponentProps<typeof Button>, \"size\"> &\n React.ComponentProps<\"a\">;\n\nfunction PaginationLink({\n className,\n isActive,\n size = \"icon\",\n children,\n ...props\n}: PaginationLinkProps) {\n return (\n <a\n aria-current={isActive ? \"page\" : undefined}\n data-slot=\"pagination-link\"\n data-active={isActive}\n className={cn(\n buttonVariants({\n variant: isActive ? \"outlined\" : \"plain\",\n size,\n }),\n \"relative hit-area-1\",\n className,\n )}\n {...props}\n >\n {children}\n </a>\n );\n}\n\nfunction PaginationPrevious({ className, ...props }: React.ComponentProps<typeof PaginationLink>) {\n const ChevronLeftIcon = useIcon(\"chevronLeft\");\n\n return (\n <PaginationLink\n aria-label=\"Go to previous page\"\n size=\"md\"\n className={cn(\"gap-1 px-2.5 sm:pl-2.5\", className)}\n {...props}\n >\n <ChevronLeftIcon />\n <span className=\"hidden sm:block\">Previous</span>\n </PaginationLink>\n );\n}\n\nfunction PaginationNext({ className, ...props }: React.ComponentProps<typeof PaginationLink>) {\n const ChevronRightIcon = useIcon(\"chevronRight\");\n\n return (\n <PaginationLink\n aria-label=\"Go to next page\"\n size=\"md\"\n className={cn(\"gap-1 px-2.5 sm:pr-2.5\", className)}\n {...props}\n >\n <span className=\"hidden sm:block\">Next</span>\n <ChevronRightIcon />\n </PaginationLink>\n );\n}\n\nfunction PaginationEllipsis({ className, ...props }: React.ComponentProps<\"span\">) {\n const MoreHorizontalIcon = useIcon(\"more\");\n\n return (\n <span\n aria-hidden\n data-slot=\"pagination-ellipsis\"\n className={cn(\"flex size-9 items-center justify-center\", className)}\n {...props}\n >\n <MoreHorizontalIcon className=\"size-4\" />\n <span className=\"sr-only\">More pages</span>\n </span>\n );\n}\n\nexport {\n Pagination,\n PaginationContent,\n PaginationLink,\n PaginationItem,\n PaginationPrevious,\n PaginationNext,\n PaginationEllipsis,\n};\n"],"mappings":";;;;;;AAMA,SAAS,WAAW,EAAE,WAAW,GAAG,SAAsC;AACxE,QACE,oBAAC,OAAD;EACE,cAAW;EACX,aAAU;EACV,WAAW,GAAG,sCAAsC,UAAU;EAC9D,GAAI;EACJ,CAAA;;AAIN,SAAS,kBAAkB,EAAE,WAAW,GAAG,SAAqC;AAC9E,QACE,oBAAC,MAAD;EACE,aAAU;EACV,WAAW,GAAG,oCAAoC,UAAU;EAC5D,GAAI;EACJ,CAAA;;AAIN,SAAS,eAAe,EAAE,GAAG,SAAqC;AAChE,QAAO,oBAAC,MAAD;EAAI,aAAU;EAAkB,GAAI;EAAS,CAAA;;AAQtD,SAAS,eAAe,EACtB,WACA,UACA,OAAO,QACP,UACA,GAAG,SACmB;AACtB,QACE,oBAAC,KAAD;EACE,gBAAc,WAAW,SAAS,KAAA;EAClC,aAAU;EACV,eAAa;EACb,WAAW,GACT,eAAe;GACb,SAAS,WAAW,aAAa;GACjC;GACD,CAAC,EACF,uBACA,UACD;EACD,GAAI;EAEH;EACC,CAAA;;AAIR,SAAS,mBAAmB,EAAE,WAAW,GAAG,SAAsD;CAChG,MAAM,kBAAkB,QAAQ,cAAc;AAE9C,QACE,qBAAC,gBAAD;EACE,cAAW;EACX,MAAK;EACL,WAAW,GAAG,0BAA0B,UAAU;EAClD,GAAI;YAJN,CAME,oBAAC,iBAAD,EAAmB,CAAA,EACnB,oBAAC,QAAD;GAAM,WAAU;aAAkB;GAAe,CAAA,CAClC;;;AAIrB,SAAS,eAAe,EAAE,WAAW,GAAG,SAAsD;CAC5F,MAAM,mBAAmB,QAAQ,eAAe;AAEhD,QACE,qBAAC,gBAAD;EACE,cAAW;EACX,MAAK;EACL,WAAW,GAAG,0BAA0B,UAAU;EAClD,GAAI;YAJN,CAME,oBAAC,QAAD;GAAM,WAAU;aAAkB;GAAW,CAAA,EAC7C,oBAAC,kBAAD,EAAoB,CAAA,CACL;;;AAIrB,SAAS,mBAAmB,EAAE,WAAW,GAAG,SAAuC;CACjF,MAAM,qBAAqB,QAAQ,OAAO;AAE1C,QACE,qBAAC,QAAD;EACE,eAAA;EACA,aAAU;EACV,WAAW,GAAG,2CAA2C,UAAU;EACnE,GAAI;YAJN,CAME,oBAAC,oBAAD,EAAoB,WAAU,UAAW,CAAA,EACzC,oBAAC,QAAD;GAAM,WAAU;aAAU;GAAiB,CAAA,CACtC"}
|
|
@@ -3,6 +3,16 @@ import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
|
3
3
|
import { Popover as Popover$1 } from "radix-ui";
|
|
4
4
|
|
|
5
5
|
//#region src/client/ui/popover.d.ts
|
|
6
|
+
declare const popoverRecipe: (props?: ({
|
|
7
|
+
[x: string]: string | undefined;
|
|
8
|
+
} & {
|
|
9
|
+
className?: Partial<Record<"content" | "title" | "description" | "header", string>> | undefined;
|
|
10
|
+
}) | undefined) => {
|
|
11
|
+
content: string;
|
|
12
|
+
title: string;
|
|
13
|
+
description: string;
|
|
14
|
+
header: string;
|
|
15
|
+
};
|
|
6
16
|
declare function Popover({
|
|
7
17
|
...props
|
|
8
18
|
}: React$1.ComponentProps<typeof Popover$1.Root>): react_jsx_runtime0.JSX.Element;
|
|
@@ -31,5 +41,5 @@ declare function PopoverDescription({
|
|
|
31
41
|
...props
|
|
32
42
|
}: React$1.ComponentProps<"p">): react_jsx_runtime0.JSX.Element;
|
|
33
43
|
//#endregion
|
|
34
|
-
export { Popover, PopoverAnchor, PopoverContent, PopoverDescription, PopoverHeader, PopoverTitle, PopoverTrigger };
|
|
44
|
+
export { Popover, PopoverAnchor, PopoverContent, PopoverDescription, PopoverHeader, PopoverTitle, PopoverTrigger, popoverRecipe };
|
|
35
45
|
//# sourceMappingURL=popover.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"popover.d.ts","names":[],"sources":["../../../src/client/ui/popover.tsx"],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"popover.d.ts","names":[],"sources":["../../../src/client/ui/popover.tsx"],"mappings":";;;;;cAQM,aAAA,GAAa,KAAA;EAAA;;cASjB,OAAA,CAAA,MAAA;AAAA;;;;;;iBAIO,OAAA,CAAA;EAAA,GAAa;AAAA,GAAS,OAAA,CAAM,cAAA,QAAsB,SAAA,CAAiB,IAAA,IAAK,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAIxE,cAAA,CAAA;EAAA,GAAoB;AAAA,GAAS,OAAA,CAAM,cAAA,QAAsB,SAAA,CAAiB,OAAA,IAAQ,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAIlF,cAAA,CAAA;EACP,SAAA;EACA,KAAA;EACA,UAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,SAAA,CAAiB,OAAA,IAAQ,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAc/C,aAAA,CAAA;EAAA,GAAmB;AAAA,GAAS,OAAA,CAAM,cAAA,QAAsB,SAAA,CAAiB,MAAA,IAAO,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAIhF,aAAA,CAAA;EAAgB,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,UAAqB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAMlE,YAAA,CAAA;EAAe,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,SAAoB,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAMhE,kBAAA,CAAA;EAAqB,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,QAAmB,kBAAA,CAAA,GAAA,CAAA,OAAA"}
|
|
@@ -1,9 +1,25 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { cn } from "./utils.mjs";
|
|
3
|
+
import { defineSlotRecipe } from "../ui-resolver/recipe.mjs";
|
|
3
4
|
import "react";
|
|
4
5
|
import { jsx } from "react/jsx-runtime";
|
|
5
6
|
import { Popover as Popover$1 } from "radix-ui";
|
|
6
7
|
//#region src/client/ui/popover.tsx
|
|
8
|
+
const popoverRecipe = defineSlotRecipe({
|
|
9
|
+
slots: [
|
|
10
|
+
"content",
|
|
11
|
+
"header",
|
|
12
|
+
"title",
|
|
13
|
+
"description"
|
|
14
|
+
],
|
|
15
|
+
base: {
|
|
16
|
+
content: "z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-[var(--enad-card-radius)] border bg-popover p-4 text-popover-foreground shadow-[var(--enad-shadow-md)] outline-hidden 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 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
|
|
17
|
+
header: "flex flex-col gap-1 text-sm",
|
|
18
|
+
title: "font-medium",
|
|
19
|
+
description: "text-muted-foreground"
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
const defaultClasses = popoverRecipe();
|
|
7
23
|
function Popover({ ...props }) {
|
|
8
24
|
return /* @__PURE__ */ jsx(Popover$1.Root, {
|
|
9
25
|
"data-slot": "popover",
|
|
@@ -21,7 +37,7 @@ function PopoverContent({ className, align = "center", sideOffset = 4, ...props
|
|
|
21
37
|
"data-slot": "popover-content",
|
|
22
38
|
align,
|
|
23
39
|
sideOffset,
|
|
24
|
-
className: cn(
|
|
40
|
+
className: cn(defaultClasses.content, className),
|
|
25
41
|
...props
|
|
26
42
|
}) });
|
|
27
43
|
}
|
|
@@ -34,25 +50,25 @@ function PopoverAnchor({ ...props }) {
|
|
|
34
50
|
function PopoverHeader({ className, ...props }) {
|
|
35
51
|
return /* @__PURE__ */ jsx("div", {
|
|
36
52
|
"data-slot": "popover-header",
|
|
37
|
-
className: cn(
|
|
53
|
+
className: cn(defaultClasses.header, className),
|
|
38
54
|
...props
|
|
39
55
|
});
|
|
40
56
|
}
|
|
41
57
|
function PopoverTitle({ className, ...props }) {
|
|
42
58
|
return /* @__PURE__ */ jsx("div", {
|
|
43
59
|
"data-slot": "popover-title",
|
|
44
|
-
className: cn(
|
|
60
|
+
className: cn(defaultClasses.title, className),
|
|
45
61
|
...props
|
|
46
62
|
});
|
|
47
63
|
}
|
|
48
64
|
function PopoverDescription({ className, ...props }) {
|
|
49
65
|
return /* @__PURE__ */ jsx("p", {
|
|
50
66
|
"data-slot": "popover-description",
|
|
51
|
-
className: cn(
|
|
67
|
+
className: cn(defaultClasses.description, className),
|
|
52
68
|
...props
|
|
53
69
|
});
|
|
54
70
|
}
|
|
55
71
|
//#endregion
|
|
56
|
-
export { Popover, PopoverAnchor, PopoverContent, PopoverDescription, PopoverHeader, PopoverTitle, PopoverTrigger };
|
|
72
|
+
export { Popover, PopoverAnchor, PopoverContent, PopoverDescription, PopoverHeader, PopoverTitle, PopoverTrigger, popoverRecipe };
|
|
57
73
|
|
|
58
74
|
//# sourceMappingURL=popover.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"popover.mjs","names":["PopoverPrimitive"],"sources":["../../../src/client/ui/popover.tsx"],"sourcesContent":["\"use client\"
|
|
1
|
+
{"version":3,"file":"popover.mjs","names":["PopoverPrimitive"],"sources":["../../../src/client/ui/popover.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport { Popover as PopoverPrimitive } from \"radix-ui\";\n\nimport { defineSlotRecipe } from \"../ui-resolver/recipe\";\nimport { cn } from \"./utils\";\n\nconst popoverRecipe = defineSlotRecipe({\n slots: [\"content\", \"header\", \"title\", \"description\"] as const,\n base: {\n content:\n \"z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-[var(--enad-card-radius)] border bg-popover p-4 text-popover-foreground shadow-[var(--enad-shadow-md)] outline-hidden 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 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95\",\n header: \"flex flex-col gap-1 text-sm\",\n title: \"font-medium\",\n description: \"text-muted-foreground\",\n },\n});\n\nconst defaultClasses = popoverRecipe();\n\nfunction Popover({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Root>) {\n return <PopoverPrimitive.Root data-slot=\"popover\" {...props} />;\n}\n\nfunction PopoverTrigger({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Trigger>) {\n return <PopoverPrimitive.Trigger data-slot=\"popover-trigger\" {...props} />;\n}\n\nfunction PopoverContent({\n className,\n align = \"center\",\n sideOffset = 4,\n ...props\n}: React.ComponentProps<typeof PopoverPrimitive.Content>) {\n return (\n <PopoverPrimitive.Portal>\n <PopoverPrimitive.Content\n data-slot=\"popover-content\"\n align={align}\n sideOffset={sideOffset}\n className={cn(defaultClasses.content, className)}\n {...props}\n />\n </PopoverPrimitive.Portal>\n );\n}\n\nfunction PopoverAnchor({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Anchor>) {\n return <PopoverPrimitive.Anchor data-slot=\"popover-anchor\" {...props} />;\n}\n\nfunction PopoverHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div data-slot=\"popover-header\" className={cn(defaultClasses.header, className)} {...props} />\n );\n}\n\nfunction PopoverTitle({ className, ...props }: React.ComponentProps<\"h2\">) {\n return (\n <div data-slot=\"popover-title\" className={cn(defaultClasses.title, className)} {...props} />\n );\n}\n\nfunction PopoverDescription({ className, ...props }: React.ComponentProps<\"p\">) {\n return (\n <p\n data-slot=\"popover-description\"\n className={cn(defaultClasses.description, className)}\n {...props}\n />\n );\n}\n\nexport {\n Popover,\n PopoverTrigger,\n PopoverContent,\n PopoverAnchor,\n PopoverHeader,\n PopoverTitle,\n PopoverDescription,\n popoverRecipe,\n};\n"],"mappings":";;;;;;;AAQA,MAAM,gBAAgB,iBAAiB;CACrC,OAAO;EAAC;EAAW;EAAU;EAAS;EAAc;CACpD,MAAM;EACJ,SACE;EACF,QAAQ;EACR,OAAO;EACP,aAAa;EACd;CACF,CAAC;AAEF,MAAM,iBAAiB,eAAe;AAEtC,SAAS,QAAQ,EAAE,GAAG,SAA6D;AACjF,QAAO,oBAACA,UAAiB,MAAlB;EAAuB,aAAU;EAAU,GAAI;EAAS,CAAA;;AAGjE,SAAS,eAAe,EAAE,GAAG,SAAgE;AAC3F,QAAO,oBAACA,UAAiB,SAAlB;EAA0B,aAAU;EAAkB,GAAI;EAAS,CAAA;;AAG5E,SAAS,eAAe,EACtB,WACA,QAAQ,UACR,aAAa,GACb,GAAG,SACqD;AACxD,QACE,oBAACA,UAAiB,QAAlB,EAAA,UACE,oBAACA,UAAiB,SAAlB;EACE,aAAU;EACH;EACK;EACZ,WAAW,GAAG,eAAe,SAAS,UAAU;EAChD,GAAI;EACJ,CAAA,EACsB,CAAA;;AAI9B,SAAS,cAAc,EAAE,GAAG,SAA+D;AACzF,QAAO,oBAACA,UAAiB,QAAlB;EAAyB,aAAU;EAAiB,GAAI;EAAS,CAAA;;AAG1E,SAAS,cAAc,EAAE,WAAW,GAAG,SAAsC;AAC3E,QACE,oBAAC,OAAD;EAAK,aAAU;EAAiB,WAAW,GAAG,eAAe,QAAQ,UAAU;EAAE,GAAI;EAAS,CAAA;;AAIlG,SAAS,aAAa,EAAE,WAAW,GAAG,SAAqC;AACzE,QACE,oBAAC,OAAD;EAAK,aAAU;EAAgB,WAAW,GAAG,eAAe,OAAO,UAAU;EAAE,GAAI;EAAS,CAAA;;AAIhG,SAAS,mBAAmB,EAAE,WAAW,GAAG,SAAoC;AAC9E,QACE,oBAAC,KAAD;EACE,aAAU;EACV,WAAW,GAAG,eAAe,aAAa,UAAU;EACpD,GAAI;EACJ,CAAA"}
|
|
@@ -3,11 +3,19 @@ import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
|
3
3
|
import { Progress as Progress$1 } from "radix-ui";
|
|
4
4
|
|
|
5
5
|
//#region src/client/ui/progress.d.ts
|
|
6
|
+
declare const progressRecipe: (props?: ({
|
|
7
|
+
[x: string]: string | undefined;
|
|
8
|
+
} & {
|
|
9
|
+
className?: Partial<Record<"root" | "indicator", string>> | undefined;
|
|
10
|
+
}) | undefined) => {
|
|
11
|
+
root: string;
|
|
12
|
+
indicator: string;
|
|
13
|
+
};
|
|
6
14
|
declare function Progress({
|
|
7
15
|
className,
|
|
8
16
|
value,
|
|
9
17
|
...props
|
|
10
18
|
}: React$1.ComponentProps<typeof Progress$1.Root>): react_jsx_runtime0.JSX.Element;
|
|
11
19
|
//#endregion
|
|
12
|
-
export { Progress };
|
|
20
|
+
export { Progress, progressRecipe };
|
|
13
21
|
//# sourceMappingURL=progress.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progress.d.ts","names":[],"sources":["../../../src/client/ui/progress.tsx"],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"progress.d.ts","names":[],"sources":["../../../src/client/ui/progress.tsx"],"mappings":";;;;;cAQM,cAAA,GAAc,KAAA;EAAA;;cAMlB,OAAA,CAAA,MAAA;AAAA;;;;iBAIO,QAAA,CAAA;EACP,SAAA;EACA,KAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,UAAA,CAAkB,IAAA,IAAK,kBAAA,CAAA,GAAA,CAAA,OAAA"}
|
|
@@ -1,23 +1,32 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { cn } from "./utils.mjs";
|
|
3
|
+
import { defineSlotRecipe } from "../ui-resolver/recipe.mjs";
|
|
3
4
|
import "react";
|
|
4
5
|
import { jsx } from "react/jsx-runtime";
|
|
5
6
|
import { Progress as Progress$1 } from "radix-ui";
|
|
6
7
|
//#region src/client/ui/progress.tsx
|
|
8
|
+
const progressRecipe = defineSlotRecipe({
|
|
9
|
+
slots: ["root", "indicator"],
|
|
10
|
+
base: {
|
|
11
|
+
root: "relative h-2 w-full overflow-hidden rounded-full bg-primary/20",
|
|
12
|
+
indicator: "h-full w-full flex-1 rounded-full bg-primary transition-all"
|
|
13
|
+
}
|
|
14
|
+
});
|
|
15
|
+
const defaultClasses = progressRecipe();
|
|
7
16
|
function Progress({ className, value, ...props }) {
|
|
8
17
|
return /* @__PURE__ */ jsx(Progress$1.Root, {
|
|
9
18
|
"data-slot": "progress",
|
|
10
19
|
value,
|
|
11
|
-
className: cn(
|
|
20
|
+
className: cn(defaultClasses.root, className),
|
|
12
21
|
...props,
|
|
13
22
|
children: /* @__PURE__ */ jsx(Progress$1.Indicator, {
|
|
14
23
|
"data-slot": "progress-indicator",
|
|
15
|
-
className:
|
|
24
|
+
className: defaultClasses.indicator,
|
|
16
25
|
style: { transform: `translateX(-${100 - (value ?? 0)}%)` }
|
|
17
26
|
})
|
|
18
27
|
});
|
|
19
28
|
}
|
|
20
29
|
//#endregion
|
|
21
|
-
export { Progress };
|
|
30
|
+
export { Progress, progressRecipe };
|
|
22
31
|
|
|
23
32
|
//# sourceMappingURL=progress.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progress.mjs","names":["ProgressPrimitive"],"sources":["../../../src/client/ui/progress.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport { Progress as ProgressPrimitive } from \"radix-ui\";\n\nimport { cn } from \"./utils\";\n\nfunction Progress({\n className,\n value,\n ...props\n}: React.ComponentProps<typeof ProgressPrimitive.Root>) {\n return (\n <ProgressPrimitive.Root\n data-slot=\"progress\"\n value={value}\n className={cn(
|
|
1
|
+
{"version":3,"file":"progress.mjs","names":["ProgressPrimitive"],"sources":["../../../src/client/ui/progress.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport { Progress as ProgressPrimitive } from \"radix-ui\";\n\nimport { defineSlotRecipe } from \"../ui-resolver/recipe\";\nimport { cn } from \"./utils\";\n\nconst progressRecipe = defineSlotRecipe({\n slots: [\"root\", \"indicator\"] as const,\n base: {\n root: \"relative h-2 w-full overflow-hidden rounded-full bg-primary/20\",\n indicator: \"h-full w-full flex-1 rounded-full bg-primary transition-all\",\n },\n});\n\nconst defaultClasses = progressRecipe();\n\nfunction Progress({\n className,\n value,\n ...props\n}: React.ComponentProps<typeof ProgressPrimitive.Root>) {\n return (\n <ProgressPrimitive.Root\n data-slot=\"progress\"\n value={value}\n className={cn(defaultClasses.root, className)}\n {...props}\n >\n <ProgressPrimitive.Indicator\n data-slot=\"progress-indicator\"\n className={defaultClasses.indicator}\n style={{ transform: `translateX(-${100 - (value ?? 0)}%)` }}\n />\n </ProgressPrimitive.Root>\n );\n}\n\nexport { Progress, progressRecipe };\n"],"mappings":";;;;;;;AAQA,MAAM,iBAAiB,iBAAiB;CACtC,OAAO,CAAC,QAAQ,YAAY;CAC5B,MAAM;EACJ,MAAM;EACN,WAAW;EACZ;CACF,CAAC;AAEF,MAAM,iBAAiB,gBAAgB;AAEvC,SAAS,SAAS,EAChB,WACA,OACA,GAAG,SACmD;AACtD,QACE,oBAACA,WAAkB,MAAnB;EACE,aAAU;EACH;EACP,WAAW,GAAG,eAAe,MAAM,UAAU;EAC7C,GAAI;YAEJ,oBAACA,WAAkB,WAAnB;GACE,aAAU;GACV,WAAW,eAAe;GAC1B,OAAO,EAAE,WAAW,eAAe,OAAO,SAAS,GAAG,KAAK;GAC3D,CAAA;EACqB,CAAA"}
|
|
@@ -3,6 +3,18 @@ import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
|
3
3
|
import { Select as Select$1 } from "radix-ui";
|
|
4
4
|
|
|
5
5
|
//#region src/client/ui/select.d.ts
|
|
6
|
+
declare const selectRecipe: (props?: ({
|
|
7
|
+
size?: "sm" | "md" | undefined;
|
|
8
|
+
} & {
|
|
9
|
+
className?: Partial<Record<"item" | "trigger" | "content" | "separator" | "label" | "scrollButton", string>> | undefined;
|
|
10
|
+
}) | undefined) => {
|
|
11
|
+
item: string;
|
|
12
|
+
trigger: string;
|
|
13
|
+
content: string;
|
|
14
|
+
separator: string;
|
|
15
|
+
label: string;
|
|
16
|
+
scrollButton: string;
|
|
17
|
+
};
|
|
6
18
|
declare function Select({
|
|
7
19
|
...props
|
|
8
20
|
}: React$1.ComponentProps<typeof Select$1.Root>): react_jsx_runtime0.JSX.Element;
|
|
@@ -18,7 +30,7 @@ declare function SelectTrigger({
|
|
|
18
30
|
children,
|
|
19
31
|
...props
|
|
20
32
|
}: React$1.ComponentProps<typeof Select$1.Trigger> & {
|
|
21
|
-
size?: "sm" | "
|
|
33
|
+
size?: "sm" | "md";
|
|
22
34
|
}): react_jsx_runtime0.JSX.Element;
|
|
23
35
|
declare function SelectContent({
|
|
24
36
|
className,
|
|
@@ -49,5 +61,5 @@ declare function SelectScrollDownButton({
|
|
|
49
61
|
...props
|
|
50
62
|
}: React$1.ComponentProps<typeof Select$1.ScrollDownButton>): react_jsx_runtime0.JSX.Element;
|
|
51
63
|
//#endregion
|
|
52
|
-
export { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue };
|
|
64
|
+
export { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, selectRecipe };
|
|
53
65
|
//# sourceMappingURL=select.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select.d.ts","names":[],"sources":["../../../src/client/ui/select.tsx"],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"select.d.ts","names":[],"sources":["../../../src/client/ui/select.tsx"],"mappings":";;;;;cAOM,YAAA,GAAY,KAAA;;;cAqBhB,OAAA,CAAA,MAAA;AAAA;;;;;;;;iBAIO,MAAA,CAAA;EAAA,GAAY;AAAA,GAAS,OAAA,CAAM,cAAA,QAAsB,QAAA,CAAgB,IAAA,IAAK,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAItE,WAAA,CAAA;EAAA,GAAiB;AAAA,GAAS,OAAA,CAAM,cAAA,QAAsB,QAAA,CAAgB,KAAA,IAAM,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAI5E,WAAA,CAAA;EAAA,GAAiB;AAAA,GAAS,OAAA,CAAM,cAAA,QAAsB,QAAA,CAAgB,KAAA,IAAM,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAI5E,aAAA,CAAA;EACP,SAAA;EACA,IAAA;EACA,QAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,QAAA,CAAgB,OAAA;EAC7C,IAAA;AAAA,IACD,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAmBQ,aAAA,CAAA;EACP,SAAA;EACA,QAAA;EACA,QAAA;EACA,KAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,QAAA,CAAgB,OAAA,IAAQ,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBA+B9C,WAAA,CAAA;EAAc,SAAA;EAAA,GAAc;AAAA,GAAS,OAAA,CAAM,cAAA,QAAsB,QAAA,CAAgB,KAAA,IAAM,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAUvF,UAAA,CAAA;EACP,SAAA;EACA,QAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,QAAA,CAAgB,IAAA,IAAK,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAsB3C,eAAA,CAAA;EACP,SAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,QAAA,CAAgB,SAAA,IAAU,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAUhD,oBAAA,CAAA;EACP,SAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,QAAA,CAAgB,cAAA,IAAe,kBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBAcrD,sBAAA,CAAA;EACP,SAAA;EAAA,GACG;AAAA,GACF,OAAA,CAAM,cAAA,QAAsB,QAAA,CAAgB,gBAAA,IAAiB,kBAAA,CAAA,GAAA,CAAA,OAAA"}
|
|
@@ -1,9 +1,34 @@
|
|
|
1
1
|
import { useIcon } from "../icons/icon-context.mjs";
|
|
2
2
|
import { cn } from "./utils.mjs";
|
|
3
|
+
import { defineSlotRecipe } from "../ui-resolver/recipe.mjs";
|
|
3
4
|
import "react";
|
|
4
5
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
5
6
|
import { Select as Select$1 } from "radix-ui";
|
|
6
7
|
//#region src/client/ui/select.tsx
|
|
8
|
+
const selectRecipe = defineSlotRecipe({
|
|
9
|
+
slots: [
|
|
10
|
+
"trigger",
|
|
11
|
+
"content",
|
|
12
|
+
"item",
|
|
13
|
+
"label",
|
|
14
|
+
"separator",
|
|
15
|
+
"scrollButton"
|
|
16
|
+
],
|
|
17
|
+
base: {
|
|
18
|
+
trigger: "flex w-fit items-center justify-between gap-2 rounded-[var(--enad-input-radius)] border border-input bg-transparent px-[var(--enad-input-px)] py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none 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-destructive/20 data-[placeholder]:text-muted-foreground *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 dark:bg-input/30 dark:hover:bg-input/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground",
|
|
19
|
+
content: "relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-[var(--enad-input-radius)] border bg-popover text-popover-foreground shadow-[var(--enad-shadow-md)] 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 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
|
|
20
|
+
item: "relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none focus:bg-accent-muted focus:text-accent-muted-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",
|
|
21
|
+
label: "px-2 py-1.5 text-xs text-muted-foreground",
|
|
22
|
+
separator: "pointer-events-none -mx-1 my-1 h-px bg-border",
|
|
23
|
+
scrollButton: "flex cursor-default items-center justify-center py-1"
|
|
24
|
+
},
|
|
25
|
+
variants: { size: {
|
|
26
|
+
sm: { trigger: "h-[var(--enad-control-height-sm)]" },
|
|
27
|
+
md: { trigger: "h-[var(--enad-input-height)]" }
|
|
28
|
+
} },
|
|
29
|
+
defaultVariants: { size: "md" }
|
|
30
|
+
});
|
|
31
|
+
const defaultClasses = selectRecipe();
|
|
7
32
|
function Select({ ...props }) {
|
|
8
33
|
return /* @__PURE__ */ jsx(Select$1.Root, {
|
|
9
34
|
"data-slot": "select",
|
|
@@ -22,12 +47,13 @@ function SelectValue({ ...props }) {
|
|
|
22
47
|
...props
|
|
23
48
|
});
|
|
24
49
|
}
|
|
25
|
-
function SelectTrigger({ className, size = "
|
|
50
|
+
function SelectTrigger({ className, size = "md", children, ...props }) {
|
|
26
51
|
const ChevronDownIcon = useIcon("chevronDown");
|
|
52
|
+
const classes = selectRecipe({ size });
|
|
27
53
|
return /* @__PURE__ */ jsxs(Select$1.Trigger, {
|
|
28
54
|
"data-slot": "select-trigger",
|
|
29
55
|
"data-size": size,
|
|
30
|
-
className: cn(
|
|
56
|
+
className: cn(classes.trigger, className),
|
|
31
57
|
...props,
|
|
32
58
|
children: [children, /* @__PURE__ */ jsx(Select$1.Icon, {
|
|
33
59
|
asChild: true,
|
|
@@ -38,7 +64,7 @@ function SelectTrigger({ className, size = "default", children, ...props }) {
|
|
|
38
64
|
function SelectContent({ className, children, position = "item-aligned", align = "center", ...props }) {
|
|
39
65
|
return /* @__PURE__ */ jsx(Select$1.Portal, { children: /* @__PURE__ */ jsxs(Select$1.Content, {
|
|
40
66
|
"data-slot": "select-content",
|
|
41
|
-
className: cn(
|
|
67
|
+
className: cn(defaultClasses.content, position === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1", className),
|
|
42
68
|
position,
|
|
43
69
|
align,
|
|
44
70
|
...props,
|
|
@@ -55,7 +81,7 @@ function SelectContent({ className, children, position = "item-aligned", align =
|
|
|
55
81
|
function SelectLabel({ className, ...props }) {
|
|
56
82
|
return /* @__PURE__ */ jsx(Select$1.Label, {
|
|
57
83
|
"data-slot": "select-label",
|
|
58
|
-
className: cn(
|
|
84
|
+
className: cn(defaultClasses.label, className),
|
|
59
85
|
...props
|
|
60
86
|
});
|
|
61
87
|
}
|
|
@@ -63,7 +89,7 @@ function SelectItem({ className, children, ...props }) {
|
|
|
63
89
|
const CheckIcon = useIcon("check");
|
|
64
90
|
return /* @__PURE__ */ jsxs(Select$1.Item, {
|
|
65
91
|
"data-slot": "select-item",
|
|
66
|
-
className: cn(
|
|
92
|
+
className: cn(defaultClasses.item, className),
|
|
67
93
|
...props,
|
|
68
94
|
children: [/* @__PURE__ */ jsx("span", {
|
|
69
95
|
"data-slot": "select-item-indicator",
|
|
@@ -75,7 +101,7 @@ function SelectItem({ className, children, ...props }) {
|
|
|
75
101
|
function SelectSeparator({ className, ...props }) {
|
|
76
102
|
return /* @__PURE__ */ jsx(Select$1.Separator, {
|
|
77
103
|
"data-slot": "select-separator",
|
|
78
|
-
className: cn(
|
|
104
|
+
className: cn(defaultClasses.separator, className),
|
|
79
105
|
...props
|
|
80
106
|
});
|
|
81
107
|
}
|
|
@@ -83,7 +109,7 @@ function SelectScrollUpButton({ className, ...props }) {
|
|
|
83
109
|
const ChevronUpIcon = useIcon("chevronUp");
|
|
84
110
|
return /* @__PURE__ */ jsx(Select$1.ScrollUpButton, {
|
|
85
111
|
"data-slot": "select-scroll-up-button",
|
|
86
|
-
className: cn(
|
|
112
|
+
className: cn(defaultClasses.scrollButton, className),
|
|
87
113
|
...props,
|
|
88
114
|
children: /* @__PURE__ */ jsx(ChevronUpIcon, { className: "size-4" })
|
|
89
115
|
});
|
|
@@ -92,12 +118,12 @@ function SelectScrollDownButton({ className, ...props }) {
|
|
|
92
118
|
const ChevronDownIcon = useIcon("chevronDown");
|
|
93
119
|
return /* @__PURE__ */ jsx(Select$1.ScrollDownButton, {
|
|
94
120
|
"data-slot": "select-scroll-down-button",
|
|
95
|
-
className: cn(
|
|
121
|
+
className: cn(defaultClasses.scrollButton, className),
|
|
96
122
|
...props,
|
|
97
123
|
children: /* @__PURE__ */ jsx(ChevronDownIcon, { className: "size-4" })
|
|
98
124
|
});
|
|
99
125
|
}
|
|
100
126
|
//#endregion
|
|
101
|
-
export { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue };
|
|
127
|
+
export { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, selectRecipe };
|
|
102
128
|
|
|
103
129
|
//# sourceMappingURL=select.mjs.map
|