@solace-health/ui 0.10.522 → 0.10.524-mdxeditor-beta

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.
@@ -0,0 +1,2 @@
1
+ 'use strict';var chunkFJEO3GGO_cjs=require('./chunk-FJEO3GGO.cjs'),chunkQRO22BPZ_cjs=require('./chunk-QRO22BPZ.cjs'),vaul=require('vaul'),lu=require('react-icons/lu'),jsxRuntime=require('react/jsx-runtime');function g({...t}){return jsxRuntime.jsx(vaul.Drawer.Root,{"data-slot":"drawer",...t})}function b({...t}){return jsxRuntime.jsx(vaul.Drawer.Trigger,{"data-slot":"drawer-trigger",...t})}function c({...t}){return jsxRuntime.jsx(vaul.Drawer.Portal,{"data-slot":"drawer-portal",...t})}function u({...t}){return jsxRuntime.jsx(vaul.Drawer.Close,{"data-slot":"drawer-close",...t})}function w({className:t,...a}){return jsxRuntime.jsx(vaul.Drawer.Overlay,{"data-slot":"drawer-overlay",className:chunkQRO22BPZ_cjs.a("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-1000 bg-black/50",t),...a})}function D({className:t,children:a,...i}){let d=/\bw-(\w+)\b/.test(t??"");return jsxRuntime.jsxs(c,{"data-slot":"drawer-portal",children:[jsxRuntime.jsx(w,{}),jsxRuntime.jsxs(vaul.Drawer.Content,{"data-slot":"drawer-content",className:chunkQRO22BPZ_cjs.a("group/drawer-content bg-background fixed z-1000 flex h-auto flex-col","data-[vaul-drawer-direction=top]:inset-x-0","data-[vaul-drawer-direction=top]:top-0","data-[vaul-drawer-direction=top]:mb-24","data-[vaul-drawer-direction=top]:max-h-[80vh]","data-[vaul-drawer-direction=top]:rounded-b-lg","data-[vaul-drawer-direction=top]:border-b","data-[vaul-drawer-direction=bottom]:inset-x-0","data-[vaul-drawer-direction=bottom]:bottom-0","data-[vaul-drawer-direction=bottom]:mt-24","data-[vaul-drawer-direction=bottom]:max-h-[80vh]","data-[vaul-drawer-direction=bottom]:rounded-t-lg","data-[vaul-drawer-direction=bottom]:border-t","data-[vaul-drawer-direction=right]:inset-y-0","data-[vaul-drawer-direction=right]:right-0","data-[vaul-drawer-direction=right]:border-l","data-[vaul-drawer-direction=right]:rounded-l-md",!d&&"data-[vaul-drawer-direction=right]:w-3/4",!d&&"data-[vaul-drawer-direction=right]:sm:max-w-md","data-[vaul-drawer-direction=left]:inset-y-0","data-[vaul-drawer-direction=left]:left-0","data-[vaul-drawer-direction=left]:border-r","data-[vaul-drawer-direction=left]:rounded-r-md",!d&&"data-[vaul-drawer-direction=left]:w-3/4",!d&&"data-[vaul-drawer-direction=left]:sm:max-w-sm",t),...i,children:[jsxRuntime.jsx("div",{className:"bg-muted mx-auto mt-4 hidden h-2 w-[100px] shrink-0 rounded-full group-data-[vaul-drawer-direction=bottom]/drawer-content:block"}),a]})]})}function h({className:t,showClose:a=false,...i}){return jsxRuntime.jsxs("div",{"data-slot":"drawer-header",className:chunkQRO22BPZ_cjs.a("relative flex flex-col gap-0.5 border-b p-4 text-left md:gap-1.5 md:p-8",t),...i,children:[a&&jsxRuntime.jsx(u,{className:"focus:ring-ring absolute rounded-sm opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-none disabled:pointer-events-none","aria-label":"Close",asChild:true,children:jsxRuntime.jsx(chunkFJEO3GGO_cjs.b,{variant:"ghost-secondary",className:"text-primary absolute top-1/2 right-4 h-8 w-8 -translate-y-1/2 p-0",children:jsxRuntime.jsx(lu.LuX,{})})}),i.children]})}function P({className:t,...a}){return jsxRuntime.jsx("div",{"data-slot":"drawer-footer",className:chunkQRO22BPZ_cjs.a("mt-auto flex gap-2 border-t p-4 md:p-8",t),...a})}function y({className:t,...a}){return jsxRuntime.jsx(vaul.Drawer.Title,{"data-slot":"drawer-title",className:chunkQRO22BPZ_cjs.a("text-display-md",t),...a})}function C({...t}){return jsxRuntime.jsx(vaul.Drawer.Description,{"data-slot":"drawer-description",...t})}exports.a=g;exports.b=b;exports.c=c;exports.d=u;exports.e=w;exports.f=D;exports.g=h;exports.h=P;exports.i=y;exports.j=C;//# sourceMappingURL=chunk-6AKP5UOD.cjs.map
2
+ //# sourceMappingURL=chunk-6AKP5UOD.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/v2/drawer/drawer.tsx"],"names":["Drawer","props","jsx","DrawerPrimitive","DrawerTrigger","DrawerPortal","DrawerClose","DrawerOverlay","className","cn","DrawerContent","children","hasWidth","jsxs","DrawerHeader","showClose","Button","LuX","DrawerFooter","DrawerTitle","DrawerDescription"],"mappings":"+MAOA,SAASA,CAAAA,CAAO,CAAE,GAAGC,CAAM,CAAsD,CAAA,CAC/E,OAAOC,cAACC,CAAAA,WAAAA,CAAgB,IAAhB,CAAA,CAAqB,YAAU,QAAU,CAAA,GAAGF,CAAO,CAAA,CAC7D,CAEA,SAASG,CAAAA,CAAc,CAAE,GAAGH,CAAM,CAAyD,CAAA,CACzF,OAAOC,cAAAA,CAACC,WAAgB,CAAA,OAAA,CAAhB,CAAwB,WAAA,CAAU,iBAAkB,GAAGF,CAAAA,CAAO,CACxE,CAEA,SAASI,CAAa,CAAA,CAAE,GAAGJ,CAAM,EAAwD,CACvF,OAAOC,cAACC,CAAAA,WAAAA,CAAgB,OAAhB,CAAuB,WAAA,CAAU,eAAiB,CAAA,GAAGF,EAAO,CACtE,CAEA,SAASK,CAAAA,CAAY,CAAE,GAAGL,CAAM,CAAuD,CAAA,CACrF,OAAOC,cAACC,CAAAA,WAAAA,CAAgB,KAAhB,CAAA,CAAsB,WAAU,CAAA,cAAA,CAAgB,GAAGF,CAAAA,CAAO,CACpE,CAEA,SAASM,CAAc,CAAA,CACrB,UAAAC,CACA,CAAA,GAAGP,CACL,CAAA,CAAyD,CACvD,OACEC,cAAAA,CAACC,WAAgB,CAAA,OAAA,CAAhB,CACC,WAAU,CAAA,gBAAA,CACV,SAAWM,CAAAA,mBAAAA,CACT,2JACAD,CACF,CAAA,CACC,GAAGP,CAAAA,CACN,CAEJ,CAEA,SAASS,CAAc,CAAA,CACrB,UAAAF,CACA,CAAA,QAAA,CAAAG,CACA,CAAA,GAAGV,CACL,CAAyD,CAAA,CACvD,IAAMW,CAAAA,CAAW,cAAc,IAAKJ,CAAAA,CAAAA,EAAa,EAAE,CAAA,CACnD,OACEK,eAACR,CAAAA,CAAAA,CAAA,CAAa,WAAA,CAAU,gBACtB,QAAAH,CAAAA,CAAAA,cAAAA,CAACK,CAAA,CAAA,EAAc,EACfM,eAACV,CAAAA,WAAAA,CAAgB,OAAhB,CAAA,CACC,YAAU,gBACV,CAAA,SAAA,CAAWM,mBACT,CAAA,sEAAA,CAGA,6CACA,wCACA,CAAA,wCAAA,CACA,+CACA,CAAA,+CAAA,CACA,4CAGA,+CACA,CAAA,8CAAA,CACA,2CACA,CAAA,kDAAA,CACA,kDACA,CAAA,8CAAA,CAGA,8CACA,CAAA,4CAAA,CACA,8CACA,iDACA,CAAA,CAACG,CAAY,EAAA,0CAAA,CACb,CAACA,CAAY,EAAA,gDAAA,CAGb,6CACA,CAAA,0CAAA,CACA,6CACA,gDACA,CAAA,CAACA,CAAY,EAAA,yCAAA,CACb,CAACA,CAAY,EAAA,+CAAA,CACbJ,CACF,CAAA,CACC,GAAGP,CAEJ,CAAA,QAAA,CAAA,CAAAC,cAAC,CAAA,KAAA,CAAA,CAAI,UAAU,iIAAkI,CAAA,CAAA,CAChJS,CACH,CAAA,CAAA,CAAA,CAAA,CACF,CAEJ,CAEA,SAASG,CAAa,CAAA,CACpB,UAAAN,CACA,CAAA,SAAA,CAAAO,CAAY,CAAA,KAAA,CACZ,GAAGd,CACL,CAAA,CAA0D,CACxD,OACEY,gBAAC,KACC,CAAA,CAAA,WAAA,CAAU,eACV,CAAA,SAAA,CAAWJ,oBACT,4MACAD,CAAAA,CACF,CACC,CAAA,GAAGP,EAEH,QAAAc,CAAAA,CAAAA,CAAAA,EACCb,cAACI,CAAAA,CAAAA,CAAA,CACC,SAAU,CAAA,sKAAA,CACV,YAAW,CAAA,OAAA,CACX,QAAO,IAEP,CAAA,QAAA,CAAAJ,cAACc,CAAAA,mBAAAA,CAAA,CAAO,OAAQ,CAAA,OAAA,CAAQ,SAAU,CAAA,uDAAA,CAChC,QAAAd,CAAAA,cAAAA,CAACe,MAAA,CAAA,EAAI,EACP,CACF,CAAA,CAAA,CAEDhB,CAAM,CAAA,QAAA,CAAA,CACT,CAEJ,CAEA,SAASiB,CAAa,CAAA,CAAE,UAAAV,CAAW,CAAA,GAAGP,CAAM,CAAA,CAAgC,CAC1E,OACEC,cAAAA,CAAC,KACC,CAAA,CAAA,WAAA,CAAU,gBACV,SAAWO,CAAAA,mBAAAA,CAAG,iCAAmCD,CAAAA,CAAS,EACzD,GAAGP,CAAAA,CACN,CAEJ,CAEA,SAASkB,CAAY,CAAA,CAAE,SAAAX,CAAAA,CAAAA,CAAW,GAAGP,CAAM,CAAA,CAAuD,CAChG,OACEC,eAACC,WAAgB,CAAA,KAAA,CAAhB,CACC,WAAA,CAAU,eACV,SAAWM,CAAAA,mBAAAA,CAAG,iBAAmBD,CAAAA,CAAS,EACzC,GAAGP,CAAAA,CACN,CAEJ,CAEA,SAASmB,CAAkB,CAAA,CAAE,GAAGnB,CAAM,EAA6D,CACjG,OAAOC,cAACC,CAAAA,WAAAA,CAAgB,YAAhB,CAA4B,WAAA,CAAU,oBAAsB,CAAA,GAAGF,EAAO,CAChF","file":"chunk-OC3UY5NT.cjs","sourcesContent":["import * as React from 'react';\nimport { Drawer as DrawerPrimitive } from 'vaul';\n\nimport { LuX } from 'react-icons/lu';\nimport { cn } from '@/lib/utils';\nimport { Button } from '@/v2/button/button';\n\nfunction Drawer({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Root>) {\n return <DrawerPrimitive.Root data-slot=\"drawer\" {...props} />;\n}\n\nfunction DrawerTrigger({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Trigger>) {\n return <DrawerPrimitive.Trigger data-slot=\"drawer-trigger\" {...props} />;\n}\n\nfunction DrawerPortal({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Portal>) {\n return <DrawerPrimitive.Portal data-slot=\"drawer-portal\" {...props} />;\n}\n\nfunction DrawerClose({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Close>) {\n return <DrawerPrimitive.Close data-slot=\"drawer-close\" {...props} />;\n}\n\nfunction DrawerOverlay({\n className,\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Overlay>) {\n return (\n <DrawerPrimitive.Overlay\n data-slot=\"drawer-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-1000 bg-black/50',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction DrawerContent({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Content>) {\n const hasWidth = /\\bw-(\\w+)\\b/.test(className ?? '');\n return (\n <DrawerPortal data-slot=\"drawer-portal\">\n <DrawerOverlay />\n <DrawerPrimitive.Content\n data-slot=\"drawer-content\"\n className={cn(\n 'group/drawer-content bg-background fixed z-1000 flex h-auto flex-col',\n\n // top drawer\n 'data-[vaul-drawer-direction=top]:inset-x-0',\n 'data-[vaul-drawer-direction=top]:top-0',\n 'data-[vaul-drawer-direction=top]:mb-24',\n 'data-[vaul-drawer-direction=top]:max-h-[80vh]',\n 'data-[vaul-drawer-direction=top]:rounded-b-lg',\n 'data-[vaul-drawer-direction=top]:border-b',\n\n // bottom drawer\n 'data-[vaul-drawer-direction=bottom]:inset-x-0',\n 'data-[vaul-drawer-direction=bottom]:bottom-0',\n 'data-[vaul-drawer-direction=bottom]:mt-24',\n 'data-[vaul-drawer-direction=bottom]:max-h-[80vh]',\n 'data-[vaul-drawer-direction=bottom]:rounded-t-lg',\n 'data-[vaul-drawer-direction=bottom]:border-t',\n\n // right drawer\n 'data-[vaul-drawer-direction=right]:inset-y-0',\n 'data-[vaul-drawer-direction=right]:right-0',\n 'data-[vaul-drawer-direction=right]:border-l',\n 'data-[vaul-drawer-direction=right]:rounded-l-md',\n !hasWidth && 'data-[vaul-drawer-direction=right]:w-3/4',\n !hasWidth && 'data-[vaul-drawer-direction=right]:sm:max-w-md',\n\n // left drawer\n 'data-[vaul-drawer-direction=left]:inset-y-0',\n 'data-[vaul-drawer-direction=left]:left-0',\n 'data-[vaul-drawer-direction=left]:border-r',\n 'data-[vaul-drawer-direction=left]:rounded-r-md',\n !hasWidth && 'data-[vaul-drawer-direction=left]:w-3/4',\n !hasWidth && 'data-[vaul-drawer-direction=left]:sm:max-w-sm',\n className,\n )}\n {...props}\n >\n <div className=\"bg-muted mx-auto mt-4 hidden h-2 w-[100px] shrink-0 rounded-full group-data-[vaul-drawer-direction=bottom]/drawer-content:block\" />\n {children}\n </DrawerPrimitive.Content>\n </DrawerPortal>\n );\n}\n\nfunction DrawerHeader({\n className,\n showClose = false,\n ...props\n}: React.ComponentProps<'div'> & { showClose?: boolean }) {\n return (\n <div\n data-slot=\"drawer-header\"\n className={cn(\n 'relative flex flex-col gap-0.5 border-b p-8 group-data-[vaul-drawer-direction=bottom]/drawer-content:text-center group-data-[vaul-drawer-direction=top]/drawer-content:text-center md:gap-1.5 md:text-left',\n className,\n )}\n {...props}\n >\n {showClose && (\n <DrawerClose\n className=\"focus:ring-ring absolute rounded-sm opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-none disabled:pointer-events-none\"\n aria-label=\"Close\"\n asChild\n >\n <Button variant=\"ghost\" className=\"absolute top-1/2 right-4 h-8 w-8 -translate-y-1/2 p-0\">\n <LuX />\n </Button>\n </DrawerClose>\n )}\n {props.children}\n </div>\n );\n}\n\nfunction DrawerFooter({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"drawer-footer\"\n className={cn('mt-auto flex gap-2 border-t p-8', className)}\n {...props}\n />\n );\n}\n\nfunction DrawerTitle({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Title>) {\n return (\n <DrawerPrimitive.Title\n data-slot=\"drawer-title\"\n className={cn('text-display-md', className)}\n {...props}\n />\n );\n}\n\nfunction DrawerDescription({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Description>) {\n return <DrawerPrimitive.Description data-slot=\"drawer-description\" {...props} />;\n}\n\nexport {\n Drawer,\n DrawerClose,\n DrawerContent,\n DrawerDescription,\n DrawerFooter,\n DrawerHeader,\n DrawerOverlay,\n DrawerPortal,\n DrawerTitle,\n DrawerTrigger,\n};\n"]}
1
+ {"version":3,"sources":["../src/v2/drawer/drawer.tsx"],"names":["Drawer","props","jsx","DrawerPrimitive","DrawerTrigger","DrawerPortal","DrawerClose","DrawerOverlay","className","cn","DrawerContent","children","hasWidth","jsxs","DrawerHeader","showClose","Button","LuX","DrawerFooter","DrawerTitle","DrawerDescription"],"mappings":"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","file":"chunk-6AKP5UOD.cjs","sourcesContent":["import * as React from 'react';\nimport { Drawer as DrawerPrimitive } from 'vaul';\n\nimport { LuX } from 'react-icons/lu';\nimport { cn } from '@/lib/utils';\nimport { Button } from '@/v2/button/button';\n\nfunction Drawer({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Root>) {\n return <DrawerPrimitive.Root data-slot=\"drawer\" {...props} />;\n}\n\nfunction DrawerTrigger({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Trigger>) {\n return <DrawerPrimitive.Trigger data-slot=\"drawer-trigger\" {...props} />;\n}\n\nfunction DrawerPortal({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Portal>) {\n return <DrawerPrimitive.Portal data-slot=\"drawer-portal\" {...props} />;\n}\n\nfunction DrawerClose({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Close>) {\n return <DrawerPrimitive.Close data-slot=\"drawer-close\" {...props} />;\n}\n\nfunction DrawerOverlay({\n className,\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Overlay>) {\n return (\n <DrawerPrimitive.Overlay\n data-slot=\"drawer-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-1000 bg-black/50',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction DrawerContent({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Content>) {\n const hasWidth = /\\bw-(\\w+)\\b/.test(className ?? '');\n return (\n <DrawerPortal data-slot=\"drawer-portal\">\n <DrawerOverlay />\n <DrawerPrimitive.Content\n data-slot=\"drawer-content\"\n className={cn(\n 'group/drawer-content bg-background fixed z-1000 flex h-auto flex-col',\n\n // top drawer\n 'data-[vaul-drawer-direction=top]:inset-x-0',\n 'data-[vaul-drawer-direction=top]:top-0',\n 'data-[vaul-drawer-direction=top]:mb-24',\n 'data-[vaul-drawer-direction=top]:max-h-[80vh]',\n 'data-[vaul-drawer-direction=top]:rounded-b-lg',\n 'data-[vaul-drawer-direction=top]:border-b',\n\n // bottom drawer\n 'data-[vaul-drawer-direction=bottom]:inset-x-0',\n 'data-[vaul-drawer-direction=bottom]:bottom-0',\n 'data-[vaul-drawer-direction=bottom]:mt-24',\n 'data-[vaul-drawer-direction=bottom]:max-h-[80vh]',\n 'data-[vaul-drawer-direction=bottom]:rounded-t-lg',\n 'data-[vaul-drawer-direction=bottom]:border-t',\n\n // right drawer\n 'data-[vaul-drawer-direction=right]:inset-y-0',\n 'data-[vaul-drawer-direction=right]:right-0',\n 'data-[vaul-drawer-direction=right]:border-l',\n 'data-[vaul-drawer-direction=right]:rounded-l-md',\n !hasWidth && 'data-[vaul-drawer-direction=right]:w-3/4',\n !hasWidth && 'data-[vaul-drawer-direction=right]:sm:max-w-md',\n\n // left drawer\n 'data-[vaul-drawer-direction=left]:inset-y-0',\n 'data-[vaul-drawer-direction=left]:left-0',\n 'data-[vaul-drawer-direction=left]:border-r',\n 'data-[vaul-drawer-direction=left]:rounded-r-md',\n !hasWidth && 'data-[vaul-drawer-direction=left]:w-3/4',\n !hasWidth && 'data-[vaul-drawer-direction=left]:sm:max-w-sm',\n className,\n )}\n {...props}\n >\n <div className=\"bg-muted mx-auto mt-4 hidden h-2 w-[100px] shrink-0 rounded-full group-data-[vaul-drawer-direction=bottom]/drawer-content:block\" />\n {children}\n </DrawerPrimitive.Content>\n </DrawerPortal>\n );\n}\n\nfunction DrawerHeader({\n className,\n showClose = false,\n ...props\n}: React.ComponentProps<'div'> & { showClose?: boolean }) {\n return (\n <div\n data-slot=\"drawer-header\"\n className={cn(\n 'relative flex flex-col gap-0.5 border-b p-4 text-left md:gap-1.5 md:p-8',\n className,\n )}\n {...props}\n >\n {showClose && (\n <DrawerClose\n className=\"focus:ring-ring absolute rounded-sm opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-none disabled:pointer-events-none\"\n aria-label=\"Close\"\n asChild\n >\n <Button\n variant=\"ghost-secondary\"\n className=\"text-primary absolute top-1/2 right-4 h-8 w-8 -translate-y-1/2 p-0\"\n >\n <LuX />\n </Button>\n </DrawerClose>\n )}\n {props.children}\n </div>\n );\n}\n\nfunction DrawerFooter({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"drawer-footer\"\n className={cn('mt-auto flex gap-2 border-t p-4 md:p-8', className)}\n {...props}\n />\n );\n}\n\nfunction DrawerTitle({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Title>) {\n return (\n <DrawerPrimitive.Title\n data-slot=\"drawer-title\"\n className={cn('text-display-md', className)}\n {...props}\n />\n );\n}\n\nfunction DrawerDescription({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Description>) {\n return <DrawerPrimitive.Description data-slot=\"drawer-description\" {...props} />;\n}\n\nexport {\n Drawer,\n DrawerClose,\n DrawerContent,\n DrawerDescription,\n DrawerFooter,\n DrawerHeader,\n DrawerOverlay,\n DrawerPortal,\n DrawerTitle,\n DrawerTrigger,\n};\n"]}
@@ -0,0 +1,2 @@
1
+ import {a,d,c,g,i}from'./chunk-YIOPQQWU.js';import {a as a$1}from'./chunk-YTIIAU4W.js';import {DateTime,Duration}from'luxon';import {useMemo}from'react';import {jsxs,jsx}from'react/jsx-runtime';var S="00:00",b="24:00",w=r=>DateTime.fromFormat(r,"HH:mm").isValid,D=({startTime:r=S,endTime:t=b,interval:f=30,onChange:T=void 0,className:C="",size:v="default",portal:F=true,...h})=>{w(r)||(console.error(`Invalid startTime: ${r}`),r=S),w(t)||(console.error(`Invalid endTime: ${t}`),t=b);let g$1=useMemo(()=>{let o=DateTime.fromFormat(t,"HH:mm"),a=Duration.fromObject({minutes:f}),n=[],e=DateTime.fromFormat(r,"HH:mm");for(;e<=o;){let p=e.toFormat("HH:mm");p==="00:00"&&e.equals(o)&&(p="24:00"),n.push({label:e.toFormat("h:mm a"),value:{hour:e.toFormat("HH"),min:e.toFormat("mm"),raw:p,formatted:e.toFormat("h:mm a")}}),e=e.plus(a);}return n},[r,t,f]),M=g$1.map(o=>({label:o.label,value:o.value.raw}));return jsxs(a,{onValueChange:o=>{let a=g$1.find(n=>n.value.raw===o);a&&T?.(a);},...h,children:[jsx(d,{className:a$1("max-w-[240px] md:w-[150px]",C),size:v,children:jsx(c,{placeholder:"Select one"})}),jsx(g,{position:"popper",className:"max-h-90",portal:F,children:M.map(o=>jsx(i,{className:"h-10",value:o.value,children:o.label},o.value))})]})},Dr=D;export{D as a,Dr as b};//# sourceMappingURL=chunk-CBXUB2WZ.js.map
2
+ //# sourceMappingURL=chunk-CBXUB2WZ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/v2/time-select/time-select.tsx"],"names":["START_TIME_DEFAULT","END_TIME_DEFAULT","isValidTime","time","DateTime","TimeSelect","startTime","endTime","interval","onChange","className","size","portal","inputProps","intervals","useMemo","dtEnd","durationInterval","Duration","res","i","raw","options","jsxs","Select","e","jsx","SelectTrigger","cn","SelectValue","SelectContent","option","SelectItem","time_select_default"],"mappings":"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","file":"chunk-CBXUB2WZ.js","sourcesContent":["import { DateTime, Duration } from 'luxon';\nimport { useMemo } from 'react';\nimport { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '@/v2';\nimport { cn } from '@/lib/utils';\n\nexport type Interval = {\n label: string;\n value: {\n hour: string;\n min: string;\n raw: string;\n formatted: string;\n };\n};\n\ntype Props = {\n startTime?: string;\n endTime?: string;\n interval?: number;\n onChange?: (e: Interval) => void;\n className?: string;\n size?: 'default' | 'sm';\n portal?: boolean;\n [inputProps: string]: unknown;\n};\n\nconst START_TIME_DEFAULT = '00:00';\nconst END_TIME_DEFAULT = '24:00';\n\nconst isValidTime = (time: string) => {\n const dt = DateTime.fromFormat(time, 'HH:mm');\n return dt.isValid;\n};\n\nexport const TimeSelect = ({\n startTime = START_TIME_DEFAULT,\n endTime = END_TIME_DEFAULT,\n interval = 30,\n onChange = undefined,\n className = '',\n size = 'default',\n portal = true,\n ...inputProps\n}: Props) => {\n if (!isValidTime(startTime)) {\n console.error(`Invalid startTime: ${startTime}`);\n // eslint-disable-next-line no-param-reassign\n startTime = START_TIME_DEFAULT;\n }\n if (!isValidTime(endTime)) {\n console.error(`Invalid endTime: ${endTime}`);\n // eslint-disable-next-line no-param-reassign\n endTime = END_TIME_DEFAULT;\n }\n\n const intervals = useMemo((): Interval[] => {\n const dtEnd = DateTime.fromFormat(endTime, 'HH:mm');\n const durationInterval = Duration.fromObject({ minutes: interval });\n const res = [];\n let i = DateTime.fromFormat(startTime, 'HH:mm');\n while (i <= dtEnd) {\n let raw = i.toFormat('HH:mm');\n // Avoid duplicate keys for \"00:00\" and \"00:00\" (end of day)\n if (raw === '00:00' && i.equals(dtEnd)) raw = '24:00';\n\n res.push({\n label: i.toFormat('h:mm a'),\n value: {\n hour: i.toFormat('HH'),\n min: i.toFormat('mm'),\n raw,\n formatted: i.toFormat('h:mm a'),\n },\n });\n i = i.plus(durationInterval);\n }\n\n return res;\n }, [startTime, endTime, interval]);\n\n const options = intervals.map((time) => ({\n label: time.label,\n value: time.value.raw,\n }));\n\n const handleOnSelect = (e: unknown) => {\n const interval = intervals.find((time) => time.value.raw === e);\n\n if (!interval) return;\n\n onChange?.(interval);\n };\n\n return (\n <Select onValueChange={handleOnSelect} {...inputProps}>\n <SelectTrigger className={cn('max-w-[240px] md:w-[150px]', className)} size={size}>\n <SelectValue placeholder=\"Select one\" />\n </SelectTrigger>\n <SelectContent position=\"popper\" className=\"max-h-90\" portal={portal}>\n {options.map((option) => (\n // Note that labels and values here may appear to be duplicates\n // For example, \"00:00\" and \"24:00\" will both have the same value \"00:00\"\n <SelectItem className=\"h-10\" key={option.value} value={option.value}>\n {option.label}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n );\n};\n\nexport default TimeSelect;\n"]}
@@ -0,0 +1,2 @@
1
+ 'use strict';var chunk75JCLU5T_cjs=require('./chunk-75JCLU5T.cjs'),chunkQRO22BPZ_cjs=require('./chunk-QRO22BPZ.cjs'),luxon=require('luxon'),react=require('react'),jsxRuntime=require('react/jsx-runtime');var S="00:00",b="24:00",w=r=>luxon.DateTime.fromFormat(r,"HH:mm").isValid,D=({startTime:r=S,endTime:t=b,interval:f=30,onChange:T=void 0,className:C="",size:v="default",portal:F=true,...h})=>{w(r)||(console.error(`Invalid startTime: ${r}`),r=S),w(t)||(console.error(`Invalid endTime: ${t}`),t=b);let g=react.useMemo(()=>{let o=luxon.DateTime.fromFormat(t,"HH:mm"),a=luxon.Duration.fromObject({minutes:f}),n=[],e=luxon.DateTime.fromFormat(r,"HH:mm");for(;e<=o;){let p=e.toFormat("HH:mm");p==="00:00"&&e.equals(o)&&(p="24:00"),n.push({label:e.toFormat("h:mm a"),value:{hour:e.toFormat("HH"),min:e.toFormat("mm"),raw:p,formatted:e.toFormat("h:mm a")}}),e=e.plus(a);}return n},[r,t,f]),M=g.map(o=>({label:o.label,value:o.value.raw}));return jsxRuntime.jsxs(chunk75JCLU5T_cjs.a,{onValueChange:o=>{let a=g.find(n=>n.value.raw===o);a&&T?.(a);},...h,children:[jsxRuntime.jsx(chunk75JCLU5T_cjs.d,{className:chunkQRO22BPZ_cjs.a("max-w-[240px] md:w-[150px]",C),size:v,children:jsxRuntime.jsx(chunk75JCLU5T_cjs.c,{placeholder:"Select one"})}),jsxRuntime.jsx(chunk75JCLU5T_cjs.g,{position:"popper",className:"max-h-90",portal:F,children:M.map(o=>jsxRuntime.jsx(chunk75JCLU5T_cjs.i,{className:"h-10",value:o.value,children:o.label},o.value))})]})},Dr=D;exports.a=D;exports.b=Dr;//# sourceMappingURL=chunk-LZ7Z3HQH.cjs.map
2
+ //# sourceMappingURL=chunk-LZ7Z3HQH.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/v2/time-select/time-select.tsx"],"names":["START_TIME_DEFAULT","END_TIME_DEFAULT","isValidTime","time","DateTime","TimeSelect","startTime","endTime","interval","onChange","className","size","portal","inputProps","intervals","useMemo","dtEnd","durationInterval","Duration","res","i","raw","options","jsxs","Select","e","jsx","SelectTrigger","cn","SelectValue","SelectContent","option","SelectItem","time_select_default"],"mappings":"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","file":"chunk-LZ7Z3HQH.cjs","sourcesContent":["import { DateTime, Duration } from 'luxon';\nimport { useMemo } from 'react';\nimport { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '@/v2';\nimport { cn } from '@/lib/utils';\n\nexport type Interval = {\n label: string;\n value: {\n hour: string;\n min: string;\n raw: string;\n formatted: string;\n };\n};\n\ntype Props = {\n startTime?: string;\n endTime?: string;\n interval?: number;\n onChange?: (e: Interval) => void;\n className?: string;\n size?: 'default' | 'sm';\n portal?: boolean;\n [inputProps: string]: unknown;\n};\n\nconst START_TIME_DEFAULT = '00:00';\nconst END_TIME_DEFAULT = '24:00';\n\nconst isValidTime = (time: string) => {\n const dt = DateTime.fromFormat(time, 'HH:mm');\n return dt.isValid;\n};\n\nexport const TimeSelect = ({\n startTime = START_TIME_DEFAULT,\n endTime = END_TIME_DEFAULT,\n interval = 30,\n onChange = undefined,\n className = '',\n size = 'default',\n portal = true,\n ...inputProps\n}: Props) => {\n if (!isValidTime(startTime)) {\n console.error(`Invalid startTime: ${startTime}`);\n // eslint-disable-next-line no-param-reassign\n startTime = START_TIME_DEFAULT;\n }\n if (!isValidTime(endTime)) {\n console.error(`Invalid endTime: ${endTime}`);\n // eslint-disable-next-line no-param-reassign\n endTime = END_TIME_DEFAULT;\n }\n\n const intervals = useMemo((): Interval[] => {\n const dtEnd = DateTime.fromFormat(endTime, 'HH:mm');\n const durationInterval = Duration.fromObject({ minutes: interval });\n const res = [];\n let i = DateTime.fromFormat(startTime, 'HH:mm');\n while (i <= dtEnd) {\n let raw = i.toFormat('HH:mm');\n // Avoid duplicate keys for \"00:00\" and \"00:00\" (end of day)\n if (raw === '00:00' && i.equals(dtEnd)) raw = '24:00';\n\n res.push({\n label: i.toFormat('h:mm a'),\n value: {\n hour: i.toFormat('HH'),\n min: i.toFormat('mm'),\n raw,\n formatted: i.toFormat('h:mm a'),\n },\n });\n i = i.plus(durationInterval);\n }\n\n return res;\n }, [startTime, endTime, interval]);\n\n const options = intervals.map((time) => ({\n label: time.label,\n value: time.value.raw,\n }));\n\n const handleOnSelect = (e: unknown) => {\n const interval = intervals.find((time) => time.value.raw === e);\n\n if (!interval) return;\n\n onChange?.(interval);\n };\n\n return (\n <Select onValueChange={handleOnSelect} {...inputProps}>\n <SelectTrigger className={cn('max-w-[240px] md:w-[150px]', className)} size={size}>\n <SelectValue placeholder=\"Select one\" />\n </SelectTrigger>\n <SelectContent position=\"popper\" className=\"max-h-90\" portal={portal}>\n {options.map((option) => (\n // Note that labels and values here may appear to be duplicates\n // For example, \"00:00\" and \"24:00\" will both have the same value \"00:00\"\n <SelectItem className=\"h-10\" key={option.value} value={option.value}>\n {option.label}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n );\n};\n\nexport default TimeSelect;\n"]}
@@ -0,0 +1,2 @@
1
+ import {b as b$1}from'./chunk-W3KY6JOY.js';import {a}from'./chunk-YTIIAU4W.js';import {Drawer}from'vaul';import {LuX}from'react-icons/lu';import {jsx,jsxs}from'react/jsx-runtime';function g({...t}){return jsx(Drawer.Root,{"data-slot":"drawer",...t})}function b({...t}){return jsx(Drawer.Trigger,{"data-slot":"drawer-trigger",...t})}function c({...t}){return jsx(Drawer.Portal,{"data-slot":"drawer-portal",...t})}function u({...t}){return jsx(Drawer.Close,{"data-slot":"drawer-close",...t})}function w({className:t,...a$1}){return jsx(Drawer.Overlay,{"data-slot":"drawer-overlay",className:a("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-1000 bg-black/50",t),...a$1})}function D({className:t,children:a$1,...i}){let d=/\bw-(\w+)\b/.test(t??"");return jsxs(c,{"data-slot":"drawer-portal",children:[jsx(w,{}),jsxs(Drawer.Content,{"data-slot":"drawer-content",className:a("group/drawer-content bg-background fixed z-1000 flex h-auto flex-col","data-[vaul-drawer-direction=top]:inset-x-0","data-[vaul-drawer-direction=top]:top-0","data-[vaul-drawer-direction=top]:mb-24","data-[vaul-drawer-direction=top]:max-h-[80vh]","data-[vaul-drawer-direction=top]:rounded-b-lg","data-[vaul-drawer-direction=top]:border-b","data-[vaul-drawer-direction=bottom]:inset-x-0","data-[vaul-drawer-direction=bottom]:bottom-0","data-[vaul-drawer-direction=bottom]:mt-24","data-[vaul-drawer-direction=bottom]:max-h-[80vh]","data-[vaul-drawer-direction=bottom]:rounded-t-lg","data-[vaul-drawer-direction=bottom]:border-t","data-[vaul-drawer-direction=right]:inset-y-0","data-[vaul-drawer-direction=right]:right-0","data-[vaul-drawer-direction=right]:border-l","data-[vaul-drawer-direction=right]:rounded-l-md",!d&&"data-[vaul-drawer-direction=right]:w-3/4",!d&&"data-[vaul-drawer-direction=right]:sm:max-w-md","data-[vaul-drawer-direction=left]:inset-y-0","data-[vaul-drawer-direction=left]:left-0","data-[vaul-drawer-direction=left]:border-r","data-[vaul-drawer-direction=left]:rounded-r-md",!d&&"data-[vaul-drawer-direction=left]:w-3/4",!d&&"data-[vaul-drawer-direction=left]:sm:max-w-sm",t),...i,children:[jsx("div",{className:"bg-muted mx-auto mt-4 hidden h-2 w-[100px] shrink-0 rounded-full group-data-[vaul-drawer-direction=bottom]/drawer-content:block"}),a$1]})]})}function h({className:t,showClose:a$1=false,...i}){return jsxs("div",{"data-slot":"drawer-header",className:a("relative flex flex-col gap-0.5 border-b p-4 text-left md:gap-1.5 md:p-8",t),...i,children:[a$1&&jsx(u,{className:"focus:ring-ring absolute rounded-sm opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-none disabled:pointer-events-none","aria-label":"Close",asChild:true,children:jsx(b$1,{variant:"ghost-secondary",className:"text-primary absolute top-1/2 right-4 h-8 w-8 -translate-y-1/2 p-0",children:jsx(LuX,{})})}),i.children]})}function P({className:t,...a$1}){return jsx("div",{"data-slot":"drawer-footer",className:a("mt-auto flex gap-2 border-t p-4 md:p-8",t),...a$1})}function y({className:t,...a$1}){return jsx(Drawer.Title,{"data-slot":"drawer-title",className:a("text-display-md",t),...a$1})}function C({...t}){return jsx(Drawer.Description,{"data-slot":"drawer-description",...t})}export{g as a,b,c,u as d,w as e,D as f,h as g,P as h,y as i,C as j};//# sourceMappingURL=chunk-N7KUWPS2.js.map
2
+ //# sourceMappingURL=chunk-N7KUWPS2.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/v2/drawer/drawer.tsx"],"names":["Drawer","props","jsx","DrawerPrimitive","DrawerTrigger","DrawerPortal","DrawerClose","DrawerOverlay","className","cn","DrawerContent","children","hasWidth","jsxs","DrawerHeader","showClose","Button","LuX","DrawerFooter","DrawerTitle","DrawerDescription"],"mappings":"mLAOA,SAASA,CAAAA,CAAO,CAAE,GAAGC,CAAM,CAAsD,CAAA,CAC/E,OAAOC,GAACC,CAAAA,MAAAA,CAAgB,IAAhB,CAAA,CAAqB,YAAU,QAAU,CAAA,GAAGF,CAAO,CAAA,CAC7D,CAEA,SAASG,CAAAA,CAAc,CAAE,GAAGH,CAAM,CAAyD,CAAA,CACzF,OAAOC,GAAAA,CAACC,MAAgB,CAAA,OAAA,CAAhB,CAAwB,WAAA,CAAU,iBAAkB,GAAGF,CAAAA,CAAO,CACxE,CAEA,SAASI,CAAa,CAAA,CAAE,GAAGJ,CAAM,EAAwD,CACvF,OAAOC,GAACC,CAAAA,MAAAA,CAAgB,OAAhB,CAAuB,WAAA,CAAU,eAAiB,CAAA,GAAGF,EAAO,CACtE,CAEA,SAASK,CAAAA,CAAY,CAAE,GAAGL,CAAM,CAAuD,CAAA,CACrF,OAAOC,GAACC,CAAAA,MAAAA,CAAgB,KAAhB,CAAA,CAAsB,WAAU,CAAA,cAAA,CAAgB,GAAGF,CAAAA,CAAO,CACpE,CAEA,SAASM,CAAc,CAAA,CACrB,UAAAC,CACA,CAAA,GAAGP,CACL,CAAA,CAAyD,CACvD,OACEC,GAAAA,CAACC,MAAgB,CAAA,OAAA,CAAhB,CACC,WAAU,CAAA,gBAAA,CACV,SAAWM,CAAAA,CAAAA,CACT,2JACAD,CACF,CAAA,CACC,GAAGP,CAAAA,CACN,CAEJ,CAEA,SAASS,CAAc,CAAA,CACrB,UAAAF,CACA,CAAA,QAAA,CAAAG,CACA,CAAA,GAAGV,CACL,CAAyD,CAAA,CACvD,IAAMW,CAAAA,CAAW,cAAc,IAAKJ,CAAAA,CAAAA,EAAa,EAAE,CAAA,CACnD,OACEK,IAACR,CAAAA,CAAAA,CAAA,CAAa,WAAA,CAAU,gBACtB,QAAAH,CAAAA,CAAAA,GAAAA,CAACK,CAAA,CAAA,EAAc,EACfM,IAACV,CAAAA,MAAAA,CAAgB,OAAhB,CAAA,CACC,YAAU,gBACV,CAAA,SAAA,CAAWM,CACT,CAAA,sEAAA,CAGA,6CACA,wCACA,CAAA,wCAAA,CACA,+CACA,CAAA,+CAAA,CACA,4CAGA,+CACA,CAAA,8CAAA,CACA,2CACA,CAAA,kDAAA,CACA,kDACA,CAAA,8CAAA,CAGA,8CACA,CAAA,4CAAA,CACA,8CACA,iDACA,CAAA,CAACG,CAAY,EAAA,0CAAA,CACb,CAACA,CAAY,EAAA,gDAAA,CAGb,6CACA,CAAA,0CAAA,CACA,6CACA,gDACA,CAAA,CAACA,CAAY,EAAA,yCAAA,CACb,CAACA,CAAY,EAAA,+CAAA,CACbJ,CACF,CAAA,CACC,GAAGP,CAEJ,CAAA,QAAA,CAAA,CAAAC,GAAC,CAAA,KAAA,CAAA,CAAI,UAAU,iIAAkI,CAAA,CAAA,CAChJS,CACH,CAAA,CAAA,CAAA,CAAA,CACF,CAEJ,CAEA,SAASG,CAAa,CAAA,CACpB,UAAAN,CACA,CAAA,SAAA,CAAAO,CAAY,CAAA,KAAA,CACZ,GAAGd,CACL,CAAA,CAA0D,CACxD,OACEY,KAAC,KACC,CAAA,CAAA,WAAA,CAAU,eACV,CAAA,SAAA,CAAWJ,EACT,4MACAD,CAAAA,CACF,CACC,CAAA,GAAGP,EAEH,QAAAc,CAAAA,CAAAA,CAAAA,EACCb,GAACI,CAAAA,CAAAA,CAAA,CACC,SAAU,CAAA,sKAAA,CACV,YAAW,CAAA,OAAA,CACX,QAAO,IAEP,CAAA,QAAA,CAAAJ,GAACc,CAAAA,GAAAA,CAAA,CAAO,OAAQ,CAAA,OAAA,CAAQ,SAAU,CAAA,uDAAA,CAChC,QAAAd,CAAAA,GAAAA,CAACe,GAAA,CAAA,EAAI,EACP,CACF,CAAA,CAAA,CAEDhB,CAAM,CAAA,QAAA,CAAA,CACT,CAEJ,CAEA,SAASiB,CAAa,CAAA,CAAE,UAAAV,CAAW,CAAA,GAAGP,CAAM,CAAA,CAAgC,CAC1E,OACEC,GAAAA,CAAC,KACC,CAAA,CAAA,WAAA,CAAU,gBACV,SAAWO,CAAAA,CAAAA,CAAG,iCAAmCD,CAAAA,CAAS,EACzD,GAAGP,CAAAA,CACN,CAEJ,CAEA,SAASkB,CAAY,CAAA,CAAE,SAAAX,CAAAA,CAAAA,CAAW,GAAGP,CAAM,CAAA,CAAuD,CAChG,OACEC,IAACC,MAAgB,CAAA,KAAA,CAAhB,CACC,WAAA,CAAU,eACV,SAAWM,CAAAA,CAAAA,CAAG,iBAAmBD,CAAAA,CAAS,EACzC,GAAGP,CAAAA,CACN,CAEJ,CAEA,SAASmB,CAAkB,CAAA,CAAE,GAAGnB,CAAM,EAA6D,CACjG,OAAOC,GAACC,CAAAA,MAAAA,CAAgB,YAAhB,CAA4B,WAAA,CAAU,oBAAsB,CAAA,GAAGF,EAAO,CAChF","file":"chunk-RNVGFEEK.js","sourcesContent":["import * as React from 'react';\nimport { Drawer as DrawerPrimitive } from 'vaul';\n\nimport { LuX } from 'react-icons/lu';\nimport { cn } from '@/lib/utils';\nimport { Button } from '@/v2/button/button';\n\nfunction Drawer({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Root>) {\n return <DrawerPrimitive.Root data-slot=\"drawer\" {...props} />;\n}\n\nfunction DrawerTrigger({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Trigger>) {\n return <DrawerPrimitive.Trigger data-slot=\"drawer-trigger\" {...props} />;\n}\n\nfunction DrawerPortal({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Portal>) {\n return <DrawerPrimitive.Portal data-slot=\"drawer-portal\" {...props} />;\n}\n\nfunction DrawerClose({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Close>) {\n return <DrawerPrimitive.Close data-slot=\"drawer-close\" {...props} />;\n}\n\nfunction DrawerOverlay({\n className,\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Overlay>) {\n return (\n <DrawerPrimitive.Overlay\n data-slot=\"drawer-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-1000 bg-black/50',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction DrawerContent({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Content>) {\n const hasWidth = /\\bw-(\\w+)\\b/.test(className ?? '');\n return (\n <DrawerPortal data-slot=\"drawer-portal\">\n <DrawerOverlay />\n <DrawerPrimitive.Content\n data-slot=\"drawer-content\"\n className={cn(\n 'group/drawer-content bg-background fixed z-1000 flex h-auto flex-col',\n\n // top drawer\n 'data-[vaul-drawer-direction=top]:inset-x-0',\n 'data-[vaul-drawer-direction=top]:top-0',\n 'data-[vaul-drawer-direction=top]:mb-24',\n 'data-[vaul-drawer-direction=top]:max-h-[80vh]',\n 'data-[vaul-drawer-direction=top]:rounded-b-lg',\n 'data-[vaul-drawer-direction=top]:border-b',\n\n // bottom drawer\n 'data-[vaul-drawer-direction=bottom]:inset-x-0',\n 'data-[vaul-drawer-direction=bottom]:bottom-0',\n 'data-[vaul-drawer-direction=bottom]:mt-24',\n 'data-[vaul-drawer-direction=bottom]:max-h-[80vh]',\n 'data-[vaul-drawer-direction=bottom]:rounded-t-lg',\n 'data-[vaul-drawer-direction=bottom]:border-t',\n\n // right drawer\n 'data-[vaul-drawer-direction=right]:inset-y-0',\n 'data-[vaul-drawer-direction=right]:right-0',\n 'data-[vaul-drawer-direction=right]:border-l',\n 'data-[vaul-drawer-direction=right]:rounded-l-md',\n !hasWidth && 'data-[vaul-drawer-direction=right]:w-3/4',\n !hasWidth && 'data-[vaul-drawer-direction=right]:sm:max-w-md',\n\n // left drawer\n 'data-[vaul-drawer-direction=left]:inset-y-0',\n 'data-[vaul-drawer-direction=left]:left-0',\n 'data-[vaul-drawer-direction=left]:border-r',\n 'data-[vaul-drawer-direction=left]:rounded-r-md',\n !hasWidth && 'data-[vaul-drawer-direction=left]:w-3/4',\n !hasWidth && 'data-[vaul-drawer-direction=left]:sm:max-w-sm',\n className,\n )}\n {...props}\n >\n <div className=\"bg-muted mx-auto mt-4 hidden h-2 w-[100px] shrink-0 rounded-full group-data-[vaul-drawer-direction=bottom]/drawer-content:block\" />\n {children}\n </DrawerPrimitive.Content>\n </DrawerPortal>\n );\n}\n\nfunction DrawerHeader({\n className,\n showClose = false,\n ...props\n}: React.ComponentProps<'div'> & { showClose?: boolean }) {\n return (\n <div\n data-slot=\"drawer-header\"\n className={cn(\n 'relative flex flex-col gap-0.5 border-b p-8 group-data-[vaul-drawer-direction=bottom]/drawer-content:text-center group-data-[vaul-drawer-direction=top]/drawer-content:text-center md:gap-1.5 md:text-left',\n className,\n )}\n {...props}\n >\n {showClose && (\n <DrawerClose\n className=\"focus:ring-ring absolute rounded-sm opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-none disabled:pointer-events-none\"\n aria-label=\"Close\"\n asChild\n >\n <Button variant=\"ghost\" className=\"absolute top-1/2 right-4 h-8 w-8 -translate-y-1/2 p-0\">\n <LuX />\n </Button>\n </DrawerClose>\n )}\n {props.children}\n </div>\n );\n}\n\nfunction DrawerFooter({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"drawer-footer\"\n className={cn('mt-auto flex gap-2 border-t p-8', className)}\n {...props}\n />\n );\n}\n\nfunction DrawerTitle({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Title>) {\n return (\n <DrawerPrimitive.Title\n data-slot=\"drawer-title\"\n className={cn('text-display-md', className)}\n {...props}\n />\n );\n}\n\nfunction DrawerDescription({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Description>) {\n return <DrawerPrimitive.Description data-slot=\"drawer-description\" {...props} />;\n}\n\nexport {\n Drawer,\n DrawerClose,\n DrawerContent,\n DrawerDescription,\n DrawerFooter,\n DrawerHeader,\n DrawerOverlay,\n DrawerPortal,\n DrawerTitle,\n DrawerTrigger,\n};\n"]}
1
+ {"version":3,"sources":["../src/v2/drawer/drawer.tsx"],"names":["Drawer","props","jsx","DrawerPrimitive","DrawerTrigger","DrawerPortal","DrawerClose","DrawerOverlay","className","cn","DrawerContent","children","hasWidth","jsxs","DrawerHeader","showClose","Button","LuX","DrawerFooter","DrawerTitle","DrawerDescription"],"mappings":"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","file":"chunk-N7KUWPS2.js","sourcesContent":["import * as React from 'react';\nimport { Drawer as DrawerPrimitive } from 'vaul';\n\nimport { LuX } from 'react-icons/lu';\nimport { cn } from '@/lib/utils';\nimport { Button } from '@/v2/button/button';\n\nfunction Drawer({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Root>) {\n return <DrawerPrimitive.Root data-slot=\"drawer\" {...props} />;\n}\n\nfunction DrawerTrigger({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Trigger>) {\n return <DrawerPrimitive.Trigger data-slot=\"drawer-trigger\" {...props} />;\n}\n\nfunction DrawerPortal({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Portal>) {\n return <DrawerPrimitive.Portal data-slot=\"drawer-portal\" {...props} />;\n}\n\nfunction DrawerClose({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Close>) {\n return <DrawerPrimitive.Close data-slot=\"drawer-close\" {...props} />;\n}\n\nfunction DrawerOverlay({\n className,\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Overlay>) {\n return (\n <DrawerPrimitive.Overlay\n data-slot=\"drawer-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-1000 bg-black/50',\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction DrawerContent({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof DrawerPrimitive.Content>) {\n const hasWidth = /\\bw-(\\w+)\\b/.test(className ?? '');\n return (\n <DrawerPortal data-slot=\"drawer-portal\">\n <DrawerOverlay />\n <DrawerPrimitive.Content\n data-slot=\"drawer-content\"\n className={cn(\n 'group/drawer-content bg-background fixed z-1000 flex h-auto flex-col',\n\n // top drawer\n 'data-[vaul-drawer-direction=top]:inset-x-0',\n 'data-[vaul-drawer-direction=top]:top-0',\n 'data-[vaul-drawer-direction=top]:mb-24',\n 'data-[vaul-drawer-direction=top]:max-h-[80vh]',\n 'data-[vaul-drawer-direction=top]:rounded-b-lg',\n 'data-[vaul-drawer-direction=top]:border-b',\n\n // bottom drawer\n 'data-[vaul-drawer-direction=bottom]:inset-x-0',\n 'data-[vaul-drawer-direction=bottom]:bottom-0',\n 'data-[vaul-drawer-direction=bottom]:mt-24',\n 'data-[vaul-drawer-direction=bottom]:max-h-[80vh]',\n 'data-[vaul-drawer-direction=bottom]:rounded-t-lg',\n 'data-[vaul-drawer-direction=bottom]:border-t',\n\n // right drawer\n 'data-[vaul-drawer-direction=right]:inset-y-0',\n 'data-[vaul-drawer-direction=right]:right-0',\n 'data-[vaul-drawer-direction=right]:border-l',\n 'data-[vaul-drawer-direction=right]:rounded-l-md',\n !hasWidth && 'data-[vaul-drawer-direction=right]:w-3/4',\n !hasWidth && 'data-[vaul-drawer-direction=right]:sm:max-w-md',\n\n // left drawer\n 'data-[vaul-drawer-direction=left]:inset-y-0',\n 'data-[vaul-drawer-direction=left]:left-0',\n 'data-[vaul-drawer-direction=left]:border-r',\n 'data-[vaul-drawer-direction=left]:rounded-r-md',\n !hasWidth && 'data-[vaul-drawer-direction=left]:w-3/4',\n !hasWidth && 'data-[vaul-drawer-direction=left]:sm:max-w-sm',\n className,\n )}\n {...props}\n >\n <div className=\"bg-muted mx-auto mt-4 hidden h-2 w-[100px] shrink-0 rounded-full group-data-[vaul-drawer-direction=bottom]/drawer-content:block\" />\n {children}\n </DrawerPrimitive.Content>\n </DrawerPortal>\n );\n}\n\nfunction DrawerHeader({\n className,\n showClose = false,\n ...props\n}: React.ComponentProps<'div'> & { showClose?: boolean }) {\n return (\n <div\n data-slot=\"drawer-header\"\n className={cn(\n 'relative flex flex-col gap-0.5 border-b p-4 text-left md:gap-1.5 md:p-8',\n className,\n )}\n {...props}\n >\n {showClose && (\n <DrawerClose\n className=\"focus:ring-ring absolute rounded-sm opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-none disabled:pointer-events-none\"\n aria-label=\"Close\"\n asChild\n >\n <Button\n variant=\"ghost-secondary\"\n className=\"text-primary absolute top-1/2 right-4 h-8 w-8 -translate-y-1/2 p-0\"\n >\n <LuX />\n </Button>\n </DrawerClose>\n )}\n {props.children}\n </div>\n );\n}\n\nfunction DrawerFooter({ className, ...props }: React.ComponentProps<'div'>) {\n return (\n <div\n data-slot=\"drawer-footer\"\n className={cn('mt-auto flex gap-2 border-t p-4 md:p-8', className)}\n {...props}\n />\n );\n}\n\nfunction DrawerTitle({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Title>) {\n return (\n <DrawerPrimitive.Title\n data-slot=\"drawer-title\"\n className={cn('text-display-md', className)}\n {...props}\n />\n );\n}\n\nfunction DrawerDescription({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Description>) {\n return <DrawerPrimitive.Description data-slot=\"drawer-description\" {...props} />;\n}\n\nexport {\n Drawer,\n DrawerClose,\n DrawerContent,\n DrawerDescription,\n DrawerFooter,\n DrawerHeader,\n DrawerOverlay,\n DrawerPortal,\n DrawerTitle,\n DrawerTrigger,\n};\n"]}