@zendir/ui 0.5.0 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +20 -0
- package/README.md +640 -631
- package/dist/_virtual/_rolldown/runtime.js +13 -0
- package/dist/index.js +17 -221
- package/dist/react/3d/CesiumCaptureSource.d.ts +0 -1
- package/dist/react/3d/CesiumCaptureSource.js +364 -283
- package/dist/react/3d/CesiumCaptureSource.js.map +1 -1
- package/dist/react/3d/ZenSpace3D.d.ts +2 -3
- package/dist/react/3d/ZenSpace3D.js +1681 -1237
- package/dist/react/3d/ZenSpace3D.js.map +1 -1
- package/dist/react/3d/ZenSpace3DCesium.d.ts +0 -1
- package/dist/react/3d/ZenSpace3DCesium.js +513 -560
- package/dist/react/3d/ZenSpace3DCesium.js.map +1 -1
- package/dist/react/3d/ZenSpace3DShaders.js +61 -66
- package/dist/react/3d/ZenSpace3DShaders.js.map +1 -1
- package/dist/react/3d/ZenSpace3DTypes.d.ts +19 -20
- package/dist/react/3d/ZenSpace3DUtils.d.ts +0 -1
- package/dist/react/3d/ZenSpace3DUtils.js +37 -24
- package/dist/react/3d/ZenSpace3DUtils.js.map +1 -1
- package/dist/react/3d/capturePngAnalysis.js +42 -36
- package/dist/react/3d/capturePngAnalysis.js.map +1 -1
- package/dist/react/3d/index.d.ts +3 -3
- package/dist/react/3d/index.js +5 -53
- package/dist/react/3d/threeLoader.d.ts +1 -1
- package/dist/react/3d/threeLoader.js +23 -18
- package/dist/react/3d/threeLoader.js.map +1 -1
- package/dist/react/astro/ClassificationBanner.d.ts +2 -3
- package/dist/react/astro/ClassificationBanner.js +95 -79
- package/dist/react/astro/ClassificationBanner.js.map +1 -1
- package/dist/react/astro/GlobalStatusBar.d.ts +0 -1
- package/dist/react/astro/GlobalStatusBar.js +157 -163
- package/dist/react/astro/GlobalStatusBar.js.map +1 -1
- package/dist/react/astro/MissionClock.d.ts +7 -8
- package/dist/react/astro/MissionClock.js +377 -400
- package/dist/react/astro/MissionClock.js.map +1 -1
- package/dist/react/astro/MonitoringIcon.d.ts +1 -2
- package/dist/react/astro/MonitoringIcon.js +422 -358
- package/dist/react/astro/MonitoringIcon.js.map +1 -1
- package/dist/react/astro/Notification.d.ts +1 -2
- package/dist/react/astro/Notification.js +229 -126
- package/dist/react/astro/Notification.js.map +1 -1
- package/dist/react/astro/Progress.d.ts +0 -1
- package/dist/react/astro/Progress.js +199 -141
- package/dist/react/astro/Progress.js.map +1 -1
- package/dist/react/astro/SimulationControls.d.ts +3 -4
- package/dist/react/astro/SimulationControls.js +596 -650
- package/dist/react/astro/SimulationControls.js.map +1 -1
- package/dist/react/astro/StatusIndicator.d.ts +0 -1
- package/dist/react/astro/StatusIndicator.js +236 -170
- package/dist/react/astro/StatusIndicator.js.map +1 -1
- package/dist/react/astro/UnifiedTimeline.d.ts +9 -10
- package/dist/react/astro/UnifiedTimeline.js +2345 -2392
- package/dist/react/astro/UnifiedTimeline.js.map +1 -1
- package/dist/react/astro/index.d.ts +5 -5
- package/dist/react/astro/index.js +1 -25
- package/dist/react/cards/AccessCard.d.ts +0 -1
- package/dist/react/cards/AccessCard.js +471 -405
- package/dist/react/cards/AccessCard.js.map +1 -1
- package/dist/react/cards/OrbitCard.d.ts +0 -1
- package/dist/react/cards/OrbitCard.js +487 -364
- package/dist/react/cards/OrbitCard.js.map +1 -1
- package/dist/react/cards/SpacecraftCard.d.ts +0 -1
- package/dist/react/cards/SpacecraftCard.js +813 -925
- package/dist/react/cards/SpacecraftCard.js.map +1 -1
- package/dist/react/cards/TelemetryCard.d.ts +0 -1
- package/dist/react/cards/TelemetryCard.js +1055 -732
- package/dist/react/cards/TelemetryCard.js.map +1 -1
- package/dist/react/cards/TelemetryStreamCard.d.ts +0 -1
- package/dist/react/cards/TelemetryStreamCard.js +323 -297
- package/dist/react/cards/TelemetryStreamCard.js.map +1 -1
- package/dist/react/cards/index.d.ts +1 -1
- package/dist/react/cards/index.js +1 -8
- package/dist/react/charts/GroundTrackMap.d.ts +6 -7
- package/dist/react/charts/GroundTrackMap.js +1377 -1256
- package/dist/react/charts/GroundTrackMap.js.map +1 -1
- package/dist/react/charts/GroundTrackMapLeaflet.d.ts +1 -2
- package/dist/react/charts/GroundTrackMapLeaflet.js +1065 -987
- package/dist/react/charts/GroundTrackMapLeaflet.js.map +1 -1
- package/dist/react/charts/groundTrackMapLeafletTiles.js +34 -25
- package/dist/react/charts/groundTrackMapLeafletTiles.js.map +1 -1
- package/dist/react/charts/groundTrackMapLeafletUtils.js +70 -61
- package/dist/react/charts/groundTrackMapLeafletUtils.js.map +1 -1
- package/dist/react/charts/index.d.ts +1 -1
- package/dist/react/charts/index.js +7 -100
- package/dist/react/charts/unified/AstroChart.d.ts +1 -2
- package/dist/react/charts/unified/AstroChart.js +1331 -1411
- package/dist/react/charts/unified/AstroChart.js.map +1 -1
- package/dist/react/charts/unified/PowerOverviewChart.d.ts +3 -3
- package/dist/react/charts/unified/PowerOverviewChart.js +495 -478
- package/dist/react/charts/unified/PowerOverviewChart.js.map +1 -1
- package/dist/react/charts/unified/domain.d.ts +12 -13
- package/dist/react/charts/unified/domain.js +3999 -3145
- package/dist/react/charts/unified/domain.js.map +1 -1
- package/dist/react/charts/unified/generators.d.ts +3 -4
- package/dist/react/charts/unified/generators.js +561 -498
- package/dist/react/charts/unified/generators.js.map +1 -1
- package/dist/react/charts/unified/index.d.ts +1 -1
- package/dist/react/charts/unified/presets.d.ts +14 -15
- package/dist/react/charts/unified/presets.js +857 -994
- package/dist/react/charts/unified/presets.js.map +1 -1
- package/dist/react/charts/unified/sync.d.ts +2 -3
- package/dist/react/charts/unified/sync.js +229 -195
- package/dist/react/charts/unified/sync.js.map +1 -1
- package/dist/react/charts/unified/theme.d.ts +11 -12
- package/dist/react/charts/unified/theme.js +606 -642
- package/dist/react/charts/unified/theme.js.map +1 -1
- package/dist/react/charts/unified/types.d.ts +32 -33
- package/dist/react/charts/unified/useChartStream.d.ts +1 -2
- package/dist/react/charts/unified/useChartStream.js +203 -216
- package/dist/react/charts/unified/useChartStream.js.map +1 -1
- package/dist/react/chatgpt/AppCard.d.ts +1 -2
- package/dist/react/chatgpt/index.d.ts +7 -7
- package/dist/react/chatgpt/index.js +160 -139
- package/dist/react/chatgpt/index.js.map +1 -1
- package/dist/react/context/CategoryContext.d.ts +0 -1
- package/dist/react/context/CategoryContext.js +78 -29
- package/dist/react/context/CategoryContext.js.map +1 -1
- package/dist/react/context/DisplaySettingsContext.d.ts +1 -2
- package/dist/react/context/DisplaySettingsContext.js +205 -156
- package/dist/react/context/DisplaySettingsContext.js.map +1 -1
- package/dist/react/context/SpatialSelectionContext.d.ts +0 -1
- package/dist/react/context/SpatialSelectionContext.js +36 -7
- package/dist/react/context/SpatialSelectionContext.js.map +1 -1
- package/dist/react/core/data/DataTable.d.ts +3 -4
- package/dist/react/core/data/DataTable.js +473 -440
- package/dist/react/core/data/DataTable.js.map +1 -1
- package/dist/react/core/data/DataValue.d.ts +4 -5
- package/dist/react/core/data/DataValue.js +605 -571
- package/dist/react/core/data/DataValue.js.map +1 -1
- package/dist/react/core/data/propertyConfig.d.ts +1 -2
- package/dist/react/core/data/propertyConfig.js +446 -382
- package/dist/react/core/data/propertyConfig.js.map +1 -1
- package/dist/react/core/display/AstroIcon.d.ts +4 -5
- package/dist/react/core/display/AstroIcon.js +339 -429
- package/dist/react/core/display/AstroIcon.js.map +1 -1
- package/dist/react/core/display/Badge.d.ts +2 -3
- package/dist/react/core/display/Badge.js +131 -131
- package/dist/react/core/display/Badge.js.map +1 -1
- package/dist/react/core/display/CardHeader.d.ts +0 -1
- package/dist/react/core/display/CardHeader.js +398 -311
- package/dist/react/core/display/CardHeader.js.map +1 -1
- package/dist/react/core/display/Container.d.ts +2 -3
- package/dist/react/core/display/Container.js +640 -668
- package/dist/react/core/display/Container.js.map +1 -1
- package/dist/react/core/display/CopyButton.d.ts +1 -2
- package/dist/react/core/display/CopyButton.js +158 -101
- package/dist/react/core/display/CopyButton.js.map +1 -1
- package/dist/react/core/display/GlassCard.d.ts +3 -4
- package/dist/react/core/display/GlassCard.js +416 -369
- package/dist/react/core/display/GlassCard.js.map +1 -1
- package/dist/react/core/display/HeaderIconWithStatus.d.ts +0 -1
- package/dist/react/core/display/HeaderIconWithStatus.js +152 -152
- package/dist/react/core/display/HeaderIconWithStatus.js.map +1 -1
- package/dist/react/core/display/Icon.d.ts +2 -3
- package/dist/react/core/display/Icon.js +172 -143
- package/dist/react/core/display/Icon.js.map +1 -1
- package/dist/react/core/display/Typography.d.ts +24 -25
- package/dist/react/core/display/Typography.js +360 -178
- package/dist/react/core/display/Typography.js.map +1 -1
- package/dist/react/core/feedback/ConfirmDialog.d.ts +1 -2
- package/dist/react/core/feedback/ConfirmDialog.js +343 -304
- package/dist/react/core/feedback/ConfirmDialog.js.map +1 -1
- package/dist/react/core/feedback/Dialog.d.ts +2 -3
- package/dist/react/core/feedback/Dialog.js +189 -197
- package/dist/react/core/feedback/Dialog.js.map +1 -1
- package/dist/react/core/feedback/Toast.d.ts +2 -3
- package/dist/react/core/feedback/Toast.js +346 -207
- package/dist/react/core/feedback/Toast.js.map +1 -1
- package/dist/react/core/index.d.ts +26 -26
- package/dist/react/core/index.js +7 -119
- package/dist/react/core/inputs/Button.d.ts +2 -3
- package/dist/react/core/inputs/Button.js +281 -304
- package/dist/react/core/inputs/Button.js.map +1 -1
- package/dist/react/core/inputs/Checkbox.d.ts +2 -3
- package/dist/react/core/inputs/Checkbox.js +139 -127
- package/dist/react/core/inputs/Checkbox.js.map +1 -1
- package/dist/react/core/inputs/Input.d.ts +3 -4
- package/dist/react/core/inputs/Input.js +277 -285
- package/dist/react/core/inputs/Input.js.map +1 -1
- package/dist/react/core/inputs/LimitsBar.d.ts +1 -2
- package/dist/react/core/inputs/LimitsBar.js +271 -196
- package/dist/react/core/inputs/LimitsBar.js.map +1 -1
- package/dist/react/core/inputs/NumberInput.d.ts +2 -3
- package/dist/react/core/inputs/NumberInput.js +531 -503
- package/dist/react/core/inputs/NumberInput.js.map +1 -1
- package/dist/react/core/inputs/PinInput.d.ts +2 -3
- package/dist/react/core/inputs/PinInput.js +224 -207
- package/dist/react/core/inputs/PinInput.js.map +1 -1
- package/dist/react/core/inputs/Select.d.ts +1 -2
- package/dist/react/core/inputs/Select.js +298 -299
- package/dist/react/core/inputs/Select.js.map +1 -1
- package/dist/react/core/inputs/Toggle.d.ts +2 -3
- package/dist/react/core/inputs/Toggle.js +142 -148
- package/dist/react/core/inputs/Toggle.js.map +1 -1
- package/dist/react/core/layout/Box.d.ts +3 -4
- package/dist/react/core/layout/Box.js +118 -122
- package/dist/react/core/layout/Box.js.map +1 -1
- package/dist/react/core/layout/Center.d.ts +0 -1
- package/dist/react/core/layout/Center.js +45 -32
- package/dist/react/core/layout/Center.js.map +1 -1
- package/dist/react/core/layout/Divider.d.ts +1 -2
- package/dist/react/core/layout/Divider.js +112 -106
- package/dist/react/core/layout/Divider.js.map +1 -1
- package/dist/react/core/layout/Flex.d.ts +4 -5
- package/dist/react/core/layout/Flex.js +120 -124
- package/dist/react/core/layout/Flex.js.map +1 -1
- package/dist/react/core/layout/Grid.d.ts +5 -6
- package/dist/react/core/layout/Grid.js +131 -138
- package/dist/react/core/layout/Grid.js.map +1 -1
- package/dist/react/core/layout/Spacer.d.ts +0 -1
- package/dist/react/core/layout/Spacer.js +36 -29
- package/dist/react/core/layout/Spacer.js.map +1 -1
- package/dist/react/core/layout/Stack.d.ts +4 -5
- package/dist/react/core/layout/Stack.js +127 -70
- package/dist/react/core/layout/Stack.js.map +1 -1
- package/dist/react/core/layout/responsive.d.ts +1 -2
- package/dist/react/core/layout/responsive.js +25 -19
- package/dist/react/core/layout/responsive.js.map +1 -1
- package/dist/react/core/layout/useBreakpoint.d.ts +1 -1
- package/dist/react/core/layout/useBreakpoint.js +119 -66
- package/dist/react/core/layout/useBreakpoint.js.map +1 -1
- package/dist/react/core/navigation/AppBar.d.ts +1 -2
- package/dist/react/core/navigation/AppBar.js +827 -805
- package/dist/react/core/navigation/AppBar.js.map +1 -1
- package/dist/react/core/navigation/Pagination.d.ts +2 -3
- package/dist/react/core/navigation/Pagination.js +207 -187
- package/dist/react/core/navigation/Pagination.js.map +1 -1
- package/dist/react/core/navigation/SideNav.d.ts +5 -6
- package/dist/react/core/navigation/SideNav.js +855 -629
- package/dist/react/core/navigation/SideNav.js.map +1 -1
- package/dist/react/core/navigation/Tabs.d.ts +0 -1
- package/dist/react/core/navigation/Tabs.js +113 -119
- package/dist/react/core/navigation/Tabs.js.map +1 -1
- package/dist/react/core/overlays/Popover.d.ts +2 -3
- package/dist/react/core/overlays/Popover.js +303 -282
- package/dist/react/core/overlays/Popover.js.map +1 -1
- package/dist/react/core/overlays/SidePanel.d.ts +1 -2
- package/dist/react/core/overlays/SidePanel.js +217 -212
- package/dist/react/core/overlays/SidePanel.js.map +1 -1
- package/dist/react/core/overlays/Tooltip.d.ts +1 -2
- package/dist/react/core/overlays/Tooltip.js +170 -176
- package/dist/react/core/overlays/Tooltip.js.map +1 -1
- package/dist/react/core/widgets/ActivityPlanner.d.ts +0 -1
- package/dist/react/core/widgets/ActivityPlanner.js +855 -517
- package/dist/react/core/widgets/ActivityPlanner.js.map +1 -1
- package/dist/react/core/widgets/Capture.d.ts +2 -3
- package/dist/react/core/widgets/Capture.js +965 -779
- package/dist/react/core/widgets/Capture.js.map +1 -1
- package/dist/react/core/widgets/ChatPanel.d.ts +16 -17
- package/dist/react/core/widgets/ChatPanel.js +1734 -1034
- package/dist/react/core/widgets/ChatPanel.js.map +1 -1
- package/dist/react/core/widgets/ColorPickerPanel.d.ts +0 -1
- package/dist/react/core/widgets/ColorPickerPanel.js +298 -287
- package/dist/react/core/widgets/ColorPickerPanel.js.map +1 -1
- package/dist/react/core/widgets/CommandBuilder.d.ts +2 -3
- package/dist/react/core/widgets/CommandBuilder.js +624 -516
- package/dist/react/core/widgets/CommandBuilder.js.map +1 -1
- package/dist/react/core/widgets/ConnectionForm.d.ts +2 -3
- package/dist/react/core/widgets/ConnectionForm.js +528 -492
- package/dist/react/core/widgets/ConnectionForm.js.map +1 -1
- package/dist/react/core/widgets/FileExplorer.d.ts +3 -4
- package/dist/react/core/widgets/FileExplorer.js +617 -505
- package/dist/react/core/widgets/FileExplorer.js.map +1 -1
- package/dist/react/core/widgets/HexViewer.d.ts +2 -3
- package/dist/react/core/widgets/HexViewer.js +1353 -1091
- package/dist/react/core/widgets/HexViewer.js.map +1 -1
- package/dist/react/core/widgets/ImageFrame.d.ts +1 -2
- package/dist/react/core/widgets/ImageFrame.js +230 -193
- package/dist/react/core/widgets/ImageFrame.js.map +1 -1
- package/dist/react/core/widgets/ImageGallery.d.ts +2 -1
- package/dist/react/core/widgets/ImageGallery.js +380 -314
- package/dist/react/core/widgets/ImageGallery.js.map +1 -1
- package/dist/react/core/widgets/ImagePanel.d.ts +0 -1
- package/dist/react/core/widgets/ImagePanel.js +110 -101
- package/dist/react/core/widgets/ImagePanel.js.map +1 -1
- package/dist/react/core/widgets/LogViewer.d.ts +2 -3
- package/dist/react/core/widgets/LogViewer.js +711 -607
- package/dist/react/core/widgets/LogViewer.js.map +1 -1
- package/dist/react/core/widgets/MessageStream.d.ts +3 -4
- package/dist/react/core/widgets/MessageStream.js +514 -444
- package/dist/react/core/widgets/MessageStream.js.map +1 -1
- package/dist/react/core/widgets/MissionCalendar.d.ts +3 -4
- package/dist/react/core/widgets/MissionCalendar.js +1488 -1020
- package/dist/react/core/widgets/MissionCalendar.js.map +1 -1
- package/dist/react/core/widgets/PacketViewer.d.ts +2 -3
- package/dist/react/core/widgets/PacketViewer.js +550 -421
- package/dist/react/core/widgets/PacketViewer.js.map +1 -1
- package/dist/react/core/widgets/capture-placeholder.png.js +6 -5
- package/dist/react/core/widgets/capture-placeholder.png.js.map +1 -1
- package/dist/react/hooks/index.d.ts +5 -5
- package/dist/react/hooks/useAccessWindows.d.ts +0 -1
- package/dist/react/hooks/useCompactMode.d.ts +1 -1
- package/dist/react/hooks/useCompactMode.js +104 -58
- package/dist/react/hooks/useCompactMode.js.map +1 -1
- package/dist/react/hooks/useGroundTrackHistory.d.ts +0 -1
- package/dist/react/hooks/useSimulationScene.d.ts +1 -2
- package/dist/react/hooks/useSimulationScene.js +481 -374
- package/dist/react/hooks/useSimulationScene.js.map +1 -1
- package/dist/react/index.d.ts +3 -3
- package/dist/react/panels/LayerControlPanel.d.ts +1 -2
- package/dist/react/panels/LayerControlPanel.js +223 -180
- package/dist/react/panels/LayerControlPanel.js.map +1 -1
- package/dist/react/panels/ObjectInventoryPanel.d.ts +2 -3
- package/dist/react/panels/ObjectInventoryPanel.js +315 -250
- package/dist/react/panels/ObjectInventoryPanel.js.map +1 -1
- package/dist/react/panels/index.d.ts +1 -1
- package/dist/react/panels/index.js +1 -6
- package/dist/react/shared/ErrorBoundary.d.ts +1 -2
- package/dist/react/shared/ErrorBoundary.js +170 -139
- package/dist/react/shared/ErrorBoundary.js.map +1 -1
- package/dist/react/shared/Skeleton.d.ts +1 -2
- package/dist/react/shared/Skeleton.js +300 -301
- package/dist/react/shared/Skeleton.js.map +1 -1
- package/dist/react/theme/ThemeProvider.d.ts +2 -321
- package/dist/react/theme/ThemeProvider.js +312 -939
- package/dist/react/theme/ThemeProvider.js.map +1 -1
- package/dist/react/theme/cardAccent.d.ts +1 -2
- package/dist/react/theme/cardAccent.js +196 -126
- package/dist/react/theme/cardAccent.js.map +1 -1
- package/dist/react/theme/config.d.ts +0 -1
- package/dist/react/theme/config.js +47 -25
- package/dist/react/theme/config.js.map +1 -1
- package/dist/react/theme/index.d.ts +2 -2
- package/dist/react/theme/index.js +1 -16
- package/dist/react/theme/types.d.ts +332 -0
- package/dist/react/theme/types.js +39 -0
- package/dist/react/theme/types.js.map +1 -0
- package/dist/react/types.d.ts +8 -8
- package/dist/react/types.js +147 -47
- package/dist/react/types.js.map +1 -1
- package/dist/react/utils/categoryPalette.d.ts +0 -1
- package/dist/react/utils/categoryPalette.js +91 -102
- package/dist/react/utils/categoryPalette.js.map +1 -1
- package/dist/react/utils/index.d.ts +5 -5
- package/dist/react/utils/index.js +457 -371
- package/dist/react/utils/index.js.map +1 -1
- package/dist/react/visualizations/EclipseTimerCard.d.ts +0 -1
- package/dist/react/visualizations/LinkBudgetCard.d.ts +0 -1
- package/dist/react/visualizations/NavBallCard.d.ts +0 -1
- package/dist/react/visualizations/PropulsionCard.d.ts +1 -2
- package/dist/react/visualizations/SensorFootprintCard.d.ts +1 -2
- package/dist/react/visualizations/ThermalHeatmapCard.d.ts +0 -1
- package/dist/react/visualizations/index.d.ts +3 -3
- package/dist/react.d.ts +2 -1
- package/dist/react.js +17 -221
- package/dist/shaders/atmosphere.frag.js +6 -5
- package/dist/shaders/atmosphere.frag.js.map +1 -1
- package/dist/shaders/atmosphere.vert.js +6 -5
- package/dist/shaders/atmosphere.vert.js.map +1 -1
- package/dist/shaders/stars.frag.js +6 -5
- package/dist/shaders/stars.frag.js.map +1 -1
- package/dist/shaders/stars.vert.js +6 -5
- package/dist/shaders/stars.vert.js.map +1 -1
- package/dist/style.css +217 -194
- package/dist/tokens/core.d.ts +159 -0
- package/dist/tokens/core.js +144 -0
- package/dist/tokens/core.js.map +1 -0
- package/dist/tokens/css-vars.d.ts +213 -2
- package/dist/tokens/css-vars.js +590 -227
- package/dist/tokens/css-vars.js.map +1 -1
- package/dist/tokens/index.d.ts +31 -228
- package/dist/tokens/index.js +281 -366
- package/dist/tokens/index.js.map +1 -1
- package/dist/tokens/palettes/astro.d.ts +129 -0
- package/dist/tokens/palettes/astro.js +112 -0
- package/dist/tokens/palettes/astro.js.map +1 -0
- package/dist/tokens/palettes/index.d.ts +288 -0
- package/dist/tokens/palettes/index.js +35 -0
- package/dist/tokens/palettes/index.js.map +1 -0
- package/dist/tokens/palettes/tailwind.d.ts +324 -0
- package/dist/tokens/palettes/tailwind.js +201 -0
- package/dist/tokens/palettes/tailwind.js.map +1 -0
- package/dist/tokens/palettes/zendir.d.ts +126 -0
- package/dist/tokens/palettes/zendir.js +92 -0
- package/dist/tokens/palettes/zendir.js.map +1 -0
- package/dist/tokens/themes.d.ts +30 -0
- package/dist/tokens/themes.js +704 -0
- package/dist/tokens/themes.js.map +1 -0
- package/dist/tokens/tokens.css +419 -41
- package/dist/types/index.d.ts +2 -2
- package/package.json +310 -313
- package/dist/index.js.map +0 -1
- package/dist/react/3d/index.js.map +0 -1
- package/dist/react/astro/index.js.map +0 -1
- package/dist/react/cards/index.js.map +0 -1
- package/dist/react/charts/index.js.map +0 -1
- package/dist/react/core/index.js.map +0 -1
- package/dist/react/panels/index.js.map +0 -1
- package/dist/react/theme/astro-tokens.d.ts +0 -153
- package/dist/react/theme/index.js.map +0 -1
- package/dist/react.js.map +0 -1
|
@@ -1,126 +1,122 @@
|
|
|
1
|
-
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
import { memo, forwardRef } from "react";
|
|
3
1
|
import { useTheme } from "../../theme/ThemeProvider.js";
|
|
4
2
|
import { useBreakpoint } from "./useBreakpoint.js";
|
|
5
3
|
import { resolveResponsive, resolveResponsiveSpacing } from "./responsive.js";
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
};
|
|
121
|
-
return /* @__PURE__ */ jsx(Component, { ref, style: computedStyle, ...rest, children });
|
|
4
|
+
import { forwardRef, memo } from "react";
|
|
5
|
+
import { jsx } from "react/jsx-runtime";
|
|
6
|
+
//#region src/react/core/layout/Box.tsx
|
|
7
|
+
/**
|
|
8
|
+
* @zendir/ui - Box Layout Primitive
|
|
9
|
+
*
|
|
10
|
+
* The foundational layout building block. A themed <div> with shorthand props
|
|
11
|
+
* for padding, margin, background, border, and display properties.
|
|
12
|
+
*
|
|
13
|
+
* Follows Astro UX spacing tokens (4px grid system).
|
|
14
|
+
* All spacing props accept SpacingTokens ('xs' | 'sm' | 'md' | 'lg' | 'xl' | 'xxl'),
|
|
15
|
+
* numbers (px), or CSS strings.
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```tsx
|
|
19
|
+
* <Box padding="md" background="surface">
|
|
20
|
+
* <H3>Section Title</H3>
|
|
21
|
+
* <Body1>Content here</Body1>
|
|
22
|
+
* </Box>
|
|
23
|
+
*
|
|
24
|
+
* <Box padding={['sm', 'md', 'lg']} borderRadius="md">
|
|
25
|
+
* Responsive padding
|
|
26
|
+
* </Box>
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
var Box = memo(forwardRef(function Box({ as: Component = "div", padding, p, px, py, pt, pr, pb, pl, margin, m, mx, my, mt, mr, mb, ml, background, border, borderRadius, shadow, display, width, height, minWidth, minHeight, maxWidth, maxHeight, overflow, position, flex, flexGrow, flexShrink, style, children, ...rest }, ref) {
|
|
30
|
+
const { tokens } = useTheme();
|
|
31
|
+
const { breakpoint } = useBreakpoint();
|
|
32
|
+
const resolve = (val) => resolveResponsiveSpacing(val, breakpoint, tokens);
|
|
33
|
+
const paddingAll = resolve(padding ?? p);
|
|
34
|
+
const paddingX = resolve(px);
|
|
35
|
+
const paddingY = resolve(py);
|
|
36
|
+
const marginAll = resolve(margin ?? m);
|
|
37
|
+
const marginX = resolve(mx);
|
|
38
|
+
const marginY = resolve(my);
|
|
39
|
+
const resolveBackground = (bg) => {
|
|
40
|
+
if (!bg) return void 0;
|
|
41
|
+
return {
|
|
42
|
+
base: tokens.colors.background.base,
|
|
43
|
+
surface: tokens.colors.background.surface,
|
|
44
|
+
elevated: tokens.colors.background.elevated,
|
|
45
|
+
overlay: tokens.colors.background.overlay
|
|
46
|
+
}[bg] || bg;
|
|
47
|
+
};
|
|
48
|
+
const resolveBorder = (b) => {
|
|
49
|
+
if (!b) return void 0;
|
|
50
|
+
if (b === true) return `1px solid ${tokens.colors.border.default}`;
|
|
51
|
+
return b;
|
|
52
|
+
};
|
|
53
|
+
const resolveBorderRadius = (br) => {
|
|
54
|
+
if (!br) return void 0;
|
|
55
|
+
if (br in tokens.borderRadius) return tokens.borderRadius[br];
|
|
56
|
+
return br;
|
|
57
|
+
};
|
|
58
|
+
const resolveShadow = (s) => {
|
|
59
|
+
if (!s) return void 0;
|
|
60
|
+
if (s in tokens.shadows && s !== "glow") return tokens.shadows[s];
|
|
61
|
+
return s;
|
|
62
|
+
};
|
|
63
|
+
const resolveSize = (val) => {
|
|
64
|
+
if (val === void 0) return void 0;
|
|
65
|
+
if (typeof val === "number") return `${val}px`;
|
|
66
|
+
return val;
|
|
67
|
+
};
|
|
68
|
+
return /* @__PURE__ */ jsx(Component, {
|
|
69
|
+
ref,
|
|
70
|
+
style: {
|
|
71
|
+
...paddingAll ? { padding: paddingAll } : {},
|
|
72
|
+
...paddingX ? {
|
|
73
|
+
paddingLeft: paddingX,
|
|
74
|
+
paddingRight: paddingX
|
|
75
|
+
} : {},
|
|
76
|
+
...paddingY ? {
|
|
77
|
+
paddingTop: paddingY,
|
|
78
|
+
paddingBottom: paddingY
|
|
79
|
+
} : {},
|
|
80
|
+
...resolve(pt) ? { paddingTop: resolve(pt) } : {},
|
|
81
|
+
...resolve(pr) ? { paddingRight: resolve(pr) } : {},
|
|
82
|
+
...resolve(pb) ? { paddingBottom: resolve(pb) } : {},
|
|
83
|
+
...resolve(pl) ? { paddingLeft: resolve(pl) } : {},
|
|
84
|
+
...marginAll ? { margin: marginAll } : {},
|
|
85
|
+
...marginX ? {
|
|
86
|
+
marginLeft: marginX,
|
|
87
|
+
marginRight: marginX
|
|
88
|
+
} : {},
|
|
89
|
+
...marginY ? {
|
|
90
|
+
marginTop: marginY,
|
|
91
|
+
marginBottom: marginY
|
|
92
|
+
} : {},
|
|
93
|
+
...resolve(mt) ? { marginTop: resolve(mt) } : {},
|
|
94
|
+
...resolve(mr) ? { marginRight: resolve(mr) } : {},
|
|
95
|
+
...resolve(mb) ? { marginBottom: resolve(mb) } : {},
|
|
96
|
+
...resolve(ml) ? { marginLeft: resolve(ml) } : {},
|
|
97
|
+
backgroundColor: resolveBackground(background),
|
|
98
|
+
border: resolveBorder(border),
|
|
99
|
+
borderRadius: resolveBorderRadius(borderRadius),
|
|
100
|
+
boxShadow: resolveShadow(shadow),
|
|
101
|
+
display: resolveResponsive(display, breakpoint),
|
|
102
|
+
width: resolveSize(resolveResponsive(width, breakpoint)),
|
|
103
|
+
height: resolveSize(resolveResponsive(height, breakpoint)),
|
|
104
|
+
minWidth: resolveSize(minWidth),
|
|
105
|
+
minHeight: resolveSize(minHeight),
|
|
106
|
+
maxWidth: resolveSize(maxWidth),
|
|
107
|
+
maxHeight: resolveSize(maxHeight),
|
|
108
|
+
overflow,
|
|
109
|
+
position,
|
|
110
|
+
flex,
|
|
111
|
+
flexGrow,
|
|
112
|
+
flexShrink,
|
|
113
|
+
...style
|
|
114
|
+
},
|
|
115
|
+
...rest,
|
|
116
|
+
children
|
|
117
|
+
});
|
|
122
118
|
}));
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
//# sourceMappingURL=Box.js.map
|
|
119
|
+
//#endregion
|
|
120
|
+
export { Box, Box as default };
|
|
121
|
+
|
|
122
|
+
//# sourceMappingURL=Box.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Box.js","sources":["../../../../src/react/core/layout/Box.tsx"],"sourcesContent":["/**\r\n * @zendir/ui - Box Layout Primitive\r\n * \r\n * The foundational layout building block. A themed <div> with shorthand props\r\n * for padding, margin, background, border, and display properties.\r\n * \r\n * Follows Astro UX spacing tokens (4px grid system).\r\n * All spacing props accept SpacingTokens ('xs' | 'sm' | 'md' | 'lg' | 'xl' | 'xxl'),\r\n * numbers (px), or CSS strings.\r\n * \r\n * @example\r\n * ```tsx\r\n * <Box padding=\"md\" background=\"surface\">\r\n * <H3>Section Title</H3>\r\n * <Body1>Content here</Body1>\r\n * </Box>\r\n * \r\n * <Box padding={['sm', 'md', 'lg']} borderRadius=\"md\">\r\n * Responsive padding\r\n * </Box>\r\n * ```\r\n */\r\n\r\nimport React, { memo, forwardRef } from 'react';\r\nimport { useTheme } from '../../theme';\r\nimport { useBreakpoint } from './useBreakpoint';\r\nimport { resolveResponsiveSpacing, resolveResponsive } from './responsive';\r\nimport type { ResponsiveValue } from './useBreakpoint';\r\nimport type { SpacingToken } from './responsive';\r\n\r\ntype SpacingInput = SpacingToken | string | number;\r\n\r\nexport interface BoxProps extends React.HTMLAttributes<HTMLDivElement> {\r\n /** Element type to render */\r\n as?: React.ElementType;\r\n \r\n // Spacing\r\n /** Padding (all sides) */\r\n padding?: ResponsiveValue<SpacingInput>;\r\n /** Shorthand alias for padding */\r\n p?: ResponsiveValue<SpacingInput>;\r\n /** Padding horizontal (left + right) */\r\n px?: ResponsiveValue<SpacingInput>;\r\n /** Padding vertical (top + bottom) */\r\n py?: ResponsiveValue<SpacingInput>;\r\n /** Padding top */\r\n pt?: ResponsiveValue<SpacingInput>;\r\n /** Padding right */\r\n pr?: ResponsiveValue<SpacingInput>;\r\n /** Padding bottom */\r\n pb?: ResponsiveValue<SpacingInput>;\r\n /** Padding left */\r\n pl?: ResponsiveValue<SpacingInput>;\r\n /** Margin (all sides) */\r\n margin?: ResponsiveValue<SpacingInput>;\r\n /** Shorthand alias for margin */\r\n m?: ResponsiveValue<SpacingInput>;\r\n /** Margin horizontal (left + right) */\r\n mx?: ResponsiveValue<SpacingInput>;\r\n /** Margin vertical (top + bottom) */\r\n my?: ResponsiveValue<SpacingInput>;\r\n /** Margin top */\r\n mt?: ResponsiveValue<SpacingInput>;\r\n /** Margin right */\r\n mr?: ResponsiveValue<SpacingInput>;\r\n /** Margin bottom */\r\n mb?: ResponsiveValue<SpacingInput>;\r\n /** Margin left */\r\n ml?: ResponsiveValue<SpacingInput>;\r\n \r\n // Visual\r\n /** Background color: 'base' | 'surface' | 'elevated' | 'overlay' | custom CSS color */\r\n background?: string;\r\n /** Border: true for default border, or custom CSS border */\r\n border?: boolean | string;\r\n /** Border radius token or CSS value */\r\n borderRadius?: 'none' | 'sm' | 'md' | 'lg' | 'xl' | 'full' | string;\r\n /** Box shadow token or CSS value */\r\n shadow?: 'none' | 'sm' | 'md' | 'lg' | 'xl' | string;\r\n \r\n // Layout\r\n /** CSS display property */\r\n display?: ResponsiveValue<string>;\r\n /** CSS width */\r\n width?: ResponsiveValue<string | number>;\r\n /** CSS height */\r\n height?: ResponsiveValue<string | number>;\r\n /** CSS min-width */\r\n minWidth?: string | number;\r\n /** CSS min-height */\r\n minHeight?: string | number;\r\n /** CSS max-width */\r\n maxWidth?: string | number;\r\n /** CSS max-height */\r\n maxHeight?: string | number;\r\n /** CSS overflow */\r\n overflow?: string;\r\n /** CSS position */\r\n position?: 'static' | 'relative' | 'absolute' | 'fixed' | 'sticky';\r\n /** CSS flex property */\r\n flex?: string | number;\r\n /** CSS flex-grow */\r\n flexGrow?: number;\r\n /** CSS flex-shrink */\r\n flexShrink?: number;\r\n \r\n /** Children */\r\n children?: React.ReactNode;\r\n}\r\n\r\nexport const Box = memo(forwardRef<HTMLDivElement, BoxProps>(function Box(\r\n {\r\n as: Component = 'div',\r\n padding, p, px, py, pt, pr, pb, pl,\r\n margin, m, mx, my, mt, mr, mb, ml,\r\n background,\r\n border,\r\n borderRadius,\r\n shadow,\r\n display,\r\n width,\r\n height,\r\n minWidth,\r\n minHeight,\r\n maxWidth,\r\n maxHeight,\r\n overflow,\r\n position,\r\n flex,\r\n flexGrow,\r\n flexShrink,\r\n style,\r\n children,\r\n ...rest\r\n },\r\n ref\r\n): React.ReactElement {\r\n const { tokens } = useTheme();\r\n const { breakpoint } = useBreakpoint();\r\n \r\n const resolve = (val: ResponsiveValue<SpacingInput> | undefined) =>\r\n resolveResponsiveSpacing(val, breakpoint, tokens);\r\n \r\n // Resolve padding (p is alias for padding)\r\n const paddingAll = resolve(padding ?? p);\r\n const paddingX = resolve(px);\r\n const paddingY = resolve(py);\r\n \r\n // Resolve margin (m is alias for margin)\r\n const marginAll = resolve(margin ?? m);\r\n const marginX = resolve(mx);\r\n const marginY = resolve(my);\r\n \r\n // Background color resolution\r\n const resolveBackground = (bg: string | undefined): string | undefined => {\r\n if (!bg) return undefined;\r\n const bgMap: Record<string, string> = {\r\n base: tokens.colors.background.base,\r\n surface: tokens.colors.background.surface,\r\n elevated: tokens.colors.background.elevated,\r\n overlay: tokens.colors.background.overlay,\r\n };\r\n return bgMap[bg] || bg;\r\n };\r\n \r\n // Border resolution\r\n const resolveBorder = (b: boolean | string | undefined): string | undefined => {\r\n if (!b) return undefined;\r\n if (b === true) return `1px solid ${tokens.colors.border.default}`;\r\n return b;\r\n };\r\n \r\n // Border radius resolution\r\n const resolveBorderRadius = (br: string | undefined): string | undefined => {\r\n if (!br) return undefined;\r\n if (br in tokens.borderRadius) return tokens.borderRadius[br as keyof typeof tokens.borderRadius];\r\n return br;\r\n };\r\n \r\n // Shadow resolution\r\n const resolveShadow = (s: string | undefined): string | undefined => {\r\n if (!s) return undefined;\r\n if (s in tokens.shadows && s !== 'glow') return tokens.shadows[s as keyof Omit<typeof tokens.shadows, 'glow'>];\r\n return s;\r\n };\r\n \r\n // Size resolution (number → px)\r\n const resolveSize = (val: string | number | undefined): string | undefined => {\r\n if (val === undefined) return undefined;\r\n if (typeof val === 'number') return `${val}px`;\r\n return val;\r\n };\r\n \r\n const computedStyle: React.CSSProperties = {\r\n // Padding\r\n ...(paddingAll ? { padding: paddingAll } : {}),\r\n ...(paddingX ? { paddingLeft: paddingX, paddingRight: paddingX } : {}),\r\n ...(paddingY ? { paddingTop: paddingY, paddingBottom: paddingY } : {}),\r\n ...(resolve(pt) ? { paddingTop: resolve(pt) } : {}),\r\n ...(resolve(pr) ? { paddingRight: resolve(pr) } : {}),\r\n ...(resolve(pb) ? { paddingBottom: resolve(pb) } : {}),\r\n ...(resolve(pl) ? { paddingLeft: resolve(pl) } : {}),\r\n \r\n // Margin\r\n ...(marginAll ? { margin: marginAll } : {}),\r\n ...(marginX ? { marginLeft: marginX, marginRight: marginX } : {}),\r\n ...(marginY ? { marginTop: marginY, marginBottom: marginY } : {}),\r\n ...(resolve(mt) ? { marginTop: resolve(mt) } : {}),\r\n ...(resolve(mr) ? { marginRight: resolve(mr) } : {}),\r\n ...(resolve(mb) ? { marginBottom: resolve(mb) } : {}),\r\n ...(resolve(ml) ? { marginLeft: resolve(ml) } : {}),\r\n \r\n // Visual\r\n backgroundColor: resolveBackground(background),\r\n border: resolveBorder(border),\r\n borderRadius: resolveBorderRadius(borderRadius),\r\n boxShadow: resolveShadow(shadow),\r\n \r\n // Layout\r\n display: resolveResponsive(display, breakpoint),\r\n width: resolveSize(resolveResponsive(width, breakpoint)),\r\n height: resolveSize(resolveResponsive(height, breakpoint)),\r\n minWidth: resolveSize(minWidth),\r\n minHeight: resolveSize(minHeight),\r\n maxWidth: resolveSize(maxWidth),\r\n maxHeight: resolveSize(maxHeight),\r\n overflow,\r\n position,\r\n flex,\r\n flexGrow,\r\n flexShrink,\r\n \r\n // User overrides\r\n ...style,\r\n };\r\n \r\n return (\r\n <Component ref={ref} style={computedStyle} {...rest}>\r\n {children}\r\n </Component>\r\n );\r\n}));\r\n\r\nexport default Box;\r\n"],"names":["Box"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Box.js","names":[],"sources":["../../../../src/react/core/layout/Box.tsx"],"sourcesContent":["/**\n * @zendir/ui - Box Layout Primitive\n *\n * The foundational layout building block. A themed <div> with shorthand props\n * for padding, margin, background, border, and display properties.\n *\n * Follows Astro UX spacing tokens (4px grid system).\n * All spacing props accept SpacingTokens ('xs' | 'sm' | 'md' | 'lg' | 'xl' | 'xxl'),\n * numbers (px), or CSS strings.\n *\n * @example\n * ```tsx\n * <Box padding=\"md\" background=\"surface\">\n * <H3>Section Title</H3>\n * <Body1>Content here</Body1>\n * </Box>\n *\n * <Box padding={['sm', 'md', 'lg']} borderRadius=\"md\">\n * Responsive padding\n * </Box>\n * ```\n */\n\nimport React, { memo, forwardRef } from \"react\";\nimport { useTheme } from \"../../theme\";\nimport { useBreakpoint } from \"./useBreakpoint\";\nimport { resolveResponsiveSpacing, resolveResponsive } from \"./responsive\";\nimport type { ResponsiveValue } from \"./useBreakpoint\";\nimport type { SpacingToken } from \"./responsive\";\n\ntype SpacingInput = SpacingToken | string | number;\n\nexport interface BoxProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Element type to render */\n as?: React.ElementType;\n\n // Spacing\n /** Padding (all sides) */\n padding?: ResponsiveValue<SpacingInput>;\n /** Shorthand alias for padding */\n p?: ResponsiveValue<SpacingInput>;\n /** Padding horizontal (left + right) */\n px?: ResponsiveValue<SpacingInput>;\n /** Padding vertical (top + bottom) */\n py?: ResponsiveValue<SpacingInput>;\n /** Padding top */\n pt?: ResponsiveValue<SpacingInput>;\n /** Padding right */\n pr?: ResponsiveValue<SpacingInput>;\n /** Padding bottom */\n pb?: ResponsiveValue<SpacingInput>;\n /** Padding left */\n pl?: ResponsiveValue<SpacingInput>;\n /** Margin (all sides) */\n margin?: ResponsiveValue<SpacingInput>;\n /** Shorthand alias for margin */\n m?: ResponsiveValue<SpacingInput>;\n /** Margin horizontal (left + right) */\n mx?: ResponsiveValue<SpacingInput>;\n /** Margin vertical (top + bottom) */\n my?: ResponsiveValue<SpacingInput>;\n /** Margin top */\n mt?: ResponsiveValue<SpacingInput>;\n /** Margin right */\n mr?: ResponsiveValue<SpacingInput>;\n /** Margin bottom */\n mb?: ResponsiveValue<SpacingInput>;\n /** Margin left */\n ml?: ResponsiveValue<SpacingInput>;\n\n // Visual\n /** Background color: 'base' | 'surface' | 'elevated' | 'overlay' | custom CSS color */\n background?: string;\n /** Border: true for default border, or custom CSS border */\n border?: boolean | string;\n /** Border radius token or CSS value */\n borderRadius?: \"none\" | \"sm\" | \"md\" | \"lg\" | \"xl\" | \"full\" | string;\n /** Box shadow token or CSS value */\n shadow?: \"none\" | \"sm\" | \"md\" | \"lg\" | \"xl\" | string;\n\n // Layout\n /** CSS display property */\n display?: ResponsiveValue<string>;\n /** CSS width */\n width?: ResponsiveValue<string | number>;\n /** CSS height */\n height?: ResponsiveValue<string | number>;\n /** CSS min-width */\n minWidth?: string | number;\n /** CSS min-height */\n minHeight?: string | number;\n /** CSS max-width */\n maxWidth?: string | number;\n /** CSS max-height */\n maxHeight?: string | number;\n /** CSS overflow */\n overflow?: string;\n /** CSS position */\n position?: \"static\" | \"relative\" | \"absolute\" | \"fixed\" | \"sticky\";\n /** CSS flex property */\n flex?: string | number;\n /** CSS flex-grow */\n flexGrow?: number;\n /** CSS flex-shrink */\n flexShrink?: number;\n\n /** Children */\n children?: React.ReactNode;\n}\n\nexport const Box = memo(\n forwardRef<HTMLDivElement, BoxProps>(function Box(\n {\n as: Component = \"div\",\n padding,\n p,\n px,\n py,\n pt,\n pr,\n pb,\n pl,\n margin,\n m,\n mx,\n my,\n mt,\n mr,\n mb,\n ml,\n background,\n border,\n borderRadius,\n shadow,\n display,\n width,\n height,\n minWidth,\n minHeight,\n maxWidth,\n maxHeight,\n overflow,\n position,\n flex,\n flexGrow,\n flexShrink,\n style,\n children,\n ...rest\n },\n ref,\n ): React.ReactElement {\n const { tokens } = useTheme();\n const { breakpoint } = useBreakpoint();\n\n const resolve = (val: ResponsiveValue<SpacingInput> | undefined) =>\n resolveResponsiveSpacing(val, breakpoint, tokens);\n\n // Resolve padding (p is alias for padding)\n const paddingAll = resolve(padding ?? p);\n const paddingX = resolve(px);\n const paddingY = resolve(py);\n\n // Resolve margin (m is alias for margin)\n const marginAll = resolve(margin ?? m);\n const marginX = resolve(mx);\n const marginY = resolve(my);\n\n // Background color resolution\n const resolveBackground = (bg: string | undefined): string | undefined => {\n if (!bg) return undefined;\n const bgMap: Record<string, string> = {\n base: tokens.colors.background.base,\n surface: tokens.colors.background.surface,\n elevated: tokens.colors.background.elevated,\n overlay: tokens.colors.background.overlay,\n };\n return bgMap[bg] || bg;\n };\n\n // Border resolution\n const resolveBorder = (\n b: boolean | string | undefined,\n ): string | undefined => {\n if (!b) return undefined;\n if (b === true) return `1px solid ${tokens.colors.border.default}`;\n return b;\n };\n\n // Border radius resolution\n const resolveBorderRadius = (\n br: string | undefined,\n ): string | undefined => {\n if (!br) return undefined;\n if (br in tokens.borderRadius)\n return tokens.borderRadius[br as keyof typeof tokens.borderRadius];\n return br;\n };\n\n // Shadow resolution\n const resolveShadow = (s: string | undefined): string | undefined => {\n if (!s) return undefined;\n if (s in tokens.shadows && s !== \"glow\")\n return tokens.shadows[s as keyof Omit<typeof tokens.shadows, \"glow\">];\n return s;\n };\n\n // Size resolution (number → px)\n const resolveSize = (\n val: string | number | undefined,\n ): string | undefined => {\n if (val === undefined) return undefined;\n if (typeof val === \"number\") return `${val}px`;\n return val;\n };\n\n const computedStyle: React.CSSProperties = {\n // Padding\n ...(paddingAll ? { padding: paddingAll } : {}),\n ...(paddingX ? { paddingLeft: paddingX, paddingRight: paddingX } : {}),\n ...(paddingY ? { paddingTop: paddingY, paddingBottom: paddingY } : {}),\n ...(resolve(pt) ? { paddingTop: resolve(pt) } : {}),\n ...(resolve(pr) ? { paddingRight: resolve(pr) } : {}),\n ...(resolve(pb) ? { paddingBottom: resolve(pb) } : {}),\n ...(resolve(pl) ? { paddingLeft: resolve(pl) } : {}),\n\n // Margin\n ...(marginAll ? { margin: marginAll } : {}),\n ...(marginX ? { marginLeft: marginX, marginRight: marginX } : {}),\n ...(marginY ? { marginTop: marginY, marginBottom: marginY } : {}),\n ...(resolve(mt) ? { marginTop: resolve(mt) } : {}),\n ...(resolve(mr) ? { marginRight: resolve(mr) } : {}),\n ...(resolve(mb) ? { marginBottom: resolve(mb) } : {}),\n ...(resolve(ml) ? { marginLeft: resolve(ml) } : {}),\n\n // Visual\n backgroundColor: resolveBackground(background),\n border: resolveBorder(border),\n borderRadius: resolveBorderRadius(borderRadius),\n boxShadow: resolveShadow(shadow),\n\n // Layout\n display: resolveResponsive(display, breakpoint),\n width: resolveSize(resolveResponsive(width, breakpoint)),\n height: resolveSize(resolveResponsive(height, breakpoint)),\n minWidth: resolveSize(minWidth),\n minHeight: resolveSize(minHeight),\n maxWidth: resolveSize(maxWidth),\n maxHeight: resolveSize(maxHeight),\n overflow,\n position,\n flex,\n flexGrow,\n flexShrink,\n\n // User overrides\n ...style,\n };\n\n return (\n <Component ref={ref} style={computedStyle} {...rest}>\n {children}\n </Component>\n );\n }),\n);\n\nexport default Box;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8GA,IAAa,MAAM,KACjB,WAAqC,SAAS,IAC5C,EACE,IAAI,YAAY,OAChB,SACA,GACA,IACA,IACA,IACA,IACA,IACA,IACA,QACA,GACA,IACA,IACA,IACA,IACA,IACA,IACA,YACA,QACA,cACA,QACA,SACA,OACA,QACA,UACA,WACA,UACA,WACA,UACA,UACA,MACA,UACA,YACA,OACA,UACA,GAAG,QAEL,KACoB;CACpB,MAAM,EAAE,WAAW,SAAS;CAC5B,MAAM,EAAE,eAAe,cAAc;CAErC,MAAM,WAAW,QACf,yBAAyB,KAAK,YAAY,MAAM;CAGlD,MAAM,aAAa,QAAQ,WAAW,CAAC;CACvC,MAAM,WAAW,QAAQ,EAAE;CAC3B,MAAM,WAAW,QAAQ,EAAE;CAG3B,MAAM,YAAY,QAAQ,UAAU,CAAC;CACrC,MAAM,UAAU,QAAQ,EAAE;CAC1B,MAAM,UAAU,QAAQ,EAAE;CAG1B,MAAM,qBAAqB,OAA+C;EACxE,IAAI,CAAC,IAAI,OAAO,KAAA;EAOhB,OAAO;GALL,MAAM,OAAO,OAAO,WAAW;GAC/B,SAAS,OAAO,OAAO,WAAW;GAClC,UAAU,OAAO,OAAO,WAAW;GACnC,SAAS,OAAO,OAAO,WAAW;EAE7B,EAAM,OAAO;CACtB;CAGA,MAAM,iBACJ,MACuB;EACvB,IAAI,CAAC,GAAG,OAAO,KAAA;EACf,IAAI,MAAM,MAAM,OAAO,aAAa,OAAO,OAAO,OAAO;EACzD,OAAO;CACT;CAGA,MAAM,uBACJ,OACuB;EACvB,IAAI,CAAC,IAAI,OAAO,KAAA;EAChB,IAAI,MAAM,OAAO,cACf,OAAO,OAAO,aAAa;EAC7B,OAAO;CACT;CAGA,MAAM,iBAAiB,MAA8C;EACnE,IAAI,CAAC,GAAG,OAAO,KAAA;EACf,IAAI,KAAK,OAAO,WAAW,MAAM,QAC/B,OAAO,OAAO,QAAQ;EACxB,OAAO;CACT;CAGA,MAAM,eACJ,QACuB;EACvB,IAAI,QAAQ,KAAA,GAAW,OAAO,KAAA;EAC9B,IAAI,OAAO,QAAQ,UAAU,OAAO,GAAG,IAAI;EAC3C,OAAO;CACT;CA6CA,OACE,oBAAC,WAAD;EAAgB;EAAK,OAAO;GA1C5B,GAAI,aAAa,EAAE,SAAS,WAAW,IAAI,CAAC;GAC5C,GAAI,WAAW;IAAE,aAAa;IAAU,cAAc;GAAS,IAAI,CAAC;GACpE,GAAI,WAAW;IAAE,YAAY;IAAU,eAAe;GAAS,IAAI,CAAC;GACpE,GAAI,QAAQ,EAAE,IAAI,EAAE,YAAY,QAAQ,EAAE,EAAE,IAAI,CAAC;GACjD,GAAI,QAAQ,EAAE,IAAI,EAAE,cAAc,QAAQ,EAAE,EAAE,IAAI,CAAC;GACnD,GAAI,QAAQ,EAAE,IAAI,EAAE,eAAe,QAAQ,EAAE,EAAE,IAAI,CAAC;GACpD,GAAI,QAAQ,EAAE,IAAI,EAAE,aAAa,QAAQ,EAAE,EAAE,IAAI,CAAC;GAGlD,GAAI,YAAY,EAAE,QAAQ,UAAU,IAAI,CAAC;GACzC,GAAI,UAAU;IAAE,YAAY;IAAS,aAAa;GAAQ,IAAI,CAAC;GAC/D,GAAI,UAAU;IAAE,WAAW;IAAS,cAAc;GAAQ,IAAI,CAAC;GAC/D,GAAI,QAAQ,EAAE,IAAI,EAAE,WAAW,QAAQ,EAAE,EAAE,IAAI,CAAC;GAChD,GAAI,QAAQ,EAAE,IAAI,EAAE,aAAa,QAAQ,EAAE,EAAE,IAAI,CAAC;GAClD,GAAI,QAAQ,EAAE,IAAI,EAAE,cAAc,QAAQ,EAAE,EAAE,IAAI,CAAC;GACnD,GAAI,QAAQ,EAAE,IAAI,EAAE,YAAY,QAAQ,EAAE,EAAE,IAAI,CAAC;GAGjD,iBAAiB,kBAAkB,UAAU;GAC7C,QAAQ,cAAc,MAAM;GAC5B,cAAc,oBAAoB,YAAY;GAC9C,WAAW,cAAc,MAAM;GAG/B,SAAS,kBAAkB,SAAS,UAAU;GAC9C,OAAO,YAAY,kBAAkB,OAAO,UAAU,CAAC;GACvD,QAAQ,YAAY,kBAAkB,QAAQ,UAAU,CAAC;GACzD,UAAU,YAAY,QAAQ;GAC9B,WAAW,YAAY,SAAS;GAChC,UAAU,YAAY,QAAQ;GAC9B,WAAW,YAAY,SAAS;GAChC;GACA;GACA;GACA;GACA;GAGA,GAAG;EAIyB;EAAe,GAAI;EAC5C;CACQ,CAAA;AAEf,CAAC,CACH"}
|
|
@@ -1,34 +1,47 @@
|
|
|
1
|
+
import { forwardRef, memo } from "react";
|
|
1
2
|
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
3
|
+
//#region src/react/core/layout/Center.tsx
|
|
4
|
+
/**
|
|
5
|
+
* @zendir/ui - Center Layout Primitive
|
|
6
|
+
*
|
|
7
|
+
* Centers content horizontally and vertically using flexbox.
|
|
8
|
+
* Common in operator dashboards for loading states, empty states, and hero sections.
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```tsx
|
|
12
|
+
* <Center height="100vh">
|
|
13
|
+
* <VStack spacing="md" align="center">
|
|
14
|
+
* <Icon name="satellite" size={64} />
|
|
15
|
+
* <H2>No Telemetry Data</H2>
|
|
16
|
+
* <Body2>Connect to a spacecraft to begin monitoring.</Body2>
|
|
17
|
+
* <Button>Connect</Button>
|
|
18
|
+
* </VStack>
|
|
19
|
+
* </Center>
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
var Center = memo(forwardRef(function Center({ as: Component = "div", width, height, maxWidth, textAlign = false, inline = false, style, children, ...rest }, ref) {
|
|
23
|
+
const resolveSize = (val) => {
|
|
24
|
+
if (val === void 0) return void 0;
|
|
25
|
+
if (typeof val === "number") return `${val}px`;
|
|
26
|
+
return val;
|
|
27
|
+
};
|
|
28
|
+
return /* @__PURE__ */ jsx(Component, {
|
|
29
|
+
ref,
|
|
30
|
+
style: {
|
|
31
|
+
display: inline ? "inline-flex" : "flex",
|
|
32
|
+
alignItems: "center",
|
|
33
|
+
justifyContent: "center",
|
|
34
|
+
width: resolveSize(width),
|
|
35
|
+
height: resolveSize(height),
|
|
36
|
+
maxWidth: resolveSize(maxWidth),
|
|
37
|
+
textAlign: textAlign ? "center" : void 0,
|
|
38
|
+
...style
|
|
39
|
+
},
|
|
40
|
+
...rest,
|
|
41
|
+
children
|
|
42
|
+
});
|
|
30
43
|
}));
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
//# sourceMappingURL=Center.js.map
|
|
44
|
+
//#endregion
|
|
45
|
+
export { Center, Center as default };
|
|
46
|
+
|
|
47
|
+
//# sourceMappingURL=Center.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Center.js","sources":["../../../../src/react/core/layout/Center.tsx"],"sourcesContent":["/**\
|
|
1
|
+
{"version":3,"file":"Center.js","names":[],"sources":["../../../../src/react/core/layout/Center.tsx"],"sourcesContent":["/**\n * @zendir/ui - Center Layout Primitive\n *\n * Centers content horizontally and vertically using flexbox.\n * Common in operator dashboards for loading states, empty states, and hero sections.\n *\n * @example\n * ```tsx\n * <Center height=\"100vh\">\n * <VStack spacing=\"md\" align=\"center\">\n * <Icon name=\"satellite\" size={64} />\n * <H2>No Telemetry Data</H2>\n * <Body2>Connect to a spacecraft to begin monitoring.</Body2>\n * <Button>Connect</Button>\n * </VStack>\n * </Center>\n * ```\n */\n\nimport React, { memo, forwardRef } from \"react\";\n\nexport interface CenterProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Element type to render */\n as?: React.ElementType;\n /** Width (CSS value or number for px) */\n width?: string | number;\n /** Height (CSS value or number for px) */\n height?: string | number;\n /** Max width constraint */\n maxWidth?: string | number;\n /** Also center text */\n textAlign?: boolean;\n /** Inline-flex instead of flex */\n inline?: boolean;\n /** Children */\n children?: React.ReactNode;\n}\n\nexport const Center = memo(\n forwardRef<HTMLDivElement, CenterProps>(function Center(\n {\n as: Component = \"div\",\n width,\n height,\n maxWidth,\n textAlign = false,\n inline = false,\n style,\n children,\n ...rest\n },\n ref,\n ): React.ReactElement {\n const resolveSize = (\n val: string | number | undefined,\n ): string | undefined => {\n if (val === undefined) return undefined;\n if (typeof val === \"number\") return `${val}px`;\n return val;\n };\n\n const computedStyle: React.CSSProperties = {\n display: inline ? \"inline-flex\" : \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n width: resolveSize(width),\n height: resolveSize(height),\n maxWidth: resolveSize(maxWidth),\n textAlign: textAlign ? \"center\" : undefined,\n ...style,\n };\n\n return (\n <Component ref={ref} style={computedStyle} {...rest}>\n {children}\n </Component>\n );\n }),\n);\n\nexport default Center;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAsCA,IAAa,SAAS,KACpB,WAAwC,SAAS,OAC/C,EACE,IAAI,YAAY,OAChB,OACA,QACA,UACA,YAAY,OACZ,SAAS,OACT,OACA,UACA,GAAG,QAEL,KACoB;CACpB,MAAM,eACJ,QACuB;EACvB,IAAI,QAAQ,KAAA,GAAW,OAAO,KAAA;EAC9B,IAAI,OAAO,QAAQ,UAAU,OAAO,GAAG,IAAI;EAC3C,OAAO;CACT;CAaA,OACE,oBAAC,WAAD;EAAgB;EAAK,OAAO;GAX5B,SAAS,SAAS,gBAAgB;GAClC,YAAY;GACZ,gBAAgB;GAChB,OAAO,YAAY,KAAK;GACxB,QAAQ,YAAY,MAAM;GAC1B,UAAU,YAAY,QAAQ;GAC9B,WAAW,YAAY,WAAW,KAAA;GAClC,GAAG;EAIyB;EAAe,GAAI;EAC5C;CACQ,CAAA;AAEf,CAAC,CACH"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
|
-
|
|
3
2
|
export interface DividerProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
4
3
|
/** Divider orientation */
|
|
5
|
-
orientation?:
|
|
4
|
+
orientation?: "horizontal" | "vertical";
|
|
6
5
|
/** Optional centered label text */
|
|
7
6
|
label?: string;
|
|
8
7
|
/** Spacing around the divider (CSS value) */
|