@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.
- package/README.md +58 -4
- package/dist/ai/attachments.cjs +2 -0
- package/dist/ai/attachments.cjs.map +1 -0
- package/dist/ai/attachments.js +224 -0
- package/dist/ai/attachments.js.map +1 -0
- package/dist/ai/chain-of-thought.cjs +2 -0
- package/dist/ai/chain-of-thought.cjs.map +1 -0
- package/dist/ai/chain-of-thought.js +145 -0
- package/dist/ai/chain-of-thought.js.map +1 -0
- package/dist/ai/confirmation.cjs +2 -0
- package/dist/ai/confirmation.cjs.map +1 -0
- package/dist/ai/confirmation.js +109 -0
- package/dist/ai/confirmation.js.map +1 -0
- package/dist/ai/context.cjs +2 -0
- package/dist/ai/context.cjs.map +1 -0
- package/dist/ai/context.js +267 -0
- package/dist/ai/context.js.map +1 -0
- package/dist/ai/conversation.cjs +4 -0
- package/dist/ai/conversation.cjs.map +1 -0
- package/dist/ai/conversation.js +108 -0
- package/dist/ai/conversation.js.map +1 -0
- package/dist/ai/inline-citation.cjs +2 -0
- package/dist/ai/inline-citation.cjs.map +1 -0
- package/dist/ai/inline-citation.js +182 -0
- package/dist/ai/inline-citation.js.map +1 -0
- package/dist/ai/message.cjs +2 -0
- package/dist/ai/message.cjs.map +1 -0
- package/dist/ai/message.js +237 -0
- package/dist/ai/message.js.map +1 -0
- package/dist/ai/model-selector.cjs +2 -0
- package/dist/ai/model-selector.cjs.map +1 -0
- package/dist/ai/model-selector.js +77 -0
- package/dist/ai/model-selector.js.map +1 -0
- package/dist/ai/prompt-input.cjs +2 -0
- package/dist/ai/prompt-input.cjs.map +1 -0
- package/dist/ai/prompt-input.js +776 -0
- package/dist/ai/prompt-input.js.map +1 -0
- package/dist/ai/queue.cjs +2 -0
- package/dist/ai/queue.cjs.map +1 -0
- package/dist/ai/queue.js +209 -0
- package/dist/ai/queue.js.map +1 -0
- package/dist/ai/reasoning.cjs +2 -0
- package/dist/ai/reasoning.cjs.map +1 -0
- package/dist/ai/reasoning.js +129 -0
- package/dist/ai/reasoning.js.map +1 -0
- package/dist/ai/shimmer.cjs +2 -0
- package/dist/ai/shimmer.cjs.map +1 -0
- package/dist/ai/shimmer.js +49 -0
- package/dist/ai/shimmer.js.map +1 -0
- package/dist/ai/sources.cjs +2 -0
- package/dist/ai/sources.cjs.map +1 -0
- package/dist/ai/sources.js +54 -0
- package/dist/ai/sources.js.map +1 -0
- package/dist/ai/speech-input.cjs +2 -0
- package/dist/ai/speech-input.cjs.map +1 -0
- package/dist/ai/speech-input.js +123 -0
- package/dist/ai/speech-input.js.map +1 -0
- package/dist/ai/stream-status.cjs +2 -0
- package/dist/ai/stream-status.cjs.map +1 -0
- package/dist/ai/stream-status.js +108 -0
- package/dist/ai/stream-status.js.map +1 -0
- package/dist/ai/suggestion.cjs +2 -0
- package/dist/ai/suggestion.cjs.map +1 -0
- package/dist/ai/suggestion.js +38 -0
- package/dist/ai/suggestion.js.map +1 -0
- package/dist/ai/task.cjs +2 -0
- package/dist/ai/task.cjs.map +1 -0
- package/dist/ai/task.js +101 -0
- package/dist/ai/task.js.map +1 -0
- package/dist/ai/tool.cjs +2 -0
- package/dist/ai/tool.cjs.map +1 -0
- package/dist/ai/tool.js +139 -0
- package/dist/ai/tool.js.map +1 -0
- package/dist/charts/AreaPlot.cjs +2 -0
- package/dist/charts/AreaPlot.cjs.map +1 -0
- package/dist/charts/AreaPlot.js +5 -0
- package/dist/charts/AreaPlot.js.map +1 -0
- package/dist/charts/BarChart.cjs +2 -0
- package/dist/charts/BarChart.cjs.map +1 -0
- package/dist/charts/BarChart.js +5 -0
- package/dist/charts/BarChart.js.map +1 -0
- package/dist/charts/BoxPlot.cjs +2 -0
- package/dist/charts/BoxPlot.cjs.map +1 -0
- package/dist/charts/BoxPlot.js +5 -0
- package/dist/charts/BoxPlot.js.map +1 -0
- package/dist/charts/ChartTooltip.cjs +2 -0
- package/dist/charts/ChartTooltip.cjs.map +1 -0
- package/dist/charts/ChartTooltip.js +8 -0
- package/dist/charts/ChartTooltip.js.map +1 -0
- package/dist/charts/Chromatogram.cjs +2 -0
- package/dist/charts/Chromatogram.cjs.map +1 -0
- package/dist/charts/Chromatogram.js +5 -0
- package/dist/charts/Chromatogram.js.map +1 -0
- package/dist/charts/Electropherogram.cjs +2 -0
- package/dist/charts/Electropherogram.cjs.map +1 -0
- package/dist/charts/Electropherogram.js +5 -0
- package/dist/charts/Electropherogram.js.map +1 -0
- package/dist/charts/Histogram.cjs +2 -0
- package/dist/charts/Histogram.cjs.map +1 -0
- package/dist/charts/Histogram.js +5 -0
- package/dist/charts/Histogram.js.map +1 -0
- package/dist/charts/LinePlot.cjs +2 -0
- package/dist/charts/LinePlot.cjs.map +1 -0
- package/dist/charts/LinePlot.js +5 -0
- package/dist/charts/LinePlot.js.map +1 -0
- package/dist/charts/PieChart.cjs +2 -0
- package/dist/charts/PieChart.cjs.map +1 -0
- package/dist/charts/PieChart.js +5 -0
- package/dist/charts/PieChart.js.map +1 -0
- package/dist/charts/PlateMap.cjs +2 -0
- package/dist/charts/PlateMap.cjs.map +1 -0
- package/dist/charts/PlateMap.js +5 -0
- package/dist/charts/PlateMap.js.map +1 -0
- package/dist/charts/ScatterPlot.cjs +2 -0
- package/dist/charts/ScatterPlot.cjs.map +1 -0
- package/dist/charts/ScatterPlot.js +5 -0
- package/dist/charts/ScatterPlot.js.map +1 -0
- package/dist/charts/ScatterPlotInteractive.cjs +2 -0
- package/dist/charts/ScatterPlotInteractive.cjs.map +1 -0
- package/dist/charts/ScatterPlotInteractive.js +14 -0
- package/dist/charts/ScatterPlotInteractive.js.map +1 -0
- package/dist/charts/StackedChromatogram.cjs +2 -0
- package/dist/charts/StackedChromatogram.cjs.map +1 -0
- package/dist/charts/StackedChromatogram.js +7 -0
- package/dist/charts/StackedChromatogram.js.map +1 -0
- package/dist/components/ai/attachments.d.ts +54 -0
- package/dist/components/ai/chain-of-thought.d.ts +56 -0
- package/dist/components/ai/confirmation.d.ts +47 -0
- package/dist/components/ai/context.d.ts +40 -0
- package/dist/components/ai/conversation.d.ts +23 -0
- package/dist/components/ai/inline-citation.d.ts +38 -0
- package/dist/components/ai/message.d.ts +37 -0
- package/dist/components/ai/model-selector.d.ts +36 -0
- package/dist/components/ai/prompt-input.d.ts +158 -0
- package/dist/components/ai/queue.d.ts +72 -0
- package/dist/components/ai/reasoning.d.ts +26 -0
- package/dist/components/ai/shimmer.d.ts +17 -0
- package/dist/components/ai/sources.d.ts +12 -0
- package/dist/components/ai/speech-input.d.ts +54 -0
- package/dist/components/ai/stream-status.d.ts +66 -0
- package/dist/components/ai/streamdown-code-plugin.cjs +2 -0
- package/dist/components/ai/streamdown-code-plugin.cjs.map +1 -0
- package/dist/components/ai/streamdown-code-plugin.d.ts +2 -0
- package/dist/components/ai/streamdown-code-plugin.js +42 -0
- package/dist/components/ai/streamdown-code-plugin.js.map +1 -0
- package/dist/components/ai/streamdown-plugins.cjs +2 -0
- package/dist/components/ai/streamdown-plugins.cjs.map +1 -0
- package/dist/components/ai/streamdown-plugins.d.ts +2 -0
- package/dist/components/ai/streamdown-plugins.js +14 -0
- package/dist/components/ai/streamdown-plugins.js.map +1 -0
- package/dist/components/ai/suggestion.d.ts +9 -0
- package/dist/components/ai/task.d.ts +16 -0
- package/dist/components/ai/tool.d.ts +33 -0
- package/dist/components/ai/use-streamdown-plugins.cjs +2 -0
- package/dist/components/ai/use-streamdown-plugins.cjs.map +1 -0
- package/dist/components/ai/use-streamdown-plugins.d.ts +8 -0
- package/dist/components/ai/use-streamdown-plugins.js +25 -0
- package/dist/components/ai/use-streamdown-plugins.js.map +1 -0
- package/dist/components/charts/AreaPlot/AreaPlot.cjs +2 -0
- package/dist/components/charts/AreaPlot/AreaPlot.cjs.map +1 -0
- package/dist/components/charts/AreaPlot/AreaPlot.d.ts +39 -0
- package/dist/components/charts/AreaPlot/AreaPlot.js +270 -0
- package/dist/components/charts/AreaPlot/AreaPlot.js.map +1 -0
- package/dist/components/charts/AreaPlot/index.d.ts +2 -0
- package/dist/components/charts/BarChart/BarChart.cjs +2 -0
- package/dist/components/charts/BarChart/BarChart.cjs.map +1 -0
- package/dist/components/charts/BarChart/BarChart.d.ts +44 -0
- package/dist/components/charts/BarChart/BarChart.js +219 -0
- package/dist/components/charts/BarChart/BarChart.js.map +1 -0
- package/dist/components/charts/BarChart/index.d.ts +2 -0
- package/dist/components/charts/BoxPlot/BoxPlot.cjs +2 -0
- package/dist/components/charts/BoxPlot/BoxPlot.cjs.map +1 -0
- package/dist/components/charts/BoxPlot/BoxPlot.d.ts +33 -0
- package/dist/components/charts/BoxPlot/BoxPlot.js +208 -0
- package/dist/components/charts/BoxPlot/BoxPlot.js.map +1 -0
- package/dist/components/charts/BoxPlot/index.d.ts +2 -0
- package/dist/components/charts/ChartTooltip/ChartTooltip.cjs +1 -1
- package/dist/components/charts/ChartTooltip/ChartTooltip.cjs.map +1 -1
- package/dist/components/charts/ChartTooltip/ChartTooltip.d.ts +71 -0
- package/dist/components/charts/ChartTooltip/ChartTooltip.js +22 -22
- package/dist/components/charts/ChartTooltip/ChartTooltip.js.map +1 -1
- package/dist/components/charts/ChartTooltip/index.d.ts +2 -0
- package/dist/components/charts/ChartTooltip/lines.d.ts +54 -0
- package/dist/components/charts/Chromatogram/Chromatogram.cjs +1 -1
- package/dist/components/charts/Chromatogram/Chromatogram.cjs.map +1 -1
- package/dist/components/charts/Chromatogram/Chromatogram.d.ts +5 -0
- package/dist/components/charts/Chromatogram/Chromatogram.js +232 -170
- package/dist/components/charts/Chromatogram/Chromatogram.js.map +1 -1
- package/dist/components/charts/Chromatogram/annotations.cjs +2 -0
- package/dist/components/charts/Chromatogram/annotations.cjs.map +1 -0
- package/dist/components/charts/Chromatogram/annotations.d.ts +50 -0
- package/dist/components/charts/Chromatogram/annotations.js +137 -0
- package/dist/components/charts/Chromatogram/annotations.js.map +1 -0
- package/dist/components/charts/Chromatogram/boundaryMarkers.cjs +2 -0
- package/dist/components/charts/Chromatogram/boundaryMarkers.cjs.map +1 -0
- package/dist/components/charts/Chromatogram/boundaryMarkers.d.ts +14 -0
- package/dist/components/charts/Chromatogram/boundaryMarkers.js +34 -0
- package/dist/components/charts/Chromatogram/boundaryMarkers.js.map +1 -0
- package/dist/components/charts/Chromatogram/constants.cjs +2 -0
- package/dist/components/charts/Chromatogram/constants.cjs.map +1 -0
- package/dist/components/charts/Chromatogram/constants.d.ts +46 -0
- package/dist/components/charts/Chromatogram/constants.js +36 -0
- package/dist/components/charts/Chromatogram/constants.js.map +1 -0
- package/dist/components/charts/Chromatogram/dataProcessing.cjs +2 -0
- package/dist/components/charts/Chromatogram/dataProcessing.cjs.map +1 -0
- package/dist/components/charts/Chromatogram/dataProcessing.d.ts +49 -0
- package/dist/components/charts/Chromatogram/dataProcessing.js +90 -0
- package/dist/components/charts/Chromatogram/dataProcessing.js.map +1 -0
- package/dist/components/charts/Chromatogram/index.d.ts +2 -0
- package/dist/components/charts/Chromatogram/peakDetection.cjs.map +1 -0
- package/dist/components/charts/Chromatogram/peakDetection.d.ts +33 -0
- package/dist/components/charts/Chromatogram/peakDetection.js.map +1 -0
- package/dist/components/charts/Chromatogram/plotBuilder.cjs +2 -0
- package/dist/components/charts/Chromatogram/plotBuilder.cjs.map +1 -0
- package/dist/components/charts/Chromatogram/plotBuilder.d.ts +58 -0
- package/dist/components/charts/Chromatogram/plotBuilder.js +216 -0
- package/dist/components/charts/Chromatogram/plotBuilder.js.map +1 -0
- package/dist/components/charts/Chromatogram/regionOverlays.cjs +2 -0
- package/dist/components/charts/Chromatogram/regionOverlays.cjs.map +1 -0
- package/dist/components/charts/Chromatogram/regionOverlays.d.ts +9 -0
- package/dist/components/charts/Chromatogram/regionOverlays.js +26 -0
- package/dist/components/charts/Chromatogram/regionOverlays.js.map +1 -0
- package/dist/components/charts/Chromatogram/types.d.ts +258 -0
- package/dist/components/charts/Electropherogram/Electropherogram.cjs +2 -0
- package/dist/components/charts/Electropherogram/Electropherogram.cjs.map +1 -0
- package/dist/components/charts/Electropherogram/Electropherogram.d.ts +22 -0
- package/dist/components/charts/Electropherogram/Electropherogram.js +180 -0
- package/dist/components/charts/Electropherogram/Electropherogram.js.map +1 -0
- package/dist/components/charts/Electropherogram/index.d.ts +2 -0
- package/dist/components/charts/Histogram/Histogram.cjs +1 -1
- package/dist/components/charts/Histogram/Histogram.cjs.map +1 -1
- package/dist/components/charts/Histogram/Histogram.d.ts +36 -0
- package/dist/components/charts/Histogram/Histogram.js +107 -108
- package/dist/components/charts/Histogram/Histogram.js.map +1 -1
- package/dist/components/charts/Histogram/index.d.ts +2 -0
- package/dist/components/charts/LinePlot/LinePlot.cjs +2 -0
- package/dist/components/charts/LinePlot/LinePlot.cjs.map +1 -0
- package/dist/components/charts/LinePlot/LinePlot.d.ts +45 -0
- package/dist/components/charts/LinePlot/LinePlot.js +224 -0
- package/dist/components/charts/LinePlot/LinePlot.js.map +1 -0
- package/dist/components/charts/LinePlot/index.d.ts +2 -0
- package/dist/components/charts/PieChart/PieChart.cjs +1 -1
- package/dist/components/charts/PieChart/PieChart.cjs.map +1 -1
- package/dist/components/charts/PieChart/PieChart.d.ts +20 -0
- package/dist/components/charts/PieChart/PieChart.js +62 -61
- package/dist/components/charts/PieChart/PieChart.js.map +1 -1
- package/dist/components/charts/PieChart/index.d.ts +2 -0
- package/dist/components/charts/PlateMap/PlateMap.cjs +1 -1
- package/dist/components/charts/PlateMap/PlateMap.cjs.map +1 -1
- package/dist/components/charts/PlateMap/PlateMap.d.ts +29 -0
- package/dist/components/charts/PlateMap/PlateMap.js +246 -242
- package/dist/components/charts/PlateMap/PlateMap.js.map +1 -1
- package/dist/components/charts/PlateMap/constants.d.ts +75 -0
- package/dist/components/charts/PlateMap/index.d.ts +2 -0
- package/dist/components/charts/PlateMap/types.d.ts +322 -0
- package/dist/components/charts/PlateMap/utils.d.ts +133 -0
- package/dist/components/charts/ScatterPlot/ScatterPlot.cjs +2 -0
- package/dist/components/charts/ScatterPlot/ScatterPlot.cjs.map +1 -0
- package/dist/components/charts/ScatterPlot/ScatterPlot.d.ts +43 -0
- package/dist/components/charts/ScatterPlot/ScatterPlot.js +252 -0
- package/dist/components/charts/ScatterPlot/ScatterPlot.js.map +1 -0
- package/dist/components/charts/ScatterPlot/index.d.ts +2 -0
- package/dist/components/charts/ScatterPlotInteractive/ScatterPlotInteractive.cjs +2 -0
- package/dist/components/charts/ScatterPlotInteractive/ScatterPlotInteractive.cjs.map +1 -0
- package/dist/components/charts/ScatterPlotInteractive/ScatterPlotInteractive.d.ts +25 -0
- package/dist/components/charts/ScatterPlotInteractive/ScatterPlotInteractive.js +215 -0
- package/dist/components/charts/ScatterPlotInteractive/ScatterPlotInteractive.js.map +1 -0
- package/dist/components/charts/ScatterPlotInteractive/constants.cjs +2 -0
- package/dist/components/charts/ScatterPlotInteractive/constants.cjs.map +1 -0
- package/dist/components/charts/ScatterPlotInteractive/constants.d.ts +50 -0
- package/dist/components/charts/ScatterPlotInteractive/constants.js +38 -0
- package/dist/components/charts/ScatterPlotInteractive/constants.js.map +1 -0
- package/dist/components/charts/ScatterPlotInteractive/index.d.ts +3 -0
- package/dist/components/charts/ScatterPlotInteractive/types.d.ts +226 -0
- package/dist/components/charts/ScatterPlotInteractive/utils.cjs +2 -0
- package/dist/components/charts/ScatterPlotInteractive/utils.cjs.map +1 -0
- package/dist/components/charts/ScatterPlotInteractive/utils.d.ts +72 -0
- package/dist/components/charts/ScatterPlotInteractive/utils.js +261 -0
- package/dist/components/charts/ScatterPlotInteractive/utils.js.map +1 -0
- package/dist/components/charts/StackedChromatogram/StackedChromatogram.cjs +2 -0
- package/dist/components/charts/StackedChromatogram/StackedChromatogram.cjs.map +1 -0
- package/dist/components/charts/StackedChromatogram/StackedChromatogram.d.ts +3 -0
- package/dist/components/charts/StackedChromatogram/StackedChromatogram.js +40 -0
- package/dist/components/charts/StackedChromatogram/StackedChromatogram.js.map +1 -0
- package/dist/components/charts/StackedChromatogram/index.d.ts +3 -0
- package/dist/components/charts/StackedChromatogram/transforms.cjs +2 -0
- package/dist/components/charts/StackedChromatogram/transforms.cjs.map +1 -0
- package/dist/components/charts/StackedChromatogram/transforms.d.ts +9 -0
- package/dist/components/charts/StackedChromatogram/transforms.js +31 -0
- package/dist/components/charts/StackedChromatogram/transforms.js.map +1 -0
- package/dist/components/charts/StackedChromatogram/types.d.ts +26 -0
- package/dist/components/charts/plotly-loader.cjs +2 -0
- package/dist/components/charts/plotly-loader.cjs.map +1 -0
- package/dist/components/charts/plotly-loader.d.ts +29 -0
- package/dist/components/charts/plotly-loader.js +22 -0
- package/dist/components/charts/plotly-loader.js.map +1 -0
- package/dist/components/composed/AssistantLayout/AssistantLayout.cjs +2 -0
- package/dist/components/composed/AssistantLayout/AssistantLayout.cjs.map +1 -0
- package/dist/components/composed/AssistantLayout/AssistantLayout.d.ts +63 -0
- package/dist/components/composed/AssistantLayout/AssistantLayout.js +142 -0
- package/dist/components/composed/AssistantLayout/AssistantLayout.js.map +1 -0
- package/dist/components/composed/AssistantLayout/dockLayout.cjs +2 -0
- package/dist/components/composed/AssistantLayout/dockLayout.cjs.map +1 -0
- package/dist/components/composed/AssistantLayout/dockLayout.d.ts +15 -0
- package/dist/components/composed/AssistantLayout/dockLayout.js +10 -0
- package/dist/components/composed/AssistantLayout/dockLayout.js.map +1 -0
- package/dist/components/composed/AssistantLayout/index.d.ts +3 -0
- package/dist/components/composed/Chat/Chat.cjs +1 -1
- package/dist/components/composed/Chat/Chat.cjs.map +1 -1
- package/dist/components/composed/Chat/Chat.d.ts +35 -0
- package/dist/components/composed/Chat/Chat.js +28 -28
- package/dist/components/composed/Chat/Chat.js.map +1 -1
- package/dist/components/composed/Chat/index.d.ts +2 -0
- package/dist/components/composed/ConfirmDialog/ConfirmDialog.cjs +1 -1
- package/dist/components/composed/ConfirmDialog/ConfirmDialog.cjs.map +1 -1
- package/dist/components/composed/ConfirmDialog/ConfirmDialog.d.ts +23 -0
- package/dist/components/composed/ConfirmDialog/ConfirmDialog.js +33 -29
- package/dist/components/composed/ConfirmDialog/ConfirmDialog.js.map +1 -1
- package/dist/components/composed/ConfirmDialog/index.d.ts +1 -0
- package/dist/components/composed/DataAppShell/CollapseButton.cjs +2 -0
- package/dist/components/composed/DataAppShell/CollapseButton.cjs.map +1 -0
- package/dist/components/composed/DataAppShell/CollapseButton.d.ts +23 -0
- package/dist/components/composed/DataAppShell/CollapseButton.js +42 -0
- package/dist/components/composed/DataAppShell/CollapseButton.js.map +1 -0
- package/dist/components/composed/DataAppShell/DataAppShell.cjs +1 -1
- package/dist/components/composed/DataAppShell/DataAppShell.cjs.map +1 -1
- package/dist/components/composed/DataAppShell/DataAppShell.d.ts +88 -0
- package/dist/components/composed/DataAppShell/DataAppShell.js +350 -328
- package/dist/components/composed/DataAppShell/DataAppShell.js.map +1 -1
- package/dist/components/composed/DataAppShell/PrimaryNav.cjs +2 -0
- package/dist/components/composed/DataAppShell/PrimaryNav.cjs.map +1 -0
- package/dist/components/composed/DataAppShell/PrimaryNav.d.ts +64 -0
- package/dist/components/composed/DataAppShell/PrimaryNav.js +268 -0
- package/dist/components/composed/DataAppShell/PrimaryNav.js.map +1 -0
- package/dist/components/composed/DataAppShell/RightPanel.cjs +2 -0
- package/dist/components/composed/DataAppShell/RightPanel.cjs.map +1 -0
- package/dist/components/composed/DataAppShell/RightPanel.d.ts +95 -0
- package/dist/components/composed/DataAppShell/RightPanel.js +282 -0
- package/dist/components/composed/DataAppShell/RightPanel.js.map +1 -0
- package/dist/components/composed/DataAppShell/SecondaryNav.cjs +2 -0
- package/dist/components/composed/DataAppShell/SecondaryNav.cjs.map +1 -0
- package/dist/components/composed/DataAppShell/SecondaryNav.d.ts +63 -0
- package/dist/components/composed/DataAppShell/SecondaryNav.js +364 -0
- package/dist/components/composed/DataAppShell/SecondaryNav.js.map +1 -0
- package/dist/components/composed/DataAppShell/ShellContext.cjs +2 -0
- package/dist/components/composed/DataAppShell/ShellContext.cjs.map +1 -0
- package/dist/components/composed/DataAppShell/ShellContext.d.ts +20 -0
- package/dist/components/composed/DataAppShell/ShellContext.js +23 -0
- package/dist/components/composed/DataAppShell/ShellContext.js.map +1 -0
- package/dist/components/composed/DataAppShell/index.d.ts +12 -0
- package/dist/components/composed/EmptyState/EmptyState.d.ts +12 -0
- package/dist/components/composed/EmptyState/index.d.ts +2 -0
- package/dist/components/composed/FormPatterns/FormSection.cjs +1 -1
- package/dist/components/composed/FormPatterns/FormSection.cjs.map +1 -1
- package/dist/components/composed/FormPatterns/FormSection.d.ts +7 -0
- package/dist/components/composed/FormPatterns/FormSection.js +2 -2
- package/dist/components/composed/FormPatterns/index.d.ts +1 -0
- package/dist/components/composed/MoleculeStructure/MoleculeStructure.cjs +2 -0
- package/dist/components/composed/MoleculeStructure/MoleculeStructure.cjs.map +1 -0
- package/dist/components/composed/MoleculeStructure/MoleculeStructure.d.ts +43 -0
- package/dist/components/composed/MoleculeStructure/MoleculeStructure.js +87 -0
- package/dist/components/composed/MoleculeStructure/MoleculeStructure.js.map +1 -0
- package/dist/components/composed/MoleculeStructure/index.d.ts +3 -0
- package/dist/components/composed/MoleculeStructure/rdkit-loader.cjs +2 -0
- package/dist/components/composed/MoleculeStructure/rdkit-loader.cjs.map +1 -0
- package/dist/components/composed/MoleculeStructure/rdkit-loader.d.ts +104 -0
- package/dist/components/composed/MoleculeStructure/rdkit-loader.js +89 -0
- package/dist/components/composed/MoleculeStructure/rdkit-loader.js.map +1 -0
- package/dist/components/composed/MoleculeStructure/use-rdkit.cjs +2 -0
- package/dist/components/composed/MoleculeStructure/use-rdkit.cjs.map +1 -0
- package/dist/components/composed/MoleculeStructure/use-rdkit.d.ts +29 -0
- package/dist/components/composed/MoleculeStructure/use-rdkit.js +19 -0
- package/dist/components/composed/MoleculeStructure/use-rdkit.js.map +1 -0
- package/dist/components/composed/PlateMapEditor/ManifestFilterPopover.cjs +1 -1
- package/dist/components/composed/PlateMapEditor/ManifestFilterPopover.cjs.map +1 -1
- package/dist/components/composed/PlateMapEditor/ManifestFilterPopover.d.ts +12 -0
- package/dist/components/composed/PlateMapEditor/ManifestFilterPopover.js +21 -21
- package/dist/components/composed/PlateMapEditor/ManifestFilterPopover.js.map +1 -1
- package/dist/components/composed/PlateMapEditor/PlateMapActionsMenu.cjs +1 -1
- package/dist/components/composed/PlateMapEditor/PlateMapActionsMenu.cjs.map +1 -1
- package/dist/components/composed/PlateMapEditor/PlateMapActionsMenu.d.ts +22 -0
- package/dist/components/composed/PlateMapEditor/PlateMapActionsMenu.js +34 -34
- package/dist/components/composed/PlateMapEditor/PlateMapActionsMenu.js.map +1 -1
- package/dist/components/composed/PlateMapEditor/PlateMapEditor.cjs +1 -1
- package/dist/components/composed/PlateMapEditor/PlateMapEditor.cjs.map +1 -1
- package/dist/components/composed/PlateMapEditor/PlateMapEditor.d.ts +106 -0
- package/dist/components/composed/PlateMapEditor/PlateMapEditor.js +2 -2
- package/dist/components/composed/PlateMapEditor/PlateMapForm.cjs +1 -1
- package/dist/components/composed/PlateMapEditor/PlateMapForm.cjs.map +1 -1
- package/dist/components/composed/PlateMapEditor/PlateMapForm.d.ts +30 -0
- package/dist/components/composed/PlateMapEditor/PlateMapForm.js +1 -1
- package/dist/components/composed/PlateMapEditor/PlateMapGrid.cjs +1 -1
- package/dist/components/composed/PlateMapEditor/PlateMapGrid.cjs.map +1 -1
- package/dist/components/composed/PlateMapEditor/PlateMapGrid.d.ts +64 -0
- package/dist/components/composed/PlateMapEditor/PlateMapGrid.js +1 -1
- package/dist/components/composed/PlateMapEditor/PlateMapManifest.d.ts +29 -0
- package/dist/components/composed/PlateMapEditor/PlateMapPlateSelector.cjs +1 -1
- package/dist/components/composed/PlateMapEditor/PlateMapPlateSelector.cjs.map +1 -1
- package/dist/components/composed/PlateMapEditor/PlateMapPlateSelector.d.ts +19 -0
- package/dist/components/composed/PlateMapEditor/PlateMapPlateSelector.js +11 -11
- package/dist/components/composed/PlateMapEditor/PlateMapPlateSelector.js.map +1 -1
- package/dist/components/composed/PlateMapEditor/PlatePaintGrid.cjs +1 -1
- package/dist/components/composed/PlateMapEditor/PlatePaintGrid.cjs.map +1 -1
- package/dist/components/composed/PlateMapEditor/PlatePaintGrid.d.ts +73 -0
- package/dist/components/composed/PlateMapEditor/PlatePaintGrid.js +1 -1
- package/dist/components/composed/PlateMapEditor/PlatePaintGrid.js.map +1 -1
- package/dist/components/composed/PlateMapEditor/PlateZoomControl.cjs +1 -1
- package/dist/components/composed/PlateMapEditor/PlateZoomControl.cjs.map +1 -1
- package/dist/components/composed/PlateMapEditor/PlateZoomControl.d.ts +12 -0
- package/dist/components/composed/PlateMapEditor/PlateZoomControl.js +2 -2
- package/dist/components/composed/PlateMapEditor/TemplateIOPanel.cjs +1 -1
- package/dist/components/composed/PlateMapEditor/TemplateIOPanel.cjs.map +1 -1
- package/dist/components/composed/PlateMapEditor/TemplateIOPanel.d.ts +13 -0
- package/dist/components/composed/PlateMapEditor/TemplateIOPanel.js +4 -4
- package/dist/components/composed/PlateMapEditor/WellLegend.cjs +1 -1
- package/dist/components/composed/PlateMapEditor/WellLegend.cjs.map +1 -1
- package/dist/components/composed/PlateMapEditor/WellLegend.d.ts +21 -0
- package/dist/components/composed/PlateMapEditor/WellLegend.js +24 -12
- package/dist/components/composed/PlateMapEditor/WellLegend.js.map +1 -1
- package/dist/components/composed/PlateMapEditor/WellManifestTable.cjs +1 -1
- package/dist/components/composed/PlateMapEditor/WellManifestTable.cjs.map +1 -1
- package/dist/components/composed/PlateMapEditor/WellManifestTable.d.ts +46 -0
- package/dist/components/composed/PlateMapEditor/WellManifestTable.js +10 -10
- package/dist/components/composed/PlateMapEditor/WellManifestTable.js.map +1 -1
- package/dist/components/composed/PlateMapEditor/WellMetadataForm.cjs +1 -1
- package/dist/components/composed/PlateMapEditor/WellMetadataForm.cjs.map +1 -1
- package/dist/components/composed/PlateMapEditor/WellMetadataForm.d.ts +17 -0
- package/dist/components/composed/PlateMapEditor/WellMetadataForm.js +7 -7
- package/dist/components/composed/PlateMapEditor/autoFill.d.ts +26 -0
- package/dist/components/composed/PlateMapEditor/csvPlateTriage.d.ts +4 -0
- package/dist/components/composed/PlateMapEditor/helpers.d.ts +2 -0
- package/dist/components/composed/PlateMapEditor/index.d.ts +31 -0
- package/dist/components/composed/PlateMapEditor/types.d.ts +137 -0
- package/dist/components/composed/PlateMapEditor/wellGrid.d.ts +12 -0
- package/dist/components/composed/ProcessFlow/ProcessFlow.d.ts +32 -0
- package/dist/components/composed/ProcessFlow/ProcessFlow.utils.d.ts +86 -0
- package/dist/components/composed/ProcessFlow/index.d.ts +1 -0
- package/dist/components/composed/RichListItem/RichListItem.cjs +1 -1
- package/dist/components/composed/RichListItem/RichListItem.cjs.map +1 -1
- package/dist/components/composed/RichListItem/RichListItem.d.ts +22 -0
- package/dist/components/composed/RichListItem/RichListItem.js +2 -2
- package/dist/components/composed/RichListItem/index.d.ts +2 -0
- package/dist/components/composed/StatCard/StatCard.cjs +1 -1
- package/dist/components/composed/StatCard/StatCard.cjs.map +1 -1
- package/dist/components/composed/StatCard/StatCard.d.ts +11 -0
- package/dist/components/composed/StatCard/StatCard.js +1 -1
- package/dist/components/composed/StatCard/index.d.ts +1 -0
- package/dist/components/composed/TdpSearch/TdpSearch.cjs +1 -1
- package/dist/components/composed/TdpSearch/TdpSearch.cjs.map +1 -1
- package/dist/components/composed/TdpSearch/TdpSearch.d.ts +21 -0
- package/dist/components/composed/TdpSearch/TdpSearch.js +14 -13
- package/dist/components/composed/TdpSearch/TdpSearch.mocks.d.ts +5 -0
- package/dist/components/composed/TdpSearch/components/DefaultFilters.cjs +1 -1
- package/dist/components/composed/TdpSearch/components/DefaultFilters.cjs.map +1 -1
- package/dist/components/composed/TdpSearch/components/DefaultFilters.d.ts +3 -0
- package/dist/components/composed/TdpSearch/components/DefaultFilters.js +4 -4
- package/dist/components/composed/TdpSearch/components/DefaultFilters.js.map +1 -1
- package/dist/components/composed/TdpSearch/components/DefaultResults.cjs +1 -1
- package/dist/components/composed/TdpSearch/components/DefaultResults.cjs.map +1 -1
- package/dist/components/composed/TdpSearch/components/DefaultResults.d.ts +3 -0
- package/dist/components/composed/TdpSearch/components/DefaultResults.js +2 -2
- package/dist/components/composed/TdpSearch/components/DefaultSearchBar.cjs +1 -1
- package/dist/components/composed/TdpSearch/components/DefaultSearchBar.cjs.map +1 -1
- package/dist/components/composed/TdpSearch/components/DefaultSearchBar.d.ts +3 -0
- package/dist/components/composed/TdpSearch/components/DefaultSearchBar.js +2 -2
- package/dist/components/composed/TdpSearch/constants.d.ts +3 -0
- package/dist/components/composed/TdpSearch/hooks/useSearch.d.ts +2 -0
- package/dist/components/composed/TdpSearch/hooks/useTdpCredentials.d.ts +14 -0
- package/dist/components/composed/TdpSearch/index.d.ts +3 -0
- package/dist/components/composed/TdpSearch/types.d.ts +128 -0
- package/dist/components/composed/TdpSearch/utils.d.ts +3 -0
- package/dist/components/composed/TopBar/TopBar.cjs +2 -0
- package/dist/components/composed/TopBar/TopBar.cjs.map +1 -0
- package/dist/components/composed/TopBar/TopBar.d.ts +25 -0
- package/dist/components/composed/TopBar/TopBar.js +56 -0
- package/dist/components/composed/TopBar/TopBar.js.map +1 -0
- package/dist/components/composed/TopBar/index.d.ts +2 -0
- package/dist/components/composed/UserMenu/UserMenu.cjs +2 -0
- package/dist/components/composed/UserMenu/UserMenu.cjs.map +1 -0
- package/dist/components/composed/UserMenu/UserMenu.d.ts +53 -0
- package/dist/components/composed/UserMenu/UserMenu.js +99 -0
- package/dist/components/composed/UserMenu/UserMenu.js.map +1 -0
- package/dist/components/composed/UserMenu/index.d.ts +2 -0
- package/dist/components/composed/tdp-link.d.ts +110 -0
- package/dist/components/composed/tdp-url.d.ts +68 -0
- package/dist/components/ui/accordion.d.ts +7 -0
- package/dist/components/ui/alert-dialog.d.ts +18 -0
- package/dist/components/ui/alert.d.ts +10 -0
- package/dist/components/ui/aspect-ratio.d.ts +3 -0
- package/dist/components/ui/avatar.d.ts +11 -0
- package/dist/components/ui/badge.d.ts +9 -0
- package/dist/components/ui/banner.d.ts +19 -0
- package/dist/components/ui/breadcrumb.d.ts +11 -0
- package/dist/components/ui/button-group.d.ts +11 -0
- package/dist/components/ui/button.d.ts +10 -0
- package/dist/components/ui/calendar.d.ts +10 -0
- package/dist/components/ui/card.d.ts +11 -0
- package/dist/components/ui/carousel.d.ts +28 -0
- package/dist/components/ui/checkbox.d.ts +4 -0
- package/dist/components/ui/code-block.d.ts +45 -0
- package/dist/components/ui/code-editor.d.ts +18 -0
- package/dist/components/ui/collapsible.d.ts +5 -0
- package/dist/components/ui/combobox.d.ts +24 -0
- package/dist/components/ui/command.d.ts +18 -0
- package/dist/components/ui/context-menu.d.ts +31 -0
- package/dist/components/ui/data-table/data-table-column-toggle.cjs +1 -1
- package/dist/components/ui/data-table/data-table-column-toggle.cjs.map +1 -1
- package/dist/components/ui/data-table/data-table-column-toggle.d.ts +6 -0
- package/dist/components/ui/data-table/data-table-column-toggle.js +71 -63
- package/dist/components/ui/data-table/data-table-column-toggle.js.map +1 -1
- package/dist/components/ui/data-table/data-table-filter.cjs +1 -1
- package/dist/components/ui/data-table/data-table-filter.cjs.map +1 -1
- package/dist/components/ui/data-table/data-table-filter.d.ts +9 -0
- package/dist/components/ui/data-table/data-table-filter.js +26 -25
- package/dist/components/ui/data-table/data-table-filter.js.map +1 -1
- package/dist/components/ui/data-table/data-table-group.cjs +1 -1
- package/dist/components/ui/data-table/data-table-group.cjs.map +1 -1
- package/dist/components/ui/data-table/data-table-group.d.ts +9 -0
- package/dist/components/ui/data-table/data-table-group.js +18 -17
- package/dist/components/ui/data-table/data-table-group.js.map +1 -1
- package/dist/components/ui/data-table/data-table-pagination.cjs +1 -1
- package/dist/components/ui/data-table/data-table-pagination.cjs.map +1 -1
- package/dist/components/ui/data-table/data-table-pagination.d.ts +7 -0
- package/dist/components/ui/data-table/data-table-pagination.js +16 -16
- package/dist/components/ui/data-table/data-table-pagination.js.map +1 -1
- package/dist/components/ui/data-table/data-table.cjs +1 -1
- package/dist/components/ui/data-table/data-table.cjs.map +1 -1
- package/dist/components/ui/data-table/data-table.d.ts +82 -0
- package/dist/components/ui/data-table/data-table.js +191 -190
- package/dist/components/ui/data-table/data-table.js.map +1 -1
- package/dist/components/ui/data-table/index.d.ts +5 -0
- package/dist/components/ui/dialog.d.ts +18 -0
- package/dist/components/ui/dropdown-menu.d.ts +29 -0
- package/dist/components/ui/field.d.ts +24 -0
- package/dist/components/ui/hover-card.d.ts +6 -0
- package/dist/components/ui/input-group.d.ts +16 -0
- package/dist/components/ui/input.d.ts +3 -0
- package/dist/components/ui/item.d.ts +23 -0
- package/dist/components/ui/kbd.d.ts +3 -0
- package/dist/components/ui/label.d.ts +4 -0
- package/dist/components/ui/menubar.d.ts +30 -0
- package/dist/components/ui/navigation-menu.d.ts +14 -0
- package/dist/components/ui/popover.d.ts +7 -0
- package/dist/components/ui/progress.d.ts +4 -0
- package/dist/components/ui/radio-group.d.ts +5 -0
- package/dist/components/ui/resizable.d.ts +25 -0
- package/dist/components/ui/scroll-area.d.ts +5 -0
- package/dist/components/ui/select.d.ts +15 -0
- package/dist/components/ui/separator.d.ts +4 -0
- package/dist/components/ui/sheet.d.ts +14 -0
- package/dist/components/ui/sidebar.d.ts +69 -0
- package/dist/components/ui/skeleton.d.ts +2 -0
- package/dist/components/ui/slider.d.ts +4 -0
- package/dist/components/ui/snippet.d.ts +18 -0
- package/dist/components/ui/sonner.d.ts +3 -0
- package/dist/components/ui/spinner.d.ts +6 -0
- package/dist/components/ui/switch.d.ts +6 -0
- package/dist/components/ui/table.d.ts +22 -0
- package/dist/components/ui/tabs.d.ts +11 -0
- package/dist/components/ui/tetra-molecule-icon.d.ts +11 -0
- package/dist/components/ui/tetrascience-icon.d.ts +7 -0
- package/dist/components/ui/textarea.d.ts +3 -0
- package/dist/components/ui/toggle-group.d.ts +10 -0
- package/dist/components/ui/toggle.d.ts +9 -0
- package/dist/components/ui/tooltip.d.ts +7 -0
- package/dist/composed/AssistantLayout.cjs +2 -0
- package/dist/composed/AssistantLayout.cjs.map +1 -0
- package/dist/composed/AssistantLayout.js +10 -0
- package/dist/composed/AssistantLayout.js.map +1 -0
- package/dist/composed/Chat.cjs +2 -0
- package/dist/composed/Chat.cjs.map +1 -0
- package/dist/composed/Chat.js +5 -0
- package/dist/composed/Chat.js.map +1 -0
- package/dist/composed/ConfirmDialog.cjs +2 -0
- package/dist/composed/ConfirmDialog.cjs.map +1 -0
- package/dist/composed/ConfirmDialog.js +5 -0
- package/dist/composed/ConfirmDialog.js.map +1 -0
- package/dist/composed/DataAppShell.cjs +2 -0
- package/dist/composed/DataAppShell.cjs.map +1 -0
- package/dist/composed/DataAppShell.js +22 -0
- package/dist/composed/DataAppShell.js.map +1 -0
- package/dist/composed/EmptyState.cjs +2 -0
- package/dist/composed/EmptyState.cjs.map +1 -0
- package/dist/composed/EmptyState.js +5 -0
- package/dist/composed/EmptyState.js.map +1 -0
- package/dist/composed/FormPatterns.cjs +2 -0
- package/dist/composed/FormPatterns.cjs.map +1 -0
- package/dist/composed/FormPatterns.js +5 -0
- package/dist/composed/FormPatterns.js.map +1 -0
- package/dist/composed/MoleculeStructure.cjs +2 -0
- package/dist/composed/MoleculeStructure.cjs.map +1 -0
- package/dist/composed/MoleculeStructure.js +11 -0
- package/dist/composed/MoleculeStructure.js.map +1 -0
- package/dist/composed/PlateMapEditor.cjs +2 -0
- package/dist/composed/PlateMapEditor.cjs.map +1 -0
- package/dist/composed/PlateMapEditor.js +45 -0
- package/dist/composed/PlateMapEditor.js.map +1 -0
- package/dist/composed/ProcessFlow.cjs +2 -0
- package/dist/composed/ProcessFlow.cjs.map +1 -0
- package/dist/composed/ProcessFlow.js +7 -0
- package/dist/composed/ProcessFlow.js.map +1 -0
- package/dist/composed/RichListItem.cjs +2 -0
- package/dist/composed/RichListItem.cjs.map +1 -0
- package/dist/composed/RichListItem.js +6 -0
- package/dist/composed/RichListItem.js.map +1 -0
- package/dist/composed/StatCard.cjs +2 -0
- package/dist/composed/StatCard.cjs.map +1 -0
- package/dist/composed/StatCard.js +5 -0
- package/dist/composed/StatCard.js.map +1 -0
- package/dist/composed/TdpSearch.cjs +2 -0
- package/dist/composed/TdpSearch.cjs.map +1 -0
- package/dist/composed/TdpSearch.js +8 -0
- package/dist/composed/TdpSearch.js.map +1 -0
- package/dist/composed/TopBar.cjs +2 -0
- package/dist/composed/TopBar.cjs.map +1 -0
- package/dist/composed/TopBar.js +6 -0
- package/dist/composed/TopBar.js.map +1 -0
- package/dist/composed/UserMenu.cjs +2 -0
- package/dist/composed/UserMenu.cjs.map +1 -0
- package/dist/composed/UserMenu.js +7 -0
- package/dist/composed/UserMenu.js.map +1 -0
- package/dist/composed/tdp-link.cjs +2 -0
- package/dist/composed/tdp-link.cjs.map +1 -0
- package/dist/composed/tdp-link.js +84 -0
- package/dist/composed/tdp-link.js.map +1 -0
- package/dist/composed/tdp-url.cjs.map +1 -0
- package/dist/composed/tdp-url.js.map +1 -0
- package/dist/hooks/use-code-editor-theme.d.ts +34 -0
- package/dist/hooks/use-element-size.d.ts +25 -0
- package/dist/hooks/use-is-dark.d.ts +12 -0
- package/dist/hooks/use-mobile.d.ts +1 -0
- package/dist/hooks/use-plotly-theme.cjs +1 -1
- package/dist/hooks/use-plotly-theme.cjs.map +1 -1
- package/dist/hooks/use-plotly-theme.d.ts +49 -0
- package/dist/hooks/use-plotly-theme.js +4 -3
- package/dist/hooks/use-plotly-theme.js.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.css +1 -1
- package/dist/index.d.ts +102 -4404
- package/dist/index.js +698 -659
- package/dist/index.js.map +1 -1
- package/dist/index.tailwind.css +1 -1
- package/dist/jest-setup.cjs +4 -0
- package/dist/jest-setup.cjs.map +1 -0
- package/dist/jest-setup.d.ts +106 -0
- package/dist/jest-setup.js +218 -0
- package/dist/jest-setup.js.map +1 -0
- package/dist/lib/shiki.cjs +2 -0
- package/dist/lib/shiki.cjs.map +1 -0
- package/dist/lib/shiki.d.ts +32 -0
- package/dist/lib/shiki.js +72 -0
- package/dist/lib/shiki.js.map +1 -0
- package/dist/lib/utils.d.ts +2 -0
- package/dist/server/auth/JwtTokenManager.cjs +1 -1
- package/dist/server/auth/JwtTokenManager.cjs.map +1 -1
- package/dist/server/auth/JwtTokenManager.d.ts +113 -0
- package/dist/server/auth/JwtTokenManager.js +44 -21
- package/dist/server/auth/JwtTokenManager.js.map +1 -1
- package/dist/server/auth/index.d.ts +5 -0
- package/dist/server/index.d.ts +8 -0
- package/dist/server/providers/AthenaProvider.cjs +1 -1
- package/dist/server/providers/AthenaProvider.cjs.map +1 -1
- package/dist/server/providers/AthenaProvider.d.ts +75 -0
- package/dist/server/providers/DatabricksProvider.cjs +1 -1
- package/dist/server/providers/DatabricksProvider.cjs.map +1 -1
- package/dist/server/providers/DatabricksProvider.d.ts +38 -0
- package/dist/server/providers/SnowflakeProvider.cjs +1 -1
- package/dist/server/providers/SnowflakeProvider.cjs.map +1 -1
- package/dist/server/providers/SnowflakeProvider.d.ts +36 -0
- package/dist/server/providers/buildProvider.d.ts +39 -0
- package/dist/server/providers/entries/athena.d.ts +24 -0
- package/dist/server/providers/entries/databricks.d.ts +25 -0
- package/dist/server/providers/entries/snowflake.d.ts +25 -0
- package/dist/server/providers/exceptions.d.ts +36 -0
- package/dist/server/providers/getProviderConfigurations.d.ts +45 -0
- package/dist/server/providers/index.d.ts +31 -0
- package/dist/server/providers/providerDiscovery.d.ts +81 -0
- package/dist/server/providers/types.d.ts +145 -0
- package/dist/server/search/TdpSearchManager.d.ts +40 -0
- package/dist/server/search/index.d.ts +5 -0
- package/dist/server.d.ts +17 -540
- package/dist/ui/accordion.cjs +2 -0
- package/dist/ui/accordion.cjs.map +1 -0
- package/dist/ui/accordion.js +83 -0
- package/dist/ui/accordion.js.map +1 -0
- package/dist/ui/alert-dialog.cjs +2 -0
- package/dist/ui/alert-dialog.cjs.map +1 -0
- package/dist/ui/alert-dialog.js +181 -0
- package/dist/ui/alert-dialog.js.map +1 -0
- package/dist/ui/alert.cjs +2 -0
- package/dist/ui/alert.cjs.map +1 -0
- package/dist/ui/alert.js +81 -0
- package/dist/ui/alert.js.map +1 -0
- package/dist/ui/aspect-ratio.cjs.map +1 -0
- package/dist/ui/aspect-ratio.js.map +1 -0
- package/dist/ui/avatar.cjs +2 -0
- package/dist/ui/avatar.cjs.map +1 -0
- package/dist/ui/avatar.js +107 -0
- package/dist/ui/avatar.js.map +1 -0
- package/dist/ui/badge.cjs +2 -0
- package/dist/ui/badge.cjs.map +1 -0
- package/dist/ui/badge.js +47 -0
- package/dist/ui/badge.js.map +1 -0
- package/dist/ui/banner.cjs +2 -0
- package/dist/ui/banner.cjs.map +1 -0
- package/dist/ui/banner.js +80 -0
- package/dist/ui/banner.js.map +1 -0
- package/dist/ui/breadcrumb.cjs +2 -0
- package/dist/ui/breadcrumb.cjs.map +1 -0
- package/dist/ui/breadcrumb.js +118 -0
- package/dist/ui/breadcrumb.js.map +1 -0
- package/dist/ui/button-group.cjs +2 -0
- package/dist/ui/button-group.cjs.map +1 -0
- package/dist/ui/button-group.js +77 -0
- package/dist/ui/button-group.js.map +1 -0
- package/dist/ui/button.cjs +2 -0
- package/dist/ui/button.cjs.map +1 -0
- package/dist/ui/button.js +57 -0
- package/dist/ui/button.js.map +1 -0
- package/dist/ui/calendar.cjs +2 -0
- package/dist/ui/calendar.cjs.map +1 -0
- package/dist/ui/calendar.js +174 -0
- package/dist/ui/calendar.js.map +1 -0
- package/dist/ui/card.cjs +2 -0
- package/dist/ui/card.cjs.map +1 -0
- package/dist/ui/card.js +102 -0
- package/dist/ui/card.js.map +1 -0
- package/dist/ui/carousel.cjs +2 -0
- package/dist/ui/carousel.cjs.map +1 -0
- package/dist/ui/carousel.js +179 -0
- package/dist/ui/carousel.js.map +1 -0
- package/dist/ui/checkbox.cjs +2 -0
- package/dist/ui/checkbox.cjs.map +1 -0
- package/dist/ui/checkbox.js +35 -0
- package/dist/ui/checkbox.js.map +1 -0
- package/dist/ui/code-block.cjs +4 -0
- package/dist/ui/code-block.cjs.map +1 -0
- package/dist/ui/code-block.js +324 -0
- package/dist/ui/code-block.js.map +1 -0
- package/dist/ui/code-editor.cjs +2 -0
- package/dist/ui/code-editor.cjs.map +1 -0
- package/dist/ui/code-editor.js +106 -0
- package/dist/ui/code-editor.js.map +1 -0
- package/dist/ui/collapsible.cjs.map +1 -0
- package/dist/ui/collapsible.js.map +1 -0
- package/dist/ui/combobox.cjs +2 -0
- package/dist/ui/combobox.cjs.map +1 -0
- package/dist/ui/combobox.js +285 -0
- package/dist/ui/combobox.js.map +1 -0
- package/dist/ui/command.cjs +2 -0
- package/dist/ui/command.cjs.map +1 -0
- package/dist/ui/command.js +178 -0
- package/dist/ui/command.js.map +1 -0
- package/dist/ui/context-menu.cjs +2 -0
- package/dist/ui/context-menu.cjs.map +1 -0
- package/dist/ui/context-menu.js +236 -0
- package/dist/ui/context-menu.js.map +1 -0
- package/dist/ui/data-table.cjs +2 -0
- package/dist/ui/data-table.cjs.map +1 -0
- package/dist/ui/data-table.js +16 -0
- package/dist/ui/data-table.js.map +1 -0
- package/dist/ui/dialog.cjs +2 -0
- package/dist/ui/dialog.cjs.map +1 -0
- package/dist/ui/dialog.js +165 -0
- package/dist/ui/dialog.js.map +1 -0
- package/dist/ui/dropdown-menu.cjs +2 -0
- package/dist/ui/dropdown-menu.cjs.map +1 -0
- package/dist/ui/dropdown-menu.js +260 -0
- package/dist/ui/dropdown-menu.js.map +1 -0
- package/dist/ui/field.cjs +2 -0
- package/dist/ui/field.cjs.map +1 -0
- package/dist/ui/field.js +210 -0
- package/dist/ui/field.js.map +1 -0
- package/dist/ui/hover-card.cjs +2 -0
- package/dist/ui/hover-card.cjs.map +1 -0
- package/dist/ui/hover-card.js +39 -0
- package/dist/ui/hover-card.js.map +1 -0
- package/dist/ui/input-group.cjs +2 -0
- package/dist/ui/input-group.cjs.map +1 -0
- package/dist/ui/input-group.js +145 -0
- package/dist/ui/input-group.js.map +1 -0
- package/dist/ui/input.cjs +2 -0
- package/dist/ui/input.cjs.map +1 -0
- package/dist/ui/input.js +20 -0
- package/dist/ui/input.js.map +1 -0
- package/dist/ui/item.cjs +2 -0
- package/dist/ui/item.cjs.map +1 -0
- package/dist/ui/item.js +199 -0
- package/dist/ui/item.js.map +1 -0
- package/dist/ui/kbd.cjs +2 -0
- package/dist/ui/kbd.cjs.map +1 -0
- package/dist/ui/kbd.js +30 -0
- package/dist/ui/kbd.js.map +1 -0
- package/dist/ui/label.cjs +2 -0
- package/dist/ui/label.cjs.map +1 -0
- package/dist/ui/label.js +23 -0
- package/dist/ui/label.js.map +1 -0
- package/dist/ui/menubar.cjs +2 -0
- package/dist/ui/menubar.cjs.map +1 -0
- package/dist/ui/menubar.js +256 -0
- package/dist/ui/menubar.js.map +1 -0
- package/dist/ui/navigation-menu.cjs +2 -0
- package/dist/ui/navigation-menu.cjs.map +1 -0
- package/dist/ui/navigation-menu.js +164 -0
- package/dist/ui/navigation-menu.js.map +1 -0
- package/dist/ui/popover.cjs +2 -0
- package/dist/ui/popover.cjs.map +1 -0
- package/dist/ui/popover.js +45 -0
- package/dist/ui/popover.js.map +1 -0
- package/dist/ui/radio-group.cjs +2 -0
- package/dist/ui/radio-group.cjs.map +1 -0
- package/dist/ui/radio-group.js +45 -0
- package/dist/ui/radio-group.js.map +1 -0
- package/dist/ui/resizable.cjs +2 -0
- package/dist/ui/resizable.cjs.map +1 -0
- package/dist/ui/resizable.js +58 -0
- package/dist/ui/resizable.js.map +1 -0
- package/dist/ui/scroll-area.cjs +2 -0
- package/dist/ui/scroll-area.cjs.map +1 -0
- package/dist/ui/scroll-area.js +61 -0
- package/dist/ui/scroll-area.js.map +1 -0
- package/dist/ui/select.cjs +2 -0
- package/dist/ui/select.cjs.map +1 -0
- package/dist/ui/select.js +184 -0
- package/dist/ui/select.js.map +1 -0
- package/dist/ui/separator.cjs +2 -0
- package/dist/ui/separator.cjs.map +1 -0
- package/dist/ui/separator.js +27 -0
- package/dist/ui/separator.js.map +1 -0
- package/dist/ui/sheet.cjs +2 -0
- package/dist/ui/sheet.cjs.map +1 -0
- package/dist/ui/sheet.js +137 -0
- package/dist/ui/sheet.js.map +1 -0
- package/dist/ui/sidebar.cjs +2 -0
- package/dist/ui/sidebar.cjs.map +1 -0
- package/dist/ui/sidebar.js +579 -0
- package/dist/ui/sidebar.js.map +1 -0
- package/dist/ui/skeleton.cjs +2 -0
- package/dist/ui/skeleton.cjs.map +1 -0
- package/dist/ui/skeleton.js +24 -0
- package/dist/ui/skeleton.js.map +1 -0
- package/dist/ui/slider.cjs +2 -0
- package/dist/ui/slider.cjs.map +1 -0
- package/dist/ui/slider.js +61 -0
- package/dist/ui/slider.js.map +1 -0
- package/dist/ui/sonner.cjs +2 -0
- package/dist/ui/sonner.cjs.map +1 -0
- package/dist/ui/sonner.js +52 -0
- package/dist/ui/sonner.js.map +1 -0
- package/dist/ui/spinner.cjs +2 -0
- package/dist/ui/spinner.cjs.map +1 -0
- package/dist/ui/spinner.js +39 -0
- package/dist/ui/spinner.js.map +1 -0
- package/dist/ui/switch.cjs +2 -0
- package/dist/ui/switch.cjs.map +1 -0
- package/dist/ui/switch.js +32 -0
- package/dist/ui/switch.js.map +1 -0
- package/dist/ui/table.cjs +2 -0
- package/dist/ui/table.cjs.map +1 -0
- package/dist/ui/table.js +153 -0
- package/dist/ui/table.js.map +1 -0
- package/dist/ui/tabs.cjs +2 -0
- package/dist/ui/tabs.cjs.map +1 -0
- package/dist/ui/tabs.js +92 -0
- package/dist/ui/tabs.js.map +1 -0
- package/dist/ui/tetra-molecule-icon.cjs +2 -0
- package/dist/ui/tetra-molecule-icon.cjs.map +1 -0
- package/dist/ui/tetra-molecule-icon.js +50 -0
- package/dist/ui/tetra-molecule-icon.js.map +1 -0
- package/dist/ui/tetrascience-icon.cjs +2 -0
- package/dist/ui/tetrascience-icon.cjs.map +1 -0
- package/dist/ui/tetrascience-icon.js +47 -0
- package/dist/ui/tetrascience-icon.js.map +1 -0
- package/dist/ui/textarea.cjs +2 -0
- package/dist/ui/textarea.cjs.map +1 -0
- package/dist/ui/textarea.js +19 -0
- package/dist/ui/textarea.js.map +1 -0
- package/dist/ui/toggle-group.cjs +2 -0
- package/dist/ui/toggle-group.cjs.map +1 -0
- package/dist/ui/toggle-group.js +81 -0
- package/dist/ui/toggle-group.js.map +1 -0
- package/dist/ui/toggle.cjs +2 -0
- package/dist/ui/toggle.cjs.map +1 -0
- package/dist/ui/toggle.js +44 -0
- package/dist/ui/toggle.js.map +1 -0
- package/dist/ui/tooltip.cjs +2 -0
- package/dist/ui/tooltip.cjs.map +1 -0
- package/dist/ui/tooltip.js +56 -0
- package/dist/ui/tooltip.js.map +1 -0
- package/dist/utils/colors.d.ts +50 -0
- package/package.json +137 -24
- package/dist/athena.d.ts +0 -167
- package/dist/components/ai/attachments.cjs +0 -2
- package/dist/components/ai/attachments.cjs.map +0 -1
- package/dist/components/ai/attachments.js +0 -224
- package/dist/components/ai/attachments.js.map +0 -1
- package/dist/components/ai/chain-of-thought.cjs +0 -2
- package/dist/components/ai/chain-of-thought.cjs.map +0 -1
- package/dist/components/ai/chain-of-thought.js +0 -145
- package/dist/components/ai/chain-of-thought.js.map +0 -1
- package/dist/components/ai/confirmation.cjs +0 -2
- package/dist/components/ai/confirmation.cjs.map +0 -1
- package/dist/components/ai/confirmation.js +0 -109
- package/dist/components/ai/confirmation.js.map +0 -1
- package/dist/components/ai/context.cjs +0 -2
- package/dist/components/ai/context.cjs.map +0 -1
- package/dist/components/ai/context.js +0 -266
- package/dist/components/ai/context.js.map +0 -1
- package/dist/components/ai/conversation.cjs +0 -4
- package/dist/components/ai/conversation.cjs.map +0 -1
- package/dist/components/ai/conversation.js +0 -108
- package/dist/components/ai/conversation.js.map +0 -1
- package/dist/components/ai/inline-citation.cjs +0 -2
- package/dist/components/ai/inline-citation.cjs.map +0 -1
- package/dist/components/ai/inline-citation.js +0 -182
- package/dist/components/ai/inline-citation.js.map +0 -1
- package/dist/components/ai/message.cjs +0 -2
- package/dist/components/ai/message.cjs.map +0 -1
- package/dist/components/ai/message.js +0 -237
- package/dist/components/ai/message.js.map +0 -1
- package/dist/components/ai/model-selector.cjs +0 -2
- package/dist/components/ai/model-selector.cjs.map +0 -1
- package/dist/components/ai/model-selector.js +0 -77
- package/dist/components/ai/model-selector.js.map +0 -1
- package/dist/components/ai/prompt-input.cjs +0 -2
- package/dist/components/ai/prompt-input.cjs.map +0 -1
- package/dist/components/ai/prompt-input.js +0 -774
- package/dist/components/ai/prompt-input.js.map +0 -1
- package/dist/components/ai/queue.cjs +0 -2
- package/dist/components/ai/queue.cjs.map +0 -1
- package/dist/components/ai/queue.js +0 -209
- package/dist/components/ai/queue.js.map +0 -1
- package/dist/components/ai/reasoning.cjs +0 -2
- package/dist/components/ai/reasoning.cjs.map +0 -1
- package/dist/components/ai/reasoning.js +0 -129
- package/dist/components/ai/reasoning.js.map +0 -1
- package/dist/components/ai/shimmer.cjs +0 -2
- package/dist/components/ai/shimmer.cjs.map +0 -1
- package/dist/components/ai/shimmer.js +0 -49
- package/dist/components/ai/shimmer.js.map +0 -1
- package/dist/components/ai/sources.cjs +0 -2
- package/dist/components/ai/sources.cjs.map +0 -1
- package/dist/components/ai/sources.js +0 -54
- package/dist/components/ai/sources.js.map +0 -1
- package/dist/components/ai/speech-input.cjs +0 -2
- package/dist/components/ai/speech-input.cjs.map +0 -1
- package/dist/components/ai/speech-input.js +0 -123
- package/dist/components/ai/speech-input.js.map +0 -1
- package/dist/components/ai/stream-status.cjs +0 -2
- package/dist/components/ai/stream-status.cjs.map +0 -1
- package/dist/components/ai/stream-status.js +0 -106
- package/dist/components/ai/stream-status.js.map +0 -1
- package/dist/components/ai/suggestion.cjs +0 -2
- package/dist/components/ai/suggestion.cjs.map +0 -1
- package/dist/components/ai/suggestion.js +0 -38
- package/dist/components/ai/suggestion.js.map +0 -1
- package/dist/components/ai/task.cjs +0 -2
- package/dist/components/ai/task.cjs.map +0 -1
- package/dist/components/ai/task.js +0 -94
- package/dist/components/ai/task.js.map +0 -1
- package/dist/components/ai/tool.cjs +0 -2
- package/dist/components/ai/tool.cjs.map +0 -1
- package/dist/components/ai/tool.js +0 -143
- package/dist/components/ai/tool.js.map +0 -1
- package/dist/components/charts/AreaGraph/AreaGraph.cjs +0 -2
- package/dist/components/charts/AreaGraph/AreaGraph.cjs.map +0 -1
- package/dist/components/charts/AreaGraph/AreaGraph.js +0 -271
- package/dist/components/charts/AreaGraph/AreaGraph.js.map +0 -1
- package/dist/components/charts/BarGraph/BarGraph.cjs +0 -2
- package/dist/components/charts/BarGraph/BarGraph.cjs.map +0 -1
- package/dist/components/charts/BarGraph/BarGraph.js +0 -220
- package/dist/components/charts/BarGraph/BarGraph.js.map +0 -1
- package/dist/components/charts/Boxplot/Boxplot.cjs +0 -2
- package/dist/components/charts/Boxplot/Boxplot.cjs.map +0 -1
- package/dist/components/charts/Boxplot/Boxplot.js +0 -209
- package/dist/components/charts/Boxplot/Boxplot.js.map +0 -1
- package/dist/components/charts/ChromatogramChart/ChromatogramChart.cjs +0 -2
- package/dist/components/charts/ChromatogramChart/ChromatogramChart.cjs.map +0 -1
- package/dist/components/charts/ChromatogramChart/ChromatogramChart.js +0 -227
- package/dist/components/charts/ChromatogramChart/ChromatogramChart.js.map +0 -1
- package/dist/components/charts/ChromatogramChart/annotations.cjs +0 -2
- package/dist/components/charts/ChromatogramChart/annotations.cjs.map +0 -1
- package/dist/components/charts/ChromatogramChart/annotations.js +0 -73
- package/dist/components/charts/ChromatogramChart/annotations.js.map +0 -1
- package/dist/components/charts/ChromatogramChart/boundaryMarkers.cjs +0 -2
- package/dist/components/charts/ChromatogramChart/boundaryMarkers.cjs.map +0 -1
- package/dist/components/charts/ChromatogramChart/boundaryMarkers.js +0 -34
- package/dist/components/charts/ChromatogramChart/boundaryMarkers.js.map +0 -1
- package/dist/components/charts/ChromatogramChart/constants.cjs +0 -2
- package/dist/components/charts/ChromatogramChart/constants.cjs.map +0 -1
- package/dist/components/charts/ChromatogramChart/constants.js +0 -30
- package/dist/components/charts/ChromatogramChart/constants.js.map +0 -1
- package/dist/components/charts/ChromatogramChart/dataProcessing.cjs +0 -2
- package/dist/components/charts/ChromatogramChart/dataProcessing.cjs.map +0 -1
- package/dist/components/charts/ChromatogramChart/dataProcessing.js +0 -79
- package/dist/components/charts/ChromatogramChart/dataProcessing.js.map +0 -1
- package/dist/components/charts/ChromatogramChart/peakDetection.cjs.map +0 -1
- package/dist/components/charts/ChromatogramChart/peakDetection.js.map +0 -1
- package/dist/components/charts/DotPlot/DotPlot.cjs +0 -2
- package/dist/components/charts/DotPlot/DotPlot.cjs.map +0 -1
- package/dist/components/charts/DotPlot/DotPlot.js +0 -208
- package/dist/components/charts/DotPlot/DotPlot.js.map +0 -1
- package/dist/components/charts/Heatmap/Heatmap.cjs +0 -2
- package/dist/components/charts/Heatmap/Heatmap.cjs.map +0 -1
- package/dist/components/charts/Heatmap/Heatmap.js +0 -67
- package/dist/components/charts/Heatmap/Heatmap.js.map +0 -1
- package/dist/components/charts/LineGraph/LineGraph.cjs +0 -2
- package/dist/components/charts/LineGraph/LineGraph.cjs.map +0 -1
- package/dist/components/charts/LineGraph/LineGraph.js +0 -225
- package/dist/components/charts/LineGraph/LineGraph.js.map +0 -1
- package/dist/components/charts/ScatterGraph/ScatterGraph.cjs +0 -2
- package/dist/components/charts/ScatterGraph/ScatterGraph.cjs.map +0 -1
- package/dist/components/charts/ScatterGraph/ScatterGraph.js +0 -234
- package/dist/components/charts/ScatterGraph/ScatterGraph.js.map +0 -1
- package/dist/components/composed/tdp-link.cjs +0 -2
- package/dist/components/composed/tdp-link.cjs.map +0 -1
- package/dist/components/composed/tdp-link.js +0 -84
- package/dist/components/composed/tdp-link.js.map +0 -1
- package/dist/components/composed/tdp-url.cjs.map +0 -1
- package/dist/components/composed/tdp-url.js.map +0 -1
- package/dist/components/ui/accordion.cjs +0 -2
- package/dist/components/ui/accordion.cjs.map +0 -1
- package/dist/components/ui/accordion.js +0 -83
- package/dist/components/ui/accordion.js.map +0 -1
- package/dist/components/ui/alert-dialog.cjs +0 -2
- package/dist/components/ui/alert-dialog.cjs.map +0 -1
- package/dist/components/ui/alert-dialog.js +0 -181
- package/dist/components/ui/alert-dialog.js.map +0 -1
- package/dist/components/ui/alert.cjs +0 -2
- package/dist/components/ui/alert.cjs.map +0 -1
- package/dist/components/ui/alert.js +0 -81
- package/dist/components/ui/alert.js.map +0 -1
- package/dist/components/ui/aspect-ratio.cjs.map +0 -1
- package/dist/components/ui/aspect-ratio.js.map +0 -1
- package/dist/components/ui/avatar.cjs +0 -2
- package/dist/components/ui/avatar.cjs.map +0 -1
- package/dist/components/ui/avatar.js +0 -107
- package/dist/components/ui/avatar.js.map +0 -1
- package/dist/components/ui/badge.cjs +0 -2
- package/dist/components/ui/badge.cjs.map +0 -1
- package/dist/components/ui/badge.js +0 -47
- package/dist/components/ui/badge.js.map +0 -1
- package/dist/components/ui/banner.cjs +0 -2
- package/dist/components/ui/banner.cjs.map +0 -1
- package/dist/components/ui/banner.js +0 -80
- package/dist/components/ui/banner.js.map +0 -1
- package/dist/components/ui/breadcrumb.cjs +0 -2
- package/dist/components/ui/breadcrumb.cjs.map +0 -1
- package/dist/components/ui/breadcrumb.js +0 -118
- package/dist/components/ui/breadcrumb.js.map +0 -1
- package/dist/components/ui/button-group.cjs +0 -2
- package/dist/components/ui/button-group.cjs.map +0 -1
- package/dist/components/ui/button-group.js +0 -77
- package/dist/components/ui/button-group.js.map +0 -1
- package/dist/components/ui/button.cjs +0 -2
- package/dist/components/ui/button.cjs.map +0 -1
- package/dist/components/ui/button.js +0 -57
- package/dist/components/ui/button.js.map +0 -1
- package/dist/components/ui/calendar.cjs +0 -2
- package/dist/components/ui/calendar.cjs.map +0 -1
- package/dist/components/ui/calendar.js +0 -174
- package/dist/components/ui/calendar.js.map +0 -1
- package/dist/components/ui/card.cjs +0 -2
- package/dist/components/ui/card.cjs.map +0 -1
- package/dist/components/ui/card.js +0 -102
- package/dist/components/ui/card.js.map +0 -1
- package/dist/components/ui/carousel.cjs +0 -2
- package/dist/components/ui/carousel.cjs.map +0 -1
- package/dist/components/ui/carousel.js +0 -179
- package/dist/components/ui/carousel.js.map +0 -1
- package/dist/components/ui/checkbox.cjs +0 -2
- package/dist/components/ui/checkbox.cjs.map +0 -1
- package/dist/components/ui/checkbox.js +0 -35
- package/dist/components/ui/checkbox.js.map +0 -1
- package/dist/components/ui/code-block.cjs +0 -4
- package/dist/components/ui/code-block.cjs.map +0 -1
- package/dist/components/ui/code-block.js +0 -306
- package/dist/components/ui/code-block.js.map +0 -1
- package/dist/components/ui/code-editor.cjs +0 -2
- package/dist/components/ui/code-editor.cjs.map +0 -1
- package/dist/components/ui/code-editor.js +0 -103
- package/dist/components/ui/code-editor.js.map +0 -1
- package/dist/components/ui/collapsible.cjs.map +0 -1
- package/dist/components/ui/collapsible.js.map +0 -1
- package/dist/components/ui/combobox.cjs +0 -2
- package/dist/components/ui/combobox.cjs.map +0 -1
- package/dist/components/ui/combobox.js +0 -281
- package/dist/components/ui/combobox.js.map +0 -1
- package/dist/components/ui/command.cjs +0 -2
- package/dist/components/ui/command.cjs.map +0 -1
- package/dist/components/ui/command.js +0 -174
- package/dist/components/ui/command.js.map +0 -1
- package/dist/components/ui/context-menu.cjs +0 -2
- package/dist/components/ui/context-menu.cjs.map +0 -1
- package/dist/components/ui/context-menu.js +0 -236
- package/dist/components/ui/context-menu.js.map +0 -1
- package/dist/components/ui/dialog.cjs +0 -2
- package/dist/components/ui/dialog.cjs.map +0 -1
- package/dist/components/ui/dialog.js +0 -165
- package/dist/components/ui/dialog.js.map +0 -1
- package/dist/components/ui/drawer.cjs +0 -2
- package/dist/components/ui/drawer.cjs.map +0 -1
- package/dist/components/ui/drawer.js +0 -125
- package/dist/components/ui/drawer.js.map +0 -1
- package/dist/components/ui/dropdown-menu.cjs +0 -2
- package/dist/components/ui/dropdown-menu.cjs.map +0 -1
- package/dist/components/ui/dropdown-menu.js +0 -252
- package/dist/components/ui/dropdown-menu.js.map +0 -1
- package/dist/components/ui/field.cjs +0 -2
- package/dist/components/ui/field.cjs.map +0 -1
- package/dist/components/ui/field.js +0 -210
- package/dist/components/ui/field.js.map +0 -1
- package/dist/components/ui/hover-card.cjs +0 -2
- package/dist/components/ui/hover-card.cjs.map +0 -1
- package/dist/components/ui/hover-card.js +0 -39
- package/dist/components/ui/hover-card.js.map +0 -1
- package/dist/components/ui/input-group.cjs +0 -2
- package/dist/components/ui/input-group.cjs.map +0 -1
- package/dist/components/ui/input-group.js +0 -145
- package/dist/components/ui/input-group.js.map +0 -1
- package/dist/components/ui/input-otp.cjs +0 -2
- package/dist/components/ui/input-otp.cjs.map +0 -1
- package/dist/components/ui/input-otp.js +0 -82
- package/dist/components/ui/input-otp.js.map +0 -1
- package/dist/components/ui/input.cjs +0 -2
- package/dist/components/ui/input.cjs.map +0 -1
- package/dist/components/ui/input.js +0 -20
- package/dist/components/ui/input.js.map +0 -1
- package/dist/components/ui/item.cjs +0 -2
- package/dist/components/ui/item.cjs.map +0 -1
- package/dist/components/ui/item.js +0 -191
- package/dist/components/ui/item.js.map +0 -1
- package/dist/components/ui/kbd.cjs +0 -2
- package/dist/components/ui/kbd.cjs.map +0 -1
- package/dist/components/ui/kbd.js +0 -30
- package/dist/components/ui/kbd.js.map +0 -1
- package/dist/components/ui/label.cjs +0 -2
- package/dist/components/ui/label.cjs.map +0 -1
- package/dist/components/ui/label.js +0 -23
- package/dist/components/ui/label.js.map +0 -1
- package/dist/components/ui/menubar.cjs +0 -2
- package/dist/components/ui/menubar.cjs.map +0 -1
- package/dist/components/ui/menubar.js +0 -256
- package/dist/components/ui/menubar.js.map +0 -1
- package/dist/components/ui/navigation-menu.cjs +0 -2
- package/dist/components/ui/navigation-menu.cjs.map +0 -1
- package/dist/components/ui/navigation-menu.js +0 -164
- package/dist/components/ui/navigation-menu.js.map +0 -1
- package/dist/components/ui/popover.cjs +0 -2
- package/dist/components/ui/popover.cjs.map +0 -1
- package/dist/components/ui/popover.js +0 -45
- package/dist/components/ui/popover.js.map +0 -1
- package/dist/components/ui/radio-group.cjs +0 -2
- package/dist/components/ui/radio-group.cjs.map +0 -1
- package/dist/components/ui/radio-group.js +0 -45
- package/dist/components/ui/radio-group.js.map +0 -1
- package/dist/components/ui/resizable.cjs +0 -2
- package/dist/components/ui/resizable.cjs.map +0 -1
- package/dist/components/ui/resizable.js +0 -58
- package/dist/components/ui/resizable.js.map +0 -1
- package/dist/components/ui/scroll-area.cjs +0 -2
- package/dist/components/ui/scroll-area.cjs.map +0 -1
- package/dist/components/ui/scroll-area.js +0 -60
- package/dist/components/ui/scroll-area.js.map +0 -1
- package/dist/components/ui/select.cjs +0 -2
- package/dist/components/ui/select.cjs.map +0 -1
- package/dist/components/ui/select.js +0 -184
- package/dist/components/ui/select.js.map +0 -1
- package/dist/components/ui/separator.cjs +0 -2
- package/dist/components/ui/separator.cjs.map +0 -1
- package/dist/components/ui/separator.js +0 -27
- package/dist/components/ui/separator.js.map +0 -1
- package/dist/components/ui/sheet.cjs +0 -2
- package/dist/components/ui/sheet.cjs.map +0 -1
- package/dist/components/ui/sheet.js +0 -137
- package/dist/components/ui/sheet.js.map +0 -1
- package/dist/components/ui/sidebar.cjs +0 -2
- package/dist/components/ui/sidebar.cjs.map +0 -1
- package/dist/components/ui/sidebar.js +0 -579
- package/dist/components/ui/sidebar.js.map +0 -1
- package/dist/components/ui/skeleton.cjs +0 -2
- package/dist/components/ui/skeleton.cjs.map +0 -1
- package/dist/components/ui/skeleton.js +0 -24
- package/dist/components/ui/skeleton.js.map +0 -1
- package/dist/components/ui/slider.cjs +0 -2
- package/dist/components/ui/slider.cjs.map +0 -1
- package/dist/components/ui/slider.js +0 -60
- package/dist/components/ui/slider.js.map +0 -1
- package/dist/components/ui/sonner.cjs +0 -2
- package/dist/components/ui/sonner.cjs.map +0 -1
- package/dist/components/ui/sonner.js +0 -37
- package/dist/components/ui/sonner.js.map +0 -1
- package/dist/components/ui/spinner.cjs +0 -2
- package/dist/components/ui/spinner.cjs.map +0 -1
- package/dist/components/ui/spinner.js +0 -39
- package/dist/components/ui/spinner.js.map +0 -1
- package/dist/components/ui/switch.cjs +0 -2
- package/dist/components/ui/switch.cjs.map +0 -1
- package/dist/components/ui/switch.js +0 -32
- package/dist/components/ui/switch.js.map +0 -1
- package/dist/components/ui/table.cjs +0 -2
- package/dist/components/ui/table.cjs.map +0 -1
- package/dist/components/ui/table.js +0 -152
- package/dist/components/ui/table.js.map +0 -1
- package/dist/components/ui/tabs.cjs +0 -2
- package/dist/components/ui/tabs.cjs.map +0 -1
- package/dist/components/ui/tabs.js +0 -92
- package/dist/components/ui/tabs.js.map +0 -1
- package/dist/components/ui/tetrascience-icon.cjs +0 -2
- package/dist/components/ui/tetrascience-icon.cjs.map +0 -1
- package/dist/components/ui/tetrascience-icon.js +0 -46
- package/dist/components/ui/tetrascience-icon.js.map +0 -1
- package/dist/components/ui/textarea.cjs +0 -2
- package/dist/components/ui/textarea.cjs.map +0 -1
- package/dist/components/ui/textarea.js +0 -19
- package/dist/components/ui/textarea.js.map +0 -1
- package/dist/components/ui/toggle-group.cjs +0 -2
- package/dist/components/ui/toggle-group.cjs.map +0 -1
- package/dist/components/ui/toggle-group.js +0 -77
- package/dist/components/ui/toggle-group.js.map +0 -1
- package/dist/components/ui/toggle.cjs +0 -2
- package/dist/components/ui/toggle.cjs.map +0 -1
- package/dist/components/ui/toggle.js +0 -44
- package/dist/components/ui/toggle.js.map +0 -1
- package/dist/components/ui/tooltip.cjs +0 -2
- package/dist/components/ui/tooltip.cjs.map +0 -1
- package/dist/components/ui/tooltip.js +0 -56
- package/dist/components/ui/tooltip.js.map +0 -1
- package/dist/databricks.d.ts +0 -129
- package/dist/providers/athena.d.ts +0 -9
- package/dist/providers/databricks.d.ts +0 -9
- package/dist/providers/snowflake.d.ts +0 -9
- package/dist/snowflake.d.ts +0 -125
- /package/dist/components/charts/{ChromatogramChart → Chromatogram}/peakDetection.cjs +0 -0
- /package/dist/components/charts/{ChromatogramChart → Chromatogram}/peakDetection.js +0 -0
- /package/dist/{components/composed → composed}/tdp-url.cjs +0 -0
- /package/dist/{components/composed → composed}/tdp-url.js +0 -0
- /package/dist/{components/ui → ui}/aspect-ratio.cjs +0 -0
- /package/dist/{components/ui → ui}/aspect-ratio.js +0 -0
- /package/dist/{components/ui → ui}/collapsible.cjs +0 -0
- /package/dist/{components/ui → ui}/collapsible.js +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),j=require("lucide-react"),c=require("react"),te=require("./components/DefaultFilters.cjs"),se=require("./components/DefaultResults.cjs"),re=require("./components/DefaultSearchBar.cjs"),ae=require("./hooks/useSearch.cjs"),ce=require("./hooks/useTdpCredentials.cjs"),p=require("../../../ui/alert.cjs");;/* empty css */const K=({defaultQuery:b="",columns:k,filters:y=[],defaultSort:_,advancedSearchParams:q,pageSize:n=10,searchPlaceholder:w="Enter search term...",className:B,onSearch:v,renderSearchBar:D,renderFilters:T,renderResults:N,...l})=>{const{authToken:L,orgSlug:M}=ce.useTdpCredentials(l.authToken,l.orgSlug),{results:i,total:V,currentPage:H,isLoading:r,error:o,executeSearch:O}=ae.useSearch({...l,authToken:L??"",orgSlug:M??"",pageSize:n}),[u,Q]=c.useState(b),[C,$]=c.useState({}),[h,G]=c.useState(null),[d,I]=c.useState("asc"),[x,J]=c.useState(!1),S=async(t=1,s)=>{if(!u.trim())return;J(!0);const f=s?.sortKey??h??_?.field,Z=s==null?h?d:_?.order??d:s.sortDirection,m=Object.entries(C).filter(([,g])=>g!=="").map(([g,ee])=>({field:g,operator:"eq",value:ee}));let a=q?.expression;m.length>0&&(a={g:"AND",e:a?[...m,a]:m});const F={searchTerm:u.trim(),sort:f??void 0,order:Z,...q,...a!==void 0&&{expression:a}},z=await O(F,t);v&&v({...F,from:(t-1)*n,size:n},z)},U=()=>{S(1)},W=(t,s)=>{$(f=>({...f,[t]:s}))},X=t=>{S(t)},Y=(t,s)=>{G(t),I(s),S(1,{sortKey:t,sortDirection:s})},P=e.jsxs("div",{className:"tdp-search__empty-state",children:[e.jsx("div",{className:"tdp-search__empty-state-icon",children:e.jsx(j.Search,{})}),e.jsx("div",{className:"tdp-search__empty-state-text",children:"No results found. Try adjusting your search query or filters."})]}),R={query:u,setQuery:Q,onSearch:U,isLoading:r,placeholder:w},A={filters:y,filterValues:C,onFilterChange:W},E={results:i,total:V,currentPage:H,pageSize:n,columns:k,onPageChange:X,sortKey:h,sortDirection:d,onSort:Y};return e.jsxs("div",{className:`tdp-search ${B||""}`,children:[D?D(R):e.jsx(re.DefaultSearchBar,{...R}),y.length>0&&(T?T(A):e.jsx(te.DefaultFilters,{...A})),o&&e.jsxs(e.Fragment,{children:[e.jsxs(p.Alert,{variant:"destructive",children:[e.jsx(j.AlertCircle,{}),e.jsx(p.AlertTitle,{children:"Error"}),e.jsx(p.AlertDescription,{children:o})]}),P]}),r&&e.jsx("div",{className:"tdp-search__loading-overlay",children:"Loading results..."}),!r&&!x&&e.jsxs("div",{className:"tdp-search__empty-state",children:[e.jsx("div",{className:"tdp-search__empty-state-icon",children:e.jsx(j.Search,{})}),e.jsx("div",{className:"tdp-search__empty-state-text",children:"Enter a search query and click Search to get started."})]}),!r&&!o&&x&&i.length>0&&(N?N(E):e.jsx(se.DefaultResults,{...E})),!r&&!o&&x&&i.length===0&&P]})};exports.TdpSearch=K;exports.default=K;
|
|
2
2
|
//# sourceMappingURL=TdpSearch.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TdpSearch.cjs","sources":["../../../../src/components/composed/TdpSearch/TdpSearch.tsx"],"sourcesContent":["import { AlertCircle, Search } from \"lucide-react\";\nimport React, { useState } from \"react\";\n\nimport { DefaultFilters } from \"./components/DefaultFilters\";\nimport { DefaultResults } from \"./components/DefaultResults\";\nimport { DefaultSearchBar } from \"./components/DefaultSearchBar\";\nimport { useSearch } from \"./hooks/useSearch\";\nimport { useTdpCredentials } from \"./hooks/useTdpCredentials\";\n\nimport type { TdpSearchProps, SearchEqlExpression } from \"./types\";\nimport type { SearchEqlRequest } from \"@tetrascience-npm/ts-connectors-sdk\";\n\nimport { Alert, AlertDescription, AlertTitle } from \"@/components/ui/alert\";\n\nimport \"./TdpSearch.scss\";\n\n/**\n * TdpSearch Component\n *\n * A reusable search component for querying the TDP.\n *\n * @example\n * ```tsx\n * <TdpSearch\n * columns={[\n * { key: \"id\", header: \"ID\" },\n * { key: \"filePath\", header: \"File Path\", sortable: true }\n * ]}\n * defaultQuery=\"sample-data\"\n * pageSize={20}\n * />\n * ```\n */\n\nexport const TdpSearch: React.FC<TdpSearchProps> = ({\n defaultQuery = \"\",\n columns,\n filters = [],\n defaultSort,\n advancedSearchParams,\n pageSize = 10,\n searchPlaceholder = \"Enter search term...\",\n className,\n onSearch,\n renderSearchBar,\n renderFilters,\n renderResults,\n ...props\n}) => {\n const { authToken, orgSlug } = useTdpCredentials(props.authToken, props.orgSlug);\n\n const { results, total, currentPage, isLoading, error, executeSearch } = useSearch({\n ...props,\n authToken: authToken ?? \"\",\n orgSlug: orgSlug ?? \"\",\n pageSize,\n });\n\n // UI state\n const [query, setQuery] = useState(defaultQuery);\n const [filterValues, setFilterValues] = useState<Record<string, string>>({});\n const [sortKey, setSortKey] = useState<string | null>(null);\n const [sortDirection, setSortDirection] = useState<\"asc\" | \"desc\">(\"asc\");\n const [hasSearched, setHasSearched] = useState(false);\n\n // Execute search with current UI state. Optional sortOverride avoids stale state when called from handleSort.\n const handleExecuteSearch = async (\n page: number = 1,\n sortOverride?: { sortKey: string; sortDirection: \"asc\" | \"desc\" },\n ) => {\n if (!query.trim()) {\n return;\n }\n\n setHasSearched(true);\n\n const effectiveSortKey = sortOverride?.sortKey ?? sortKey ?? defaultSort?.field;\n const effectiveOrder =\n sortOverride == null\n ? sortKey\n ? sortDirection\n : (defaultSort?.order ?? sortDirection)\n : sortOverride.sortDirection;\n\n const filterExpressions = Object.entries(filterValues)\n .filter(([, value]) => value !== \"\")\n .map(([key, value]) => ({ field: key, operator: \"eq\", value }));\n\n let expression: SearchEqlExpression | undefined = advancedSearchParams?.expression as\n | SearchEqlExpression\n | undefined;\n\n if (filterExpressions.length > 0) {\n expression = {\n g: \"AND\",\n e: expression ? [...filterExpressions, expression] : filterExpressions,\n };\n }\n\n const searchRequest: Omit<SearchEqlRequest, \"from\" | \"size\"> = {\n searchTerm: query.trim(),\n sort: effectiveSortKey ?? undefined,\n order: effectiveOrder,\n ...advancedSearchParams,\n ...(expression !== undefined && { expression }),\n };\n\n const newResults = await executeSearch(searchRequest, page);\n\n // Call onSearch with the freshly fetched results (not stale state)\n if (onSearch) {\n onSearch({ ...searchRequest, from: (page - 1) * pageSize, size: pageSize }, newResults);\n }\n };\n\n // Handle search button click\n const handleSearch = () => {\n handleExecuteSearch(1);\n };\n\n // Handle filter change\n const handleFilterChange = (filterKey: string, value: string) => {\n setFilterValues((prev) => ({\n ...prev,\n [filterKey]: value,\n }));\n };\n\n // Handle page change\n const handlePageChange = (page: number) => {\n handleExecuteSearch(page);\n };\n\n // Handle sort\n const handleSort = (key: string, direction: \"asc\" | \"desc\") => {\n setSortKey(key);\n setSortDirection(direction);\n handleExecuteSearch(1, { sortKey: key, sortDirection: direction });\n };\n\n const emptyState = (\n <div className=\"tdp-search__empty-state\">\n <div className=\"tdp-search__empty-state-icon\">\n <Search />\n </div>\n <div className=\"tdp-search__empty-state-text\">No results found. Try adjusting your search query or filters.</div>\n </div>\n );\n\n const searchBarProps = { query, setQuery, onSearch: handleSearch, isLoading, placeholder: searchPlaceholder };\n const filtersProps = { filters, filterValues, onFilterChange: handleFilterChange };\n const resultsProps = {\n results,\n total,\n currentPage,\n pageSize,\n columns,\n onPageChange: handlePageChange,\n sortKey,\n sortDirection,\n onSort: handleSort,\n };\n\n return (\n <div className={`tdp-search ${className || \"\"}`}>\n {renderSearchBar ? renderSearchBar(searchBarProps) : <DefaultSearchBar {...searchBarProps} />}\n\n {filters.length > 0 && (renderFilters ? renderFilters(filtersProps) : <DefaultFilters {...filtersProps} />)}\n\n {error && (\n <>\n <Alert variant=\"destructive\">\n <AlertCircle />\n <AlertTitle>Error</AlertTitle>\n <AlertDescription>{error}</AlertDescription>\n </Alert>\n {emptyState}\n </>\n )}\n\n {isLoading && <div className=\"tdp-search__loading-overlay\">Loading results...</div>}\n\n {!isLoading && !hasSearched && (\n <div className=\"tdp-search__empty-state\">\n <div className=\"tdp-search__empty-state-icon\">\n <Search />\n </div>\n <div className=\"tdp-search__empty-state-text\">Enter a search query and click Search to get started.</div>\n </div>\n )}\n\n {!isLoading &&\n !error &&\n hasSearched &&\n results.length > 0 &&\n (renderResults ? renderResults(resultsProps) : <DefaultResults {...resultsProps} />)}\n\n {!isLoading && !error && hasSearched && results.length === 0 && emptyState}\n </div>\n );\n};\n\nexport default TdpSearch;\n"],"names":["TdpSearch","defaultQuery","columns","filters","defaultSort","advancedSearchParams","pageSize","searchPlaceholder","className","onSearch","renderSearchBar","renderFilters","renderResults","props","authToken","orgSlug","useTdpCredentials","results","total","currentPage","isLoading","error","executeSearch","useSearch","query","setQuery","useState","filterValues","setFilterValues","sortKey","setSortKey","sortDirection","setSortDirection","hasSearched","setHasSearched","handleExecuteSearch","page","sortOverride","effectiveSortKey","effectiveOrder","filterExpressions","value","key","expression","searchRequest","newResults","handleSearch","handleFilterChange","filterKey","prev","handlePageChange","handleSort","direction","emptyState","jsxs","jsx","Search","searchBarProps","filtersProps","resultsProps","DefaultSearchBar","DefaultFilters","Fragment","Alert","AlertCircle","AlertTitle","AlertDescription","DefaultResults"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TdpSearch.cjs","sources":["../../../../src/components/composed/TdpSearch/TdpSearch.tsx"],"sourcesContent":["import { AlertCircle, Search } from \"lucide-react\";\nimport React, { useState } from \"react\";\n\nimport { DefaultFilters } from \"./components/DefaultFilters\";\nimport { DefaultResults } from \"./components/DefaultResults\";\nimport { DefaultSearchBar } from \"./components/DefaultSearchBar\";\nimport { useSearch } from \"./hooks/useSearch\";\nimport { useTdpCredentials } from \"./hooks/useTdpCredentials\";\n\nimport type { TdpSearchProps, SearchEqlExpression } from \"./types\";\nimport type { SearchEqlRequest } from \"@tetrascience-npm/ts-connectors-sdk\";\n\nimport { Alert, AlertDescription, AlertTitle } from \"@/components/ui/alert\";\n\nimport \"./TdpSearch.scss\";\n\n/**\n * TdpSearch Component\n *\n * A reusable search component for querying the TDP.\n *\n * @example\n * ```tsx\n * <TdpSearch\n * columns={[\n * { key: \"id\", header: \"ID\" },\n * { key: \"filePath\", header: \"File Path\", sortable: true }\n * ]}\n * defaultQuery=\"sample-data\"\n * pageSize={20}\n * />\n * ```\n */\n\nexport const TdpSearch: React.FC<TdpSearchProps> = ({\n defaultQuery = \"\",\n columns,\n filters = [],\n defaultSort,\n advancedSearchParams,\n pageSize = 10,\n searchPlaceholder = \"Enter search term...\",\n className,\n onSearch,\n renderSearchBar,\n renderFilters,\n renderResults,\n ...props\n}) => {\n const { authToken, orgSlug } = useTdpCredentials(props.authToken, props.orgSlug);\n\n const { results, total, currentPage, isLoading, error, executeSearch } = useSearch({\n ...props,\n authToken: authToken ?? \"\",\n orgSlug: orgSlug ?? \"\",\n pageSize,\n });\n\n // UI state\n const [query, setQuery] = useState(defaultQuery);\n const [filterValues, setFilterValues] = useState<Record<string, string>>({});\n const [sortKey, setSortKey] = useState<string | null>(null);\n const [sortDirection, setSortDirection] = useState<\"asc\" | \"desc\">(\"asc\");\n const [hasSearched, setHasSearched] = useState(false);\n\n // Execute search with current UI state. Optional sortOverride avoids stale state when called from handleSort.\n const handleExecuteSearch = async (\n page: number = 1,\n sortOverride?: { sortKey: string; sortDirection: \"asc\" | \"desc\" },\n ) => {\n if (!query.trim()) {\n return;\n }\n\n setHasSearched(true);\n\n const effectiveSortKey = sortOverride?.sortKey ?? sortKey ?? defaultSort?.field;\n const effectiveOrder =\n sortOverride == null\n ? sortKey\n ? sortDirection\n : (defaultSort?.order ?? sortDirection)\n : sortOverride.sortDirection;\n\n const filterExpressions = Object.entries(filterValues)\n .filter(([, value]) => value !== \"\")\n .map(([key, value]) => ({ field: key, operator: \"eq\", value }));\n\n let expression: SearchEqlExpression | undefined = advancedSearchParams?.expression as\n | SearchEqlExpression\n | undefined;\n\n if (filterExpressions.length > 0) {\n expression = {\n g: \"AND\",\n e: expression ? [...filterExpressions, expression] : filterExpressions,\n };\n }\n\n const searchRequest: Omit<SearchEqlRequest, \"from\" | \"size\"> = {\n searchTerm: query.trim(),\n sort: effectiveSortKey ?? undefined,\n order: effectiveOrder,\n ...advancedSearchParams,\n ...(expression !== undefined && { expression }),\n };\n\n const newResults = await executeSearch(searchRequest, page);\n\n // Call onSearch with the freshly fetched results (not stale state)\n if (onSearch) {\n onSearch({ ...searchRequest, from: (page - 1) * pageSize, size: pageSize }, newResults);\n }\n };\n\n // Handle search button click\n const handleSearch = () => {\n handleExecuteSearch(1);\n };\n\n // Handle filter change\n const handleFilterChange = (filterKey: string, value: string) => {\n setFilterValues((prev) => ({\n ...prev,\n [filterKey]: value,\n }));\n };\n\n // Handle page change\n const handlePageChange = (page: number) => {\n handleExecuteSearch(page);\n };\n\n // Handle sort\n const handleSort = (key: string, direction: \"asc\" | \"desc\") => {\n setSortKey(key);\n setSortDirection(direction);\n handleExecuteSearch(1, { sortKey: key, sortDirection: direction });\n };\n\n const emptyState = (\n <div className=\"tdp-search__empty-state\">\n <div className=\"tdp-search__empty-state-icon\">\n <Search />\n </div>\n <div className=\"tdp-search__empty-state-text\">No results found. Try adjusting your search query or filters.</div>\n </div>\n );\n\n const searchBarProps = { query, setQuery, onSearch: handleSearch, isLoading, placeholder: searchPlaceholder };\n const filtersProps = { filters, filterValues, onFilterChange: handleFilterChange };\n const resultsProps = {\n results,\n total,\n currentPage,\n pageSize,\n columns,\n onPageChange: handlePageChange,\n sortKey,\n sortDirection,\n onSort: handleSort,\n };\n\n return (\n <div className={`tdp-search ${className || \"\"}`}>\n {renderSearchBar ? renderSearchBar(searchBarProps) : <DefaultSearchBar {...searchBarProps} />}\n\n {filters.length > 0 && (renderFilters ? renderFilters(filtersProps) : <DefaultFilters {...filtersProps} />)}\n\n {error && (\n <>\n <Alert variant=\"destructive\">\n <AlertCircle />\n <AlertTitle>Error</AlertTitle>\n <AlertDescription>{error}</AlertDescription>\n </Alert>\n {emptyState}\n </>\n )}\n\n {isLoading && <div className=\"tdp-search__loading-overlay\">Loading results...</div>}\n\n {!isLoading && !hasSearched && (\n <div className=\"tdp-search__empty-state\">\n <div className=\"tdp-search__empty-state-icon\">\n <Search />\n </div>\n <div className=\"tdp-search__empty-state-text\">Enter a search query and click Search to get started.</div>\n </div>\n )}\n\n {!isLoading &&\n !error &&\n hasSearched &&\n results.length > 0 &&\n (renderResults ? renderResults(resultsProps) : <DefaultResults {...resultsProps} />)}\n\n {!isLoading && !error && hasSearched && results.length === 0 && emptyState}\n </div>\n );\n};\n\nexport default TdpSearch;\n"],"names":["TdpSearch","defaultQuery","columns","filters","defaultSort","advancedSearchParams","pageSize","searchPlaceholder","className","onSearch","renderSearchBar","renderFilters","renderResults","props","authToken","orgSlug","useTdpCredentials","results","total","currentPage","isLoading","error","executeSearch","useSearch","query","setQuery","useState","filterValues","setFilterValues","sortKey","setSortKey","sortDirection","setSortDirection","hasSearched","setHasSearched","handleExecuteSearch","page","sortOverride","effectiveSortKey","effectiveOrder","filterExpressions","value","key","expression","searchRequest","newResults","handleSearch","handleFilterChange","filterKey","prev","handlePageChange","handleSort","direction","emptyState","jsxs","jsx","Search","searchBarProps","filtersProps","resultsProps","DefaultSearchBar","DefaultFilters","Fragment","Alert","AlertCircle","AlertTitle","AlertDescription","DefaultResults"],"mappings":"6dAkCO,MAAMA,EAAsC,CAAC,CAClD,aAAAC,EAAe,GACf,QAAAC,EACA,QAAAC,EAAU,CAAA,EACV,YAAAC,EACA,qBAAAC,EACA,SAAAC,EAAW,GACX,kBAAAC,EAAoB,uBACpB,UAAAC,EACA,SAAAC,EACA,gBAAAC,EACA,cAAAC,EACA,cAAAC,EACA,GAAGC,CACL,IAAM,CACJ,KAAM,CAAE,UAAAC,EAAW,QAAAC,GAAYC,GAAAA,kBAAkBH,EAAM,UAAWA,EAAM,OAAO,EAEzE,CAAE,QAAAI,EAAS,MAAAC,EAAO,YAAAC,EAAa,UAAAC,EAAW,MAAAC,EAAO,cAAAC,CAAA,EAAkBC,aAAU,CACjF,GAAGV,EACH,UAAWC,GAAa,GACxB,QAASC,GAAW,GACpB,SAAAT,CAAA,CACD,EAGK,CAACkB,EAAOC,CAAQ,EAAIC,EAAAA,SAASzB,CAAY,EACzC,CAAC0B,EAAcC,CAAe,EAAIF,EAAAA,SAAiC,CAAA,CAAE,EACrE,CAACG,EAASC,CAAU,EAAIJ,EAAAA,SAAwB,IAAI,EACpD,CAACK,EAAeC,CAAgB,EAAIN,EAAAA,SAAyB,KAAK,EAClE,CAACO,EAAaC,CAAc,EAAIR,EAAAA,SAAS,EAAK,EAG9CS,EAAsB,MAC1BC,EAAe,EACfC,IACG,CACH,GAAI,CAACb,EAAM,OACT,OAGFU,EAAe,EAAI,EAEnB,MAAMI,EAAmBD,GAAc,SAAWR,GAAWzB,GAAa,MACpEmC,EACJF,GAAgB,KACZR,EACEE,EACC3B,GAAa,OAAS2B,EACzBM,EAAa,cAEbG,EAAoB,OAAO,QAAQb,CAAY,EAClD,OAAO,CAAC,CAAA,CAAGc,CAAK,IAAMA,IAAU,EAAE,EAClC,IAAI,CAAC,CAACC,EAAKD,EAAK,KAAO,CAAE,MAAOC,EAAK,SAAU,KAAM,MAAAD,EAAA,EAAQ,EAEhE,IAAIE,EAA8CtC,GAAsB,WAIpEmC,EAAkB,OAAS,IAC7BG,EAAa,CACX,EAAG,MACH,EAAGA,EAAa,CAAC,GAAGH,EAAmBG,CAAU,EAAIH,CAAA,GAIzD,MAAMI,EAAyD,CAC7D,WAAYpB,EAAM,KAAA,EAClB,KAAMc,GAAoB,OAC1B,MAAOC,EACP,GAAGlC,EACH,GAAIsC,IAAe,QAAa,CAAE,WAAAA,CAAA,CAAW,EAGzCE,EAAa,MAAMvB,EAAcsB,EAAeR,CAAI,EAGtD3B,GACFA,EAAS,CAAE,GAAGmC,EAAe,MAAOR,EAAO,GAAK9B,EAAU,KAAMA,CAAA,EAAYuC,CAAU,CAE1F,EAGMC,EAAe,IAAM,CACzBX,EAAoB,CAAC,CACvB,EAGMY,EAAqB,CAACC,EAAmBP,IAAkB,CAC/Db,EAAiBqB,IAAU,CACzB,GAAGA,EACH,CAACD,CAAS,EAAGP,CAAA,EACb,CACJ,EAGMS,EAAoBd,GAAiB,CACzCD,EAAoBC,CAAI,CAC1B,EAGMe,EAAa,CAACT,EAAaU,IAA8B,CAC7DtB,EAAWY,CAAG,EACdV,EAAiBoB,CAAS,EAC1BjB,EAAoB,EAAG,CAAE,QAASO,EAAK,cAAeU,EAAW,CACnE,EAEMC,EACJC,EAAAA,KAAC,MAAA,CAAI,UAAU,0BACb,SAAA,CAAAC,MAAC,MAAA,CAAI,UAAU,+BACb,SAAAA,MAACC,EAAAA,SAAO,EACV,EACAD,EAAAA,IAAC,MAAA,CAAI,UAAU,+BAA+B,SAAA,+DAAA,CAA6D,CAAA,EAC7G,EAGIE,EAAiB,CAAE,MAAAjC,EAAO,SAAAC,EAAU,SAAUqB,EAAc,UAAA1B,EAAW,YAAab,CAAA,EACpFmD,EAAe,CAAE,QAAAvD,EAAS,aAAAwB,EAAc,eAAgBoB,CAAA,EACxDY,EAAe,CACnB,QAAA1C,EACA,MAAAC,EACA,YAAAC,EACA,SAAAb,EACA,QAAAJ,EACA,aAAcgD,EACd,QAAArB,EACA,cAAAE,EACA,OAAQoB,CAAA,EAGV,cACG,MAAA,CAAI,UAAW,cAAc3C,GAAa,EAAE,GAC1C,SAAA,CAAAE,EAAkBA,EAAgB+C,CAAc,EAAIF,EAAAA,IAACK,oBAAA,CAAkB,GAAGH,EAAgB,EAE1FtD,EAAQ,OAAS,IAAMQ,EAAgBA,EAAc+C,CAAY,EAAIH,EAAAA,IAACM,GAAAA,eAAA,CAAgB,GAAGH,CAAA,CAAc,GAEvGrC,GACCiC,EAAAA,KAAAQ,WAAA,CACE,SAAA,CAAAR,EAAAA,KAACS,EAAAA,MAAA,CAAM,QAAQ,cACb,SAAA,CAAAR,EAAAA,IAACS,EAAAA,YAAA,EAAY,EACbT,EAAAA,IAACU,EAAAA,YAAW,SAAA,OAAA,CAAK,EACjBV,EAAAA,IAACW,EAAAA,kBAAkB,SAAA7C,CAAA,CAAM,CAAA,EAC3B,EACCgC,CAAA,EACH,EAGDjC,GAAamC,EAAAA,IAAC,MAAA,CAAI,UAAU,8BAA8B,SAAA,qBAAkB,EAE5E,CAACnC,GAAa,CAACa,GACdqB,EAAAA,KAAC,MAAA,CAAI,UAAU,0BACb,SAAA,CAAAC,MAAC,MAAA,CAAI,UAAU,+BACb,SAAAA,MAACC,EAAAA,SAAO,EACV,EACAD,EAAAA,IAAC,MAAA,CAAI,UAAU,+BAA+B,SAAA,uDAAA,CAAqD,CAAA,EACrG,EAGD,CAACnC,GACA,CAACC,GACDY,GACAhB,EAAQ,OAAS,IAChBL,EAAgBA,EAAc+C,CAAY,EAAIJ,EAAAA,IAACY,GAAAA,eAAA,CAAgB,GAAGR,CAAA,CAAc,GAElF,CAACvC,GAAa,CAACC,GAASY,GAAehB,EAAQ,SAAW,GAAKoC,CAAA,EAClE,CAEJ"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { TdpSearchProps } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* TdpSearch Component
|
|
5
|
+
*
|
|
6
|
+
* A reusable search component for querying the TDP.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```tsx
|
|
10
|
+
* <TdpSearch
|
|
11
|
+
* columns={[
|
|
12
|
+
* { key: "id", header: "ID" },
|
|
13
|
+
* { key: "filePath", header: "File Path", sortable: true }
|
|
14
|
+
* ]}
|
|
15
|
+
* defaultQuery="sample-data"
|
|
16
|
+
* pageSize={20}
|
|
17
|
+
* />
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
export declare const TdpSearch: React.FC<TdpSearchProps>;
|
|
21
|
+
export default TdpSearch;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { jsxs as
|
|
1
|
+
import { jsxs as a, jsx as e, Fragment as ee } from "react/jsx-runtime";
|
|
2
2
|
import { AlertCircle as te, Search as F } from "lucide-react";
|
|
3
|
-
import { useState as
|
|
3
|
+
import { useState as c } from "react";
|
|
4
4
|
import { DefaultFilters as re } from "./components/DefaultFilters.js";
|
|
5
5
|
import { DefaultResults as se } from "./components/DefaultResults.js";
|
|
6
6
|
import { DefaultSearchBar as oe } from "./components/DefaultSearchBar.js";
|
|
7
|
-
import { useSearch as
|
|
8
|
-
import { useTdpCredentials as
|
|
9
|
-
import { Alert as ne, AlertTitle as ie, AlertDescription as le } from "
|
|
7
|
+
import { useSearch as ae } from "./hooks/useSearch.js";
|
|
8
|
+
import { useTdpCredentials as ce } from "./hooks/useTdpCredentials.js";
|
|
9
|
+
import { Alert as ne, AlertTitle as ie, AlertDescription as le } from "../../../ui/alert.js";
|
|
10
10
|
/* empty css */
|
|
11
11
|
const ve = ({
|
|
12
12
|
defaultQuery: k = "",
|
|
@@ -23,12 +23,12 @@ const ve = ({
|
|
|
23
23
|
renderResults: C,
|
|
24
24
|
...l
|
|
25
25
|
}) => {
|
|
26
|
-
const { authToken: V, orgSlug: b } =
|
|
26
|
+
const { authToken: V, orgSlug: b } = ce(l.authToken, l.orgSlug), { results: h, total: B, currentPage: H, isLoading: s, error: i, executeSearch: Q } = ae({
|
|
27
27
|
...l,
|
|
28
28
|
authToken: V ?? "",
|
|
29
29
|
orgSlug: b ?? "",
|
|
30
30
|
pageSize: n
|
|
31
|
-
}), [d, $] =
|
|
31
|
+
}), [d, $] = c(k), [q, G] = c({}), [m, I] = c(null), [u, J] = c("asc"), [p, M] = c(!1), f = async (t = 1, r) => {
|
|
32
32
|
if (!d.trim())
|
|
33
33
|
return;
|
|
34
34
|
M(!0);
|
|
@@ -57,7 +57,7 @@ const ve = ({
|
|
|
57
57
|
f(t);
|
|
58
58
|
}, X = (t, r) => {
|
|
59
59
|
I(t), J(r), f(1, { sortKey: t, sortDirection: r });
|
|
60
|
-
}, A = /* @__PURE__ */
|
|
60
|
+
}, A = /* @__PURE__ */ a("div", { className: "tdp-search__empty-state", children: [
|
|
61
61
|
/* @__PURE__ */ e("div", { className: "tdp-search__empty-state-icon", children: /* @__PURE__ */ e(F, {}) }),
|
|
62
62
|
/* @__PURE__ */ e("div", { className: "tdp-search__empty-state-text", children: "No results found. Try adjusting your search query or filters." })
|
|
63
63
|
] }), E = { query: d, setQuery: $, onSearch: O, isLoading: s, placeholder: L }, K = { filters: _, filterValues: q, onFilterChange: U }, P = {
|
|
@@ -71,11 +71,11 @@ const ve = ({
|
|
|
71
71
|
sortDirection: u,
|
|
72
72
|
onSort: X
|
|
73
73
|
};
|
|
74
|
-
return /* @__PURE__ */
|
|
74
|
+
return /* @__PURE__ */ a("div", { className: `tdp-search ${R || ""}`, children: [
|
|
75
75
|
D ? D(E) : /* @__PURE__ */ e(oe, { ...E }),
|
|
76
76
|
_.length > 0 && (T ? T(K) : /* @__PURE__ */ e(re, { ...K })),
|
|
77
|
-
i && /* @__PURE__ */
|
|
78
|
-
/* @__PURE__ */
|
|
77
|
+
i && /* @__PURE__ */ a(ee, { children: [
|
|
78
|
+
/* @__PURE__ */ a(ne, { variant: "destructive", children: [
|
|
79
79
|
/* @__PURE__ */ e(te, {}),
|
|
80
80
|
/* @__PURE__ */ e(ie, { children: "Error" }),
|
|
81
81
|
/* @__PURE__ */ e(le, { children: i })
|
|
@@ -83,7 +83,7 @@ const ve = ({
|
|
|
83
83
|
A
|
|
84
84
|
] }),
|
|
85
85
|
s && /* @__PURE__ */ e("div", { className: "tdp-search__loading-overlay", children: "Loading results..." }),
|
|
86
|
-
!s && !p && /* @__PURE__ */
|
|
86
|
+
!s && !p && /* @__PURE__ */ a("div", { className: "tdp-search__empty-state", children: [
|
|
87
87
|
/* @__PURE__ */ e("div", { className: "tdp-search__empty-state-icon", children: /* @__PURE__ */ e(F, {}) }),
|
|
88
88
|
/* @__PURE__ */ e("div", { className: "tdp-search__empty-state-text", children: "Enter a search query and click Search to get started." })
|
|
89
89
|
] }),
|
|
@@ -92,6 +92,7 @@ const ve = ({
|
|
|
92
92
|
] });
|
|
93
93
|
};
|
|
94
94
|
export {
|
|
95
|
-
ve as TdpSearch
|
|
95
|
+
ve as TdpSearch,
|
|
96
|
+
ve as default
|
|
96
97
|
};
|
|
97
98
|
//# sourceMappingURL=TdpSearch.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),a=require("../../../../ui/select.cjs"),p="__tdp-search-empty__",h=c=>`${p}:${c}`,m=({filters:c,filterValues:d,onFilterChange:o})=>s.jsx("div",{className:"tdp-search__filters-row",children:c.map(l=>{const t=h(l.key),r=l.options.some(e=>e.value===""),n=d[l.key]??"",u=l.options.some(e=>e.value===n),i=n===""?r?t:void 0:u?n:void 0;return s.jsxs("div",{className:"tdp-search__filter-wrapper",children:[s.jsx("label",{className:"tdp-search__filter-label",children:l.label}),s.jsxs(a.Select,{value:i,onValueChange:e=>o(l.key,e===t?"":e),children:[s.jsx(a.SelectTrigger,{"aria-label":l.label,className:"h-[38px] w-full justify-between rounded-md",children:s.jsx(a.SelectValue,{placeholder:"Select an option"})}),s.jsx(a.SelectContent,{children:l.options.map(e=>s.jsx(a.SelectItem,{value:e.value===""?t:e.value,disabled:e.disabled,children:e.label},`${l.key}-${e.value||t}`))})]})]},l.key)})});exports.DefaultFilters=m;
|
|
2
2
|
//# sourceMappingURL=DefaultFilters.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DefaultFilters.cjs","sources":["../../../../../src/components/composed/TdpSearch/components/DefaultFilters.tsx"],"sourcesContent":["import React from \"react\";\n\nimport type { TdpFiltersRenderProps } from \"../types\";\n\nimport {\n Select,\n SelectContent,\n SelectItem,\n SelectTrigger,\n SelectValue,\n} from \"@/components/ui/select\";\n\nconst EMPTY_OPTION_SENTINEL_PREFIX = \"__tdp-search-empty__\";\n\nconst getEmptyOptionValue = (filterKey: string) => `${EMPTY_OPTION_SENTINEL_PREFIX}:${filterKey}`;\n\nexport const DefaultFilters: React.FC<TdpFiltersRenderProps> = ({ filters, filterValues, onFilterChange }) => (\n <div className=\"tdp-search__filters-row\">\n {filters.map((filter) => {\n const emptyOptionValue = getEmptyOptionValue(filter.key);\n const hasEmptyOption = filter.options.some((option) => option.value === \"\");\n const selectedValue = filterValues[filter.key] ?? \"\";\n const hasSelectedOption = filter.options.some((option) => option.value === selectedValue);\n const selectValue =\n selectedValue === \"\"\n ? hasEmptyOption\n ? emptyOptionValue\n : undefined\n : hasSelectedOption\n ? selectedValue\n : undefined;\n\n return (\n <div key={filter.key} className=\"tdp-search__filter-wrapper\">\n <label className=\"tdp-search__filter-label\">{filter.label}</label>\n <Select\n value={selectValue}\n onValueChange={(value) => onFilterChange(filter.key, value === emptyOptionValue ? \"\" : value)}\n >\n <SelectTrigger className=\"h-[38px] w-full justify-between rounded-md\">\n <SelectValue placeholder=\"Select an option\" />\n </SelectTrigger>\n <SelectContent>\n {filter.options.map((option) => (\n <SelectItem\n key={`${filter.key}-${option.value || emptyOptionValue}`}\n value={option.value === \"\" ? emptyOptionValue : option.value}\n disabled={option.disabled}\n >\n {option.label}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n </div>\n );\n })}\n </div>\n);\n"],"names":["EMPTY_OPTION_SENTINEL_PREFIX","getEmptyOptionValue","filterKey","DefaultFilters","filters","filterValues","onFilterChange","jsx","filter","emptyOptionValue","hasEmptyOption","option","selectedValue","hasSelectedOption","selectValue","jsxs","Select","value","SelectTrigger","SelectValue","SelectContent","SelectItem"],"mappings":"
|
|
1
|
+
{"version":3,"file":"DefaultFilters.cjs","sources":["../../../../../src/components/composed/TdpSearch/components/DefaultFilters.tsx"],"sourcesContent":["import React from \"react\";\n\nimport type { TdpFiltersRenderProps } from \"../types\";\n\nimport {\n Select,\n SelectContent,\n SelectItem,\n SelectTrigger,\n SelectValue,\n} from \"@/components/ui/select\";\n\nconst EMPTY_OPTION_SENTINEL_PREFIX = \"__tdp-search-empty__\";\n\nconst getEmptyOptionValue = (filterKey: string) => `${EMPTY_OPTION_SENTINEL_PREFIX}:${filterKey}`;\n\nexport const DefaultFilters: React.FC<TdpFiltersRenderProps> = ({ filters, filterValues, onFilterChange }) => (\n <div className=\"tdp-search__filters-row\">\n {filters.map((filter) => {\n const emptyOptionValue = getEmptyOptionValue(filter.key);\n const hasEmptyOption = filter.options.some((option) => option.value === \"\");\n const selectedValue = filterValues[filter.key] ?? \"\";\n const hasSelectedOption = filter.options.some((option) => option.value === selectedValue);\n const selectValue =\n selectedValue === \"\"\n ? hasEmptyOption\n ? emptyOptionValue\n : undefined\n : hasSelectedOption\n ? selectedValue\n : undefined;\n\n return (\n <div key={filter.key} className=\"tdp-search__filter-wrapper\">\n <label className=\"tdp-search__filter-label\">{filter.label}</label>\n <Select\n value={selectValue}\n onValueChange={(value) => onFilterChange(filter.key, value === emptyOptionValue ? \"\" : value)}\n >\n <SelectTrigger aria-label={filter.label} className=\"h-[38px] w-full justify-between rounded-md\">\n <SelectValue placeholder=\"Select an option\" />\n </SelectTrigger>\n <SelectContent>\n {filter.options.map((option) => (\n <SelectItem\n key={`${filter.key}-${option.value || emptyOptionValue}`}\n value={option.value === \"\" ? emptyOptionValue : option.value}\n disabled={option.disabled}\n >\n {option.label}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n </div>\n );\n })}\n </div>\n);\n"],"names":["EMPTY_OPTION_SENTINEL_PREFIX","getEmptyOptionValue","filterKey","DefaultFilters","filters","filterValues","onFilterChange","jsx","filter","emptyOptionValue","hasEmptyOption","option","selectedValue","hasSelectedOption","selectValue","jsxs","Select","value","SelectTrigger","SelectValue","SelectContent","SelectItem"],"mappings":"4JAYMA,EAA+B,uBAE/BC,EAAuBC,GAAsB,GAAGF,CAA4B,IAAIE,CAAS,GAElFC,EAAkD,CAAC,CAAE,QAAAC,EAAS,aAAAC,EAAc,eAAAC,CAAA,IACvFC,EAAAA,IAAC,MAAA,CAAI,UAAU,0BACZ,SAAAH,EAAQ,IAAKI,GAAW,CACvB,MAAMC,EAAmBR,EAAoBO,EAAO,GAAG,EACjDE,EAAiBF,EAAO,QAAQ,KAAMG,GAAWA,EAAO,QAAU,EAAE,EACpEC,EAAgBP,EAAaG,EAAO,GAAG,GAAK,GAC5CK,EAAoBL,EAAO,QAAQ,KAAMG,GAAWA,EAAO,QAAUC,CAAa,EAClFE,EACJF,IAAkB,GACdF,EACED,EACA,OACFI,EACED,EACA,OAER,OACEG,EAAAA,KAAC,MAAA,CAAqB,UAAU,6BAC9B,SAAA,CAAAR,EAAAA,IAAC,QAAA,CAAM,UAAU,2BAA4B,SAAAC,EAAO,MAAM,EAC1DO,EAAAA,KAACC,EAAAA,OAAA,CACC,MAAOF,EACP,cAAgBG,GAAUX,EAAeE,EAAO,IAAKS,IAAUR,EAAmB,GAAKQ,CAAK,EAE5F,SAAA,CAAAV,EAAAA,IAACW,EAAAA,cAAA,CAAc,aAAYV,EAAO,MAAO,UAAU,6CACjD,SAAAD,EAAAA,IAACY,EAAAA,YAAA,CAAY,YAAY,kBAAA,CAAmB,CAAA,CAC9C,QACCC,EAAAA,cAAA,CACE,SAAAZ,EAAO,QAAQ,IAAKG,GACnBJ,EAAAA,IAACc,EAAAA,WAAA,CAEC,MAAOV,EAAO,QAAU,GAAKF,EAAmBE,EAAO,MACvD,SAAUA,EAAO,SAEhB,SAAAA,EAAO,KAAA,EAJH,GAAGH,EAAO,GAAG,IAAIG,EAAO,OAASF,CAAgB,EAAA,CAMzD,CAAA,CACH,CAAA,CAAA,CAAA,CACF,CAAA,EApBQD,EAAO,GAqBjB,CAEJ,CAAC,CAAA,CACH"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as a, jsxs as n } from "react/jsx-runtime";
|
|
2
|
-
import { Select as i, SelectTrigger as u, SelectValue as h, SelectContent as _, SelectItem as v } from "
|
|
3
|
-
const y = "__tdp-search-empty__",
|
|
4
|
-
const s =
|
|
2
|
+
import { Select as i, SelectTrigger as u, SelectValue as h, SelectContent as _, SelectItem as v } from "../../../../ui/select.js";
|
|
3
|
+
const y = "__tdp-search-empty__", b = (t) => `${y}:${t}`, E = ({ filters: t, filterValues: o, onFilterChange: d }) => /* @__PURE__ */ a("div", { className: "tdp-search__filters-row", children: t.map((l) => {
|
|
4
|
+
const s = b(l.key), p = l.options.some((e) => e.value === ""), c = o[l.key] ?? "", r = l.options.some((e) => e.value === c), m = c === "" ? p ? s : void 0 : r ? c : void 0;
|
|
5
5
|
return /* @__PURE__ */ n("div", { className: "tdp-search__filter-wrapper", children: [
|
|
6
6
|
/* @__PURE__ */ a("label", { className: "tdp-search__filter-label", children: l.label }),
|
|
7
7
|
/* @__PURE__ */ n(
|
|
@@ -10,7 +10,7 @@ const y = "__tdp-search-empty__", S = (t) => `${y}:${t}`, E = ({ filters: t, fil
|
|
|
10
10
|
value: m,
|
|
11
11
|
onValueChange: (e) => d(l.key, e === s ? "" : e),
|
|
12
12
|
children: [
|
|
13
|
-
/* @__PURE__ */ a(u, { className: "h-[38px] w-full justify-between rounded-md", children: /* @__PURE__ */ a(h, { placeholder: "Select an option" }) }),
|
|
13
|
+
/* @__PURE__ */ a(u, { "aria-label": l.label, className: "h-[38px] w-full justify-between rounded-md", children: /* @__PURE__ */ a(h, { placeholder: "Select an option" }) }),
|
|
14
14
|
/* @__PURE__ */ a(_, { children: l.options.map((e) => /* @__PURE__ */ a(
|
|
15
15
|
v,
|
|
16
16
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DefaultFilters.js","sources":["../../../../../src/components/composed/TdpSearch/components/DefaultFilters.tsx"],"sourcesContent":["import React from \"react\";\n\nimport type { TdpFiltersRenderProps } from \"../types\";\n\nimport {\n Select,\n SelectContent,\n SelectItem,\n SelectTrigger,\n SelectValue,\n} from \"@/components/ui/select\";\n\nconst EMPTY_OPTION_SENTINEL_PREFIX = \"__tdp-search-empty__\";\n\nconst getEmptyOptionValue = (filterKey: string) => `${EMPTY_OPTION_SENTINEL_PREFIX}:${filterKey}`;\n\nexport const DefaultFilters: React.FC<TdpFiltersRenderProps> = ({ filters, filterValues, onFilterChange }) => (\n <div className=\"tdp-search__filters-row\">\n {filters.map((filter) => {\n const emptyOptionValue = getEmptyOptionValue(filter.key);\n const hasEmptyOption = filter.options.some((option) => option.value === \"\");\n const selectedValue = filterValues[filter.key] ?? \"\";\n const hasSelectedOption = filter.options.some((option) => option.value === selectedValue);\n const selectValue =\n selectedValue === \"\"\n ? hasEmptyOption\n ? emptyOptionValue\n : undefined\n : hasSelectedOption\n ? selectedValue\n : undefined;\n\n return (\n <div key={filter.key} className=\"tdp-search__filter-wrapper\">\n <label className=\"tdp-search__filter-label\">{filter.label}</label>\n <Select\n value={selectValue}\n onValueChange={(value) => onFilterChange(filter.key, value === emptyOptionValue ? \"\" : value)}\n >\n <SelectTrigger className=\"h-[38px] w-full justify-between rounded-md\">\n <SelectValue placeholder=\"Select an option\" />\n </SelectTrigger>\n <SelectContent>\n {filter.options.map((option) => (\n <SelectItem\n key={`${filter.key}-${option.value || emptyOptionValue}`}\n value={option.value === \"\" ? emptyOptionValue : option.value}\n disabled={option.disabled}\n >\n {option.label}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n </div>\n );\n })}\n </div>\n);\n"],"names":["EMPTY_OPTION_SENTINEL_PREFIX","getEmptyOptionValue","filterKey","DefaultFilters","filters","filterValues","onFilterChange","jsx","filter","emptyOptionValue","hasEmptyOption","option","selectedValue","hasSelectedOption","selectValue","jsxs","Select","value","SelectTrigger","SelectValue","SelectContent","SelectItem"],"mappings":";;AAYA,MAAMA,IAA+B,wBAE/BC,IAAsB,CAACC,MAAsB,GAAGF,CAA4B,IAAIE,CAAS,IAElFC,IAAkD,CAAC,EAAE,SAAAC,GAAS,cAAAC,GAAc,gBAAAC,EAAA,MACvF,gBAAAC,EAAC,OAAA,EAAI,WAAU,2BACZ,UAAAH,EAAQ,IAAI,CAACI,MAAW;AACvB,QAAMC,IAAmBR,EAAoBO,EAAO,GAAG,GACjDE,IAAiBF,EAAO,QAAQ,KAAK,CAACG,MAAWA,EAAO,UAAU,EAAE,GACpEC,IAAgBP,EAAaG,EAAO,GAAG,KAAK,IAC5CK,IAAoBL,EAAO,QAAQ,KAAK,CAACG,MAAWA,EAAO,UAAUC,CAAa,GAClFE,IACJF,MAAkB,KACdF,IACED,IACA,SACFI,IACED,IACA;AAER,SACE,gBAAAG,EAAC,OAAA,EAAqB,WAAU,8BAC9B,UAAA;AAAA,IAAA,gBAAAR,EAAC,SAAA,EAAM,WAAU,4BAA4B,UAAAC,EAAO,OAAM;AAAA,IAC1D,gBAAAO;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,OAAOF;AAAA,QACP,eAAe,CAACG,MAAUX,EAAeE,EAAO,KAAKS,MAAUR,IAAmB,KAAKQ,CAAK;AAAA,QAE5F,UAAA;AAAA,UAAA,gBAAAV,EAACW,
|
|
1
|
+
{"version":3,"file":"DefaultFilters.js","sources":["../../../../../src/components/composed/TdpSearch/components/DefaultFilters.tsx"],"sourcesContent":["import React from \"react\";\n\nimport type { TdpFiltersRenderProps } from \"../types\";\n\nimport {\n Select,\n SelectContent,\n SelectItem,\n SelectTrigger,\n SelectValue,\n} from \"@/components/ui/select\";\n\nconst EMPTY_OPTION_SENTINEL_PREFIX = \"__tdp-search-empty__\";\n\nconst getEmptyOptionValue = (filterKey: string) => `${EMPTY_OPTION_SENTINEL_PREFIX}:${filterKey}`;\n\nexport const DefaultFilters: React.FC<TdpFiltersRenderProps> = ({ filters, filterValues, onFilterChange }) => (\n <div className=\"tdp-search__filters-row\">\n {filters.map((filter) => {\n const emptyOptionValue = getEmptyOptionValue(filter.key);\n const hasEmptyOption = filter.options.some((option) => option.value === \"\");\n const selectedValue = filterValues[filter.key] ?? \"\";\n const hasSelectedOption = filter.options.some((option) => option.value === selectedValue);\n const selectValue =\n selectedValue === \"\"\n ? hasEmptyOption\n ? emptyOptionValue\n : undefined\n : hasSelectedOption\n ? selectedValue\n : undefined;\n\n return (\n <div key={filter.key} className=\"tdp-search__filter-wrapper\">\n <label className=\"tdp-search__filter-label\">{filter.label}</label>\n <Select\n value={selectValue}\n onValueChange={(value) => onFilterChange(filter.key, value === emptyOptionValue ? \"\" : value)}\n >\n <SelectTrigger aria-label={filter.label} className=\"h-[38px] w-full justify-between rounded-md\">\n <SelectValue placeholder=\"Select an option\" />\n </SelectTrigger>\n <SelectContent>\n {filter.options.map((option) => (\n <SelectItem\n key={`${filter.key}-${option.value || emptyOptionValue}`}\n value={option.value === \"\" ? emptyOptionValue : option.value}\n disabled={option.disabled}\n >\n {option.label}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n </div>\n );\n })}\n </div>\n);\n"],"names":["EMPTY_OPTION_SENTINEL_PREFIX","getEmptyOptionValue","filterKey","DefaultFilters","filters","filterValues","onFilterChange","jsx","filter","emptyOptionValue","hasEmptyOption","option","selectedValue","hasSelectedOption","selectValue","jsxs","Select","value","SelectTrigger","SelectValue","SelectContent","SelectItem"],"mappings":";;AAYA,MAAMA,IAA+B,wBAE/BC,IAAsB,CAACC,MAAsB,GAAGF,CAA4B,IAAIE,CAAS,IAElFC,IAAkD,CAAC,EAAE,SAAAC,GAAS,cAAAC,GAAc,gBAAAC,EAAA,MACvF,gBAAAC,EAAC,OAAA,EAAI,WAAU,2BACZ,UAAAH,EAAQ,IAAI,CAACI,MAAW;AACvB,QAAMC,IAAmBR,EAAoBO,EAAO,GAAG,GACjDE,IAAiBF,EAAO,QAAQ,KAAK,CAACG,MAAWA,EAAO,UAAU,EAAE,GACpEC,IAAgBP,EAAaG,EAAO,GAAG,KAAK,IAC5CK,IAAoBL,EAAO,QAAQ,KAAK,CAACG,MAAWA,EAAO,UAAUC,CAAa,GAClFE,IACJF,MAAkB,KACdF,IACED,IACA,SACFI,IACED,IACA;AAER,SACE,gBAAAG,EAAC,OAAA,EAAqB,WAAU,8BAC9B,UAAA;AAAA,IAAA,gBAAAR,EAAC,SAAA,EAAM,WAAU,4BAA4B,UAAAC,EAAO,OAAM;AAAA,IAC1D,gBAAAO;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,OAAOF;AAAA,QACP,eAAe,CAACG,MAAUX,EAAeE,EAAO,KAAKS,MAAUR,IAAmB,KAAKQ,CAAK;AAAA,QAE5F,UAAA;AAAA,UAAA,gBAAAV,EAACW,GAAA,EAAc,cAAYV,EAAO,OAAO,WAAU,8CACjD,UAAA,gBAAAD,EAACY,GAAA,EAAY,aAAY,mBAAA,CAAmB,EAAA,CAC9C;AAAA,4BACCC,GAAA,EACE,UAAAZ,EAAO,QAAQ,IAAI,CAACG,MACnB,gBAAAJ;AAAA,YAACc;AAAA,YAAA;AAAA,cAEC,OAAOV,EAAO,UAAU,KAAKF,IAAmBE,EAAO;AAAA,cACvD,UAAUA,EAAO;AAAA,cAEhB,UAAAA,EAAO;AAAA,YAAA;AAAA,YAJH,GAAGH,EAAO,GAAG,IAAIG,EAAO,SAASF,CAAgB;AAAA,UAAA,CAMzD,EAAA,CACH;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EACF,EAAA,GApBQD,EAAO,GAqBjB;AAEJ,CAAC,EAAA,CACH;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),d=require("lucide-react"),x=require("react"),j=require("
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),d=require("lucide-react"),x=require("react"),j=require("../../../../ui/button.cjs"),a=require("../../../../ui/table.cjs"),y=({results:v,total:c,currentPage:i,pageSize:o,columns:p,onPageChange:b,sortKey:u,sortDirection:h,onSort:f})=>{const n=x.useMemo(()=>Math.max(1,Math.ceil(c/o)),[c,o]),N=x.useMemo(()=>{const e=[];if(n<=5)for(let t=1;t<=n;t++)e.push(t);else{e.push(1),i>3&&e.push("...");const t=Math.max(2,i-1),m=Math.min(n-1,i+1);for(let r=t;r<=m;r++)e.push(r);i<n-2&&e.push("..."),e.push(n)}return e},[n,i]),k=x.useCallback(e=>{f(e,u===e&&h==="asc"?"desc":"asc")},[u,h,f]),w=x.useCallback(e=>u!==e?s.jsx(d.ArrowUpDown,{className:"ml-1 inline size-3.5 text-muted-foreground"}):h==="asc"?s.jsx(d.ArrowUp,{className:"ml-1 inline size-3.5"}):s.jsx(d.ArrowDown,{className:"ml-1 inline size-3.5"}),[u,h]);return s.jsxs(s.Fragment,{children:[s.jsx("div",{className:"tdp-search__results-header",children:s.jsxs("div",{className:"tdp-search__results-count",children:["Showing ",(i-1)*o+1,"-",Math.min(i*o,c)," of ",c," results"]})}),s.jsx("div",{className:"rounded-lg border",children:s.jsxs(a.Table,{children:[s.jsx(a.TableHeader,{children:s.jsx(a.TableRow,{children:p.map(e=>s.jsxs(a.TableHead,{style:{width:e.width,textAlign:e.align},className:e.sortable?"cursor-pointer select-none":void 0,onClick:e.sortable?()=>k(e.key):void 0,children:[e.header,e.sortable&&w(e.key)]},e.key))})}),s.jsx(a.TableBody,{children:v.map((e,l)=>s.jsx(a.TableRow,{children:p.map(t=>{const m=e[t.key],r=t.render?t.render(m,e,l):m;return s.jsx(a.TableCell,{style:{textAlign:t.align},children:r},t.key)})},e.id||l))})]})}),n>1&&s.jsxs("div",{className:"flex items-center justify-center gap-2 py-2.5",children:[s.jsx(j.Button,{variant:"outline",size:"icon-sm",disabled:i===1,onClick:()=>b(i-1),"aria-label":"Previous page",children:s.jsx(d.ChevronLeft,{})}),N.map((e,l)=>typeof e=="number"?s.jsx(j.Button,{variant:e===i?"default":"ghost",size:"icon-sm",onClick:()=>b(e),children:e},l):s.jsx("span",{className:"px-1 text-sm text-muted-foreground",children:e},l)),s.jsx(j.Button,{variant:"outline",size:"icon-sm",disabled:i===n,onClick:()=>b(i+1),"aria-label":"Next page",children:s.jsx(d.ChevronRight,{})})]})]})};exports.DefaultResults=y;
|
|
2
2
|
//# sourceMappingURL=DefaultResults.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DefaultResults.cjs","sources":["../../../../../src/components/composed/TdpSearch/components/DefaultResults.tsx"],"sourcesContent":["import { ArrowDown, ArrowUp, ArrowUpDown, ChevronLeft, ChevronRight } from \"lucide-react\";\nimport React, { useCallback, useMemo } from \"react\";\n\nimport type { TdpResultsRenderProps } from \"../types\";\n\nimport { Button } from \"@/components/ui/button\";\nimport {\n Table,\n TableBody,\n TableCell,\n TableHead,\n TableHeader,\n TableRow,\n} from \"@/components/ui/table\";\n\nexport const DefaultResults: React.FC<TdpResultsRenderProps> = ({\n results,\n total,\n currentPage,\n pageSize,\n columns,\n onPageChange,\n sortKey,\n sortDirection,\n onSort,\n}) => {\n const totalPages = useMemo(() => Math.max(1, Math.ceil(total / pageSize)), [total, pageSize]);\n\n const pageNumbers = useMemo(() => {\n const pages: (number | string)[] = [];\n const maxVisible = 5;\n\n if (totalPages <= maxVisible) {\n for (let i = 1; i <= totalPages; i++) pages.push(i);\n } else {\n pages.push(1);\n if (currentPage > 3) pages.push(\"...\");\n const start = Math.max(2, currentPage - 1);\n const end = Math.min(totalPages - 1, currentPage + 1);\n for (let i = start; i <= end; i++) pages.push(i);\n if (currentPage < totalPages - 2) pages.push(\"...\");\n pages.push(totalPages);\n }\n\n return pages;\n }, [totalPages, currentPage]);\n\n const handleSort = useCallback(\n (key: string) => {\n const newDirection = sortKey === key ? (sortDirection === \"asc\" ? \"desc\" : \"asc\") : \"asc\";\n onSort(key, newDirection);\n },\n [sortKey, sortDirection, onSort],\n );\n\n const sortIcon = useCallback(\n (columnKey: string) => {\n if (sortKey !== columnKey) return <ArrowUpDown className=\"ml-1 inline size-3.5 text-muted-foreground\" />;\n return sortDirection === \"asc\" ? (\n <ArrowUp className=\"ml-1 inline size-3.5\" />\n ) : (\n <ArrowDown className=\"ml-1 inline size-3.5\" />\n );\n },\n [sortKey, sortDirection],\n );\n\n return (\n <>\n <div className=\"tdp-search__results-header\">\n <div className=\"tdp-search__results-count\">\n Showing {(currentPage - 1) * pageSize + 1}-{Math.min(currentPage * pageSize, total)} of {total} results\n </div>\n </div>\n\n <div className=\"rounded-lg border\">\n <Table>\n <TableHeader>\n <TableRow>\n {columns.map((col) => (\n <TableHead\n key={col.key}\n style={{ width: col.width, textAlign: col.align }}\n className={col.sortable ? \"cursor-pointer select-none\" : undefined}\n onClick={col.sortable ? () => handleSort(col.key) : undefined}\n >\n {col.header}\n {col.sortable && sortIcon(col.key)}\n </TableHead>\n ))}\n </TableRow>\n </TableHeader>\n\n <TableBody>\n {results.map((row, rowIndex) => (\n <TableRow key={row.id || rowIndex}>\n {columns.map((col) => {\n const value = row[col.key];\n const content = col.render ? col.render(value, row, rowIndex) : value;\n return (\n <TableCell key={col.key} style={{ textAlign: col.align }}>\n {content}\n </TableCell>\n );\n })}\n </TableRow>\n ))}\n </TableBody>\n </Table>\n </div>\n\n {totalPages > 1 && (\n <div className=\"flex items-center justify-center gap-2 py-2.5\">\n <Button\n variant=\"outline\"\n size=\"icon-sm\"\n disabled={currentPage === 1}\n onClick={() => onPageChange(currentPage - 1)}\n aria-label=\"Previous page\"\n >\n <ChevronLeft />\n </Button>\n\n {pageNumbers.map((page, i) =>\n typeof page === \"number\" ? (\n <Button\n key={i}\n variant={page === currentPage ? \"default\" : \"ghost\"}\n size=\"icon-sm\"\n onClick={() => onPageChange(page)}\n >\n {page}\n </Button>\n ) : (\n <span key={i} className=\"px-1 text-sm text-muted-foreground\">\n {page}\n </span>\n ),\n )}\n\n <Button\n variant=\"outline\"\n size=\"icon-sm\"\n disabled={currentPage === totalPages}\n onClick={() => onPageChange(currentPage + 1)}\n aria-label=\"Next page\"\n >\n <ChevronRight />\n </Button>\n </div>\n )}\n </>\n );\n};\n"],"names":["DefaultResults","results","total","currentPage","pageSize","columns","onPageChange","sortKey","sortDirection","onSort","totalPages","useMemo","pageNumbers","pages","i","start","end","handleSort","useCallback","key","sortIcon","columnKey","jsx","ArrowUpDown","ArrowUp","ArrowDown","jsxs","Fragment","Table","TableHeader","TableRow","col","TableHead","TableBody","row","rowIndex","value","content","TableCell","Button","ChevronLeft","page","ChevronRight"],"mappings":"
|
|
1
|
+
{"version":3,"file":"DefaultResults.cjs","sources":["../../../../../src/components/composed/TdpSearch/components/DefaultResults.tsx"],"sourcesContent":["import { ArrowDown, ArrowUp, ArrowUpDown, ChevronLeft, ChevronRight } from \"lucide-react\";\nimport React, { useCallback, useMemo } from \"react\";\n\nimport type { TdpResultsRenderProps } from \"../types\";\n\nimport { Button } from \"@/components/ui/button\";\nimport {\n Table,\n TableBody,\n TableCell,\n TableHead,\n TableHeader,\n TableRow,\n} from \"@/components/ui/table\";\n\nexport const DefaultResults: React.FC<TdpResultsRenderProps> = ({\n results,\n total,\n currentPage,\n pageSize,\n columns,\n onPageChange,\n sortKey,\n sortDirection,\n onSort,\n}) => {\n const totalPages = useMemo(() => Math.max(1, Math.ceil(total / pageSize)), [total, pageSize]);\n\n const pageNumbers = useMemo(() => {\n const pages: (number | string)[] = [];\n const maxVisible = 5;\n\n if (totalPages <= maxVisible) {\n for (let i = 1; i <= totalPages; i++) pages.push(i);\n } else {\n pages.push(1);\n if (currentPage > 3) pages.push(\"...\");\n const start = Math.max(2, currentPage - 1);\n const end = Math.min(totalPages - 1, currentPage + 1);\n for (let i = start; i <= end; i++) pages.push(i);\n if (currentPage < totalPages - 2) pages.push(\"...\");\n pages.push(totalPages);\n }\n\n return pages;\n }, [totalPages, currentPage]);\n\n const handleSort = useCallback(\n (key: string) => {\n const newDirection = sortKey === key ? (sortDirection === \"asc\" ? \"desc\" : \"asc\") : \"asc\";\n onSort(key, newDirection);\n },\n [sortKey, sortDirection, onSort],\n );\n\n const sortIcon = useCallback(\n (columnKey: string) => {\n if (sortKey !== columnKey) return <ArrowUpDown className=\"ml-1 inline size-3.5 text-muted-foreground\" />;\n return sortDirection === \"asc\" ? (\n <ArrowUp className=\"ml-1 inline size-3.5\" />\n ) : (\n <ArrowDown className=\"ml-1 inline size-3.5\" />\n );\n },\n [sortKey, sortDirection],\n );\n\n return (\n <>\n <div className=\"tdp-search__results-header\">\n <div className=\"tdp-search__results-count\">\n Showing {(currentPage - 1) * pageSize + 1}-{Math.min(currentPage * pageSize, total)} of {total} results\n </div>\n </div>\n\n <div className=\"rounded-lg border\">\n <Table>\n <TableHeader>\n <TableRow>\n {columns.map((col) => (\n <TableHead\n key={col.key}\n style={{ width: col.width, textAlign: col.align }}\n className={col.sortable ? \"cursor-pointer select-none\" : undefined}\n onClick={col.sortable ? () => handleSort(col.key) : undefined}\n >\n {col.header}\n {col.sortable && sortIcon(col.key)}\n </TableHead>\n ))}\n </TableRow>\n </TableHeader>\n\n <TableBody>\n {results.map((row, rowIndex) => (\n <TableRow key={row.id || rowIndex}>\n {columns.map((col) => {\n const value = row[col.key];\n const content = col.render ? col.render(value, row, rowIndex) : value;\n return (\n <TableCell key={col.key} style={{ textAlign: col.align }}>\n {content}\n </TableCell>\n );\n })}\n </TableRow>\n ))}\n </TableBody>\n </Table>\n </div>\n\n {totalPages > 1 && (\n <div className=\"flex items-center justify-center gap-2 py-2.5\">\n <Button\n variant=\"outline\"\n size=\"icon-sm\"\n disabled={currentPage === 1}\n onClick={() => onPageChange(currentPage - 1)}\n aria-label=\"Previous page\"\n >\n <ChevronLeft />\n </Button>\n\n {pageNumbers.map((page, i) =>\n typeof page === \"number\" ? (\n <Button\n key={i}\n variant={page === currentPage ? \"default\" : \"ghost\"}\n size=\"icon-sm\"\n onClick={() => onPageChange(page)}\n >\n {page}\n </Button>\n ) : (\n <span key={i} className=\"px-1 text-sm text-muted-foreground\">\n {page}\n </span>\n ),\n )}\n\n <Button\n variant=\"outline\"\n size=\"icon-sm\"\n disabled={currentPage === totalPages}\n onClick={() => onPageChange(currentPage + 1)}\n aria-label=\"Next page\"\n >\n <ChevronRight />\n </Button>\n </div>\n )}\n </>\n );\n};\n"],"names":["DefaultResults","results","total","currentPage","pageSize","columns","onPageChange","sortKey","sortDirection","onSort","totalPages","useMemo","pageNumbers","pages","i","start","end","handleSort","useCallback","key","sortIcon","columnKey","jsx","ArrowUpDown","ArrowUp","ArrowDown","jsxs","Fragment","Table","TableHeader","TableRow","col","TableHead","TableBody","row","rowIndex","value","content","TableCell","Button","ChevronLeft","page","ChevronRight"],"mappings":"+OAeaA,EAAkD,CAAC,CAC9D,QAAAC,EACA,MAAAC,EACA,YAAAC,EACA,SAAAC,EACA,QAAAC,EACA,aAAAC,EACA,QAAAC,EACA,cAAAC,EACA,OAAAC,CACF,IAAM,CACJ,MAAMC,EAAaC,EAAAA,QAAQ,IAAM,KAAK,IAAI,EAAG,KAAK,KAAKT,EAAQE,CAAQ,CAAC,EAAG,CAACF,EAAOE,CAAQ,CAAC,EAEtFQ,EAAcD,EAAAA,QAAQ,IAAM,CAChC,MAAME,EAA6B,CAAA,EAGnC,GAAIH,GAAc,EAChB,QAASI,EAAI,EAAGA,GAAKJ,EAAYI,IAAKD,EAAM,KAAKC,CAAC,MAC7C,CACLD,EAAM,KAAK,CAAC,EACRV,EAAc,GAAGU,EAAM,KAAK,KAAK,EACrC,MAAME,EAAQ,KAAK,IAAI,EAAGZ,EAAc,CAAC,EACnCa,EAAM,KAAK,IAAIN,EAAa,EAAGP,EAAc,CAAC,EACpD,QAASW,EAAIC,EAAOD,GAAKE,EAAKF,IAAKD,EAAM,KAAKC,CAAC,EAC3CX,EAAcO,EAAa,GAAGG,EAAM,KAAK,KAAK,EAClDA,EAAM,KAAKH,CAAU,CACvB,CAEA,OAAOG,CACT,EAAG,CAACH,EAAYP,CAAW,CAAC,EAEtBc,EAAaC,EAAAA,YAChBC,GAAgB,CAEfV,EAAOU,EADcZ,IAAYY,GAAOX,IAAkB,MAAQ,OAAkB,KAC5D,CAC1B,EACA,CAACD,EAASC,EAAeC,CAAM,CAAA,EAG3BW,EAAWF,EAAAA,YACdG,GACKd,IAAYc,EAAkBC,EAAAA,IAACC,EAAAA,YAAA,CAAY,UAAU,6CAA6C,EAC/Ff,IAAkB,MACvBc,MAACE,EAAAA,QAAA,CAAQ,UAAU,uBAAuB,EAE1CF,EAAAA,IAACG,EAAAA,UAAA,CAAU,UAAU,sBAAA,CAAuB,EAGhD,CAAClB,EAASC,CAAa,CAAA,EAGzB,OACEkB,EAAAA,KAAAC,WAAA,CACE,SAAA,CAAAL,EAAAA,IAAC,OAAI,UAAU,6BACb,SAAAI,EAAAA,KAAC,MAAA,CAAI,UAAU,4BAA4B,SAAA,CAAA,YAC/BvB,EAAc,GAAKC,EAAW,EAAE,IAAE,KAAK,IAAID,EAAcC,EAAUF,CAAK,EAAE,OAAKA,EAAM,UAAA,CAAA,CACjG,CAAA,CACF,EAEAoB,MAAC,MAAA,CAAI,UAAU,oBACb,gBAACM,QAAA,CACC,SAAA,CAAAN,EAAAA,IAACO,EAAAA,aACC,SAAAP,MAACQ,EAAAA,SAAA,CACE,SAAAzB,EAAQ,IAAK0B,GACZL,EAAAA,KAACM,EAAAA,UAAA,CAEC,MAAO,CAAE,MAAOD,EAAI,MAAO,UAAWA,EAAI,KAAA,EAC1C,UAAWA,EAAI,SAAW,6BAA+B,OACzD,QAASA,EAAI,SAAW,IAAMd,EAAWc,EAAI,GAAG,EAAI,OAEnD,SAAA,CAAAA,EAAI,OACJA,EAAI,UAAYX,EAASW,EAAI,GAAG,CAAA,CAAA,EAN5BA,EAAI,GAAA,CAQZ,EACH,CAAA,CACF,EAEAT,EAAAA,IAACW,EAAAA,UAAA,CACE,SAAAhC,EAAQ,IAAI,CAACiC,EAAKC,IACjBb,EAAAA,IAACQ,EAAAA,SAAA,CACE,SAAAzB,EAAQ,IAAK0B,GAAQ,CACpB,MAAMK,EAAQF,EAAIH,EAAI,GAAG,EACnBM,EAAUN,EAAI,OAASA,EAAI,OAAOK,EAAOF,EAAKC,CAAQ,EAAIC,EAChE,OACEd,EAAAA,IAACgB,EAAAA,UAAA,CAAwB,MAAO,CAAE,UAAWP,EAAI,KAAA,EAC9C,SAAAM,GADaN,EAAI,GAEpB,CAEJ,CAAC,CAAA,EATYG,EAAI,IAAMC,CAUzB,CACD,CAAA,CACH,CAAA,CAAA,CACF,CAAA,CACF,EAECzB,EAAa,GACZgB,OAAC,MAAA,CAAI,UAAU,gDACb,SAAA,CAAAJ,EAAAA,IAACiB,EAAAA,OAAA,CACC,QAAQ,UACR,KAAK,UACL,SAAUpC,IAAgB,EAC1B,QAAS,IAAMG,EAAaH,EAAc,CAAC,EAC3C,aAAW,gBAEX,eAACqC,EAAAA,YAAA,CAAA,CAAY,CAAA,CAAA,EAGd5B,EAAY,IAAI,CAAC6B,EAAM3B,IACtB,OAAO2B,GAAS,SACdnB,EAAAA,IAACiB,EAAAA,OAAA,CAEC,QAASE,IAAStC,EAAc,UAAY,QAC5C,KAAK,UACL,QAAS,IAAMG,EAAamC,CAAI,EAE/B,SAAAA,CAAA,EALI3B,CAAA,EAQPQ,EAAAA,IAAC,OAAA,CAAa,UAAU,qCACrB,YADQR,CAEX,CAAA,EAIJQ,EAAAA,IAACiB,EAAAA,OAAA,CACC,QAAQ,UACR,KAAK,UACL,SAAUpC,IAAgBO,EAC1B,QAAS,IAAMJ,EAAaH,EAAc,CAAC,EAC3C,aAAW,YAEX,eAACuC,EAAAA,aAAA,CAAA,CAAa,CAAA,CAAA,CAChB,CAAA,CACF,CAAA,EAEJ,CAEJ"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { jsx as s, jsxs as r, Fragment as M } from "react/jsx-runtime";
|
|
2
2
|
import { ArrowUpDown as T, ArrowUp as A, ArrowDown as _, ChevronLeft as j, ChevronRight as z } from "lucide-react";
|
|
3
3
|
import { useMemo as x, useCallback as v } from "react";
|
|
4
|
-
import { Button as u } from "
|
|
5
|
-
import { Table as R, TableHeader as B, TableRow as N, TableHead as D, TableBody as H, TableCell as U } from "
|
|
4
|
+
import { Button as u } from "../../../../ui/button.js";
|
|
5
|
+
import { Table as R, TableHeader as B, TableRow as N, TableHead as D, TableBody as H, TableCell as U } from "../../../../ui/table.js";
|
|
6
6
|
const G = ({
|
|
7
7
|
results: k,
|
|
8
8
|
total: d,
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),l=require("lucide-react"),u=require("
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),l=require("lucide-react"),u=require("../../../../ui/button.cjs"),o=require("../../../../ui/input.cjs"),d=({query:r,setQuery:n,onSearch:a,isLoading:s,placeholder:c})=>{const i=t=>{t.key==="Enter"&&a()};return e.jsxs("div",{className:"tdp-search__search-bar",children:[e.jsx("div",{className:"tdp-search__search-input-wrapper",children:e.jsxs("div",{className:"relative",children:[e.jsx("div",{className:"pointer-events-none absolute inset-y-0 left-0 flex items-center pl-2.5 text-muted-foreground",children:e.jsx(l.Search,{})}),e.jsx(o.Input,{value:r,onChange:t=>n(t.target.value),onKeyDown:i,placeholder:c,className:"pl-9"})]})}),e.jsx(u.Button,{variant:"default",onClick:a,disabled:!r.trim()||s,children:s?"Searching...":"Search"})]})};exports.DefaultSearchBar=d;
|
|
2
2
|
//# sourceMappingURL=DefaultSearchBar.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DefaultSearchBar.cjs","sources":["../../../../../src/components/composed/TdpSearch/components/DefaultSearchBar.tsx"],"sourcesContent":["import { Search } from \"lucide-react\";\nimport React from \"react\";\n\nimport type { TdpSearchBarRenderProps } from \"../types\";\n\nimport { Button } from \"@/components/ui/button\";\nimport { Input } from \"@/components/ui/input\";\n\n\nexport const DefaultSearchBar: React.FC<TdpSearchBarRenderProps> = ({\n query,\n setQuery,\n onSearch,\n isLoading,\n placeholder,\n}) => {\n const handleKeyDown = (e: React.KeyboardEvent) => {\n if (e.key === \"Enter\") {\n onSearch();\n }\n };\n\n return (\n <div className=\"tdp-search__search-bar\">\n <div className=\"tdp-search__search-input-wrapper\">\n <div className=\"relative\">\n <div className=\"pointer-events-none absolute inset-y-0 left-0 flex items-center pl-2.5 text-muted-foreground\">\n <Search />\n </div>\n <Input\n value={query}\n onChange={(e) => setQuery(e.target.value)}\n onKeyDown={handleKeyDown}\n placeholder={placeholder}\n className=\"pl-9\"\n />\n </div>\n </div>\n <Button variant=\"default\" onClick={onSearch} disabled={!query.trim() || isLoading}>\n {isLoading ? \"Searching...\" : \"Search\"}\n </Button>\n </div>\n );\n};\n"],"names":["DefaultSearchBar","query","setQuery","onSearch","isLoading","placeholder","handleKeyDown","e","jsxs","jsx","Search","Input","Button"],"mappings":"
|
|
1
|
+
{"version":3,"file":"DefaultSearchBar.cjs","sources":["../../../../../src/components/composed/TdpSearch/components/DefaultSearchBar.tsx"],"sourcesContent":["import { Search } from \"lucide-react\";\nimport React from \"react\";\n\nimport type { TdpSearchBarRenderProps } from \"../types\";\n\nimport { Button } from \"@/components/ui/button\";\nimport { Input } from \"@/components/ui/input\";\n\n\nexport const DefaultSearchBar: React.FC<TdpSearchBarRenderProps> = ({\n query,\n setQuery,\n onSearch,\n isLoading,\n placeholder,\n}) => {\n const handleKeyDown = (e: React.KeyboardEvent) => {\n if (e.key === \"Enter\") {\n onSearch();\n }\n };\n\n return (\n <div className=\"tdp-search__search-bar\">\n <div className=\"tdp-search__search-input-wrapper\">\n <div className=\"relative\">\n <div className=\"pointer-events-none absolute inset-y-0 left-0 flex items-center pl-2.5 text-muted-foreground\">\n <Search />\n </div>\n <Input\n value={query}\n onChange={(e) => setQuery(e.target.value)}\n onKeyDown={handleKeyDown}\n placeholder={placeholder}\n className=\"pl-9\"\n />\n </div>\n </div>\n <Button variant=\"default\" onClick={onSearch} disabled={!query.trim() || isLoading}>\n {isLoading ? \"Searching...\" : \"Search\"}\n </Button>\n </div>\n );\n};\n"],"names":["DefaultSearchBar","query","setQuery","onSearch","isLoading","placeholder","handleKeyDown","e","jsxs","jsx","Search","Input","Button"],"mappings":"4NASaA,EAAsD,CAAC,CAClE,MAAAC,EACA,SAAAC,EACA,SAAAC,EACA,UAAAC,EACA,YAAAC,CACF,IAAM,CACJ,MAAMC,EAAiBC,GAA2B,CAC5CA,EAAE,MAAQ,SACZJ,EAAA,CAEJ,EAEA,OACEK,EAAAA,KAAC,MAAA,CAAI,UAAU,yBACb,SAAA,CAAAC,EAAAA,IAAC,OAAI,UAAU,mCACb,SAAAD,EAAAA,KAAC,MAAA,CAAI,UAAU,WACb,SAAA,CAAAC,MAAC,MAAA,CAAI,UAAU,+FACb,SAAAA,MAACC,EAAAA,SAAO,EACV,EACAD,EAAAA,IAACE,EAAAA,MAAA,CACC,MAAOV,EACP,SAAWM,GAAML,EAASK,EAAE,OAAO,KAAK,EACxC,UAAWD,EACX,YAAAD,EACA,UAAU,MAAA,CAAA,CACZ,CAAA,CACF,CAAA,CACF,EACAI,EAAAA,IAACG,EAAAA,OAAA,CAAO,QAAQ,UAAU,QAAST,EAAU,SAAU,CAACF,EAAM,KAAA,GAAUG,EACrE,SAAAA,EAAY,eAAiB,QAAA,CAChC,CAAA,EACF,CAEJ"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsxs as l, jsx as e } from "react/jsx-runtime";
|
|
2
2
|
import { Search as c } from "lucide-react";
|
|
3
|
-
import { Button as o } from "
|
|
4
|
-
import { Input as d } from "
|
|
3
|
+
import { Button as o } from "../../../../ui/button.js";
|
|
4
|
+
import { Input as d } from "../../../../ui/input.js";
|
|
5
5
|
const v = ({
|
|
6
6
|
query: a,
|
|
7
7
|
setQuery: s,
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Resolves TDP auth credentials with the following priority:
|
|
3
|
+
* 1. Explicitly passed props
|
|
4
|
+
* 2. localStorage
|
|
5
|
+
* 3. Browser cookies
|
|
6
|
+
*/
|
|
7
|
+
export interface TdpCredentials {
|
|
8
|
+
authToken: string | undefined;
|
|
9
|
+
orgSlug: string | undefined;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Resolves TDP auth credentials from explicit props → localStorage → cookies
|
|
13
|
+
*/
|
|
14
|
+
export declare function useTdpCredentials(explicitToken?: string, explicitOrgSlug?: string): TdpCredentials;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { TdpSearch, default } from './TdpSearch';
|
|
2
|
+
export { useSearch } from './hooks/useSearch';
|
|
3
|
+
export type { TdpSearchProps, TdpSearchConfig, TdpSearchColumn, TdpSearchFilter, TdpSearchSort, SearchResult, TdpSearchBarRenderProps, TdpFiltersRenderProps, TdpResultsRenderProps, UseSearchConfig, UseSearchResult, } from './types';
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import { SearchEqlRequest } from '@tetrascience-npm/ts-connectors-sdk';
|
|
2
|
+
import { default as React } from 'react';
|
|
3
|
+
/** Transformed search result (flattened from Elasticsearch hit format) */
|
|
4
|
+
interface SearchResult {
|
|
5
|
+
id: string;
|
|
6
|
+
_score?: number | null;
|
|
7
|
+
[key: string]: any;
|
|
8
|
+
}
|
|
9
|
+
/** Configuration for a search filter */
|
|
10
|
+
interface TdpSearchFilter {
|
|
11
|
+
key: string;
|
|
12
|
+
label: string;
|
|
13
|
+
options: {
|
|
14
|
+
value: string;
|
|
15
|
+
label: string;
|
|
16
|
+
disabled: boolean;
|
|
17
|
+
}[];
|
|
18
|
+
}
|
|
19
|
+
/** Search expression for complex queries (matches SDK SearchEqlExpression) */
|
|
20
|
+
interface SearchEqlExpression {
|
|
21
|
+
g: "AND" | "OR";
|
|
22
|
+
e: Array<{
|
|
23
|
+
field?: string;
|
|
24
|
+
operator?: string;
|
|
25
|
+
value?: any;
|
|
26
|
+
g?: "AND" | "OR";
|
|
27
|
+
e?: SearchEqlExpression["e"];
|
|
28
|
+
}>;
|
|
29
|
+
}
|
|
30
|
+
/** Configuration for column display */
|
|
31
|
+
interface TdpSearchColumn {
|
|
32
|
+
key: string;
|
|
33
|
+
header: string;
|
|
34
|
+
sortable?: boolean;
|
|
35
|
+
width?: string;
|
|
36
|
+
align?: "left" | "center" | "right";
|
|
37
|
+
render?: (value: any, row: SearchResult, index: number) => React.ReactNode;
|
|
38
|
+
}
|
|
39
|
+
/** Sort configuration */
|
|
40
|
+
interface TdpSearchSort {
|
|
41
|
+
field: string;
|
|
42
|
+
order: "asc" | "desc";
|
|
43
|
+
}
|
|
44
|
+
/** Props passed to the renderSearchBar render prop */
|
|
45
|
+
interface TdpSearchBarRenderProps {
|
|
46
|
+
query: string;
|
|
47
|
+
setQuery: (query: string) => void;
|
|
48
|
+
onSearch: () => void;
|
|
49
|
+
isLoading: boolean;
|
|
50
|
+
placeholder: string;
|
|
51
|
+
}
|
|
52
|
+
/** Props passed to the renderFilters render prop */
|
|
53
|
+
interface TdpFiltersRenderProps {
|
|
54
|
+
filters: TdpSearchFilter[];
|
|
55
|
+
filterValues: Record<string, string>;
|
|
56
|
+
onFilterChange: (key: string, value: string) => void;
|
|
57
|
+
}
|
|
58
|
+
/** Props passed to the renderResults render prop */
|
|
59
|
+
interface TdpResultsRenderProps {
|
|
60
|
+
results: SearchResult[];
|
|
61
|
+
total: number;
|
|
62
|
+
currentPage: number;
|
|
63
|
+
pageSize: number;
|
|
64
|
+
columns: TdpSearchColumn[];
|
|
65
|
+
onPageChange: (page: number) => void;
|
|
66
|
+
sortKey: string | null;
|
|
67
|
+
sortDirection: "asc" | "desc";
|
|
68
|
+
onSort: (key: string, direction: "asc" | "desc") => void;
|
|
69
|
+
}
|
|
70
|
+
/** Search connection configuration */
|
|
71
|
+
interface TdpSearchConfig {
|
|
72
|
+
/**
|
|
73
|
+
* When true, calls the TDP API directly from the browser
|
|
74
|
+
* When false/omitted, proxies the request through your backend `apiEndpoint`
|
|
75
|
+
*/
|
|
76
|
+
standalone?: boolean;
|
|
77
|
+
/** TDP API base URL (required when standalone is true) */
|
|
78
|
+
baseUrl?: string;
|
|
79
|
+
/** Backend API endpoint for search (used when standalone is false). Defaults to '/api/search' */
|
|
80
|
+
apiEndpoint?: string;
|
|
81
|
+
/** Common | authentication token */
|
|
82
|
+
authToken?: string;
|
|
83
|
+
/** Common | organization slug */
|
|
84
|
+
orgSlug?: string;
|
|
85
|
+
}
|
|
86
|
+
/** Common props shared by both search modes */
|
|
87
|
+
interface CommonTdpSearchProps {
|
|
88
|
+
/** Default search term (default query) */
|
|
89
|
+
defaultQuery?: string;
|
|
90
|
+
/** Display fields/columns for the results table */
|
|
91
|
+
columns: TdpSearchColumn[];
|
|
92
|
+
/** UI filters displayed as dropdowns (for user selection) */
|
|
93
|
+
filters?: TdpSearchFilter[];
|
|
94
|
+
/** Default sort configuration (sort options) */
|
|
95
|
+
defaultSort?: TdpSearchSort;
|
|
96
|
+
/**
|
|
97
|
+
* Additional search parameters to pass to the SDK's searchEql method.
|
|
98
|
+
* Allows customization of expression, selectedPipelineIds, selectedSourceTypes, etc.
|
|
99
|
+
*/
|
|
100
|
+
advancedSearchParams?: Partial<Omit<SearchEqlRequest, "searchTerm" | "from" | "size" | "sort" | "order">>;
|
|
101
|
+
/** Results per page. Defaults to 10 */
|
|
102
|
+
pageSize?: number;
|
|
103
|
+
/** Search input placeholder text */
|
|
104
|
+
searchPlaceholder?: string;
|
|
105
|
+
/** Custom CSS class */
|
|
106
|
+
className?: string;
|
|
107
|
+
/** Callback fired when search is executed with the query and results */
|
|
108
|
+
onSearch?: (query: SearchEqlRequest, results: SearchResult[]) => void;
|
|
109
|
+
/** Replace the entire search bar (input + button) */
|
|
110
|
+
renderSearchBar?: (props: TdpSearchBarRenderProps) => React.ReactNode;
|
|
111
|
+
/** Replace the filters row */
|
|
112
|
+
renderFilters?: (props: TdpFiltersRenderProps) => React.ReactNode;
|
|
113
|
+
/** Replace the results table (and pagination) */
|
|
114
|
+
renderResults?: (props: TdpResultsRenderProps) => React.ReactNode;
|
|
115
|
+
}
|
|
116
|
+
type TdpSearchProps = CommonTdpSearchProps & TdpSearchConfig;
|
|
117
|
+
type UseSearchConfig = {
|
|
118
|
+
pageSize: number;
|
|
119
|
+
} & TdpSearchConfig;
|
|
120
|
+
interface UseSearchResult {
|
|
121
|
+
results: SearchResult[];
|
|
122
|
+
total: number;
|
|
123
|
+
currentPage: number;
|
|
124
|
+
isLoading: boolean;
|
|
125
|
+
error: string | null;
|
|
126
|
+
executeSearch: (searchRequest: Omit<SearchEqlRequest, "from" | "size">, page?: number) => Promise<SearchResult[]>;
|
|
127
|
+
}
|
|
128
|
+
export type { TdpSearchConfig, CommonTdpSearchProps, TdpSearchFilter, TdpSearchColumn, TdpSearchSort, SearchResult, SearchEqlExpression, TdpSearchProps, TdpSearchBarRenderProps, TdpFiltersRenderProps, TdpResultsRenderProps, UseSearchConfig, UseSearchResult, };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { SearchEqlRequest } from '@tetrascience-npm/ts-connectors-sdk';
|
|
2
|
+
/** Build Elasticsearch-style body from SearchEqlRequest (TDP API does not accept searchTerm key). */
|
|
3
|
+
export declare const buildEsBody: (searchRequest: Omit<SearchEqlRequest, "from" | "size">, from: number, size: number) => Record<string, unknown>;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),c=require("class-variance-authority"),o=require("../../../lib/utils.cjs"),r=c.cva("flex items-center h-11 px-3 bg-sidebar border-b border-sidebar-border w-full gap-2 z-40",{variants:{sticky:{true:"sticky top-0",false:""}},defaultVariants:{sticky:!0}});function d({left:a,center:t,right:s,sticky:i,className:l,...n}){return e.jsxs("div",{"data-slot":"top-bar",className:o.cn(r({sticky:i}),l),...n,children:[e.jsx("div",{"data-slot":"top-bar-left",className:"flex items-center gap-2 flex-1 min-w-0",children:a}),t!=null&&e.jsx("div",{"data-slot":"top-bar-center",className:"flex items-center gap-2 shrink-0",children:t}),e.jsx("div",{"data-slot":"top-bar-right",className:"flex items-center gap-2 shrink-0 justify-end",children:s})]})}exports.TopBar=d;exports.topBarVariants=r;
|
|
2
|
+
//# sourceMappingURL=TopBar.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TopBar.cjs","sources":["../../../../src/components/composed/TopBar/TopBar.tsx"],"sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\";\nimport * as React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\n// =============================================================================\n// TopBar — sticky 3-slot header\n// =============================================================================\n\nconst topBarVariants = cva(\n \"flex items-center h-11 px-3 bg-sidebar border-b border-sidebar-border w-full gap-2 z-40\",\n {\n variants: {\n sticky: {\n true: \"sticky top-0\",\n false: \"\",\n },\n },\n defaultVariants: { sticky: true },\n }\n);\n\nexport interface TopBarProps\n extends Omit<React.ComponentProps<\"div\">, \"children\">,\n VariantProps<typeof topBarVariants> {\n /** Left slot — typically a breadcrumb. */\n left?: React.ReactNode;\n /**\n * Center \"context\" slot — e.g. a version/status selector. Only rendered when\n * provided; keeps the left/right columns balanced when present.\n */\n center?: React.ReactNode;\n /** Right slot — actions, help, user menu, etc. */\n right?: React.ReactNode;\n}\n\n/**\n * Sticky application header with three slots — left / center / right.\n *\n * - **left** is typically a breadcrumb, but any node can be slotted in.\n * - **center** is an optional \"context\" slot (e.g. a version/status selector).\n * - **right** holds actions, a help affordance, a `UserMenu`, etc.\n */\nfunction TopBar({ left, center, right, sticky, className, ...props }: TopBarProps) {\n return (\n <div\n data-slot=\"top-bar\"\n className={cn(topBarVariants({ sticky }), className)}\n {...props}\n >\n <div\n data-slot=\"top-bar-left\"\n className=\"flex items-center gap-2 flex-1 min-w-0\"\n >\n {left}\n </div>\n\n {center != null && (\n <div\n data-slot=\"top-bar-center\"\n className=\"flex items-center gap-2 shrink-0\"\n >\n {center}\n </div>\n )}\n\n <div\n data-slot=\"top-bar-right\"\n className=\"flex items-center gap-2 shrink-0 justify-end\"\n >\n {right}\n </div>\n </div>\n );\n}\n\nexport { TopBar, topBarVariants };\n"],"names":["topBarVariants","cva","TopBar","left","center","right","sticky","className","props","jsxs","cn","jsx"],"mappings":"+LASMA,EAAiBC,EAAAA,IACrB,0FACA,CACE,SAAU,CACR,OAAQ,CACN,KAAM,eACN,MAAO,EAAA,CACT,EAEF,gBAAiB,CAAE,OAAQ,EAAA,CAAK,CAEpC,EAuBA,SAASC,EAAO,CAAE,KAAAC,EAAM,OAAAC,EAAQ,MAAAC,EAAO,OAAAC,EAAQ,UAAAC,EAAW,GAAGC,GAAsB,CACjF,OACEC,EAAAA,KAAC,MAAA,CACC,YAAU,UACV,UAAWC,EAAAA,GAAGV,EAAe,CAAE,OAAAM,CAAA,CAAQ,EAAGC,CAAS,EAClD,GAAGC,EAEJ,SAAA,CAAAG,EAAAA,IAAC,MAAA,CACC,YAAU,eACV,UAAU,yCAET,SAAAR,CAAA,CAAA,EAGFC,GAAU,MACTO,EAAAA,IAAC,MAAA,CACC,YAAU,iBACV,UAAU,mCAET,SAAAP,CAAA,CAAA,EAILO,EAAAA,IAAC,MAAA,CACC,YAAU,gBACV,UAAU,+CAET,SAAAN,CAAA,CAAA,CACH,CAAA,CAAA,CAGN"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { VariantProps } from 'class-variance-authority';
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
declare const topBarVariants: (props?: ({
|
|
4
|
+
sticky?: boolean | null | undefined;
|
|
5
|
+
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
6
|
+
export interface TopBarProps extends Omit<React.ComponentProps<"div">, "children">, VariantProps<typeof topBarVariants> {
|
|
7
|
+
/** Left slot — typically a breadcrumb. */
|
|
8
|
+
left?: React.ReactNode;
|
|
9
|
+
/**
|
|
10
|
+
* Center "context" slot — e.g. a version/status selector. Only rendered when
|
|
11
|
+
* provided; keeps the left/right columns balanced when present.
|
|
12
|
+
*/
|
|
13
|
+
center?: React.ReactNode;
|
|
14
|
+
/** Right slot — actions, help, user menu, etc. */
|
|
15
|
+
right?: React.ReactNode;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Sticky application header with three slots — left / center / right.
|
|
19
|
+
*
|
|
20
|
+
* - **left** is typically a breadcrumb, but any node can be slotted in.
|
|
21
|
+
* - **center** is an optional "context" slot (e.g. a version/status selector).
|
|
22
|
+
* - **right** holds actions, a help affordance, a `UserMenu`, etc.
|
|
23
|
+
*/
|
|
24
|
+
declare function TopBar({ left, center, right, sticky, className, ...props }: TopBarProps): import("react/jsx-runtime").JSX.Element;
|
|
25
|
+
export { TopBar, topBarVariants };
|