@egose/shadcn-theme 0.0.45 → 0.0.47

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 (81) hide show
  1. package/{chunk-Y76D7CL4.js → chunk-4NENCAVM.js} +49 -76
  2. package/chunk-4NENCAVM.js.map +1 -0
  3. package/{chunk-DINA3U2H.mjs → chunk-AHLTYVNO.mjs} +3 -3
  4. package/chunk-AHLTYVNO.mjs.map +1 -0
  5. package/{chunk-UORZTXTS.js → chunk-G76KR3EI.js} +9 -9
  6. package/{chunk-UORZTXTS.js.map → chunk-G76KR3EI.js.map} +1 -1
  7. package/{chunk-6G6BLVVV.js → chunk-HORDUR37.js} +5 -5
  8. package/{chunk-6G6BLVVV.js.map → chunk-HORDUR37.js.map} +1 -1
  9. package/{chunk-4YBE4QW7.js → chunk-I6HL2O3N.js} +4 -4
  10. package/{chunk-4YBE4QW7.js.map → chunk-I6HL2O3N.js.map} +1 -1
  11. package/{chunk-GPK7H2OU.js → chunk-IBMKAE7V.js} +4 -4
  12. package/chunk-IBMKAE7V.js.map +1 -0
  13. package/{chunk-44T3L6GK.mjs → chunk-LD2UPPDV.mjs} +6 -6
  14. package/{chunk-OHX7FBQC.js → chunk-LJBAZKOP.js} +5 -5
  15. package/{chunk-OHX7FBQC.js.map → chunk-LJBAZKOP.js.map} +1 -1
  16. package/{chunk-F3OXCHFB.mjs → chunk-N53Y7EH3.mjs} +4 -4
  17. package/{chunk-F3OXCHFB.mjs.map → chunk-N53Y7EH3.mjs.map} +1 -1
  18. package/{chunk-X7U3UFEV.mjs → chunk-NTLH66CV.mjs} +49 -76
  19. package/chunk-NTLH66CV.mjs.map +1 -0
  20. package/{chunk-NXPDVDCS.js → chunk-SVBDFC23.js} +6 -6
  21. package/{chunk-NXPDVDCS.js.map → chunk-SVBDFC23.js.map} +1 -1
  22. package/{chunk-TPBAUB3K.mjs → chunk-SX5LOZOU.mjs} +2 -2
  23. package/{chunk-QNFQNDFC.js → chunk-UYHM2DIT.js} +8 -8
  24. package/{chunk-QNFQNDFC.js.map → chunk-UYHM2DIT.js.map} +1 -1
  25. package/{chunk-XFFEPPH3.mjs → chunk-WCKUFKRD.mjs} +2 -2
  26. package/{chunk-Q4NZDZDR.mjs → chunk-X6IYOIMX.mjs} +2 -2
  27. package/{chunk-M6Q6B6I3.mjs → chunk-YA6R7VDQ.mjs} +2 -2
  28. package/components/form/date-picker.js +4 -4
  29. package/components/form/date-picker.mjs +3 -3
  30. package/components/form/date-range-picker.js +5 -5
  31. package/components/form/date-range-picker.js.map +1 -1
  32. package/components/form/date-range-picker.mjs +3 -3
  33. package/components/form/date-range-picker.mjs.map +1 -1
  34. package/components/form/hook-date-picker.js +4 -4
  35. package/components/form/hook-date-picker.mjs +3 -3
  36. package/components/ui/alert-dialog.js +3 -3
  37. package/components/ui/alert-dialog.mjs +1 -1
  38. package/components/ui/alert.d.mts +1 -1
  39. package/components/ui/alert.d.ts +1 -1
  40. package/components/ui/badge.d.mts +10 -4
  41. package/components/ui/badge.d.ts +10 -4
  42. package/components/ui/badge.js +92 -9
  43. package/components/ui/badge.js.map +1 -1
  44. package/components/ui/badge.mjs +92 -9
  45. package/components/ui/badge.mjs.map +1 -1
  46. package/components/ui/button.d.mts +9 -7
  47. package/components/ui/button.d.ts +9 -7
  48. package/components/ui/button.js +2 -2
  49. package/components/ui/button.mjs +1 -1
  50. package/components/ui/calendar.js +3 -3
  51. package/components/ui/calendar.mjs +2 -2
  52. package/components/ui/carousel.js +3 -3
  53. package/components/ui/carousel.mjs +1 -1
  54. package/components/ui/command.d.mts +13 -13
  55. package/components/ui/command.d.ts +13 -13
  56. package/components/ui/pagination.js +2 -2
  57. package/components/ui/pagination.mjs +1 -1
  58. package/components/ui/resizable.d.mts +1 -1
  59. package/components/ui/resizable.d.ts +1 -1
  60. package/components/ui/sidebar.js +3 -3
  61. package/components/ui/sidebar.mjs +2 -2
  62. package/layouts/sidebar1/app-sidebar.js +7 -7
  63. package/layouts/sidebar1/app-sidebar.mjs +6 -6
  64. package/layouts/sidebar1/context-switcher.js +4 -4
  65. package/layouts/sidebar1/context-switcher.mjs +3 -3
  66. package/layouts/sidebar1/index.js +7 -7
  67. package/layouts/sidebar1/index.mjs +6 -6
  68. package/layouts/sidebar1/nav-menus.js +4 -4
  69. package/layouts/sidebar1/nav-menus.mjs +3 -3
  70. package/layouts/sidebar1/nav-user.js +4 -4
  71. package/layouts/sidebar1/nav-user.mjs +3 -3
  72. package/package.json +1 -1
  73. package/chunk-DINA3U2H.mjs.map +0 -1
  74. package/chunk-GPK7H2OU.js.map +0 -1
  75. package/chunk-X7U3UFEV.mjs.map +0 -1
  76. package/chunk-Y76D7CL4.js.map +0 -1
  77. /package/{chunk-44T3L6GK.mjs.map → chunk-LD2UPPDV.mjs.map} +0 -0
  78. /package/{chunk-TPBAUB3K.mjs.map → chunk-SX5LOZOU.mjs.map} +0 -0
  79. /package/{chunk-XFFEPPH3.mjs.map → chunk-WCKUFKRD.mjs.map} +0 -0
  80. /package/{chunk-Q4NZDZDR.mjs.map → chunk-X6IYOIMX.mjs.map} +0 -0
  81. /package/{chunk-M6Q6B6I3.mjs.map → chunk-YA6R7VDQ.mjs.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-QNFQNDFC.js","../layouts/sidebar1/nav-menus.tsx"],"names":[],"mappings":"AAAA;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,sDAA4B;AAC5B;AACE;AACA;AACA;AACF,sDAA4B;AAC5B;AACA;ACdA,2EAAuB;AACvB,2CAA6B;AA+B7B,SAAS,eAAA,CAAgB,EAAE,IAAA,EAAM,EAAA,EAAI,cAAc,CAAA,EAAkD;AACnG,EAAA,MAAM,EAAE,cAAc,EAAA,EAAI,yCAAA,CAAW;AACrC,EAAA,MAAM,KAAA,EAAO,cAAA,GAAiB,IAAA,CAAK,IAAA,EAAM,cAAA,EAAgB,QAAA;AAEzD,EAAA,uBACE,KAAA,CAAA,aAAA,CAAC,gCAAA,EAAA,IAAA,kBACC,KAAA,CAAA,aAAA,CAAC,kCAAA,EAAA,EAAkB,OAAA,EAAO,IAAA,EAAC,QAAA,EAAU,IAAA,CAAK,QAAA,EAAU,OAAA,EAAS,IAAA,CAAK,KAAA,EAAO,OAAA,EAAS,CAAA,EAAA,GAAM,aAAA,CAAc,KAAK,EAAA,CAAA,kBACzG,KAAA,CAAA,aAAA,CAAC,IAAA,EAAA,EAAK,EAAA,EAAI,IAAA,CAAK,GAAA,EAAK,IAAA,EAAM,IAAA,CAAK,GAAA,EAAK,OAAA,EAAS,CAAA,EAAA,GAAG;AA1CxD,IAAA,IAAA,EAAA;AA0C2D,IAAA,OAAA,CAAA,GAAA,EAAA,IAAA,CAAK,OAAA,EAAA,GAAL,KAAA,EAAA,KAAA,EAAA,EAAA,EAAA,CAAA,IAAA,CAAA,IAAA,EAAe,IAAA,CAAK,KAAA,CAAA;AAAA,EAAA,EAAA,CAAA,EACpE,IAAA,CAAK,KAAA,mBAAQ,KAAA,CAAA,aAAA,CAAC,IAAA,CAAK,IAAA,EAAL,IAAU,CAAA,kBACzB,KAAA,CAAA,aAAA,CAAC,MAAA,EAAA,IAAA,EAAM,IAAA,CAAK,KAAM,CACpB,CACF,CACF,CAAA;AAEJ;AAEA,SAAS,sBAAA,CAAuB,EAAE,IAAA,EAAM,EAAA,EAAI,cAAc,CAAA,EAA+C;AACvG,EAAA,MAAM,EAAE,cAAc,EAAA,EAAI,yCAAA,CAAW;AACrC,EAAA,GAAA,CAAI,CAAC,IAAA,CAAK,QAAA,EAAU,OAAO,IAAA;AAE3B,EAAA,uBACE,KAAA,CAAA,aAAA,CAAC,4BAAA,EAAA,EAAY,GAAA,EAAK,IAAA,CAAK,KAAA,EAAO,OAAA,EAAO,IAAA,EAAC,WAAA,EAAa,IAAA,CAAK,QAAA,EAAU,SAAA,EAAU,oBAAA,CAAA,kBAC1E,KAAA,CAAA,aAAA,CAAC,gCAAA,EAAA,IAAA,kBACC,KAAA,CAAA,aAAA,CAAC,mCAAA,EAAA,EAAmB,OAAA,EAAO,KAAA,CAAA,kBACzB,KAAA,CAAA,aAAA,CAAC,kCAAA,EAAA,EAAkB,OAAA,EAAS,IAAA,CAAK,MAAA,CAAA,EAC9B,IAAA,CAAK,KAAA,mBAAQ,KAAA,CAAA,aAAA,CAAC,IAAA,CAAK,IAAA,EAAL,IAAU,CAAA,kBACzB,KAAA,CAAA,aAAA,CAAC,MAAA,EAAA,IAAA,EAAM,IAAA,CAAK,KAAM,CAAA,kBAClB,KAAA,CAAA,aAAA,CAAC,yBAAA,EAAA,EAAa,SAAA,EAAU,0FAAA,CAA0F,CACpH,CACF,CAAA,kBACA,KAAA,CAAA,aAAA,CAAC,mCAAA,EAAA,IAAA,kBACC,KAAA,CAAA,aAAA,CAAC,+BAAA,EAAA,IAAA,EACE,IAAA,CAAK,QAAA,CAAS,GAAA,CAAI,CAAC,OAAA,EAAA,GAAY;AAC9B,IAAA,MAAM,KAAA,EAAO,cAAA,GAAiB,OAAA,CAAQ,IAAA,EAAM,cAAA,EAAgB,QAAA;AAE5D,IAAA,uBACE,KAAA,CAAA,aAAA,CAAC,mCAAA,EAAA,EAAmB,GAAA,EAAK,OAAA,CAAQ,MAAA,CAAA,kBAC/B,KAAA,CAAA,aAAA,CAAC,qCAAA,EAAA,EAAqB,OAAA,EAAO,IAAA,EAAC,QAAA,EAAU,OAAA,CAAQ,QAAA,EAAU,OAAA,EAAS,CAAA,EAAA,GAAM,aAAA,CAAc,KAAK,EAAA,CAAA,kBAC1F,KAAA,CAAA,aAAA;AAAA,MAAC,IAAA;AAAA,MAAA;AAAA,QACC,EAAA,EAAI,OAAA,CAAQ,GAAA;AAAA,QACZ,IAAA,EAAM,OAAA,CAAQ,GAAA;AAAA,QACd,OAAA,EAAS,CAAA,EAAA,GAAG;AA5ElC,UAAA,IAAA,EAAA;AA4EqC,UAAA,OAAA,CAAA,GAAA,EAAA,IAAA,CAAK,OAAA,EAAA,GAAL,KAAA,EAAA,KAAA,EAAA,EAAA,EAAA,CAAA,IAAA,CAAA,IAAA,EAAe,OAAA,CAAQ,KAAA,CAAA;AAAA,QAAA,CAAA;AAAA,QACtC,SAAA,EAAU;AAAA,MAAA,CAAA;AAAA,MAET,OAAA,CAAQ,KAAA,mBAAQ,KAAA,CAAA,aAAA,CAAC,OAAA,CAAQ,IAAA,EAAR,IAAa,CAAA;AAAA,sBAC/B,KAAA,CAAA,aAAA,CAAC,MAAA,EAAA,IAAA,EAAM,OAAA,CAAQ,KAAM;AAAA,IACvB,CACF,CACF,CAAA;AAAA,EAEJ,CAAC,CACH,CACF,CACF,CACF,CAAA;AAEJ;AAEO,SAAS,QAAA,CAAS,EAAE,KAAA,EAAO,OAAO,CAAA,EAAqD;AAC5F,EAAA,OAAO,KAAA,CAAM,GAAA,CAAI,CAAC,IAAA,EAAA,GAAS;AACzB,IAAA,uBACE,KAAA,CAAA,aAAA,CAAC,6BAAA,EAAA,EAAa,GAAA,EAAK,IAAA,CAAK,MAAA,CAAA,kBACtB,KAAA,CAAA,aAAA,CAAC,kCAAA,EAAA,IAAA,EAAmB,IAAA,CAAK,KAAM,CAAA,kBAC/B,KAAA,CAAA,aAAA,CAAC,4BAAA,EAAA,IAAA,EACE,IAAA,CAAK,KAAA,CAAM,GAAA;AAAA,MAAI,CAAC,IAAA,EAAA,GACf,IAAA,CAAK,SAAA,GAAY,IAAA,CAAK,QAAA,CAAS,OAAA,EAAS,EAAA,kBACtC,KAAA,CAAA,aAAA,CAAC,sBAAA,EAAA,EAAuB,GAAA,EAAK,IAAA,CAAK,KAAA,EAAO,IAAA,EAAY,EAAA,EAAI,OAAA,CAAQ,EAAA,kBAEjE,KAAA,CAAA,aAAA,CAAC,eAAA,EAAA,EAAgB,GAAA,EAAK,IAAA,CAAK,KAAA,EAAO,IAAA,EAAY,EAAA,EAAI,OAAA,CAAQ;AAAA,IAE9D,CACF,CACF,CAAA;AAAA,EAEJ,CAAC,CAAA;AACH;ADtDA;AACA;AACE;AACF,4BAAC","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-QNFQNDFC.js","sourcesContent":[null,"\"use client\";\n'use client';\n\nimport * as React from 'react';\nimport { ChevronRight } from 'lucide-react';\nimport { Collapsible, CollapsibleContent, CollapsibleTrigger } from '../../components/ui/collapsible';\nimport {\n SidebarGroup,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n} from '../../components/ui/sidebar';\nimport { useSidebar } from '../../components/ui/sidebar';\n\nexport interface IMenuSubItem {\n title: string;\n url?: string;\n icon?: React.ElementType;\n isActive?: boolean;\n onClick?: (title: string) => void;\n}\n\nexport interface IMenuItem extends IMenuSubItem {\n subItems?: IMenuSubItem[];\n}\n\nexport interface INavMenu {\n title: string;\n items: IMenuItem[];\n}\n\nfunction SidebarMenuLink({ item, as: LinkComponent }: { item: IMenuSubItem; as: React.ElementType }) {\n const { setOpenMobile } = useSidebar();\n const Comp = LinkComponent && item.url ? LinkComponent : 'button';\n\n return (\n <SidebarMenuItem>\n <SidebarMenuButton asChild isActive={item.isActive} tooltip={item.title} onClick={() => setOpenMobile(false)}>\n <Comp to={item.url} href={item.url} onClick={() => item.onClick?.(item.title)}>\n {item.icon && <item.icon />}\n <span>{item.title}</span>\n </Comp>\n </SidebarMenuButton>\n </SidebarMenuItem>\n );\n}\n\nfunction SidebarMenuCollapsible({ item, as: LinkComponent }: { item: IMenuItem; as: React.ElementType }) {\n const { setOpenMobile } = useSidebar();\n if (!item.subItems) return null;\n\n return (\n <Collapsible key={item.title} asChild defaultOpen={item.isActive} className=\"group/collapsible\">\n <SidebarMenuItem>\n <CollapsibleTrigger asChild>\n <SidebarMenuButton tooltip={item.title}>\n {item.icon && <item.icon />}\n <span>{item.title}</span>\n <ChevronRight className=\"ml-auto transition-transform duration-200 group-data-[state=open]/collapsible:rotate-90\" />\n </SidebarMenuButton>\n </CollapsibleTrigger>\n <CollapsibleContent>\n <SidebarMenuSub>\n {item.subItems.map((subItem) => {\n const Comp = LinkComponent && subItem.url ? LinkComponent : 'button';\n\n return (\n <SidebarMenuSubItem key={subItem.title}>\n <SidebarMenuSubButton asChild isActive={subItem.isActive} onClick={() => setOpenMobile(false)}>\n <Comp\n to={subItem.url}\n href={subItem.url}\n onClick={() => item.onClick?.(subItem.title)}\n className=\"block w-full\"\n >\n {subItem.icon && <subItem.icon />}\n <span>{subItem.title}</span>\n </Comp>\n </SidebarMenuSubButton>\n </SidebarMenuSubItem>\n );\n })}\n </SidebarMenuSub>\n </CollapsibleContent>\n </SidebarMenuItem>\n </Collapsible>\n );\n}\n\nexport function NavMenus({ menus, aslink }: { menus: INavMenu[]; aslink: React.ElementType }) {\n return menus.map((menu) => {\n return (\n <SidebarGroup key={menu.title}>\n <SidebarGroupLabel>{menu.title}</SidebarGroupLabel>\n <SidebarMenu>\n {menu.items.map((item) =>\n item.subItems && item.subItems.length > 0 ? (\n <SidebarMenuCollapsible key={item.title} item={item} as={aslink} />\n ) : (\n <SidebarMenuLink key={item.title} item={item} as={aslink} />\n ),\n )}\n </SidebarMenu>\n </SidebarGroup>\n );\n });\n}\n"]}
1
+ {"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-UYHM2DIT.js","../layouts/sidebar1/nav-menus.tsx"],"names":[],"mappings":"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","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/chunk-UYHM2DIT.js","sourcesContent":[null,"\"use client\";\n'use client';\n\nimport * as React from 'react';\nimport { ChevronRight } from 'lucide-react';\nimport { Collapsible, CollapsibleContent, CollapsibleTrigger } from '../../components/ui/collapsible';\nimport {\n SidebarGroup,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n} from '../../components/ui/sidebar';\nimport { useSidebar } from '../../components/ui/sidebar';\n\nexport interface IMenuSubItem {\n title: string;\n url?: string;\n icon?: React.ElementType;\n isActive?: boolean;\n onClick?: (title: string) => void;\n}\n\nexport interface IMenuItem extends IMenuSubItem {\n subItems?: IMenuSubItem[];\n}\n\nexport interface INavMenu {\n title: string;\n items: IMenuItem[];\n}\n\nfunction SidebarMenuLink({ item, as: LinkComponent }: { item: IMenuSubItem; as: React.ElementType }) {\n const { setOpenMobile } = useSidebar();\n const Comp = LinkComponent && item.url ? LinkComponent : 'button';\n\n return (\n <SidebarMenuItem>\n <SidebarMenuButton asChild isActive={item.isActive} tooltip={item.title} onClick={() => setOpenMobile(false)}>\n <Comp to={item.url} href={item.url} onClick={() => item.onClick?.(item.title)}>\n {item.icon && <item.icon />}\n <span>{item.title}</span>\n </Comp>\n </SidebarMenuButton>\n </SidebarMenuItem>\n );\n}\n\nfunction SidebarMenuCollapsible({ item, as: LinkComponent }: { item: IMenuItem; as: React.ElementType }) {\n const { setOpenMobile } = useSidebar();\n if (!item.subItems) return null;\n\n return (\n <Collapsible key={item.title} asChild defaultOpen={item.isActive} className=\"group/collapsible\">\n <SidebarMenuItem>\n <CollapsibleTrigger asChild>\n <SidebarMenuButton tooltip={item.title}>\n {item.icon && <item.icon />}\n <span>{item.title}</span>\n <ChevronRight className=\"ml-auto transition-transform duration-200 group-data-[state=open]/collapsible:rotate-90\" />\n </SidebarMenuButton>\n </CollapsibleTrigger>\n <CollapsibleContent>\n <SidebarMenuSub>\n {item.subItems.map((subItem) => {\n const Comp = LinkComponent && subItem.url ? LinkComponent : 'button';\n\n return (\n <SidebarMenuSubItem key={subItem.title}>\n <SidebarMenuSubButton asChild isActive={subItem.isActive} onClick={() => setOpenMobile(false)}>\n <Comp\n to={subItem.url}\n href={subItem.url}\n onClick={() => item.onClick?.(subItem.title)}\n className=\"block w-full\"\n >\n {subItem.icon && <subItem.icon />}\n <span>{subItem.title}</span>\n </Comp>\n </SidebarMenuSubButton>\n </SidebarMenuSubItem>\n );\n })}\n </SidebarMenuSub>\n </CollapsibleContent>\n </SidebarMenuItem>\n </Collapsible>\n );\n}\n\nexport function NavMenus({ menus, aslink }: { menus: INavMenu[]; aslink: React.ElementType }) {\n return menus.map((menu) => {\n return (\n <SidebarGroup key={menu.title}>\n <SidebarGroupLabel>{menu.title}</SidebarGroupLabel>\n <SidebarMenu>\n {menu.items.map((item) =>\n item.subItems && item.subItems.length > 0 ? (\n <SidebarMenuCollapsible key={item.title} item={item} as={aslink} />\n ) : (\n <SidebarMenuLink key={item.title} item={item} as={aslink} />\n ),\n )}\n </SidebarMenu>\n </SidebarGroup>\n );\n });\n}\n"]}
@@ -3,7 +3,7 @@ import {
3
3
  SidebarMenuButton,
4
4
  SidebarMenuItem,
5
5
  useSidebar
6
- } from "./chunk-DINA3U2H.mjs";
6
+ } from "./chunk-AHLTYVNO.mjs";
7
7
  import {
8
8
  DropdownMenu,
9
9
  DropdownMenuContent,
@@ -72,4 +72,4 @@ function NavUser({
72
72
  export {
73
73
  NavUser
74
74
  };
75
- //# sourceMappingURL=chunk-XFFEPPH3.mjs.map
75
+ //# sourceMappingURL=chunk-WCKUFKRD.mjs.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  buttonVariants
3
- } from "./chunk-X7U3UFEV.mjs";
3
+ } from "./chunk-NTLH66CV.mjs";
4
4
  import {
5
5
  cn
6
6
  } from "./chunk-F5XCCSBC.mjs";
@@ -68,4 +68,4 @@ Calendar.displayName = "Calendar";
68
68
  export {
69
69
  Calendar
70
70
  };
71
- //# sourceMappingURL=chunk-Q4NZDZDR.mjs.map
71
+ //# sourceMappingURL=chunk-X6IYOIMX.mjs.map
@@ -3,7 +3,7 @@ import {
3
3
  SidebarMenuButton,
4
4
  SidebarMenuItem,
5
5
  useSidebar
6
- } from "./chunk-DINA3U2H.mjs";
6
+ } from "./chunk-AHLTYVNO.mjs";
7
7
  import {
8
8
  DropdownMenu,
9
9
  DropdownMenuContent,
@@ -70,4 +70,4 @@ function ContextSwitcher({
70
70
  export {
71
71
  ContextSwitcher
72
72
  };
73
- //# sourceMappingURL=chunk-M6Q6B6I3.mjs.map
73
+ //# sourceMappingURL=chunk-YA6R7VDQ.mjs.map
@@ -2,10 +2,10 @@
2
2
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
3
3
 
4
4
 
5
- var _chunkNXPDVDCSjs = require('../../chunk-NXPDVDCS.js');
5
+ var _chunkSVBDFC23js = require('../../chunk-SVBDFC23.js');
6
6
  require('../../chunk-NK4XTZ5W.js');
7
- require('../../chunk-4YBE4QW7.js');
8
- require('../../chunk-Y76D7CL4.js');
7
+ require('../../chunk-I6HL2O3N.js');
8
+ require('../../chunk-4NENCAVM.js');
9
9
  require('../../chunk-A34GFF2E.js');
10
10
  require('../../chunk-LQETWWSU.js');
11
11
  require('../../chunk-TUFO3JJE.js');
@@ -13,5 +13,5 @@ require('../../chunk-6N4WCMTE.js');
13
13
  require('../../chunk-2NMEKWO5.js');
14
14
 
15
15
 
16
- exports.FormDatePicker = _chunkNXPDVDCSjs.FormDatePicker;
16
+ exports.FormDatePicker = _chunkSVBDFC23js.FormDatePicker;
17
17
  //# sourceMappingURL=date-picker.js.map
@@ -1,10 +1,10 @@
1
1
  "use client";
2
2
  import {
3
3
  FormDatePicker
4
- } from "../../chunk-F3OXCHFB.mjs";
4
+ } from "../../chunk-N53Y7EH3.mjs";
5
5
  import "../../chunk-TMC4JKD5.mjs";
6
- import "../../chunk-Q4NZDZDR.mjs";
7
- import "../../chunk-X7U3UFEV.mjs";
6
+ import "../../chunk-X6IYOIMX.mjs";
7
+ import "../../chunk-NTLH66CV.mjs";
8
8
  import "../../chunk-NRHWGE26.mjs";
9
9
  import "../../chunk-Z3VXGHCE.mjs";
10
10
  import "../../chunk-JWENANTO.mjs";
@@ -7,10 +7,10 @@
7
7
  var _chunkNK4XTZ5Wjs = require('../../chunk-NK4XTZ5W.js');
8
8
 
9
9
 
10
- var _chunk4YBE4QW7js = require('../../chunk-4YBE4QW7.js');
10
+ var _chunkI6HL2O3Njs = require('../../chunk-I6HL2O3N.js');
11
11
 
12
12
 
13
- var _chunkY76D7CL4js = require('../../chunk-Y76D7CL4.js');
13
+ var _chunk4NENCAVMjs = require('../../chunk-4NENCAVM.js');
14
14
  require('../../chunk-A34GFF2E.js');
15
15
 
16
16
 
@@ -63,16 +63,16 @@ function FormDateRangePicker({
63
63
  }, [value]);
64
64
  if (!id) id = _kebabCase3.default.call(void 0, name);
65
65
  return /* @__PURE__ */ _react2.default.createElement("div", { className: _chunk6N4WCMTEjs.cn.call(void 0, "date-range-picker", classNames == null ? void 0 : classNames.wrapper) }, label && /* @__PURE__ */ _react2.default.createElement(_chunkTUFO3JJEjs.Label, { htmlFor: id, className: classNames == null ? void 0 : classNames.label, required }, label), /* @__PURE__ */ _react2.default.createElement("div", { className: _chunk6N4WCMTEjs.cn.call(void 0, "grid gap-2") }, /* @__PURE__ */ _react2.default.createElement(_chunkNK4XTZ5Wjs.Popover, null, /* @__PURE__ */ _react2.default.createElement(_chunkNK4XTZ5Wjs.PopoverTrigger, { asChild: true }, /* @__PURE__ */ _react2.default.createElement(
66
- _chunkY76D7CL4js.Button,
66
+ _chunk4NENCAVMjs.Button,
67
67
  {
68
68
  variant: value ? "secondary" : "muted",
69
- outline: true,
69
+ appearance: "outline",
70
70
  className: _chunk6N4WCMTEjs.cn.call(void 0, "min-w-[240px] justify-start text-left font-normal", classNames == null ? void 0 : classNames.button)
71
71
  },
72
72
  /* @__PURE__ */ _react2.default.createElement(_lucidereact.CalendarIcon, null),
73
73
  (value == null ? void 0 : value.from) ? value.to ? /* @__PURE__ */ _react2.default.createElement(_react2.default.Fragment, null, formatDate(value.from), " - ", formatDate(value.to)) : formatDate(value.from) : /* @__PURE__ */ _react2.default.createElement("span", null, "Pick a date")
74
74
  )), /* @__PURE__ */ _react2.default.createElement(_chunkNK4XTZ5Wjs.PopoverContent, { className: "w-auto p-0", align: "start" }, /* @__PURE__ */ _react2.default.createElement(
75
- _chunk4YBE4QW7js.Calendar,
75
+ _chunkI6HL2O3Njs.Calendar,
76
76
  {
77
77
  mode: "range",
78
78
  defaultMonth: value == null ? void 0 : value.from,
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/components/form/date-range-picker.js","../../../components/form/date-range-picker.tsx"],"names":[],"mappings":"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","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/components/form/date-range-picker.js","sourcesContent":[null,"\"use client\";\n'use client';\n\nimport React, { HTMLAttributes, useEffect, useState } from 'react';\nimport { addDays, format, isEqual } from 'date-fns';\nimport { CalendarIcon } from 'lucide-react';\nimport { DateRange } from 'react-day-picker';\nimport _kebabCase from 'lodash-es/kebabCase';\nimport _isNil from 'lodash-es/isNil';\n\nimport { isEqualDates } from '../../lib/date';\nimport { cn } from '../../lib/utils';\nimport { Button } from '../ui/button';\nimport { Label } from '../ui/label';\nimport { Calendar } from '../ui/calendar';\nimport { Popover, PopoverContent, PopoverTrigger } from '../ui/popover';\n\nfunction formatDate(date: Date) {\n return format(date, 'LLL dd, y');\n}\n\nexport interface FormDateRangePickerProps {\n id?: string;\n name: string;\n label?: string;\n required?: boolean;\n value?: DateRange;\n onChange: (value: DateRange | undefined) => void;\n classNames?: {\n wrapper?: string;\n label?: string;\n button?: string;\n };\n}\n\nexport function FormDateRangePicker({\n id,\n name,\n label,\n required = false,\n value: initialValue,\n onChange,\n classNames,\n}: FormDateRangePickerProps) {\n let initialFrom!: Date;\n let initialTo!: Date;\n\n if (initialValue) {\n const from = initialValue.from ?? new Date();\n const to = initialValue.to ?? new Date();\n initialFrom = new Date(from.getFullYear(), from.getMonth(), from.getDate());\n initialTo = new Date(to.getFullYear(), to.getMonth(), to.getDate());\n } else {\n const now = new Date();\n const startOfDay = new Date(now.getFullYear(), now.getMonth(), now.getDate());\n initialFrom = startOfDay;\n initialTo = startOfDay;\n }\n\n const [value, setValue] = useState<DateRange | undefined>({\n from: initialFrom,\n to: initialTo,\n });\n\n useEffect(() => {\n onChange(value);\n }, [value]);\n\n if (!id) id = _kebabCase(name);\n\n return (\n <div className={cn('date-range-picker', classNames?.wrapper)}>\n {label && (\n <Label htmlFor={id} className={classNames?.label} required={required}>\n {label}\n </Label>\n )}\n <div className={cn('grid gap-2')}>\n <Popover>\n <PopoverTrigger asChild>\n <Button\n variant={value ? 'secondary' : 'muted'}\n outline\n className={cn('min-w-[240px] justify-start text-left font-normal', classNames?.button)}\n >\n <CalendarIcon />\n {value?.from ? (\n value.to ? (\n <>\n {formatDate(value.from)} - {formatDate(value.to)}\n </>\n ) : (\n formatDate(value.from)\n )\n ) : (\n <span>Pick a date</span>\n )}\n </Button>\n </PopoverTrigger>\n <PopoverContent className=\"w-auto p-0\" align=\"start\">\n <Calendar\n mode=\"range\"\n defaultMonth={value?.from}\n selected={value}\n onSelect={(dateRange) => {\n if (!isEqualDates([value?.from, value?.to], [dateRange?.from, dateRange?.to])) {\n setValue(dateRange);\n }\n }}\n numberOfMonths={2}\n />\n </PopoverContent>\n </Popover>\n </div>\n </div>\n );\n}\n"]}
1
+ {"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/components/form/date-range-picker.js","../../../components/form/date-range-picker.tsx"],"names":[],"mappings":"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","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/components/form/date-range-picker.js","sourcesContent":[null,"\"use client\";\n'use client';\n\nimport React, { HTMLAttributes, useEffect, useState } from 'react';\nimport { addDays, format, isEqual } from 'date-fns';\nimport { CalendarIcon } from 'lucide-react';\nimport { DateRange } from 'react-day-picker';\nimport _kebabCase from 'lodash-es/kebabCase';\nimport _isNil from 'lodash-es/isNil';\n\nimport { isEqualDates } from '../../lib/date';\nimport { cn } from '../../lib/utils';\nimport { Button } from '../ui/button';\nimport { Label } from '../ui/label';\nimport { Calendar } from '../ui/calendar';\nimport { Popover, PopoverContent, PopoverTrigger } from '../ui/popover';\n\nfunction formatDate(date: Date) {\n return format(date, 'LLL dd, y');\n}\n\nexport interface FormDateRangePickerProps {\n id?: string;\n name: string;\n label?: string;\n required?: boolean;\n value?: DateRange;\n onChange: (value: DateRange | undefined) => void;\n classNames?: {\n wrapper?: string;\n label?: string;\n button?: string;\n };\n}\n\nexport function FormDateRangePicker({\n id,\n name,\n label,\n required = false,\n value: initialValue,\n onChange,\n classNames,\n}: FormDateRangePickerProps) {\n let initialFrom!: Date;\n let initialTo!: Date;\n\n if (initialValue) {\n const from = initialValue.from ?? new Date();\n const to = initialValue.to ?? new Date();\n initialFrom = new Date(from.getFullYear(), from.getMonth(), from.getDate());\n initialTo = new Date(to.getFullYear(), to.getMonth(), to.getDate());\n } else {\n const now = new Date();\n const startOfDay = new Date(now.getFullYear(), now.getMonth(), now.getDate());\n initialFrom = startOfDay;\n initialTo = startOfDay;\n }\n\n const [value, setValue] = useState<DateRange | undefined>({\n from: initialFrom,\n to: initialTo,\n });\n\n useEffect(() => {\n onChange(value);\n }, [value]);\n\n if (!id) id = _kebabCase(name);\n\n return (\n <div className={cn('date-range-picker', classNames?.wrapper)}>\n {label && (\n <Label htmlFor={id} className={classNames?.label} required={required}>\n {label}\n </Label>\n )}\n <div className={cn('grid gap-2')}>\n <Popover>\n <PopoverTrigger asChild>\n <Button\n variant={value ? 'secondary' : 'muted'}\n appearance=\"outline\"\n className={cn('min-w-[240px] justify-start text-left font-normal', classNames?.button)}\n >\n <CalendarIcon />\n {value?.from ? (\n value.to ? (\n <>\n {formatDate(value.from)} - {formatDate(value.to)}\n </>\n ) : (\n formatDate(value.from)\n )\n ) : (\n <span>Pick a date</span>\n )}\n </Button>\n </PopoverTrigger>\n <PopoverContent className=\"w-auto p-0\" align=\"start\">\n <Calendar\n mode=\"range\"\n defaultMonth={value?.from}\n selected={value}\n onSelect={(dateRange) => {\n if (!isEqualDates([value?.from, value?.to], [dateRange?.from, dateRange?.to])) {\n setValue(dateRange);\n }\n }}\n numberOfMonths={2}\n />\n </PopoverContent>\n </Popover>\n </div>\n </div>\n );\n}\n"]}
@@ -6,10 +6,10 @@ import {
6
6
  } from "../../chunk-TMC4JKD5.mjs";
7
7
  import {
8
8
  Calendar
9
- } from "../../chunk-Q4NZDZDR.mjs";
9
+ } from "../../chunk-X6IYOIMX.mjs";
10
10
  import {
11
11
  Button
12
- } from "../../chunk-X7U3UFEV.mjs";
12
+ } from "../../chunk-NTLH66CV.mjs";
13
13
  import "../../chunk-NRHWGE26.mjs";
14
14
  import {
15
15
  isEqualDates
@@ -65,7 +65,7 @@ function FormDateRangePicker({
65
65
  Button,
66
66
  {
67
67
  variant: value ? "secondary" : "muted",
68
- outline: true,
68
+ appearance: "outline",
69
69
  className: cn("min-w-[240px] justify-start text-left font-normal", classNames == null ? void 0 : classNames.button)
70
70
  },
71
71
  /* @__PURE__ */ React.createElement(CalendarIcon, null),
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../components/form/date-range-picker.tsx"],"sourcesContent":["\"use client\";\n'use client';\n\nimport React, { HTMLAttributes, useEffect, useState } from 'react';\nimport { addDays, format, isEqual } from 'date-fns';\nimport { CalendarIcon } from 'lucide-react';\nimport { DateRange } from 'react-day-picker';\nimport _kebabCase from 'lodash-es/kebabCase';\nimport _isNil from 'lodash-es/isNil';\n\nimport { isEqualDates } from '../../lib/date';\nimport { cn } from '../../lib/utils';\nimport { Button } from '../ui/button';\nimport { Label } from '../ui/label';\nimport { Calendar } from '../ui/calendar';\nimport { Popover, PopoverContent, PopoverTrigger } from '../ui/popover';\n\nfunction formatDate(date: Date) {\n return format(date, 'LLL dd, y');\n}\n\nexport interface FormDateRangePickerProps {\n id?: string;\n name: string;\n label?: string;\n required?: boolean;\n value?: DateRange;\n onChange: (value: DateRange | undefined) => void;\n classNames?: {\n wrapper?: string;\n label?: string;\n button?: string;\n };\n}\n\nexport function FormDateRangePicker({\n id,\n name,\n label,\n required = false,\n value: initialValue,\n onChange,\n classNames,\n}: FormDateRangePickerProps) {\n let initialFrom!: Date;\n let initialTo!: Date;\n\n if (initialValue) {\n const from = initialValue.from ?? new Date();\n const to = initialValue.to ?? new Date();\n initialFrom = new Date(from.getFullYear(), from.getMonth(), from.getDate());\n initialTo = new Date(to.getFullYear(), to.getMonth(), to.getDate());\n } else {\n const now = new Date();\n const startOfDay = new Date(now.getFullYear(), now.getMonth(), now.getDate());\n initialFrom = startOfDay;\n initialTo = startOfDay;\n }\n\n const [value, setValue] = useState<DateRange | undefined>({\n from: initialFrom,\n to: initialTo,\n });\n\n useEffect(() => {\n onChange(value);\n }, [value]);\n\n if (!id) id = _kebabCase(name);\n\n return (\n <div className={cn('date-range-picker', classNames?.wrapper)}>\n {label && (\n <Label htmlFor={id} className={classNames?.label} required={required}>\n {label}\n </Label>\n )}\n <div className={cn('grid gap-2')}>\n <Popover>\n <PopoverTrigger asChild>\n <Button\n variant={value ? 'secondary' : 'muted'}\n outline\n className={cn('min-w-[240px] justify-start text-left font-normal', classNames?.button)}\n >\n <CalendarIcon />\n {value?.from ? (\n value.to ? (\n <>\n {formatDate(value.from)} - {formatDate(value.to)}\n </>\n ) : (\n formatDate(value.from)\n )\n ) : (\n <span>Pick a date</span>\n )}\n </Button>\n </PopoverTrigger>\n <PopoverContent className=\"w-auto p-0\" align=\"start\">\n <Calendar\n mode=\"range\"\n defaultMonth={value?.from}\n selected={value}\n onSelect={(dateRange) => {\n if (!isEqualDates([value?.from, value?.to], [dateRange?.from, dateRange?.to])) {\n setValue(dateRange);\n }\n }}\n numberOfMonths={2}\n />\n </PopoverContent>\n </Popover>\n </div>\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAGA,OAAO,SAAyB,WAAW,gBAAgB;AAC3D,SAAkB,cAAuB;AACzC,SAAS,oBAAoB;AAE7B,OAAO,gBAAgB;AAUvB,SAAS,WAAW,MAAY;AAC9B,SAAO,OAAO,MAAM,WAAW;AACjC;AAgBO,SAAS,oBAAoB;AAAA,EAClC;AAAA,EACA;AAAA,EACA;AAAA,EACA,WAAW;AAAA,EACX,OAAO;AAAA,EACP;AAAA,EACA;AACF,GAA6B;AA3C7B;AA4CE,MAAI;AACJ,MAAI;AAEJ,MAAI,cAAc;AAChB,UAAM,QAAO,kBAAa,SAAb,YAAqB,oBAAI,KAAK;AAC3C,UAAM,MAAK,kBAAa,OAAb,YAAmB,oBAAI,KAAK;AACvC,kBAAc,IAAI,KAAK,KAAK,YAAY,GAAG,KAAK,SAAS,GAAG,KAAK,QAAQ,CAAC;AAC1E,gBAAY,IAAI,KAAK,GAAG,YAAY,GAAG,GAAG,SAAS,GAAG,GAAG,QAAQ,CAAC;AAAA,EACpE,OAAO;AACL,UAAM,MAAM,oBAAI,KAAK;AACrB,UAAM,aAAa,IAAI,KAAK,IAAI,YAAY,GAAG,IAAI,SAAS,GAAG,IAAI,QAAQ,CAAC;AAC5E,kBAAc;AACd,gBAAY;AAAA,EACd;AAEA,QAAM,CAAC,OAAO,QAAQ,IAAI,SAAgC;AAAA,IACxD,MAAM;AAAA,IACN,IAAI;AAAA,EACN,CAAC;AAED,YAAU,MAAM;AACd,aAAS,KAAK;AAAA,EAChB,GAAG,CAAC,KAAK,CAAC;AAEV,MAAI,CAAC,GAAI,MAAK,WAAW,IAAI;AAE7B,SACE,oCAAC,SAAI,WAAW,GAAG,qBAAqB,yCAAY,OAAO,KACxD,SACC,oCAAC,SAAM,SAAS,IAAI,WAAW,yCAAY,OAAO,YAC/C,KACH,GAEF,oCAAC,SAAI,WAAW,GAAG,YAAY,KAC7B,oCAAC,eACC,oCAAC,kBAAe,SAAO,QACrB;AAAA,IAAC;AAAA;AAAA,MACC,SAAS,QAAQ,cAAc;AAAA,MAC/B,SAAO;AAAA,MACP,WAAW,GAAG,qDAAqD,yCAAY,MAAM;AAAA;AAAA,IAErF,oCAAC,kBAAa;AAAA,KACb,+BAAO,QACN,MAAM,KACJ,0DACG,WAAW,MAAM,IAAI,GAAE,OAAI,WAAW,MAAM,EAAE,CACjD,IAEA,WAAW,MAAM,IAAI,IAGvB,oCAAC,cAAK,aAAW;AAAA,EAErB,CACF,GACA,oCAAC,kBAAe,WAAU,cAAa,OAAM,WAC3C;AAAA,IAAC;AAAA;AAAA,MACC,MAAK;AAAA,MACL,cAAc,+BAAO;AAAA,MACrB,UAAU;AAAA,MACV,UAAU,CAAC,cAAc;AACvB,YAAI,CAAC,aAAa,CAAC,+BAAO,MAAM,+BAAO,EAAE,GAAG,CAAC,uCAAW,MAAM,uCAAW,EAAE,CAAC,GAAG;AAC7E,mBAAS,SAAS;AAAA,QACpB;AAAA,MACF;AAAA,MACA,gBAAgB;AAAA;AAAA,EAClB,CACF,CACF,CACF,CACF;AAEJ;","names":[]}
1
+ {"version":3,"sources":["../../../components/form/date-range-picker.tsx"],"sourcesContent":["\"use client\";\n'use client';\n\nimport React, { HTMLAttributes, useEffect, useState } from 'react';\nimport { addDays, format, isEqual } from 'date-fns';\nimport { CalendarIcon } from 'lucide-react';\nimport { DateRange } from 'react-day-picker';\nimport _kebabCase from 'lodash-es/kebabCase';\nimport _isNil from 'lodash-es/isNil';\n\nimport { isEqualDates } from '../../lib/date';\nimport { cn } from '../../lib/utils';\nimport { Button } from '../ui/button';\nimport { Label } from '../ui/label';\nimport { Calendar } from '../ui/calendar';\nimport { Popover, PopoverContent, PopoverTrigger } from '../ui/popover';\n\nfunction formatDate(date: Date) {\n return format(date, 'LLL dd, y');\n}\n\nexport interface FormDateRangePickerProps {\n id?: string;\n name: string;\n label?: string;\n required?: boolean;\n value?: DateRange;\n onChange: (value: DateRange | undefined) => void;\n classNames?: {\n wrapper?: string;\n label?: string;\n button?: string;\n };\n}\n\nexport function FormDateRangePicker({\n id,\n name,\n label,\n required = false,\n value: initialValue,\n onChange,\n classNames,\n}: FormDateRangePickerProps) {\n let initialFrom!: Date;\n let initialTo!: Date;\n\n if (initialValue) {\n const from = initialValue.from ?? new Date();\n const to = initialValue.to ?? new Date();\n initialFrom = new Date(from.getFullYear(), from.getMonth(), from.getDate());\n initialTo = new Date(to.getFullYear(), to.getMonth(), to.getDate());\n } else {\n const now = new Date();\n const startOfDay = new Date(now.getFullYear(), now.getMonth(), now.getDate());\n initialFrom = startOfDay;\n initialTo = startOfDay;\n }\n\n const [value, setValue] = useState<DateRange | undefined>({\n from: initialFrom,\n to: initialTo,\n });\n\n useEffect(() => {\n onChange(value);\n }, [value]);\n\n if (!id) id = _kebabCase(name);\n\n return (\n <div className={cn('date-range-picker', classNames?.wrapper)}>\n {label && (\n <Label htmlFor={id} className={classNames?.label} required={required}>\n {label}\n </Label>\n )}\n <div className={cn('grid gap-2')}>\n <Popover>\n <PopoverTrigger asChild>\n <Button\n variant={value ? 'secondary' : 'muted'}\n appearance=\"outline\"\n className={cn('min-w-[240px] justify-start text-left font-normal', classNames?.button)}\n >\n <CalendarIcon />\n {value?.from ? (\n value.to ? (\n <>\n {formatDate(value.from)} - {formatDate(value.to)}\n </>\n ) : (\n formatDate(value.from)\n )\n ) : (\n <span>Pick a date</span>\n )}\n </Button>\n </PopoverTrigger>\n <PopoverContent className=\"w-auto p-0\" align=\"start\">\n <Calendar\n mode=\"range\"\n defaultMonth={value?.from}\n selected={value}\n onSelect={(dateRange) => {\n if (!isEqualDates([value?.from, value?.to], [dateRange?.from, dateRange?.to])) {\n setValue(dateRange);\n }\n }}\n numberOfMonths={2}\n />\n </PopoverContent>\n </Popover>\n </div>\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAGA,OAAO,SAAyB,WAAW,gBAAgB;AAC3D,SAAkB,cAAuB;AACzC,SAAS,oBAAoB;AAE7B,OAAO,gBAAgB;AAUvB,SAAS,WAAW,MAAY;AAC9B,SAAO,OAAO,MAAM,WAAW;AACjC;AAgBO,SAAS,oBAAoB;AAAA,EAClC;AAAA,EACA;AAAA,EACA;AAAA,EACA,WAAW;AAAA,EACX,OAAO;AAAA,EACP;AAAA,EACA;AACF,GAA6B;AA3C7B;AA4CE,MAAI;AACJ,MAAI;AAEJ,MAAI,cAAc;AAChB,UAAM,QAAO,kBAAa,SAAb,YAAqB,oBAAI,KAAK;AAC3C,UAAM,MAAK,kBAAa,OAAb,YAAmB,oBAAI,KAAK;AACvC,kBAAc,IAAI,KAAK,KAAK,YAAY,GAAG,KAAK,SAAS,GAAG,KAAK,QAAQ,CAAC;AAC1E,gBAAY,IAAI,KAAK,GAAG,YAAY,GAAG,GAAG,SAAS,GAAG,GAAG,QAAQ,CAAC;AAAA,EACpE,OAAO;AACL,UAAM,MAAM,oBAAI,KAAK;AACrB,UAAM,aAAa,IAAI,KAAK,IAAI,YAAY,GAAG,IAAI,SAAS,GAAG,IAAI,QAAQ,CAAC;AAC5E,kBAAc;AACd,gBAAY;AAAA,EACd;AAEA,QAAM,CAAC,OAAO,QAAQ,IAAI,SAAgC;AAAA,IACxD,MAAM;AAAA,IACN,IAAI;AAAA,EACN,CAAC;AAED,YAAU,MAAM;AACd,aAAS,KAAK;AAAA,EAChB,GAAG,CAAC,KAAK,CAAC;AAEV,MAAI,CAAC,GAAI,MAAK,WAAW,IAAI;AAE7B,SACE,oCAAC,SAAI,WAAW,GAAG,qBAAqB,yCAAY,OAAO,KACxD,SACC,oCAAC,SAAM,SAAS,IAAI,WAAW,yCAAY,OAAO,YAC/C,KACH,GAEF,oCAAC,SAAI,WAAW,GAAG,YAAY,KAC7B,oCAAC,eACC,oCAAC,kBAAe,SAAO,QACrB;AAAA,IAAC;AAAA;AAAA,MACC,SAAS,QAAQ,cAAc;AAAA,MAC/B,YAAW;AAAA,MACX,WAAW,GAAG,qDAAqD,yCAAY,MAAM;AAAA;AAAA,IAErF,oCAAC,kBAAa;AAAA,KACb,+BAAO,QACN,MAAM,KACJ,0DACG,WAAW,MAAM,IAAI,GAAE,OAAI,WAAW,MAAM,EAAE,CACjD,IAEA,WAAW,MAAM,IAAI,IAGvB,oCAAC,cAAK,aAAW;AAAA,EAErB,CACF,GACA,oCAAC,kBAAe,WAAU,cAAa,OAAM,WAC3C;AAAA,IAAC;AAAA;AAAA,MACC,MAAK;AAAA,MACL,cAAc,+BAAO;AAAA,MACrB,UAAU;AAAA,MACV,UAAU,CAAC,cAAc;AACvB,YAAI,CAAC,aAAa,CAAC,+BAAO,MAAM,+BAAO,EAAE,GAAG,CAAC,uCAAW,MAAM,uCAAW,EAAE,CAAC,GAAG;AAC7E,mBAAS,SAAS;AAAA,QACpB;AAAA,MACF;AAAA,MACA,gBAAgB;AAAA;AAAA,EAClB,CACF,CACF,CACF,CACF;AAEJ;","names":[]}
@@ -5,10 +5,10 @@
5
5
  var _chunkIC3ASFKZjs = require('../../chunk-IC3ASFKZ.js');
6
6
 
7
7
 
8
- var _chunkNXPDVDCSjs = require('../../chunk-NXPDVDCS.js');
8
+ var _chunkSVBDFC23js = require('../../chunk-SVBDFC23.js');
9
9
  require('../../chunk-NK4XTZ5W.js');
10
- require('../../chunk-4YBE4QW7.js');
11
- require('../../chunk-Y76D7CL4.js');
10
+ require('../../chunk-I6HL2O3N.js');
11
+ require('../../chunk-4NENCAVM.js');
12
12
  require('../../chunk-A34GFF2E.js');
13
13
  require('../../chunk-LQETWWSU.js');
14
14
  require('../../chunk-TUFO3JJE.js');
@@ -52,7 +52,7 @@ function HookFormDatePicker(_a) {
52
52
  rules,
53
53
  render: ({ field: { onChange, onBlur, value } }) => {
54
54
  return /* @__PURE__ */ _react2.default.createElement(
55
- _chunkNXPDVDCSjs.FormDatePicker,
55
+ _chunkSVBDFC23js.FormDatePicker,
56
56
  _chunk2NMEKWO5js.__spreadProps.call(void 0, _chunk2NMEKWO5js.__spreadValues.call(void 0, {
57
57
  id,
58
58
  name,
@@ -4,10 +4,10 @@ import {
4
4
  } from "../../chunk-4UZN52P7.mjs";
5
5
  import {
6
6
  FormDatePicker
7
- } from "../../chunk-F3OXCHFB.mjs";
7
+ } from "../../chunk-N53Y7EH3.mjs";
8
8
  import "../../chunk-TMC4JKD5.mjs";
9
- import "../../chunk-Q4NZDZDR.mjs";
10
- import "../../chunk-X7U3UFEV.mjs";
9
+ import "../../chunk-X6IYOIMX.mjs";
10
+ import "../../chunk-NTLH66CV.mjs";
11
11
  import "../../chunk-NRHWGE26.mjs";
12
12
  import "../../chunk-Z3VXGHCE.mjs";
13
13
  import "../../chunk-JWENANTO.mjs";
@@ -2,7 +2,7 @@
2
2
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } }
3
3
 
4
4
 
5
- var _chunkY76D7CL4js = require('../../chunk-Y76D7CL4.js');
5
+ var _chunk4NENCAVMjs = require('../../chunk-4NENCAVM.js');
6
6
  require('../../chunk-A34GFF2E.js');
7
7
 
8
8
 
@@ -70,7 +70,7 @@ var AlertDialogDescription = React.forwardRef((_a, ref) => {
70
70
  AlertDialogDescription.displayName = AlertDialogPrimitive.Description.displayName;
71
71
  var AlertDialogAction = React.forwardRef((_a, ref) => {
72
72
  var _b = _a, { className } = _b, props = _chunk2NMEKWO5js.__objRest.call(void 0, _b, ["className"]);
73
- return /* @__PURE__ */ React.createElement(AlertDialogPrimitive.Action, _chunk2NMEKWO5js.__spreadValues.call(void 0, { ref, className: _chunk6N4WCMTEjs.cn.call(void 0, _chunkY76D7CL4js.buttonVariants.call(void 0, ), className) }, props));
73
+ return /* @__PURE__ */ React.createElement(AlertDialogPrimitive.Action, _chunk2NMEKWO5js.__spreadValues.call(void 0, { ref, className: _chunk6N4WCMTEjs.cn.call(void 0, _chunk4NENCAVMjs.buttonVariants.call(void 0, ), className) }, props));
74
74
  });
75
75
  AlertDialogAction.displayName = AlertDialogPrimitive.Action.displayName;
76
76
  var AlertDialogCancel = React.forwardRef((_a, ref) => {
@@ -79,7 +79,7 @@ var AlertDialogCancel = React.forwardRef((_a, ref) => {
79
79
  AlertDialogPrimitive.Cancel,
80
80
  _chunk2NMEKWO5js.__spreadValues.call(void 0, {
81
81
  ref,
82
- className: _chunk6N4WCMTEjs.cn.call(void 0, _chunkY76D7CL4js.buttonVariants.call(void 0, { variant: "light" }), "mt-2 sm:mt-0", className)
82
+ className: _chunk6N4WCMTEjs.cn.call(void 0, _chunk4NENCAVMjs.buttonVariants.call(void 0, { variant: "light" }), "mt-2 sm:mt-0", className)
83
83
  }, props)
84
84
  );
85
85
  });
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import {
3
3
  buttonVariants
4
- } from "../../chunk-X7U3UFEV.mjs";
4
+ } from "../../chunk-NTLH66CV.mjs";
5
5
  import "../../chunk-NRHWGE26.mjs";
6
6
  import {
7
7
  cn
@@ -3,7 +3,7 @@ import * as React from 'react';
3
3
  import { VariantProps } from 'class-variance-authority';
4
4
 
5
5
  declare const Alert: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & VariantProps<(props?: ({
6
- variant?: "destructive" | "default" | null | undefined;
6
+ variant?: "default" | "destructive" | null | undefined;
7
7
  } & class_variance_authority_types.ClassProp) | undefined) => string> & React.RefAttributes<HTMLDivElement>>;
8
8
  declare const AlertTitle: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLHeadingElement> & React.RefAttributes<HTMLParagraphElement>>;
9
9
  declare const AlertDescription: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLParagraphElement> & React.RefAttributes<HTMLParagraphElement>>;
@@ -3,7 +3,7 @@ import * as React from 'react';
3
3
  import { VariantProps } from 'class-variance-authority';
4
4
 
5
5
  declare const Alert: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & VariantProps<(props?: ({
6
- variant?: "destructive" | "default" | null | undefined;
6
+ variant?: "default" | "destructive" | null | undefined;
7
7
  } & class_variance_authority_types.ClassProp) | undefined) => string> & React.RefAttributes<HTMLDivElement>>;
8
8
  declare const AlertTitle: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLHeadingElement> & React.RefAttributes<HTMLParagraphElement>>;
9
9
  declare const AlertDescription: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLParagraphElement> & React.RefAttributes<HTMLParagraphElement>>;
@@ -3,10 +3,16 @@ import * as React from 'react';
3
3
  import { VariantProps } from 'class-variance-authority';
4
4
 
5
5
  declare const badgeVariants: (props?: ({
6
- variant?: "secondary" | "destructive" | "default" | "outline" | null | undefined;
6
+ variant?: "destructive" | "link" | "primary" | "secondary" | "success" | "warning" | "danger" | "info" | "light" | "dark" | "accent" | "muted" | "ghost" | null | undefined;
7
+ size?: "default" | "sm" | "lg" | null | undefined;
8
+ appearance?: "solid" | "outline" | "outlineFilled" | null | undefined;
7
9
  } & class_variance_authority_types.ClassProp) | undefined) => string;
8
- interface BadgeProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof badgeVariants> {
10
+ type BadgeVariant = NonNullable<VariantProps<typeof badgeVariants>['variant']>;
11
+ type BadgeSize = NonNullable<VariantProps<typeof badgeVariants>['size']>;
12
+ type BadgeAppearance = NonNullable<VariantProps<typeof badgeVariants>['appearance']>;
13
+ interface BadgeProps extends React.HTMLAttributes<HTMLSpanElement>, VariantProps<typeof badgeVariants> {
14
+ asChild?: boolean;
9
15
  }
10
- declare function Badge({ className, variant, ...props }: BadgeProps): React.JSX.Element;
16
+ declare const Badge: React.ForwardRefExoticComponent<BadgeProps & React.RefAttributes<HTMLSpanElement>>;
11
17
 
12
- export { Badge, type BadgeProps, badgeVariants };
18
+ export { Badge, type BadgeAppearance, type BadgeProps, type BadgeSize, type BadgeVariant, badgeVariants };
@@ -3,10 +3,16 @@ import * as React from 'react';
3
3
  import { VariantProps } from 'class-variance-authority';
4
4
 
5
5
  declare const badgeVariants: (props?: ({
6
- variant?: "secondary" | "destructive" | "default" | "outline" | null | undefined;
6
+ variant?: "destructive" | "link" | "primary" | "secondary" | "success" | "warning" | "danger" | "info" | "light" | "dark" | "accent" | "muted" | "ghost" | null | undefined;
7
+ size?: "default" | "sm" | "lg" | null | undefined;
8
+ appearance?: "solid" | "outline" | "outlineFilled" | null | undefined;
7
9
  } & class_variance_authority_types.ClassProp) | undefined) => string;
8
- interface BadgeProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof badgeVariants> {
10
+ type BadgeVariant = NonNullable<VariantProps<typeof badgeVariants>['variant']>;
11
+ type BadgeSize = NonNullable<VariantProps<typeof badgeVariants>['size']>;
12
+ type BadgeAppearance = NonNullable<VariantProps<typeof badgeVariants>['appearance']>;
13
+ interface BadgeProps extends React.HTMLAttributes<HTMLSpanElement>, VariantProps<typeof badgeVariants> {
14
+ asChild?: boolean;
9
15
  }
10
- declare function Badge({ className, variant, ...props }: BadgeProps): React.JSX.Element;
16
+ declare const Badge: React.ForwardRefExoticComponent<BadgeProps & React.RefAttributes<HTMLSpanElement>>;
11
17
 
12
- export { Badge, type BadgeProps, badgeVariants };
18
+ export { Badge, type BadgeAppearance, type BadgeProps, type BadgeSize, type BadgeVariant, badgeVariants };
@@ -10,27 +10,110 @@ var _chunk2NMEKWO5js = require('../../chunk-2NMEKWO5.js');
10
10
 
11
11
  // components/ui/badge.tsx
12
12
  var _react = require('react'); var React = _interopRequireWildcard(_react);
13
+ var _reactslot = require('@radix-ui/react-slot');
13
14
  var _classvarianceauthority = require('class-variance-authority');
14
15
  var badgeVariants = _classvarianceauthority.cva.call(void 0,
15
- "inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",
16
+ [
17
+ "inline-flex",
18
+ "items-center",
19
+ "rounded-sm",
20
+ "font-medium",
21
+ "whitespace-nowrap",
22
+ "transition-colors",
23
+ "focus-visible:outline-none",
24
+ "focus-visible:ring-1",
25
+ "focus-visible:ring-ring"
26
+ ],
16
27
  {
17
28
  variants: {
18
29
  variant: {
19
- default: "border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",
20
- secondary: "border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",
21
- destructive: "border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",
22
- outline: "text-foreground"
30
+ primary: "bg-primary text-primary-foreground hover:bg-primary/90",
31
+ secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/90",
32
+ success: "bg-success text-success-foreground hover:bg-success/90",
33
+ warning: "bg-warning text-warning-foreground hover:bg-warning/90",
34
+ danger: "bg-danger text-danger-foreground hover:bg-danger/90",
35
+ info: "bg-info text-info-foreground hover:bg-info/90",
36
+ light: "bg-light text-light-foreground hover:bg-light/90",
37
+ dark: "bg-dark text-dark-foreground hover:bg-dark/90",
38
+ accent: "bg-accent text-accent-foreground hover:bg-accent/90",
39
+ destructive: "bg-destructive text-destructive-foreground hover:bg-destructive/90",
40
+ muted: "bg-muted text-muted-foreground hover:bg-muted/90",
41
+ link: "text-primary underline-offset-4 hover:underline",
42
+ ghost: "hover:bg-light hover:text-light-foreground"
43
+ },
44
+ size: {
45
+ sm: "h-5 px-2 text-xs",
46
+ default: "h-6 px-3 text-sm",
47
+ lg: "h-7 px-4 text-base"
48
+ },
49
+ appearance: {
50
+ solid: "",
51
+ outline: "bg-white border",
52
+ outlineFilled: "bg-white border"
23
53
  }
24
54
  },
25
55
  defaultVariants: {
26
- variant: "default"
56
+ variant: "primary",
57
+ size: "default",
58
+ appearance: "solid"
27
59
  }
28
60
  }
29
61
  );
30
- function Badge(_a) {
31
- var _b = _a, { className, variant } = _b, props = _chunk2NMEKWO5js.__objRest.call(void 0, _b, ["className", "variant"]);
32
- return /* @__PURE__ */ React.createElement("div", _chunk2NMEKWO5js.__spreadValues.call(void 0, { className: _chunk6N4WCMTEjs.cn.call(void 0, badgeVariants({ variant }), className) }, props));
62
+ function getOutlineClasses(variant) {
63
+ const colors = {
64
+ primary: "border-primary text-primary hover:bg-primary/10",
65
+ secondary: "border-secondary text-secondary hover:bg-secondary/10",
66
+ success: "border-success text-success hover:bg-success/10",
67
+ warning: "border-warning text-warning hover:bg-warning/10",
68
+ danger: "border-danger text-danger hover:bg-danger/10",
69
+ info: "border-info text-info hover:bg-info/10",
70
+ light: "border-light text-light-foreground hover:bg-light/10",
71
+ dark: "border-dark text-dark hover:bg-dark/10",
72
+ accent: "border-accent text-accent hover:bg-accent/10",
73
+ destructive: "border-destructive text-destructive hover:bg-destructive/10",
74
+ muted: "border-muted text-muted-foreground hover:bg-muted/10",
75
+ link: "text-primary",
76
+ ghost: "text-light-foreground"
77
+ };
78
+ return colors[variant];
33
79
  }
80
+ function getOutlineFilledClasses(variant) {
81
+ const colors = {
82
+ primary: "hover:bg-primary hover:text-primary-foreground",
83
+ secondary: "hover:bg-secondary hover:text-secondary-foreground",
84
+ success: "hover:bg-success hover:text-success-foreground",
85
+ warning: "hover:bg-warning hover:text-warning-foreground",
86
+ danger: "hover:bg-danger hover:text-danger-foreground",
87
+ info: "hover:bg-info hover:text-info-foreground",
88
+ light: "hover:bg-light hover:text-light-foreground",
89
+ dark: "hover:bg-dark hover:text-dark-foreground",
90
+ accent: "hover:bg-accent hover:text-accent-foreground",
91
+ destructive: "hover:bg-destructive hover:text-destructive-foreground",
92
+ muted: "hover:bg-muted hover:text-muted-foreground",
93
+ link: "hover:underline",
94
+ ghost: "hover:bg-light"
95
+ };
96
+ return colors[variant];
97
+ }
98
+ var Badge = React.forwardRef(
99
+ (_a, ref) => {
100
+ var _b = _a, { className, variant, size, appearance, asChild = false, children } = _b, props = _chunk2NMEKWO5js.__objRest.call(void 0, _b, ["className", "variant", "size", "appearance", "asChild", "children"]);
101
+ const Comp = asChild ? _reactslot.Slot : "span";
102
+ const outlineClasses = appearance === "outline" || appearance === "outlineFilled" ? [getOutlineClasses(variant)] : [];
103
+ if (appearance === "outlineFilled") {
104
+ outlineClasses.push(getOutlineFilledClasses(variant));
105
+ }
106
+ return /* @__PURE__ */ React.createElement(
107
+ Comp,
108
+ _chunk2NMEKWO5js.__spreadValues.call(void 0, {
109
+ ref,
110
+ className: _chunk6N4WCMTEjs.cn.call(void 0, badgeVariants({ variant, size, appearance, className }), outlineClasses)
111
+ }, props),
112
+ children
113
+ );
114
+ }
115
+ );
116
+ Badge.displayName = "Badge";
34
117
 
35
118
 
36
119
 
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/components/ui/badge.js","../../../components/ui/badge.tsx"],"names":[],"mappings":"AAAA,uWAAY;AACZ;AACE;AACF,0DAAgC;AAChC;AACE;AACA;AACF,0DAAgC;AAChC;AACA;ACRA,2EAAuB;AACvB,kEAAuC;AAIvC,IAAM,cAAA,EAAgB,yCAAA;AAAA,EACpB,sKAAA;AAAA,EACA;AAAA,IACE,QAAA,EAAU;AAAA,MACR,OAAA,EAAS;AAAA,QACP,OAAA,EAAS,kFAAA;AAAA,QACT,SAAA,EAAW,iFAAA;AAAA,QACX,WAAA,EAAa,8FAAA;AAAA,QACb,OAAA,EAAS;AAAA,MACX;AAAA,IACF,CAAA;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,OAAA,EAAS;AAAA,IACX;AAAA,EACF;AACF,CAAA;AAIA,SAAS,KAAA,CAAM,EAAA,EAA8C;AAA9C,EAAA,IAAA,GAAA,EAAA,EAAA,EAAE,EAAA,SAAA,EAAW,QAzB5B,EAAA,EAyBe,EAAA,EAAyB,MAAA,EAAA,wCAAA,EAAzB,EAAyB,CAAvB,WAAA,EAAW,SAAA,CAAA,CAAA;AAC1B,EAAA,uBAAO,KAAA,CAAA,aAAA,CAAC,KAAA,EAAA,6CAAA,EAAI,SAAA,EAAW,iCAAA,aAAG,CAAc,EAAE,QAAQ,CAAC,CAAA,EAAG,SAAS,EAAA,CAAA,EAAO,KAAA,CAAO,CAAA;AAC/E;ADKA;AACE;AACA;AACF,6DAAC","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/components/ui/badge.js","sourcesContent":[null,"\"use client\";\nimport * as React from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\n\nimport { cn } from '../../lib/utils';\n\nconst badgeVariants = cva(\n 'inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2',\n {\n variants: {\n variant: {\n default: 'border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80',\n secondary: 'border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80',\n destructive: 'border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80',\n outline: 'text-foreground',\n },\n },\n defaultVariants: {\n variant: 'default',\n },\n },\n);\n\nexport interface BadgeProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof badgeVariants> {}\n\nfunction Badge({ className, variant, ...props }: BadgeProps) {\n return <div className={cn(badgeVariants({ variant }), className)} {...props} />;\n}\n\nexport { Badge, badgeVariants };\n"]}
1
+ {"version":3,"sources":["/home/jahn/projects/shadcn-theme/packages/react/dist/components/ui/badge.js","../../../components/ui/badge.tsx"],"names":[],"mappings":"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","file":"/home/jahn/projects/shadcn-theme/packages/react/dist/components/ui/badge.js","sourcesContent":[null,"\"use client\";\nimport * as React from 'react';\nimport { Slot } from '@radix-ui/react-slot';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { cn } from '../../lib/utils';\n\nexport const badgeVariants = cva(\n [\n 'inline-flex',\n 'items-center',\n 'rounded-sm',\n 'font-medium',\n 'whitespace-nowrap',\n 'transition-colors',\n 'focus-visible:outline-none',\n 'focus-visible:ring-1',\n 'focus-visible:ring-ring',\n ],\n {\n variants: {\n variant: {\n primary: 'bg-primary text-primary-foreground hover:bg-primary/90',\n secondary: 'bg-secondary text-secondary-foreground hover:bg-secondary/90',\n success: 'bg-success text-success-foreground hover:bg-success/90',\n warning: 'bg-warning text-warning-foreground hover:bg-warning/90',\n danger: 'bg-danger text-danger-foreground hover:bg-danger/90',\n info: 'bg-info text-info-foreground hover:bg-info/90',\n light: 'bg-light text-light-foreground hover:bg-light/90',\n dark: 'bg-dark text-dark-foreground hover:bg-dark/90',\n accent: 'bg-accent text-accent-foreground hover:bg-accent/90',\n destructive: 'bg-destructive text-destructive-foreground hover:bg-destructive/90',\n muted: 'bg-muted text-muted-foreground hover:bg-muted/90',\n link: 'text-primary underline-offset-4 hover:underline',\n ghost: 'hover:bg-light hover:text-light-foreground',\n },\n size: {\n sm: 'h-5 px-2 text-xs',\n default: 'h-6 px-3 text-sm',\n lg: 'h-7 px-4 text-base',\n },\n appearance: {\n solid: '',\n outline: 'bg-white border',\n outlineFilled: 'bg-white border',\n },\n },\n defaultVariants: {\n variant: 'primary',\n size: 'default',\n appearance: 'solid',\n },\n },\n);\n\nexport type BadgeVariant = NonNullable<VariantProps<typeof badgeVariants>['variant']>;\nexport type BadgeSize = NonNullable<VariantProps<typeof badgeVariants>['size']>;\nexport type BadgeAppearance = NonNullable<VariantProps<typeof badgeVariants>['appearance']>;\n\nexport interface BadgeProps extends React.HTMLAttributes<HTMLSpanElement>, VariantProps<typeof badgeVariants> {\n asChild?: boolean;\n}\n\nfunction getOutlineClasses(variant: BadgeVariant) {\n const colors: Record<BadgeVariant, string> = {\n primary: 'border-primary text-primary hover:bg-primary/10',\n secondary: 'border-secondary text-secondary hover:bg-secondary/10',\n success: 'border-success text-success hover:bg-success/10',\n warning: 'border-warning text-warning hover:bg-warning/10',\n danger: 'border-danger text-danger hover:bg-danger/10',\n info: 'border-info text-info hover:bg-info/10',\n light: 'border-light text-light-foreground hover:bg-light/10',\n dark: 'border-dark text-dark hover:bg-dark/10',\n accent: 'border-accent text-accent hover:bg-accent/10',\n destructive: 'border-destructive text-destructive hover:bg-destructive/10',\n muted: 'border-muted text-muted-foreground hover:bg-muted/10',\n link: 'text-primary',\n ghost: 'text-light-foreground',\n };\n return colors[variant];\n}\n\nfunction getOutlineFilledClasses(variant: BadgeVariant) {\n const colors: Record<BadgeVariant, string> = {\n primary: 'hover:bg-primary hover:text-primary-foreground',\n secondary: 'hover:bg-secondary hover:text-secondary-foreground',\n success: 'hover:bg-success hover:text-success-foreground',\n warning: 'hover:bg-warning hover:text-warning-foreground',\n danger: 'hover:bg-danger hover:text-danger-foreground',\n info: 'hover:bg-info hover:text-info-foreground',\n light: 'hover:bg-light hover:text-light-foreground',\n dark: 'hover:bg-dark hover:text-dark-foreground',\n accent: 'hover:bg-accent hover:text-accent-foreground',\n destructive: 'hover:bg-destructive hover:text-destructive-foreground',\n muted: 'hover:bg-muted hover:text-muted-foreground',\n link: 'hover:underline',\n ghost: 'hover:bg-light',\n };\n return colors[variant];\n}\n\nconst Badge = React.forwardRef<HTMLSpanElement, BadgeProps>(\n ({ className, variant, size, appearance, asChild = false, children, ...props }, ref) => {\n const Comp = asChild ? Slot : 'span';\n\n const outlineClasses =\n appearance === 'outline' || appearance === 'outlineFilled' ? [getOutlineClasses(variant as BadgeVariant)] : [];\n if (appearance === 'outlineFilled') {\n outlineClasses.push(getOutlineFilledClasses(variant as BadgeVariant));\n }\n\n return (\n <Comp\n ref={ref}\n className={cn(badgeVariants({ variant, size, appearance, className }), outlineClasses)}\n {...props}\n >\n {children}\n </Comp>\n );\n },\n);\n\nBadge.displayName = 'Badge';\n\nexport { Badge };\n"]}