@alkimi.org/ui-kit 0.6.8 → 0.7.1

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 (130) hide show
  1. package/dist/chunk-4EWKQDTX.js +3 -0
  2. package/dist/chunk-4EWKQDTX.js.map +1 -0
  3. package/dist/{chunk-J2IURKGU.js → chunk-4UUNHBJB.js} +2 -2
  4. package/dist/{chunk-J2IURKGU.js.map → chunk-4UUNHBJB.js.map} +1 -1
  5. package/dist/chunk-5TVDBV74.mjs +3 -0
  6. package/dist/chunk-5TVDBV74.mjs.map +1 -0
  7. package/dist/chunk-77IL3EAP.js +3 -0
  8. package/dist/chunk-77IL3EAP.js.map +1 -0
  9. package/dist/{chunk-DSFHKFDR.mjs → chunk-7FX23JBQ.mjs} +2 -2
  10. package/dist/{chunk-QBP3JXZY.js → chunk-7HINFXVM.js} +2 -2
  11. package/dist/{chunk-QBP3JXZY.js.map → chunk-7HINFXVM.js.map} +1 -1
  12. package/dist/{chunk-BVEQCB3C.mjs → chunk-7MNOT4J6.mjs} +2 -2
  13. package/dist/chunk-7T4BNCXL.js +3 -0
  14. package/dist/chunk-7T4BNCXL.js.map +1 -0
  15. package/dist/{chunk-HQEVVYQO.js → chunk-AKKFRUJZ.js} +2 -2
  16. package/dist/{chunk-HQEVVYQO.js.map → chunk-AKKFRUJZ.js.map} +1 -1
  17. package/dist/{chunk-WZC45XHC.mjs → chunk-BWVO5ATE.mjs} +2 -2
  18. package/dist/{chunk-ES4U4ZOZ.js → chunk-ERLFKYOA.js} +2 -2
  19. package/dist/{chunk-ES4U4ZOZ.js.map → chunk-ERLFKYOA.js.map} +1 -1
  20. package/dist/chunk-F5A2LCE4.mjs +3 -0
  21. package/dist/chunk-F5A2LCE4.mjs.map +1 -0
  22. package/dist/chunk-G5G2N7Q5.mjs +3 -0
  23. package/dist/chunk-G5G2N7Q5.mjs.map +1 -0
  24. package/dist/{chunk-AAHRBPPJ.mjs → chunk-GUVRCV3T.mjs} +2 -2
  25. package/dist/{chunk-54C6455D.mjs → chunk-HFRZVGGE.mjs} +2 -2
  26. package/dist/{chunk-4C4CJRDU.mjs → chunk-HQJGZJED.mjs} +2 -2
  27. package/dist/{chunk-RA5BKFIT.js → chunk-K4GMCVHO.js} +2 -2
  28. package/dist/{chunk-RA5BKFIT.js.map → chunk-K4GMCVHO.js.map} +1 -1
  29. package/dist/chunk-KPMYIU6M.mjs +3 -0
  30. package/dist/chunk-KPMYIU6M.mjs.map +1 -0
  31. package/dist/chunk-MQMO7DMT.mjs +3 -0
  32. package/dist/chunk-MQMO7DMT.mjs.map +1 -0
  33. package/dist/chunk-NEOUFWZN.mjs +3 -0
  34. package/dist/chunk-NEOUFWZN.mjs.map +1 -0
  35. package/dist/{chunk-63WBWGD4.mjs → chunk-OCA36S6W.mjs} +2 -2
  36. package/dist/{chunk-CV23OQIA.js → chunk-QZGKYSA2.js} +2 -2
  37. package/dist/{chunk-CV23OQIA.js.map → chunk-QZGKYSA2.js.map} +1 -1
  38. package/dist/{chunk-W3JPURC6.js → chunk-RJKKQWP2.js} +2 -2
  39. package/dist/{chunk-W3JPURC6.js.map → chunk-RJKKQWP2.js.map} +1 -1
  40. package/dist/chunk-RJMIOBXZ.js +3 -0
  41. package/dist/chunk-RJMIOBXZ.js.map +1 -0
  42. package/dist/chunk-TDMRUCR6.js +3 -0
  43. package/dist/chunk-TDMRUCR6.js.map +1 -0
  44. package/dist/chunk-TUQM7P2C.js +3 -0
  45. package/dist/chunk-TUQM7P2C.js.map +1 -0
  46. package/dist/chunk-W65OWFZY.mjs +3 -0
  47. package/dist/chunk-W65OWFZY.mjs.map +1 -0
  48. package/dist/{chunk-FC3O5G3W.js → chunk-WZZH6PEF.js} +2 -2
  49. package/dist/{chunk-FC3O5G3W.js.map → chunk-WZZH6PEF.js.map} +1 -1
  50. package/dist/components/button.js +1 -1
  51. package/dist/components/button.mjs +1 -1
  52. package/dist/components/calendar.js +1 -1
  53. package/dist/components/calendar.mjs +1 -1
  54. package/dist/components/card.d.mts +4 -1
  55. package/dist/components/card.d.ts +4 -1
  56. package/dist/components/card.js +1 -1
  57. package/dist/components/card.js.map +1 -1
  58. package/dist/components/card.mjs +1 -1
  59. package/dist/components/card.mjs.map +1 -1
  60. package/dist/components/combobox.js +1 -1
  61. package/dist/components/combobox.mjs +1 -1
  62. package/dist/components/command.js +1 -1
  63. package/dist/components/command.mjs +1 -1
  64. package/dist/components/date-picker.js +1 -1
  65. package/dist/components/date-picker.mjs +1 -1
  66. package/dist/components/date-range-picker.js +1 -1
  67. package/dist/components/date-range-picker.mjs +1 -1
  68. package/dist/components/dialog.js +1 -1
  69. package/dist/components/dialog.mjs +1 -1
  70. package/dist/components/drawer.js +1 -1
  71. package/dist/components/drawer.js.map +1 -1
  72. package/dist/components/drawer.mjs +1 -1
  73. package/dist/components/file-upload.d.mts +25 -0
  74. package/dist/components/file-upload.d.ts +25 -0
  75. package/dist/components/file-upload.js +3 -0
  76. package/dist/components/file-upload.js.map +1 -0
  77. package/dist/components/file-upload.mjs +3 -0
  78. package/dist/components/file-upload.mjs.map +1 -0
  79. package/dist/components/input.js +1 -1
  80. package/dist/components/input.mjs +1 -1
  81. package/dist/components/scroll-area.d.mts +7 -0
  82. package/dist/components/scroll-area.d.ts +7 -0
  83. package/dist/components/scroll-area.js +3 -0
  84. package/dist/components/scroll-area.js.map +1 -0
  85. package/dist/components/scroll-area.mjs +3 -0
  86. package/dist/components/scroll-area.mjs.map +1 -0
  87. package/dist/components/sidebar.js +1 -1
  88. package/dist/components/sidebar.mjs +1 -1
  89. package/dist/components/table.d.mts +5 -1
  90. package/dist/components/table.d.ts +5 -1
  91. package/dist/components/table.js +1 -1
  92. package/dist/components/table.js.map +1 -1
  93. package/dist/components/table.mjs +1 -1
  94. package/dist/components/textarea.d.mts +8 -0
  95. package/dist/components/textarea.d.ts +8 -0
  96. package/dist/components/textarea.js +3 -0
  97. package/dist/components/textarea.js.map +1 -0
  98. package/dist/components/textarea.mjs +3 -0
  99. package/dist/components/textarea.mjs.map +1 -0
  100. package/dist/index.css +1 -1
  101. package/dist/index.css.map +1 -1
  102. package/dist/index.d.mts +5 -1
  103. package/dist/index.d.ts +5 -1
  104. package/dist/index.js +1 -1
  105. package/dist/index.js.map +1 -1
  106. package/dist/index.mjs +1 -1
  107. package/dist/styles.css +1 -1
  108. package/dist/styles.css.map +1 -1
  109. package/package.json +2 -1
  110. package/dist/chunk-2ESUPMMP.js +0 -3
  111. package/dist/chunk-2ESUPMMP.js.map +0 -1
  112. package/dist/chunk-2YRLGFWP.mjs +0 -3
  113. package/dist/chunk-2YRLGFWP.mjs.map +0 -1
  114. package/dist/chunk-3ZEA35DM.js +0 -3
  115. package/dist/chunk-3ZEA35DM.js.map +0 -1
  116. package/dist/chunk-ITTWKO7B.mjs +0 -3
  117. package/dist/chunk-ITTWKO7B.mjs.map +0 -1
  118. package/dist/chunk-QKOZTOYU.js +0 -3
  119. package/dist/chunk-QKOZTOYU.js.map +0 -1
  120. package/dist/chunk-UDKQL3NS.mjs +0 -3
  121. package/dist/chunk-UDKQL3NS.mjs.map +0 -1
  122. package/dist/chunk-VFTGRKDL.mjs +0 -3
  123. package/dist/chunk-VFTGRKDL.mjs.map +0 -1
  124. /package/dist/{chunk-DSFHKFDR.mjs.map → chunk-7FX23JBQ.mjs.map} +0 -0
  125. /package/dist/{chunk-BVEQCB3C.mjs.map → chunk-7MNOT4J6.mjs.map} +0 -0
  126. /package/dist/{chunk-WZC45XHC.mjs.map → chunk-BWVO5ATE.mjs.map} +0 -0
  127. /package/dist/{chunk-AAHRBPPJ.mjs.map → chunk-GUVRCV3T.mjs.map} +0 -0
  128. /package/dist/{chunk-54C6455D.mjs.map → chunk-HFRZVGGE.mjs.map} +0 -0
  129. /package/dist/{chunk-4C4CJRDU.mjs.map → chunk-HQJGZJED.mjs.map} +0 -0
  130. /package/dist/{chunk-63WBWGD4.mjs.map → chunk-OCA36S6W.mjs.map} +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alkimi.org/ui-kit",
3
- "version": "0.6.8",
3
+ "version": "0.7.1",
4
4
  "packageManager": "pnpm@10.26.0",
5
5
  "description": "A React component library built with shadcn/ui and Tailwind CSS",
6
6
  "main": "./dist/index.js",
@@ -85,6 +85,7 @@
85
85
  "@radix-ui/react-dropdown-menu": "^2.1.16",
86
86
  "@radix-ui/react-popover": "^1.1.15",
87
87
  "@radix-ui/react-progress": "^1.1.8",
88
+ "@radix-ui/react-scroll-area": "^1.2.10",
88
89
  "@radix-ui/react-separator": "^1.0.3",
89
90
  "@radix-ui/react-slider": "^1.3.6",
90
91
  "@radix-ui/react-slot": "^1.0.2",
@@ -1,3 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
2
- var _chunkFUYXCJOQjs = require('./chunk-FUYXCJOQ.js');var _lucidereact = require('lucide-react');var _jsxruntime = require('react/jsx-runtime');function u({className:e,...t}){return _jsxruntime.jsx.call(void 0, "div",{"data-slot":"table-container",className:"relative bg-background w-full overflow-x-auto border border-border rounded-3xl",children:_jsxruntime.jsx.call(void 0, "table",{"data-slot":"table",className:_chunkFUYXCJOQjs.a.call(void 0, "w-full caption-bottom text-sm",e),...t})})}function f({className:e,...t}){return _jsxruntime.jsx.call(void 0, "thead",{"data-slot":"table-header",className:_chunkFUYXCJOQjs.a.call(void 0, "[&_tr]:border-b text-secondary-text",e),...t})}function h({className:e,...t}){return _jsxruntime.jsx.call(void 0, "tbody",{"data-slot":"table-body",className:_chunkFUYXCJOQjs.a.call(void 0, "[&_tr:last-child]:border-0",e),...t})}function x({className:e,...t}){return _jsxruntime.jsx.call(void 0, "tfoot",{"data-slot":"table-footer",className:_chunkFUYXCJOQjs.a.call(void 0, "bg-muted/50 border-t font-medium [&>tr]:last:border-b-0",e),...t})}function w({className:e,isClickable:t,actionIcon:r,children:l,...n}){let s=r==="eye"?_jsxruntime.jsx.call(void 0, _lucidereact.Eye,{className:"h-4 w-4"}):r==="more"?_jsxruntime.jsx.call(void 0, _lucidereact.MoreVertical,{className:"h-4 w-4"}):null;return _jsxruntime.jsxs.call(void 0, "tr",{"data-slot":"table-row",className:_chunkFUYXCJOQjs.a.call(void 0, "border-b border-border/50 transition-colors",t&&"cursor-pointer hover:bg-muted/50",e),...n,children:[r!==void 0&&_jsxruntime.jsx.call(void 0, b,{className:"w-12",children:s}),l]})}function C({className:e,...t}){return _jsxruntime.jsx.call(void 0, "th",{"data-slot":"table-head",className:_chunkFUYXCJOQjs.a.call(void 0, "text-secondary-text h-10 px-4 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0",e),...t})}function b({className:e,...t}){return _jsxruntime.jsx.call(void 0, "td",{"data-slot":"table-cell",className:_chunkFUYXCJOQjs.a.call(void 0, "p-4 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0",e),...t})}function N({className:e,...t}){return _jsxruntime.jsx.call(void 0, "caption",{"data-slot":"table-caption",className:_chunkFUYXCJOQjs.a.call(void 0, "text-muted-foreground mt-4 text-sm",e),...t})}exports.a = u; exports.b = f; exports.c = h; exports.d = x; exports.e = w; exports.f = C; exports.g = b; exports.h = N;
3
- //# sourceMappingURL=chunk-2ESUPMMP.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/chunk-2ESUPMMP.js","../src/components/table.tsx"],"names":["Table","className","props","jsx","cn","TableHeader","TableBody","TableFooter","TableRow","isClickable","actionIcon","children","iconComponent","Eye","MoreVertical","jsxs","TableCell","TableHead","TableCaption"],"mappings":"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","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/chunk-2ESUPMMP.js","sourcesContent":[null,"\"use client\"\n\nimport * as React from \"react\"\nimport { Eye, MoreVertical } from \"lucide-react\"\n\nimport { cn } from \"@/lib/utils\"\n\nfunction Table({ className, ...props }: React.ComponentProps<\"table\">) {\n return (\n <div\n data-slot=\"table-container\"\n className=\"relative bg-background w-full overflow-x-auto border border-border rounded-3xl\"\n >\n <table\n data-slot=\"table\"\n className={cn(\"w-full caption-bottom text-sm\", className)}\n {...props}\n />\n </div>\n )\n}\n\nfunction TableHeader({ className, ...props }: React.ComponentProps<\"thead\">) {\n return (\n <thead\n data-slot=\"table-header\"\n className={cn(\"[&_tr]:border-b text-secondary-text\", className)}\n {...props}\n />\n )\n}\n\nfunction TableBody({ className, ...props }: React.ComponentProps<\"tbody\">) {\n return (\n <tbody\n data-slot=\"table-body\"\n className={cn(\"[&_tr:last-child]:border-0\", className)}\n {...props}\n />\n )\n}\n\nfunction TableFooter({ className, ...props }: React.ComponentProps<\"tfoot\">) {\n return (\n <tfoot\n data-slot=\"table-footer\"\n className={cn(\n \"bg-muted/50 border-t font-medium [&>tr]:last:border-b-0\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport interface TableRowProps extends React.ComponentProps<\"tr\"> {\n isClickable?: boolean\n actionIcon?: \"eye\" | \"more\" | null\n}\n\nfunction TableRow({\n className,\n isClickable,\n actionIcon,\n children,\n ...props\n}: TableRowProps) {\n const iconComponent =\n actionIcon === \"eye\" ? (\n <Eye className=\"h-4 w-4\" />\n ) : actionIcon === \"more\" ? (\n <MoreVertical className=\"h-4 w-4\" />\n ) : null\n\n return (\n <tr\n data-slot=\"table-row\"\n className={cn(\n \"border-b border-border/50 transition-colors\",\n isClickable && \"cursor-pointer hover:bg-muted/50\",\n // !isClickable && \"hover:bg-muted/50\",\n // \"data-[state=selected]:bg-secondary\",\n className\n )}\n {...props}\n >\n {actionIcon !== undefined && (\n <TableCell className=\"w-12\">{iconComponent}</TableCell>\n )}\n {children}\n </tr>\n )\n}\n\nfunction TableHead({ className, ...props }: React.ComponentProps<\"th\">) {\n return (\n <th\n data-slot=\"table-head\"\n className={cn(\n \"text-secondary-text h-10 px-4 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction TableCell({ className, ...props }: React.ComponentProps<\"td\">) {\n return (\n <td\n data-slot=\"table-cell\"\n className={cn(\n \"p-4 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction TableCaption({\n className,\n ...props\n}: React.ComponentProps<\"caption\">) {\n return (\n <caption\n data-slot=\"table-caption\"\n className={cn(\"text-muted-foreground mt-4 text-sm\", className)}\n {...props}\n />\n )\n}\n\nexport {\n Table,\n TableHeader,\n TableBody,\n TableFooter,\n TableHead,\n TableRow,\n TableCell,\n TableCaption,\n}\n"]}
@@ -1,3 +0,0 @@
1
- "use client";
2
- import{a as n}from"./chunk-S5TKCF6T.mjs";import*as a from"react";import{Slot as l}from"@radix-ui/react-slot";import{cva as p}from"class-variance-authority";import{jsx as o,jsxs as b}from"react/jsx-runtime";var m=p("inline-flex items-center cursor-pointer justify-center whitespace-nowrap rounded-4xl font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"bg-primary-accent text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive hover:bg-destructive/90",outline:"border border-input hover:bg-base-accent text-primary-accent",secondary:"bg-muted text-primary-accent hover:bg-muted/20",ghost:"hover:bg-base-accent text-primary-accent",link:"text-primary-accent underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 text-sm",sm:"h-8 text-xs px-3 py-2",lg:"h-10 px-8 py-2 text-sm",icon:"h-9 w-9"}},defaultVariants:{variant:"default",size:"default"}}),f=a.forwardRef(({className:i,variant:s,size:c,asChild:d=!1,loading:e=!1,icon:r,...t},u)=>b(d?l:"button",{className:n(m({variant:s,size:c,className:i})),ref:u,disabled:e||t.disabled,...t,children:[e&&o("div",{className:"mr-2 h-4 w-4 animate-spin rounded-full border border-primary-foreground border-t-transparent"}),!e&&r&&o("span",{className:"mr-2",children:r}),t.children]}));f.displayName="Button";export{m as a,f as b};
3
- //# sourceMappingURL=chunk-2YRLGFWP.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/button.tsx"],"sourcesContent":["import * as React from \"react\"\nimport { Slot } from \"@radix-ui/react-slot\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst buttonVariants = cva(\n \"inline-flex items-center cursor-pointer justify-center whitespace-nowrap rounded-4xl font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50\",\n {\n variants: {\n variant: {\n default:\n \"bg-primary-accent text-primary-foreground hover:bg-primary/90\",\n destructive: \"bg-destructive hover:bg-destructive/90\",\n outline: \"border border-input hover:bg-base-accent text-primary-accent\",\n secondary: \"bg-muted text-primary-accent hover:bg-muted/20\",\n ghost: \"hover:bg-base-accent text-primary-accent\",\n link: \"text-primary-accent underline-offset-4 hover:underline\",\n },\n size: {\n default: \"h-9 px-4 py-2 text-sm\",\n sm: \"h-8 text-xs px-3 py-2\",\n lg: \"h-10 px-8 py-2 text-sm\",\n icon: \"h-9 w-9\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n }\n)\n\nexport interface ButtonProps\n extends\n React.ButtonHTMLAttributes<HTMLButtonElement>,\n VariantProps<typeof buttonVariants> {\n asChild?: boolean\n loading?: boolean\n icon?: React.ReactNode\n}\n\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\n (\n {\n className,\n variant,\n size,\n asChild = false,\n loading = false,\n icon,\n ...props\n },\n ref\n ) => {\n const Comp = asChild ? Slot : \"button\"\n return (\n <Comp\n className={cn(buttonVariants({ variant, size, className }))}\n ref={ref}\n disabled={loading || props.disabled}\n {...props}\n >\n {loading && (\n <div className=\"mr-2 h-4 w-4 animate-spin rounded-full border border-primary-foreground border-t-transparent\" />\n )}\n {!loading && icon && <span className=\"mr-2\">{icon}</span>}\n {props.children}\n </Comp>\n )\n }\n)\nButton.displayName = \"Button\"\n\nexport { Button, buttonVariants }\n"],"mappings":";yCAAA,UAAYA,MAAW,QACvB,OAAS,QAAAC,MAAY,uBACrB,OAAS,OAAAC,MAA8B,2BAuDjC,OAOI,OAAAC,EAPJ,QAAAC,MAAA,oBAnDN,IAAMC,EAAiBC,EACrB,iSACA,CACE,SAAU,CACR,QAAS,CACP,QACE,gEACF,YAAa,yCACb,QAAS,+DACT,UAAW,iDACX,MAAO,2CACP,KAAM,wDACR,EACA,KAAM,CACJ,QAAS,wBACT,GAAI,wBACJ,GAAI,yBACJ,KAAM,SACR,CACF,EACA,gBAAiB,CACf,QAAS,UACT,KAAM,SACR,CACF,CACF,EAWMC,EAAe,aACnB,CACE,CACE,UAAAC,EACA,QAAAC,EACA,KAAAC,EACA,QAAAC,EAAU,GACV,QAAAC,EAAU,GACV,KAAAC,EACA,GAAGC,CACL,EACAC,IAIEX,EAFWO,EAAUK,EAAO,SAE3B,CACC,UAAWC,EAAGZ,EAAe,CAAE,QAAAI,EAAS,KAAAC,EAAM,UAAAF,CAAU,CAAC,CAAC,EAC1D,IAAKO,EACL,SAAUH,GAAWE,EAAM,SAC1B,GAAGA,EAEH,UAAAF,GACCT,EAAC,OAAI,UAAU,+FAA+F,EAE/G,CAACS,GAAWC,GAAQV,EAAC,QAAK,UAAU,OAAQ,SAAAU,EAAK,EACjDC,EAAM,UACT,CAGN,EACAP,EAAO,YAAc","names":["React","Slot","cva","jsx","jsxs","buttonVariants","cva","Button","className","variant","size","asChild","loading","icon","props","ref","Slot","cn"]}
@@ -1,3 +0,0 @@
1
- "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; } }"use client";
2
- var _chunk3BVMHDYAjs = require('./chunk-3BVMHDYA.js');var _chunkQKOZTOYUjs = require('./chunk-QKOZTOYU.js');var _chunkFUYXCJOQjs = require('./chunk-FUYXCJOQ.js');var _react = require('react'); var r = _interopRequireWildcard(_react);var _lucidereact = require('lucide-react');var _vaul = require('vaul');var _jsxruntime = require('react/jsx-runtime');var x="24rem",p=r.createContext(null);function R(){let e=r.useContext(p);if(!e)throw new Error("useDrawer must be used within a Drawer component.");return e}var h=r.forwardRef(({isOpen:e,onClose:o,width:a=x,children:n,...l},c)=>{let u=r.useRef(null),m=_chunk3BVMHDYAjs.a.call(void 0, "lg"),v=r.useMemo(()=>({isOpen:e,onClose:o,width:a}),[e,o,a]);return _jsxruntime.jsxs.call(void 0, p.Provider,{value:v,children:[!m&&_jsxruntime.jsx.call(void 0, _vaul.Drawer.Root,{open:e,onOpenChange:b=>{b||o()},direction:"left",children:_jsxruntime.jsxs.call(void 0, _vaul.Drawer.Portal,{children:[_jsxruntime.jsx.call(void 0, _vaul.Drawer.Overlay,{className:"fixed inset-0 z-50 bg-background/80 backdrop-blur-sm"}),_jsxruntime.jsxs.call(void 0, _vaul.Drawer.Content,{className:"fixed inset-y-0 left-0 z-50 flex h-full w-[85vw] max-w-md flex-col bg-sidebar border-r border-sidebar-border text-primary-accent shadow-lg outline-none","aria-describedby":void 0,children:[_jsxruntime.jsx.call(void 0, _vaul.Drawer.Title,{className:"sr-only",children:"Drawer"}),n]})]})}),m&&_jsxruntime.jsxs.call(void 0, "div",{ref:c,className:"group/drawer peer","data-state":e?"open":"closed",...l,children:[_jsxruntime.jsx.call(void 0, "div",{className:_chunkFUYXCJOQjs.a.call(void 0, "relative bg-sidebar transition-[width] duration-200 ease-linear",e?"":"w-0"),style:{width:e?a:"0"}}),_jsxruntime.jsx.call(void 0, "div",{ref:u,className:_chunkFUYXCJOQjs.a.call(void 0, "fixed right-0 z-40 transition-[right,width] duration-200 ease-linear flex","top-(--sidebar-top,0px) h-[calc(100svh-var(--sidebar-top,0px))]",e?"right-0":"right-[calc(var(--drawer-width)*-1)]"),style:{"--drawer-width":a,width:a},children:_jsxruntime.jsx.call(void 0, "div",{"data-drawer":"drawer",className:"flex h-full w-full flex-col",children:_jsxruntime.jsx.call(void 0, "div",{className:"flex flex-col my-2.5 mr-2.5 rounded-2xl border bg-sidebar border-sidebar-border h-full shadow",children:n})})})]})]})});h.displayName="Drawer";var y=r.forwardRef(({className:e,showCloseButton:o=!0,children:a,...n},l)=>{let{onClose:c}=R();return _jsxruntime.jsxs.call(void 0, "div",{ref:l,"data-drawer":"header",className:_chunkFUYXCJOQjs.a.call(void 0, "flex w-full items-start justify-between gap-2 p-4 border-b border-sidebar-border",e),...n,children:[_jsxruntime.jsx.call(void 0, "div",{className:"flex-1",children:a}),o&&_jsxruntime.jsxs.call(void 0, _chunkQKOZTOYUjs.b,{variant:"secondary",size:"icon",onClick:c,className:"h-8 w-8 shrink-0 rounded-full",children:[_jsxruntime.jsx.call(void 0, _lucidereact.X,{size:16}),_jsxruntime.jsx.call(void 0, "span",{className:"sr-only",children:"Close drawer"})]})]})});y.displayName="DrawerHeader";var C=r.forwardRef(({className:e,...o},a)=>_jsxruntime.jsx.call(void 0, "h2",{ref:a,className:_chunkFUYXCJOQjs.a.call(void 0, "text-lg font-semibold text-primary-accent",e),...o}));C.displayName="DrawerTitle";var N=r.forwardRef(({className:e,...o},a)=>_jsxruntime.jsx.call(void 0, "div",{ref:a,"data-drawer":"body",className:_chunkFUYXCJOQjs.a.call(void 0, "flex-1 overflow-auto p-4",e),...o}));N.displayName="DrawerBody";var g=r.forwardRef(({className:e,...o},a)=>_jsxruntime.jsx.call(void 0, "div",{ref:a,"data-drawer":"footer",className:_chunkFUYXCJOQjs.a.call(void 0, "flex flex-col gap-2 p-4 border-t border-sidebar-border",e),...o}));g.displayName="DrawerFooter";exports.a = R; exports.b = h; exports.c = y; exports.d = C; exports.e = N; exports.f = g;
3
- //# sourceMappingURL=chunk-3ZEA35DM.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/chunk-3ZEA35DM.js","../src/components/drawer.tsx"],"names":["DRAWER_WIDTH","DrawerContext","useDrawer","context","Drawer","isOpen","onClose","width","children","props","ref","drawerRef","isDesktop","useMediaQuery","contextValue","jsxs","jsx","DrawerPrimitive","open","cn","DrawerHeader","className","showCloseButton","Button","X","DrawerTitle","DrawerBody","DrawerFooter"],"mappings":"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","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/chunk-3ZEA35DM.js","sourcesContent":[null,"\"use client\"\n\nimport * as React from \"react\"\nimport { X } from \"lucide-react\"\nimport { Drawer as DrawerPrimitive } from \"vaul\"\n\nimport { cn } from \"@/lib/utils\"\nimport { Button } from \"@/components/button\"\nimport { useMediaQuery } from \"@/lib/use-media-query\"\n\nconst DRAWER_WIDTH = \"24rem\"\n\n// Drawer Context\ntype DrawerContextProps = {\n isOpen: boolean\n onClose: () => void\n width?: string\n}\n\nconst DrawerContext = React.createContext<DrawerContextProps | null>(null)\n\nfunction useDrawer() {\n const context = React.useContext(DrawerContext)\n if (!context) {\n throw new Error(\"useDrawer must be used within a Drawer component.\")\n }\n return context\n}\n\n// Main Unified Drawer Component (Responsive)\nconst Drawer = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<\"div\"> & {\n isOpen: boolean\n onClose: () => void\n width?: string\n }\n>(({ isOpen, onClose, width = DRAWER_WIDTH, children, ...props }, ref) => {\n const drawerRef = React.useRef<HTMLDivElement>(null)\n const isDesktop = useMediaQuery(\"lg\")\n\n const contextValue = React.useMemo<DrawerContextProps>(\n () => ({\n isOpen,\n onClose,\n width,\n }),\n [isOpen, onClose, width]\n )\n\n return (\n <DrawerContext.Provider value={contextValue}>\n {/* Mobile Drawer: visible < md breakpoint */}\n {!isDesktop && (\n <DrawerPrimitive.Root\n open={isOpen}\n onOpenChange={(open) => {\n if (!open) onClose()\n }}\n direction=\"left\"\n >\n <DrawerPrimitive.Portal>\n <DrawerPrimitive.Overlay className=\"fixed inset-0 z-50 bg-background/80 backdrop-blur-sm\" />\n <DrawerPrimitive.Content\n className=\"fixed inset-y-0 left-0 z-50 flex h-full w-[85vw] max-w-md flex-col bg-sidebar border-r border-sidebar-border text-primary-accent shadow-lg outline-none\"\n aria-describedby={undefined}\n >\n <DrawerPrimitive.Title className=\"sr-only\">\n Drawer\n </DrawerPrimitive.Title>\n {children}\n </DrawerPrimitive.Content>\n </DrawerPrimitive.Portal>\n </DrawerPrimitive.Root>\n )}\n\n {/* Desktop Drawer: visible >= md breakpoint */}\n {isDesktop && (\n <div\n ref={ref}\n className=\"group/drawer peer\"\n data-state={isOpen ? \"open\" : \"closed\"}\n {...props}\n >\n {/* Spacer to push content */}\n <div\n className={cn(\n \"relative bg-sidebar transition-[width] duration-200 ease-linear\",\n isOpen ? \"\" : \"w-0\"\n )}\n style={\n {\n width: isOpen ? width : \"0\",\n } as React.CSSProperties\n }\n />\n\n {/* Fixed drawer panel */}\n <div\n ref={drawerRef}\n className={cn(\n \"fixed right-0 z-40 transition-[right,width] duration-200 ease-linear flex\",\n \"top-(--sidebar-top,0px) h-[calc(100svh-var(--sidebar-top,0px))]\",\n isOpen ? \"right-0\" : \"right-[calc(var(--drawer-width)*-1)]\"\n )}\n style={\n {\n \"--drawer-width\": width,\n width: width,\n } as React.CSSProperties\n }\n >\n <div data-drawer=\"drawer\" className=\"flex h-full w-full flex-col\">\n <div className=\"flex flex-col my-2.5 mr-2.5 rounded-2xl border bg-sidebar border-sidebar-border h-full shadow\">\n {children}\n </div>\n </div>\n </div>\n </div>\n )}\n </DrawerContext.Provider>\n )\n})\nDrawer.displayName = \"Drawer\"\n\n// Drawer Header\nconst DrawerHeader = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<\"div\"> & {\n showCloseButton?: boolean\n }\n>(({ className, showCloseButton = true, children, ...props }, ref) => {\n const { onClose } = useDrawer()\n\n return (\n <div\n ref={ref}\n data-drawer=\"header\"\n className={cn(\n \"flex w-full items-start justify-between gap-2 p-4 border-b border-sidebar-border\",\n className\n )}\n {...props}\n >\n <div className=\"flex-1\">{children}</div>\n {showCloseButton && (\n <Button\n variant=\"secondary\"\n size=\"icon\"\n onClick={onClose}\n className=\"h-8 w-8 shrink-0 rounded-full\"\n >\n <X size={16} />\n <span className=\"sr-only\">Close drawer</span>\n </Button>\n )}\n </div>\n )\n})\nDrawerHeader.displayName = \"DrawerHeader\"\n\n// Drawer Title\nconst DrawerTitle = React.forwardRef<\n HTMLHeadingElement,\n React.ComponentProps<\"h2\">\n>(({ className, ...props }, ref) => {\n return (\n <h2\n ref={ref}\n className={cn(\"text-lg font-semibold text-primary-accent\", className)}\n {...props}\n />\n )\n})\nDrawerTitle.displayName = \"DrawerTitle\"\n\n// Drawer Body/Content\nconst DrawerBody = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<\"div\">\n>(({ className, ...props }, ref) => {\n return (\n <div\n ref={ref}\n data-drawer=\"body\"\n className={cn(\"flex-1 overflow-auto p-4\", className)}\n {...props}\n />\n )\n})\nDrawerBody.displayName = \"DrawerBody\"\n\n// Drawer Footer\nconst DrawerFooter = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<\"div\">\n>(({ className, ...props }, ref) => {\n return (\n <div\n ref={ref}\n data-drawer=\"footer\"\n className={cn(\n \"flex flex-col gap-2 p-4 border-t border-sidebar-border\",\n className\n )}\n {...props}\n />\n )\n})\nDrawerFooter.displayName = \"DrawerFooter\"\n\nexport {\n Drawer,\n DrawerHeader,\n DrawerTitle,\n DrawerBody,\n DrawerFooter,\n useDrawer,\n}\n"]}
@@ -1,3 +0,0 @@
1
- "use client";
2
- import{a as e}from"./chunk-S5TKCF6T.mjs";import*as r from"react";import{jsx as d}from"react/jsx-runtime";var u=r.forwardRef(({className:t,type:o,error:n,...i},s)=>d("input",{type:o,className:e("flex my-2 h-9 w-full rounded-3xl border bg-background hover:bg-secondary px-4 py-2 text-sm text-primary-accent ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",n?"border-destructive-foreground focus-visible:ring-destructive-foreground":"border-border",t),ref:s,...i}));u.displayName="Input";export{u as a};
3
- //# sourceMappingURL=chunk-ITTWKO7B.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/input.tsx"],"sourcesContent":["import * as React from \"react\"\n\nimport { cn } from \"@/lib/utils\"\n\nexport interface InputProps extends React.InputHTMLAttributes<HTMLInputElement> {\n error?: boolean\n}\n\nconst Input = React.forwardRef<HTMLInputElement, InputProps>(\n ({ className, type, error, ...props }, ref) => {\n return (\n <input\n type={type}\n className={cn(\n \"flex my-2 h-9 w-full rounded-3xl border bg-background hover:bg-secondary px-4 py-2 text-sm text-primary-accent ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50\",\n error\n ? \"border-destructive-foreground focus-visible:ring-destructive-foreground\"\n : \"border-border\",\n className\n )}\n ref={ref}\n {...props}\n />\n )\n }\n)\nInput.displayName = \"Input\"\n\nexport { Input }\n"],"mappings":";yCAAA,UAAYA,MAAW,QAWjB,cAAAC,MAAA,oBAHN,IAAMC,EAAc,aAClB,CAAC,CAAE,UAAAC,EAAW,KAAAC,EAAM,MAAAC,EAAO,GAAGC,CAAM,EAAGC,IAEnCN,EAAC,SACC,KAAMG,EACN,UAAWI,EACT,8XACAH,EACI,0EACA,gBACJF,CACF,EACA,IAAKI,EACJ,GAAGD,EACN,CAGN,EACAJ,EAAM,YAAc","names":["React","jsx","Input","className","type","error","props","ref","cn"]}
@@ -1,3 +0,0 @@
1
- "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; } }"use client";
2
- var _chunkFUYXCJOQjs = require('./chunk-FUYXCJOQ.js');var _react = require('react'); var a = _interopRequireWildcard(_react);var _reactslot = require('@radix-ui/react-slot');var _classvarianceauthority = require('class-variance-authority');var _jsxruntime = require('react/jsx-runtime');var m=_classvarianceauthority.cva.call(void 0, "inline-flex items-center cursor-pointer justify-center whitespace-nowrap rounded-4xl font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"bg-primary-accent text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive hover:bg-destructive/90",outline:"border border-input hover:bg-base-accent text-primary-accent",secondary:"bg-muted text-primary-accent hover:bg-muted/20",ghost:"hover:bg-base-accent text-primary-accent",link:"text-primary-accent underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 text-sm",sm:"h-8 text-xs px-3 py-2",lg:"h-10 px-8 py-2 text-sm",icon:"h-9 w-9"}},defaultVariants:{variant:"default",size:"default"}}),f= exports.b =a.forwardRef(({className:i,variant:s,size:c,asChild:d=!1,loading:e=!1,icon:r,...t},u)=>_jsxruntime.jsxs.call(void 0, d?_reactslot.Slot:"button",{className:_chunkFUYXCJOQjs.a.call(void 0, m({variant:s,size:c,className:i})),ref:u,disabled:e||t.disabled,...t,children:[e&&_jsxruntime.jsx.call(void 0, "div",{className:"mr-2 h-4 w-4 animate-spin rounded-full border border-primary-foreground border-t-transparent"}),!e&&r&&_jsxruntime.jsx.call(void 0, "span",{className:"mr-2",children:r}),t.children]}));f.displayName="Button";exports.a = m; exports.b = f;
3
- //# sourceMappingURL=chunk-QKOZTOYU.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/chunk-QKOZTOYU.js","../src/components/button.tsx"],"names":["buttonVariants","cva","Button","className","variant","size","asChild","loading","icon","props","ref","jsxs","Slot","cn","jsx"],"mappings":"AAAA,uWAAY;AACZ,sDAAuC,uECDhB,iDACF,kEACkB,+CAuDjC,IAnDAA,CAAAA,CAAiBC,yCAAAA,gSACrB,CACA,CACE,QAAA,CAAU,CACR,OAAA,CAAS,CACP,OAAA,CACE,+DAAA,CACF,WAAA,CAAa,wCAAA,CACb,OAAA,CAAS,8DAAA,CACT,SAAA,CAAW,gDAAA,CACX,KAAA,CAAO,0CAAA,CACP,IAAA,CAAM,wDACR,CAAA,CACA,IAAA,CAAM,CACJ,OAAA,CAAS,uBAAA,CACT,EAAA,CAAI,uBAAA,CACJ,EAAA,CAAI,wBAAA,CACJ,IAAA,CAAM,SACR,CACF,CAAA,CACA,eAAA,CAAiB,CACf,OAAA,CAAS,SAAA,CACT,IAAA,CAAM,SACR,CACF,CACF,CAAA,CAWMC,CAAAA,aAAe,CAAA,CAAA,UAAA,CACnB,CACE,CACE,SAAA,CAAAC,CAAAA,CACA,OAAA,CAAAC,CAAAA,CACA,IAAA,CAAAC,CAAAA,CACA,OAAA,CAAAC,CAAAA,CAAU,CAAA,CAAA,CACV,OAAA,CAAAC,CAAAA,CAAU,CAAA,CAAA,CACV,IAAA,CAAAC,CAAAA,CACA,GAAGC,CACL,CAAA,CACAC,CAAAA,CAAAA,EAIEC,8BAAAA,CAFWL,CAAUM,eAAAA,CAAO,QAAA,CAE3B,CACC,SAAA,CAAWC,gCAAAA,CAAGb,CAAe,CAAE,OAAA,CAAAI,CAAAA,CAAS,IAAA,CAAAC,CAAAA,CAAM,SAAA,CAAAF,CAAU,CAAC,CAAC,CAAA,CAC1D,GAAA,CAAKO,CAAAA,CACL,QAAA,CAAUH,CAAAA,EAAWE,CAAAA,CAAM,QAAA,CAC1B,GAAGA,CAAAA,CAEH,QAAA,CAAA,CAAAF,CAAAA,EACCO,6BAAAA,KAAC,CAAA,CAAI,SAAA,CAAU,8FAAA,CAA+F,CAAA,CAE/G,CAACP,CAAAA,EAAWC,CAAAA,EAAQM,6BAAAA,MAAC,CAAA,CAAK,SAAA,CAAU,MAAA,CAAQ,QAAA,CAAAN,CAAAA,CAAK,CAAA,CACjDC,CAAAA,CAAM,QAAA,CAAA,CACT,CAGN,CAAA,CACAP,CAAAA,CAAO,WAAA,CAAc,QAAA,CAAA,6BAAA","file":"/Users/admin/Desktop/PROJECTS/alkimi-ui-kit/dist/chunk-QKOZTOYU.js","sourcesContent":[null,"import * as React from \"react\"\nimport { Slot } from \"@radix-ui/react-slot\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst buttonVariants = cva(\n \"inline-flex items-center cursor-pointer justify-center whitespace-nowrap rounded-4xl font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50\",\n {\n variants: {\n variant: {\n default:\n \"bg-primary-accent text-primary-foreground hover:bg-primary/90\",\n destructive: \"bg-destructive hover:bg-destructive/90\",\n outline: \"border border-input hover:bg-base-accent text-primary-accent\",\n secondary: \"bg-muted text-primary-accent hover:bg-muted/20\",\n ghost: \"hover:bg-base-accent text-primary-accent\",\n link: \"text-primary-accent underline-offset-4 hover:underline\",\n },\n size: {\n default: \"h-9 px-4 py-2 text-sm\",\n sm: \"h-8 text-xs px-3 py-2\",\n lg: \"h-10 px-8 py-2 text-sm\",\n icon: \"h-9 w-9\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n }\n)\n\nexport interface ButtonProps\n extends\n React.ButtonHTMLAttributes<HTMLButtonElement>,\n VariantProps<typeof buttonVariants> {\n asChild?: boolean\n loading?: boolean\n icon?: React.ReactNode\n}\n\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\n (\n {\n className,\n variant,\n size,\n asChild = false,\n loading = false,\n icon,\n ...props\n },\n ref\n ) => {\n const Comp = asChild ? Slot : \"button\"\n return (\n <Comp\n className={cn(buttonVariants({ variant, size, className }))}\n ref={ref}\n disabled={loading || props.disabled}\n {...props}\n >\n {loading && (\n <div className=\"mr-2 h-4 w-4 animate-spin rounded-full border border-primary-foreground border-t-transparent\" />\n )}\n {!loading && icon && <span className=\"mr-2\">{icon}</span>}\n {props.children}\n </Comp>\n )\n }\n)\nButton.displayName = \"Button\"\n\nexport { Button, buttonVariants }\n"]}
@@ -1,3 +0,0 @@
1
- "use client";
2
- import{a}from"./chunk-S5TKCF6T.mjs";import{Eye as d,MoreVertical as c}from"lucide-react";import{jsx as o,jsxs as m}from"react/jsx-runtime";function u({className:e,...t}){return o("div",{"data-slot":"table-container",className:"relative bg-background w-full overflow-x-auto border border-border rounded-3xl",children:o("table",{"data-slot":"table",className:a("w-full caption-bottom text-sm",e),...t})})}function f({className:e,...t}){return o("thead",{"data-slot":"table-header",className:a("[&_tr]:border-b text-secondary-text",e),...t})}function h({className:e,...t}){return o("tbody",{"data-slot":"table-body",className:a("[&_tr:last-child]:border-0",e),...t})}function x({className:e,...t}){return o("tfoot",{"data-slot":"table-footer",className:a("bg-muted/50 border-t font-medium [&>tr]:last:border-b-0",e),...t})}function w({className:e,isClickable:t,actionIcon:r,children:l,...n}){let s=r==="eye"?o(d,{className:"h-4 w-4"}):r==="more"?o(c,{className:"h-4 w-4"}):null;return m("tr",{"data-slot":"table-row",className:a("border-b border-border/50 transition-colors",t&&"cursor-pointer hover:bg-muted/50",e),...n,children:[r!==void 0&&o(b,{className:"w-12",children:s}),l]})}function C({className:e,...t}){return o("th",{"data-slot":"table-head",className:a("text-secondary-text h-10 px-4 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0",e),...t})}function b({className:e,...t}){return o("td",{"data-slot":"table-cell",className:a("p-4 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0",e),...t})}function N({className:e,...t}){return o("caption",{"data-slot":"table-caption",className:a("text-muted-foreground mt-4 text-sm",e),...t})}export{u as a,f as b,h as c,x as d,w as e,C as f,b as g,N as h};
3
- //# sourceMappingURL=chunk-UDKQL3NS.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/table.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { Eye, MoreVertical } from \"lucide-react\"\n\nimport { cn } from \"@/lib/utils\"\n\nfunction Table({ className, ...props }: React.ComponentProps<\"table\">) {\n return (\n <div\n data-slot=\"table-container\"\n className=\"relative bg-background w-full overflow-x-auto border border-border rounded-3xl\"\n >\n <table\n data-slot=\"table\"\n className={cn(\"w-full caption-bottom text-sm\", className)}\n {...props}\n />\n </div>\n )\n}\n\nfunction TableHeader({ className, ...props }: React.ComponentProps<\"thead\">) {\n return (\n <thead\n data-slot=\"table-header\"\n className={cn(\"[&_tr]:border-b text-secondary-text\", className)}\n {...props}\n />\n )\n}\n\nfunction TableBody({ className, ...props }: React.ComponentProps<\"tbody\">) {\n return (\n <tbody\n data-slot=\"table-body\"\n className={cn(\"[&_tr:last-child]:border-0\", className)}\n {...props}\n />\n )\n}\n\nfunction TableFooter({ className, ...props }: React.ComponentProps<\"tfoot\">) {\n return (\n <tfoot\n data-slot=\"table-footer\"\n className={cn(\n \"bg-muted/50 border-t font-medium [&>tr]:last:border-b-0\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport interface TableRowProps extends React.ComponentProps<\"tr\"> {\n isClickable?: boolean\n actionIcon?: \"eye\" | \"more\" | null\n}\n\nfunction TableRow({\n className,\n isClickable,\n actionIcon,\n children,\n ...props\n}: TableRowProps) {\n const iconComponent =\n actionIcon === \"eye\" ? (\n <Eye className=\"h-4 w-4\" />\n ) : actionIcon === \"more\" ? (\n <MoreVertical className=\"h-4 w-4\" />\n ) : null\n\n return (\n <tr\n data-slot=\"table-row\"\n className={cn(\n \"border-b border-border/50 transition-colors\",\n isClickable && \"cursor-pointer hover:bg-muted/50\",\n // !isClickable && \"hover:bg-muted/50\",\n // \"data-[state=selected]:bg-secondary\",\n className\n )}\n {...props}\n >\n {actionIcon !== undefined && (\n <TableCell className=\"w-12\">{iconComponent}</TableCell>\n )}\n {children}\n </tr>\n )\n}\n\nfunction TableHead({ className, ...props }: React.ComponentProps<\"th\">) {\n return (\n <th\n data-slot=\"table-head\"\n className={cn(\n \"text-secondary-text h-10 px-4 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction TableCell({ className, ...props }: React.ComponentProps<\"td\">) {\n return (\n <td\n data-slot=\"table-cell\"\n className={cn(\n \"p-4 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction TableCaption({\n className,\n ...props\n}: React.ComponentProps<\"caption\">) {\n return (\n <caption\n data-slot=\"table-caption\"\n className={cn(\"text-muted-foreground mt-4 text-sm\", className)}\n {...props}\n />\n )\n}\n\nexport {\n Table,\n TableHeader,\n TableBody,\n TableFooter,\n TableHead,\n TableRow,\n TableCell,\n TableCaption,\n}\n"],"mappings":";oCAGA,OAAS,OAAAA,EAAK,gBAAAC,MAAoB,eAU5B,cAAAC,EA8DF,QAAAC,MA9DE,oBANN,SAASC,EAAM,CAAE,UAAAC,EAAW,GAAGC,CAAM,EAAkC,CACrE,OACEJ,EAAC,OACC,YAAU,kBACV,UAAU,iFAEV,SAAAA,EAAC,SACC,YAAU,QACV,UAAWK,EAAG,gCAAiCF,CAAS,EACvD,GAAGC,EACN,EACF,CAEJ,CAEA,SAASE,EAAY,CAAE,UAAAH,EAAW,GAAGC,CAAM,EAAkC,CAC3E,OACEJ,EAAC,SACC,YAAU,eACV,UAAWK,EAAG,sCAAuCF,CAAS,EAC7D,GAAGC,EACN,CAEJ,CAEA,SAASG,EAAU,CAAE,UAAAJ,EAAW,GAAGC,CAAM,EAAkC,CACzE,OACEJ,EAAC,SACC,YAAU,aACV,UAAWK,EAAG,6BAA8BF,CAAS,EACpD,GAAGC,EACN,CAEJ,CAEA,SAASI,EAAY,CAAE,UAAAL,EAAW,GAAGC,CAAM,EAAkC,CAC3E,OACEJ,EAAC,SACC,YAAU,eACV,UAAWK,EACT,0DACAF,CACF,EACC,GAAGC,EACN,CAEJ,CAOA,SAASK,EAAS,CAChB,UAAAN,EACA,YAAAO,EACA,WAAAC,EACA,SAAAC,EACA,GAAGR,CACL,EAAkB,CAChB,IAAMS,EACJF,IAAe,MACbX,EAACc,EAAA,CAAI,UAAU,UAAU,EACvBH,IAAe,OACjBX,EAACe,EAAA,CAAa,UAAU,UAAU,EAChC,KAEN,OACEd,EAAC,MACC,YAAU,YACV,UAAWI,EACT,8CACAK,GAAe,mCAGfP,CACF,EACC,GAAGC,EAEH,UAAAO,IAAe,QACdX,EAACgB,EAAA,CAAU,UAAU,OAAQ,SAAAH,EAAc,EAE5CD,GACH,CAEJ,CAEA,SAASK,EAAU,CAAE,UAAAd,EAAW,GAAGC,CAAM,EAA+B,CACtE,OACEJ,EAAC,MACC,YAAU,aACV,UAAWK,EACT,mHACAF,CACF,EACC,GAAGC,EACN,CAEJ,CAEA,SAASY,EAAU,CAAE,UAAAb,EAAW,GAAGC,CAAM,EAA+B,CACtE,OACEJ,EAAC,MACC,YAAU,aACV,UAAWK,EACT,mEACAF,CACF,EACC,GAAGC,EACN,CAEJ,CAEA,SAASc,EAAa,CACpB,UAAAf,EACA,GAAGC,CACL,EAAoC,CAClC,OACEJ,EAAC,WACC,YAAU,gBACV,UAAWK,EAAG,qCAAsCF,CAAS,EAC5D,GAAGC,EACN,CAEJ","names":["Eye","MoreVertical","jsx","jsxs","Table","className","props","cn","TableHeader","TableBody","TableFooter","TableRow","isClickable","actionIcon","children","iconComponent","Eye","MoreVertical","TableCell","TableHead","TableCaption"]}
@@ -1,3 +0,0 @@
1
- "use client";
2
- import{a as f}from"./chunk-4LR7SOCY.mjs";import{b as w}from"./chunk-2YRLGFWP.mjs";import{a as i}from"./chunk-S5TKCF6T.mjs";import*as r from"react";import{X as D}from"lucide-react";import{Drawer as d}from"vaul";import{jsx as t,jsxs as s}from"react/jsx-runtime";var x="24rem",p=r.createContext(null);function R(){let e=r.useContext(p);if(!e)throw new Error("useDrawer must be used within a Drawer component.");return e}var h=r.forwardRef(({isOpen:e,onClose:o,width:a=x,children:n,...l},c)=>{let u=r.useRef(null),m=f("lg"),v=r.useMemo(()=>({isOpen:e,onClose:o,width:a}),[e,o,a]);return s(p.Provider,{value:v,children:[!m&&t(d.Root,{open:e,onOpenChange:b=>{b||o()},direction:"left",children:s(d.Portal,{children:[t(d.Overlay,{className:"fixed inset-0 z-50 bg-background/80 backdrop-blur-sm"}),s(d.Content,{className:"fixed inset-y-0 left-0 z-50 flex h-full w-[85vw] max-w-md flex-col bg-sidebar border-r border-sidebar-border text-primary-accent shadow-lg outline-none","aria-describedby":void 0,children:[t(d.Title,{className:"sr-only",children:"Drawer"}),n]})]})}),m&&s("div",{ref:c,className:"group/drawer peer","data-state":e?"open":"closed",...l,children:[t("div",{className:i("relative bg-sidebar transition-[width] duration-200 ease-linear",e?"":"w-0"),style:{width:e?a:"0"}}),t("div",{ref:u,className:i("fixed right-0 z-40 transition-[right,width] duration-200 ease-linear flex","top-(--sidebar-top,0px) h-[calc(100svh-var(--sidebar-top,0px))]",e?"right-0":"right-[calc(var(--drawer-width)*-1)]"),style:{"--drawer-width":a,width:a},children:t("div",{"data-drawer":"drawer",className:"flex h-full w-full flex-col",children:t("div",{className:"flex flex-col my-2.5 mr-2.5 rounded-2xl border bg-sidebar border-sidebar-border h-full shadow",children:n})})})]})]})});h.displayName="Drawer";var y=r.forwardRef(({className:e,showCloseButton:o=!0,children:a,...n},l)=>{let{onClose:c}=R();return s("div",{ref:l,"data-drawer":"header",className:i("flex w-full items-start justify-between gap-2 p-4 border-b border-sidebar-border",e),...n,children:[t("div",{className:"flex-1",children:a}),o&&s(w,{variant:"secondary",size:"icon",onClick:c,className:"h-8 w-8 shrink-0 rounded-full",children:[t(D,{size:16}),t("span",{className:"sr-only",children:"Close drawer"})]})]})});y.displayName="DrawerHeader";var C=r.forwardRef(({className:e,...o},a)=>t("h2",{ref:a,className:i("text-lg font-semibold text-primary-accent",e),...o}));C.displayName="DrawerTitle";var N=r.forwardRef(({className:e,...o},a)=>t("div",{ref:a,"data-drawer":"body",className:i("flex-1 overflow-auto p-4",e),...o}));N.displayName="DrawerBody";var g=r.forwardRef(({className:e,...o},a)=>t("div",{ref:a,"data-drawer":"footer",className:i("flex flex-col gap-2 p-4 border-t border-sidebar-border",e),...o}));g.displayName="DrawerFooter";export{R as a,h as b,y as c,C as d,N as e,g as f};
3
- //# sourceMappingURL=chunk-VFTGRKDL.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/drawer.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { X } from \"lucide-react\"\nimport { Drawer as DrawerPrimitive } from \"vaul\"\n\nimport { cn } from \"@/lib/utils\"\nimport { Button } from \"@/components/button\"\nimport { useMediaQuery } from \"@/lib/use-media-query\"\n\nconst DRAWER_WIDTH = \"24rem\"\n\n// Drawer Context\ntype DrawerContextProps = {\n isOpen: boolean\n onClose: () => void\n width?: string\n}\n\nconst DrawerContext = React.createContext<DrawerContextProps | null>(null)\n\nfunction useDrawer() {\n const context = React.useContext(DrawerContext)\n if (!context) {\n throw new Error(\"useDrawer must be used within a Drawer component.\")\n }\n return context\n}\n\n// Main Unified Drawer Component (Responsive)\nconst Drawer = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<\"div\"> & {\n isOpen: boolean\n onClose: () => void\n width?: string\n }\n>(({ isOpen, onClose, width = DRAWER_WIDTH, children, ...props }, ref) => {\n const drawerRef = React.useRef<HTMLDivElement>(null)\n const isDesktop = useMediaQuery(\"lg\")\n\n const contextValue = React.useMemo<DrawerContextProps>(\n () => ({\n isOpen,\n onClose,\n width,\n }),\n [isOpen, onClose, width]\n )\n\n return (\n <DrawerContext.Provider value={contextValue}>\n {/* Mobile Drawer: visible < md breakpoint */}\n {!isDesktop && (\n <DrawerPrimitive.Root\n open={isOpen}\n onOpenChange={(open) => {\n if (!open) onClose()\n }}\n direction=\"left\"\n >\n <DrawerPrimitive.Portal>\n <DrawerPrimitive.Overlay className=\"fixed inset-0 z-50 bg-background/80 backdrop-blur-sm\" />\n <DrawerPrimitive.Content\n className=\"fixed inset-y-0 left-0 z-50 flex h-full w-[85vw] max-w-md flex-col bg-sidebar border-r border-sidebar-border text-primary-accent shadow-lg outline-none\"\n aria-describedby={undefined}\n >\n <DrawerPrimitive.Title className=\"sr-only\">\n Drawer\n </DrawerPrimitive.Title>\n {children}\n </DrawerPrimitive.Content>\n </DrawerPrimitive.Portal>\n </DrawerPrimitive.Root>\n )}\n\n {/* Desktop Drawer: visible >= md breakpoint */}\n {isDesktop && (\n <div\n ref={ref}\n className=\"group/drawer peer\"\n data-state={isOpen ? \"open\" : \"closed\"}\n {...props}\n >\n {/* Spacer to push content */}\n <div\n className={cn(\n \"relative bg-sidebar transition-[width] duration-200 ease-linear\",\n isOpen ? \"\" : \"w-0\"\n )}\n style={\n {\n width: isOpen ? width : \"0\",\n } as React.CSSProperties\n }\n />\n\n {/* Fixed drawer panel */}\n <div\n ref={drawerRef}\n className={cn(\n \"fixed right-0 z-40 transition-[right,width] duration-200 ease-linear flex\",\n \"top-(--sidebar-top,0px) h-[calc(100svh-var(--sidebar-top,0px))]\",\n isOpen ? \"right-0\" : \"right-[calc(var(--drawer-width)*-1)]\"\n )}\n style={\n {\n \"--drawer-width\": width,\n width: width,\n } as React.CSSProperties\n }\n >\n <div data-drawer=\"drawer\" className=\"flex h-full w-full flex-col\">\n <div className=\"flex flex-col my-2.5 mr-2.5 rounded-2xl border bg-sidebar border-sidebar-border h-full shadow\">\n {children}\n </div>\n </div>\n </div>\n </div>\n )}\n </DrawerContext.Provider>\n )\n})\nDrawer.displayName = \"Drawer\"\n\n// Drawer Header\nconst DrawerHeader = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<\"div\"> & {\n showCloseButton?: boolean\n }\n>(({ className, showCloseButton = true, children, ...props }, ref) => {\n const { onClose } = useDrawer()\n\n return (\n <div\n ref={ref}\n data-drawer=\"header\"\n className={cn(\n \"flex w-full items-start justify-between gap-2 p-4 border-b border-sidebar-border\",\n className\n )}\n {...props}\n >\n <div className=\"flex-1\">{children}</div>\n {showCloseButton && (\n <Button\n variant=\"secondary\"\n size=\"icon\"\n onClick={onClose}\n className=\"h-8 w-8 shrink-0 rounded-full\"\n >\n <X size={16} />\n <span className=\"sr-only\">Close drawer</span>\n </Button>\n )}\n </div>\n )\n})\nDrawerHeader.displayName = \"DrawerHeader\"\n\n// Drawer Title\nconst DrawerTitle = React.forwardRef<\n HTMLHeadingElement,\n React.ComponentProps<\"h2\">\n>(({ className, ...props }, ref) => {\n return (\n <h2\n ref={ref}\n className={cn(\"text-lg font-semibold text-primary-accent\", className)}\n {...props}\n />\n )\n})\nDrawerTitle.displayName = \"DrawerTitle\"\n\n// Drawer Body/Content\nconst DrawerBody = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<\"div\">\n>(({ className, ...props }, ref) => {\n return (\n <div\n ref={ref}\n data-drawer=\"body\"\n className={cn(\"flex-1 overflow-auto p-4\", className)}\n {...props}\n />\n )\n})\nDrawerBody.displayName = \"DrawerBody\"\n\n// Drawer Footer\nconst DrawerFooter = React.forwardRef<\n HTMLDivElement,\n React.ComponentProps<\"div\">\n>(({ className, ...props }, ref) => {\n return (\n <div\n ref={ref}\n data-drawer=\"footer\"\n className={cn(\n \"flex flex-col gap-2 p-4 border-t border-sidebar-border\",\n className\n )}\n {...props}\n />\n )\n})\nDrawerFooter.displayName = \"DrawerFooter\"\n\nexport {\n Drawer,\n DrawerHeader,\n DrawerTitle,\n DrawerBody,\n DrawerFooter,\n useDrawer,\n}\n"],"mappings":"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","names":["React","X","DrawerPrimitive","jsx","jsxs","DRAWER_WIDTH","DrawerContext","useDrawer","context","Drawer","isOpen","onClose","width","children","props","ref","drawerRef","isDesktop","useMediaQuery","contextValue","DrawerPrimitive","open","cn","DrawerHeader","className","showCloseButton","Button","X","DrawerTitle","DrawerBody","DrawerFooter"]}