@tetrascience-npm/tetrascience-react-ui 0.7.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1241) hide show
  1. package/README.md +58 -4
  2. package/dist/ai/attachments.cjs +2 -0
  3. package/dist/ai/attachments.cjs.map +1 -0
  4. package/dist/ai/attachments.js +224 -0
  5. package/dist/ai/attachments.js.map +1 -0
  6. package/dist/ai/chain-of-thought.cjs +2 -0
  7. package/dist/ai/chain-of-thought.cjs.map +1 -0
  8. package/dist/ai/chain-of-thought.js +145 -0
  9. package/dist/ai/chain-of-thought.js.map +1 -0
  10. package/dist/ai/confirmation.cjs +2 -0
  11. package/dist/ai/confirmation.cjs.map +1 -0
  12. package/dist/ai/confirmation.js +109 -0
  13. package/dist/ai/confirmation.js.map +1 -0
  14. package/dist/ai/context.cjs +2 -0
  15. package/dist/ai/context.cjs.map +1 -0
  16. package/dist/ai/context.js +267 -0
  17. package/dist/ai/context.js.map +1 -0
  18. package/dist/ai/conversation.cjs +4 -0
  19. package/dist/ai/conversation.cjs.map +1 -0
  20. package/dist/ai/conversation.js +108 -0
  21. package/dist/ai/conversation.js.map +1 -0
  22. package/dist/ai/inline-citation.cjs +2 -0
  23. package/dist/ai/inline-citation.cjs.map +1 -0
  24. package/dist/ai/inline-citation.js +182 -0
  25. package/dist/ai/inline-citation.js.map +1 -0
  26. package/dist/ai/message.cjs +2 -0
  27. package/dist/ai/message.cjs.map +1 -0
  28. package/dist/ai/message.js +237 -0
  29. package/dist/ai/message.js.map +1 -0
  30. package/dist/ai/model-selector.cjs +2 -0
  31. package/dist/ai/model-selector.cjs.map +1 -0
  32. package/dist/ai/model-selector.js +77 -0
  33. package/dist/ai/model-selector.js.map +1 -0
  34. package/dist/ai/prompt-input.cjs +2 -0
  35. package/dist/ai/prompt-input.cjs.map +1 -0
  36. package/dist/ai/prompt-input.js +776 -0
  37. package/dist/ai/prompt-input.js.map +1 -0
  38. package/dist/ai/queue.cjs +2 -0
  39. package/dist/ai/queue.cjs.map +1 -0
  40. package/dist/ai/queue.js +209 -0
  41. package/dist/ai/queue.js.map +1 -0
  42. package/dist/ai/reasoning.cjs +2 -0
  43. package/dist/ai/reasoning.cjs.map +1 -0
  44. package/dist/ai/reasoning.js +129 -0
  45. package/dist/ai/reasoning.js.map +1 -0
  46. package/dist/ai/shimmer.cjs +2 -0
  47. package/dist/ai/shimmer.cjs.map +1 -0
  48. package/dist/ai/shimmer.js +49 -0
  49. package/dist/ai/shimmer.js.map +1 -0
  50. package/dist/ai/sources.cjs +2 -0
  51. package/dist/ai/sources.cjs.map +1 -0
  52. package/dist/ai/sources.js +54 -0
  53. package/dist/ai/sources.js.map +1 -0
  54. package/dist/ai/speech-input.cjs +2 -0
  55. package/dist/ai/speech-input.cjs.map +1 -0
  56. package/dist/ai/speech-input.js +123 -0
  57. package/dist/ai/speech-input.js.map +1 -0
  58. package/dist/ai/stream-status.cjs +2 -0
  59. package/dist/ai/stream-status.cjs.map +1 -0
  60. package/dist/ai/stream-status.js +108 -0
  61. package/dist/ai/stream-status.js.map +1 -0
  62. package/dist/ai/suggestion.cjs +2 -0
  63. package/dist/ai/suggestion.cjs.map +1 -0
  64. package/dist/ai/suggestion.js +38 -0
  65. package/dist/ai/suggestion.js.map +1 -0
  66. package/dist/ai/task.cjs +2 -0
  67. package/dist/ai/task.cjs.map +1 -0
  68. package/dist/ai/task.js +101 -0
  69. package/dist/ai/task.js.map +1 -0
  70. package/dist/ai/tool.cjs +2 -0
  71. package/dist/ai/tool.cjs.map +1 -0
  72. package/dist/ai/tool.js +139 -0
  73. package/dist/ai/tool.js.map +1 -0
  74. package/dist/charts/AreaPlot.cjs +2 -0
  75. package/dist/charts/AreaPlot.cjs.map +1 -0
  76. package/dist/charts/AreaPlot.js +5 -0
  77. package/dist/charts/AreaPlot.js.map +1 -0
  78. package/dist/charts/BarChart.cjs +2 -0
  79. package/dist/charts/BarChart.cjs.map +1 -0
  80. package/dist/charts/BarChart.js +5 -0
  81. package/dist/charts/BarChart.js.map +1 -0
  82. package/dist/charts/BoxPlot.cjs +2 -0
  83. package/dist/charts/BoxPlot.cjs.map +1 -0
  84. package/dist/charts/BoxPlot.js +5 -0
  85. package/dist/charts/BoxPlot.js.map +1 -0
  86. package/dist/charts/ChartTooltip.cjs +2 -0
  87. package/dist/charts/ChartTooltip.cjs.map +1 -0
  88. package/dist/charts/ChartTooltip.js +8 -0
  89. package/dist/charts/ChartTooltip.js.map +1 -0
  90. package/dist/charts/Chromatogram.cjs +2 -0
  91. package/dist/charts/Chromatogram.cjs.map +1 -0
  92. package/dist/charts/Chromatogram.js +5 -0
  93. package/dist/charts/Chromatogram.js.map +1 -0
  94. package/dist/charts/Electropherogram.cjs +2 -0
  95. package/dist/charts/Electropherogram.cjs.map +1 -0
  96. package/dist/charts/Electropherogram.js +5 -0
  97. package/dist/charts/Electropherogram.js.map +1 -0
  98. package/dist/charts/Histogram.cjs +2 -0
  99. package/dist/charts/Histogram.cjs.map +1 -0
  100. package/dist/charts/Histogram.js +5 -0
  101. package/dist/charts/Histogram.js.map +1 -0
  102. package/dist/charts/LinePlot.cjs +2 -0
  103. package/dist/charts/LinePlot.cjs.map +1 -0
  104. package/dist/charts/LinePlot.js +5 -0
  105. package/dist/charts/LinePlot.js.map +1 -0
  106. package/dist/charts/PieChart.cjs +2 -0
  107. package/dist/charts/PieChart.cjs.map +1 -0
  108. package/dist/charts/PieChart.js +5 -0
  109. package/dist/charts/PieChart.js.map +1 -0
  110. package/dist/charts/PlateMap.cjs +2 -0
  111. package/dist/charts/PlateMap.cjs.map +1 -0
  112. package/dist/charts/PlateMap.js +5 -0
  113. package/dist/charts/PlateMap.js.map +1 -0
  114. package/dist/charts/ScatterPlot.cjs +2 -0
  115. package/dist/charts/ScatterPlot.cjs.map +1 -0
  116. package/dist/charts/ScatterPlot.js +5 -0
  117. package/dist/charts/ScatterPlot.js.map +1 -0
  118. package/dist/charts/ScatterPlotInteractive.cjs +2 -0
  119. package/dist/charts/ScatterPlotInteractive.cjs.map +1 -0
  120. package/dist/charts/ScatterPlotInteractive.js +14 -0
  121. package/dist/charts/ScatterPlotInteractive.js.map +1 -0
  122. package/dist/charts/StackedChromatogram.cjs +2 -0
  123. package/dist/charts/StackedChromatogram.cjs.map +1 -0
  124. package/dist/charts/StackedChromatogram.js +7 -0
  125. package/dist/charts/StackedChromatogram.js.map +1 -0
  126. package/dist/components/ai/attachments.d.ts +54 -0
  127. package/dist/components/ai/chain-of-thought.d.ts +56 -0
  128. package/dist/components/ai/confirmation.d.ts +47 -0
  129. package/dist/components/ai/context.d.ts +40 -0
  130. package/dist/components/ai/conversation.d.ts +23 -0
  131. package/dist/components/ai/inline-citation.d.ts +38 -0
  132. package/dist/components/ai/message.d.ts +37 -0
  133. package/dist/components/ai/model-selector.d.ts +36 -0
  134. package/dist/components/ai/prompt-input.d.ts +158 -0
  135. package/dist/components/ai/queue.d.ts +72 -0
  136. package/dist/components/ai/reasoning.d.ts +26 -0
  137. package/dist/components/ai/shimmer.d.ts +17 -0
  138. package/dist/components/ai/sources.d.ts +12 -0
  139. package/dist/components/ai/speech-input.d.ts +54 -0
  140. package/dist/components/ai/stream-status.d.ts +66 -0
  141. package/dist/components/ai/streamdown-code-plugin.cjs +2 -0
  142. package/dist/components/ai/streamdown-code-plugin.cjs.map +1 -0
  143. package/dist/components/ai/streamdown-code-plugin.d.ts +2 -0
  144. package/dist/components/ai/streamdown-code-plugin.js +42 -0
  145. package/dist/components/ai/streamdown-code-plugin.js.map +1 -0
  146. package/dist/components/ai/streamdown-plugins.cjs +2 -0
  147. package/dist/components/ai/streamdown-plugins.cjs.map +1 -0
  148. package/dist/components/ai/streamdown-plugins.d.ts +2 -0
  149. package/dist/components/ai/streamdown-plugins.js +14 -0
  150. package/dist/components/ai/streamdown-plugins.js.map +1 -0
  151. package/dist/components/ai/suggestion.d.ts +9 -0
  152. package/dist/components/ai/task.d.ts +16 -0
  153. package/dist/components/ai/tool.d.ts +33 -0
  154. package/dist/components/ai/use-streamdown-plugins.cjs +2 -0
  155. package/dist/components/ai/use-streamdown-plugins.cjs.map +1 -0
  156. package/dist/components/ai/use-streamdown-plugins.d.ts +8 -0
  157. package/dist/components/ai/use-streamdown-plugins.js +25 -0
  158. package/dist/components/ai/use-streamdown-plugins.js.map +1 -0
  159. package/dist/components/charts/AreaPlot/AreaPlot.cjs +2 -0
  160. package/dist/components/charts/AreaPlot/AreaPlot.cjs.map +1 -0
  161. package/dist/components/charts/AreaPlot/AreaPlot.d.ts +39 -0
  162. package/dist/components/charts/AreaPlot/AreaPlot.js +270 -0
  163. package/dist/components/charts/AreaPlot/AreaPlot.js.map +1 -0
  164. package/dist/components/charts/AreaPlot/index.d.ts +2 -0
  165. package/dist/components/charts/BarChart/BarChart.cjs +2 -0
  166. package/dist/components/charts/BarChart/BarChart.cjs.map +1 -0
  167. package/dist/components/charts/BarChart/BarChart.d.ts +44 -0
  168. package/dist/components/charts/BarChart/BarChart.js +219 -0
  169. package/dist/components/charts/BarChart/BarChart.js.map +1 -0
  170. package/dist/components/charts/BarChart/index.d.ts +2 -0
  171. package/dist/components/charts/BoxPlot/BoxPlot.cjs +2 -0
  172. package/dist/components/charts/BoxPlot/BoxPlot.cjs.map +1 -0
  173. package/dist/components/charts/BoxPlot/BoxPlot.d.ts +33 -0
  174. package/dist/components/charts/BoxPlot/BoxPlot.js +208 -0
  175. package/dist/components/charts/BoxPlot/BoxPlot.js.map +1 -0
  176. package/dist/components/charts/BoxPlot/index.d.ts +2 -0
  177. package/dist/components/charts/ChartTooltip/ChartTooltip.cjs +1 -1
  178. package/dist/components/charts/ChartTooltip/ChartTooltip.cjs.map +1 -1
  179. package/dist/components/charts/ChartTooltip/ChartTooltip.d.ts +71 -0
  180. package/dist/components/charts/ChartTooltip/ChartTooltip.js +22 -22
  181. package/dist/components/charts/ChartTooltip/ChartTooltip.js.map +1 -1
  182. package/dist/components/charts/ChartTooltip/index.d.ts +2 -0
  183. package/dist/components/charts/ChartTooltip/lines.d.ts +54 -0
  184. package/dist/components/charts/Chromatogram/Chromatogram.cjs +1 -1
  185. package/dist/components/charts/Chromatogram/Chromatogram.cjs.map +1 -1
  186. package/dist/components/charts/Chromatogram/Chromatogram.d.ts +5 -0
  187. package/dist/components/charts/Chromatogram/Chromatogram.js +232 -170
  188. package/dist/components/charts/Chromatogram/Chromatogram.js.map +1 -1
  189. package/dist/components/charts/Chromatogram/annotations.cjs +2 -0
  190. package/dist/components/charts/Chromatogram/annotations.cjs.map +1 -0
  191. package/dist/components/charts/Chromatogram/annotations.d.ts +50 -0
  192. package/dist/components/charts/Chromatogram/annotations.js +137 -0
  193. package/dist/components/charts/Chromatogram/annotations.js.map +1 -0
  194. package/dist/components/charts/Chromatogram/boundaryMarkers.cjs +2 -0
  195. package/dist/components/charts/Chromatogram/boundaryMarkers.cjs.map +1 -0
  196. package/dist/components/charts/Chromatogram/boundaryMarkers.d.ts +14 -0
  197. package/dist/components/charts/Chromatogram/boundaryMarkers.js +34 -0
  198. package/dist/components/charts/Chromatogram/boundaryMarkers.js.map +1 -0
  199. package/dist/components/charts/Chromatogram/constants.cjs +2 -0
  200. package/dist/components/charts/Chromatogram/constants.cjs.map +1 -0
  201. package/dist/components/charts/Chromatogram/constants.d.ts +46 -0
  202. package/dist/components/charts/Chromatogram/constants.js +36 -0
  203. package/dist/components/charts/Chromatogram/constants.js.map +1 -0
  204. package/dist/components/charts/Chromatogram/dataProcessing.cjs +2 -0
  205. package/dist/components/charts/Chromatogram/dataProcessing.cjs.map +1 -0
  206. package/dist/components/charts/Chromatogram/dataProcessing.d.ts +49 -0
  207. package/dist/components/charts/Chromatogram/dataProcessing.js +90 -0
  208. package/dist/components/charts/Chromatogram/dataProcessing.js.map +1 -0
  209. package/dist/components/charts/Chromatogram/index.d.ts +2 -0
  210. package/dist/components/charts/Chromatogram/peakDetection.cjs.map +1 -0
  211. package/dist/components/charts/Chromatogram/peakDetection.d.ts +33 -0
  212. package/dist/components/charts/Chromatogram/peakDetection.js.map +1 -0
  213. package/dist/components/charts/Chromatogram/plotBuilder.cjs +2 -0
  214. package/dist/components/charts/Chromatogram/plotBuilder.cjs.map +1 -0
  215. package/dist/components/charts/Chromatogram/plotBuilder.d.ts +58 -0
  216. package/dist/components/charts/Chromatogram/plotBuilder.js +216 -0
  217. package/dist/components/charts/Chromatogram/plotBuilder.js.map +1 -0
  218. package/dist/components/charts/Chromatogram/regionOverlays.cjs +2 -0
  219. package/dist/components/charts/Chromatogram/regionOverlays.cjs.map +1 -0
  220. package/dist/components/charts/Chromatogram/regionOverlays.d.ts +9 -0
  221. package/dist/components/charts/Chromatogram/regionOverlays.js +26 -0
  222. package/dist/components/charts/Chromatogram/regionOverlays.js.map +1 -0
  223. package/dist/components/charts/Chromatogram/types.d.ts +258 -0
  224. package/dist/components/charts/Electropherogram/Electropherogram.cjs +2 -0
  225. package/dist/components/charts/Electropherogram/Electropherogram.cjs.map +1 -0
  226. package/dist/components/charts/Electropherogram/Electropherogram.d.ts +22 -0
  227. package/dist/components/charts/Electropherogram/Electropherogram.js +180 -0
  228. package/dist/components/charts/Electropherogram/Electropherogram.js.map +1 -0
  229. package/dist/components/charts/Electropherogram/index.d.ts +2 -0
  230. package/dist/components/charts/Histogram/Histogram.cjs +1 -1
  231. package/dist/components/charts/Histogram/Histogram.cjs.map +1 -1
  232. package/dist/components/charts/Histogram/Histogram.d.ts +36 -0
  233. package/dist/components/charts/Histogram/Histogram.js +107 -108
  234. package/dist/components/charts/Histogram/Histogram.js.map +1 -1
  235. package/dist/components/charts/Histogram/index.d.ts +2 -0
  236. package/dist/components/charts/LinePlot/LinePlot.cjs +2 -0
  237. package/dist/components/charts/LinePlot/LinePlot.cjs.map +1 -0
  238. package/dist/components/charts/LinePlot/LinePlot.d.ts +45 -0
  239. package/dist/components/charts/LinePlot/LinePlot.js +224 -0
  240. package/dist/components/charts/LinePlot/LinePlot.js.map +1 -0
  241. package/dist/components/charts/LinePlot/index.d.ts +2 -0
  242. package/dist/components/charts/PieChart/PieChart.cjs +1 -1
  243. package/dist/components/charts/PieChart/PieChart.cjs.map +1 -1
  244. package/dist/components/charts/PieChart/PieChart.d.ts +20 -0
  245. package/dist/components/charts/PieChart/PieChart.js +62 -61
  246. package/dist/components/charts/PieChart/PieChart.js.map +1 -1
  247. package/dist/components/charts/PieChart/index.d.ts +2 -0
  248. package/dist/components/charts/PlateMap/PlateMap.cjs +1 -1
  249. package/dist/components/charts/PlateMap/PlateMap.cjs.map +1 -1
  250. package/dist/components/charts/PlateMap/PlateMap.d.ts +29 -0
  251. package/dist/components/charts/PlateMap/PlateMap.js +246 -242
  252. package/dist/components/charts/PlateMap/PlateMap.js.map +1 -1
  253. package/dist/components/charts/PlateMap/constants.d.ts +75 -0
  254. package/dist/components/charts/PlateMap/index.d.ts +2 -0
  255. package/dist/components/charts/PlateMap/types.d.ts +322 -0
  256. package/dist/components/charts/PlateMap/utils.d.ts +133 -0
  257. package/dist/components/charts/ScatterPlot/ScatterPlot.cjs +2 -0
  258. package/dist/components/charts/ScatterPlot/ScatterPlot.cjs.map +1 -0
  259. package/dist/components/charts/ScatterPlot/ScatterPlot.d.ts +43 -0
  260. package/dist/components/charts/ScatterPlot/ScatterPlot.js +252 -0
  261. package/dist/components/charts/ScatterPlot/ScatterPlot.js.map +1 -0
  262. package/dist/components/charts/ScatterPlot/index.d.ts +2 -0
  263. package/dist/components/charts/ScatterPlotInteractive/ScatterPlotInteractive.cjs +2 -0
  264. package/dist/components/charts/ScatterPlotInteractive/ScatterPlotInteractive.cjs.map +1 -0
  265. package/dist/components/charts/ScatterPlotInteractive/ScatterPlotInteractive.d.ts +25 -0
  266. package/dist/components/charts/ScatterPlotInteractive/ScatterPlotInteractive.js +215 -0
  267. package/dist/components/charts/ScatterPlotInteractive/ScatterPlotInteractive.js.map +1 -0
  268. package/dist/components/charts/ScatterPlotInteractive/constants.cjs +2 -0
  269. package/dist/components/charts/ScatterPlotInteractive/constants.cjs.map +1 -0
  270. package/dist/components/charts/ScatterPlotInteractive/constants.d.ts +50 -0
  271. package/dist/components/charts/ScatterPlotInteractive/constants.js +38 -0
  272. package/dist/components/charts/ScatterPlotInteractive/constants.js.map +1 -0
  273. package/dist/components/charts/ScatterPlotInteractive/index.d.ts +3 -0
  274. package/dist/components/charts/ScatterPlotInteractive/types.d.ts +226 -0
  275. package/dist/components/charts/ScatterPlotInteractive/utils.cjs +2 -0
  276. package/dist/components/charts/ScatterPlotInteractive/utils.cjs.map +1 -0
  277. package/dist/components/charts/ScatterPlotInteractive/utils.d.ts +72 -0
  278. package/dist/components/charts/ScatterPlotInteractive/utils.js +261 -0
  279. package/dist/components/charts/ScatterPlotInteractive/utils.js.map +1 -0
  280. package/dist/components/charts/StackedChromatogram/StackedChromatogram.cjs +2 -0
  281. package/dist/components/charts/StackedChromatogram/StackedChromatogram.cjs.map +1 -0
  282. package/dist/components/charts/StackedChromatogram/StackedChromatogram.d.ts +3 -0
  283. package/dist/components/charts/StackedChromatogram/StackedChromatogram.js +40 -0
  284. package/dist/components/charts/StackedChromatogram/StackedChromatogram.js.map +1 -0
  285. package/dist/components/charts/StackedChromatogram/index.d.ts +3 -0
  286. package/dist/components/charts/StackedChromatogram/transforms.cjs +2 -0
  287. package/dist/components/charts/StackedChromatogram/transforms.cjs.map +1 -0
  288. package/dist/components/charts/StackedChromatogram/transforms.d.ts +9 -0
  289. package/dist/components/charts/StackedChromatogram/transforms.js +31 -0
  290. package/dist/components/charts/StackedChromatogram/transforms.js.map +1 -0
  291. package/dist/components/charts/StackedChromatogram/types.d.ts +26 -0
  292. package/dist/components/charts/plotly-loader.cjs +2 -0
  293. package/dist/components/charts/plotly-loader.cjs.map +1 -0
  294. package/dist/components/charts/plotly-loader.d.ts +29 -0
  295. package/dist/components/charts/plotly-loader.js +22 -0
  296. package/dist/components/charts/plotly-loader.js.map +1 -0
  297. package/dist/components/composed/AssistantLayout/AssistantLayout.cjs +2 -0
  298. package/dist/components/composed/AssistantLayout/AssistantLayout.cjs.map +1 -0
  299. package/dist/components/composed/AssistantLayout/AssistantLayout.d.ts +63 -0
  300. package/dist/components/composed/AssistantLayout/AssistantLayout.js +142 -0
  301. package/dist/components/composed/AssistantLayout/AssistantLayout.js.map +1 -0
  302. package/dist/components/composed/AssistantLayout/dockLayout.cjs +2 -0
  303. package/dist/components/composed/AssistantLayout/dockLayout.cjs.map +1 -0
  304. package/dist/components/composed/AssistantLayout/dockLayout.d.ts +15 -0
  305. package/dist/components/composed/AssistantLayout/dockLayout.js +10 -0
  306. package/dist/components/composed/AssistantLayout/dockLayout.js.map +1 -0
  307. package/dist/components/composed/AssistantLayout/index.d.ts +3 -0
  308. package/dist/components/composed/Chat/Chat.cjs +1 -1
  309. package/dist/components/composed/Chat/Chat.cjs.map +1 -1
  310. package/dist/components/composed/Chat/Chat.d.ts +35 -0
  311. package/dist/components/composed/Chat/Chat.js +28 -28
  312. package/dist/components/composed/Chat/Chat.js.map +1 -1
  313. package/dist/components/composed/Chat/index.d.ts +2 -0
  314. package/dist/components/composed/ConfirmDialog/ConfirmDialog.cjs +1 -1
  315. package/dist/components/composed/ConfirmDialog/ConfirmDialog.cjs.map +1 -1
  316. package/dist/components/composed/ConfirmDialog/ConfirmDialog.d.ts +23 -0
  317. package/dist/components/composed/ConfirmDialog/ConfirmDialog.js +33 -29
  318. package/dist/components/composed/ConfirmDialog/ConfirmDialog.js.map +1 -1
  319. package/dist/components/composed/ConfirmDialog/index.d.ts +1 -0
  320. package/dist/components/composed/DataAppShell/CollapseButton.cjs +2 -0
  321. package/dist/components/composed/DataAppShell/CollapseButton.cjs.map +1 -0
  322. package/dist/components/composed/DataAppShell/CollapseButton.d.ts +23 -0
  323. package/dist/components/composed/DataAppShell/CollapseButton.js +42 -0
  324. package/dist/components/composed/DataAppShell/CollapseButton.js.map +1 -0
  325. package/dist/components/composed/DataAppShell/DataAppShell.cjs +1 -1
  326. package/dist/components/composed/DataAppShell/DataAppShell.cjs.map +1 -1
  327. package/dist/components/composed/DataAppShell/DataAppShell.d.ts +88 -0
  328. package/dist/components/composed/DataAppShell/DataAppShell.js +350 -328
  329. package/dist/components/composed/DataAppShell/DataAppShell.js.map +1 -1
  330. package/dist/components/composed/DataAppShell/PrimaryNav.cjs +2 -0
  331. package/dist/components/composed/DataAppShell/PrimaryNav.cjs.map +1 -0
  332. package/dist/components/composed/DataAppShell/PrimaryNav.d.ts +64 -0
  333. package/dist/components/composed/DataAppShell/PrimaryNav.js +268 -0
  334. package/dist/components/composed/DataAppShell/PrimaryNav.js.map +1 -0
  335. package/dist/components/composed/DataAppShell/RightPanel.cjs +2 -0
  336. package/dist/components/composed/DataAppShell/RightPanel.cjs.map +1 -0
  337. package/dist/components/composed/DataAppShell/RightPanel.d.ts +95 -0
  338. package/dist/components/composed/DataAppShell/RightPanel.js +282 -0
  339. package/dist/components/composed/DataAppShell/RightPanel.js.map +1 -0
  340. package/dist/components/composed/DataAppShell/SecondaryNav.cjs +2 -0
  341. package/dist/components/composed/DataAppShell/SecondaryNav.cjs.map +1 -0
  342. package/dist/components/composed/DataAppShell/SecondaryNav.d.ts +63 -0
  343. package/dist/components/composed/DataAppShell/SecondaryNav.js +364 -0
  344. package/dist/components/composed/DataAppShell/SecondaryNav.js.map +1 -0
  345. package/dist/components/composed/DataAppShell/ShellContext.cjs +2 -0
  346. package/dist/components/composed/DataAppShell/ShellContext.cjs.map +1 -0
  347. package/dist/components/composed/DataAppShell/ShellContext.d.ts +20 -0
  348. package/dist/components/composed/DataAppShell/ShellContext.js +23 -0
  349. package/dist/components/composed/DataAppShell/ShellContext.js.map +1 -0
  350. package/dist/components/composed/DataAppShell/index.d.ts +12 -0
  351. package/dist/components/composed/EmptyState/EmptyState.d.ts +12 -0
  352. package/dist/components/composed/EmptyState/index.d.ts +2 -0
  353. package/dist/components/composed/FormPatterns/FormSection.cjs +1 -1
  354. package/dist/components/composed/FormPatterns/FormSection.cjs.map +1 -1
  355. package/dist/components/composed/FormPatterns/FormSection.d.ts +7 -0
  356. package/dist/components/composed/FormPatterns/FormSection.js +2 -2
  357. package/dist/components/composed/FormPatterns/index.d.ts +1 -0
  358. package/dist/components/composed/MoleculeStructure/MoleculeStructure.cjs +2 -0
  359. package/dist/components/composed/MoleculeStructure/MoleculeStructure.cjs.map +1 -0
  360. package/dist/components/composed/MoleculeStructure/MoleculeStructure.d.ts +43 -0
  361. package/dist/components/composed/MoleculeStructure/MoleculeStructure.js +87 -0
  362. package/dist/components/composed/MoleculeStructure/MoleculeStructure.js.map +1 -0
  363. package/dist/components/composed/MoleculeStructure/index.d.ts +3 -0
  364. package/dist/components/composed/MoleculeStructure/rdkit-loader.cjs +2 -0
  365. package/dist/components/composed/MoleculeStructure/rdkit-loader.cjs.map +1 -0
  366. package/dist/components/composed/MoleculeStructure/rdkit-loader.d.ts +104 -0
  367. package/dist/components/composed/MoleculeStructure/rdkit-loader.js +89 -0
  368. package/dist/components/composed/MoleculeStructure/rdkit-loader.js.map +1 -0
  369. package/dist/components/composed/MoleculeStructure/use-rdkit.cjs +2 -0
  370. package/dist/components/composed/MoleculeStructure/use-rdkit.cjs.map +1 -0
  371. package/dist/components/composed/MoleculeStructure/use-rdkit.d.ts +29 -0
  372. package/dist/components/composed/MoleculeStructure/use-rdkit.js +19 -0
  373. package/dist/components/composed/MoleculeStructure/use-rdkit.js.map +1 -0
  374. package/dist/components/composed/PlateMapEditor/ManifestFilterPopover.cjs +1 -1
  375. package/dist/components/composed/PlateMapEditor/ManifestFilterPopover.cjs.map +1 -1
  376. package/dist/components/composed/PlateMapEditor/ManifestFilterPopover.d.ts +12 -0
  377. package/dist/components/composed/PlateMapEditor/ManifestFilterPopover.js +21 -21
  378. package/dist/components/composed/PlateMapEditor/ManifestFilterPopover.js.map +1 -1
  379. package/dist/components/composed/PlateMapEditor/PlateMapActionsMenu.cjs +1 -1
  380. package/dist/components/composed/PlateMapEditor/PlateMapActionsMenu.cjs.map +1 -1
  381. package/dist/components/composed/PlateMapEditor/PlateMapActionsMenu.d.ts +22 -0
  382. package/dist/components/composed/PlateMapEditor/PlateMapActionsMenu.js +34 -34
  383. package/dist/components/composed/PlateMapEditor/PlateMapActionsMenu.js.map +1 -1
  384. package/dist/components/composed/PlateMapEditor/PlateMapEditor.cjs +1 -1
  385. package/dist/components/composed/PlateMapEditor/PlateMapEditor.cjs.map +1 -1
  386. package/dist/components/composed/PlateMapEditor/PlateMapEditor.d.ts +106 -0
  387. package/dist/components/composed/PlateMapEditor/PlateMapEditor.js +2 -2
  388. package/dist/components/composed/PlateMapEditor/PlateMapForm.cjs +1 -1
  389. package/dist/components/composed/PlateMapEditor/PlateMapForm.cjs.map +1 -1
  390. package/dist/components/composed/PlateMapEditor/PlateMapForm.d.ts +30 -0
  391. package/dist/components/composed/PlateMapEditor/PlateMapForm.js +1 -1
  392. package/dist/components/composed/PlateMapEditor/PlateMapGrid.cjs +1 -1
  393. package/dist/components/composed/PlateMapEditor/PlateMapGrid.cjs.map +1 -1
  394. package/dist/components/composed/PlateMapEditor/PlateMapGrid.d.ts +64 -0
  395. package/dist/components/composed/PlateMapEditor/PlateMapGrid.js +1 -1
  396. package/dist/components/composed/PlateMapEditor/PlateMapManifest.d.ts +29 -0
  397. package/dist/components/composed/PlateMapEditor/PlateMapPlateSelector.cjs +1 -1
  398. package/dist/components/composed/PlateMapEditor/PlateMapPlateSelector.cjs.map +1 -1
  399. package/dist/components/composed/PlateMapEditor/PlateMapPlateSelector.d.ts +19 -0
  400. package/dist/components/composed/PlateMapEditor/PlateMapPlateSelector.js +11 -11
  401. package/dist/components/composed/PlateMapEditor/PlateMapPlateSelector.js.map +1 -1
  402. package/dist/components/composed/PlateMapEditor/PlatePaintGrid.cjs +1 -1
  403. package/dist/components/composed/PlateMapEditor/PlatePaintGrid.cjs.map +1 -1
  404. package/dist/components/composed/PlateMapEditor/PlatePaintGrid.d.ts +73 -0
  405. package/dist/components/composed/PlateMapEditor/PlatePaintGrid.js +1 -1
  406. package/dist/components/composed/PlateMapEditor/PlatePaintGrid.js.map +1 -1
  407. package/dist/components/composed/PlateMapEditor/PlateZoomControl.cjs +1 -1
  408. package/dist/components/composed/PlateMapEditor/PlateZoomControl.cjs.map +1 -1
  409. package/dist/components/composed/PlateMapEditor/PlateZoomControl.d.ts +12 -0
  410. package/dist/components/composed/PlateMapEditor/PlateZoomControl.js +2 -2
  411. package/dist/components/composed/PlateMapEditor/TemplateIOPanel.cjs +1 -1
  412. package/dist/components/composed/PlateMapEditor/TemplateIOPanel.cjs.map +1 -1
  413. package/dist/components/composed/PlateMapEditor/TemplateIOPanel.d.ts +13 -0
  414. package/dist/components/composed/PlateMapEditor/TemplateIOPanel.js +4 -4
  415. package/dist/components/composed/PlateMapEditor/WellLegend.cjs +1 -1
  416. package/dist/components/composed/PlateMapEditor/WellLegend.cjs.map +1 -1
  417. package/dist/components/composed/PlateMapEditor/WellLegend.d.ts +21 -0
  418. package/dist/components/composed/PlateMapEditor/WellLegend.js +24 -12
  419. package/dist/components/composed/PlateMapEditor/WellLegend.js.map +1 -1
  420. package/dist/components/composed/PlateMapEditor/WellManifestTable.cjs +1 -1
  421. package/dist/components/composed/PlateMapEditor/WellManifestTable.cjs.map +1 -1
  422. package/dist/components/composed/PlateMapEditor/WellManifestTable.d.ts +46 -0
  423. package/dist/components/composed/PlateMapEditor/WellManifestTable.js +10 -10
  424. package/dist/components/composed/PlateMapEditor/WellManifestTable.js.map +1 -1
  425. package/dist/components/composed/PlateMapEditor/WellMetadataForm.cjs +1 -1
  426. package/dist/components/composed/PlateMapEditor/WellMetadataForm.cjs.map +1 -1
  427. package/dist/components/composed/PlateMapEditor/WellMetadataForm.d.ts +17 -0
  428. package/dist/components/composed/PlateMapEditor/WellMetadataForm.js +7 -7
  429. package/dist/components/composed/PlateMapEditor/autoFill.d.ts +26 -0
  430. package/dist/components/composed/PlateMapEditor/csvPlateTriage.d.ts +4 -0
  431. package/dist/components/composed/PlateMapEditor/helpers.d.ts +2 -0
  432. package/dist/components/composed/PlateMapEditor/index.d.ts +31 -0
  433. package/dist/components/composed/PlateMapEditor/types.d.ts +137 -0
  434. package/dist/components/composed/PlateMapEditor/wellGrid.d.ts +12 -0
  435. package/dist/components/composed/ProcessFlow/ProcessFlow.d.ts +32 -0
  436. package/dist/components/composed/ProcessFlow/ProcessFlow.utils.d.ts +86 -0
  437. package/dist/components/composed/ProcessFlow/index.d.ts +1 -0
  438. package/dist/components/composed/RichListItem/RichListItem.cjs +1 -1
  439. package/dist/components/composed/RichListItem/RichListItem.cjs.map +1 -1
  440. package/dist/components/composed/RichListItem/RichListItem.d.ts +22 -0
  441. package/dist/components/composed/RichListItem/RichListItem.js +2 -2
  442. package/dist/components/composed/RichListItem/index.d.ts +2 -0
  443. package/dist/components/composed/StatCard/StatCard.cjs +1 -1
  444. package/dist/components/composed/StatCard/StatCard.cjs.map +1 -1
  445. package/dist/components/composed/StatCard/StatCard.d.ts +11 -0
  446. package/dist/components/composed/StatCard/StatCard.js +1 -1
  447. package/dist/components/composed/StatCard/index.d.ts +1 -0
  448. package/dist/components/composed/TdpSearch/TdpSearch.cjs +1 -1
  449. package/dist/components/composed/TdpSearch/TdpSearch.cjs.map +1 -1
  450. package/dist/components/composed/TdpSearch/TdpSearch.d.ts +21 -0
  451. package/dist/components/composed/TdpSearch/TdpSearch.js +14 -13
  452. package/dist/components/composed/TdpSearch/TdpSearch.mocks.d.ts +5 -0
  453. package/dist/components/composed/TdpSearch/components/DefaultFilters.cjs +1 -1
  454. package/dist/components/composed/TdpSearch/components/DefaultFilters.cjs.map +1 -1
  455. package/dist/components/composed/TdpSearch/components/DefaultFilters.d.ts +3 -0
  456. package/dist/components/composed/TdpSearch/components/DefaultFilters.js +4 -4
  457. package/dist/components/composed/TdpSearch/components/DefaultFilters.js.map +1 -1
  458. package/dist/components/composed/TdpSearch/components/DefaultResults.cjs +1 -1
  459. package/dist/components/composed/TdpSearch/components/DefaultResults.cjs.map +1 -1
  460. package/dist/components/composed/TdpSearch/components/DefaultResults.d.ts +3 -0
  461. package/dist/components/composed/TdpSearch/components/DefaultResults.js +2 -2
  462. package/dist/components/composed/TdpSearch/components/DefaultSearchBar.cjs +1 -1
  463. package/dist/components/composed/TdpSearch/components/DefaultSearchBar.cjs.map +1 -1
  464. package/dist/components/composed/TdpSearch/components/DefaultSearchBar.d.ts +3 -0
  465. package/dist/components/composed/TdpSearch/components/DefaultSearchBar.js +2 -2
  466. package/dist/components/composed/TdpSearch/constants.d.ts +3 -0
  467. package/dist/components/composed/TdpSearch/hooks/useSearch.d.ts +2 -0
  468. package/dist/components/composed/TdpSearch/hooks/useTdpCredentials.d.ts +14 -0
  469. package/dist/components/composed/TdpSearch/index.d.ts +3 -0
  470. package/dist/components/composed/TdpSearch/types.d.ts +128 -0
  471. package/dist/components/composed/TdpSearch/utils.d.ts +3 -0
  472. package/dist/components/composed/TopBar/TopBar.cjs +2 -0
  473. package/dist/components/composed/TopBar/TopBar.cjs.map +1 -0
  474. package/dist/components/composed/TopBar/TopBar.d.ts +25 -0
  475. package/dist/components/composed/TopBar/TopBar.js +56 -0
  476. package/dist/components/composed/TopBar/TopBar.js.map +1 -0
  477. package/dist/components/composed/TopBar/index.d.ts +2 -0
  478. package/dist/components/composed/UserMenu/UserMenu.cjs +2 -0
  479. package/dist/components/composed/UserMenu/UserMenu.cjs.map +1 -0
  480. package/dist/components/composed/UserMenu/UserMenu.d.ts +53 -0
  481. package/dist/components/composed/UserMenu/UserMenu.js +99 -0
  482. package/dist/components/composed/UserMenu/UserMenu.js.map +1 -0
  483. package/dist/components/composed/UserMenu/index.d.ts +2 -0
  484. package/dist/components/composed/tdp-link.d.ts +110 -0
  485. package/dist/components/composed/tdp-url.d.ts +68 -0
  486. package/dist/components/ui/accordion.d.ts +7 -0
  487. package/dist/components/ui/alert-dialog.d.ts +18 -0
  488. package/dist/components/ui/alert.d.ts +10 -0
  489. package/dist/components/ui/aspect-ratio.d.ts +3 -0
  490. package/dist/components/ui/avatar.d.ts +11 -0
  491. package/dist/components/ui/badge.d.ts +9 -0
  492. package/dist/components/ui/banner.d.ts +19 -0
  493. package/dist/components/ui/breadcrumb.d.ts +11 -0
  494. package/dist/components/ui/button-group.d.ts +11 -0
  495. package/dist/components/ui/button.d.ts +10 -0
  496. package/dist/components/ui/calendar.d.ts +10 -0
  497. package/dist/components/ui/card.d.ts +11 -0
  498. package/dist/components/ui/carousel.d.ts +28 -0
  499. package/dist/components/ui/checkbox.d.ts +4 -0
  500. package/dist/components/ui/code-block.d.ts +45 -0
  501. package/dist/components/ui/code-editor.d.ts +18 -0
  502. package/dist/components/ui/collapsible.d.ts +5 -0
  503. package/dist/components/ui/combobox.d.ts +24 -0
  504. package/dist/components/ui/command.d.ts +18 -0
  505. package/dist/components/ui/context-menu.d.ts +31 -0
  506. package/dist/components/ui/data-table/data-table-column-toggle.cjs +1 -1
  507. package/dist/components/ui/data-table/data-table-column-toggle.cjs.map +1 -1
  508. package/dist/components/ui/data-table/data-table-column-toggle.d.ts +6 -0
  509. package/dist/components/ui/data-table/data-table-column-toggle.js +71 -63
  510. package/dist/components/ui/data-table/data-table-column-toggle.js.map +1 -1
  511. package/dist/components/ui/data-table/data-table-filter.cjs +1 -1
  512. package/dist/components/ui/data-table/data-table-filter.cjs.map +1 -1
  513. package/dist/components/ui/data-table/data-table-filter.d.ts +9 -0
  514. package/dist/components/ui/data-table/data-table-filter.js +26 -25
  515. package/dist/components/ui/data-table/data-table-filter.js.map +1 -1
  516. package/dist/components/ui/data-table/data-table-group.cjs +1 -1
  517. package/dist/components/ui/data-table/data-table-group.cjs.map +1 -1
  518. package/dist/components/ui/data-table/data-table-group.d.ts +9 -0
  519. package/dist/components/ui/data-table/data-table-group.js +18 -17
  520. package/dist/components/ui/data-table/data-table-group.js.map +1 -1
  521. package/dist/components/ui/data-table/data-table-pagination.cjs +1 -1
  522. package/dist/components/ui/data-table/data-table-pagination.cjs.map +1 -1
  523. package/dist/components/ui/data-table/data-table-pagination.d.ts +7 -0
  524. package/dist/components/ui/data-table/data-table-pagination.js +16 -16
  525. package/dist/components/ui/data-table/data-table-pagination.js.map +1 -1
  526. package/dist/components/ui/data-table/data-table.cjs +1 -1
  527. package/dist/components/ui/data-table/data-table.cjs.map +1 -1
  528. package/dist/components/ui/data-table/data-table.d.ts +82 -0
  529. package/dist/components/ui/data-table/data-table.js +191 -190
  530. package/dist/components/ui/data-table/data-table.js.map +1 -1
  531. package/dist/components/ui/data-table/index.d.ts +5 -0
  532. package/dist/components/ui/dialog.d.ts +18 -0
  533. package/dist/components/ui/dropdown-menu.d.ts +29 -0
  534. package/dist/components/ui/field.d.ts +24 -0
  535. package/dist/components/ui/hover-card.d.ts +6 -0
  536. package/dist/components/ui/input-group.d.ts +16 -0
  537. package/dist/components/ui/input.d.ts +3 -0
  538. package/dist/components/ui/item.d.ts +23 -0
  539. package/dist/components/ui/kbd.d.ts +3 -0
  540. package/dist/components/ui/label.d.ts +4 -0
  541. package/dist/components/ui/menubar.d.ts +30 -0
  542. package/dist/components/ui/navigation-menu.d.ts +14 -0
  543. package/dist/components/ui/popover.d.ts +7 -0
  544. package/dist/components/ui/progress.d.ts +4 -0
  545. package/dist/components/ui/radio-group.d.ts +5 -0
  546. package/dist/components/ui/resizable.d.ts +25 -0
  547. package/dist/components/ui/scroll-area.d.ts +5 -0
  548. package/dist/components/ui/select.d.ts +15 -0
  549. package/dist/components/ui/separator.d.ts +4 -0
  550. package/dist/components/ui/sheet.d.ts +14 -0
  551. package/dist/components/ui/sidebar.d.ts +69 -0
  552. package/dist/components/ui/skeleton.d.ts +2 -0
  553. package/dist/components/ui/slider.d.ts +4 -0
  554. package/dist/components/ui/snippet.d.ts +18 -0
  555. package/dist/components/ui/sonner.d.ts +3 -0
  556. package/dist/components/ui/spinner.d.ts +6 -0
  557. package/dist/components/ui/switch.d.ts +6 -0
  558. package/dist/components/ui/table.d.ts +22 -0
  559. package/dist/components/ui/tabs.d.ts +11 -0
  560. package/dist/components/ui/tetra-molecule-icon.d.ts +11 -0
  561. package/dist/components/ui/tetrascience-icon.d.ts +7 -0
  562. package/dist/components/ui/textarea.d.ts +3 -0
  563. package/dist/components/ui/toggle-group.d.ts +10 -0
  564. package/dist/components/ui/toggle.d.ts +9 -0
  565. package/dist/components/ui/tooltip.d.ts +7 -0
  566. package/dist/composed/AssistantLayout.cjs +2 -0
  567. package/dist/composed/AssistantLayout.cjs.map +1 -0
  568. package/dist/composed/AssistantLayout.js +10 -0
  569. package/dist/composed/AssistantLayout.js.map +1 -0
  570. package/dist/composed/Chat.cjs +2 -0
  571. package/dist/composed/Chat.cjs.map +1 -0
  572. package/dist/composed/Chat.js +5 -0
  573. package/dist/composed/Chat.js.map +1 -0
  574. package/dist/composed/ConfirmDialog.cjs +2 -0
  575. package/dist/composed/ConfirmDialog.cjs.map +1 -0
  576. package/dist/composed/ConfirmDialog.js +5 -0
  577. package/dist/composed/ConfirmDialog.js.map +1 -0
  578. package/dist/composed/DataAppShell.cjs +2 -0
  579. package/dist/composed/DataAppShell.cjs.map +1 -0
  580. package/dist/composed/DataAppShell.js +22 -0
  581. package/dist/composed/DataAppShell.js.map +1 -0
  582. package/dist/composed/EmptyState.cjs +2 -0
  583. package/dist/composed/EmptyState.cjs.map +1 -0
  584. package/dist/composed/EmptyState.js +5 -0
  585. package/dist/composed/EmptyState.js.map +1 -0
  586. package/dist/composed/FormPatterns.cjs +2 -0
  587. package/dist/composed/FormPatterns.cjs.map +1 -0
  588. package/dist/composed/FormPatterns.js +5 -0
  589. package/dist/composed/FormPatterns.js.map +1 -0
  590. package/dist/composed/MoleculeStructure.cjs +2 -0
  591. package/dist/composed/MoleculeStructure.cjs.map +1 -0
  592. package/dist/composed/MoleculeStructure.js +11 -0
  593. package/dist/composed/MoleculeStructure.js.map +1 -0
  594. package/dist/composed/PlateMapEditor.cjs +2 -0
  595. package/dist/composed/PlateMapEditor.cjs.map +1 -0
  596. package/dist/composed/PlateMapEditor.js +45 -0
  597. package/dist/composed/PlateMapEditor.js.map +1 -0
  598. package/dist/composed/ProcessFlow.cjs +2 -0
  599. package/dist/composed/ProcessFlow.cjs.map +1 -0
  600. package/dist/composed/ProcessFlow.js +7 -0
  601. package/dist/composed/ProcessFlow.js.map +1 -0
  602. package/dist/composed/RichListItem.cjs +2 -0
  603. package/dist/composed/RichListItem.cjs.map +1 -0
  604. package/dist/composed/RichListItem.js +6 -0
  605. package/dist/composed/RichListItem.js.map +1 -0
  606. package/dist/composed/StatCard.cjs +2 -0
  607. package/dist/composed/StatCard.cjs.map +1 -0
  608. package/dist/composed/StatCard.js +5 -0
  609. package/dist/composed/StatCard.js.map +1 -0
  610. package/dist/composed/TdpSearch.cjs +2 -0
  611. package/dist/composed/TdpSearch.cjs.map +1 -0
  612. package/dist/composed/TdpSearch.js +8 -0
  613. package/dist/composed/TdpSearch.js.map +1 -0
  614. package/dist/composed/TopBar.cjs +2 -0
  615. package/dist/composed/TopBar.cjs.map +1 -0
  616. package/dist/composed/TopBar.js +6 -0
  617. package/dist/composed/TopBar.js.map +1 -0
  618. package/dist/composed/UserMenu.cjs +2 -0
  619. package/dist/composed/UserMenu.cjs.map +1 -0
  620. package/dist/composed/UserMenu.js +7 -0
  621. package/dist/composed/UserMenu.js.map +1 -0
  622. package/dist/composed/tdp-link.cjs +2 -0
  623. package/dist/composed/tdp-link.cjs.map +1 -0
  624. package/dist/composed/tdp-link.js +84 -0
  625. package/dist/composed/tdp-link.js.map +1 -0
  626. package/dist/composed/tdp-url.cjs.map +1 -0
  627. package/dist/composed/tdp-url.js.map +1 -0
  628. package/dist/hooks/use-code-editor-theme.d.ts +34 -0
  629. package/dist/hooks/use-element-size.d.ts +25 -0
  630. package/dist/hooks/use-is-dark.d.ts +12 -0
  631. package/dist/hooks/use-mobile.d.ts +1 -0
  632. package/dist/hooks/use-plotly-theme.cjs +1 -1
  633. package/dist/hooks/use-plotly-theme.cjs.map +1 -1
  634. package/dist/hooks/use-plotly-theme.d.ts +49 -0
  635. package/dist/hooks/use-plotly-theme.js +4 -3
  636. package/dist/hooks/use-plotly-theme.js.map +1 -1
  637. package/dist/index.cjs +1 -1
  638. package/dist/index.css +1 -1
  639. package/dist/index.d.ts +102 -4404
  640. package/dist/index.js +698 -659
  641. package/dist/index.js.map +1 -1
  642. package/dist/index.tailwind.css +1 -1
  643. package/dist/jest-setup.cjs +4 -0
  644. package/dist/jest-setup.cjs.map +1 -0
  645. package/dist/jest-setup.d.ts +106 -0
  646. package/dist/jest-setup.js +218 -0
  647. package/dist/jest-setup.js.map +1 -0
  648. package/dist/lib/shiki.cjs +2 -0
  649. package/dist/lib/shiki.cjs.map +1 -0
  650. package/dist/lib/shiki.d.ts +32 -0
  651. package/dist/lib/shiki.js +72 -0
  652. package/dist/lib/shiki.js.map +1 -0
  653. package/dist/lib/utils.d.ts +2 -0
  654. package/dist/server/auth/JwtTokenManager.cjs +1 -1
  655. package/dist/server/auth/JwtTokenManager.cjs.map +1 -1
  656. package/dist/server/auth/JwtTokenManager.d.ts +113 -0
  657. package/dist/server/auth/JwtTokenManager.js +44 -21
  658. package/dist/server/auth/JwtTokenManager.js.map +1 -1
  659. package/dist/server/auth/index.d.ts +5 -0
  660. package/dist/server/index.d.ts +8 -0
  661. package/dist/server/providers/AthenaProvider.cjs +1 -1
  662. package/dist/server/providers/AthenaProvider.cjs.map +1 -1
  663. package/dist/server/providers/AthenaProvider.d.ts +75 -0
  664. package/dist/server/providers/DatabricksProvider.cjs +1 -1
  665. package/dist/server/providers/DatabricksProvider.cjs.map +1 -1
  666. package/dist/server/providers/DatabricksProvider.d.ts +38 -0
  667. package/dist/server/providers/SnowflakeProvider.cjs +1 -1
  668. package/dist/server/providers/SnowflakeProvider.cjs.map +1 -1
  669. package/dist/server/providers/SnowflakeProvider.d.ts +36 -0
  670. package/dist/server/providers/buildProvider.d.ts +39 -0
  671. package/dist/server/providers/entries/athena.d.ts +24 -0
  672. package/dist/server/providers/entries/databricks.d.ts +25 -0
  673. package/dist/server/providers/entries/snowflake.d.ts +25 -0
  674. package/dist/server/providers/exceptions.d.ts +36 -0
  675. package/dist/server/providers/getProviderConfigurations.d.ts +45 -0
  676. package/dist/server/providers/index.d.ts +31 -0
  677. package/dist/server/providers/providerDiscovery.d.ts +81 -0
  678. package/dist/server/providers/types.d.ts +145 -0
  679. package/dist/server/search/TdpSearchManager.d.ts +40 -0
  680. package/dist/server/search/index.d.ts +5 -0
  681. package/dist/server.d.ts +17 -540
  682. package/dist/ui/accordion.cjs +2 -0
  683. package/dist/ui/accordion.cjs.map +1 -0
  684. package/dist/ui/accordion.js +83 -0
  685. package/dist/ui/accordion.js.map +1 -0
  686. package/dist/ui/alert-dialog.cjs +2 -0
  687. package/dist/ui/alert-dialog.cjs.map +1 -0
  688. package/dist/ui/alert-dialog.js +181 -0
  689. package/dist/ui/alert-dialog.js.map +1 -0
  690. package/dist/ui/alert.cjs +2 -0
  691. package/dist/ui/alert.cjs.map +1 -0
  692. package/dist/ui/alert.js +81 -0
  693. package/dist/ui/alert.js.map +1 -0
  694. package/dist/ui/aspect-ratio.cjs.map +1 -0
  695. package/dist/ui/aspect-ratio.js.map +1 -0
  696. package/dist/ui/avatar.cjs +2 -0
  697. package/dist/ui/avatar.cjs.map +1 -0
  698. package/dist/ui/avatar.js +107 -0
  699. package/dist/ui/avatar.js.map +1 -0
  700. package/dist/ui/badge.cjs +2 -0
  701. package/dist/ui/badge.cjs.map +1 -0
  702. package/dist/ui/badge.js +47 -0
  703. package/dist/ui/badge.js.map +1 -0
  704. package/dist/ui/banner.cjs +2 -0
  705. package/dist/ui/banner.cjs.map +1 -0
  706. package/dist/ui/banner.js +80 -0
  707. package/dist/ui/banner.js.map +1 -0
  708. package/dist/ui/breadcrumb.cjs +2 -0
  709. package/dist/ui/breadcrumb.cjs.map +1 -0
  710. package/dist/ui/breadcrumb.js +118 -0
  711. package/dist/ui/breadcrumb.js.map +1 -0
  712. package/dist/ui/button-group.cjs +2 -0
  713. package/dist/ui/button-group.cjs.map +1 -0
  714. package/dist/ui/button-group.js +77 -0
  715. package/dist/ui/button-group.js.map +1 -0
  716. package/dist/ui/button.cjs +2 -0
  717. package/dist/ui/button.cjs.map +1 -0
  718. package/dist/ui/button.js +57 -0
  719. package/dist/ui/button.js.map +1 -0
  720. package/dist/ui/calendar.cjs +2 -0
  721. package/dist/ui/calendar.cjs.map +1 -0
  722. package/dist/ui/calendar.js +174 -0
  723. package/dist/ui/calendar.js.map +1 -0
  724. package/dist/ui/card.cjs +2 -0
  725. package/dist/ui/card.cjs.map +1 -0
  726. package/dist/ui/card.js +102 -0
  727. package/dist/ui/card.js.map +1 -0
  728. package/dist/ui/carousel.cjs +2 -0
  729. package/dist/ui/carousel.cjs.map +1 -0
  730. package/dist/ui/carousel.js +179 -0
  731. package/dist/ui/carousel.js.map +1 -0
  732. package/dist/ui/checkbox.cjs +2 -0
  733. package/dist/ui/checkbox.cjs.map +1 -0
  734. package/dist/ui/checkbox.js +35 -0
  735. package/dist/ui/checkbox.js.map +1 -0
  736. package/dist/ui/code-block.cjs +4 -0
  737. package/dist/ui/code-block.cjs.map +1 -0
  738. package/dist/ui/code-block.js +324 -0
  739. package/dist/ui/code-block.js.map +1 -0
  740. package/dist/ui/code-editor.cjs +2 -0
  741. package/dist/ui/code-editor.cjs.map +1 -0
  742. package/dist/ui/code-editor.js +106 -0
  743. package/dist/ui/code-editor.js.map +1 -0
  744. package/dist/ui/collapsible.cjs.map +1 -0
  745. package/dist/ui/collapsible.js.map +1 -0
  746. package/dist/ui/combobox.cjs +2 -0
  747. package/dist/ui/combobox.cjs.map +1 -0
  748. package/dist/ui/combobox.js +285 -0
  749. package/dist/ui/combobox.js.map +1 -0
  750. package/dist/ui/command.cjs +2 -0
  751. package/dist/ui/command.cjs.map +1 -0
  752. package/dist/ui/command.js +178 -0
  753. package/dist/ui/command.js.map +1 -0
  754. package/dist/ui/context-menu.cjs +2 -0
  755. package/dist/ui/context-menu.cjs.map +1 -0
  756. package/dist/ui/context-menu.js +236 -0
  757. package/dist/ui/context-menu.js.map +1 -0
  758. package/dist/ui/data-table.cjs +2 -0
  759. package/dist/ui/data-table.cjs.map +1 -0
  760. package/dist/ui/data-table.js +16 -0
  761. package/dist/ui/data-table.js.map +1 -0
  762. package/dist/ui/dialog.cjs +2 -0
  763. package/dist/ui/dialog.cjs.map +1 -0
  764. package/dist/ui/dialog.js +165 -0
  765. package/dist/ui/dialog.js.map +1 -0
  766. package/dist/ui/dropdown-menu.cjs +2 -0
  767. package/dist/ui/dropdown-menu.cjs.map +1 -0
  768. package/dist/ui/dropdown-menu.js +260 -0
  769. package/dist/ui/dropdown-menu.js.map +1 -0
  770. package/dist/ui/field.cjs +2 -0
  771. package/dist/ui/field.cjs.map +1 -0
  772. package/dist/ui/field.js +210 -0
  773. package/dist/ui/field.js.map +1 -0
  774. package/dist/ui/hover-card.cjs +2 -0
  775. package/dist/ui/hover-card.cjs.map +1 -0
  776. package/dist/ui/hover-card.js +39 -0
  777. package/dist/ui/hover-card.js.map +1 -0
  778. package/dist/ui/input-group.cjs +2 -0
  779. package/dist/ui/input-group.cjs.map +1 -0
  780. package/dist/ui/input-group.js +145 -0
  781. package/dist/ui/input-group.js.map +1 -0
  782. package/dist/ui/input.cjs +2 -0
  783. package/dist/ui/input.cjs.map +1 -0
  784. package/dist/ui/input.js +20 -0
  785. package/dist/ui/input.js.map +1 -0
  786. package/dist/ui/item.cjs +2 -0
  787. package/dist/ui/item.cjs.map +1 -0
  788. package/dist/ui/item.js +199 -0
  789. package/dist/ui/item.js.map +1 -0
  790. package/dist/ui/kbd.cjs +2 -0
  791. package/dist/ui/kbd.cjs.map +1 -0
  792. package/dist/ui/kbd.js +30 -0
  793. package/dist/ui/kbd.js.map +1 -0
  794. package/dist/ui/label.cjs +2 -0
  795. package/dist/ui/label.cjs.map +1 -0
  796. package/dist/ui/label.js +23 -0
  797. package/dist/ui/label.js.map +1 -0
  798. package/dist/ui/menubar.cjs +2 -0
  799. package/dist/ui/menubar.cjs.map +1 -0
  800. package/dist/ui/menubar.js +256 -0
  801. package/dist/ui/menubar.js.map +1 -0
  802. package/dist/ui/navigation-menu.cjs +2 -0
  803. package/dist/ui/navigation-menu.cjs.map +1 -0
  804. package/dist/ui/navigation-menu.js +164 -0
  805. package/dist/ui/navigation-menu.js.map +1 -0
  806. package/dist/ui/popover.cjs +2 -0
  807. package/dist/ui/popover.cjs.map +1 -0
  808. package/dist/ui/popover.js +45 -0
  809. package/dist/ui/popover.js.map +1 -0
  810. package/dist/ui/radio-group.cjs +2 -0
  811. package/dist/ui/radio-group.cjs.map +1 -0
  812. package/dist/ui/radio-group.js +45 -0
  813. package/dist/ui/radio-group.js.map +1 -0
  814. package/dist/ui/resizable.cjs +2 -0
  815. package/dist/ui/resizable.cjs.map +1 -0
  816. package/dist/ui/resizable.js +58 -0
  817. package/dist/ui/resizable.js.map +1 -0
  818. package/dist/ui/scroll-area.cjs +2 -0
  819. package/dist/ui/scroll-area.cjs.map +1 -0
  820. package/dist/ui/scroll-area.js +61 -0
  821. package/dist/ui/scroll-area.js.map +1 -0
  822. package/dist/ui/select.cjs +2 -0
  823. package/dist/ui/select.cjs.map +1 -0
  824. package/dist/ui/select.js +184 -0
  825. package/dist/ui/select.js.map +1 -0
  826. package/dist/ui/separator.cjs +2 -0
  827. package/dist/ui/separator.cjs.map +1 -0
  828. package/dist/ui/separator.js +27 -0
  829. package/dist/ui/separator.js.map +1 -0
  830. package/dist/ui/sheet.cjs +2 -0
  831. package/dist/ui/sheet.cjs.map +1 -0
  832. package/dist/ui/sheet.js +137 -0
  833. package/dist/ui/sheet.js.map +1 -0
  834. package/dist/ui/sidebar.cjs +2 -0
  835. package/dist/ui/sidebar.cjs.map +1 -0
  836. package/dist/ui/sidebar.js +579 -0
  837. package/dist/ui/sidebar.js.map +1 -0
  838. package/dist/ui/skeleton.cjs +2 -0
  839. package/dist/ui/skeleton.cjs.map +1 -0
  840. package/dist/ui/skeleton.js +24 -0
  841. package/dist/ui/skeleton.js.map +1 -0
  842. package/dist/ui/slider.cjs +2 -0
  843. package/dist/ui/slider.cjs.map +1 -0
  844. package/dist/ui/slider.js +61 -0
  845. package/dist/ui/slider.js.map +1 -0
  846. package/dist/ui/sonner.cjs +2 -0
  847. package/dist/ui/sonner.cjs.map +1 -0
  848. package/dist/ui/sonner.js +52 -0
  849. package/dist/ui/sonner.js.map +1 -0
  850. package/dist/ui/spinner.cjs +2 -0
  851. package/dist/ui/spinner.cjs.map +1 -0
  852. package/dist/ui/spinner.js +39 -0
  853. package/dist/ui/spinner.js.map +1 -0
  854. package/dist/ui/switch.cjs +2 -0
  855. package/dist/ui/switch.cjs.map +1 -0
  856. package/dist/ui/switch.js +32 -0
  857. package/dist/ui/switch.js.map +1 -0
  858. package/dist/ui/table.cjs +2 -0
  859. package/dist/ui/table.cjs.map +1 -0
  860. package/dist/ui/table.js +153 -0
  861. package/dist/ui/table.js.map +1 -0
  862. package/dist/ui/tabs.cjs +2 -0
  863. package/dist/ui/tabs.cjs.map +1 -0
  864. package/dist/ui/tabs.js +92 -0
  865. package/dist/ui/tabs.js.map +1 -0
  866. package/dist/ui/tetra-molecule-icon.cjs +2 -0
  867. package/dist/ui/tetra-molecule-icon.cjs.map +1 -0
  868. package/dist/ui/tetra-molecule-icon.js +50 -0
  869. package/dist/ui/tetra-molecule-icon.js.map +1 -0
  870. package/dist/ui/tetrascience-icon.cjs +2 -0
  871. package/dist/ui/tetrascience-icon.cjs.map +1 -0
  872. package/dist/ui/tetrascience-icon.js +47 -0
  873. package/dist/ui/tetrascience-icon.js.map +1 -0
  874. package/dist/ui/textarea.cjs +2 -0
  875. package/dist/ui/textarea.cjs.map +1 -0
  876. package/dist/ui/textarea.js +19 -0
  877. package/dist/ui/textarea.js.map +1 -0
  878. package/dist/ui/toggle-group.cjs +2 -0
  879. package/dist/ui/toggle-group.cjs.map +1 -0
  880. package/dist/ui/toggle-group.js +81 -0
  881. package/dist/ui/toggle-group.js.map +1 -0
  882. package/dist/ui/toggle.cjs +2 -0
  883. package/dist/ui/toggle.cjs.map +1 -0
  884. package/dist/ui/toggle.js +44 -0
  885. package/dist/ui/toggle.js.map +1 -0
  886. package/dist/ui/tooltip.cjs +2 -0
  887. package/dist/ui/tooltip.cjs.map +1 -0
  888. package/dist/ui/tooltip.js +56 -0
  889. package/dist/ui/tooltip.js.map +1 -0
  890. package/dist/utils/colors.d.ts +50 -0
  891. package/package.json +137 -24
  892. package/dist/athena.d.ts +0 -167
  893. package/dist/components/ai/attachments.cjs +0 -2
  894. package/dist/components/ai/attachments.cjs.map +0 -1
  895. package/dist/components/ai/attachments.js +0 -224
  896. package/dist/components/ai/attachments.js.map +0 -1
  897. package/dist/components/ai/chain-of-thought.cjs +0 -2
  898. package/dist/components/ai/chain-of-thought.cjs.map +0 -1
  899. package/dist/components/ai/chain-of-thought.js +0 -145
  900. package/dist/components/ai/chain-of-thought.js.map +0 -1
  901. package/dist/components/ai/confirmation.cjs +0 -2
  902. package/dist/components/ai/confirmation.cjs.map +0 -1
  903. package/dist/components/ai/confirmation.js +0 -109
  904. package/dist/components/ai/confirmation.js.map +0 -1
  905. package/dist/components/ai/context.cjs +0 -2
  906. package/dist/components/ai/context.cjs.map +0 -1
  907. package/dist/components/ai/context.js +0 -266
  908. package/dist/components/ai/context.js.map +0 -1
  909. package/dist/components/ai/conversation.cjs +0 -4
  910. package/dist/components/ai/conversation.cjs.map +0 -1
  911. package/dist/components/ai/conversation.js +0 -108
  912. package/dist/components/ai/conversation.js.map +0 -1
  913. package/dist/components/ai/inline-citation.cjs +0 -2
  914. package/dist/components/ai/inline-citation.cjs.map +0 -1
  915. package/dist/components/ai/inline-citation.js +0 -182
  916. package/dist/components/ai/inline-citation.js.map +0 -1
  917. package/dist/components/ai/message.cjs +0 -2
  918. package/dist/components/ai/message.cjs.map +0 -1
  919. package/dist/components/ai/message.js +0 -237
  920. package/dist/components/ai/message.js.map +0 -1
  921. package/dist/components/ai/model-selector.cjs +0 -2
  922. package/dist/components/ai/model-selector.cjs.map +0 -1
  923. package/dist/components/ai/model-selector.js +0 -77
  924. package/dist/components/ai/model-selector.js.map +0 -1
  925. package/dist/components/ai/prompt-input.cjs +0 -2
  926. package/dist/components/ai/prompt-input.cjs.map +0 -1
  927. package/dist/components/ai/prompt-input.js +0 -774
  928. package/dist/components/ai/prompt-input.js.map +0 -1
  929. package/dist/components/ai/queue.cjs +0 -2
  930. package/dist/components/ai/queue.cjs.map +0 -1
  931. package/dist/components/ai/queue.js +0 -209
  932. package/dist/components/ai/queue.js.map +0 -1
  933. package/dist/components/ai/reasoning.cjs +0 -2
  934. package/dist/components/ai/reasoning.cjs.map +0 -1
  935. package/dist/components/ai/reasoning.js +0 -129
  936. package/dist/components/ai/reasoning.js.map +0 -1
  937. package/dist/components/ai/shimmer.cjs +0 -2
  938. package/dist/components/ai/shimmer.cjs.map +0 -1
  939. package/dist/components/ai/shimmer.js +0 -49
  940. package/dist/components/ai/shimmer.js.map +0 -1
  941. package/dist/components/ai/sources.cjs +0 -2
  942. package/dist/components/ai/sources.cjs.map +0 -1
  943. package/dist/components/ai/sources.js +0 -54
  944. package/dist/components/ai/sources.js.map +0 -1
  945. package/dist/components/ai/speech-input.cjs +0 -2
  946. package/dist/components/ai/speech-input.cjs.map +0 -1
  947. package/dist/components/ai/speech-input.js +0 -123
  948. package/dist/components/ai/speech-input.js.map +0 -1
  949. package/dist/components/ai/stream-status.cjs +0 -2
  950. package/dist/components/ai/stream-status.cjs.map +0 -1
  951. package/dist/components/ai/stream-status.js +0 -106
  952. package/dist/components/ai/stream-status.js.map +0 -1
  953. package/dist/components/ai/suggestion.cjs +0 -2
  954. package/dist/components/ai/suggestion.cjs.map +0 -1
  955. package/dist/components/ai/suggestion.js +0 -38
  956. package/dist/components/ai/suggestion.js.map +0 -1
  957. package/dist/components/ai/task.cjs +0 -2
  958. package/dist/components/ai/task.cjs.map +0 -1
  959. package/dist/components/ai/task.js +0 -94
  960. package/dist/components/ai/task.js.map +0 -1
  961. package/dist/components/ai/tool.cjs +0 -2
  962. package/dist/components/ai/tool.cjs.map +0 -1
  963. package/dist/components/ai/tool.js +0 -143
  964. package/dist/components/ai/tool.js.map +0 -1
  965. package/dist/components/charts/AreaGraph/AreaGraph.cjs +0 -2
  966. package/dist/components/charts/AreaGraph/AreaGraph.cjs.map +0 -1
  967. package/dist/components/charts/AreaGraph/AreaGraph.js +0 -271
  968. package/dist/components/charts/AreaGraph/AreaGraph.js.map +0 -1
  969. package/dist/components/charts/BarGraph/BarGraph.cjs +0 -2
  970. package/dist/components/charts/BarGraph/BarGraph.cjs.map +0 -1
  971. package/dist/components/charts/BarGraph/BarGraph.js +0 -220
  972. package/dist/components/charts/BarGraph/BarGraph.js.map +0 -1
  973. package/dist/components/charts/Boxplot/Boxplot.cjs +0 -2
  974. package/dist/components/charts/Boxplot/Boxplot.cjs.map +0 -1
  975. package/dist/components/charts/Boxplot/Boxplot.js +0 -209
  976. package/dist/components/charts/Boxplot/Boxplot.js.map +0 -1
  977. package/dist/components/charts/ChromatogramChart/ChromatogramChart.cjs +0 -2
  978. package/dist/components/charts/ChromatogramChart/ChromatogramChart.cjs.map +0 -1
  979. package/dist/components/charts/ChromatogramChart/ChromatogramChart.js +0 -227
  980. package/dist/components/charts/ChromatogramChart/ChromatogramChart.js.map +0 -1
  981. package/dist/components/charts/ChromatogramChart/annotations.cjs +0 -2
  982. package/dist/components/charts/ChromatogramChart/annotations.cjs.map +0 -1
  983. package/dist/components/charts/ChromatogramChart/annotations.js +0 -73
  984. package/dist/components/charts/ChromatogramChart/annotations.js.map +0 -1
  985. package/dist/components/charts/ChromatogramChart/boundaryMarkers.cjs +0 -2
  986. package/dist/components/charts/ChromatogramChart/boundaryMarkers.cjs.map +0 -1
  987. package/dist/components/charts/ChromatogramChart/boundaryMarkers.js +0 -34
  988. package/dist/components/charts/ChromatogramChart/boundaryMarkers.js.map +0 -1
  989. package/dist/components/charts/ChromatogramChart/constants.cjs +0 -2
  990. package/dist/components/charts/ChromatogramChart/constants.cjs.map +0 -1
  991. package/dist/components/charts/ChromatogramChart/constants.js +0 -30
  992. package/dist/components/charts/ChromatogramChart/constants.js.map +0 -1
  993. package/dist/components/charts/ChromatogramChart/dataProcessing.cjs +0 -2
  994. package/dist/components/charts/ChromatogramChart/dataProcessing.cjs.map +0 -1
  995. package/dist/components/charts/ChromatogramChart/dataProcessing.js +0 -79
  996. package/dist/components/charts/ChromatogramChart/dataProcessing.js.map +0 -1
  997. package/dist/components/charts/ChromatogramChart/peakDetection.cjs.map +0 -1
  998. package/dist/components/charts/ChromatogramChart/peakDetection.js.map +0 -1
  999. package/dist/components/charts/DotPlot/DotPlot.cjs +0 -2
  1000. package/dist/components/charts/DotPlot/DotPlot.cjs.map +0 -1
  1001. package/dist/components/charts/DotPlot/DotPlot.js +0 -208
  1002. package/dist/components/charts/DotPlot/DotPlot.js.map +0 -1
  1003. package/dist/components/charts/Heatmap/Heatmap.cjs +0 -2
  1004. package/dist/components/charts/Heatmap/Heatmap.cjs.map +0 -1
  1005. package/dist/components/charts/Heatmap/Heatmap.js +0 -67
  1006. package/dist/components/charts/Heatmap/Heatmap.js.map +0 -1
  1007. package/dist/components/charts/LineGraph/LineGraph.cjs +0 -2
  1008. package/dist/components/charts/LineGraph/LineGraph.cjs.map +0 -1
  1009. package/dist/components/charts/LineGraph/LineGraph.js +0 -225
  1010. package/dist/components/charts/LineGraph/LineGraph.js.map +0 -1
  1011. package/dist/components/charts/ScatterGraph/ScatterGraph.cjs +0 -2
  1012. package/dist/components/charts/ScatterGraph/ScatterGraph.cjs.map +0 -1
  1013. package/dist/components/charts/ScatterGraph/ScatterGraph.js +0 -234
  1014. package/dist/components/charts/ScatterGraph/ScatterGraph.js.map +0 -1
  1015. package/dist/components/composed/tdp-link.cjs +0 -2
  1016. package/dist/components/composed/tdp-link.cjs.map +0 -1
  1017. package/dist/components/composed/tdp-link.js +0 -84
  1018. package/dist/components/composed/tdp-link.js.map +0 -1
  1019. package/dist/components/composed/tdp-url.cjs.map +0 -1
  1020. package/dist/components/composed/tdp-url.js.map +0 -1
  1021. package/dist/components/ui/accordion.cjs +0 -2
  1022. package/dist/components/ui/accordion.cjs.map +0 -1
  1023. package/dist/components/ui/accordion.js +0 -83
  1024. package/dist/components/ui/accordion.js.map +0 -1
  1025. package/dist/components/ui/alert-dialog.cjs +0 -2
  1026. package/dist/components/ui/alert-dialog.cjs.map +0 -1
  1027. package/dist/components/ui/alert-dialog.js +0 -181
  1028. package/dist/components/ui/alert-dialog.js.map +0 -1
  1029. package/dist/components/ui/alert.cjs +0 -2
  1030. package/dist/components/ui/alert.cjs.map +0 -1
  1031. package/dist/components/ui/alert.js +0 -81
  1032. package/dist/components/ui/alert.js.map +0 -1
  1033. package/dist/components/ui/aspect-ratio.cjs.map +0 -1
  1034. package/dist/components/ui/aspect-ratio.js.map +0 -1
  1035. package/dist/components/ui/avatar.cjs +0 -2
  1036. package/dist/components/ui/avatar.cjs.map +0 -1
  1037. package/dist/components/ui/avatar.js +0 -107
  1038. package/dist/components/ui/avatar.js.map +0 -1
  1039. package/dist/components/ui/badge.cjs +0 -2
  1040. package/dist/components/ui/badge.cjs.map +0 -1
  1041. package/dist/components/ui/badge.js +0 -47
  1042. package/dist/components/ui/badge.js.map +0 -1
  1043. package/dist/components/ui/banner.cjs +0 -2
  1044. package/dist/components/ui/banner.cjs.map +0 -1
  1045. package/dist/components/ui/banner.js +0 -80
  1046. package/dist/components/ui/banner.js.map +0 -1
  1047. package/dist/components/ui/breadcrumb.cjs +0 -2
  1048. package/dist/components/ui/breadcrumb.cjs.map +0 -1
  1049. package/dist/components/ui/breadcrumb.js +0 -118
  1050. package/dist/components/ui/breadcrumb.js.map +0 -1
  1051. package/dist/components/ui/button-group.cjs +0 -2
  1052. package/dist/components/ui/button-group.cjs.map +0 -1
  1053. package/dist/components/ui/button-group.js +0 -77
  1054. package/dist/components/ui/button-group.js.map +0 -1
  1055. package/dist/components/ui/button.cjs +0 -2
  1056. package/dist/components/ui/button.cjs.map +0 -1
  1057. package/dist/components/ui/button.js +0 -57
  1058. package/dist/components/ui/button.js.map +0 -1
  1059. package/dist/components/ui/calendar.cjs +0 -2
  1060. package/dist/components/ui/calendar.cjs.map +0 -1
  1061. package/dist/components/ui/calendar.js +0 -174
  1062. package/dist/components/ui/calendar.js.map +0 -1
  1063. package/dist/components/ui/card.cjs +0 -2
  1064. package/dist/components/ui/card.cjs.map +0 -1
  1065. package/dist/components/ui/card.js +0 -102
  1066. package/dist/components/ui/card.js.map +0 -1
  1067. package/dist/components/ui/carousel.cjs +0 -2
  1068. package/dist/components/ui/carousel.cjs.map +0 -1
  1069. package/dist/components/ui/carousel.js +0 -179
  1070. package/dist/components/ui/carousel.js.map +0 -1
  1071. package/dist/components/ui/checkbox.cjs +0 -2
  1072. package/dist/components/ui/checkbox.cjs.map +0 -1
  1073. package/dist/components/ui/checkbox.js +0 -35
  1074. package/dist/components/ui/checkbox.js.map +0 -1
  1075. package/dist/components/ui/code-block.cjs +0 -4
  1076. package/dist/components/ui/code-block.cjs.map +0 -1
  1077. package/dist/components/ui/code-block.js +0 -306
  1078. package/dist/components/ui/code-block.js.map +0 -1
  1079. package/dist/components/ui/code-editor.cjs +0 -2
  1080. package/dist/components/ui/code-editor.cjs.map +0 -1
  1081. package/dist/components/ui/code-editor.js +0 -103
  1082. package/dist/components/ui/code-editor.js.map +0 -1
  1083. package/dist/components/ui/collapsible.cjs.map +0 -1
  1084. package/dist/components/ui/collapsible.js.map +0 -1
  1085. package/dist/components/ui/combobox.cjs +0 -2
  1086. package/dist/components/ui/combobox.cjs.map +0 -1
  1087. package/dist/components/ui/combobox.js +0 -281
  1088. package/dist/components/ui/combobox.js.map +0 -1
  1089. package/dist/components/ui/command.cjs +0 -2
  1090. package/dist/components/ui/command.cjs.map +0 -1
  1091. package/dist/components/ui/command.js +0 -174
  1092. package/dist/components/ui/command.js.map +0 -1
  1093. package/dist/components/ui/context-menu.cjs +0 -2
  1094. package/dist/components/ui/context-menu.cjs.map +0 -1
  1095. package/dist/components/ui/context-menu.js +0 -236
  1096. package/dist/components/ui/context-menu.js.map +0 -1
  1097. package/dist/components/ui/dialog.cjs +0 -2
  1098. package/dist/components/ui/dialog.cjs.map +0 -1
  1099. package/dist/components/ui/dialog.js +0 -165
  1100. package/dist/components/ui/dialog.js.map +0 -1
  1101. package/dist/components/ui/drawer.cjs +0 -2
  1102. package/dist/components/ui/drawer.cjs.map +0 -1
  1103. package/dist/components/ui/drawer.js +0 -125
  1104. package/dist/components/ui/drawer.js.map +0 -1
  1105. package/dist/components/ui/dropdown-menu.cjs +0 -2
  1106. package/dist/components/ui/dropdown-menu.cjs.map +0 -1
  1107. package/dist/components/ui/dropdown-menu.js +0 -252
  1108. package/dist/components/ui/dropdown-menu.js.map +0 -1
  1109. package/dist/components/ui/field.cjs +0 -2
  1110. package/dist/components/ui/field.cjs.map +0 -1
  1111. package/dist/components/ui/field.js +0 -210
  1112. package/dist/components/ui/field.js.map +0 -1
  1113. package/dist/components/ui/hover-card.cjs +0 -2
  1114. package/dist/components/ui/hover-card.cjs.map +0 -1
  1115. package/dist/components/ui/hover-card.js +0 -39
  1116. package/dist/components/ui/hover-card.js.map +0 -1
  1117. package/dist/components/ui/input-group.cjs +0 -2
  1118. package/dist/components/ui/input-group.cjs.map +0 -1
  1119. package/dist/components/ui/input-group.js +0 -145
  1120. package/dist/components/ui/input-group.js.map +0 -1
  1121. package/dist/components/ui/input-otp.cjs +0 -2
  1122. package/dist/components/ui/input-otp.cjs.map +0 -1
  1123. package/dist/components/ui/input-otp.js +0 -82
  1124. package/dist/components/ui/input-otp.js.map +0 -1
  1125. package/dist/components/ui/input.cjs +0 -2
  1126. package/dist/components/ui/input.cjs.map +0 -1
  1127. package/dist/components/ui/input.js +0 -20
  1128. package/dist/components/ui/input.js.map +0 -1
  1129. package/dist/components/ui/item.cjs +0 -2
  1130. package/dist/components/ui/item.cjs.map +0 -1
  1131. package/dist/components/ui/item.js +0 -191
  1132. package/dist/components/ui/item.js.map +0 -1
  1133. package/dist/components/ui/kbd.cjs +0 -2
  1134. package/dist/components/ui/kbd.cjs.map +0 -1
  1135. package/dist/components/ui/kbd.js +0 -30
  1136. package/dist/components/ui/kbd.js.map +0 -1
  1137. package/dist/components/ui/label.cjs +0 -2
  1138. package/dist/components/ui/label.cjs.map +0 -1
  1139. package/dist/components/ui/label.js +0 -23
  1140. package/dist/components/ui/label.js.map +0 -1
  1141. package/dist/components/ui/menubar.cjs +0 -2
  1142. package/dist/components/ui/menubar.cjs.map +0 -1
  1143. package/dist/components/ui/menubar.js +0 -256
  1144. package/dist/components/ui/menubar.js.map +0 -1
  1145. package/dist/components/ui/navigation-menu.cjs +0 -2
  1146. package/dist/components/ui/navigation-menu.cjs.map +0 -1
  1147. package/dist/components/ui/navigation-menu.js +0 -164
  1148. package/dist/components/ui/navigation-menu.js.map +0 -1
  1149. package/dist/components/ui/popover.cjs +0 -2
  1150. package/dist/components/ui/popover.cjs.map +0 -1
  1151. package/dist/components/ui/popover.js +0 -45
  1152. package/dist/components/ui/popover.js.map +0 -1
  1153. package/dist/components/ui/radio-group.cjs +0 -2
  1154. package/dist/components/ui/radio-group.cjs.map +0 -1
  1155. package/dist/components/ui/radio-group.js +0 -45
  1156. package/dist/components/ui/radio-group.js.map +0 -1
  1157. package/dist/components/ui/resizable.cjs +0 -2
  1158. package/dist/components/ui/resizable.cjs.map +0 -1
  1159. package/dist/components/ui/resizable.js +0 -58
  1160. package/dist/components/ui/resizable.js.map +0 -1
  1161. package/dist/components/ui/scroll-area.cjs +0 -2
  1162. package/dist/components/ui/scroll-area.cjs.map +0 -1
  1163. package/dist/components/ui/scroll-area.js +0 -60
  1164. package/dist/components/ui/scroll-area.js.map +0 -1
  1165. package/dist/components/ui/select.cjs +0 -2
  1166. package/dist/components/ui/select.cjs.map +0 -1
  1167. package/dist/components/ui/select.js +0 -184
  1168. package/dist/components/ui/select.js.map +0 -1
  1169. package/dist/components/ui/separator.cjs +0 -2
  1170. package/dist/components/ui/separator.cjs.map +0 -1
  1171. package/dist/components/ui/separator.js +0 -27
  1172. package/dist/components/ui/separator.js.map +0 -1
  1173. package/dist/components/ui/sheet.cjs +0 -2
  1174. package/dist/components/ui/sheet.cjs.map +0 -1
  1175. package/dist/components/ui/sheet.js +0 -137
  1176. package/dist/components/ui/sheet.js.map +0 -1
  1177. package/dist/components/ui/sidebar.cjs +0 -2
  1178. package/dist/components/ui/sidebar.cjs.map +0 -1
  1179. package/dist/components/ui/sidebar.js +0 -579
  1180. package/dist/components/ui/sidebar.js.map +0 -1
  1181. package/dist/components/ui/skeleton.cjs +0 -2
  1182. package/dist/components/ui/skeleton.cjs.map +0 -1
  1183. package/dist/components/ui/skeleton.js +0 -24
  1184. package/dist/components/ui/skeleton.js.map +0 -1
  1185. package/dist/components/ui/slider.cjs +0 -2
  1186. package/dist/components/ui/slider.cjs.map +0 -1
  1187. package/dist/components/ui/slider.js +0 -60
  1188. package/dist/components/ui/slider.js.map +0 -1
  1189. package/dist/components/ui/sonner.cjs +0 -2
  1190. package/dist/components/ui/sonner.cjs.map +0 -1
  1191. package/dist/components/ui/sonner.js +0 -37
  1192. package/dist/components/ui/sonner.js.map +0 -1
  1193. package/dist/components/ui/spinner.cjs +0 -2
  1194. package/dist/components/ui/spinner.cjs.map +0 -1
  1195. package/dist/components/ui/spinner.js +0 -39
  1196. package/dist/components/ui/spinner.js.map +0 -1
  1197. package/dist/components/ui/switch.cjs +0 -2
  1198. package/dist/components/ui/switch.cjs.map +0 -1
  1199. package/dist/components/ui/switch.js +0 -32
  1200. package/dist/components/ui/switch.js.map +0 -1
  1201. package/dist/components/ui/table.cjs +0 -2
  1202. package/dist/components/ui/table.cjs.map +0 -1
  1203. package/dist/components/ui/table.js +0 -152
  1204. package/dist/components/ui/table.js.map +0 -1
  1205. package/dist/components/ui/tabs.cjs +0 -2
  1206. package/dist/components/ui/tabs.cjs.map +0 -1
  1207. package/dist/components/ui/tabs.js +0 -92
  1208. package/dist/components/ui/tabs.js.map +0 -1
  1209. package/dist/components/ui/tetrascience-icon.cjs +0 -2
  1210. package/dist/components/ui/tetrascience-icon.cjs.map +0 -1
  1211. package/dist/components/ui/tetrascience-icon.js +0 -46
  1212. package/dist/components/ui/tetrascience-icon.js.map +0 -1
  1213. package/dist/components/ui/textarea.cjs +0 -2
  1214. package/dist/components/ui/textarea.cjs.map +0 -1
  1215. package/dist/components/ui/textarea.js +0 -19
  1216. package/dist/components/ui/textarea.js.map +0 -1
  1217. package/dist/components/ui/toggle-group.cjs +0 -2
  1218. package/dist/components/ui/toggle-group.cjs.map +0 -1
  1219. package/dist/components/ui/toggle-group.js +0 -77
  1220. package/dist/components/ui/toggle-group.js.map +0 -1
  1221. package/dist/components/ui/toggle.cjs +0 -2
  1222. package/dist/components/ui/toggle.cjs.map +0 -1
  1223. package/dist/components/ui/toggle.js +0 -44
  1224. package/dist/components/ui/toggle.js.map +0 -1
  1225. package/dist/components/ui/tooltip.cjs +0 -2
  1226. package/dist/components/ui/tooltip.cjs.map +0 -1
  1227. package/dist/components/ui/tooltip.js +0 -56
  1228. package/dist/components/ui/tooltip.js.map +0 -1
  1229. package/dist/databricks.d.ts +0 -129
  1230. package/dist/providers/athena.d.ts +0 -9
  1231. package/dist/providers/databricks.d.ts +0 -9
  1232. package/dist/providers/snowflake.d.ts +0 -9
  1233. package/dist/snowflake.d.ts +0 -125
  1234. /package/dist/components/charts/{ChromatogramChart → Chromatogram}/peakDetection.cjs +0 -0
  1235. /package/dist/components/charts/{ChromatogramChart → Chromatogram}/peakDetection.js +0 -0
  1236. /package/dist/{components/composed → composed}/tdp-url.cjs +0 -0
  1237. /package/dist/{components/composed → composed}/tdp-url.js +0 -0
  1238. /package/dist/{components/ui → ui}/aspect-ratio.cjs +0 -0
  1239. /package/dist/{components/ui → ui}/aspect-ratio.js +0 -0
  1240. /package/dist/{components/ui → ui}/collapsible.cjs +0 -0
  1241. /package/dist/{components/ui → ui}/collapsible.js +0 -0
@@ -1,13 +1,13 @@
1
1
  import { jsxs as n, jsx as e, Fragment as z } from "react/jsx-runtime";
2
2
  import { GlobeIcon as O, CopyIcon as V, RefreshCcwIcon as W } from "lucide-react";
3
3
  import { useId as j, useState as c, useCallback as g } from "react";
4
- import { Conversation as q, ConversationContent as $, ConversationEmptyState as H, ConversationScrollButton as J } from "../../ai/conversation.js";
5
- import { MessageBranch as K, MessageBranchContent as Q, MessageToolbar as X, MessageBranchSelector as Y, MessageBranchPrevious as Z, MessageBranchPage as ee, MessageBranchNext as te, Message as A, MessageContent as B, MessageResponse as E, MessageActions as ne, MessageAction as T } from "../../ai/message.js";
6
- import { PromptInput as re, PromptInputBody as ae, PromptInputTextarea as se, PromptInputFooter as oe, PromptInputTools as ie, PromptInputSelect as ce, PromptInputSelectTrigger as le, PromptInputSelectValue as de, PromptInputSelectContent as he, PromptInputSelectItem as me, PromptInputButton as pe, PromptInputSubmit as ue } from "../../ai/prompt-input.js";
7
- import { Reasoning as ge, ReasoningTrigger as Se, ReasoningContent as fe } from "../../ai/reasoning.js";
8
- import { Sources as Ce, SourcesTrigger as ye, SourcesContent as Ie, Source as be } from "../../ai/sources.js";
9
- import { StreamStatus as ve } from "../../ai/stream-status.js";
10
- import { Suggestions as xe, Suggestion as Me } from "../../ai/suggestion.js";
4
+ import { Conversation as q, ConversationContent as $, ConversationEmptyState as H, ConversationScrollButton as J } from "../../../ai/conversation.js";
5
+ import { MessageBranch as K, MessageBranchContent as Q, MessageToolbar as X, MessageBranchSelector as Y, MessageBranchPrevious as Z, MessageBranchPage as ee, MessageBranchNext as te, Message as A, MessageContent as B, MessageResponse as E, MessageActions as ne, MessageAction as T } from "../../../ai/message.js";
6
+ import { PromptInput as re, PromptInputBody as ae, PromptInputTextarea as oe, PromptInputFooter as se, PromptInputTools as ie, PromptInputSelect as ce, PromptInputSelectTrigger as le, PromptInputSelectValue as de, PromptInputSelectContent as he, PromptInputSelectItem as me, PromptInputButton as pe, PromptInputSubmit as ue } from "../../../ai/prompt-input.js";
7
+ import { Reasoning as ge, ReasoningTrigger as Se, ReasoningContent as fe } from "../../../ai/reasoning.js";
8
+ import { Sources as Ce, SourcesTrigger as be, SourcesContent as ye, Source as Ie } from "../../../ai/sources.js";
9
+ import { StreamStatus as ve } from "../../../ai/stream-status.js";
10
+ import { Suggestions as xe, Suggestion as Me } from "../../../ai/suggestion.js";
11
11
  import { cn as Pe } from "../../../lib/utils.js";
12
12
  const Te = [
13
13
  { id: "claude-sonnet-4-6", name: "Claude Sonnet" },
@@ -21,13 +21,13 @@ const Te = [
21
21
  let N = 0;
22
22
  const R = () => (N += 1, `chat-msg-${N}`), Re = 3e3, ze = ({
23
23
  initialMessages: S = [],
24
- models: o = Te,
24
+ models: s = Te,
25
25
  defaultModel: d,
26
- suggestions: s = Ne,
26
+ suggestions: o = Ne,
27
27
  onSend: h,
28
28
  className: f
29
29
  }) => {
30
- const l = j(), [m, C] = c(S), [p, y] = c(""), [I, k] = c(d ?? o[0]?.id ?? ""), [_, D] = c(!1), [u, b] = c("ready"), [v, x] = c(), U = g(
30
+ const l = j(), [m, C] = c(S), [p, b] = c(""), [y, k] = c(d ?? s[0]?.id ?? ""), [_, D] = c(!1), [u, I] = c("ready"), [v, x] = c(), U = g(
31
31
  async (t) => {
32
32
  const r = p.trim();
33
33
  if (!r || u === "streaming") return;
@@ -36,21 +36,21 @@ const R = () => (N += 1, `chat-msg-${N}`), Re = 3e3, ze = ({
36
36
  role: "user",
37
37
  content: r
38
38
  };
39
- C((a) => [...a, i]), y(""), b("streaming"), x(/* @__PURE__ */ new Date());
39
+ C((a) => [...a, i]), b(""), I("streaming"), x(/* @__PURE__ */ new Date());
40
40
  try {
41
- const a = await h?.(r, I), G = {
41
+ const a = await h?.(r, y), G = {
42
42
  id: R(),
43
43
  role: "assistant",
44
44
  content: a ?? "I received your message."
45
45
  };
46
46
  C((L) => [...L, G]);
47
47
  } finally {
48
- b("ready"), setTimeout(() => x(void 0), Re);
48
+ I("ready"), setTimeout(() => x(void 0), Re);
49
49
  }
50
50
  },
51
- [p, u, I, h]
51
+ [p, u, y, h]
52
52
  ), F = g((t) => {
53
- y(t);
53
+ b(t);
54
54
  }, []), M = g((t) => {
55
55
  navigator.clipboard.writeText(t).catch(() => {
56
56
  });
@@ -112,22 +112,22 @@ const R = () => (N += 1, `chat-msg-${N}`), Re = 3e3, ze = ({
112
112
  ] }),
113
113
  /* @__PURE__ */ e(J, {})
114
114
  ] }),
115
- m.length === 0 && s.length > 0 && /* @__PURE__ */ e("div", { className: "px-4 pb-2", children: /* @__PURE__ */ e(xe, { children: s.map((t) => /* @__PURE__ */ e(Me, { onClick: F, suggestion: t }, t)) }) }),
115
+ m.length === 0 && o.length > 0 && /* @__PURE__ */ e("div", { className: "px-4 pb-2", children: /* @__PURE__ */ e(xe, { children: o.map((t) => /* @__PURE__ */ e(Me, { onClick: F, suggestion: t }, t)) }) }),
116
116
  /* @__PURE__ */ e("div", { className: "px-4 pt-3 pb-4", children: /* @__PURE__ */ n(re, { onSubmit: U, children: [
117
117
  /* @__PURE__ */ e(ae, { children: /* @__PURE__ */ e(
118
- se,
118
+ oe,
119
119
  {
120
120
  "aria-labelledby": l,
121
- onChange: (t) => y(t.target.value),
121
+ onChange: (t) => b(t.target.value),
122
122
  placeholder: "Ask anything...",
123
123
  value: p
124
124
  }
125
125
  ) }),
126
- /* @__PURE__ */ n(oe, { children: [
126
+ /* @__PURE__ */ n(se, { children: [
127
127
  /* @__PURE__ */ n(ie, { children: [
128
- o.length > 1 && /* @__PURE__ */ n(ce, { onValueChange: k, value: I, children: [
129
- /* @__PURE__ */ e(le, { children: /* @__PURE__ */ e(de, {}) }),
130
- /* @__PURE__ */ e(he, { children: o.map((t) => /* @__PURE__ */ e(me, { value: t.id, children: t.name }, t.id)) })
128
+ s.length > 1 && /* @__PURE__ */ n(ce, { onValueChange: k, value: y, children: [
129
+ /* @__PURE__ */ e(le, { "aria-label": "Select model", children: /* @__PURE__ */ e(de, {}) }),
130
+ /* @__PURE__ */ e(he, { children: s.map((t) => /* @__PURE__ */ e(me, { value: t.id, children: t.name }, t.id)) })
131
131
  ] }),
132
132
  /* @__PURE__ */ n(
133
133
  pe,
@@ -146,18 +146,18 @@ const R = () => (N += 1, `chat-msg-${N}`), Re = 3e3, ze = ({
146
146
  ] })
147
147
  ] }) })
148
148
  ] });
149
- }, w = ({ id: S, content: o, reasoning: d, sources: s, onCopy: h, onRetry: f }) => /* @__PURE__ */ n("div", { className: "space-y-2", children: [
149
+ }, w = ({ id: S, content: s, reasoning: d, sources: o, onCopy: h, onRetry: f }) => /* @__PURE__ */ n("div", { className: "space-y-2", children: [
150
150
  d && /* @__PURE__ */ n(ge, { children: [
151
151
  /* @__PURE__ */ e(Se, {}),
152
152
  /* @__PURE__ */ e(fe, { children: d })
153
153
  ] }),
154
- /* @__PURE__ */ e(A, { from: "assistant", children: /* @__PURE__ */ e(B, { children: /* @__PURE__ */ e(E, { children: o }) }) }),
155
- s && s.length > 0 && /* @__PURE__ */ n(Ce, { children: [
156
- /* @__PURE__ */ e(ye, { count: s.length }),
157
- /* @__PURE__ */ e(Ie, { children: s.map((l) => /* @__PURE__ */ e(be, { href: l.href, title: l.title }, l.href)) })
154
+ /* @__PURE__ */ e(A, { from: "assistant", children: /* @__PURE__ */ e(B, { children: /* @__PURE__ */ e(E, { children: s }) }) }),
155
+ o && o.length > 0 && /* @__PURE__ */ n(Ce, { children: [
156
+ /* @__PURE__ */ e(be, { count: o.length }),
157
+ /* @__PURE__ */ e(ye, { children: o.map((l) => /* @__PURE__ */ e(Ie, { href: l.href, title: l.title }, l.href)) })
158
158
  ] }),
159
159
  /* @__PURE__ */ n(ne, { children: [
160
- /* @__PURE__ */ e(T, { label: "Copy", onClick: () => h(o), children: /* @__PURE__ */ e(V, { className: "size-3" }) }),
160
+ /* @__PURE__ */ e(T, { label: "Copy", onClick: () => h(s), children: /* @__PURE__ */ e(V, { className: "size-3" }) }),
161
161
  /* @__PURE__ */ e(T, { label: "Retry", onClick: () => f(S), children: /* @__PURE__ */ e(W, { className: "size-3" }) })
162
162
  ] })
163
163
  ] });
@@ -1 +1 @@
1
- {"version":3,"file":"Chat.js","sources":["../../../../src/components/composed/Chat/Chat.tsx"],"sourcesContent":["import { CopyIcon, GlobeIcon, RefreshCcwIcon } from \"lucide-react\"\nimport { useCallback, useId, useState } from \"react\"\n\nimport {\n Conversation,\n ConversationContent,\n ConversationEmptyState,\n ConversationScrollButton,\n} from \"@/components/ai/conversation\"\nimport {\n Message,\n MessageAction,\n MessageActions,\n MessageBranch,\n MessageBranchContent,\n MessageBranchNext,\n MessageBranchPage,\n MessageBranchPrevious,\n MessageBranchSelector,\n MessageContent,\n MessageResponse,\n MessageToolbar,\n} from \"@/components/ai/message\"\nimport {\n PromptInput,\n PromptInputBody,\n PromptInputButton,\n PromptInputFooter,\n PromptInputSelect,\n PromptInputSelectContent,\n PromptInputSelectItem,\n PromptInputSelectTrigger,\n PromptInputSelectValue,\n PromptInputSubmit,\n PromptInputTextarea,\n PromptInputTools,\n type PromptInputMessage,\n} from \"@/components/ai/prompt-input\"\nimport { Reasoning, ReasoningContent, ReasoningTrigger } from \"@/components/ai/reasoning\"\nimport { Source, Sources, SourcesContent, SourcesTrigger } from \"@/components/ai/sources\"\nimport { StreamStatus } from \"@/components/ai/stream-status\"\nimport { Suggestion, Suggestions } from \"@/components/ai/suggestion\"\nimport { cn } from \"@/lib/utils\"\n\n// ---------------------------------------------------------------------------\n// Types\n// ---------------------------------------------------------------------------\n\nexport interface ChatSource {\n href: string\n title: string\n}\n\nexport interface ChatMessage {\n id: string\n role: \"user\" | \"assistant\"\n content: string\n /** Displayed in a collapsible Reasoning panel above the message content. */\n reasoning?: string\n /** Web sources used to produce this message. */\n sources?: ChatSource[]\n /** Multiple alternative responses (for branching). When provided, the\n * array should include `content` as one of its items. */\n branches?: string[]\n}\n\nexport interface ChatModel {\n id: string\n name: string\n}\n\nexport interface ChatProps {\n /** Initial messages to pre-populate the conversation. */\n initialMessages?: ChatMessage[]\n /** Available models shown in the model-selector dropdown. */\n models?: ChatModel[]\n /** Initial model id. Defaults to the first model in `models`. */\n defaultModel?: string\n /** Suggestion chips shown when the conversation is empty. */\n suggestions?: string[]\n /** Called when the user submits a message. The returned string (if any)\n * will be appended as the assistant's reply. Defaults to a no-op. */\n onSend?: (message: string, model: string) => Promise<string | undefined> | string | undefined\n className?: string\n}\n\n// ---------------------------------------------------------------------------\n// Default values\n// ---------------------------------------------------------------------------\n\nconst DEFAULT_MODELS: ChatModel[] = [\n { id: \"claude-sonnet-4-6\", name: \"Claude Sonnet\" },\n { id: \"claude-opus-4-7\", name: \"Claude Opus\" },\n]\n\nconst DEFAULT_SUGGESTIONS = [\n \"Explain quantum entanglement simply\",\n \"Write a Python script to rename files\",\n \"Summarise the latest AI research trends\",\n \"What is the difference between TCP and UDP?\",\n]\n\nlet _idCounter = 0\nconst nextId = () => {\n _idCounter += 1\n return `chat-msg-${_idCounter}`\n}\n\nconst STREAM_STATUS_LINGER_MS = 3000\n\n// ---------------------------------------------------------------------------\n// Chat component\n// ---------------------------------------------------------------------------\n\nexport const Chat = ({\n initialMessages = [],\n models = DEFAULT_MODELS,\n defaultModel,\n suggestions = DEFAULT_SUGGESTIONS,\n onSend,\n className,\n}: ChatProps) => {\n const labelId = useId()\n const [messages, setMessages] = useState<ChatMessage[]>(initialMessages)\n const [text, setText] = useState(\"\")\n const [model, setModel] = useState(defaultModel ?? models[0]?.id ?? \"\")\n const [webSearch, setWebSearch] = useState(false)\n const [status, setStatus] = useState<\"ready\" | \"streaming\">(\"ready\")\n const [streamStart, setStreamStart] = useState<Date | undefined>()\n\n const handleSubmit = useCallback(\n async (_msg: PromptInputMessage) => {\n const trimmed = text.trim()\n if (!trimmed || status === \"streaming\") return\n\n const userMsg: ChatMessage = {\n id: nextId(),\n role: \"user\",\n content: trimmed,\n }\n setMessages((prev) => [...prev, userMsg])\n setText(\"\")\n setStatus(\"streaming\")\n setStreamStart(new Date())\n\n try {\n const reply = await onSend?.(trimmed, model)\n const assistantMsg: ChatMessage = {\n id: nextId(),\n role: \"assistant\",\n content: reply ?? \"I received your message.\",\n }\n setMessages((prev) => [...prev, assistantMsg])\n } finally {\n setStatus(\"ready\")\n // Keep streamStart briefly so the bubble-confirm ripple can play out\n setTimeout(() => setStreamStart(undefined), STREAM_STATUS_LINGER_MS)\n }\n },\n [text, status, model, onSend],\n )\n\n const handleSuggestion = useCallback((suggestion: string) => {\n setText(suggestion)\n }, [])\n\n const handleCopy = useCallback((content: string) => {\n navigator.clipboard.writeText(content).catch(() => {})\n }, [])\n\n const handleRetry = useCallback((id: string) => {\n setMessages((prev) => {\n const idx = prev.findIndex((m) => m.id === id)\n if (idx === -1) return prev\n return prev.slice(0, idx)\n })\n }, [])\n\n return (\n <div className={cn(\"mx-auto flex h-full w-full max-w-[980px] flex-col\", className)}>\n {/* Conversation */}\n <Conversation className=\"flex-1\">\n <ConversationContent>\n {messages.length === 0 ? (\n <ConversationEmptyState\n description=\"Send a message or pick a suggestion below to start.\"\n title=\"Start a conversation\"\n />\n ) : null}\n\n {messages.map((msg, index) => (\n <div className=\"space-y-1\" key={msg.id}>\n {/* Branch wrapper — renders alt responses side-by-side when branches exist */}\n {msg.role === \"assistant\" && msg.branches && msg.branches.length > 1 ? (\n <MessageBranch>\n <MessageBranchContent>\n {msg.branches.map((branch, i) => (\n <AssistantMessage\n key={i}\n content={branch}\n id={msg.id}\n onCopy={handleCopy}\n onRetry={handleRetry}\n reasoning={i === 0 ? msg.reasoning : undefined}\n sources={i === 0 ? msg.sources : undefined}\n />\n ))}\n </MessageBranchContent>\n <MessageToolbar>\n <MessageBranchSelector>\n <MessageBranchPrevious />\n <MessageBranchPage />\n <MessageBranchNext />\n </MessageBranchSelector>\n </MessageToolbar>\n </MessageBranch>\n ) : msg.role === \"assistant\" ? (\n <>\n <AssistantMessage\n content={msg.content}\n id={msg.id}\n onCopy={handleCopy}\n onRetry={handleRetry}\n reasoning={msg.reasoning}\n sources={msg.sources}\n />\n </>\n ) : (\n <Message from=\"user\">\n <MessageContent>\n <MessageResponse>{msg.content}</MessageResponse>\n </MessageContent>\n </Message>\n )}\n\n {index === messages.length - 1 && streamStart && (\n <div className=\"mt-3\">\n <StreamStatus\n iconVariant=\"loader-circle\"\n isStreaming={status === \"streaming\"}\n startTime={streamStart}\n />\n </div>\n )}\n </div>\n ))}\n </ConversationContent>\n <ConversationScrollButton />\n </Conversation>\n\n {/* Suggestions — only shown when conversation is empty */}\n {messages.length === 0 && suggestions.length > 0 && (\n <div className=\"px-4 pb-2\">\n <Suggestions>\n {suggestions.map((s) => (\n <Suggestion key={s} onClick={handleSuggestion} suggestion={s} />\n ))}\n </Suggestions>\n </div>\n )}\n\n {/* Prompt input */}\n <div className=\"px-4 pt-3 pb-4\">\n <PromptInput onSubmit={handleSubmit}>\n <PromptInputBody>\n <PromptInputTextarea\n aria-labelledby={labelId}\n onChange={(e) => setText(e.target.value)}\n placeholder=\"Ask anything...\"\n value={text}\n />\n </PromptInputBody>\n <PromptInputFooter>\n <PromptInputTools>\n {/* Model selector */}\n {models.length > 1 && (\n <PromptInputSelect onValueChange={setModel} value={model}>\n <PromptInputSelectTrigger>\n <PromptInputSelectValue />\n </PromptInputSelectTrigger>\n <PromptInputSelectContent>\n {models.map((m) => (\n <PromptInputSelectItem key={m.id} value={m.id}>\n {m.name}\n </PromptInputSelectItem>\n ))}\n </PromptInputSelectContent>\n </PromptInputSelect>\n )}\n\n {/* Web search toggle */}\n <PromptInputButton\n onClick={() => setWebSearch((v) => !v)}\n tooltip={{ content: \"Search the web\" }}\n variant={webSearch ? \"default\" : \"ghost\"}\n >\n <GlobeIcon size={16} />\n <span>Search</span>\n </PromptInputButton>\n </PromptInputTools>\n\n <PromptInputSubmit disabled={!text.trim()} status={status} />\n </PromptInputFooter>\n </PromptInput>\n </div>\n </div>\n )\n}\n\n// ---------------------------------------------------------------------------\n// Internal sub-component for assistant messages\n// ---------------------------------------------------------------------------\n\ninterface AssistantMessageProps {\n id: string\n content: string\n reasoning?: string\n sources?: ChatSource[]\n onCopy: (content: string) => void\n onRetry: (id: string) => void\n}\n\nconst AssistantMessage = ({ id, content, reasoning, sources, onCopy, onRetry }: AssistantMessageProps) => (\n <div className=\"space-y-2\">\n {reasoning && (\n <Reasoning>\n <ReasoningTrigger />\n <ReasoningContent>{reasoning}</ReasoningContent>\n </Reasoning>\n )}\n\n <Message from=\"assistant\">\n <MessageContent>\n <MessageResponse>{content}</MessageResponse>\n </MessageContent>\n </Message>\n\n {sources && sources.length > 0 && (\n <Sources>\n <SourcesTrigger count={sources.length} />\n <SourcesContent>\n {sources.map((s) => (\n <Source href={s.href} key={s.href} title={s.title} />\n ))}\n </SourcesContent>\n </Sources>\n )}\n\n <MessageActions>\n <MessageAction label=\"Copy\" onClick={() => onCopy(content)}>\n <CopyIcon className=\"size-3\" />\n </MessageAction>\n <MessageAction label=\"Retry\" onClick={() => onRetry(id)}>\n <RefreshCcwIcon className=\"size-3\" />\n </MessageAction>\n </MessageActions>\n </div>\n)\n"],"names":["DEFAULT_MODELS","DEFAULT_SUGGESTIONS","_idCounter","nextId","STREAM_STATUS_LINGER_MS","Chat","initialMessages","models","defaultModel","suggestions","onSend","className","labelId","useId","messages","setMessages","useState","text","setText","model","setModel","webSearch","setWebSearch","status","setStatus","streamStart","setStreamStart","handleSubmit","useCallback","_msg","trimmed","userMsg","prev","reply","assistantMsg","handleSuggestion","suggestion","handleCopy","content","handleRetry","id","idx","m","cn","jsxs","Conversation","ConversationContent","jsx","ConversationEmptyState","msg","index","MessageBranch","MessageBranchContent","branch","i","AssistantMessage","MessageToolbar","MessageBranchSelector","MessageBranchPrevious","MessageBranchPage","MessageBranchNext","Fragment","Message","MessageContent","MessageResponse","StreamStatus","ConversationScrollButton","Suggestions","s","Suggestion","PromptInput","PromptInputBody","PromptInputTextarea","e","PromptInputFooter","PromptInputTools","PromptInputSelect","PromptInputSelectTrigger","PromptInputSelectValue","PromptInputSelectContent","PromptInputSelectItem","PromptInputButton","v","GlobeIcon","PromptInputSubmit","reasoning","sources","onCopy","onRetry","Reasoning","ReasoningTrigger","ReasoningContent","Sources","SourcesTrigger","SourcesContent","Source","MessageActions","MessageAction","CopyIcon","RefreshCcwIcon"],"mappings":"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"}
1
+ {"version":3,"file":"Chat.js","sources":["../../../../src/components/composed/Chat/Chat.tsx"],"sourcesContent":["import { CopyIcon, GlobeIcon, RefreshCcwIcon } from \"lucide-react\"\nimport { useCallback, useId, useState } from \"react\"\n\nimport {\n Conversation,\n ConversationContent,\n ConversationEmptyState,\n ConversationScrollButton,\n} from \"@/components/ai/conversation\"\nimport {\n Message,\n MessageAction,\n MessageActions,\n MessageBranch,\n MessageBranchContent,\n MessageBranchNext,\n MessageBranchPage,\n MessageBranchPrevious,\n MessageBranchSelector,\n MessageContent,\n MessageResponse,\n MessageToolbar,\n} from \"@/components/ai/message\"\nimport {\n PromptInput,\n PromptInputBody,\n PromptInputButton,\n PromptInputFooter,\n PromptInputSelect,\n PromptInputSelectContent,\n PromptInputSelectItem,\n PromptInputSelectTrigger,\n PromptInputSelectValue,\n PromptInputSubmit,\n PromptInputTextarea,\n PromptInputTools,\n type PromptInputMessage,\n} from \"@/components/ai/prompt-input\"\nimport { Reasoning, ReasoningContent, ReasoningTrigger } from \"@/components/ai/reasoning\"\nimport { Source, Sources, SourcesContent, SourcesTrigger } from \"@/components/ai/sources\"\nimport { StreamStatus } from \"@/components/ai/stream-status\"\nimport { Suggestion, Suggestions } from \"@/components/ai/suggestion\"\nimport { cn } from \"@/lib/utils\"\n\n// ---------------------------------------------------------------------------\n// Types\n// ---------------------------------------------------------------------------\n\nexport interface ChatSource {\n href: string\n title: string\n}\n\nexport interface ChatMessage {\n id: string\n role: \"user\" | \"assistant\"\n content: string\n /** Displayed in a collapsible Reasoning panel above the message content. */\n reasoning?: string\n /** Web sources used to produce this message. */\n sources?: ChatSource[]\n /** Multiple alternative responses (for branching). When provided, the\n * array should include `content` as one of its items. */\n branches?: string[]\n}\n\nexport interface ChatModel {\n id: string\n name: string\n}\n\nexport interface ChatProps {\n /** Initial messages to pre-populate the conversation. */\n initialMessages?: ChatMessage[]\n /** Available models shown in the model-selector dropdown. */\n models?: ChatModel[]\n /** Initial model id. Defaults to the first model in `models`. */\n defaultModel?: string\n /** Suggestion chips shown when the conversation is empty. */\n suggestions?: string[]\n /** Called when the user submits a message. The returned string (if any)\n * will be appended as the assistant's reply. Defaults to a no-op. */\n onSend?: (message: string, model: string) => Promise<string | undefined> | string | undefined\n className?: string\n}\n\n// ---------------------------------------------------------------------------\n// Default values\n// ---------------------------------------------------------------------------\n\nconst DEFAULT_MODELS: ChatModel[] = [\n { id: \"claude-sonnet-4-6\", name: \"Claude Sonnet\" },\n { id: \"claude-opus-4-7\", name: \"Claude Opus\" },\n]\n\nconst DEFAULT_SUGGESTIONS = [\n \"Explain quantum entanglement simply\",\n \"Write a Python script to rename files\",\n \"Summarise the latest AI research trends\",\n \"What is the difference between TCP and UDP?\",\n]\n\nlet _idCounter = 0\nconst nextId = () => {\n _idCounter += 1\n return `chat-msg-${_idCounter}`\n}\n\nconst STREAM_STATUS_LINGER_MS = 3000\n\n// ---------------------------------------------------------------------------\n// Chat component\n// ---------------------------------------------------------------------------\n\nexport const Chat = ({\n initialMessages = [],\n models = DEFAULT_MODELS,\n defaultModel,\n suggestions = DEFAULT_SUGGESTIONS,\n onSend,\n className,\n}: ChatProps) => {\n const labelId = useId()\n const [messages, setMessages] = useState<ChatMessage[]>(initialMessages)\n const [text, setText] = useState(\"\")\n const [model, setModel] = useState(defaultModel ?? models[0]?.id ?? \"\")\n const [webSearch, setWebSearch] = useState(false)\n const [status, setStatus] = useState<\"ready\" | \"streaming\">(\"ready\")\n const [streamStart, setStreamStart] = useState<Date | undefined>()\n\n const handleSubmit = useCallback(\n async (_msg: PromptInputMessage) => {\n const trimmed = text.trim()\n if (!trimmed || status === \"streaming\") return\n\n const userMsg: ChatMessage = {\n id: nextId(),\n role: \"user\",\n content: trimmed,\n }\n setMessages((prev) => [...prev, userMsg])\n setText(\"\")\n setStatus(\"streaming\")\n setStreamStart(new Date())\n\n try {\n const reply = await onSend?.(trimmed, model)\n const assistantMsg: ChatMessage = {\n id: nextId(),\n role: \"assistant\",\n content: reply ?? \"I received your message.\",\n }\n setMessages((prev) => [...prev, assistantMsg])\n } finally {\n setStatus(\"ready\")\n // Keep streamStart briefly so the bubble-confirm ripple can play out\n setTimeout(() => setStreamStart(undefined), STREAM_STATUS_LINGER_MS)\n }\n },\n [text, status, model, onSend],\n )\n\n const handleSuggestion = useCallback((suggestion: string) => {\n setText(suggestion)\n }, [])\n\n const handleCopy = useCallback((content: string) => {\n navigator.clipboard.writeText(content).catch(() => {})\n }, [])\n\n const handleRetry = useCallback((id: string) => {\n setMessages((prev) => {\n const idx = prev.findIndex((m) => m.id === id)\n if (idx === -1) return prev\n return prev.slice(0, idx)\n })\n }, [])\n\n return (\n <div className={cn(\"mx-auto flex h-full w-full max-w-[980px] flex-col\", className)}>\n {/* Conversation */}\n <Conversation className=\"flex-1\">\n <ConversationContent>\n {messages.length === 0 ? (\n <ConversationEmptyState\n description=\"Send a message or pick a suggestion below to start.\"\n title=\"Start a conversation\"\n />\n ) : null}\n\n {messages.map((msg, index) => (\n <div className=\"space-y-1\" key={msg.id}>\n {/* Branch wrapper — renders alt responses side-by-side when branches exist */}\n {msg.role === \"assistant\" && msg.branches && msg.branches.length > 1 ? (\n <MessageBranch>\n <MessageBranchContent>\n {msg.branches.map((branch, i) => (\n <AssistantMessage\n key={i}\n content={branch}\n id={msg.id}\n onCopy={handleCopy}\n onRetry={handleRetry}\n reasoning={i === 0 ? msg.reasoning : undefined}\n sources={i === 0 ? msg.sources : undefined}\n />\n ))}\n </MessageBranchContent>\n <MessageToolbar>\n <MessageBranchSelector>\n <MessageBranchPrevious />\n <MessageBranchPage />\n <MessageBranchNext />\n </MessageBranchSelector>\n </MessageToolbar>\n </MessageBranch>\n ) : msg.role === \"assistant\" ? (\n <>\n <AssistantMessage\n content={msg.content}\n id={msg.id}\n onCopy={handleCopy}\n onRetry={handleRetry}\n reasoning={msg.reasoning}\n sources={msg.sources}\n />\n </>\n ) : (\n <Message from=\"user\">\n <MessageContent>\n <MessageResponse>{msg.content}</MessageResponse>\n </MessageContent>\n </Message>\n )}\n\n {index === messages.length - 1 && streamStart && (\n <div className=\"mt-3\">\n <StreamStatus\n iconVariant=\"loader-circle\"\n isStreaming={status === \"streaming\"}\n startTime={streamStart}\n />\n </div>\n )}\n </div>\n ))}\n </ConversationContent>\n <ConversationScrollButton />\n </Conversation>\n\n {/* Suggestions — only shown when conversation is empty */}\n {messages.length === 0 && suggestions.length > 0 && (\n <div className=\"px-4 pb-2\">\n <Suggestions>\n {suggestions.map((s) => (\n <Suggestion key={s} onClick={handleSuggestion} suggestion={s} />\n ))}\n </Suggestions>\n </div>\n )}\n\n {/* Prompt input */}\n <div className=\"px-4 pt-3 pb-4\">\n <PromptInput onSubmit={handleSubmit}>\n <PromptInputBody>\n <PromptInputTextarea\n aria-labelledby={labelId}\n onChange={(e) => setText(e.target.value)}\n placeholder=\"Ask anything...\"\n value={text}\n />\n </PromptInputBody>\n <PromptInputFooter>\n <PromptInputTools>\n {/* Model selector */}\n {models.length > 1 && (\n <PromptInputSelect onValueChange={setModel} value={model}>\n <PromptInputSelectTrigger aria-label=\"Select model\">\n <PromptInputSelectValue />\n </PromptInputSelectTrigger>\n <PromptInputSelectContent>\n {models.map((m) => (\n <PromptInputSelectItem key={m.id} value={m.id}>\n {m.name}\n </PromptInputSelectItem>\n ))}\n </PromptInputSelectContent>\n </PromptInputSelect>\n )}\n\n {/* Web search toggle */}\n <PromptInputButton\n onClick={() => setWebSearch((v) => !v)}\n tooltip={{ content: \"Search the web\" }}\n variant={webSearch ? \"default\" : \"ghost\"}\n >\n <GlobeIcon size={16} />\n <span>Search</span>\n </PromptInputButton>\n </PromptInputTools>\n\n <PromptInputSubmit disabled={!text.trim()} status={status} />\n </PromptInputFooter>\n </PromptInput>\n </div>\n </div>\n )\n}\n\n// ---------------------------------------------------------------------------\n// Internal sub-component for assistant messages\n// ---------------------------------------------------------------------------\n\ninterface AssistantMessageProps {\n id: string\n content: string\n reasoning?: string\n sources?: ChatSource[]\n onCopy: (content: string) => void\n onRetry: (id: string) => void\n}\n\nconst AssistantMessage = ({ id, content, reasoning, sources, onCopy, onRetry }: AssistantMessageProps) => (\n <div className=\"space-y-2\">\n {reasoning && (\n <Reasoning>\n <ReasoningTrigger />\n <ReasoningContent>{reasoning}</ReasoningContent>\n </Reasoning>\n )}\n\n <Message from=\"assistant\">\n <MessageContent>\n <MessageResponse>{content}</MessageResponse>\n </MessageContent>\n </Message>\n\n {sources && sources.length > 0 && (\n <Sources>\n <SourcesTrigger count={sources.length} />\n <SourcesContent>\n {sources.map((s) => (\n <Source href={s.href} key={s.href} title={s.title} />\n ))}\n </SourcesContent>\n </Sources>\n )}\n\n <MessageActions>\n <MessageAction label=\"Copy\" onClick={() => onCopy(content)}>\n <CopyIcon className=\"size-3\" />\n </MessageAction>\n <MessageAction label=\"Retry\" onClick={() => onRetry(id)}>\n <RefreshCcwIcon className=\"size-3\" />\n </MessageAction>\n </MessageActions>\n </div>\n)\n"],"names":["DEFAULT_MODELS","DEFAULT_SUGGESTIONS","_idCounter","nextId","STREAM_STATUS_LINGER_MS","Chat","initialMessages","models","defaultModel","suggestions","onSend","className","labelId","useId","messages","setMessages","useState","text","setText","model","setModel","webSearch","setWebSearch","status","setStatus","streamStart","setStreamStart","handleSubmit","useCallback","_msg","trimmed","userMsg","prev","reply","assistantMsg","handleSuggestion","suggestion","handleCopy","content","handleRetry","id","idx","m","cn","jsxs","Conversation","ConversationContent","jsx","ConversationEmptyState","msg","index","MessageBranch","MessageBranchContent","branch","i","AssistantMessage","MessageToolbar","MessageBranchSelector","MessageBranchPrevious","MessageBranchPage","MessageBranchNext","Fragment","Message","MessageContent","MessageResponse","StreamStatus","ConversationScrollButton","Suggestions","s","Suggestion","PromptInput","PromptInputBody","PromptInputTextarea","e","PromptInputFooter","PromptInputTools","PromptInputSelect","PromptInputSelectTrigger","PromptInputSelectValue","PromptInputSelectContent","PromptInputSelectItem","PromptInputButton","v","GlobeIcon","PromptInputSubmit","reasoning","sources","onCopy","onRetry","Reasoning","ReasoningTrigger","ReasoningContent","Sources","SourcesTrigger","SourcesContent","Source","MessageActions","MessageAction","CopyIcon","RefreshCcwIcon"],"mappings":";;;;;;;;;;;AA0FA,MAAMA,KAA8B;AAAA,EAClC,EAAE,IAAI,qBAAqB,MAAM,gBAAA;AAAA,EACjC,EAAE,IAAI,mBAAmB,MAAM,cAAA;AACjC,GAEMC,KAAsB;AAAA,EAC1B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEA,IAAIC,IAAa;AACjB,MAAMC,IAAS,OACbD,KAAc,GACP,YAAYA,CAAU,KAGzBE,KAA0B,KAMnBC,KAAO,CAAC;AAAA,EACnB,iBAAAC,IAAkB,CAAA;AAAA,EAClB,QAAAC,IAASP;AAAA,EACT,cAAAQ;AAAA,EACA,aAAAC,IAAcR;AAAA,EACd,QAAAS;AAAA,EACA,WAAAC;AACF,MAAiB;AACf,QAAMC,IAAUC,EAAA,GACV,CAACC,GAAUC,CAAW,IAAIC,EAAwBV,CAAe,GACjE,CAACW,GAAMC,CAAO,IAAIF,EAAS,EAAE,GAC7B,CAACG,GAAOC,CAAQ,IAAIJ,EAASR,KAAgBD,EAAO,CAAC,GAAG,MAAM,EAAE,GAChE,CAACc,GAAWC,CAAY,IAAIN,EAAS,EAAK,GAC1C,CAACO,GAAQC,CAAS,IAAIR,EAAgC,OAAO,GAC7D,CAACS,GAAaC,CAAc,IAAIV,EAAA,GAEhCW,IAAeC;AAAA,IACnB,OAAOC,MAA6B;AAClC,YAAMC,IAAUb,EAAK,KAAA;AACrB,UAAI,CAACa,KAAWP,MAAW,YAAa;AAExC,YAAMQ,IAAuB;AAAA,QAC3B,IAAI5B,EAAA;AAAA,QACJ,MAAM;AAAA,QACN,SAAS2B;AAAA,MAAA;AAEX,MAAAf,EAAY,CAACiB,MAAS,CAAC,GAAGA,GAAMD,CAAO,CAAC,GACxCb,EAAQ,EAAE,GACVM,EAAU,WAAW,GACrBE,EAAe,oBAAI,MAAM;AAEzB,UAAI;AACF,cAAMO,IAAQ,MAAMvB,IAASoB,GAASX,CAAK,GACrCe,IAA4B;AAAA,UAChC,IAAI/B,EAAA;AAAA,UACJ,MAAM;AAAA,UACN,SAAS8B,KAAS;AAAA,QAAA;AAEpB,QAAAlB,EAAY,CAACiB,MAAS,CAAC,GAAGA,GAAME,CAAY,CAAC;AAAA,MAC/C,UAAA;AACE,QAAAV,EAAU,OAAO,GAEjB,WAAW,MAAME,EAAe,MAAS,GAAGtB,EAAuB;AAAA,MACrE;AAAA,IACF;AAAA,IACA,CAACa,GAAMM,GAAQJ,GAAOT,CAAM;AAAA,EAAA,GAGxByB,IAAmBP,EAAY,CAACQ,MAAuB;AAC3D,IAAAlB,EAAQkB,CAAU;AAAA,EACpB,GAAG,CAAA,CAAE,GAECC,IAAaT,EAAY,CAACU,MAAoB;AAClD,cAAU,UAAU,UAAUA,CAAO,EAAE,MAAM,MAAM;AAAA,IAAC,CAAC;AAAA,EACvD,GAAG,CAAA,CAAE,GAECC,IAAcX,EAAY,CAACY,MAAe;AAC9C,IAAAzB,EAAY,CAACiB,MAAS;AACpB,YAAMS,IAAMT,EAAK,UAAU,CAACU,MAAMA,EAAE,OAAOF,CAAE;AAC7C,aAAIC,MAAQ,KAAWT,IAChBA,EAAK,MAAM,GAAGS,CAAG;AAAA,IAC1B,CAAC;AAAA,EACH,GAAG,CAAA,CAAE;AAEL,2BACG,OAAA,EAAI,WAAWE,GAAG,qDAAqDhC,CAAS,GAE/E,UAAA;AAAA,IAAA,gBAAAiC,EAACC,GAAA,EAAa,WAAU,UACtB,UAAA;AAAA,MAAA,gBAAAD,EAACE,GAAA,EACE,UAAA;AAAA,QAAAhC,EAAS,WAAW,IACnB,gBAAAiC;AAAA,UAACC;AAAA,UAAA;AAAA,YACC,aAAY;AAAA,YACZ,OAAM;AAAA,UAAA;AAAA,QAAA,IAEN;AAAA,QAEHlC,EAAS,IAAI,CAACmC,GAAKC,MAClB,gBAAAN,EAAC,OAAA,EAAI,WAAU,aAEZ,UAAA;AAAA,UAAAK,EAAI,SAAS,eAAeA,EAAI,YAAYA,EAAI,SAAS,SAAS,IACjE,gBAAAL,EAACO,GAAA,EACC,UAAA;AAAA,YAAA,gBAAAJ,EAACK,KACE,UAAAH,EAAI,SAAS,IAAI,CAACI,GAAQC,MACzB,gBAAAP;AAAA,cAACQ;AAAA,cAAA;AAAA,gBAEC,SAASF;AAAA,gBACT,IAAIJ,EAAI;AAAA,gBACR,QAAQZ;AAAA,gBACR,SAASE;AAAA,gBACT,WAAWe,MAAM,IAAIL,EAAI,YAAY;AAAA,gBACrC,SAASK,MAAM,IAAIL,EAAI,UAAU;AAAA,cAAA;AAAA,cAN5BK;AAAA,YAAA,CAQR,GACH;AAAA,YACA,gBAAAP,EAACS,GAAA,EACC,UAAA,gBAAAZ,EAACa,GAAA,EACC,UAAA;AAAA,cAAA,gBAAAV,EAACW,GAAA,EAAsB;AAAA,gCACtBC,IAAA,EAAkB;AAAA,gCAClBC,IAAA,CAAA,CAAkB;AAAA,YAAA,EAAA,CACrB,EAAA,CACF;AAAA,UAAA,GACF,IACEX,EAAI,SAAS,cACf,gBAAAF,EAAAc,GAAA,EACE,UAAA,gBAAAd;AAAA,YAACQ;AAAA,YAAA;AAAA,cACC,SAASN,EAAI;AAAA,cACb,IAAIA,EAAI;AAAA,cACR,QAAQZ;AAAA,cACR,SAASE;AAAA,cACT,WAAWU,EAAI;AAAA,cACf,SAASA,EAAI;AAAA,YAAA;AAAA,UAAA,GAEjB,IAEA,gBAAAF,EAACe,GAAA,EAAQ,MAAK,QACZ,UAAA,gBAAAf,EAACgB,GAAA,EACC,UAAA,gBAAAhB,EAACiB,GAAA,EAAiB,UAAAf,EAAI,QAAA,CAAQ,GAChC,GACF;AAAA,UAGDC,MAAUpC,EAAS,SAAS,KAAKW,KAChC,gBAAAsB,EAAC,OAAA,EAAI,WAAU,QACb,UAAA,gBAAAA;AAAA,YAACkB;AAAA,YAAA;AAAA,cACC,aAAY;AAAA,cACZ,aAAa1C,MAAW;AAAA,cACxB,WAAWE;AAAA,YAAA;AAAA,UAAA,EACb,CACF;AAAA,QAAA,EAAA,GAnD4BwB,EAAI,EAqDpC,CACD;AAAA,MAAA,GACH;AAAA,wBACCiB,GAAA,CAAA,CAAyB;AAAA,IAAA,GAC5B;AAAA,IAGCpD,EAAS,WAAW,KAAKL,EAAY,SAAS,KAC7C,gBAAAsC,EAAC,OAAA,EAAI,WAAU,aACb,UAAA,gBAAAA,EAACoB,IAAA,EACE,YAAY,IAAI,CAACC,MAChB,gBAAArB,EAACsB,IAAA,EAAmB,SAASlC,GAAkB,YAAYiC,EAAA,GAA1CA,CAA6C,CAC/D,EAAA,CACH,EAAA,CACF;AAAA,sBAID,OAAA,EAAI,WAAU,kBACb,UAAA,gBAAAxB,EAAC0B,IAAA,EAAY,UAAU3C,GACrB,UAAA;AAAA,MAAA,gBAAAoB,EAACwB,IAAA,EACC,UAAA,gBAAAxB;AAAA,QAACyB;AAAA,QAAA;AAAA,UACC,mBAAiB5D;AAAA,UACjB,UAAU,CAAC6D,MAAMvD,EAAQuD,EAAE,OAAO,KAAK;AAAA,UACvC,aAAY;AAAA,UACZ,OAAOxD;AAAA,QAAA;AAAA,MAAA,GAEX;AAAA,wBACCyD,IAAA,EACC,UAAA;AAAA,QAAA,gBAAA9B,EAAC+B,IAAA,EAEE,UAAA;AAAA,UAAApE,EAAO,SAAS,KACf,gBAAAqC,EAACgC,MAAkB,eAAexD,GAAU,OAAOD,GACjD,UAAA;AAAA,YAAA,gBAAA4B,EAAC8B,IAAA,EAAyB,cAAW,gBACnC,UAAA,gBAAA9B,EAAC+B,MAAuB,GAC1B;AAAA,8BACCC,IAAA,EACE,UAAAxE,EAAO,IAAI,CAACmC,MACX,gBAAAK,EAACiC,IAAA,EAAiC,OAAOtC,EAAE,IACxC,UAAAA,EAAE,QADuBA,EAAE,EAE9B,CACD,EAAA,CACH;AAAA,UAAA,GACF;AAAA,UAIF,gBAAAE;AAAA,YAACqC;AAAA,YAAA;AAAA,cACC,SAAS,MAAM3D,EAAa,CAAC4D,MAAM,CAACA,CAAC;AAAA,cACrC,SAAS,EAAE,SAAS,iBAAA;AAAA,cACpB,SAAS7D,IAAY,YAAY;AAAA,cAEjC,UAAA;AAAA,gBAAA,gBAAA0B,EAACoC,GAAA,EAAU,MAAM,GAAA,CAAI;AAAA,gBACrB,gBAAApC,EAAC,UAAK,UAAA,SAAA,CAAM;AAAA,cAAA;AAAA,YAAA;AAAA,UAAA;AAAA,QACd,GACF;AAAA,0BAECqC,IAAA,EAAkB,UAAU,CAACnE,EAAK,KAAA,GAAQ,QAAAM,EAAA,CAAgB;AAAA,MAAA,EAAA,CAC7D;AAAA,IAAA,EAAA,CACF,EAAA,CACF;AAAA,EAAA,GACF;AAEJ,GAeMgC,IAAmB,CAAC,EAAE,IAAAf,GAAI,SAAAF,GAAS,WAAA+C,GAAW,SAAAC,GAAS,QAAAC,GAAQ,SAAAC,EAAA,MACnE,gBAAA5C,EAAC,OAAA,EAAI,WAAU,aACZ,UAAA;AAAA,EAAAyC,uBACEI,IAAA,EACC,UAAA;AAAA,IAAA,gBAAA1C,EAAC2C,IAAA,EAAiB;AAAA,IAClB,gBAAA3C,EAAC4C,MAAkB,UAAAN,EAAA,CAAU;AAAA,EAAA,GAC/B;AAAA,EAGF,gBAAAtC,EAACe,GAAA,EAAQ,MAAK,aACZ,UAAA,gBAAAf,EAACgB,KACC,UAAA,gBAAAhB,EAACiB,GAAA,EAAiB,UAAA1B,EAAA,CAAQ,EAAA,CAC5B,GACF;AAAA,EAECgD,KAAWA,EAAQ,SAAS,uBAC1BM,IAAA,EACC,UAAA;AAAA,IAAA,gBAAA7C,EAAC8C,IAAA,EAAe,OAAOP,EAAQ,OAAA,CAAQ;AAAA,sBACtCQ,IAAA,EACE,UAAAR,EAAQ,IAAI,CAAClB,MACZ,gBAAArB,EAACgD,IAAA,EAAO,MAAM3B,EAAE,MAAmB,OAAOA,EAAE,SAAjBA,EAAE,IAAsB,CACpD,EAAA,CACH;AAAA,EAAA,GACF;AAAA,oBAGD4B,IAAA,EACC,UAAA;AAAA,IAAA,gBAAAjD,EAACkD,GAAA,EAAc,OAAM,QAAO,SAAS,MAAMV,EAAOjD,CAAO,GACvD,UAAA,gBAAAS,EAACmD,GAAA,EAAS,WAAU,SAAA,CAAS,GAC/B;AAAA,IACA,gBAAAnD,EAACkD,GAAA,EAAc,OAAM,SAAQ,SAAS,MAAMT,EAAQhD,CAAE,GACpD,UAAA,gBAAAO,EAACoD,GAAA,EAAe,WAAU,UAAS,EAAA,CACrC;AAAA,EAAA,EAAA,CACF;AAAA,GACF;"}
@@ -0,0 +1,2 @@
1
+ export { Chat } from './Chat';
2
+ export type { ChatMessage, ChatModel, ChatProps, ChatSource } from './Chat';
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),j=require("lucide-react"),l=require("../../ui/button.cjs"),i=require("../../ui/dialog.cjs"),g=require("../../ui/spinner.cjs");function m({title:o,description:r,variant:s="default",confirmLabel:c="Confirm",cancelLabel:a="Cancel",onConfirm:d,onCancel:u,open:x,onOpenChange:h,trigger:t,loading:n=!1}){return e.jsxs(i.Dialog,{open:x,onOpenChange:h,children:[t&&e.jsx(i.DialogTrigger,{asChild:!0,children:t}),e.jsxs(i.DialogContent,{children:[e.jsxs(i.DialogHeader,{children:[e.jsx(i.DialogTitle,{children:o}),r&&e.jsx(i.DialogDescription,{children:r})]}),s==="destructive"&&e.jsxs("div",{className:"flex items-start gap-2 rounded-md border border-destructive/20 bg-destructive/10 px-3 py-2.5 text-sm text-destructive",children:[e.jsx(j.TriangleAlertIcon,{className:"mt-0.5 h-4 w-4 shrink-0"}),e.jsx("span",{children:"This action cannot be undone."})]}),e.jsxs(i.DialogFooter,{children:[e.jsx(i.DialogClose,{asChild:!0,children:e.jsx(l.Button,{variant:"outline",onClick:u,children:a})}),e.jsxs(l.Button,{variant:s==="destructive"?"destructive":"default",disabled:n,onClick:d,children:[n&&e.jsx(g.Spinner,{size:"sm",className:"mr-2"}),c]})]})]})]})}exports.ConfirmDialog=m;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),x=require("../../../ui/banner.cjs"),o=require("../../../ui/button.cjs"),i=require("../../../ui/dialog.cjs"),g=require("../../../ui/spinner.cjs");function D({title:l,description:n,variant:r="default",confirmLabel:a="Confirm",cancelLabel:c="Cancel",onConfirm:u,onCancel:d,open:j,onOpenChange:h,trigger:s,loading:t=!1}){return e.jsxs(i.Dialog,{open:j,onOpenChange:h,children:[s&&e.jsx(i.DialogTrigger,{asChild:!0,children:s}),e.jsxs(i.DialogContent,{children:[e.jsxs(i.DialogHeader,{children:[e.jsx(i.DialogTitle,{children:l}),n&&e.jsx(i.DialogDescription,{children:n})]}),r==="destructive"&&e.jsx(x.Banner,{variant:"destructive",description:"This action cannot be undone.",className:"rounded-md"}),e.jsxs(i.DialogFooter,{children:[e.jsx(i.DialogClose,{asChild:!0,children:e.jsx(o.Button,{variant:"outline",onClick:d,children:c})}),e.jsxs(o.Button,{variant:r==="destructive"?"destructive":"default",disabled:t,onClick:u,children:[t&&e.jsx(g.Spinner,{size:"sm",className:"mr-2"}),a]})]})]})]})}exports.ConfirmDialog=D;
2
2
  //# sourceMappingURL=ConfirmDialog.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ConfirmDialog.cjs","sources":["../../../../src/components/composed/ConfirmDialog/ConfirmDialog.tsx"],"sourcesContent":["import { TriangleAlertIcon } from \"lucide-react\"\nimport * as React from \"react\"\n\nimport { Button } from \"@/components/ui/button\"\nimport {\n Dialog,\n DialogClose,\n DialogContent,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogTitle,\n DialogTrigger,\n} from \"@/components/ui/dialog\"\nimport { Spinner } from \"@/components/ui/spinner\"\n\ninterface ConfirmDialogBaseProps {\n title: string\n description?: string\n variant?: \"default\" | \"destructive\"\n confirmLabel?: string\n cancelLabel?: string\n onConfirm?: () => void\n onCancel?: () => void\n trigger?: React.ReactElement\n loading?: boolean\n}\n\ntype ConfirmDialogControlledProps = ConfirmDialogBaseProps & {\n open: boolean\n onOpenChange: (open: boolean) => void\n}\n\ntype ConfirmDialogUncontrolledProps = ConfirmDialogBaseProps & {\n open?: never\n onOpenChange?: never\n}\n\nexport type ConfirmDialogProps =\n | ConfirmDialogControlledProps\n | ConfirmDialogUncontrolledProps\n\nexport function ConfirmDialog({\n title,\n description,\n variant = \"default\",\n confirmLabel = \"Confirm\",\n cancelLabel = \"Cancel\",\n onConfirm,\n onCancel,\n open,\n onOpenChange,\n trigger,\n loading = false,\n}: ConfirmDialogProps) {\n return (\n <Dialog open={open} onOpenChange={onOpenChange}>\n {trigger && <DialogTrigger asChild>{trigger}</DialogTrigger>}\n <DialogContent>\n <DialogHeader>\n <DialogTitle>{title}</DialogTitle>\n {description && (\n <DialogDescription>{description}</DialogDescription>\n )}\n </DialogHeader>\n {variant === \"destructive\" && (\n <div className=\"flex items-start gap-2 rounded-md border border-destructive/20 bg-destructive/10 px-3 py-2.5 text-sm text-destructive\">\n <TriangleAlertIcon className=\"mt-0.5 h-4 w-4 shrink-0\" />\n <span>This action cannot be undone.</span>\n </div>\n )}\n <DialogFooter>\n <DialogClose asChild>\n <Button variant=\"outline\" onClick={onCancel}>\n {cancelLabel}\n </Button>\n </DialogClose>\n <Button\n variant={variant === \"destructive\" ? \"destructive\" : \"default\"}\n disabled={loading}\n onClick={onConfirm}\n >\n {loading && <Spinner size=\"sm\" className=\"mr-2\" />}\n {confirmLabel}\n </Button>\n </DialogFooter>\n </DialogContent>\n </Dialog>\n )\n}\n"],"names":["ConfirmDialog","title","description","variant","confirmLabel","cancelLabel","onConfirm","onCancel","open","onOpenChange","trigger","loading","jsxs","Dialog","jsx","DialogTrigger","DialogContent","DialogHeader","DialogTitle","DialogDescription","TriangleAlertIcon","DialogFooter","DialogClose","Button","Spinner"],"mappings":"mPA0CO,SAASA,EAAc,CAC5B,MAAAC,EACA,YAAAC,EACA,QAAAC,EAAU,UACV,aAAAC,EAAe,UACf,YAAAC,EAAc,SACd,UAAAC,EACA,SAAAC,EACA,KAAAC,EACA,aAAAC,EACA,QAAAC,EACA,QAAAC,EAAU,EACZ,EAAuB,CACrB,OACEC,EAAAA,KAACC,EAAAA,OAAA,CAAO,KAAAL,EAAY,aAAAC,EACjB,SAAA,CAAAC,GAAWI,EAAAA,IAACC,gBAAA,CAAc,QAAO,GAAE,SAAAL,EAAQ,SAC3CM,EAAAA,cAAA,CACC,SAAA,CAAAJ,OAACK,EAAAA,aAAA,CACC,SAAA,CAAAH,EAAAA,IAACI,EAAAA,aAAa,SAAAjB,CAAA,CAAM,EACnBC,GACCY,EAAAA,IAACK,EAAAA,kBAAA,CAAmB,SAAAjB,CAAA,CAAY,CAAA,EAEpC,EACCC,IAAY,eACXS,OAAC,MAAA,CAAI,UAAU,wHACb,SAAA,CAAAE,EAAAA,IAACM,EAAAA,kBAAA,CAAkB,UAAU,yBAAA,CAA0B,EACvDN,EAAAA,IAAC,QAAK,SAAA,+BAAA,CAA6B,CAAA,EACrC,SAEDO,EAAAA,aAAA,CACC,SAAA,CAAAP,EAAAA,IAACQ,EAAAA,YAAA,CAAY,QAAO,GAClB,SAAAR,EAAAA,IAACS,EAAAA,OAAA,CAAO,QAAQ,UAAU,QAAShB,EAChC,SAAAF,CAAA,CACH,EACF,EACAO,EAAAA,KAACW,EAAAA,OAAA,CACC,QAASpB,IAAY,cAAgB,cAAgB,UACrD,SAAUQ,EACV,QAASL,EAER,SAAA,CAAAK,GAAWG,EAAAA,IAACU,UAAA,CAAQ,KAAK,KAAK,UAAU,OAAO,EAC/CpB,CAAA,CAAA,CAAA,CACH,CAAA,CACF,CAAA,CAAA,CACF,CAAA,EACF,CAEJ"}
1
+ {"version":3,"file":"ConfirmDialog.cjs","sources":["../../../../src/components/composed/ConfirmDialog/ConfirmDialog.tsx"],"sourcesContent":["import * as React from \"react\"\n\nimport { Banner } from \"@/components/ui/banner\"\nimport { Button } from \"@/components/ui/button\"\nimport {\n Dialog,\n DialogClose,\n DialogContent,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogTitle,\n DialogTrigger,\n} from \"@/components/ui/dialog\"\nimport { Spinner } from \"@/components/ui/spinner\"\n\ninterface ConfirmDialogBaseProps {\n title: string\n description?: string\n variant?: \"default\" | \"destructive\"\n confirmLabel?: string\n cancelLabel?: string\n onConfirm?: () => void\n onCancel?: () => void\n trigger?: React.ReactElement\n loading?: boolean\n}\n\ntype ConfirmDialogControlledProps = ConfirmDialogBaseProps & {\n open: boolean\n onOpenChange: (open: boolean) => void\n}\n\ntype ConfirmDialogUncontrolledProps = ConfirmDialogBaseProps & {\n open?: never\n onOpenChange?: never\n}\n\nexport type ConfirmDialogProps =\n | ConfirmDialogControlledProps\n | ConfirmDialogUncontrolledProps\n\nexport function ConfirmDialog({\n title,\n description,\n variant = \"default\",\n confirmLabel = \"Confirm\",\n cancelLabel = \"Cancel\",\n onConfirm,\n onCancel,\n open,\n onOpenChange,\n trigger,\n loading = false,\n}: ConfirmDialogProps) {\n return (\n <Dialog open={open} onOpenChange={onOpenChange}>\n {trigger && <DialogTrigger asChild>{trigger}</DialogTrigger>}\n <DialogContent>\n <DialogHeader>\n <DialogTitle>{title}</DialogTitle>\n {description && (\n <DialogDescription>{description}</DialogDescription>\n )}\n </DialogHeader>\n {variant === \"destructive\" && (\n <Banner\n variant=\"destructive\"\n description=\"This action cannot be undone.\"\n className=\"rounded-md\"\n />\n )}\n <DialogFooter>\n <DialogClose asChild>\n <Button variant=\"outline\" onClick={onCancel}>\n {cancelLabel}\n </Button>\n </DialogClose>\n <Button\n variant={variant === \"destructive\" ? \"destructive\" : \"default\"}\n disabled={loading}\n onClick={onConfirm}\n >\n {loading && <Spinner size=\"sm\" className=\"mr-2\" />}\n {confirmLabel}\n </Button>\n </DialogFooter>\n </DialogContent>\n </Dialog>\n )\n}\n"],"names":["ConfirmDialog","title","description","variant","confirmLabel","cancelLabel","onConfirm","onCancel","open","onOpenChange","trigger","loading","jsxs","Dialog","jsx","DialogTrigger","DialogContent","DialogHeader","DialogTitle","DialogDescription","Banner","DialogFooter","DialogClose","Button","Spinner"],"mappings":"sQA0CO,SAASA,EAAc,CAC5B,MAAAC,EACA,YAAAC,EACA,QAAAC,EAAU,UACV,aAAAC,EAAe,UACf,YAAAC,EAAc,SACd,UAAAC,EACA,SAAAC,EACA,KAAAC,EACA,aAAAC,EACA,QAAAC,EACA,QAAAC,EAAU,EACZ,EAAuB,CACrB,OACEC,EAAAA,KAACC,EAAAA,OAAA,CAAO,KAAAL,EAAY,aAAAC,EACjB,SAAA,CAAAC,GAAWI,EAAAA,IAACC,gBAAA,CAAc,QAAO,GAAE,SAAAL,EAAQ,SAC3CM,EAAAA,cAAA,CACC,SAAA,CAAAJ,OAACK,EAAAA,aAAA,CACC,SAAA,CAAAH,EAAAA,IAACI,EAAAA,aAAa,SAAAjB,CAAA,CAAM,EACnBC,GACCY,EAAAA,IAACK,EAAAA,kBAAA,CAAmB,SAAAjB,CAAA,CAAY,CAAA,EAEpC,EACCC,IAAY,eACXW,EAAAA,IAACM,EAAAA,OAAA,CACC,QAAQ,cACR,YAAY,gCACZ,UAAU,YAAA,CAAA,SAGbC,EAAAA,aAAA,CACC,SAAA,CAAAP,EAAAA,IAACQ,EAAAA,YAAA,CAAY,QAAO,GAClB,SAAAR,EAAAA,IAACS,EAAAA,OAAA,CAAO,QAAQ,UAAU,QAAShB,EAChC,SAAAF,CAAA,CACH,EACF,EACAO,EAAAA,KAACW,EAAAA,OAAA,CACC,QAASpB,IAAY,cAAgB,cAAgB,UACrD,SAAUQ,EACV,QAASL,EAER,SAAA,CAAAK,GAAWG,EAAAA,IAACU,UAAA,CAAQ,KAAK,KAAK,UAAU,OAAO,EAC/CpB,CAAA,CAAA,CAAA,CACH,CAAA,CACF,CAAA,CAAA,CACF,CAAA,EACF,CAEJ"}
@@ -0,0 +1,23 @@
1
+ import * as React from "react";
2
+ interface ConfirmDialogBaseProps {
3
+ title: string;
4
+ description?: string;
5
+ variant?: "default" | "destructive";
6
+ confirmLabel?: string;
7
+ cancelLabel?: string;
8
+ onConfirm?: () => void;
9
+ onCancel?: () => void;
10
+ trigger?: React.ReactElement;
11
+ loading?: boolean;
12
+ }
13
+ type ConfirmDialogControlledProps = ConfirmDialogBaseProps & {
14
+ open: boolean;
15
+ onOpenChange: (open: boolean) => void;
16
+ };
17
+ type ConfirmDialogUncontrolledProps = ConfirmDialogBaseProps & {
18
+ open?: never;
19
+ onOpenChange?: never;
20
+ };
21
+ export type ConfirmDialogProps = ConfirmDialogControlledProps | ConfirmDialogUncontrolledProps;
22
+ export declare function ConfirmDialog({ title, description, variant, confirmLabel, cancelLabel, onConfirm, onCancel, open, onOpenChange, trigger, loading, }: ConfirmDialogProps): import("react/jsx-runtime").JSX.Element;
23
+ export {};
@@ -1,42 +1,46 @@
1
- import { jsxs as i, jsx as e } from "react/jsx-runtime";
2
- import { TriangleAlertIcon as f } from "lucide-react";
3
- import { Button as n } from "../../ui/button.js";
4
- import { Dialog as g, DialogTrigger as p, DialogContent as D, DialogHeader as C, DialogTitle as v, DialogDescription as x, DialogFooter as b, DialogClose as T } from "../../ui/dialog.js";
5
- import { Spinner as k } from "../../ui/spinner.js";
6
- function A({
1
+ import { jsxs as e, jsx as i } from "react/jsx-runtime";
2
+ import { Banner as f } from "../../../ui/banner.js";
3
+ import { Button as t } from "../../../ui/button.js";
4
+ import { Dialog as D, DialogTrigger as C, DialogContent as g, DialogHeader as p, DialogTitle as v, DialogDescription as x, DialogFooter as T, DialogClose as b } from "../../../ui/dialog.js";
5
+ import { Spinner as j } from "../../../ui/spinner.js";
6
+ function H({
7
7
  title: a,
8
8
  description: r,
9
- variant: t = "default",
9
+ variant: o = "default",
10
10
  confirmLabel: d = "Confirm",
11
11
  cancelLabel: c = "Cancel",
12
12
  onConfirm: s,
13
13
  onCancel: m,
14
- open: h,
15
- onOpenChange: u,
16
- trigger: l,
17
- loading: o = !1
14
+ open: u,
15
+ onOpenChange: h,
16
+ trigger: n,
17
+ loading: l = !1
18
18
  }) {
19
- return /* @__PURE__ */ i(g, { open: h, onOpenChange: u, children: [
20
- l && /* @__PURE__ */ e(p, { asChild: !0, children: l }),
21
- /* @__PURE__ */ i(D, { children: [
22
- /* @__PURE__ */ i(C, { children: [
23
- /* @__PURE__ */ e(v, { children: a }),
24
- r && /* @__PURE__ */ e(x, { children: r })
19
+ return /* @__PURE__ */ e(D, { open: u, onOpenChange: h, children: [
20
+ n && /* @__PURE__ */ i(C, { asChild: !0, children: n }),
21
+ /* @__PURE__ */ e(g, { children: [
22
+ /* @__PURE__ */ e(p, { children: [
23
+ /* @__PURE__ */ i(v, { children: a }),
24
+ r && /* @__PURE__ */ i(x, { children: r })
25
25
  ] }),
26
- t === "destructive" && /* @__PURE__ */ i("div", { className: "flex items-start gap-2 rounded-md border border-destructive/20 bg-destructive/10 px-3 py-2.5 text-sm text-destructive", children: [
27
- /* @__PURE__ */ e(f, { className: "mt-0.5 h-4 w-4 shrink-0" }),
28
- /* @__PURE__ */ e("span", { children: "This action cannot be undone." })
29
- ] }),
30
- /* @__PURE__ */ i(b, { children: [
31
- /* @__PURE__ */ e(T, { asChild: !0, children: /* @__PURE__ */ e(n, { variant: "outline", onClick: m, children: c }) }),
32
- /* @__PURE__ */ i(
33
- n,
26
+ o === "destructive" && /* @__PURE__ */ i(
27
+ f,
28
+ {
29
+ variant: "destructive",
30
+ description: "This action cannot be undone.",
31
+ className: "rounded-md"
32
+ }
33
+ ),
34
+ /* @__PURE__ */ e(T, { children: [
35
+ /* @__PURE__ */ i(b, { asChild: !0, children: /* @__PURE__ */ i(t, { variant: "outline", onClick: m, children: c }) }),
36
+ /* @__PURE__ */ e(
37
+ t,
34
38
  {
35
- variant: t === "destructive" ? "destructive" : "default",
36
- disabled: o,
39
+ variant: o === "destructive" ? "destructive" : "default",
40
+ disabled: l,
37
41
  onClick: s,
38
42
  children: [
39
- o && /* @__PURE__ */ e(k, { size: "sm", className: "mr-2" }),
43
+ l && /* @__PURE__ */ i(j, { size: "sm", className: "mr-2" }),
40
44
  d
41
45
  ]
42
46
  }
@@ -46,6 +50,6 @@ function A({
46
50
  ] });
47
51
  }
48
52
  export {
49
- A as ConfirmDialog
53
+ H as ConfirmDialog
50
54
  };
51
55
  //# sourceMappingURL=ConfirmDialog.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ConfirmDialog.js","sources":["../../../../src/components/composed/ConfirmDialog/ConfirmDialog.tsx"],"sourcesContent":["import { TriangleAlertIcon } from \"lucide-react\"\nimport * as React from \"react\"\n\nimport { Button } from \"@/components/ui/button\"\nimport {\n Dialog,\n DialogClose,\n DialogContent,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogTitle,\n DialogTrigger,\n} from \"@/components/ui/dialog\"\nimport { Spinner } from \"@/components/ui/spinner\"\n\ninterface ConfirmDialogBaseProps {\n title: string\n description?: string\n variant?: \"default\" | \"destructive\"\n confirmLabel?: string\n cancelLabel?: string\n onConfirm?: () => void\n onCancel?: () => void\n trigger?: React.ReactElement\n loading?: boolean\n}\n\ntype ConfirmDialogControlledProps = ConfirmDialogBaseProps & {\n open: boolean\n onOpenChange: (open: boolean) => void\n}\n\ntype ConfirmDialogUncontrolledProps = ConfirmDialogBaseProps & {\n open?: never\n onOpenChange?: never\n}\n\nexport type ConfirmDialogProps =\n | ConfirmDialogControlledProps\n | ConfirmDialogUncontrolledProps\n\nexport function ConfirmDialog({\n title,\n description,\n variant = \"default\",\n confirmLabel = \"Confirm\",\n cancelLabel = \"Cancel\",\n onConfirm,\n onCancel,\n open,\n onOpenChange,\n trigger,\n loading = false,\n}: ConfirmDialogProps) {\n return (\n <Dialog open={open} onOpenChange={onOpenChange}>\n {trigger && <DialogTrigger asChild>{trigger}</DialogTrigger>}\n <DialogContent>\n <DialogHeader>\n <DialogTitle>{title}</DialogTitle>\n {description && (\n <DialogDescription>{description}</DialogDescription>\n )}\n </DialogHeader>\n {variant === \"destructive\" && (\n <div className=\"flex items-start gap-2 rounded-md border border-destructive/20 bg-destructive/10 px-3 py-2.5 text-sm text-destructive\">\n <TriangleAlertIcon className=\"mt-0.5 h-4 w-4 shrink-0\" />\n <span>This action cannot be undone.</span>\n </div>\n )}\n <DialogFooter>\n <DialogClose asChild>\n <Button variant=\"outline\" onClick={onCancel}>\n {cancelLabel}\n </Button>\n </DialogClose>\n <Button\n variant={variant === \"destructive\" ? \"destructive\" : \"default\"}\n disabled={loading}\n onClick={onConfirm}\n >\n {loading && <Spinner size=\"sm\" className=\"mr-2\" />}\n {confirmLabel}\n </Button>\n </DialogFooter>\n </DialogContent>\n </Dialog>\n )\n}\n"],"names":["ConfirmDialog","title","description","variant","confirmLabel","cancelLabel","onConfirm","onCancel","open","onOpenChange","trigger","loading","jsxs","Dialog","jsx","DialogTrigger","DialogContent","DialogHeader","DialogTitle","DialogDescription","TriangleAlertIcon","DialogFooter","DialogClose","Button","Spinner"],"mappings":";;;;;AA0CO,SAASA,EAAc;AAAA,EAC5B,OAAAC;AAAA,EACA,aAAAC;AAAA,EACA,SAAAC,IAAU;AAAA,EACV,cAAAC,IAAe;AAAA,EACf,aAAAC,IAAc;AAAA,EACd,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,MAAAC;AAAA,EACA,cAAAC;AAAA,EACA,SAAAC;AAAA,EACA,SAAAC,IAAU;AACZ,GAAuB;AACrB,SACE,gBAAAC,EAACC,GAAA,EAAO,MAAAL,GAAY,cAAAC,GACjB,UAAA;AAAA,IAAAC,KAAW,gBAAAI,EAACC,GAAA,EAAc,SAAO,IAAE,UAAAL,GAAQ;AAAA,sBAC3CM,GAAA,EACC,UAAA;AAAA,MAAA,gBAAAJ,EAACK,GAAA,EACC,UAAA;AAAA,QAAA,gBAAAH,EAACI,KAAa,UAAAjB,EAAA,CAAM;AAAA,QACnBC,KACC,gBAAAY,EAACK,GAAA,EAAmB,UAAAjB,EAAA,CAAY;AAAA,MAAA,GAEpC;AAAA,MACCC,MAAY,iBACX,gBAAAS,EAAC,OAAA,EAAI,WAAU,yHACb,UAAA;AAAA,QAAA,gBAAAE,EAACM,GAAA,EAAkB,WAAU,0BAAA,CAA0B;AAAA,QACvD,gBAAAN,EAAC,UAAK,UAAA,gCAAA,CAA6B;AAAA,MAAA,GACrC;AAAA,wBAEDO,GAAA,EACC,UAAA;AAAA,QAAA,gBAAAP,EAACQ,GAAA,EAAY,SAAO,IAClB,UAAA,gBAAAR,EAACS,GAAA,EAAO,SAAQ,WAAU,SAAShB,GAChC,UAAAF,EAAA,CACH,GACF;AAAA,QACA,gBAAAO;AAAA,UAACW;AAAA,UAAA;AAAA,YACC,SAASpB,MAAY,gBAAgB,gBAAgB;AAAA,YACrD,UAAUQ;AAAA,YACV,SAASL;AAAA,YAER,UAAA;AAAA,cAAAK,KAAW,gBAAAG,EAACU,GAAA,EAAQ,MAAK,MAAK,WAAU,QAAO;AAAA,cAC/CpB;AAAA,YAAA;AAAA,UAAA;AAAA,QAAA;AAAA,MACH,EAAA,CACF;AAAA,IAAA,EAAA,CACF;AAAA,EAAA,GACF;AAEJ;"}
1
+ {"version":3,"file":"ConfirmDialog.js","sources":["../../../../src/components/composed/ConfirmDialog/ConfirmDialog.tsx"],"sourcesContent":["import * as React from \"react\"\n\nimport { Banner } from \"@/components/ui/banner\"\nimport { Button } from \"@/components/ui/button\"\nimport {\n Dialog,\n DialogClose,\n DialogContent,\n DialogDescription,\n DialogFooter,\n DialogHeader,\n DialogTitle,\n DialogTrigger,\n} from \"@/components/ui/dialog\"\nimport { Spinner } from \"@/components/ui/spinner\"\n\ninterface ConfirmDialogBaseProps {\n title: string\n description?: string\n variant?: \"default\" | \"destructive\"\n confirmLabel?: string\n cancelLabel?: string\n onConfirm?: () => void\n onCancel?: () => void\n trigger?: React.ReactElement\n loading?: boolean\n}\n\ntype ConfirmDialogControlledProps = ConfirmDialogBaseProps & {\n open: boolean\n onOpenChange: (open: boolean) => void\n}\n\ntype ConfirmDialogUncontrolledProps = ConfirmDialogBaseProps & {\n open?: never\n onOpenChange?: never\n}\n\nexport type ConfirmDialogProps =\n | ConfirmDialogControlledProps\n | ConfirmDialogUncontrolledProps\n\nexport function ConfirmDialog({\n title,\n description,\n variant = \"default\",\n confirmLabel = \"Confirm\",\n cancelLabel = \"Cancel\",\n onConfirm,\n onCancel,\n open,\n onOpenChange,\n trigger,\n loading = false,\n}: ConfirmDialogProps) {\n return (\n <Dialog open={open} onOpenChange={onOpenChange}>\n {trigger && <DialogTrigger asChild>{trigger}</DialogTrigger>}\n <DialogContent>\n <DialogHeader>\n <DialogTitle>{title}</DialogTitle>\n {description && (\n <DialogDescription>{description}</DialogDescription>\n )}\n </DialogHeader>\n {variant === \"destructive\" && (\n <Banner\n variant=\"destructive\"\n description=\"This action cannot be undone.\"\n className=\"rounded-md\"\n />\n )}\n <DialogFooter>\n <DialogClose asChild>\n <Button variant=\"outline\" onClick={onCancel}>\n {cancelLabel}\n </Button>\n </DialogClose>\n <Button\n variant={variant === \"destructive\" ? \"destructive\" : \"default\"}\n disabled={loading}\n onClick={onConfirm}\n >\n {loading && <Spinner size=\"sm\" className=\"mr-2\" />}\n {confirmLabel}\n </Button>\n </DialogFooter>\n </DialogContent>\n </Dialog>\n )\n}\n"],"names":["ConfirmDialog","title","description","variant","confirmLabel","cancelLabel","onConfirm","onCancel","open","onOpenChange","trigger","loading","jsxs","Dialog","jsx","DialogTrigger","DialogContent","DialogHeader","DialogTitle","DialogDescription","Banner","DialogFooter","DialogClose","Button","Spinner"],"mappings":";;;;;AA0CO,SAASA,EAAc;AAAA,EAC5B,OAAAC;AAAA,EACA,aAAAC;AAAA,EACA,SAAAC,IAAU;AAAA,EACV,cAAAC,IAAe;AAAA,EACf,aAAAC,IAAc;AAAA,EACd,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,MAAAC;AAAA,EACA,cAAAC;AAAA,EACA,SAAAC;AAAA,EACA,SAAAC,IAAU;AACZ,GAAuB;AACrB,SACE,gBAAAC,EAACC,GAAA,EAAO,MAAAL,GAAY,cAAAC,GACjB,UAAA;AAAA,IAAAC,KAAW,gBAAAI,EAACC,GAAA,EAAc,SAAO,IAAE,UAAAL,GAAQ;AAAA,sBAC3CM,GAAA,EACC,UAAA;AAAA,MAAA,gBAAAJ,EAACK,GAAA,EACC,UAAA;AAAA,QAAA,gBAAAH,EAACI,KAAa,UAAAjB,EAAA,CAAM;AAAA,QACnBC,KACC,gBAAAY,EAACK,GAAA,EAAmB,UAAAjB,EAAA,CAAY;AAAA,MAAA,GAEpC;AAAA,MACCC,MAAY,iBACX,gBAAAW;AAAA,QAACM;AAAA,QAAA;AAAA,UACC,SAAQ;AAAA,UACR,aAAY;AAAA,UACZ,WAAU;AAAA,QAAA;AAAA,MAAA;AAAA,wBAGbC,GAAA,EACC,UAAA;AAAA,QAAA,gBAAAP,EAACQ,GAAA,EAAY,SAAO,IAClB,UAAA,gBAAAR,EAACS,GAAA,EAAO,SAAQ,WAAU,SAAShB,GAChC,UAAAF,EAAA,CACH,GACF;AAAA,QACA,gBAAAO;AAAA,UAACW;AAAA,UAAA;AAAA,YACC,SAASpB,MAAY,gBAAgB,gBAAgB;AAAA,YACrD,UAAUQ;AAAA,YACV,SAASL;AAAA,YAER,UAAA;AAAA,cAAAK,KAAW,gBAAAG,EAACU,GAAA,EAAQ,MAAK,MAAK,WAAU,QAAO;AAAA,cAC/CpB;AAAA,YAAA;AAAA,UAAA;AAAA,QAAA;AAAA,MACH,EAAA,CACF;AAAA,IAAA,EAAA,CACF;AAAA,EAAA,GACF;AAEJ;"}
@@ -0,0 +1 @@
1
+ export * from './ConfirmDialog';
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("lucide-react"),c=require("../../../ui/button.cjs"),o=require("../../../ui/tooltip.cjs"),h=require("../../../lib/utils.cjs"),d={left:t.ChevronLeft,right:t.ChevronRight,up:t.ChevronUp,down:t.ChevronDown};function p({direction:i,label:r,tooltipSide:n="right",className:l,...s}){const u=d[i],a=h.cn("w-5 h-5 shrink-0 text-muted-foreground hover:text-primary hover:border-primary",l);return e.jsx(o.TooltipProvider,{children:e.jsxs(o.Tooltip,{children:[e.jsx(o.TooltipTrigger,{asChild:!0,children:e.jsx(c.Button,{"data-slot":"data-app-shell-collapse-button",variant:"outline",size:"icon",...s,className:a,"aria-label":r,children:e.jsx(u,{className:"w-3.5 h-3.5"})})}),e.jsx(o.TooltipContent,{side:n,children:r})]})})}exports.ShellCollapseButton=p;
2
+ //# sourceMappingURL=CollapseButton.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CollapseButton.cjs","sources":["../../../../src/components/composed/DataAppShell/CollapseButton.tsx"],"sourcesContent":["\"use client\";\n\nimport { ChevronDown, ChevronLeft, ChevronRight, ChevronUp } from \"lucide-react\";\nimport * as React from \"react\";\n\nimport { Button } from \"@/components/ui/button\";\nimport { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from \"@/components/ui/tooltip\";\nimport { cn } from \"@/lib/utils\";\n\nconst CHEVRONS = {\n left: ChevronLeft,\n right: ChevronRight,\n up: ChevronUp,\n down: ChevronDown,\n} as const;\n\nexport interface ShellCollapseButtonProps extends Omit<React.ComponentProps<typeof Button>, \"children\"> {\n /** Chevron direction the button points at. */\n direction: keyof typeof CHEVRONS;\n /** Accessible name + tooltip text (e.g. \"Collapse navigation\"). */\n label: string;\n /** Tooltip side. Defaults to `right` (rail/sidebar placements). */\n tooltipSide?: \"top\" | \"right\" | \"bottom\" | \"left\";\n}\n\n/**\n * The shell's shared collapse/expand affordance — a small outlined square with\n * a chevron, placed in a zone's header row when expanded and at the top of the\n * collapsed rail. One component so every zone's trigger looks identical.\n */\nfunction ShellCollapseButton({\n direction,\n label,\n tooltipSide = \"right\",\n className,\n ...props\n}: ShellCollapseButtonProps) {\n const Chevron = CHEVRONS[direction];\n // cn() so consumer classes properly override the base (tailwind-merge)\n const mergedClassName = cn(\n \"w-5 h-5 shrink-0 text-muted-foreground hover:text-primary hover:border-primary\",\n className,\n );\n return (\n <TooltipProvider>\n <Tooltip>\n <TooltipTrigger asChild>\n <Button\n data-slot=\"data-app-shell-collapse-button\"\n variant=\"outline\"\n size=\"icon\"\n {...props}\n className={mergedClassName}\n aria-label={label}\n >\n <Chevron className=\"w-3.5 h-3.5\" />\n </Button>\n </TooltipTrigger>\n <TooltipContent side={tooltipSide}>{label}</TooltipContent>\n </Tooltip>\n </TooltipProvider>\n );\n}\n\nexport { ShellCollapseButton };\n"],"names":["CHEVRONS","ChevronLeft","ChevronRight","ChevronUp","ChevronDown","ShellCollapseButton","direction","label","tooltipSide","className","props","Chevron","mergedClassName","cn","jsx","TooltipProvider","jsxs","Tooltip","TooltipTrigger","Button","TooltipContent"],"mappings":"4PASMA,EAAW,CACf,KAAMC,EAAAA,YACN,MAAOC,EAAAA,aACP,GAAIC,EAAAA,UACJ,KAAMC,EAAAA,WACR,EAgBA,SAASC,EAAoB,CAC3B,UAAAC,EACA,MAAAC,EACA,YAAAC,EAAc,QACd,UAAAC,EACA,GAAGC,CACL,EAA6B,CAC3B,MAAMC,EAAUX,EAASM,CAAS,EAE5BM,EAAkBC,EAAAA,GACtB,iFACAJ,CAAA,EAEF,OACEK,EAAAA,IAACC,EAAAA,gBAAA,CACC,SAAAC,EAAAA,KAACC,EAAAA,QAAA,CACC,SAAA,CAAAH,EAAAA,IAACI,EAAAA,eAAA,CAAe,QAAO,GACrB,SAAAJ,EAAAA,IAACK,EAAAA,OAAA,CACC,YAAU,iCACV,QAAQ,UACR,KAAK,OACJ,GAAGT,EACJ,UAAWE,EACX,aAAYL,EAEZ,SAAAO,EAAAA,IAACH,EAAA,CAAQ,UAAU,aAAA,CAAc,CAAA,CAAA,EAErC,EACAG,EAAAA,IAACM,EAAAA,eAAA,CAAe,KAAMZ,EAAc,SAAAD,CAAA,CAAM,CAAA,CAAA,CAC5C,CAAA,CACF,CAEJ"}
@@ -0,0 +1,23 @@
1
+ import { Button } from '../../ui/button';
2
+ import * as React from "react";
3
+ declare const CHEVRONS: {
4
+ readonly left: React.ForwardRefExoticComponent<Omit<import('lucide-react').LucideProps, "ref"> & React.RefAttributes<SVGSVGElement>>;
5
+ readonly right: React.ForwardRefExoticComponent<Omit<import('lucide-react').LucideProps, "ref"> & React.RefAttributes<SVGSVGElement>>;
6
+ readonly up: React.ForwardRefExoticComponent<Omit<import('lucide-react').LucideProps, "ref"> & React.RefAttributes<SVGSVGElement>>;
7
+ readonly down: React.ForwardRefExoticComponent<Omit<import('lucide-react').LucideProps, "ref"> & React.RefAttributes<SVGSVGElement>>;
8
+ };
9
+ export interface ShellCollapseButtonProps extends Omit<React.ComponentProps<typeof Button>, "children"> {
10
+ /** Chevron direction the button points at. */
11
+ direction: keyof typeof CHEVRONS;
12
+ /** Accessible name + tooltip text (e.g. "Collapse navigation"). */
13
+ label: string;
14
+ /** Tooltip side. Defaults to `right` (rail/sidebar placements). */
15
+ tooltipSide?: "top" | "right" | "bottom" | "left";
16
+ }
17
+ /**
18
+ * The shell's shared collapse/expand affordance — a small outlined square with
19
+ * a chevron, placed in a zone's header row when expanded and at the top of the
20
+ * collapsed rail. One component so every zone's trigger looks identical.
21
+ */
22
+ declare function ShellCollapseButton({ direction, label, tooltipSide, className, ...props }: ShellCollapseButtonProps): import("react/jsx-runtime").JSX.Element;
23
+ export { ShellCollapseButton };
@@ -0,0 +1,42 @@
1
+ import { jsx as o, jsxs as a } from "react/jsx-runtime";
2
+ import { ChevronDown as s, ChevronUp as p, ChevronRight as m, ChevronLeft as d } from "lucide-react";
3
+ import { Button as c } from "../../../ui/button.js";
4
+ import { TooltipProvider as u, Tooltip as C, TooltipTrigger as f, TooltipContent as v } from "../../../ui/tooltip.js";
5
+ import { cn as g } from "../../../lib/utils.js";
6
+ const x = {
7
+ left: d,
8
+ right: m,
9
+ up: p,
10
+ down: s
11
+ };
12
+ function y({
13
+ direction: t,
14
+ label: r,
15
+ tooltipSide: e = "right",
16
+ className: i,
17
+ ...n
18
+ }) {
19
+ const l = x[t], h = g(
20
+ "w-5 h-5 shrink-0 text-muted-foreground hover:text-primary hover:border-primary",
21
+ i
22
+ );
23
+ return /* @__PURE__ */ o(u, { children: /* @__PURE__ */ a(C, { children: [
24
+ /* @__PURE__ */ o(f, { asChild: !0, children: /* @__PURE__ */ o(
25
+ c,
26
+ {
27
+ "data-slot": "data-app-shell-collapse-button",
28
+ variant: "outline",
29
+ size: "icon",
30
+ ...n,
31
+ className: h,
32
+ "aria-label": r,
33
+ children: /* @__PURE__ */ o(l, { className: "w-3.5 h-3.5" })
34
+ }
35
+ ) }),
36
+ /* @__PURE__ */ o(v, { side: e, children: r })
37
+ ] }) });
38
+ }
39
+ export {
40
+ y as ShellCollapseButton
41
+ };
42
+ //# sourceMappingURL=CollapseButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CollapseButton.js","sources":["../../../../src/components/composed/DataAppShell/CollapseButton.tsx"],"sourcesContent":["\"use client\";\n\nimport { ChevronDown, ChevronLeft, ChevronRight, ChevronUp } from \"lucide-react\";\nimport * as React from \"react\";\n\nimport { Button } from \"@/components/ui/button\";\nimport { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from \"@/components/ui/tooltip\";\nimport { cn } from \"@/lib/utils\";\n\nconst CHEVRONS = {\n left: ChevronLeft,\n right: ChevronRight,\n up: ChevronUp,\n down: ChevronDown,\n} as const;\n\nexport interface ShellCollapseButtonProps extends Omit<React.ComponentProps<typeof Button>, \"children\"> {\n /** Chevron direction the button points at. */\n direction: keyof typeof CHEVRONS;\n /** Accessible name + tooltip text (e.g. \"Collapse navigation\"). */\n label: string;\n /** Tooltip side. Defaults to `right` (rail/sidebar placements). */\n tooltipSide?: \"top\" | \"right\" | \"bottom\" | \"left\";\n}\n\n/**\n * The shell's shared collapse/expand affordance — a small outlined square with\n * a chevron, placed in a zone's header row when expanded and at the top of the\n * collapsed rail. One component so every zone's trigger looks identical.\n */\nfunction ShellCollapseButton({\n direction,\n label,\n tooltipSide = \"right\",\n className,\n ...props\n}: ShellCollapseButtonProps) {\n const Chevron = CHEVRONS[direction];\n // cn() so consumer classes properly override the base (tailwind-merge)\n const mergedClassName = cn(\n \"w-5 h-5 shrink-0 text-muted-foreground hover:text-primary hover:border-primary\",\n className,\n );\n return (\n <TooltipProvider>\n <Tooltip>\n <TooltipTrigger asChild>\n <Button\n data-slot=\"data-app-shell-collapse-button\"\n variant=\"outline\"\n size=\"icon\"\n {...props}\n className={mergedClassName}\n aria-label={label}\n >\n <Chevron className=\"w-3.5 h-3.5\" />\n </Button>\n </TooltipTrigger>\n <TooltipContent side={tooltipSide}>{label}</TooltipContent>\n </Tooltip>\n </TooltipProvider>\n );\n}\n\nexport { ShellCollapseButton };\n"],"names":["CHEVRONS","ChevronLeft","ChevronRight","ChevronUp","ChevronDown","ShellCollapseButton","direction","label","tooltipSide","className","props","Chevron","mergedClassName","cn","jsx","TooltipProvider","jsxs","Tooltip","TooltipTrigger","Button","TooltipContent"],"mappings":";;;;;AASA,MAAMA,IAAW;AAAA,EACf,MAAMC;AAAA,EACN,OAAOC;AAAA,EACP,IAAIC;AAAA,EACJ,MAAMC;AACR;AAgBA,SAASC,EAAoB;AAAA,EAC3B,WAAAC;AAAA,EACA,OAAAC;AAAA,EACA,aAAAC,IAAc;AAAA,EACd,WAAAC;AAAA,EACA,GAAGC;AACL,GAA6B;AAC3B,QAAMC,IAAUX,EAASM,CAAS,GAE5BM,IAAkBC;AAAA,IACtB;AAAA,IACAJ;AAAA,EAAA;AAEF,SACE,gBAAAK,EAACC,GAAA,EACC,UAAA,gBAAAC,EAACC,GAAA,EACC,UAAA;AAAA,IAAA,gBAAAH,EAACI,GAAA,EAAe,SAAO,IACrB,UAAA,gBAAAJ;AAAA,MAACK;AAAA,MAAA;AAAA,QACC,aAAU;AAAA,QACV,SAAQ;AAAA,QACR,MAAK;AAAA,QACJ,GAAGT;AAAA,QACJ,WAAWE;AAAA,QACX,cAAYL;AAAA,QAEZ,UAAA,gBAAAO,EAACH,GAAA,EAAQ,WAAU,cAAA,CAAc;AAAA,MAAA;AAAA,IAAA,GAErC;AAAA,IACA,gBAAAG,EAACM,GAAA,EAAe,MAAMZ,GAAc,UAAAD,EAAA,CAAM;AAAA,EAAA,EAAA,CAC5C,EAAA,CACF;AAEJ;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),B=require("class-variance-authority"),N=require("lucide-react"),q=require("react"),O=require("../tdp-link.cjs"),f=require("../../ui/breadcrumb.cjs"),A=require("../../ui/button.cjs"),h=require("../../ui/dropdown-menu.cjs"),m=require("../../ui/sheet.cjs"),x=require("../../ui/tooltip.cjs"),l=require("../../../lib/utils.cjs");function P(r){const a=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(r){for(const i in r)if(i!=="default"){const o=Object.getOwnPropertyDescriptor(r,i);Object.defineProperty(a,i,o.get?o:{enumerable:!0,get:()=>r[i]})}}return a.default=r,Object.freeze(a)}const k=P(q),S=B.cva("flex items-center justify-center rounded-lg transition-colors duration-150",{variants:{active:{true:"bg-primary/10",false:"bg-transparent"},compact:{true:"w-9 h-9 hover:bg-accent",false:"w-8 h-8"}},defaultVariants:{active:!1,compact:!0}});function D({appName:r,appFullName:a,appIcon:i,version:o,navGroups:t,onAppNameClick:d,backToPlatformPath:u,onBackToPlatform:b,userMenu:p,compact:s,onAfterNavClick:y}){return e.jsxs(x.TooltipProvider,{children:[e.jsx("div",{className:l.cn("shrink-0 flex",s?"justify-center py-2":"px-3 py-2.5 border-b border-sidebar-border"),children:e.jsxs(h.DropdownMenu,{children:[e.jsx(h.DropdownMenuTrigger,{asChild:!0,children:e.jsxs("button",{type:"button",className:l.cn("cursor-pointer bg-transparent border-none p-0",!s&&"flex items-center gap-3 w-full text-left"),children:[e.jsx("span",{className:l.cn("flex items-center justify-center rounded-lg bg-sidebar-accent border border-sidebar-border font-bold text-foreground shrink-0",s?"w-9 h-9 text-[11px]":"w-8 h-8 text-[10px]"),children:i??r}),!s&&e.jsx("span",{className:"text-sm font-semibold text-foreground truncate leading-snug",children:a??r})]})}),e.jsxs(h.DropdownMenuContent,{side:"right",align:"start",className:"min-w-[220px]",children:[e.jsxs("div",{className:"flex items-center gap-3 px-3 py-2.5 cursor-pointer",onClick:d,role:"button",tabIndex:0,onKeyDown:c=>{c.key==="Enter"&&d?.()},children:[e.jsx("div",{className:"w-8 h-8 rounded-lg bg-sidebar-accent border border-sidebar-border flex items-center justify-center shrink-0",children:e.jsx("span",{className:"text-[10px] font-bold text-foreground",children:i??r})}),e.jsxs("div",{className:"flex flex-col min-w-0",children:[e.jsx("span",{className:"text-sm font-semibold text-foreground truncate",children:a??r}),o&&e.jsx("span",{className:"text-[10px] text-muted-foreground/70 font-mono leading-none mt-0.5",children:o})]})]}),e.jsx(h.DropdownMenuSeparator,{}),e.jsx(h.DropdownMenuItem,{className:"gap-2.5 p-0",asChild:!0,children:u?e.jsxs(O.TDPLink,{path:u,navigationOptions:{newTab:!1},className:"flex items-center gap-2.5 w-full px-2 py-1.5 !no-underline hover:!no-underline",children:[e.jsx(N.ArrowLeft,{className:"w-4 h-4 text-muted-foreground"}),"Back to TDP Platform"]}):e.jsxs("button",{type:"button",className:"flex items-center gap-2.5 w-full px-2 py-1.5 bg-transparent border-none cursor-pointer",onClick:b,children:[e.jsx(N.ArrowLeft,{className:"w-4 h-4 text-muted-foreground"}),"Back to TDP Platform"]})})]})]})}),s&&e.jsx("div",{className:"shrink-0 mx-auto w-8 border-t border-sidebar-border"}),e.jsx("div",{className:l.cn("flex-1 min-h-0",s?"flex flex-col items-center gap-1 px-2 pt-3 overflow-y-auto":"flex flex-col py-2 overflow-y-auto"),children:t.map((c,j)=>e.jsxs(k.Fragment,{children:[j>0&&e.jsx("div",{className:l.cn("border-t border-sidebar-border",s?"w-8 my-2":"mx-3 my-1")}),!s&&c.label&&e.jsx("span",{className:"px-3 py-1 text-[10px] uppercase tracking-widest text-muted-foreground/60 font-semibold",children:c.label}),e.jsx("div",{className:l.cn("flex flex-col",s?"items-center gap-3 w-full":"gap-0.5"),children:c.pages.map(n=>{const g=n.icon,v=g?e.jsx(g,{className:l.cn("w-5 h-5",n.isActive?"text-primary":"text-muted-foreground")}):e.jsx("div",{className:l.cn("w-2 h-2 rounded-full",n.isActive?"bg-primary":"bg-muted-foreground/40")}),w=()=>{n.onClick?.(),y?.()};return s?e.jsxs(x.Tooltip,{children:[e.jsx(x.TooltipTrigger,{asChild:!0,children:e.jsxs("button",{type:"button",className:"flex flex-col items-center gap-0.5 cursor-pointer bg-transparent border-none p-0 w-full",onClick:w,children:[e.jsx("div",{className:l.cn(S({active:n.isActive??!1,compact:!0})),children:v}),e.jsx("span",{className:l.cn("text-[10px] font-medium leading-tight text-center",n.isActive?"text-foreground font-semibold":"text-muted-foreground"),children:n.label})]})}),e.jsx(x.TooltipContent,{side:"right",children:n.label})]},n.id):e.jsxs("button",{type:"button",className:l.cn("flex items-center gap-3 w-full px-3 py-2 text-sm cursor-pointer bg-transparent border-none text-left transition-colors duration-150 rounded-md mx-1",n.isActive?"bg-sidebar-accent text-sidebar-foreground font-medium":"text-muted-foreground hover:bg-sidebar-accent/60 hover:text-foreground"),onClick:w,children:[e.jsx("div",{className:l.cn(S({active:n.isActive??!1,compact:!1})),children:v}),e.jsx("span",{children:n.label})]},n.id)})})]},`${j}-${c.label??""}`))}),p&&e.jsxs(e.Fragment,{children:[s&&e.jsx("div",{className:"shrink-0 mx-auto w-8 border-t border-sidebar-border"}),e.jsx("div",{className:l.cn("shrink-0",s?"flex flex-col items-center py-2":"p-2 border-t border-sidebar-border"),children:p})]})]})}function M(r){return e.jsx("nav",{"data-slot":"data-app-sidebar-rail","aria-label":"Application navigation",className:"hidden md:flex w-[60px] flex-col shrink-0 bg-sidebar border-r border-sidebar-border h-full z-50",children:e.jsx(D,{compact:!0,...r})})}function L({breadcrumbs:r=[],onHelpClick:a,headerActions:i,mobileTrigger:o}){return e.jsxs("div",{"data-slot":"data-app-top-nav",className:"flex items-center h-10 px-3 bg-sidebar border-b border-sidebar-border sticky top-0 z-40 w-full gap-2",children:[o,e.jsx(f.Breadcrumb,{className:"flex-1 min-w-0",children:e.jsx(f.BreadcrumbList,{children:r.map((t,d)=>{const u=d===r.length-1,b=!u&&(!!t.href||!!t.onClick);return e.jsxs(k.Fragment,{children:[d>0&&e.jsx(f.BreadcrumbSeparator,{children:"/"}),e.jsx(f.BreadcrumbItem,{children:u?e.jsx(f.BreadcrumbPage,{children:t.label}):b&&t.href?e.jsx(f.BreadcrumbLink,{href:t.href,children:t.label}):b&&t.onClick?e.jsx("button",{type:"button",className:"text-[13px] text-primary hover:underline cursor-pointer bg-transparent border-none p-0 font-normal",onClick:t.onClick,children:t.label}):e.jsx("span",{className:"text-[13px] text-muted-foreground",children:t.label})})]},`${t.label}-${d}`)})})}),e.jsxs("div",{className:"flex items-center gap-2 shrink-0",children:[i,a&&e.jsx(x.TooltipProvider,{children:e.jsxs(x.Tooltip,{children:[e.jsx(x.TooltipTrigger,{asChild:!0,children:e.jsx(A.Button,{variant:"ghost",size:"icon",className:"w-7 h-7 text-muted-foreground",onClick:a,"aria-label":"Help",children:e.jsx(N.HelpCircle,{className:"w-4 h-4"})})}),e.jsx(x.TooltipContent,{side:"bottom",children:"Help"})]})})]})]})}function z({appName:r,appFullName:a,appIcon:i,version:o,navGroups:t,onAppNameClick:d,backToPlatformPath:u,onBackToPlatform:b,userMenu:p,breadcrumbs:s=[],onHelpClick:y,headerActions:c,sidebarPanel:j,showNavRail:n=!0,children:g,className:v}){const[w,C]=k.useState(!1),T={appName:r,appFullName:a,appIcon:i,version:o,navGroups:t,onAppNameClick:d,backToPlatformPath:u,onBackToPlatform:b,userMenu:p};return e.jsx(m.Sheet,{open:w,onOpenChange:C,children:e.jsxs("div",{"data-slot":"data-app-shell",className:l.cn("flex flex-row w-full h-screen overflow-hidden",v),children:[n&&e.jsx(M,{...T}),e.jsxs(m.SheetContent,{side:"left",showCloseButton:!1,className:"p-0 bg-sidebar border-r border-sidebar-border data-[side=left]:w-[220px] data-[side=left]:sm:w-[220px] data-[side=left]:sm:max-w-[220px] flex flex-col",children:[e.jsx(m.SheetTitle,{className:"sr-only",children:"Navigation"}),e.jsx(m.SheetDescription,{className:"sr-only",children:"Application navigation menu"}),e.jsx("nav",{"aria-label":"Application navigation",className:"flex flex-col h-full",children:e.jsx(D,{compact:!1,onAfterNavClick:()=>C(!1),...T})})]}),e.jsxs("div",{className:"flex flex-1 flex-col min-w-0 overflow-hidden",children:[e.jsx(L,{breadcrumbs:s,onHelpClick:y,headerActions:c,mobileTrigger:e.jsx(m.SheetTrigger,{asChild:!0,children:e.jsx(A.Button,{variant:"ghost",size:"icon","aria-label":"Open navigation menu",className:"md:hidden w-7 h-7 shrink-0 text-muted-foreground",children:e.jsx(N.Menu,{className:"w-4 h-4"})})})}),e.jsxs("div",{className:"flex flex-1 min-h-0 overflow-hidden",children:[j,e.jsx("main",{"data-slot":"data-app-shell-content",className:"flex-1 overflow-auto bg-background",children:g})]})]})]})})}exports.DataAppShell=z;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),_=require("lucide-react"),re=require("react"),E=require("./CollapseButton.cjs"),S=require("./PrimaryNav.cjs"),se=require("./ShellContext.cjs"),te=require("../../../composed/tdp-link.cjs"),ne=require("../TopBar/TopBar.cjs"),h=require("../../../ui/breadcrumb.cjs"),I=require("../../../ui/button.cjs"),f=require("../../../ui/dropdown-menu.cjs"),j=require("../../../ui/sheet.cjs"),T=require("../../../lib/utils.cjs");function le(r){const a=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(r){for(const s in r)if(s!=="default"){const t=Object.getOwnPropertyDescriptor(r,s);Object.defineProperty(a,s,t.get?t:{enumerable:!0,get:()=>r[s]})}}return a.default=r,Object.freeze(a)}const c=le(re);function v({appName:r,appFullName:a,appIcon:s,version:t,onAppNameClick:n,backToPlatformPath:l,onBackToPlatform:u,compact:o,menuSide:d="right"}){return e.jsxs(f.DropdownMenu,{modal:!1,children:[e.jsx(f.DropdownMenuTrigger,{asChild:!0,children:e.jsxs("button",{type:"button",className:T.cn("cursor-pointer bg-transparent border-none p-0",!o&&"flex items-center gap-3 w-full text-left"),children:[e.jsx("span",{className:T.cn("flex items-center justify-center rounded-lg bg-sidebar-accent border border-sidebar-border font-bold text-foreground shrink-0 w-8 h-8 text-[10px]"),children:s??r}),!o&&e.jsx("span",{className:"text-sm font-semibold text-foreground truncate leading-snug",children:a??r})]})}),e.jsxs(f.DropdownMenuContent,{side:d,align:"start",className:"min-w-[220px]",children:[e.jsxs(f.DropdownMenuItem,{className:"gap-3 px-3 py-2.5",onSelect:()=>n?.(),children:[e.jsx("div",{className:"w-8 h-8 rounded-lg bg-sidebar-accent border border-sidebar-border flex items-center justify-center shrink-0",children:e.jsx("span",{className:"text-[10px] font-bold text-foreground",children:s??r})}),e.jsxs("div",{className:"flex flex-col min-w-0",children:[e.jsx("span",{className:"text-sm font-semibold text-foreground truncate",children:a??r}),t&&e.jsx("span",{className:"text-[10px] text-muted-foreground/70 font-mono leading-none mt-0.5",children:t})]})]}),e.jsx(f.DropdownMenuSeparator,{}),e.jsx(f.DropdownMenuItem,{className:"gap-2.5 p-0",asChild:!0,children:l?e.jsxs(te.TDPLink,{path:l,navigationOptions:{newTab:!1},className:"flex items-center gap-2.5 w-full px-2 py-1.5 !no-underline hover:!no-underline",children:[e.jsx(_.ArrowLeft,{className:"w-4 h-4 text-muted-foreground"}),"Back to TDP Platform"]}):e.jsxs("button",{type:"button",className:"flex items-center gap-2.5 w-full px-2 py-1.5 bg-transparent border-none cursor-pointer",onClick:u,children:[e.jsx(_.ArrowLeft,{className:"w-4 h-4 text-muted-foreground"}),"Back to TDP Platform"]})})]})]})}function G({appName:r,appFullName:a,appIcon:s,version:t,navGroups:n,onAppNameClick:l,backToPlatformPath:u,onBackToPlatform:o,userMenu:d,compact:m,onAfterNavClick:x}){return e.jsx(S.DataAppShellPrimaryNav,{variant:m?"rail":"sidebar","aria-label":"Application navigation",navGroups:n,onSelect:()=>x?.(),header:e.jsx(v,{appName:r,appFullName:a,appIcon:s,version:t,onAppNameClick:l,backToPlatformPath:u,onBackToPlatform:o,compact:m}),user:d,className:"h-full w-full"})}function ie(r){return e.jsx("div",{"data-slot":"data-app-sidebar-rail",className:"hidden md:flex w-12 flex-col shrink-0 bg-sidebar border-r border-sidebar-border h-full z-50",children:e.jsx(G,{compact:!0,...r})})}function oe({collapsed:r,onCollapsedChange:a,...s}){const{appName:t,appFullName:n,appIcon:l,version:u,onAppNameClick:o,backToPlatformPath:d,onBackToPlatform:m}=s,x={appName:t,appFullName:n,appIcon:l,version:u,onAppNameClick:o,backToPlatformPath:d,onBackToPlatform:m};return r?e.jsx("div",{"data-slot":"data-app-sidebar-rail","data-collapsed":"true",className:"hidden md:flex w-12 flex-col shrink-0 bg-sidebar border-r border-sidebar-border h-full z-50",children:e.jsx(S.DataAppShellPrimaryNav,{variant:"rail","aria-label":"Application navigation",navGroups:s.navGroups,header:e.jsxs("div",{className:"flex flex-col items-center gap-2",children:[e.jsx(v,{...x,compact:!0}),e.jsx(E.ShellCollapseButton,{direction:"right",label:"Expand navigation",onClick:()=>a(!1)})]}),user:s.userMenu,className:"h-full w-full"})}):e.jsx("div",{"data-slot":"data-app-sidebar","data-collapsed":"false",className:"hidden md:flex w-[220px] flex-col shrink-0 bg-sidebar border-r border-sidebar-border h-full z-50",children:e.jsx(S.DataAppShellPrimaryNav,{variant:"sidebar","aria-label":"Application navigation",navGroups:s.navGroups,header:e.jsxs("div",{className:"flex items-center gap-2 w-full min-w-0",children:[e.jsx("div",{className:"flex-1 min-w-0",children:e.jsx(v,{...x,compact:!1})}),e.jsx(E.ShellCollapseButton,{direction:"left",label:"Collapse navigation",onClick:()=>a(!0)})]}),user:s.userMenu,className:"h-full w-full"})})}function de({items:r}){return e.jsx(h.Breadcrumb,{className:"min-w-0",children:e.jsx(h.BreadcrumbList,{className:"flex-nowrap min-w-0",children:r.map((a,s)=>{const t=s===r.length-1,n=!t&&(!!a.href||!!a.onClick),l=t?"min-w-0":"shrink-0";return e.jsxs(c.Fragment,{children:[s>0&&e.jsx(h.BreadcrumbSeparator,{className:"shrink-0",children:"/"}),e.jsx(h.BreadcrumbItem,{className:l,children:t?e.jsx(h.BreadcrumbPage,{className:"truncate",children:a.label}):n&&a.href?e.jsx(h.BreadcrumbLink,{href:a.href,className:"whitespace-nowrap",children:a.label}):n&&a.onClick?e.jsx("button",{type:"button",className:"text-sm text-primary hover:underline cursor-pointer bg-transparent border-none p-0 font-normal whitespace-nowrap",onClick:a.onClick,children:a.label}):e.jsx("span",{className:"text-sm text-muted-foreground whitespace-nowrap",children:a.label})})]},`${a.label}-${s}`)})})})}function ce({breadcrumbs:r=[],headerLeft:a,headerCenter:s,headerActions:t,mobileTrigger:n}){return e.jsx(ne.TopBar,{"data-slot":"data-app-top-nav",left:e.jsxs(e.Fragment,{children:[n&&e.jsx("div",{className:"shrink-0",children:n}),e.jsx(de,{items:r}),a!=null&&e.jsx("div",{className:"shrink-0",children:a})]}),center:s,right:t})}function ue({appName:r,appFullName:a,appIcon:s,version:t,navGroups:n,onAppNameClick:l,backToPlatformPath:u,onBackToPlatform:o,userMenu:d,breadcrumbs:m=[],headerLeft:x,headerCenter:H,headerActions:F,navVariant:b="vertical",primaryNav:$="rail",sidebarPanel:y,secondaryBar:R,rightPanel:J,showNavRail:K=!0,showTopBar:Q=!0,collapsed:g,defaultCollapsed:U=!1,onCollapsedChange:w,hideNavOnCollapse:C=!1,autoCollapse:A="(max-width: 1023px)",children:W,className:X}){const[Y,O]=c.useState(!1),[Z,D]=c.useState(U),p=g??Z,P=c.useRef(p);P.current=p;const N=c.useRef(!1),B=c.useCallback(i=>{N.current=!1,g===void 0&&D(i),w?.(i)},[g,w]),M=c.useRef(i=>{});M.current=i=>{i&&!P.current?(g===void 0&&D(!0),w?.(!0),N.current=!0):!i&&N.current&&(N.current=!1,g===void 0&&D(!1),w?.(!1))},c.useEffect(()=>{if(A===!1||b!=="vertical")return;const i=window.matchMedia(A);M.current(i.matches);const z=ae=>M.current(ae.matches);return i.addEventListener("change",z),()=>i.removeEventListener("change",z)},[A,b]);const k={appName:r,appFullName:a,appIcon:s,version:t,navGroups:n,onAppNameClick:l,backToPlatformPath:u,onBackToPlatform:o,userMenu:d},q=b==="vertical",L=q&&$==="sidebar",V=!K||C&&p&&!L,ee=q?"grid h-screen w-full overflow-hidden [grid-template-columns:auto_auto_minmax(0,1fr)] [grid-template-rows:auto_auto_minmax(0,1fr)] [grid-template-areas:'nav_top_top'_'nav_sub_sub'_'nav_side_body']":"grid h-screen w-full overflow-hidden [grid-template-columns:auto_minmax(0,1fr)] [grid-template-rows:auto_auto_auto_minmax(0,1fr)] [grid-template-areas:'pnav_pnav'_'top_top'_'sub_sub'_'side_body']";return e.jsx(se.DataAppShellProvider,{value:{navVariant:b,collapsed:p,setCollapsed:B,hideNavOnCollapse:C},children:e.jsx(j.Sheet,{open:Y,onOpenChange:O,children:e.jsxs("div",{"data-slot":"data-app-shell","data-nav-variant":b,"data-collapsed":p||void 0,className:T.cn(ee,X),children:[!V&&(q?e.jsx("div",{className:"[grid-area:nav] min-h-0",children:L?e.jsx(oe,{collapsed:p,onCollapsedChange:B,...k}):e.jsx(ie,{...k})}):e.jsx("div",{className:"[grid-area:pnav] hidden md:block border-b border-sidebar-border bg-sidebar px-3 py-1.5",children:e.jsx(S.DataAppShellPrimaryNav,{variant:"top","aria-label":"Application navigation",navGroups:n,header:e.jsx(v,{...k,compact:!0,menuSide:"bottom"}),user:d})})),C&&p&&!y&&e.jsx(I.Button,{"data-slot":"data-app-shell-expand-fab",variant:"outline",size:"icon-sm","aria-label":"Expand navigation",className:"absolute left-2 top-2 z-50 shadow-elevation-2",onClick:()=>B(!1),children:e.jsx(_.ChevronRight,{className:"w-4 h-4"})}),e.jsxs(j.SheetContent,{side:"left",showCloseButton:!1,className:"p-0 bg-sidebar border-r border-sidebar-border data-[side=left]:w-[220px] data-[side=left]:sm:w-[220px] data-[side=left]:sm:max-w-[220px] flex flex-col",children:[e.jsx(j.SheetTitle,{className:"sr-only",children:"Navigation"}),e.jsx(j.SheetDescription,{className:"sr-only",children:"Application navigation menu"}),e.jsx(G,{compact:!1,onAfterNavClick:()=>O(!1),...k})]}),y&&e.jsx("div",{className:"[grid-area:side] min-h-0 flex",children:y}),Q&&e.jsx("div",{className:"[grid-area:top] min-w-0",children:e.jsx(ce,{breadcrumbs:m,headerLeft:x,headerCenter:H,headerActions:F,mobileTrigger:e.jsx(j.SheetTrigger,{asChild:!0,children:e.jsx(I.Button,{variant:"ghost",size:"icon","aria-label":"Open navigation menu",className:"md:hidden w-7 h-7 shrink-0 text-muted-foreground",children:e.jsx(_.Menu,{className:"w-4 h-4"})})})})}),R&&e.jsx("div",{className:"[grid-area:sub] min-w-0",children:R}),e.jsxs("div",{className:"[grid-area:body] relative flex min-h-0 min-w-0 overflow-hidden",children:[e.jsx("main",{"data-slot":"data-app-shell-content",className:"flex-1 min-w-0 overflow-auto bg-background",children:W}),J]})]})})})}exports.AppHeaderMenu=v;exports.DataAppShell=ue;
2
2
  //# sourceMappingURL=DataAppShell.cjs.map