ivt 0.4.8 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (213) hide show
  1. package/dist/accordion/index.mjs +15 -15
  2. package/dist/alert/index.mjs +2 -2
  3. package/dist/alert-dialog/index.mjs +17 -17
  4. package/dist/aspect-ratio/index.mjs +1 -1
  5. package/dist/avatar/index.mjs +7 -7
  6. package/dist/badge/index.mjs +3 -3
  7. package/dist/base/index.d.ts +34 -1
  8. package/dist/base/index.mjs +39 -49
  9. package/dist/base/index.mjs.map +1 -1
  10. package/dist/breadcrumb/index.mjs +5 -5
  11. package/dist/button/index.d.ts +1 -1
  12. package/dist/button/index.mjs +3 -3
  13. package/dist/button-group/index.d.ts +4 -0
  14. package/dist/button-group/index.mjs +7 -0
  15. package/dist/button-group/index.mjs.map +1 -0
  16. package/dist/calendar/index.mjs +8 -8
  17. package/dist/card/index.mjs +2 -2
  18. package/dist/carousel/index.mjs +4 -4
  19. package/dist/chart/index.mjs +4 -4
  20. package/dist/checkbox/index.mjs +13 -13
  21. package/dist/chunks/{Container-Bk3WDmXq.mjs → Container-LlUz2Xf7.mjs} +2 -2
  22. package/dist/chunks/{Container-Bk3WDmXq.mjs.map → Container-LlUz2Xf7.mjs.map} +1 -1
  23. package/dist/chunks/{_commonjsHelpers-7oHtoXzW.mjs → _commonjsHelpers-CZIfjjiR.mjs} +1 -1
  24. package/dist/chunks/_commonjsHelpers-CZIfjjiR.mjs.map +1 -0
  25. package/dist/chunks/{accordion-O8UQxSxk.mjs → accordion-BBMhFkK5.mjs} +11 -11
  26. package/dist/chunks/{accordion-O8UQxSxk.mjs.map → accordion-BBMhFkK5.mjs.map} +1 -1
  27. package/dist/chunks/{badge-DK4Kv-Pv.mjs → badge-CShT6Er8.mjs} +2 -2
  28. package/dist/chunks/{badge-DK4Kv-Pv.mjs.map → badge-CShT6Er8.mjs.map} +1 -1
  29. package/dist/chunks/{bundle-mjs-DH6vf6gy.mjs → bundle-mjs-CXcNQyyo.mjs} +1 -1
  30. package/dist/chunks/{bundle-mjs-DH6vf6gy.mjs.map → bundle-mjs-CXcNQyyo.mjs.map} +1 -1
  31. package/dist/chunks/{button-By6p3Bsx.mjs → button-ay7E6KrE.mjs} +5 -3
  32. package/dist/chunks/button-ay7E6KrE.mjs.map +1 -0
  33. package/dist/chunks/{calendar-BMDZ5epm.mjs → calendar-D98dWxWB.mjs} +6 -6
  34. package/dist/chunks/{calendar-BMDZ5epm.mjs.map → calendar-D98dWxWB.mjs.map} +1 -1
  35. package/dist/chunks/{check-I-Hz86Bu.mjs → check-M4AEcM3j.mjs} +2 -2
  36. package/dist/chunks/{check-I-Hz86Bu.mjs.map → check-M4AEcM3j.mjs.map} +1 -1
  37. package/dist/chunks/{chevron-down-BChdO0uD.mjs → chevron-down-BgIYlWhk.mjs} +2 -2
  38. package/dist/chunks/{chevron-down-BChdO0uD.mjs.map → chevron-down-BgIYlWhk.mjs.map} +1 -1
  39. package/dist/chunks/{chevron-left-DTNQBpUD.mjs → chevron-left-wvVA3SWH.mjs} +2 -2
  40. package/dist/chunks/{chevron-left-DTNQBpUD.mjs.map → chevron-left-wvVA3SWH.mjs.map} +1 -1
  41. package/dist/chunks/{chevron-right-Cc8XUA4m.mjs → chevron-right-aTufSnLl.mjs} +2 -2
  42. package/dist/chunks/{chevron-right-Cc8XUA4m.mjs.map → chevron-right-aTufSnLl.mjs.map} +1 -1
  43. package/dist/chunks/{chevrons-up-down-D7M3-587.mjs → chevrons-up-down-TytmUcIx.mjs} +2 -2
  44. package/dist/chunks/{chevrons-up-down-D7M3-587.mjs.map → chevrons-up-down-TytmUcIx.mjs.map} +1 -1
  45. package/dist/chunks/{command-0Ir07spf.mjs → command-OnnopJEP.mjs} +8 -8
  46. package/dist/chunks/{command-0Ir07spf.mjs.map → command-OnnopJEP.mjs.map} +1 -1
  47. package/dist/chunks/{createLucideIcon-C_iAsC8V.mjs → createLucideIcon-DwD3HsEs.mjs} +1 -1
  48. package/dist/chunks/{createLucideIcon-C_iAsC8V.mjs.map → createLucideIcon-DwD3HsEs.mjs.map} +1 -1
  49. package/dist/chunks/{dialog-DgjQIzg0.mjs → dialog-D-h9t9_b.mjs} +4 -4
  50. package/dist/chunks/{dialog-DgjQIzg0.mjs.map → dialog-D-h9t9_b.mjs.map} +1 -1
  51. package/dist/chunks/{ellipsis-DZCE7oYT.mjs → ellipsis-x68Orkqp.mjs} +2 -2
  52. package/dist/chunks/{ellipsis-DZCE7oYT.mjs.map → ellipsis-x68Orkqp.mjs.map} +1 -1
  53. package/dist/chunks/{hover-card-kziSplk3.mjs → hover-card-DXAGq71O.mjs} +11 -11
  54. package/dist/chunks/{hover-card-kziSplk3.mjs.map → hover-card-DXAGq71O.mjs.map} +1 -1
  55. package/dist/chunks/{index-B_sik0X8.mjs → index-B7kZbHfd.mjs} +1 -1
  56. package/dist/chunks/{index-B_sik0X8.mjs.map → index-B7kZbHfd.mjs.map} +1 -1
  57. package/dist/chunks/{index-qjWZItTF.mjs → index-BBC4sR1G.mjs} +5 -5
  58. package/dist/chunks/{index-qjWZItTF.mjs.map → index-BBC4sR1G.mjs.map} +1 -1
  59. package/dist/chunks/{index-kx2sJ01P.mjs → index-BBONAxxm.mjs} +1 -1
  60. package/dist/chunks/{index-kx2sJ01P.mjs.map → index-BBONAxxm.mjs.map} +1 -1
  61. package/dist/chunks/{index-BQaJNtas.mjs → index-BLAYpkjT.mjs} +5 -5
  62. package/dist/chunks/{index-BQaJNtas.mjs.map → index-BLAYpkjT.mjs.map} +1 -1
  63. package/dist/chunks/{index-CZ5Lcw2b.mjs → index-BW3aCz7h.mjs} +1 -1
  64. package/dist/chunks/{index-CZ5Lcw2b.mjs.map → index-BW3aCz7h.mjs.map} +1 -1
  65. package/dist/chunks/{index-BF-RSDzg.mjs → index-BdYD9SA8.mjs} +1 -1
  66. package/dist/chunks/{index-BF-RSDzg.mjs.map → index-BdYD9SA8.mjs.map} +1 -1
  67. package/dist/chunks/{index-THb_GTJh.mjs → index-Bs4nZmb7.mjs} +2 -2
  68. package/dist/chunks/{index-THb_GTJh.mjs.map → index-Bs4nZmb7.mjs.map} +1 -1
  69. package/dist/chunks/{index-Bhg2_PY7.mjs → index-BsVg0u5v.mjs} +1 -1
  70. package/dist/chunks/{index-Bhg2_PY7.mjs.map → index-BsVg0u5v.mjs.map} +1 -1
  71. package/dist/chunks/{index-vM3wkbBM.mjs → index-BtRo1b5t.mjs} +3 -3
  72. package/dist/chunks/{index-vM3wkbBM.mjs.map → index-BtRo1b5t.mjs.map} +1 -1
  73. package/dist/chunks/{index-DvGV9EWr.mjs → index-BxaETqU9.mjs} +3 -3
  74. package/dist/chunks/{index-DvGV9EWr.mjs.map → index-BxaETqU9.mjs.map} +1 -1
  75. package/dist/chunks/{index-Bq7RTW2y.mjs → index-C45e7-3X.mjs} +11 -11
  76. package/dist/chunks/{index-Bq7RTW2y.mjs.map → index-C45e7-3X.mjs.map} +1 -1
  77. package/dist/chunks/{index-C8MYZd8G.mjs → index-C5cl9B-D.mjs} +2 -2
  78. package/dist/chunks/{index-C8MYZd8G.mjs.map → index-C5cl9B-D.mjs.map} +1 -1
  79. package/dist/chunks/{index-BYwOnxY9.mjs → index-C9twRC0t.mjs} +1 -1
  80. package/dist/chunks/{index-BYwOnxY9.mjs.map → index-C9twRC0t.mjs.map} +1 -1
  81. package/dist/chunks/{index-CIezYkdT.mjs → index-CLb4rDzh.mjs} +1 -1
  82. package/dist/chunks/{index-CIezYkdT.mjs.map → index-CLb4rDzh.mjs.map} +1 -1
  83. package/dist/chunks/{index-QmLTwiGV.mjs → index-CMbJ1I29.mjs} +2 -2
  84. package/dist/chunks/{index-QmLTwiGV.mjs.map → index-CMbJ1I29.mjs.map} +1 -1
  85. package/dist/chunks/{index-fWNPF8HK.mjs → index-CVGBR4nU.mjs} +15 -15
  86. package/dist/chunks/{index-fWNPF8HK.mjs.map → index-CVGBR4nU.mjs.map} +1 -1
  87. package/dist/chunks/{index-B9cFm0ac.mjs → index-D5pght6h.mjs} +1 -1
  88. package/dist/chunks/{index-B9cFm0ac.mjs.map → index-D5pght6h.mjs.map} +1 -1
  89. package/dist/chunks/{index-Ch7F9sXl.mjs → index-DRdSNmMB.mjs} +2 -2
  90. package/dist/chunks/{index-Ch7F9sXl.mjs.map → index-DRdSNmMB.mjs.map} +1 -1
  91. package/dist/chunks/{index-DwkdRROB.mjs → index-DU7dxusa.mjs} +7 -7
  92. package/dist/chunks/{index-DwkdRROB.mjs.map → index-DU7dxusa.mjs.map} +1 -1
  93. package/dist/chunks/{index-DmfDMAo5.mjs → index-Db1acFFW.mjs} +1 -1
  94. package/dist/chunks/{index-DmfDMAo5.mjs.map → index-Db1acFFW.mjs.map} +1 -1
  95. package/dist/chunks/{index-Dx_b8MUs.mjs → index-DfjpL9Sk.mjs} +9 -9
  96. package/dist/chunks/{index-Dx_b8MUs.mjs.map → index-DfjpL9Sk.mjs.map} +1 -1
  97. package/dist/chunks/{index-D6oieYoA.mjs → index-DpqIXFxh.mjs} +9 -9
  98. package/dist/chunks/{index-D6oieYoA.mjs.map → index-DpqIXFxh.mjs.map} +1 -1
  99. package/dist/chunks/{index-Bfm-YFEU.mjs → index-qOZvnMSQ.mjs} +1 -1
  100. package/dist/chunks/{index-Bfm-YFEU.mjs.map → index-qOZvnMSQ.mjs.map} +1 -1
  101. package/dist/chunks/{input-Ck6shWlC.mjs → input-CqipwgOY.mjs} +2 -2
  102. package/dist/chunks/{input-Ck6shWlC.mjs.map → input-CqipwgOY.mjs.map} +1 -1
  103. package/dist/chunks/{label-VIPrkCET.mjs → label-Cx4XtbXv.mjs} +3 -3
  104. package/dist/chunks/{label-VIPrkCET.mjs.map → label-Cx4XtbXv.mjs.map} +1 -1
  105. package/dist/chunks/loader-circle-CfhWFS-M.mjs +15 -0
  106. package/dist/chunks/loader-circle-CfhWFS-M.mjs.map +1 -0
  107. package/dist/chunks/{pagination-Dm7nWzum.mjs → pagination-CzDSUdbY.mjs} +6 -6
  108. package/dist/chunks/{pagination-Dm7nWzum.mjs.map → pagination-CzDSUdbY.mjs.map} +1 -1
  109. package/dist/chunks/{popover-C9351eP_.mjs → popover-BFcKYAot.mjs} +13 -13
  110. package/dist/chunks/{popover-C9351eP_.mjs.map → popover-BFcKYAot.mjs.map} +1 -1
  111. package/dist/chunks/{progress-mirm5NVY.mjs → progress-Cm71BOo_.mjs} +4 -4
  112. package/dist/chunks/{progress-mirm5NVY.mjs.map → progress-Cm71BOo_.mjs.map} +1 -1
  113. package/dist/chunks/{pt-BR-BaLtJ-uU.mjs → pt-BR-on-YW6Ay.mjs} +3 -3
  114. package/dist/chunks/{pt-BR-BaLtJ-uU.mjs.map → pt-BR-on-YW6Ay.mjs.map} +1 -1
  115. package/dist/chunks/{scroll-area-NkdCgHkI.mjs → scroll-area-B9cWImdG.mjs} +11 -11
  116. package/dist/chunks/{scroll-area-NkdCgHkI.mjs.map → scroll-area-B9cWImdG.mjs.map} +1 -1
  117. package/dist/chunks/{select-CGW1Mv2b.mjs → select-CQBb4aB3.mjs} +5 -5
  118. package/dist/chunks/{select-CGW1Mv2b.mjs.map → select-CQBb4aB3.mjs.map} +1 -1
  119. package/dist/chunks/{separator-DOKWXYm4.mjs → separator-D6zbGj0R.mjs} +3 -3
  120. package/dist/chunks/{separator-DOKWXYm4.mjs.map → separator-D6zbGj0R.mjs.map} +1 -1
  121. package/dist/chunks/{sheet-BeOnCTry.mjs → sheet-C0AR_o6p.mjs} +4 -4
  122. package/dist/chunks/{sheet-BeOnCTry.mjs.map → sheet-C0AR_o6p.mjs.map} +1 -1
  123. package/dist/chunks/{skeleton-A7SmFyPS.mjs → skeleton-Bd9uEq1R.mjs} +2 -2
  124. package/dist/chunks/{skeleton-A7SmFyPS.mjs.map → skeleton-Bd9uEq1R.mjs.map} +1 -1
  125. package/dist/chunks/{sortable-BZWn10dE.mjs → sortable-CTcnqQX_.mjs} +3 -3
  126. package/dist/chunks/{sortable-BZWn10dE.mjs.map → sortable-CTcnqQX_.mjs.map} +1 -1
  127. package/dist/chunks/{table-0T2vOBFN.mjs → table-C829r3Zv.mjs} +2 -2
  128. package/dist/chunks/{table-0T2vOBFN.mjs.map → table-C829r3Zv.mjs.map} +1 -1
  129. package/dist/chunks/textarea-CD6y9GNW.mjs +13 -0
  130. package/dist/chunks/textarea-CD6y9GNW.mjs.map +1 -0
  131. package/dist/chunks/{toggle-DXexQScO.mjs → toggle-C8fZP79W.mjs} +5 -5
  132. package/dist/chunks/{toggle-DXexQScO.mjs.map → toggle-C8fZP79W.mjs.map} +1 -1
  133. package/dist/chunks/{tooltip-Dj5aSMd4.mjs → tooltip-R49U1IPs.mjs} +13 -13
  134. package/dist/chunks/{tooltip-Dj5aSMd4.mjs.map → tooltip-R49U1IPs.mjs.map} +1 -1
  135. package/dist/chunks/{trash-2-DKEuKNiO.mjs → trash-2-ZC16Df_k.mjs} +2 -2
  136. package/dist/chunks/{trash-2-DKEuKNiO.mjs.map → trash-2-ZC16Df_k.mjs.map} +1 -1
  137. package/dist/chunks/{tslib.es6-BAF7iAx8.mjs → tslib.es6-CnQYzBlA.mjs} +1 -1
  138. package/dist/chunks/{tslib.es6-BAF7iAx8.mjs.map → tslib.es6-CnQYzBlA.mjs.map} +1 -1
  139. package/dist/chunks/{utils-ieFmv4d0.mjs → utils-DwA_HfJw.mjs} +2 -2
  140. package/dist/chunks/{utils-ieFmv4d0.mjs.map → utils-DwA_HfJw.mjs.map} +1 -1
  141. package/dist/chunks/{x-UYJwiGZL.mjs → x-BZdVnIMx.mjs} +2 -2
  142. package/dist/chunks/{x-UYJwiGZL.mjs.map → x-BZdVnIMx.mjs.map} +1 -1
  143. package/dist/collapsible/index.mjs +9 -9
  144. package/dist/combobox/index.mjs +43 -32
  145. package/dist/combobox/index.mjs.map +1 -1
  146. package/dist/command/index.mjs +20 -20
  147. package/dist/context-menu/index.mjs +23 -23
  148. package/dist/data-table/index.mjs +35 -35
  149. package/dist/date-picker/index.d.ts +19 -2
  150. package/dist/date-picker/index.mjs +29 -27
  151. package/dist/date-picker/index.mjs.map +1 -1
  152. package/dist/dialog/index.mjs +19 -19
  153. package/dist/drawer/index.mjs +16 -16
  154. package/dist/dropdown-menu/index.mjs +23 -23
  155. package/dist/dropzone/index.mjs +25 -26
  156. package/dist/dropzone/index.mjs.map +1 -1
  157. package/dist/empty/index.d.ts +16 -0
  158. package/dist/empty/index.mjs +65 -0
  159. package/dist/empty/index.mjs.map +1 -0
  160. package/dist/field/index.d.ts +30 -0
  161. package/dist/field/index.mjs +140 -0
  162. package/dist/field/index.mjs.map +1 -0
  163. package/dist/form/index.mjs +4 -4
  164. package/dist/hover-card/index.mjs +15 -15
  165. package/dist/icon/index.mjs +1 -1
  166. package/dist/index.css +1 -1
  167. package/dist/input/index.mjs +3 -3
  168. package/dist/input-group/index.d.ts +20 -0
  169. package/dist/input-group/index.mjs +97 -0
  170. package/dist/input-group/index.mjs.map +1 -0
  171. package/dist/input-otp/index.mjs +3 -3
  172. package/dist/item/index.d.ts +28 -0
  173. package/dist/item/index.mjs +125 -0
  174. package/dist/item/index.mjs.map +1 -0
  175. package/dist/ivt.css +1 -1
  176. package/dist/kbd/index.d.ts +7 -0
  177. package/dist/kbd/index.mjs +21 -0
  178. package/dist/kbd/index.mjs.map +1 -0
  179. package/dist/label/index.mjs +4 -4
  180. package/dist/layout/index.mjs +5 -5
  181. package/dist/menubar/index.mjs +23 -23
  182. package/dist/multi-select/index.mjs +30 -30
  183. package/dist/navigation-menu/index.mjs +17 -17
  184. package/dist/pagination/index.mjs +8 -8
  185. package/dist/popover/index.mjs +18 -18
  186. package/dist/progress/index.mjs +5 -5
  187. package/dist/radio-group/index.mjs +17 -17
  188. package/dist/resizable/index.mjs +3 -3
  189. package/dist/scroll-area/index.mjs +12 -12
  190. package/dist/select/index.mjs +6 -6
  191. package/dist/separator/index.mjs +4 -4
  192. package/dist/shared/index.mjs +5 -5
  193. package/dist/sheet/index.mjs +19 -19
  194. package/dist/sidebar/index.mjs +27 -27
  195. package/dist/skeleton/index.mjs +3 -3
  196. package/dist/skeleton-component/index.mjs +4 -4
  197. package/dist/slider/index.mjs +12 -12
  198. package/dist/sortable/index.mjs +4 -4
  199. package/dist/spinner/index.d.ts +5 -0
  200. package/dist/spinner/index.mjs +17 -0
  201. package/dist/spinner/index.mjs.map +1 -0
  202. package/dist/switch/index.mjs +10 -10
  203. package/dist/table/index.mjs +3 -3
  204. package/dist/tabs/index.mjs +13 -13
  205. package/dist/textarea/index.mjs +4 -13
  206. package/dist/textarea/index.mjs.map +1 -1
  207. package/dist/toast/index.mjs +15 -15
  208. package/dist/toggle/index.mjs +7 -7
  209. package/dist/toggle-group/index.mjs +13 -13
  210. package/dist/tooltip/index.mjs +17 -17
  211. package/package.json +30 -2
  212. package/dist/chunks/_commonjsHelpers-7oHtoXzW.mjs.map +0 -1
  213. package/dist/chunks/button-By6p3Bsx.mjs.map +0 -1
@@ -0,0 +1,97 @@
1
+ import { cva } from 'class-variance-authority';
2
+ import * as React from 'react';
3
+ import { c as cn } from '../chunks/utils-DwA_HfJw.mjs';
4
+ import { T as Textarea } from '../chunks/textarea-CD6y9GNW.mjs';
5
+ import { B as Button } from '../chunks/button-ay7E6KrE.mjs';
6
+ import { I as Input } from '../chunks/input-CqipwgOY.mjs';
7
+ import '../chunks/bundle-mjs-CXcNQyyo.mjs';
8
+ import '@radix-ui/react-slot';
9
+
10
+ function InputGroup({ className, ...props }) {
11
+ return /*#__PURE__*/ React.createElement("div", {
12
+ "data-slot": "input-group",
13
+ role: "group",
14
+ className: cn("group/input-group border-input dark:bg-input/30 relative flex w-full items-center rounded-md border shadow-xs transition-[color,box-shadow] outline-none", "h-9 min-w-0 has-[>textarea]:h-auto", // Variants based on alignment.
15
+ "has-[>[data-align=inline-start]]:[&>input]:pl-2", "has-[>[data-align=inline-end]]:[&>input]:pr-2", "has-[>[data-align=block-start]]:h-auto has-[>[data-align=block-start]]:flex-col has-[>[data-align=block-start]]:[&>input]:pb-3", "has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-end]]:[&>input]:pt-3", // Focus state.
16
+ "has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot=input-group-control]:focus-visible]:ring-ring/50 has-[[data-slot=input-group-control]:focus-visible]:ring-[3px]", // Error state.
17
+ "has-[[data-slot][aria-invalid=true]]:ring-destructive/20 has-[[data-slot][aria-invalid=true]]:border-destructive dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40", className),
18
+ ...props
19
+ });
20
+ }
21
+ const inputGroupAddonVariants = cva("text-muted-foreground flex h-auto cursor-text items-center justify-center gap-2 py-1.5 text-sm font-medium select-none [&>svg:not([class*='size-'])]:size-4 [&>kbd]:rounded-[calc(var(--radius)-5px)] group-data-[disabled=true]/input-group:opacity-50", {
22
+ variants: {
23
+ align: {
24
+ "inline-start": "order-first pl-3 has-[>button]:ml-[-0.45rem] has-[>kbd]:ml-[-0.35rem]",
25
+ "inline-end": "order-last pr-3 has-[>button]:mr-[-0.45rem] has-[>kbd]:mr-[-0.35rem]",
26
+ "block-start": "order-first w-full justify-start px-3 pt-3 [.border-b]:pb-3 group-has-[>input]/input-group:pt-2.5",
27
+ "block-end": "order-last w-full justify-start px-3 pb-3 [.border-t]:pt-3 group-has-[>input]/input-group:pb-2.5"
28
+ }
29
+ },
30
+ defaultVariants: {
31
+ align: "inline-start"
32
+ }
33
+ });
34
+ function InputGroupAddon({ className, align = "inline-start", ...props }) {
35
+ return /*#__PURE__*/ React.createElement("div", {
36
+ role: "group",
37
+ "data-slot": "input-group-addon",
38
+ "data-align": align,
39
+ className: cn(inputGroupAddonVariants({
40
+ align
41
+ }), className),
42
+ onClick: (e)=>{
43
+ if (e.target.closest("button")) {
44
+ return;
45
+ }
46
+ e.currentTarget.parentElement?.querySelector("input")?.focus();
47
+ },
48
+ ...props
49
+ });
50
+ }
51
+ const inputGroupButtonVariants = cva("text-sm shadow-none flex gap-2 items-center", {
52
+ variants: {
53
+ size: {
54
+ xs: "h-6 gap-1 px-2 rounded-[calc(var(--radius)-5px)] [&>svg:not([class*='size-'])]:size-3.5 has-[>svg]:px-2",
55
+ sm: "h-8 px-2.5 gap-1.5 rounded-md has-[>svg]:px-2.5",
56
+ "icon-xs": "size-6 rounded-[calc(var(--radius)-5px)] p-0 has-[>svg]:p-0",
57
+ "icon-sm": "size-8 p-0 has-[>svg]:p-0"
58
+ }
59
+ },
60
+ defaultVariants: {
61
+ size: "xs"
62
+ }
63
+ });
64
+ function InputGroupButton({ className, type = "button", variant = "ghost", size = "xs", ...props }) {
65
+ return /*#__PURE__*/ React.createElement(Button, {
66
+ type: type,
67
+ "data-size": size,
68
+ variant: variant,
69
+ className: cn(inputGroupButtonVariants({
70
+ size
71
+ }), className),
72
+ ...props
73
+ });
74
+ }
75
+ function InputGroupText({ className, ...props }) {
76
+ return /*#__PURE__*/ React.createElement("span", {
77
+ className: cn("text-muted-foreground flex items-center gap-2 text-sm [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4", className),
78
+ ...props
79
+ });
80
+ }
81
+ function InputGroupInput({ className, ...props }) {
82
+ return /*#__PURE__*/ React.createElement(Input, {
83
+ "data-slot": "input-group-control",
84
+ className: cn("flex-1 rounded-none border-0 bg-transparent shadow-none focus-visible:ring-0 dark:bg-transparent", className),
85
+ ...props
86
+ });
87
+ }
88
+ function InputGroupTextarea({ className, ...props }) {
89
+ return /*#__PURE__*/ React.createElement(Textarea, {
90
+ "data-slot": "input-group-control",
91
+ className: cn("flex-1 resize-none rounded-none border-0 bg-transparent py-3 shadow-none focus-visible:ring-0 dark:bg-transparent", className),
92
+ ...props
93
+ });
94
+ }
95
+
96
+ export { InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea };
97
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../../src/components/ui/input-group/input-group.tsx"],"sourcesContent":["\"use client\";\n\nimport { type VariantProps, cva } from \"class-variance-authority\";\nimport * as React from \"react\";\n\nimport { Button } from \"@/components/ui/button\";\nimport { Input } from \"@/components/ui/input\";\nimport { Textarea } from \"@/components/ui/textarea\";\nimport { cn } from \"@/lib/utils\";\n\nfunction InputGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n\treturn (\n\t\t<div\n\t\t\tdata-slot=\"input-group\"\n\t\t\trole=\"group\"\n\t\t\tclassName={cn(\n\t\t\t\t\"group/input-group border-input dark:bg-input/30 relative flex w-full items-center rounded-md border shadow-xs transition-[color,box-shadow] outline-none\",\n\t\t\t\t\"h-9 min-w-0 has-[>textarea]:h-auto\",\n\n\t\t\t\t// Variants based on alignment.\n\t\t\t\t\"has-[>[data-align=inline-start]]:[&>input]:pl-2\",\n\t\t\t\t\"has-[>[data-align=inline-end]]:[&>input]:pr-2\",\n\t\t\t\t\"has-[>[data-align=block-start]]:h-auto has-[>[data-align=block-start]]:flex-col has-[>[data-align=block-start]]:[&>input]:pb-3\",\n\t\t\t\t\"has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-end]]:[&>input]:pt-3\",\n\n\t\t\t\t// Focus state.\n\t\t\t\t\"has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot=input-group-control]:focus-visible]:ring-ring/50 has-[[data-slot=input-group-control]:focus-visible]:ring-[3px]\",\n\n\t\t\t\t// Error state.\n\t\t\t\t\"has-[[data-slot][aria-invalid=true]]:ring-destructive/20 has-[[data-slot][aria-invalid=true]]:border-destructive dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40\",\n\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nconst inputGroupAddonVariants = cva(\n\t\"text-muted-foreground flex h-auto cursor-text items-center justify-center gap-2 py-1.5 text-sm font-medium select-none [&>svg:not([class*='size-'])]:size-4 [&>kbd]:rounded-[calc(var(--radius)-5px)] group-data-[disabled=true]/input-group:opacity-50\",\n\t{\n\t\tvariants: {\n\t\t\talign: {\n\t\t\t\t\"inline-start\": \"order-first pl-3 has-[>button]:ml-[-0.45rem] has-[>kbd]:ml-[-0.35rem]\",\n\t\t\t\t\"inline-end\": \"order-last pr-3 has-[>button]:mr-[-0.45rem] has-[>kbd]:mr-[-0.35rem]\",\n\t\t\t\t\"block-start\":\n\t\t\t\t\t\"order-first w-full justify-start px-3 pt-3 [.border-b]:pb-3 group-has-[>input]/input-group:pt-2.5\",\n\t\t\t\t\"block-end\":\n\t\t\t\t\t\"order-last w-full justify-start px-3 pb-3 [.border-t]:pt-3 group-has-[>input]/input-group:pb-2.5\",\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\talign: \"inline-start\",\n\t\t},\n\t},\n);\n\nfunction InputGroupAddon({\n\tclassName,\n\talign = \"inline-start\",\n\t...props\n}: React.ComponentProps<\"div\"> & VariantProps<typeof inputGroupAddonVariants>) {\n\treturn (\n\t\t<div\n\t\t\trole=\"group\"\n\t\t\tdata-slot=\"input-group-addon\"\n\t\t\tdata-align={align}\n\t\t\tclassName={cn(inputGroupAddonVariants({ align }), className)}\n\t\t\tonClick={(e) => {\n\t\t\t\tif ((e.target as HTMLElement).closest(\"button\")) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\te.currentTarget.parentElement?.querySelector(\"input\")?.focus();\n\t\t\t}}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nconst inputGroupButtonVariants = cva(\"text-sm shadow-none flex gap-2 items-center\", {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: \"h-6 gap-1 px-2 rounded-[calc(var(--radius)-5px)] [&>svg:not([class*='size-'])]:size-3.5 has-[>svg]:px-2\",\n\t\t\tsm: \"h-8 px-2.5 gap-1.5 rounded-md has-[>svg]:px-2.5\",\n\t\t\t\"icon-xs\": \"size-6 rounded-[calc(var(--radius)-5px)] p-0 has-[>svg]:p-0\",\n\t\t\t\"icon-sm\": \"size-8 p-0 has-[>svg]:p-0\",\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"xs\",\n\t},\n});\n\nfunction InputGroupButton({\n\tclassName,\n\ttype = \"button\",\n\tvariant = \"ghost\",\n\tsize = \"xs\",\n\t...props\n}: Omit<React.ComponentProps<typeof Button>, \"size\"> &\n\tVariantProps<typeof inputGroupButtonVariants>) {\n\treturn (\n\t\t<Button\n\t\t\ttype={type}\n\t\t\tdata-size={size}\n\t\t\tvariant={variant}\n\t\t\tclassName={cn(inputGroupButtonVariants({ size }), className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction InputGroupText({ className, ...props }: React.ComponentProps<\"span\">) {\n\treturn (\n\t\t<span\n\t\t\tclassName={cn(\n\t\t\t\t\"text-muted-foreground flex items-center gap-2 text-sm [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction InputGroupInput({ className, ...props }: React.ComponentProps<\"input\">) {\n\treturn (\n\t\t<Input\n\t\t\tdata-slot=\"input-group-control\"\n\t\t\tclassName={cn(\n\t\t\t\t\"flex-1 rounded-none border-0 bg-transparent shadow-none focus-visible:ring-0 dark:bg-transparent\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction InputGroupTextarea({ className, ...props }: React.ComponentProps<\"textarea\">) {\n\treturn (\n\t\t<Textarea\n\t\t\tdata-slot=\"input-group-control\"\n\t\t\tclassName={cn(\n\t\t\t\t\"flex-1 resize-none rounded-none border-0 bg-transparent py-3 shadow-none focus-visible:ring-0 dark:bg-transparent\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nexport {\n\tInputGroup,\n\tInputGroupAddon,\n\tInputGroupButton,\n\tInputGroupText,\n\tInputGroupInput,\n\tInputGroupTextarea,\n};\n"],"names":["InputGroup","className","props","div","data-slot","role","cn","inputGroupAddonVariants","cva","variants","align","defaultVariants","InputGroupAddon","data-align","onClick","e","target","closest","currentTarget","parentElement","querySelector","focus","inputGroupButtonVariants","size","xs","sm","InputGroupButton","type","variant","Button","data-size","InputGroupText","span","InputGroupInput","Input","InputGroupTextarea","Textarea"],"mappings":";;;;;;;;;AAUA,SAASA,UAAAA,CAAW,EAAEC,SAAS,EAAE,GAAGC,KAAAA,EAAoC,EAAA;AACvE,IAAA,qBACC,KAAA,CAAA,aAAA,CAACC,KAAAA,EAAAA;QACAC,WAAAA,EAAU,aAAA;QACVC,IAAAA,EAAK,OAAA;QACLJ,SAAAA,EAAWK,EAAAA,CACV,0JAAA,EACA,oCAAA;QAGA,iDAAA,EACA,+CAAA,EACA,gIAAA,EACA,0HAAA;AAGA,QAAA,iMAAA;QAGA,gLAAA,EAEAL,SAAAA,CAAAA;AAEA,QAAA,GAAGC;;AAGP;AAEA,MAAMK,uBAAAA,GAA0BC,IAC/B,yPAAA,EACA;IACCC,QAAAA,EAAU;QACTC,KAAAA,EAAO;YACN,cAAA,EAAgB,uEAAA;YAChB,YAAA,EAAc,sEAAA;YACd,aAAA,EACC,mGAAA;YACD,WAAA,EACC;AACF;AACD,KAAA;IACAC,eAAAA,EAAiB;QAChBD,KAAAA,EAAO;AACR;AACD,CAAA,CAAA;AAGD,SAASE,eAAAA,CAAgB,EACxBX,SAAS,EACTS,QAAQ,cAAc,EACtB,GAAGR,KAAAA,EACyE,EAAA;AAC5E,IAAA,qBACC,KAAA,CAAA,aAAA,CAACC,KAAAA,EAAAA;QACAE,IAAAA,EAAK,OAAA;QACLD,WAAAA,EAAU,mBAAA;QACVS,YAAAA,EAAYH,KAAAA;AACZT,QAAAA,SAAAA,EAAWK,GAAGC,uBAAAA,CAAwB;AAAEG,YAAAA;SAAM,CAAA,EAAIT,SAAAA,CAAAA;AAClDa,QAAAA,OAAAA,EAAS,CAACC,CAAAA,GAAAA;AACT,YAAA,IAAI,CAACA,CAAEC,MAAM,CAAiBC,OAAO,CAAC,QAAA,CAAA,EAAW;AAChD,gBAAA;AACD,YAAA;AACAF,YAAAA,CAAAA,CAAEG,aAAa,CAACC,aAAa,EAAEC,cAAc,OAAA,CAAA,EAAUC,KAAAA,EAAAA;AACxD,QAAA,CAAA;AACC,QAAA,GAAGnB;;AAGP;AAEA,MAAMoB,wBAAAA,GAA2Bd,IAAI,6CAAA,EAA+C;IACnFC,QAAAA,EAAU;QACTc,IAAAA,EAAM;YACLC,EAAAA,EAAI,yGAAA;YACJC,EAAAA,EAAI,iDAAA;YACJ,SAAA,EAAW,6DAAA;YACX,SAAA,EAAW;AACZ;AACD,KAAA;IACAd,eAAAA,EAAiB;QAChBY,IAAAA,EAAM;AACP;AACD,CAAA,CAAA;AAEA,SAASG,gBAAAA,CAAiB,EACzBzB,SAAS,EACT0B,OAAO,QAAQ,EACfC,OAAAA,GAAU,OAAO,EACjBL,IAAAA,GAAO,IAAI,EACX,GAAGrB,KAAAA,EAE0C,EAAA;AAC7C,IAAA,qBACC,KAAA,CAAA,aAAA,CAAC2B,MAAAA,EAAAA;QACAF,IAAAA,EAAMA,IAAAA;QACNG,WAAAA,EAAWP,IAAAA;QACXK,OAAAA,EAASA,OAAAA;AACT3B,QAAAA,SAAAA,EAAWK,GAAGgB,wBAAAA,CAAyB;AAAEC,YAAAA;SAAK,CAAA,EAAItB,SAAAA,CAAAA;AACjD,QAAA,GAAGC;;AAGP;AAEA,SAAS6B,cAAAA,CAAe,EAAE9B,SAAS,EAAE,GAAGC,KAAAA,EAAqC,EAAA;AAC5E,IAAA,qBACC,KAAA,CAAA,aAAA,CAAC8B,MAAAA,EAAAA;AACA/B,QAAAA,SAAAA,EAAWK,GACV,wHAAA,EACAL,SAAAA,CAAAA;AAEA,QAAA,GAAGC;;AAGP;AAEA,SAAS+B,eAAAA,CAAgB,EAAEhC,SAAS,EAAE,GAAGC,KAAAA,EAAsC,EAAA;AAC9E,IAAA,qBACC,KAAA,CAAA,aAAA,CAACgC,KAAAA,EAAAA;QACA9B,WAAAA,EAAU,qBAAA;AACVH,QAAAA,SAAAA,EAAWK,GACV,kGAAA,EACAL,SAAAA,CAAAA;AAEA,QAAA,GAAGC;;AAGP;AAEA,SAASiC,kBAAAA,CAAmB,EAAElC,SAAS,EAAE,GAAGC,KAAAA,EAAyC,EAAA;AACpF,IAAA,qBACC,KAAA,CAAA,aAAA,CAACkC,QAAAA,EAAAA;QACAhC,WAAAA,EAAU,qBAAA;AACVH,QAAAA,SAAAA,EAAWK,GACV,mHAAA,EACAL,SAAAA,CAAAA;AAEA,QAAA,GAAGC;;AAGP;;;;"}
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
- import { c as cn } from '../chunks/utils-ieFmv4d0.mjs';
3
- import { c as createLucideIcon } from '../chunks/createLucideIcon-C_iAsC8V.mjs';
4
- import '../chunks/bundle-mjs-DH6vf6gy.mjs';
2
+ import { c as cn } from '../chunks/utils-DwA_HfJw.mjs';
3
+ import { c as createLucideIcon } from '../chunks/createLucideIcon-DwD3HsEs.mjs';
4
+ import '../chunks/bundle-mjs-CXcNQyyo.mjs';
5
5
 
6
6
  const __iconNode = [
7
7
  [
@@ -0,0 +1,28 @@
1
+ import * as class_variance_authority_types from 'class-variance-authority/types';
2
+ import * as react_jsx_runtime from 'react/jsx-runtime';
3
+ import { VariantProps } from 'class-variance-authority';
4
+ import * as React from 'react';
5
+ import { Separator } from '../separator/index.js';
6
+ import '@radix-ui/react-separator';
7
+
8
+ declare function ItemGroup({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
9
+ declare function ItemSeparator({ className, ...props }: React.ComponentProps<typeof Separator>): react_jsx_runtime.JSX.Element;
10
+ declare const itemVariants: (props?: ({
11
+ variant?: "default" | "outline" | "muted" | null | undefined;
12
+ size?: "default" | "sm" | null | undefined;
13
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
14
+ declare function Item({ className, variant, size, asChild, ...props }: React.ComponentProps<"div"> & VariantProps<typeof itemVariants> & {
15
+ asChild?: boolean;
16
+ }): react_jsx_runtime.JSX.Element;
17
+ declare const itemMediaVariants: (props?: ({
18
+ variant?: "default" | "icon" | "image" | null | undefined;
19
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
20
+ declare function ItemMedia({ className, variant, ...props }: React.ComponentProps<"div"> & VariantProps<typeof itemMediaVariants>): react_jsx_runtime.JSX.Element;
21
+ declare function ItemContent({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
22
+ declare function ItemTitle({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
23
+ declare function ItemDescription({ className, ...props }: React.ComponentProps<"p">): react_jsx_runtime.JSX.Element;
24
+ declare function ItemActions({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
25
+ declare function ItemHeader({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
26
+ declare function ItemFooter({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
27
+
28
+ export { Item, ItemActions, ItemContent, ItemDescription, ItemFooter, ItemGroup, ItemHeader, ItemMedia, ItemSeparator, ItemTitle };
@@ -0,0 +1,125 @@
1
+ import { Slot } from '@radix-ui/react-slot';
2
+ import { cva } from 'class-variance-authority';
3
+ import * as React from 'react';
4
+ import { c as cn } from '../chunks/utils-DwA_HfJw.mjs';
5
+ import { S as Separator } from '../chunks/separator-D6zbGj0R.mjs';
6
+ import '../chunks/bundle-mjs-CXcNQyyo.mjs';
7
+ import '../chunks/index-B7kZbHfd.mjs';
8
+ import 'react-dom';
9
+ import 'react/jsx-runtime';
10
+
11
+ function ItemGroup({ className, ...props }) {
12
+ return /*#__PURE__*/ React.createElement("div", {
13
+ role: "list",
14
+ "data-slot": "item-group",
15
+ className: cn("group/item-group flex flex-col", className),
16
+ ...props
17
+ });
18
+ }
19
+ function ItemSeparator({ className, ...props }) {
20
+ return /*#__PURE__*/ React.createElement(Separator, {
21
+ "data-slot": "item-separator",
22
+ orientation: "horizontal",
23
+ className: cn("my-0", className),
24
+ ...props
25
+ });
26
+ }
27
+ const itemVariants = cva("group/item flex items-center border border-transparent text-sm rounded-md transition-colors [a]:hover:bg-accent/50 [a]:transition-colors duration-100 flex-wrap outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]", {
28
+ variants: {
29
+ variant: {
30
+ default: "bg-transparent",
31
+ outline: "border-border",
32
+ muted: "bg-muted/50"
33
+ },
34
+ size: {
35
+ default: "p-4 gap-4 ",
36
+ sm: "py-3 px-4 gap-2.5"
37
+ }
38
+ },
39
+ defaultVariants: {
40
+ variant: "default",
41
+ size: "default"
42
+ }
43
+ });
44
+ function Item({ className, variant = "default", size = "default", asChild = false, ...props }) {
45
+ const Comp = asChild ? Slot : "div";
46
+ return /*#__PURE__*/ React.createElement(Comp, {
47
+ "data-slot": "item",
48
+ "data-variant": variant,
49
+ "data-size": size,
50
+ className: cn(itemVariants({
51
+ variant,
52
+ size,
53
+ className
54
+ })),
55
+ ...props
56
+ });
57
+ }
58
+ const itemMediaVariants = cva("flex shrink-0 items-center justify-center gap-2 group-has-[[data-slot=item-description]]/item:self-start [&_svg]:pointer-events-none group-has-[[data-slot=item-description]]/item:translate-y-0.5", {
59
+ variants: {
60
+ variant: {
61
+ default: "bg-transparent",
62
+ icon: "size-8 border rounded-sm bg-muted [&_svg:not([class*='size-'])]:size-4",
63
+ image: "size-10 rounded-sm overflow-hidden [&_img]:size-full [&_img]:object-cover"
64
+ }
65
+ },
66
+ defaultVariants: {
67
+ variant: "default"
68
+ }
69
+ });
70
+ function ItemMedia({ className, variant = "default", ...props }) {
71
+ return /*#__PURE__*/ React.createElement("div", {
72
+ "data-slot": "item-media",
73
+ "data-variant": variant,
74
+ className: cn(itemMediaVariants({
75
+ variant,
76
+ className
77
+ })),
78
+ ...props
79
+ });
80
+ }
81
+ function ItemContent({ className, ...props }) {
82
+ return /*#__PURE__*/ React.createElement("div", {
83
+ "data-slot": "item-content",
84
+ className: cn("flex flex-1 flex-col gap-1 [&+[data-slot=item-content]]:flex-none", className),
85
+ ...props
86
+ });
87
+ }
88
+ function ItemTitle({ className, ...props }) {
89
+ return /*#__PURE__*/ React.createElement("div", {
90
+ "data-slot": "item-title",
91
+ className: cn("flex w-fit items-center gap-2 text-sm leading-snug font-medium", className),
92
+ ...props
93
+ });
94
+ }
95
+ function ItemDescription({ className, ...props }) {
96
+ return /*#__PURE__*/ React.createElement("p", {
97
+ "data-slot": "item-description",
98
+ className: cn("text-muted-foreground line-clamp-2 text-sm leading-normal font-normal text-balance", "[&>a:hover]:text-primary [&>a]:underline [&>a]:underline-offset-4", className),
99
+ ...props
100
+ });
101
+ }
102
+ function ItemActions({ className, ...props }) {
103
+ return /*#__PURE__*/ React.createElement("div", {
104
+ "data-slot": "item-actions",
105
+ className: cn("flex items-center gap-2", className),
106
+ ...props
107
+ });
108
+ }
109
+ function ItemHeader({ className, ...props }) {
110
+ return /*#__PURE__*/ React.createElement("div", {
111
+ "data-slot": "item-header",
112
+ className: cn("flex basis-full items-center justify-between gap-2", className),
113
+ ...props
114
+ });
115
+ }
116
+ function ItemFooter({ className, ...props }) {
117
+ return /*#__PURE__*/ React.createElement("div", {
118
+ "data-slot": "item-footer",
119
+ className: cn("flex basis-full items-center justify-between gap-2", className),
120
+ ...props
121
+ });
122
+ }
123
+
124
+ export { Item, ItemActions, ItemContent, ItemDescription, ItemFooter, ItemGroup, ItemHeader, ItemMedia, ItemSeparator, ItemTitle };
125
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../../src/components/ui/item/item.tsx"],"sourcesContent":["import { Slot } from \"@radix-ui/react-slot\";\nimport { type VariantProps, cva } from \"class-variance-authority\";\nimport * as React from \"react\";\n\nimport { Separator } from \"@/components/ui/separator\";\nimport { cn } from \"@/lib/utils\";\n\nfunction ItemGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n\treturn (\n\t\t<div\n\t\t\trole=\"list\"\n\t\t\tdata-slot=\"item-group\"\n\t\t\tclassName={cn(\"group/item-group flex flex-col\", className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction ItemSeparator({ className, ...props }: React.ComponentProps<typeof Separator>) {\n\treturn (\n\t\t<Separator\n\t\t\tdata-slot=\"item-separator\"\n\t\t\torientation=\"horizontal\"\n\t\t\tclassName={cn(\"my-0\", className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nconst itemVariants = cva(\n\t\"group/item flex items-center border border-transparent text-sm rounded-md transition-colors [a]:hover:bg-accent/50 [a]:transition-colors duration-100 flex-wrap outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]\",\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tdefault: \"bg-transparent\",\n\t\t\t\toutline: \"border-border\",\n\t\t\t\tmuted: \"bg-muted/50\",\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\tdefault: \"p-4 gap-4 \",\n\t\t\t\tsm: \"py-3 px-4 gap-2.5\",\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tvariant: \"default\",\n\t\t\tsize: \"default\",\n\t\t},\n\t},\n);\n\nfunction Item({\n\tclassName,\n\tvariant = \"default\",\n\tsize = \"default\",\n\tasChild = false,\n\t...props\n}: React.ComponentProps<\"div\"> & VariantProps<typeof itemVariants> & { asChild?: boolean }) {\n\tconst Comp = asChild ? Slot : \"div\";\n\treturn (\n\t\t<Comp\n\t\t\tdata-slot=\"item\"\n\t\t\tdata-variant={variant}\n\t\t\tdata-size={size}\n\t\t\tclassName={cn(itemVariants({ variant, size, className }))}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nconst itemMediaVariants = cva(\n\t\"flex shrink-0 items-center justify-center gap-2 group-has-[[data-slot=item-description]]/item:self-start [&_svg]:pointer-events-none group-has-[[data-slot=item-description]]/item:translate-y-0.5\",\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tdefault: \"bg-transparent\",\n\t\t\t\ticon: \"size-8 border rounded-sm bg-muted [&_svg:not([class*='size-'])]:size-4\",\n\t\t\t\timage: \"size-10 rounded-sm overflow-hidden [&_img]:size-full [&_img]:object-cover\",\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tvariant: \"default\",\n\t\t},\n\t},\n);\n\nfunction ItemMedia({\n\tclassName,\n\tvariant = \"default\",\n\t...props\n}: React.ComponentProps<\"div\"> & VariantProps<typeof itemMediaVariants>) {\n\treturn (\n\t\t<div\n\t\t\tdata-slot=\"item-media\"\n\t\t\tdata-variant={variant}\n\t\t\tclassName={cn(itemMediaVariants({ variant, className }))}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction ItemContent({ className, ...props }: React.ComponentProps<\"div\">) {\n\treturn (\n\t\t<div\n\t\t\tdata-slot=\"item-content\"\n\t\t\tclassName={cn(\"flex flex-1 flex-col gap-1 [&+[data-slot=item-content]]:flex-none\", className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction ItemTitle({ className, ...props }: React.ComponentProps<\"div\">) {\n\treturn (\n\t\t<div\n\t\t\tdata-slot=\"item-title\"\n\t\t\tclassName={cn(\"flex w-fit items-center gap-2 text-sm leading-snug font-medium\", className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction ItemDescription({ className, ...props }: React.ComponentProps<\"p\">) {\n\treturn (\n\t\t<p\n\t\t\tdata-slot=\"item-description\"\n\t\t\tclassName={cn(\n\t\t\t\t\"text-muted-foreground line-clamp-2 text-sm leading-normal font-normal text-balance\",\n\t\t\t\t\"[&>a:hover]:text-primary [&>a]:underline [&>a]:underline-offset-4\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction ItemActions({ className, ...props }: React.ComponentProps<\"div\">) {\n\treturn (\n\t\t<div data-slot=\"item-actions\" className={cn(\"flex items-center gap-2\", className)} {...props} />\n\t);\n}\n\nfunction ItemHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n\treturn (\n\t\t<div\n\t\t\tdata-slot=\"item-header\"\n\t\t\tclassName={cn(\"flex basis-full items-center justify-between gap-2\", className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nfunction ItemFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n\treturn (\n\t\t<div\n\t\t\tdata-slot=\"item-footer\"\n\t\t\tclassName={cn(\"flex basis-full items-center justify-between gap-2\", className)}\n\t\t\t{...props}\n\t\t/>\n\t);\n}\n\nexport {\n\tItem,\n\tItemMedia,\n\tItemContent,\n\tItemActions,\n\tItemGroup,\n\tItemSeparator,\n\tItemTitle,\n\tItemDescription,\n\tItemHeader,\n\tItemFooter,\n};\n"],"names":["ItemGroup","className","props","div","role","data-slot","cn","ItemSeparator","Separator","orientation","itemVariants","cva","variants","variant","default","outline","muted","size","sm","defaultVariants","Item","asChild","Comp","Slot","data-variant","data-size","itemMediaVariants","icon","image","ItemMedia","ItemContent","ItemTitle","ItemDescription","p","ItemActions","ItemHeader","ItemFooter"],"mappings":"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"}