@codefast/ui 0.1.47 → 0.1.48

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 (195) hide show
  1. package/dist/{chunk-TIDJ4IXN.js → chunk-24TJIVWR.js} +2 -2
  2. package/dist/chunk-24TJIVWR.js.map +1 -0
  3. package/dist/{chunk-5EOCDFOA.js → chunk-2ETHQRHT.js} +1 -1
  4. package/dist/{chunk-5EOCDFOA.js.map → chunk-2ETHQRHT.js.map} +1 -1
  5. package/dist/{chunk-SE67MHSM.cjs → chunk-2U4H7AXC.cjs} +1 -1
  6. package/dist/{chunk-SE67MHSM.cjs.map → chunk-2U4H7AXC.cjs.map} +1 -1
  7. package/dist/chunk-2XO4KTBF.js +4 -0
  8. package/dist/chunk-2XO4KTBF.js.map +1 -0
  9. package/dist/chunk-3SJHSQTX.cjs +4 -0
  10. package/dist/chunk-3SJHSQTX.cjs.map +1 -0
  11. package/dist/{chunk-GKLXJ6JZ.js → chunk-3TOWLKUY.js} +2 -2
  12. package/dist/{chunk-4SNJ7GUK.cjs → chunk-3TS74A2W.cjs} +2 -2
  13. package/dist/{chunk-4SNJ7GUK.cjs.map → chunk-3TS74A2W.cjs.map} +1 -1
  14. package/dist/{chunk-XT5YE5R2.js → chunk-432ZMHFM.js} +1 -1
  15. package/dist/{chunk-XT5YE5R2.js.map → chunk-432ZMHFM.js.map} +1 -1
  16. package/dist/{chunk-DW3EYXPU.js → chunk-5I7UA4HT.js} +2 -2
  17. package/dist/{chunk-ID2R45SP.js → chunk-5LM6T7Z5.js} +2 -2
  18. package/dist/{chunk-EMTBWZS5.js → chunk-7KTCYDVV.js} +1 -1
  19. package/dist/chunk-7KTCYDVV.js.map +1 -0
  20. package/dist/{chunk-X42QLXWG.cjs → chunk-7R4FFNVE.cjs} +1 -1
  21. package/dist/chunk-7R4FFNVE.cjs.map +1 -0
  22. package/dist/chunk-A5RTV4IE.js +2 -0
  23. package/dist/chunk-A5RTV4IE.js.map +1 -0
  24. package/dist/{chunk-D5NE25K4.cjs → chunk-B5V32KRW.cjs} +1 -1
  25. package/dist/{chunk-D5NE25K4.cjs.map → chunk-B5V32KRW.cjs.map} +1 -1
  26. package/dist/{chunk-5AMKXKNG.cjs → chunk-BCWKI4D5.cjs} +1 -1
  27. package/dist/{chunk-5AMKXKNG.cjs.map → chunk-BCWKI4D5.cjs.map} +1 -1
  28. package/dist/{chunk-UZVJRS6A.cjs → chunk-D3EC6HWN.cjs} +1 -1
  29. package/dist/{chunk-UZVJRS6A.cjs.map → chunk-D3EC6HWN.cjs.map} +1 -1
  30. package/dist/{chunk-6K73VTHO.cjs → chunk-DH7PAQN6.cjs} +1 -1
  31. package/dist/{chunk-6K73VTHO.cjs.map → chunk-DH7PAQN6.cjs.map} +1 -1
  32. package/dist/{chunk-HRZK3CQ7.cjs → chunk-DIYHARQU.cjs} +1 -1
  33. package/dist/{chunk-HRZK3CQ7.cjs.map → chunk-DIYHARQU.cjs.map} +1 -1
  34. package/dist/{chunk-R33J2GFB.cjs → chunk-DQBQF25F.cjs} +2 -2
  35. package/dist/{chunk-R33J2GFB.cjs.map → chunk-DQBQF25F.cjs.map} +1 -1
  36. package/dist/{chunk-WWXKOWL5.cjs → chunk-FINPFQTZ.cjs} +2 -2
  37. package/dist/{chunk-WWXKOWL5.cjs.map → chunk-FINPFQTZ.cjs.map} +1 -1
  38. package/dist/{chunk-A4ES3QAG.js → chunk-GND6Q575.js} +1 -1
  39. package/dist/{chunk-A4ES3QAG.js.map → chunk-GND6Q575.js.map} +1 -1
  40. package/dist/{chunk-UY4UMO62.cjs → chunk-GWSYICGK.cjs} +1 -1
  41. package/dist/chunk-GWSYICGK.cjs.map +1 -0
  42. package/dist/{chunk-H4LRGPZE.js → chunk-I5F5NVBQ.js} +1 -1
  43. package/dist/{chunk-H4LRGPZE.js.map → chunk-I5F5NVBQ.js.map} +1 -1
  44. package/dist/{chunk-CESXUMO5.cjs → chunk-I6LNZ6KP.cjs} +1 -1
  45. package/dist/chunk-I6LNZ6KP.cjs.map +1 -0
  46. package/dist/{chunk-JMWX562R.cjs → chunk-IPRXHJQ5.cjs} +2 -2
  47. package/dist/{chunk-JMWX562R.cjs.map → chunk-IPRXHJQ5.cjs.map} +1 -1
  48. package/dist/{chunk-GGYAR4OZ.cjs → chunk-JF2OKUYD.cjs} +1 -1
  49. package/dist/chunk-JF2OKUYD.cjs.map +1 -0
  50. package/dist/{chunk-G5JHC5KL.js → chunk-JMYWGU6A.js} +1 -1
  51. package/dist/chunk-JMYWGU6A.js.map +1 -0
  52. package/dist/{chunk-GE4JWO3I.cjs → chunk-KZJA37DU.cjs} +1 -1
  53. package/dist/chunk-KZJA37DU.cjs.map +1 -0
  54. package/dist/{chunk-4JGHSI6R.js → chunk-L75DLRYU.js} +1 -1
  55. package/dist/{chunk-4JGHSI6R.js.map → chunk-L75DLRYU.js.map} +1 -1
  56. package/dist/{chunk-QOFZCBXJ.js → chunk-LGRBBJSZ.js} +1 -1
  57. package/dist/{chunk-QOFZCBXJ.js.map → chunk-LGRBBJSZ.js.map} +1 -1
  58. package/dist/{chunk-26S2QXC7.js → chunk-MO7TQSRR.js} +1 -1
  59. package/dist/{chunk-26S2QXC7.js.map → chunk-MO7TQSRR.js.map} +1 -1
  60. package/dist/{chunk-JYWXLD4K.js → chunk-MYT23AOL.js} +2 -2
  61. package/dist/{chunk-QZNLFVJH.js → chunk-NPOAOTIH.js} +2 -2
  62. package/dist/{chunk-T35I2SOF.js → chunk-OH3BXT6D.js} +1 -1
  63. package/dist/chunk-OH3BXT6D.js.map +1 -0
  64. package/dist/{chunk-ZI7RJRUO.cjs → chunk-OKI5PENP.cjs} +2 -2
  65. package/dist/{chunk-ZI7RJRUO.cjs.map → chunk-OKI5PENP.cjs.map} +1 -1
  66. package/dist/{chunk-H5UMT3XD.js → chunk-P5ZHKPJ3.js} +1 -1
  67. package/dist/chunk-P5ZHKPJ3.js.map +1 -0
  68. package/dist/{chunk-FEFWHSO2.js → chunk-PCKCN7MO.js} +2 -2
  69. package/dist/{chunk-7F3GJBN7.cjs → chunk-PEQRNG2R.cjs} +1 -1
  70. package/dist/chunk-PEQRNG2R.cjs.map +1 -0
  71. package/dist/{chunk-YEXZOAP7.js → chunk-Q3UBBFLY.js} +1 -1
  72. package/dist/chunk-Q3UBBFLY.js.map +1 -0
  73. package/dist/{chunk-7BV7KHES.js → chunk-QEIZTAWS.js} +2 -2
  74. package/dist/{chunk-P4ZI73OW.cjs → chunk-R5235IUC.cjs} +2 -2
  75. package/dist/{chunk-P4ZI73OW.cjs.map → chunk-R5235IUC.cjs.map} +1 -1
  76. package/dist/{chunk-GDDLLNIC.cjs → chunk-SDGFNHJP.cjs} +2 -2
  77. package/dist/{chunk-GDDLLNIC.cjs.map → chunk-SDGFNHJP.cjs.map} +1 -1
  78. package/dist/{chunk-4VQTYHQU.js → chunk-UL2FIEEV.js} +1 -1
  79. package/dist/chunk-UL2FIEEV.js.map +1 -0
  80. package/dist/chunk-VA36YONO.cjs +2 -0
  81. package/dist/chunk-VA36YONO.cjs.map +1 -0
  82. package/dist/{chunk-J2RBV45Z.cjs → chunk-VBE6D4FZ.cjs} +1 -1
  83. package/dist/chunk-VBE6D4FZ.cjs.map +1 -0
  84. package/dist/{chunk-54U6NKNG.js → chunk-VPA4U2FS.js} +1 -1
  85. package/dist/chunk-VPA4U2FS.js.map +1 -0
  86. package/dist/{chunk-LRJWDHBO.cjs → chunk-W7777KAF.cjs} +1 -1
  87. package/dist/{chunk-LRJWDHBO.cjs.map → chunk-W7777KAF.cjs.map} +1 -1
  88. package/dist/{chunk-LWL25GQK.js → chunk-WLRNKE5B.js} +1 -1
  89. package/dist/{chunk-LWL25GQK.js.map → chunk-WLRNKE5B.js.map} +1 -1
  90. package/dist/{chunk-UMQEKWWU.js → chunk-XVSKGP3O.js} +1 -1
  91. package/dist/chunk-XVSKGP3O.js.map +1 -0
  92. package/dist/{chunk-YIKHBOHK.cjs → chunk-XWRE723Z.cjs} +1 -1
  93. package/dist/chunk-XWRE723Z.cjs.map +1 -0
  94. package/dist/{chunk-E6I2SA6E.cjs → chunk-YB2W76VX.cjs} +1 -1
  95. package/dist/{chunk-E6I2SA6E.cjs.map → chunk-YB2W76VX.cjs.map} +1 -1
  96. package/dist/{chunk-55AJ7WQD.cjs → chunk-YORY32TX.cjs} +1 -1
  97. package/dist/chunk-YORY32TX.cjs.map +1 -0
  98. package/dist/{chunk-MYTMAPSH.js → chunk-YTSBANYY.js} +1 -1
  99. package/dist/chunk-YTSBANYY.js.map +1 -0
  100. package/dist/{chunk-UWLNRXT2.cjs → chunk-Z7U5IONC.cjs} +2 -2
  101. package/dist/{chunk-UWLNRXT2.cjs.map → chunk-Z7U5IONC.cjs.map} +1 -1
  102. package/dist/components/alert-dialog.cjs +1 -1
  103. package/dist/components/alert-dialog.js +1 -1
  104. package/dist/components/blockquote.cjs +1 -1
  105. package/dist/components/blockquote.js +1 -1
  106. package/dist/components/box.cjs +1 -1
  107. package/dist/components/box.js +1 -1
  108. package/dist/components/breadcrumb.cjs +1 -1
  109. package/dist/components/breadcrumb.js +1 -1
  110. package/dist/components/button.cjs +1 -1
  111. package/dist/components/button.js +1 -1
  112. package/dist/components/carousel.cjs +1 -1
  113. package/dist/components/carousel.js +1 -1
  114. package/dist/components/chart.cjs +1 -1
  115. package/dist/components/chart.js +1 -1
  116. package/dist/components/code.cjs +1 -1
  117. package/dist/components/code.js +1 -1
  118. package/dist/components/command.cjs +1 -1
  119. package/dist/components/command.js +1 -1
  120. package/dist/components/container.cjs +1 -1
  121. package/dist/components/container.js +1 -1
  122. package/dist/components/context-menu.cjs +1 -1
  123. package/dist/components/context-menu.js +1 -1
  124. package/dist/components/data-table.cjs +1 -1
  125. package/dist/components/data-table.js +1 -1
  126. package/dist/components/dialog.cjs +1 -1
  127. package/dist/components/dialog.js +1 -1
  128. package/dist/components/dropdown-menu.cjs +1 -1
  129. package/dist/components/dropdown-menu.js +1 -1
  130. package/dist/components/em.cjs +1 -1
  131. package/dist/components/em.js +1 -1
  132. package/dist/components/number-input.cjs +1 -1
  133. package/dist/components/number-input.js +1 -1
  134. package/dist/components/password-input.cjs +1 -1
  135. package/dist/components/password-input.js +1 -1
  136. package/dist/components/pre.cjs +1 -1
  137. package/dist/components/pre.js +1 -1
  138. package/dist/components/quote.cjs +1 -1
  139. package/dist/components/quote.js +1 -1
  140. package/dist/components/radio.cjs +1 -1
  141. package/dist/components/radio.js +1 -1
  142. package/dist/components/search-input.cjs +1 -1
  143. package/dist/components/search-input.js +1 -1
  144. package/dist/components/separator.cjs +1 -1
  145. package/dist/components/separator.js +1 -1
  146. package/dist/components/sheet.cjs +1 -1
  147. package/dist/components/sheet.js +1 -1
  148. package/dist/components/sidebar.cjs +2 -0
  149. package/dist/components/sidebar.cjs.map +1 -0
  150. package/dist/components/sidebar.d.cts +155 -0
  151. package/dist/components/sidebar.d.ts +155 -0
  152. package/dist/components/sidebar.js +2 -0
  153. package/dist/components/sidebar.js.map +1 -0
  154. package/dist/components/spinner.cjs +1 -1
  155. package/dist/components/spinner.js +1 -1
  156. package/dist/components/text-input.cjs +1 -1
  157. package/dist/components/text-input.js +1 -1
  158. package/dist/components/text.cjs +1 -1
  159. package/dist/components/text.js +1 -1
  160. package/dist/index.cjs +1 -1
  161. package/dist/index.cjs.map +1 -1
  162. package/dist/index.d.cts +1 -0
  163. package/dist/index.d.ts +1 -0
  164. package/dist/index.js +1 -1
  165. package/package.json +17 -15
  166. package/dist/chunk-4VQTYHQU.js.map +0 -1
  167. package/dist/chunk-54U6NKNG.js.map +0 -1
  168. package/dist/chunk-55AJ7WQD.cjs.map +0 -1
  169. package/dist/chunk-7F3GJBN7.cjs.map +0 -1
  170. package/dist/chunk-CESXUMO5.cjs.map +0 -1
  171. package/dist/chunk-DWGSQAGA.js +0 -4
  172. package/dist/chunk-DWGSQAGA.js.map +0 -1
  173. package/dist/chunk-EMTBWZS5.js.map +0 -1
  174. package/dist/chunk-G5JHC5KL.js.map +0 -1
  175. package/dist/chunk-GE4JWO3I.cjs.map +0 -1
  176. package/dist/chunk-GGYAR4OZ.cjs.map +0 -1
  177. package/dist/chunk-H5UMT3XD.js.map +0 -1
  178. package/dist/chunk-J2RBV45Z.cjs.map +0 -1
  179. package/dist/chunk-MYTMAPSH.js.map +0 -1
  180. package/dist/chunk-SU25A7H6.cjs +0 -4
  181. package/dist/chunk-SU25A7H6.cjs.map +0 -1
  182. package/dist/chunk-T35I2SOF.js.map +0 -1
  183. package/dist/chunk-TIDJ4IXN.js.map +0 -1
  184. package/dist/chunk-UMQEKWWU.js.map +0 -1
  185. package/dist/chunk-UY4UMO62.cjs.map +0 -1
  186. package/dist/chunk-X42QLXWG.cjs.map +0 -1
  187. package/dist/chunk-YEXZOAP7.js.map +0 -1
  188. package/dist/chunk-YIKHBOHK.cjs.map +0 -1
  189. /package/dist/{chunk-GKLXJ6JZ.js.map → chunk-3TOWLKUY.js.map} +0 -0
  190. /package/dist/{chunk-DW3EYXPU.js.map → chunk-5I7UA4HT.js.map} +0 -0
  191. /package/dist/{chunk-ID2R45SP.js.map → chunk-5LM6T7Z5.js.map} +0 -0
  192. /package/dist/{chunk-JYWXLD4K.js.map → chunk-MYT23AOL.js.map} +0 -0
  193. /package/dist/{chunk-QZNLFVJH.js.map → chunk-NPOAOTIH.js.map} +0 -0
  194. /package/dist/{chunk-FEFWHSO2.js.map → chunk-PCKCN7MO.js.map} +0 -0
  195. /package/dist/{chunk-7BV7KHES.js.map → chunk-QEIZTAWS.js.map} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/text.tsx"],"names":["Slot","forwardRef","jsx","Text","Tag","asChild","props","forwardedRef"],"mappings":"AAAA,OAAS,QAAAA,MAAY,uBACrB,OAAS,cAAAC,MAAuC,QAuBvC,cAAAC,MAAA,oBAHT,IAAMC,EAAOF,EAAmC,CAAC,CAAE,GAAIG,EAAM,IAAK,QAAAC,EAAS,GAAGC,CAAM,EAAGC,IAG9EL,EAFWG,EAAUL,EAAOI,EAE3B,CAAU,IAAKG,EAAe,GAAGD,EAAO,CACjD,EAEDH,EAAK,YAAc","sourcesContent":["import { Slot } from '@radix-ui/react-slot';\nimport { forwardRef, type HTMLAttributes } from 'react';\n\n/* -----------------------------------------------------------------------------\n * Component: Text\n * -------------------------------------------------------------------------- */\n\ntype TextElement = HTMLParagraphElement;\n\ninterface TextParagraphProps extends HTMLAttributes<HTMLParagraphElement> {\n as?: 'p';\n}\n\ninterface TextSpanProps extends HTMLAttributes<HTMLSpanElement> {\n as: 'span';\n}\n\ntype TextProps = (TextParagraphProps | TextSpanProps) & {\n asChild?: boolean;\n};\n\nconst Text = forwardRef<TextElement, TextProps>(({ as: Tag = 'p', asChild, ...props }, forwardedRef) => {\n const Component = asChild ? Slot : Tag;\n\n return <Component ref={forwardedRef} {...props} />;\n});\n\nText.displayName = 'Text';\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport { Text, type TextProps };\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/breadcrumb.tsx"],"names":["ChevronRightIcon","DotsHorizontalIcon","Slot","forwardRef","jsx","jsxs","Breadcrumb","props","forwardedRef","BreadcrumbList","className","cn","BreadcrumbItem","BreadcrumbLink","asChild","BreadcrumbPage","BreadcrumbSeparator","children","BreadcrumbEllipsis"],"mappings":"wCAAA,OAAS,oBAAAA,EAAkB,sBAAAC,MAA0B,wBACrD,OAAS,QAAAC,MAAY,uBACrB,OAEE,cAAAC,MAMK,QAeL,cAAAC,EA0GE,QAAAC,MA1GF,oBADF,IAAMC,EAAaH,EAA+C,CAAC,CAAE,GAAGI,CAAM,EAAGC,IAC/EJ,EAAC,OAAI,IAAKI,EAAc,aAAW,aAAc,GAAGD,EAAO,CAC5D,EAEDD,EAAW,YAAc,aASzB,IAAMG,EAAiBN,EACrB,CAAC,CAAE,UAAAO,EAAW,GAAGH,CAAM,EAAGC,IACxBJ,EAAC,MACC,IAAKI,EACL,UAAWG,EACT,yFACAD,CACF,EACC,GAAGH,EACN,CAEJ,EAEAE,EAAe,YAAc,iBAS7B,IAAMG,EAAiBT,EACrB,CAAC,CAAE,UAAAO,EAAW,GAAGH,CAAM,EAAGC,IACxBJ,EAAC,MAAG,IAAKI,EAAc,UAAWG,EAAG,mCAAoCD,CAAS,EAAI,GAAGH,EAAO,CAEpG,EAEAK,EAAe,YAAc,iBAY7B,IAAMC,EAAiBV,EACrB,CAAC,CAAE,QAAAW,EAAS,UAAAJ,EAAW,GAAGH,CAAM,EAAGC,IAG1BJ,EAFWU,EAAUZ,EAAO,IAE3B,CAAU,IAAKM,EAAc,UAAWG,EAAG,mCAAoCD,CAAS,EAAI,GAAGH,EAAO,CAElH,EAEAM,EAAe,YAAc,iBAS7B,IAAME,EAAiBZ,EACrB,CAAC,CAAE,UAAAO,EAAW,GAAGH,CAAM,EAAGC,IACxBJ,EAAC,QACC,IAAKI,EACL,eAAa,OACb,gBAAc,OACd,UAAWG,EAAG,8BAA+BD,CAAS,EACtD,KAAK,OACJ,GAAGH,EACN,CAEJ,EAEAQ,EAAe,YAAc,iBAQ7B,SAASC,EAAoB,CAAE,SAAAC,EAAU,GAAGV,CAAM,EAA0C,CAC1F,OACEH,EAAC,MAAG,cAAY,OAAO,KAAK,eAAgB,GAAGG,EAC5C,SAAAU,GAAYb,EAACJ,EAAA,CAAiB,UAAU,WAAW,EACtD,CAEJ,CAQA,SAASkB,EAAmB,CAAE,UAAAR,EAAW,GAAGH,CAAM,EAAyC,CACzF,OACEF,EAAC,QACC,cAAY,OACZ,UAAWM,EAAG,0CAA2CD,CAAS,EAClE,KAAK,eACJ,GAAGH,EAEJ,UAAAH,EAACH,EAAA,CAAmB,UAAU,SAAS,EACvCG,EAAC,QAAK,UAAU,UAAU,gBAAI,GAChC,CAEJ","sourcesContent":["import { ChevronRightIcon, DotsHorizontalIcon } from '@radix-ui/react-icons';\nimport { Slot } from '@radix-ui/react-slot';\nimport {\n type AnchorHTMLAttributes,\n forwardRef,\n type HTMLAttributes,\n type JSX,\n type LiHTMLAttributes,\n type OlHTMLAttributes,\n type ReactNode,\n} from 'react';\n\nimport { cn } from '@/lib/utils';\n\n/* -----------------------------------------------------------------------------\n * Component: Breadcrumb\n * -------------------------------------------------------------------------- */\n\ntype BreadcrumbElement = HTMLElement;\n\ninterface BreadcrumbProps extends HTMLAttributes<HTMLElement> {\n separator?: ReactNode;\n}\n\nconst Breadcrumb = forwardRef<BreadcrumbElement, BreadcrumbProps>(({ ...props }, forwardedRef) => (\n <nav ref={forwardedRef} aria-label=\"breadcrumb\" {...props} />\n));\n\nBreadcrumb.displayName = 'Breadcrumb';\n\n/* -----------------------------------------------------------------------------\n * Component: BreadcrumbList\n * -------------------------------------------------------------------------- */\n\ntype BreadcrumbListElement = HTMLOListElement;\ntype BreadcrumbListProps = OlHTMLAttributes<HTMLOListElement>;\n\nconst BreadcrumbList = forwardRef<BreadcrumbListElement, BreadcrumbListProps>(\n ({ className, ...props }, forwardedRef) => (\n <ol\n ref={forwardedRef}\n className={cn(\n 'text-muted-foreground flex flex-wrap items-center gap-1.5 break-words text-sm sm:gap-2',\n className,\n )}\n {...props}\n />\n ),\n);\n\nBreadcrumbList.displayName = 'BreadcrumbList';\n\n/* -----------------------------------------------------------------------------\n * Component: BreadcrumbItem\n * -------------------------------------------------------------------------- */\n\ntype BreadcrumbItemElement = HTMLLIElement;\ntype BreadcrumbItemProps = LiHTMLAttributes<HTMLLIElement>;\n\nconst BreadcrumbItem = forwardRef<BreadcrumbItemElement, BreadcrumbItemProps>(\n ({ className, ...props }, forwardedRef) => (\n <li ref={forwardedRef} className={cn('inline-flex items-center gap-1.5', className)} {...props} />\n ),\n);\n\nBreadcrumbItem.displayName = 'BreadcrumbItem';\n\n/* -----------------------------------------------------------------------------\n * Component: BreadcrumbLink\n * -------------------------------------------------------------------------- */\n\ntype BreadcrumbLinkElement = HTMLAnchorElement;\n\ninterface BreadcrumbLinkProps extends AnchorHTMLAttributes<HTMLAnchorElement> {\n asChild?: boolean;\n}\n\nconst BreadcrumbLink = forwardRef<BreadcrumbLinkElement, BreadcrumbLinkProps>(\n ({ asChild, className, ...props }, forwardedRef) => {\n const Component = asChild ? Slot : 'a';\n\n return <Component ref={forwardedRef} className={cn('hover:text-foreground transition', className)} {...props} />;\n },\n);\n\nBreadcrumbLink.displayName = 'BreadcrumbLink';\n\n/* -----------------------------------------------------------------------------\n * Component: BreadcrumbPage\n * -------------------------------------------------------------------------- */\n\ntype BreadcrumbPageElement = HTMLSpanElement;\ntype BreadcrumbPageProps = HTMLAttributes<HTMLSpanElement>;\n\nconst BreadcrumbPage = forwardRef<BreadcrumbPageElement, BreadcrumbPageProps>(\n ({ className, ...props }, forwardedRef) => (\n <span\n ref={forwardedRef}\n aria-current=\"page\"\n aria-disabled=\"true\"\n className={cn('text-foreground font-normal', className)}\n role=\"link\"\n {...props}\n />\n ),\n);\n\nBreadcrumbPage.displayName = 'BreadcrumbPage';\n\n/* -----------------------------------------------------------------------------\n * Component: BreadcrumbSeparator\n * -------------------------------------------------------------------------- */\n\ntype BreadcrumbSeparatorProps = LiHTMLAttributes<HTMLLIElement>;\n\nfunction BreadcrumbSeparator({ children, ...props }: BreadcrumbSeparatorProps): JSX.Element {\n return (\n <li aria-hidden=\"true\" role=\"presentation\" {...props}>\n {children ?? <ChevronRightIcon className=\"size-3.5\" />}\n </li>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Component: BreadcrumbEllipsis\n * -------------------------------------------------------------------------- */\n\ntype BreadcrumbEllipsisProps = HTMLAttributes<HTMLSpanElement>;\n\nfunction BreadcrumbEllipsis({ className, ...props }: BreadcrumbEllipsisProps): JSX.Element {\n return (\n <span\n aria-hidden=\"true\"\n className={cn('flex size-4 items-center justify-center', className)}\n role=\"presentation\"\n {...props}\n >\n <DotsHorizontalIcon className=\"size-4\" />\n <span className=\"sr-only\">More</span>\n </span>\n );\n}\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport {\n Breadcrumb,\n BreadcrumbEllipsis,\n BreadcrumbItem,\n BreadcrumbLink,\n BreadcrumbList,\n BreadcrumbPage,\n BreadcrumbSeparator,\n type BreadcrumbEllipsisProps,\n type BreadcrumbItemProps,\n type BreadcrumbLinkProps,\n type BreadcrumbListProps,\n type BreadcrumbPageProps,\n type BreadcrumbProps,\n type BreadcrumbSeparatorProps,\n};\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/box.tsx"],"names":["Box","forwardRef","Tag","asChild","props","forwardedRef","jsx","Slot"],"mappings":"AAAA,0HAAqB,8BAC2B,+CAuBvC,IAHHA,CAAAA,CAAMC,+BAAAA,CAAkC,CAAE,EAAA,CAAIC,CAAAA,CAAM,KAAA,CAAO,OAAA,CAAAC,CAAAA,CAAS,GAAGC,CAAM,CAAA,CAAGC,CAAAA,CAAAA,EAG7EC,6BAAAA,CAFWH,CAAUI,eAAAA,CAAOL,CAAAA,CAE3B,CAAU,GAAA,CAAKG,CAAAA,CAAe,GAAGD,CAAAA,CAAO,CACjD,CAAA,CAEDJ,CAAAA,CAAI,WAAA,CAAc,KAAA,CAAA,cAAA","file":"/home/runner/work/codefast/codefast/packages/ui/dist/chunk-GE4JWO3I.cjs","sourcesContent":["import { Slot } from '@radix-ui/react-slot';\nimport { forwardRef, type HTMLAttributes } from 'react';\n\n/* -----------------------------------------------------------------------------\n * Component: Box\n * -------------------------------------------------------------------------- */\n\ntype BoxElement = HTMLDivElement;\n\ninterface BoxDivProps extends HTMLAttributes<HTMLDivElement> {\n as?: 'div';\n}\n\ninterface BoxSpanProps extends HTMLAttributes<HTMLSpanElement> {\n as: 'span';\n}\n\ntype BoxProps = (BoxDivProps | BoxSpanProps) & {\n asChild?: boolean;\n};\n\nconst Box = forwardRef<BoxElement, BoxProps>(({ as: Tag = 'div', asChild, ...props }, forwardedRef) => {\n const Component = asChild ? Slot : Tag;\n\n return <Component ref={forwardedRef} {...props} />;\n});\n\nBox.displayName = 'Box';\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport { Box, type BoxProps };\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/code.tsx"],"names":["Code","forwardRef","asChild","props","forwardedRef","jsx","Slot"],"mappings":"AAAA,0HAAqB,8BAC2B,+CAevC,IAHHA,CAAAA,CAAOC,+BAAAA,CAAoC,CAAE,OAAA,CAAAC,CAAAA,CAAS,GAAGC,CAAM,CAAA,CAAGC,CAAAA,CAAAA,EAG/DC,6BAAAA,CAFWH,CAAUI,eAAAA,CAAO,MAAA,CAE3B,CAAU,GAAA,CAAKF,CAAAA,CAAe,GAAGD,CAAAA,CAAO,CACjD,CAAA,CAEDH,CAAAA,CAAK,WAAA,CAAc,MAAA,CAAA,cAAA","file":"/home/runner/work/codefast/codefast/packages/ui/dist/chunk-GGYAR4OZ.cjs","sourcesContent":["import { Slot } from '@radix-ui/react-slot';\nimport { forwardRef, type HTMLAttributes } from 'react';\n\n/* -----------------------------------------------------------------------------\n * Component: Code\n * -------------------------------------------------------------------------- */\n\ntype CodeElement = HTMLElement;\n\ninterface CodeProps extends HTMLAttributes<HTMLElement> {\n asChild?: boolean;\n}\n\nconst Code = forwardRef<CodeElement, CodeProps>(({ asChild, ...props }, forwardedRef) => {\n const Component = asChild ? Slot : 'code';\n\n return <Component ref={forwardedRef} {...props} />;\n});\n\nCode.displayName = 'Code';\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport { Code, type CodeProps };\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/radio.tsx"],"names":["composeEventHandlers","forwardRef","jsx","Radio","className","onValueChange","onChange","props","forwardedRef","cn","event"],"mappings":"wCAEA,OAAS,wBAAAA,MAA4B,sBACrC,OAAS,cAAAC,MAA4C,QAenD,cAAAC,MAAA,oBADF,IAAMC,EAAQF,EAAqC,CAAC,CAAE,UAAAG,EAAW,cAAAC,EAAe,SAAAC,EAAU,GAAGC,CAAM,EAAGC,IACpGN,EAAC,SACC,IAAKM,EACL,UAAWC,EACT,uBACA,gHACA,uBACA,4CACA,yFACA,uBACA,sGACA,mDACAL,CACF,EACA,KAAK,QACL,SAAUJ,EAAqBM,EAAWI,GAAUL,IAAgBK,EAAM,cAAc,KAAK,CAAC,EAC7F,GAAGH,EACN,CACD,EAEDJ,EAAM,YAAc","sourcesContent":["'use client';\n\nimport { composeEventHandlers } from '@radix-ui/primitive';\nimport { forwardRef, type InputHTMLAttributes } from 'react';\n\nimport { cn } from '@/lib/utils';\n\n/* -----------------------------------------------------------------------------\n * Component: Radio\n * -------------------------------------------------------------------------- */\n\ntype RadioElement = HTMLInputElement;\n\ninterface RadioProps extends InputHTMLAttributes<HTMLInputElement> {\n onValueChange?: (value: string) => void;\n}\n\nconst Radio = forwardRef<RadioElement, RadioProps>(({ className, onValueChange, onChange, ...props }, forwardedRef) => (\n <input\n ref={forwardedRef}\n className={cn(\n 'peer appearance-none',\n 'border-input inline-flex size-4 shrink-0 items-center justify-center rounded-full border shadow-sm transition',\n 'hover:border-primary',\n 'checked:border-primary checked:bg-primary',\n 'after:bg-background after:size-full after:rounded-full after:transition-[width,height]',\n 'checked:after:size-1',\n 'focus-visible:ring-ring focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2',\n 'disabled:pointer-events-none disabled:opacity-50',\n className,\n )}\n type=\"radio\"\n onChange={composeEventHandlers(onChange, (event) => onValueChange?.(event.currentTarget.value))}\n {...props}\n />\n));\n\nRadio.displayName = 'Radio';\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport { Radio };\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/home/runner/work/codefast/codefast/packages/ui/dist/chunk-J2RBV45Z.cjs","../src/components/context-menu.tsx"],"names":["ContextMenu","ContextMenuTrigger","ContextMenuGroup","ContextMenuSub","ContextMenuRadioGroup","ContextMenuSubTrigger","forwardRef","children","className","inset","props","forwardedRef","jsxs","cn","jsx","ChevronRightIcon","ContextMenuSubContent","ContextMenuContent","ContextMenuItem","ContextMenuCheckboxItem","checked","CheckIcon","ContextMenuRadioItem","DotFilledIcon","ContextMenuLabel","ContextMenuSeparator","ContextMenuShortcut","ContextMenuArrow"],"mappings":"AAAA,mZAAwC,oHCAF,mDACqB,8BAQpD,+CAmDH,IA1CEA,CAAAA,CAAmC,CAAA,CAAA,IAAA,CAOnCC,CAAAA,aAA0C,CAAA,CAAA,OAAA,CAO1CC,CAAAA,aAAwC,CAAA,CAAA,KAAA,CAOxCC,CAAAA,aAAsC,CAAA,CAAA,GAAA,CAOtCC,CAAAA,aAA6C,CAAA,CAAA,UAAA,CAY7CC,CAAAA,aAAwBC,+BAAAA,CAC3B,CAAE,QAAA,CAAAC,CAAAA,CAAU,SAAA,CAAAC,CAAAA,CAAW,KAAA,CAAAC,CAAAA,CAAO,GAAGC,CAAM,CAAA,CAAGC,CAAAA,CAAAA,EACzCC,8BAAAA,CAAsB,CAAA,UAAA,CAArB,CACC,GAAA,CAAKD,CAAAA,CACL,SAAA,CAAWE,iCAAAA,qBACT,CACA,8DAAA,CACA,iEAAA,CACA,sEAAA,CACAJ,CAAAA,EAAS,MAAA,CACTD,CACF,CAAA,CACC,GAAGE,CAAAA,CAEH,QAAA,CAAA,CAAAH,CAAAA,CACDO,6BAAAA,4BAACC,CAAA,CAAiB,SAAA,CAAU,gBAAA,CAAiB,CAAA,CAAA,CAC/C,CAEJ,CAAA,CAEAV,CAAAA,CAAsB,WAAA,CAAmC,CAAA,CAAA,UAAA,CAAW,WAAA,CASpE,IAAMW,CAAAA,CAAwBV,+BAAAA,CAC3B,CAAE,SAAA,CAAAE,CAAAA,CAAW,GAAGE,CAAM,CAAA,CAAGC,CAAAA,CAAAA,EACxBG,6BAAAA,CAAsB,CAAA,MAAA,CAArB,CACC,QAAA,CAAAA,6BAAAA,CAAsB,CAAA,UAAA,CAArB,CACC,GAAA,CAAKH,CAAAA,CACL,SAAA,CAAWE,iCAAAA,kFACT,CACA,qFAAA,CACA,0DAAA,CACA,0DAAA,CACA,0DAAA,CACA,0DAAA,CACA,8FAAA,CACA,2DAAA,CACA,2DAAA,CACA,2DAAA,CACA,2DAAA,CACAL,CACF,CAAA,CACC,GAAGE,CAAAA,CACN,CAAA,CACF,CAEJ,CAAA,CAEAM,CAAAA,CAAsB,WAAA,CAAmC,CAAA,CAAA,UAAA,CAAW,WAAA,CASpE,IAAMC,CAAAA,CAAqBX,+BAAAA,CACxB,CAAE,SAAA,CAAAE,CAAAA,CAAW,GAAGE,CAAM,CAAA,CAAGC,CAAAA,CAAAA,EACxBG,6BAAAA,CAAsB,CAAA,MAAA,CAArB,CACC,QAAA,CAAAA,6BAAAA,CAAsB,CAAA,OAAA,CAArB,CACC,GAAA,CAAKH,CAAAA,CACL,SAAA,CAAWE,iCAAAA,kFACT,CACA,qFAAA,CACA,0DAAA,CACA,0DAAA,CACA,0DAAA,CACA,0DAAA,CACAL,CACF,CAAA,CACC,GAAGE,CAAAA,CACN,CAAA,CACF,CAEJ,CAAA,CAEAO,CAAAA,CAAmB,WAAA,CAAmC,CAAA,CAAA,OAAA,CAAQ,WAAA,CAY9D,IAAMC,CAAAA,CAAkBZ,+BAAAA,CACrB,CAAE,SAAA,CAAAE,CAAAA,CAAW,KAAA,CAAAC,CAAAA,CAAO,GAAGC,CAAM,CAAA,CAAGC,CAAAA,CAAAA,EAC/BG,6BAAAA,CAAsB,CAAA,IAAA,CAArB,CACC,GAAA,CAAKH,CAAAA,CACL,SAAA,CAAWE,iCAAAA,qBACT,CACA,uEAAA,CACA,iEAAA,CACA,4DAAA,CACAJ,CAAAA,EAAS,MAAA,CACTD,CACF,CAAA,CACC,GAAGE,CAAAA,CACN,CAEJ,CAAA,CAEAQ,CAAAA,CAAgB,WAAA,CAAmC,CAAA,CAAA,IAAA,CAAK,WAAA,CASxD,IAAMC,CAAAA,CAA0Bb,+BAAAA,CAC7B,CAAE,QAAA,CAAAC,CAAAA,CAAU,SAAA,CAAAC,CAAAA,CAAW,OAAA,CAAAY,CAAAA,CAAS,GAAGV,CAAM,CAAA,CAAGC,CAAAA,CAAAA,EAC3CC,8BAAAA,CAAsB,CAAA,YAAA,CAArB,CACC,GAAA,CAAKD,CAAAA,CACL,OAAA,CAASS,CAAAA,CACT,SAAA,CAAWP,iCAAAA,qBACT,CACA,MAAA,CACA,uEAAA,CACA,iEAAA,CACA,4DAAA,CACAL,CACF,CAAA,CACC,GAAGE,CAAAA,CAEJ,QAAA,CAAA,CAAAI,6BAAAA,MAAC,CAAA,CAAK,SAAA,CAAU,2DAAA,CACd,QAAA,CAAAA,6BAAAA,CAAsB,CAAA,aAAA,CAArB,CACC,QAAA,CAAAA,6BAAAA,qBAACO,CAAA,CAAU,SAAA,CAAU,QAAA,CAAS,CAAA,CAChC,CAAA,CACF,CAAA,CACCd,CAAAA,CAAAA,CACH,CAEJ,CAAA,CAEAY,CAAAA,CAAwB,WAAA,CAAmC,CAAA,CAAA,YAAA,CAAa,WAAA,CASxE,IAAMG,CAAAA,CAAuBhB,+BAAAA,CAC1B,CAAE,QAAA,CAAAC,CAAAA,CAAU,SAAA,CAAAC,CAAAA,CAAW,GAAGE,CAAM,CAAA,CAAGC,CAAAA,CAAAA,EAClCC,8BAAAA,CAAsB,CAAA,SAAA,CAArB,CACC,GAAA,CAAKD,CAAAA,CACL,SAAA,CAAWE,iCAAAA,qBACT,CACA,MAAA,CACA,uEAAA,CACA,iEAAA,CACA,4DAAA,CACAL,CACF,CAAA,CACC,GAAGE,CAAAA,CAEJ,QAAA,CAAA,CAAAI,6BAAAA,MAAC,CAAA,CAAK,SAAA,CAAU,2DAAA,CACd,QAAA,CAAAA,6BAAAA,CAAsB,CAAA,aAAA,CAArB,CACC,QAAA,CAAAA,6BAAAA,yBAACS,CAAA,CAAc,SAAA,CAAU,qBAAA,CAAsB,CAAA,CACjD,CAAA,CACF,CAAA,CACChB,CAAAA,CAAAA,CACH,CAEJ,CAAA,CAEAe,CAAAA,CAAqB,WAAA,CAAmC,CAAA,CAAA,SAAA,CAAU,WAAA,CAYlE,IAAME,CAAAA,CAAmBlB,+BAAAA,CACtB,CAAE,SAAA,CAAAE,CAAAA,CAAW,KAAA,CAAAC,CAAAA,CAAO,GAAGC,CAAM,CAAA,CAAGC,CAAAA,CAAAA,EAC/BG,6BAAAA,CAAsB,CAAA,KAAA,CAArB,CACC,GAAA,CAAKH,CAAAA,CACL,SAAA,CAAWE,iCAAAA,qBAAG,CAAuB,yCAAA,CAA2CJ,CAAAA,EAAS,MAAA,CAAQD,CAAS,CAAA,CACzG,GAAGE,CAAAA,CACN,CAEJ,CAAA,CAEAc,CAAAA,CAAiB,WAAA,CAAmC,CAAA,CAAA,KAAA,CAAM,WAAA,CAS1D,IAAMC,CAAAA,CAAuBnB,+BAAAA,CAC1B,CAAE,SAAA,CAAAE,CAAAA,CAAW,GAAGE,CAAM,CAAA,CAAGC,CAAAA,CAAAA,EACxBG,6BAAAA,CAAsB,CAAA,SAAA,CAArB,CACC,GAAA,CAAKH,CAAAA,CACL,SAAA,CAAWE,iCAAAA,yBAAG,CAA2BL,CAAS,CAAA,CACjD,GAAGE,CAAAA,CACN,CAEJ,CAAA,CAEAe,CAAAA,CAAqB,WAAA,CAAmC,CAAA,CAAA,SAAA,CAAU,WAAA,CAQlE,SAASC,CAAAA,CAAoB,CAAE,SAAA,CAAAlB,CAAAA,CAAW,GAAGE,CAAM,CAAA,CAA0C,CAC3F,OAAOI,6BAAAA,MAAC,CAAA,CAAK,SAAA,CAAWD,iCAAAA,uDAAG,CAAyDL,CAAS,CAAA,CAAI,GAAGE,CAAAA,CAAO,CAC7G,CASA,IAAMiB,CAAAA,CAAmBrB,+BAAAA,CACtB,CAAE,SAAA,CAAAE,CAAAA,CAAW,GAAGE,CAAM,CAAA,CAAGC,CAAAA,CAAAA,EACxBG,6BAAAA,CAAsB,CAAA,KAAA,CAArB,CAA2B,GAAA,CAAKH,CAAAA,CAAc,SAAA,CAAWE,iCAAAA,cAAG,CAAgBL,CAAS,CAAA,CAAI,GAAGE,CAAAA,CAAO,CAExG,CAAA,CAEAiB,CAAAA,CAAiB,WAAA,CAAmC,CAAA,CAAA,KAAA,CAAM,WAAA,CAAA,gOAAA","file":"/home/runner/work/codefast/codefast/packages/ui/dist/chunk-J2RBV45Z.cjs","sourcesContent":[null,"import * as ContextMenuPrimitive from '@radix-ui/react-context-menu';\nimport { CheckIcon, ChevronRightIcon, DotFilledIcon } from '@radix-ui/react-icons';\nimport {\n type ComponentProps,\n type ComponentPropsWithoutRef,\n type ComponentRef,\n forwardRef,\n type HTMLAttributes,\n type JSX,\n} from 'react';\n\nimport { cn } from '@/lib/utils';\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenu\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuProps = ComponentProps<typeof ContextMenuPrimitive.Root>;\nconst ContextMenu = ContextMenuPrimitive.Root;\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuTrigger\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuTriggerProps = ComponentPropsWithoutRef<typeof ContextMenuPrimitive.Trigger>;\nconst ContextMenuTrigger = ContextMenuPrimitive.Trigger;\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuGroup\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuGroupProps = ComponentPropsWithoutRef<typeof ContextMenuPrimitive.Group>;\nconst ContextMenuGroup = ContextMenuPrimitive.Group;\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuSub\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuSubProps = ComponentProps<typeof ContextMenuPrimitive.Sub>;\nconst ContextMenuSub = ContextMenuPrimitive.Sub;\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuRadioGroup\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuRadioGroupProps = ComponentPropsWithoutRef<typeof ContextMenuPrimitive.RadioGroup>;\nconst ContextMenuRadioGroup = ContextMenuPrimitive.RadioGroup;\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuSubTrigger\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuSubTriggerElement = ComponentRef<typeof ContextMenuPrimitive.SubTrigger>;\n\ninterface ContextMenuSubTriggerProps extends ComponentPropsWithoutRef<typeof ContextMenuPrimitive.SubTrigger> {\n inset?: boolean;\n}\n\nconst ContextMenuSubTrigger = forwardRef<ContextMenuSubTriggerElement, ContextMenuSubTriggerProps>(\n ({ children, className, inset, ...props }, forwardedRef) => (\n <ContextMenuPrimitive.SubTrigger\n ref={forwardedRef}\n className={cn(\n 'gap-x-2 px-3 py-1.5',\n 'flex cursor-pointer select-none items-center rounded text-sm',\n 'focus:bg-accent focus:text-accent-foreground focus:outline-none',\n 'data-[state=open]:bg-accent data-[state=open]:text-accent-foreground',\n inset && 'pl-8',\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"ml-auto size-4\" />\n </ContextMenuPrimitive.SubTrigger>\n ),\n);\n\nContextMenuSubTrigger.displayName = ContextMenuPrimitive.SubTrigger.displayName;\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuSubContent\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuSubContentElement = ComponentRef<typeof ContextMenuPrimitive.SubContent>;\ntype ContextMenuSubContentProps = ComponentPropsWithoutRef<typeof ContextMenuPrimitive.SubContent>;\n\nconst ContextMenuSubContent = forwardRef<ContextMenuSubContentElement, ContextMenuSubContentProps>(\n ({ className, ...props }, forwardedRef) => (\n <ContextMenuPrimitive.Portal>\n <ContextMenuPrimitive.SubContent\n ref={forwardedRef}\n className={cn(\n 'bg-popover text-popover-foreground z-50 min-w-32 rounded-md border p-1 shadow-md',\n 'data-[state=open]:animate-in data-[state=open]:fade-in data-[state=open]:zoom-in-95',\n 'data-[state=open]:data-[side=top]:slide-in-from-bottom-2',\n 'data-[state=open]:data-[side=right]:slide-in-from-left-2',\n 'data-[state=open]:data-[side=bottom]:slide-in-from-top-2',\n 'data-[state=open]:data-[side=left]:slide-in-from-right-2',\n 'data-[state=closed]:animate-out data-[state=closed]:fade-out data-[state=closed]:zoom-out-95',\n 'data-[state=closed]:data-[side=top]:slide-out-to-bottom-2',\n 'data-[state=closed]:data-[side=right]:slide-out-to-left-2',\n 'data-[state=closed]:data-[side=bottom]:slide-out-to-top-2',\n 'data-[state=closed]:data-[side=left]:slide-out-to-right-2',\n className,\n )}\n {...props}\n />\n </ContextMenuPrimitive.Portal>\n ),\n);\n\nContextMenuSubContent.displayName = ContextMenuPrimitive.SubContent.displayName;\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuContent\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuContentElement = ComponentRef<typeof ContextMenuPrimitive.Content>;\ntype ContextMenuContentProps = ComponentPropsWithoutRef<typeof ContextMenuPrimitive.Content>;\n\nconst ContextMenuContent = forwardRef<ContextMenuContentElement, ContextMenuContentProps>(\n ({ className, ...props }, forwardedRef) => (\n <ContextMenuPrimitive.Portal>\n <ContextMenuPrimitive.Content\n ref={forwardedRef}\n className={cn(\n 'bg-popover text-popover-foreground z-50 min-w-32 rounded-md border p-1 shadow-md',\n 'data-[state=open]:animate-in data-[state=open]:fade-in data-[state=open]:zoom-in-95',\n 'data-[state=open]:data-[side=top]:slide-in-from-bottom-2',\n 'data-[state=open]:data-[side=right]:slide-in-from-left-2',\n 'data-[state=open]:data-[side=bottom]:slide-in-from-top-2',\n 'data-[state=open]:data-[side=left]:slide-in-from-right-2',\n className,\n )}\n {...props}\n />\n </ContextMenuPrimitive.Portal>\n ),\n);\n\nContextMenuContent.displayName = ContextMenuPrimitive.Content.displayName;\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuItem\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuItemElement = ComponentRef<typeof ContextMenuPrimitive.Item>;\n\ninterface ContextMenuItemProps extends ComponentPropsWithoutRef<typeof ContextMenuPrimitive.Item> {\n inset?: boolean;\n}\n\nconst ContextMenuItem = forwardRef<ContextMenuItemElement, ContextMenuItemProps>(\n ({ className, inset, ...props }, forwardedRef) => (\n <ContextMenuPrimitive.Item\n ref={forwardedRef}\n className={cn(\n 'gap-x-2 px-3 py-1.5',\n 'relative flex cursor-pointer select-none items-center rounded text-sm',\n 'focus:bg-accent focus:text-accent-foreground focus:outline-none',\n 'aria-disabled:pointer-events-none aria-disabled:opacity-50',\n inset && 'pl-8',\n className,\n )}\n {...props}\n />\n ),\n);\n\nContextMenuItem.displayName = ContextMenuPrimitive.Item.displayName;\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuCheckboxItem\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuCheckboxItemElement = ComponentRef<typeof ContextMenuPrimitive.CheckboxItem>;\ntype ContextMenuCheckboxItemProps = ComponentPropsWithoutRef<typeof ContextMenuPrimitive.CheckboxItem>;\n\nconst ContextMenuCheckboxItem = forwardRef<ContextMenuCheckboxItemElement, ContextMenuCheckboxItemProps>(\n ({ children, className, checked, ...props }, forwardedRef) => (\n <ContextMenuPrimitive.CheckboxItem\n ref={forwardedRef}\n checked={checked}\n className={cn(\n 'gap-x-2 px-3 py-1.5',\n 'pl-8',\n 'relative flex cursor-pointer select-none items-center rounded text-sm',\n 'focus:bg-accent focus:text-accent-foreground focus:outline-none',\n 'aria-disabled:pointer-events-none aria-disabled:opacity-50',\n className,\n )}\n {...props}\n >\n <span className=\"absolute left-2 flex size-3.5 items-center justify-center\">\n <ContextMenuPrimitive.ItemIndicator>\n <CheckIcon className=\"size-4\" />\n </ContextMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </ContextMenuPrimitive.CheckboxItem>\n ),\n);\n\nContextMenuCheckboxItem.displayName = ContextMenuPrimitive.CheckboxItem.displayName;\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuRadioItem\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuRadioItemElement = ComponentRef<typeof ContextMenuPrimitive.RadioItem>;\ntype ContextMenuRadioItemProps = ComponentPropsWithoutRef<typeof ContextMenuPrimitive.RadioItem>;\n\nconst ContextMenuRadioItem = forwardRef<ContextMenuRadioItemElement, ContextMenuRadioItemProps>(\n ({ children, className, ...props }, forwardedRef) => (\n <ContextMenuPrimitive.RadioItem\n ref={forwardedRef}\n className={cn(\n 'gap-x-2 px-3 py-1.5',\n 'pl-8',\n 'relative flex cursor-pointer select-none items-center rounded text-sm',\n 'focus:bg-accent focus:text-accent-foreground focus:outline-none',\n 'aria-disabled:pointer-events-none aria-disabled:opacity-50',\n className,\n )}\n {...props}\n >\n <span className=\"absolute left-2 flex size-3.5 items-center justify-center\">\n <ContextMenuPrimitive.ItemIndicator>\n <DotFilledIcon className=\"size-4 fill-current\" />\n </ContextMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </ContextMenuPrimitive.RadioItem>\n ),\n);\n\nContextMenuRadioItem.displayName = ContextMenuPrimitive.RadioItem.displayName;\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuLabel\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuLabelElement = ComponentRef<typeof ContextMenuPrimitive.Label>;\n\ninterface ContextMenuLabelProps extends ComponentPropsWithoutRef<typeof ContextMenuPrimitive.Label> {\n inset?: boolean;\n}\n\nconst ContextMenuLabel = forwardRef<ContextMenuLabelElement, ContextMenuLabelProps>(\n ({ className, inset, ...props }, forwardedRef) => (\n <ContextMenuPrimitive.Label\n ref={forwardedRef}\n className={cn('gap-x-2 px-3 py-1.5', 'flex items-center text-sm font-semibold', inset && 'pl-8', className)}\n {...props}\n />\n ),\n);\n\nContextMenuLabel.displayName = ContextMenuPrimitive.Label.displayName;\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuSeparator\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuSeparatorElement = ComponentRef<typeof ContextMenuPrimitive.Separator>;\ntype ContextMenuSeparatorProps = ComponentPropsWithoutRef<typeof ContextMenuPrimitive.Separator>;\n\nconst ContextMenuSeparator = forwardRef<ContextMenuSeparatorElement, ContextMenuSeparatorProps>(\n ({ className, ...props }, forwardedRef) => (\n <ContextMenuPrimitive.Separator\n ref={forwardedRef}\n className={cn('bg-muted mx-2 my-1 h-px', className)}\n {...props}\n />\n ),\n);\n\nContextMenuSeparator.displayName = ContextMenuPrimitive.Separator.displayName;\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuShortcut\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuShortcutProps = HTMLAttributes<HTMLSpanElement>;\n\nfunction ContextMenuShortcut({ className, ...props }: ContextMenuShortcutProps): JSX.Element {\n return <span className={cn('text-muted-foreground ml-auto text-xs tracking-widest', className)} {...props} />;\n}\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuArrow\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuArrowElement = ComponentRef<typeof ContextMenuPrimitive.Arrow>;\ntype ContextMenuArrowProps = ContextMenuPrimitive.ContextMenuArrowProps;\n\nconst ContextMenuArrow = forwardRef<ContextMenuArrowElement, ContextMenuArrowProps>(\n ({ className, ...props }, forwardedRef) => (\n <ContextMenuPrimitive.Arrow ref={forwardedRef} className={cn('fill-popover', className)} {...props} />\n ),\n);\n\nContextMenuArrow.displayName = ContextMenuPrimitive.Arrow.displayName;\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport {\n ContextMenu,\n ContextMenuArrow,\n ContextMenuCheckboxItem,\n ContextMenuContent,\n ContextMenuGroup,\n ContextMenuItem,\n ContextMenuLabel,\n ContextMenuRadioGroup,\n ContextMenuRadioItem,\n ContextMenuSeparator,\n ContextMenuShortcut,\n ContextMenuSub,\n ContextMenuSubContent,\n ContextMenuSubTrigger,\n ContextMenuTrigger,\n type ContextMenuArrowProps,\n type ContextMenuCheckboxItemProps,\n type ContextMenuContentProps,\n type ContextMenuGroupProps,\n type ContextMenuItemProps,\n type ContextMenuLabelProps,\n type ContextMenuProps,\n type ContextMenuRadioGroupProps,\n type ContextMenuRadioItemProps,\n type ContextMenuSeparatorProps,\n type ContextMenuShortcutProps,\n type ContextMenuSubContentProps,\n type ContextMenuSubProps,\n type ContextMenuSubTriggerProps,\n type ContextMenuTriggerProps,\n};\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/context-menu.tsx"],"names":["ContextMenuPrimitive","CheckIcon","ChevronRightIcon","DotFilledIcon","forwardRef","jsx","jsxs","ContextMenu","ContextMenuTrigger","ContextMenuGroup","ContextMenuSub","ContextMenuRadioGroup","ContextMenuSubTrigger","children","className","inset","props","forwardedRef","cn","ContextMenuSubContent","ContextMenuContent","ContextMenuItem","ContextMenuCheckboxItem","checked","ContextMenuRadioItem","ContextMenuLabel","ContextMenuSeparator","ContextMenuShortcut","ContextMenuArrow"],"mappings":"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","sourcesContent":["import * as ContextMenuPrimitive from '@radix-ui/react-context-menu';\nimport { CheckIcon, ChevronRightIcon, DotFilledIcon } from '@radix-ui/react-icons';\nimport {\n type ComponentProps,\n type ComponentPropsWithoutRef,\n type ComponentRef,\n forwardRef,\n type HTMLAttributes,\n type JSX,\n} from 'react';\n\nimport { cn } from '@/lib/utils';\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenu\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuProps = ComponentProps<typeof ContextMenuPrimitive.Root>;\nconst ContextMenu = ContextMenuPrimitive.Root;\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuTrigger\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuTriggerProps = ComponentPropsWithoutRef<typeof ContextMenuPrimitive.Trigger>;\nconst ContextMenuTrigger = ContextMenuPrimitive.Trigger;\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuGroup\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuGroupProps = ComponentPropsWithoutRef<typeof ContextMenuPrimitive.Group>;\nconst ContextMenuGroup = ContextMenuPrimitive.Group;\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuSub\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuSubProps = ComponentProps<typeof ContextMenuPrimitive.Sub>;\nconst ContextMenuSub = ContextMenuPrimitive.Sub;\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuRadioGroup\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuRadioGroupProps = ComponentPropsWithoutRef<typeof ContextMenuPrimitive.RadioGroup>;\nconst ContextMenuRadioGroup = ContextMenuPrimitive.RadioGroup;\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuSubTrigger\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuSubTriggerElement = ComponentRef<typeof ContextMenuPrimitive.SubTrigger>;\n\ninterface ContextMenuSubTriggerProps extends ComponentPropsWithoutRef<typeof ContextMenuPrimitive.SubTrigger> {\n inset?: boolean;\n}\n\nconst ContextMenuSubTrigger = forwardRef<ContextMenuSubTriggerElement, ContextMenuSubTriggerProps>(\n ({ children, className, inset, ...props }, forwardedRef) => (\n <ContextMenuPrimitive.SubTrigger\n ref={forwardedRef}\n className={cn(\n 'gap-x-2 px-3 py-1.5',\n 'flex cursor-pointer select-none items-center rounded text-sm',\n 'focus:bg-accent focus:text-accent-foreground focus:outline-none',\n 'data-[state=open]:bg-accent data-[state=open]:text-accent-foreground',\n inset && 'pl-8',\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"ml-auto size-4\" />\n </ContextMenuPrimitive.SubTrigger>\n ),\n);\n\nContextMenuSubTrigger.displayName = ContextMenuPrimitive.SubTrigger.displayName;\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuSubContent\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuSubContentElement = ComponentRef<typeof ContextMenuPrimitive.SubContent>;\ntype ContextMenuSubContentProps = ComponentPropsWithoutRef<typeof ContextMenuPrimitive.SubContent>;\n\nconst ContextMenuSubContent = forwardRef<ContextMenuSubContentElement, ContextMenuSubContentProps>(\n ({ className, ...props }, forwardedRef) => (\n <ContextMenuPrimitive.Portal>\n <ContextMenuPrimitive.SubContent\n ref={forwardedRef}\n className={cn(\n 'bg-popover text-popover-foreground z-50 min-w-32 rounded-md border p-1 shadow-md',\n 'data-[state=open]:animate-in data-[state=open]:fade-in data-[state=open]:zoom-in-95',\n 'data-[state=open]:data-[side=top]:slide-in-from-bottom-2',\n 'data-[state=open]:data-[side=right]:slide-in-from-left-2',\n 'data-[state=open]:data-[side=bottom]:slide-in-from-top-2',\n 'data-[state=open]:data-[side=left]:slide-in-from-right-2',\n 'data-[state=closed]:animate-out data-[state=closed]:fade-out data-[state=closed]:zoom-out-95',\n 'data-[state=closed]:data-[side=top]:slide-out-to-bottom-2',\n 'data-[state=closed]:data-[side=right]:slide-out-to-left-2',\n 'data-[state=closed]:data-[side=bottom]:slide-out-to-top-2',\n 'data-[state=closed]:data-[side=left]:slide-out-to-right-2',\n className,\n )}\n {...props}\n />\n </ContextMenuPrimitive.Portal>\n ),\n);\n\nContextMenuSubContent.displayName = ContextMenuPrimitive.SubContent.displayName;\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuContent\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuContentElement = ComponentRef<typeof ContextMenuPrimitive.Content>;\ntype ContextMenuContentProps = ComponentPropsWithoutRef<typeof ContextMenuPrimitive.Content>;\n\nconst ContextMenuContent = forwardRef<ContextMenuContentElement, ContextMenuContentProps>(\n ({ className, ...props }, forwardedRef) => (\n <ContextMenuPrimitive.Portal>\n <ContextMenuPrimitive.Content\n ref={forwardedRef}\n className={cn(\n 'bg-popover text-popover-foreground z-50 min-w-32 rounded-md border p-1 shadow-md',\n 'data-[state=open]:animate-in data-[state=open]:fade-in data-[state=open]:zoom-in-95',\n 'data-[state=open]:data-[side=top]:slide-in-from-bottom-2',\n 'data-[state=open]:data-[side=right]:slide-in-from-left-2',\n 'data-[state=open]:data-[side=bottom]:slide-in-from-top-2',\n 'data-[state=open]:data-[side=left]:slide-in-from-right-2',\n className,\n )}\n {...props}\n />\n </ContextMenuPrimitive.Portal>\n ),\n);\n\nContextMenuContent.displayName = ContextMenuPrimitive.Content.displayName;\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuItem\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuItemElement = ComponentRef<typeof ContextMenuPrimitive.Item>;\n\ninterface ContextMenuItemProps extends ComponentPropsWithoutRef<typeof ContextMenuPrimitive.Item> {\n inset?: boolean;\n}\n\nconst ContextMenuItem = forwardRef<ContextMenuItemElement, ContextMenuItemProps>(\n ({ className, inset, ...props }, forwardedRef) => (\n <ContextMenuPrimitive.Item\n ref={forwardedRef}\n className={cn(\n 'gap-x-2 px-3 py-1.5',\n 'relative flex cursor-pointer select-none items-center rounded text-sm',\n 'focus:bg-accent focus:text-accent-foreground focus:outline-none',\n 'aria-disabled:pointer-events-none aria-disabled:opacity-50',\n inset && 'pl-8',\n className,\n )}\n {...props}\n />\n ),\n);\n\nContextMenuItem.displayName = ContextMenuPrimitive.Item.displayName;\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuCheckboxItem\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuCheckboxItemElement = ComponentRef<typeof ContextMenuPrimitive.CheckboxItem>;\ntype ContextMenuCheckboxItemProps = ComponentPropsWithoutRef<typeof ContextMenuPrimitive.CheckboxItem>;\n\nconst ContextMenuCheckboxItem = forwardRef<ContextMenuCheckboxItemElement, ContextMenuCheckboxItemProps>(\n ({ children, className, checked, ...props }, forwardedRef) => (\n <ContextMenuPrimitive.CheckboxItem\n ref={forwardedRef}\n checked={checked}\n className={cn(\n 'gap-x-2 px-3 py-1.5',\n 'pl-8',\n 'relative flex cursor-pointer select-none items-center rounded text-sm',\n 'focus:bg-accent focus:text-accent-foreground focus:outline-none',\n 'aria-disabled:pointer-events-none aria-disabled:opacity-50',\n className,\n )}\n {...props}\n >\n <span className=\"absolute left-2 flex size-3.5 items-center justify-center\">\n <ContextMenuPrimitive.ItemIndicator>\n <CheckIcon className=\"size-4\" />\n </ContextMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </ContextMenuPrimitive.CheckboxItem>\n ),\n);\n\nContextMenuCheckboxItem.displayName = ContextMenuPrimitive.CheckboxItem.displayName;\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuRadioItem\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuRadioItemElement = ComponentRef<typeof ContextMenuPrimitive.RadioItem>;\ntype ContextMenuRadioItemProps = ComponentPropsWithoutRef<typeof ContextMenuPrimitive.RadioItem>;\n\nconst ContextMenuRadioItem = forwardRef<ContextMenuRadioItemElement, ContextMenuRadioItemProps>(\n ({ children, className, ...props }, forwardedRef) => (\n <ContextMenuPrimitive.RadioItem\n ref={forwardedRef}\n className={cn(\n 'gap-x-2 px-3 py-1.5',\n 'pl-8',\n 'relative flex cursor-pointer select-none items-center rounded text-sm',\n 'focus:bg-accent focus:text-accent-foreground focus:outline-none',\n 'aria-disabled:pointer-events-none aria-disabled:opacity-50',\n className,\n )}\n {...props}\n >\n <span className=\"absolute left-2 flex size-3.5 items-center justify-center\">\n <ContextMenuPrimitive.ItemIndicator>\n <DotFilledIcon className=\"size-4 fill-current\" />\n </ContextMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </ContextMenuPrimitive.RadioItem>\n ),\n);\n\nContextMenuRadioItem.displayName = ContextMenuPrimitive.RadioItem.displayName;\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuLabel\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuLabelElement = ComponentRef<typeof ContextMenuPrimitive.Label>;\n\ninterface ContextMenuLabelProps extends ComponentPropsWithoutRef<typeof ContextMenuPrimitive.Label> {\n inset?: boolean;\n}\n\nconst ContextMenuLabel = forwardRef<ContextMenuLabelElement, ContextMenuLabelProps>(\n ({ className, inset, ...props }, forwardedRef) => (\n <ContextMenuPrimitive.Label\n ref={forwardedRef}\n className={cn('gap-x-2 px-3 py-1.5', 'flex items-center text-sm font-semibold', inset && 'pl-8', className)}\n {...props}\n />\n ),\n);\n\nContextMenuLabel.displayName = ContextMenuPrimitive.Label.displayName;\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuSeparator\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuSeparatorElement = ComponentRef<typeof ContextMenuPrimitive.Separator>;\ntype ContextMenuSeparatorProps = ComponentPropsWithoutRef<typeof ContextMenuPrimitive.Separator>;\n\nconst ContextMenuSeparator = forwardRef<ContextMenuSeparatorElement, ContextMenuSeparatorProps>(\n ({ className, ...props }, forwardedRef) => (\n <ContextMenuPrimitive.Separator\n ref={forwardedRef}\n className={cn('bg-muted mx-2 my-1 h-px', className)}\n {...props}\n />\n ),\n);\n\nContextMenuSeparator.displayName = ContextMenuPrimitive.Separator.displayName;\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuShortcut\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuShortcutProps = HTMLAttributes<HTMLSpanElement>;\n\nfunction ContextMenuShortcut({ className, ...props }: ContextMenuShortcutProps): JSX.Element {\n return <span className={cn('text-muted-foreground ml-auto text-xs tracking-widest', className)} {...props} />;\n}\n\n/* -----------------------------------------------------------------------------\n * Component: ContextMenuArrow\n * -------------------------------------------------------------------------- */\n\ntype ContextMenuArrowElement = ComponentRef<typeof ContextMenuPrimitive.Arrow>;\ntype ContextMenuArrowProps = ContextMenuPrimitive.ContextMenuArrowProps;\n\nconst ContextMenuArrow = forwardRef<ContextMenuArrowElement, ContextMenuArrowProps>(\n ({ className, ...props }, forwardedRef) => (\n <ContextMenuPrimitive.Arrow ref={forwardedRef} className={cn('fill-popover', className)} {...props} />\n ),\n);\n\nContextMenuArrow.displayName = ContextMenuPrimitive.Arrow.displayName;\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport {\n ContextMenu,\n ContextMenuArrow,\n ContextMenuCheckboxItem,\n ContextMenuContent,\n ContextMenuGroup,\n ContextMenuItem,\n ContextMenuLabel,\n ContextMenuRadioGroup,\n ContextMenuRadioItem,\n ContextMenuSeparator,\n ContextMenuShortcut,\n ContextMenuSub,\n ContextMenuSubContent,\n ContextMenuSubTrigger,\n ContextMenuTrigger,\n type ContextMenuArrowProps,\n type ContextMenuCheckboxItemProps,\n type ContextMenuContentProps,\n type ContextMenuGroupProps,\n type ContextMenuItemProps,\n type ContextMenuLabelProps,\n type ContextMenuProps,\n type ContextMenuRadioGroupProps,\n type ContextMenuRadioItemProps,\n type ContextMenuSeparatorProps,\n type ContextMenuShortcutProps,\n type ContextMenuSubContentProps,\n type ContextMenuSubProps,\n type ContextMenuSubTriggerProps,\n type ContextMenuTriggerProps,\n};\n"]}
@@ -1,4 +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; } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }"use client";var _chunkDD6AVCRHcjs = require('./chunk-DD6AVCRH.cjs');var _react = require('react');var _recharts = require('recharts'); var g = _interopRequireWildcard(_recharts);var _jsxruntime = require('react/jsx-runtime');var N={light:"",dark:".dark"},_=_react.createContext.call(void 0, null);function w(){let e=_react.useContext.call(void 0, _);if(!e)throw new Error("useChart must be used within a <ChartContainer />");return e}var $=_react.forwardRef.call(void 0, ({children:e,className:r,config:t,id:o,...a},c)=>{let s=_react.useId.call(void 0, ),l=`chart-${o||s.replace(/:/g,"")}`;return _jsxruntime.jsx.call(void 0, _.Provider,{value:{config:t},children:_jsxruntime.jsxs.call(void 0, "div",{ref:c,className:_chunkDD6AVCRHcjs.a.call(void 0, "flex aspect-video justify-center text-xs","[&_.recharts-cartesian-axis-tick_text]:fill-muted-foreground","[&_.recharts-cartesian-grid_line[stroke=#ccc]]:stroke-border/50","[&_.recharts-curve.recharts-tooltip-cursor]:stroke-border","[&_.recharts-dot[stroke=#fff]]:stroke-transparent","[&_.recharts-layer]:outline-none","[&_.recharts-polar-grid_[stroke=#ccc]]:stroke-border","[&_.recharts-radial-bar-background-sector]:fill-muted","[&_.recharts-reference-line_[stroke=#ccc]]:stroke-border","[&_.recharts-rectangle.recharts-tooltip-cursor]:fill-muted","[&_.recharts-sector]:outline-none","[&_.recharts-sector[stroke=#fff]]:stroke-transparent","[&_.recharts-surface]:outline-none",r),"data-chart":l,...a,children:[_jsxruntime.jsx.call(void 0, I,{config:t,id:l}),_jsxruntime.jsx.call(void 0, g.ResponsiveContainer,{children:e})]})})});$.displayName="Chart";function I({id:e,config:r}){let t=_react.useMemo.call(void 0, ()=>J(e,r),[e,r]);return _jsxruntime.jsx.call(void 0, "style",{dangerouslySetInnerHTML:{__html:t}})}var G=g.Tooltip,O= exports.d =_react.forwardRef.call(void 0, ({active:e,className:r,color:t,formatter:o,hideIndicator:a=!1,hideLabel:c=!1,indicator:s="dot",label:l,labelClassName:p,labelFormatter:h,labelKey:y,nameKey:E,payload:u},j)=>{let{config:m}=w(),k=_react.useMemo.call(void 0, ()=>{if(c||!_optionalChain([u, 'optionalAccess', _2 => _2.length]))return null;let[n]=u;if(!n)return null;let P=`${y||n.dataKey||n.name||"value"}`,b=T(m,n,P),C=!y&&typeof l=="string"?_optionalChain([m, 'access', _3 => _3[l], 'optionalAccess', _4 => _4.label])||l:_optionalChain([b, 'optionalAccess', _5 => _5.label]);return h?_jsxruntime.jsx.call(void 0, "div",{className:_chunkDD6AVCRHcjs.a.call(void 0, "font-medium",p),children:h(C,u)}):C?_jsxruntime.jsx.call(void 0, "div",{className:_chunkDD6AVCRHcjs.a.call(void 0, "font-medium",p),children:C}):null},[m,c,l,p,h,y,u]);if(!e||!_optionalChain([u, 'optionalAccess', _6 => _6.length]))return null;let v=u.length===1&&s!=="dot";return _jsxruntime.jsxs.call(void 0, "div",{ref:j,className:_chunkDD6AVCRHcjs.a.call(void 0, "border-border/50 bg-background grid min-w-[8rem] items-start gap-1.5 rounded-lg border px-2.5 py-1.5 text-xs shadow-xl",r),children:[v?null:k,_jsxruntime.jsx.call(void 0, "div",{className:"grid gap-1.5",children:u.map((n,P)=>{let b=`${E||n.name||n.dataKey||"value"}`,C=T(m,n,b),R=t||n.payload.fill||n.color;return _jsxruntime.jsx.call(void 0, "div",{className:_chunkDD6AVCRHcjs.a.call(void 0, "[&>svg]:text-muted-foreground flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5",s==="dot"&&"items-center"),children:o&&n.value!==void 0&&n.name?o(n.value,n.name,n,P,n.payload):_jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment,{children:[_optionalChain([C, 'optionalAccess', _7 => _7.icon])?_jsxruntime.jsx.call(void 0, C.icon,{}):!a&&_jsxruntime.jsx.call(void 0, "div",{className:_chunkDD6AVCRHcjs.a.call(void 0, "shrink-0 rounded-[2px] border-[--color-border] bg-[--color-bg]",{"h-2.5 w-2.5":s==="dot","w-1":s==="line","w-0 border-[1.5px] border-dashed bg-transparent":s==="dashed","my-0.5":v&&s==="dashed"}),style:{"--color-bg":R,"--color-border":R}}),_jsxruntime.jsxs.call(void 0, "div",{className:_chunkDD6AVCRHcjs.a.call(void 0, "flex flex-1 justify-between leading-none",v?"items-end":"items-center"),children:[_jsxruntime.jsxs.call(void 0, "div",{className:"grid gap-1.5",children:[v?k:null,_jsxruntime.jsx.call(void 0, "span",{className:"text-muted-foreground",children:_optionalChain([C, 'optionalAccess', _8 => _8.label])||n.name})]}),n.value?_jsxruntime.jsx.call(void 0, "span",{className:"text-foreground font-mono font-medium tabular-nums",children:n.value.toLocaleString()}):null]})]})},n.dataKey)})})]})});O.displayName="ChartTooltipContent";var Q=g.Legend,D= exports.f =_react.forwardRef.call(void 0, ({className:e,hideIcon:r=!1,nameKey:t,payload:o,verticalAlign:a="bottom"},c)=>{let{config:s}=w();return _optionalChain([o, 'optionalAccess', _9 => _9.length])?_jsxruntime.jsx.call(void 0, "div",{ref:c,className:_chunkDD6AVCRHcjs.a.call(void 0, "flex items-center justify-center gap-4",a==="top"?"pb-3":"pt-3",e),children:o.map(l=>{let p="value";t?p=t:l.dataKey&&(p=String(l.dataKey));let h=T(s,l,p);return _jsxruntime.jsxs.call(void 0, "div",{className:_chunkDD6AVCRHcjs.a.call(void 0, "[&>svg]:text-muted-foreground flex items-center gap-1.5 [&>svg]:size-3"),children:[_optionalChain([h, 'optionalAccess', _10 => _10.icon])&&!r?_jsxruntime.jsx.call(void 0, h.icon,{}):_jsxruntime.jsx.call(void 0, "div",{className:"size-2 shrink-0 rounded",style:{backgroundColor:l.color}}),_optionalChain([h, 'optionalAccess', _11 => _11.label])]},String(l.value))})}):null});D.displayName="ChartLegendContent";function T(e,r,t){if(!S(r))return;let o="payload"in r&&S(r.payload)?r.payload:void 0,a=V(r,o,t);return a in e?e[a]:e[t]}function S(e){return typeof e=="object"&&e!==null}function V(e,r,t){return t in e&&typeof e[t]=="string"?e[t]:r&&t in r&&typeof r[t]=="string"?r[t]:t}function z(e,r,t){let o=[];return o.push(`${N[e]} [data-chart=${r}] {`),t.forEach(([a,c])=>{let s=_optionalChain([c, 'access', _12 => _12.theme, 'optionalAccess', _13 => _13[e]])||c.color;s&&o.push(` --color-${a}: ${s};`)}),o.push("}"),o.join(`
2
- `)}function J(e,r){let t=Object.entries(r).filter(([a,{theme:c,color:s}])=>c||s),o=[];return Object.keys(N).forEach(a=>{let c=z(a,e,t);o.push(c)}),o.join(`
3
- `)}exports.a = $; exports.b = I; exports.c = G; exports.d = O; exports.e = Q; exports.f = D;
4
- //# sourceMappingURL=chunk-SU25A7H6.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/home/runner/work/codefast/codefast/packages/ui/dist/chunk-SU25A7H6.cjs","../src/components/chart.tsx"],"names":["RechartsPrimitive","createContext","useChart","ChartContainer","children","className","id","ref","uniqueId","useId","chartId","jsx","ChartContext"],"mappings":"AAAA,22BAAY,CAAC,wDCKX,8BASUA,gFAgNM,+CA1MhB,IACA,CAAA,CAAA,CAAA,KAAM,CAAA,EACR,CAAA,IAwBqBC,CAAwC,OAE7D,CAAA,CAAA,CAAA,CAAA,kCAAA,IAASC,CAA8B,CACrC,SAAuC,CAAA,CAEvC,CAAA,CAAA,IACE,CAAA,CAAA,+BAAA,CAAA,CAAM,CAAA,EAAA,CAAI,CAAA,CAAA,CAAA,MAAM,IAAA,KAAA,CAAA,mDAgBpB,CAAA,CAAMC,OACD,CAAA,CAAA,IAAA,CAAA,CAAAC,+BAAAA,CAAU,CAAA,QAAAC,CAAAA,CAAW,CAAA,SAAQ,CAAA,CAAAC,CAAAA,MAAa,CAAGC,CAAAA,CAAAA,EAAQ,CACtD,CAAA,CAAA,GAAMC,CAAWC,CAAAA,CAAM,CAAA,CACjBC,EAAU,CAAA,IAAA,CAAA,CAAA,0BAAA,CAASJ,CAAAA,CAAME,CAAAA,CAAS,MAAA,EAAQ,CAAA,EAAA,CAAA,CAAM,OAEtD,CAAA,IAAA,CACEG,EAACC,CAAAA,CAAa,CAAA;AAoZG;AACvB","file":"/home/runner/work/codefast/codefast/packages/ui/dist/chunk-SU25A7H6.cjs","sourcesContent":[null,"'use client';\n\nimport {\n type ComponentProps,\n type ComponentType,\n createContext,\n type CSSProperties,\n forwardRef,\n type JSX,\n type ReactNode,\n useContext,\n useId,\n useMemo,\n} from 'react';\nimport * as RechartsPrimitive from 'recharts';\nimport { type NameType, type Payload, type ValueType } from 'recharts/types/component/DefaultTooltipContent';\n\nimport { cn } from '@/lib/utils';\n\nconst THEMES = {\n light: '',\n dark: '.dark',\n} as const;\n\ntype Theme = keyof typeof THEMES;\n\ntype ChartConfig = {\n [k in string]: {\n icon?: ComponentType;\n label?: ReactNode;\n } & (\n | {\n color?: string;\n theme?: never;\n }\n | {\n theme: Record<Theme, string>;\n color?: never;\n }\n );\n};\n\ninterface ChartContextProps {\n config: ChartConfig;\n}\n\nconst ChartContext = createContext<ChartContextProps | null>(null);\n\nfunction useChart(): ChartContextProps {\n const context = useContext(ChartContext);\n\n if (!context) {\n throw new Error('useChart must be used within a <ChartContainer />');\n }\n\n return context;\n}\n\n/* -----------------------------------------------------------------------------\n * Component: Chart\n * -------------------------------------------------------------------------- */\n\ntype ChartContainerElement = HTMLDivElement;\ninterface ChartContainerProps extends ComponentProps<'div'> {\n children: ComponentProps<typeof RechartsPrimitive.ResponsiveContainer>['children'];\n config: ChartConfig;\n}\n\nconst ChartContainer = forwardRef<ChartContainerElement, ChartContainerProps>(\n ({ children, className, config, id, ...props }, ref) => {\n const uniqueId = useId();\n const chartId = `chart-${id || uniqueId.replace(/:/g, '')}`;\n\n return (\n <ChartContext.Provider value={{ config }}>\n <div\n ref={ref}\n className={cn(\n 'flex aspect-video justify-center text-xs',\n '[&_.recharts-cartesian-axis-tick_text]:fill-muted-foreground',\n '[&_.recharts-cartesian-grid_line[stroke=#ccc]]:stroke-border/50',\n '[&_.recharts-curve.recharts-tooltip-cursor]:stroke-border',\n '[&_.recharts-dot[stroke=#fff]]:stroke-transparent',\n '[&_.recharts-layer]:outline-none',\n '[&_.recharts-polar-grid_[stroke=#ccc]]:stroke-border',\n '[&_.recharts-radial-bar-background-sector]:fill-muted',\n '[&_.recharts-reference-line_[stroke=#ccc]]:stroke-border',\n '[&_.recharts-rectangle.recharts-tooltip-cursor]:fill-muted',\n '[&_.recharts-sector]:outline-none',\n '[&_.recharts-sector[stroke=#fff]]:stroke-transparent',\n '[&_.recharts-surface]:outline-none',\n className,\n )}\n data-chart={chartId}\n {...props}\n >\n <ChartStyle config={config} id={chartId} />\n <RechartsPrimitive.ResponsiveContainer>{children}</RechartsPrimitive.ResponsiveContainer>\n </div>\n </ChartContext.Provider>\n );\n },\n);\n\nChartContainer.displayName = 'Chart';\n\n/* -----------------------------------------------------------------------------\n * Component: ChartStyle\n * -------------------------------------------------------------------------- */\n\ninterface ChartStyleProps {\n config: ChartConfig;\n id: string;\n}\n\nfunction ChartStyle({ id, config }: ChartStyleProps): JSX.Element | null {\n const cssString = useMemo(() => generateCSS(id, config), [id, config]);\n\n return <style dangerouslySetInnerHTML={{ __html: cssString }} />;\n}\n\n/* -----------------------------------------------------------------------------\n * Component: ChartTooltip\n * -------------------------------------------------------------------------- */\n\ntype ChartTooltipProps = ComponentProps<typeof RechartsPrimitive.Tooltip>;\nconst ChartTooltip = RechartsPrimitive.Tooltip;\n\n/* -----------------------------------------------------------------------------\n * Component: ChartTooltipContent\n * -------------------------------------------------------------------------- */\n\ntype ChartTooltipContentElement = HTMLDivElement;\ninterface ChartTooltipContentProps\n extends ComponentProps<typeof RechartsPrimitive.Tooltip>,\n Omit<ComponentProps<'div'>, 'content'> {\n hideIndicator?: boolean;\n hideLabel?: boolean;\n indicator?: 'line' | 'dot' | 'dashed';\n labelKey?: string;\n nameKey?: string;\n}\n\nconst ChartTooltipContent = forwardRef<ChartTooltipContentElement, ChartTooltipContentProps>(\n (\n {\n active,\n className,\n color,\n formatter,\n hideIndicator = false,\n hideLabel = false,\n indicator = 'dot',\n label,\n labelClassName,\n labelFormatter,\n labelKey,\n nameKey,\n payload,\n },\n ref,\n ) => {\n const { config } = useChart();\n\n const tooltipLabel = useMemo(() => {\n if (hideLabel || !payload?.length) {\n return null;\n }\n\n const [item] = payload;\n\n if (!item) {\n return null;\n }\n\n const key = `${labelKey || item.dataKey || item.name || 'value'}`;\n const itemConfig = getPayloadConfigFromPayload(config, item, key);\n const value = !labelKey && typeof label === 'string' ? config[label]?.label || label : itemConfig?.label;\n\n if (labelFormatter) {\n return <div className={cn('font-medium', labelClassName)}>{labelFormatter(value, payload)}</div>;\n }\n\n if (!value) {\n return null;\n }\n\n return <div className={cn('font-medium', labelClassName)}>{value}</div>;\n }, [config, hideLabel, label, labelClassName, labelFormatter, labelKey, payload]);\n\n if (!active || !payload?.length) {\n return null;\n }\n\n const nestLabel = payload.length === 1 && indicator !== 'dot';\n\n return (\n <div\n ref={ref}\n className={cn(\n 'border-border/50 bg-background grid min-w-[8rem] items-start gap-1.5 rounded-lg border px-2.5 py-1.5 text-xs shadow-xl',\n className,\n )}\n >\n {!nestLabel ? tooltipLabel : null}\n <div className=\"grid gap-1.5\">\n {payload.map((item, index) => {\n const key = `${nameKey || item.name || item.dataKey || 'value'}`;\n const itemConfig = getPayloadConfigFromPayload(config, item, key);\n const indicatorColor = color || (item.payload as { fill?: string }).fill || item.color;\n\n return (\n <div\n key={item.dataKey}\n className={cn(\n '[&>svg]:text-muted-foreground flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5',\n indicator === 'dot' && 'items-center',\n )}\n >\n {formatter && item.value !== undefined && item.name ? (\n formatter(item.value, item.name, item, index, item.payload as Payload<ValueType, NameType>[])\n ) : (\n <>\n {itemConfig?.icon ? (\n <itemConfig.icon />\n ) : (\n !hideIndicator && (\n <div\n className={cn('shrink-0 rounded-[2px] border-[--color-border] bg-[--color-bg]', {\n 'h-2.5 w-2.5': indicator === 'dot',\n 'w-1': indicator === 'line',\n 'w-0 border-[1.5px] border-dashed bg-transparent': indicator === 'dashed',\n 'my-0.5': nestLabel && indicator === 'dashed',\n })}\n style={\n {\n '--color-bg': indicatorColor,\n '--color-border': indicatorColor,\n } as CSSProperties\n }\n />\n )\n )}\n <div\n className={cn(\n 'flex flex-1 justify-between leading-none',\n nestLabel ? 'items-end' : 'items-center',\n )}\n >\n <div className=\"grid gap-1.5\">\n {nestLabel ? tooltipLabel : null}\n <span className=\"text-muted-foreground\">{itemConfig?.label || item.name}</span>\n </div>\n {item.value ? (\n <span className=\"text-foreground font-mono font-medium tabular-nums\">\n {item.value.toLocaleString()}\n </span>\n ) : null}\n </div>\n </>\n )}\n </div>\n );\n })}\n </div>\n </div>\n );\n },\n);\n\nChartTooltipContent.displayName = 'ChartTooltipContent';\n\n/* -----------------------------------------------------------------------------\n * Component: ChartLegend\n * -------------------------------------------------------------------------- */\n\ntype ChartLegendProps = ComponentProps<typeof RechartsPrimitive.Legend>;\nconst ChartLegend = RechartsPrimitive.Legend;\n\n/* -----------------------------------------------------------------------------\n * Component: ChartLegendContent\n * -------------------------------------------------------------------------- */\n\ntype ChartLegendContent = HTMLDivElement;\ninterface ChartLegendContentProps\n extends ComponentProps<'div'>,\n Pick<RechartsPrimitive.LegendProps, 'payload' | 'verticalAlign'> {\n hideIcon?: boolean;\n nameKey?: string;\n}\n\nconst ChartLegendContent = forwardRef<HTMLDivElement, ChartLegendContentProps>(\n ({ className, hideIcon = false, nameKey, payload, verticalAlign = 'bottom' }, ref) => {\n const { config } = useChart();\n\n if (!payload?.length) {\n return null;\n }\n\n return (\n <div\n ref={ref}\n className={cn('flex items-center justify-center gap-4', verticalAlign === 'top' ? 'pb-3' : 'pt-3', className)}\n >\n {payload.map((item) => {\n let key = 'value';\n\n if (nameKey) {\n key = nameKey;\n } else if (item.dataKey) {\n key = String(item.dataKey);\n }\n\n const itemConfig = getPayloadConfigFromPayload(config, item, key);\n\n return (\n <div\n key={String(item.value)}\n className={cn('[&>svg]:text-muted-foreground flex items-center gap-1.5 [&>svg]:size-3')}\n >\n {itemConfig?.icon && !hideIcon ? (\n <itemConfig.icon />\n ) : (\n <div\n className=\"size-2 shrink-0 rounded\"\n style={{\n backgroundColor: item.color,\n }}\n />\n )}\n {itemConfig?.label}\n </div>\n );\n })}\n </div>\n );\n },\n);\n\nChartLegendContent.displayName = 'ChartLegendContent';\n\n/* -----------------------------------------------------------------------------\n * Helpers\n * -------------------------------------------------------------------------- */\n\n/**\n * Extracts and returns the appropriate configuration object from\n * the payload based on the specified key.\n *\n * @param config - The chart configuration object that contains various\n * settings.\n * @param payload - The payload object that might contain nested payload data.\n * @param key - The key used to retrieve the specific configuration from the\n * chart config.\n * @returns Returns a configuration object with optional properties `icon`,\n * `label`, `color` or `theme`, or `undefined` if the payload is invalid or\n * no configuration is found for the provided key.\n */\nfunction getPayloadConfigFromPayload(\n config: ChartConfig,\n payload: unknown,\n key: string,\n):\n | ({\n icon?: ComponentType;\n label?: ReactNode;\n } & {\n color?: string;\n theme?: never;\n })\n | ({\n icon?: ComponentType;\n label?: ReactNode;\n } & {\n theme: Record<Theme, string>;\n color?: never;\n })\n | undefined {\n if (!isValidObject(payload)) {\n return undefined;\n }\n\n const nestedPayload = 'payload' in payload && isValidObject(payload.payload) ? payload.payload : undefined;\n\n const configLabelKey = getConfigLabelKey(payload, nestedPayload, key);\n\n return configLabelKey in config ? config[configLabelKey] : config[key];\n}\n\n/**\n * Checks if the provided value is a valid object.\n *\n * @param obj - The value to check.\n * @returns - Returns true if the value is an object and not null, false\n * otherwise.\n */\nfunction isValidObject(obj: unknown): obj is Record<string, unknown> {\n return typeof obj === 'object' && obj !== null;\n}\n\n/**\n * Retrieves the configuration label key from either the payload or\n * nestedPayload. If the key exists in the payload and is a string, the\n * corresponding value is returned. Otherwise, if the key exists in the\n * nestedPayload and is a string, its value is returned. If the key is not\n * found as a string in either object, the key itself is returned.\n *\n * @param payload - The primary payload containing key-value pairs.\n * @param nestedPayload - An optional nested payload containing additional\n * key-value pairs.\n * @param key - The key to search for within the payload and nestedPayload.\n *\n * @returns The string value associated with the key if found; otherwise, the\n * key itself.\n */\nfunction getConfigLabelKey(\n payload: Record<string, unknown>,\n nestedPayload: Record<string, unknown> | undefined,\n key: string,\n): string {\n if (key in payload && typeof payload[key] === 'string') {\n return payload[key];\n }\n\n if (nestedPayload && key in nestedPayload && typeof nestedPayload[key] === 'string') {\n return nestedPayload[key];\n }\n\n return key;\n}\n\n/**\n * Generates CSS for a specified theme and chart configuration.\n *\n * @param theme - The theme to be used (for example, 'light', 'dark').\n * @param id - The unique identifier of the chart.\n * @param configEntries - A list of configuration entries, each containing a\n * key and a chart configuration.\n * @returns The generated CSS as a string.\n */\nfunction generateThemeCSS(theme: Theme, id: string, configEntries: [string, ChartConfig[string]][]): string {\n const rules: string[] = [];\n\n rules.push(`${THEMES[theme]} [data-chart=${id}] {`);\n\n configEntries.forEach(([key, itemConfig]) => {\n const color = itemConfig.theme?.[theme] || itemConfig.color;\n\n if (color) {\n rules.push(` --color-${key}: ${color};`);\n }\n });\n\n rules.push('}');\n\n return rules.join('\\n');\n}\n\n/**\n * Generates CSS styles for a chart based on the provided configuration and\n * themes.\n *\n * @param id - The unique identifier for the chart element.\n * @param config - Configuration object for the chart. This includes theme and\n * color settings.\n * @returns A string containing the generated CSS rules.\n */\nfunction generateCSS(id: string, config: ChartConfig): string {\n const themeOrColorConfig = Object.entries(config).filter(([_, { theme, color }]) => theme || color);\n\n const allRules: string[] = [];\n\n Object.keys(THEMES).forEach((theme) => {\n const themeCSS = generateThemeCSS(theme as Theme, id, themeOrColorConfig);\n\n allRules.push(themeCSS);\n });\n\n return allRules.join('\\n');\n}\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport {\n ChartContainer,\n ChartLegend,\n ChartLegendContent,\n ChartStyle,\n ChartTooltip,\n ChartTooltipContent,\n type ChartConfig,\n type ChartContainerProps,\n type ChartLegendContentProps,\n type ChartLegendProps,\n type ChartStyleProps,\n type ChartTooltipContentProps,\n type ChartTooltipProps,\n};\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/dropdown-menu.tsx"],"names":["DropdownMenuPrimitive","CheckIcon","ChevronRightIcon","DotFilledIcon","forwardRef","jsx","jsxs","DropdownMenu","DropdownMenuTrigger","DropdownMenuGroup","DropdownMenuSub","DropdownMenuRadioGroup","DropdownMenuSubTrigger","children","className","inset","props","forwardedRef","cn","DropdownMenuSubContent","DropdownMenuContent","sideOffset","DropdownMenuItem","DropdownMenuCheckboxItem","checked","DropdownMenuRadioItem","DropdownMenuLabel","DropdownMenuSeparator","DropdownMenuShortcut","DropdownMenuArrow"],"mappings":"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","sourcesContent":["import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';\nimport { CheckIcon, ChevronRightIcon, DotFilledIcon } from '@radix-ui/react-icons';\nimport {\n type ComponentProps,\n type ComponentPropsWithoutRef,\n type ComponentRef,\n forwardRef,\n type HTMLAttributes,\n type JSX,\n} from 'react';\n\nimport { cn } from '@/lib/utils';\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenu\n * -------------------------------------------------------------------------- */\n\ntype DropdownMenuProps = ComponentProps<typeof DropdownMenuPrimitive.Root>;\nconst DropdownMenu = DropdownMenuPrimitive.Root;\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuTrigger\n * -------------------------------------------------------------------------- */\n\ntype DropdownMenuTriggerProps = ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Trigger>;\nconst DropdownMenuTrigger = DropdownMenuPrimitive.Trigger;\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuGroup\n * -------------------------------------------------------------------------- */\n\ntype DropdownMenuGroupProps = ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Group>;\nconst DropdownMenuGroup = DropdownMenuPrimitive.Group;\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuSub\n * -------------------------------------------------------------------------- */\n\ntype DropdownMenuSubProps = ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Sub>;\nconst DropdownMenuSub = DropdownMenuPrimitive.Sub;\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuSubTrigger\n * -------------------------------------------------------------------------- */\n\ntype DropdownMenuRadioGroupProps = ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.RadioGroup>;\nconst DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup;\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuSubTrigger\n * -------------------------------------------------------------------------- */\n\ntype DropdownMenuSubTriggerElement = ComponentRef<typeof DropdownMenuPrimitive.SubTrigger>;\n\ninterface DropdownMenuSubTriggerProps extends ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.SubTrigger> {\n inset?: boolean;\n}\n\nconst DropdownMenuSubTrigger = forwardRef<DropdownMenuSubTriggerElement, DropdownMenuSubTriggerProps>(\n ({ children, className, inset, ...props }, forwardedRef) => (\n <DropdownMenuPrimitive.SubTrigger\n ref={forwardedRef}\n className={cn(\n 'gap-x-2 px-3 py-1.5',\n 'flex cursor-pointer select-none items-center rounded text-sm',\n 'focus:bg-accent focus:text-accent-foreground focus:outline-none',\n 'data-[state=open]:bg-accent data-[state=open]:text-accent-foreground',\n inset && 'pl-8',\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"ml-auto size-4\" />\n </DropdownMenuPrimitive.SubTrigger>\n ),\n);\n\nDropdownMenuSubTrigger.displayName = DropdownMenuPrimitive.SubTrigger.displayName;\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuSubContent\n * -------------------------------------------------------------------------- */\n\ntype DropdownMenuSubContentProps = DropdownMenuPrimitive.DropdownMenuSubContentProps;\n\nconst DropdownMenuSubContent = forwardRef<\n ComponentRef<typeof DropdownMenuPrimitive.SubContent>,\n DropdownMenuSubContentProps\n>(({ className, ...props }, forwardedRef) => (\n <DropdownMenuPrimitive.Portal>\n <DropdownMenuPrimitive.SubContent\n ref={forwardedRef}\n className={cn(\n 'bg-popover text-popover-foreground z-50 min-w-32 rounded-md border p-1 shadow-md',\n 'data-[state=open]:animate-in data-[state=open]:fade-in data-[state=open]:zoom-in-95',\n 'data-[state=open]:data-[side=top]:slide-in-from-bottom-2',\n 'data-[state=open]:data-[side=right]:slide-in-from-left-2',\n 'data-[state=open]:data-[side=bottom]:slide-in-from-top-2',\n 'data-[state=open]:data-[side=left]:slide-in-from-right-2',\n 'data-[state=closed]:animate-out data-[state=closed]:fade-out data-[state=closed]:zoom-out-95',\n 'data-[state=closed]:data-[side=top]:slide-out-to-bottom-2',\n 'data-[state=closed]:data-[side=right]:slide-out-to-left-2',\n 'data-[state=closed]:data-[side=bottom]:slide-out-to-top-2',\n 'data-[state=closed]:data-[side=left]:slide-out-to-right-2',\n className,\n )}\n {...props}\n />\n </DropdownMenuPrimitive.Portal>\n));\n\nDropdownMenuSubContent.displayName = DropdownMenuPrimitive.SubContent.displayName;\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuContent\n * -------------------------------------------------------------------------- */\n\ntype DropdownMenuContentElement = ComponentRef<typeof DropdownMenuPrimitive.Content>;\ntype DropdownMenuContentProps = ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Content>;\n\nconst DropdownMenuContent = forwardRef<DropdownMenuContentElement, DropdownMenuContentProps>(\n ({ className, sideOffset = 6, ...props }, forwardedRef) => (\n <DropdownMenuPrimitive.Portal>\n <DropdownMenuPrimitive.Content\n ref={forwardedRef}\n className={cn(\n 'bg-popover text-popover-foreground z-50 min-w-32 rounded-md border p-1 shadow-md',\n 'data-[state=open]:animate-in data-[state=open]:fade-in data-[state=open]:zoom-in-95',\n 'data-[state=open]:data-[side=top]:slide-in-from-bottom-2',\n 'data-[state=open]:data-[side=right]:slide-in-from-left-2',\n 'data-[state=open]:data-[side=bottom]:slide-in-from-top-2',\n 'data-[state=open]:data-[side=left]:slide-in-from-right-2',\n 'data-[state=closed]:animate-out data-[state=closed]:fade-out data-[state=closed]:zoom-out-95',\n 'data-[state=closed]:data-[side=top]:slide-out-to-bottom-2',\n 'data-[state=closed]:data-[side=right]:slide-out-to-left-2',\n 'data-[state=closed]:data-[side=bottom]:slide-out-to-top-2',\n 'data-[state=closed]:data-[side=left]:slide-out-to-right-2',\n className,\n )}\n sideOffset={sideOffset}\n {...props}\n />\n </DropdownMenuPrimitive.Portal>\n ),\n);\n\nDropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuItem\n * -------------------------------------------------------------------------- */\n\ntype DropdownMenuItemElement = ComponentRef<typeof DropdownMenuPrimitive.Item>;\n\ninterface DropdownMenuItemProps extends ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Item> {\n inset?: boolean;\n}\n\nconst DropdownMenuItem = forwardRef<DropdownMenuItemElement, DropdownMenuItemProps>(\n ({ className, inset, ...props }, forwardedRef) => (\n <DropdownMenuPrimitive.Item\n ref={forwardedRef}\n className={cn(\n 'gap-x-2 px-3 py-1.5',\n 'relative flex cursor-pointer select-none items-center rounded text-sm',\n 'focus:bg-accent focus:text-accent-foreground focus:outline-none',\n 'aria-disabled:pointer-events-none aria-disabled:opacity-50',\n inset && 'pl-8',\n className,\n )}\n {...props}\n />\n ),\n);\n\nDropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuCheckboxItem\n * -------------------------------------------------------------------------- */\n\ntype DropdownMenuCheckboxItemElement = ComponentRef<typeof DropdownMenuPrimitive.CheckboxItem>;\ntype DropdownMenuCheckboxItemProps = ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.CheckboxItem>;\n\nconst DropdownMenuCheckboxItem = forwardRef<DropdownMenuCheckboxItemElement, DropdownMenuCheckboxItemProps>(\n ({ children, className, checked, ...props }, forwardedRef) => (\n <DropdownMenuPrimitive.CheckboxItem\n ref={forwardedRef}\n checked={checked}\n className={cn(\n 'gap-x-2 px-3 py-1.5',\n 'pl-8',\n 'relative flex cursor-pointer select-none items-center rounded text-sm',\n 'focus:bg-accent focus:text-accent-foreground focus:outline-none',\n 'aria-disabled:pointer-events-none aria-disabled:opacity-50',\n className,\n )}\n {...props}\n >\n <span className=\"absolute left-2 flex size-3.5 items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <CheckIcon className=\"size-4\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.CheckboxItem>\n ),\n);\n\nDropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive.CheckboxItem.displayName;\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuRadioItem\n * -------------------------------------------------------------------------- */\n\ntype DropdownMenuRadioItemElement = ComponentRef<typeof DropdownMenuPrimitive.RadioItem>;\ntype DropdownMenuRadioItemProps = ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.RadioItem>;\n\nconst DropdownMenuRadioItem = forwardRef<DropdownMenuRadioItemElement, DropdownMenuRadioItemProps>(\n ({ children, className, ...props }, forwardedRef) => (\n <DropdownMenuPrimitive.RadioItem\n ref={forwardedRef}\n className={cn(\n 'gap-x-2 px-3 py-1.5',\n 'pl-8',\n 'relative flex cursor-pointer select-none items-center rounded text-sm',\n 'focus:bg-accent focus:text-accent-foreground focus:outline-none',\n 'aria-disabled:pointer-events-none aria-disabled:opacity-50',\n className,\n )}\n {...props}\n >\n <span className=\"absolute left-2 flex size-3.5 items-center justify-center\">\n <DropdownMenuPrimitive.ItemIndicator>\n <DotFilledIcon className=\"size-4 fill-current\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </span>\n {children}\n </DropdownMenuPrimitive.RadioItem>\n ),\n);\n\nDropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuLabel\n * -------------------------------------------------------------------------- */\n\ntype DropdownMenuLabelElement = ComponentRef<typeof DropdownMenuPrimitive.Label>;\n\ninterface DropdownMenuLabelProps extends ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Label> {\n inset?: boolean;\n}\n\nconst DropdownMenuLabel = forwardRef<DropdownMenuLabelElement, DropdownMenuLabelProps>(\n ({ className, inset, ...props }, forwardedRef) => (\n <DropdownMenuPrimitive.Label\n ref={forwardedRef}\n className={cn('gap-x-2 px-3 py-1.5', 'flex items-center text-sm font-semibold', inset && 'pl-8', className)}\n {...props}\n />\n ),\n);\n\nDropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuSeparator\n * -------------------------------------------------------------------------- */\n\ntype DropdownMenuSeparatorElement = ComponentRef<typeof DropdownMenuPrimitive.Separator>;\ntype DropdownMenuSeparatorProps = ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Separator>;\n\nconst DropdownMenuSeparator = forwardRef<DropdownMenuSeparatorElement, DropdownMenuSeparatorProps>(\n ({ className, ...props }, forwardedRef) => (\n <DropdownMenuPrimitive.Separator\n ref={forwardedRef}\n className={cn('bg-muted mx-2 my-1 h-px', className)}\n {...props}\n />\n ),\n);\n\nDropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName;\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuShortcut\n * -------------------------------------------------------------------------- */\n\ntype DropdownMenuShortcutProps = HTMLAttributes<HTMLSpanElement>;\n\nfunction DropdownMenuShortcut({ className, ...props }: DropdownMenuShortcutProps): JSX.Element {\n return <span className={cn('ml-auto text-xs tracking-widest opacity-60', className)} {...props} />;\n}\n\n/* -----------------------------------------------------------------------------\n * Component: DropdownMenuArrow\n * -------------------------------------------------------------------------- */\n\ntype DropdownMenuArrowElement = ComponentRef<typeof DropdownMenuPrimitive.Arrow>;\ntype DropdownMenuArrowProps = DropdownMenuPrimitive.DropdownMenuArrowProps;\n\nconst DropdownMenuArrow = forwardRef<DropdownMenuArrowElement, DropdownMenuArrowProps>(\n ({ className, ...props }, forwardedRef) => (\n <DropdownMenuPrimitive.Arrow ref={forwardedRef} className={cn('fill-popover', className)} {...props} />\n ),\n);\n\nDropdownMenuArrow.displayName = DropdownMenuPrimitive.Arrow.displayName;\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport {\n DropdownMenu,\n DropdownMenuArrow,\n DropdownMenuCheckboxItem,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuRadioGroup,\n DropdownMenuRadioItem,\n DropdownMenuSeparator,\n DropdownMenuShortcut,\n DropdownMenuSub,\n DropdownMenuSubContent,\n DropdownMenuSubTrigger,\n DropdownMenuTrigger,\n type DropdownMenuArrowProps,\n type DropdownMenuCheckboxItemProps,\n type DropdownMenuContentProps,\n type DropdownMenuGroupProps,\n type DropdownMenuItemProps,\n type DropdownMenuLabelProps,\n type DropdownMenuProps,\n type DropdownMenuRadioGroupProps,\n type DropdownMenuRadioItemProps,\n type DropdownMenuSeparatorProps,\n type DropdownMenuShortcutProps,\n type DropdownMenuSubContentProps,\n type DropdownMenuSubProps,\n type DropdownMenuSubTriggerProps,\n type DropdownMenuTriggerProps,\n};\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/button.tsx"],"names":["forwardRef","jsx","jsxs","Button","children","className","variant","size","icon","inside","disabled","loading","prefix","suffix","loaderPosition","spinner","props","forwardedRef","buttonVariants","Spinner"],"mappings":"gFAAA,OAAoC,cAAAA,MAAkC,QAsClE,OAauD,OAAAC,EAbvD,QAAAC,MAAA,oBAnBJ,IAAMC,EAASH,EACb,CACE,CACE,SAAAI,EACA,UAAAC,EACA,QAAAC,EACA,KAAAC,EACA,KAAAC,EACA,OAAAC,EACA,SAAAC,EACA,QAAAC,EACA,OAAAC,EACA,OAAAC,EACA,eAAAC,EAAiB,SACjB,QAAAC,EACA,GAAGC,CACL,EACAC,IAEAf,EAAC,UACC,IAAKe,EACL,UAAWC,EAAe,CACxB,UAAAb,EACA,KAAAG,EACA,OAAAC,EACA,KAAAF,EACA,QAAAD,CACF,CAAC,EACD,SAAUK,GAAWD,EACrB,KAAK,SACJ,GAAGM,EAEH,UAAAL,GAAWG,IAAmB,SAAWC,GAAWd,EAACkB,EAAA,EAAQ,EAAKP,EAClE,OAAOR,GAAa,SAAWH,EAAC,QAAK,UAAU,WAAY,SAAAG,EAAS,EAAUA,EAC9EO,GAAWG,IAAmB,SAAWC,GAAWd,EAACkB,EAAA,EAAQ,EAAKN,GACrE,CAEJ,EAEAV,EAAO,YAAc","sourcesContent":["import { type ButtonHTMLAttributes, forwardRef, type ReactNode } from 'react';\n\nimport { Spinner } from '@/components/spinner';\nimport { buttonVariants, type ButtonVariantsProps } from '@/styles/button-variants';\n\n/* -----------------------------------------------------------------------------\n * Component: Button\n * -------------------------------------------------------------------------- */\n\ntype ButtonElement = HTMLButtonElement;\n\ninterface ButtonProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'prefix'>, ButtonVariantsProps {\n loaderPosition?: 'prefix' | 'suffix';\n loading?: boolean;\n prefix?: ReactNode;\n spinner?: ReactNode;\n suffix?: ReactNode;\n}\n\nconst Button = forwardRef<ButtonElement, ButtonProps>(\n (\n {\n children,\n className,\n variant,\n size,\n icon,\n inside,\n disabled,\n loading,\n prefix,\n suffix,\n loaderPosition = 'prefix',\n spinner,\n ...props\n },\n forwardedRef,\n ) => (\n <button\n ref={forwardedRef}\n className={buttonVariants({\n className,\n icon,\n inside,\n size,\n variant,\n })}\n disabled={loading || disabled}\n type=\"button\"\n {...props}\n >\n {loading && loaderPosition === 'prefix' ? spinner || <Spinner /> : prefix}\n {typeof children === 'string' ? <span className=\"truncate\">{children}</span> : children}\n {loading && loaderPosition === 'suffix' ? spinner || <Spinner /> : suffix}\n </button>\n ),\n);\n\nButton.displayName = 'Button';\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport { Button, type ButtonProps };\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/box.tsx"],"names":["Slot","forwardRef","jsx","Box","Tag","asChild","props","forwardedRef"],"mappings":"AAAA,OAAS,QAAAA,MAAY,uBACrB,OAAS,cAAAC,MAAuC,QAuBvC,cAAAC,MAAA,oBAHT,IAAMC,EAAMF,EAAiC,CAAC,CAAE,GAAIG,EAAM,MAAO,QAAAC,EAAS,GAAGC,CAAM,EAAGC,IAG7EL,EAFWG,EAAUL,EAAOI,EAE3B,CAAU,IAAKG,EAAe,GAAGD,EAAO,CACjD,EAEDH,EAAI,YAAc","sourcesContent":["import { Slot } from '@radix-ui/react-slot';\nimport { forwardRef, type HTMLAttributes } from 'react';\n\n/* -----------------------------------------------------------------------------\n * Component: Box\n * -------------------------------------------------------------------------- */\n\ntype BoxElement = HTMLDivElement;\n\ninterface BoxDivProps extends HTMLAttributes<HTMLDivElement> {\n as?: 'div';\n}\n\ninterface BoxSpanProps extends HTMLAttributes<HTMLSpanElement> {\n as: 'span';\n}\n\ntype BoxProps = (BoxDivProps | BoxSpanProps) & {\n asChild?: boolean;\n};\n\nconst Box = forwardRef<BoxElement, BoxProps>(({ as: Tag = 'div', asChild, ...props }, forwardedRef) => {\n const Component = asChild ? Slot : Tag;\n\n return <Component ref={forwardedRef} {...props} />;\n});\n\nBox.displayName = 'Box';\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport { Box, type BoxProps };\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/em.tsx"],"names":["Em","forwardRef","asChild","props","forwardedRef","jsx","Slot"],"mappings":"AAAA,0HAAqB,8BAC2B,+CAevC,IAHHA,CAAAA,CAAKC,+BAAAA,CAAgC,CAAE,OAAA,CAAAC,CAAAA,CAAS,GAAGC,CAAM,CAAA,CAAGC,CAAAA,CAAAA,EAGzDC,6BAAAA,CAFWH,CAAUI,eAAAA,CAAO,IAAA,CAE3B,CAAU,GAAA,CAAKF,CAAAA,CAAe,GAAGD,CAAAA,CAAO,CACjD,CAAA,CAEDH,CAAAA,CAAG,WAAA,CAAc,IAAA,CAAA,cAAA","file":"/home/runner/work/codefast/codefast/packages/ui/dist/chunk-UY4UMO62.cjs","sourcesContent":["import { Slot } from '@radix-ui/react-slot';\nimport { forwardRef, type HTMLAttributes } from 'react';\n\n/* -----------------------------------------------------------------------------\n * Component: Em\n * -------------------------------------------------------------------------- */\n\ntype EmElement = HTMLElement;\n\ninterface EmProps extends HTMLAttributes<HTMLElement> {\n asChild?: boolean;\n}\n\nconst Em = forwardRef<EmElement, EmProps>(({ asChild, ...props }, forwardedRef) => {\n const Component = asChild ? Slot : 'em';\n\n return <Component ref={forwardedRef} {...props} />;\n});\n\nEm.displayName = 'Em';\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport { Em, type EmProps };\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/home/runner/work/codefast/codefast/packages/ui/dist/chunk-X42QLXWG.cjs","../src/components/spinner.tsx"],"names":["spinnerCount","Spinner","forwardRef","children","className","loading","props","forwardedRef","spinner","jsx","cn","_","i"],"mappings":"AAAA,iIAAwC,sECAT,8BACqC,+CA6B1D,IArBJA,CAAAA,CAAe,CAAA,CAQfC,CAAAA,aAAUC,+BAAAA,CACb,CAAE,QAAA,CAAAC,CAAAA,CAAU,SAAA,CAAAC,CAAAA,CAAW,OAAA,CAAAC,CAAAA,CAAU,CAAA,CAAA,CAAM,GAAGC,CAAM,CAAA,CAAGC,CAAAA,CAAAA,EAAiB,CACnE,EAAA,CAAI,CAACF,CAAAA,CACH,OAAOF,CAAAA,CAGT,IAAMK,CAAAA,CACJC,6BAAAA,MAAC,CAAA,CACC,GAAA,CAAKF,CAAAA,CACL,SAAA,CAAWG,iCAAAA,6DAAG,CAA+DN,CAAS,CAAA,CACrF,GAAGE,CAAAA,CAEH,QAAA,CAAA,KAAA,CAAM,IAAA,CAAK,CAAE,MAAA,CAAQN,CAAa,CAAA,CAAG,CAACW,CAAAA,CAAGC,CAAAA,CAAAA,EACxCH,6BAAAA,MAAC,CAAA,CAEC,SAAA,CAAU,iSAAA,CACV,KAAA,CACE,CACE,KAAA,CAAO,CAAA,EAAA","file":"/home/runner/work/codefast/codefast/packages/ui/dist/chunk-X42QLXWG.cjs","sourcesContent":[null,"import { VisuallyHidden } from '@radix-ui/react-visually-hidden';\nimport { type CSSProperties, forwardRef, type HTMLAttributes } from 'react';\n\nimport { cn } from '@/lib/utils';\n\n/* -----------------------------------------------------------------------------\n * Component: Spinner\n * -------------------------------------------------------------------------- */\n\nconst spinnerCount = 8;\n\ntype SpinnerElement = HTMLSpanElement;\n\ninterface SpinnerProps extends HTMLAttributes<HTMLSpanElement> {\n loading?: boolean;\n}\n\nconst Spinner = forwardRef<SpinnerElement, SpinnerProps>(\n ({ children, className, loading = true, ...props }, forwardedRef) => {\n if (!loading) {\n return children;\n }\n\n const spinner = (\n <span\n ref={forwardedRef}\n className={cn('relative flex size-4 items-center justify-center opacity-60', className)}\n {...props}\n >\n {Array.from({ length: spinnerCount }, (_, i) => (\n <span\n key={i}\n className=\"before:fade-out-25 before:animate-out before:animate-repeat-infinite before:animate-delay-[var(--spinner-delay)] before:animate-duration-[var(--spinner-duration)] absolute h-full rotate-[var(--spinner-rotate)] before:block before:h-1/3 before:w-full before:rounded-full before:bg-current\"\n style={\n {\n width: `${(100 / spinnerCount).toString()}%`,\n '--spinner-delay': `-${((spinnerCount - i) * 100).toString()}ms`,\n '--spinner-rotate': `${((360 / spinnerCount) * i).toString()}deg`,\n '--spinner-duration': `${(spinnerCount * 100).toString()}ms`,\n } as CSSProperties\n }\n />\n ))}\n </span>\n );\n\n if (children === undefined) {\n return spinner;\n }\n\n return (\n <span className=\"relative\">\n <span aria-hidden className=\"invisible contents\">\n {children}\n </span>\n <VisuallyHidden>{children}</VisuallyHidden>\n <span className=\"absolute inset-0 flex items-center justify-center\">{spinner}</span>\n </span>\n );\n },\n);\n\nSpinner.displayName = 'Spinner';\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport { Spinner, type SpinnerProps };\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/spinner.tsx"],"names":["VisuallyHidden","forwardRef","jsx","jsxs","spinnerCount","Spinner","children","className","loading","props","forwardedRef","spinner","cn","_","i"],"mappings":"wCAAA,OAAS,kBAAAA,MAAsB,kCAC/B,OAA6B,cAAAC,MAAuC,QA6B1D,cAAAC,EAqBJ,QAAAC,MArBI,oBArBV,IAAMC,EAAe,EAQfC,EAAUJ,EACd,CAAC,CAAE,SAAAK,EAAU,UAAAC,EAAW,QAAAC,EAAU,GAAM,GAAGC,CAAM,EAAGC,IAAiB,CACnE,GAAI,CAACF,EACH,OAAOF,EAGT,IAAMK,EACJT,EAAC,QACC,IAAKQ,EACL,UAAWE,EAAG,8DAA+DL,CAAS,EACrF,GAAGE,EAEH,eAAM,KAAK,CAAE,OAAQL,CAAa,EAAG,CAACS,EAAGC,IACxCZ,EAAC,QAEC,UAAU,kSACV,MACE,CACE,MAAO,IAAI,IAAME,GAAc,SAAS,CAAC,IACzC,kBAAmB,MAAMA,EAAeU,GAAK,KAAK,SAAS,CAAC,KAC5D,mBAAoB,IAAK,IAAMV,EAAgBU,GAAG,SAAS,CAAC,MAC5D,qBAAsB,IAAIV,EAAe,KAAK,SAAS,CAAC,IAC1D,GARGU,CAUP,CACD,EACH,EAGF,OAAIR,IAAa,OACRK,EAIPR,EAAC,QAAK,UAAU,WACd,UAAAD,EAAC,QAAK,cAAW,GAAC,UAAU,qBACzB,SAAAI,EACH,EACAJ,EAACF,EAAA,CAAgB,SAAAM,EAAS,EAC1BJ,EAAC,QAAK,UAAU,oDAAqD,SAAAS,EAAQ,GAC/E,CAEJ,CACF,EAEAN,EAAQ,YAAc","sourcesContent":["import { VisuallyHidden } from '@radix-ui/react-visually-hidden';\nimport { type CSSProperties, forwardRef, type HTMLAttributes } from 'react';\n\nimport { cn } from '@/lib/utils';\n\n/* -----------------------------------------------------------------------------\n * Component: Spinner\n * -------------------------------------------------------------------------- */\n\nconst spinnerCount = 8;\n\ntype SpinnerElement = HTMLSpanElement;\n\ninterface SpinnerProps extends HTMLAttributes<HTMLSpanElement> {\n loading?: boolean;\n}\n\nconst Spinner = forwardRef<SpinnerElement, SpinnerProps>(\n ({ children, className, loading = true, ...props }, forwardedRef) => {\n if (!loading) {\n return children;\n }\n\n const spinner = (\n <span\n ref={forwardedRef}\n className={cn('relative flex size-4 items-center justify-center opacity-60', className)}\n {...props}\n >\n {Array.from({ length: spinnerCount }, (_, i) => (\n <span\n key={i}\n className=\"before:fade-out-25 before:animate-out before:animate-repeat-infinite before:animate-delay-[var(--spinner-delay)] before:animate-duration-[var(--spinner-duration)] absolute h-full rotate-[var(--spinner-rotate)] before:block before:h-1/3 before:w-full before:rounded-full before:bg-current\"\n style={\n {\n width: `${(100 / spinnerCount).toString()}%`,\n '--spinner-delay': `-${((spinnerCount - i) * 100).toString()}ms`,\n '--spinner-rotate': `${((360 / spinnerCount) * i).toString()}deg`,\n '--spinner-duration': `${(spinnerCount * 100).toString()}ms`,\n } as CSSProperties\n }\n />\n ))}\n </span>\n );\n\n if (children === undefined) {\n return spinner;\n }\n\n return (\n <span className=\"relative\">\n <span aria-hidden className=\"invisible contents\">\n {children}\n </span>\n <VisuallyHidden>{children}</VisuallyHidden>\n <span className=\"absolute inset-0 flex items-center justify-center\">{spinner}</span>\n </span>\n );\n },\n);\n\nSpinner.displayName = 'Spinner';\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport { Spinner, type SpinnerProps };\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/text.tsx"],"names":["Text","forwardRef","Tag","asChild","props","forwardedRef","jsx","Slot"],"mappings":"AAAA,0HAAqB,8BAC2B,+CAuBvC,IAHHA,CAAAA,CAAOC,+BAAAA,CAAoC,CAAE,EAAA,CAAIC,CAAAA,CAAM,GAAA,CAAK,OAAA,CAAAC,CAAAA,CAAS,GAAGC,CAAM,CAAA,CAAGC,CAAAA,CAAAA,EAG9EC,6BAAAA,CAFWH,CAAUI,eAAAA,CAAOL,CAAAA,CAE3B,CAAU,GAAA,CAAKG,CAAAA,CAAe,GAAGD,CAAAA,CAAO,CACjD,CAAA,CAEDJ,CAAAA,CAAK,WAAA,CAAc,MAAA,CAAA,cAAA","file":"/home/runner/work/codefast/codefast/packages/ui/dist/chunk-YIKHBOHK.cjs","sourcesContent":["import { Slot } from '@radix-ui/react-slot';\nimport { forwardRef, type HTMLAttributes } from 'react';\n\n/* -----------------------------------------------------------------------------\n * Component: Text\n * -------------------------------------------------------------------------- */\n\ntype TextElement = HTMLParagraphElement;\n\ninterface TextParagraphProps extends HTMLAttributes<HTMLParagraphElement> {\n as?: 'p';\n}\n\ninterface TextSpanProps extends HTMLAttributes<HTMLSpanElement> {\n as: 'span';\n}\n\ntype TextProps = (TextParagraphProps | TextSpanProps) & {\n asChild?: boolean;\n};\n\nconst Text = forwardRef<TextElement, TextProps>(({ as: Tag = 'p', asChild, ...props }, forwardedRef) => {\n const Component = asChild ? Slot : Tag;\n\n return <Component ref={forwardedRef} {...props} />;\n});\n\nText.displayName = 'Text';\n\n/* -----------------------------------------------------------------------------\n * Exports\n * -------------------------------------------------------------------------- */\n\nexport { Text, type TextProps };\n"]}