@tetrascience-npm/tetrascience-react-ui 0.7.0-beta.108.1 → 0.7.0-beta.129.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (439) hide show
  1. package/README.md +7 -3
  2. package/dist/components/ai/chain-of-thought.cjs +1 -1
  3. package/dist/components/ai/chain-of-thought.cjs.map +1 -1
  4. package/dist/components/ai/chain-of-thought.js +1 -1
  5. package/dist/components/ai/chain-of-thought.js.map +1 -1
  6. package/dist/components/ai/confirmation.cjs +1 -1
  7. package/dist/components/ai/confirmation.cjs.map +1 -1
  8. package/dist/components/ai/confirmation.js +1 -1
  9. package/dist/components/ai/confirmation.js.map +1 -1
  10. package/dist/components/ai/context.cjs +1 -1
  11. package/dist/components/ai/context.cjs.map +1 -1
  12. package/dist/components/ai/context.js +36 -35
  13. package/dist/components/ai/context.js.map +1 -1
  14. package/dist/components/ai/message.cjs +1 -1
  15. package/dist/components/ai/message.cjs.map +1 -1
  16. package/dist/components/ai/message.js +68 -68
  17. package/dist/components/ai/message.js.map +1 -1
  18. package/dist/components/ai/prompt-input.cjs +1 -1
  19. package/dist/components/ai/prompt-input.cjs.map +1 -1
  20. package/dist/components/ai/prompt-input.js +4 -2
  21. package/dist/components/ai/prompt-input.js.map +1 -1
  22. package/dist/components/ai/queue.cjs +1 -1
  23. package/dist/components/ai/queue.cjs.map +1 -1
  24. package/dist/components/ai/queue.js +9 -9
  25. package/dist/components/ai/queue.js.map +1 -1
  26. package/dist/components/ai/reasoning.cjs +1 -1
  27. package/dist/components/ai/reasoning.cjs.map +1 -1
  28. package/dist/components/ai/reasoning.js +67 -67
  29. package/dist/components/ai/reasoning.js.map +1 -1
  30. package/dist/components/ai/stream-status.cjs +1 -1
  31. package/dist/components/ai/stream-status.cjs.map +1 -1
  32. package/dist/components/ai/stream-status.js +41 -39
  33. package/dist/components/ai/stream-status.js.map +1 -1
  34. package/dist/components/ai/streamdown-code-plugin.cjs +2 -0
  35. package/dist/components/ai/streamdown-code-plugin.cjs.map +1 -0
  36. package/dist/components/ai/streamdown-code-plugin.js +42 -0
  37. package/dist/components/ai/streamdown-code-plugin.js.map +1 -0
  38. package/dist/components/ai/streamdown-plugins.cjs +2 -0
  39. package/dist/components/ai/streamdown-plugins.cjs.map +1 -0
  40. package/dist/components/ai/streamdown-plugins.js +14 -0
  41. package/dist/components/ai/streamdown-plugins.js.map +1 -0
  42. package/dist/components/ai/task.cjs +1 -1
  43. package/dist/components/ai/task.cjs.map +1 -1
  44. package/dist/components/ai/task.js +18 -11
  45. package/dist/components/ai/task.js.map +1 -1
  46. package/dist/components/ai/tool.cjs +1 -1
  47. package/dist/components/ai/tool.cjs.map +1 -1
  48. package/dist/components/ai/tool.js +51 -55
  49. package/dist/components/ai/tool.js.map +1 -1
  50. package/dist/components/ai/use-streamdown-plugins.cjs +2 -0
  51. package/dist/components/ai/use-streamdown-plugins.cjs.map +1 -0
  52. package/dist/components/ai/use-streamdown-plugins.js +25 -0
  53. package/dist/components/ai/use-streamdown-plugins.js.map +1 -0
  54. package/dist/components/charts/AreaPlot/AreaPlot.cjs +2 -0
  55. package/dist/components/charts/AreaPlot/AreaPlot.cjs.map +1 -0
  56. package/dist/components/charts/AreaPlot/AreaPlot.js +270 -0
  57. package/dist/components/charts/AreaPlot/AreaPlot.js.map +1 -0
  58. package/dist/components/charts/BarChart/BarChart.cjs +2 -0
  59. package/dist/components/charts/BarChart/BarChart.cjs.map +1 -0
  60. package/dist/components/charts/BarChart/BarChart.js +219 -0
  61. package/dist/components/charts/BarChart/BarChart.js.map +1 -0
  62. package/dist/components/charts/BoxPlot/BoxPlot.cjs +2 -0
  63. package/dist/components/charts/BoxPlot/BoxPlot.cjs.map +1 -0
  64. package/dist/components/charts/{Boxplot/Boxplot.js → BoxPlot/BoxPlot.js} +78 -79
  65. package/dist/components/charts/BoxPlot/BoxPlot.js.map +1 -0
  66. package/dist/components/charts/ChartTooltip/ChartTooltip.cjs +1 -1
  67. package/dist/components/charts/ChartTooltip/ChartTooltip.cjs.map +1 -1
  68. package/dist/components/charts/ChartTooltip/ChartTooltip.js +22 -22
  69. package/dist/components/charts/ChartTooltip/ChartTooltip.js.map +1 -1
  70. package/dist/components/charts/Chromatogram/Chromatogram.cjs +1 -1
  71. package/dist/components/charts/Chromatogram/Chromatogram.cjs.map +1 -1
  72. package/dist/components/charts/Chromatogram/Chromatogram.js +232 -170
  73. package/dist/components/charts/Chromatogram/Chromatogram.js.map +1 -1
  74. package/dist/components/charts/Chromatogram/annotations.cjs +2 -0
  75. package/dist/components/charts/Chromatogram/annotations.cjs.map +1 -0
  76. package/dist/components/charts/Chromatogram/annotations.js +137 -0
  77. package/dist/components/charts/Chromatogram/annotations.js.map +1 -0
  78. package/dist/components/charts/Chromatogram/boundaryMarkers.cjs.map +1 -0
  79. package/dist/components/charts/Chromatogram/boundaryMarkers.js.map +1 -0
  80. package/dist/components/charts/Chromatogram/constants.cjs.map +1 -0
  81. package/dist/components/charts/Chromatogram/constants.js.map +1 -0
  82. package/dist/components/charts/Chromatogram/dataProcessing.cjs.map +1 -0
  83. package/dist/components/charts/Chromatogram/dataProcessing.js.map +1 -0
  84. package/dist/components/charts/Chromatogram/peakDetection.cjs.map +1 -0
  85. package/dist/components/charts/Chromatogram/peakDetection.js.map +1 -0
  86. package/dist/components/charts/Chromatogram/plotBuilder.cjs +2 -0
  87. package/dist/components/charts/Chromatogram/plotBuilder.cjs.map +1 -0
  88. package/dist/components/charts/Chromatogram/plotBuilder.js +216 -0
  89. package/dist/components/charts/Chromatogram/plotBuilder.js.map +1 -0
  90. package/dist/components/charts/Chromatogram/regionOverlays.cjs.map +1 -0
  91. package/dist/components/charts/Chromatogram/regionOverlays.js.map +1 -0
  92. package/dist/components/charts/Electropherogram/Electropherogram.cjs +2 -0
  93. package/dist/components/charts/Electropherogram/Electropherogram.cjs.map +1 -0
  94. package/dist/components/charts/Electropherogram/Electropherogram.js +180 -0
  95. package/dist/components/charts/Electropherogram/Electropherogram.js.map +1 -0
  96. package/dist/components/charts/Histogram/Histogram.cjs +1 -1
  97. package/dist/components/charts/Histogram/Histogram.cjs.map +1 -1
  98. package/dist/components/charts/Histogram/Histogram.js +107 -108
  99. package/dist/components/charts/Histogram/Histogram.js.map +1 -1
  100. package/dist/components/charts/LinePlot/LinePlot.cjs +2 -0
  101. package/dist/components/charts/LinePlot/LinePlot.cjs.map +1 -0
  102. package/dist/components/charts/LinePlot/LinePlot.js +224 -0
  103. package/dist/components/charts/LinePlot/LinePlot.js.map +1 -0
  104. package/dist/components/charts/PieChart/PieChart.cjs +1 -1
  105. package/dist/components/charts/PieChart/PieChart.cjs.map +1 -1
  106. package/dist/components/charts/PieChart/PieChart.js +62 -61
  107. package/dist/components/charts/PieChart/PieChart.js.map +1 -1
  108. package/dist/components/charts/PlateMap/PlateMap.cjs +1 -1
  109. package/dist/components/charts/PlateMap/PlateMap.cjs.map +1 -1
  110. package/dist/components/charts/PlateMap/PlateMap.js +246 -242
  111. package/dist/components/charts/PlateMap/PlateMap.js.map +1 -1
  112. package/dist/components/charts/ScatterPlot/ScatterPlot.cjs +2 -0
  113. package/dist/components/charts/ScatterPlot/ScatterPlot.cjs.map +1 -0
  114. package/dist/components/charts/ScatterPlot/ScatterPlot.js +252 -0
  115. package/dist/components/charts/ScatterPlot/ScatterPlot.js.map +1 -0
  116. package/dist/components/charts/ScatterPlotInteractive/ScatterPlotInteractive.cjs +2 -0
  117. package/dist/components/charts/ScatterPlotInteractive/ScatterPlotInteractive.cjs.map +1 -0
  118. package/dist/components/charts/ScatterPlotInteractive/ScatterPlotInteractive.js +215 -0
  119. package/dist/components/charts/ScatterPlotInteractive/ScatterPlotInteractive.js.map +1 -0
  120. package/dist/components/charts/ScatterPlotInteractive/constants.cjs +2 -0
  121. package/dist/components/charts/ScatterPlotInteractive/constants.cjs.map +1 -0
  122. package/dist/components/charts/ScatterPlotInteractive/constants.js +38 -0
  123. package/dist/components/charts/ScatterPlotInteractive/constants.js.map +1 -0
  124. package/dist/components/charts/ScatterPlotInteractive/utils.cjs +2 -0
  125. package/dist/components/charts/ScatterPlotInteractive/utils.cjs.map +1 -0
  126. package/dist/components/charts/ScatterPlotInteractive/utils.js +261 -0
  127. package/dist/components/charts/ScatterPlotInteractive/utils.js.map +1 -0
  128. package/dist/components/charts/StackedChromatogram/StackedChromatogram.cjs +2 -0
  129. package/dist/components/charts/StackedChromatogram/StackedChromatogram.cjs.map +1 -0
  130. package/dist/components/charts/StackedChromatogram/StackedChromatogram.js +40 -0
  131. package/dist/components/charts/StackedChromatogram/StackedChromatogram.js.map +1 -0
  132. package/dist/components/charts/StackedChromatogram/transforms.cjs.map +1 -0
  133. package/dist/components/charts/StackedChromatogram/transforms.js.map +1 -0
  134. package/dist/components/charts/plotly-loader.cjs +2 -0
  135. package/dist/components/charts/plotly-loader.cjs.map +1 -0
  136. package/dist/components/charts/plotly-loader.js +22 -0
  137. package/dist/components/charts/plotly-loader.js.map +1 -0
  138. package/dist/components/composed/AssistantLayout/AssistantLayout.cjs +2 -0
  139. package/dist/components/composed/AssistantLayout/AssistantLayout.cjs.map +1 -0
  140. package/dist/components/composed/AssistantLayout/AssistantLayout.js +142 -0
  141. package/dist/components/composed/AssistantLayout/AssistantLayout.js.map +1 -0
  142. package/dist/components/composed/AssistantLayout/dockLayout.cjs +2 -0
  143. package/dist/components/composed/AssistantLayout/dockLayout.cjs.map +1 -0
  144. package/dist/components/composed/AssistantLayout/dockLayout.js +10 -0
  145. package/dist/components/composed/AssistantLayout/dockLayout.js.map +1 -0
  146. package/dist/components/composed/Chat/Chat.cjs +1 -1
  147. package/dist/components/composed/Chat/Chat.cjs.map +1 -1
  148. package/dist/components/composed/Chat/Chat.js +23 -23
  149. package/dist/components/composed/Chat/Chat.js.map +1 -1
  150. package/dist/components/composed/ConfirmDialog/ConfirmDialog.cjs +1 -1
  151. package/dist/components/composed/ConfirmDialog/ConfirmDialog.cjs.map +1 -1
  152. package/dist/components/composed/ConfirmDialog/ConfirmDialog.js +33 -29
  153. package/dist/components/composed/ConfirmDialog/ConfirmDialog.js.map +1 -1
  154. package/dist/components/composed/DataAppShell/CollapseButton.cjs +2 -0
  155. package/dist/components/composed/DataAppShell/CollapseButton.cjs.map +1 -0
  156. package/dist/components/composed/DataAppShell/CollapseButton.js +42 -0
  157. package/dist/components/composed/DataAppShell/CollapseButton.js.map +1 -0
  158. package/dist/components/composed/DataAppShell/DataAppShell.cjs +1 -1
  159. package/dist/components/composed/DataAppShell/DataAppShell.cjs.map +1 -1
  160. package/dist/components/composed/DataAppShell/DataAppShell.js +349 -313
  161. package/dist/components/composed/DataAppShell/DataAppShell.js.map +1 -1
  162. package/dist/components/composed/DataAppShell/PrimaryNav.cjs +2 -0
  163. package/dist/components/composed/DataAppShell/PrimaryNav.cjs.map +1 -0
  164. package/dist/components/composed/DataAppShell/PrimaryNav.js +268 -0
  165. package/dist/components/composed/DataAppShell/PrimaryNav.js.map +1 -0
  166. package/dist/components/composed/DataAppShell/RightPanel.cjs +2 -0
  167. package/dist/components/composed/DataAppShell/RightPanel.cjs.map +1 -0
  168. package/dist/components/composed/DataAppShell/RightPanel.js +282 -0
  169. package/dist/components/composed/DataAppShell/RightPanel.js.map +1 -0
  170. package/dist/components/composed/DataAppShell/SecondaryNav.cjs +2 -0
  171. package/dist/components/composed/DataAppShell/SecondaryNav.cjs.map +1 -0
  172. package/dist/components/composed/DataAppShell/SecondaryNav.js +364 -0
  173. package/dist/components/composed/DataAppShell/SecondaryNav.js.map +1 -0
  174. package/dist/components/composed/DataAppShell/ShellContext.cjs +2 -0
  175. package/dist/components/composed/DataAppShell/ShellContext.cjs.map +1 -0
  176. package/dist/components/composed/DataAppShell/ShellContext.js +23 -0
  177. package/dist/components/composed/DataAppShell/ShellContext.js.map +1 -0
  178. package/dist/components/composed/MoleculeStructure/MoleculeStructure.cjs +2 -0
  179. package/dist/components/composed/MoleculeStructure/MoleculeStructure.cjs.map +1 -0
  180. package/dist/components/composed/MoleculeStructure/MoleculeStructure.js +87 -0
  181. package/dist/components/composed/MoleculeStructure/MoleculeStructure.js.map +1 -0
  182. package/dist/components/composed/MoleculeStructure/rdkit-loader.cjs +2 -0
  183. package/dist/components/composed/MoleculeStructure/rdkit-loader.cjs.map +1 -0
  184. package/dist/components/composed/MoleculeStructure/rdkit-loader.js +89 -0
  185. package/dist/components/composed/MoleculeStructure/rdkit-loader.js.map +1 -0
  186. package/dist/components/composed/MoleculeStructure/use-rdkit.cjs +2 -0
  187. package/dist/components/composed/MoleculeStructure/use-rdkit.cjs.map +1 -0
  188. package/dist/components/composed/MoleculeStructure/use-rdkit.js +19 -0
  189. package/dist/components/composed/MoleculeStructure/use-rdkit.js.map +1 -0
  190. package/dist/components/composed/PlateMapEditor/ManifestFilterPopover.cjs +1 -1
  191. package/dist/components/composed/PlateMapEditor/ManifestFilterPopover.cjs.map +1 -1
  192. package/dist/components/composed/PlateMapEditor/ManifestFilterPopover.js +17 -17
  193. package/dist/components/composed/PlateMapEditor/ManifestFilterPopover.js.map +1 -1
  194. package/dist/components/composed/PlateMapEditor/PlateMapActionsMenu.cjs +1 -1
  195. package/dist/components/composed/PlateMapEditor/PlateMapActionsMenu.cjs.map +1 -1
  196. package/dist/components/composed/PlateMapEditor/PlateMapActionsMenu.js +33 -33
  197. package/dist/components/composed/PlateMapEditor/PlateMapActionsMenu.js.map +1 -1
  198. package/dist/components/composed/PlateMapEditor/PlateMapPlateSelector.cjs +1 -1
  199. package/dist/components/composed/PlateMapEditor/PlateMapPlateSelector.cjs.map +1 -1
  200. package/dist/components/composed/PlateMapEditor/PlateMapPlateSelector.js +7 -7
  201. package/dist/components/composed/PlateMapEditor/PlateMapPlateSelector.js.map +1 -1
  202. package/dist/components/composed/PlateMapEditor/PlatePaintGrid.cjs +1 -1
  203. package/dist/components/composed/PlateMapEditor/PlatePaintGrid.cjs.map +1 -1
  204. package/dist/components/composed/PlateMapEditor/PlatePaintGrid.js +1 -1
  205. package/dist/components/composed/PlateMapEditor/PlatePaintGrid.js.map +1 -1
  206. package/dist/components/composed/PlateMapEditor/WellLegend.cjs +1 -1
  207. package/dist/components/composed/PlateMapEditor/WellLegend.cjs.map +1 -1
  208. package/dist/components/composed/PlateMapEditor/WellLegend.js +24 -12
  209. package/dist/components/composed/PlateMapEditor/WellLegend.js.map +1 -1
  210. package/dist/components/composed/PlateMapEditor/WellManifestTable.cjs +1 -1
  211. package/dist/components/composed/PlateMapEditor/WellManifestTable.cjs.map +1 -1
  212. package/dist/components/composed/PlateMapEditor/WellManifestTable.js +1 -1
  213. package/dist/components/composed/PlateMapEditor/WellManifestTable.js.map +1 -1
  214. package/dist/components/composed/TdpSearch/components/DefaultFilters.cjs +1 -1
  215. package/dist/components/composed/TdpSearch/components/DefaultFilters.cjs.map +1 -1
  216. package/dist/components/composed/TdpSearch/components/DefaultFilters.js +3 -3
  217. package/dist/components/composed/TdpSearch/components/DefaultFilters.js.map +1 -1
  218. package/dist/components/composed/TopBar/TopBar.cjs +2 -0
  219. package/dist/components/composed/TopBar/TopBar.cjs.map +1 -0
  220. package/dist/components/composed/TopBar/TopBar.js +56 -0
  221. package/dist/components/composed/TopBar/TopBar.js.map +1 -0
  222. package/dist/components/composed/UserMenu/UserMenu.cjs +2 -0
  223. package/dist/components/composed/UserMenu/UserMenu.cjs.map +1 -0
  224. package/dist/components/composed/UserMenu/UserMenu.js +99 -0
  225. package/dist/components/composed/UserMenu/UserMenu.js.map +1 -0
  226. package/dist/components/composed/tdp-link.cjs +1 -1
  227. package/dist/components/composed/tdp-link.cjs.map +1 -1
  228. package/dist/components/composed/tdp-link.js +5 -5
  229. package/dist/components/composed/tdp-link.js.map +1 -1
  230. package/dist/components/ui/alert.cjs +1 -1
  231. package/dist/components/ui/alert.cjs.map +1 -1
  232. package/dist/components/ui/alert.js +12 -12
  233. package/dist/components/ui/alert.js.map +1 -1
  234. package/dist/components/ui/badge.cjs +1 -1
  235. package/dist/components/ui/badge.cjs.map +1 -1
  236. package/dist/components/ui/badge.js +14 -14
  237. package/dist/components/ui/badge.js.map +1 -1
  238. package/dist/components/ui/banner.cjs +1 -1
  239. package/dist/components/ui/banner.cjs.map +1 -1
  240. package/dist/components/ui/banner.js +17 -17
  241. package/dist/components/ui/banner.js.map +1 -1
  242. package/dist/components/ui/button.cjs +1 -1
  243. package/dist/components/ui/button.cjs.map +1 -1
  244. package/dist/components/ui/button.js +16 -16
  245. package/dist/components/ui/button.js.map +1 -1
  246. package/dist/components/ui/calendar.cjs +1 -1
  247. package/dist/components/ui/calendar.cjs.map +1 -1
  248. package/dist/components/ui/calendar.js +3 -3
  249. package/dist/components/ui/calendar.js.map +1 -1
  250. package/dist/components/ui/code-block.cjs +3 -3
  251. package/dist/components/ui/code-block.cjs.map +1 -1
  252. package/dist/components/ui/code-block.js +136 -118
  253. package/dist/components/ui/code-block.js.map +1 -1
  254. package/dist/components/ui/code-editor.cjs +1 -1
  255. package/dist/components/ui/code-editor.cjs.map +1 -1
  256. package/dist/components/ui/code-editor.js +14 -12
  257. package/dist/components/ui/code-editor.js.map +1 -1
  258. package/dist/components/ui/combobox.cjs +1 -1
  259. package/dist/components/ui/combobox.cjs.map +1 -1
  260. package/dist/components/ui/combobox.js +33 -29
  261. package/dist/components/ui/combobox.js.map +1 -1
  262. package/dist/components/ui/command.cjs +1 -1
  263. package/dist/components/ui/command.cjs.map +1 -1
  264. package/dist/components/ui/command.js +81 -77
  265. package/dist/components/ui/command.js.map +1 -1
  266. package/dist/components/ui/context-menu.cjs +1 -1
  267. package/dist/components/ui/context-menu.cjs.map +1 -1
  268. package/dist/components/ui/context-menu.js +13 -13
  269. package/dist/components/ui/context-menu.js.map +1 -1
  270. package/dist/components/ui/data-table/data-table-column-toggle.cjs +1 -1
  271. package/dist/components/ui/data-table/data-table-column-toggle.cjs.map +1 -1
  272. package/dist/components/ui/data-table/data-table-column-toggle.js +70 -62
  273. package/dist/components/ui/data-table/data-table-column-toggle.js.map +1 -1
  274. package/dist/components/ui/data-table/data-table-filter.cjs +1 -1
  275. package/dist/components/ui/data-table/data-table-filter.cjs.map +1 -1
  276. package/dist/components/ui/data-table/data-table-filter.js +24 -23
  277. package/dist/components/ui/data-table/data-table-filter.js.map +1 -1
  278. package/dist/components/ui/data-table/data-table-group.cjs +1 -1
  279. package/dist/components/ui/data-table/data-table-group.cjs.map +1 -1
  280. package/dist/components/ui/data-table/data-table-group.js +17 -16
  281. package/dist/components/ui/data-table/data-table-group.js.map +1 -1
  282. package/dist/components/ui/data-table/data-table-pagination.cjs +1 -1
  283. package/dist/components/ui/data-table/data-table-pagination.cjs.map +1 -1
  284. package/dist/components/ui/data-table/data-table-pagination.js +15 -15
  285. package/dist/components/ui/data-table/data-table-pagination.js.map +1 -1
  286. package/dist/components/ui/data-table/data-table.cjs +1 -1
  287. package/dist/components/ui/data-table/data-table.cjs.map +1 -1
  288. package/dist/components/ui/data-table/data-table.js +191 -190
  289. package/dist/components/ui/data-table/data-table.js.map +1 -1
  290. package/dist/components/ui/dialog.cjs +1 -1
  291. package/dist/components/ui/dialog.cjs.map +1 -1
  292. package/dist/components/ui/dialog.js +1 -1
  293. package/dist/components/ui/dialog.js.map +1 -1
  294. package/dist/components/ui/dropdown-menu.cjs +1 -1
  295. package/dist/components/ui/dropdown-menu.cjs.map +1 -1
  296. package/dist/components/ui/dropdown-menu.js +12 -4
  297. package/dist/components/ui/dropdown-menu.js.map +1 -1
  298. package/dist/components/ui/hover-card.cjs +1 -1
  299. package/dist/components/ui/hover-card.cjs.map +1 -1
  300. package/dist/components/ui/hover-card.js +3 -3
  301. package/dist/components/ui/hover-card.js.map +1 -1
  302. package/dist/components/ui/item.cjs +1 -1
  303. package/dist/components/ui/item.cjs.map +1 -1
  304. package/dist/components/ui/item.js +44 -36
  305. package/dist/components/ui/item.js.map +1 -1
  306. package/dist/components/ui/menubar.cjs +1 -1
  307. package/dist/components/ui/menubar.cjs.map +1 -1
  308. package/dist/components/ui/menubar.js +2 -2
  309. package/dist/components/ui/menubar.js.map +1 -1
  310. package/dist/components/ui/navigation-menu.cjs +1 -1
  311. package/dist/components/ui/navigation-menu.cjs.map +1 -1
  312. package/dist/components/ui/navigation-menu.js +1 -1
  313. package/dist/components/ui/navigation-menu.js.map +1 -1
  314. package/dist/components/ui/popover.cjs +1 -1
  315. package/dist/components/ui/popover.cjs.map +1 -1
  316. package/dist/components/ui/popover.js +1 -1
  317. package/dist/components/ui/popover.js.map +1 -1
  318. package/dist/components/ui/scroll-area.cjs +1 -1
  319. package/dist/components/ui/scroll-area.cjs.map +1 -1
  320. package/dist/components/ui/scroll-area.js +1 -0
  321. package/dist/components/ui/scroll-area.js.map +1 -1
  322. package/dist/components/ui/select.cjs +1 -1
  323. package/dist/components/ui/select.cjs.map +1 -1
  324. package/dist/components/ui/select.js +1 -1
  325. package/dist/components/ui/select.js.map +1 -1
  326. package/dist/components/ui/sheet.cjs +1 -1
  327. package/dist/components/ui/sheet.cjs.map +1 -1
  328. package/dist/components/ui/sheet.js +5 -5
  329. package/dist/components/ui/sheet.js.map +1 -1
  330. package/dist/components/ui/sidebar.cjs +1 -1
  331. package/dist/components/ui/sidebar.cjs.map +1 -1
  332. package/dist/components/ui/sidebar.js +2 -2
  333. package/dist/components/ui/sidebar.js.map +1 -1
  334. package/dist/components/ui/slider.cjs +1 -1
  335. package/dist/components/ui/slider.cjs.map +1 -1
  336. package/dist/components/ui/slider.js +10 -9
  337. package/dist/components/ui/slider.js.map +1 -1
  338. package/dist/components/ui/sonner.cjs +1 -1
  339. package/dist/components/ui/sonner.cjs.map +1 -1
  340. package/dist/components/ui/sonner.js +25 -10
  341. package/dist/components/ui/sonner.js.map +1 -1
  342. package/dist/components/ui/table.cjs +1 -1
  343. package/dist/components/ui/table.cjs.map +1 -1
  344. package/dist/components/ui/table.js +1 -0
  345. package/dist/components/ui/table.js.map +1 -1
  346. package/dist/components/ui/tabs.cjs +1 -1
  347. package/dist/components/ui/tabs.cjs.map +1 -1
  348. package/dist/components/ui/tabs.js +18 -18
  349. package/dist/components/ui/tabs.js.map +1 -1
  350. package/dist/components/ui/tetra-molecule-icon.cjs +2 -0
  351. package/dist/components/ui/tetra-molecule-icon.cjs.map +1 -0
  352. package/dist/components/ui/tetra-molecule-icon.js +49 -0
  353. package/dist/components/ui/tetra-molecule-icon.js.map +1 -0
  354. package/dist/components/ui/toggle-group.cjs +1 -1
  355. package/dist/components/ui/toggle-group.cjs.map +1 -1
  356. package/dist/components/ui/toggle-group.js +35 -31
  357. package/dist/components/ui/toggle-group.js.map +1 -1
  358. package/dist/hooks/use-plotly-theme.cjs +1 -1
  359. package/dist/hooks/use-plotly-theme.cjs.map +1 -1
  360. package/dist/hooks/use-plotly-theme.js +4 -3
  361. package/dist/hooks/use-plotly-theme.js.map +1 -1
  362. package/dist/index.cjs +1 -1
  363. package/dist/index.css +1 -1
  364. package/dist/index.d.ts +1073 -136
  365. package/dist/index.js +698 -647
  366. package/dist/index.js.map +1 -1
  367. package/dist/index.tailwind.css +1 -1
  368. package/dist/lib/shiki.cjs +2 -0
  369. package/dist/lib/shiki.cjs.map +1 -0
  370. package/dist/lib/shiki.js +72 -0
  371. package/dist/lib/shiki.js.map +1 -0
  372. package/package.json +23 -12
  373. package/dist/components/charts/AreaGraph/AreaGraph.cjs +0 -2
  374. package/dist/components/charts/AreaGraph/AreaGraph.cjs.map +0 -1
  375. package/dist/components/charts/AreaGraph/AreaGraph.js +0 -271
  376. package/dist/components/charts/AreaGraph/AreaGraph.js.map +0 -1
  377. package/dist/components/charts/BarGraph/BarGraph.cjs +0 -2
  378. package/dist/components/charts/BarGraph/BarGraph.cjs.map +0 -1
  379. package/dist/components/charts/BarGraph/BarGraph.js +0 -220
  380. package/dist/components/charts/BarGraph/BarGraph.js.map +0 -1
  381. package/dist/components/charts/Boxplot/Boxplot.cjs +0 -2
  382. package/dist/components/charts/Boxplot/Boxplot.cjs.map +0 -1
  383. package/dist/components/charts/Boxplot/Boxplot.js.map +0 -1
  384. package/dist/components/charts/ChromatogramChart/ChromatogramChart.cjs +0 -2
  385. package/dist/components/charts/ChromatogramChart/ChromatogramChart.cjs.map +0 -1
  386. package/dist/components/charts/ChromatogramChart/ChromatogramChart.js +0 -241
  387. package/dist/components/charts/ChromatogramChart/ChromatogramChart.js.map +0 -1
  388. package/dist/components/charts/ChromatogramChart/annotations.cjs +0 -2
  389. package/dist/components/charts/ChromatogramChart/annotations.cjs.map +0 -1
  390. package/dist/components/charts/ChromatogramChart/annotations.js +0 -136
  391. package/dist/components/charts/ChromatogramChart/annotations.js.map +0 -1
  392. package/dist/components/charts/ChromatogramChart/boundaryMarkers.cjs.map +0 -1
  393. package/dist/components/charts/ChromatogramChart/boundaryMarkers.js.map +0 -1
  394. package/dist/components/charts/ChromatogramChart/constants.cjs.map +0 -1
  395. package/dist/components/charts/ChromatogramChart/constants.js.map +0 -1
  396. package/dist/components/charts/ChromatogramChart/dataProcessing.cjs.map +0 -1
  397. package/dist/components/charts/ChromatogramChart/dataProcessing.js.map +0 -1
  398. package/dist/components/charts/ChromatogramChart/peakDetection.cjs.map +0 -1
  399. package/dist/components/charts/ChromatogramChart/peakDetection.js.map +0 -1
  400. package/dist/components/charts/ChromatogramChart/plotBuilder.cjs +0 -2
  401. package/dist/components/charts/ChromatogramChart/plotBuilder.cjs.map +0 -1
  402. package/dist/components/charts/ChromatogramChart/plotBuilder.js +0 -207
  403. package/dist/components/charts/ChromatogramChart/plotBuilder.js.map +0 -1
  404. package/dist/components/charts/ChromatogramChart/regionOverlays.cjs.map +0 -1
  405. package/dist/components/charts/ChromatogramChart/regionOverlays.js.map +0 -1
  406. package/dist/components/charts/DotPlot/DotPlot.cjs +0 -2
  407. package/dist/components/charts/DotPlot/DotPlot.cjs.map +0 -1
  408. package/dist/components/charts/DotPlot/DotPlot.js +0 -208
  409. package/dist/components/charts/DotPlot/DotPlot.js.map +0 -1
  410. package/dist/components/charts/Heatmap/Heatmap.cjs +0 -2
  411. package/dist/components/charts/Heatmap/Heatmap.cjs.map +0 -1
  412. package/dist/components/charts/Heatmap/Heatmap.js +0 -67
  413. package/dist/components/charts/Heatmap/Heatmap.js.map +0 -1
  414. package/dist/components/charts/LineGraph/LineGraph.cjs +0 -2
  415. package/dist/components/charts/LineGraph/LineGraph.cjs.map +0 -1
  416. package/dist/components/charts/LineGraph/LineGraph.js +0 -225
  417. package/dist/components/charts/LineGraph/LineGraph.js.map +0 -1
  418. package/dist/components/charts/ScatterGraph/ScatterGraph.cjs +0 -2
  419. package/dist/components/charts/ScatterGraph/ScatterGraph.cjs.map +0 -1
  420. package/dist/components/charts/ScatterGraph/ScatterGraph.js +0 -234
  421. package/dist/components/charts/ScatterGraph/ScatterGraph.js.map +0 -1
  422. package/dist/components/charts/StackedChromatogramChart/StackedChromatogramChart.cjs +0 -2
  423. package/dist/components/charts/StackedChromatogramChart/StackedChromatogramChart.cjs.map +0 -1
  424. package/dist/components/charts/StackedChromatogramChart/StackedChromatogramChart.js +0 -40
  425. package/dist/components/charts/StackedChromatogramChart/StackedChromatogramChart.js.map +0 -1
  426. package/dist/components/charts/StackedChromatogramChart/transforms.cjs.map +0 -1
  427. package/dist/components/charts/StackedChromatogramChart/transforms.js.map +0 -1
  428. /package/dist/components/charts/{ChromatogramChart → Chromatogram}/boundaryMarkers.cjs +0 -0
  429. /package/dist/components/charts/{ChromatogramChart → Chromatogram}/boundaryMarkers.js +0 -0
  430. /package/dist/components/charts/{ChromatogramChart → Chromatogram}/constants.cjs +0 -0
  431. /package/dist/components/charts/{ChromatogramChart → Chromatogram}/constants.js +0 -0
  432. /package/dist/components/charts/{ChromatogramChart → Chromatogram}/dataProcessing.cjs +0 -0
  433. /package/dist/components/charts/{ChromatogramChart → Chromatogram}/dataProcessing.js +0 -0
  434. /package/dist/components/charts/{ChromatogramChart → Chromatogram}/peakDetection.cjs +0 -0
  435. /package/dist/components/charts/{ChromatogramChart → Chromatogram}/peakDetection.js +0 -0
  436. /package/dist/components/charts/{ChromatogramChart → Chromatogram}/regionOverlays.cjs +0 -0
  437. /package/dist/components/charts/{ChromatogramChart → Chromatogram}/regionOverlays.js +0 -0
  438. /package/dist/components/charts/{StackedChromatogramChart → StackedChromatogram}/transforms.cjs +0 -0
  439. /package/dist/components/charts/{StackedChromatogramChart → StackedChromatogram}/transforms.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"badge.js","sources":["../../../src/components/ui/badge.tsx"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\"\nimport { Slot } from \"radix-ui\"\nimport * as React from \"react\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst badgeVariants = cva(\n \"group/badge inline-flex h-5 w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-4xl border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-all focus-visible:border-ring focus-visible:shadow-focus has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 aria-invalid:border-destructive aria-invalid:shadow-focus [&>svg]:pointer-events-none [&>svg]:size-3!\",\n {\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground [a]:hover:bg-primary/80\",\n secondary:\n \"bg-secondary text-secondary-foreground [a]:hover:bg-secondary/80\",\n info:\n \"bg-info/15 text-info focus-visible:border-info dark:bg-info/20 dark:text-info [a]:hover:bg-info/25\",\n destructive:\n \"bg-destructive/15 text-destructive focus-visible:border-destructive dark:bg-destructive/20 dark:text-destructive [a]:hover:bg-destructive/25\",\n positive:\n \"bg-positive/15 text-positive focus-visible:border-positive dark:bg-positive/20 dark:text-positive [a]:hover:bg-positive/25\",\n warning:\n \"bg-warning/15 text-warning focus-visible:border-warning dark:bg-warning/20 dark:text-warning [a]:hover:bg-warning/25\",\n outline:\n \"border-border text-foreground [a]:hover:bg-accent [a]:hover:text-accent-foreground\",\n ghost:\n \"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50\",\n link: \"text-primary underline-offset-4 hover:underline\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n)\n\nfunction Badge({\n className,\n variant = \"default\",\n asChild = false,\n ...props\n}: React.ComponentProps<\"span\"> &\n VariantProps<typeof badgeVariants> & { asChild?: boolean }) {\n const Comp = asChild ? Slot.Root : \"span\"\n\n return (\n <Comp\n data-slot=\"badge\"\n data-variant={variant}\n className={cn(badgeVariants({ variant }), className)}\n {...props}\n />\n )\n}\n\nexport { Badge, badgeVariants }\n"],"names":["badgeVariants","cva","Badge","className","variant","asChild","props","Comp","Slot","jsx","cn"],"mappings":";;;;AAMA,MAAMA,IAAgBC;AAAA,EACpB;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,SAAS;AAAA,QACT,WACE;AAAA,QACF,MACE;AAAA,QACF,aACE;AAAA,QACF,UACE;AAAA,QACF,SACE;AAAA,QACF,SACE;AAAA,QACF,OACE;AAAA,QACF,MAAM;AAAA,MAAA;AAAA,IACR;AAAA,IAEF,iBAAiB;AAAA,MACf,SAAS;AAAA,IAAA;AAAA,EACX;AAEJ;AAEA,SAASC,EAAM;AAAA,EACb,WAAAC;AAAA,EACA,SAAAC,IAAW;AAAA,EACX,SAAAC,IAAU;AAAA,EACV,GAAGC;AACL,GAC8D;AAC5D,QAAMC,IAAOF,IAAUG,EAAK,OAAO;AAEnC,SACE,gBAAAC;AAAA,IAACF;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,gBAAcH;AAAA,MACd,WAAWM,EAAGV,EAAc,EAAE,SAAAI,EAAA,CAAS,GAAGD,CAAS;AAAA,MAClD,GAAGG;AAAA,IAAA;AAAA,EAAA;AAGV;"}
1
+ {"version":3,"file":"badge.js","sources":["../../../src/components/ui/badge.tsx"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\"\nimport { Slot } from \"radix-ui\"\nimport * as React from \"react\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst badgeVariants = cva(\n \"group/badge inline-flex h-5 w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-4xl border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-all focus-visible:border-ring focus-visible:shadow-focus has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 aria-invalid:border-destructive aria-invalid:shadow-focus [&>svg]:pointer-events-none [&>svg]:size-3!\",\n {\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground [a]:hover:bg-primary/80\",\n secondary:\n \"bg-secondary text-secondary-foreground [a]:hover:bg-secondary/80\",\n info:\n \"bg-info text-info-foreground [a]:hover:brightness-90\",\n destructive:\n \"bg-destructive text-destructive-foreground [a]:hover:brightness-90\",\n positive:\n \"bg-positive text-positive-foreground [a]:hover:brightness-90\",\n warning:\n \"bg-warning text-warning-foreground [a]:hover:brightness-90\",\n outline:\n \"border-border text-foreground [a]:hover:bg-accent [a]:hover:text-accent-foreground\",\n ghost:\n \"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50\",\n link: \"text-primary underline-offset-4 hover:underline\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n)\n\nfunction Badge({\n className,\n variant = \"default\",\n asChild = false,\n ...props\n}: React.ComponentProps<\"span\"> &\n VariantProps<typeof badgeVariants> & { asChild?: boolean }) {\n const Comp = asChild ? Slot.Root : \"span\"\n\n return (\n <Comp\n data-slot=\"badge\"\n data-variant={variant}\n className={cn(badgeVariants({ variant }), className)}\n {...props}\n />\n )\n}\n\nexport { Badge, badgeVariants }\n"],"names":["badgeVariants","cva","Badge","className","variant","asChild","props","Comp","Slot","jsx","cn"],"mappings":";;;;AAMA,MAAMA,IAAgBC;AAAA,EACpB;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,SAAS;AAAA,QACT,WACE;AAAA,QACF,MACE;AAAA,QACF,aACE;AAAA,QACF,UACE;AAAA,QACF,SACE;AAAA,QACF,SACE;AAAA,QACF,OACE;AAAA,QACF,MAAM;AAAA,MAAA;AAAA,IACR;AAAA,IAEF,iBAAiB;AAAA,MACf,SAAS;AAAA,IAAA;AAAA,EACX;AAEJ;AAEA,SAASC,EAAM;AAAA,EACb,WAAAC;AAAA,EACA,SAAAC,IAAW;AAAA,EACX,SAAAC,IAAU;AAAA,EACV,GAAGC;AACL,GAC8D;AAC5D,QAAMC,IAAOF,IAAUG,EAAK,OAAO;AAEnC,SACE,gBAAAC;AAAA,IAACF;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,gBAAcH;AAAA,MACd,WAAWM,EAAGV,EAAc,EAAE,SAAAI,EAAA,CAAS,GAAGD,CAAS;AAAA,MAClD,GAAGG;AAAA,IAAA;AAAA,EAAA;AAGV;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),p=require("class-variance-authority"),r=require("lucide-react"),j=require("./button.cjs"),N=require("../../lib/utils.cjs"),o=p.cva("flex w-full items-start gap-3 border px-4 py-3 text-sm",{variants:{variant:{info:"border-info/20 bg-info/10 text-info",positive:"border-positive/20 bg-positive/10 text-positive",warning:"border-warning/20 bg-warning/10 text-warning",destructive:"border-destructive/20 bg-destructive/10 text-destructive"}},defaultVariants:{variant:"info"}}),w={info:r.Info,positive:r.CheckCircle2,warning:r.AlertTriangle,destructive:r.XCircle};function y({variant:c="info",title:n,description:i,action:s,dismissible:l=!1,onDismiss:u,className:d,children:v,role:x,"aria-live":g,...f}){const t=c??"info",m=w[t],a=t==="warning"||t==="destructive",b=x??(a?"alert":"status"),h=g??(a?"assertive":"polite");return e.jsxs("div",{"data-slot":"banner","data-variant":t,role:b,"aria-live":h,className:N.cn(o({variant:t}),d),...f,children:[e.jsx(m,{className:"mt-0.5 h-4 w-4 shrink-0","aria-hidden":!0}),e.jsxs("div",{className:"flex flex-1 flex-col gap-0.5",children:[n&&e.jsx("p",{className:"font-medium leading-snug",children:n}),i&&e.jsx("p",{className:"text-current/80 leading-snug",children:i}),v,s&&e.jsx("div",{className:"mt-2",children:s})]}),l&&e.jsxs(j.Button,{type:"button",variant:"ghost",size:"icon-xs",className:"ml-auto shrink-0 text-current/70 hover:bg-current/10 hover:text-current",onClick:u,children:[e.jsx(r.X,{}),e.jsx("span",{className:"sr-only",children:"Dismiss"})]})]})}exports.Banner=y;exports.bannerVariants=o;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),b=require("class-variance-authority"),t=require("lucide-react"),j=require("./button.cjs"),N=require("../../lib/utils.cjs"),o=b.cva("flex w-full items-start gap-3 px-4 py-3 text-sm",{variants:{variant:{info:"bg-info text-info-foreground",positive:"bg-positive text-positive-foreground",warning:"bg-warning text-warning-foreground",destructive:"bg-destructive text-destructive-foreground"}},defaultVariants:{variant:"info"}}),w={info:t.Info,positive:t.CheckCircle2,warning:t.AlertTriangle,destructive:t.XCircle};function y({variant:c="info",title:r,description:s,action:i,dismissible:l=!1,onDismiss:u,className:d,children:v,role:g,"aria-live":x,...f}){const n=c??"info",m=w[n],a=n==="warning"||n==="destructive",h=g??(a?"alert":"status"),p=x??(a?"assertive":"polite");return e.jsxs("div",{"data-slot":"banner","data-variant":n,role:h,"aria-live":p,className:N.cn(o({variant:n}),d),...f,children:[e.jsx(m,{className:"mt-0.5 h-4 w-4 shrink-0","aria-hidden":!0}),e.jsxs("div",{className:"flex flex-1 flex-col gap-0.5",children:[r&&e.jsx("p",{className:"font-medium leading-snug",children:r}),s&&e.jsx("p",{className:"leading-snug",children:s}),v,i&&e.jsx("div",{className:"mt-2",children:i})]}),l&&e.jsxs(j.Button,{type:"button",variant:"ghost",size:"icon-xs",className:"ml-auto shrink-0 text-current hover:bg-current/15 hover:text-current",onClick:u,children:[e.jsx(t.X,{}),e.jsx("span",{className:"sr-only",children:"Dismiss"})]})]})}exports.Banner=y;exports.bannerVariants=o;
2
2
  //# sourceMappingURL=banner.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"banner.cjs","sources":["../../../src/components/ui/banner.tsx"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\";\nimport {\n AlertTriangle,\n CheckCircle2,\n Info,\n X,\n XCircle,\n} from \"lucide-react\";\nimport * as React from \"react\";\n\nimport { Button } from \"@/components/ui/button\";\nimport { cn } from \"@/lib/utils\";\n\nconst bannerVariants = cva(\n \"flex w-full items-start gap-3 border px-4 py-3 text-sm\",\n {\n variants: {\n variant: {\n info: \"border-info/20 bg-info/10 text-info\",\n positive: \"border-positive/20 bg-positive/10 text-positive\",\n warning: \"border-warning/20 bg-warning/10 text-warning\",\n destructive:\n \"border-destructive/20 bg-destructive/10 text-destructive\",\n },\n },\n defaultVariants: {\n variant: \"info\",\n },\n }\n);\n\nconst BANNER_ICONS = {\n info: Info,\n positive: CheckCircle2,\n warning: AlertTriangle,\n destructive: XCircle,\n} as const;\n\ntype DismissibleProps =\n | { dismissible: true; onDismiss: () => void }\n | { dismissible?: false; onDismiss?: never };\n\nexport type BannerProps = React.ComponentProps<\"div\"> &\n VariantProps<typeof bannerVariants> &\n DismissibleProps & {\n title?: React.ReactNode;\n description?: React.ReactNode;\n action?: React.ReactNode;\n };\n\nfunction Banner({\n variant = \"info\",\n title,\n description,\n action,\n dismissible = false,\n onDismiss,\n className,\n children,\n role,\n \"aria-live\": ariaLive,\n ...props\n}: BannerProps) {\n const resolvedVariant = variant ?? \"info\";\n const Icon = BANNER_ICONS[resolvedVariant];\n const isUrgentBanner =\n resolvedVariant === \"warning\" || resolvedVariant === \"destructive\";\n const resolvedRole = role ?? (isUrgentBanner ? \"alert\" : \"status\");\n const resolvedAriaLive = ariaLive ?? (isUrgentBanner ? \"assertive\" : \"polite\");\n\n return (\n <div\n data-slot=\"banner\"\n data-variant={resolvedVariant}\n role={resolvedRole}\n aria-live={resolvedAriaLive}\n className={cn(bannerVariants({ variant: resolvedVariant }), className)}\n {...props}\n >\n <Icon className=\"mt-0.5 h-4 w-4 shrink-0\" aria-hidden />\n <div className=\"flex flex-1 flex-col gap-0.5\">\n {title && <p className=\"font-medium leading-snug\">{title}</p>}\n {description && (\n <p className=\"text-current/80 leading-snug\">{description}</p>\n )}\n {children}\n {action && <div className=\"mt-2\">{action}</div>}\n </div>\n {dismissible && (\n <Button\n type=\"button\"\n variant=\"ghost\"\n size=\"icon-xs\"\n className=\"ml-auto shrink-0 text-current/70 hover:bg-current/10 hover:text-current\"\n onClick={onDismiss}\n >\n <X />\n <span className=\"sr-only\">Dismiss</span>\n </Button>\n )}\n </div>\n );\n}\n\nexport { Banner, bannerVariants };\n"],"names":["bannerVariants","cva","BANNER_ICONS","Info","CheckCircle2","AlertTriangle","XCircle","Banner","variant","title","description","action","dismissible","onDismiss","className","children","role","ariaLive","props","resolvedVariant","Icon","isUrgentBanner","resolvedRole","resolvedAriaLive","jsxs","cn","jsx","Button","X"],"mappings":"gPAaMA,EAAiBC,EAAAA,IACrB,yDACA,CACE,SAAU,CACR,QAAS,CACP,KAAM,sCACN,SAAU,kDACV,QAAS,+CACT,YACE,0DAAA,CACJ,EAEF,gBAAiB,CACf,QAAS,MAAA,CACX,CAEJ,EAEMC,EAAe,CACnB,KAAMC,EAAAA,KACN,SAAUC,EAAAA,aACV,QAASC,EAAAA,cACT,YAAaC,EAAAA,OACf,EAcA,SAASC,EAAO,CACd,QAAAC,EAAU,OACV,MAAAC,EACA,YAAAC,EACA,OAAAC,EACA,YAAAC,EAAc,GACd,UAAAC,EACA,UAAAC,EACA,SAAAC,EACA,KAAAC,EACA,YAAaC,EACb,GAAGC,CACL,EAAgB,CACd,MAAMC,EAAkBX,GAAW,OAC7BY,EAAOlB,EAAaiB,CAAe,EACnCE,EACJF,IAAoB,WAAaA,IAAoB,cACjDG,EAAeN,IAASK,EAAiB,QAAU,UACnDE,EAAmBN,IAAaI,EAAiB,YAAc,UAErE,OACEG,EAAAA,KAAC,MAAA,CACC,YAAU,SACV,eAAcL,EACd,KAAMG,EACN,YAAWC,EACX,UAAWE,EAAAA,GAAGzB,EAAe,CAAE,QAASmB,CAAA,CAAiB,EAAGL,CAAS,EACpE,GAAGI,EAEJ,SAAA,CAAAQ,EAAAA,IAACN,EAAA,CAAK,UAAU,0BAA0B,cAAW,GAAC,EACtDI,EAAAA,KAAC,MAAA,CAAI,UAAU,+BACZ,SAAA,CAAAf,GAASiB,EAAAA,IAAC,IAAA,CAAE,UAAU,2BAA4B,SAAAjB,EAAM,EACxDC,GACCgB,EAAAA,IAAC,IAAA,CAAE,UAAU,+BAAgC,SAAAhB,EAAY,EAE1DK,EACAJ,GAAUe,EAAAA,IAAC,MAAA,CAAI,UAAU,OAAQ,SAAAf,CAAA,CAAO,CAAA,EAC3C,EACCC,GACCY,EAAAA,KAACG,EAAAA,OAAA,CACC,KAAK,SACL,QAAQ,QACR,KAAK,UACL,UAAU,0EACV,QAASd,EAET,SAAA,CAAAa,EAAAA,IAACE,EAAAA,EAAA,EAAE,EACHF,EAAAA,IAAC,OAAA,CAAK,UAAU,UAAU,SAAA,SAAA,CAAO,CAAA,CAAA,CAAA,CACnC,CAAA,CAAA,CAIR"}
1
+ {"version":3,"file":"banner.cjs","sources":["../../../src/components/ui/banner.tsx"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\";\nimport {\n AlertTriangle,\n CheckCircle2,\n Info,\n X,\n XCircle,\n} from \"lucide-react\";\nimport * as React from \"react\";\n\nimport { Button } from \"@/components/ui/button\";\nimport { cn } from \"@/lib/utils\";\n\nconst bannerVariants = cva(\n \"flex w-full items-start gap-3 px-4 py-3 text-sm\",\n {\n variants: {\n variant: {\n info: \"bg-info text-info-foreground\",\n positive: \"bg-positive text-positive-foreground\",\n warning: \"bg-warning text-warning-foreground\",\n destructive: \"bg-destructive text-destructive-foreground\",\n },\n },\n defaultVariants: {\n variant: \"info\",\n },\n }\n);\n\nconst BANNER_ICONS = {\n info: Info,\n positive: CheckCircle2,\n warning: AlertTriangle,\n destructive: XCircle,\n} as const;\n\ntype DismissibleProps =\n | { dismissible: true; onDismiss: () => void }\n | { dismissible?: false; onDismiss?: never };\n\nexport type BannerProps = React.ComponentProps<\"div\"> &\n VariantProps<typeof bannerVariants> &\n DismissibleProps & {\n title?: React.ReactNode;\n description?: React.ReactNode;\n action?: React.ReactNode;\n };\n\nfunction Banner({\n variant = \"info\",\n title,\n description,\n action,\n dismissible = false,\n onDismiss,\n className,\n children,\n role,\n \"aria-live\": ariaLive,\n ...props\n}: BannerProps) {\n const resolvedVariant = variant ?? \"info\";\n const Icon = BANNER_ICONS[resolvedVariant];\n const isUrgentBanner =\n resolvedVariant === \"warning\" || resolvedVariant === \"destructive\";\n const resolvedRole = role ?? (isUrgentBanner ? \"alert\" : \"status\");\n const resolvedAriaLive = ariaLive ?? (isUrgentBanner ? \"assertive\" : \"polite\");\n\n return (\n <div\n data-slot=\"banner\"\n data-variant={resolvedVariant}\n role={resolvedRole}\n aria-live={resolvedAriaLive}\n className={cn(bannerVariants({ variant: resolvedVariant }), className)}\n {...props}\n >\n <Icon className=\"mt-0.5 h-4 w-4 shrink-0\" aria-hidden />\n <div className=\"flex flex-1 flex-col gap-0.5\">\n {title && <p className=\"font-medium leading-snug\">{title}</p>}\n {description && <p className=\"leading-snug\">{description}</p>}\n {children}\n {action && <div className=\"mt-2\">{action}</div>}\n </div>\n {dismissible && (\n <Button\n type=\"button\"\n variant=\"ghost\"\n size=\"icon-xs\"\n className=\"ml-auto shrink-0 text-current hover:bg-current/15 hover:text-current\"\n onClick={onDismiss}\n >\n <X />\n <span className=\"sr-only\">Dismiss</span>\n </Button>\n )}\n </div>\n );\n}\n\nexport { Banner, bannerVariants };\n"],"names":["bannerVariants","cva","BANNER_ICONS","Info","CheckCircle2","AlertTriangle","XCircle","Banner","variant","title","description","action","dismissible","onDismiss","className","children","role","ariaLive","props","resolvedVariant","Icon","isUrgentBanner","resolvedRole","resolvedAriaLive","jsxs","cn","jsx","Button","X"],"mappings":"gPAaMA,EAAiBC,EAAAA,IACrB,kDACA,CACE,SAAU,CACR,QAAS,CACP,KAAM,+BACN,SAAU,uCACV,QAAS,qCACT,YAAa,4CAAA,CACf,EAEF,gBAAiB,CACf,QAAS,MAAA,CACX,CAEJ,EAEMC,EAAe,CACnB,KAAMC,EAAAA,KACN,SAAUC,EAAAA,aACV,QAASC,EAAAA,cACT,YAAaC,EAAAA,OACf,EAcA,SAASC,EAAO,CACd,QAAAC,EAAU,OACV,MAAAC,EACA,YAAAC,EACA,OAAAC,EACA,YAAAC,EAAc,GACd,UAAAC,EACA,UAAAC,EACA,SAAAC,EACA,KAAAC,EACA,YAAaC,EACb,GAAGC,CACL,EAAgB,CACd,MAAMC,EAAkBX,GAAW,OAC7BY,EAAOlB,EAAaiB,CAAe,EACnCE,EACJF,IAAoB,WAAaA,IAAoB,cACjDG,EAAeN,IAASK,EAAiB,QAAU,UACnDE,EAAmBN,IAAaI,EAAiB,YAAc,UAErE,OACEG,EAAAA,KAAC,MAAA,CACC,YAAU,SACV,eAAcL,EACd,KAAMG,EACN,YAAWC,EACX,UAAWE,EAAAA,GAAGzB,EAAe,CAAE,QAASmB,CAAA,CAAiB,EAAGL,CAAS,EACpE,GAAGI,EAEJ,SAAA,CAAAQ,EAAAA,IAACN,EAAA,CAAK,UAAU,0BAA0B,cAAW,GAAC,EACtDI,EAAAA,KAAC,MAAA,CAAI,UAAU,+BACZ,SAAA,CAAAf,GAASiB,EAAAA,IAAC,IAAA,CAAE,UAAU,2BAA4B,SAAAjB,EAAM,EACxDC,GAAegB,EAAAA,IAAC,IAAA,CAAE,UAAU,eAAgB,SAAAhB,EAAY,EACxDK,EACAJ,GAAUe,EAAAA,IAAC,MAAA,CAAI,UAAU,OAAQ,SAAAf,CAAA,CAAO,CAAA,EAC3C,EACCC,GACCY,EAAAA,KAACG,EAAAA,OAAA,CACC,KAAK,SACL,QAAQ,QACR,KAAK,UACL,UAAU,uEACV,QAASd,EAET,SAAA,CAAAa,EAAAA,IAACE,EAAAA,EAAA,EAAE,EACHF,EAAAA,IAAC,OAAA,CAAK,UAAU,UAAU,SAAA,SAAA,CAAO,CAAA,CAAA,CAAA,CACnC,CAAA,CAAA,CAIR"}
@@ -1,17 +1,17 @@
1
1
  import { jsxs as t, jsx as e } from "react/jsx-runtime";
2
2
  import { cva as p } from "class-variance-authority";
3
- import { XCircle as x, AlertTriangle as h, CheckCircle2 as b, Info as N, X as w } from "lucide-react";
3
+ import { XCircle as x, AlertTriangle as h, CheckCircle2 as N, Info as b, X as w } from "lucide-react";
4
4
  import { Button as C } from "./button.js";
5
5
  import { cn as k } from "../../lib/utils.js";
6
6
  const A = p(
7
- "flex w-full items-start gap-3 border px-4 py-3 text-sm",
7
+ "flex w-full items-start gap-3 px-4 py-3 text-sm",
8
8
  {
9
9
  variants: {
10
10
  variant: {
11
- info: "border-info/20 bg-info/10 text-info",
12
- positive: "border-positive/20 bg-positive/10 text-positive",
13
- warning: "border-warning/20 bg-warning/10 text-warning",
14
- destructive: "border-destructive/20 bg-destructive/10 text-destructive"
11
+ info: "bg-info text-info-foreground",
12
+ positive: "bg-positive text-positive-foreground",
13
+ warning: "bg-warning text-warning-foreground",
14
+ destructive: "bg-destructive text-destructive-foreground"
15
15
  }
16
16
  },
17
17
  defaultVariants: {
@@ -19,22 +19,22 @@ const A = p(
19
19
  }
20
20
  }
21
21
  ), B = {
22
- info: N,
23
- positive: b,
22
+ info: b,
23
+ positive: N,
24
24
  warning: h,
25
25
  destructive: x
26
26
  };
27
27
  function z({
28
28
  variant: o = "info",
29
- title: i,
30
- description: n,
29
+ title: n,
30
+ description: i,
31
31
  action: a,
32
32
  dismissible: l = !1,
33
33
  onDismiss: c,
34
34
  className: d,
35
35
  children: v,
36
- role: m,
37
- "aria-live": f,
36
+ role: f,
37
+ "aria-live": m,
38
38
  ...u
39
39
  }) {
40
40
  const r = o ?? "info", g = B[r], s = r === "warning" || r === "destructive";
@@ -43,15 +43,15 @@ function z({
43
43
  {
44
44
  "data-slot": "banner",
45
45
  "data-variant": r,
46
- role: m ?? (s ? "alert" : "status"),
47
- "aria-live": f ?? (s ? "assertive" : "polite"),
46
+ role: f ?? (s ? "alert" : "status"),
47
+ "aria-live": m ?? (s ? "assertive" : "polite"),
48
48
  className: k(A({ variant: r }), d),
49
49
  ...u,
50
50
  children: [
51
51
  /* @__PURE__ */ e(g, { className: "mt-0.5 h-4 w-4 shrink-0", "aria-hidden": !0 }),
52
52
  /* @__PURE__ */ t("div", { className: "flex flex-1 flex-col gap-0.5", children: [
53
- i && /* @__PURE__ */ e("p", { className: "font-medium leading-snug", children: i }),
54
- n && /* @__PURE__ */ e("p", { className: "text-current/80 leading-snug", children: n }),
53
+ n && /* @__PURE__ */ e("p", { className: "font-medium leading-snug", children: n }),
54
+ i && /* @__PURE__ */ e("p", { className: "leading-snug", children: i }),
55
55
  v,
56
56
  a && /* @__PURE__ */ e("div", { className: "mt-2", children: a })
57
57
  ] }),
@@ -61,7 +61,7 @@ function z({
61
61
  type: "button",
62
62
  variant: "ghost",
63
63
  size: "icon-xs",
64
- className: "ml-auto shrink-0 text-current/70 hover:bg-current/10 hover:text-current",
64
+ className: "ml-auto shrink-0 text-current hover:bg-current/15 hover:text-current",
65
65
  onClick: c,
66
66
  children: [
67
67
  /* @__PURE__ */ e(w, {}),
@@ -1 +1 @@
1
- {"version":3,"file":"banner.js","sources":["../../../src/components/ui/banner.tsx"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\";\nimport {\n AlertTriangle,\n CheckCircle2,\n Info,\n X,\n XCircle,\n} from \"lucide-react\";\nimport * as React from \"react\";\n\nimport { Button } from \"@/components/ui/button\";\nimport { cn } from \"@/lib/utils\";\n\nconst bannerVariants = cva(\n \"flex w-full items-start gap-3 border px-4 py-3 text-sm\",\n {\n variants: {\n variant: {\n info: \"border-info/20 bg-info/10 text-info\",\n positive: \"border-positive/20 bg-positive/10 text-positive\",\n warning: \"border-warning/20 bg-warning/10 text-warning\",\n destructive:\n \"border-destructive/20 bg-destructive/10 text-destructive\",\n },\n },\n defaultVariants: {\n variant: \"info\",\n },\n }\n);\n\nconst BANNER_ICONS = {\n info: Info,\n positive: CheckCircle2,\n warning: AlertTriangle,\n destructive: XCircle,\n} as const;\n\ntype DismissibleProps =\n | { dismissible: true; onDismiss: () => void }\n | { dismissible?: false; onDismiss?: never };\n\nexport type BannerProps = React.ComponentProps<\"div\"> &\n VariantProps<typeof bannerVariants> &\n DismissibleProps & {\n title?: React.ReactNode;\n description?: React.ReactNode;\n action?: React.ReactNode;\n };\n\nfunction Banner({\n variant = \"info\",\n title,\n description,\n action,\n dismissible = false,\n onDismiss,\n className,\n children,\n role,\n \"aria-live\": ariaLive,\n ...props\n}: BannerProps) {\n const resolvedVariant = variant ?? \"info\";\n const Icon = BANNER_ICONS[resolvedVariant];\n const isUrgentBanner =\n resolvedVariant === \"warning\" || resolvedVariant === \"destructive\";\n const resolvedRole = role ?? (isUrgentBanner ? \"alert\" : \"status\");\n const resolvedAriaLive = ariaLive ?? (isUrgentBanner ? \"assertive\" : \"polite\");\n\n return (\n <div\n data-slot=\"banner\"\n data-variant={resolvedVariant}\n role={resolvedRole}\n aria-live={resolvedAriaLive}\n className={cn(bannerVariants({ variant: resolvedVariant }), className)}\n {...props}\n >\n <Icon className=\"mt-0.5 h-4 w-4 shrink-0\" aria-hidden />\n <div className=\"flex flex-1 flex-col gap-0.5\">\n {title && <p className=\"font-medium leading-snug\">{title}</p>}\n {description && (\n <p className=\"text-current/80 leading-snug\">{description}</p>\n )}\n {children}\n {action && <div className=\"mt-2\">{action}</div>}\n </div>\n {dismissible && (\n <Button\n type=\"button\"\n variant=\"ghost\"\n size=\"icon-xs\"\n className=\"ml-auto shrink-0 text-current/70 hover:bg-current/10 hover:text-current\"\n onClick={onDismiss}\n >\n <X />\n <span className=\"sr-only\">Dismiss</span>\n </Button>\n )}\n </div>\n );\n}\n\nexport { Banner, bannerVariants };\n"],"names":["bannerVariants","cva","BANNER_ICONS","Info","CheckCircle2","AlertTriangle","XCircle","Banner","variant","title","description","action","dismissible","onDismiss","className","children","role","ariaLive","props","resolvedVariant","Icon","isUrgentBanner","jsxs","cn","jsx","Button","X"],"mappings":";;;;;AAaA,MAAMA,IAAiBC;AAAA,EACrB;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,MAAM;AAAA,QACN,UAAU;AAAA,QACV,SAAS;AAAA,QACT,aACE;AAAA,MAAA;AAAA,IACJ;AAAA,IAEF,iBAAiB;AAAA,MACf,SAAS;AAAA,IAAA;AAAA,EACX;AAEJ,GAEMC,IAAe;AAAA,EACnB,MAAMC;AAAA,EACN,UAAUC;AAAA,EACV,SAASC;AAAA,EACT,aAAaC;AACf;AAcA,SAASC,EAAO;AAAA,EACd,SAAAC,IAAU;AAAA,EACV,OAAAC;AAAA,EACA,aAAAC;AAAA,EACA,QAAAC;AAAA,EACA,aAAAC,IAAc;AAAA,EACd,WAAAC;AAAA,EACA,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,MAAAC;AAAA,EACA,aAAaC;AAAA,EACb,GAAGC;AACL,GAAgB;AACd,QAAMC,IAAkBX,KAAW,QAC7BY,IAAOlB,EAAaiB,CAAe,GACnCE,IACJF,MAAoB,aAAaA,MAAoB;AAIvD,SACE,gBAAAG;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,gBAAcH;AAAA,MACd,MAPiBH,MAASK,IAAiB,UAAU;AAAA,MAQrD,aAPqBJ,MAAaI,IAAiB,cAAc;AAAA,MAQjE,WAAWE,EAAGvB,EAAe,EAAE,SAASmB,EAAA,CAAiB,GAAGL,CAAS;AAAA,MACpE,GAAGI;AAAA,MAEJ,UAAA;AAAA,QAAA,gBAAAM,EAACJ,GAAA,EAAK,WAAU,2BAA0B,eAAW,IAAC;AAAA,QACtD,gBAAAE,EAAC,OAAA,EAAI,WAAU,gCACZ,UAAA;AAAA,UAAAb,KAAS,gBAAAe,EAAC,KAAA,EAAE,WAAU,4BAA4B,UAAAf,GAAM;AAAA,UACxDC,KACC,gBAAAc,EAAC,KAAA,EAAE,WAAU,gCAAgC,UAAAd,GAAY;AAAA,UAE1DK;AAAA,UACAJ,KAAU,gBAAAa,EAAC,OAAA,EAAI,WAAU,QAAQ,UAAAb,EAAA,CAAO;AAAA,QAAA,GAC3C;AAAA,QACCC,KACC,gBAAAU;AAAA,UAACG;AAAA,UAAA;AAAA,YACC,MAAK;AAAA,YACL,SAAQ;AAAA,YACR,MAAK;AAAA,YACL,WAAU;AAAA,YACV,SAASZ;AAAA,YAET,UAAA;AAAA,cAAA,gBAAAW,EAACE,GAAA,EAAE;AAAA,cACH,gBAAAF,EAAC,QAAA,EAAK,WAAU,WAAU,UAAA,UAAA,CAAO;AAAA,YAAA;AAAA,UAAA;AAAA,QAAA;AAAA,MACnC;AAAA,IAAA;AAAA,EAAA;AAIR;"}
1
+ {"version":3,"file":"banner.js","sources":["../../../src/components/ui/banner.tsx"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\";\nimport {\n AlertTriangle,\n CheckCircle2,\n Info,\n X,\n XCircle,\n} from \"lucide-react\";\nimport * as React from \"react\";\n\nimport { Button } from \"@/components/ui/button\";\nimport { cn } from \"@/lib/utils\";\n\nconst bannerVariants = cva(\n \"flex w-full items-start gap-3 px-4 py-3 text-sm\",\n {\n variants: {\n variant: {\n info: \"bg-info text-info-foreground\",\n positive: \"bg-positive text-positive-foreground\",\n warning: \"bg-warning text-warning-foreground\",\n destructive: \"bg-destructive text-destructive-foreground\",\n },\n },\n defaultVariants: {\n variant: \"info\",\n },\n }\n);\n\nconst BANNER_ICONS = {\n info: Info,\n positive: CheckCircle2,\n warning: AlertTriangle,\n destructive: XCircle,\n} as const;\n\ntype DismissibleProps =\n | { dismissible: true; onDismiss: () => void }\n | { dismissible?: false; onDismiss?: never };\n\nexport type BannerProps = React.ComponentProps<\"div\"> &\n VariantProps<typeof bannerVariants> &\n DismissibleProps & {\n title?: React.ReactNode;\n description?: React.ReactNode;\n action?: React.ReactNode;\n };\n\nfunction Banner({\n variant = \"info\",\n title,\n description,\n action,\n dismissible = false,\n onDismiss,\n className,\n children,\n role,\n \"aria-live\": ariaLive,\n ...props\n}: BannerProps) {\n const resolvedVariant = variant ?? \"info\";\n const Icon = BANNER_ICONS[resolvedVariant];\n const isUrgentBanner =\n resolvedVariant === \"warning\" || resolvedVariant === \"destructive\";\n const resolvedRole = role ?? (isUrgentBanner ? \"alert\" : \"status\");\n const resolvedAriaLive = ariaLive ?? (isUrgentBanner ? \"assertive\" : \"polite\");\n\n return (\n <div\n data-slot=\"banner\"\n data-variant={resolvedVariant}\n role={resolvedRole}\n aria-live={resolvedAriaLive}\n className={cn(bannerVariants({ variant: resolvedVariant }), className)}\n {...props}\n >\n <Icon className=\"mt-0.5 h-4 w-4 shrink-0\" aria-hidden />\n <div className=\"flex flex-1 flex-col gap-0.5\">\n {title && <p className=\"font-medium leading-snug\">{title}</p>}\n {description && <p className=\"leading-snug\">{description}</p>}\n {children}\n {action && <div className=\"mt-2\">{action}</div>}\n </div>\n {dismissible && (\n <Button\n type=\"button\"\n variant=\"ghost\"\n size=\"icon-xs\"\n className=\"ml-auto shrink-0 text-current hover:bg-current/15 hover:text-current\"\n onClick={onDismiss}\n >\n <X />\n <span className=\"sr-only\">Dismiss</span>\n </Button>\n )}\n </div>\n );\n}\n\nexport { Banner, bannerVariants };\n"],"names":["bannerVariants","cva","BANNER_ICONS","Info","CheckCircle2","AlertTriangle","XCircle","Banner","variant","title","description","action","dismissible","onDismiss","className","children","role","ariaLive","props","resolvedVariant","Icon","isUrgentBanner","jsxs","cn","jsx","Button","X"],"mappings":";;;;;AAaA,MAAMA,IAAiBC;AAAA,EACrB;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,MAAM;AAAA,QACN,UAAU;AAAA,QACV,SAAS;AAAA,QACT,aAAa;AAAA,MAAA;AAAA,IACf;AAAA,IAEF,iBAAiB;AAAA,MACf,SAAS;AAAA,IAAA;AAAA,EACX;AAEJ,GAEMC,IAAe;AAAA,EACnB,MAAMC;AAAA,EACN,UAAUC;AAAA,EACV,SAASC;AAAA,EACT,aAAaC;AACf;AAcA,SAASC,EAAO;AAAA,EACd,SAAAC,IAAU;AAAA,EACV,OAAAC;AAAA,EACA,aAAAC;AAAA,EACA,QAAAC;AAAA,EACA,aAAAC,IAAc;AAAA,EACd,WAAAC;AAAA,EACA,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,MAAAC;AAAA,EACA,aAAaC;AAAA,EACb,GAAGC;AACL,GAAgB;AACd,QAAMC,IAAkBX,KAAW,QAC7BY,IAAOlB,EAAaiB,CAAe,GACnCE,IACJF,MAAoB,aAAaA,MAAoB;AAIvD,SACE,gBAAAG;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,gBAAcH;AAAA,MACd,MAPiBH,MAASK,IAAiB,UAAU;AAAA,MAQrD,aAPqBJ,MAAaI,IAAiB,cAAc;AAAA,MAQjE,WAAWE,EAAGvB,EAAe,EAAE,SAASmB,EAAA,CAAiB,GAAGL,CAAS;AAAA,MACpE,GAAGI;AAAA,MAEJ,UAAA;AAAA,QAAA,gBAAAM,EAACJ,GAAA,EAAK,WAAU,2BAA0B,eAAW,IAAC;AAAA,QACtD,gBAAAE,EAAC,OAAA,EAAI,WAAU,gCACZ,UAAA;AAAA,UAAAb,KAAS,gBAAAe,EAAC,KAAA,EAAE,WAAU,4BAA4B,UAAAf,GAAM;AAAA,UACxDC,KAAe,gBAAAc,EAAC,KAAA,EAAE,WAAU,gBAAgB,UAAAd,GAAY;AAAA,UACxDK;AAAA,UACAJ,KAAU,gBAAAa,EAAC,OAAA,EAAI,WAAU,QAAQ,UAAAb,EAAA,CAAO;AAAA,QAAA,GAC3C;AAAA,QACCC,KACC,gBAAAU;AAAA,UAACG;AAAA,UAAA;AAAA,YACC,MAAK;AAAA,YACL,SAAQ;AAAA,YACR,MAAK;AAAA,YACL,WAAU;AAAA,YACV,SAASZ;AAAA,YAET,UAAA;AAAA,cAAA,gBAAAW,EAACE,GAAA,EAAE;AAAA,cACH,gBAAAF,EAAC,QAAA,EAAK,WAAU,WAAU,UAAA,UAAA,CAAO;AAAA,YAAA;AAAA,UAAA;AAAA,QAAA;AAAA,MACnC;AAAA,IAAA;AAAA,EAAA;AAIR;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("react/jsx-runtime"),s=require("class-variance-authority"),u=require("radix-ui"),c=require("../../lib/utils.cjs"),a=s.cva("group/button inline-flex shrink-0 items-center justify-center rounded-lg border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:shadow-focus active:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:shadow-focus dark:aria-invalid:border-destructive/50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/85",outline:"border-border bg-transparent hover:bg-accent hover:text-accent-foreground aria-expanded:bg-accent aria-expanded:text-accent-foreground dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/75 dark:hover:bg-secondary/85 aria-expanded:bg-secondary aria-expanded:text-secondary-foreground",ghost:"hover:bg-accent hover:text-accent-foreground aria-expanded:bg-accent aria-expanded:text-accent-foreground dark:hover:bg-accent/50",destructive:"bg-destructive/10 text-destructive hover:bg-destructive/20 focus-visible:border-destructive/40 dark:bg-destructive/20 dark:hover:bg-destructive/30",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-8 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2",xs:"h-6 gap-1 rounded-[min(var(--radius-md),10px)] px-2 text-xs in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-7 gap-1 rounded-[min(var(--radius-md),12px)] px-2.5 text-[0.8rem] in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5",lg:"h-9 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3",icon:"size-8","icon-xs":"size-6 rounded-[min(var(--radius-md),10px)] in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-7 rounded-[min(var(--radius-md),12px)] in-data-[slot=button-group]:rounded-lg","icon-lg":"size-9"}},defaultVariants:{variant:"default",size:"default"}});function l({className:n,variant:e="default",size:t="default",asChild:r=!1,...i}){const o=r?u.Slot.Root:"button";return d.jsx(o,{"data-slot":"button","data-variant":e,"data-size":t,className:c.cn(a({variant:e,size:t,className:n})),...i})}exports.Button=l;exports.buttonVariants=a;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("react/jsx-runtime"),s=require("class-variance-authority"),u=require("radix-ui"),c=require("../../lib/utils.cjs"),t=s.cva("group/button inline-flex shrink-0 items-center justify-center rounded-lg border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:shadow-focus active:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:shadow-focus dark:aria-invalid:border-destructive/50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-[color-mix(in_oklab,var(--primary),var(--primary-foreground)_15%)]",outline:"border-border bg-transparent hover:bg-accent hover:text-accent-foreground aria-expanded:bg-accent aria-expanded:text-accent-foreground dark:border-input",secondary:"bg-secondary text-secondary-foreground hover:bg-[color-mix(in_oklab,var(--secondary),var(--secondary-foreground)_15%)] aria-expanded:bg-secondary aria-expanded:text-secondary-foreground",ghost:"hover:bg-accent hover:text-accent-foreground aria-expanded:bg-accent aria-expanded:text-accent-foreground",destructive:"bg-destructive text-destructive-foreground hover:bg-destructive/90 focus-visible:border-destructive/40",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-8 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2",xs:"h-6 gap-1 rounded-[min(var(--radius-md),10px)] px-2 text-xs in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-7 gap-1 rounded-[min(var(--radius-md),12px)] px-2.5 text-[0.8rem] in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5",lg:"h-9 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3",icon:"size-8","icon-xs":"size-6 rounded-[min(var(--radius-md),10px)] in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-7 rounded-[min(var(--radius-md),12px)] in-data-[slot=button-group]:rounded-lg","icon-lg":"size-9"}},defaultVariants:{variant:"default",size:"default"}});function l({className:n,variant:e="default",size:a="default",asChild:r=!1,...i}){const o=r?u.Slot.Root:"button";return d.jsx(o,{"data-slot":"button","data-variant":e,"data-size":a,className:c.cn(t({variant:e,size:a,className:n})),...i})}exports.Button=l;exports.buttonVariants=t;
2
2
  //# sourceMappingURL=button.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"button.cjs","sources":["../../../src/components/ui/button.tsx"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\"\nimport { Slot } from \"radix-ui\"\nimport * as React from \"react\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst buttonVariants = cva(\n \"group/button inline-flex shrink-0 items-center justify-center rounded-lg border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:shadow-focus active:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:shadow-focus dark:aria-invalid:border-destructive/50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n {\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground hover:bg-primary/85\",\n outline:\n \"border-border bg-transparent hover:bg-accent hover:text-accent-foreground aria-expanded:bg-accent aria-expanded:text-accent-foreground dark:border-input dark:hover:bg-input/50\",\n secondary:\n \"bg-secondary text-secondary-foreground hover:bg-secondary/75 dark:hover:bg-secondary/85 aria-expanded:bg-secondary aria-expanded:text-secondary-foreground\",\n ghost:\n \"hover:bg-accent hover:text-accent-foreground aria-expanded:bg-accent aria-expanded:text-accent-foreground dark:hover:bg-accent/50\",\n destructive:\n \"bg-destructive/10 text-destructive hover:bg-destructive/20 focus-visible:border-destructive/40 dark:bg-destructive/20 dark:hover:bg-destructive/30\",\n link: \"text-primary underline-offset-4 hover:underline\",\n },\n size: {\n default:\n \"h-8 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2\",\n xs: \"h-6 gap-1 rounded-[min(var(--radius-md),10px)] px-2 text-xs in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3\",\n sm: \"h-7 gap-1 rounded-[min(var(--radius-md),12px)] px-2.5 text-[0.8rem] in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5\",\n lg: \"h-9 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3\",\n icon: \"size-8\",\n \"icon-xs\":\n \"size-6 rounded-[min(var(--radius-md),10px)] in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3\",\n \"icon-sm\":\n \"size-7 rounded-[min(var(--radius-md),12px)] in-data-[slot=button-group]:rounded-lg\",\n \"icon-lg\": \"size-9\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n }\n)\n\nfunction Button({\n className,\n variant = \"default\",\n size = \"default\",\n asChild = false,\n ...props\n}: React.ComponentProps<\"button\"> &\n VariantProps<typeof buttonVariants> & {\n asChild?: boolean\n }) {\n const Comp = asChild ? Slot.Root : \"button\"\n\n return (\n <Comp\n data-slot=\"button\"\n data-variant={variant}\n data-size={size}\n className={cn(buttonVariants({ variant, size, className }))}\n {...props}\n />\n )\n}\n\nexport { Button, buttonVariants }\n"],"names":["buttonVariants","cva","Button","className","variant","size","asChild","props","Comp","Slot","jsx","cn"],"mappings":"kNAMMA,EAAiBC,EAAAA,IACrB,mfACA,CACE,SAAU,CACR,QAAS,CACP,QAAS,yDACT,QACE,kLACF,UACE,6JACF,MACE,oIACF,YACE,qJACF,KAAM,iDAAA,EAER,KAAM,CACJ,QACE,uFACF,GAAI,gNACJ,GAAI,0NACJ,GAAI,uFACJ,KAAM,SACN,UACE,0HACF,UACE,qFACF,UAAW,QAAA,CACb,EAEF,gBAAiB,CACf,QAAS,UACT,KAAM,SAAA,CACR,CAEJ,EAEA,SAASC,EAAO,CACd,UAAAC,EACA,QAAAC,EAAU,UACV,KAAAC,EAAO,UACP,QAAAC,EAAU,GACV,GAAGC,CACL,EAGK,CACH,MAAMC,EAAOF,EAAUG,EAAAA,KAAK,KAAO,SAEnC,OACEC,EAAAA,IAACF,EAAA,CACC,YAAU,SACV,eAAcJ,EACd,YAAWC,EACX,UAAWM,EAAAA,GAAGX,EAAe,CAAE,QAAAI,EAAS,KAAAC,EAAM,UAAAF,CAAA,CAAW,CAAC,EACzD,GAAGI,CAAA,CAAA,CAGV"}
1
+ {"version":3,"file":"button.cjs","sources":["../../../src/components/ui/button.tsx"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\"\nimport { Slot } from \"radix-ui\"\nimport * as React from \"react\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst buttonVariants = cva(\n \"group/button inline-flex shrink-0 items-center justify-center rounded-lg border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:shadow-focus active:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:shadow-focus dark:aria-invalid:border-destructive/50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n {\n variants: {\n variant: {\n default:\n \"bg-primary text-primary-foreground hover:bg-[color-mix(in_oklab,var(--primary),var(--primary-foreground)_15%)]\",\n outline:\n \"border-border bg-transparent hover:bg-accent hover:text-accent-foreground aria-expanded:bg-accent aria-expanded:text-accent-foreground dark:border-input\",\n secondary:\n \"bg-secondary text-secondary-foreground hover:bg-[color-mix(in_oklab,var(--secondary),var(--secondary-foreground)_15%)] aria-expanded:bg-secondary aria-expanded:text-secondary-foreground\",\n ghost:\n \"hover:bg-accent hover:text-accent-foreground aria-expanded:bg-accent aria-expanded:text-accent-foreground\",\n destructive:\n \"bg-destructive text-destructive-foreground hover:bg-destructive/90 focus-visible:border-destructive/40\",\n link: \"text-primary underline-offset-4 hover:underline\",\n },\n size: {\n default:\n \"h-8 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2\",\n xs: \"h-6 gap-1 rounded-[min(var(--radius-md),10px)] px-2 text-xs in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3\",\n sm: \"h-7 gap-1 rounded-[min(var(--radius-md),12px)] px-2.5 text-[0.8rem] in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5\",\n lg: \"h-9 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3\",\n icon: \"size-8\",\n \"icon-xs\":\n \"size-6 rounded-[min(var(--radius-md),10px)] in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3\",\n \"icon-sm\":\n \"size-7 rounded-[min(var(--radius-md),12px)] in-data-[slot=button-group]:rounded-lg\",\n \"icon-lg\": \"size-9\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n }\n)\n\nfunction Button({\n className,\n variant = \"default\",\n size = \"default\",\n asChild = false,\n ...props\n}: React.ComponentProps<\"button\"> &\n VariantProps<typeof buttonVariants> & {\n asChild?: boolean\n }) {\n const Comp = asChild ? Slot.Root : \"button\"\n\n return (\n <Comp\n data-slot=\"button\"\n data-variant={variant}\n data-size={size}\n className={cn(buttonVariants({ variant, size, className }))}\n {...props}\n />\n )\n}\n\nexport { Button, buttonVariants }\n"],"names":["buttonVariants","cva","Button","className","variant","size","asChild","props","Comp","Slot","jsx","cn"],"mappings":"kNAMMA,EAAiBC,EAAAA,IACrB,mfACA,CACE,SAAU,CACR,QAAS,CACP,QACE,iHACF,QACE,2JACF,UACE,4LACF,MACE,4GACF,YACE,yGACF,KAAM,iDAAA,EAER,KAAM,CACJ,QACE,uFACF,GAAI,gNACJ,GAAI,0NACJ,GAAI,uFACJ,KAAM,SACN,UACE,0HACF,UACE,qFACF,UAAW,QAAA,CACb,EAEF,gBAAiB,CACf,QAAS,UACT,KAAM,SAAA,CACR,CAEJ,EAEA,SAASC,EAAO,CACd,UAAAC,EACA,QAAAC,EAAU,UACV,KAAAC,EAAO,UACP,QAAAC,EAAU,GACV,GAAGC,CACL,EAGK,CACH,MAAMC,EAAOF,EAAUG,EAAAA,KAAK,KAAO,SAEnC,OACEC,EAAAA,IAACF,EAAA,CACC,YAAU,SACV,eAAcJ,EACd,YAAWC,EACX,UAAWM,EAAAA,GAAGX,EAAe,CAAE,QAAAI,EAAS,KAAAC,EAAM,UAAAF,CAAA,CAAW,CAAC,EACzD,GAAGI,CAAA,CAAA,CAGV"}
@@ -1,4 +1,4 @@
1
- import { jsx as o } from "react/jsx-runtime";
1
+ import { jsx as i } from "react/jsx-runtime";
2
2
  import { cva as d } from "class-variance-authority";
3
3
  import { Slot as s } from "radix-ui";
4
4
  import { cn as c } from "../../lib/utils.js";
@@ -7,11 +7,11 @@ const u = d(
7
7
  {
8
8
  variants: {
9
9
  variant: {
10
- default: "bg-primary text-primary-foreground hover:bg-primary/85",
11
- outline: "border-border bg-transparent hover:bg-accent hover:text-accent-foreground aria-expanded:bg-accent aria-expanded:text-accent-foreground dark:border-input dark:hover:bg-input/50",
12
- secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/75 dark:hover:bg-secondary/85 aria-expanded:bg-secondary aria-expanded:text-secondary-foreground",
13
- ghost: "hover:bg-accent hover:text-accent-foreground aria-expanded:bg-accent aria-expanded:text-accent-foreground dark:hover:bg-accent/50",
14
- destructive: "bg-destructive/10 text-destructive hover:bg-destructive/20 focus-visible:border-destructive/40 dark:bg-destructive/20 dark:hover:bg-destructive/30",
10
+ default: "bg-primary text-primary-foreground hover:bg-[color-mix(in_oklab,var(--primary),var(--primary-foreground)_15%)]",
11
+ outline: "border-border bg-transparent hover:bg-accent hover:text-accent-foreground aria-expanded:bg-accent aria-expanded:text-accent-foreground dark:border-input",
12
+ secondary: "bg-secondary text-secondary-foreground hover:bg-[color-mix(in_oklab,var(--secondary),var(--secondary-foreground)_15%)] aria-expanded:bg-secondary aria-expanded:text-secondary-foreground",
13
+ ghost: "hover:bg-accent hover:text-accent-foreground aria-expanded:bg-accent aria-expanded:text-accent-foreground",
14
+ destructive: "bg-destructive text-destructive-foreground hover:bg-destructive/90 focus-visible:border-destructive/40",
15
15
  link: "text-primary underline-offset-4 hover:underline"
16
16
  },
17
17
  size: {
@@ -32,21 +32,21 @@ const u = d(
32
32
  }
33
33
  );
34
34
  function b({
35
- className: a,
35
+ className: r,
36
36
  variant: e = "default",
37
- size: t = "default",
38
- asChild: r = !1,
39
- ...n
37
+ size: a = "default",
38
+ asChild: n = !1,
39
+ ...t
40
40
  }) {
41
- const i = r ? s.Root : "button";
42
- return /* @__PURE__ */ o(
43
- i,
41
+ const o = n ? s.Root : "button";
42
+ return /* @__PURE__ */ i(
43
+ o,
44
44
  {
45
45
  "data-slot": "button",
46
46
  "data-variant": e,
47
- "data-size": t,
48
- className: c(u({ variant: e, size: t, className: a })),
49
- ...n
47
+ "data-size": a,
48
+ className: c(u({ variant: e, size: a, className: r })),
49
+ ...t
50
50
  }
51
51
  );
52
52
  }
@@ -1 +1 @@
1
- {"version":3,"file":"button.js","sources":["../../../src/components/ui/button.tsx"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\"\nimport { Slot } from \"radix-ui\"\nimport * as React from \"react\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst buttonVariants = cva(\n \"group/button inline-flex shrink-0 items-center justify-center rounded-lg border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:shadow-focus active:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:shadow-focus dark:aria-invalid:border-destructive/50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n {\n variants: {\n variant: {\n default: \"bg-primary text-primary-foreground hover:bg-primary/85\",\n outline:\n \"border-border bg-transparent hover:bg-accent hover:text-accent-foreground aria-expanded:bg-accent aria-expanded:text-accent-foreground dark:border-input dark:hover:bg-input/50\",\n secondary:\n \"bg-secondary text-secondary-foreground hover:bg-secondary/75 dark:hover:bg-secondary/85 aria-expanded:bg-secondary aria-expanded:text-secondary-foreground\",\n ghost:\n \"hover:bg-accent hover:text-accent-foreground aria-expanded:bg-accent aria-expanded:text-accent-foreground dark:hover:bg-accent/50\",\n destructive:\n \"bg-destructive/10 text-destructive hover:bg-destructive/20 focus-visible:border-destructive/40 dark:bg-destructive/20 dark:hover:bg-destructive/30\",\n link: \"text-primary underline-offset-4 hover:underline\",\n },\n size: {\n default:\n \"h-8 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2\",\n xs: \"h-6 gap-1 rounded-[min(var(--radius-md),10px)] px-2 text-xs in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3\",\n sm: \"h-7 gap-1 rounded-[min(var(--radius-md),12px)] px-2.5 text-[0.8rem] in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5\",\n lg: \"h-9 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3\",\n icon: \"size-8\",\n \"icon-xs\":\n \"size-6 rounded-[min(var(--radius-md),10px)] in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3\",\n \"icon-sm\":\n \"size-7 rounded-[min(var(--radius-md),12px)] in-data-[slot=button-group]:rounded-lg\",\n \"icon-lg\": \"size-9\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n }\n)\n\nfunction Button({\n className,\n variant = \"default\",\n size = \"default\",\n asChild = false,\n ...props\n}: React.ComponentProps<\"button\"> &\n VariantProps<typeof buttonVariants> & {\n asChild?: boolean\n }) {\n const Comp = asChild ? Slot.Root : \"button\"\n\n return (\n <Comp\n data-slot=\"button\"\n data-variant={variant}\n data-size={size}\n className={cn(buttonVariants({ variant, size, className }))}\n {...props}\n />\n )\n}\n\nexport { Button, buttonVariants }\n"],"names":["buttonVariants","cva","Button","className","variant","size","asChild","props","Comp","Slot","jsx","cn"],"mappings":";;;;AAMA,MAAMA,IAAiBC;AAAA,EACrB;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,SAAS;AAAA,QACT,SACE;AAAA,QACF,WACE;AAAA,QACF,OACE;AAAA,QACF,aACE;AAAA,QACF,MAAM;AAAA,MAAA;AAAA,MAER,MAAM;AAAA,QACJ,SACE;AAAA,QACF,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,MAAM;AAAA,QACN,WACE;AAAA,QACF,WACE;AAAA,QACF,WAAW;AAAA,MAAA;AAAA,IACb;AAAA,IAEF,iBAAiB;AAAA,MACf,SAAS;AAAA,MACT,MAAM;AAAA,IAAA;AAAA,EACR;AAEJ;AAEA,SAASC,EAAO;AAAA,EACd,WAAAC;AAAA,EACA,SAAAC,IAAU;AAAA,EACV,MAAAC,IAAO;AAAA,EACP,SAAAC,IAAU;AAAA,EACV,GAAGC;AACL,GAGK;AACH,QAAMC,IAAOF,IAAUG,EAAK,OAAO;AAEnC,SACE,gBAAAC;AAAA,IAACF;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,gBAAcJ;AAAA,MACd,aAAWC;AAAA,MACX,WAAWM,EAAGX,EAAe,EAAE,SAAAI,GAAS,MAAAC,GAAM,WAAAF,EAAA,CAAW,CAAC;AAAA,MACzD,GAAGI;AAAA,IAAA;AAAA,EAAA;AAGV;"}
1
+ {"version":3,"file":"button.js","sources":["../../../src/components/ui/button.tsx"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\"\nimport { Slot } from \"radix-ui\"\nimport * as React from \"react\"\n\nimport { cn } from \"@/lib/utils\"\n\nconst buttonVariants = cva(\n \"group/button inline-flex shrink-0 items-center justify-center rounded-lg border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:shadow-focus active:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:shadow-focus dark:aria-invalid:border-destructive/50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n {\n variants: {\n variant: {\n default:\n \"bg-primary text-primary-foreground hover:bg-[color-mix(in_oklab,var(--primary),var(--primary-foreground)_15%)]\",\n outline:\n \"border-border bg-transparent hover:bg-accent hover:text-accent-foreground aria-expanded:bg-accent aria-expanded:text-accent-foreground dark:border-input\",\n secondary:\n \"bg-secondary text-secondary-foreground hover:bg-[color-mix(in_oklab,var(--secondary),var(--secondary-foreground)_15%)] aria-expanded:bg-secondary aria-expanded:text-secondary-foreground\",\n ghost:\n \"hover:bg-accent hover:text-accent-foreground aria-expanded:bg-accent aria-expanded:text-accent-foreground\",\n destructive:\n \"bg-destructive text-destructive-foreground hover:bg-destructive/90 focus-visible:border-destructive/40\",\n link: \"text-primary underline-offset-4 hover:underline\",\n },\n size: {\n default:\n \"h-8 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2\",\n xs: \"h-6 gap-1 rounded-[min(var(--radius-md),10px)] px-2 text-xs in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3\",\n sm: \"h-7 gap-1 rounded-[min(var(--radius-md),12px)] px-2.5 text-[0.8rem] in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5\",\n lg: \"h-9 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3\",\n icon: \"size-8\",\n \"icon-xs\":\n \"size-6 rounded-[min(var(--radius-md),10px)] in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3\",\n \"icon-sm\":\n \"size-7 rounded-[min(var(--radius-md),12px)] in-data-[slot=button-group]:rounded-lg\",\n \"icon-lg\": \"size-9\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n }\n)\n\nfunction Button({\n className,\n variant = \"default\",\n size = \"default\",\n asChild = false,\n ...props\n}: React.ComponentProps<\"button\"> &\n VariantProps<typeof buttonVariants> & {\n asChild?: boolean\n }) {\n const Comp = asChild ? Slot.Root : \"button\"\n\n return (\n <Comp\n data-slot=\"button\"\n data-variant={variant}\n data-size={size}\n className={cn(buttonVariants({ variant, size, className }))}\n {...props}\n />\n )\n}\n\nexport { Button, buttonVariants }\n"],"names":["buttonVariants","cva","Button","className","variant","size","asChild","props","Comp","Slot","jsx","cn"],"mappings":";;;;AAMA,MAAMA,IAAiBC;AAAA,EACrB;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,SACE;AAAA,QACF,SACE;AAAA,QACF,WACE;AAAA,QACF,OACE;AAAA,QACF,aACE;AAAA,QACF,MAAM;AAAA,MAAA;AAAA,MAER,MAAM;AAAA,QACJ,SACE;AAAA,QACF,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,MAAM;AAAA,QACN,WACE;AAAA,QACF,WACE;AAAA,QACF,WAAW;AAAA,MAAA;AAAA,IACb;AAAA,IAEF,iBAAiB;AAAA,MACf,SAAS;AAAA,MACT,MAAM;AAAA,IAAA;AAAA,EACR;AAEJ;AAEA,SAASC,EAAO;AAAA,EACd,WAAAC;AAAA,EACA,SAAAC,IAAU;AAAA,EACV,MAAAC,IAAO;AAAA,EACP,SAAAC,IAAU;AAAA,EACV,GAAGC;AACL,GAGK;AACH,QAAMC,IAAOF,IAAUG,EAAK,OAAO;AAEnC,SACE,gBAAAC;AAAA,IAACF;AAAA,IAAA;AAAA,MACC,aAAU;AAAA,MACV,gBAAcJ;AAAA,MACd,aAAWC;AAAA,MACX,WAAWM,EAAGX,EAAe,EAAE,SAAAI,GAAS,MAAAC,GAAM,WAAAF,EAAA,CAAW,CAAC;AAAA,MACzD,GAAGI;AAAA,IAAA;AAAA,EAAA;AAGV;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("react/jsx-runtime"),f=require("lucide-react"),_=require("react"),m=require("react-day-picker"),p=require("./button.cjs"),e=require("../../lib/utils.cjs");function h(n){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(n){for(const r in n)if(r!=="default"){const l=Object.getOwnPropertyDescriptor(n,r);Object.defineProperty(o,r,l.get?l:{enumerable:!0,get:()=>n[r]})}}return o.default=n,Object.freeze(o)}const x=h(_);function v({className:n,classNames:o,showOutsideDays:r=!0,captionLayout:l="label",buttonVariant:i="ghost",locale:u,formatters:g,components:w,...b}){const t=m.getDefaultClassNames();return d.jsx(m.DayPicker,{showOutsideDays:r,className:e.cn("group/calendar bg-background p-2 [--cell-radius:var(--radius-md)] [--cell-size:--spacing(7)] in-data-[slot=card-content]:bg-transparent in-data-[slot=popover-content]:bg-transparent",String.raw`rtl:**:[.rdp-button\_next>svg]:rotate-180`,String.raw`rtl:**:[.rdp-button\_previous>svg]:rotate-180`,n),captionLayout:l,locale:u,formatters:{formatMonthDropdown:a=>a.toLocaleString(u?.code,{month:"short"}),...g},classNames:{root:e.cn("w-fit",t.root),months:e.cn("relative flex flex-col gap-4 md:flex-row",t.months),month:e.cn("flex w-full flex-col gap-4",t.month),nav:e.cn("absolute inset-x-0 top-0 flex w-full items-center justify-between gap-1",t.nav),button_previous:e.cn(p.buttonVariants({variant:i}),"size-(--cell-size) p-0 select-none aria-disabled:opacity-50",t.button_previous),button_next:e.cn(p.buttonVariants({variant:i}),"size-(--cell-size) p-0 select-none aria-disabled:opacity-50",t.button_next),month_caption:e.cn("flex h-(--cell-size) w-full items-center justify-center px-(--cell-size)",t.month_caption),dropdowns:e.cn("flex h-(--cell-size) w-full items-center justify-center gap-1.5 text-sm font-medium",t.dropdowns),dropdown_root:e.cn("relative rounded-(--cell-radius)",t.dropdown_root),dropdown:e.cn("absolute inset-0 bg-popover opacity-0",t.dropdown),caption_label:e.cn("font-medium select-none",l==="label"?"text-sm":"flex items-center gap-1 rounded-(--cell-radius) text-sm [&>svg]:size-3.5 [&>svg]:text-muted-foreground",t.caption_label),table:"w-full border-collapse",weekdays:e.cn("flex",t.weekdays),weekday:e.cn("flex-1 rounded-(--cell-radius) text-[0.8rem] font-normal text-muted-foreground select-none",t.weekday),week:e.cn("mt-2 flex w-full",t.week),week_number_header:e.cn("w-(--cell-size) select-none",t.week_number_header),week_number:e.cn("text-[0.8rem] text-muted-foreground select-none",t.week_number),day:e.cn("group/day relative aspect-square h-full w-full rounded-(--cell-radius) p-0 text-center select-none [&:last-child[data-selected=true]_button]:rounded-r-(--cell-radius)",b.showWeekNumber?"[&:nth-child(2)[data-selected=true]_button]:rounded-l-(--cell-radius)":"[&:first-child[data-selected=true]_button]:rounded-l-(--cell-radius)",t.day),range_start:e.cn("relative isolate z-0 rounded-l-(--cell-radius) bg-muted after:absolute after:inset-y-0 after:right-0 after:w-4 after:bg-muted",t.range_start),range_middle:e.cn("rounded-none",t.range_middle),range_end:e.cn("relative isolate z-0 rounded-r-(--cell-radius) bg-muted after:absolute after:inset-y-0 after:left-0 after:w-4 after:bg-muted",t.range_end),today:e.cn("rounded-(--cell-radius) bg-muted text-foreground data-[selected=true]:rounded-none",t.today),outside:e.cn("text-muted-foreground aria-selected:text-muted-foreground",t.outside),disabled:e.cn("text-muted-foreground opacity-50",t.disabled),hidden:e.cn("invisible",t.hidden),...o},components:{Root:({className:a,rootRef:s,...c})=>d.jsx("div",{"data-slot":"calendar",ref:s,className:e.cn(a),...c}),Chevron:({className:a,orientation:s,...c})=>s==="left"?d.jsx(f.ChevronLeftIcon,{className:e.cn("size-4",a),...c}):s==="right"?d.jsx(f.ChevronRightIcon,{className:e.cn("size-4",a),...c}):d.jsx(f.ChevronDownIcon,{className:e.cn("size-4",a),...c}),DayButton:({...a})=>d.jsx(y,{locale:u,...a}),WeekNumber:({children:a,...s})=>d.jsx("td",{...s,children:d.jsx("div",{className:"flex size-(--cell-size) items-center justify-center text-center",children:a})}),...w},...b})}function y({className:n,day:o,modifiers:r,locale:l,...i}){const u=m.getDefaultClassNames(),g=x.useRef(null);return x.useEffect(()=>{r.focused&&g.current?.focus()},[r.focused]),d.jsx(p.Button,{ref:g,variant:"ghost",size:"icon","data-day":o.date.toLocaleDateString(l?.code),"data-selected-single":r.selected&&!r.range_start&&!r.range_end&&!r.range_middle,"data-range-start":r.range_start,"data-range-end":r.range_end,"data-range-middle":r.range_middle,className:e.cn("relative isolate z-10 flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 border-0 leading-none font-normal group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:shadow-focus data-[range-end=true]:rounded-(--cell-radius) data-[range-end=true]:rounded-r-(--cell-radius) data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground data-[range-middle=true]:rounded-none data-[range-middle=true]:bg-muted data-[range-middle=true]:text-foreground data-[range-start=true]:rounded-(--cell-radius) data-[range-start=true]:rounded-l-(--cell-radius) data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground dark:hover:text-foreground [&>span]:text-xs [&>span]:opacity-70",u.day,n),...i})}exports.Calendar=v;exports.CalendarDayButton=y;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("react/jsx-runtime"),f=require("lucide-react"),_=require("react"),m=require("react-day-picker"),p=require("./button.cjs"),e=require("../../lib/utils.cjs");function h(n){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(n){for(const r in n)if(r!=="default"){const l=Object.getOwnPropertyDescriptor(n,r);Object.defineProperty(o,r,l.get?l:{enumerable:!0,get:()=>n[r]})}}return o.default=n,Object.freeze(o)}const x=h(_);function v({className:n,classNames:o,showOutsideDays:r=!0,captionLayout:l="label",buttonVariant:i="ghost",locale:u,formatters:g,components:w,...b}){const t=m.getDefaultClassNames();return d.jsx(m.DayPicker,{showOutsideDays:r,className:e.cn("group/calendar bg-background p-2 [--cell-radius:var(--radius-md)] [--cell-size:--spacing(7)] in-data-[slot=card-content]:bg-transparent in-data-[slot=popover-content]:bg-transparent",String.raw`rtl:**:[.rdp-button\_next>svg]:rotate-180`,String.raw`rtl:**:[.rdp-button\_previous>svg]:rotate-180`,n),captionLayout:l,locale:u,formatters:{formatMonthDropdown:a=>a.toLocaleString(u?.code,{month:"short"}),...g},classNames:{root:e.cn("w-fit",t.root),months:e.cn("relative flex flex-col gap-4 md:flex-row",t.months),month:e.cn("flex w-full flex-col gap-4",t.month),nav:e.cn("absolute inset-x-0 top-0 flex w-full items-center justify-between gap-1",t.nav),button_previous:e.cn(p.buttonVariants({variant:i}),"size-(--cell-size) p-0 select-none aria-disabled:opacity-50",t.button_previous),button_next:e.cn(p.buttonVariants({variant:i}),"size-(--cell-size) p-0 select-none aria-disabled:opacity-50",t.button_next),month_caption:e.cn("flex h-(--cell-size) w-full items-center justify-center px-(--cell-size)",t.month_caption),dropdowns:e.cn("flex h-(--cell-size) w-full items-center justify-center gap-1.5 text-sm font-medium",t.dropdowns),dropdown_root:e.cn("relative rounded-(--cell-radius)",t.dropdown_root),dropdown:e.cn("absolute inset-0 bg-popover opacity-0",t.dropdown),caption_label:e.cn("font-medium select-none",l==="label"?"text-sm":"flex items-center gap-1 rounded-(--cell-radius) text-sm [&>svg]:size-3.5 [&>svg]:text-muted-foreground",t.caption_label),table:"w-full border-collapse",weekdays:e.cn("flex",t.weekdays),weekday:e.cn("flex-1 rounded-(--cell-radius) text-[0.8rem] font-normal text-muted-foreground select-none",t.weekday),week:e.cn("mt-2 flex w-full",t.week),week_number_header:e.cn("w-(--cell-size) select-none",t.week_number_header),week_number:e.cn("text-[0.8rem] text-muted-foreground select-none",t.week_number),day:e.cn("group/day relative aspect-square h-full w-full rounded-(--cell-radius) p-0 text-center select-none [&:last-child[data-selected=true]_button]:rounded-r-(--cell-radius)",b.showWeekNumber?"[&:nth-child(2)[data-selected=true]_button]:rounded-l-(--cell-radius)":"[&:first-child[data-selected=true]_button]:rounded-l-(--cell-radius)",t.day),range_start:e.cn("relative isolate z-0 rounded-l-(--cell-radius) bg-muted after:absolute after:inset-y-0 after:right-0 after:w-4 after:bg-muted",t.range_start),range_middle:e.cn("rounded-none",t.range_middle),range_end:e.cn("relative isolate z-0 rounded-r-(--cell-radius) bg-muted after:absolute after:inset-y-0 after:left-0 after:w-4 after:bg-muted",t.range_end),today:e.cn("rounded-(--cell-radius) bg-muted text-foreground data-[selected=true]:rounded-none",t.today),outside:e.cn("text-muted-foreground aria-selected:text-muted-foreground",t.outside),disabled:e.cn("text-muted-foreground opacity-50",t.disabled),hidden:e.cn("invisible",t.hidden),...o},components:{Root:({className:a,rootRef:s,...c})=>d.jsx("div",{"data-slot":"calendar",ref:s,className:e.cn(a),...c}),Chevron:({className:a,orientation:s,...c})=>s==="left"?d.jsx(f.ChevronLeftIcon,{className:e.cn("size-4",a),...c}):s==="right"?d.jsx(f.ChevronRightIcon,{className:e.cn("size-4",a),...c}):d.jsx(f.ChevronDownIcon,{className:e.cn("size-4",a),...c}),DayButton:({...a})=>d.jsx(y,{locale:u,...a}),WeekNumber:({children:a,...s})=>d.jsx("th",{...s,children:d.jsx("div",{className:"flex size-(--cell-size) items-center justify-center text-center",children:a})}),...w},...b})}function y({className:n,day:o,modifiers:r,locale:l,...i}){const u=m.getDefaultClassNames(),g=x.useRef(null);return x.useEffect(()=>{r.focused&&g.current?.focus()},[r.focused]),d.jsx(p.Button,{ref:g,variant:"ghost",size:"icon","data-day":o.date.toLocaleDateString(l?.code),"data-selected-single":r.selected&&!r.range_start&&!r.range_end&&!r.range_middle,"data-range-start":r.range_start,"data-range-end":r.range_end,"data-range-middle":r.range_middle,className:e.cn("relative isolate z-10 flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 border-0 leading-none font-normal group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:shadow-focus data-[range-end=true]:rounded-(--cell-radius) data-[range-end=true]:rounded-r-(--cell-radius) data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground data-[range-middle=true]:rounded-none data-[range-middle=true]:bg-muted data-[range-middle=true]:text-foreground data-[range-start=true]:rounded-(--cell-radius) data-[range-start=true]:rounded-l-(--cell-radius) data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground dark:hover:text-foreground [&>span]:text-xs [&>span]:opacity-70",u.day,n),...i})}exports.Calendar=v;exports.CalendarDayButton=y;
2
2
  //# sourceMappingURL=calendar.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"calendar.cjs","sources":["../../../src/components/ui/calendar.tsx"],"sourcesContent":["import { ChevronLeftIcon, ChevronRightIcon, ChevronDownIcon } from \"lucide-react\"\nimport * as React from \"react\"\nimport {\n DayPicker,\n getDefaultClassNames,\n type DayButton,\n type Locale,\n} from \"react-day-picker\"\n\nimport { Button, buttonVariants } from \"@/components/ui/button\"\nimport { cn } from \"@/lib/utils\"\n\nfunction Calendar({\n className,\n classNames,\n showOutsideDays = true,\n captionLayout = \"label\",\n buttonVariant = \"ghost\",\n locale,\n formatters,\n components,\n ...props\n}: React.ComponentProps<typeof DayPicker> & {\n buttonVariant?: React.ComponentProps<typeof Button>[\"variant\"]\n}) {\n const defaultClassNames = getDefaultClassNames()\n\n return (\n <DayPicker\n showOutsideDays={showOutsideDays}\n className={cn(\n \"group/calendar bg-background p-2 [--cell-radius:var(--radius-md)] [--cell-size:--spacing(7)] in-data-[slot=card-content]:bg-transparent in-data-[slot=popover-content]:bg-transparent\",\n String.raw`rtl:**:[.rdp-button\\_next>svg]:rotate-180`,\n String.raw`rtl:**:[.rdp-button\\_previous>svg]:rotate-180`,\n className\n )}\n captionLayout={captionLayout}\n locale={locale}\n formatters={{\n formatMonthDropdown: (date) =>\n date.toLocaleString(locale?.code, { month: \"short\" }),\n ...formatters,\n }}\n classNames={{\n root: cn(\"w-fit\", defaultClassNames.root),\n months: cn(\n \"relative flex flex-col gap-4 md:flex-row\",\n defaultClassNames.months\n ),\n month: cn(\"flex w-full flex-col gap-4\", defaultClassNames.month),\n nav: cn(\n \"absolute inset-x-0 top-0 flex w-full items-center justify-between gap-1\",\n defaultClassNames.nav\n ),\n button_previous: cn(\n buttonVariants({ variant: buttonVariant }),\n \"size-(--cell-size) p-0 select-none aria-disabled:opacity-50\",\n defaultClassNames.button_previous\n ),\n button_next: cn(\n buttonVariants({ variant: buttonVariant }),\n \"size-(--cell-size) p-0 select-none aria-disabled:opacity-50\",\n defaultClassNames.button_next\n ),\n month_caption: cn(\n \"flex h-(--cell-size) w-full items-center justify-center px-(--cell-size)\",\n defaultClassNames.month_caption\n ),\n dropdowns: cn(\n \"flex h-(--cell-size) w-full items-center justify-center gap-1.5 text-sm font-medium\",\n defaultClassNames.dropdowns\n ),\n dropdown_root: cn(\n \"relative rounded-(--cell-radius)\",\n defaultClassNames.dropdown_root\n ),\n dropdown: cn(\n \"absolute inset-0 bg-popover opacity-0\",\n defaultClassNames.dropdown\n ),\n caption_label: cn(\n \"font-medium select-none\",\n captionLayout === \"label\"\n ? \"text-sm\"\n : \"flex items-center gap-1 rounded-(--cell-radius) text-sm [&>svg]:size-3.5 [&>svg]:text-muted-foreground\",\n defaultClassNames.caption_label\n ),\n table: \"w-full border-collapse\",\n weekdays: cn(\"flex\", defaultClassNames.weekdays),\n weekday: cn(\n \"flex-1 rounded-(--cell-radius) text-[0.8rem] font-normal text-muted-foreground select-none\",\n defaultClassNames.weekday\n ),\n week: cn(\"mt-2 flex w-full\", defaultClassNames.week),\n week_number_header: cn(\n \"w-(--cell-size) select-none\",\n defaultClassNames.week_number_header\n ),\n week_number: cn(\n \"text-[0.8rem] text-muted-foreground select-none\",\n defaultClassNames.week_number\n ),\n day: cn(\n \"group/day relative aspect-square h-full w-full rounded-(--cell-radius) p-0 text-center select-none [&:last-child[data-selected=true]_button]:rounded-r-(--cell-radius)\",\n props.showWeekNumber\n ? \"[&:nth-child(2)[data-selected=true]_button]:rounded-l-(--cell-radius)\"\n : \"[&:first-child[data-selected=true]_button]:rounded-l-(--cell-radius)\",\n defaultClassNames.day\n ),\n range_start: cn(\n \"relative isolate z-0 rounded-l-(--cell-radius) bg-muted after:absolute after:inset-y-0 after:right-0 after:w-4 after:bg-muted\",\n defaultClassNames.range_start\n ),\n range_middle: cn(\"rounded-none\", defaultClassNames.range_middle),\n range_end: cn(\n \"relative isolate z-0 rounded-r-(--cell-radius) bg-muted after:absolute after:inset-y-0 after:left-0 after:w-4 after:bg-muted\",\n defaultClassNames.range_end\n ),\n today: cn(\n \"rounded-(--cell-radius) bg-muted text-foreground data-[selected=true]:rounded-none\",\n defaultClassNames.today\n ),\n outside: cn(\n \"text-muted-foreground aria-selected:text-muted-foreground\",\n defaultClassNames.outside\n ),\n disabled: cn(\n \"text-muted-foreground opacity-50\",\n defaultClassNames.disabled\n ),\n hidden: cn(\"invisible\", defaultClassNames.hidden),\n ...classNames,\n }}\n components={{\n Root: ({ className, rootRef, ...props }) => {\n return (\n <div\n data-slot=\"calendar\"\n ref={rootRef}\n className={cn(className)}\n {...props}\n />\n )\n },\n Chevron: ({ className, orientation, ...props }) => {\n if (orientation === \"left\") {\n return (\n <ChevronLeftIcon className={cn(\"size-4\", className)} {...props} />\n )\n }\n\n if (orientation === \"right\") {\n return (\n <ChevronRightIcon className={cn(\"size-4\", className)} {...props} />\n )\n }\n\n return (\n <ChevronDownIcon className={cn(\"size-4\", className)} {...props} />\n )\n },\n DayButton: ({ ...props }) => (\n <CalendarDayButton locale={locale} {...props} />\n ),\n WeekNumber: ({ children, ...props }) => {\n return (\n <td {...props}>\n <div className=\"flex size-(--cell-size) items-center justify-center text-center\">\n {children}\n </div>\n </td>\n )\n },\n ...components,\n }}\n {...props}\n />\n )\n}\n\nfunction CalendarDayButton({\n className,\n day,\n modifiers,\n locale,\n ...props\n}: React.ComponentProps<typeof DayButton> & { locale?: Partial<Locale> }) {\n const defaultClassNames = getDefaultClassNames()\n\n const ref = React.useRef<HTMLButtonElement>(null)\n React.useEffect(() => {\n if (modifiers.focused) ref.current?.focus()\n }, [modifiers.focused])\n\n return (\n <Button\n ref={ref}\n variant=\"ghost\"\n size=\"icon\"\n data-day={day.date.toLocaleDateString(locale?.code)}\n data-selected-single={\n modifiers.selected &&\n !modifiers.range_start &&\n !modifiers.range_end &&\n !modifiers.range_middle\n }\n data-range-start={modifiers.range_start}\n data-range-end={modifiers.range_end}\n data-range-middle={modifiers.range_middle}\n className={cn(\n \"relative isolate z-10 flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 border-0 leading-none font-normal group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:shadow-focus data-[range-end=true]:rounded-(--cell-radius) data-[range-end=true]:rounded-r-(--cell-radius) data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground data-[range-middle=true]:rounded-none data-[range-middle=true]:bg-muted data-[range-middle=true]:text-foreground data-[range-start=true]:rounded-(--cell-radius) data-[range-start=true]:rounded-l-(--cell-radius) data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground dark:hover:text-foreground [&>span]:text-xs [&>span]:opacity-70\",\n defaultClassNames.day,\n className\n )}\n {...props}\n />\n )\n}\n\nexport { Calendar, CalendarDayButton }\n"],"names":["Calendar","className","classNames","showOutsideDays","captionLayout","buttonVariant","locale","formatters","components","props","defaultClassNames","getDefaultClassNames","jsx","DayPicker","cn","date","buttonVariants","rootRef","orientation","ChevronLeftIcon","ChevronRightIcon","ChevronDownIcon","CalendarDayButton","children","day","modifiers","ref","React","Button"],"mappings":"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"}
1
+ {"version":3,"file":"calendar.cjs","sources":["../../../src/components/ui/calendar.tsx"],"sourcesContent":["import { ChevronLeftIcon, ChevronRightIcon, ChevronDownIcon } from \"lucide-react\"\nimport * as React from \"react\"\nimport {\n DayPicker,\n getDefaultClassNames,\n type DayButton,\n type Locale,\n} from \"react-day-picker\"\n\nimport { Button, buttonVariants } from \"@/components/ui/button\"\nimport { cn } from \"@/lib/utils\"\n\nfunction Calendar({\n className,\n classNames,\n showOutsideDays = true,\n captionLayout = \"label\",\n buttonVariant = \"ghost\",\n locale,\n formatters,\n components,\n ...props\n}: React.ComponentProps<typeof DayPicker> & {\n buttonVariant?: React.ComponentProps<typeof Button>[\"variant\"]\n}) {\n const defaultClassNames = getDefaultClassNames()\n\n return (\n <DayPicker\n showOutsideDays={showOutsideDays}\n className={cn(\n \"group/calendar bg-background p-2 [--cell-radius:var(--radius-md)] [--cell-size:--spacing(7)] in-data-[slot=card-content]:bg-transparent in-data-[slot=popover-content]:bg-transparent\",\n String.raw`rtl:**:[.rdp-button\\_next>svg]:rotate-180`,\n String.raw`rtl:**:[.rdp-button\\_previous>svg]:rotate-180`,\n className\n )}\n captionLayout={captionLayout}\n locale={locale}\n formatters={{\n formatMonthDropdown: (date) =>\n date.toLocaleString(locale?.code, { month: \"short\" }),\n ...formatters,\n }}\n classNames={{\n root: cn(\"w-fit\", defaultClassNames.root),\n months: cn(\n \"relative flex flex-col gap-4 md:flex-row\",\n defaultClassNames.months\n ),\n month: cn(\"flex w-full flex-col gap-4\", defaultClassNames.month),\n nav: cn(\n \"absolute inset-x-0 top-0 flex w-full items-center justify-between gap-1\",\n defaultClassNames.nav\n ),\n button_previous: cn(\n buttonVariants({ variant: buttonVariant }),\n \"size-(--cell-size) p-0 select-none aria-disabled:opacity-50\",\n defaultClassNames.button_previous\n ),\n button_next: cn(\n buttonVariants({ variant: buttonVariant }),\n \"size-(--cell-size) p-0 select-none aria-disabled:opacity-50\",\n defaultClassNames.button_next\n ),\n month_caption: cn(\n \"flex h-(--cell-size) w-full items-center justify-center px-(--cell-size)\",\n defaultClassNames.month_caption\n ),\n dropdowns: cn(\n \"flex h-(--cell-size) w-full items-center justify-center gap-1.5 text-sm font-medium\",\n defaultClassNames.dropdowns\n ),\n dropdown_root: cn(\n \"relative rounded-(--cell-radius)\",\n defaultClassNames.dropdown_root\n ),\n dropdown: cn(\n \"absolute inset-0 bg-popover opacity-0\",\n defaultClassNames.dropdown\n ),\n caption_label: cn(\n \"font-medium select-none\",\n captionLayout === \"label\"\n ? \"text-sm\"\n : \"flex items-center gap-1 rounded-(--cell-radius) text-sm [&>svg]:size-3.5 [&>svg]:text-muted-foreground\",\n defaultClassNames.caption_label\n ),\n table: \"w-full border-collapse\",\n weekdays: cn(\"flex\", defaultClassNames.weekdays),\n weekday: cn(\n \"flex-1 rounded-(--cell-radius) text-[0.8rem] font-normal text-muted-foreground select-none\",\n defaultClassNames.weekday\n ),\n week: cn(\"mt-2 flex w-full\", defaultClassNames.week),\n week_number_header: cn(\n \"w-(--cell-size) select-none\",\n defaultClassNames.week_number_header\n ),\n week_number: cn(\n \"text-[0.8rem] text-muted-foreground select-none\",\n defaultClassNames.week_number\n ),\n day: cn(\n \"group/day relative aspect-square h-full w-full rounded-(--cell-radius) p-0 text-center select-none [&:last-child[data-selected=true]_button]:rounded-r-(--cell-radius)\",\n props.showWeekNumber\n ? \"[&:nth-child(2)[data-selected=true]_button]:rounded-l-(--cell-radius)\"\n : \"[&:first-child[data-selected=true]_button]:rounded-l-(--cell-radius)\",\n defaultClassNames.day\n ),\n range_start: cn(\n \"relative isolate z-0 rounded-l-(--cell-radius) bg-muted after:absolute after:inset-y-0 after:right-0 after:w-4 after:bg-muted\",\n defaultClassNames.range_start\n ),\n range_middle: cn(\"rounded-none\", defaultClassNames.range_middle),\n range_end: cn(\n \"relative isolate z-0 rounded-r-(--cell-radius) bg-muted after:absolute after:inset-y-0 after:left-0 after:w-4 after:bg-muted\",\n defaultClassNames.range_end\n ),\n today: cn(\n \"rounded-(--cell-radius) bg-muted text-foreground data-[selected=true]:rounded-none\",\n defaultClassNames.today\n ),\n outside: cn(\n \"text-muted-foreground aria-selected:text-muted-foreground\",\n defaultClassNames.outside\n ),\n disabled: cn(\n \"text-muted-foreground opacity-50\",\n defaultClassNames.disabled\n ),\n hidden: cn(\"invisible\", defaultClassNames.hidden),\n ...classNames,\n }}\n components={{\n Root: ({ className, rootRef, ...props }) => {\n return (\n <div\n data-slot=\"calendar\"\n ref={rootRef}\n className={cn(className)}\n {...props}\n />\n )\n },\n Chevron: ({ className, orientation, ...props }) => {\n if (orientation === \"left\") {\n return (\n <ChevronLeftIcon className={cn(\"size-4\", className)} {...props} />\n )\n }\n\n if (orientation === \"right\") {\n return (\n <ChevronRightIcon className={cn(\"size-4\", className)} {...props} />\n )\n }\n\n return (\n <ChevronDownIcon className={cn(\"size-4\", className)} {...props} />\n )\n },\n DayButton: ({ ...props }) => (\n <CalendarDayButton locale={locale} {...props} />\n ),\n WeekNumber: ({ children, ...props }) => {\n return (\n <th {...props}>\n <div className=\"flex size-(--cell-size) items-center justify-center text-center\">\n {children}\n </div>\n </th>\n )\n },\n ...components,\n }}\n {...props}\n />\n )\n}\n\nfunction CalendarDayButton({\n className,\n day,\n modifiers,\n locale,\n ...props\n}: React.ComponentProps<typeof DayButton> & { locale?: Partial<Locale> }) {\n const defaultClassNames = getDefaultClassNames()\n\n const ref = React.useRef<HTMLButtonElement>(null)\n React.useEffect(() => {\n if (modifiers.focused) ref.current?.focus()\n }, [modifiers.focused])\n\n return (\n <Button\n ref={ref}\n variant=\"ghost\"\n size=\"icon\"\n data-day={day.date.toLocaleDateString(locale?.code)}\n data-selected-single={\n modifiers.selected &&\n !modifiers.range_start &&\n !modifiers.range_end &&\n !modifiers.range_middle\n }\n data-range-start={modifiers.range_start}\n data-range-end={modifiers.range_end}\n data-range-middle={modifiers.range_middle}\n className={cn(\n \"relative isolate z-10 flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 border-0 leading-none font-normal group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:shadow-focus data-[range-end=true]:rounded-(--cell-radius) data-[range-end=true]:rounded-r-(--cell-radius) data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground data-[range-middle=true]:rounded-none data-[range-middle=true]:bg-muted data-[range-middle=true]:text-foreground data-[range-start=true]:rounded-(--cell-radius) data-[range-start=true]:rounded-l-(--cell-radius) data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground dark:hover:text-foreground [&>span]:text-xs [&>span]:opacity-70\",\n defaultClassNames.day,\n className\n )}\n {...props}\n />\n )\n}\n\nexport { Calendar, CalendarDayButton }\n"],"names":["Calendar","className","classNames","showOutsideDays","captionLayout","buttonVariant","locale","formatters","components","props","defaultClassNames","getDefaultClassNames","jsx","DayPicker","cn","date","buttonVariants","rootRef","orientation","ChevronLeftIcon","ChevronRightIcon","ChevronDownIcon","CalendarDayButton","children","day","modifiers","ref","React","Button"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { jsx as d } from "react/jsx-runtime";
2
- import { ChevronLeftIcon as w, ChevronRightIcon as y, ChevronDownIcon as h } from "lucide-react";
2
+ import { ChevronLeftIcon as w, ChevronRightIcon as h, ChevronDownIcon as y } from "lucide-react";
3
3
  import * as m from "react";
4
4
  import { getDefaultClassNames as b, DayPicker as _ } from "react-day-picker";
5
5
  import { buttonVariants as p, Button as v } from "./button.js";
@@ -128,9 +128,9 @@ function R({
128
128
  ...l
129
129
  }
130
130
  ),
131
- Chevron: ({ className: a, orientation: n, ...l }) => n === "left" ? /* @__PURE__ */ d(w, { className: e("size-4", a), ...l }) : n === "right" ? /* @__PURE__ */ d(y, { className: e("size-4", a), ...l }) : /* @__PURE__ */ d(h, { className: e("size-4", a), ...l }),
131
+ Chevron: ({ className: a, orientation: n, ...l }) => n === "left" ? /* @__PURE__ */ d(w, { className: e("size-4", a), ...l }) : n === "right" ? /* @__PURE__ */ d(h, { className: e("size-4", a), ...l }) : /* @__PURE__ */ d(y, { className: e("size-4", a), ...l }),
132
132
  DayButton: ({ ...a }) => /* @__PURE__ */ d(z, { locale: o, ...a }),
133
- WeekNumber: ({ children: a, ...n }) => /* @__PURE__ */ d("td", { ...n, children: /* @__PURE__ */ d("div", { className: "flex size-(--cell-size) items-center justify-center text-center", children: a }) }),
133
+ WeekNumber: ({ children: a, ...n }) => /* @__PURE__ */ d("th", { ...n, children: /* @__PURE__ */ d("div", { className: "flex size-(--cell-size) items-center justify-center text-center", children: a }) }),
134
134
  ...x
135
135
  },
136
136
  ...f
@@ -1 +1 @@
1
- {"version":3,"file":"calendar.js","sources":["../../../src/components/ui/calendar.tsx"],"sourcesContent":["import { ChevronLeftIcon, ChevronRightIcon, ChevronDownIcon } from \"lucide-react\"\nimport * as React from \"react\"\nimport {\n DayPicker,\n getDefaultClassNames,\n type DayButton,\n type Locale,\n} from \"react-day-picker\"\n\nimport { Button, buttonVariants } from \"@/components/ui/button\"\nimport { cn } from \"@/lib/utils\"\n\nfunction Calendar({\n className,\n classNames,\n showOutsideDays = true,\n captionLayout = \"label\",\n buttonVariant = \"ghost\",\n locale,\n formatters,\n components,\n ...props\n}: React.ComponentProps<typeof DayPicker> & {\n buttonVariant?: React.ComponentProps<typeof Button>[\"variant\"]\n}) {\n const defaultClassNames = getDefaultClassNames()\n\n return (\n <DayPicker\n showOutsideDays={showOutsideDays}\n className={cn(\n \"group/calendar bg-background p-2 [--cell-radius:var(--radius-md)] [--cell-size:--spacing(7)] in-data-[slot=card-content]:bg-transparent in-data-[slot=popover-content]:bg-transparent\",\n String.raw`rtl:**:[.rdp-button\\_next>svg]:rotate-180`,\n String.raw`rtl:**:[.rdp-button\\_previous>svg]:rotate-180`,\n className\n )}\n captionLayout={captionLayout}\n locale={locale}\n formatters={{\n formatMonthDropdown: (date) =>\n date.toLocaleString(locale?.code, { month: \"short\" }),\n ...formatters,\n }}\n classNames={{\n root: cn(\"w-fit\", defaultClassNames.root),\n months: cn(\n \"relative flex flex-col gap-4 md:flex-row\",\n defaultClassNames.months\n ),\n month: cn(\"flex w-full flex-col gap-4\", defaultClassNames.month),\n nav: cn(\n \"absolute inset-x-0 top-0 flex w-full items-center justify-between gap-1\",\n defaultClassNames.nav\n ),\n button_previous: cn(\n buttonVariants({ variant: buttonVariant }),\n \"size-(--cell-size) p-0 select-none aria-disabled:opacity-50\",\n defaultClassNames.button_previous\n ),\n button_next: cn(\n buttonVariants({ variant: buttonVariant }),\n \"size-(--cell-size) p-0 select-none aria-disabled:opacity-50\",\n defaultClassNames.button_next\n ),\n month_caption: cn(\n \"flex h-(--cell-size) w-full items-center justify-center px-(--cell-size)\",\n defaultClassNames.month_caption\n ),\n dropdowns: cn(\n \"flex h-(--cell-size) w-full items-center justify-center gap-1.5 text-sm font-medium\",\n defaultClassNames.dropdowns\n ),\n dropdown_root: cn(\n \"relative rounded-(--cell-radius)\",\n defaultClassNames.dropdown_root\n ),\n dropdown: cn(\n \"absolute inset-0 bg-popover opacity-0\",\n defaultClassNames.dropdown\n ),\n caption_label: cn(\n \"font-medium select-none\",\n captionLayout === \"label\"\n ? \"text-sm\"\n : \"flex items-center gap-1 rounded-(--cell-radius) text-sm [&>svg]:size-3.5 [&>svg]:text-muted-foreground\",\n defaultClassNames.caption_label\n ),\n table: \"w-full border-collapse\",\n weekdays: cn(\"flex\", defaultClassNames.weekdays),\n weekday: cn(\n \"flex-1 rounded-(--cell-radius) text-[0.8rem] font-normal text-muted-foreground select-none\",\n defaultClassNames.weekday\n ),\n week: cn(\"mt-2 flex w-full\", defaultClassNames.week),\n week_number_header: cn(\n \"w-(--cell-size) select-none\",\n defaultClassNames.week_number_header\n ),\n week_number: cn(\n \"text-[0.8rem] text-muted-foreground select-none\",\n defaultClassNames.week_number\n ),\n day: cn(\n \"group/day relative aspect-square h-full w-full rounded-(--cell-radius) p-0 text-center select-none [&:last-child[data-selected=true]_button]:rounded-r-(--cell-radius)\",\n props.showWeekNumber\n ? \"[&:nth-child(2)[data-selected=true]_button]:rounded-l-(--cell-radius)\"\n : \"[&:first-child[data-selected=true]_button]:rounded-l-(--cell-radius)\",\n defaultClassNames.day\n ),\n range_start: cn(\n \"relative isolate z-0 rounded-l-(--cell-radius) bg-muted after:absolute after:inset-y-0 after:right-0 after:w-4 after:bg-muted\",\n defaultClassNames.range_start\n ),\n range_middle: cn(\"rounded-none\", defaultClassNames.range_middle),\n range_end: cn(\n \"relative isolate z-0 rounded-r-(--cell-radius) bg-muted after:absolute after:inset-y-0 after:left-0 after:w-4 after:bg-muted\",\n defaultClassNames.range_end\n ),\n today: cn(\n \"rounded-(--cell-radius) bg-muted text-foreground data-[selected=true]:rounded-none\",\n defaultClassNames.today\n ),\n outside: cn(\n \"text-muted-foreground aria-selected:text-muted-foreground\",\n defaultClassNames.outside\n ),\n disabled: cn(\n \"text-muted-foreground opacity-50\",\n defaultClassNames.disabled\n ),\n hidden: cn(\"invisible\", defaultClassNames.hidden),\n ...classNames,\n }}\n components={{\n Root: ({ className, rootRef, ...props }) => {\n return (\n <div\n data-slot=\"calendar\"\n ref={rootRef}\n className={cn(className)}\n {...props}\n />\n )\n },\n Chevron: ({ className, orientation, ...props }) => {\n if (orientation === \"left\") {\n return (\n <ChevronLeftIcon className={cn(\"size-4\", className)} {...props} />\n )\n }\n\n if (orientation === \"right\") {\n return (\n <ChevronRightIcon className={cn(\"size-4\", className)} {...props} />\n )\n }\n\n return (\n <ChevronDownIcon className={cn(\"size-4\", className)} {...props} />\n )\n },\n DayButton: ({ ...props }) => (\n <CalendarDayButton locale={locale} {...props} />\n ),\n WeekNumber: ({ children, ...props }) => {\n return (\n <td {...props}>\n <div className=\"flex size-(--cell-size) items-center justify-center text-center\">\n {children}\n </div>\n </td>\n )\n },\n ...components,\n }}\n {...props}\n />\n )\n}\n\nfunction CalendarDayButton({\n className,\n day,\n modifiers,\n locale,\n ...props\n}: React.ComponentProps<typeof DayButton> & { locale?: Partial<Locale> }) {\n const defaultClassNames = getDefaultClassNames()\n\n const ref = React.useRef<HTMLButtonElement>(null)\n React.useEffect(() => {\n if (modifiers.focused) ref.current?.focus()\n }, [modifiers.focused])\n\n return (\n <Button\n ref={ref}\n variant=\"ghost\"\n size=\"icon\"\n data-day={day.date.toLocaleDateString(locale?.code)}\n data-selected-single={\n modifiers.selected &&\n !modifiers.range_start &&\n !modifiers.range_end &&\n !modifiers.range_middle\n }\n data-range-start={modifiers.range_start}\n data-range-end={modifiers.range_end}\n data-range-middle={modifiers.range_middle}\n className={cn(\n \"relative isolate z-10 flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 border-0 leading-none font-normal group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:shadow-focus data-[range-end=true]:rounded-(--cell-radius) data-[range-end=true]:rounded-r-(--cell-radius) data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground data-[range-middle=true]:rounded-none data-[range-middle=true]:bg-muted data-[range-middle=true]:text-foreground data-[range-start=true]:rounded-(--cell-radius) data-[range-start=true]:rounded-l-(--cell-radius) data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground dark:hover:text-foreground [&>span]:text-xs [&>span]:opacity-70\",\n defaultClassNames.day,\n className\n )}\n {...props}\n />\n )\n}\n\nexport { Calendar, CalendarDayButton }\n"],"names":["Calendar","className","classNames","showOutsideDays","captionLayout","buttonVariant","locale","formatters","components","props","defaultClassNames","getDefaultClassNames","jsx","DayPicker","cn","date","buttonVariants","rootRef","orientation","ChevronLeftIcon","ChevronRightIcon","ChevronDownIcon","CalendarDayButton","children","day","modifiers","ref","React","Button"],"mappings":"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"}
1
+ {"version":3,"file":"calendar.js","sources":["../../../src/components/ui/calendar.tsx"],"sourcesContent":["import { ChevronLeftIcon, ChevronRightIcon, ChevronDownIcon } from \"lucide-react\"\nimport * as React from \"react\"\nimport {\n DayPicker,\n getDefaultClassNames,\n type DayButton,\n type Locale,\n} from \"react-day-picker\"\n\nimport { Button, buttonVariants } from \"@/components/ui/button\"\nimport { cn } from \"@/lib/utils\"\n\nfunction Calendar({\n className,\n classNames,\n showOutsideDays = true,\n captionLayout = \"label\",\n buttonVariant = \"ghost\",\n locale,\n formatters,\n components,\n ...props\n}: React.ComponentProps<typeof DayPicker> & {\n buttonVariant?: React.ComponentProps<typeof Button>[\"variant\"]\n}) {\n const defaultClassNames = getDefaultClassNames()\n\n return (\n <DayPicker\n showOutsideDays={showOutsideDays}\n className={cn(\n \"group/calendar bg-background p-2 [--cell-radius:var(--radius-md)] [--cell-size:--spacing(7)] in-data-[slot=card-content]:bg-transparent in-data-[slot=popover-content]:bg-transparent\",\n String.raw`rtl:**:[.rdp-button\\_next>svg]:rotate-180`,\n String.raw`rtl:**:[.rdp-button\\_previous>svg]:rotate-180`,\n className\n )}\n captionLayout={captionLayout}\n locale={locale}\n formatters={{\n formatMonthDropdown: (date) =>\n date.toLocaleString(locale?.code, { month: \"short\" }),\n ...formatters,\n }}\n classNames={{\n root: cn(\"w-fit\", defaultClassNames.root),\n months: cn(\n \"relative flex flex-col gap-4 md:flex-row\",\n defaultClassNames.months\n ),\n month: cn(\"flex w-full flex-col gap-4\", defaultClassNames.month),\n nav: cn(\n \"absolute inset-x-0 top-0 flex w-full items-center justify-between gap-1\",\n defaultClassNames.nav\n ),\n button_previous: cn(\n buttonVariants({ variant: buttonVariant }),\n \"size-(--cell-size) p-0 select-none aria-disabled:opacity-50\",\n defaultClassNames.button_previous\n ),\n button_next: cn(\n buttonVariants({ variant: buttonVariant }),\n \"size-(--cell-size) p-0 select-none aria-disabled:opacity-50\",\n defaultClassNames.button_next\n ),\n month_caption: cn(\n \"flex h-(--cell-size) w-full items-center justify-center px-(--cell-size)\",\n defaultClassNames.month_caption\n ),\n dropdowns: cn(\n \"flex h-(--cell-size) w-full items-center justify-center gap-1.5 text-sm font-medium\",\n defaultClassNames.dropdowns\n ),\n dropdown_root: cn(\n \"relative rounded-(--cell-radius)\",\n defaultClassNames.dropdown_root\n ),\n dropdown: cn(\n \"absolute inset-0 bg-popover opacity-0\",\n defaultClassNames.dropdown\n ),\n caption_label: cn(\n \"font-medium select-none\",\n captionLayout === \"label\"\n ? \"text-sm\"\n : \"flex items-center gap-1 rounded-(--cell-radius) text-sm [&>svg]:size-3.5 [&>svg]:text-muted-foreground\",\n defaultClassNames.caption_label\n ),\n table: \"w-full border-collapse\",\n weekdays: cn(\"flex\", defaultClassNames.weekdays),\n weekday: cn(\n \"flex-1 rounded-(--cell-radius) text-[0.8rem] font-normal text-muted-foreground select-none\",\n defaultClassNames.weekday\n ),\n week: cn(\"mt-2 flex w-full\", defaultClassNames.week),\n week_number_header: cn(\n \"w-(--cell-size) select-none\",\n defaultClassNames.week_number_header\n ),\n week_number: cn(\n \"text-[0.8rem] text-muted-foreground select-none\",\n defaultClassNames.week_number\n ),\n day: cn(\n \"group/day relative aspect-square h-full w-full rounded-(--cell-radius) p-0 text-center select-none [&:last-child[data-selected=true]_button]:rounded-r-(--cell-radius)\",\n props.showWeekNumber\n ? \"[&:nth-child(2)[data-selected=true]_button]:rounded-l-(--cell-radius)\"\n : \"[&:first-child[data-selected=true]_button]:rounded-l-(--cell-radius)\",\n defaultClassNames.day\n ),\n range_start: cn(\n \"relative isolate z-0 rounded-l-(--cell-radius) bg-muted after:absolute after:inset-y-0 after:right-0 after:w-4 after:bg-muted\",\n defaultClassNames.range_start\n ),\n range_middle: cn(\"rounded-none\", defaultClassNames.range_middle),\n range_end: cn(\n \"relative isolate z-0 rounded-r-(--cell-radius) bg-muted after:absolute after:inset-y-0 after:left-0 after:w-4 after:bg-muted\",\n defaultClassNames.range_end\n ),\n today: cn(\n \"rounded-(--cell-radius) bg-muted text-foreground data-[selected=true]:rounded-none\",\n defaultClassNames.today\n ),\n outside: cn(\n \"text-muted-foreground aria-selected:text-muted-foreground\",\n defaultClassNames.outside\n ),\n disabled: cn(\n \"text-muted-foreground opacity-50\",\n defaultClassNames.disabled\n ),\n hidden: cn(\"invisible\", defaultClassNames.hidden),\n ...classNames,\n }}\n components={{\n Root: ({ className, rootRef, ...props }) => {\n return (\n <div\n data-slot=\"calendar\"\n ref={rootRef}\n className={cn(className)}\n {...props}\n />\n )\n },\n Chevron: ({ className, orientation, ...props }) => {\n if (orientation === \"left\") {\n return (\n <ChevronLeftIcon className={cn(\"size-4\", className)} {...props} />\n )\n }\n\n if (orientation === \"right\") {\n return (\n <ChevronRightIcon className={cn(\"size-4\", className)} {...props} />\n )\n }\n\n return (\n <ChevronDownIcon className={cn(\"size-4\", className)} {...props} />\n )\n },\n DayButton: ({ ...props }) => (\n <CalendarDayButton locale={locale} {...props} />\n ),\n WeekNumber: ({ children, ...props }) => {\n return (\n <th {...props}>\n <div className=\"flex size-(--cell-size) items-center justify-center text-center\">\n {children}\n </div>\n </th>\n )\n },\n ...components,\n }}\n {...props}\n />\n )\n}\n\nfunction CalendarDayButton({\n className,\n day,\n modifiers,\n locale,\n ...props\n}: React.ComponentProps<typeof DayButton> & { locale?: Partial<Locale> }) {\n const defaultClassNames = getDefaultClassNames()\n\n const ref = React.useRef<HTMLButtonElement>(null)\n React.useEffect(() => {\n if (modifiers.focused) ref.current?.focus()\n }, [modifiers.focused])\n\n return (\n <Button\n ref={ref}\n variant=\"ghost\"\n size=\"icon\"\n data-day={day.date.toLocaleDateString(locale?.code)}\n data-selected-single={\n modifiers.selected &&\n !modifiers.range_start &&\n !modifiers.range_end &&\n !modifiers.range_middle\n }\n data-range-start={modifiers.range_start}\n data-range-end={modifiers.range_end}\n data-range-middle={modifiers.range_middle}\n className={cn(\n \"relative isolate z-10 flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 border-0 leading-none font-normal group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:shadow-focus data-[range-end=true]:rounded-(--cell-radius) data-[range-end=true]:rounded-r-(--cell-radius) data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground data-[range-middle=true]:rounded-none data-[range-middle=true]:bg-muted data-[range-middle=true]:text-foreground data-[range-start=true]:rounded-(--cell-radius) data-[range-start=true]:rounded-l-(--cell-radius) data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground dark:hover:text-foreground [&>span]:text-xs [&>span]:opacity-70\",\n defaultClassNames.day,\n className\n )}\n {...props}\n />\n )\n}\n\nexport { Calendar, CalendarDayButton }\n"],"names":["Calendar","className","classNames","showOutsideDays","captionLayout","buttonVariant","locale","formatters","components","props","defaultClassNames","getDefaultClassNames","jsx","DayPicker","cn","date","buttonVariants","rootRef","orientation","ChevronLeftIcon","ChevronRightIcon","ChevronDownIcon","CalendarDayButton","children","day","modifiers","ref","React","Button"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),x=require("lucide-react"),c=require("react"),w=require("shiki"),L=require("./button.cjs"),C=require("./select.cjs"),a=require("../../lib/utils.cjs"),N=e=>e&&e&1,I=e=>e&&e&2,M=e=>e&&e&4,R=e=>e.map((t,o)=>({key:`line-${o}`,tokens:t.map((n,l)=>({key:`line-${o}-${l}`,token:n}))})),E=({token:e})=>s.jsx("span",{className:"dark:!bg-[var(--shiki-dark-bg)] dark:!text-[var(--shiki-dark)]",style:{backgroundColor:e.bgColor,color:e.color,fontStyle:N(e.fontStyle)?"italic":void 0,fontWeight:I(e.fontStyle)?"bold":void 0,textDecoration:M(e.fontStyle)?"underline":void 0,...e.htmlStyle},children:e.content}),q=a.cn("block","before:content-[counter(line)]","before:inline-block","before:[counter-increment:line]","before:w-8","before:mr-4","before:text-right","before:text-muted-foreground/50","before:font-mono","before:select-none"),$=({keyedLine:e,showLineNumbers:t})=>s.jsx("span",{className:t?q:"block",children:e.tokens.length===0?`
2
- `:e.tokens.map(({token:o,key:n})=>s.jsx(E,{token:o},n))}),y=c.createContext({code:""}),B=new Map,p=new Map,h=new Map,f=100,A=(e,t)=>{const o=e.slice(0,f),n=e.length>f?e.slice(-f):"";return`${t}:${e.length}:${o}:${n}`},H=e=>{const t=B.get(e);if(t)return t;const o=w.createHighlighter({langs:[e],themes:["github-light","github-dark"]});return B.set(e,o),o},_=e=>({bg:"transparent",fg:"inherit",tokens:e.split(`
3
- `).map(t=>t===""?[]:[{color:"inherit",content:t}])}),b=(e,t,o)=>{const n=A(e,t),l=p.get(n);return l||(o&&(h.has(n)||h.set(n,new Set),h.get(n)?.add(o)),H(t).then(r=>{const d=r.getLoadedLanguages().includes(t)?t:"text",u=r.codeToTokens(e,{lang:d,themes:{dark:"github-dark",light:"github-light"}}),g={bg:u.bg??"transparent",fg:u.fg??"inherit",tokens:u.tokens};p.set(n,g);const k=h.get(n);if(k){for(const m of k)m(g);h.delete(n)}}).catch(r=>{console.error("Failed to highlight code:",r),h.delete(n)}),null)},S=c.memo(({tokenized:e,showLineNumbers:t,className:o})=>{const n=c.useMemo(()=>({backgroundColor:e.bg,color:e.fg}),[e.bg,e.fg]),l=c.useMemo(()=>R(e.tokens),[e.tokens]);return s.jsx("pre",{className:a.cn("dark:!bg-[var(--shiki-dark-bg)] dark:!text-[var(--shiki-dark)] m-0 p-4 text-sm",o),style:n,children:s.jsx("code",{className:a.cn("font-mono text-sm",t&&"[counter-increment:line_0] [counter-reset:line]"),children:l.map(r=>s.jsx($,{keyedLine:r,showLineNumbers:t},r.key))})})},(e,t)=>e.tokenized===t.tokenized&&e.showLineNumbers===t.showLineNumbers&&e.className===t.className);S.displayName="CodeBlockBody";const j=({className:e,language:t,style:o,...n})=>s.jsx("div",{className:a.cn("group relative w-full overflow-hidden rounded-md border bg-background text-foreground",e),"data-language":t,style:{containIntrinsicSize:"auto 200px",contentVisibility:"auto",...o},...n}),K=({children:e,className:t,...o})=>s.jsx("div",{className:a.cn("flex items-center justify-between border-b bg-muted/80 px-3 py-2 text-muted-foreground text-xs",t),...o,children:e}),V=({children:e,className:t,...o})=>s.jsx("div",{className:a.cn("flex items-center gap-2",t),...o,children:e}),z=({children:e,className:t,...o})=>s.jsx("span",{className:a.cn("font-mono",t),...o,children:e}),F=({children:e,className:t,...o})=>s.jsx("div",{className:a.cn("-my-1 -mr-1 flex items-center gap-2",t),...o,children:e}),T=({code:e,language:t,showLineNumbers:o=!1})=>{const n=c.useMemo(()=>_(e),[e]),l=c.useMemo(()=>b(e,t)??n,[e,t,n]),[r,i]=c.useState(null),d=c.useRef({code:e,language:t});(d.current.code!==e||d.current.language!==t)&&(d.current={code:e,language:t},i(null)),c.useEffect(()=>{let g=!1;return b(e,t,k=>{g||i(k)}),()=>{g=!0}},[e,t]);const u=r??l;return s.jsx("div",{className:"relative overflow-auto",children:s.jsx(S,{showLineNumbers:o,tokenized:u})})},U=({code:e,language:t,showLineNumbers:o=!1,className:n,children:l,...r})=>{const i=c.useMemo(()=>({code:e}),[e]);return s.jsx(y.Provider,{value:i,children:s.jsxs(j,{className:n,language:t,...r,children:[l,s.jsx(T,{code:e,language:t,showLineNumbers:o})]})})},D=({onCopy:e,onError:t,timeout:o=2e3,children:n,className:l,...r})=>{const[i,d]=c.useState(!1),u=c.useRef(0),{code:g}=c.useContext(y),k=c.useCallback(async()=>{if(typeof window>"u"||!navigator?.clipboard?.writeText){t?.(new Error("Clipboard API not available"));return}try{i||(await navigator.clipboard.writeText(g),d(!0),e?.(),u.current=window.setTimeout(()=>d(!1),o))}catch(v){t?.(v)}},[g,e,t,o,i]);c.useEffect(()=>()=>{window.clearTimeout(u.current)},[]);const m=i?x.CheckIcon:x.CopyIcon;return s.jsx(L.Button,{className:a.cn("shrink-0",l),onClick:k,size:"icon",variant:"ghost",...r,children:n??s.jsx(m,{size:14})})},G=e=>s.jsx(C.Select,{...e}),O=({className:e,...t})=>s.jsx(C.SelectTrigger,{className:a.cn("h-7 border-none bg-transparent px-2 text-xs shadow-none",e),size:"sm",...t}),W=e=>s.jsx(C.SelectValue,{...e}),Y=({align:e="end",...t})=>s.jsx(C.SelectContent,{align:e,...t}),J=e=>s.jsx(C.SelectItem,{...e});exports.CodeBlock=U;exports.CodeBlockActions=F;exports.CodeBlockContainer=j;exports.CodeBlockContent=T;exports.CodeBlockCopyButton=D;exports.CodeBlockFilename=z;exports.CodeBlockHeader=K;exports.CodeBlockLanguageSelector=G;exports.CodeBlockLanguageSelectorContent=Y;exports.CodeBlockLanguageSelectorItem=J;exports.CodeBlockLanguageSelectorTrigger=O;exports.CodeBlockLanguageSelectorValue=W;exports.CodeBlockTitle=V;exports.highlightCode=b;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),b=require("lucide-react"),c=require("react"),w=require("./button.cjs"),f=require("./select.cjs"),T=require("../../lib/shiki.cjs"),l=require("../../lib/utils.cjs"),N=e=>e&&e&1,L=e=>e&&e&2,I=e=>e&&e&4,R=e=>e.map((t,o)=>({key:`line-${o}`,tokens:t.map((n,r)=>({key:`line-${o}-${r}`,token:n}))})),E=({token:e})=>s.jsx("span",{className:"dark:!bg-[var(--shiki-dark-bg)] dark:!text-[var(--shiki-dark)]",style:{backgroundColor:e.bgColor,color:e.color,fontStyle:N(e.fontStyle)?"italic":void 0,fontWeight:L(e.fontStyle)?"bold":void 0,textDecoration:I(e.fontStyle)?"underline":void 0,...e.htmlStyle},children:e.content}),M=l.cn("block","before:content-[counter(line)]","before:inline-block","before:[counter-increment:line]","before:w-8","before:mr-4","before:text-right","before:text-muted-foreground/50","before:font-mono","before:select-none"),_=({keyedLine:e,showLineNumbers:t})=>s.jsx("span",{className:t?M:"block",children:e.tokens.length===0?`
2
+ `:e.tokens.map(({token:o,key:n})=>s.jsx(E,{token:o},n))}),v=c.createContext({code:""}),q={"github-light":{"#24292e":"var(--shiki-fg)","#6a737d":"var(--shiki-comment)","#586069":"var(--shiki-comment)","#d73a49":"var(--shiki-keyword)","#b31d28":"var(--shiki-keyword)","#005cc5":"var(--shiki-constant)","#6f42c1":"var(--shiki-entity)","#22863a":"var(--shiki-tag)","#032f62":"var(--shiki-string)","#e36209":"var(--shiki-variable)"},"github-dark":{"#e1e4e8":"var(--shiki-fg)","#6a737d":"var(--shiki-comment)","#d1d5da":"var(--shiki-comment)","#f97583":"var(--shiki-keyword)","#fdaeb7":"var(--shiki-keyword)","#79b8ff":"var(--shiki-constant)","#b392f0":"var(--shiki-entity)","#85e89d":"var(--shiki-tag)","#9ecbff":"var(--shiki-string)","#dbedff":"var(--shiki-string)","#ffab70":"var(--shiki-variable)"}},x=new Map,h=new Map,m=100,z=(e,t)=>{const o=e.slice(0,m),n=e.length>m?e.slice(-m):"";return`${t}:${e.length}:${o}:${n}`},A=e=>({bg:"transparent",fg:"inherit",tokens:e.split(`
3
+ `).map(t=>t===""?[]:[{color:"inherit",content:t}])}),C=(e,t,o)=>{const n=z(e,t),r=x.get(n);return r||(o&&(h.has(n)||h.set(n,new Set),h.get(n)?.add(o)),T.getCodeBlockHighlighter(t).then(({highlighter:d,lang:i})=>{const a=d.codeToTokens(e,{colorReplacements:q,lang:i,themes:{dark:"github-dark",light:"github-light"}}),u={bg:a.bg??"transparent",fg:a.fg??"inherit",tokens:a.tokens};x.set(n,u);const k=h.get(n);if(k){for(const g of k)g(u);h.delete(n)}}).catch(d=>{console.error("Failed to highlight code:",d),h.delete(n)}),null)},B=c.memo(({tokenized:e,showLineNumbers:t,className:o})=>{const n=c.useMemo(()=>R(e.tokens),[e.tokens]);return s.jsx("pre",{className:l.cn("!bg-[var(--shiki-bg)] !text-[var(--shiki-fg)] m-0 p-4 text-sm",o),children:s.jsx("code",{className:l.cn("font-mono text-sm",t&&"[counter-increment:line_0] [counter-reset:line]"),children:n.map(r=>s.jsx(_,{keyedLine:r,showLineNumbers:t},r.key))})})},(e,t)=>e.tokenized===t.tokenized&&e.showLineNumbers===t.showLineNumbers&&e.className===t.className);B.displayName="CodeBlockBody";const y=({className:e,language:t,style:o,...n})=>s.jsx("div",{className:l.cn("group relative w-full overflow-hidden rounded-md border bg-background text-foreground",e),"data-language":t,style:{containIntrinsicSize:"auto 200px",contentVisibility:"auto",...o},...n}),$=({children:e,className:t,...o})=>s.jsx("div",{className:l.cn("flex items-center justify-between border-b bg-muted/80 px-3 py-2 text-muted-foreground text-xs",t),...o,children:e}),H=({children:e,className:t,...o})=>s.jsx("div",{className:l.cn("flex items-center gap-2",t),...o,children:e}),K=({children:e,className:t,...o})=>s.jsx("span",{className:l.cn("font-mono",t),...o,children:e}),V=({children:e,className:t,...o})=>s.jsx("div",{className:l.cn("-my-1 -mr-1 flex items-center gap-2",t),...o,children:e}),p=({code:e,language:t,showLineNumbers:o=!1})=>{const n=c.useMemo(()=>A(e),[e]),r=c.useMemo(()=>C(e,t)??n,[e,t,n]),[d,i]=c.useState(null),a=c.useRef({code:e,language:t});(a.current.code!==e||a.current.language!==t)&&(a.current={code:e,language:t},i(null)),c.useEffect(()=>{let k=!1;return C(e,t,g=>{k||i(g)}),()=>{k=!0}},[e,t]);const u=d??r;return s.jsx("div",{className:"relative overflow-auto",tabIndex:0,children:s.jsx(B,{showLineNumbers:o,tokenized:u})})},F=({code:e,language:t,showLineNumbers:o=!1,className:n,children:r,...d})=>{const i=c.useMemo(()=>({code:e}),[e]);return s.jsx(v.Provider,{value:i,children:s.jsxs(y,{className:n,language:t,...d,children:[r,s.jsx(p,{code:e,language:t,showLineNumbers:o})]})})},O=({onCopy:e,onError:t,timeout:o=2e3,children:n,className:r,...d})=>{const[i,a]=c.useState(!1),u=c.useRef(0),{code:k}=c.useContext(v),g=c.useCallback(async()=>{if(typeof window>"u"||!navigator?.clipboard?.writeText){t?.(new Error("Clipboard API not available"));return}try{i||(await navigator.clipboard.writeText(k),a(!0),e?.(),u.current=window.setTimeout(()=>a(!1),o))}catch(j){t?.(j)}},[k,e,t,o,i]);c.useEffect(()=>()=>{window.clearTimeout(u.current)},[]);const S=i?b.CheckIcon:b.CopyIcon;return s.jsx(w.Button,{"aria-label":"Copy code",className:l.cn("shrink-0",r),onClick:g,size:"icon",variant:"ghost",...d,children:n??s.jsx(S,{size:14})})},U=e=>s.jsx(f.Select,{...e}),D=({className:e,...t})=>s.jsx(f.SelectTrigger,{"aria-label":"Select language",className:l.cn("h-7 border-none bg-transparent px-2 text-xs shadow-none",e),size:"sm",...t}),G=e=>s.jsx(f.SelectValue,{...e}),W=({align:e="end",...t})=>s.jsx(f.SelectContent,{align:e,...t}),Y=e=>s.jsx(f.SelectItem,{...e});exports.CodeBlock=F;exports.CodeBlockActions=V;exports.CodeBlockContainer=y;exports.CodeBlockContent=p;exports.CodeBlockCopyButton=O;exports.CodeBlockFilename=K;exports.CodeBlockHeader=$;exports.CodeBlockLanguageSelector=U;exports.CodeBlockLanguageSelectorContent=W;exports.CodeBlockLanguageSelectorItem=Y;exports.CodeBlockLanguageSelectorTrigger=D;exports.CodeBlockLanguageSelectorValue=G;exports.CodeBlockTitle=H;exports.highlightCode=C;
4
4
  //# sourceMappingURL=code-block.cjs.map