@zendir/ui 0.4.1 → 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 +34 -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 -538
- 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 +11 -5
- package/dist/react/core/navigation/SideNav.js +857 -602
- 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
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"themes.js","names":[],"sources":["../../src/tokens/themes.ts"],"sourcesContent":["/**\n * @zendir/ui — Semantic themes (Layer 1).\n *\n * Each theme maps semantic roles (background, text, border, accent, status,\n * semantic, interactive) onto concrete values. The nebula theme is fully\n * palette-aligned — it references the Layer 0 primitives in\n * src/tokens/palettes. The astro / hybrid / purple-hue / transparent themes\n * predate the palette system and keep their original literal values until\n * design migrates them onto endorsed scales.\n *\n * Status colors are immutable across every theme — always `astroStatus`\n * (operator-grade severity must never shift with the visual theme).\n *\n * These definitions are consumed by two surfaces:\n * • ThemeProvider (runtime) — resolves the active variant into CSS vars.\n * • src/tokens/index.ts (build) — emits the static tokens.css stylesheet.\n * The shared token shapes live in ../react/theme/types so neither surface\n * has to pull in the other.\n */\n\nimport type {\n ThemeTokensBase,\n ThemeFocus,\n ThemeAnimation,\n LayoutTokens,\n} from \"../react/theme/types\";\nimport {\n ultraviolet,\n electricBlue,\n zendirNeutral,\n astroStatus,\n} from \"./palettes\";\nimport {\n green as twGreen,\n yellow as twYellow,\n red as twRed,\n} from \"./palettes/tailwind\";\n\n// ============================================================================\n// Animation Tokens (Shared)\n// ============================================================================\n\nexport const animationTokens: ThemeAnimation = {\n fast: \"all 150ms cubic-bezier(0.4, 0, 0.2, 1)\",\n normal: \"all 250ms cubic-bezier(0.4, 0, 0.2, 1)\",\n slow: \"all 400ms cubic-bezier(0.4, 0, 0.2, 1)\",\n spring: \"all 300ms cubic-bezier(0.34, 1.56, 0.64, 1)\",\n easing: {\n default: \"cubic-bezier(0.4, 0, 0.2, 1)\",\n in: \"ease-in\",\n out: \"ease-out\",\n inOut: \"ease-in-out\",\n },\n duration: {\n instant: 0,\n fast: 150,\n normal: 250,\n slow: 400,\n },\n};\n\nexport const animationTokensReduced: ThemeAnimation = {\n fast: \"all 0.01ms linear\",\n normal: \"all 0.01ms linear\",\n slow: \"all 0.01ms linear\",\n spring: \"all 0.01ms linear\",\n easing: animationTokens.easing,\n duration: { instant: 0, fast: 0, normal: 0, slow: 0 },\n};\n\n// ============================================================================\n// Focus Tokens\n// ============================================================================\n\nexport const focusTokensDark: ThemeFocus = {\n color: \"#4dacff\",\n width: \"2px\",\n offset: \"2px\",\n ring: \"0 0 0 2px #4dacff\",\n style: {\n outline: \"2px solid #4dacff\",\n outlineOffset: \"2px\",\n },\n};\n\nexport const focusTokensLight: ThemeFocus = {\n color: \"#0066cc\",\n width: \"2px\",\n offset: \"2px\",\n ring: \"0 0 0 2px #0066cc\",\n style: {\n outline: \"2px solid #0066cc\",\n outlineOffset: \"2px\",\n },\n};\n\nexport const focusTokensPurpleHue: ThemeFocus = {\n color: \"#8b5cf6\",\n width: \"2px\",\n offset: \"2px\",\n ring: \"0 0 0 2px #8b5cf6\",\n style: {\n outline: \"2px solid #8b5cf6\",\n outlineOffset: \"2px\",\n },\n};\n\n// ============================================================================\n// Shadow Tokens\n// ============================================================================\n\nexport const shadowsDark = {\n none: \"none\",\n sm: \"0 1px 2px rgba(0, 0, 0, 0.3)\",\n md: \"0 4px 8px rgba(0, 0, 0, 0.4)\",\n lg: \"0 8px 16px rgba(0, 0, 0, 0.5)\",\n xl: \"0 16px 32px rgba(0, 0, 0, 0.6)\",\n glow: (color: string) => `0 0 20px ${color}40, 0 0 40px ${color}20`,\n};\n\nexport const shadowsLight = {\n none: \"none\",\n sm: \"0 1px 2px rgba(0, 0, 0, 0.1)\",\n md: \"0 4px 8px rgba(0, 0, 0, 0.15)\",\n lg: \"0 8px 16px rgba(0, 0, 0, 0.2)\",\n xl: \"0 16px 32px rgba(0, 0, 0, 0.25)\",\n glow: (color: string) => `0 0 20px ${color}30, 0 0 40px ${color}15`,\n};\n\n// ============================================================================\n// Layout Tokens (Shared)\n// Semantic layout spacing based on 4px grid. Shared across all themes.\n// ============================================================================\n\nexport const layoutTokens: LayoutTokens = {\n card: {\n padding: \"16px\", // 4 × 4px\n gap: \"24px\", // 6 × 4px — desktop grid gap (matches outer padding)\n gapCompact: \"16px\", // 4 × 4px — mobile grid gap\n heading: {\n iconSize: 18, // default card header icon (px) — matches ISS/Telemetry card header size\n iconSizeCompact: 16, // compact (e.g. chart inline header)\n titleFontSize: \"1rem\", // card titles (ISS, Telemetry, Mission) — reduced from 1.125rem\n titleFontSizeChart: \"0.875rem\", // chart titles (Power Trends) — slightly smaller\n titleFontWeight: 500,\n gap: 8, // gap between icon and title (px)\n },\n },\n section: {\n headerPaddingBottom: \"8px\", // 2 × 4px\n headerMarginBottom: \"0px\",\n contentPaddingTop: \"8px\", // 2 × 4px\n },\n form: {\n fieldGap: \"12px\", // 3 × 4px — between stacked fields\n inlineGap: \"12px\", // 3 × 4px — between side-by-side fields\n groupPadding: \"12px\", // 3 × 4px — inside grouped containers\n groupGap: \"12px\", // 3 × 4px — within group items\n labelGap: \"3px\", // label text ↔ tooltip icon\n },\n surface: {\n padding: \"12px\", // 3 × 4px\n borderRadius: \"12px\", // 3 × 4px\n gap: \"8px\", // 2 × 4px\n },\n};\n\n// ============================================================================\n// Astro UX Dark Theme\n// ============================================================================\n\nexport const astroThemeDark: ThemeTokensBase = {\n colors: {\n background: {\n base: \"#101923\",\n surface: \"#1b2d3e\",\n elevated: \"#243b53\",\n overlay: \"rgba(16, 25, 35, 0.95)\",\n },\n border: {\n default: \"#2b659b\",\n muted: \"#172635\",\n focus: \"#4dacff\",\n },\n text: {\n primary: \"#ffffff\",\n secondary: \"#b7c5d3\",\n tertiary: \"#8fa4b7\",\n muted: \"#8fa4b7\",\n inverse: \"#1b2d3e\",\n },\n status: { ...astroStatus },\n semantic: {\n success: \"#56f000\",\n warning: \"#fce83a\",\n error: \"#ff3838\",\n info: \"#4dacff\",\n },\n accent: {\n primary: \"#4dacff\",\n secondary: \"#56f000\",\n tertiary: \"#a371f7\",\n },\n interactive: {\n default: \"#4dacff\",\n hover: \"#92cbff\",\n active: \"#0066cc\",\n disabled: \"#6b7280\",\n },\n },\n spacing: {\n xxs: \"2px\",\n xs: \"4px\",\n sm: \"8px\",\n smd: \"12px\",\n md: \"16px\",\n mdl: \"20px\",\n lg: \"24px\",\n xl: \"32px\",\n xxl: \"48px\",\n },\n borderRadius: {\n none: \"0\",\n xs: \"1px\",\n sm: \"2px\",\n md: \"4px\",\n lg: \"8px\",\n xl: \"12px\",\n full: \"9999px\",\n },\n elementSize: {\n sm: \"28px\",\n md: \"36px\",\n lg: \"44px\",\n },\n typography: {\n /**\n * Font families per AstroUXDS specification\n * @see https://www.astrouxds.com/foundations/typography/\n */\n fontFamily: {\n /** Primary font: Roboto with comprehensive system fallbacks */\n primary:\n '\"Roboto\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", \"Helvetica Neue\", Arial, sans-serif',\n /** Heading font: Roboto per AstroUXDS (matches primary). */\n heading:\n '\"Roboto\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", \"Helvetica Neue\", Arial, sans-serif',\n /** Monospace font: Roboto Mono for data/code with system fallbacks */\n mono: '\"Roboto Mono\", \"SF Mono\", \"Consolas\", \"Liberation Mono\", monospace',\n },\n // Astro UX Display Styles\n // https://www.astrouxds.com/foundations/typography/\n display: {\n 1: {\n fontSize: \"3.75rem\",\n fontWeight: 300,\n letterSpacing: \"-0.5px\",\n lineHeight: \"4.375rem\",\n },\n 2: {\n fontSize: \"3rem\",\n fontWeight: 400,\n letterSpacing: \"0\",\n lineHeight: \"3.5rem\",\n },\n },\n // Astro UX Heading Styles\n heading: {\n 1: {\n fontSize: \"2.125rem\",\n fontWeight: 400,\n letterSpacing: \"0.25px\",\n lineHeight: \"2.5rem\",\n },\n \"1Bold\": {\n fontSize: \"2.125rem\",\n fontWeight: 700,\n letterSpacing: \"0.25px\",\n lineHeight: \"2rem\",\n },\n 2: {\n fontSize: \"1.5rem\",\n fontWeight: 400,\n letterSpacing: \"0\",\n lineHeight: \"1.75rem\",\n },\n 3: {\n fontSize: \"1.25rem\",\n fontWeight: 500,\n letterSpacing: \"0.15px\",\n lineHeight: \"1.5rem\",\n },\n 4: {\n fontSize: \"1.25rem\",\n fontWeight: 300,\n letterSpacing: \"0.15px\",\n lineHeight: \"1.5rem\",\n },\n 5: {\n fontSize: \"1.125rem\",\n fontWeight: 400,\n letterSpacing: \"0\",\n lineHeight: \"1.5rem\",\n },\n 6: {\n fontSize: \"1.125rem\",\n fontWeight: 300,\n letterSpacing: \"0\",\n lineHeight: \"1.5rem\",\n },\n },\n // Astro UX Body Styles\n body: {\n 1: {\n fontSize: \"1rem\",\n fontWeight: 400,\n letterSpacing: \"0.5px\",\n lineHeight: \"1.5rem\",\n },\n \"1Bold\": {\n fontSize: \"1rem\",\n fontWeight: 700,\n letterSpacing: \"0.5px\",\n lineHeight: \"1.5rem\",\n },\n 2: {\n fontSize: \"0.875rem\",\n fontWeight: 400,\n letterSpacing: \"0.5px\",\n lineHeight: \"1.25rem\",\n },\n \"2Bold\": {\n fontSize: \"0.875rem\",\n fontWeight: 700,\n letterSpacing: \"0.5px\",\n lineHeight: \"1.25rem\",\n },\n 3: {\n fontSize: \"0.75rem\",\n fontWeight: 400,\n letterSpacing: \"0\",\n lineHeight: \"1rem\",\n },\n \"3Bold\": {\n fontSize: \"0.75rem\",\n fontWeight: 700,\n letterSpacing: \"0\",\n lineHeight: \"1rem\",\n },\n },\n // Astro UX Control Body Styles\n control: {\n 1: {\n fontSize: \"1rem\",\n fontWeight: 400,\n letterSpacing: \"0.5px\",\n lineHeight: \"1.25rem\",\n },\n \"1Bold\": {\n fontSize: \"1rem\",\n fontWeight: 700,\n letterSpacing: \"0.5px\",\n lineHeight: \"1.25rem\",\n },\n },\n // Legacy convenience tokens (rem-based for Astro compliance)\n // Note: Use Typography component for new code\n fontSize: {\n micro: \"0.5625rem\", // 9px - very tight spaces\n xxs: \"0.625rem\", // 10px - compact labels (xs in old system)\n xs: \"0.625rem\", // 10px - compact (kept for backward compatibility)\n sm: \"0.75rem\", // 12px (Body 3)\n base: \"0.875rem\", // 14px (Body 2)\n md: \"0.875rem\", // 14px (Body 2)\n lg: \"1rem\", // 16px (Body 1)\n xl: \"1.25rem\", // 20px (Heading 3/4)\n xxl: \"1.5rem\", // 24px (Heading 2)\n xxxl: \"2.125rem\", // 34px (Heading 1)\n },\n /**\n * Font weights per AstroUXDS specification\n * Only 300, 400, 500, 700 are officially supported\n * @see https://www.astrouxds.com/foundations/typography/\n */\n fontWeight: {\n light: 300,\n normal: 400,\n medium: 500,\n /** @deprecated Use medium (500) instead - Astro spec only supports 300, 400, 500, 700 */\n semibold: 500, // Changed from 600 to 500 for Astro compliance\n bold: 700,\n },\n lineHeight: {\n tight: \"1.25rem\",\n normal: \"1.5rem\",\n relaxed: \"1.75rem\",\n },\n letterSpacing: {\n tight: \"-0.5px\",\n normal: \"0\",\n wide: \"0.5px\",\n },\n },\n shadows: shadowsDark,\n animation: animationTokens,\n focus: focusTokensDark,\n layout: layoutTokens,\n};\n\n// ============================================================================\n// Astro UX Light Theme\n// ============================================================================\n\nexport const astroThemeLight: ThemeTokensBase = {\n colors: {\n background: {\n base: \"#eaeef4\",\n surface: \"#f5f8fc\",\n elevated: \"#ffffff\",\n overlay: \"rgba(234, 238, 244, 0.95)\",\n },\n border: {\n default: \"#2b659b\",\n muted: \"#d1d5db\",\n focus: \"#0066cc\",\n },\n text: {\n primary: \"#1b2d3e\",\n secondary: \"#51667c\",\n tertiary: \"#556a7c\", // WCAG AA: 4.81:1 on #eaeef4, 5.24:1 on #f5f8fc, 5.61:1 on #fff (was #8fa4b7 → 2.25:1 FAIL)\n muted: \"#556a7c\", // WCAG AA compliant (was #8fa4b7)\n inverse: \"#ffffff\",\n },\n status: { ...astroStatus },\n semantic: {\n success: \"#56f000\",\n warning: \"#fce83a\",\n error: \"#ff3838\",\n info: \"#4dacff\",\n },\n accent: {\n primary: \"#0066cc\",\n secondary: \"#56f000\",\n tertiary: \"#7c3aed\",\n },\n interactive: {\n default: \"#0066cc\",\n hover: \"#0052a3\",\n active: \"#003d7a\",\n disabled: \"#a4abb6\",\n },\n },\n spacing: astroThemeDark.spacing,\n borderRadius: astroThemeDark.borderRadius,\n elementSize: astroThemeDark.elementSize,\n typography: astroThemeDark.typography,\n shadows: shadowsLight,\n animation: animationTokens,\n focus: focusTokensLight,\n layout: layoutTokens,\n};\n\n// ============================================================================\n// Hybrid Theme (Zendir Background + Astro Status + Purple Accents)\n// Modern, award-winning design with Zendir purple personality\n// ============================================================================\n\nexport const hybridTheme: ThemeTokensBase = {\n colors: {\n background: {\n base: \"#09090b\",\n surface: \"rgba(24, 24, 27, 0.98)\",\n elevated: \"rgba(39, 39, 42, 0.98)\",\n overlay: \"rgba(0, 0, 0, 0.85)\",\n },\n border: {\n default: \"rgba(139, 92, 246, 0.3)\", // Purple tint\n muted: \"rgba(63, 63, 70, 0.5)\",\n focus: \"#8b5cf6\", // Zendir purple\n },\n text: {\n primary: \"#ffffff\",\n secondary: \"#a1a1aa\",\n tertiary: \"#8e8e96\", // WCAG AA: 6.12:1 on #09090b, 5.45:1 on #18181b, 4.58:1 on #27272a (was #71717a → 4.07:1 FAIL)\n muted: \"#8e8e96\", // WCAG AA compliant (was #71717a)\n inverse: \"#09090b\",\n },\n // Astro UXD Status Colors (unchanged for compliance)\n status: { ...astroStatus },\n semantic: {\n success: \"#56f000\",\n warning: \"#fce83a\",\n error: \"#ff3838\",\n info: \"#8b5cf6\", // Purple for info\n },\n // Zendir Purple Accent Palette\n accent: {\n primary: \"#8b5cf6\", // Vibrant purple\n secondary: \"#a78bfa\", // Light purple\n tertiary: \"#7c3aed\", // Deep purple\n },\n interactive: {\n default: \"#8b5cf6\",\n hover: \"#a78bfa\",\n active: \"#7c3aed\",\n disabled: \"#52525b\",\n },\n },\n spacing: astroThemeDark.spacing,\n borderRadius: {\n none: \"0\",\n xs: \"2px\",\n sm: \"4px\",\n md: \"6px\",\n lg: \"10px\",\n xl: \"14px\",\n full: \"9999px\",\n },\n elementSize: astroThemeDark.elementSize,\n typography: astroThemeDark.typography,\n shadows: {\n ...shadowsDark,\n glow: (color: string) =>\n `0 0 20px ${color}50, 0 0 40px ${color}25, 0 4px 12px ${color}20`,\n },\n animation: animationTokens,\n focus: focusTokensPurpleHue,\n layout: layoutTokens,\n};\n\n// ============================================================================\n// Purple-Hue Theme - Full Purple Personality\n// Award-winning dark theme with purple accents\n// ============================================================================\n\nexport const purpleHueTheme: ThemeTokensBase = {\n colors: {\n background: {\n base: \"#0a0a0f\",\n surface: \"rgba(18, 18, 28, 0.98)\",\n elevated: \"rgba(28, 28, 42, 0.98)\",\n overlay: \"rgba(0, 0, 0, 0.9)\",\n },\n border: {\n default: \"rgba(139, 92, 246, 0.25)\",\n muted: \"rgba(55, 48, 82, 0.5)\",\n focus: \"#8b5cf6\",\n },\n text: {\n primary: \"#fafafa\",\n secondary: \"#a1a1aa\",\n tertiary: \"#8e8e96\", // WCAG AA: 6.08:1 on #0a0a0f, 5.02:1 on elevated (was #71717a → 4.05:1 FAIL)\n muted: \"#8e8e96\", // WCAG AA compliant (was #71717a)\n inverse: \"#0a0a0f\",\n },\n // Astro UXD Status Colors (for compliance)\n status: { ...astroStatus },\n semantic: {\n success: \"#56f000\",\n warning: \"#fce83a\",\n error: \"#ff3838\",\n info: \"#a78bfa\",\n },\n // Zendir Purple Accent Palette\n accent: {\n primary: \"#8b5cf6\", // Vibrant purple\n secondary: \"#a78bfa\", // Light purple\n tertiary: \"#7c3aed\", // Deep purple\n },\n interactive: {\n default: \"#8b5cf6\",\n hover: \"#a78bfa\",\n active: \"#7c3aed\",\n disabled: \"#52525b\",\n },\n },\n spacing: astroThemeDark.spacing,\n borderRadius: {\n none: \"0\",\n xs: \"2px\",\n sm: \"4px\",\n md: \"6px\",\n lg: \"10px\",\n xl: \"14px\",\n full: \"9999px\",\n },\n elementSize: astroThemeDark.elementSize,\n // Same typography as hybrid (Astro UX font stack with full fallbacks) for consistent card font across themes\n typography: astroThemeDark.typography,\n shadows: {\n ...shadowsDark,\n glow: (color: string) =>\n `0 0 25px ${color}60, 0 0 50px ${color}30, 0 4px 16px ${color}25`,\n },\n animation: animationTokens,\n focus: {\n ...focusTokensPurpleHue,\n },\n layout: layoutTokens,\n};\n\n// ============================================================================\n// Nebula Theme — palette-native dark theme.\n//\n// The first theme wired end-to-end onto the Layer 0 primitives: Prussian\n// Slate (zendirNeutral) surfaces + text, Ultraviolet accent/interactive,\n// Astro UXDS status, and Tailwind + Electric Blue semantic colors.\n// ============================================================================\n\n// The nebula surface spec defines two stops that sit between Neutral ramp\n// values (deeper than neutral-950 reads on OLED, between 900 and 800 for\n// elevation). They are part of the Nebula surface spec, not the ramp.\nconst nebulaBase = \"#070A18\"; // --bg\nconst nebulaElevated = \"#121B36\"; // --surface-2 / --border-subtle\n\nexport const nebulaTheme: ThemeTokensBase = {\n colors: {\n background: {\n base: nebulaBase,\n surface: zendirNeutral[900], // --surface-1\n elevated: nebulaElevated,\n overlay: \"rgba(7, 10, 24, 0.9)\", // nebulaBase @ 90%\n },\n border: {\n default: zendirNeutral[800], // --border / --surface-3\n muted: nebulaElevated, // --border-subtle\n focus: ultraviolet[500],\n },\n text: {\n primary: zendirNeutral[50], // --text\n secondary: zendirNeutral[300], // --text-2\n tertiary: zendirNeutral[400], // --text-3\n muted: zendirNeutral[500], // --text-4\n inverse: nebulaBase,\n },\n // Astro UXDS status colors — operator-grade severity, kept immutable.\n status: { ...astroStatus },\n semantic: {\n success: twGreen[500],\n warning: twYellow[500],\n error: twRed[500],\n info: electricBlue[500],\n },\n // Ultraviolet accent ramp.\n accent: {\n primary: ultraviolet[500],\n secondary: ultraviolet[400],\n tertiary: ultraviolet[600],\n },\n interactive: {\n default: ultraviolet[500],\n hover: ultraviolet[400],\n active: ultraviolet[700],\n disabled: zendirNeutral[600], // --text-5\n },\n },\n spacing: astroThemeDark.spacing,\n borderRadius: {\n none: \"0\",\n xs: \"2px\",\n sm: \"4px\",\n md: \"7px\",\n lg: \"10px\",\n xl: \"14px\",\n full: \"9999px\",\n },\n elementSize: astroThemeDark.elementSize,\n typography: astroThemeDark.typography,\n shadows: {\n ...shadowsDark,\n glow: (color: string) =>\n `0 0 25px ${color}60, 0 0 50px ${color}30, 0 4px 16px ${color}25`,\n },\n animation: animationTokens,\n focus: {\n ...focusTokensPurpleHue,\n },\n layout: layoutTokens,\n};\n\n// ============================================================================\n// Transparent Purple-Hue Theme - Glassmorphic Panels\n// Optimized for glass card overlays with transparent backgrounds\n// ============================================================================\n\nexport const transparentTheme: ThemeTokensBase = {\n colors: {\n background: {\n // Highly transparent backgrounds for glass effect\n base: \"rgba(8, 12, 20, 0.95)\",\n surface: \"rgba(15, 20, 35, 0.85)\",\n elevated: \"rgba(25, 35, 55, 0.80)\",\n overlay: \"rgba(0, 0, 0, 0.75)\",\n },\n border: {\n // Purple accent borders (Zendir brand)\n default: \"rgba(139, 92, 246, 0.25)\",\n muted: \"rgba(139, 92, 246, 0.15)\",\n focus: \"#8b5cf6\",\n // Thin faded card border with purple hint\n fadedBoxShadow:\n \"inset 0 1px 0 rgba(139, 92, 246, 0.12), inset 0 -1px 0 rgba(0, 0, 0, 0.05), inset 1px 0 0 rgba(139, 92, 246, 0.06), inset -1px 0 0 rgba(139, 92, 246, 0.06)\",\n },\n text: {\n primary: \"#f0f4f8\",\n secondary: \"#94a3b8\",\n tertiary: \"#7b8da1\", // WCAG AA: 5.71:1 on base, 5.34:1 on elevated (was #64748b → 3.66:1 FAIL)\n muted: \"#7b8da1\", // WCAG AA compliant (was #64748b)\n inverse: \"#0f172a\",\n },\n // Astro UXD Status Colors\n status: { ...astroStatus },\n semantic: {\n success: \"#56f000\",\n warning: \"#fce83a\",\n error: \"#ff3838\",\n info: \"#8b5cf6\",\n },\n // Purple accent (matching hybrid theme for consistency)\n accent: {\n primary: \"#8b5cf6\", // Vibrant purple\n secondary: \"#a78bfa\", // Light purple\n tertiary: \"#7c3aed\", // Deep purple\n },\n interactive: {\n default: \"#8b5cf6\", // Purple for interactive elements\n hover: \"#a78bfa\", // Light purple on hover\n active: \"#7c3aed\", // Deep purple on active\n disabled: \"#475569\",\n // Purple-hue transparent backgrounds for buttons/inputs (transparent + transparent-bold)\n transparentDefault: \"rgba(139, 92, 246, 0.12)\",\n transparentHover: \"rgba(139, 92, 246, 0.32)\",\n transparentInputBg: \"rgba(139, 92, 246, 0.08)\",\n },\n },\n spacing: astroThemeDark.spacing,\n borderRadius: {\n none: \"0\",\n xs: \"2px\",\n sm: \"4px\",\n md: \"8px\",\n lg: \"12px\",\n xl: \"16px\",\n full: \"9999px\",\n },\n elementSize: astroThemeDark.elementSize,\n // Same typography as hybrid for consistent card font across themes\n typography: astroThemeDark.typography,\n shadows: {\n ...shadowsDark,\n // Enhanced glow shadows for glass effect\n glow: (color: string) =>\n `0 0 30px ${color}50, 0 0 60px ${color}25, 0 4px 20px rgba(0,0,0,0.4)`,\n },\n animation: animationTokens,\n focus: {\n color: \"#8b5cf6\", // Purple focus ring\n width: \"2px\",\n offset: \"2px\",\n ring: \"0 0 0 2px #8b5cf6\",\n style: {\n outline: \"2px solid #8b5cf6\",\n outlineOffset: \"2px\",\n },\n },\n layout: layoutTokens,\n};\n\n// ============================================================================\n// Transparent Minimal Theme - Ultra-clean glassmorphic panels\n// Extremely subtle borders, minimal visual noise, clean dark surfaces\n// ============================================================================\n\nexport const transparentMinimalTheme: ThemeTokensBase = {\n colors: {\n background: {\n // Same as transparent theme\n base: \"rgba(8, 12, 20, 0.95)\",\n surface: \"rgba(15, 20, 35, 0.85)\",\n elevated: \"rgba(25, 35, 55, 0.80)\",\n overlay: \"rgba(0, 0, 0, 0.75)\",\n },\n border: {\n // Accent-colored borders for minimal theme (Zendir purple)\n default: \"rgba(139, 92, 246, 0.25)\",\n muted: \"rgba(139, 92, 246, 0.15)\",\n focus: \"#8b5cf6\",\n // Subtle card border using accent color\n fadedBoxShadow:\n \"inset 0 1px 0 rgba(139, 92, 246, 0.1), inset 0 -1px 0 rgba(0, 0, 0, 0.1), inset 1px 0 0 rgba(139, 92, 246, 0.05), inset -1px 0 0 rgba(139, 92, 246, 0.05)\",\n },\n text: {\n primary: \"#f0f4f8\",\n secondary: \"#94a3b8\",\n tertiary: \"#7b8da1\", // WCAG AA: 5.71:1 on base, 5.34:1 on elevated (was #64748b → 3.66:1 FAIL)\n muted: \"#7b8da1\", // WCAG AA compliant (was #64748b)\n inverse: \"#0f172a\",\n },\n // Astro UXD Status Colors\n status: { ...astroStatus },\n semantic: {\n success: \"#56f000\",\n warning: \"#fce83a\",\n error: \"#ff3838\",\n info: \"#8b5cf6\",\n },\n // Purple accent (matching transparent theme for consistency)\n accent: {\n primary: \"#8b5cf6\", // Vibrant purple\n secondary: \"#a78bfa\", // Light purple\n tertiary: \"#7c3aed\", // Deep purple\n },\n interactive: {\n default: \"#8b5cf6\", // Purple for interactive elements\n hover: \"#a78bfa\", // Light purple on hover\n active: \"#7c3aed\", // Deep purple on active\n disabled: \"#475569\",\n // Purple-hue transparent backgrounds for buttons/inputs (same as transparent theme)\n transparentDefault: \"rgba(139, 92, 246, 0.12)\",\n transparentHover: \"rgba(139, 92, 246, 0.32)\",\n transparentInputBg: \"rgba(139, 92, 246, 0.08)\",\n },\n },\n spacing: astroThemeDark.spacing,\n borderRadius: {\n none: \"0\",\n xs: \"2px\",\n sm: \"4px\",\n md: \"8px\",\n lg: \"12px\",\n xl: \"16px\",\n full: \"9999px\",\n },\n elementSize: astroThemeDark.elementSize,\n // Same typography as hybrid for consistent card font across themes\n typography: astroThemeDark.typography,\n shadows: {\n ...shadowsDark,\n // Same glow as transparent theme\n glow: (color: string) =>\n `0 0 30px ${color}50, 0 0 60px ${color}25, 0 4px 20px rgba(0,0,0,0.4)`,\n },\n animation: animationTokens,\n focus: {\n color: \"#8b5cf6\", // Purple focus ring\n width: \"2px\",\n offset: \"2px\",\n ring: \"0 0 0 2px #8b5cf6\",\n style: {\n outline: \"2px solid #8b5cf6\",\n outlineOffset: \"2px\",\n },\n },\n layout: layoutTokens,\n};\n"],"mappings":"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"}
|
package/dist/tokens/tokens.css
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @zendir/ui — CSS Design Tokens
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
4
|
+
* SOURCE OF TRUTH — hand-maintained. Edit color/token values here.
|
|
5
|
+
* `npm run build:tokens` reads this file and regenerates the typed name
|
|
6
|
+
* constants in css-vars.ts (never the reverse). The scales here mirror the
|
|
7
|
+
* primitive palettes in src/tokens/palettes/*.ts (the TypeScript source for
|
|
8
|
+
* JS consumers and the ThemeProvider runtime); keep the two in sync by hand.
|
|
6
9
|
*
|
|
7
10
|
* Usage:
|
|
8
11
|
* @import '@zendir/ui/tokens/css';
|
|
@@ -36,13 +39,6 @@
|
|
|
36
39
|
--zendir-status-standby-border: #285766;
|
|
37
40
|
--zendir-status-off-border: #3c3e42;
|
|
38
41
|
|
|
39
|
-
/* ============================================================
|
|
40
|
-
* ACCENT COLORS
|
|
41
|
-
* ============================================================ */
|
|
42
|
-
--zendir-accent-primary: #4dacff;
|
|
43
|
-
--zendir-accent-secondary: #3d8ddb;
|
|
44
|
-
--zendir-accent-tertiary: #2e6eb3;
|
|
45
|
-
|
|
46
42
|
/* ============================================================
|
|
47
43
|
* SPACING
|
|
48
44
|
* ============================================================ */
|
|
@@ -60,7 +56,7 @@
|
|
|
60
56
|
--zendir-radius-sm: 2px;
|
|
61
57
|
--zendir-radius-md: 4px;
|
|
62
58
|
--zendir-radius-lg: 8px;
|
|
63
|
-
--zendir-radius-xl:
|
|
59
|
+
--zendir-radius-xl: 16px;
|
|
64
60
|
--zendir-radius-full: 9999px;
|
|
65
61
|
|
|
66
62
|
/* ============================================================
|
|
@@ -69,27 +65,33 @@
|
|
|
69
65
|
* AstroUXDS-compliant fallback. OS-native fonts complete the chain.
|
|
70
66
|
* @see https://www.astrouxds.com/foundations/typography/
|
|
71
67
|
* ============================================================ */
|
|
72
|
-
--zendir-font-primary:
|
|
73
|
-
|
|
74
|
-
|
|
68
|
+
--zendir-font-primary:
|
|
69
|
+
"Public Sans", "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI",
|
|
70
|
+
"Helvetica Neue", Arial, sans-serif;
|
|
71
|
+
--zendir-font-heading:
|
|
72
|
+
"Sora", "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI",
|
|
73
|
+
"Helvetica Neue", Arial, sans-serif;
|
|
74
|
+
--zendir-font-mono:
|
|
75
|
+
"Roboto Mono", "SF Mono", "Consolas", "Liberation Mono", monospace;
|
|
75
76
|
|
|
76
77
|
/* Font sizes (rem-based, AstroUXDS scale) */
|
|
77
78
|
--zendir-font-size-micro: 0.5625rem;
|
|
78
79
|
--zendir-font-size-xxs: 0.625rem;
|
|
79
|
-
--zendir-font-size-xs: 0.
|
|
80
|
-
--zendir-font-size-sm: 0.
|
|
81
|
-
--zendir-font-size-base:
|
|
82
|
-
--zendir-font-size-md:
|
|
83
|
-
--zendir-font-size-lg:
|
|
84
|
-
--zendir-font-size-xl: 1.
|
|
85
|
-
--zendir-font-size-xxl:
|
|
86
|
-
--zendir-font-size-xxxl:
|
|
80
|
+
--zendir-font-size-xs: 0.75rem;
|
|
81
|
+
--zendir-font-size-sm: 0.875rem;
|
|
82
|
+
--zendir-font-size-base: 1rem;
|
|
83
|
+
--zendir-font-size-md: 1.125rem;
|
|
84
|
+
--zendir-font-size-lg: 1.25rem;
|
|
85
|
+
--zendir-font-size-xl: 1.5rem;
|
|
86
|
+
--zendir-font-size-xxl: 2.125rem;
|
|
87
|
+
--zendir-font-size-xxxl: 3rem;
|
|
87
88
|
--zendir-font-size-display: 3.75rem;
|
|
88
89
|
|
|
89
90
|
/* Font weights — AstroUXDS supports only 300/400/500/700 */
|
|
90
91
|
--zendir-font-weight-light: 300;
|
|
91
92
|
--zendir-font-weight-normal: 400;
|
|
92
93
|
--zendir-font-weight-medium: 500;
|
|
94
|
+
--zendir-font-weight-semibold: 500;
|
|
93
95
|
--zendir-font-weight-bold: 700;
|
|
94
96
|
|
|
95
97
|
/* Line heights */
|
|
@@ -116,40 +118,416 @@
|
|
|
116
118
|
}
|
|
117
119
|
|
|
118
120
|
/* ============================================================
|
|
119
|
-
*
|
|
121
|
+
* PRIMITIVE PALETTES (Layer 0 — src/tokens/palettes)
|
|
122
|
+
* Raw scales; prefer the semantic tokens above for UI surfaces.
|
|
123
|
+
* ============================================================ */
|
|
124
|
+
:root {
|
|
125
|
+
/* Zendir Colour System */
|
|
126
|
+
--zendir-eb-50: #eef2ff;
|
|
127
|
+
--zendir-eb-100: #e0e7ff;
|
|
128
|
+
--zendir-eb-200: #c4d2ff;
|
|
129
|
+
--zendir-eb-300: #9eb4ff;
|
|
130
|
+
--zendir-eb-400: #6f89ff;
|
|
131
|
+
--zendir-eb-500: #5061ff;
|
|
132
|
+
--zendir-eb-600: #3e3cff;
|
|
133
|
+
--zendir-eb-700: #352edf;
|
|
134
|
+
--zendir-eb-800: #2a2bb2;
|
|
135
|
+
--zendir-eb-900: #252e8a;
|
|
136
|
+
--zendir-eb-950: #151c50;
|
|
137
|
+
--zendir-pb-50: #eef2ff;
|
|
138
|
+
--zendir-pb-100: #dee7fe;
|
|
139
|
+
--zendir-pb-200: #c3d4fe;
|
|
140
|
+
--zendir-pb-300: #9bb6ff;
|
|
141
|
+
--zendir-pb-400: #698eff;
|
|
142
|
+
--zendir-pb-500: #466afc;
|
|
143
|
+
--zendir-pb-600: #2f4af0;
|
|
144
|
+
--zendir-pb-700: #263dd3;
|
|
145
|
+
--zendir-pb-800: #1b2da0;
|
|
146
|
+
--zendir-pb-900: #192b7a;
|
|
147
|
+
--zendir-pb-950: #0d1945;
|
|
148
|
+
--zendir-uv-50: #f5f3fd;
|
|
149
|
+
--zendir-uv-100: #eae6fa;
|
|
150
|
+
--zendir-uv-200: #d8cff9;
|
|
151
|
+
--zendir-uv-300: #c6b4ff;
|
|
152
|
+
--zendir-uv-400: #9d70ff;
|
|
153
|
+
--zendir-uv-500: #8744f3;
|
|
154
|
+
--zendir-uv-600: #7515e2;
|
|
155
|
+
--zendir-uv-700: #6600cd;
|
|
156
|
+
--zendir-uv-800: #5400ab;
|
|
157
|
+
--zendir-uv-900: #421182;
|
|
158
|
+
--zendir-uv-950: #251048;
|
|
159
|
+
--zendir-neutral-50: #f6f7fd;
|
|
160
|
+
--zendir-neutral-100: #edf2fc;
|
|
161
|
+
--zendir-neutral-200: #dde5f4;
|
|
162
|
+
--zendir-neutral-300: #c8d1e6;
|
|
163
|
+
--zendir-neutral-400: #8899bc;
|
|
164
|
+
--zendir-neutral-500: #596b8e;
|
|
165
|
+
--zendir-neutral-600: #445272;
|
|
166
|
+
--zendir-neutral-700: #303c58;
|
|
167
|
+
--zendir-neutral-800: #1b243d;
|
|
168
|
+
--zendir-neutral-900: #0d1429;
|
|
169
|
+
--zendir-neutral-950: #030414;
|
|
170
|
+
|
|
171
|
+
/* Astro UXDS status ramps */
|
|
172
|
+
--zendir-astro-red-400: #ff5f60;
|
|
173
|
+
--zendir-astro-red-500: #ff3838;
|
|
174
|
+
--zendir-astro-red-600: #ff2a04;
|
|
175
|
+
--zendir-astro-red-700: #c8102e;
|
|
176
|
+
--zendir-astro-red-800: #8b1703;
|
|
177
|
+
--zendir-astro-red-900: #661102;
|
|
178
|
+
--zendir-astro-amber-400: #ffcc57;
|
|
179
|
+
--zendir-astro-amber-500: #ffb302;
|
|
180
|
+
--zendir-astro-amber-600: #ffaf3d;
|
|
181
|
+
--zendir-astro-amber-700: #ff8c00;
|
|
182
|
+
--zendir-astro-amber-800: #975f0e;
|
|
183
|
+
--zendir-astro-amber-900: #664618;
|
|
184
|
+
--zendir-astro-yellow-400: #fded61;
|
|
185
|
+
--zendir-astro-yellow-500: #fce83a;
|
|
186
|
+
--zendir-astro-yellow-600: #fad800;
|
|
187
|
+
--zendir-astro-yellow-700: #c7ab00;
|
|
188
|
+
--zendir-astro-yellow-800: #917d01;
|
|
189
|
+
--zendir-astro-yellow-900: #645600;
|
|
190
|
+
--zendir-astro-green-400: #99f666;
|
|
191
|
+
--zendir-astro-green-500: #56f000;
|
|
192
|
+
--zendir-astro-green-600: #00e200;
|
|
193
|
+
--zendir-astro-green-700: #00ad23;
|
|
194
|
+
--zendir-astro-green-800: #007a33;
|
|
195
|
+
--zendir-astro-green-900: #005a00;
|
|
196
|
+
--zendir-astro-cyan-400: #5ce2ff;
|
|
197
|
+
--zendir-astro-cyan-500: #64d9ff;
|
|
198
|
+
--zendir-astro-cyan-600: #2dccff;
|
|
199
|
+
--zendir-astro-cyan-700: #20a9d5;
|
|
200
|
+
--zendir-astro-cyan-800: #35798e;
|
|
201
|
+
--zendir-astro-cyan-900: #285766;
|
|
202
|
+
|
|
203
|
+
/* Tailwind CSS v4.2 */
|
|
204
|
+
--zendir-tw-red-50: #fef2f2;
|
|
205
|
+
--zendir-tw-red-100: #ffe2e2;
|
|
206
|
+
--zendir-tw-red-200: #ffcaca;
|
|
207
|
+
--zendir-tw-red-300: #ffa3a4;
|
|
208
|
+
--zendir-tw-red-400: #ff6568;
|
|
209
|
+
--zendir-tw-red-500: #fb2c36;
|
|
210
|
+
--zendir-tw-red-600: #e40016;
|
|
211
|
+
--zendir-tw-red-700: #bf000f;
|
|
212
|
+
--zendir-tw-red-800: #9f0712;
|
|
213
|
+
--zendir-tw-red-900: #82181a;
|
|
214
|
+
--zendir-tw-red-950: #460809;
|
|
215
|
+
--zendir-tw-orange-50: #fff7ed;
|
|
216
|
+
--zendir-tw-orange-100: #ffedd5;
|
|
217
|
+
--zendir-tw-orange-200: #ffd7a8;
|
|
218
|
+
--zendir-tw-orange-300: #ffb970;
|
|
219
|
+
--zendir-tw-orange-400: #ff8b1f;
|
|
220
|
+
--zendir-tw-orange-500: #fc7100;
|
|
221
|
+
--zendir-tw-orange-600: #ec5600;
|
|
222
|
+
--zendir-tw-orange-700: #c43e00;
|
|
223
|
+
--zendir-tw-orange-800: #9f2d00;
|
|
224
|
+
--zendir-tw-orange-900: #7e2a0c;
|
|
225
|
+
--zendir-tw-orange-950: #441306;
|
|
226
|
+
--zendir-tw-yellow-50: #fefce8;
|
|
227
|
+
--zendir-tw-yellow-100: #fef9c2;
|
|
228
|
+
--zendir-tw-yellow-200: #fff085;
|
|
229
|
+
--zendir-tw-yellow-300: #ffe030;
|
|
230
|
+
--zendir-tw-yellow-400: #f7c900;
|
|
231
|
+
--zendir-tw-yellow-500: #eab300;
|
|
232
|
+
--zendir-tw-yellow-600: #ca8a00;
|
|
233
|
+
--zendir-tw-yellow-700: #a26200;
|
|
234
|
+
--zendir-tw-yellow-800: #874c00;
|
|
235
|
+
--zendir-tw-yellow-900: #733e0a;
|
|
236
|
+
--zendir-tw-yellow-950: #432004;
|
|
237
|
+
--zendir-tw-green-50: #f0fdf4;
|
|
238
|
+
--zendir-tw-green-100: #dcfce7;
|
|
239
|
+
--zendir-tw-green-200: #b9f8cf;
|
|
240
|
+
--zendir-tw-green-300: #7bf1a8;
|
|
241
|
+
--zendir-tw-green-400: #05df72;
|
|
242
|
+
--zendir-tw-green-500: #00c65a;
|
|
243
|
+
--zendir-tw-green-600: #00a447;
|
|
244
|
+
--zendir-tw-green-700: #00813a;
|
|
245
|
+
--zendir-tw-green-800: #016630;
|
|
246
|
+
--zendir-tw-green-900: #0d542b;
|
|
247
|
+
--zendir-tw-green-950: #032e15;
|
|
248
|
+
--zendir-tw-sky-50: #f0f9ff;
|
|
249
|
+
--zendir-tw-sky-100: #dff2fe;
|
|
250
|
+
--zendir-tw-sky-200: #b8e6fe;
|
|
251
|
+
--zendir-tw-sky-300: #78d4ff;
|
|
252
|
+
--zendir-tw-sky-400: #00bbfd;
|
|
253
|
+
--zendir-tw-sky-500: #00a5ea;
|
|
254
|
+
--zendir-tw-sky-600: #0084c7;
|
|
255
|
+
--zendir-tw-sky-700: #0069a2;
|
|
256
|
+
--zendir-tw-sky-800: #005986;
|
|
257
|
+
--zendir-tw-sky-900: #024a70;
|
|
258
|
+
--zendir-tw-sky-950: #052f4a;
|
|
259
|
+
--zendir-tw-blue-50: #eff6ff;
|
|
260
|
+
--zendir-tw-blue-100: #dbeafe;
|
|
261
|
+
--zendir-tw-blue-200: #bedbff;
|
|
262
|
+
--zendir-tw-blue-300: #91c5ff;
|
|
263
|
+
--zendir-tw-blue-400: #56a2ff;
|
|
264
|
+
--zendir-tw-blue-500: #3280ff;
|
|
265
|
+
--zendir-tw-blue-600: #155dfc;
|
|
266
|
+
--zendir-tw-blue-700: #1447e6;
|
|
267
|
+
--zendir-tw-blue-800: #193cb8;
|
|
268
|
+
--zendir-tw-blue-900: #1c398e;
|
|
269
|
+
--zendir-tw-blue-950: #162456;
|
|
270
|
+
--zendir-tw-indigo-50: #eef2ff;
|
|
271
|
+
--zendir-tw-indigo-100: #e0e7ff;
|
|
272
|
+
--zendir-tw-indigo-200: #c7d2ff;
|
|
273
|
+
--zendir-tw-indigo-300: #a4b4ff;
|
|
274
|
+
--zendir-tw-indigo-400: #7d87ff;
|
|
275
|
+
--zendir-tw-indigo-500: #6260ff;
|
|
276
|
+
--zendir-tw-indigo-600: #4f39f6;
|
|
277
|
+
--zendir-tw-indigo-700: #432dd7;
|
|
278
|
+
--zendir-tw-indigo-800: #372aac;
|
|
279
|
+
--zendir-tw-indigo-900: #312c85;
|
|
280
|
+
--zendir-tw-indigo-950: #1e1a4d;
|
|
281
|
+
--zendir-tw-purple-50: #faf5ff;
|
|
282
|
+
--zendir-tw-purple-100: #f3e8ff;
|
|
283
|
+
--zendir-tw-purple-200: #e9d5ff;
|
|
284
|
+
--zendir-tw-purple-300: #d8b4ff;
|
|
285
|
+
--zendir-tw-purple-400: #bf7eff;
|
|
286
|
+
--zendir-tw-purple-500: #ab4eff;
|
|
287
|
+
--zendir-tw-purple-600: #9810fa;
|
|
288
|
+
--zendir-tw-purple-700: #8200d9;
|
|
289
|
+
--zendir-tw-purple-800: #6e11b0;
|
|
290
|
+
--zendir-tw-purple-900: #59168b;
|
|
291
|
+
--zendir-tw-purple-950: #3c0366;
|
|
292
|
+
--zendir-tw-pink-50: #fdf2f8;
|
|
293
|
+
--zendir-tw-pink-100: #fce7f3;
|
|
294
|
+
--zendir-tw-pink-200: #fccee8;
|
|
295
|
+
--zendir-tw-pink-300: #fda5d5;
|
|
296
|
+
--zendir-tw-pink-400: #fb64b6;
|
|
297
|
+
--zendir-tw-pink-500: #f6339a;
|
|
298
|
+
--zendir-tw-pink-600: #e30076;
|
|
299
|
+
--zendir-tw-pink-700: #c2005c;
|
|
300
|
+
--zendir-tw-pink-800: #a2004c;
|
|
301
|
+
--zendir-tw-pink-900: #861043;
|
|
302
|
+
--zendir-tw-pink-950: #510424;
|
|
303
|
+
--zendir-tw-rose-50: #fff1f2;
|
|
304
|
+
--zendir-tw-rose-100: #ffe4e6;
|
|
305
|
+
--zendir-tw-rose-200: #ffccd3;
|
|
306
|
+
--zendir-tw-rose-300: #ffa3ae;
|
|
307
|
+
--zendir-tw-rose-400: #ff6880;
|
|
308
|
+
--zendir-tw-rose-500: #ff2357;
|
|
309
|
+
--zendir-tw-rose-600: #e60045;
|
|
310
|
+
--zendir-tw-rose-700: #c1003a;
|
|
311
|
+
--zendir-tw-rose-800: #a30037;
|
|
312
|
+
--zendir-tw-rose-900: #8b0836;
|
|
313
|
+
--zendir-tw-rose-950: #4d0218;
|
|
314
|
+
--zendir-tw-slate-50: #f8fafc;
|
|
315
|
+
--zendir-tw-slate-100: #f1f5f9;
|
|
316
|
+
--zendir-tw-slate-200: #e2e8f0;
|
|
317
|
+
--zendir-tw-slate-300: #cad5e2;
|
|
318
|
+
--zendir-tw-slate-400: #90a1b9;
|
|
319
|
+
--zendir-tw-slate-500: #62748e;
|
|
320
|
+
--zendir-tw-slate-600: #45556c;
|
|
321
|
+
--zendir-tw-slate-700: #314158;
|
|
322
|
+
--zendir-tw-slate-800: #1d293d;
|
|
323
|
+
--zendir-tw-slate-900: #0f172b;
|
|
324
|
+
--zendir-tw-slate-950: #020618;
|
|
325
|
+
--zendir-tw-neutral-50: #fafafa;
|
|
326
|
+
--zendir-tw-neutral-100: #f5f5f5;
|
|
327
|
+
--zendir-tw-neutral-200: #e5e5e5;
|
|
328
|
+
--zendir-tw-neutral-300: #d4d4d4;
|
|
329
|
+
--zendir-tw-neutral-400: #a1a1a1;
|
|
330
|
+
--zendir-tw-neutral-500: #737373;
|
|
331
|
+
--zendir-tw-neutral-600: #525252;
|
|
332
|
+
--zendir-tw-neutral-700: #404040;
|
|
333
|
+
--zendir-tw-neutral-800: #262626;
|
|
334
|
+
--zendir-tw-neutral-900: #171717;
|
|
335
|
+
--zendir-tw-neutral-950: #0a0a0a;
|
|
336
|
+
}
|
|
337
|
+
|
|
338
|
+
/* ============================================================
|
|
339
|
+
* ZEN (HYBRID) THEME (default)
|
|
120
340
|
* ============================================================ */
|
|
121
341
|
:root,
|
|
342
|
+
[data-theme="hybrid"],
|
|
122
343
|
[data-theme="dark"] {
|
|
344
|
+
--zendir-bg-base: #09090b;
|
|
345
|
+
--zendir-bg-surface: rgba(24, 24, 27, 0.98);
|
|
346
|
+
--zendir-bg-elevated: rgba(39, 39, 42, 0.98);
|
|
347
|
+
--zendir-bg-overlay: rgba(0, 0, 0, 0.85);
|
|
348
|
+
|
|
349
|
+
--zendir-text-primary: #ffffff;
|
|
350
|
+
--zendir-text-secondary: #a1a1aa;
|
|
351
|
+
--zendir-text-tertiary: #8e8e96;
|
|
352
|
+
--zendir-text-muted: #8e8e96;
|
|
353
|
+
|
|
354
|
+
--zendir-border-default: rgba(139, 92, 246, 0.3);
|
|
355
|
+
--zendir-border-muted: rgba(63, 63, 70, 0.5);
|
|
356
|
+
--zendir-border-focus: #8b5cf6;
|
|
357
|
+
|
|
358
|
+
--zendir-accent-primary: #8b5cf6;
|
|
359
|
+
--zendir-accent-secondary: #a78bfa;
|
|
360
|
+
--zendir-accent-tertiary: #7c3aed;
|
|
361
|
+
|
|
362
|
+
--zendir-semantic-success: #56f000;
|
|
363
|
+
--zendir-semantic-warning: #fce83a;
|
|
364
|
+
--zendir-semantic-error: #ff3838;
|
|
365
|
+
--zendir-semantic-info: #8b5cf6;
|
|
366
|
+
}
|
|
367
|
+
|
|
368
|
+
/* ============================================================
|
|
369
|
+
* ASTRO THEME
|
|
370
|
+
* ============================================================ */
|
|
371
|
+
[data-theme="astro"] {
|
|
123
372
|
--zendir-bg-base: #101923;
|
|
124
373
|
--zendir-bg-surface: #1b2d3e;
|
|
125
|
-
--zendir-bg-elevated: #
|
|
126
|
-
--zendir-bg-overlay: rgba(
|
|
374
|
+
--zendir-bg-elevated: #243b53;
|
|
375
|
+
--zendir-bg-overlay: rgba(16, 25, 35, 0.95);
|
|
127
376
|
|
|
128
377
|
--zendir-text-primary: #ffffff;
|
|
129
|
-
--zendir-text-secondary: #
|
|
130
|
-
--zendir-text-tertiary: #
|
|
131
|
-
--zendir-text-muted: #
|
|
378
|
+
--zendir-text-secondary: #b7c5d3;
|
|
379
|
+
--zendir-text-tertiary: #8fa4b7;
|
|
380
|
+
--zendir-text-muted: #8fa4b7;
|
|
132
381
|
|
|
133
|
-
--zendir-border-default: #
|
|
134
|
-
--zendir-border-muted: #
|
|
382
|
+
--zendir-border-default: #2b659b;
|
|
383
|
+
--zendir-border-muted: #172635;
|
|
135
384
|
--zendir-border-focus: #4dacff;
|
|
385
|
+
|
|
386
|
+
--zendir-accent-primary: #4dacff;
|
|
387
|
+
--zendir-accent-secondary: #56f000;
|
|
388
|
+
--zendir-accent-tertiary: #a371f7;
|
|
389
|
+
|
|
390
|
+
--zendir-semantic-success: #56f000;
|
|
391
|
+
--zendir-semantic-warning: #fce83a;
|
|
392
|
+
--zendir-semantic-error: #ff3838;
|
|
393
|
+
--zendir-semantic-info: #4dacff;
|
|
136
394
|
}
|
|
137
395
|
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
396
|
+
[data-theme="astro"][data-mode="light"],
|
|
397
|
+
[data-theme="hybrid"][data-mode="light"],
|
|
398
|
+
[data-theme="nebula"][data-mode="light"],
|
|
399
|
+
[data-theme="purple-hue"][data-mode="light"],
|
|
141
400
|
[data-theme="light"] {
|
|
142
|
-
--zendir-bg-base: #
|
|
143
|
-
--zendir-bg-surface: #
|
|
401
|
+
--zendir-bg-base: #eaeef4;
|
|
402
|
+
--zendir-bg-surface: #f5f8fc;
|
|
144
403
|
--zendir-bg-elevated: #ffffff;
|
|
145
|
-
--zendir-bg-overlay: rgba(
|
|
404
|
+
--zendir-bg-overlay: rgba(234, 238, 244, 0.95);
|
|
146
405
|
|
|
147
406
|
--zendir-text-primary: #1b2d3e;
|
|
148
|
-
--zendir-text-secondary: #
|
|
149
|
-
--zendir-text-tertiary: #
|
|
150
|
-
--zendir-text-muted: #
|
|
407
|
+
--zendir-text-secondary: #51667c;
|
|
408
|
+
--zendir-text-tertiary: #556a7c;
|
|
409
|
+
--zendir-text-muted: #556a7c;
|
|
151
410
|
|
|
152
|
-
--zendir-border-default: #
|
|
153
|
-
--zendir-border-muted: #
|
|
154
|
-
--zendir-border-focus: #
|
|
411
|
+
--zendir-border-default: #2b659b;
|
|
412
|
+
--zendir-border-muted: #d1d5db;
|
|
413
|
+
--zendir-border-focus: #0066cc;
|
|
414
|
+
|
|
415
|
+
--zendir-accent-primary: #0066cc;
|
|
416
|
+
--zendir-accent-secondary: #56f000;
|
|
417
|
+
--zendir-accent-tertiary: #7c3aed;
|
|
418
|
+
|
|
419
|
+
--zendir-semantic-success: #56f000;
|
|
420
|
+
--zendir-semantic-warning: #fce83a;
|
|
421
|
+
--zendir-semantic-error: #ff3838;
|
|
422
|
+
--zendir-semantic-info: #4dacff;
|
|
423
|
+
}
|
|
424
|
+
|
|
425
|
+
/* ============================================================
|
|
426
|
+
* NEBULA THEME
|
|
427
|
+
* ============================================================ */
|
|
428
|
+
[data-theme="nebula"] {
|
|
429
|
+
--zendir-bg-base: #070a18;
|
|
430
|
+
--zendir-bg-surface: #0d1429;
|
|
431
|
+
--zendir-bg-elevated: #121b36;
|
|
432
|
+
--zendir-bg-overlay: rgba(7, 10, 24, 0.9);
|
|
433
|
+
|
|
434
|
+
--zendir-text-primary: #f6f7fd;
|
|
435
|
+
--zendir-text-secondary: #c8d1e6;
|
|
436
|
+
--zendir-text-tertiary: #8899bc;
|
|
437
|
+
--zendir-text-muted: #596b8e;
|
|
438
|
+
|
|
439
|
+
--zendir-border-default: #1b243d;
|
|
440
|
+
--zendir-border-muted: #121b36;
|
|
441
|
+
--zendir-border-focus: #8744f3;
|
|
442
|
+
|
|
443
|
+
--zendir-accent-primary: #8744f3;
|
|
444
|
+
--zendir-accent-secondary: #9d70ff;
|
|
445
|
+
--zendir-accent-tertiary: #7515e2;
|
|
446
|
+
|
|
447
|
+
--zendir-semantic-success: #00c65a;
|
|
448
|
+
--zendir-semantic-warning: #eab300;
|
|
449
|
+
--zendir-semantic-error: #fb2c36;
|
|
450
|
+
--zendir-semantic-info: #5061ff;
|
|
451
|
+
}
|
|
452
|
+
|
|
453
|
+
/* ============================================================
|
|
454
|
+
* PURPLE HUE THEME
|
|
455
|
+
* ============================================================ */
|
|
456
|
+
[data-theme="purple-hue"] {
|
|
457
|
+
--zendir-bg-base: #0a0a0f;
|
|
458
|
+
--zendir-bg-surface: rgba(18, 18, 28, 0.98);
|
|
459
|
+
--zendir-bg-elevated: rgba(28, 28, 42, 0.98);
|
|
460
|
+
--zendir-bg-overlay: rgba(0, 0, 0, 0.9);
|
|
461
|
+
|
|
462
|
+
--zendir-text-primary: #fafafa;
|
|
463
|
+
--zendir-text-secondary: #a1a1aa;
|
|
464
|
+
--zendir-text-tertiary: #8e8e96;
|
|
465
|
+
--zendir-text-muted: #8e8e96;
|
|
466
|
+
|
|
467
|
+
--zendir-border-default: rgba(139, 92, 246, 0.25);
|
|
468
|
+
--zendir-border-muted: rgba(55, 48, 82, 0.5);
|
|
469
|
+
--zendir-border-focus: #8b5cf6;
|
|
470
|
+
|
|
471
|
+
--zendir-accent-primary: #8b5cf6;
|
|
472
|
+
--zendir-accent-secondary: #a78bfa;
|
|
473
|
+
--zendir-accent-tertiary: #7c3aed;
|
|
474
|
+
|
|
475
|
+
--zendir-semantic-success: #56f000;
|
|
476
|
+
--zendir-semantic-warning: #fce83a;
|
|
477
|
+
--zendir-semantic-error: #ff3838;
|
|
478
|
+
--zendir-semantic-info: #a78bfa;
|
|
479
|
+
}
|
|
480
|
+
|
|
481
|
+
/* ============================================================
|
|
482
|
+
* TRANSPARENT THEMES
|
|
483
|
+
* ============================================================ */
|
|
484
|
+
[data-theme="transparent"],
|
|
485
|
+
[data-theme="transparent-bold"] {
|
|
486
|
+
--zendir-bg-base: rgba(8, 12, 20, 0.95);
|
|
487
|
+
--zendir-bg-surface: rgba(15, 20, 35, 0.85);
|
|
488
|
+
--zendir-bg-elevated: rgba(25, 35, 55, 0.8);
|
|
489
|
+
--zendir-bg-overlay: rgba(0, 0, 0, 0.75);
|
|
490
|
+
|
|
491
|
+
--zendir-text-primary: #f0f4f8;
|
|
492
|
+
--zendir-text-secondary: #94a3b8;
|
|
493
|
+
--zendir-text-tertiary: #7b8da1;
|
|
494
|
+
--zendir-text-muted: #7b8da1;
|
|
495
|
+
|
|
496
|
+
--zendir-border-default: rgba(139, 92, 246, 0.25);
|
|
497
|
+
--zendir-border-muted: rgba(139, 92, 246, 0.15);
|
|
498
|
+
--zendir-border-focus: #8b5cf6;
|
|
499
|
+
|
|
500
|
+
--zendir-accent-primary: #8b5cf6;
|
|
501
|
+
--zendir-accent-secondary: #a78bfa;
|
|
502
|
+
--zendir-accent-tertiary: #7c3aed;
|
|
503
|
+
|
|
504
|
+
--zendir-semantic-success: #56f000;
|
|
505
|
+
--zendir-semantic-warning: #fce83a;
|
|
506
|
+
--zendir-semantic-error: #ff3838;
|
|
507
|
+
--zendir-semantic-info: #8b5cf6;
|
|
508
|
+
}
|
|
509
|
+
|
|
510
|
+
[data-theme="transparent-minimal"] {
|
|
511
|
+
--zendir-bg-base: rgba(8, 12, 20, 0.95);
|
|
512
|
+
--zendir-bg-surface: rgba(15, 20, 35, 0.85);
|
|
513
|
+
--zendir-bg-elevated: rgba(25, 35, 55, 0.8);
|
|
514
|
+
--zendir-bg-overlay: rgba(0, 0, 0, 0.75);
|
|
515
|
+
|
|
516
|
+
--zendir-text-primary: #f0f4f8;
|
|
517
|
+
--zendir-text-secondary: #94a3b8;
|
|
518
|
+
--zendir-text-tertiary: #7b8da1;
|
|
519
|
+
--zendir-text-muted: #7b8da1;
|
|
520
|
+
|
|
521
|
+
--zendir-border-default: rgba(139, 92, 246, 0.25);
|
|
522
|
+
--zendir-border-muted: rgba(139, 92, 246, 0.15);
|
|
523
|
+
--zendir-border-focus: #8b5cf6;
|
|
524
|
+
|
|
525
|
+
--zendir-accent-primary: #8b5cf6;
|
|
526
|
+
--zendir-accent-secondary: #a78bfa;
|
|
527
|
+
--zendir-accent-tertiary: #7c3aed;
|
|
528
|
+
|
|
529
|
+
--zendir-semantic-success: #56f000;
|
|
530
|
+
--zendir-semantic-warning: #fce83a;
|
|
531
|
+
--zendir-semantic-error: #ff3838;
|
|
532
|
+
--zendir-semantic-info: #8b5cf6;
|
|
155
533
|
}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -13,9 +13,9 @@ export interface AnomalyStatus {
|
|
|
13
13
|
* Severity uses AstroUXDS terminology: caution, serious, critical
|
|
14
14
|
*/
|
|
15
15
|
export interface Anomaly {
|
|
16
|
-
type:
|
|
16
|
+
type: "gyroscope" | "star_tracker" | "power" | "communication" | "thermal" | "propulsion";
|
|
17
17
|
/** Severity level (AstroUXDS: caution/serious/critical) */
|
|
18
|
-
severity:
|
|
18
|
+
severity: "caution" | "serious" | "critical";
|
|
19
19
|
timestamp: string;
|
|
20
20
|
description: string;
|
|
21
21
|
subsystem?: string;
|