@popgrids/ui 0.0.9 → 0.0.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. package/dist/button-D4TdCwoe.d.cts +21 -0
  2. package/dist/button-D4TdCwoe.d.ts +21 -0
  3. package/dist/button.cjs +260 -1
  4. package/dist/button.cjs.map +1 -1
  5. package/dist/button.d.cts +3 -27
  6. package/dist/button.d.ts +3 -27
  7. package/dist/button.js +258 -1
  8. package/dist/button.js.map +1 -1
  9. package/dist/content-block.cjs +25 -1
  10. package/dist/content-block.cjs.map +1 -1
  11. package/dist/content-block.d.cts +6 -5
  12. package/dist/content-block.d.ts +6 -5
  13. package/dist/content-block.js +23 -1
  14. package/dist/content-block.js.map +1 -1
  15. package/dist/dialog.cjs +144 -1
  16. package/dist/dialog.cjs.map +1 -1
  17. package/dist/dialog.d.cts +12 -11
  18. package/dist/dialog.d.ts +12 -11
  19. package/dist/dialog.js +131 -1
  20. package/dist/dialog.js.map +1 -1
  21. package/dist/dropdown-menu.cjs +228 -1
  22. package/dist/dropdown-menu.cjs.map +1 -1
  23. package/dist/dropdown-menu.d.cts +21 -15
  24. package/dist/dropdown-menu.d.ts +21 -15
  25. package/dist/dropdown-menu.js +212 -1
  26. package/dist/dropdown-menu.js.map +1 -1
  27. package/dist/footer.cjs +191 -2
  28. package/dist/footer.cjs.map +1 -1
  29. package/dist/footer.js +189 -2
  30. package/dist/footer.js.map +1 -1
  31. package/dist/index.cjs +1148 -2
  32. package/dist/index.cjs.map +1 -1
  33. package/dist/index.d.cts +12 -7
  34. package/dist/index.d.ts +12 -7
  35. package/dist/index.js +1106 -2
  36. package/dist/index.js.map +1 -1
  37. package/dist/input.cjs +30 -1
  38. package/dist/input.cjs.map +1 -1
  39. package/dist/input.d.cts +4 -2
  40. package/dist/input.d.ts +4 -2
  41. package/dist/input.js +28 -1
  42. package/dist/input.js.map +1 -1
  43. package/dist/label.cjs +30 -1
  44. package/dist/label.cjs.map +1 -1
  45. package/dist/label.d.cts +4 -3
  46. package/dist/label.d.ts +4 -3
  47. package/dist/label.js +28 -1
  48. package/dist/label.js.map +1 -1
  49. package/dist/loader-xdvZkRei.d.cts +20 -0
  50. package/dist/loader-xdvZkRei.d.ts +20 -0
  51. package/dist/loader.cjs +127 -0
  52. package/dist/loader.cjs.map +1 -0
  53. package/dist/loader.d.cts +2 -0
  54. package/dist/loader.d.ts +2 -0
  55. package/dist/loader.js +125 -0
  56. package/dist/loader.js.map +1 -0
  57. package/dist/metafile-cjs.json +1 -0
  58. package/dist/metafile-esm.json +1 -0
  59. package/dist/notification-badge.cjs +66 -0
  60. package/dist/notification-badge.cjs.map +1 -0
  61. package/dist/notification-badge.d.cts +19 -0
  62. package/dist/notification-badge.d.ts +19 -0
  63. package/dist/notification-badge.js +64 -0
  64. package/dist/notification-badge.js.map +1 -0
  65. package/dist/section-flourish.cjs +9 -1
  66. package/dist/section-flourish.cjs.map +1 -1
  67. package/dist/section-flourish.js +7 -1
  68. package/dist/section-flourish.js.map +1 -1
  69. package/dist/section-header-BWd0FD9Q.d.cts +18 -0
  70. package/dist/section-header-BWd0FD9Q.d.ts +18 -0
  71. package/dist/section-header.cjs +150 -0
  72. package/dist/section-header.cjs.map +1 -0
  73. package/dist/section-header.d.cts +2 -0
  74. package/dist/section-header.d.ts +2 -0
  75. package/dist/section-header.js +148 -0
  76. package/dist/section-header.js.map +1 -0
  77. package/dist/theme.css +21 -14
  78. package/dist/tooltip.cjs +72 -0
  79. package/dist/tooltip.cjs.map +1 -0
  80. package/dist/tooltip.d.cts +12 -0
  81. package/dist/tooltip.d.ts +12 -0
  82. package/dist/tooltip.js +66 -0
  83. package/dist/tooltip.js.map +1 -0
  84. package/package.json +81 -30
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/lib/utils.ts","../src/components/dialog/dialog.tsx"],"names":["cn","inputs","twMerge","clsx","Dialog","props","jsx","e","DialogTrigger","DialogPortal","DialogClose","DialogOverlay","className","DialogContent","children","bottom","showCloseButton","jsxs","XClose","DialogHeader","DialogFooter","DialogTitle","DialogDescription"],"mappings":"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","file":"dialog.cjs","sourcesContent":["import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","import * as DialogPrimitive from \"@radix-ui/react-dialog\";\nimport type * as React from \"react\";\n\nimport { XClose } from \"@untitledui/icons\";\nimport { cn } from \"../../lib/utils\";\n\nfunction Dialog({ ...props }: React.ComponentProps<typeof DialogPrimitive.Root>) {\n return <DialogPrimitive.Root data-slot=\"dialog\" {...props} />;\n}\n\nfunction DialogTrigger({ ...props }: React.ComponentProps<typeof DialogPrimitive.Trigger>) {\n return <DialogPrimitive.Trigger data-slot=\"dialog-trigger\" {...props} />;\n}\n\nfunction DialogPortal({ ...props }: React.ComponentProps<typeof DialogPrimitive.Portal>) {\n return <DialogPrimitive.Portal data-slot=\"dialog-portal\" {...props} />;\n}\n\nfunction DialogClose({ ...props }: React.ComponentProps<typeof DialogPrimitive.Close>) {\n return <DialogPrimitive.Close data-slot=\"dialog-close\" {...props} />;\n}\n\nfunction DialogOverlay({\n className,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Overlay>) {\n return (\n <DialogPrimitive.Overlay\n data-slot=\"dialog-overlay\"\n className={cn(\n \"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-[rgb(0_0_32_/_0.01)] backdrop-blur-sm dark:bg-[rgb(255_255_255_/_0.01)]\",\n // \"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction DialogContent({\n className,\n children,\n bottom = false,\n showCloseButton = true,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Content> & {\n bottom?: boolean;\n showCloseButton?: boolean;\n}) {\n return (\n <DialogPortal data-slot=\"dialog-portal\">\n <DialogOverlay />\n {showCloseButton && (\n <DialogPrimitive.Close data-slot=\"dialog-close\" asChild>\n {/* <Button\n className=\"fixed top-[15px] left-5 z-50 overflow-visible before:absolute before:top-3 before:left-3 before:z-50 before:flex before:size-[100px] before:bg-red-600 before:content-['']\"\n collapsed\n leading={<XClose className=\"size-[18px]\" />}\n pill\n theme=\"brand\"\n variant=\"primary\"\n /> */}\n <button\n type=\"button\"\n className=\"before:bg-tint-700-reversed fixed top-[15px] left-5 z-50 overflow-visible before:absolute before:-inset-1.5 before:z-40 before:flex before:size-[calc(100%+12px)] before:rounded-full before:backdrop-blur-sm before:content-['']\"\n >\n <div className=\"bg-foreground text-background relative z-50 flex size-10 items-center justify-center rounded-full\">\n <XClose className=\"size-[18px]\" />\n </div>\n </button>\n </DialogPrimitive.Close>\n )}\n <DialogPrimitive.Content\n data-slot=\"dialog-content\"\n className={cn(\n \"bg-surface-bg-default data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] rounded-xl shadow-2xl duration-200 sm:max-w-lg\",\n {\n \"data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom m:max-h-full z-50 h-full max-h-full w-full max-w-full overflow-auto data-[state=closed]:duration-200 data-[state=closed]:ease-[cubic-bezier(1,0,0.72,0.32)] data-[state=open]:duration-500 data-[state=open]:ease-[cubic-bezier(0.32,0.72,0,1)] sm:max-w-full\":\n bottom,\n },\n className,\n )}\n {...props}\n >\n {children}\n </DialogPrimitive.Content>\n </DialogPortal>\n );\n}\n\nfunction DialogHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"dialog-header\"\n className={cn(\"flex flex-col gap-2 text-center sm:text-left\", className)}\n {...props}\n />\n );\n}\n\nfunction DialogFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"dialog-footer\"\n className={cn(\"flex flex-col-reverse gap-2 sm:flex-row sm:justify-end\", className)}\n {...props}\n />\n );\n}\n\nfunction DialogTitle({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Title>) {\n return (\n <DialogPrimitive.Title\n data-slot=\"dialog-title\"\n className={cn(\"text-lg leading-none font-semibold\", className)}\n {...props}\n />\n );\n}\n\nfunction DialogDescription({\n className,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Description>) {\n return (\n <DialogPrimitive.Description\n data-slot=\"dialog-description\"\n className={cn(\"text-muted-foreground text-sm\", className)}\n {...props}\n />\n );\n}\n\nexport {\n Dialog,\n DialogClose,\n DialogContent,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogOverlay,\n DialogPortal,\n DialogTitle,\n DialogTrigger,\n};\n"]}
1
+ {"version":3,"sources":["../src/lib/utils.ts","../src/components/dialog/dialog.tsx"],"names":["twMerge","clsx","jsx","DialogPrimitive","jsxs","XClose"],"mappings":"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","file":"dialog.cjs","sourcesContent":["import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","\"use client\";\n\nimport { Dialog as DialogPrimitive } from \"@base-ui/react\";\nimport { XClose } from \"@untitledui/icons\";\nimport { cn } from \"../../lib/utils\";\n\n/* ---------------------------------------------\n * Root\n * --------------------------------------------- */\n\nfunction DialogRoot(props: React.ComponentProps<typeof DialogPrimitive.Root>) {\n return <DialogPrimitive.Root {...props} />;\n}\n\n/* ---------------------------------------------\n * Portal\n * --------------------------------------------- */\n\nfunction DialogPortal(props: React.ComponentProps<typeof DialogPrimitive.Portal>) {\n return <DialogPrimitive.Portal {...props} />;\n}\n\n/* ---------------------------------------------\n * Trigger\n * --------------------------------------------- */\n\nfunction DialogTrigger(props: React.ComponentProps<typeof DialogPrimitive.Trigger>) {\n return <DialogPrimitive.Trigger {...props} />;\n}\n\n/* ---------------------------------------------\n * Close\n * --------------------------------------------- */\n\nfunction DialogClose(props: React.ComponentProps<typeof DialogPrimitive.Close>) {\n return <DialogPrimitive.Close {...props} />;\n}\n\n/* ---------------------------------------------\n * Overlay (Backdrop)\n * --------------------------------------------- */\n\nfunction DialogBackdrop({\n className,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Backdrop>) {\n return (\n <DialogPrimitive.Backdrop\n className={cn(\n \"fixed inset-0 min-h-dvh bg-[rgb(0_0_32/0.01)] opacity-0 backdrop-blur-sm transition-[opacity,backdrop-filter] duration-150 data-ending-style:opacity-0 data-starting-style:opacity-0 supports-[-webkit-touch-callout:none]:absolute dark:bg-[rgb(255_255_255/0.01)] dark:opacity-70\",\n \"data-closed:opacity-0 data-open:opacity-100\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction DialogViewport({\n className,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Viewport>) {\n return (\n <DialogPrimitive.Viewport\n className={cn(\n \"fixed inset-0 flex items-center justify-center overflow-hidden py-6 [@media(min-height:600px)]:pt-8 [@media(min-height:600px)]:pb-12\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/* ---------------------------------------------\n * Content (Popup)\n * --------------------------------------------- */\n\nfunction DialogPopup({\n className,\n children,\n bottom = false,\n showCloseButton = true,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Popup> & {\n bottom?: boolean;\n showCloseButton?: boolean;\n}) {\n return (\n <DialogPrimitive.Portal>\n <DialogBackdrop />\n <DialogPrimitive.Popup className=\"group/popup pointer-events-none flex h-full max-h-full min-h-0 w-full max-w-full justify-center overflow-hidden transition-opacity duration-150 data-ending-style:opacity-0 data-starting-style:opacity-0\">\n {showCloseButton && (\n <DialogClose\n className=\"pointer-events-auto fixed top-[15px] left-5 z-50\"\n aria-label=\"Close\"\n >\n <span className=\"sr-only\">Close</span>\n <span className=\"before:bg-tint-700-reversed relative block before:absolute before:-inset-1.5 before:rounded-full before:backdrop-blur-sm\">\n <span className=\"bg-primary-foreground text-background relative z-10 flex size-10 items-center justify-center rounded-full\">\n <XClose className=\"size-[18px]\" />\n </span>\n </span>\n </DialogClose>\n )}\n <div\n className={cn(\n \"bg-background pointer-events-auto fixed top-1/2 left-1/2 flex h-full max-h-[calc(100%-2rem)] w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 flex-col rounded-xl shadow-2xl transition-all\",\n {\n \"group-data-ending-style/popup:translate-y-0 group-data-ending-style/popup:scale-[0.98] group-data-ending-style/popup:opacity-0 group-data-starting-style/popup:translate-y-0 group-data-starting-style/popup:scale-[0.98] group-data-starting-style/popup:opacity-0\":\n !bottom,\n \"group-data-open/popup:slide-in-from-bottom group-data-closed/popup:slide-out-to-bottom group-data-starting-style/popup-scale-100 group-data-ending-style/popup-scale-100 group-data-open/popup:animate-in group-data-closed/popup:animate-out top-auto bottom-0 h-full translate-y-0 rounded-b-none group-data-closed/popup:duration-200 group-data-closed/popup:ease-[cubic-bezier(1,0,0.72,0.32)] group-data-ending-style/popup:translate-y-full group-data-open/popup:duration-500 group-data-open/popup:ease-[cubic-bezier(0.32,0.72,0,1)] group-data-starting-style/popup:translate-y-full\":\n bottom,\n },\n className,\n )}\n {...props}\n >\n {children}\n </div>\n </DialogPrimitive.Popup>\n </DialogPrimitive.Portal>\n );\n}\n\n/* ---------------------------------------------\n * Header / Footer\n * --------------------------------------------- */\n\nfunction DialogHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div className={cn(\"flex flex-col gap-2 text-center sm:text-left\", className)} {...props} />\n );\n}\n\nfunction DialogFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return <div className={cn(\"flex flex-col-reverse gap-2 sm:flex-row\", className)} {...props} />;\n}\n\n/* ---------------------------------------------\n * Title / Description\n * --------------------------------------------- */\n\nfunction DialogTitle({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Title>) {\n return (\n <DialogPrimitive.Title\n className={cn(\"text-lg leading-none font-semibold\", className)}\n {...props}\n />\n );\n}\n\nfunction DialogDescription({\n className,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Description>) {\n return (\n <DialogPrimitive.Description\n className={cn(\"text-muted-foreground text-sm\", className)}\n {...props}\n />\n );\n}\n\nfunction DialogBody({ className, children, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n className={cn(\"flex shrink-0 grow basis-0 flex-col items-start self-stretch\", className)}\n {...props}\n >\n <div className=\"flex shrink-0 grow basis-0 flex-col items-start gap-10 self-stretch overflow-auto p-4\">\n {children}\n </div>\n </div>\n );\n}\n/* ---------------------------------------------\n * Exports (preserve your public API)\n * --------------------------------------------- */\n\nexport {\n DialogRoot as Dialog,\n DialogBackdrop,\n DialogBody,\n DialogClose,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogPopup,\n DialogPortal,\n DialogTitle,\n DialogTrigger,\n DialogViewport,\n};\n"]}
package/dist/dialog.d.cts CHANGED
@@ -1,19 +1,20 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import * as DialogPrimitive from '@radix-ui/react-dialog';
3
- import * as React from 'react';
2
+ import { Dialog } from '@base-ui/react';
4
3
 
5
- declare function Dialog({ ...props }: React.ComponentProps<typeof DialogPrimitive.Root>): react_jsx_runtime.JSX.Element;
6
- declare function DialogTrigger({ ...props }: React.ComponentProps<typeof DialogPrimitive.Trigger>): react_jsx_runtime.JSX.Element;
7
- declare function DialogPortal({ ...props }: React.ComponentProps<typeof DialogPrimitive.Portal>): react_jsx_runtime.JSX.Element;
8
- declare function DialogClose({ ...props }: React.ComponentProps<typeof DialogPrimitive.Close>): react_jsx_runtime.JSX.Element;
9
- declare function DialogOverlay({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Overlay>): react_jsx_runtime.JSX.Element;
10
- declare function DialogContent({ className, children, bottom, showCloseButton, ...props }: React.ComponentProps<typeof DialogPrimitive.Content> & {
4
+ declare function DialogRoot(props: React.ComponentProps<typeof Dialog.Root>): react_jsx_runtime.JSX.Element;
5
+ declare function DialogPortal(props: React.ComponentProps<typeof Dialog.Portal>): react_jsx_runtime.JSX.Element;
6
+ declare function DialogTrigger(props: React.ComponentProps<typeof Dialog.Trigger>): react_jsx_runtime.JSX.Element;
7
+ declare function DialogClose(props: React.ComponentProps<typeof Dialog.Close>): react_jsx_runtime.JSX.Element;
8
+ declare function DialogBackdrop({ className, ...props }: React.ComponentProps<typeof Dialog.Backdrop>): react_jsx_runtime.JSX.Element;
9
+ declare function DialogViewport({ className, ...props }: React.ComponentProps<typeof Dialog.Viewport>): react_jsx_runtime.JSX.Element;
10
+ declare function DialogPopup({ className, children, bottom, showCloseButton, ...props }: React.ComponentProps<typeof Dialog.Popup> & {
11
11
  bottom?: boolean;
12
12
  showCloseButton?: boolean;
13
13
  }): react_jsx_runtime.JSX.Element;
14
14
  declare function DialogHeader({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
15
15
  declare function DialogFooter({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
16
- declare function DialogTitle({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Title>): react_jsx_runtime.JSX.Element;
17
- declare function DialogDescription({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Description>): react_jsx_runtime.JSX.Element;
16
+ declare function DialogTitle({ className, ...props }: React.ComponentProps<typeof Dialog.Title>): react_jsx_runtime.JSX.Element;
17
+ declare function DialogDescription({ className, ...props }: React.ComponentProps<typeof Dialog.Description>): react_jsx_runtime.JSX.Element;
18
+ declare function DialogBody({ className, children, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
18
19
 
19
- export { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger };
20
+ export { DialogRoot as Dialog, DialogBackdrop, DialogBody, DialogClose, DialogDescription, DialogFooter, DialogHeader, DialogPopup, DialogPortal, DialogTitle, DialogTrigger, DialogViewport };
package/dist/dialog.d.ts CHANGED
@@ -1,19 +1,20 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import * as DialogPrimitive from '@radix-ui/react-dialog';
3
- import * as React from 'react';
2
+ import { Dialog } from '@base-ui/react';
4
3
 
5
- declare function Dialog({ ...props }: React.ComponentProps<typeof DialogPrimitive.Root>): react_jsx_runtime.JSX.Element;
6
- declare function DialogTrigger({ ...props }: React.ComponentProps<typeof DialogPrimitive.Trigger>): react_jsx_runtime.JSX.Element;
7
- declare function DialogPortal({ ...props }: React.ComponentProps<typeof DialogPrimitive.Portal>): react_jsx_runtime.JSX.Element;
8
- declare function DialogClose({ ...props }: React.ComponentProps<typeof DialogPrimitive.Close>): react_jsx_runtime.JSX.Element;
9
- declare function DialogOverlay({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Overlay>): react_jsx_runtime.JSX.Element;
10
- declare function DialogContent({ className, children, bottom, showCloseButton, ...props }: React.ComponentProps<typeof DialogPrimitive.Content> & {
4
+ declare function DialogRoot(props: React.ComponentProps<typeof Dialog.Root>): react_jsx_runtime.JSX.Element;
5
+ declare function DialogPortal(props: React.ComponentProps<typeof Dialog.Portal>): react_jsx_runtime.JSX.Element;
6
+ declare function DialogTrigger(props: React.ComponentProps<typeof Dialog.Trigger>): react_jsx_runtime.JSX.Element;
7
+ declare function DialogClose(props: React.ComponentProps<typeof Dialog.Close>): react_jsx_runtime.JSX.Element;
8
+ declare function DialogBackdrop({ className, ...props }: React.ComponentProps<typeof Dialog.Backdrop>): react_jsx_runtime.JSX.Element;
9
+ declare function DialogViewport({ className, ...props }: React.ComponentProps<typeof Dialog.Viewport>): react_jsx_runtime.JSX.Element;
10
+ declare function DialogPopup({ className, children, bottom, showCloseButton, ...props }: React.ComponentProps<typeof Dialog.Popup> & {
11
11
  bottom?: boolean;
12
12
  showCloseButton?: boolean;
13
13
  }): react_jsx_runtime.JSX.Element;
14
14
  declare function DialogHeader({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
15
15
  declare function DialogFooter({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
16
- declare function DialogTitle({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Title>): react_jsx_runtime.JSX.Element;
17
- declare function DialogDescription({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Description>): react_jsx_runtime.JSX.Element;
16
+ declare function DialogTitle({ className, ...props }: React.ComponentProps<typeof Dialog.Title>): react_jsx_runtime.JSX.Element;
17
+ declare function DialogDescription({ className, ...props }: React.ComponentProps<typeof Dialog.Description>): react_jsx_runtime.JSX.Element;
18
+ declare function DialogBody({ className, children, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
18
19
 
19
- export { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger };
20
+ export { DialogRoot as Dialog, DialogBackdrop, DialogBody, DialogClose, DialogDescription, DialogFooter, DialogHeader, DialogPopup, DialogPortal, DialogTitle, DialogTrigger, DialogViewport };
package/dist/dialog.js CHANGED
@@ -1,2 +1,132 @@
1
- import*as e from'@radix-ui/react-dialog';import {XClose}from'@untitledui/icons';import {clsx}from'clsx';import {twMerge}from'tailwind-merge';import {jsx,jsxs}from'react/jsx-runtime';function i(...t){return twMerge(clsx(t))}function P({...t}){return jsx(e.Root,{"data-slot":"dialog",...t})}function x({...t}){return jsx(e.Trigger,{"data-slot":"dialog-trigger",...t})}function f({...t}){return jsx(e.Portal,{"data-slot":"dialog-portal",...t})}function C({...t}){return jsx(e.Close,{"data-slot":"dialog-close",...t})}function g({className:t,...a}){return jsx(e.Overlay,{"data-slot":"dialog-overlay",className:i("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-[rgb(0_0_32_/_0.01)] backdrop-blur-sm dark:bg-[rgb(255_255_255_/_0.01)]",t),...a})}function y({className:t,children:a,bottom:l=false,showCloseButton:r=true,...n}){return jsxs(f,{"data-slot":"dialog-portal",children:[jsx(g,{}),r&&jsx(e.Close,{"data-slot":"dialog-close",asChild:true,children:jsx("button",{type:"button",className:"before:bg-tint-700-reversed fixed top-[15px] left-5 z-50 overflow-visible before:absolute before:-inset-1.5 before:z-40 before:flex before:size-[calc(100%+12px)] before:rounded-full before:backdrop-blur-sm before:content-['']",children:jsx("div",{className:"bg-foreground text-background relative z-50 flex size-10 items-center justify-center rounded-full",children:jsx(XClose,{className:"size-[18px]"})})})}),jsx(e.Content,{"data-slot":"dialog-content",className:i("bg-surface-bg-default data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] rounded-xl shadow-2xl duration-200 sm:max-w-lg",{"data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom m:max-h-full z-50 h-full max-h-full w-full max-w-full overflow-auto data-[state=closed]:duration-200 data-[state=closed]:ease-[cubic-bezier(1,0,0.72,0.32)] data-[state=open]:duration-500 data-[state=open]:ease-[cubic-bezier(0.32,0.72,0,1)] sm:max-w-full":l},t),...n,children:a})]})}function z({className:t,...a}){return jsx("div",{"data-slot":"dialog-header",className:i("flex flex-col gap-2 text-center sm:text-left",t),...a})}function R({className:t,...a}){return jsx("div",{"data-slot":"dialog-footer",className:i("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",t),...a})}function w({className:t,...a}){return jsx(e.Title,{"data-slot":"dialog-title",className:i("text-lg leading-none font-semibold",t),...a})}function N({className:t,...a}){return jsx(e.Description,{"data-slot":"dialog-description",className:i("text-muted-foreground text-sm",t),...a})}export{P as Dialog,C as DialogClose,y as DialogContent,N as DialogDescription,R as DialogFooter,z as DialogHeader,g as DialogOverlay,f as DialogPortal,w as DialogTitle,x as DialogTrigger};//# sourceMappingURL=dialog.js.map
1
+ import { Dialog } from '@base-ui/react';
2
+ import { XClose } from '@untitledui/icons';
3
+ import { clsx } from 'clsx';
4
+ import { twMerge } from 'tailwind-merge';
5
+ import { jsx, jsxs } from 'react/jsx-runtime';
6
+
7
+ function cn(...inputs) {
8
+ return twMerge(clsx(inputs));
9
+ }
10
+ function DialogRoot(props) {
11
+ return /* @__PURE__ */ jsx(Dialog.Root, { ...props });
12
+ }
13
+ function DialogPortal(props) {
14
+ return /* @__PURE__ */ jsx(Dialog.Portal, { ...props });
15
+ }
16
+ function DialogTrigger(props) {
17
+ return /* @__PURE__ */ jsx(Dialog.Trigger, { ...props });
18
+ }
19
+ function DialogClose(props) {
20
+ return /* @__PURE__ */ jsx(Dialog.Close, { ...props });
21
+ }
22
+ function DialogBackdrop({
23
+ className,
24
+ ...props
25
+ }) {
26
+ return /* @__PURE__ */ jsx(
27
+ Dialog.Backdrop,
28
+ {
29
+ className: cn(
30
+ "fixed inset-0 min-h-dvh bg-[rgb(0_0_32/0.01)] opacity-0 backdrop-blur-sm transition-[opacity,backdrop-filter] duration-150 data-ending-style:opacity-0 data-starting-style:opacity-0 supports-[-webkit-touch-callout:none]:absolute dark:bg-[rgb(255_255_255/0.01)] dark:opacity-70",
31
+ "data-closed:opacity-0 data-open:opacity-100",
32
+ className
33
+ ),
34
+ ...props
35
+ }
36
+ );
37
+ }
38
+ function DialogViewport({
39
+ className,
40
+ ...props
41
+ }) {
42
+ return /* @__PURE__ */ jsx(
43
+ Dialog.Viewport,
44
+ {
45
+ className: cn(
46
+ "fixed inset-0 flex items-center justify-center overflow-hidden py-6 [@media(min-height:600px)]:pt-8 [@media(min-height:600px)]:pb-12",
47
+ className
48
+ ),
49
+ ...props
50
+ }
51
+ );
52
+ }
53
+ function DialogPopup({
54
+ className,
55
+ children,
56
+ bottom = false,
57
+ showCloseButton = true,
58
+ ...props
59
+ }) {
60
+ return /* @__PURE__ */ jsxs(Dialog.Portal, { children: [
61
+ /* @__PURE__ */ jsx(DialogBackdrop, {}),
62
+ /* @__PURE__ */ jsxs(Dialog.Popup, { className: "group/popup pointer-events-none flex h-full max-h-full min-h-0 w-full max-w-full justify-center overflow-hidden transition-opacity duration-150 data-ending-style:opacity-0 data-starting-style:opacity-0", children: [
63
+ showCloseButton && /* @__PURE__ */ jsxs(
64
+ DialogClose,
65
+ {
66
+ className: "pointer-events-auto fixed top-[15px] left-5 z-50",
67
+ "aria-label": "Close",
68
+ children: [
69
+ /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Close" }),
70
+ /* @__PURE__ */ jsx("span", { className: "before:bg-tint-700-reversed relative block before:absolute before:-inset-1.5 before:rounded-full before:backdrop-blur-sm", children: /* @__PURE__ */ jsx("span", { className: "bg-primary-foreground text-background relative z-10 flex size-10 items-center justify-center rounded-full", children: /* @__PURE__ */ jsx(XClose, { className: "size-[18px]" }) }) })
71
+ ]
72
+ }
73
+ ),
74
+ /* @__PURE__ */ jsx(
75
+ "div",
76
+ {
77
+ className: cn(
78
+ "bg-background pointer-events-auto fixed top-1/2 left-1/2 flex h-full max-h-[calc(100%-2rem)] w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 flex-col rounded-xl shadow-2xl transition-all",
79
+ {
80
+ "group-data-ending-style/popup:translate-y-0 group-data-ending-style/popup:scale-[0.98] group-data-ending-style/popup:opacity-0 group-data-starting-style/popup:translate-y-0 group-data-starting-style/popup:scale-[0.98] group-data-starting-style/popup:opacity-0": !bottom,
81
+ "group-data-open/popup:slide-in-from-bottom group-data-closed/popup:slide-out-to-bottom group-data-starting-style/popup-scale-100 group-data-ending-style/popup-scale-100 group-data-open/popup:animate-in group-data-closed/popup:animate-out top-auto bottom-0 h-full translate-y-0 rounded-b-none group-data-closed/popup:duration-200 group-data-closed/popup:ease-[cubic-bezier(1,0,0.72,0.32)] group-data-ending-style/popup:translate-y-full group-data-open/popup:duration-500 group-data-open/popup:ease-[cubic-bezier(0.32,0.72,0,1)] group-data-starting-style/popup:translate-y-full": bottom
82
+ },
83
+ className
84
+ ),
85
+ ...props,
86
+ children
87
+ }
88
+ )
89
+ ] })
90
+ ] });
91
+ }
92
+ function DialogHeader({ className, ...props }) {
93
+ return /* @__PURE__ */ jsx("div", { className: cn("flex flex-col gap-2 text-center sm:text-left", className), ...props });
94
+ }
95
+ function DialogFooter({ className, ...props }) {
96
+ return /* @__PURE__ */ jsx("div", { className: cn("flex flex-col-reverse gap-2 sm:flex-row", className), ...props });
97
+ }
98
+ function DialogTitle({ className, ...props }) {
99
+ return /* @__PURE__ */ jsx(
100
+ Dialog.Title,
101
+ {
102
+ className: cn("text-lg leading-none font-semibold", className),
103
+ ...props
104
+ }
105
+ );
106
+ }
107
+ function DialogDescription({
108
+ className,
109
+ ...props
110
+ }) {
111
+ return /* @__PURE__ */ jsx(
112
+ Dialog.Description,
113
+ {
114
+ className: cn("text-muted-foreground text-sm", className),
115
+ ...props
116
+ }
117
+ );
118
+ }
119
+ function DialogBody({ className, children, ...props }) {
120
+ return /* @__PURE__ */ jsx(
121
+ "div",
122
+ {
123
+ className: cn("flex shrink-0 grow basis-0 flex-col items-start self-stretch", className),
124
+ ...props,
125
+ children: /* @__PURE__ */ jsx("div", { className: "flex shrink-0 grow basis-0 flex-col items-start gap-10 self-stretch overflow-auto p-4", children })
126
+ }
127
+ );
128
+ }
129
+
130
+ export { DialogRoot as Dialog, DialogBackdrop, DialogBody, DialogClose, DialogDescription, DialogFooter, DialogHeader, DialogPopup, DialogPortal, DialogTitle, DialogTrigger, DialogViewport };
131
+ //# sourceMappingURL=dialog.js.map
2
132
  //# sourceMappingURL=dialog.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/lib/utils.ts","../src/components/dialog/dialog.tsx"],"names":["cn","inputs","twMerge","clsx","Dialog","props","jsx","DialogTrigger","DialogPortal","DialogClose","DialogOverlay","className","DialogContent","children","bottom","showCloseButton","jsxs","XClose","DialogHeader","DialogFooter","DialogTitle","DialogDescription"],"mappings":"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","file":"dialog.js","sourcesContent":["import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","import * as DialogPrimitive from \"@radix-ui/react-dialog\";\nimport type * as React from \"react\";\n\nimport { XClose } from \"@untitledui/icons\";\nimport { cn } from \"../../lib/utils\";\n\nfunction Dialog({ ...props }: React.ComponentProps<typeof DialogPrimitive.Root>) {\n return <DialogPrimitive.Root data-slot=\"dialog\" {...props} />;\n}\n\nfunction DialogTrigger({ ...props }: React.ComponentProps<typeof DialogPrimitive.Trigger>) {\n return <DialogPrimitive.Trigger data-slot=\"dialog-trigger\" {...props} />;\n}\n\nfunction DialogPortal({ ...props }: React.ComponentProps<typeof DialogPrimitive.Portal>) {\n return <DialogPrimitive.Portal data-slot=\"dialog-portal\" {...props} />;\n}\n\nfunction DialogClose({ ...props }: React.ComponentProps<typeof DialogPrimitive.Close>) {\n return <DialogPrimitive.Close data-slot=\"dialog-close\" {...props} />;\n}\n\nfunction DialogOverlay({\n className,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Overlay>) {\n return (\n <DialogPrimitive.Overlay\n data-slot=\"dialog-overlay\"\n className={cn(\n \"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-[rgb(0_0_32_/_0.01)] backdrop-blur-sm dark:bg-[rgb(255_255_255_/_0.01)]\",\n // \"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction DialogContent({\n className,\n children,\n bottom = false,\n showCloseButton = true,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Content> & {\n bottom?: boolean;\n showCloseButton?: boolean;\n}) {\n return (\n <DialogPortal data-slot=\"dialog-portal\">\n <DialogOverlay />\n {showCloseButton && (\n <DialogPrimitive.Close data-slot=\"dialog-close\" asChild>\n {/* <Button\n className=\"fixed top-[15px] left-5 z-50 overflow-visible before:absolute before:top-3 before:left-3 before:z-50 before:flex before:size-[100px] before:bg-red-600 before:content-['']\"\n collapsed\n leading={<XClose className=\"size-[18px]\" />}\n pill\n theme=\"brand\"\n variant=\"primary\"\n /> */}\n <button\n type=\"button\"\n className=\"before:bg-tint-700-reversed fixed top-[15px] left-5 z-50 overflow-visible before:absolute before:-inset-1.5 before:z-40 before:flex before:size-[calc(100%+12px)] before:rounded-full before:backdrop-blur-sm before:content-['']\"\n >\n <div className=\"bg-foreground text-background relative z-50 flex size-10 items-center justify-center rounded-full\">\n <XClose className=\"size-[18px]\" />\n </div>\n </button>\n </DialogPrimitive.Close>\n )}\n <DialogPrimitive.Content\n data-slot=\"dialog-content\"\n className={cn(\n \"bg-surface-bg-default data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] rounded-xl shadow-2xl duration-200 sm:max-w-lg\",\n {\n \"data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom m:max-h-full z-50 h-full max-h-full w-full max-w-full overflow-auto data-[state=closed]:duration-200 data-[state=closed]:ease-[cubic-bezier(1,0,0.72,0.32)] data-[state=open]:duration-500 data-[state=open]:ease-[cubic-bezier(0.32,0.72,0,1)] sm:max-w-full\":\n bottom,\n },\n className,\n )}\n {...props}\n >\n {children}\n </DialogPrimitive.Content>\n </DialogPortal>\n );\n}\n\nfunction DialogHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"dialog-header\"\n className={cn(\"flex flex-col gap-2 text-center sm:text-left\", className)}\n {...props}\n />\n );\n}\n\nfunction DialogFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"dialog-footer\"\n className={cn(\"flex flex-col-reverse gap-2 sm:flex-row sm:justify-end\", className)}\n {...props}\n />\n );\n}\n\nfunction DialogTitle({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Title>) {\n return (\n <DialogPrimitive.Title\n data-slot=\"dialog-title\"\n className={cn(\"text-lg leading-none font-semibold\", className)}\n {...props}\n />\n );\n}\n\nfunction DialogDescription({\n className,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Description>) {\n return (\n <DialogPrimitive.Description\n data-slot=\"dialog-description\"\n className={cn(\"text-muted-foreground text-sm\", className)}\n {...props}\n />\n );\n}\n\nexport {\n Dialog,\n DialogClose,\n DialogContent,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogOverlay,\n DialogPortal,\n DialogTitle,\n DialogTrigger,\n};\n"]}
1
+ {"version":3,"sources":["../src/lib/utils.ts","../src/components/dialog/dialog.tsx"],"names":["DialogPrimitive"],"mappings":"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","file":"dialog.js","sourcesContent":["import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","\"use client\";\n\nimport { Dialog as DialogPrimitive } from \"@base-ui/react\";\nimport { XClose } from \"@untitledui/icons\";\nimport { cn } from \"../../lib/utils\";\n\n/* ---------------------------------------------\n * Root\n * --------------------------------------------- */\n\nfunction DialogRoot(props: React.ComponentProps<typeof DialogPrimitive.Root>) {\n return <DialogPrimitive.Root {...props} />;\n}\n\n/* ---------------------------------------------\n * Portal\n * --------------------------------------------- */\n\nfunction DialogPortal(props: React.ComponentProps<typeof DialogPrimitive.Portal>) {\n return <DialogPrimitive.Portal {...props} />;\n}\n\n/* ---------------------------------------------\n * Trigger\n * --------------------------------------------- */\n\nfunction DialogTrigger(props: React.ComponentProps<typeof DialogPrimitive.Trigger>) {\n return <DialogPrimitive.Trigger {...props} />;\n}\n\n/* ---------------------------------------------\n * Close\n * --------------------------------------------- */\n\nfunction DialogClose(props: React.ComponentProps<typeof DialogPrimitive.Close>) {\n return <DialogPrimitive.Close {...props} />;\n}\n\n/* ---------------------------------------------\n * Overlay (Backdrop)\n * --------------------------------------------- */\n\nfunction DialogBackdrop({\n className,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Backdrop>) {\n return (\n <DialogPrimitive.Backdrop\n className={cn(\n \"fixed inset-0 min-h-dvh bg-[rgb(0_0_32/0.01)] opacity-0 backdrop-blur-sm transition-[opacity,backdrop-filter] duration-150 data-ending-style:opacity-0 data-starting-style:opacity-0 supports-[-webkit-touch-callout:none]:absolute dark:bg-[rgb(255_255_255/0.01)] dark:opacity-70\",\n \"data-closed:opacity-0 data-open:opacity-100\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction DialogViewport({\n className,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Viewport>) {\n return (\n <DialogPrimitive.Viewport\n className={cn(\n \"fixed inset-0 flex items-center justify-center overflow-hidden py-6 [@media(min-height:600px)]:pt-8 [@media(min-height:600px)]:pb-12\",\n className,\n )}\n {...props}\n />\n );\n}\n\n/* ---------------------------------------------\n * Content (Popup)\n * --------------------------------------------- */\n\nfunction DialogPopup({\n className,\n children,\n bottom = false,\n showCloseButton = true,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Popup> & {\n bottom?: boolean;\n showCloseButton?: boolean;\n}) {\n return (\n <DialogPrimitive.Portal>\n <DialogBackdrop />\n <DialogPrimitive.Popup className=\"group/popup pointer-events-none flex h-full max-h-full min-h-0 w-full max-w-full justify-center overflow-hidden transition-opacity duration-150 data-ending-style:opacity-0 data-starting-style:opacity-0\">\n {showCloseButton && (\n <DialogClose\n className=\"pointer-events-auto fixed top-[15px] left-5 z-50\"\n aria-label=\"Close\"\n >\n <span className=\"sr-only\">Close</span>\n <span className=\"before:bg-tint-700-reversed relative block before:absolute before:-inset-1.5 before:rounded-full before:backdrop-blur-sm\">\n <span className=\"bg-primary-foreground text-background relative z-10 flex size-10 items-center justify-center rounded-full\">\n <XClose className=\"size-[18px]\" />\n </span>\n </span>\n </DialogClose>\n )}\n <div\n className={cn(\n \"bg-background pointer-events-auto fixed top-1/2 left-1/2 flex h-full max-h-[calc(100%-2rem)] w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 flex-col rounded-xl shadow-2xl transition-all\",\n {\n \"group-data-ending-style/popup:translate-y-0 group-data-ending-style/popup:scale-[0.98] group-data-ending-style/popup:opacity-0 group-data-starting-style/popup:translate-y-0 group-data-starting-style/popup:scale-[0.98] group-data-starting-style/popup:opacity-0\":\n !bottom,\n \"group-data-open/popup:slide-in-from-bottom group-data-closed/popup:slide-out-to-bottom group-data-starting-style/popup-scale-100 group-data-ending-style/popup-scale-100 group-data-open/popup:animate-in group-data-closed/popup:animate-out top-auto bottom-0 h-full translate-y-0 rounded-b-none group-data-closed/popup:duration-200 group-data-closed/popup:ease-[cubic-bezier(1,0,0.72,0.32)] group-data-ending-style/popup:translate-y-full group-data-open/popup:duration-500 group-data-open/popup:ease-[cubic-bezier(0.32,0.72,0,1)] group-data-starting-style/popup:translate-y-full\":\n bottom,\n },\n className,\n )}\n {...props}\n >\n {children}\n </div>\n </DialogPrimitive.Popup>\n </DialogPrimitive.Portal>\n );\n}\n\n/* ---------------------------------------------\n * Header / Footer\n * --------------------------------------------- */\n\nfunction DialogHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div className={cn(\"flex flex-col gap-2 text-center sm:text-left\", className)} {...props} />\n );\n}\n\nfunction DialogFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return <div className={cn(\"flex flex-col-reverse gap-2 sm:flex-row\", className)} {...props} />;\n}\n\n/* ---------------------------------------------\n * Title / Description\n * --------------------------------------------- */\n\nfunction DialogTitle({ className, ...props }: React.ComponentProps<typeof DialogPrimitive.Title>) {\n return (\n <DialogPrimitive.Title\n className={cn(\"text-lg leading-none font-semibold\", className)}\n {...props}\n />\n );\n}\n\nfunction DialogDescription({\n className,\n ...props\n}: React.ComponentProps<typeof DialogPrimitive.Description>) {\n return (\n <DialogPrimitive.Description\n className={cn(\"text-muted-foreground text-sm\", className)}\n {...props}\n />\n );\n}\n\nfunction DialogBody({ className, children, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n className={cn(\"flex shrink-0 grow basis-0 flex-col items-start self-stretch\", className)}\n {...props}\n >\n <div className=\"flex shrink-0 grow basis-0 flex-col items-start gap-10 self-stretch overflow-auto p-4\">\n {children}\n </div>\n </div>\n );\n}\n/* ---------------------------------------------\n * Exports (preserve your public API)\n * --------------------------------------------- */\n\nexport {\n DialogRoot as Dialog,\n DialogBackdrop,\n DialogBody,\n DialogClose,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogPopup,\n DialogPortal,\n DialogTitle,\n DialogTrigger,\n DialogViewport,\n};\n"]}
@@ -1,2 +1,229 @@
1
- 'use strict';var e=require('@radix-ui/react-dropdown-menu'),icons=require('@untitledui/icons'),clsx=require('clsx'),tailwindMerge=require('tailwind-merge'),jsxRuntime=require('react/jsx-runtime');function _interopNamespace(e){if(e&&e.__esModule)return e;var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var e__namespace=/*#__PURE__*/_interopNamespace(e);function i(...t){return tailwindMerge.twMerge(clsx.clsx(t))}function P({...t}){return jsxRuntime.jsx(e__namespace.Root,{"data-slot":"dropdown-menu",...t})}function b({...t}){return jsxRuntime.jsx(e__namespace.Portal,{"data-slot":"dropdown-menu-portal",...t})}function M({...t}){return jsxRuntime.jsx(e__namespace.Trigger,{"data-slot":"dropdown-menu-trigger",...t})}function D({className:t,sideOffset:n=4,...r}){return jsxRuntime.jsx(e__namespace.Portal,{children:jsxRuntime.jsx(e__namespace.Content,{"data-slot":"dropdown-menu-content",sideOffset:n,className:i("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 border-border-border-edge-light z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-2xl border p-1.5 shadow-xl",t),...r})})}function x({...t}){return jsxRuntime.jsx(e__namespace.Group,{"data-slot":"dropdown-menu-group",...t})}function h({className:t,inset:n,variant:r="default",...a}){return jsxRuntime.jsx(e__namespace.Item,{"data-slot":"dropdown-menu-item","data-inset":n,"data-variant":r,className:i("focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:text-destructive! [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-1.5 rounded-xs px-2 py-1.5 text-sm font-medium outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",t),...a})}function C({className:t,children:n,checked:r,...a}){return jsxRuntime.jsxs(e__namespace.CheckboxItem,{"data-slot":"dropdown-menu-checkbox-item",className:i("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-1.5 rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",t),checked:r,...a,children:[jsxRuntime.jsx("span",{className:"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center",children:jsxRuntime.jsx(e__namespace.ItemIndicator,{children:jsxRuntime.jsx(icons.CheckCircle,{className:"size-4"})})}),n]})}function y({...t}){return jsxRuntime.jsx(e__namespace.RadioGroup,{"data-slot":"dropdown-menu-radio-group",...t})}function R({className:t,children:n,...r}){return jsxRuntime.jsxs(e__namespace.RadioItem,{"data-slot":"dropdown-menu-radio-item",className:i("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-1.5 rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",t),...r,children:[jsxRuntime.jsx("span",{className:"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center",children:jsxRuntime.jsx(e__namespace.ItemIndicator,{children:jsxRuntime.jsx(icons.Circle,{className:"size-2 fill-current"})})}),n]})}function z({className:t,inset:n,...r}){return jsxRuntime.jsx(e__namespace.Label,{"data-slot":"dropdown-menu-label","data-inset":n,className:i("px-2 py-1.5 text-sm font-medium data-inset:pl-8",t),...r})}function I({className:t,...n}){return jsxRuntime.jsx(e__namespace.Separator,{"data-slot":"dropdown-menu-separator",className:i("bg-border -mx-1 my-1 h-px",t),...n})}function N({className:t,...n}){return jsxRuntime.jsx("span",{"data-slot":"dropdown-menu-shortcut",className:i("text-muted-foreground ml-auto text-xs tracking-widest",t),...n})}function S({...t}){return jsxRuntime.jsx(e__namespace.Sub,{"data-slot":"dropdown-menu-sub",...t})}function _({className:t,inset:n,children:r,...a}){return jsxRuntime.jsxs(e__namespace.SubTrigger,{"data-slot":"dropdown-menu-sub-trigger","data-inset":n,className:i("focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground flex cursor-default items-center gap-1.5 rounded-xs px-2 py-1.5 text-sm outline-hidden select-none data-inset:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",t),...a,children:[r,jsxRuntime.jsx(icons.ChevronRight,{className:"ml-auto size-4"})]})}function k({className:t,...n}){return jsxRuntime.jsx(e__namespace.SubContent,{"data-slot":"dropdown-menu-sub-content",className:i("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-2xl border p-1 shadow-lg",t),...n})}exports.DropdownMenu=P;exports.DropdownMenuCheckboxItem=C;exports.DropdownMenuContent=D;exports.DropdownMenuGroup=x;exports.DropdownMenuItem=h;exports.DropdownMenuLabel=z;exports.DropdownMenuPortal=b;exports.DropdownMenuRadioGroup=y;exports.DropdownMenuRadioItem=R;exports.DropdownMenuSeparator=I;exports.DropdownMenuShortcut=N;exports.DropdownMenuSub=S;exports.DropdownMenuSubContent=k;exports.DropdownMenuSubTrigger=_;exports.DropdownMenuTrigger=M;//# sourceMappingURL=dropdown-menu.cjs.map
1
+ 'use strict';
2
+
3
+ var menu = require('@base-ui/react/menu');
4
+ var icons = require('@untitledui/icons');
5
+ var clsx = require('clsx');
6
+ var tailwindMerge = require('tailwind-merge');
7
+ var jsxRuntime = require('react/jsx-runtime');
8
+
9
+ // src/components/dropdown-menu/dropdown-menu.tsx
10
+ function cn(...inputs) {
11
+ return tailwindMerge.twMerge(clsx.clsx(inputs));
12
+ }
13
+ function DropdownMenu({ ...props }) {
14
+ return /* @__PURE__ */ jsxRuntime.jsx(menu.Menu.Root, { "data-slot": "dropdown-menu", ...props });
15
+ }
16
+ function DropdownMenuPortal({ ...props }) {
17
+ return /* @__PURE__ */ jsxRuntime.jsx(menu.Menu.Portal, { "data-slot": "dropdown-menu-portal", ...props });
18
+ }
19
+ function DropdownMenuTrigger({ ...props }) {
20
+ return /* @__PURE__ */ jsxRuntime.jsx(menu.Menu.Trigger, { "data-slot": "dropdown-menu-trigger", ...props });
21
+ }
22
+ function DropdownMenuContent({
23
+ className,
24
+ sideOffset = 4,
25
+ positionerProps,
26
+ children,
27
+ ...props
28
+ }) {
29
+ return /* @__PURE__ */ jsxRuntime.jsx(menu.Menu.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(menu.Menu.Positioner, { sideOffset, ...positionerProps, children: /* @__PURE__ */ jsxRuntime.jsx(
30
+ menu.Menu.Popup,
31
+ {
32
+ "data-slot": "dropdown-menu-content",
33
+ className: cn(
34
+ "bg-popover text-popover-foreground data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-open:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 border-border-border-edge-light z-50 max-h-(--available-height) min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-2xl border p-1.5 shadow-xl",
35
+ className
36
+ ),
37
+ ...props,
38
+ children
39
+ }
40
+ ) }) });
41
+ }
42
+ function DropdownMenuGroup({ ...props }) {
43
+ return /* @__PURE__ */ jsxRuntime.jsx(menu.Menu.Group, { "data-slot": "dropdown-menu-group", ...props });
44
+ }
45
+ function DropdownMenuItem({
46
+ className,
47
+ inset,
48
+ variant = "default",
49
+ ...props
50
+ }) {
51
+ return /* @__PURE__ */ jsxRuntime.jsx(
52
+ menu.Menu.Item,
53
+ {
54
+ "data-slot": "dropdown-menu-item",
55
+ "data-inset": inset,
56
+ "data-variant": variant,
57
+ className: cn(
58
+ "data-highlighted:bg-accent data-highlighted:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:data-highlighted:bg-destructive/10 dark:data-[variant=destructive]:data-highlighted:bg-destructive/20 data-[variant=destructive]:data-highlighted:text-destructive data-[variant=destructive]:*:[svg]:text-destructive! [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-1.5 rounded-xs px-2 py-1.5 text-sm font-medium outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
59
+ className
60
+ ),
61
+ ...props
62
+ }
63
+ );
64
+ }
65
+ function DropdownMenuCheckboxItem({
66
+ className,
67
+ children,
68
+ checked,
69
+ ...props
70
+ }) {
71
+ return /* @__PURE__ */ jsxRuntime.jsxs(
72
+ menu.Menu.CheckboxItem,
73
+ {
74
+ "data-slot": "dropdown-menu-checkbox-item",
75
+ className: cn(
76
+ "data-highlighted:bg-accent data-highlighted:text-accent-foreground relative flex cursor-default items-center gap-1.5 rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
77
+ className
78
+ ),
79
+ checked,
80
+ ...props,
81
+ children: [
82
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(
83
+ menu.Menu.CheckboxItemIndicator,
84
+ {
85
+ keepMounted: true,
86
+ className: "transition data-checked:scale-100 data-checked:opacity-100 data-unchecked:scale-75 data-unchecked:opacity-0",
87
+ children: /* @__PURE__ */ jsxRuntime.jsx(icons.CheckCircle, { className: "size-4" })
88
+ }
89
+ ) }),
90
+ children
91
+ ]
92
+ }
93
+ );
94
+ }
95
+ function DropdownMenuRadioGroup({ ...props }) {
96
+ return /* @__PURE__ */ jsxRuntime.jsx(menu.Menu.RadioGroup, { "data-slot": "dropdown-menu-radio-group", ...props });
97
+ }
98
+ function DropdownMenuRadioItem({
99
+ className,
100
+ children,
101
+ ...props
102
+ }) {
103
+ return /* @__PURE__ */ jsxRuntime.jsxs(
104
+ menu.Menu.RadioItem,
105
+ {
106
+ "data-slot": "dropdown-menu-radio-item",
107
+ className: cn(
108
+ "data-highlighted:bg-accent data-highlighted:text-accent-foreground relative flex cursor-default items-center gap-1.5 rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
109
+ className
110
+ ),
111
+ ...props,
112
+ children: [
113
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(
114
+ menu.Menu.RadioItemIndicator,
115
+ {
116
+ keepMounted: true,
117
+ className: "transition data-checked:scale-100 data-checked:opacity-100 data-unchecked:scale-75 data-unchecked:opacity-0",
118
+ children: /* @__PURE__ */ jsxRuntime.jsx(icons.Circle, { className: "size-2 fill-current" })
119
+ }
120
+ ) }),
121
+ children
122
+ ]
123
+ }
124
+ );
125
+ }
126
+ function DropdownMenuLabel({
127
+ className,
128
+ inset,
129
+ children,
130
+ ...props
131
+ }) {
132
+ return /* @__PURE__ */ jsxRuntime.jsx(
133
+ menu.Menu.GroupLabel,
134
+ {
135
+ "data-slot": "dropdown-menu-label",
136
+ "data-inset": inset,
137
+ className: cn("px-2 py-1.5 text-sm font-medium data-inset:pl-8", className),
138
+ ...props,
139
+ children
140
+ }
141
+ );
142
+ }
143
+ function DropdownMenuSeparator({
144
+ className,
145
+ ...props
146
+ }) {
147
+ return /* @__PURE__ */ jsxRuntime.jsx(
148
+ menu.Menu.Separator,
149
+ {
150
+ "data-slot": "dropdown-menu-separator",
151
+ className: cn("bg-border -mx-1 my-1 h-px", className),
152
+ ...props
153
+ }
154
+ );
155
+ }
156
+ function DropdownMenuShortcut({ className, ...props }) {
157
+ return /* @__PURE__ */ jsxRuntime.jsx(
158
+ "span",
159
+ {
160
+ "data-slot": "dropdown-menu-shortcut",
161
+ className: cn("text-muted-foreground ml-auto text-xs tracking-widest", className),
162
+ ...props
163
+ }
164
+ );
165
+ }
166
+ function DropdownMenuSub({ ...props }) {
167
+ return /* @__PURE__ */ jsxRuntime.jsx(menu.Menu.SubmenuRoot, { "data-slot": "dropdown-menu-sub", ...props });
168
+ }
169
+ function DropdownMenuSubTrigger({
170
+ className,
171
+ inset,
172
+ children,
173
+ ...props
174
+ }) {
175
+ return /* @__PURE__ */ jsxRuntime.jsxs(
176
+ menu.Menu.SubmenuTrigger,
177
+ {
178
+ "data-slot": "dropdown-menu-sub-trigger",
179
+ "data-inset": inset,
180
+ className: cn(
181
+ "data-highlighted:bg-accent data-highlighted:text-accent-foreground data-popup-open:bg-accent data-popup-open:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground flex cursor-default items-center gap-1.5 rounded-xs px-2 py-1.5 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
182
+ className
183
+ ),
184
+ ...props,
185
+ children: [
186
+ children,
187
+ /* @__PURE__ */ jsxRuntime.jsx(icons.ChevronRight, { className: "ml-auto size-4" })
188
+ ]
189
+ }
190
+ );
191
+ }
192
+ function DropdownMenuSubContent({
193
+ className,
194
+ sideOffset = 4,
195
+ positionerProps,
196
+ children,
197
+ ...props
198
+ }) {
199
+ return /* @__PURE__ */ jsxRuntime.jsx(menu.Menu.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(menu.Menu.Positioner, { sideOffset, ...positionerProps, children: /* @__PURE__ */ jsxRuntime.jsx(
200
+ menu.Menu.Popup,
201
+ {
202
+ "data-slot": "dropdown-menu-sub-content",
203
+ className: cn(
204
+ "bg-popover text-popover-foreground data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-open:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-32 origin-(--transform-origin) overflow-hidden rounded-2xl border p-1 shadow-lg",
205
+ className
206
+ ),
207
+ ...props,
208
+ children
209
+ }
210
+ ) }) });
211
+ }
212
+
213
+ exports.DropdownMenu = DropdownMenu;
214
+ exports.DropdownMenuCheckboxItem = DropdownMenuCheckboxItem;
215
+ exports.DropdownMenuContent = DropdownMenuContent;
216
+ exports.DropdownMenuGroup = DropdownMenuGroup;
217
+ exports.DropdownMenuItem = DropdownMenuItem;
218
+ exports.DropdownMenuLabel = DropdownMenuLabel;
219
+ exports.DropdownMenuPortal = DropdownMenuPortal;
220
+ exports.DropdownMenuRadioGroup = DropdownMenuRadioGroup;
221
+ exports.DropdownMenuRadioItem = DropdownMenuRadioItem;
222
+ exports.DropdownMenuSeparator = DropdownMenuSeparator;
223
+ exports.DropdownMenuShortcut = DropdownMenuShortcut;
224
+ exports.DropdownMenuSub = DropdownMenuSub;
225
+ exports.DropdownMenuSubContent = DropdownMenuSubContent;
226
+ exports.DropdownMenuSubTrigger = DropdownMenuSubTrigger;
227
+ exports.DropdownMenuTrigger = DropdownMenuTrigger;
228
+ //# sourceMappingURL=dropdown-menu.cjs.map
2
229
  //# sourceMappingURL=dropdown-menu.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/lib/utils.ts","../src/components/dropdown-menu/dropdown-menu.tsx"],"names":["cn","inputs","twMerge","clsx","DropdownMenu","props","jsx","e","DropdownMenuPortal","DropdownMenuTrigger","DropdownMenuContent","className","sideOffset","DropdownMenuGroup","DropdownMenuItem","inset","variant","DropdownMenuCheckboxItem","children","checked","jsxs","CheckCircle","DropdownMenuRadioGroup","DropdownMenuRadioItem","Circle","DropdownMenuLabel","DropdownMenuSeparator","DropdownMenuShortcut","DropdownMenuSub","DropdownMenuSubTrigger","ChevronRight","DropdownMenuSubContent"],"mappings":"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","file":"dropdown-menu.cjs","sourcesContent":["import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","import * as DropdownMenuPrimitive from \"@radix-ui/react-dropdown-menu\";\nimport type * as React from \"react\";\n\nimport { CheckCircle, ChevronRight, Circle } from \"@untitledui/icons\";\nimport { cn } from \"../../lib/utils\";\n\nfunction DropdownMenu({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Root>) {\n return <DropdownMenuPrimitive.Root data-slot=\"dropdown-menu\" {...props} />;\n}\n\nfunction DropdownMenuPortal({\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Portal>) {\n return <DropdownMenuPrimitive.Portal data-slot=\"dropdown-menu-portal\" {...props} />;\n}\n\nfunction DropdownMenuTrigger({\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Trigger>) {\n return <DropdownMenuPrimitive.Trigger data-slot=\"dropdown-menu-trigger\" {...props} />;\n}\n\nfunction DropdownMenuContent({\n className,\n sideOffset = 4,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Content>) {\n return (\n <DropdownMenuPrimitive.Portal>\n <DropdownMenuPrimitive.Content\n data-slot=\"dropdown-menu-content\"\n sideOffset={sideOffset}\n className={cn(\n \"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 border-border-border-edge-light z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-2xl border p-1.5 shadow-xl\",\n className,\n )}\n {...props}\n />\n </DropdownMenuPrimitive.Portal>\n );\n}\n\nfunction DropdownMenuGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Group>) {\n return <DropdownMenuPrimitive.Group data-slot=\"dropdown-menu-group\" {...props} />;\n}\n\nfunction DropdownMenuItem({\n className,\n inset,\n variant = \"default\",\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Item> & {\n inset?: boolean;\n variant?: \"default\" | \"destructive\";\n}) {\n return (\n <DropdownMenuPrimitive.Item\n data-slot=\"dropdown-menu-item\"\n data-inset={inset}\n data-variant={variant}\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:text-destructive! [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-1.5 rounded-xs px-2 py-1.5 text-sm font-medium outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction DropdownMenuCheckboxItem({\n className,\n children,\n checked,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem>) {\n return (\n <DropdownMenuPrimitive.CheckboxItem\n data-slot=\"dropdown-menu-checkbox-item\"\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-1.5 rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n checked={checked}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <CheckCircle className=\"size-4\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.CheckboxItem>\n );\n}\n\nfunction DropdownMenuRadioGroup({\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.RadioGroup>) {\n return <DropdownMenuPrimitive.RadioGroup data-slot=\"dropdown-menu-radio-group\" {...props} />;\n}\n\nfunction DropdownMenuRadioItem({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.RadioItem>) {\n return (\n <DropdownMenuPrimitive.RadioItem\n data-slot=\"dropdown-menu-radio-item\"\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-1.5 rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <Circle className=\"size-2 fill-current\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.RadioItem>\n );\n}\n\nfunction DropdownMenuLabel({\n className,\n inset,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Label> & {\n inset?: boolean;\n}) {\n return (\n <DropdownMenuPrimitive.Label\n data-slot=\"dropdown-menu-label\"\n data-inset={inset}\n className={cn(\"px-2 py-1.5 text-sm font-medium data-inset:pl-8\", className)}\n {...props}\n />\n );\n}\n\nfunction DropdownMenuSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.Separator>) {\n return (\n <DropdownMenuPrimitive.Separator\n data-slot=\"dropdown-menu-separator\"\n className={cn(\"bg-border -mx-1 my-1 h-px\", className)}\n {...props}\n />\n );\n}\n\nfunction DropdownMenuShortcut({ className, ...props }: React.ComponentProps<\"span\">) {\n return (\n <span\n data-slot=\"dropdown-menu-shortcut\"\n className={cn(\"text-muted-foreground ml-auto text-xs tracking-widest\", className)}\n {...props}\n />\n );\n}\n\nfunction DropdownMenuSub({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Sub>) {\n return <DropdownMenuPrimitive.Sub data-slot=\"dropdown-menu-sub\" {...props} />;\n}\n\nfunction DropdownMenuSubTrigger({\n className,\n inset,\n children,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.SubTrigger> & {\n inset?: boolean;\n}) {\n return (\n <DropdownMenuPrimitive.SubTrigger\n data-slot=\"dropdown-menu-sub-trigger\"\n data-inset={inset}\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground flex cursor-default items-center gap-1.5 rounded-xs px-2 py-1.5 text-sm outline-hidden select-none data-inset:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRight className=\"ml-auto size-4\" />\n </DropdownMenuPrimitive.SubTrigger>\n );\n}\n\nfunction DropdownMenuSubContent({\n className,\n ...props\n}: React.ComponentProps<typeof DropdownMenuPrimitive.SubContent>) {\n return (\n <DropdownMenuPrimitive.SubContent\n data-slot=\"dropdown-menu-sub-content\"\n className={cn(\n \"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-2xl border p-1 shadow-lg\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n DropdownMenu,\n DropdownMenuCheckboxItem,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuPortal,\n DropdownMenuRadioGroup,\n DropdownMenuRadioItem,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuSub,\n DropdownMenuSubContent,\n DropdownMenuSubTrigger,\n DropdownMenuTrigger,\n};\n"]}
1
+ {"version":3,"sources":["../src/lib/utils.ts","../src/components/dropdown-menu/dropdown-menu.tsx"],"names":["twMerge","clsx","Menu","jsx","jsxs","CheckCircle","Circle","ChevronRight"],"mappings":"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","file":"dropdown-menu.cjs","sourcesContent":["import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","import * as React from \"react\";\n\nimport { Menu } from \"@base-ui/react/menu\";\nimport { CheckCircle, ChevronRight, Circle } from \"@untitledui/icons\";\nimport { cn } from \"../../lib/utils\";\n\nfunction DropdownMenu({ ...props }: React.ComponentProps<typeof Menu.Root>) {\n return <Menu.Root data-slot=\"dropdown-menu\" {...props} />;\n}\n\nfunction DropdownMenuPortal({ ...props }: React.ComponentProps<typeof Menu.Portal>) {\n return <Menu.Portal data-slot=\"dropdown-menu-portal\" {...props} />;\n}\n\nfunction DropdownMenuTrigger({ ...props }: React.ComponentProps<typeof Menu.Trigger>) {\n return <Menu.Trigger data-slot=\"dropdown-menu-trigger\" {...props} />;\n}\n\nfunction DropdownMenuContent({\n className,\n sideOffset = 4,\n positionerProps,\n children,\n ...props\n}: React.ComponentProps<typeof Menu.Popup> & {\n sideOffset?: number;\n positionerProps?: Omit<React.ComponentProps<typeof Menu.Positioner>, \"children\">;\n}) {\n return (\n <Menu.Portal>\n <Menu.Positioner sideOffset={sideOffset} {...positionerProps}>\n <Menu.Popup\n data-slot=\"dropdown-menu-content\"\n className={cn(\n \"bg-popover text-popover-foreground data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-open:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 border-border-border-edge-light z-50 max-h-(--available-height) min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-2xl border p-1.5 shadow-xl\",\n className,\n )}\n {...props}\n >\n {children}\n </Menu.Popup>\n </Menu.Positioner>\n </Menu.Portal>\n );\n}\n\nfunction DropdownMenuGroup({ ...props }: React.ComponentProps<typeof Menu.Group>) {\n return <Menu.Group data-slot=\"dropdown-menu-group\" {...props} />;\n}\n\nfunction DropdownMenuItem({\n className,\n inset,\n variant = \"default\",\n ...props\n}: React.ComponentProps<typeof Menu.Item> & {\n inset?: boolean;\n variant?: \"default\" | \"destructive\";\n}) {\n return (\n <Menu.Item\n data-slot=\"dropdown-menu-item\"\n data-inset={inset}\n data-variant={variant}\n className={cn(\n \"data-highlighted:bg-accent data-highlighted:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:data-highlighted:bg-destructive/10 dark:data-[variant=destructive]:data-highlighted:bg-destructive/20 data-[variant=destructive]:data-highlighted:text-destructive data-[variant=destructive]:*:[svg]:text-destructive! [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-1.5 rounded-xs px-2 py-1.5 text-sm font-medium outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction DropdownMenuCheckboxItem({\n className,\n children,\n checked,\n ...props\n}: React.ComponentProps<typeof Menu.CheckboxItem>) {\n return (\n <Menu.CheckboxItem\n data-slot=\"dropdown-menu-checkbox-item\"\n className={cn(\n \"data-highlighted:bg-accent data-highlighted:text-accent-foreground relative flex cursor-default items-center gap-1.5 rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n checked={checked}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center\">\n <Menu.CheckboxItemIndicator\n keepMounted\n className=\"transition data-checked:scale-100 data-checked:opacity-100 data-unchecked:scale-75 data-unchecked:opacity-0\"\n >\n <CheckCircle className=\"size-4\" />\n </Menu.CheckboxItemIndicator>\n </span>\n {children}\n </Menu.CheckboxItem>\n );\n}\n\nfunction DropdownMenuRadioGroup({ ...props }: React.ComponentProps<typeof Menu.RadioGroup>) {\n return <Menu.RadioGroup data-slot=\"dropdown-menu-radio-group\" {...props} />;\n}\n\nfunction DropdownMenuRadioItem({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof Menu.RadioItem>) {\n return (\n <Menu.RadioItem\n data-slot=\"dropdown-menu-radio-item\"\n className={cn(\n \"data-highlighted:bg-accent data-highlighted:text-accent-foreground relative flex cursor-default items-center gap-1.5 rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center\">\n <Menu.RadioItemIndicator\n keepMounted\n className=\"transition data-checked:scale-100 data-checked:opacity-100 data-unchecked:scale-75 data-unchecked:opacity-0\"\n >\n <Circle className=\"size-2 fill-current\" />\n </Menu.RadioItemIndicator>\n </span>\n {children}\n </Menu.RadioItem>\n );\n}\n\nfunction DropdownMenuLabel({\n className,\n inset,\n children,\n ...props\n}: React.ComponentProps<typeof Menu.GroupLabel> & {\n inset?: boolean;\n}) {\n return (\n <Menu.GroupLabel\n data-slot=\"dropdown-menu-label\"\n data-inset={inset}\n className={cn(\"px-2 py-1.5 text-sm font-medium data-inset:pl-8\", className)}\n {...props}\n >\n {children}\n </Menu.GroupLabel>\n );\n}\n\nfunction DropdownMenuSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof Menu.Separator>) {\n return (\n <Menu.Separator\n data-slot=\"dropdown-menu-separator\"\n className={cn(\"bg-border -mx-1 my-1 h-px\", className)}\n {...props}\n />\n );\n}\n\nfunction DropdownMenuShortcut({ className, ...props }: React.ComponentProps<\"span\">) {\n return (\n <span\n data-slot=\"dropdown-menu-shortcut\"\n className={cn(\"text-muted-foreground ml-auto text-xs tracking-widest\", className)}\n {...props}\n />\n );\n}\n\nfunction DropdownMenuSub({ ...props }: React.ComponentProps<typeof Menu.SubmenuRoot>) {\n return <Menu.SubmenuRoot data-slot=\"dropdown-menu-sub\" {...props} />;\n}\n\nfunction DropdownMenuSubTrigger({\n className,\n inset,\n children,\n ...props\n}: React.ComponentProps<typeof Menu.SubmenuTrigger> & {\n inset?: boolean;\n}) {\n return (\n <Menu.SubmenuTrigger\n data-slot=\"dropdown-menu-sub-trigger\"\n data-inset={inset}\n className={cn(\n \"data-highlighted:bg-accent data-highlighted:text-accent-foreground data-popup-open:bg-accent data-popup-open:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground flex cursor-default items-center gap-1.5 rounded-xs px-2 py-1.5 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRight className=\"ml-auto size-4\" />\n </Menu.SubmenuTrigger>\n );\n}\n\nfunction DropdownMenuSubContent({\n className,\n sideOffset = 4,\n positionerProps,\n children,\n ...props\n}: React.ComponentProps<typeof Menu.Popup> & {\n sideOffset?: number;\n positionerProps?: Omit<React.ComponentProps<typeof Menu.Positioner>, \"children\">;\n}) {\n return (\n <Menu.Portal>\n <Menu.Positioner sideOffset={sideOffset} {...positionerProps}>\n <Menu.Popup\n data-slot=\"dropdown-menu-sub-content\"\n className={cn(\n \"bg-popover text-popover-foreground data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-open:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-32 origin-(--transform-origin) overflow-hidden rounded-2xl border p-1 shadow-lg\",\n className,\n )}\n {...props}\n >\n {children}\n </Menu.Popup>\n </Menu.Positioner>\n </Menu.Portal>\n );\n}\n\nexport {\n DropdownMenu,\n DropdownMenuCheckboxItem,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuPortal,\n DropdownMenuRadioGroup,\n DropdownMenuRadioItem,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuSub,\n DropdownMenuSubContent,\n DropdownMenuSubTrigger,\n DropdownMenuTrigger,\n};\n"]}