@zentauri-ui/zentauri-components 0.0.93 → 1.0.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/README.md +72 -34
- package/dist/chunk-B23TPTVG.mjs +11 -0
- package/dist/chunk-B23TPTVG.mjs.map +1 -0
- package/dist/{chunk-BZSIXBA7.js → chunk-BITDSQMR.js} +8 -6
- package/dist/chunk-BITDSQMR.js.map +1 -0
- package/dist/{chunk-VJHD7QZH.mjs → chunk-BORK3BJO.mjs} +4 -7
- package/dist/chunk-BORK3BJO.mjs.map +1 -0
- package/dist/chunk-WZ2GOU2J.js +13 -0
- package/dist/chunk-WZ2GOU2J.js.map +1 -0
- package/dist/ui/accordion.d.mts +1 -1
- package/dist/ui/accordion.d.ts +1 -1
- package/dist/ui/accordion.js +80 -61
- package/dist/ui/accordion.js.map +1 -1
- package/dist/ui/accordion.mjs +46 -39
- package/dist/ui/accordion.mjs.map +1 -1
- package/dist/ui/alert.d.mts +1 -1
- package/dist/ui/alert.d.ts +1 -1
- package/dist/ui/alert.js +57 -46
- package/dist/ui/alert.js.map +1 -1
- package/dist/ui/alert.mjs +28 -30
- package/dist/ui/alert.mjs.map +1 -1
- package/dist/ui/badge.js +20 -25
- package/dist/ui/badge.js.map +1 -1
- package/dist/ui/badge.mjs +8 -20
- package/dist/ui/badge.mjs.map +1 -1
- package/dist/ui/buttons.js +19 -21
- package/dist/ui/buttons.js.map +1 -1
- package/dist/ui/buttons.mjs +8 -18
- package/dist/ui/buttons.mjs.map +1 -1
- package/dist/ui/card.js +59 -54
- package/dist/ui/card.js.map +1 -1
- package/dist/ui/card.mjs +29 -39
- package/dist/ui/card.mjs.map +1 -1
- package/dist/ui/divider.js +39 -35
- package/dist/ui/divider.js.map +1 -1
- package/dist/ui/divider.mjs +18 -23
- package/dist/ui/divider.mjs.map +1 -1
- package/dist/ui/drawer.d.mts +1 -1
- package/dist/ui/drawer.d.ts +1 -1
- package/dist/ui/drawer.js +106 -73
- package/dist/ui/drawer.js.map +1 -1
- package/dist/ui/drawer.mjs +64 -45
- package/dist/ui/drawer.mjs.map +1 -1
- package/dist/ui/dropdown.js +42 -48
- package/dist/ui/dropdown.js.map +1 -1
- package/dist/ui/dropdown.mjs +13 -29
- package/dist/ui/dropdown.mjs.map +1 -1
- package/dist/ui/empty-state.d.mts +3 -3
- package/dist/ui/empty-state.d.ts +3 -3
- package/dist/ui/empty-state.js +83 -59
- package/dist/ui/empty-state.js.map +1 -1
- package/dist/ui/empty-state.mjs +64 -52
- package/dist/ui/empty-state.mjs.map +1 -1
- package/dist/ui/inputs.js +26 -31
- package/dist/ui/inputs.js.map +1 -1
- package/dist/ui/inputs.mjs +8 -19
- package/dist/ui/inputs.mjs.map +1 -1
- package/dist/ui/modal.d.mts +1 -1
- package/dist/ui/modal.d.ts +1 -1
- package/dist/ui/modal.js +116 -78
- package/dist/ui/modal.js.map +1 -1
- package/dist/ui/modal.mjs +74 -51
- package/dist/ui/modal.mjs.map +1 -1
- package/dist/ui/pagination.js +47 -60
- package/dist/ui/pagination.js.map +1 -1
- package/dist/ui/pagination.mjs +10 -32
- package/dist/ui/pagination.mjs.map +1 -1
- package/dist/ui/progress.js +70 -58
- package/dist/ui/progress.js.map +1 -1
- package/dist/ui/progress.mjs +44 -43
- package/dist/ui/progress.mjs.map +1 -1
- package/dist/ui/select.js +73 -81
- package/dist/ui/select.js.map +1 -1
- package/dist/ui/select.mjs +38 -59
- package/dist/ui/select.mjs.map +1 -1
- package/dist/ui/skeleton.js +45 -50
- package/dist/ui/skeleton.js.map +1 -1
- package/dist/ui/skeleton.mjs +8 -25
- package/dist/ui/skeleton.mjs.map +1 -1
- package/dist/ui/spinner.js +37 -38
- package/dist/ui/spinner.js.map +1 -1
- package/dist/ui/spinner.mjs +11 -18
- package/dist/ui/spinner.mjs.map +1 -1
- package/dist/ui/table.js +77 -79
- package/dist/ui/table.js.map +1 -1
- package/dist/ui/table.mjs +43 -60
- package/dist/ui/table.mjs.map +1 -1
- package/dist/ui/tabs.js +75 -75
- package/dist/ui/tabs.js.map +1 -1
- package/dist/ui/tabs.mjs +48 -59
- package/dist/ui/tabs.mjs.map +1 -1
- package/dist/ui/toast.d.mts +2 -2
- package/dist/ui/toast.d.ts +2 -2
- package/dist/ui/toast.js +111 -88
- package/dist/ui/toast.js.map +1 -1
- package/dist/ui/toast.mjs +77 -69
- package/dist/ui/toast.mjs.map +1 -1
- package/dist/ui/toggle.js +26 -28
- package/dist/ui/toggle.js.map +1 -1
- package/dist/ui/toggle.mjs +12 -21
- package/dist/ui/toggle.mjs.map +1 -1
- package/dist/ui/tooltip.js +29 -36
- package/dist/ui/tooltip.js.map +1 -1
- package/dist/ui/tooltip.mjs +8 -23
- package/dist/ui/tooltip.mjs.map +1 -1
- package/package.json +5 -3
- package/dist/chunk-BZSIXBA7.js.map +0 -1
- package/dist/chunk-E5UX537J.js +0 -11
- package/dist/chunk-E5UX537J.js.map +0 -1
- package/dist/chunk-MEWYFWBX.mjs +0 -14
- package/dist/chunk-MEWYFWBX.mjs.map +0 -1
- package/dist/chunk-VJHD7QZH.mjs.map +0 -1
package/dist/ui/drawer.mjs
CHANGED
|
@@ -1,22 +1,10 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
} from
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
import { AnimatePresence, motion, useReducedMotion } from "framer-motion";
|
|
9
|
-
import {
|
|
10
|
-
createContext,
|
|
11
|
-
useCallback,
|
|
12
|
-
useContext,
|
|
13
|
-
useEffect,
|
|
14
|
-
useId,
|
|
15
|
-
useMemo,
|
|
16
|
-
useRef,
|
|
17
|
-
useState
|
|
18
|
-
} from "react";
|
|
19
|
-
import { createPortal } from "react-dom";
|
|
2
|
+
import { cn } from '../chunk-B23TPTVG.mjs';
|
|
3
|
+
import { useReducedMotion, AnimatePresence, motion } from 'framer-motion';
|
|
4
|
+
import { createContext, useState, useCallback, useId, useRef, useMemo, useEffect, useContext } from 'react';
|
|
5
|
+
import { createPortal } from 'react-dom';
|
|
6
|
+
import { cva } from 'class-variance-authority';
|
|
7
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
20
8
|
|
|
21
9
|
// src/ui/drawer/animations.ts
|
|
22
10
|
var drawerPanelPresets = (side) => ({
|
|
@@ -40,10 +28,9 @@ var drawerPanelPresets = (side) => ({
|
|
|
40
28
|
transition: { type: "spring", stiffness: 380, damping: 30 }
|
|
41
29
|
}
|
|
42
30
|
});
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
var drawerOverlayVariants = cva("fixed inset-0 z-50 bg-slate-950/70 backdrop-blur-sm");
|
|
31
|
+
var drawerOverlayVariants = cva(
|
|
32
|
+
"fixed inset-0 z-50 bg-slate-950/70 backdrop-blur-sm"
|
|
33
|
+
);
|
|
47
34
|
var drawerTriggerVariants = cva(
|
|
48
35
|
"relative inline-flex shrink-0 cursor-pointer rounded-md border",
|
|
49
36
|
{
|
|
@@ -141,9 +128,6 @@ var drawerContentVariants = cva(
|
|
|
141
128
|
}
|
|
142
129
|
}
|
|
143
130
|
);
|
|
144
|
-
|
|
145
|
-
// src/ui/drawer/drawer.tsx
|
|
146
|
-
import { jsx, jsxs } from "react/jsx-runtime";
|
|
147
131
|
var DrawerContext = createContext(null);
|
|
148
132
|
function useDrawerContext(component) {
|
|
149
133
|
const ctx = useContext(DrawerContext);
|
|
@@ -165,7 +149,12 @@ function useBodyScrollLock(locked) {
|
|
|
165
149
|
};
|
|
166
150
|
}, [locked]);
|
|
167
151
|
}
|
|
168
|
-
function Drawer({
|
|
152
|
+
function Drawer({
|
|
153
|
+
open,
|
|
154
|
+
defaultOpen = false,
|
|
155
|
+
onOpenChange,
|
|
156
|
+
children
|
|
157
|
+
}) {
|
|
169
158
|
const isControlled = open !== void 0;
|
|
170
159
|
const [uncontrolledOpen, setUncontrolledOpen] = useState(defaultOpen);
|
|
171
160
|
const resolvedOpen = isControlled ? Boolean(open) : uncontrolledOpen;
|
|
@@ -195,7 +184,14 @@ function Drawer({ open, defaultOpen = false, onOpenChange, children }) {
|
|
|
195
184
|
return /* @__PURE__ */ jsx(DrawerContext.Provider, { value: ctx, children });
|
|
196
185
|
}
|
|
197
186
|
Drawer.displayName = "Drawer";
|
|
198
|
-
function DrawerTrigger({
|
|
187
|
+
function DrawerTrigger({
|
|
188
|
+
className,
|
|
189
|
+
children,
|
|
190
|
+
appearance,
|
|
191
|
+
onClick,
|
|
192
|
+
ref,
|
|
193
|
+
...rest
|
|
194
|
+
}) {
|
|
199
195
|
const { setOpen } = useDrawerContext("DrawerTrigger");
|
|
200
196
|
return /* @__PURE__ */ jsx(
|
|
201
197
|
"button",
|
|
@@ -328,23 +324,56 @@ function DrawerContent({
|
|
|
328
324
|
}
|
|
329
325
|
DrawerContent.displayName = "DrawerContent";
|
|
330
326
|
function DrawerHeader({ className, children }) {
|
|
331
|
-
return /* @__PURE__ */ jsx(
|
|
327
|
+
return /* @__PURE__ */ jsx(
|
|
328
|
+
"header",
|
|
329
|
+
{
|
|
330
|
+
"data-slot": "drawer-header",
|
|
331
|
+
className: cn("mb-4 flex flex-col gap-2", className),
|
|
332
|
+
children
|
|
333
|
+
}
|
|
334
|
+
);
|
|
332
335
|
}
|
|
333
336
|
DrawerHeader.displayName = "DrawerHeader";
|
|
334
337
|
function DrawerBody({ className, children }) {
|
|
335
|
-
return /* @__PURE__ */ jsx(
|
|
338
|
+
return /* @__PURE__ */ jsx(
|
|
339
|
+
"div",
|
|
340
|
+
{
|
|
341
|
+
"data-slot": "drawer-body",
|
|
342
|
+
className: cn("flex-1 text-sm text-slate-300", className),
|
|
343
|
+
children
|
|
344
|
+
}
|
|
345
|
+
);
|
|
336
346
|
}
|
|
337
347
|
DrawerBody.displayName = "DrawerBody";
|
|
338
348
|
function DrawerFooter({ className, children }) {
|
|
339
|
-
return /* @__PURE__ */ jsx(
|
|
349
|
+
return /* @__PURE__ */ jsx(
|
|
350
|
+
"footer",
|
|
351
|
+
{
|
|
352
|
+
"data-slot": "drawer-footer",
|
|
353
|
+
className: cn("mt-6 flex justify-end gap-2", className),
|
|
354
|
+
children
|
|
355
|
+
}
|
|
356
|
+
);
|
|
340
357
|
}
|
|
341
358
|
DrawerFooter.displayName = "DrawerFooter";
|
|
342
359
|
function DrawerTitle({ className, children }) {
|
|
343
360
|
const { titleId } = useDrawerContext("DrawerTitle");
|
|
344
|
-
return /* @__PURE__ */ jsx(
|
|
361
|
+
return /* @__PURE__ */ jsx(
|
|
362
|
+
"h2",
|
|
363
|
+
{
|
|
364
|
+
id: titleId,
|
|
365
|
+
"data-slot": "drawer-title",
|
|
366
|
+
className: cn("text-lg font-semibold", className),
|
|
367
|
+
children
|
|
368
|
+
}
|
|
369
|
+
);
|
|
345
370
|
}
|
|
346
371
|
DrawerTitle.displayName = "DrawerTitle";
|
|
347
|
-
function DrawerClose({
|
|
372
|
+
function DrawerClose({
|
|
373
|
+
className,
|
|
374
|
+
children,
|
|
375
|
+
...rest
|
|
376
|
+
}) {
|
|
348
377
|
const { setOpen } = useDrawerContext("DrawerClose");
|
|
349
378
|
return /* @__PURE__ */ jsx(
|
|
350
379
|
"button",
|
|
@@ -363,17 +392,7 @@ function DrawerClose({ className, children, ...rest }) {
|
|
|
363
392
|
);
|
|
364
393
|
}
|
|
365
394
|
DrawerClose.displayName = "DrawerClose";
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
DrawerClose,
|
|
370
|
-
DrawerContent,
|
|
371
|
-
DrawerFooter,
|
|
372
|
-
DrawerHeader,
|
|
373
|
-
DrawerTitle,
|
|
374
|
-
DrawerTrigger,
|
|
375
|
-
drawerContentVariants,
|
|
376
|
-
drawerOverlayVariants,
|
|
377
|
-
drawerPanelPresets
|
|
378
|
-
};
|
|
395
|
+
|
|
396
|
+
export { Drawer, DrawerBody, DrawerClose, DrawerContent, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger, drawerContentVariants, drawerOverlayVariants, drawerPanelPresets };
|
|
397
|
+
//# sourceMappingURL=drawer.mjs.map
|
|
379
398
|
//# sourceMappingURL=drawer.mjs.map
|
package/dist/ui/drawer.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/ui/drawer/drawer.tsx","../../src/ui/drawer/animations.ts","../../src/ui/drawer/variants.ts"],"sourcesContent":["\"use client\";\n\nimport { AnimatePresence, motion, useReducedMotion } from \"framer-motion\";\nimport {\n createContext,\n useCallback,\n useContext,\n useEffect,\n useId,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { createPortal } from \"react-dom\";\n\nimport { cn } from \"../../lib/utils\";\n\nimport { drawerPanelPresets } from \"./animations\";\nimport type {\n DrawerContentProps,\n DrawerProps,\n DrawerSectionProps,\n DrawerTriggerProps,\n} from \"./types\";\nimport { drawerContentVariants, drawerOverlayVariants, drawerTriggerVariants } from \"./variants\";\n\ntype DrawerCtx = {\n open: boolean;\n setOpen: (next: boolean) => void;\n titleId: string;\n descriptionId: string;\n contentRef: React.RefObject<HTMLDivElement | null>;\n};\n\nconst DrawerContext = createContext<DrawerCtx | null>(null);\n\nfunction useDrawerContext(component: string): DrawerCtx {\n const ctx = useContext(DrawerContext);\n if (!ctx) {\n throw new Error(`${component} must be used within <Drawer>`);\n }\n return ctx;\n}\n\nconst FOCUSABLE_SELECTOR =\n 'a[href], button:not([disabled]), textarea, input, select, [tabindex]:not([tabindex=\"-1\"])';\n\nfunction useBodyScrollLock(locked: boolean) {\n useEffect(() => {\n if (!locked) {\n return;\n }\n const previousOverflow = document.body.style.overflow;\n document.body.style.overflow = \"hidden\";\n return () => {\n document.body.style.overflow = previousOverflow;\n };\n }, [locked]);\n}\n\nexport function Drawer({ open, defaultOpen = false, onOpenChange, children }: DrawerProps) {\n const isControlled = open !== undefined;\n const [uncontrolledOpen, setUncontrolledOpen] = useState(defaultOpen);\n const resolvedOpen = isControlled ? Boolean(open) : uncontrolledOpen;\n\n const setOpen = useCallback(\n (next: boolean) => {\n if (!isControlled) {\n setUncontrolledOpen(next);\n }\n onOpenChange?.(next);\n },\n [isControlled, onOpenChange],\n );\n\n const baseId = useId();\n const titleId = `${baseId}-title`;\n const descriptionId = `${baseId}-description`;\n const contentRef = useRef<HTMLDivElement | null>(null);\n\n const ctx = useMemo(\n () => ({\n open: resolvedOpen,\n setOpen,\n titleId,\n descriptionId,\n contentRef,\n }),\n [descriptionId, resolvedOpen, setOpen, titleId],\n );\n\n return <DrawerContext.Provider value={ctx}>{children}</DrawerContext.Provider>;\n}\n\nDrawer.displayName = \"Drawer\";\n\nexport function DrawerTrigger({ className, children, appearance, onClick, ref, ...rest }: DrawerTriggerProps) {\n const { setOpen } = useDrawerContext(\"DrawerTrigger\");\n return (\n <button\n ref={ref}\n type=\"button\"\n data-slot=\"drawer-trigger\"\n className={cn(drawerTriggerVariants({ appearance }), className)}\n onClick={(event) => {\n onClick?.(event);\n if (!event.defaultPrevented) {\n setOpen(true);\n }\n }}\n {...rest}\n >\n {children}\n </button>\n );\n}\n\nDrawerTrigger.displayName = \"DrawerTrigger\";\n\nexport function DrawerContent({\n className,\n side = \"right\",\n size,\n appearance,\n animation = \"slide\",\n children,\n ref,\n id,\n style,\n}: DrawerContentProps) {\n const { open, setOpen, titleId, descriptionId, contentRef } = useDrawerContext(\"DrawerContent\");\n const resolvedSide = side ?? \"right\";\n const reduceMotion = useReducedMotion();\n const overlayMotion = drawerPanelPresets(resolvedSide)[reduceMotion ? \"fade\" : animation];\n const panelMotion = drawerPanelPresets(resolvedSide)[reduceMotion ? \"fade\" : animation];\n\n useBodyScrollLock(open);\n\n useEffect(() => {\n if (!open) {\n return;\n }\n const handleKeyDown = (event: KeyboardEvent) => {\n if (event.key === \"Escape\") {\n setOpen(false);\n }\n };\n window.addEventListener(\"keydown\", handleKeyDown);\n return () => window.removeEventListener(\"keydown\", handleKeyDown);\n }, [open, setOpen]);\n\n useEffect(() => {\n if (!open) {\n return;\n }\n const node = contentRef.current;\n if (!node) {\n return;\n }\n const focusables = Array.from(\n node.querySelectorAll<HTMLElement>(FOCUSABLE_SELECTOR),\n ).filter((element) => element.offsetParent !== null || element === node);\n const target = focusables[0] ?? node;\n const previouslyFocused = document.activeElement as HTMLElement | null;\n target.focus();\n\n const handleFocusIn = (event: FocusEvent) => {\n if (!node.contains(event.target as Node)) {\n event.stopPropagation();\n target.focus();\n }\n };\n document.addEventListener(\"focusin\", handleFocusIn);\n return () => {\n document.removeEventListener(\"focusin\", handleFocusIn);\n previouslyFocused?.focus?.();\n };\n }, [contentRef, open]);\n\n const portalTarget = typeof document !== \"undefined\" ? document.body : null;\n if (!portalTarget) {\n return null;\n }\n\n return createPortal(\n <AnimatePresence>\n {open ? (\n <div className=\"fixed inset-0 z-50\" data-slot=\"drawer-portal\">\n <motion.button\n type=\"button\"\n aria-hidden\n tabIndex={-1}\n data-slot=\"drawer-overlay\"\n className={drawerOverlayVariants()}\n onClick={() => setOpen(false)}\n initial={animation === \"none\" ? false : overlayMotion.initial}\n animate={animation === \"none\" ? undefined : overlayMotion.animate}\n exit={animation === \"none\" ? undefined : overlayMotion.exit}\n transition={overlayMotion.transition}\n />\n <motion.div\n ref={(node) => {\n contentRef.current = node;\n if (typeof ref === \"function\") {\n ref(node);\n } else if (ref) {\n (ref as React.MutableRefObject<HTMLDivElement | null>).current = node;\n }\n }}\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby={titleId}\n aria-describedby={descriptionId}\n data-slot=\"drawer-content\"\n tabIndex={-1}\n className={cn(\n drawerContentVariants({ side: resolvedSide, size, appearance }),\n className,\n )}\n initial={animation === \"none\" ? false : panelMotion.initial}\n animate={animation === \"none\" ? undefined : panelMotion.animate}\n exit={animation === \"none\" ? undefined : panelMotion.exit}\n transition={panelMotion.transition}\n id={id}\n style={style}\n >\n {children}\n </motion.div>\n </div>\n ) : null}\n </AnimatePresence>,\n portalTarget,\n );\n}\n\nDrawerContent.displayName = \"DrawerContent\";\n\nexport function DrawerHeader({ className, children }: DrawerSectionProps) {\n return (\n <header data-slot=\"drawer-header\" className={cn(\"mb-4 flex flex-col gap-2\", className)}>\n {children}\n </header>\n );\n}\n\nDrawerHeader.displayName = \"DrawerHeader\";\n\nexport function DrawerBody({ className, children }: DrawerSectionProps) {\n return (\n <div data-slot=\"drawer-body\" className={cn(\"flex-1 text-sm text-slate-300\", className)}>\n {children}\n </div>\n );\n}\n\nDrawerBody.displayName = \"DrawerBody\";\n\nexport function DrawerFooter({ className, children }: DrawerSectionProps) {\n return (\n <footer data-slot=\"drawer-footer\" className={cn(\"mt-6 flex justify-end gap-2\", className)}>\n {children}\n </footer>\n );\n}\n\nDrawerFooter.displayName = \"DrawerFooter\";\n\nexport function DrawerTitle({ className, children }: DrawerSectionProps) {\n const { titleId } = useDrawerContext(\"DrawerTitle\");\n return (\n <h2 id={titleId} data-slot=\"drawer-title\" className={cn(\"text-lg font-semibold\", className)}>\n {children}\n </h2>\n );\n}\n\nDrawerTitle.displayName = \"DrawerTitle\";\n\nexport function DrawerClose({ className, children, ...rest }: DrawerSectionProps) {\n const { setOpen } = useDrawerContext(\"DrawerClose\");\n return (\n <button\n type=\"button\"\n data-slot=\"drawer-close\"\n className={cn(\n \"absolute right-4 top-4 inline-flex size-9 items-center justify-center rounded-md text-slate-200 transition hover:bg-white/10 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white/30\",\n className,\n )}\n aria-label=\"Close drawer\"\n onClick={() => setOpen(false)}\n {...rest}\n >\n {children ?? \"×\"}\n </button>\n );\n}\n\nDrawerClose.displayName = \"DrawerClose\";\n","import type { HTMLMotionProps } from \"framer-motion\";\n\nexport type DrawerAnimation = \"none\" | \"fade\" | \"scale\" | \"slide\";\n\ntype DrawerPresetMotionProps = Pick<\n HTMLMotionProps<\"div\">,\n \"initial\" | \"animate\" | \"exit\" | \"transition\"\n>;\n\nexport type DrawerAnimationPresets = Record<DrawerAnimation, DrawerPresetMotionProps>;\n\nexport const drawerPanelPresets = (\n side: \"left\" | \"right\" | \"top\" | \"bottom\",\n): DrawerAnimationPresets => ({\n none: {},\n fade: {\n initial: { opacity: 0 },\n animate: { opacity: 1 },\n exit: { opacity: 0 },\n transition: { duration: 0.2 },\n },\n scale: {\n initial: { opacity: 0, scale: 0.98 },\n animate: { opacity: 1, scale: 1 },\n exit: { opacity: 0, scale: 0.98 },\n transition: { type: \"spring\", stiffness: 420, damping: 32 },\n },\n slide: {\n initial:\n side === \"left\"\n ? { x: -24, opacity: 0 }\n : side === \"right\"\n ? { x: 24, opacity: 0 }\n : side === \"top\"\n ? { y: -24, opacity: 0 }\n : { y: 24, opacity: 0 },\n animate: { x: 0, y: 0, opacity: 1 },\n exit:\n side === \"left\"\n ? { x: -16, opacity: 0 }\n : side === \"right\"\n ? { x: 16, opacity: 0 }\n : side === \"top\"\n ? { y: -16, opacity: 0 }\n : { y: 16, opacity: 0 },\n transition: { type: \"spring\", stiffness: 380, damping: 30 },\n },\n});\n","import { cva } from \"class-variance-authority\";\n\nexport const drawerOverlayVariants = cva(\"fixed inset-0 z-50 bg-slate-950/70 backdrop-blur-sm\");\n\nexport const drawerTriggerVariants = cva(\n \"relative inline-flex shrink-0 cursor-pointer rounded-md border\",\n {\n variants: {\n appearance: {\n default: \"bg-slate-950\",\n glass: \"border-white/15 bg-slate-950/70 backdrop-blur-xl\",\n sky: \"border-sky-600 bg-sky-950/70 backdrop-blur-xl\",\n rose: \"border-rose-600 bg-rose-950/70 backdrop-blur-xl\",\n purple: \"border-purple-600 bg-purple-950/70 backdrop-blur-xl\",\n pink: \"border-pink-600 bg-pink-950/70 backdrop-blur-xl\",\n orange: \"border-orange-600 bg-orange-950/70 backdrop-blur-xl\",\n yellow: \"border-yellow-600 bg-yellow-950/70 backdrop-blur-xl\",\n teal: \"border-teal-600 bg-teal-950/70 backdrop-blur-xl\",\n indigo: \"border-indigo-600 bg-indigo-950/70 backdrop-blur-xl\",\n emerald: \"border-emerald-600 bg-emerald-950/70 backdrop-blur-xl\",\n gray: \"border-gray-600 bg-gray-950/70 backdrop-blur-xl\",\n amber: \"border-amber-600 bg-amber-950/70 backdrop-blur-xl\",\n violet: \"border-violet-600 bg-violet-950/70 backdrop-blur-xl\",\n \"gradient-blue\": \"border-gradient-to-r from-blue-600 to-purple-600 bg-gradient-to-r from-blue-950/70 to-purple-950/70 backdrop-blur-xl\",\n \"gradient-green\": \"border-gradient-to-r from-green-600 to-lime-600 bg-gradient-to-r from-green-950/70 to-lime-950/70 backdrop-blur-xl\",\n \"gradient-red\": \"border-gradient-to-r from-red-600 to-pink-600 bg-gradient-to-r from-red-950/70 to-pink-950/70 backdrop-blur-xl\",\n \"gradient-yellow\": \"border-gradient-to-r from-yellow-600 to-orange-600 bg-gradient-to-r from-yellow-950/70 to-orange-950/70 backdrop-blur-xl\",\n \"gradient-purple\": \"border-gradient-to-r from-purple-600 to-pink-600 bg-gradient-to-r from-purple-950/70 to-pink-950/70 backdrop-blur-xl\",\n \"gradient-teal\": \"border-gradient-to-r from-teal-600 to-cyan-600 bg-gradient-to-r from-teal-950/70 to-cyan-950/70 backdrop-blur-xl\",\n \"gradient-indigo\": \"border-gradient-to-r from-indigo-600 to-purple-600 bg-gradient-to-r from-indigo-950/70 to-purple-950/70 backdrop-blur-xl\",\n \"gradient-pink\": \"border-gradient-to-r from-pink-600 to-rose-600 bg-gradient-to-r from-pink-950/70 to-rose-950/70 backdrop-blur-xl\",\n \"gradient-orange\": \"border-gradient-to-r from-orange-600 to-red-600 bg-gradient-to-r from-orange-950/70 to-red-950/70 backdrop-blur-xl\",\n },\n },\n defaultVariants: {\n appearance: \"default\",\n },\n },\n);\n\nexport const drawerContentVariants = cva(\n \"fixed z-50 flex max-h-[min(92vh,900px)] flex-col border border-white/10 bg-slate-950 p-6 text-slate-50 shadow-[0_24px_80px_rgba(15,23,42,0.55)] focus:outline-none\",\n {\n variants: {\n side: {\n left: \"left-0 top-0 h-full w-[min(100%,420px)]\",\n right: \"right-0 top-0 h-full w-[min(100%,420px)]\",\n top: \"left-0 top-0 w-full max-h-[min(92vh,520px)]\",\n bottom: \"bottom-0 left-0 w-full max-h-[min(92vh,520px)]\",\n },\n size: {\n sm: \"\",\n md: \"\",\n lg: \"\",\n xl: \"\",\n full: \"\",\n },\n appearance: {\n default: \"bg-slate-950\",\n glass: \"border-white/15 bg-slate-950/70 backdrop-blur-xl\",\n sky: \"border-sky-600 bg-sky-950/70 backdrop-blur-xl\",\n rose: \"border-rose-600 bg-rose-950/70 backdrop-blur-xl\",\n purple: \"border-purple-600 bg-purple-950/70 backdrop-blur-xl\",\n pink: \"border-pink-600 bg-pink-950/70 backdrop-blur-xl\",\n orange: \"border-orange-600 bg-orange-950/70 backdrop-blur-xl\",\n yellow: \"border-yellow-600 bg-yellow-950/70 backdrop-blur-xl\",\n teal: \"border-teal-600 bg-teal-950/70 backdrop-blur-xl\",\n indigo: \"border-indigo-600 bg-indigo-950/70 backdrop-blur-xl\",\n emerald: \"border-emerald-600 bg-emerald-950/70 backdrop-blur-xl\",\n gray: \"border-gray-600 bg-gray-950/70 backdrop-blur-xl\",\n amber: \"border-amber-600 bg-amber-950/70 backdrop-blur-xl\",\n violet: \"border-violet-600 bg-violet-950/70 backdrop-blur-xl\",\n \"gradient-blue\": \"border-gradient-to-r from-blue-600 to-purple-600 bg-gradient-to-r from-blue-950/70 to-purple-950/70 backdrop-blur-xl\",\n \"gradient-green\": \"border-gradient-to-r from-green-600 to-lime-600 bg-gradient-to-r from-green-950/70 to-lime-950/70 backdrop-blur-xl\",\n \"gradient-red\": \"border-gradient-to-r from-red-600 to-pink-600 bg-gradient-to-r from-red-950/70 to-pink-950/70 backdrop-blur-xl\",\n \"gradient-yellow\": \"border-gradient-to-r from-yellow-600 to-orange-600 bg-gradient-to-r from-yellow-950/70 to-orange-950/70 backdrop-blur-xl\",\n \"gradient-purple\": \"border-gradient-to-r from-purple-600 to-pink-600 bg-gradient-to-r from-purple-950/70 to-pink-950/70 backdrop-blur-xl\",\n \"gradient-teal\": \"border-gradient-to-r from-teal-600 to-cyan-600 bg-gradient-to-r from-teal-950/70 to-cyan-950/70 backdrop-blur-xl\",\n \"gradient-indigo\": \"border-gradient-to-r from-indigo-600 to-purple-600 bg-gradient-to-r from-indigo-950/70 to-purple-950/70 backdrop-blur-xl\",\n \"gradient-pink\": \"border-gradient-to-r from-pink-600 to-rose-600 bg-gradient-to-r from-pink-950/70 to-rose-950/70 backdrop-blur-xl\",\n \"gradient-orange\": \"border-gradient-to-r from-orange-600 to-red-600 bg-gradient-to-r from-orange-950/70 to-red-950/70 backdrop-blur-xl\",\n },\n },\n compoundVariants: [\n { side: \"left\", size: \"sm\", class: \"w-[min(100%,320px)]\" },\n { side: \"left\", size: \"md\", class: \"w-[min(100%,420px)]\" },\n { side: \"left\", size: \"lg\", class: \"w-[min(100%,520px)]\" },\n { side: \"left\", size: \"xl\", class: \"w-[min(100%,640px)]\" },\n { side: \"left\", size: \"full\", class: \"w-full max-w-none\" },\n { side: \"right\", size: \"sm\", class: \"w-[min(100%,320px)]\" },\n { side: \"right\", size: \"md\", class: \"w-[min(100%,420px)]\" },\n { side: \"right\", size: \"lg\", class: \"w-[min(100%,520px)]\" },\n { side: \"right\", size: \"xl\", class: \"w-[min(100%,640px)]\" },\n { side: \"right\", size: \"full\", class: \"w-full max-w-none\" },\n ],\n defaultVariants: {\n side: \"right\",\n size: \"md\",\n appearance: \"default\",\n },\n },\n);\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../src/ui/drawer/animations.ts","../../src/ui/drawer/variants.ts","../../src/ui/drawer/drawer.tsx"],"names":[],"mappings":"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","file":"drawer.mjs","sourcesContent":["import type { HTMLMotionProps } from \"framer-motion\";\n\nexport type DrawerAnimation = \"none\" | \"fade\" | \"scale\" | \"slide\";\n\ntype DrawerPresetMotionProps = Pick<\n HTMLMotionProps<\"div\">,\n \"initial\" | \"animate\" | \"exit\" | \"transition\"\n>;\n\nexport type DrawerAnimationPresets = Record<\n DrawerAnimation,\n DrawerPresetMotionProps\n>;\n\nexport const drawerPanelPresets = (\n side: \"left\" | \"right\" | \"top\" | \"bottom\",\n): DrawerAnimationPresets => ({\n none: {},\n fade: {\n initial: { opacity: 0 },\n animate: { opacity: 1 },\n exit: { opacity: 0 },\n transition: { duration: 0.2 },\n },\n scale: {\n initial: { opacity: 0, scale: 0.98 },\n animate: { opacity: 1, scale: 1 },\n exit: { opacity: 0, scale: 0.98 },\n transition: { type: \"spring\", stiffness: 420, damping: 32 },\n },\n slide: {\n initial:\n side === \"left\"\n ? { x: -24, opacity: 0 }\n : side === \"right\"\n ? { x: 24, opacity: 0 }\n : side === \"top\"\n ? { y: -24, opacity: 0 }\n : { y: 24, opacity: 0 },\n animate: { x: 0, y: 0, opacity: 1 },\n exit:\n side === \"left\"\n ? { x: -16, opacity: 0 }\n : side === \"right\"\n ? { x: 16, opacity: 0 }\n : side === \"top\"\n ? { y: -16, opacity: 0 }\n : { y: 16, opacity: 0 },\n transition: { type: \"spring\", stiffness: 380, damping: 30 },\n },\n});\n","import { cva } from \"class-variance-authority\";\n\nexport const drawerOverlayVariants = cva(\n \"fixed inset-0 z-50 bg-slate-950/70 backdrop-blur-sm\",\n);\n\nexport const drawerTriggerVariants = cva(\n \"relative inline-flex shrink-0 cursor-pointer rounded-md border\",\n {\n variants: {\n appearance: {\n default: \"bg-slate-950\",\n glass: \"border-white/15 bg-slate-950/70 backdrop-blur-xl\",\n sky: \"border-sky-600 bg-sky-950/70 backdrop-blur-xl\",\n rose: \"border-rose-600 bg-rose-950/70 backdrop-blur-xl\",\n purple: \"border-purple-600 bg-purple-950/70 backdrop-blur-xl\",\n pink: \"border-pink-600 bg-pink-950/70 backdrop-blur-xl\",\n orange: \"border-orange-600 bg-orange-950/70 backdrop-blur-xl\",\n yellow: \"border-yellow-600 bg-yellow-950/70 backdrop-blur-xl\",\n teal: \"border-teal-600 bg-teal-950/70 backdrop-blur-xl\",\n indigo: \"border-indigo-600 bg-indigo-950/70 backdrop-blur-xl\",\n emerald: \"border-emerald-600 bg-emerald-950/70 backdrop-blur-xl\",\n gray: \"border-gray-600 bg-gray-950/70 backdrop-blur-xl\",\n amber: \"border-amber-600 bg-amber-950/70 backdrop-blur-xl\",\n violet: \"border-violet-600 bg-violet-950/70 backdrop-blur-xl\",\n \"gradient-blue\":\n \"border-gradient-to-r from-blue-600 to-purple-600 bg-gradient-to-r from-blue-950/70 to-purple-950/70 backdrop-blur-xl\",\n \"gradient-green\":\n \"border-gradient-to-r from-green-600 to-lime-600 bg-gradient-to-r from-green-950/70 to-lime-950/70 backdrop-blur-xl\",\n \"gradient-red\":\n \"border-gradient-to-r from-red-600 to-pink-600 bg-gradient-to-r from-red-950/70 to-pink-950/70 backdrop-blur-xl\",\n \"gradient-yellow\":\n \"border-gradient-to-r from-yellow-600 to-orange-600 bg-gradient-to-r from-yellow-950/70 to-orange-950/70 backdrop-blur-xl\",\n \"gradient-purple\":\n \"border-gradient-to-r from-purple-600 to-pink-600 bg-gradient-to-r from-purple-950/70 to-pink-950/70 backdrop-blur-xl\",\n \"gradient-teal\":\n \"border-gradient-to-r from-teal-600 to-cyan-600 bg-gradient-to-r from-teal-950/70 to-cyan-950/70 backdrop-blur-xl\",\n \"gradient-indigo\":\n \"border-gradient-to-r from-indigo-600 to-purple-600 bg-gradient-to-r from-indigo-950/70 to-purple-950/70 backdrop-blur-xl\",\n \"gradient-pink\":\n \"border-gradient-to-r from-pink-600 to-rose-600 bg-gradient-to-r from-pink-950/70 to-rose-950/70 backdrop-blur-xl\",\n \"gradient-orange\":\n \"border-gradient-to-r from-orange-600 to-red-600 bg-gradient-to-r from-orange-950/70 to-red-950/70 backdrop-blur-xl\",\n },\n },\n defaultVariants: {\n appearance: \"default\",\n },\n },\n);\n\nexport const drawerContentVariants = cva(\n \"fixed z-50 flex max-h-[min(92vh,900px)] flex-col border border-white/10 bg-slate-950 p-6 text-slate-50 shadow-[0_24px_80px_rgba(15,23,42,0.55)] focus:outline-none\",\n {\n variants: {\n side: {\n left: \"left-0 top-0 h-full w-[min(100%,420px)]\",\n right: \"right-0 top-0 h-full w-[min(100%,420px)]\",\n top: \"left-0 top-0 w-full max-h-[min(92vh,520px)]\",\n bottom: \"bottom-0 left-0 w-full max-h-[min(92vh,520px)]\",\n },\n size: {\n sm: \"\",\n md: \"\",\n lg: \"\",\n xl: \"\",\n full: \"\",\n },\n appearance: {\n default: \"bg-slate-950\",\n glass: \"border-white/15 bg-slate-950/70 backdrop-blur-xl\",\n sky: \"border-sky-600 bg-sky-950/70 backdrop-blur-xl\",\n rose: \"border-rose-600 bg-rose-950/70 backdrop-blur-xl\",\n purple: \"border-purple-600 bg-purple-950/70 backdrop-blur-xl\",\n pink: \"border-pink-600 bg-pink-950/70 backdrop-blur-xl\",\n orange: \"border-orange-600 bg-orange-950/70 backdrop-blur-xl\",\n yellow: \"border-yellow-600 bg-yellow-950/70 backdrop-blur-xl\",\n teal: \"border-teal-600 bg-teal-950/70 backdrop-blur-xl\",\n indigo: \"border-indigo-600 bg-indigo-950/70 backdrop-blur-xl\",\n emerald: \"border-emerald-600 bg-emerald-950/70 backdrop-blur-xl\",\n gray: \"border-gray-600 bg-gray-950/70 backdrop-blur-xl\",\n amber: \"border-amber-600 bg-amber-950/70 backdrop-blur-xl\",\n violet: \"border-violet-600 bg-violet-950/70 backdrop-blur-xl\",\n \"gradient-blue\":\n \"border-gradient-to-r from-blue-600 to-purple-600 bg-gradient-to-r from-blue-950/70 to-purple-950/70 backdrop-blur-xl\",\n \"gradient-green\":\n \"border-gradient-to-r from-green-600 to-lime-600 bg-gradient-to-r from-green-950/70 to-lime-950/70 backdrop-blur-xl\",\n \"gradient-red\":\n \"border-gradient-to-r from-red-600 to-pink-600 bg-gradient-to-r from-red-950/70 to-pink-950/70 backdrop-blur-xl\",\n \"gradient-yellow\":\n \"border-gradient-to-r from-yellow-600 to-orange-600 bg-gradient-to-r from-yellow-950/70 to-orange-950/70 backdrop-blur-xl\",\n \"gradient-purple\":\n \"border-gradient-to-r from-purple-600 to-pink-600 bg-gradient-to-r from-purple-950/70 to-pink-950/70 backdrop-blur-xl\",\n \"gradient-teal\":\n \"border-gradient-to-r from-teal-600 to-cyan-600 bg-gradient-to-r from-teal-950/70 to-cyan-950/70 backdrop-blur-xl\",\n \"gradient-indigo\":\n \"border-gradient-to-r from-indigo-600 to-purple-600 bg-gradient-to-r from-indigo-950/70 to-purple-950/70 backdrop-blur-xl\",\n \"gradient-pink\":\n \"border-gradient-to-r from-pink-600 to-rose-600 bg-gradient-to-r from-pink-950/70 to-rose-950/70 backdrop-blur-xl\",\n \"gradient-orange\":\n \"border-gradient-to-r from-orange-600 to-red-600 bg-gradient-to-r from-orange-950/70 to-red-950/70 backdrop-blur-xl\",\n },\n },\n compoundVariants: [\n { side: \"left\", size: \"sm\", class: \"w-[min(100%,320px)]\" },\n { side: \"left\", size: \"md\", class: \"w-[min(100%,420px)]\" },\n { side: \"left\", size: \"lg\", class: \"w-[min(100%,520px)]\" },\n { side: \"left\", size: \"xl\", class: \"w-[min(100%,640px)]\" },\n { side: \"left\", size: \"full\", class: \"w-full max-w-none\" },\n { side: \"right\", size: \"sm\", class: \"w-[min(100%,320px)]\" },\n { side: \"right\", size: \"md\", class: \"w-[min(100%,420px)]\" },\n { side: \"right\", size: \"lg\", class: \"w-[min(100%,520px)]\" },\n { side: \"right\", size: \"xl\", class: \"w-[min(100%,640px)]\" },\n { side: \"right\", size: \"full\", class: \"w-full max-w-none\" },\n ],\n defaultVariants: {\n side: \"right\",\n size: \"md\",\n appearance: \"default\",\n },\n },\n);\n","\"use client\";\n\nimport { AnimatePresence, motion, useReducedMotion } from \"framer-motion\";\nimport {\n createContext,\n useCallback,\n useContext,\n useEffect,\n useId,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { createPortal } from \"react-dom\";\n\nimport { cn } from \"../../lib/utils\";\n\nimport { drawerPanelPresets } from \"./animations\";\nimport type {\n DrawerContentProps,\n DrawerProps,\n DrawerSectionProps,\n DrawerTriggerProps,\n} from \"./types\";\nimport {\n drawerContentVariants,\n drawerOverlayVariants,\n drawerTriggerVariants,\n} from \"./variants\";\n\ntype DrawerCtx = {\n open: boolean;\n setOpen: (next: boolean) => void;\n titleId: string;\n descriptionId: string;\n contentRef: React.RefObject<HTMLDivElement | null>;\n};\n\nconst DrawerContext = createContext<DrawerCtx | null>(null);\n\nfunction useDrawerContext(component: string): DrawerCtx {\n const ctx = useContext(DrawerContext);\n if (!ctx) {\n throw new Error(`${component} must be used within <Drawer>`);\n }\n return ctx;\n}\n\nconst FOCUSABLE_SELECTOR =\n 'a[href], button:not([disabled]), textarea, input, select, [tabindex]:not([tabindex=\"-1\"])';\n\nfunction useBodyScrollLock(locked: boolean) {\n useEffect(() => {\n if (!locked) {\n return;\n }\n const previousOverflow = document.body.style.overflow;\n document.body.style.overflow = \"hidden\";\n return () => {\n document.body.style.overflow = previousOverflow;\n };\n }, [locked]);\n}\n\nexport function Drawer({\n open,\n defaultOpen = false,\n onOpenChange,\n children,\n}: DrawerProps) {\n const isControlled = open !== undefined;\n const [uncontrolledOpen, setUncontrolledOpen] = useState(defaultOpen);\n const resolvedOpen = isControlled ? Boolean(open) : uncontrolledOpen;\n\n const setOpen = useCallback(\n (next: boolean) => {\n if (!isControlled) {\n setUncontrolledOpen(next);\n }\n onOpenChange?.(next);\n },\n [isControlled, onOpenChange],\n );\n\n const baseId = useId();\n const titleId = `${baseId}-title`;\n const descriptionId = `${baseId}-description`;\n const contentRef = useRef<HTMLDivElement | null>(null);\n\n const ctx = useMemo(\n () => ({\n open: resolvedOpen,\n setOpen,\n titleId,\n descriptionId,\n contentRef,\n }),\n [descriptionId, resolvedOpen, setOpen, titleId],\n );\n\n return (\n <DrawerContext.Provider value={ctx}>{children}</DrawerContext.Provider>\n );\n}\n\nDrawer.displayName = \"Drawer\";\n\nexport function DrawerTrigger({\n className,\n children,\n appearance,\n onClick,\n ref,\n ...rest\n}: DrawerTriggerProps) {\n const { setOpen } = useDrawerContext(\"DrawerTrigger\");\n return (\n <button\n ref={ref}\n type=\"button\"\n data-slot=\"drawer-trigger\"\n className={cn(drawerTriggerVariants({ appearance }), className)}\n onClick={(event) => {\n onClick?.(event);\n if (!event.defaultPrevented) {\n setOpen(true);\n }\n }}\n {...rest}\n >\n {children}\n </button>\n );\n}\n\nDrawerTrigger.displayName = \"DrawerTrigger\";\n\nexport function DrawerContent({\n className,\n side = \"right\",\n size,\n appearance,\n animation = \"slide\",\n children,\n ref,\n id,\n style,\n}: DrawerContentProps) {\n const { open, setOpen, titleId, descriptionId, contentRef } =\n useDrawerContext(\"DrawerContent\");\n const resolvedSide = side ?? \"right\";\n const reduceMotion = useReducedMotion();\n const overlayMotion =\n drawerPanelPresets(resolvedSide)[reduceMotion ? \"fade\" : animation];\n const panelMotion =\n drawerPanelPresets(resolvedSide)[reduceMotion ? \"fade\" : animation];\n\n useBodyScrollLock(open);\n\n useEffect(() => {\n if (!open) {\n return;\n }\n const handleKeyDown = (event: KeyboardEvent) => {\n if (event.key === \"Escape\") {\n setOpen(false);\n }\n };\n window.addEventListener(\"keydown\", handleKeyDown);\n return () => window.removeEventListener(\"keydown\", handleKeyDown);\n }, [open, setOpen]);\n\n useEffect(() => {\n if (!open) {\n return;\n }\n const node = contentRef.current;\n if (!node) {\n return;\n }\n const focusables = Array.from(\n node.querySelectorAll<HTMLElement>(FOCUSABLE_SELECTOR),\n ).filter((element) => element.offsetParent !== null || element === node);\n const target = focusables[0] ?? node;\n const previouslyFocused = document.activeElement as HTMLElement | null;\n target.focus();\n\n const handleFocusIn = (event: FocusEvent) => {\n if (!node.contains(event.target as Node)) {\n event.stopPropagation();\n target.focus();\n }\n };\n document.addEventListener(\"focusin\", handleFocusIn);\n return () => {\n document.removeEventListener(\"focusin\", handleFocusIn);\n previouslyFocused?.focus?.();\n };\n }, [contentRef, open]);\n\n const portalTarget = typeof document !== \"undefined\" ? document.body : null;\n if (!portalTarget) {\n return null;\n }\n\n return createPortal(\n <AnimatePresence>\n {open ? (\n <div className=\"fixed inset-0 z-50\" data-slot=\"drawer-portal\">\n <motion.button\n type=\"button\"\n aria-hidden\n tabIndex={-1}\n data-slot=\"drawer-overlay\"\n className={drawerOverlayVariants()}\n onClick={() => setOpen(false)}\n initial={animation === \"none\" ? false : overlayMotion.initial}\n animate={animation === \"none\" ? undefined : overlayMotion.animate}\n exit={animation === \"none\" ? undefined : overlayMotion.exit}\n transition={overlayMotion.transition}\n />\n <motion.div\n ref={(node) => {\n contentRef.current = node;\n if (typeof ref === \"function\") {\n ref(node);\n } else if (ref) {\n (ref as React.MutableRefObject<HTMLDivElement | null>).current =\n node;\n }\n }}\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby={titleId}\n aria-describedby={descriptionId}\n data-slot=\"drawer-content\"\n tabIndex={-1}\n className={cn(\n drawerContentVariants({ side: resolvedSide, size, appearance }),\n className,\n )}\n initial={animation === \"none\" ? false : panelMotion.initial}\n animate={animation === \"none\" ? undefined : panelMotion.animate}\n exit={animation === \"none\" ? undefined : panelMotion.exit}\n transition={panelMotion.transition}\n id={id}\n style={style}\n >\n {children}\n </motion.div>\n </div>\n ) : null}\n </AnimatePresence>,\n portalTarget,\n );\n}\n\nDrawerContent.displayName = \"DrawerContent\";\n\nexport function DrawerHeader({ className, children }: DrawerSectionProps) {\n return (\n <header\n data-slot=\"drawer-header\"\n className={cn(\"mb-4 flex flex-col gap-2\", className)}\n >\n {children}\n </header>\n );\n}\n\nDrawerHeader.displayName = \"DrawerHeader\";\n\nexport function DrawerBody({ className, children }: DrawerSectionProps) {\n return (\n <div\n data-slot=\"drawer-body\"\n className={cn(\"flex-1 text-sm text-slate-300\", className)}\n >\n {children}\n </div>\n );\n}\n\nDrawerBody.displayName = \"DrawerBody\";\n\nexport function DrawerFooter({ className, children }: DrawerSectionProps) {\n return (\n <footer\n data-slot=\"drawer-footer\"\n className={cn(\"mt-6 flex justify-end gap-2\", className)}\n >\n {children}\n </footer>\n );\n}\n\nDrawerFooter.displayName = \"DrawerFooter\";\n\nexport function DrawerTitle({ className, children }: DrawerSectionProps) {\n const { titleId } = useDrawerContext(\"DrawerTitle\");\n return (\n <h2\n id={titleId}\n data-slot=\"drawer-title\"\n className={cn(\"text-lg font-semibold\", className)}\n >\n {children}\n </h2>\n );\n}\n\nDrawerTitle.displayName = \"DrawerTitle\";\n\nexport function DrawerClose({\n className,\n children,\n ...rest\n}: DrawerSectionProps) {\n const { setOpen } = useDrawerContext(\"DrawerClose\");\n return (\n <button\n type=\"button\"\n data-slot=\"drawer-close\"\n className={cn(\n \"absolute right-4 top-4 inline-flex size-9 items-center justify-center rounded-md text-slate-200 transition hover:bg-white/10 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white/30\",\n className,\n )}\n aria-label=\"Close drawer\"\n onClick={() => setOpen(false)}\n {...rest}\n >\n {children ?? \"×\"}\n </button>\n );\n}\n\nDrawerClose.displayName = \"DrawerClose\";\n"]}
|
package/dist/ui/dropdown.js
CHANGED
|
@@ -1,20 +1,13 @@
|
|
|
1
|
-
"use
|
|
1
|
+
"use client";
|
|
2
|
+
'use strict';
|
|
2
3
|
|
|
3
|
-
var
|
|
4
|
+
var chunkWZ2GOU2J_js = require('../chunk-WZ2GOU2J.js');
|
|
5
|
+
var react = require('react');
|
|
6
|
+
var fi = require('react-icons/fi');
|
|
7
|
+
var classVarianceAuthority = require('class-variance-authority');
|
|
8
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
4
9
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
var _react = require('react');
|
|
13
|
-
var _fi = require('react-icons/fi');
|
|
14
|
-
|
|
15
|
-
// src/ui/dropdown/variants.ts
|
|
16
|
-
var _classvarianceauthority = require('class-variance-authority');
|
|
17
|
-
var triggerVariants = _classvarianceauthority.cva.call(void 0,
|
|
10
|
+
var triggerVariants = classVarianceAuthority.cva(
|
|
18
11
|
"inline-flex items-center justify-between rounded-md font-medium transition focus:outline-none cursor-pointer",
|
|
19
12
|
{
|
|
20
13
|
variants: {
|
|
@@ -58,7 +51,7 @@ var triggerVariants = _classvarianceauthority.cva.call(void 0,
|
|
|
58
51
|
}
|
|
59
52
|
}
|
|
60
53
|
);
|
|
61
|
-
var contentVariants =
|
|
54
|
+
var contentVariants = classVarianceAuthority.cva(
|
|
62
55
|
"absolute min-w-[200px] rounded-md p-2 shadow-md z-50 border",
|
|
63
56
|
{
|
|
64
57
|
variants: {
|
|
@@ -83,7 +76,7 @@ var contentVariants = _classvarianceauthority.cva.call(void 0,
|
|
|
83
76
|
}
|
|
84
77
|
}
|
|
85
78
|
);
|
|
86
|
-
var itemVariants =
|
|
79
|
+
var itemVariants = classVarianceAuthority.cva(
|
|
87
80
|
"flex items-center justify-between px-3 py-2 text-sm cursor-pointer rounded-md transition-colors",
|
|
88
81
|
{
|
|
89
82
|
variants: {
|
|
@@ -121,12 +114,9 @@ var itemVariants = _classvarianceauthority.cva.call(void 0,
|
|
|
121
114
|
}
|
|
122
115
|
}
|
|
123
116
|
);
|
|
124
|
-
|
|
125
|
-
// src/ui/dropdown/dropdown.tsx
|
|
126
|
-
var _jsxruntime = require('react/jsx-runtime');
|
|
127
|
-
var DropdownContext = _react.createContext.call(void 0, null);
|
|
117
|
+
var DropdownContext = react.createContext(null);
|
|
128
118
|
var useDropdown = () => {
|
|
129
|
-
const ctx =
|
|
119
|
+
const ctx = react.useContext(DropdownContext);
|
|
130
120
|
if (!ctx) throw new Error("Use inside Dropdown");
|
|
131
121
|
return ctx;
|
|
132
122
|
};
|
|
@@ -137,12 +127,12 @@ var Dropdown = ({
|
|
|
137
127
|
onOpenChange,
|
|
138
128
|
multiSelect = false
|
|
139
129
|
}) => {
|
|
140
|
-
const [uncontrolledOpen, setUncontrolledOpen] =
|
|
141
|
-
const [selectedValues, setSelectedValues] =
|
|
142
|
-
const open =
|
|
130
|
+
const [uncontrolledOpen, setUncontrolledOpen] = react.useState(defaultOpen);
|
|
131
|
+
const [selectedValues, setSelectedValues] = react.useState([]);
|
|
132
|
+
const open = controlledOpen ?? uncontrolledOpen;
|
|
143
133
|
const setOpen = (val) => {
|
|
144
134
|
if (controlledOpen !== void 0) {
|
|
145
|
-
|
|
135
|
+
onOpenChange?.(val);
|
|
146
136
|
} else {
|
|
147
137
|
setUncontrolledOpen(val);
|
|
148
138
|
}
|
|
@@ -158,7 +148,7 @@ var Dropdown = ({
|
|
|
158
148
|
(prev) => prev.includes(value) ? prev.filter((v) => v !== value) : [...prev, value]
|
|
159
149
|
);
|
|
160
150
|
};
|
|
161
|
-
return /* @__PURE__ */
|
|
151
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
162
152
|
DropdownContext.Provider,
|
|
163
153
|
{
|
|
164
154
|
value: {
|
|
@@ -169,7 +159,7 @@ var Dropdown = ({
|
|
|
169
159
|
toggleSelect,
|
|
170
160
|
multiSelect
|
|
171
161
|
},
|
|
172
|
-
children: /* @__PURE__ */
|
|
162
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "relative inline-block", children })
|
|
173
163
|
}
|
|
174
164
|
);
|
|
175
165
|
};
|
|
@@ -181,11 +171,11 @@ var DropdownTrigger = ({
|
|
|
181
171
|
...props
|
|
182
172
|
}) => {
|
|
183
173
|
const { toggle } = useDropdown();
|
|
184
|
-
return /* @__PURE__ */
|
|
174
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
185
175
|
"button",
|
|
186
176
|
{
|
|
187
177
|
onClick: toggle,
|
|
188
|
-
className:
|
|
178
|
+
className: chunkWZ2GOU2J_js.cn(triggerVariants({ variant, size }), className),
|
|
189
179
|
...props,
|
|
190
180
|
children
|
|
191
181
|
}
|
|
@@ -200,8 +190,8 @@ var DropdownContent = ({
|
|
|
200
190
|
...props
|
|
201
191
|
}) => {
|
|
202
192
|
const { open, setOpen } = useDropdown();
|
|
203
|
-
const ref =
|
|
204
|
-
|
|
193
|
+
const ref = react.useRef(null);
|
|
194
|
+
react.useEffect(() => {
|
|
205
195
|
const handleClickOutside = (e) => {
|
|
206
196
|
if (ref.current && !ref.current.contains(e.target)) {
|
|
207
197
|
setOpen(false);
|
|
@@ -211,11 +201,15 @@ var DropdownContent = ({
|
|
|
211
201
|
return () => document.removeEventListener("mousedown", handleClickOutside);
|
|
212
202
|
}, [setOpen]);
|
|
213
203
|
if (!open) return null;
|
|
214
|
-
return /* @__PURE__ */
|
|
204
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
215
205
|
"div",
|
|
216
206
|
{
|
|
217
207
|
ref,
|
|
218
|
-
className:
|
|
208
|
+
className: chunkWZ2GOU2J_js.cn(
|
|
209
|
+
contentVariants({ placement, spacing }),
|
|
210
|
+
className,
|
|
211
|
+
divider && "divide-y divide-current"
|
|
212
|
+
),
|
|
219
213
|
...props,
|
|
220
214
|
children
|
|
221
215
|
}
|
|
@@ -235,9 +229,9 @@ var DropdownItem = ({
|
|
|
235
229
|
const isSelected = selectedValues.includes(value);
|
|
236
230
|
const handleClick = () => {
|
|
237
231
|
toggleSelect(value);
|
|
238
|
-
|
|
232
|
+
onSelect?.();
|
|
239
233
|
};
|
|
240
|
-
return /* @__PURE__ */
|
|
234
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
241
235
|
"div",
|
|
242
236
|
{
|
|
243
237
|
tabIndex: 0,
|
|
@@ -245,15 +239,15 @@ var DropdownItem = ({
|
|
|
245
239
|
onKeyDown: (e) => {
|
|
246
240
|
if (e.key === "Enter") handleClick();
|
|
247
241
|
},
|
|
248
|
-
className:
|
|
242
|
+
className: chunkWZ2GOU2J_js.cn(itemVariants({ variant }), className),
|
|
249
243
|
...props,
|
|
250
244
|
children: [
|
|
251
|
-
/* @__PURE__ */
|
|
245
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
|
|
252
246
|
leftIcon,
|
|
253
247
|
children
|
|
254
248
|
] }),
|
|
255
|
-
/* @__PURE__ */
|
|
256
|
-
isSelected && /* @__PURE__ */
|
|
249
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
|
|
250
|
+
isSelected && /* @__PURE__ */ jsxRuntime.jsx(fi.FiCheck, {}),
|
|
257
251
|
rightIcon
|
|
258
252
|
] })
|
|
259
253
|
]
|
|
@@ -261,12 +255,12 @@ var DropdownItem = ({
|
|
|
261
255
|
);
|
|
262
256
|
};
|
|
263
257
|
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
258
|
+
exports.Dropdown = Dropdown;
|
|
259
|
+
exports.DropdownContent = DropdownContent;
|
|
260
|
+
exports.DropdownItem = DropdownItem;
|
|
261
|
+
exports.DropdownTrigger = DropdownTrigger;
|
|
262
|
+
exports.contentVariants = contentVariants;
|
|
263
|
+
exports.itemVariants = itemVariants;
|
|
264
|
+
exports.triggerVariants = triggerVariants;
|
|
265
|
+
//# sourceMappingURL=dropdown.js.map
|
|
272
266
|
//# sourceMappingURL=dropdown.js.map
|
package/dist/ui/dropdown.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/shubham/Desktop/Repos/NEXT%20JS/zentauri-ui/packages/components/dist/ui/dropdown.js"],"names":[],"mappings":"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","file":"/Users/shubham/Desktop/Repos/NEXT JS/zentauri-ui/packages/components/dist/ui/dropdown.js","sourcesContent":[null]}
|
|
1
|
+
{"version":3,"sources":["../../src/ui/dropdown/variants.ts","../../src/ui/dropdown/dropdown.tsx"],"names":["cva","createContext","useContext","useState","jsx","cn","useRef","useEffect","jsxs","FiCheck"],"mappings":"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","file":"dropdown.js","sourcesContent":["import { cva } from \"class-variance-authority\";\n\nexport const triggerVariants = cva(\n \"inline-flex items-center justify-between rounded-md font-medium transition focus:outline-none cursor-pointer\",\n {\n variants: {\n variant: {\n default: \"bg-gray-900 text-white\",\n outline: \"border border-gray-300\",\n ghost: \"bg-transparent\",\n white: \"bg-white text-gray-900\",\n black: \"bg-black text-white\",\n sky: \"border border-sky-600 text-sky-600\",\n rose: \"border border-rose-600 text-rose-600\",\n purple: \"border border-purple-600 text-purple-600\",\n pink: \"border border-pink-600 text-pink-600\",\n orange: \"border border-orange-600 text-orange-600\",\n yellow: \"border border-yellow-600 text-yellow-600\",\n teal: \"border border-teal-600 text-teal-600\",\n indigo: \"border border-indigo-600 text-indigo-600\",\n emerald: \"border border-emerald-600 text-emerald-600\",\n gray: \"border border-gray-600 text-gray-600\",\n amber: \"border border-amber-600 text-amber-600\",\n violet: \"border border-violet-600 text-violet-600\",\n \"gradient-blue\":\n \"bg-gradient-to-r from-blue-600 to-purple-600 text-gradient-to-r from-blue-600 to-purple-600\",\n \"gradient-green\":\n \"bg-gradient-to-r from-green-600 to-lime-600 text-gradient-to-r from-green-600 to-lime-600\",\n \"gradient-red\":\n \"bg-gradient-to-r from-red-600 to-pink-600 text-gradient-to-r from-red-600 to-pink-600\",\n \"gradient-yellow\":\n \"bg-gradient-to-r from-yellow-600 to-orange-600 text-gradient-to-r from-yellow-600 to-orange-600\",\n \"gradient-purple\":\n \"bg-gradient-to-r from-purple-600 to-pink-600 text-gradient-to-r from-purple-600 to-pink-600\",\n \"gradient-teal\":\n \"bg-gradient-to-r from-teal-600 to-cyan-600 text-gradient-to-r from-teal-600 to-cyan-600\",\n \"gradient-indigo\":\n \"bg-gradient-to-r from-indigo-600 to-purple-600 text-gradient-to-r from-indigo-600 to-purple-600\",\n \"gradient-pink\":\n \"bg-gradient-to-r from-pink-600 to-rose-600 text-gradient-to-r from-pink-600 to-rose-600\",\n \"gradient-orange\":\n \"bg-gradient-to-r from-orange-600 to-red-600 text-gradient-to-r from-orange-600 to-red-600\",\n },\n size: {\n sm: \"px-2 py-1 text-sm\",\n md: \"px-3 py-2 text-base\",\n lg: \"px-4 py-3 text-lg\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"md\",\n },\n },\n);\n\nexport const contentVariants = cva(\n \"absolute min-w-[200px] rounded-md p-2 shadow-md z-50 border\",\n {\n variants: {\n placement: {\n top: \"bottom-full mb-2\",\n bottom: \"top-full mt-2\",\n left: \"right-full mr-2\",\n right: \"left-full ml-2\",\n },\n spacing: {\n none: \"space-y-0\",\n default: \"space-y-1\",\n sm: \"space-y-2\",\n md: \"space-y-3\",\n lg: \"space-y-4\",\n xl: \"space-y-5\",\n },\n },\n defaultVariants: {\n placement: \"bottom\",\n spacing: \"default\",\n },\n },\n);\n\nexport const itemVariants = cva(\n \"flex items-center justify-between px-3 py-2 text-sm cursor-pointer rounded-md transition-colors\",\n {\n variants: {\n variant: {\n default: \"hover:bg-gray-100 hover:text-gray-900 text-gray-100\",\n outline:\n \"hover:bg-gray-100 hover:text-gray-900 border border-white text-gray-100\",\n ghost:\n \"hover:bg-gray-100 hover:text-gray-900 bg-transparent text-gray-100\",\n white: \"hover:bg-gray-100 hover:text-gray-900 bg-white text-gray-900\",\n black: \"hover:bg-gray-100 hover:text-gray-900 bg-black text-white\",\n sky: \"hover:bg-sky-100 hover:text-sky-600 bg-sky-200 text-sky-800\",\n rose: \"hover:bg-rose-100 hover:text-rose-600 bg-rose-200 text-rose-800\",\n purple:\n \"hover:bg-purple-100 hover:text-purple-600 bg-purple-200 text-purple-800\",\n pink: \"hover:bg-pink-100 hover:text-pink-600 bg-pink-200 text-pink-800\",\n orange:\n \"hover:bg-orange-100 hover:text-orange-600 bg-orange-200 text-orange-800\",\n yellow:\n \"hover:bg-yellow-100 hover:text-yellow-600 bg-yellow-200 text-yellow-800\",\n teal: \"hover:bg-teal-100 hover:text-teal-600 bg-teal-200 text-teal-800\",\n indigo:\n \"hover:bg-indigo-100 hover:text-indigo-600 bg-indigo-200 text-indigo-800\",\n emerald:\n \"hover:bg-emerald-100 hover:text-emerald-600 bg-emerald-200 text-emerald-800\",\n gray: \"hover:bg-gray-100 hover:text-gray-900 bg-gray-200 text-gray-800\",\n amber:\n \"hover:bg-amber-100 hover:text-amber-600 bg-amber-200 text-amber-800\",\n violet:\n \"hover:bg-violet-100 hover:text-violet-600 bg-violet-200 text-violet-800\",\n \"gradient-blue\":\n \"hover:bg-gradient-to-r from-blue-600 to-purple-600 hover:text-blue-900 bg-gradient-to-r from-blue-200 to-purple-200 text-blue-800\",\n \"gradient-green\":\n \"hover:bg-gradient-to-r from-green-600 to-lime-600 hover:text-green-900 bg-gradient-to-r from-green-200 to-lime-200 text-green-800\",\n \"gradient-red\":\n \"hover:bg-gradient-to-r from-red-600 to-pink-600 hover:text-red-900 bg-gradient-to-r from-red-200 to-pink-200 text-red-800\",\n \"gradient-yellow\":\n \"hover:bg-gradient-to-r from-yellow-600 to-orange-600 hover:text-yellow-900 bg-gradient-to-r from-yellow-200 to-orange-200 text-yellow-800\",\n \"gradient-purple\":\n \"hover:bg-gradient-to-r from-purple-600 to-pink-600 hover:text-purple-900 bg-gradient-to-r from-purple-200 to-pink-200 text-purple-800\",\n \"gradient-teal\":\n \"hover:bg-gradient-to-r from-teal-600 to-cyan-600 hover:text-teal-900 bg-gradient-to-r from-teal-200 to-cyan-200 text-teal-800\",\n \"gradient-indigo\":\n \"hover:bg-gradient-to-r from-indigo-600 to-purple-600 hover:text-indigo-900 bg-gradient-to-r from-indigo-200 to-purple-200 text-indigo-800\",\n \"gradient-pink\":\n \"hover:bg-gradient-to-r from-pink-600 to-rose-600 hover:text-pink-900 bg-gradient-to-r from-pink-200 to-rose-200 text-pink-800\",\n \"gradient-orange\":\n \"hover:bg-gradient-to-r from-orange-600 to-red-600 hover:text-orange-900 bg-gradient-to-r from-orange-200 to-red-200 text-orange-800\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n },\n);\n","\"use client\";\n\nimport { createContext, useContext, useState, useRef, useEffect } from \"react\";\nimport { FiCheck } from \"react-icons/fi\";\nimport { cn } from \"../../lib/utils\";\nimport type {\n DropdownContextType,\n DropdownProps,\n DropdownTriggerProps,\n DropdownContentProps,\n DropdownItemProps,\n} from \"./types\";\nimport { triggerVariants, contentVariants, itemVariants } from \"./variants\";\n\n/* =========================\n Context\n========================= */\nconst DropdownContext = createContext<DropdownContextType | null>(null);\n\nconst useDropdown = () => {\n const ctx = useContext(DropdownContext);\n if (!ctx) throw new Error(\"Use inside Dropdown\");\n return ctx;\n};\n\n/* =========================\n Root\n========================= */\nexport const Dropdown = ({\n children,\n defaultOpen = false,\n open: controlledOpen,\n onOpenChange,\n multiSelect = false,\n}: DropdownProps) => {\n const [uncontrolledOpen, setUncontrolledOpen] = useState(defaultOpen);\n const [selectedValues, setSelectedValues] = useState<string[]>([]);\n\n const open = controlledOpen ?? uncontrolledOpen;\n\n const setOpen = (val: boolean) => {\n if (controlledOpen !== undefined) {\n onOpenChange?.(val);\n } else {\n setUncontrolledOpen(val);\n }\n };\n\n const toggle = () => setOpen(!open);\n\n const toggleSelect = (value: string) => {\n if (!multiSelect) {\n setSelectedValues([value]);\n setOpen(false);\n return;\n }\n\n setSelectedValues((prev) =>\n prev.includes(value) ? prev.filter((v) => v !== value) : [...prev, value],\n );\n };\n\n return (\n <DropdownContext.Provider\n value={{\n open,\n setOpen,\n toggle,\n selectedValues,\n toggleSelect,\n multiSelect,\n }}\n >\n <div className=\"relative inline-block\">{children}</div>\n </DropdownContext.Provider>\n );\n};\n\n/* =========================\n Trigger\n========================= */\nexport const DropdownTrigger = ({\n children,\n className,\n variant,\n size,\n ...props\n}: DropdownTriggerProps) => {\n const { toggle } = useDropdown();\n\n return (\n <button\n onClick={toggle}\n className={cn(triggerVariants({ variant, size }), className)}\n {...props}\n >\n {children}\n </button>\n );\n};\n\n/* =========================\n Content\n========================= */\nexport const DropdownContent = ({\n children,\n className,\n placement = \"bottom\",\n spacing = \"default\",\n divider,\n ...props\n}: DropdownContentProps) => {\n const { open, setOpen } = useDropdown();\n const ref = useRef<HTMLDivElement>(null);\n\n // click outside\n useEffect(() => {\n const handleClickOutside = (e: MouseEvent) => {\n if (ref.current && !ref.current.contains(e.target as Node)) {\n setOpen(false);\n }\n };\n\n document.addEventListener(\"mousedown\", handleClickOutside);\n return () => document.removeEventListener(\"mousedown\", handleClickOutside);\n }, [setOpen]);\n\n if (!open) return null;\n\n return (\n <div\n ref={ref}\n className={cn(\n contentVariants({ placement, spacing }),\n className,\n divider && \"divide-y divide-current\",\n )}\n {...props}\n >\n {children}\n </div>\n );\n};\n\n/* =========================\n Item\n========================= */\nexport const DropdownItem = ({\n children,\n value,\n className,\n variant,\n onSelect,\n leftIcon,\n rightIcon,\n ...props\n}: DropdownItemProps) => {\n const { toggleSelect, selectedValues } = useDropdown();\n const isSelected = selectedValues.includes(value);\n\n const handleClick = () => {\n toggleSelect(value);\n onSelect?.();\n };\n\n return (\n <div\n tabIndex={0}\n onClick={handleClick}\n onKeyDown={(e) => {\n if (e.key === \"Enter\") handleClick();\n }}\n className={cn(itemVariants({ variant }), className)}\n {...props}\n >\n <div className=\"flex items-center gap-2\">\n {leftIcon}\n {children}\n </div>\n\n <div className=\"flex items-center gap-2\">\n {isSelected && <FiCheck />}\n {rightIcon}\n </div>\n </div>\n );\n};\n"]}
|
package/dist/ui/dropdown.mjs
CHANGED
|
@@ -1,21 +1,10 @@
|
|
|
1
1
|
"use client";
|
|
2
|
+
import { cn } from '../chunk-B23TPTVG.mjs';
|
|
3
|
+
import { createContext, useState, useRef, useEffect, useContext } from 'react';
|
|
4
|
+
import { FiCheck } from 'react-icons/fi';
|
|
5
|
+
import { cva } from 'class-variance-authority';
|
|
6
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
7
|
|
|
3
|
-
import {
|
|
4
|
-
cn
|
|
5
|
-
} from "../chunk-MEWYFWBX.mjs";
|
|
6
|
-
|
|
7
|
-
// src/ui/dropdown/dropdown.tsx
|
|
8
|
-
import {
|
|
9
|
-
createContext,
|
|
10
|
-
useContext,
|
|
11
|
-
useState,
|
|
12
|
-
useRef,
|
|
13
|
-
useEffect
|
|
14
|
-
} from "react";
|
|
15
|
-
import { FiCheck } from "react-icons/fi";
|
|
16
|
-
|
|
17
|
-
// src/ui/dropdown/variants.ts
|
|
18
|
-
import { cva } from "class-variance-authority";
|
|
19
8
|
var triggerVariants = cva(
|
|
20
9
|
"inline-flex items-center justify-between rounded-md font-medium transition focus:outline-none cursor-pointer",
|
|
21
10
|
{
|
|
@@ -123,9 +112,6 @@ var itemVariants = cva(
|
|
|
123
112
|
}
|
|
124
113
|
}
|
|
125
114
|
);
|
|
126
|
-
|
|
127
|
-
// src/ui/dropdown/dropdown.tsx
|
|
128
|
-
import { jsx, jsxs } from "react/jsx-runtime";
|
|
129
115
|
var DropdownContext = createContext(null);
|
|
130
116
|
var useDropdown = () => {
|
|
131
117
|
const ctx = useContext(DropdownContext);
|
|
@@ -217,7 +203,11 @@ var DropdownContent = ({
|
|
|
217
203
|
"div",
|
|
218
204
|
{
|
|
219
205
|
ref,
|
|
220
|
-
className: cn(
|
|
206
|
+
className: cn(
|
|
207
|
+
contentVariants({ placement, spacing }),
|
|
208
|
+
className,
|
|
209
|
+
divider && "divide-y divide-current"
|
|
210
|
+
),
|
|
221
211
|
...props,
|
|
222
212
|
children
|
|
223
213
|
}
|
|
@@ -262,13 +252,7 @@ var DropdownItem = ({
|
|
|
262
252
|
}
|
|
263
253
|
);
|
|
264
254
|
};
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
DropdownItem,
|
|
269
|
-
DropdownTrigger,
|
|
270
|
-
contentVariants,
|
|
271
|
-
itemVariants,
|
|
272
|
-
triggerVariants
|
|
273
|
-
};
|
|
255
|
+
|
|
256
|
+
export { Dropdown, DropdownContent, DropdownItem, DropdownTrigger, contentVariants, itemVariants, triggerVariants };
|
|
257
|
+
//# sourceMappingURL=dropdown.mjs.map
|
|
274
258
|
//# sourceMappingURL=dropdown.mjs.map
|