@flikk/ui 1.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +1 -0
- package/dist/components/ai/ApprovalCard/ApprovalCard.d.ts +3 -0
- package/dist/components/ai/ApprovalCard/ApprovalCard.js +15 -0
- package/dist/components/ai/ApprovalCard/ApprovalCard.theme.d.ts +13 -0
- package/dist/components/ai/ApprovalCard/ApprovalCard.theme.js +15 -0
- package/dist/components/ai/ApprovalCard/ApprovalCard.types.d.ts +43 -0
- package/dist/components/ai/ApprovalCard/index.d.ts +2 -0
- package/dist/components/ai/CodeBlock/CodeBlock.d.ts +34 -0
- package/dist/components/ai/CodeBlock/CodeBlock.js +182 -0
- package/dist/components/ai/CodeBlock/CodeBlock.theme.d.ts +2 -0
- package/dist/components/ai/CodeBlock/CodeBlock.theme.js +17 -0
- package/dist/components/ai/CodeBlock/CodeBlock.types.d.ts +108 -0
- package/dist/components/ai/CodeBlock/LanguageIcon.d.ts +10 -0
- package/dist/components/ai/CodeBlock/LanguageIcon.js +55 -0
- package/dist/components/ai/CodeBlock/index.d.ts +3 -0
- package/dist/components/ai/MessageHistory/MessageHistory.d.ts +18 -0
- package/dist/components/ai/MessageHistory/MessageHistory.js +97 -0
- package/dist/components/ai/MessageHistory/MessageHistory.theme.d.ts +2 -0
- package/dist/components/ai/MessageHistory/MessageHistory.theme.js +8 -0
- package/dist/components/ai/MessageHistory/MessageHistory.types.d.ts +94 -0
- package/dist/components/ai/MessageHistory/index.d.ts +3 -0
- package/dist/components/ai/PromptInput/PromptInput.d.ts +24 -0
- package/dist/components/ai/PromptInput/PromptInput.js +446 -0
- package/dist/components/ai/PromptInput/PromptInput.theme.d.ts +2 -0
- package/dist/components/ai/PromptInput/PromptInput.theme.js +15 -0
- package/dist/components/ai/PromptInput/PromptInput.types.d.ts +219 -0
- package/dist/components/ai/PromptInput/index.d.ts +3 -0
- package/dist/components/ai/PromptSuggestions/PromptSuggestion.d.ts +27 -0
- package/dist/components/ai/PromptSuggestions/PromptSuggestion.js +61 -0
- package/dist/components/ai/PromptSuggestions/PromptSuggestion.theme.d.ts +10 -0
- package/dist/components/ai/PromptSuggestions/PromptSuggestion.theme.js +12 -0
- package/dist/components/ai/PromptSuggestions/PromptSuggestion.types.d.ts +53 -0
- package/dist/components/ai/PromptSuggestions/index.d.ts +4 -0
- package/dist/components/ai/StreamingResponse/AnimatedText.d.ts +24 -0
- package/dist/components/ai/StreamingResponse/AnimatedText.js +46 -0
- package/dist/components/ai/StreamingResponse/ErrorDisplay.d.ts +23 -0
- package/dist/components/ai/StreamingResponse/ErrorDisplay.js +35 -0
- package/dist/components/ai/StreamingResponse/MarkdownRenderer.d.ts +25 -0
- package/dist/components/ai/StreamingResponse/MarkdownRenderer.js +135 -0
- package/dist/components/ai/StreamingResponse/StreamingCursor.d.ts +21 -0
- package/dist/components/ai/StreamingResponse/StreamingCursor.js +21 -0
- package/dist/components/ai/StreamingResponse/StreamingResponse.animations.d.ts +26 -0
- package/dist/components/ai/StreamingResponse/StreamingResponse.animations.js +68 -0
- package/dist/components/ai/StreamingResponse/StreamingResponse.d.ts +25 -0
- package/dist/components/ai/StreamingResponse/StreamingResponse.js +87 -0
- package/dist/components/ai/StreamingResponse/StreamingResponse.theme.d.ts +2 -0
- package/dist/components/ai/StreamingResponse/StreamingResponse.theme.js +10 -0
- package/dist/components/ai/StreamingResponse/StreamingResponse.types.d.ts +105 -0
- package/dist/components/ai/StreamingResponse/index.d.ts +15 -0
- package/dist/components/ai/ThinkingIndicator/ThinkingIndicator.animations.d.ts +10 -0
- package/dist/components/ai/ThinkingIndicator/ThinkingIndicator.animations.js +47 -0
- package/dist/components/ai/ThinkingIndicator/ThinkingIndicator.d.ts +20 -0
- package/dist/components/ai/ThinkingIndicator/ThinkingIndicator.js +55 -0
- package/dist/components/ai/ThinkingIndicator/ThinkingIndicator.theme.d.ts +2 -0
- package/dist/components/ai/ThinkingIndicator/ThinkingIndicator.theme.js +20 -0
- package/dist/components/ai/ThinkingIndicator/ThinkingIndicator.types.d.ts +67 -0
- package/dist/components/ai/ThinkingIndicator/index.d.ts +3 -0
- package/dist/components/ai/TokenCounter/TokenCounter.d.ts +21 -0
- package/dist/components/ai/TokenCounter/TokenCounter.js +61 -0
- package/dist/components/ai/TokenCounter/TokenCounter.theme.d.ts +2 -0
- package/dist/components/ai/TokenCounter/TokenCounter.theme.js +28 -0
- package/dist/components/ai/TokenCounter/TokenCounter.types.d.ts +104 -0
- package/dist/components/ai/TokenCounter/index.d.ts +4 -0
- package/dist/components/ai/TokenCounter/tokenUtils.d.ts +23 -0
- package/dist/components/ai/TokenCounter/tokenUtils.js +108 -0
- package/dist/components/ai/index.d.ts +19 -0
- package/dist/components/ai/index.js +25 -0
- package/dist/components/charts/ActivityRings/ActivityRings.d.ts +9 -0
- package/dist/components/charts/ActivityRings/ActivityRings.js +166 -0
- package/dist/components/charts/ActivityRings/ActivityRings.theme.d.ts +7 -0
- package/dist/components/charts/ActivityRings/ActivityRings.theme.js +26 -0
- package/dist/components/charts/ActivityRings/ActivityRings.types.d.ts +79 -0
- package/dist/components/charts/ActivityRings/ActivityRings.types.js +8 -0
- package/dist/components/charts/ActivityRings/index.d.ts +4 -0
- package/dist/components/charts/AreaChart/AreaChart.d.ts +3 -0
- package/dist/components/charts/AreaChart/AreaChart.js +357 -0
- package/dist/components/charts/AreaChart/AreaChart.theme.d.ts +24 -0
- package/dist/components/charts/AreaChart/AreaChart.theme.js +45 -0
- package/dist/components/charts/AreaChart/AreaChart.types.d.ts +39 -0
- package/dist/components/charts/AreaChart/AreaChart.types.js +17 -0
- package/dist/components/charts/AreaChart/index.d.ts +4 -0
- package/dist/components/charts/BarChart/BarChart.d.ts +3 -0
- package/dist/components/charts/BarChart/BarChart.js +462 -0
- package/dist/components/charts/BarChart/BarChart.types.d.ts +49 -0
- package/dist/components/charts/BarChart/BarChart.types.js +15 -0
- package/dist/components/charts/BarChart/index.d.ts +2 -0
- package/dist/components/charts/ChartContainer.d.ts +8 -0
- package/dist/components/charts/ChartContainer.js +42 -0
- package/dist/components/charts/ComboChart/ComboChart.d.ts +9 -0
- package/dist/components/charts/ComboChart/ComboChart.js +147 -0
- package/dist/components/charts/ComboChart/ComboChart.theme.d.ts +7 -0
- package/dist/components/charts/ComboChart/ComboChart.types.d.ts +51 -0
- package/dist/components/charts/ComboChart/ComboChart.types.js +15 -0
- package/dist/components/charts/ComboChart/index.d.ts +4 -0
- package/dist/components/charts/DonutChart/DonutChart.d.ts +7 -0
- package/dist/components/charts/DonutChart/DonutChart.js +162 -0
- package/dist/components/charts/DonutChart/DonutChart.theme.d.ts +130 -0
- package/dist/components/charts/DonutChart/DonutChart.theme.js +25 -0
- package/dist/components/charts/DonutChart/DonutChart.types.d.ts +129 -0
- package/dist/components/charts/DonutChart/MultiSegmentDonutChart.d.ts +7 -0
- package/dist/components/charts/DonutChart/MultiSegmentDonutChart.js +252 -0
- package/dist/components/charts/DonutChart/MultiSegmentDonutChart.theme.d.ts +50 -0
- package/dist/components/charts/DonutChart/MultiSegmentDonutChart.theme.js +36 -0
- package/dist/components/charts/DonutChart/MultiSegmentDonutChart.types.d.ts +124 -0
- package/dist/components/charts/DonutChart/donut-utils.d.ts +45 -0
- package/dist/components/charts/DonutChart/donut-utils.js +140 -0
- package/dist/components/charts/DonutChart/index.d.ts +9 -0
- package/dist/components/charts/FunnelChart/FunnelChart.animations.d.ts +35 -0
- package/dist/components/charts/FunnelChart/FunnelChart.animations.js +106 -0
- package/dist/components/charts/FunnelChart/FunnelChart.d.ts +9 -0
- package/dist/components/charts/FunnelChart/FunnelChart.js +462 -0
- package/dist/components/charts/FunnelChart/FunnelChart.theme.d.ts +2 -0
- package/dist/components/charts/FunnelChart/FunnelChart.theme.js +12 -0
- package/dist/components/charts/FunnelChart/FunnelChart.types.d.ts +105 -0
- package/dist/components/charts/FunnelChart/index.d.ts +4 -0
- package/dist/components/charts/Heatmap/Heatmap.d.ts +7 -0
- package/dist/components/charts/Heatmap/Heatmap.js +148 -0
- package/dist/components/charts/Heatmap/Heatmap.theme.d.ts +12 -0
- package/dist/components/charts/Heatmap/Heatmap.theme.js +18 -0
- package/dist/components/charts/Heatmap/Heatmap.types.d.ts +134 -0
- package/dist/components/charts/Heatmap/HeatmapCell.d.ts +3 -0
- package/dist/components/charts/Heatmap/HeatmapCell.js +95 -0
- package/dist/components/charts/Heatmap/HeatmapLegend.d.ts +19 -0
- package/dist/components/charts/Heatmap/HeatmapLegend.js +17 -0
- package/dist/components/charts/Heatmap/index.d.ts +7 -0
- package/dist/components/charts/Heatmap/utils/heatmapUtils.d.ts +30 -0
- package/dist/components/charts/Heatmap/utils/heatmapUtils.js +170 -0
- package/dist/components/charts/LineChart/LineChart.d.ts +3 -0
- package/dist/components/charts/LineChart/LineChart.js +361 -0
- package/dist/components/charts/LineChart/LineChart.types.d.ts +33 -0
- package/dist/components/charts/LineChart/LineChart.types.js +15 -0
- package/dist/components/charts/LineChart/index.d.ts +2 -0
- package/dist/components/charts/RadarChart/RadarChart.animations.d.ts +16 -0
- package/dist/components/charts/RadarChart/RadarChart.animations.js +17 -0
- package/dist/components/charts/RadarChart/RadarChart.d.ts +3 -0
- package/dist/components/charts/RadarChart/RadarChart.js +166 -0
- package/dist/components/charts/RadarChart/RadarChart.theme.d.ts +9 -0
- package/dist/components/charts/RadarChart/RadarChart.theme.js +27 -0
- package/dist/components/charts/RadarChart/RadarChart.types.d.ts +110 -0
- package/dist/components/charts/RadarChart/index.d.ts +4 -0
- package/dist/components/charts/ScatterPlot/ScatterPlot.d.ts +9 -0
- package/dist/components/charts/ScatterPlot/ScatterPlot.js +208 -0
- package/dist/components/charts/ScatterPlot/ScatterPlot.theme.d.ts +22 -0
- package/dist/components/charts/ScatterPlot/ScatterPlot.theme.js +38 -0
- package/dist/components/charts/ScatterPlot/ScatterPlot.types.d.ts +71 -0
- package/dist/components/charts/ScatterPlot/ScatterPlot.types.js +12 -0
- package/dist/components/charts/ScatterPlot/index.d.ts +3 -0
- package/dist/components/charts/StackedBarChart/StackedBarChart.d.ts +3 -0
- package/dist/components/charts/StackedBarChart/StackedBarChart.js +299 -0
- package/dist/components/charts/StackedBarChart/StackedBarChart.types.d.ts +34 -0
- package/dist/components/charts/StackedBarChart/StackedBarChart.types.js +14 -0
- package/dist/components/charts/StackedBarChart/index.d.ts +3 -0
- package/dist/components/charts/hooks/index.d.ts +6 -0
- package/dist/components/charts/hooks/useChartAccessibility.d.ts +39 -0
- package/dist/components/charts/hooks/useChartAccessibility.js +121 -0
- package/dist/components/charts/hooks/useChartScales.d.ts +83 -0
- package/dist/components/charts/hooks/useChartScales.js +151 -0
- package/dist/components/charts/hooks/useChartTheme.d.ts +16 -0
- package/dist/components/charts/hooks/useChartTheme.js +105 -0
- package/dist/components/charts/hooks/useChartValidation.d.ts +74 -0
- package/dist/components/charts/hooks/useChartValidation.js +58 -0
- package/dist/components/charts/hooks/useTooltipPosition.d.ts +98 -0
- package/dist/components/charts/hooks/useTooltipPosition.js +294 -0
- package/dist/components/charts/index.d.ts +54 -0
- package/dist/components/charts/index.js +39 -0
- package/dist/components/charts/shared/BarRenderer/BarRenderer.d.ts +9 -0
- package/dist/components/charts/shared/BarRenderer/BarRenderer.js +324 -0
- package/dist/components/charts/shared/BarRenderer/BarRenderer.types.d.ts +94 -0
- package/dist/components/charts/shared/BarRenderer/index.d.ts +3 -0
- package/dist/components/charts/shared/ChartAxis/ChartAxis.types.d.ts +93 -0
- package/dist/components/charts/shared/ChartAxis/XAxis.d.ts +7 -0
- package/dist/components/charts/shared/ChartAxis/XAxis.js +36 -0
- package/dist/components/charts/shared/ChartAxis/YAxis.d.ts +7 -0
- package/dist/components/charts/shared/ChartAxis/YAxis.js +55 -0
- package/dist/components/charts/shared/ChartAxis/index.d.ts +3 -0
- package/dist/components/charts/shared/ChartContainer/ChartContainer.d.ts +85 -0
- package/dist/components/charts/shared/ChartContainer/ChartContainer.js +185 -0
- package/dist/components/charts/shared/ChartContainer/ChartContainer.types.d.ts +91 -0
- package/dist/components/charts/shared/ChartContainer/index.d.ts +3 -0
- package/dist/components/charts/shared/ChartCrosshair/ChartCrosshair.d.ts +7 -0
- package/dist/components/charts/shared/ChartCrosshair/ChartCrosshair.js +31 -0
- package/dist/components/charts/shared/ChartCrosshair/ChartCrosshair.theme.d.ts +6 -0
- package/dist/components/charts/shared/ChartCrosshair/ChartCrosshair.theme.js +11 -0
- package/dist/components/charts/shared/ChartCrosshair/ChartCrosshair.types.d.ts +35 -0
- package/dist/components/charts/shared/ChartCrosshair/index.d.ts +3 -0
- package/dist/components/charts/shared/ChartErrorBoundary/ChartErrorBoundary.d.ts +34 -0
- package/dist/components/charts/shared/ChartErrorBoundary/ChartErrorBoundary.js +48 -0
- package/dist/components/charts/shared/ChartErrorBoundary/index.d.ts +1 -0
- package/dist/components/charts/shared/ChartGrid/HorizontalGrid.d.ts +26 -0
- package/dist/components/charts/shared/ChartGrid/HorizontalGrid.js +21 -0
- package/dist/components/charts/shared/ChartGrid/index.d.ts +2 -0
- package/dist/components/charts/shared/ChartLegend/ChartLegend.d.ts +7 -0
- package/dist/components/charts/shared/ChartLegend/ChartLegend.js +28 -0
- package/dist/components/charts/shared/ChartLegend/ChartLegend.types.d.ts +15 -0
- package/dist/components/charts/shared/ChartLegend/ChartLegendContent.d.ts +7 -0
- package/dist/components/charts/shared/ChartLegend/ChartLegendContent.js +18 -0
- package/dist/components/charts/shared/ChartLegend/index.d.ts +3 -0
- package/dist/components/charts/shared/ChartMarker/ChartMarker.d.ts +7 -0
- package/dist/components/charts/shared/ChartMarker/ChartMarker.js +22 -0
- package/dist/components/charts/shared/ChartMarker/ChartMarker.theme.d.ts +6 -0
- package/dist/components/charts/shared/ChartMarker/ChartMarker.theme.js +9 -0
- package/dist/components/charts/shared/ChartMarker/ChartMarker.types.d.ts +21 -0
- package/dist/components/charts/shared/ChartMarker/index.d.ts +3 -0
- package/dist/components/charts/shared/ChartText/ChartText.d.ts +7 -0
- package/dist/components/charts/shared/ChartText/ChartText.js +32 -0
- package/dist/components/charts/shared/ChartText/ChartText.theme.d.ts +6 -0
- package/dist/components/charts/shared/ChartText/ChartText.theme.js +9 -0
- package/dist/components/charts/shared/ChartText/ChartText.types.d.ts +21 -0
- package/dist/components/charts/shared/ChartText/index.d.ts +2 -0
- package/dist/components/charts/shared/ChartTooltip/ChartTooltip.d.ts +19 -0
- package/dist/components/charts/shared/ChartTooltip/ChartTooltip.js +50 -0
- package/dist/components/charts/shared/ChartTooltip/ChartTooltip.theme.d.ts +7 -0
- package/dist/components/charts/shared/ChartTooltip/ChartTooltip.theme.js +18 -0
- package/dist/components/charts/shared/ChartTooltip/ChartTooltip.types.d.ts +74 -0
- package/dist/components/charts/shared/ChartTooltip/ChartTooltipContent.d.ts +2 -0
- package/dist/components/charts/shared/ChartTooltip/index.d.ts +4 -0
- package/dist/components/charts/shared/LineRenderer/LineRenderer.d.ts +9 -0
- package/dist/components/charts/shared/LineRenderer/LineRenderer.js +239 -0
- package/dist/components/charts/shared/LineRenderer/LineRenderer.types.d.ts +92 -0
- package/dist/components/charts/shared/LineRenderer/index.d.ts +2 -0
- package/dist/components/charts/shared/index.d.ts +14 -0
- package/dist/components/charts/theme/chart.theme.d.ts +6 -0
- package/dist/components/charts/theme/chart.theme.js +73 -0
- package/dist/components/charts/types/chart.types.d.ts +176 -0
- package/dist/components/charts/types/chart.types.js +31 -0
- package/dist/components/charts/utils/animation-utils.d.ts +111 -0
- package/dist/components/charts/utils/animation-utils.js +116 -0
- package/dist/components/charts/utils/chart-validation.d.ts +98 -0
- package/dist/components/charts/utils/chart-validation.js +364 -0
- package/dist/components/charts/utils/color-utils.d.ts +78 -0
- package/dist/components/charts/utils/color-utils.js +135 -0
- package/dist/components/charts/utils/index.d.ts +4 -0
- package/dist/components/charts/utils/path-utils.d.ts +35 -0
- package/dist/components/charts/utils/path-utils.js +156 -0
- package/dist/components/core/Accordion/Accordion.animations.d.ts +9 -0
- package/dist/components/core/Accordion/Accordion.animations.js +45 -0
- package/dist/components/core/Accordion/Accordion.d.ts +11 -0
- package/dist/components/core/Accordion/Accordion.js +56 -0
- package/dist/components/core/Accordion/Accordion.theme.d.ts +10 -0
- package/dist/components/core/Accordion/Accordion.theme.js +18 -0
- package/dist/components/core/Accordion/Accordion.types.d.ts +110 -0
- package/dist/components/core/Accordion/AccordionContent.d.ts +3 -0
- package/dist/components/core/Accordion/AccordionContent.js +21 -0
- package/dist/components/core/Accordion/AccordionItem.d.ts +4 -0
- package/dist/components/core/Accordion/AccordionItem.js +57 -0
- package/dist/components/core/Accordion/AccordionTrigger.d.ts +3 -0
- package/dist/components/core/Accordion/AccordionTrigger.js +19 -0
- package/dist/components/core/Accordion/index.d.ts +4 -0
- package/dist/components/core/Alert/Alert.d.ts +3 -0
- package/dist/components/core/Alert/Alert.js +43 -0
- package/dist/components/core/Alert/Alert.theme.d.ts +6 -0
- package/dist/components/core/Alert/Alert.theme.js +27 -0
- package/dist/components/core/Alert/Alert.types.d.ts +66 -0
- package/dist/components/core/Alert/index.d.ts +3 -0
- package/dist/components/core/AlertDialog/AlertDialog.d.ts +5 -0
- package/dist/components/core/AlertDialog/AlertDialog.js +17 -0
- package/dist/components/core/AlertDialog/AlertDialog.types.d.ts +18 -0
- package/dist/components/core/AlertDialog/index.d.ts +2 -0
- package/dist/components/core/AspectRatio/AspectRatio.d.ts +14 -0
- package/dist/components/core/AspectRatio/AspectRatio.js +24 -0
- package/dist/components/core/AspectRatio/AspectRatio.types.d.ts +9 -0
- package/dist/components/core/AspectRatio/index.d.ts +2 -0
- package/dist/components/core/Avatar/Avatar.d.ts +3 -0
- package/dist/components/core/Avatar/Avatar.js +96 -0
- package/dist/components/core/Avatar/Avatar.theme.d.ts +14 -0
- package/dist/components/core/Avatar/Avatar.theme.js +25 -0
- package/dist/components/core/Avatar/Avatar.types.d.ts +69 -0
- package/dist/components/core/Avatar/index.d.ts +2 -0
- package/dist/components/core/AvatarGroup/AvatarGroup.animations.d.ts +13 -0
- package/dist/components/core/AvatarGroup/AvatarGroup.animations.js +79 -0
- package/dist/components/core/AvatarGroup/AvatarGroup.d.ts +3 -0
- package/dist/components/core/AvatarGroup/AvatarGroup.js +57 -0
- package/dist/components/core/AvatarGroup/AvatarGroup.theme.d.ts +14 -0
- package/dist/components/core/AvatarGroup/AvatarGroup.theme.js +17 -0
- package/dist/components/core/AvatarGroup/AvatarGroup.types.d.ts +44 -0
- package/dist/components/core/AvatarGroup/index.d.ts +2 -0
- package/dist/components/core/Badge/Badge.animations.d.ts +8 -0
- package/dist/components/core/Badge/Badge.animations.js +109 -0
- package/dist/components/core/Badge/Badge.d.ts +14 -0
- package/dist/components/core/Badge/Badge.js +207 -0
- package/dist/components/core/Badge/Badge.theme.d.ts +6 -0
- package/dist/components/core/Badge/Badge.theme.js +107 -0
- package/dist/components/core/Badge/Badge.types.d.ts +174 -0
- package/dist/components/core/Badge/index.d.ts +2 -0
- package/dist/components/core/Breadcrumbs/Breadcrumbs.d.ts +16 -0
- package/dist/components/core/Breadcrumbs/Breadcrumbs.js +100 -0
- package/dist/components/core/Breadcrumbs/Breadcrumbs.theme.d.ts +19 -0
- package/dist/components/core/Breadcrumbs/Breadcrumbs.theme.js +32 -0
- package/dist/components/core/Breadcrumbs/Breadcrumbs.types.d.ts +58 -0
- package/dist/components/core/Breadcrumbs/index.d.ts +3 -0
- package/dist/components/core/Button/Button.animations.d.ts +5 -0
- package/dist/components/core/Button/Button.d.ts +4 -0
- package/dist/components/core/Button/Button.js +125 -0
- package/dist/components/core/Button/Button.ripple.d.ts +67 -0
- package/dist/components/core/Button/Button.ripple.js +229 -0
- package/dist/components/core/Button/Button.theme.d.ts +27 -0
- package/dist/components/core/Button/Button.theme.js +148 -0
- package/dist/components/core/Button/Button.types.d.ts +56 -0
- package/dist/components/core/Button/index.d.ts +2 -0
- package/dist/components/core/ButtonGroup/ButtonGroup.d.ts +4 -0
- package/dist/components/core/ButtonGroup/ButtonGroup.js +11 -0
- package/dist/components/core/ButtonGroup/ButtonGroup.theme.d.ts +19 -0
- package/dist/components/core/ButtonGroup/ButtonGroup.theme.js +50 -0
- package/dist/components/core/ButtonGroup/ButtonGroup.types.d.ts +36 -0
- package/dist/components/core/ButtonGroup/ButtonGroupSeparator.d.ts +4 -0
- package/dist/components/core/ButtonGroup/ButtonGroupSeparator.js +13 -0
- package/dist/components/core/ButtonGroup/ButtonGroupText.d.ts +4 -0
- package/dist/components/core/ButtonGroup/ButtonGroupText.js +21 -0
- package/dist/components/core/ButtonGroup/index.d.ts +4 -0
- package/dist/components/core/Calendar/Calendar.animations.d.ts +12 -0
- package/dist/components/core/Calendar/Calendar.animations.js +37 -0
- package/dist/components/core/Calendar/Calendar.d.ts +3 -0
- package/dist/components/core/Calendar/Calendar.js +382 -0
- package/dist/components/core/Calendar/Calendar.theme.d.ts +6 -0
- package/dist/components/core/Calendar/Calendar.theme.js +54 -0
- package/dist/components/core/Calendar/Calendar.types.d.ts +124 -0
- package/dist/components/core/Calendar/CalendarEvent/CalendarEvent.d.ts +4 -0
- package/dist/components/core/Calendar/CalendarEvent/CalendarEvent.theme.d.ts +12 -0
- package/dist/components/core/Calendar/CalendarEvent/CalendarEvent.types.d.ts +24 -0
- package/dist/components/core/Calendar/CalendarEvent/index.d.ts +2 -0
- package/dist/components/core/Calendar/CalendarMini/CalendarMini.animations.d.ts +4 -0
- package/dist/components/core/Calendar/CalendarMini/CalendarMini.animations.js +27 -0
- package/dist/components/core/Calendar/CalendarMini/CalendarMini.d.ts +3 -0
- package/dist/components/core/Calendar/CalendarMini/CalendarMini.js +250 -0
- package/dist/components/core/Calendar/CalendarMini/CalendarMini.theme.d.ts +2 -0
- package/dist/components/core/Calendar/CalendarMini/CalendarMini.theme.js +9 -0
- package/dist/components/core/Calendar/CalendarMini/CalendarMini.types.d.ts +93 -0
- package/dist/components/core/Calendar/CalendarMini/index.d.ts +2 -0
- package/dist/components/core/Calendar/calendar.utils.d.ts +19 -0
- package/dist/components/core/Calendar/calendar.utils.js +53 -0
- package/dist/components/core/Calendar/index.d.ts +5 -0
- package/dist/components/core/Card/Card.d.ts +8 -0
- package/dist/components/core/Card/Card.js +29 -0
- package/dist/components/core/Card/Card.theme.d.ts +2 -0
- package/dist/components/core/Card/Card.theme.js +10 -0
- package/dist/components/core/Card/Card.types.d.ts +81 -0
- package/dist/components/core/Card/CardContent.d.ts +3 -0
- package/dist/components/core/Card/CardContent.js +11 -0
- package/dist/components/core/Card/CardDescription.d.ts +3 -0
- package/dist/components/core/Card/CardDescription.js +11 -0
- package/dist/components/core/Card/CardFooter.d.ts +3 -0
- package/dist/components/core/Card/CardFooter.js +11 -0
- package/dist/components/core/Card/CardHeader.d.ts +3 -0
- package/dist/components/core/Card/CardHeader.js +11 -0
- package/dist/components/core/Card/CardTitle.d.ts +3 -0
- package/dist/components/core/Card/CardTitle.js +11 -0
- package/dist/components/core/Card/index.d.ts +2 -0
- package/dist/components/core/CardStack/CardStack.animations.d.ts +47 -0
- package/dist/components/core/CardStack/CardStack.d.ts +3 -0
- package/dist/components/core/CardStack/CardStack.js +186 -0
- package/dist/components/core/CardStack/CardStack.theme.d.ts +6 -0
- package/dist/components/core/CardStack/CardStack.theme.js +33 -0
- package/dist/components/core/CardStack/CardStack.types.d.ts +139 -0
- package/dist/components/core/CardStack/index.d.ts +7 -0
- package/dist/components/core/Carousel/Carousel.d.ts +3 -0
- package/dist/components/core/Carousel/Carousel.js +82 -0
- package/dist/components/core/Carousel/Carousel.theme.d.ts +10 -0
- package/dist/components/core/Carousel/Carousel.theme.js +20 -0
- package/dist/components/core/Carousel/Carousel.types.d.ts +113 -0
- package/dist/components/core/Carousel/CarouselContent.d.ts +4 -0
- package/dist/components/core/Carousel/CarouselContent.js +52 -0
- package/dist/components/core/Carousel/CarouselContext.d.ts +3 -0
- package/dist/components/core/Carousel/CarouselContext.js +12 -0
- package/dist/components/core/Carousel/CarouselItem.d.ts +4 -0
- package/dist/components/core/Carousel/CarouselItem.js +11 -0
- package/dist/components/core/Carousel/CarouselNext.d.ts +4 -0
- package/dist/components/core/Carousel/CarouselNext.js +15 -0
- package/dist/components/core/Carousel/CarouselPrevious.d.ts +4 -0
- package/dist/components/core/Carousel/CarouselPrevious.js +15 -0
- package/dist/components/core/Carousel/index.d.ts +2 -0
- package/dist/components/core/CommandPalette/CommandItem.d.ts +51 -0
- package/dist/components/core/CommandPalette/CommandItem.js +132 -0
- package/dist/components/core/CommandPalette/CommandPalette.animations.d.ts +6 -0
- package/dist/components/core/CommandPalette/CommandPalette.animations.js +51 -0
- package/dist/components/core/CommandPalette/CommandPalette.d.ts +29 -0
- package/dist/components/core/CommandPalette/CommandPalette.js +221 -0
- package/dist/components/core/CommandPalette/CommandPalette.theme.d.ts +2 -0
- package/dist/components/core/CommandPalette/CommandPalette.theme.js +30 -0
- package/dist/components/core/CommandPalette/CommandPalette.types.d.ts +89 -0
- package/dist/components/core/CommandPalette/index.d.ts +3 -0
- package/dist/components/core/ContextMenu/ContextMenu.d.ts +15 -0
- package/dist/components/core/ContextMenu/ContextMenu.js +90 -0
- package/dist/components/core/ContextMenu/ContextMenu.theme.d.ts +11 -0
- package/dist/components/core/ContextMenu/ContextMenu.theme.js +27 -0
- package/dist/components/core/ContextMenu/ContextMenu.types.d.ts +86 -0
- package/dist/components/core/ContextMenu/ContextMenuContent.d.ts +6 -0
- package/dist/components/core/ContextMenu/ContextMenuContent.js +197 -0
- package/dist/components/core/ContextMenu/ContextMenuContext.d.ts +5 -0
- package/dist/components/core/ContextMenu/ContextMenuContext.js +22 -0
- package/dist/components/core/ContextMenu/ContextMenuItem.d.ts +7 -0
- package/dist/components/core/ContextMenu/ContextMenuItem.js +34 -0
- package/dist/components/core/ContextMenu/ContextMenuLabel.d.ts +6 -0
- package/dist/components/core/ContextMenu/ContextMenuLabel.js +15 -0
- package/dist/components/core/ContextMenu/ContextMenuSeparator.d.ts +6 -0
- package/dist/components/core/ContextMenu/ContextMenuSeparator.js +15 -0
- package/dist/components/core/ContextMenu/ContextMenuSub.d.ts +6 -0
- package/dist/components/core/ContextMenu/ContextMenuSub.js +40 -0
- package/dist/components/core/ContextMenu/ContextMenuSubContent.d.ts +6 -0
- package/dist/components/core/ContextMenu/ContextMenuSubContent.js +106 -0
- package/dist/components/core/ContextMenu/ContextMenuSubTrigger.d.ts +6 -0
- package/dist/components/core/ContextMenu/ContextMenuSubTrigger.js +60 -0
- package/dist/components/core/ContextMenu/ContextMenuTrigger.d.ts +6 -0
- package/dist/components/core/ContextMenu/ContextMenuTrigger.js +49 -0
- package/dist/components/core/ContextMenu/index.d.ts +4 -0
- package/dist/components/core/DescriptionList/DescriptionList.d.ts +5 -0
- package/dist/components/core/DescriptionList/DescriptionList.js +42 -0
- package/dist/components/core/DescriptionList/DescriptionList.theme.d.ts +2 -0
- package/dist/components/core/DescriptionList/DescriptionList.theme.js +8 -0
- package/dist/components/core/DescriptionList/DescriptionList.types.d.ts +34 -0
- package/dist/components/core/DescriptionList/index.d.ts +2 -0
- package/dist/components/core/DragDrop/DragDrop.d.ts +9 -0
- package/dist/components/core/DragDrop/DragDrop.js +218 -0
- package/dist/components/core/DragDrop/DragDrop.theme.d.ts +2 -0
- package/dist/components/core/DragDrop/DragDrop.theme.js +8 -0
- package/dist/components/core/DragDrop/DragDrop.types.d.ts +55 -0
- package/dist/components/core/DragDrop/index.d.ts +2 -0
- package/dist/components/core/Drawer/Drawer.animations.d.ts +10 -0
- package/dist/components/core/Drawer/Drawer.animations.js +108 -0
- package/dist/components/core/Drawer/Drawer.d.ts +15 -0
- package/dist/components/core/Drawer/Drawer.js +66 -0
- package/dist/components/core/Drawer/Drawer.theme.d.ts +32 -0
- package/dist/components/core/Drawer/Drawer.theme.js +47 -0
- package/dist/components/core/Drawer/Drawer.types.d.ts +68 -0
- package/dist/components/core/Drawer/DrawerContent.d.ts +5 -0
- package/dist/components/core/Drawer/DrawerContent.js +11 -0
- package/dist/components/core/Drawer/DrawerFooter.d.ts +5 -0
- package/dist/components/core/Drawer/DrawerFooter.js +11 -0
- package/dist/components/core/Drawer/index.d.ts +2 -0
- package/dist/components/core/Dropdown/Dropdown.d.ts +15 -0
- package/dist/components/core/Dropdown/Dropdown.js +93 -0
- package/dist/components/core/Dropdown/Dropdown.theme.d.ts +10 -0
- package/dist/components/core/Dropdown/Dropdown.theme.js +20 -0
- package/dist/components/core/Dropdown/Dropdown.types.d.ts +91 -0
- package/dist/components/core/Dropdown/DropdownContext.d.ts +3 -0
- package/dist/components/core/Dropdown/DropdownContext.js +12 -0
- package/dist/components/core/Dropdown/DropdownItem.d.ts +7 -0
- package/dist/components/core/Dropdown/DropdownItem.js +74 -0
- package/dist/components/core/Dropdown/DropdownMenu.d.ts +6 -0
- package/dist/components/core/Dropdown/DropdownMenu.js +225 -0
- package/dist/components/core/Dropdown/DropdownSection.d.ts +6 -0
- package/dist/components/core/Dropdown/DropdownSection.js +15 -0
- package/dist/components/core/Dropdown/DropdownSeparator.d.ts +6 -0
- package/dist/components/core/Dropdown/DropdownSeparator.js +15 -0
- package/dist/components/core/Dropdown/DropdownTrigger.d.ts +9 -0
- package/dist/components/core/Dropdown/DropdownTrigger.js +44 -0
- package/dist/components/core/Dropdown/index.d.ts +9 -0
- package/dist/components/core/Empty/Empty.d.ts +4 -0
- package/dist/components/core/Empty/Empty.js +19 -0
- package/dist/components/core/Empty/Empty.theme.d.ts +12 -0
- package/dist/components/core/Empty/Empty.theme.js +13 -0
- package/dist/components/core/Empty/Empty.types.d.ts +28 -0
- package/dist/components/core/Empty/index.d.ts +3 -0
- package/dist/components/core/Feed/Feed.d.ts +5 -0
- package/dist/components/core/Feed/Feed.js +88 -0
- package/dist/components/core/Feed/Feed.theme.d.ts +2 -0
- package/dist/components/core/Feed/Feed.theme.js +22 -0
- package/dist/components/core/Feed/Feed.types.d.ts +64 -0
- package/dist/components/core/Feed/index.d.ts +2 -0
- package/dist/components/core/KPI/KPI.d.ts +3 -0
- package/dist/components/core/KPI/KPI.js +48 -0
- package/dist/components/core/KPI/KPI.theme.d.ts +2 -0
- package/dist/components/core/KPI/KPI.theme.js +37 -0
- package/dist/components/core/KPI/KPI.types.d.ts +84 -0
- package/dist/components/core/KPI/index.d.ts +2 -0
- package/dist/components/core/Kbd/Kbd.d.ts +14 -0
- package/dist/components/core/Kbd/Kbd.js +66 -0
- package/dist/components/core/Kbd/Kbd.theme.d.ts +10 -0
- package/dist/components/core/Kbd/Kbd.theme.js +13 -0
- package/dist/components/core/Kbd/Kbd.types.d.ts +22 -0
- package/dist/components/core/Kbd/index.d.ts +2 -0
- package/dist/components/core/Link/Link.d.ts +4 -0
- package/dist/components/core/Link/Link.js +40 -0
- package/dist/components/core/Link/Link.types.d.ts +22 -0
- package/dist/components/core/Link/index.d.ts +2 -0
- package/dist/components/core/Loader/Loader.d.ts +24 -0
- package/dist/components/core/Loader/Loader.js +57 -0
- package/dist/components/core/Loader/Loader.theme.d.ts +27 -0
- package/dist/components/core/Loader/Loader.theme.js +60 -0
- package/dist/components/core/Loader/Loader.types.d.ts +71 -0
- package/dist/components/core/Loader/index.d.ts +2 -0
- package/dist/components/core/Masonry/Masonry.d.ts +4 -0
- package/dist/components/core/Masonry/Masonry.js +227 -0
- package/dist/components/core/Masonry/Masonry.theme.d.ts +9 -0
- package/dist/components/core/Masonry/Masonry.theme.js +34 -0
- package/dist/components/core/Masonry/Masonry.types.d.ts +49 -0
- package/dist/components/core/Masonry/index.d.ts +3 -0
- package/dist/components/core/MenuItem/MenuItem.d.ts +9 -0
- package/dist/components/core/MenuItem/MenuItem.js +33 -0
- package/dist/components/core/MenuItem/MenuItem.theme.d.ts +8 -0
- package/dist/components/core/MenuItem/MenuItem.theme.js +27 -0
- package/dist/components/core/MenuItem/MenuItem.types.d.ts +24 -0
- package/dist/components/core/MenuItem/index.d.ts +4 -0
- package/dist/components/core/Message/Message.d.ts +8 -0
- package/dist/components/core/Message/Message.js +109 -0
- package/dist/components/core/Message/Message.theme.d.ts +6 -0
- package/dist/components/core/Message/Message.theme.js +46 -0
- package/dist/components/core/Message/Message.types.d.ts +169 -0
- package/dist/components/core/Message/MessageActions.d.ts +8 -0
- package/dist/components/core/Message/MessageActions.js +17 -0
- package/dist/components/core/Message/MessageAvatar.d.ts +16 -0
- package/dist/components/core/Message/MessageAvatar.js +16 -0
- package/dist/components/core/Message/MessageContent.d.ts +8 -0
- package/dist/components/core/Message/MessageContent.js +22 -0
- package/dist/components/core/Message/MessageContext.d.ts +9 -0
- package/dist/components/core/Message/MessageContext.js +12 -0
- package/dist/components/core/Message/MessageTimestamp.d.ts +8 -0
- package/dist/components/core/Message/MessageTimestamp.js +18 -0
- package/dist/components/core/Message/TypeWriter.d.ts +38 -0
- package/dist/components/core/Message/TypeWriter.js +27 -0
- package/dist/components/core/Message/index.d.ts +5 -0
- package/dist/components/core/Metric/Metric.d.ts +3 -0
- package/dist/components/core/Metric/Metric.js +23 -0
- package/dist/components/core/Metric/Metric.theme.d.ts +6 -0
- package/dist/components/core/Metric/Metric.theme.js +78 -0
- package/dist/components/core/Metric/Metric.types.d.ts +92 -0
- package/dist/components/core/Metric/index.d.ts +3 -0
- package/dist/components/core/Modal/Modal.animations.d.ts +9 -0
- package/dist/components/core/Modal/Modal.animations.js +51 -0
- package/dist/components/core/Modal/Modal.d.ts +29 -0
- package/dist/components/core/Modal/Modal.js +73 -0
- package/dist/components/core/Modal/Modal.theme.d.ts +9 -0
- package/dist/components/core/Modal/Modal.theme.js +25 -0
- package/dist/components/core/Modal/Modal.types.d.ts +93 -0
- package/dist/components/core/Modal/ModalBody.d.ts +5 -0
- package/dist/components/core/Modal/ModalBody.js +41 -0
- package/dist/components/core/Modal/ModalDescription.d.ts +5 -0
- package/dist/components/core/Modal/ModalDescription.js +11 -0
- package/dist/components/core/Modal/ModalFooter.d.ts +5 -0
- package/dist/components/core/Modal/ModalFooter.js +11 -0
- package/dist/components/core/Modal/ModalHeader.d.ts +5 -0
- package/dist/components/core/Modal/ModalHeader.js +14 -0
- package/dist/components/core/Modal/ModalTitle.d.ts +5 -0
- package/dist/components/core/Modal/ModalTitle.js +11 -0
- package/dist/components/core/Modal/index.d.ts +2 -0
- package/dist/components/core/ModalStack/ModalStack.animations.d.ts +9 -0
- package/dist/components/core/ModalStack/ModalStack.animations.js +62 -0
- package/dist/components/core/ModalStack/ModalStack.d.ts +11 -0
- package/dist/components/core/ModalStack/ModalStack.js +61 -0
- package/dist/components/core/ModalStack/ModalStack.theme.d.ts +3 -0
- package/dist/components/core/ModalStack/ModalStack.theme.js +5 -0
- package/dist/components/core/ModalStack/ModalStack.types.d.ts +29 -0
- package/dist/components/core/ModalStack/ModalStackModal.d.ts +11 -0
- package/dist/components/core/ModalStack/ModalStackModal.js +50 -0
- package/dist/components/core/ModalStack/index.d.ts +2 -0
- package/dist/components/core/NavItem/NavItem.d.ts +3 -0
- package/dist/components/core/NavItem/NavItem.js +125 -0
- package/dist/components/core/NavItem/NavItem.theme.d.ts +2 -0
- package/dist/components/core/NavItem/NavItem.theme.js +27 -0
- package/dist/components/core/NavItem/NavItem.types.d.ts +168 -0
- package/dist/components/core/NavItem/index.d.ts +2 -0
- package/dist/components/core/OfflineIndicator/OfflineIndicator.d.ts +20 -0
- package/dist/components/core/OfflineIndicator/OfflineIndicator.js +101 -0
- package/dist/components/core/OfflineIndicator/OfflineIndicator.theme.d.ts +2 -0
- package/dist/components/core/OfflineIndicator/OfflineIndicator.theme.js +22 -0
- package/dist/components/core/OfflineIndicator/OfflineIndicator.types.d.ts +57 -0
- package/dist/components/core/OfflineIndicator/index.d.ts +3 -0
- package/dist/components/core/Pagination/Pagination.d.ts +7 -0
- package/dist/components/core/Pagination/Pagination.js +91 -0
- package/dist/components/core/Pagination/Pagination.theme.d.ts +14 -0
- package/dist/components/core/Pagination/Pagination.theme.js +36 -0
- package/dist/components/core/Pagination/Pagination.types.d.ts +48 -0
- package/dist/components/core/Pagination/index.d.ts +2 -0
- package/dist/components/core/Pill/Pill.animations.d.ts +32 -0
- package/dist/components/core/Pill/Pill.animations.js +25 -0
- package/dist/components/core/Pill/Pill.d.ts +38 -0
- package/dist/components/core/Pill/Pill.js +118 -0
- package/dist/components/core/Pill/Pill.theme.d.ts +8 -0
- package/dist/components/core/Pill/Pill.theme.js +44 -0
- package/dist/components/core/Pill/Pill.types.d.ts +82 -0
- package/dist/components/core/Pill/index.d.ts +3 -0
- package/dist/components/core/Popover/Popover.animations.d.ts +22 -0
- package/dist/components/core/Popover/Popover.animations.js +13 -0
- package/dist/components/core/Popover/Popover.d.ts +6 -0
- package/dist/components/core/Popover/Popover.js +72 -0
- package/dist/components/core/Popover/Popover.theme.d.ts +11 -0
- package/dist/components/core/Popover/Popover.theme.js +11 -0
- package/dist/components/core/Popover/Popover.types.d.ts +60 -0
- package/dist/components/core/Popover/PopoverContent.d.ts +7 -0
- package/dist/components/core/Popover/PopoverContent.js +136 -0
- package/dist/components/core/Popover/PopoverContext.d.ts +4 -0
- package/dist/components/core/Popover/PopoverContext.js +14 -0
- package/dist/components/core/Popover/PopoverTrigger.d.ts +3 -0
- package/dist/components/core/Popover/PopoverTrigger.js +74 -0
- package/dist/components/core/Popover/index.d.ts +5 -0
- package/dist/components/core/Progress/Progress.d.ts +28 -0
- package/dist/components/core/Progress/Progress.js +109 -0
- package/dist/components/core/Progress/Progress.theme.d.ts +5 -0
- package/dist/components/core/Progress/Progress.theme.js +33 -0
- package/dist/components/core/Progress/Progress.types.d.ts +92 -0
- package/dist/components/core/Progress/index.d.ts +2 -0
- package/dist/components/core/ProgressiveBlur/ProgressiveBlur.d.ts +34 -0
- package/dist/components/core/ProgressiveBlur/ProgressiveBlur.js +218 -0
- package/dist/components/core/ProgressiveBlur/ProgressiveBlur.theme.d.ts +9 -0
- package/dist/components/core/ProgressiveBlur/ProgressiveBlur.types.d.ts +48 -0
- package/dist/components/core/ProgressiveBlur/index.d.ts +2 -0
- package/dist/components/core/Rating/Rating.d.ts +18 -0
- package/dist/components/core/Rating/Rating.js +171 -0
- package/dist/components/core/Rating/Rating.theme.d.ts +6 -0
- package/dist/components/core/Rating/Rating.theme.js +38 -0
- package/dist/components/core/Rating/Rating.types.d.ts +115 -0
- package/dist/components/core/Rating/index.d.ts +2 -0
- package/dist/components/core/ScrollArea/ScrollArea.d.ts +24 -0
- package/dist/components/core/ScrollArea/ScrollArea.js +145 -0
- package/dist/components/core/ScrollArea/ScrollArea.theme.d.ts +6 -0
- package/dist/components/core/ScrollArea/ScrollArea.theme.js +11 -0
- package/dist/components/core/ScrollArea/ScrollArea.types.d.ts +106 -0
- package/dist/components/core/ScrollArea/index.d.ts +5 -0
- package/dist/components/core/ScrollArea/smooth/SmoothScrollEngine.d.ts +121 -0
- package/dist/components/core/ScrollArea/smooth/SmoothScrollEngine.js +513 -0
- package/dist/components/core/ScrollArea/smooth/SmoothScrollEngine.types.d.ts +145 -0
- package/dist/components/core/ScrollArea/smooth/SnapPointDetector.d.ts +48 -0
- package/dist/components/core/ScrollArea/smooth/SnapPointDetector.js +147 -0
- package/dist/components/core/ScrollArea/smooth/easings.d.ts +88 -0
- package/dist/components/core/ScrollArea/smooth/easings.js +19 -0
- package/dist/components/core/ScrollArea/smooth/effects.d.ts +53 -0
- package/dist/components/core/ScrollArea/smooth/effects.js +83 -0
- package/dist/components/core/ScrollArea/smooth/index.d.ts +12 -0
- package/dist/components/core/ScrollArea/smooth/useSmoothScroll.d.ts +26 -0
- package/dist/components/core/ScrollArea/smooth/useSmoothScroll.js +118 -0
- package/dist/components/core/ScrollArea/smooth/useSmoothScroll.types.d.ts +46 -0
- package/dist/components/core/Segmented/Segmented.d.ts +5 -0
- package/dist/components/core/Segmented/Segmented.js +66 -0
- package/dist/components/core/Segmented/Segmented.theme.d.ts +30 -0
- package/dist/components/core/Segmented/Segmented.theme.js +40 -0
- package/dist/components/core/Segmented/Segmented.types.d.ts +52 -0
- package/dist/components/core/Segmented/SegmentedContext.d.ts +16 -0
- package/dist/components/core/Segmented/SegmentedContext.js +8 -0
- package/dist/components/core/Segmented/SegmentedItem.d.ts +3 -0
- package/dist/components/core/Segmented/SegmentedItem.js +29 -0
- package/dist/components/core/Segmented/index.d.ts +2 -0
- package/dist/components/core/Separator/Separator.d.ts +3 -0
- package/dist/components/core/Separator/Separator.js +32 -0
- package/dist/components/core/Separator/Separator.theme.d.ts +2 -0
- package/dist/components/core/Separator/Separator.theme.js +19 -0
- package/dist/components/core/Separator/Separator.types.d.ts +40 -0
- package/dist/components/core/Separator/index.d.ts +3 -0
- package/dist/components/core/Sidebar/Sidebar.d.ts +3 -0
- package/dist/components/core/Sidebar/Sidebar.js +43 -0
- package/dist/components/core/Sidebar/Sidebar.theme.d.ts +2 -0
- package/dist/components/core/Sidebar/Sidebar.theme.js +16 -0
- package/dist/components/core/Sidebar/Sidebar.types.d.ts +129 -0
- package/dist/components/core/Sidebar/SidebarContent.d.ts +3 -0
- package/dist/components/core/Sidebar/SidebarContent.js +13 -0
- package/dist/components/core/Sidebar/SidebarContext.d.ts +17 -0
- package/dist/components/core/Sidebar/SidebarContext.js +38 -0
- package/dist/components/core/Sidebar/SidebarFooter.d.ts +3 -0
- package/dist/components/core/Sidebar/SidebarFooter.js +13 -0
- package/dist/components/core/Sidebar/SidebarHeader.d.ts +3 -0
- package/dist/components/core/Sidebar/SidebarHeader.js +18 -0
- package/dist/components/core/Sidebar/SidebarNav.d.ts +3 -0
- package/dist/components/core/Sidebar/SidebarNav.js +10 -0
- package/dist/components/core/Sidebar/SidebarNavGroup.d.ts +3 -0
- package/dist/components/core/Sidebar/SidebarNavGroup.js +14 -0
- package/dist/components/core/Sidebar/SidebarSubmenu.d.ts +7 -0
- package/dist/components/core/Sidebar/SidebarSubmenu.js +12 -0
- package/dist/components/core/Sidebar/SidebarToggle.d.ts +3 -0
- package/dist/components/core/Sidebar/SidebarToggle.js +28 -0
- package/dist/components/core/Sidebar/index.d.ts +10 -0
- package/dist/components/core/Skeleton/Skeleton.d.ts +24 -0
- package/dist/components/core/Skeleton/Skeleton.js +61 -0
- package/dist/components/core/Skeleton/Skeleton.theme.d.ts +15 -0
- package/dist/components/core/Skeleton/Skeleton.theme.js +18 -0
- package/dist/components/core/Skeleton/Skeleton.types.d.ts +45 -0
- package/dist/components/core/Skeleton/index.d.ts +2 -0
- package/dist/components/core/SlidingNumber/SlidingNumber.d.ts +16 -0
- package/dist/components/core/SlidingNumber/SlidingNumber.js +73 -0
- package/dist/components/core/SlidingNumber/SlidingNumber.types.d.ts +36 -0
- package/dist/components/core/SlidingNumber/index.d.ts +2 -0
- package/dist/components/core/Sortable/Sortable.animations.d.ts +48 -0
- package/dist/components/core/Sortable/Sortable.animations.js +78 -0
- package/dist/components/core/Sortable/Sortable.d.ts +4 -0
- package/dist/components/core/Sortable/Sortable.js +202 -0
- package/dist/components/core/Sortable/Sortable.theme.d.ts +2 -0
- package/dist/components/core/Sortable/Sortable.theme.js +7 -0
- package/dist/components/core/Sortable/Sortable.types.d.ts +71 -0
- package/dist/components/core/Sortable/index.d.ts +2 -0
- package/dist/components/core/Spinner/Spinner.d.ts +4 -0
- package/dist/components/core/Spinner/Spinner.js +13 -0
- package/dist/components/core/Spinner/Spinner.theme.d.ts +15 -0
- package/dist/components/core/Spinner/Spinner.theme.js +26 -0
- package/dist/components/core/Spinner/Spinner.types.d.ts +31 -0
- package/dist/components/core/Spinner/index.d.ts +2 -0
- package/dist/components/core/Table/Table.animations.d.ts +10 -0
- package/dist/components/core/Table/Table.animations.js +46 -0
- package/dist/components/core/Table/Table.d.ts +27 -0
- package/dist/components/core/Table/Table.filterUtils.d.ts +32 -0
- package/dist/components/core/Table/Table.filterUtils.js +260 -0
- package/dist/components/core/Table/Table.js +160 -0
- package/dist/components/core/Table/Table.theme.d.ts +2 -0
- package/dist/components/core/Table/Table.theme.js +57 -0
- package/dist/components/core/Table/Table.types.d.ts +373 -0
- package/dist/components/core/Table/Table.utils.d.ts +15 -0
- package/dist/components/core/Table/Table.utils.js +40 -0
- package/dist/components/core/Table/TableActions.d.ts +7 -0
- package/dist/components/core/Table/TableActions.js +62 -0
- package/dist/components/core/Table/TableActionsMenu.d.ts +5 -0
- package/dist/components/core/Table/TableActionsMenu.js +26 -0
- package/dist/components/core/Table/TableBody.d.ts +3 -0
- package/dist/components/core/Table/TableBody.js +26 -0
- package/dist/components/core/Table/TableCell.d.ts +14 -0
- package/dist/components/core/Table/TableCell.js +38 -0
- package/dist/components/core/Table/TableColumnManager.d.ts +3 -0
- package/dist/components/core/Table/TableColumnManager.js +23 -0
- package/dist/components/core/Table/TableDeclarative.d.ts +7 -0
- package/dist/components/core/Table/TableDeclarative.js +68 -0
- package/dist/components/core/Table/TableFilter.d.ts +2 -0
- package/dist/components/core/Table/TableFilter.js +221 -0
- package/dist/components/core/Table/TableHeader.d.ts +3 -0
- package/dist/components/core/Table/TableHeader.js +56 -0
- package/dist/components/core/Table/TablePagination.d.ts +7 -0
- package/dist/components/core/Table/TablePagination.js +25 -0
- package/dist/components/core/Table/TableRow.d.ts +7 -0
- package/dist/components/core/Table/TableRow.js +35 -0
- package/dist/components/core/Table/TableSelectionHeader.d.ts +7 -0
- package/dist/components/core/Table/TableSelectionHeader.js +21 -0
- package/dist/components/core/Table/hooks/index.d.ts +10 -0
- package/dist/components/core/Table/hooks/useTableColumns.d.ts +16 -0
- package/dist/components/core/Table/hooks/useTableColumns.js +67 -0
- package/dist/components/core/Table/hooks/useTableExpansion.d.ts +8 -0
- package/dist/components/core/Table/hooks/useTableExpansion.js +15 -0
- package/dist/components/core/Table/hooks/useTableFilter.d.ts +33 -0
- package/dist/components/core/Table/hooks/useTableFilter.js +72 -0
- package/dist/components/core/Table/hooks/useTablePagination.d.ts +12 -0
- package/dist/components/core/Table/hooks/useTablePagination.js +13 -0
- package/dist/components/core/Table/hooks/useTableSelection.d.ts +17 -0
- package/dist/components/core/Table/hooks/useTableSelection.js +40 -0
- package/dist/components/core/Table/index.d.ts +22 -0
- package/dist/components/core/Table/index.js +24 -0
- package/dist/components/core/Tabs/Tabs.animations.d.ts +23 -0
- package/dist/components/core/Tabs/Tabs.animations.js +84 -0
- package/dist/components/core/Tabs/Tabs.d.ts +7 -0
- package/dist/components/core/Tabs/Tabs.js +90 -0
- package/dist/components/core/Tabs/Tabs.theme.d.ts +16 -0
- package/dist/components/core/Tabs/Tabs.theme.js +22 -0
- package/dist/components/core/Tabs/Tabs.types.d.ts +142 -0
- package/dist/components/core/Tabs/TabsContent.d.ts +6 -0
- package/dist/components/core/Tabs/TabsContent.js +50 -0
- package/dist/components/core/Tabs/TabsContext.d.ts +10 -0
- package/dist/components/core/Tabs/TabsContext.js +18 -0
- package/dist/components/core/Tabs/TabsList.d.ts +6 -0
- package/dist/components/core/Tabs/TabsList.js +87 -0
- package/dist/components/core/Tabs/TabsTrigger.d.ts +6 -0
- package/dist/components/core/Tabs/TabsTrigger.js +141 -0
- package/dist/components/core/Tabs/index.d.ts +6 -0
- package/dist/components/core/Tag/Tag.animations.d.ts +3 -0
- package/dist/components/core/Tag/Tag.animations.js +31 -0
- package/dist/components/core/Tag/Tag.d.ts +14 -0
- package/dist/components/core/Tag/Tag.js +44 -0
- package/dist/components/core/Tag/Tag.theme.d.ts +2 -0
- package/dist/components/core/Tag/Tag.theme.js +21 -0
- package/dist/components/core/Tag/Tag.types.d.ts +40 -0
- package/dist/components/core/Tag/index.d.ts +3 -0
- package/dist/components/core/Timeline/Timeline.animations.d.ts +23 -0
- package/dist/components/core/Timeline/Timeline.animations.js +92 -0
- package/dist/components/core/Timeline/Timeline.d.ts +8 -0
- package/dist/components/core/Timeline/Timeline.js +47 -0
- package/dist/components/core/Timeline/Timeline.theme.d.ts +21 -0
- package/dist/components/core/Timeline/Timeline.theme.js +32 -0
- package/dist/components/core/Timeline/Timeline.types.d.ts +131 -0
- package/dist/components/core/Timeline/TimelineContent.d.ts +3 -0
- package/dist/components/core/Timeline/TimelineContent.js +21 -0
- package/dist/components/core/Timeline/TimelineItem.d.ts +4 -0
- package/dist/components/core/Timeline/TimelineItem.js +86 -0
- package/dist/components/core/Timeline/TimelineMarker.d.ts +3 -0
- package/dist/components/core/Timeline/TimelineMarker.js +39 -0
- package/dist/components/core/Timeline/index.d.ts +4 -0
- package/dist/components/core/Toast/Toast.animations.d.ts +31 -0
- package/dist/components/core/Toast/Toast.animations.js +55 -0
- package/dist/components/core/Toast/Toast.d.ts +3 -0
- package/dist/components/core/Toast/Toast.js +84 -0
- package/dist/components/core/Toast/Toast.theme.d.ts +2 -0
- package/dist/components/core/Toast/Toast.theme.js +21 -0
- package/dist/components/core/Toast/Toast.types.d.ts +129 -0
- package/dist/components/core/Toast/ToastProvider.d.ts +4 -0
- package/dist/components/core/Toast/ToastProvider.js +104 -0
- package/dist/components/core/Toast/index.d.ts +5 -0
- package/dist/components/core/Toast/useToast.d.ts +2 -0
- package/dist/components/core/Toast/useToast.js +103 -0
- package/dist/components/core/Tooltip/Tooltip.animations.d.ts +32 -0
- package/dist/components/core/Tooltip/Tooltip.animations.js +80 -0
- package/dist/components/core/Tooltip/Tooltip.d.ts +6 -0
- package/dist/components/core/Tooltip/Tooltip.js +132 -0
- package/dist/components/core/Tooltip/Tooltip.theme.d.ts +3 -0
- package/dist/components/core/Tooltip/Tooltip.theme.js +7 -0
- package/dist/components/core/Tooltip/Tooltip.types.d.ts +98 -0
- package/dist/components/core/Tooltip/index.d.ts +3 -0
- package/dist/components/core/Tooltip/useTooltipPositioning.d.ts +12 -0
- package/dist/components/core/Tree/Tree.animations.d.ts +6 -0
- package/dist/components/core/Tree/Tree.animations.js +96 -0
- package/dist/components/core/Tree/Tree.d.ts +2 -0
- package/dist/components/core/Tree/Tree.js +203 -0
- package/dist/components/core/Tree/Tree.theme.d.ts +2 -0
- package/dist/components/core/Tree/Tree.theme.js +10 -0
- package/dist/components/core/Tree/Tree.types.d.ts +62 -0
- package/dist/components/core/Tree/index.d.ts +3 -0
- package/dist/components/core/index.d.ts +55 -0
- package/dist/components/core/index.js +116 -0
- package/dist/components/effects/AIOrb/AIOrb.d.ts +6 -0
- package/dist/components/effects/AIOrb/AIOrb.js +16 -0
- package/dist/components/effects/AIOrb/AIOrb.types.d.ts +12 -0
- package/dist/components/effects/AIOrb/index.d.ts +3 -0
- package/dist/components/effects/AIOrb/variants/DotSphere/DotSphere.d.ts +3 -0
- package/dist/components/effects/AIOrb/variants/DotSphere/DotSphere.js +136 -0
- package/dist/components/effects/AIOrb/variants/DotSphere/DotSphere.shaders.d.ts +16 -0
- package/dist/components/effects/AIOrb/variants/DotSphere/DotSphere.shaders.js +311 -0
- package/dist/components/effects/AIOrb/variants/DotSphere/DotSphere.types.d.ts +37 -0
- package/dist/components/effects/AIOrb/variants/DotSphere/index.d.ts +2 -0
- package/dist/components/effects/AIOrb/variants/Liquid/Liquid.d.ts +3 -0
- package/dist/components/effects/AIOrb/variants/Liquid/Liquid.js +108 -0
- package/dist/components/effects/AIOrb/variants/Liquid/Liquid.noise.d.ts +4 -0
- package/dist/components/effects/AIOrb/variants/Liquid/Liquid.noise.js +138 -0
- package/dist/components/effects/AIOrb/variants/Liquid/Liquid.shaders.d.ts +8 -0
- package/dist/components/effects/AIOrb/variants/Liquid/Liquid.shaders.js +64 -0
- package/dist/components/effects/AIOrb/variants/Liquid/Liquid.types.d.ts +47 -0
- package/dist/components/effects/AIOrb/variants/Liquid/index.d.ts +2 -0
- package/dist/components/effects/AIOrb/variants/index.d.ts +4 -0
- package/dist/components/effects/Animated/Animated.animations.d.ts +7 -0
- package/dist/components/effects/Animated/Animated.animations.js +49 -0
- package/dist/components/effects/Animated/Animated.d.ts +6 -0
- package/dist/components/effects/Animated/Animated.js +35 -0
- package/dist/components/effects/Animated/Animated.types.d.ts +23 -0
- package/dist/components/effects/Animated/AnimatedItem.d.ts +2 -0
- package/dist/components/effects/Animated/AnimatedItem.js +41 -0
- package/dist/components/effects/Animated/index.d.ts +2 -0
- package/dist/components/effects/CustomCursor/CustomCursor.animations.d.ts +16 -0
- package/dist/components/effects/CustomCursor/CustomCursor.animations.js +46 -0
- package/dist/components/effects/CustomCursor/CustomCursor.d.ts +35 -0
- package/dist/components/effects/CustomCursor/CustomCursor.js +323 -0
- package/dist/components/effects/CustomCursor/CustomCursor.theme.d.ts +6 -0
- package/dist/components/effects/CustomCursor/CustomCursor.theme.js +43 -0
- package/dist/components/effects/CustomCursor/CustomCursor.types.d.ts +101 -0
- package/dist/components/effects/CustomCursor/index.d.ts +4 -0
- package/dist/components/effects/GlassEffect/GlassEffect.d.ts +15 -0
- package/dist/components/effects/GlassEffect/GlassEffect.js +38 -0
- package/dist/components/effects/GlassEffect/GlassEffect.types.d.ts +19 -0
- package/dist/components/effects/GlassEffect/index.d.ts +2 -0
- package/dist/components/effects/GlassSurface/GlassSurface.d.ts +8 -0
- package/dist/components/effects/GlassSurface/GlassSurface.js +244 -0
- package/dist/components/effects/GlassSurface/GlassSurface.types.d.ts +52 -0
- package/dist/components/effects/GlassSurface/index.d.ts +2 -0
- package/dist/components/effects/Overlay/Overlay.d.ts +31 -0
- package/dist/components/effects/Overlay/Overlay.js +145 -0
- package/dist/components/effects/Overlay/Overlay.theme.d.ts +13 -0
- package/dist/components/effects/Overlay/Overlay.theme.js +22 -0
- package/dist/components/effects/Overlay/Overlay.types.d.ts +61 -0
- package/dist/components/effects/Overlay/index.d.ts +3 -0
- package/dist/components/effects/SpotlightBorder/SpotlightBorder.d.ts +18 -0
- package/dist/components/effects/SpotlightBorder/SpotlightBorder.js +214 -0
- package/dist/components/effects/SpotlightBorder/SpotlightBorder.shaders.d.ts +7 -0
- package/dist/components/effects/SpotlightBorder/SpotlightBorder.shaders.js +152 -0
- package/dist/components/effects/SpotlightBorder/SpotlightBorder.types.d.ts +61 -0
- package/dist/components/effects/SpotlightBorder/SpotlightBorder.types.js +8 -0
- package/dist/components/effects/SpotlightBorder/index.d.ts +2 -0
- package/dist/components/effects/index.d.ts +14 -0
- package/dist/components/effects/index.js +7 -0
- package/dist/components/forms/Checkbox/Checkbox.d.ts +6 -0
- package/dist/components/forms/Checkbox/Checkbox.js +43 -0
- package/dist/components/forms/Checkbox/Checkbox.theme.d.ts +6 -0
- package/dist/components/forms/Checkbox/Checkbox.theme.js +42 -0
- package/dist/components/forms/Checkbox/Checkbox.types.d.ts +35 -0
- package/dist/components/forms/Checkbox/index.d.ts +3 -0
- package/dist/components/forms/ColorPicker/ColorPicker.animations.d.ts +17 -0
- package/dist/components/forms/ColorPicker/ColorPicker.animations.js +34 -0
- package/dist/components/forms/ColorPicker/ColorPicker.d.ts +27 -0
- package/dist/components/forms/ColorPicker/ColorPicker.js +174 -0
- package/dist/components/forms/ColorPicker/ColorPicker.theme.d.ts +6 -0
- package/dist/components/forms/ColorPicker/ColorPicker.theme.js +20 -0
- package/dist/components/forms/ColorPicker/ColorPicker.types.d.ts +219 -0
- package/dist/components/forms/ColorPicker/ColorPicker2DCanvas.d.ts +10 -0
- package/dist/components/forms/ColorPicker/ColorPicker2DCanvas.js +91 -0
- package/dist/components/forms/ColorPicker/ColorPickerContent.d.ts +7 -0
- package/dist/components/forms/ColorPicker/ColorPickerContent.js +75 -0
- package/dist/components/forms/ColorPicker/ColorPickerEyeDropper.d.ts +7 -0
- package/dist/components/forms/ColorPicker/ColorPickerEyeDropper.js +50 -0
- package/dist/components/forms/ColorPicker/ColorPickerFormatSelector.d.ts +7 -0
- package/dist/components/forms/ColorPicker/ColorPickerFormatSelector.js +27 -0
- package/dist/components/forms/ColorPicker/ColorPickerInput.d.ts +7 -0
- package/dist/components/forms/ColorPicker/ColorPickerInput.js +97 -0
- package/dist/components/forms/ColorPicker/ColorPickerPresets.d.ts +7 -0
- package/dist/components/forms/ColorPicker/ColorPickerPresets.js +56 -0
- package/dist/components/forms/ColorPicker/ColorPickerSliders.d.ts +7 -0
- package/dist/components/forms/ColorPicker/ColorPickerSliders.js +44 -0
- package/dist/components/forms/ColorPicker/ColorPickerSwatch.d.ts +7 -0
- package/dist/components/forms/ColorPicker/ColorPickerSwatch.js +37 -0
- package/dist/components/forms/ColorPicker/ColorPickerTrigger.d.ts +7 -0
- package/dist/components/forms/ColorPicker/ColorPickerTrigger.js +38 -0
- package/dist/components/forms/ColorPicker/colorUtils.d.ts +121 -0
- package/dist/components/forms/ColorPicker/colorUtils.js +324 -0
- package/dist/components/forms/ColorPicker/index.d.ts +17 -0
- package/dist/components/forms/Combobox/Combobox.d.ts +3 -0
- package/dist/components/forms/Combobox/Combobox.js +402 -0
- package/dist/components/forms/Combobox/Combobox.theme.d.ts +6 -0
- package/dist/components/forms/Combobox/Combobox.theme.js +60 -0
- package/dist/components/forms/Combobox/Combobox.types.d.ts +111 -0
- package/dist/components/forms/Combobox/index.d.ts +3 -0
- package/dist/components/forms/DatePicker/DatePicker.animations.d.ts +13 -0
- package/dist/components/forms/DatePicker/DatePicker.animations.js +33 -0
- package/dist/components/forms/DatePicker/DatePicker.d.ts +38 -0
- package/dist/components/forms/DatePicker/DatePicker.js +136 -0
- package/dist/components/forms/DatePicker/DatePicker.theme.d.ts +9 -0
- package/dist/components/forms/DatePicker/DatePicker.theme.js +54 -0
- package/dist/components/forms/DatePicker/DatePicker.types.d.ts +144 -0
- package/dist/components/forms/DatePicker/DatePickerContent.d.ts +7 -0
- package/dist/components/forms/DatePicker/DatePickerContent.js +229 -0
- package/dist/components/forms/DatePicker/DatePickerPresets.d.ts +12 -0
- package/dist/components/forms/DatePicker/DatePickerPresets.js +41 -0
- package/dist/components/forms/DatePicker/DatePickerTrigger.d.ts +7 -0
- package/dist/components/forms/DatePicker/DatePickerTrigger.js +34 -0
- package/dist/components/forms/DatePicker/index.d.ts +3 -0
- package/dist/components/forms/FileUpload/FileUpload.d.ts +23 -0
- package/dist/components/forms/FileUpload/FileUpload.js +212 -0
- package/dist/components/forms/FileUpload/FileUpload.theme.d.ts +25 -0
- package/dist/components/forms/FileUpload/FileUpload.theme.js +36 -0
- package/dist/components/forms/FileUpload/FileUpload.types.d.ts +94 -0
- package/dist/components/forms/FileUpload/index.d.ts +3 -0
- package/dist/components/forms/FormLabel/FormLabel.d.ts +6 -0
- package/dist/components/forms/FormLabel/FormLabel.js +14 -0
- package/dist/components/forms/FormLabel/FormLabel.theme.d.ts +5 -0
- package/dist/components/forms/FormLabel/FormLabel.theme.js +17 -0
- package/dist/components/forms/FormLabel/FormLabel.types.d.ts +28 -0
- package/dist/components/forms/FormLabel/index.d.ts +3 -0
- package/dist/components/forms/Input/Input.d.ts +3 -0
- package/dist/components/forms/Input/Input.js +289 -0
- package/dist/components/forms/Input/Input.theme.d.ts +6 -0
- package/dist/components/forms/Input/Input.theme.js +116 -0
- package/dist/components/forms/Input/Input.types.d.ts +139 -0
- package/dist/components/forms/Input/index.d.ts +3 -0
- package/dist/components/forms/Input/inputMasks.d.ts +97 -0
- package/dist/components/forms/Input/inputMasks.js +431 -0
- package/dist/components/forms/InputAddress/InputAddress.d.ts +19 -0
- package/dist/components/forms/InputAddress/InputAddress.js +69 -0
- package/dist/components/forms/InputAddress/InputAddress.theme.d.ts +26 -0
- package/dist/components/forms/InputAddress/InputAddress.theme.js +35 -0
- package/dist/components/forms/InputAddress/InputAddress.types.d.ts +97 -0
- package/dist/components/forms/InputAddress/index.d.ts +3 -0
- package/dist/components/forms/InputCounter/InputCounter.d.ts +29 -0
- package/dist/components/forms/InputCounter/InputCounter.js +167 -0
- package/dist/components/forms/InputCounter/InputCounter.theme.d.ts +6 -0
- package/dist/components/forms/InputCounter/InputCounter.theme.js +11 -0
- package/dist/components/forms/InputCounter/InputCounter.types.d.ts +54 -0
- package/dist/components/forms/InputCounter/index.d.ts +3 -0
- package/dist/components/forms/InputCreditCard/InputCreditCard.animations.d.ts +9 -0
- package/dist/components/forms/InputCreditCard/InputCreditCard.d.ts +19 -0
- package/dist/components/forms/InputCreditCard/InputCreditCard.js +76 -0
- package/dist/components/forms/InputCreditCard/InputCreditCard.theme.d.ts +31 -0
- package/dist/components/forms/InputCreditCard/InputCreditCard.theme.js +42 -0
- package/dist/components/forms/InputCreditCard/InputCreditCard.types.d.ts +88 -0
- package/dist/components/forms/InputCreditCard/index.d.ts +4 -0
- package/dist/components/forms/InputDate/InputDate.d.ts +28 -0
- package/dist/components/forms/InputDate/InputDate.js +156 -0
- package/dist/components/forms/InputDate/InputDate.theme.d.ts +11 -0
- package/dist/components/forms/InputDate/InputDate.theme.js +13 -0
- package/dist/components/forms/InputDate/InputDate.types.d.ts +25 -0
- package/dist/components/forms/InputDate/index.d.ts +3 -0
- package/dist/components/forms/InputOTP/InputOTP.d.ts +18 -0
- package/dist/components/forms/InputOTP/InputOTP.js +175 -0
- package/dist/components/forms/InputOTP/InputOTP.theme.d.ts +6 -0
- package/dist/components/forms/InputOTP/InputOTP.theme.js +22 -0
- package/dist/components/forms/InputOTP/InputOTP.types.d.ts +49 -0
- package/dist/components/forms/InputOTP/index.d.ts +3 -0
- package/dist/components/forms/InputTag/InputTag.d.ts +40 -0
- package/dist/components/forms/InputTag/InputTag.js +489 -0
- package/dist/components/forms/InputTag/InputTag.theme.d.ts +2 -0
- package/dist/components/forms/InputTag/InputTag.theme.js +16 -0
- package/dist/components/forms/InputTag/InputTag.types.d.ts +107 -0
- package/dist/components/forms/InputTag/index.d.ts +3 -0
- package/dist/components/forms/Radio/Radio.d.ts +6 -0
- package/dist/components/forms/Radio/Radio.js +29 -0
- package/dist/components/forms/Radio/Radio.theme.d.ts +5 -0
- package/dist/components/forms/Radio/Radio.theme.js +16 -0
- package/dist/components/forms/Radio/Radio.types.d.ts +35 -0
- package/dist/components/forms/Radio/index.d.ts +3 -0
- package/dist/components/forms/RichTextEditor/RichTextEditor.animations.d.ts +7 -0
- package/dist/components/forms/RichTextEditor/RichTextEditor.animations.js +31 -0
- package/dist/components/forms/RichTextEditor/RichTextEditor.d.ts +3 -0
- package/dist/components/forms/RichTextEditor/RichTextEditor.js +702 -0
- package/dist/components/forms/RichTextEditor/RichTextEditor.theme.d.ts +9 -0
- package/dist/components/forms/RichTextEditor/RichTextEditor.theme.js +54 -0
- package/dist/components/forms/RichTextEditor/RichTextEditor.types.d.ts +137 -0
- package/dist/components/forms/RichTextEditor/index.d.ts +3 -0
- package/dist/components/forms/Select/Select.animations.d.ts +12 -0
- package/dist/components/forms/Select/Select.animations.js +32 -0
- package/dist/components/forms/Select/Select.d.ts +93 -0
- package/dist/components/forms/Select/Select.js +458 -0
- package/dist/components/forms/Select/Select.theme.d.ts +6 -0
- package/dist/components/forms/Select/Select.theme.js +67 -0
- package/dist/components/forms/Select/Select.types.d.ts +212 -0
- package/dist/components/forms/Select/index.d.ts +7 -0
- package/dist/components/forms/Select/useSelectState.d.ts +72 -0
- package/dist/components/forms/Select/useSelectState.js +171 -0
- package/dist/components/forms/Signature/Signature.d.ts +3 -0
- package/dist/components/forms/Signature/Signature.js +152 -0
- package/dist/components/forms/Signature/Signature.theme.d.ts +6 -0
- package/dist/components/forms/Signature/Signature.theme.js +32 -0
- package/dist/components/forms/Signature/Signature.types.d.ts +93 -0
- package/dist/components/forms/Signature/index.d.ts +3 -0
- package/dist/components/forms/Slider/Slider.d.ts +3 -0
- package/dist/components/forms/Slider/Slider.js +237 -0
- package/dist/components/forms/Slider/Slider.theme.d.ts +17 -0
- package/dist/components/forms/Slider/Slider.theme.js +26 -0
- package/dist/components/forms/Slider/Slider.types.d.ts +109 -0
- package/dist/components/forms/Slider/index.d.ts +3 -0
- package/dist/components/forms/Switch/Switch.d.ts +6 -0
- package/dist/components/forms/Switch/Switch.js +52 -0
- package/dist/components/forms/Switch/Switch.theme.d.ts +18 -0
- package/dist/components/forms/Switch/Switch.theme.js +18 -0
- package/dist/components/forms/Switch/Switch.types.d.ts +47 -0
- package/dist/components/forms/Switch/index.d.ts +3 -0
- package/dist/components/forms/Textarea/Textarea.d.ts +3 -0
- package/dist/components/forms/Textarea/Textarea.js +52 -0
- package/dist/components/forms/Textarea/Textarea.theme.d.ts +6 -0
- package/dist/components/forms/Textarea/Textarea.theme.js +26 -0
- package/dist/components/forms/Textarea/Textarea.types.d.ts +57 -0
- package/dist/components/forms/Textarea/index.d.ts +3 -0
- package/dist/components/forms/TimePicker/TimePicker.animations.d.ts +131 -0
- package/dist/components/forms/TimePicker/TimePicker.d.ts +26 -0
- package/dist/components/forms/TimePicker/TimePicker.js +454 -0
- package/dist/components/forms/TimePicker/TimePicker.theme.d.ts +9 -0
- package/dist/components/forms/TimePicker/TimePicker.theme.js +87 -0
- package/dist/components/forms/TimePicker/TimePicker.types.d.ts +257 -0
- package/dist/components/forms/TimePicker/TimePickerContent.d.ts +12 -0
- package/dist/components/forms/TimePicker/TimePickerContent.js +113 -0
- package/dist/components/forms/TimePicker/TimePickerTrigger.d.ts +8 -0
- package/dist/components/forms/TimePicker/TimePickerTrigger.js +40 -0
- package/dist/components/forms/TimePicker/WheelColumn.d.ts +14 -0
- package/dist/components/forms/TimePicker/WheelColumn.js +87 -0
- package/dist/components/forms/TimePicker/index.d.ts +9 -0
- package/dist/components/forms/TimePicker/useWheelPicker.d.ts +37 -0
- package/dist/components/forms/TimePicker/useWheelPicker.js +138 -0
- package/dist/components/forms/forms.theme.d.ts +68 -0
- package/dist/components/forms/forms.theme.js +121 -0
- package/dist/components/forms/index.d.ts +62 -0
- package/dist/components/forms/index.js +63 -0
- package/dist/hooks/index.d.ts +15 -0
- package/dist/hooks/useClickOutside.d.ts +7 -0
- package/dist/hooks/useClickOutside.js +28 -0
- package/dist/hooks/useFocusTrap.d.ts +10 -0
- package/dist/hooks/useFocusTrap.js +79 -0
- package/dist/hooks/useFormStateMachine.d.ts +31 -0
- package/dist/hooks/useIsClient.d.ts +7 -0
- package/dist/hooks/useIsClient.js +17 -0
- package/dist/hooks/useNetworkStatus.d.ts +40 -0
- package/dist/hooks/useNetworkStatus.js +90 -0
- package/dist/hooks/useOverlay.d.ts +47 -0
- package/dist/hooks/useOverlay.js +71 -0
- package/dist/hooks/useScaleBackground.d.ts +34 -0
- package/dist/hooks/useScaleBackground.js +168 -0
- package/dist/hooks/useSelectPortal.d.ts +28 -0
- package/dist/hooks/useSelectPortal.js +325 -0
- package/dist/hooks/useSlidingNumber.d.ts +34 -0
- package/dist/hooks/useSlidingNumber.js +67 -0
- package/dist/hooks/useStreamingSSE.d.ts +80 -0
- package/dist/hooks/useStreamingSSE.js +236 -0
- package/dist/hooks/useTypewriter.d.ts +51 -0
- package/dist/hooks/useTypewriter.js +120 -0
- package/dist/icons/Icon.d.ts +24 -0
- package/dist/icons/Icon.js +30 -0
- package/dist/icons/Index.d.ts +16 -0
- package/dist/icons/core/ChevronUpDown.d.ts +1 -0
- package/dist/icons/core/ChevronUpDown.js +7 -0
- package/dist/icons/core/DollarIcon.d.ts +1 -0
- package/dist/icons/core/DollarIcon.js +5 -0
- package/dist/icons/core/LockIcon.d.ts +1 -0
- package/dist/icons/core/LockIcon.js +5 -0
- package/dist/icons/core/MinusIcon.d.ts +1 -0
- package/dist/icons/core/MinusIcon.js +7 -0
- package/dist/icons/core/PlusIcon.d.ts +1 -0
- package/dist/icons/core/PlusIcon.js +7 -0
- package/dist/icons/core/SearchIcon.d.ts +1 -0
- package/dist/icons/core/SearchIcon.js +7 -0
- package/dist/icons/core/TickIcon.d.ts +1 -0
- package/dist/icons/core/TickIcon.js +5 -0
- package/dist/icons/core/User.d.ts +1 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.js +219 -0
- package/dist/styles.css +2 -0
- package/dist/theme/ThemeContext.d.ts +15 -0
- package/dist/utils/actionQueue.d.ts +113 -0
- package/dist/utils/actionQueue.js +203 -0
- package/dist/utils/calendarUtils.d.ts +60 -0
- package/dist/utils/cn.d.ts +2 -0
- package/dist/utils/cn.js +8 -0
- package/dist/utils/dateUtils.d.ts +118 -0
- package/dist/utils/dateUtils.js +87 -0
- package/dist/utils/debounce.d.ts +9 -0
- package/dist/utils/debounce.js +17 -0
- package/dist/utils/formValidation.d.ts +20 -0
- package/dist/utils/index.d.ts +15 -0
- package/dist/utils/optimisticErrors.d.ts +79 -0
- package/dist/utils/optimisticErrors.js +27 -0
- package/dist/utils/performanceMonitor.d.ts +56 -0
- package/dist/utils/performanceMonitor.js +102 -0
- package/dist/utils/retryUtils.d.ts +49 -0
- package/dist/utils/retryUtils.js +53 -0
- package/dist/utils/smoothScrollUtils.d.ts +92 -0
- package/dist/utils/smoothScrollUtils.js +122 -0
- package/dist/utils/sseFormatParsers.d.ts +64 -0
- package/dist/utils/sseFormatParsers.js +124 -0
- package/dist/utils/stateMachine.d.ts +43 -0
- package/dist/utils/streamingErrors.d.ts +70 -0
- package/dist/utils/streamingErrors.js +93 -0
- package/dist/utils/typeaheadUtils.d.ts +35 -0
- package/dist/utils/typeaheadUtils.js +60 -0
- package/dist/utils/useClickOutside.d.ts +1 -0
- package/package.json +168 -0
- package/tailwind.preset.cjs +102 -0
|
@@ -0,0 +1,361 @@
|
|
|
1
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
|
+
import { useRef, useState, useId, useEffect, useMemo, useCallback } from 'react';
|
|
3
|
+
import { motion } from 'motion/react';
|
|
4
|
+
import { cn } from '../../../utils/cn.js';
|
|
5
|
+
import { useTooltipPosition } from '../hooks/useTooltipPosition.js';
|
|
6
|
+
import { useChartAccessibility } from '../hooks/useChartAccessibility.js';
|
|
7
|
+
import { XAxis } from '../shared/ChartAxis/XAxis.js';
|
|
8
|
+
import { YAxis } from '../shared/ChartAxis/YAxis.js';
|
|
9
|
+
import { HorizontalGrid } from '../shared/ChartGrid/HorizontalGrid.js';
|
|
10
|
+
import { ChartTooltip } from '../shared/ChartTooltip/ChartTooltip.js';
|
|
11
|
+
import { ChartMarker } from '../shared/ChartMarker/ChartMarker.js';
|
|
12
|
+
import { ChartCrosshair } from '../shared/ChartCrosshair/ChartCrosshair.js';
|
|
13
|
+
import { generateNiceTicks } from '../utils/chart-validation.js';
|
|
14
|
+
import { generateCurvePath } from '../utils/path-utils.js';
|
|
15
|
+
import { LINE_CHART_DEFAULTS } from './LineChart.types.js';
|
|
16
|
+
|
|
17
|
+
// Production-ready color system with CORRECT CSS variable syntax
|
|
18
|
+
const getSeriesColorClass = (index) => {
|
|
19
|
+
const colors = [
|
|
20
|
+
"stroke-[var(--color-primary)]",
|
|
21
|
+
"stroke-[var(--color-warning)]",
|
|
22
|
+
"stroke-[var(--color-success)]",
|
|
23
|
+
"stroke-[var(--color-danger)]",
|
|
24
|
+
];
|
|
25
|
+
return colors[index % colors.length];
|
|
26
|
+
};
|
|
27
|
+
// Get color value for SVG elements and tooltips
|
|
28
|
+
const getSeriesFillColor = (index) => {
|
|
29
|
+
const colorVars = [
|
|
30
|
+
"var(--color-primary)",
|
|
31
|
+
"var(--color-warning)",
|
|
32
|
+
"var(--color-success)",
|
|
33
|
+
"var(--color-danger)",
|
|
34
|
+
];
|
|
35
|
+
return colorVars[index % colorVars.length];
|
|
36
|
+
};
|
|
37
|
+
const LineChart = ({ data, config,
|
|
38
|
+
// Standardized display props with defaults
|
|
39
|
+
showGrid = LINE_CHART_DEFAULTS.showGrid, showXAxis = LINE_CHART_DEFAULTS.showXAxis, showYAxis = LINE_CHART_DEFAULTS.showYAxis, minValue: propMinValue, maxValue: propMaxValue,
|
|
40
|
+
// Simple semantic color prop
|
|
41
|
+
color = LINE_CHART_DEFAULTS.color,
|
|
42
|
+
// Standardized visual props with defaults (renamed from line-specific names)
|
|
43
|
+
dotRadius, radius, // @deprecated Use dotRadius instead
|
|
44
|
+
strokeWidth = LINE_CHART_DEFAULTS.strokeWidth, curved = LINE_CHART_DEFAULTS.curved, curveType = LINE_CHART_DEFAULTS.curveType, showDots = LINE_CHART_DEFAULTS.showDots,
|
|
45
|
+
// Base props
|
|
46
|
+
className, title, description, enableKeyboardNavigation = LINE_CHART_DEFAULTS.enableKeyboardNavigation, children, ...props }) => {
|
|
47
|
+
var _a;
|
|
48
|
+
// Resolve dotRadius with backward compatibility
|
|
49
|
+
const resolvedDotRadius = (_a = dotRadius !== null && dotRadius !== void 0 ? dotRadius : radius) !== null && _a !== void 0 ? _a : LINE_CHART_DEFAULTS.dotRadius;
|
|
50
|
+
// Development warning for deprecated radius prop
|
|
51
|
+
if (process.env.NODE_ENV !== "production" && radius !== undefined) {
|
|
52
|
+
console.warn("[LineChart]: The `radius` prop is deprecated and will be removed in a future version. " +
|
|
53
|
+
"Use `dotRadius` instead.");
|
|
54
|
+
}
|
|
55
|
+
// Simplified color system - no complex theme hook needed
|
|
56
|
+
const containerRef = useRef(null);
|
|
57
|
+
const [dimensions, setDimensions] = useState({ width: 600, height: 400 });
|
|
58
|
+
const revealClipId = useId();
|
|
59
|
+
const shadowFilterId = useId();
|
|
60
|
+
const verticalFadeId = useId();
|
|
61
|
+
const horizontalFadeId = useId();
|
|
62
|
+
const ANIMATION_DURATION = 1.5;
|
|
63
|
+
const [hoveredPoint, setHoveredPoint] = useState(null);
|
|
64
|
+
// Detect if device is mobile/touch
|
|
65
|
+
const isMobile = typeof window !== "undefined" &&
|
|
66
|
+
("ontouchstart" in window || navigator.maxTouchPoints > 0);
|
|
67
|
+
// Use the new tooltip positioning hook
|
|
68
|
+
const { tooltipData, tooltipRef, handleMouseEnter, handleMouseMove, handleMouseLeave, } = useTooltipPosition({
|
|
69
|
+
containerRef,
|
|
70
|
+
isMobile,
|
|
71
|
+
});
|
|
72
|
+
// Use accessibility hook
|
|
73
|
+
const { chartAccessibilityProps, descriptionProps, focusedElementIndex, isKeyboardMode, handleMouseInteraction, } = useChartAccessibility({
|
|
74
|
+
chartType: "line",
|
|
75
|
+
data,
|
|
76
|
+
config,
|
|
77
|
+
title,
|
|
78
|
+
description,
|
|
79
|
+
enableKeyboardNavigation,
|
|
80
|
+
});
|
|
81
|
+
// Measure container dimensions
|
|
82
|
+
useEffect(() => {
|
|
83
|
+
const updateDimensions = () => {
|
|
84
|
+
if (containerRef.current) {
|
|
85
|
+
const { width, height } = containerRef.current.getBoundingClientRect();
|
|
86
|
+
setDimensions({
|
|
87
|
+
width: width || 600,
|
|
88
|
+
height: height || 400,
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
};
|
|
92
|
+
updateDimensions();
|
|
93
|
+
const resizeObserver = new ResizeObserver(updateDimensions);
|
|
94
|
+
if (containerRef.current) {
|
|
95
|
+
resizeObserver.observe(containerRef.current);
|
|
96
|
+
}
|
|
97
|
+
return () => {
|
|
98
|
+
resizeObserver.disconnect();
|
|
99
|
+
};
|
|
100
|
+
}, []);
|
|
101
|
+
// Early return if no data
|
|
102
|
+
if (!data || data.length === 0) {
|
|
103
|
+
return (jsx("div", { className: cn("chart-container flex items-center justify-center text-[var(--color-text-placeholder)]", className), role: "img", "aria-label": "Empty line chart", ...props, children: jsx("span", { children: "No data available" }) }));
|
|
104
|
+
}
|
|
105
|
+
// Calculate dimensions
|
|
106
|
+
const margin = useMemo(() => ({
|
|
107
|
+
top: 0,
|
|
108
|
+
right: 0,
|
|
109
|
+
bottom: showXAxis ? 40 : 0, // Reduce bottom margin when X-axis is hidden
|
|
110
|
+
left: showYAxis ? 60 : 0, // Reduce left margin when Y-axis is hidden
|
|
111
|
+
}), [showXAxis, showYAxis]);
|
|
112
|
+
const innerWidth = dimensions.width - margin.left - margin.right;
|
|
113
|
+
const innerHeight = dimensions.height - margin.top - margin.bottom;
|
|
114
|
+
// Get all data keys from config
|
|
115
|
+
const dataKeys = useMemo(() => Object.keys(config), [config]);
|
|
116
|
+
// Calculate scales
|
|
117
|
+
const { minValue, maxValue } = useMemo(() => {
|
|
118
|
+
const rawMaxValue = Math.max(...data.map((item) => Math.max(...dataKeys.map((key) => {
|
|
119
|
+
const value = item[key];
|
|
120
|
+
return typeof value === "number" ? value : 0;
|
|
121
|
+
}))));
|
|
122
|
+
const rawMinValue = Math.min(...data.map((item) => Math.min(...dataKeys.map((key) => {
|
|
123
|
+
const value = item[key];
|
|
124
|
+
return typeof value === "number" ? value : 0;
|
|
125
|
+
}))));
|
|
126
|
+
// Compute nice axis boundaries using Heckbert's algorithm
|
|
127
|
+
const dataMinWithZero = Math.min(rawMinValue, 0);
|
|
128
|
+
const dataMaxWithZero = Math.max(rawMaxValue, 0);
|
|
129
|
+
const { niceMin, niceMax } = generateNiceTicks(dataMinWithZero, dataMaxWithZero, 5);
|
|
130
|
+
return {
|
|
131
|
+
minValue: propMinValue !== null && propMinValue !== void 0 ? propMinValue : niceMin,
|
|
132
|
+
maxValue: propMaxValue !== null && propMaxValue !== void 0 ? propMaxValue : niceMax,
|
|
133
|
+
};
|
|
134
|
+
}, [data, dataKeys, propMinValue, propMaxValue]);
|
|
135
|
+
// Calculate point position
|
|
136
|
+
const getPointPosition = useCallback((dataIndex, value) => {
|
|
137
|
+
// Spread points evenly across the full width
|
|
138
|
+
// First point at left edge (margin.left), last point at right edge (margin.left + innerWidth)
|
|
139
|
+
const x = data.length === 1
|
|
140
|
+
? margin.left + innerWidth / 2 // Center single point
|
|
141
|
+
: margin.left + (dataIndex / (data.length - 1)) * innerWidth;
|
|
142
|
+
const y = margin.top +
|
|
143
|
+
innerHeight -
|
|
144
|
+
((value - minValue) / (maxValue - minValue)) * innerHeight;
|
|
145
|
+
return { x, y };
|
|
146
|
+
}, [data.length, margin.left, margin.top, innerWidth, innerHeight, minValue, maxValue]);
|
|
147
|
+
// Precompute all line paths
|
|
148
|
+
const allPaths = useMemo(() => {
|
|
149
|
+
const result = {};
|
|
150
|
+
dataKeys.forEach((key) => {
|
|
151
|
+
const segments = [];
|
|
152
|
+
let currentSegment = [];
|
|
153
|
+
data.forEach((item, index) => {
|
|
154
|
+
const rawValue = item[key];
|
|
155
|
+
const isNull = rawValue === null || rawValue === undefined;
|
|
156
|
+
if (isNull) {
|
|
157
|
+
if (currentSegment.length > 0) {
|
|
158
|
+
segments.push(currentSegment);
|
|
159
|
+
currentSegment = [];
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
else {
|
|
163
|
+
const value = typeof rawValue === "number" ? rawValue : 0;
|
|
164
|
+
const { x, y } = getPointPosition(index, value);
|
|
165
|
+
currentSegment.push({ x, y });
|
|
166
|
+
}
|
|
167
|
+
});
|
|
168
|
+
if (currentSegment.length > 0) {
|
|
169
|
+
segments.push(currentSegment);
|
|
170
|
+
}
|
|
171
|
+
result[key] = segments
|
|
172
|
+
.map((segment) => generateCurvePath(segment, curved ? curveType : "linear"))
|
|
173
|
+
.join(" ");
|
|
174
|
+
});
|
|
175
|
+
return result;
|
|
176
|
+
}, [data, dataKeys, curved, curveType, getPointPosition]);
|
|
177
|
+
// Handle keyboard focus tooltips
|
|
178
|
+
useEffect(() => {
|
|
179
|
+
if (isKeyboardMode &&
|
|
180
|
+
focusedElementIndex >= 0 &&
|
|
181
|
+
focusedElementIndex < data.length) {
|
|
182
|
+
const item = data[focusedElementIndex];
|
|
183
|
+
// Create multi-series tooltip data
|
|
184
|
+
const seriesData = dataKeys.map((seriesKey, keyIndex) => {
|
|
185
|
+
var _a, _b;
|
|
186
|
+
const seriesValue = item[seriesKey];
|
|
187
|
+
const numValue = typeof seriesValue === "number" ? seriesValue : 0;
|
|
188
|
+
return {
|
|
189
|
+
key: seriesKey,
|
|
190
|
+
label: ((_a = config[seriesKey]) === null || _a === void 0 ? void 0 : _a.label) || seriesKey,
|
|
191
|
+
value: numValue,
|
|
192
|
+
color: ((_b = config[seriesKey]) === null || _b === void 0 ? void 0 : _b.color) || getSeriesFillColor(keyIndex),
|
|
193
|
+
};
|
|
194
|
+
});
|
|
195
|
+
const content = {
|
|
196
|
+
category: item.name || `Category ${focusedElementIndex + 1}`,
|
|
197
|
+
series: seriesData,
|
|
198
|
+
};
|
|
199
|
+
// Calculate position for focused point
|
|
200
|
+
const pointX = data.length === 1
|
|
201
|
+
? margin.left + innerWidth / 2
|
|
202
|
+
: margin.left +
|
|
203
|
+
(focusedElementIndex / (data.length - 1)) * innerWidth;
|
|
204
|
+
const svgCoordinates = {
|
|
205
|
+
x: pointX,
|
|
206
|
+
y: margin.top + innerHeight / 2,
|
|
207
|
+
dimensions,
|
|
208
|
+
};
|
|
209
|
+
// Simulate mouse enter for keyboard focus
|
|
210
|
+
const syntheticEvent = new MouseEvent("mouseenter", {
|
|
211
|
+
clientX: pointX,
|
|
212
|
+
clientY: margin.top + innerHeight / 2,
|
|
213
|
+
});
|
|
214
|
+
handleMouseEnter(syntheticEvent, content, svgCoordinates);
|
|
215
|
+
}
|
|
216
|
+
else if (isKeyboardMode && focusedElementIndex === -1) {
|
|
217
|
+
// Only clear tooltip when explicitly exiting keyboard mode (Escape key)
|
|
218
|
+
handleMouseLeave();
|
|
219
|
+
}
|
|
220
|
+
// Don't clear tooltips when switching from keyboard to mouse mode
|
|
221
|
+
}, [
|
|
222
|
+
isKeyboardMode,
|
|
223
|
+
focusedElementIndex,
|
|
224
|
+
data,
|
|
225
|
+
config,
|
|
226
|
+
dimensions,
|
|
227
|
+
margin,
|
|
228
|
+
innerWidth,
|
|
229
|
+
innerHeight,
|
|
230
|
+
dataKeys,
|
|
231
|
+
handleMouseEnter,
|
|
232
|
+
handleMouseLeave,
|
|
233
|
+
]);
|
|
234
|
+
return (jsxs("div", { ref: containerRef, className: cn("chart-container w-full h-full", className), ...chartAccessibilityProps, onMouseEnter: handleMouseInteraction, onMouseMove: handleMouseInteraction, ...props, children: [descriptionProps && jsx("div", { ...descriptionProps }), jsxs("svg", { width: "100%", height: "100%", viewBox: `0 0 ${dimensions.width} ${dimensions.height}`, className: "overflow-visible", role: "presentation", children: [jsxs("defs", { children: [jsx("filter", { id: shadowFilterId, x: "-20%", y: "-20%", width: "140%", height: "140%", children: jsx("feDropShadow", { dx: "8", dy: "8", stdDeviation: "8", floodOpacity: "0.15", floodColor: "#000000" }) }), jsxs("linearGradient", { id: verticalFadeId, x1: "0%", y1: "0%", x2: "0%", y2: "100%", children: [jsx("stop", { offset: "0%", stopColor: "#6b7280", stopOpacity: "0" }), jsx("stop", { offset: "40%", stopColor: "#6b7280", stopOpacity: "0.3" }), jsx("stop", { offset: "50%", stopColor: "#6b7280", stopOpacity: "0.5" }), jsx("stop", { offset: "60%", stopColor: "#6b7280", stopOpacity: "0.3" }), jsx("stop", { offset: "100%", stopColor: "#6b7280", stopOpacity: "0" })] }), jsxs("linearGradient", { id: horizontalFadeId, x1: "0%", y1: "0%", x2: "100%", y2: "0%", children: [jsx("stop", { offset: "0%", stopColor: "#6b7280", stopOpacity: "0" }), jsx("stop", { offset: "40%", stopColor: "#6b7280", stopOpacity: "0.3" }), jsx("stop", { offset: "50%", stopColor: "#6b7280", stopOpacity: "0.5" }), jsx("stop", { offset: "60%", stopColor: "#6b7280", stopOpacity: "0.3" }), jsx("stop", { offset: "100%", stopColor: "#6b7280", stopOpacity: "0" })] }), jsx("clipPath", { id: revealClipId, children: jsx(motion.rect, { initial: { width: 0, x: margin.left, y: margin.top }, animate: {
|
|
235
|
+
width: innerWidth + margin.right,
|
|
236
|
+
x: margin.left,
|
|
237
|
+
y: margin.top,
|
|
238
|
+
}, height: innerHeight, transition: {
|
|
239
|
+
duration: ANIMATION_DURATION,
|
|
240
|
+
ease: "easeOut",
|
|
241
|
+
} }) })] }), jsx(HorizontalGrid, { show: showGrid, x: margin.left, y: margin.top, width: innerWidth, height: innerHeight, lineCount: 5 }), jsx(ChartCrosshair, { show: hoveredPoint !== null, x: hoveredPoint !== null
|
|
242
|
+
? data.length === 1
|
|
243
|
+
? margin.left + innerWidth / 2
|
|
244
|
+
: margin.left +
|
|
245
|
+
(hoveredPoint.index / (data.length - 1)) * innerWidth
|
|
246
|
+
: 0, y: hoveredPoint !== null && dataKeys.length === 1
|
|
247
|
+
? (() => {
|
|
248
|
+
const item = data[hoveredPoint.index];
|
|
249
|
+
const singleKey = dataKeys[0];
|
|
250
|
+
const singleValue = item[singleKey];
|
|
251
|
+
const numValue = typeof singleValue === "number" ? singleValue : 0;
|
|
252
|
+
return (margin.top +
|
|
253
|
+
innerHeight -
|
|
254
|
+
((numValue - minValue) / (maxValue - minValue)) *
|
|
255
|
+
innerHeight);
|
|
256
|
+
})()
|
|
257
|
+
: undefined, margin: margin, innerWidth: innerWidth, innerHeight: innerHeight, showHorizontal: dataKeys.length === 1 }), jsx(YAxis, { show: showYAxis, min: minValue, max: maxValue, x: margin.left, y: margin.top, height: innerHeight, showGrid: false, gridWidth: innerWidth, tickFormatter: (value) => {
|
|
258
|
+
if (Math.abs(value) >= 1000)
|
|
259
|
+
return `${(value / 1000).toFixed(0)}k`;
|
|
260
|
+
return value.toString();
|
|
261
|
+
} }), minValue < 0 && maxValue > 0 && (jsx("line", { x1: margin.left, y1: margin.top + innerHeight - ((0 - minValue) / (maxValue - minValue)) * innerHeight, x2: margin.left + innerWidth, y2: margin.top + innerHeight - ((0 - minValue) / (maxValue - minValue)) * innerHeight, className: "stroke-[var(--color-text-secondary)]", strokeWidth: 1, opacity: 0.6 })), jsx("g", { className: "chart-lines", children: dataKeys.map((key, keyIndex) => {
|
|
262
|
+
const targetPath = allPaths[key];
|
|
263
|
+
const colorClass = getSeriesColorClass(keyIndex);
|
|
264
|
+
return (jsxs("g", { clipPath: `url(#${revealClipId})`, children: [jsx("path", { d: targetPath, fill: "none", strokeWidth: strokeWidth, strokeLinecap: "round", className: cn("transition-all duration-200", colorClass), filter: `url(#${shadowFilterId})` }), showDots &&
|
|
265
|
+
data.map((item, dataIndex) => {
|
|
266
|
+
const rawValue = item[key];
|
|
267
|
+
const isNull = rawValue === null || rawValue === undefined;
|
|
268
|
+
const value = isNull
|
|
269
|
+
? 0
|
|
270
|
+
: typeof rawValue === "number"
|
|
271
|
+
? rawValue
|
|
272
|
+
: 0;
|
|
273
|
+
// Don't render dots for null values
|
|
274
|
+
if (isNull)
|
|
275
|
+
return null;
|
|
276
|
+
const { x, y } = getPointPosition(dataIndex, value);
|
|
277
|
+
const isFocused = isKeyboardMode && focusedElementIndex === dataIndex;
|
|
278
|
+
return (jsx(motion.g, { initial: { opacity: 0, scale: 0 }, animate: { opacity: 1, scale: 1 }, transition: {
|
|
279
|
+
// Sync with the line reveal: calculate when the line reaches this point
|
|
280
|
+
delay: (dataIndex / (data.length - 1)) *
|
|
281
|
+
ANIMATION_DURATION,
|
|
282
|
+
type: "spring",
|
|
283
|
+
stiffness: 260,
|
|
284
|
+
damping: 20,
|
|
285
|
+
}, style: {
|
|
286
|
+
originX: "50%",
|
|
287
|
+
originY: "50%",
|
|
288
|
+
transformBox: "fill-box",
|
|
289
|
+
}, children: jsx(ChartMarker, { cx: x, cy: y, radius: isFocused
|
|
290
|
+
? resolvedDotRadius + 2
|
|
291
|
+
: resolvedDotRadius, colorClass: cn(colorClass, isFocused &&
|
|
292
|
+
"stroke-[var(--color-primary-600)] stroke-2") }) }, `${key}-${dataIndex}`));
|
|
293
|
+
})] }, key));
|
|
294
|
+
}) }), !showDots && hoveredPoint !== null && (jsx("g", { className: "chart-hover-markers", children: dataKeys.map((key, keyIndex) => {
|
|
295
|
+
const item = data[hoveredPoint.index];
|
|
296
|
+
const rawValue = item[key];
|
|
297
|
+
const isNull = rawValue === null || rawValue === undefined;
|
|
298
|
+
const value = isNull
|
|
299
|
+
? 0
|
|
300
|
+
: typeof rawValue === "number"
|
|
301
|
+
? rawValue
|
|
302
|
+
: 0;
|
|
303
|
+
// Don't render hover markers for null values
|
|
304
|
+
if (isNull)
|
|
305
|
+
return null;
|
|
306
|
+
const { x, y } = getPointPosition(hoveredPoint.index, value);
|
|
307
|
+
const colorClass = getSeriesColorClass(keyIndex);
|
|
308
|
+
return (jsx(ChartMarker, { cx: x, cy: y, radius: resolvedDotRadius, colorClass: colorClass }, `hover-${key}-${hoveredPoint.index}`));
|
|
309
|
+
}) })), jsx("g", { className: "chart-hover-areas", children: data.map((item, dataIndex) => {
|
|
310
|
+
// Calculate hover area based on new point positioning
|
|
311
|
+
const pointX = data.length === 1
|
|
312
|
+
? margin.left + innerWidth / 2
|
|
313
|
+
: margin.left + (dataIndex / (data.length - 1)) * innerWidth;
|
|
314
|
+
// Create hover area around each point
|
|
315
|
+
const hoverWidth = data.length === 1 ? innerWidth : innerWidth / (data.length - 1);
|
|
316
|
+
const hoverX = data.length === 1
|
|
317
|
+
? margin.left
|
|
318
|
+
: Math.max(margin.left, pointX - hoverWidth / 2);
|
|
319
|
+
// Ensure hover area doesn't exceed chart bounds
|
|
320
|
+
const adjustedWidth = data.length === 1
|
|
321
|
+
? innerWidth
|
|
322
|
+
: Math.min(hoverWidth, margin.left + innerWidth - hoverX);
|
|
323
|
+
return (jsx("rect", { x: hoverX, y: margin.top, width: adjustedWidth, height: innerHeight, fill: "transparent", className: "cursor-pointer", onMouseEnter: (e) => {
|
|
324
|
+
setHoveredPoint({ index: dataIndex, key: dataKeys[0] });
|
|
325
|
+
// Create multi-series tooltip data
|
|
326
|
+
const seriesData = dataKeys.map((seriesKey, keyIndex) => {
|
|
327
|
+
var _a, _b;
|
|
328
|
+
const seriesValue = item[seriesKey];
|
|
329
|
+
const numValue = typeof seriesValue === "number" ? seriesValue : 0;
|
|
330
|
+
return {
|
|
331
|
+
key: seriesKey,
|
|
332
|
+
label: ((_a = config[seriesKey]) === null || _a === void 0 ? void 0 : _a.label) || seriesKey,
|
|
333
|
+
value: numValue,
|
|
334
|
+
color: ((_b = config[seriesKey]) === null || _b === void 0 ? void 0 : _b.color) ||
|
|
335
|
+
getSeriesFillColor(keyIndex),
|
|
336
|
+
};
|
|
337
|
+
});
|
|
338
|
+
const content = {
|
|
339
|
+
category: item.name || `Category ${dataIndex + 1}`,
|
|
340
|
+
series: seriesData,
|
|
341
|
+
};
|
|
342
|
+
const svgCoordinates = {
|
|
343
|
+
x: pointX,
|
|
344
|
+
y: margin.top + innerHeight / 2,
|
|
345
|
+
dimensions,
|
|
346
|
+
};
|
|
347
|
+
handleMouseEnter(e, content, svgCoordinates);
|
|
348
|
+
}, onMouseMove: (e) => {
|
|
349
|
+
if ((hoveredPoint === null || hoveredPoint === void 0 ? void 0 : hoveredPoint.index) === dataIndex) {
|
|
350
|
+
const svgCoordinates = {
|
|
351
|
+
x: pointX,
|
|
352
|
+
y: margin.top + innerHeight / 2,
|
|
353
|
+
dimensions,
|
|
354
|
+
};
|
|
355
|
+
handleMouseMove(e, svgCoordinates);
|
|
356
|
+
}
|
|
357
|
+
}, onMouseLeave: handleMouseLeave }, `hover-${dataIndex}`));
|
|
358
|
+
}) }), jsx(XAxis, { show: showXAxis, data: data, x: margin.left, y: margin.top + innerHeight, width: innerWidth, categoryWidth: innerWidth / data.length, categoryGap: 0, alignWithEdge: true })] }), jsx(ChartTooltip, { active: !!tooltipData, position: tooltipData ? { x: tooltipData.x, y: tooltipData.y } : { x: 0, y: 0 }, tooltipRef: tooltipRef, content: tooltipData === null || tooltipData === void 0 ? void 0 : tooltipData.content, chartType: "line" }), children] }));
|
|
359
|
+
};
|
|
360
|
+
|
|
361
|
+
export { LineChart };
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { BaseChartProps, StandardChartDisplayProps } from '../types/chart.types';
|
|
2
|
+
export type SemanticColor = 'primary' | 'secondary' | 'success' | 'warning' | 'danger';
|
|
3
|
+
export interface LineChartProps extends BaseChartProps, Omit<StandardChartDisplayProps, 'variant' | 'theme'> {
|
|
4
|
+
color?: SemanticColor;
|
|
5
|
+
dotRadius?: number;
|
|
6
|
+
radius?: number;
|
|
7
|
+
strokeWidth?: number;
|
|
8
|
+
curved?: boolean;
|
|
9
|
+
curveType?: 'linear' | 'monotone';
|
|
10
|
+
showDots?: boolean;
|
|
11
|
+
}
|
|
12
|
+
export declare const LINE_CHART_DEFAULTS: {
|
|
13
|
+
readonly color: undefined;
|
|
14
|
+
readonly dotRadius: 4;
|
|
15
|
+
readonly radius: 4;
|
|
16
|
+
readonly strokeWidth: 2;
|
|
17
|
+
readonly curved: true;
|
|
18
|
+
readonly curveType: import("../types/chart.types").CurveType;
|
|
19
|
+
readonly showDots: true;
|
|
20
|
+
readonly showGrid: true;
|
|
21
|
+
readonly showXAxis: true;
|
|
22
|
+
readonly showYAxis: true;
|
|
23
|
+
readonly barRadius: 32;
|
|
24
|
+
readonly cellRadius: 4;
|
|
25
|
+
readonly gap: 4;
|
|
26
|
+
readonly categoryGap: 16;
|
|
27
|
+
readonly fillOpacity: 0.3;
|
|
28
|
+
readonly showStroke: true;
|
|
29
|
+
readonly orientation: "vertical" | "horizontal";
|
|
30
|
+
readonly stacked: false;
|
|
31
|
+
readonly variant: import("../types/chart.types").ChartVariant;
|
|
32
|
+
readonly enableKeyboardNavigation: true;
|
|
33
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { CHART_DEFAULTS } from '../types/chart.types.js';
|
|
2
|
+
|
|
3
|
+
// Default values using centralized defaults
|
|
4
|
+
const LINE_CHART_DEFAULTS = {
|
|
5
|
+
...CHART_DEFAULTS,
|
|
6
|
+
color: undefined, // Defaults to auto-cycling through semantic colors
|
|
7
|
+
dotRadius: CHART_DEFAULTS.dotRadius, // 20 - For dot markers
|
|
8
|
+
radius: CHART_DEFAULTS.dotRadius, // @deprecated - kept for backward compatibility
|
|
9
|
+
strokeWidth: CHART_DEFAULTS.strokeWidth,
|
|
10
|
+
curved: CHART_DEFAULTS.curved,
|
|
11
|
+
curveType: CHART_DEFAULTS.curveType,
|
|
12
|
+
showDots: CHART_DEFAULTS.showDots,
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
export { LINE_CHART_DEFAULTS };
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { AnimationPreset } from "../utils/animation-utils";
|
|
2
|
+
/**
|
|
3
|
+
* Animation configuration for the RadarChart component
|
|
4
|
+
*
|
|
5
|
+
* Uses the shared spring animation system from the charts utilities.
|
|
6
|
+
* The radar chart animates each data polygon from the center outward
|
|
7
|
+
* with a slight stagger between series.
|
|
8
|
+
*/
|
|
9
|
+
export declare const RADAR_CHART_ANIMATIONS: {
|
|
10
|
+
/** Spring preset for data polygon entrance */
|
|
11
|
+
readonly preset: AnimationPreset;
|
|
12
|
+
/** Initial delay before the first series animates (seconds) */
|
|
13
|
+
readonly initialDelay: 0.15;
|
|
14
|
+
/** Stagger delay between each series polygon (seconds) */
|
|
15
|
+
readonly seriesStagger: 0.12;
|
|
16
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Animation configuration for the RadarChart component
|
|
3
|
+
*
|
|
4
|
+
* Uses the shared spring animation system from the charts utilities.
|
|
5
|
+
* The radar chart animates each data polygon from the center outward
|
|
6
|
+
* with a slight stagger between series.
|
|
7
|
+
*/
|
|
8
|
+
const RADAR_CHART_ANIMATIONS = {
|
|
9
|
+
/** Spring preset for data polygon entrance */
|
|
10
|
+
preset: "smooth",
|
|
11
|
+
/** Initial delay before the first series animates (seconds) */
|
|
12
|
+
initialDelay: 0.15,
|
|
13
|
+
/** Stagger delay between each series polygon (seconds) */
|
|
14
|
+
seriesStagger: 0.12,
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export { RADAR_CHART_ANIMATIONS };
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import React__default, { useRef, useMemo, useCallback } from 'react';
|
|
3
|
+
import { useReducedMotion, motion } from 'motion/react';
|
|
4
|
+
import { cn } from '../../../utils/cn.js';
|
|
5
|
+
import { radarChartTheme } from './RadarChart.theme.js';
|
|
6
|
+
import { RADAR_CHART_ANIMATIONS } from './RadarChart.animations.js';
|
|
7
|
+
import { getSpringAnimation, getStaggerDelay } from '../utils/animation-utils.js';
|
|
8
|
+
import { ChartTooltip } from '../shared/ChartTooltip/ChartTooltip.js';
|
|
9
|
+
import { useTooltipPosition } from '../hooks/useTooltipPosition.js';
|
|
10
|
+
|
|
11
|
+
/* -------------------------------------------------------------------------- */
|
|
12
|
+
/* Geometry helpers */
|
|
13
|
+
/* -------------------------------------------------------------------------- */
|
|
14
|
+
function polarToCartesian(cx, cy, radius, angleRad) {
|
|
15
|
+
return {
|
|
16
|
+
x: cx + radius * Math.cos(angleRad),
|
|
17
|
+
y: cy + radius * Math.sin(angleRad),
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
function axisAngle(index, total) {
|
|
21
|
+
return (2 * Math.PI * index) / total - Math.PI / 2;
|
|
22
|
+
}
|
|
23
|
+
function buildPolygonPoints(values, maxValue, cx, cy, chartRadius) {
|
|
24
|
+
return values
|
|
25
|
+
.map((v, i) => {
|
|
26
|
+
const ratio = maxValue > 0 ? Math.min(v, maxValue) / maxValue : 0;
|
|
27
|
+
const r = ratio * chartRadius;
|
|
28
|
+
const angle = axisAngle(i, values.length);
|
|
29
|
+
const { x, y } = polarToCartesian(cx, cy, r, angle);
|
|
30
|
+
return `${x},${y}`;
|
|
31
|
+
})
|
|
32
|
+
.join(" ");
|
|
33
|
+
}
|
|
34
|
+
/* -------------------------------------------------------------------------- */
|
|
35
|
+
/* Component */
|
|
36
|
+
/* -------------------------------------------------------------------------- */
|
|
37
|
+
const RadarChart = ({ axes, series, size = 400, gridLevels = 5, maxValue: maxValueProp, showGrid = true, showLabels = true, showLegend = true, showTooltip = true, showAnimation = true, fillOpacity = 0.25, strokeWidth = 2, className, theme: themeOverrides, ...props }) => {
|
|
38
|
+
const shouldReduceMotion = useReducedMotion();
|
|
39
|
+
const containerRef = useRef(null);
|
|
40
|
+
// Tooltip setup
|
|
41
|
+
const isMobile = typeof window !== "undefined" && window.innerWidth < 768;
|
|
42
|
+
const { tooltipData, tooltipRef, handleMouseEnter, handleMouseMove, handleMouseLeave, } = useTooltipPosition({
|
|
43
|
+
containerRef,
|
|
44
|
+
isMobile,
|
|
45
|
+
});
|
|
46
|
+
// Merge theme overrides
|
|
47
|
+
const theme = useMemo(() => ({ ...radarChartTheme, ...(themeOverrides || {}) }), [themeOverrides]);
|
|
48
|
+
const axisCount = axes.length;
|
|
49
|
+
// Auto-detect maxValue when not provided
|
|
50
|
+
const maxValue = useMemo(() => {
|
|
51
|
+
if (maxValueProp !== undefined)
|
|
52
|
+
return maxValueProp;
|
|
53
|
+
let max = 0;
|
|
54
|
+
for (const s of series) {
|
|
55
|
+
for (const v of s.data) {
|
|
56
|
+
if (v > max)
|
|
57
|
+
max = v;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
return max > 0 ? Math.ceil(max / 10) * 10 : 100;
|
|
61
|
+
}, [maxValueProp, series]);
|
|
62
|
+
// Layout constants
|
|
63
|
+
const labelOffset = 24;
|
|
64
|
+
const chartRadius = (size - labelOffset * 2) / 2;
|
|
65
|
+
const cx = size / 2;
|
|
66
|
+
const cy = size / 2;
|
|
67
|
+
/* ----------------------------- Grid rings ----------------------------- */
|
|
68
|
+
const gridRings = useMemo(() => {
|
|
69
|
+
if (!showGrid || gridLevels <= 0)
|
|
70
|
+
return [];
|
|
71
|
+
return Array.from({ length: gridLevels }, (_, levelIdx) => {
|
|
72
|
+
const ratio = (levelIdx + 1) / gridLevels;
|
|
73
|
+
const r = ratio * chartRadius;
|
|
74
|
+
const points = Array.from({ length: axisCount }, (_, i) => {
|
|
75
|
+
const angle = axisAngle(i, axisCount);
|
|
76
|
+
const { x, y } = polarToCartesian(cx, cy, r, angle);
|
|
77
|
+
return `${x},${y}`;
|
|
78
|
+
}).join(" ");
|
|
79
|
+
return points;
|
|
80
|
+
});
|
|
81
|
+
}, [showGrid, gridLevels, axisCount, chartRadius, cx, cy]);
|
|
82
|
+
/* ----------------------------- Axis spokes ----------------------------- */
|
|
83
|
+
const spokes = useMemo(() => {
|
|
84
|
+
return Array.from({ length: axisCount }, (_, i) => {
|
|
85
|
+
const angle = axisAngle(i, axisCount);
|
|
86
|
+
const end = polarToCartesian(cx, cy, chartRadius, angle);
|
|
87
|
+
return { x1: cx, y1: cy, x2: end.x, y2: end.y };
|
|
88
|
+
});
|
|
89
|
+
}, [axisCount, chartRadius, cx, cy]);
|
|
90
|
+
/* ----------------------------- Axis labels ----------------------------- */
|
|
91
|
+
const labels = useMemo(() => {
|
|
92
|
+
if (!showLabels)
|
|
93
|
+
return [];
|
|
94
|
+
const padding = 14;
|
|
95
|
+
return axes.map((label, i) => {
|
|
96
|
+
const angle = axisAngle(i, axisCount);
|
|
97
|
+
const { x, y } = polarToCartesian(cx, cy, chartRadius + padding, angle);
|
|
98
|
+
let anchor = "middle";
|
|
99
|
+
if (x < cx - 1)
|
|
100
|
+
anchor = "end";
|
|
101
|
+
else if (x > cx + 1)
|
|
102
|
+
anchor = "start";
|
|
103
|
+
let dy = "0.35em";
|
|
104
|
+
if (y < cy - chartRadius * 0.5)
|
|
105
|
+
dy = "0.9em";
|
|
106
|
+
else if (y > cy + chartRadius * 0.5)
|
|
107
|
+
dy = "-0.35em";
|
|
108
|
+
return { text: label, x, y, anchor, dy };
|
|
109
|
+
});
|
|
110
|
+
}, [axes, axisCount, showLabels, chartRadius, cx, cy]);
|
|
111
|
+
/* ----------------------------- Data polygons ----------------------------- */
|
|
112
|
+
const polygons = useMemo(() => {
|
|
113
|
+
return series.map((s) => ({
|
|
114
|
+
points: buildPolygonPoints(s.data, maxValue, cx, cy, chartRadius),
|
|
115
|
+
color: s.color,
|
|
116
|
+
label: s.label,
|
|
117
|
+
}));
|
|
118
|
+
}, [series, maxValue, cx, cy, chartRadius]);
|
|
119
|
+
/* ----------------------------- Tooltip handler ----------------------------- */
|
|
120
|
+
const buildTooltipContent = useCallback((axisIndex) => ({
|
|
121
|
+
category: axes[axisIndex],
|
|
122
|
+
series: series.map((s) => ({
|
|
123
|
+
key: s.label,
|
|
124
|
+
label: s.label,
|
|
125
|
+
value: s.data[axisIndex],
|
|
126
|
+
color: s.color,
|
|
127
|
+
})),
|
|
128
|
+
}), [axes, series]);
|
|
129
|
+
const handleDotMouseEnter = useCallback((event, axisIndex) => {
|
|
130
|
+
if (!showTooltip)
|
|
131
|
+
return;
|
|
132
|
+
const content = buildTooltipContent(axisIndex);
|
|
133
|
+
handleMouseEnter(event, content);
|
|
134
|
+
}, [showTooltip, buildTooltipContent, handleMouseEnter]);
|
|
135
|
+
/* ----------------------------- Animation ----------------------------- */
|
|
136
|
+
const shouldAnimate = showAnimation && !shouldReduceMotion;
|
|
137
|
+
return (jsxs("div", { ref: containerRef, className: cn(theme.baseStyle, className), role: "img", "aria-label": `Radar chart comparing ${series.map((s) => s.label).join(", ")} across ${axes.join(", ")}`, ...props, children: [jsxs("svg", { viewBox: `0 0 ${size} ${size}`, width: size, height: size, className: "overflow-visible", children: [gridRings.map((points, idx) => (jsx("polygon", { points: points, fill: "none", stroke: theme.gridColor, strokeWidth: 1 }, `grid-${idx}`))), spokes.map((spoke, idx) => (jsx("line", { x1: spoke.x1, y1: spoke.y1, x2: spoke.x2, y2: spoke.y2, stroke: theme.axisColor, strokeWidth: 1 }, `spoke-${idx}`))), polygons.map((poly, idx) => shouldAnimate ? (jsx(motion.polygon, { points: poly.points, fill: poly.color, fillOpacity: fillOpacity, stroke: poly.color, strokeWidth: strokeWidth, strokeLinejoin: "round", initial: { opacity: 0, scale: 0 }, animate: { opacity: 1, scale: 1 }, transition: getSpringAnimation(RADAR_CHART_ANIMATIONS.preset, shouldReduceMotion, RADAR_CHART_ANIMATIONS.initialDelay +
|
|
138
|
+
getStaggerDelay(idx, RADAR_CHART_ANIMATIONS.seriesStagger)), style: { transformOrigin: `${cx}px ${cy}px` } }, `series-${idx}`)) : (jsx("polygon", { points: poly.points, fill: poly.color, fillOpacity: fillOpacity, stroke: poly.color, strokeWidth: strokeWidth, strokeLinejoin: "round" }, `series-${idx}`))), series.map((s, sIdx) => s.data.map((v, dIdx) => {
|
|
139
|
+
const ratio = maxValue > 0 ? Math.min(v, maxValue) / maxValue : 0;
|
|
140
|
+
const r = ratio * chartRadius;
|
|
141
|
+
const angle = axisAngle(dIdx, axisCount);
|
|
142
|
+
const { x, y } = polarToCartesian(cx, cy, r, angle);
|
|
143
|
+
const dotProps = {
|
|
144
|
+
cx: x,
|
|
145
|
+
cy: y,
|
|
146
|
+
r: 3,
|
|
147
|
+
fill: s.color,
|
|
148
|
+
className: showTooltip ? "cursor-pointer" : undefined,
|
|
149
|
+
onMouseEnter: showTooltip
|
|
150
|
+
? (e) => handleDotMouseEnter(e, dIdx)
|
|
151
|
+
: undefined,
|
|
152
|
+
onMouseMove: showTooltip ? handleMouseMove : undefined,
|
|
153
|
+
onMouseLeave: showTooltip ? handleMouseLeave : undefined,
|
|
154
|
+
};
|
|
155
|
+
// Invisible larger hit area behind each dot for easier hover
|
|
156
|
+
const hitArea = showTooltip ? (jsx("circle", { cx: x, cy: y, r: 10, fill: "transparent", className: "cursor-pointer", onMouseEnter: (e) => handleDotMouseEnter(e, dIdx), onMouseMove: handleMouseMove, onMouseLeave: handleMouseLeave }, `hit-${sIdx}-${dIdx}`)) : null;
|
|
157
|
+
return shouldAnimate ? (jsxs(React__default.Fragment, { children: [hitArea, jsx(motion.circle, { ...dotProps, initial: { opacity: 0 }, animate: { opacity: 1 }, transition: getSpringAnimation(RADAR_CHART_ANIMATIONS.preset, shouldReduceMotion, RADAR_CHART_ANIMATIONS.initialDelay +
|
|
158
|
+
getStaggerDelay(sIdx, RADAR_CHART_ANIMATIONS.seriesStagger) +
|
|
159
|
+
0.05) })] }, `dot-${sIdx}-${dIdx}`)) : (jsxs(React__default.Fragment, { children: [hitArea, jsx("circle", { ...dotProps })] }, `dot-${sIdx}-${dIdx}`));
|
|
160
|
+
})), labels.map((lbl, idx) => (jsx("text", { x: lbl.x, y: lbl.y, textAnchor: lbl.anchor, dy: lbl.dy, className: theme.labelStyle, children: lbl.text }, `label-${idx}`)))] }), showLegend && series.length > 0 && (jsx("div", { className: cn(theme.legendStyle), children: series.map((s, idx) => (jsxs("div", { className: cn(theme.legendItemStyle), children: [jsx("span", { className: cn(theme.legendDotStyle), style: { backgroundColor: s.color } }), jsx("span", { className: cn(theme.legendLabelStyle), children: s.label })] }, `legend-${idx}`))) })), showTooltip && (jsx(ChartTooltip, { active: !!tooltipData, position: tooltipData
|
|
161
|
+
? { x: tooltipData.x, y: tooltipData.y }
|
|
162
|
+
: { x: 0, y: 0 }, tooltipRef: tooltipRef, content: tooltipData === null || tooltipData === void 0 ? void 0 : tooltipData.content }))] }));
|
|
163
|
+
};
|
|
164
|
+
RadarChart.displayName = "RadarChart";
|
|
165
|
+
|
|
166
|
+
export { RadarChart };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { RadarChartTheme } from "./RadarChart.types";
|
|
2
|
+
/**
|
|
3
|
+
* Default theme for the RadarChart component
|
|
4
|
+
*
|
|
5
|
+
* SVG stroke/fill attributes use raw hex values because CSS variables
|
|
6
|
+
* are not resolved inside SVG attribute strings. Tailwind utility
|
|
7
|
+
* classes are used only for the HTML wrapper elements (labels, legend).
|
|
8
|
+
*/
|
|
9
|
+
export declare const radarChartTheme: RadarChartTheme;
|