rift-ds 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +107 -0
- package/behaviors/focusable.d.ts +26 -0
- package/behaviors/focusable.js +18 -0
- package/behaviors/useFocusScope.d.ts +38 -0
- package/behaviors/useFocusScope.js +82 -0
- package/behaviors/useLayer.d.ts +43 -0
- package/behaviors/useLayer.js +55 -0
- package/behaviors/useMounted.d.ts +7 -0
- package/behaviors/useMounted.js +14 -0
- package/behaviors/useScrollLock.d.ts +55 -0
- package/behaviors/useScrollLock.js +59 -0
- package/bin/rift-ds.mjs +82 -0
- package/charts.d.ts +16 -0
- package/charts.js +24 -0
- package/components/Accordion/Accordion.css +119 -0
- package/components/Accordion/Accordion.d.ts +24 -0
- package/components/Accordion/Accordion.js +76 -0
- package/components/AgentPlan/AgentPlan.css +251 -0
- package/components/AgentPlan/AgentPlan.d.ts +41 -0
- package/components/AgentPlan/AgentPlan.js +100 -0
- package/components/AgentRail/AgentRail.css +282 -0
- package/components/AgentRail/AgentRail.d.ts +72 -0
- package/components/AgentRail/AgentRail.js +101 -0
- package/components/AgentStatus/AgentStatus.css +511 -0
- package/components/AgentStatus/AgentStatus.d.ts +41 -0
- package/components/AgentStatus/AgentStatus.js +86 -0
- package/components/AgentStatus/AgentStatusPatterns.d.ts +17 -0
- package/components/AgentStatus/AgentStatusPatterns.js +20 -0
- package/components/AiButton/AiButton.css +559 -0
- package/components/AiButton/AiButton.d.ts +79 -0
- package/components/AiButton/AiButton.js +183 -0
- package/components/Alert/Alert.css +261 -0
- package/components/Alert/Alert.d.ts +25 -0
- package/components/Alert/Alert.js +53 -0
- package/components/AlertDialog/AlertDialog.css +133 -0
- package/components/AlertDialog/AlertDialog.d.ts +29 -0
- package/components/AlertDialog/AlertDialog.js +98 -0
- package/components/AnchorNav/AnchorNav.css +137 -0
- package/components/AnchorNav/AnchorNav.d.ts +40 -0
- package/components/AnchorNav/AnchorNav.js +135 -0
- package/components/AnimatedNumber/AnimatedNumber.css +31 -0
- package/components/AnimatedNumber/AnimatedNumber.d.ts +36 -0
- package/components/AnimatedNumber/AnimatedNumber.js +55 -0
- package/components/AppLayout/AppLayout.css +52 -0
- package/components/AppLayout/AppLayout.d.ts +33 -0
- package/components/AppLayout/AppLayout.js +47 -0
- package/components/AppSidebar/AppSidebar.css +592 -0
- package/components/AppSidebar/AppSidebar.d.ts +90 -0
- package/components/AppSidebar/AppSidebar.js +295 -0
- package/components/Avatar/Avatar.css +133 -0
- package/components/Avatar/Avatar.d.ts +20 -0
- package/components/Avatar/Avatar.js +58 -0
- package/components/Avatar/demoAvatars.d.ts +18 -0
- package/components/Avatar/demoAvatars.js +16 -0
- package/components/AvatarGroup/AvatarGroup.css +61 -0
- package/components/AvatarGroup/AvatarGroup.d.ts +32 -0
- package/components/AvatarGroup/AvatarGroup.js +31 -0
- package/components/Badge/Badge.css +67 -0
- package/components/Badge/Badge.d.ts +13 -0
- package/components/Badge/Badge.js +15 -0
- package/components/Banner/Banner.css +110 -0
- package/components/Banner/Banner.d.ts +36 -0
- package/components/Banner/Banner.js +59 -0
- package/components/Breadcrumb/Breadcrumb.css +100 -0
- package/components/Breadcrumb/Breadcrumb.d.ts +25 -0
- package/components/Breadcrumb/Breadcrumb.js +40 -0
- package/components/Button/Button.css +473 -0
- package/components/Button/Button.d.ts +73 -0
- package/components/Button/Button.js +91 -0
- package/components/ButtonGroup/ButtonGroup.css +39 -0
- package/components/ButtonGroup/ButtonGroup.d.ts +13 -0
- package/components/ButtonGroup/ButtonGroup.js +30 -0
- package/components/Card/Card.css +190 -0
- package/components/Card/Card.d.ts +48 -0
- package/components/Card/Card.js +113 -0
- package/components/CardStack/CardStack.css +106 -0
- package/components/CardStack/CardStack.d.ts +44 -0
- package/components/CardStack/CardStack.js +140 -0
- package/components/Carousel/Carousel.css +121 -0
- package/components/Carousel/Carousel.d.ts +25 -0
- package/components/Carousel/Carousel.js +160 -0
- package/components/Chart/AreaChart.d.ts +40 -0
- package/components/Chart/AreaChart.js +101 -0
- package/components/Chart/BarChart.d.ts +36 -0
- package/components/Chart/BarChart.js +107 -0
- package/components/Chart/Chart.css +224 -0
- package/components/Chart/ComboChart.d.ts +40 -0
- package/components/Chart/ComboChart.js +142 -0
- package/components/Chart/LineChart.d.ts +36 -0
- package/components/Chart/LineChart.js +91 -0
- package/components/Chart/PieChart.d.ts +36 -0
- package/components/Chart/PieChart.js +93 -0
- package/components/Chart/RadarChart.d.ts +36 -0
- package/components/Chart/RadarChart.js +92 -0
- package/components/Chart/RadialChart.d.ts +43 -0
- package/components/Chart/RadialChart.js +114 -0
- package/components/Chart/ScatterChart.d.ts +38 -0
- package/components/Chart/ScatterChart.js +99 -0
- package/components/Chart/StackedBarChart.d.ts +36 -0
- package/components/Chart/StackedBarChart.js +98 -0
- package/components/Chart/Treemap.d.ts +35 -0
- package/components/Chart/Treemap.js +95 -0
- package/components/Chart/palette.d.ts +1 -0
- package/components/Chart/palette.js +17 -0
- package/components/ChatHeader/ChatHeader.css +35 -0
- package/components/ChatHeader/ChatHeader.d.ts +30 -0
- package/components/ChatHeader/ChatHeader.js +17 -0
- package/components/ChatMarker/ChatMarker.css +61 -0
- package/components/ChatMarker/ChatMarker.d.ts +22 -0
- package/components/ChatMarker/ChatMarker.js +18 -0
- package/components/ChatMessage/ChatMessage.css +326 -0
- package/components/ChatMessage/ChatMessage.d.ts +74 -0
- package/components/ChatMessage/ChatMessage.js +71 -0
- package/components/ChatThread/ChatThread.css +171 -0
- package/components/ChatThread/ChatThread.d.ts +41 -0
- package/components/ChatThread/ChatThread.js +175 -0
- package/components/Checkbox/Checkbox.css +183 -0
- package/components/Checkbox/Checkbox.d.ts +81 -0
- package/components/Checkbox/Checkbox.js +176 -0
- package/components/Chip/Chip.css +231 -0
- package/components/Chip/Chip.d.ts +27 -0
- package/components/Chip/Chip.js +80 -0
- package/components/CircularButton/CircularButton.css +263 -0
- package/components/CircularButton/CircularButton.d.ts +68 -0
- package/components/CircularButton/CircularButton.js +72 -0
- package/components/CodeBlock/CodeBlock.css +189 -0
- package/components/CodeBlock/CodeBlock.d.ts +23 -0
- package/components/CodeBlock/CodeBlock.js +96 -0
- package/components/CodeDiff/CodeDiff.css +175 -0
- package/components/CodeDiff/CodeDiff.d.ts +58 -0
- package/components/CodeDiff/CodeDiff.js +114 -0
- package/components/ColorPicker/ColorPicker.css +278 -0
- package/components/ColorPicker/ColorPicker.d.ts +50 -0
- package/components/ColorPicker/ColorPicker.js +349 -0
- package/components/ColourSwatch/ColourSwatch.css +88 -0
- package/components/ColourSwatch/ColourSwatch.d.ts +34 -0
- package/components/ColourSwatch/ColourSwatch.js +42 -0
- package/components/Combobox/Combobox.css +384 -0
- package/components/Combobox/Combobox.d.ts +93 -0
- package/components/Combobox/Combobox.js +331 -0
- package/components/CommandPalette/CommandPalette.css +342 -0
- package/components/CommandPalette/CommandPalette.d.ts +62 -0
- package/components/CommandPalette/CommandPalette.js +247 -0
- package/components/Composer/Composer.css +427 -0
- package/components/Composer/Composer.d.ts +97 -0
- package/components/Composer/Composer.js +146 -0
- package/components/ContactCard/ContactCard.css +132 -0
- package/components/ContactCard/ContactCard.d.ts +24 -0
- package/components/ContactCard/ContactCard.js +79 -0
- package/components/ContextMenu/ContextMenu.css +258 -0
- package/components/ContextMenu/ContextMenu.d.ts +26 -0
- package/components/ContextMenu/ContextMenu.js +387 -0
- package/components/ContributionGraph/ContributionGraph.css +169 -0
- package/components/ContributionGraph/ContributionGraph.d.ts +34 -0
- package/components/ContributionGraph/ContributionGraph.js +149 -0
- package/components/DataTable/DataTable.css +109 -0
- package/components/DataTable/DataTable.d.ts +81 -0
- package/components/DataTable/DataTable.js +236 -0
- package/components/DateInput/DateInput.css +127 -0
- package/components/DateInput/DateInput.d.ts +44 -0
- package/components/DateInput/DateInput.js +82 -0
- package/components/DatePicker/DatePicker.css +198 -0
- package/components/DatePicker/DatePicker.d.ts +29 -0
- package/components/DatePicker/DatePicker.js +196 -0
- package/components/Dialog/Dialog.css +178 -0
- package/components/Dialog/Dialog.d.ts +39 -0
- package/components/Dialog/Dialog.js +99 -0
- package/components/Divider/Divider.css +100 -0
- package/components/Divider/Divider.d.ts +18 -0
- package/components/Divider/Divider.js +31 -0
- package/components/DocumentChip/DocumentChip.css +190 -0
- package/components/DocumentChip/DocumentChip.d.ts +41 -0
- package/components/DocumentChip/DocumentChip.js +78 -0
- package/components/Drawer/Drawer.css +262 -0
- package/components/Drawer/Drawer.d.ts +41 -0
- package/components/Drawer/Drawer.js +101 -0
- package/components/Dropdown/Dropdown.css +288 -0
- package/components/Dropdown/Dropdown.d.ts +85 -0
- package/components/Dropdown/Dropdown.js +308 -0
- package/components/DropdownMenu/DropdownMenu.css +301 -0
- package/components/DropdownMenu/DropdownMenu.d.ts +42 -0
- package/components/DropdownMenu/DropdownMenu.js +371 -0
- package/components/EmptyState/EmptyState.css +136 -0
- package/components/EmptyState/EmptyState.d.ts +27 -0
- package/components/EmptyState/EmptyState.js +32 -0
- package/components/EntityCard/EntityCard.css +69 -0
- package/components/EntityCard/EntityCard.d.ts +19 -0
- package/components/EntityCard/EntityCard.js +26 -0
- package/components/EventCalendar/EventCalendar.css +363 -0
- package/components/EventCalendar/EventCalendar.d.ts +59 -0
- package/components/EventCalendar/EventCalendar.js +230 -0
- package/components/Field/Field.css +80 -0
- package/components/Field/Field.d.ts +57 -0
- package/components/Field/Field.js +70 -0
- package/components/Field/FieldContext.d.ts +42 -0
- package/components/Field/FieldContext.js +8 -0
- package/components/Figure/Figure.css +71 -0
- package/components/Figure/Figure.d.ts +17 -0
- package/components/Figure/Figure.js +26 -0
- package/components/FileInput/FileInput.css +281 -0
- package/components/FileInput/FileInput.d.ts +54 -0
- package/components/FileInput/FileInput.js +205 -0
- package/components/FilterBar/FilterBar.css +202 -0
- package/components/FilterBar/FilterBar.d.ts +55 -0
- package/components/FilterBar/FilterBar.js +249 -0
- package/components/FunnelChart/FunnelChart.css +17 -0
- package/components/FunnelChart/FunnelChart.d.ts +51 -0
- package/components/FunnelChart/FunnelChart.js +96 -0
- package/components/GanttChart/GanttChart.css +326 -0
- package/components/GanttChart/GanttChart.d.ts +82 -0
- package/components/GanttChart/GanttChart.js +202 -0
- package/components/Gauge/Gauge.css +120 -0
- package/components/Gauge/Gauge.d.ts +64 -0
- package/components/Gauge/Gauge.js +111 -0
- package/components/Globe/Globe.css +155 -0
- package/components/Globe/Globe.d.ts +103 -0
- package/components/Globe/Globe.js +416 -0
- package/components/HoverCard/HoverCard.css +125 -0
- package/components/HoverCard/HoverCard.d.ts +29 -0
- package/components/HoverCard/HoverCard.js +83 -0
- package/components/ImageCompare/ImageCompare.css +112 -0
- package/components/ImageCompare/ImageCompare.d.ts +40 -0
- package/components/ImageCompare/ImageCompare.js +134 -0
- package/components/Input/Input.css +150 -0
- package/components/Input/Input.d.ts +45 -0
- package/components/Input/Input.js +99 -0
- package/components/Instructions/Instructions.css +216 -0
- package/components/Instructions/Instructions.d.ts +29 -0
- package/components/Instructions/Instructions.js +32 -0
- package/components/InterruptCard/InterruptCard.css +164 -0
- package/components/InterruptCard/InterruptCard.d.ts +54 -0
- package/components/InterruptCard/InterruptCard.js +57 -0
- package/components/Kbd/Kbd.css +28 -0
- package/components/Kbd/Kbd.d.ts +19 -0
- package/components/Kbd/Kbd.js +14 -0
- package/components/LegendTile/LegendTile.css +60 -0
- package/components/LegendTile/LegendTile.d.ts +30 -0
- package/components/LegendTile/LegendTile.js +21 -0
- package/components/Lightbox/Lightbox.css +210 -0
- package/components/Lightbox/Lightbox.d.ts +45 -0
- package/components/Lightbox/Lightbox.js +109 -0
- package/components/LinkList/LinkList.css +71 -0
- package/components/LinkList/LinkList.d.ts +24 -0
- package/components/LinkList/LinkList.js +42 -0
- package/components/MapCallout/MapCallout.css +46 -0
- package/components/MapCallout/MapCallout.d.ts +29 -0
- package/components/MapCallout/MapCallout.js +17 -0
- package/components/MapLegend/MapLegend.css +88 -0
- package/components/MapLegend/MapLegend.d.ts +40 -0
- package/components/MapLegend/MapLegend.js +68 -0
- package/components/MessageActions/MessageActions.css +85 -0
- package/components/MessageActions/MessageActions.d.ts +38 -0
- package/components/MessageActions/MessageActions.js +40 -0
- package/components/MessageCard/MessageCard.css +163 -0
- package/components/MessageCard/MessageCard.d.ts +35 -0
- package/components/MessageCard/MessageCard.js +30 -0
- package/components/Meter/Meter.css +98 -0
- package/components/Meter/Meter.d.ts +36 -0
- package/components/Meter/Meter.js +48 -0
- package/components/ModelPicker/ModelPicker.css +243 -0
- package/components/ModelPicker/ModelPicker.d.ts +60 -0
- package/components/ModelPicker/ModelPicker.js +261 -0
- package/components/MotionSwatch/MotionSwatch.css +176 -0
- package/components/MotionSwatch/MotionSwatch.d.ts +25 -0
- package/components/MotionSwatch/MotionSwatch.js +74 -0
- package/components/Nav/Nav.css +51 -0
- package/components/Nav/Nav.d.ts +19 -0
- package/components/Nav/Nav.js +26 -0
- package/components/NavList/NavList.css +155 -0
- package/components/NavList/NavList.d.ts +56 -0
- package/components/NavList/NavList.js +100 -0
- package/components/NotificationCenter/NotificationCenter.css +279 -0
- package/components/NotificationCenter/NotificationCenter.d.ts +72 -0
- package/components/NotificationCenter/NotificationCenter.js +145 -0
- package/components/NumberInput/NumberInput.css +163 -0
- package/components/NumberInput/NumberInput.d.ts +44 -0
- package/components/NumberInput/NumberInput.js +147 -0
- package/components/Pagination/Pagination.css +126 -0
- package/components/Pagination/Pagination.d.ts +22 -0
- package/components/Pagination/Pagination.js +84 -0
- package/components/Panel/Panel.css +26 -0
- package/components/Panel/Panel.d.ts +22 -0
- package/components/Panel/Panel.js +19 -0
- package/components/PinInput/PinInput.css +92 -0
- package/components/PinInput/PinInput.d.ts +46 -0
- package/components/PinInput/PinInput.js +161 -0
- package/components/Popover/Popover.css +118 -0
- package/components/Popover/Popover.d.ts +22 -0
- package/components/Popover/Popover.js +113 -0
- package/components/ProgressBar/ProgressBar.css +60 -0
- package/components/ProgressBar/ProgressBar.d.ts +16 -0
- package/components/ProgressBar/ProgressBar.js +27 -0
- package/components/PromptSuggestions/PromptSuggestions.css +264 -0
- package/components/PromptSuggestions/PromptSuggestions.d.ts +68 -0
- package/components/PromptSuggestions/PromptSuggestions.js +87 -0
- package/components/Prose/Prose.css +269 -0
- package/components/Prose/Prose.d.ts +21 -0
- package/components/Prose/Prose.js +14 -0
- package/components/Quote/Quote.css +78 -0
- package/components/Quote/Quote.d.ts +18 -0
- package/components/Quote/Quote.js +26 -0
- package/components/RadioButton/RadioButton.css +151 -0
- package/components/RadioButton/RadioButton.d.ts +90 -0
- package/components/RadioButton/RadioButton.js +138 -0
- package/components/Rating/Rating.css +74 -0
- package/components/Rating/Rating.d.ts +41 -0
- package/components/Rating/Rating.js +124 -0
- package/components/Reasoning/Reasoning.css +291 -0
- package/components/Reasoning/Reasoning.d.ts +55 -0
- package/components/Reasoning/Reasoning.js +99 -0
- package/components/RichDropdown/RichDropdown.css +239 -0
- package/components/RichDropdown/RichDropdown.d.ts +78 -0
- package/components/RichDropdown/RichDropdown.js +227 -0
- package/components/SectionTitle/SectionTitle.css +45 -0
- package/components/SectionTitle/SectionTitle.d.ts +12 -0
- package/components/SectionTitle/SectionTitle.js +22 -0
- package/components/SegmentedControl/SegmentedControl.css +231 -0
- package/components/SegmentedControl/SegmentedControl.d.ts +44 -0
- package/components/SegmentedControl/SegmentedControl.js +240 -0
- package/components/SelectionCard/SelectionCard.css +255 -0
- package/components/SelectionCard/SelectionCard.d.ts +36 -0
- package/components/SelectionCard/SelectionCard.js +102 -0
- package/components/ShaderField/ShaderField.css +24 -0
- package/components/ShaderField/ShaderField.d.ts +68 -0
- package/components/ShaderField/ShaderField.js +55 -0
- package/components/ShaderField/field.glsl.d.ts +39 -0
- package/components/ShaderField/field.glsl.js +178 -0
- package/components/ShaderField/useShaderField.d.ts +103 -0
- package/components/ShaderField/useShaderField.js +410 -0
- package/components/Skeleton/Skeleton.css +81 -0
- package/components/Skeleton/Skeleton.d.ts +16 -0
- package/components/Skeleton/Skeleton.js +30 -0
- package/components/Slider/Slider.css +104 -0
- package/components/Slider/Slider.d.ts +48 -0
- package/components/Slider/Slider.js +86 -0
- package/components/SourceChip/SourceChip.css +111 -0
- package/components/SourceChip/SourceChip.d.ts +32 -0
- package/components/SourceChip/SourceChip.js +31 -0
- package/components/SourceTrail/SourceTrail.css +209 -0
- package/components/SourceTrail/SourceTrail.d.ts +49 -0
- package/components/SourceTrail/SourceTrail.js +108 -0
- package/components/SpacingSwatch/SpacingSwatch.css +108 -0
- package/components/SpacingSwatch/SpacingSwatch.d.ts +20 -0
- package/components/SpacingSwatch/SpacingSwatch.js +50 -0
- package/components/Sparkline/Sparkline.css +76 -0
- package/components/Sparkline/Sparkline.d.ts +51 -0
- package/components/Sparkline/Sparkline.js +116 -0
- package/components/Spinner/Spinner.css +84 -0
- package/components/Spinner/Spinner.d.ts +14 -0
- package/components/Spinner/Spinner.js +42 -0
- package/components/SplitButton/SplitButton.css +93 -0
- package/components/SplitButton/SplitButton.d.ts +43 -0
- package/components/SplitButton/SplitButton.js +67 -0
- package/components/SplitPane/SplitPane.css +106 -0
- package/components/SplitPane/SplitPane.d.ts +36 -0
- package/components/SplitPane/SplitPane.js +130 -0
- package/components/Stat/Stat.css +121 -0
- package/components/Stat/Stat.d.ts +22 -0
- package/components/Stat/Stat.js +36 -0
- package/components/StatusDot/StatusDot.css +104 -0
- package/components/StatusDot/StatusDot.d.ts +34 -0
- package/components/StatusDot/StatusDot.js +23 -0
- package/components/Stepper/Stepper.css +216 -0
- package/components/Stepper/Stepper.d.ts +41 -0
- package/components/Stepper/Stepper.js +61 -0
- package/components/StreamingText/StreamingText.css +40 -0
- package/components/StreamingText/StreamingText.d.ts +62 -0
- package/components/StreamingText/StreamingText.js +49 -0
- package/components/StreamingText/useStreamReveal.d.ts +70 -0
- package/components/StreamingText/useStreamReveal.js +121 -0
- package/components/Swatch/Swatch.css +52 -0
- package/components/Swatch/Swatch.d.ts +34 -0
- package/components/Swatch/Swatch.js +44 -0
- package/components/Table/Table.css +223 -0
- package/components/Table/Table.d.ts +53 -0
- package/components/Table/Table.js +65 -0
- package/components/Tabs/Tabs.css +140 -0
- package/components/Tabs/Tabs.d.ts +28 -0
- package/components/Tabs/Tabs.js +78 -0
- package/components/TagInput/TagInput.css +169 -0
- package/components/TagInput/TagInput.d.ts +43 -0
- package/components/TagInput/TagInput.js +137 -0
- package/components/Textarea/Textarea.css +109 -0
- package/components/Textarea/Textarea.d.ts +43 -0
- package/components/Textarea/Textarea.js +86 -0
- package/components/ThreadPanel/ThreadPanel.css +862 -0
- package/components/ThreadPanel/ThreadPanel.d.ts +175 -0
- package/components/ThreadPanel/ThreadPanel.js +466 -0
- package/components/ThreadTabs/ThreadTabs.css +252 -0
- package/components/ThreadTabs/ThreadTabs.d.ts +54 -0
- package/components/ThreadTabs/ThreadTabs.js +201 -0
- package/components/TimePicker/TimePicker.css +230 -0
- package/components/TimePicker/TimePicker.d.ts +46 -0
- package/components/TimePicker/TimePicker.js +250 -0
- package/components/Timeline/Timeline.css +366 -0
- package/components/Timeline/Timeline.d.ts +67 -0
- package/components/Timeline/Timeline.js +73 -0
- package/components/Toast/Toast.css +363 -0
- package/components/Toast/Toast.d.ts +63 -0
- package/components/Toast/Toast.js +215 -0
- package/components/ToggleGroup/ToggleGroup.css +110 -0
- package/components/ToggleGroup/ToggleGroup.d.ts +50 -0
- package/components/ToggleGroup/ToggleGroup.js +73 -0
- package/components/ToggleSwitch/ToggleSwitch.css +172 -0
- package/components/ToggleSwitch/ToggleSwitch.d.ts +43 -0
- package/components/ToggleSwitch/ToggleSwitch.js +76 -0
- package/components/ToolCall/ToolCall.css +234 -0
- package/components/ToolCall/ToolCall.d.ts +43 -0
- package/components/ToolCall/ToolCall.js +90 -0
- package/components/Toolbar/Toolbar.css +56 -0
- package/components/Toolbar/Toolbar.d.ts +35 -0
- package/components/Toolbar/Toolbar.js +62 -0
- package/components/Tooltip/Tooltip.css +175 -0
- package/components/Tooltip/Tooltip.d.ts +22 -0
- package/components/Tooltip/Tooltip.js +74 -0
- package/components/TreeView/TreeView.css +119 -0
- package/components/TreeView/TreeView.d.ts +45 -0
- package/components/TreeView/TreeView.js +232 -0
- package/components/TypographySwatch/TypographySwatch.css +81 -0
- package/components/TypographySwatch/TypographySwatch.d.ts +24 -0
- package/components/TypographySwatch/TypographySwatch.js +40 -0
- package/components/UsageCard/UsageCard.css +30 -0
- package/components/UsageCard/UsageCard.d.ts +48 -0
- package/components/UsageCard/UsageCard.js +54 -0
- package/components/Waveform/Waveform.css +97 -0
- package/components/Waveform/Waveform.d.ts +44 -0
- package/components/Waveform/Waveform.js +46 -0
- package/components/WorldMap/WorldMap.css +234 -0
- package/components/WorldMap/WorldMap.d.ts +113 -0
- package/components/WorldMap/WorldMap.js +427 -0
- package/components/WorldMap/land.d.ts +14 -0
- package/components/WorldMap/land.js +4 -0
- package/components/registry.d.ts +79 -0
- package/components/registry.js +13 -0
- package/components/registry.json +1153 -0
- package/components/registry.json.d.ts +1156 -0
- package/components/registry.json.js +11 -0
- package/fonts/MaterialSymbolsRounded-VariableFont_FILL,GRAD,opsz,wght.woff2 +0 -0
- package/fonts/material-symbols.css +94 -0
- package/fonts/presets/dm-sans-300-700-latin-ext.woff2 +0 -0
- package/fonts/presets/dm-sans-300-700-latin.woff2 +0 -0
- package/fonts/presets/fraunces-300-700-latin-ext.woff2 +0 -0
- package/fonts/presets/fraunces-300-700-latin.woff2 +0 -0
- package/fonts/presets/ibm-plex-mono-300-latin-ext.woff2 +0 -0
- package/fonts/presets/ibm-plex-mono-300-latin.woff2 +0 -0
- package/fonts/presets/ibm-plex-mono-400-latin-ext.woff2 +0 -0
- package/fonts/presets/ibm-plex-mono-400-latin.woff2 +0 -0
- package/fonts/presets/ibm-plex-mono-500-latin-ext.woff2 +0 -0
- package/fonts/presets/ibm-plex-mono-500-latin.woff2 +0 -0
- package/fonts/presets/ibm-plex-mono-600-latin-ext.woff2 +0 -0
- package/fonts/presets/ibm-plex-mono-600-latin.woff2 +0 -0
- package/fonts/presets/ibm-plex-mono-700-latin-ext.woff2 +0 -0
- package/fonts/presets/ibm-plex-mono-700-latin.woff2 +0 -0
- package/fonts/presets/ibm-plex-sans-300-700-latin-ext.woff2 +0 -0
- package/fonts/presets/ibm-plex-sans-300-700-latin.woff2 +0 -0
- package/fonts/presets/inter-300-700-latin-ext.woff2 +0 -0
- package/fonts/presets/inter-300-700-latin.woff2 +0 -0
- package/fonts/presets/inter-tight-300-900-latin-ext.woff2 +0 -0
- package/fonts/presets/inter-tight-300-900-latin.woff2 +0 -0
- package/fonts/presets/lora-400-700-latin-ext.woff2 +0 -0
- package/fonts/presets/lora-400-700-latin.woff2 +0 -0
- package/fonts/presets/montserrat-300-700-latin-ext.woff2 +0 -0
- package/fonts/presets/montserrat-300-700-latin.woff2 +0 -0
- package/fonts/presets/poppins-300-latin-ext.woff2 +0 -0
- package/fonts/presets/poppins-300-latin.woff2 +0 -0
- package/fonts/presets/poppins-400-latin-ext.woff2 +0 -0
- package/fonts/presets/poppins-400-latin.woff2 +0 -0
- package/fonts/presets/poppins-500-latin-ext.woff2 +0 -0
- package/fonts/presets/poppins-500-latin.woff2 +0 -0
- package/fonts/presets/poppins-600-latin-ext.woff2 +0 -0
- package/fonts/presets/poppins-600-latin.woff2 +0 -0
- package/fonts/presets/poppins-700-latin-ext.woff2 +0 -0
- package/fonts/presets/poppins-700-latin.woff2 +0 -0
- package/fonts/presets/source-sans-3-300-700-latin-ext.woff2 +0 -0
- package/fonts/presets/source-sans-3-300-700-latin.woff2 +0 -0
- package/fonts/presets/space-grotesk-300-700-latin-ext.woff2 +0 -0
- package/fonts/presets/space-grotesk-300-700-latin.woff2 +0 -0
- package/fonts/presets/work-sans-300-700-latin-ext.woff2 +0 -0
- package/fonts/presets/work-sans-300-700-latin.woff2 +0 -0
- package/index.d.ts +132 -0
- package/index.js +277 -0
- package/package.json +87 -0
- package/tokens/motion.d.ts +44 -0
- package/tokens/motion.js +32 -0
- package/tokens/presets/contrast.css +316 -0
- package/tokens/presets/coral.css +356 -0
- package/tokens/presets/forest.css +334 -0
- package/tokens/presets/gold.css +303 -0
- package/tokens/presets/mono.css +286 -0
- package/tokens/presets/pink.css +349 -0
- package/tokens/presets/presets.css +17 -0
- package/tokens/presets/terminal.css +378 -0
- package/tokens/presets/violet.css +314 -0
- package/tokens/presets/warm.css +320 -0
- package/tokens/presets/zest.css +359 -0
- package/tokens/registry.d.ts +22 -0
- package/tokens/registry.js +14 -0
- package/tokens/registry.json +276 -0
- package/tokens/registry.json.d.ts +279 -0
- package/tokens/registry.json.js +8 -0
- package/tokens/tokens-dark.css +186 -0
- package/tokens/tokens-light.css +276 -0
- package/tokens/tokens-motion.css +72 -0
- package/tokens/tokens-primitives.css +213 -0
- package/tokens/tokens-typography.css +210 -0
- package/tokens/tokens.css +11 -0
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
/* ============================================
|
|
2
|
+
SEMANTIC TOKENS — DARK THEME
|
|
3
|
+
Applied when data-theme="dark" is set
|
|
4
|
+
Every value chains to tokens-primitives.css
|
|
5
|
+
(validated by scripts/validate-token-references.mjs)
|
|
6
|
+
============================================ */
|
|
7
|
+
|
|
8
|
+
[data-theme="dark"] {
|
|
9
|
+
/* Text */
|
|
10
|
+
--color-text-primary: var(--primitive-neutral-01);
|
|
11
|
+
--color-text-secondary: var(--primitive-neutral-03);
|
|
12
|
+
--color-text-tertiary: var(--primitive-neutral-04);
|
|
13
|
+
--color-text-inverse: var(--primitive-neutral-07);
|
|
14
|
+
--color-text-on-inverse: var(--primitive-neutral-09);
|
|
15
|
+
|
|
16
|
+
/* Icon */
|
|
17
|
+
--color-icon-primary: var(--primitive-neutral-02);
|
|
18
|
+
--color-icon-secondary: var(--primitive-neutral-04);
|
|
19
|
+
|
|
20
|
+
/* Background - Page */
|
|
21
|
+
--color-bg-page-primary: var(--primitive-neutral-10);
|
|
22
|
+
--color-bg-page-inverse: var(--primitive-neutral-01);
|
|
23
|
+
|
|
24
|
+
/* Background - Container */
|
|
25
|
+
--color-bg-container-primary: var(--primitive-neutral-09-a80);
|
|
26
|
+
--color-bg-container-primary-transparent: var(--primitive-neutral-09-a01);
|
|
27
|
+
--color-bg-container-primary-semi: var(--primitive-neutral-09-a60);
|
|
28
|
+
--color-bg-container-secondary: var(--primitive-neutral-07);
|
|
29
|
+
--color-bg-container-tertiary: var(--primitive-neutral-08);
|
|
30
|
+
--color-bg-container-inverse: var(--primitive-neutral-01);
|
|
31
|
+
--color-bg-container-border: var(--primitive-neutral-08);
|
|
32
|
+
--color-bg-glass: var(--primitive-neutral-09-a66);
|
|
33
|
+
|
|
34
|
+
/* Divider */
|
|
35
|
+
--color-divider: var(--primitive-neutral-08-a80);
|
|
36
|
+
|
|
37
|
+
/* Chat bubbles — alias the same roles as light; the underlying container
|
|
38
|
+
and text tokens carry the theme swap. */
|
|
39
|
+
--color-chat-bubble-sent-bg: var(--color-bg-container-secondary);
|
|
40
|
+
--color-chat-bubble-sent-text: var(--color-text-primary);
|
|
41
|
+
--color-chat-bubble-received-bg: var(--color-bg-container-secondary);
|
|
42
|
+
--color-chat-bubble-received-text: var(--color-text-primary);
|
|
43
|
+
/* The composer's context note — one step off the #050505 shell */
|
|
44
|
+
--color-chat-context-bg: var(--primitive-neutral-09);
|
|
45
|
+
|
|
46
|
+
/* Calendar surfaces — the dark values are the reason this family exists:
|
|
47
|
+
the container ramp's second step (#303030) glares at calendar density, so
|
|
48
|
+
cells rest on the semi neutral-08 (≈#1E over the calendar container) and
|
|
49
|
+
hover one gentle step up to the semi neutral-07 (≈#2C). The pill hover
|
|
50
|
+
takes the resting cell tint — a step darker than the hovered cell it sits
|
|
51
|
+
on — and the hover-only border ring is an obvious mid-grey that reads
|
|
52
|
+
against both cell states. */
|
|
53
|
+
--color-calendar-cell-bg: var(--primitive-neutral-08-a80);
|
|
54
|
+
--color-calendar-cell-bg-hover: var(--primitive-neutral-07-a80);
|
|
55
|
+
--color-calendar-event-bg: var(--color-bg-container-primary);
|
|
56
|
+
--color-calendar-event-bg-hover: var(--color-calendar-cell-bg);
|
|
57
|
+
--color-calendar-event-border: var(--primitive-neutral-06);
|
|
58
|
+
|
|
59
|
+
/* Overlay & controls */
|
|
60
|
+
--color-scrim: var(--primitive-true-black-strong);
|
|
61
|
+
--color-control-thumb: var(--color-action-primary-text);
|
|
62
|
+
|
|
63
|
+
/* Elevation — stronger opacity so shadows read against the #050505 floor */
|
|
64
|
+
--shadow-floating: 0 4px 16px rgba(0, 0, 0, 0.55);
|
|
65
|
+
--shadow-modal: 0 8px 32px rgba(0, 0, 0, 0.6);
|
|
66
|
+
|
|
67
|
+
/* Action - Primary. Inverted from light: the fill is the light half of
|
|
68
|
+
the teal ramp under a dark label, because a dark fill cannot clear 3:1
|
|
69
|
+
against the near-black page. Hover and active brighten rather than
|
|
70
|
+
deepen, so the fill walks toward the page's opposite, not into it. */
|
|
71
|
+
--color-action-primary-bg: var(--primitive-teal-05);
|
|
72
|
+
--color-action-primary-bg-hover: var(--primitive-teal-04);
|
|
73
|
+
--color-action-primary-bg-active: var(--primitive-teal-03);
|
|
74
|
+
--color-action-primary-text: var(--primitive-teal-10);
|
|
75
|
+
--color-action-primary-text-active: var(--primitive-teal-10);
|
|
76
|
+
--color-action-primary-text-secondary: var(--primitive-teal-10);
|
|
77
|
+
--color-action-primary-text-tertiary: var(--primitive-teal-04);
|
|
78
|
+
--color-action-primary-border: var(--primitive-teal-05);
|
|
79
|
+
--color-action-primary-border-secondary: var(--primitive-teal-06);
|
|
80
|
+
--color-action-primary-border-tertiary: var(--primitive-teal-04);
|
|
81
|
+
|
|
82
|
+
/* Action - Icon. The active icon sits on the hover/active fills, which
|
|
83
|
+
are the light half of the ramp here — so it inverts with the label. */
|
|
84
|
+
--color-action-icon-default: var(--primitive-neutral-01);
|
|
85
|
+
--color-action-icon-active: var(--primitive-teal-10);
|
|
86
|
+
|
|
87
|
+
/* Action - Passive (Secondary button) */
|
|
88
|
+
--color-action-passive-text: var(--primitive-neutral-01);
|
|
89
|
+
--color-action-passive-bg: var(--primitive-neutral-09-a01);
|
|
90
|
+
--color-action-passive-bg-hover: var(--primitive-neutral-08-a80);
|
|
91
|
+
--color-action-passive-bg-active: var(--primitive-neutral-07-a80);
|
|
92
|
+
|
|
93
|
+
/* Action - Neutral (grey filled buttons). The fill stays visible at
|
|
94
|
+
rest, one step above the container greys; hover and active brighten
|
|
95
|
+
toward the page's opposite, like the primary family. */
|
|
96
|
+
--color-action-neutral-bg: var(--primitive-neutral-08);
|
|
97
|
+
--color-action-neutral-bg-hover: var(--primitive-neutral-07);
|
|
98
|
+
--color-action-neutral-bg-active: var(--primitive-neutral-06);
|
|
99
|
+
--color-action-neutral-text: var(--primitive-neutral-01);
|
|
100
|
+
|
|
101
|
+
/* Status - Positive */
|
|
102
|
+
--color-status-positive-bg: var(--primitive-green-10);
|
|
103
|
+
--color-status-positive-border: var(--primitive-green-07);
|
|
104
|
+
--color-status-positive-text: var(--primitive-green-01);
|
|
105
|
+
--color-status-positive-icon: var(--primitive-green-07);
|
|
106
|
+
|
|
107
|
+
/* Status - Warning */
|
|
108
|
+
--color-status-warning-bg: var(--primitive-orange-10);
|
|
109
|
+
--color-status-warning-border: var(--primitive-orange-07);
|
|
110
|
+
--color-status-warning-text: var(--primitive-orange-01);
|
|
111
|
+
--color-status-warning-icon: var(--primitive-orange-07);
|
|
112
|
+
|
|
113
|
+
/* Status - Error */
|
|
114
|
+
--color-status-error-bg: var(--primitive-red-10);
|
|
115
|
+
--color-status-error-border: var(--primitive-red-07);
|
|
116
|
+
--color-status-error-text: var(--primitive-red-01);
|
|
117
|
+
--color-status-error-icon: var(--primitive-red-06);
|
|
118
|
+
|
|
119
|
+
/* Status - Info */
|
|
120
|
+
--color-status-info-bg: var(--primitive-blue-10);
|
|
121
|
+
--color-status-info-border: var(--primitive-blue-07);
|
|
122
|
+
--color-status-info-text: var(--primitive-blue-01);
|
|
123
|
+
--color-status-info-icon: var(--primitive-blue-05);
|
|
124
|
+
|
|
125
|
+
/* Status - Neutral */
|
|
126
|
+
--color-status-neutral-bg: var(--primitive-neutral-08);
|
|
127
|
+
--color-status-neutral-border: var(--primitive-neutral-06);
|
|
128
|
+
--color-status-neutral-text: var(--primitive-neutral-01);
|
|
129
|
+
--color-status-neutral-icon: var(--primitive-neutral-04);
|
|
130
|
+
|
|
131
|
+
/* The -icon step (status glyphs on plain surfaces) runs brighter here
|
|
132
|
+
than the light-theme inks: mid-ramp hues that hold ≥3:1 on the dark
|
|
133
|
+
container floor, where the near-white -text tints all read as grey. */
|
|
134
|
+
|
|
135
|
+
/* AI - The gradient accent: the same luminous stops as light. One set
|
|
136
|
+
works on both floors, so the AI signature never shifts hue with the
|
|
137
|
+
theme. */
|
|
138
|
+
--color-ai-gradient-start: var(--primitive-red-05);
|
|
139
|
+
--color-ai-gradient-mid: var(--primitive-blue-05);
|
|
140
|
+
--color-ai-gradient-end: var(--primitive-teal-07);
|
|
141
|
+
/* The AI button's solid field: deeper than the neutral-10 page floor, so
|
|
142
|
+
the pill reads as a cut-out of true darkness under the luminous ring. */
|
|
143
|
+
--color-ai-button-bg: var(--primitive-true-black);
|
|
144
|
+
|
|
145
|
+
/* Chart - Contribution heatmap ramp (level 0 = none → level 4 = most) */
|
|
146
|
+
--color-chart-contribution-0: var(--primitive-neutral-08);
|
|
147
|
+
--color-chart-contribution-1: var(--primitive-green-10);
|
|
148
|
+
--color-chart-contribution-2: var(--primitive-green-09);
|
|
149
|
+
--color-chart-contribution-3: var(--primitive-green-08);
|
|
150
|
+
--color-chart-contribution-4: var(--primitive-green-07);
|
|
151
|
+
|
|
152
|
+
/* Chart - Ordered series ramp for multi-series charts. Series 1 follows
|
|
153
|
+
the action teal (theme-split with it); 2-7 alias the core accents, so
|
|
154
|
+
re-theming an accent re-themes every chart that uses its slot. */
|
|
155
|
+
--color-chart-series-1: var(--color-action-primary-bg);
|
|
156
|
+
--color-chart-series-2: var(--color-core-accent-mint);
|
|
157
|
+
--color-chart-series-3: var(--color-core-accent-gold);
|
|
158
|
+
--color-chart-series-4: var(--color-core-accent-coral);
|
|
159
|
+
--color-chart-series-5: var(--color-core-accent-violet);
|
|
160
|
+
--color-chart-series-6: var(--color-core-accent-amber);
|
|
161
|
+
--color-chart-series-7: var(--color-core-accent-cobalt);
|
|
162
|
+
|
|
163
|
+
/* Input */
|
|
164
|
+
--color-input-text-primary: var(--primitive-neutral-01);
|
|
165
|
+
--color-input-text-placeholder: var(--primitive-neutral-04);
|
|
166
|
+
--color-input-text-disabled: var(--primitive-neutral-07);
|
|
167
|
+
--color-input-text-inverse: var(--primitive-neutral-07);
|
|
168
|
+
--color-input-border-primary: var(--primitive-neutral-08);
|
|
169
|
+
--color-input-border-hover: var(--primitive-teal-07);
|
|
170
|
+
--color-input-border-selected: var(--primitive-teal-06);
|
|
171
|
+
--color-input-border-disabled: var(--primitive-neutral-08);
|
|
172
|
+
--color-input-bg-primary: var(--primitive-neutral-10);
|
|
173
|
+
--color-input-bg-disabled: var(--primitive-neutral-09);
|
|
174
|
+
|
|
175
|
+
/* Core colours */
|
|
176
|
+
--color-core-ui-primary: var(--primitive-teal-05);
|
|
177
|
+
--color-core-ui-secondary: var(--primitive-teal-09);
|
|
178
|
+
--color-core-accent-coral: var(--primitive-red-07);
|
|
179
|
+
--color-core-accent-violet: var(--primitive-purple-07);
|
|
180
|
+
--color-core-accent-cobalt: var(--primitive-blue-07);
|
|
181
|
+
--color-core-accent-amber: var(--primitive-orange-07);
|
|
182
|
+
--color-core-accent-gold: var(--primitive-yellow-07);
|
|
183
|
+
--color-core-accent-mint: var(--primitive-green-07);
|
|
184
|
+
--color-trend-up: var(--primitive-green-07);
|
|
185
|
+
--color-trend-down: var(--primitive-red-07);
|
|
186
|
+
}
|
|
@@ -0,0 +1,276 @@
|
|
|
1
|
+
/* ============================================
|
|
2
|
+
SEMANTIC TOKENS — LIGHT THEME
|
|
3
|
+
These are what components use
|
|
4
|
+
Always reference these, never primitives
|
|
5
|
+
Every value chains to tokens-primitives.css
|
|
6
|
+
(validated by scripts/validate-token-references.mjs)
|
|
7
|
+
============================================ */
|
|
8
|
+
|
|
9
|
+
[data-theme="light"], :root {
|
|
10
|
+
/* Text */
|
|
11
|
+
--color-text-primary: var(--primitive-neutral-10);
|
|
12
|
+
--color-text-secondary: var(--primitive-neutral-07);
|
|
13
|
+
--color-text-tertiary: var(--primitive-neutral-06);
|
|
14
|
+
--color-text-inverse: var(--primitive-neutral-04);
|
|
15
|
+
--color-text-on-inverse: var(--primitive-neutral-01);
|
|
16
|
+
|
|
17
|
+
/* Icon */
|
|
18
|
+
--color-icon-primary: var(--primitive-neutral-06);
|
|
19
|
+
--color-icon-secondary: var(--primitive-neutral-04);
|
|
20
|
+
|
|
21
|
+
/* Background - Page */
|
|
22
|
+
--color-bg-page-primary: var(--primitive-neutral-01);
|
|
23
|
+
--color-bg-page-inverse: var(--primitive-neutral-10);
|
|
24
|
+
|
|
25
|
+
/* Background - Container */
|
|
26
|
+
--color-bg-container-primary: var(--primitive-neutral-00);
|
|
27
|
+
--color-bg-container-primary-transparent: var(--primitive-neutral-00-a01);
|
|
28
|
+
/* The semi surface rides the glass-strength white, not the 60% one: light
|
|
29
|
+
containers should read bright white, with the ambient background only
|
|
30
|
+
whispering through. */
|
|
31
|
+
--color-bg-container-primary-semi: var(--primitive-neutral-00-a90);
|
|
32
|
+
--color-bg-container-secondary: var(--primitive-neutral-01);
|
|
33
|
+
--color-bg-container-tertiary: var(--primitive-neutral-02);
|
|
34
|
+
--color-bg-container-inverse: var(--primitive-neutral-09);
|
|
35
|
+
--color-bg-container-border: var(--primitive-neutral-02);
|
|
36
|
+
|
|
37
|
+
/* Glass: the translucent floating-surface fill (chat panel, floating
|
|
38
|
+
sidebar). Deliberately translucent in both themes so the page's
|
|
39
|
+
colours reach the surface; pair it with backdrop-filter: blur(24px). */
|
|
40
|
+
--color-bg-glass: var(--primitive-neutral-00-a90);
|
|
41
|
+
|
|
42
|
+
/* Divider */
|
|
43
|
+
--color-divider: var(--primitive-neutral-02-a80);
|
|
44
|
+
|
|
45
|
+
/* Chat bubbles — sent (the person) and received (the agent). Both alias
|
|
46
|
+
the container-secondary / text-primary pair today; they exist as their
|
|
47
|
+
own roles so chat surfaces can be re-themed later without touching the
|
|
48
|
+
container ramp. */
|
|
49
|
+
--color-chat-bubble-sent-bg: var(--color-bg-container-secondary);
|
|
50
|
+
--color-chat-bubble-sent-text: var(--color-text-primary);
|
|
51
|
+
--color-chat-bubble-received-bg: var(--color-bg-container-secondary);
|
|
52
|
+
--color-chat-bubble-received-text: var(--color-text-primary);
|
|
53
|
+
/* The composer's context note — the quietest tint per theme, the nearest
|
|
54
|
+
neutral to each shell that still separates from it. Its own role, not a
|
|
55
|
+
container alias, because it deliberately sits off the container ramp. */
|
|
56
|
+
--color-chat-context-bg: var(--primitive-neutral-01);
|
|
57
|
+
|
|
58
|
+
/* Calendar surfaces — EventCalendar's day cells and event pills. Their own
|
|
59
|
+
roles (the chat-surfaces pattern) because the container ramp's dark steps
|
|
60
|
+
are too far apart for calendar density: cells rest one quiet step off the
|
|
61
|
+
calendar container and step one gentle notch away from the pill fill on
|
|
62
|
+
hover (lighter in dark, darker in light). A hovered cell keeps its hover
|
|
63
|
+
while the pointer is on a pill, so the pill hover aliases the resting
|
|
64
|
+
cell tint — always one step off the hovered cell — and the hover-only
|
|
65
|
+
border ring is an obvious mid-grey, so the pill under the pointer is
|
|
66
|
+
never in doubt while resting pills stay quiet. */
|
|
67
|
+
--color-calendar-cell-bg: var(--primitive-neutral-01);
|
|
68
|
+
--color-calendar-cell-bg-hover: var(--primitive-neutral-02-a80);
|
|
69
|
+
--color-calendar-event-bg: var(--color-bg-container-primary);
|
|
70
|
+
--color-calendar-event-bg-hover: var(--color-calendar-cell-bg);
|
|
71
|
+
--color-calendar-event-border: var(--primitive-neutral-04);
|
|
72
|
+
|
|
73
|
+
/* Overlay & controls */
|
|
74
|
+
--color-scrim: var(--primitive-true-black-semi);
|
|
75
|
+
/* The knob on an action-coloured track (ToggleSwitch, SelectionCard's
|
|
76
|
+
toggle). Chained to the on-action ink rather than a fixed neutral, so
|
|
77
|
+
every theme's AA-held action pairing keeps the thumb legible — a
|
|
78
|
+
light action fill (Smoke, Volt) gets a dark thumb automatically. */
|
|
79
|
+
--color-control-thumb: var(--color-action-primary-text);
|
|
80
|
+
|
|
81
|
+
/* Elevation — the only shadows in the system (floating surfaces + modals) */
|
|
82
|
+
--shadow-floating: 0 4px 16px rgba(0, 0, 0, 0.12);
|
|
83
|
+
--shadow-modal: 0 8px 32px rgba(0, 0, 0, 0.2);
|
|
84
|
+
|
|
85
|
+
/* Action - Primary. The action colour is theme-dependent: one teal step
|
|
86
|
+
cannot clear 3:1 against both a white page and a near-black one while
|
|
87
|
+
also carrying a 4.5:1 label, so light takes a deep fill under a light
|
|
88
|
+
label and the dark theme inverts it (see tokens-dark.css). */
|
|
89
|
+
--color-action-primary-bg: var(--primitive-teal-08);
|
|
90
|
+
--color-action-primary-bg-hover: var(--primitive-teal-09);
|
|
91
|
+
--color-action-primary-bg-active: var(--primitive-teal-10);
|
|
92
|
+
--color-action-primary-text: var(--primitive-teal-02);
|
|
93
|
+
--color-action-primary-text-active: var(--primitive-neutral-01);
|
|
94
|
+
--color-action-primary-text-secondary: var(--primitive-teal-10);
|
|
95
|
+
--color-action-primary-text-tertiary: var(--primitive-teal-09);
|
|
96
|
+
--color-action-primary-border: var(--primitive-teal-10);
|
|
97
|
+
--color-action-primary-border-secondary: var(--primitive-teal-08);
|
|
98
|
+
--color-action-primary-border-tertiary: var(--primitive-teal-08);
|
|
99
|
+
|
|
100
|
+
/* Action - Icon */
|
|
101
|
+
--color-action-icon-default: var(--primitive-neutral-10);
|
|
102
|
+
--color-action-icon-active: var(--primitive-teal-02);
|
|
103
|
+
|
|
104
|
+
/* Action - Passive (Secondary button) */
|
|
105
|
+
--color-action-passive-text: var(--primitive-neutral-10);
|
|
106
|
+
--color-action-passive-bg: var(--primitive-neutral-01-a01);
|
|
107
|
+
--color-action-passive-bg-hover: var(--primitive-neutral-02-a80);
|
|
108
|
+
--color-action-passive-bg-active: var(--primitive-neutral-03-a80);
|
|
109
|
+
|
|
110
|
+
/* Action - Neutral (grey filled buttons). Unlike passive, the fill is a
|
|
111
|
+
solid grey step that stays visible at rest — a filled button without
|
|
112
|
+
the action teal's "click here" weight. Hover and active deepen in
|
|
113
|
+
light mode and brighten in dark, like the primary family. */
|
|
114
|
+
--color-action-neutral-bg: var(--primitive-neutral-02);
|
|
115
|
+
--color-action-neutral-bg-hover: var(--primitive-neutral-03);
|
|
116
|
+
--color-action-neutral-bg-active: var(--primitive-neutral-04);
|
|
117
|
+
--color-action-neutral-text: var(--primitive-neutral-10);
|
|
118
|
+
|
|
119
|
+
/* Core colours */
|
|
120
|
+
--color-core-ui-primary: var(--primitive-teal-08);
|
|
121
|
+
--color-core-ui-secondary: var(--primitive-teal-10);
|
|
122
|
+
--color-core-accent-coral: var(--primitive-red-07);
|
|
123
|
+
--color-core-accent-violet: var(--primitive-purple-07);
|
|
124
|
+
--color-core-accent-cobalt: var(--primitive-blue-07);
|
|
125
|
+
--color-core-accent-amber: var(--primitive-orange-07);
|
|
126
|
+
--color-core-accent-gold: var(--primitive-yellow-07);
|
|
127
|
+
--color-core-accent-mint: var(--primitive-green-07);
|
|
128
|
+
|
|
129
|
+
/* Trend: the "number went up / went down" role (Stat deltas, table
|
|
130
|
+
movers). Theme-split for contrast: deep status inks on light
|
|
131
|
+
surfaces, the mint/coral accents on dark ones. */
|
|
132
|
+
--color-trend-up: var(--primitive-green-10);
|
|
133
|
+
--color-trend-down: var(--primitive-red-10);
|
|
134
|
+
|
|
135
|
+
/* Status - Positive */
|
|
136
|
+
--color-status-positive-bg: var(--primitive-green-01);
|
|
137
|
+
--color-status-positive-border: var(--primitive-green-07);
|
|
138
|
+
--color-status-positive-text: var(--primitive-green-10);
|
|
139
|
+
--color-status-positive-icon: var(--primitive-green-08);
|
|
140
|
+
|
|
141
|
+
/* Status - Warning */
|
|
142
|
+
--color-status-warning-bg: var(--primitive-orange-01);
|
|
143
|
+
--color-status-warning-border: var(--primitive-orange-07);
|
|
144
|
+
--color-status-warning-text: var(--primitive-orange-10);
|
|
145
|
+
--color-status-warning-icon: var(--primitive-orange-08);
|
|
146
|
+
|
|
147
|
+
/* Status - Error */
|
|
148
|
+
--color-status-error-bg: var(--primitive-red-01);
|
|
149
|
+
--color-status-error-border: var(--primitive-red-07);
|
|
150
|
+
--color-status-error-text: var(--primitive-red-10);
|
|
151
|
+
--color-status-error-icon: var(--primitive-red-08);
|
|
152
|
+
|
|
153
|
+
/* Status - Info */
|
|
154
|
+
--color-status-info-bg: var(--primitive-blue-01);
|
|
155
|
+
--color-status-info-border: var(--primitive-blue-07);
|
|
156
|
+
--color-status-info-text: var(--primitive-blue-10);
|
|
157
|
+
--color-status-info-icon: var(--primitive-blue-06);
|
|
158
|
+
|
|
159
|
+
/* Status - Neutral */
|
|
160
|
+
--color-status-neutral-bg: var(--primitive-neutral-02);
|
|
161
|
+
--color-status-neutral-border: var(--primitive-neutral-07);
|
|
162
|
+
--color-status-neutral-text: var(--primitive-neutral-08);
|
|
163
|
+
--color-status-neutral-icon: var(--primitive-neutral-06);
|
|
164
|
+
|
|
165
|
+
/* The -icon step is the status glyph colour for plain surfaces (a step
|
|
166
|
+
indicator, a tool-call state) — -text is tuned for the tinted status
|
|
167
|
+
bg and washes out on a bare container, especially in dark mode. */
|
|
168
|
+
|
|
169
|
+
/* AI - The gradient accent reserved for AI entry points and surfaces.
|
|
170
|
+
Red → blue → teal, so the AI affordance is its own signature and the
|
|
171
|
+
flat action teal keeps meaning "click here". Used as gradient stops
|
|
172
|
+
(AiButton's ring and glow), never as fills for ordinary chrome.
|
|
173
|
+
One luminous set, shared with dark: the deeper inks read as a heavy
|
|
174
|
+
dark border on white surfaces. */
|
|
175
|
+
--color-ai-gradient-start: var(--primitive-red-05);
|
|
176
|
+
--color-ai-gradient-mid: var(--primitive-blue-05);
|
|
177
|
+
--color-ai-gradient-end: var(--primitive-teal-07);
|
|
178
|
+
/* The AI button's solid field: pushed past the page floor in the theme's
|
|
179
|
+
own direction — bright white here, true black in dark — so the entry
|
|
180
|
+
point punches out of any surface instead of frosting into it. */
|
|
181
|
+
--color-ai-button-bg: var(--primitive-neutral-00);
|
|
182
|
+
|
|
183
|
+
/* Chart - Contribution heatmap ramp (level 0 = none → level 4 = most) */
|
|
184
|
+
--color-chart-contribution-0: var(--color-bg-container-primary);
|
|
185
|
+
--color-chart-contribution-1: var(--primitive-green-02);
|
|
186
|
+
--color-chart-contribution-2: var(--primitive-green-04);
|
|
187
|
+
--color-chart-contribution-3: var(--primitive-green-07);
|
|
188
|
+
--color-chart-contribution-4: var(--primitive-green-09);
|
|
189
|
+
|
|
190
|
+
/* Chart - Ordered series ramp for multi-series charts. Series 1 follows
|
|
191
|
+
the action teal (theme-split with it); 2-7 alias the core accents, so
|
|
192
|
+
re-theming an accent re-themes every chart that uses its slot. */
|
|
193
|
+
--color-chart-series-1: var(--color-action-primary-bg);
|
|
194
|
+
--color-chart-series-2: var(--color-core-accent-mint);
|
|
195
|
+
--color-chart-series-3: var(--color-core-accent-gold);
|
|
196
|
+
--color-chart-series-4: var(--color-core-accent-coral);
|
|
197
|
+
--color-chart-series-5: var(--color-core-accent-violet);
|
|
198
|
+
--color-chart-series-6: var(--color-core-accent-amber);
|
|
199
|
+
--color-chart-series-7: var(--color-core-accent-cobalt);
|
|
200
|
+
|
|
201
|
+
/* Input */
|
|
202
|
+
--color-input-text-primary: var(--primitive-neutral-10);
|
|
203
|
+
--color-input-text-placeholder: var(--primitive-neutral-06);
|
|
204
|
+
--color-input-text-disabled: var(--primitive-neutral-04);
|
|
205
|
+
--color-input-text-inverse: var(--primitive-neutral-04);
|
|
206
|
+
--color-input-border-primary: var(--primitive-neutral-02);
|
|
207
|
+
--color-input-border-hover: var(--primitive-teal-06);
|
|
208
|
+
--color-input-border-selected: var(--primitive-teal-08);
|
|
209
|
+
--color-input-border-disabled: var(--primitive-neutral-03);
|
|
210
|
+
--color-input-bg-primary: var(--primitive-neutral-00);
|
|
211
|
+
--color-input-bg-disabled: var(--primitive-neutral-02);
|
|
212
|
+
|
|
213
|
+
/* Spacing (from primitives) */
|
|
214
|
+
--radius-050: var(--primitive-radius-050);
|
|
215
|
+
--radius-100: var(--primitive-radius-100);
|
|
216
|
+
--radius-200: var(--primitive-radius-200);
|
|
217
|
+
--radius-300: var(--primitive-radius-300);
|
|
218
|
+
--radius-400: var(--primitive-radius-400);
|
|
219
|
+
--radius-600: var(--primitive-radius-600);
|
|
220
|
+
--radius-1200: var(--primitive-radius-1200);
|
|
221
|
+
--radius-pill: var(--primitive-radius-pill);
|
|
222
|
+
|
|
223
|
+
--padding-050: var(--primitive-padding-050);
|
|
224
|
+
--padding-100: var(--primitive-padding-100);
|
|
225
|
+
--padding-150: var(--primitive-padding-150);
|
|
226
|
+
--padding-200: var(--primitive-padding-200);
|
|
227
|
+
--padding-300: var(--primitive-padding-300);
|
|
228
|
+
--padding-400: var(--primitive-padding-400);
|
|
229
|
+
--padding-500: var(--primitive-padding-500);
|
|
230
|
+
--padding-1000: var(--primitive-padding-1000);
|
|
231
|
+
|
|
232
|
+
--border-025: var(--primitive-border-025);
|
|
233
|
+
--border-050: var(--primitive-border-050);
|
|
234
|
+
|
|
235
|
+
/* Icon size — theme-independent, so defined here only (like radius and
|
|
236
|
+
padding) rather than duplicated into tokens-dark.css. Components set
|
|
237
|
+
`--icon-size` to one of these; .material-symbols-rounded reads it for
|
|
238
|
+
font-size, box size, and optical size together. */
|
|
239
|
+
--icon-size-500: var(--primitive-icon-500); /* 20px — compact controls */
|
|
240
|
+
--icon-size-600: var(--primitive-icon-600); /* 24px — default */
|
|
241
|
+
--icon-size-800: var(--primitive-icon-800); /* 32px — feature */
|
|
242
|
+
--icon-size-1200: var(--primitive-icon-1200); /* 48px — marketing */
|
|
243
|
+
|
|
244
|
+
--gap-050: var(--primitive-gap-050);
|
|
245
|
+
--gap-100: var(--primitive-gap-100);
|
|
246
|
+
--gap-200: var(--primitive-gap-200);
|
|
247
|
+
--gap-300: var(--primitive-gap-300);
|
|
248
|
+
--gap-400: var(--primitive-gap-400);
|
|
249
|
+
--gap-500: var(--primitive-gap-500);
|
|
250
|
+
--gap-1000: var(--primitive-gap-1000);
|
|
251
|
+
|
|
252
|
+
/* Section rhythm — page-level spacing between major blocks. These are
|
|
253
|
+
the only spacing tokens with a responsive step (see the collapse
|
|
254
|
+
block at the bottom of this file). */
|
|
255
|
+
--gap-1500: var(--primitive-gap-1500); /* 60px */
|
|
256
|
+
--gap-2000: var(--primitive-gap-2000); /* 80px */
|
|
257
|
+
--gap-3000: var(--primitive-gap-3000); /* 120px */
|
|
258
|
+
--padding-1500: var(--primitive-padding-1500); /* 60px */
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
/* ============================================
|
|
262
|
+
RESPONSIVE COLLAPSE
|
|
263
|
+
Section-rhythm spacing steps one notch down the primitive scale at
|
|
264
|
+
768px — the token layer's only breakpoint (typography collapses at the
|
|
265
|
+
same threshold in tokens-typography.css). Component-level spacing
|
|
266
|
+
(gap/padding xl and below) never steps.
|
|
267
|
+
============================================ */
|
|
268
|
+
|
|
269
|
+
@media (max-width: 768px) {
|
|
270
|
+
[data-theme="light"], :root {
|
|
271
|
+
--gap-1500: var(--primitive-gap-1000); /* 60 → 40 */
|
|
272
|
+
--gap-2000: var(--primitive-gap-1500); /* 80 → 60 */
|
|
273
|
+
--gap-3000: var(--primitive-gap-2000); /* 120 → 80 */
|
|
274
|
+
--padding-1500: var(--primitive-padding-1000); /* 60 → 40 */
|
|
275
|
+
}
|
|
276
|
+
}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/* ============================================
|
|
2
|
+
MOTION TOKENS
|
|
3
|
+
Durations and easing curves for transitions
|
|
4
|
+
and animations. Theme-agnostic (no light/dark
|
|
5
|
+
split) — defined once in :root, like typography.
|
|
6
|
+
============================================ */
|
|
7
|
+
|
|
8
|
+
:root {
|
|
9
|
+
/* ============================================
|
|
10
|
+
DURATIONS — CORE
|
|
11
|
+
The day-to-day scale. Most transitions use
|
|
12
|
+
base; fast is for hover feedback, slow for
|
|
13
|
+
structural changes, slower for page reveals.
|
|
14
|
+
============================================ */
|
|
15
|
+
|
|
16
|
+
--motion-duration-fast: 150ms; /* Quick feedback: hovers, icons, tooltips */
|
|
17
|
+
--motion-duration-base: 200ms; /* Default for color/opacity/border transitions */
|
|
18
|
+
--motion-duration-slow: 300ms; /* Structural: accordion, sidebar, toast enter */
|
|
19
|
+
--motion-duration-slower: 600ms; /* Deliberate page-entrance reveals */
|
|
20
|
+
|
|
21
|
+
/* ============================================
|
|
22
|
+
DURATIONS — EXTENDED
|
|
23
|
+
Special-purpose timings; not part of the
|
|
24
|
+
day-to-day scale.
|
|
25
|
+
============================================ */
|
|
26
|
+
|
|
27
|
+
--motion-duration-instant: 75ms; /* Sub-threshold: takes the edge off a size change without reading as motion (Composer grow/shrink) */
|
|
28
|
+
--motion-duration-deliberate: 400ms; /* Carousel slide */
|
|
29
|
+
--motion-duration-loop-spin: 1000ms; /* Spinner rotation */
|
|
30
|
+
--motion-duration-loop-shimmer: 1800ms; /* Skeleton shimmer, agent label sweep */
|
|
31
|
+
--motion-duration-loop-matrix: 1400ms; /* Agent dot-matrix cycle (twelve slots) */
|
|
32
|
+
|
|
33
|
+
/* ============================================
|
|
34
|
+
EASINGS
|
|
35
|
+
============================================ */
|
|
36
|
+
|
|
37
|
+
--motion-ease-standard: ease; /* General default */
|
|
38
|
+
--motion-ease-emphasized: cubic-bezier(0.4, 0, 0.2, 1); /* Size/layout changes */
|
|
39
|
+
--motion-ease-entrance: cubic-bezier(0.16, 1, 0.3, 1); /* Decelerate for enter animations */
|
|
40
|
+
--motion-ease-linear: linear; /* Continuous loops: spinner, progress */
|
|
41
|
+
--motion-ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1); /* Playful overshoot: toggle thumb */
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/* ============================================
|
|
45
|
+
REDUCED MOTION
|
|
46
|
+
Token collapse covers token-consuming CSS;
|
|
47
|
+
the universal guard covers components still
|
|
48
|
+
on hardcoded timings.
|
|
49
|
+
============================================ */
|
|
50
|
+
|
|
51
|
+
@media (prefers-reduced-motion: reduce) {
|
|
52
|
+
:root {
|
|
53
|
+
--motion-duration-fast: 0.01ms;
|
|
54
|
+
--motion-duration-base: 0.01ms;
|
|
55
|
+
--motion-duration-slow: 0.01ms;
|
|
56
|
+
--motion-duration-slower: 0.01ms;
|
|
57
|
+
--motion-duration-instant: 0.01ms;
|
|
58
|
+
--motion-duration-deliberate: 0.01ms;
|
|
59
|
+
--motion-duration-loop-spin: 0.01ms;
|
|
60
|
+
--motion-duration-loop-shimmer: 0.01ms;
|
|
61
|
+
--motion-duration-loop-matrix: 0.01ms;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
*,
|
|
65
|
+
*::before,
|
|
66
|
+
*::after {
|
|
67
|
+
animation-duration: 0.01ms !important;
|
|
68
|
+
animation-iteration-count: 1 !important;
|
|
69
|
+
transition-duration: 0.01ms !important;
|
|
70
|
+
scroll-behavior: auto !important;
|
|
71
|
+
}
|
|
72
|
+
}
|