@flikk/ui 1.0.0-beta.31 → 1.0.0-beta.33
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 +497 -22
- package/dist/components/ai/AgentRequest/AgentRequest.animations.d.ts +25 -0
- package/dist/components/ai/AgentRequest/AgentRequest.animations.js +81 -0
- package/dist/components/ai/AgentRequest/AgentRequest.d.ts +3 -0
- package/dist/components/ai/AgentRequest/AgentRequest.js +435 -0
- package/dist/components/ai/AgentRequest/AgentRequest.theme.d.ts +2 -0
- package/dist/components/ai/AgentRequest/AgentRequest.theme.js +106 -0
- package/dist/components/ai/AgentRequest/AgentRequest.types.d.ts +241 -0
- package/dist/components/ai/AgentRequest/index.d.ts +3 -0
- package/dist/components/ai/CodeBlock/CodeBlock.theme.js +1 -1
- package/dist/components/ai/PromptInput/PromptInput.js +2 -2
- package/dist/components/ai/PromptInput/PromptInput.theme.js +2 -2
- package/dist/components/ai/PromptSuggestion/PromptSuggestion.theme.js +2 -2
- package/dist/components/ai/Reasoning/Reasoning.js +27 -3
- package/dist/components/ai/Reasoning/Reasoning.theme.d.ts +6 -0
- package/dist/components/ai/Reasoning/Reasoning.theme.js +36 -0
- package/dist/components/ai/Reasoning/Reasoning.types.d.ts +58 -5
- package/dist/components/ai/Reasoning/ReasoningTrace.d.ts +11 -0
- package/dist/components/ai/Reasoning/ReasoningTrace.js +84 -0
- package/dist/components/ai/Reasoning/index.d.ts +2 -1
- package/dist/components/ai/StreamingResponse/AnimatedText.d.ts +7 -0
- package/dist/components/ai/StreamingResponse/AnimatedText.js +8 -7
- package/dist/components/ai/StreamingResponse/MarkdownRenderer.d.ts +5 -0
- package/dist/components/ai/StreamingResponse/MarkdownRenderer.js +4 -4
- package/dist/components/ai/StreamingResponse/StreamingCursor.d.ts +2 -2
- package/dist/components/ai/StreamingResponse/StreamingCursor.js +10 -7
- package/dist/components/ai/StreamingResponse/StreamingResponse.animations.d.ts +10 -0
- package/dist/components/ai/StreamingResponse/StreamingResponse.animations.js +59 -33
- package/dist/components/ai/StreamingResponse/StreamingResponse.js +13 -7
- package/dist/components/ai/StreamingResponse/StreamingResponse.types.d.ts +33 -2
- package/dist/components/ai/StreamingResponse/StreamingSurface.d.ts +13 -0
- package/dist/components/ai/StreamingResponse/StreamingSurface.js +38 -0
- package/dist/components/ai/StreamingResponse/WordAnimationContext.d.ts +5 -0
- package/dist/components/ai/StreamingResponse/WordAnimationContext.js +5 -4
- package/dist/components/ai/StreamingResponse/index.d.ts +4 -2
- package/dist/components/ai/TokenCounter/TokenCounter.theme.js +1 -1
- package/dist/components/ai/index.d.ts +3 -2
- package/dist/components/ai/index.js +4 -0
- package/dist/components/canvas/BaseNode.js +1 -1
- package/dist/components/canvas/CanvasToolbar.js +0 -1
- package/dist/components/canvas/Edge.js +2 -2
- package/dist/components/canvas/NodeControls.js +0 -1
- package/dist/components/canvas/NodeRenderer.js +2 -2
- package/dist/components/charts/ActivityRings/ActivityRings.js +2 -2
- package/dist/components/charts/ActivityRings/ActivityRings.theme.js +1 -1
- package/dist/components/charts/AreaChart/AreaChart.js +3 -3
- package/dist/components/charts/AreaChart/AreaChart.theme.js +3 -3
- package/dist/components/charts/BarChart/BarChart.js +4 -4
- package/dist/components/charts/ComboChart/BarRenderer.js +2 -2
- package/dist/components/charts/ComboChart/BarRenderer.types.d.ts +1 -1
- package/dist/components/charts/ComboChart/ComboChartCanvas.js +1 -1
- package/dist/components/charts/ComboChart/LineRenderer.js +1 -1
- package/dist/components/charts/ComboChart/LineRenderer.types.d.ts +1 -1
- package/dist/components/charts/DonutChart/DonutChart.theme.js +4 -4
- package/dist/components/charts/DonutChart/MultiSegmentDonutChart.theme.js +1 -1
- package/dist/components/charts/Heatmap/Heatmap.js +49 -42
- package/dist/components/charts/Heatmap/Heatmap.theme.d.ts +6 -2
- package/dist/components/charts/Heatmap/Heatmap.theme.js +20 -8
- package/dist/components/charts/Heatmap/Heatmap.types.d.ts +49 -82
- package/dist/components/charts/Heatmap/HeatmapCell.js +30 -81
- package/dist/components/charts/Heatmap/HeatmapLegend.d.ts +7 -6
- package/dist/components/charts/Heatmap/HeatmapLegend.js +6 -6
- package/dist/components/charts/Heatmap/index.d.ts +1 -1
- package/dist/components/charts/Heatmap/utils/heatmapUtils.d.ts +7 -12
- package/dist/components/charts/Heatmap/utils/heatmapUtils.js +16 -61
- package/dist/components/charts/Heatmap/utils/heatmapUtils.test.d.ts +1 -0
- package/dist/components/charts/HorizontalBarChart/HorizontalBarChart.js +1 -1
- package/dist/components/charts/LineChart/LineChart.js +2 -2
- package/dist/components/charts/LollipopChart/LollipopChart.js +1 -1
- package/dist/components/charts/RadarChart/RadarChart.js +1 -1
- package/dist/components/charts/StackedBarChart/StackedBarChart.js +3 -3
- package/dist/components/charts/hooks/useChartAccessibility.js +9 -6
- package/dist/components/charts/index.d.ts +4 -8
- package/dist/components/charts/index.js +2 -4
- package/dist/components/charts/shared/ChartText/ChartText.theme.js +1 -1
- package/dist/components/charts/shared/index.d.ts +1 -1
- package/dist/components/charts/theme/chart.theme.js +3 -3
- package/dist/components/charts/utils/animation-utils.d.ts +12 -7
- package/dist/components/charts/utils/animation-utils.js +19 -19
- package/dist/components/core/Accordion/Accordion.theme.js +1 -1
- package/dist/components/core/Alert/Alert.animations.d.ts +11 -4
- package/dist/components/core/Alert/Alert.animations.js +11 -4
- package/dist/components/core/Alert/Alert.js +16 -2
- package/dist/components/core/Alert/Alert.theme.js +1 -1
- package/dist/components/core/Alert/Alert.types.d.ts +4 -2
- package/dist/components/core/AlertDialog/AlertDialog.js +2 -2
- package/dist/components/core/Avatar/Avatar.theme.js +1 -1
- package/dist/components/core/Badge/Badge.animations.d.ts +0 -5
- package/dist/components/core/Badge/Badge.animations.js +5 -84
- package/dist/components/core/Badge/Badge.d.ts +7 -4
- package/dist/components/core/Badge/Badge.js +27 -64
- package/dist/components/core/Badge/Badge.theme.js +8 -12
- package/dist/components/core/Badge/Badge.types.d.ts +18 -34
- package/dist/components/core/Breadcrumbs/Breadcrumbs.theme.js +4 -4
- package/dist/components/core/Button/Button.js +7 -43
- package/dist/components/core/Button/Button.theme.js +5 -5
- package/dist/components/core/Button/Button.types.d.ts +8 -12
- package/dist/components/core/Button/index.d.ts +0 -2
- package/dist/components/core/Calendar/Calendar.theme.js +1 -1
- package/dist/components/core/Calendar/CalendarMini/CalendarMini.theme.js +2 -2
- package/dist/components/core/Card/Card.js +7 -2
- package/dist/components/core/Card/Card.theme.js +29 -1
- package/dist/components/core/Card/Card.types.d.ts +20 -0
- package/dist/components/core/Card/CardBody.js +9 -1
- package/dist/components/core/Card/CardContext.d.ts +13 -0
- package/dist/components/core/Card/CardContext.js +14 -0
- package/dist/components/core/Card/CardHeader.js +4 -1
- package/dist/components/core/ContextMenu/ContextMenu.theme.js +4 -3
- package/dist/components/core/ContextMenu/ContextMenu.types.d.ts +8 -1
- package/dist/components/core/ContextMenu/ContextMenuSub.d.ts +11 -1
- package/dist/components/core/ContextMenu/ContextMenuSub.js +35 -22
- package/dist/components/core/ContextMenu/ContextMenuSubBody.js +14 -3
- package/dist/components/core/ContextMenu/ContextMenuSubTrigger.js +21 -8
- package/dist/components/core/DragDrop/DragDrop.theme.js +2 -2
- package/dist/components/core/Drawer/Drawer.theme.js +1 -1
- package/dist/components/core/Drawer/DrawerHeader.js +0 -1
- package/dist/components/core/Dropdown/DropdownMenu.js +22 -7
- package/dist/components/core/Link/Link.js +1 -1
- package/dist/components/core/Masonry/Masonry.theme.js +1 -1
- package/dist/components/core/MenuItem/MenuItem.js +2 -1
- package/dist/components/core/MenuItem/MenuItem.theme.js +13 -1
- package/dist/components/core/Message/Message.js +2 -0
- package/dist/components/core/Message/Message.theme.js +3 -3
- package/dist/components/core/Modal/Modal.animations.d.ts +1 -1
- package/dist/components/core/Modal/Modal.animations.js +50 -11
- package/dist/components/core/Modal/Modal.js +5 -1
- package/dist/components/core/Modal/Modal.theme.js +1 -1
- package/dist/components/core/Modal/ModalHeader.js +0 -1
- package/dist/components/core/ModalStack/ModalStackModal.js +3 -1
- package/dist/components/core/NavItem/NavItem.js +3 -2
- package/dist/components/core/NavItem/NavItem.theme.js +1 -1
- package/dist/components/core/OfflineIndicator/OfflineIndicator.theme.js +4 -2
- package/dist/components/core/PageHeading/PageHeading.theme.js +1 -1
- package/dist/components/core/Pagination/Pagination.theme.js +2 -2
- package/dist/components/core/Pill/Pill.js +34 -18
- package/dist/components/core/Pill/Pill.theme.js +4 -2
- package/dist/components/core/Pill/Pill.types.d.ts +14 -1
- package/dist/components/core/Popover/PopoverBody.js +16 -5
- package/dist/components/core/Progress/Progress.d.ts +0 -25
- package/dist/components/core/Progress/Progress.js +79 -11
- package/dist/components/core/Progress/Progress.theme.js +17 -0
- package/dist/components/core/Progress/Progress.types.d.ts +47 -1
- package/dist/components/core/Rating/Rating.theme.js +1 -1
- package/dist/components/core/Rating/Rating.types.d.ts +3 -2
- package/dist/components/core/ScrollArea/ScrollArea.js +1 -1
- package/dist/components/core/ScrollArea/ScrollArea.theme.js +1 -1
- package/dist/components/core/Segmented/Segmented.theme.js +3 -3
- package/dist/components/core/Segmented/SegmentedContext.js +1 -0
- package/dist/components/core/Sidebar/Sidebar.js +5 -2
- package/dist/components/core/Sidebar/Sidebar.theme.js +2 -2
- package/dist/components/core/Sidebar/SidebarContent.js +1 -1
- package/dist/components/core/Sidebar/SidebarHeader.js +1 -1
- package/dist/components/core/Sidebar/SidebarSearch.js +2 -2
- package/dist/components/core/Sidebar/SidebarToggle.js +1 -1
- package/dist/components/core/Sidebar/SidebarUserProfile.js +1 -1
- package/dist/components/core/SlidingNumber/SlidingNumber.d.ts +8 -0
- package/dist/components/core/SlidingNumber/SlidingNumber.js +12 -3
- package/dist/components/core/Sortable/Sortable.theme.js +1 -1
- package/dist/components/core/Tabs/Tabs.theme.js +1 -1
- package/dist/components/core/Tag/Tag.theme.js +1 -1
- package/dist/components/core/Toast/ToastProvider.js +1 -1
- package/dist/components/core/Tree/Tree.theme.js +1 -1
- package/dist/components/core/index.d.ts +0 -2
- package/dist/components/core/index.js +0 -4
- package/dist/components/core/shared/ChartTooltip/ChartTooltip.animations.d.ts +4 -0
- package/dist/components/core/shared/ChartTooltip/ChartTooltip.animations.js +20 -0
- package/dist/components/{charts → core}/shared/ChartTooltip/ChartTooltip.js +1 -1
- package/dist/components/core/shared/Ripple.d.ts +16 -0
- package/dist/components/core/shared/Ripple.js +141 -0
- package/dist/components/data-display/GanttChart/GanttChart.theme.js +6 -6
- package/dist/components/data-display/GanttChart/GanttTaskBar.js +1 -1
- package/dist/components/data-display/GanttChart/GanttTimelineHeader.js +1 -1
- package/dist/components/data-display/GanttChart/GanttToolbar.js +0 -1
- package/dist/components/data-display/KPI/KPI.js +11 -20
- package/dist/components/data-display/KPI/KPI.theme.js +8 -4
- package/dist/components/data-display/Metric/Metric.theme.js +4 -4
- package/dist/components/data-display/Table/Table.theme.js +2 -2
- package/dist/components/data-display/Table/TableColumnManager.js +1 -2
- package/dist/components/data-display/Table/TableContext.js +1 -0
- package/dist/components/data-display/Table/TableFilter.js +9 -2
- package/dist/components/data-display/Table/TableSelectionHeader.js +1 -1
- package/dist/components/data-display/Timeline/Timeline.theme.js +1 -1
- package/dist/components/effects/CustomCursor/CustomCursor.d.ts +1 -1
- package/dist/components/effects/CustomCursor/CustomCursor.js +1 -1
- package/dist/components/effects/CustomCursor/CustomCursor.theme.js +4 -4
- package/dist/components/effects/Neumorphic/InsetCircleButton.js +1 -1
- package/dist/components/effects/Overlay/Overlay.js +7 -3
- package/dist/components/effects/index.d.ts +0 -32
- package/dist/components/effects/index.js +0 -16
- package/dist/components/effects/shared/ShaderCanvas/ShaderCanvas.d.ts +0 -2
- package/dist/components/effects/shared/ShaderCanvas/ShaderCanvas.js +1 -93
- package/dist/components/effects/shared/ShaderCanvas/ShaderCanvas.types.d.ts +0 -10
- package/dist/components/effects/shared/ShaderCanvas/index.d.ts +1 -1
- package/dist/components/effects/shared/index.d.ts +1 -3
- package/dist/components/effects/shared/shaderNoise.glsl.d.ts +1 -1
- package/dist/components/effects/shared/shaderNoise.glsl.js +2 -11
- package/dist/components/forms/Checkbox/Checkbox.theme.js +1 -1
- package/dist/components/forms/ColorPicker/ColorPicker.js +45 -3
- package/dist/components/forms/ColorPicker/ColorPickerBody.js +8 -4
- package/dist/components/forms/ColorPicker/ColorPickerHeader.js +1 -1
- package/dist/components/forms/ColorPicker/ColorPickerImage.js +1 -1
- package/dist/components/forms/Combobox/Combobox.js +10 -4
- package/dist/components/forms/Combobox/Combobox.theme.js +9 -0
- package/dist/components/forms/Combobox/Combobox.types.d.ts +13 -0
- package/dist/components/forms/DatePicker/DatePicker.js +19 -12
- package/dist/components/forms/DatePicker/DatePicker.theme.js +5 -0
- package/dist/components/forms/DatePicker/DatePicker.types.d.ts +8 -0
- package/dist/components/forms/DatePicker/DatePickerContext.d.ts +0 -1
- package/dist/components/forms/DatePicker/DatePickerTrigger.js +5 -3
- package/dist/components/forms/DateRangePicker/DateRangePicker.theme.js +6 -1
- package/dist/components/forms/DateRangePicker/DateRangePicker.types.d.ts +8 -0
- package/dist/components/forms/DateRangePicker/DateRangePickerContext.js +1 -0
- package/dist/components/forms/DateRangePicker/DateRangePickerTrigger.js +5 -3
- package/dist/components/forms/FileUpload/FileUpload.theme.js +2 -2
- package/dist/components/forms/FileUpload/FileUploadProgress.theme.js +1 -1
- package/dist/components/forms/Input/Input.js +17 -12
- package/dist/components/forms/Input/Input.theme.js +10 -0
- package/dist/components/forms/Input/Input.types.d.ts +14 -0
- package/dist/components/forms/InputAddress/InputAddress.js +5 -5
- package/dist/components/forms/InputAddress/InputAddress.types.d.ts +9 -2
- package/dist/components/forms/InputCounter/InputCounter.js +194 -17
- package/dist/components/forms/InputCounter/InputCounter.theme.d.ts +12 -0
- package/dist/components/forms/InputCounter/InputCounter.theme.js +92 -2
- package/dist/components/forms/InputCounter/InputCounter.types.d.ts +47 -4
- package/dist/components/forms/InputCreditCard/InputCreditCard.js +4 -4
- package/dist/components/forms/InputCreditCard/InputCreditCard.types.d.ts +7 -0
- package/dist/components/forms/Mention/Mention.js +13 -11
- package/dist/components/forms/Radio/Radio.theme.js +1 -1
- package/dist/components/forms/RichTextEditor/RichTextEditor.d.ts +12 -16
- package/dist/components/forms/RichTextEditor/RichTextEditor.js +174 -1680
- package/dist/components/forms/RichTextEditor/RichTextEditor.theme.d.ts +12 -56
- package/dist/components/forms/RichTextEditor/RichTextEditor.theme.js +60 -118
- package/dist/components/forms/RichTextEditor/RichTextEditor.types.d.ts +62 -126
- package/dist/components/forms/RichTextEditor/RichTextLinkField.d.ts +18 -0
- package/dist/components/forms/RichTextEditor/RichTextLinkField.js +46 -0
- package/dist/components/forms/RichTextEditor/RichTextToolbar.d.ts +15 -0
- package/dist/components/forms/RichTextEditor/RichTextToolbar.js +93 -0
- package/dist/components/forms/RichTextEditor/editorCommands.d.ts +50 -0
- package/dist/components/forms/RichTextEditor/editorCommands.js +58 -0
- package/dist/components/forms/RichTextEditor/editorState.d.ts +19 -0
- package/dist/components/forms/RichTextEditor/editorState.js +103 -0
- package/dist/components/forms/RichTextEditor/index.d.ts +5 -3
- package/dist/components/forms/RichTextEditor/sanitizeHtml.d.ts +38 -0
- package/dist/components/forms/RichTextEditor/sanitizeHtml.js +179 -0
- package/dist/components/forms/RichTextEditor/sanitizeHtml.test.d.ts +1 -0
- package/dist/components/forms/Select/Select.js +19 -12
- package/dist/components/forms/Select/Select.theme.js +9 -1
- package/dist/components/forms/Select/Select.types.d.ts +86 -8
- package/dist/components/forms/Select/useSelectState.d.ts +9 -3
- package/dist/components/forms/Select/useSelectState.js +4 -1
- package/dist/components/forms/SelectableCard/SelectableCard.js +2 -1
- package/dist/components/forms/SelectableCard/SelectableCard.theme.js +1 -1
- package/dist/components/forms/Switch/Switch.theme.js +2 -2
- package/dist/components/forms/Textarea/Textarea.js +14 -25
- package/dist/components/forms/TimePicker/TimePicker.theme.js +10 -1
- package/dist/components/forms/TimePicker/TimePicker.types.d.ts +11 -0
- package/dist/components/forms/TimePicker/TimePickerTrigger.js +7 -5
- package/dist/components/forms/forms.theme.d.ts +57 -0
- package/dist/components/forms/forms.theme.js +102 -13
- package/dist/components/forms/index.js +1 -0
- package/dist/components/generative/FormShell.d.ts +22 -0
- package/dist/components/generative/FormShell.js +102 -0
- package/dist/components/generative/GenerativeView.d.ts +52 -1
- package/dist/components/generative/GenerativeView.js +203 -11
- package/dist/components/generative/actions.d.ts +5 -0
- package/dist/components/generative/ai-sdk/index.d.ts +1 -0
- package/dist/components/generative/ai-sdk/index.js +1 -0
- package/dist/components/generative/ai-sdk/useGenerativeChat.d.ts +52 -0
- package/dist/components/generative/ai-sdk/useGenerativeChat.js +73 -0
- package/dist/components/generative/ai-sdk/useGenerativeChat.test.d.ts +1 -0
- package/dist/components/generative/fieldBinding.d.ts +31 -0
- package/dist/components/generative/fieldBinding.js +33 -0
- package/dist/components/generative/fieldBinding.test.d.ts +1 -0
- package/dist/components/generative/formScope.d.ts +71 -0
- package/dist/components/generative/formScope.js +135 -0
- package/dist/components/generative/index.d.ts +4 -0
- package/dist/components/generative/index.js +4 -0
- package/dist/components/generative/registry.d.ts +2 -0
- package/dist/components/generative/registry.js +11 -10
- package/dist/components/generative/schema.generated.js +199 -293
- package/dist/components/generative/toToolResult.d.ts +21 -0
- package/dist/components/generative/toToolResult.js +15 -0
- package/dist/components/generative/toToolResult.test.d.ts +1 -0
- package/dist/components/generative/validate.d.ts +10 -1
- package/dist/components/generative/validate.js +126 -11
- package/dist/components/layout/Grid/Grid.js +1 -0
- package/dist/components/layout/Section/Section.theme.js +1 -1
- package/dist/components/layout/Stack/Stack.js +1 -0
- package/dist/generative.schema.json +199 -293
- package/dist/index.js +1 -4
- package/dist/registry.json +2765 -2450
- package/dist/shadcn-compat.css +5 -5
- package/dist/styles/theme.test.d.ts +1 -0
- package/dist/styles.css +1 -1
- package/dist/test/render.d.ts +17 -0
- package/dist/themes/precision.css +232 -0
- package/dist/tools.json +200 -295
- package/dist/utils/composeEventHandlers.d.ts +19 -0
- package/dist/utils/composeEventHandlers.js +26 -0
- package/dist/utils/composeEventHandlers.test.d.ts +1 -0
- package/dist/utils/index.d.ts +1 -1
- package/package.json +31 -1
- package/src/global.scss +21 -28
- package/src/styles/theme.css +157 -50
- package/src/styles/theme.test.ts +119 -0
- package/tailwind.preset.cjs +30 -20
- package/dist/components/charts/FunnelChart/FunnelChart.animations.d.ts +0 -35
- package/dist/components/charts/FunnelChart/FunnelChart.animations.js +0 -59
- package/dist/components/charts/FunnelChart/FunnelChart.d.ts +0 -8
- package/dist/components/charts/FunnelChart/FunnelChart.js +0 -410
- package/dist/components/charts/FunnelChart/FunnelChart.theme.d.ts +0 -2
- package/dist/components/charts/FunnelChart/FunnelChart.theme.js +0 -12
- package/dist/components/charts/FunnelChart/FunnelChart.types.d.ts +0 -105
- package/dist/components/charts/FunnelChart/index.d.ts +0 -4
- package/dist/components/charts/ScatterPlot/ScatterPlot.d.ts +0 -9
- package/dist/components/charts/ScatterPlot/ScatterPlot.js +0 -208
- package/dist/components/charts/ScatterPlot/ScatterPlot.theme.d.ts +0 -18
- package/dist/components/charts/ScatterPlot/ScatterPlot.theme.js +0 -42
- package/dist/components/charts/ScatterPlot/ScatterPlot.types.d.ts +0 -60
- package/dist/components/charts/ScatterPlot/ScatterPlot.types.js +0 -19
- package/dist/components/charts/ScatterPlot/index.d.ts +0 -3
- package/dist/components/core/Button/Button.ripple.d.ts +0 -71
- package/dist/components/core/Button/Button.ripple.js +0 -236
- package/dist/components/core/Calendar/CalendarEvent/CalendarEvent.d.ts +0 -4
- package/dist/components/core/Calendar/CalendarEvent/CalendarEvent.theme.d.ts +0 -12
- package/dist/components/core/Calendar/CalendarEvent/CalendarEvent.types.d.ts +0 -23
- package/dist/components/core/Calendar/CalendarEvent/index.d.ts +0 -2
- package/dist/components/core/CardStack/CardStack.animations.d.ts +0 -47
- package/dist/components/core/CardStack/CardStack.d.ts +0 -3
- package/dist/components/core/CardStack/CardStack.js +0 -187
- package/dist/components/core/CardStack/CardStack.theme.d.ts +0 -6
- package/dist/components/core/CardStack/CardStack.theme.js +0 -33
- package/dist/components/core/CardStack/CardStack.types.d.ts +0 -139
- package/dist/components/core/CardStack/index.d.ts +0 -7
- package/dist/components/core/Carousel/Carousel.d.ts +0 -3
- package/dist/components/core/Carousel/Carousel.js +0 -83
- package/dist/components/core/Carousel/Carousel.theme.d.ts +0 -10
- package/dist/components/core/Carousel/Carousel.theme.js +0 -20
- package/dist/components/core/Carousel/Carousel.types.d.ts +0 -113
- package/dist/components/core/Carousel/CarouselBody.d.ts +0 -4
- package/dist/components/core/Carousel/CarouselBody.js +0 -59
- package/dist/components/core/Carousel/CarouselContext.d.ts +0 -3
- package/dist/components/core/Carousel/CarouselContext.js +0 -13
- package/dist/components/core/Carousel/CarouselItem.d.ts +0 -4
- package/dist/components/core/Carousel/CarouselItem.js +0 -11
- package/dist/components/core/Carousel/CarouselNext.d.ts +0 -4
- package/dist/components/core/Carousel/CarouselNext.js +0 -16
- package/dist/components/core/Carousel/CarouselPrevious.d.ts +0 -4
- package/dist/components/core/Carousel/CarouselPrevious.js +0 -16
- package/dist/components/core/Carousel/index.d.ts +0 -3
- package/dist/components/effects/ColorPanels/ColorPanels.d.ts +0 -8
- package/dist/components/effects/ColorPanels/ColorPanels.js +0 -66
- package/dist/components/effects/ColorPanels/ColorPanels.shaders.d.ts +0 -12
- package/dist/components/effects/ColorPanels/ColorPanels.shaders.js +0 -218
- package/dist/components/effects/ColorPanels/ColorPanels.types.d.ts +0 -29
- package/dist/components/effects/ColorPanels/ColorPanels.types.js +0 -3
- package/dist/components/effects/ColorPanels/index.d.ts +0 -2
- package/dist/components/effects/FlutedGlass/FlutedGlass.d.ts +0 -9
- package/dist/components/effects/FlutedGlass/FlutedGlass.js +0 -80
- package/dist/components/effects/FlutedGlass/FlutedGlass.shaders.d.ts +0 -12
- package/dist/components/effects/FlutedGlass/FlutedGlass.shaders.js +0 -335
- package/dist/components/effects/FlutedGlass/FlutedGlass.types.d.ts +0 -61
- package/dist/components/effects/FlutedGlass/FlutedGlass.types.js +0 -16
- package/dist/components/effects/FlutedGlass/index.d.ts +0 -3
- package/dist/components/effects/GlassEffect/GlassEffect.d.ts +0 -15
- package/dist/components/effects/GlassEffect/GlassEffect.js +0 -38
- package/dist/components/effects/GlassEffect/GlassEffect.types.d.ts +0 -19
- package/dist/components/effects/GlassEffect/index.d.ts +0 -2
- package/dist/components/effects/GlassSurface/GlassSurface.d.ts +0 -8
- package/dist/components/effects/GlassSurface/GlassSurface.js +0 -250
- package/dist/components/effects/GlassSurface/GlassSurface.types.d.ts +0 -66
- package/dist/components/effects/GlassSurface/index.d.ts +0 -2
- package/dist/components/effects/GodRays/GodRays.d.ts +0 -8
- package/dist/components/effects/GodRays/GodRays.js +0 -68
- package/dist/components/effects/GodRays/GodRays.shaders.d.ts +0 -10
- package/dist/components/effects/GodRays/GodRays.shaders.js +0 -128
- package/dist/components/effects/GodRays/GodRays.types.d.ts +0 -25
- package/dist/components/effects/GodRays/GodRays.types.js +0 -3
- package/dist/components/effects/GodRays/index.d.ts +0 -2
- package/dist/components/effects/GridPattern/GridPattern.d.ts +0 -18
- package/dist/components/effects/GridPattern/GridPattern.js +0 -65
- package/dist/components/effects/GridPattern/GridPattern.types.d.ts +0 -47
- package/dist/components/effects/GridPattern/index.d.ts +0 -2
- package/dist/components/effects/HalftoneCmyk/HalftoneCmyk.d.ts +0 -10
- package/dist/components/effects/HalftoneCmyk/HalftoneCmyk.js +0 -78
- package/dist/components/effects/HalftoneCmyk/HalftoneCmyk.shaders.d.ts +0 -22
- package/dist/components/effects/HalftoneCmyk/HalftoneCmyk.shaders.js +0 -239
- package/dist/components/effects/HalftoneCmyk/HalftoneCmyk.types.d.ts +0 -52
- package/dist/components/effects/HalftoneCmyk/index.d.ts +0 -2
- package/dist/components/effects/HalftoneDots/HalftoneDots.d.ts +0 -9
- package/dist/components/effects/HalftoneDots/HalftoneDots.js +0 -68
- package/dist/components/effects/HalftoneDots/HalftoneDots.shaders.d.ts +0 -13
- package/dist/components/effects/HalftoneDots/HalftoneDots.shaders.js +0 -296
- package/dist/components/effects/HalftoneDots/HalftoneDots.types.d.ts +0 -43
- package/dist/components/effects/HalftoneDots/HalftoneDots.types.js +0 -12
- package/dist/components/effects/HalftoneDots/index.d.ts +0 -3
- package/dist/components/effects/ImageDithering/ImageDithering.d.ts +0 -9
- package/dist/components/effects/ImageDithering/ImageDithering.js +0 -68
- package/dist/components/effects/ImageDithering/ImageDithering.shaders.d.ts +0 -12
- package/dist/components/effects/ImageDithering/ImageDithering.shaders.js +0 -117
- package/dist/components/effects/ImageDithering/ImageDithering.types.d.ts +0 -30
- package/dist/components/effects/ImageDithering/ImageDithering.types.js +0 -8
- package/dist/components/effects/ImageDithering/index.d.ts +0 -3
- package/dist/components/effects/MagneticElement/MagneticElement.d.ts +0 -30
- package/dist/components/effects/MagneticElement/MagneticElement.js +0 -111
- package/dist/components/effects/MagneticElement/MagneticElement.types.d.ts +0 -44
- package/dist/components/effects/MagneticElement/index.d.ts +0 -2
- package/dist/components/effects/Metaballs/Metaballs.d.ts +0 -8
- package/dist/components/effects/Metaballs/Metaballs.js +0 -59
- package/dist/components/effects/Metaballs/Metaballs.shaders.d.ts +0 -10
- package/dist/components/effects/Metaballs/Metaballs.shaders.js +0 -102
- package/dist/components/effects/Metaballs/Metaballs.types.d.ts +0 -16
- package/dist/components/effects/Metaballs/Metaballs.types.js +0 -3
- package/dist/components/effects/Metaballs/index.d.ts +0 -2
- package/dist/components/effects/PaperTexture/PaperTexture.d.ts +0 -9
- package/dist/components/effects/PaperTexture/PaperTexture.js +0 -61
- package/dist/components/effects/PaperTexture/PaperTexture.shaders.d.ts +0 -22
- package/dist/components/effects/PaperTexture/PaperTexture.shaders.js +0 -145
- package/dist/components/effects/PaperTexture/PaperTexture.types.d.ts +0 -19
- package/dist/components/effects/PaperTexture/index.d.ts +0 -2
- package/dist/components/effects/PulsingBorder/PulsingBorder.d.ts +0 -27
- package/dist/components/effects/PulsingBorder/PulsingBorder.js +0 -174
- package/dist/components/effects/PulsingBorder/PulsingBorder.shaders.d.ts +0 -14
- package/dist/components/effects/PulsingBorder/PulsingBorder.shaders.js +0 -258
- package/dist/components/effects/PulsingBorder/PulsingBorder.types.d.ts +0 -75
- package/dist/components/effects/PulsingBorder/PulsingBorder.types.js +0 -3
- package/dist/components/effects/PulsingBorder/index.d.ts +0 -2
- package/dist/components/effects/SmokeRing/SmokeRing.d.ts +0 -8
- package/dist/components/effects/SmokeRing/SmokeRing.js +0 -62
- package/dist/components/effects/SmokeRing/SmokeRing.shaders.d.ts +0 -14
- package/dist/components/effects/SmokeRing/SmokeRing.shaders.js +0 -130
- package/dist/components/effects/SmokeRing/SmokeRing.types.d.ts +0 -22
- package/dist/components/effects/SmokeRing/SmokeRing.types.js +0 -3
- package/dist/components/effects/SmokeRing/index.d.ts +0 -2
- package/dist/components/effects/StaticGradientMesh/StaticGradientMesh.d.ts +0 -9
- package/dist/components/effects/StaticGradientMesh/StaticGradientMesh.js +0 -59
- package/dist/components/effects/StaticGradientMesh/StaticGradientMesh.shaders.d.ts +0 -14
- package/dist/components/effects/StaticGradientMesh/StaticGradientMesh.shaders.js +0 -129
- package/dist/components/effects/StaticGradientMesh/StaticGradientMesh.types.d.ts +0 -23
- package/dist/components/effects/StaticGradientMesh/StaticGradientMesh.types.js +0 -3
- package/dist/components/effects/StaticGradientMesh/index.d.ts +0 -2
- package/dist/components/effects/Water/Water.d.ts +0 -9
- package/dist/components/effects/Water/Water.js +0 -65
- package/dist/components/effects/Water/Water.shaders.d.ts +0 -11
- package/dist/components/effects/Water/Water.shaders.js +0 -123
- package/dist/components/effects/Water/Water.types.d.ts +0 -25
- package/dist/components/effects/Water/index.d.ts +0 -2
- package/dist/components/effects/shared/bayerMatrices.glsl.d.ts +0 -10
- package/dist/components/effects/shared/bayerMatrices.glsl.js +0 -44
- package/dist/components/effects/shared/imageUV.glsl.d.ts +0 -12
- package/dist/components/effects/shared/imageUV.glsl.js +0 -26
- package/dist/components/forms/RichTextEditor/RichTextEditor.animations.d.ts +0 -7
- package/dist/components/forms/RichTextEditor/RichTextEditor.animations.js +0 -32
- package/dist/utils/calendarUtils.d.ts +0 -60
- /package/dist/components/{charts → core}/shared/ChartTooltip/ChartTooltip.d.ts +0 -0
- /package/dist/components/{charts → core}/shared/ChartTooltip/ChartTooltip.theme.d.ts +0 -0
- /package/dist/components/{charts → core}/shared/ChartTooltip/ChartTooltip.theme.js +0 -0
- /package/dist/components/{charts → core}/shared/ChartTooltip/ChartTooltip.types.d.ts +0 -0
- /package/dist/components/{charts → core}/shared/ChartTooltip/ChartTooltipContent.d.ts +0 -0
- /package/dist/components/{charts → core}/shared/ChartTooltip/index.d.ts +0 -0
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Compose a component's own event handler with the consumer's.
|
|
3
|
+
*
|
|
4
|
+
* 🔴 §9: a prop the component also sets is MERGED, never clobbered. Spreading
|
|
5
|
+
* `{...rest}` before the element's own `onKeyUp` drops the consumer's handler
|
|
6
|
+
* silently; spreading it after lets the consumer silently replace load-bearing
|
|
7
|
+
* internal machinery. Composition is the only option that serves both.
|
|
8
|
+
*
|
|
9
|
+
* **Ours runs first**, so consumer code observes settled internal state.
|
|
10
|
+
*
|
|
11
|
+
* 🔴 **Both handlers ALWAYS run.** A `preventDefault()` in either does NOT skip
|
|
12
|
+
* the other — a consumer that cares reads `event.defaultPrevented`. Dropping the
|
|
13
|
+
* second handler conditionally would reintroduce the invisible-drop bug this
|
|
14
|
+
* helper exists to remove.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* <div onKeyUp={composeEventHandlers(syncFormatting, onKeyUpProp)} />
|
|
18
|
+
*/
|
|
19
|
+
export declare function composeEventHandlers<E>(ours: ((event: E) => void) | undefined, theirs: ((event: E) => void) | undefined): (event: E) => void;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Compose a component's own event handler with the consumer's.
|
|
3
|
+
*
|
|
4
|
+
* 🔴 §9: a prop the component also sets is MERGED, never clobbered. Spreading
|
|
5
|
+
* `{...rest}` before the element's own `onKeyUp` drops the consumer's handler
|
|
6
|
+
* silently; spreading it after lets the consumer silently replace load-bearing
|
|
7
|
+
* internal machinery. Composition is the only option that serves both.
|
|
8
|
+
*
|
|
9
|
+
* **Ours runs first**, so consumer code observes settled internal state.
|
|
10
|
+
*
|
|
11
|
+
* 🔴 **Both handlers ALWAYS run.** A `preventDefault()` in either does NOT skip
|
|
12
|
+
* the other — a consumer that cares reads `event.defaultPrevented`. Dropping the
|
|
13
|
+
* second handler conditionally would reintroduce the invisible-drop bug this
|
|
14
|
+
* helper exists to remove.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* <div onKeyUp={composeEventHandlers(syncFormatting, onKeyUpProp)} />
|
|
18
|
+
*/
|
|
19
|
+
function composeEventHandlers(ours, theirs) {
|
|
20
|
+
return (event) => {
|
|
21
|
+
ours === null || ours === void 0 ? void 0 : ours(event);
|
|
22
|
+
theirs === null || theirs === void 0 ? void 0 : theirs(event);
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export { composeEventHandlers };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
export { cn } from "./cn";
|
|
2
2
|
export { debounce } from "./debounce";
|
|
3
|
+
export { composeEventHandlers } from "./composeEventHandlers";
|
|
3
4
|
export { formatTimestamp, formatDate, formatTime, formatDateCustom, formatRelativeTime, isToday, isYesterday, isThisWeek, getLastNDays, getThisWeek, getLastWeek, getThisMonth, getLastMonth, getThisYear, getLastYear, toDate, addDays, isSameDay, isWeekend, getDaysBetween, getWeekNumber, type DateInput, type TimestampOptions, type DateRange, } from "./dateUtils";
|
|
4
5
|
export { findNextMatchingOption, isValidTypeaheadChar, TYPEAHEAD_TIMEOUT_MS, type TypeaheadOption, type FindNextMatchingOptionParams, } from "./typeaheadUtils";
|
|
5
|
-
export { timeToMinutes, minutesToTime, getEventDuration, getTotalTimeSlots, getTimeSlotIndex, getTimeSlotForIndex, calculateEventPosition, calculateEventHeight, eventsOverlap, findOverlappingEvents, groupOverlappingEvents, resolveOverlappingEvents, generateTimeGrid, filterEventsByDate, sortEventsByStartTime, separateAllDayEvents, isValidTimeFormat, isValidDateFormat, validateEvent, DEFAULT_GRID_CONFIGS, type CalendarEvent, type GridConfig, type EventPosition, type EventLayout, type TimeSlot, } from "./calendarUtils";
|
|
6
6
|
export { parseOpenAI, parseAnthropic, parseGemini, parseSSELine, SSE_PARSERS, type SSEFormat, type SSEParser, } from "./sseFormatParsers";
|
|
7
7
|
export { StreamingNetworkError, StreamingTimeoutError, StreamingParseError, StreamingAbortError, StreamingServerError, normalizeError, type StreamingError, } from "./streamingErrors";
|
|
8
8
|
export { calculateRetryDelay, shouldRetry, type RetryConfig, } from "./retryUtils";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@flikk/ui",
|
|
3
|
-
"version": "1.0.0-beta.
|
|
3
|
+
"version": "1.0.0-beta.33",
|
|
4
4
|
"description": "A modern React component library built with TypeScript, Tailwind CSS v4, and Framer Motion. Follows the shadcn philosophy with complete className override support.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"packageManager": "yarn@1.22.22",
|
|
@@ -58,6 +58,10 @@
|
|
|
58
58
|
"types": "./dist/components/generative/index.d.ts",
|
|
59
59
|
"import": "./dist/components/generative/index.js"
|
|
60
60
|
},
|
|
61
|
+
"./generative/ai-sdk": {
|
|
62
|
+
"types": "./dist/components/generative/ai-sdk/index.d.ts",
|
|
63
|
+
"import": "./dist/components/generative/ai-sdk/index.js"
|
|
64
|
+
},
|
|
61
65
|
"./components/*": {
|
|
62
66
|
"import": "./dist/components/*.js",
|
|
63
67
|
"types": "./dist/components/*.d.ts"
|
|
@@ -99,6 +103,19 @@
|
|
|
99
103
|
"watch": "rollup -c -w",
|
|
100
104
|
"typecheck": "tsc --noEmit",
|
|
101
105
|
"lint": "eslint src",
|
|
106
|
+
"verify": "node scripts/verify.mjs",
|
|
107
|
+
"verify:fast": "node scripts/verify.mjs --fast",
|
|
108
|
+
"verify:full": "node scripts/verify.mjs --full",
|
|
109
|
+
"verify:pack": "node scripts/smoke-package.mjs",
|
|
110
|
+
"test:stories": "node scripts/test-stories.mjs",
|
|
111
|
+
"test-storybook": "test-storybook",
|
|
112
|
+
"verify:drift": "yarn build:generative && yarn build:inventory && git diff --exit-code src/components/generative/schema.generated.ts && git diff --exit-code CLAUDE.md",
|
|
113
|
+
"prepare": "git config core.hooksPath .githooks || true",
|
|
114
|
+
"chromatic": "chromatic --build-script-name build-storybook --only-changed",
|
|
115
|
+
"changeset": "changeset",
|
|
116
|
+
"release:status": "changeset status --verbose",
|
|
117
|
+
"release:version": "changeset version && node scripts/normalize-changelog.mjs && yarn build:inventory",
|
|
118
|
+
"release:publish": "changeset publish",
|
|
102
119
|
"clean": "rimraf dist",
|
|
103
120
|
"prepublishOnly": "npm run clean && npm run test && npm run build",
|
|
104
121
|
"dev": "concurrently \"npm run watch:css:dev\" \"storybook dev -p 6006\" \"npm --prefix apps/docs run dev\"",
|
|
@@ -131,9 +148,11 @@
|
|
|
131
148
|
"npm": ">=10.0.0"
|
|
132
149
|
},
|
|
133
150
|
"peerDependencies": {
|
|
151
|
+
"@ai-sdk/react": ">=4.0.0",
|
|
134
152
|
"@phosphor-icons/react": ">=2.1.0",
|
|
135
153
|
"@react-three/drei": ">=10.0.0",
|
|
136
154
|
"@react-three/fiber": ">=9.0.0",
|
|
155
|
+
"ai": ">=7.0.0",
|
|
137
156
|
"motion": ">=12.0.0",
|
|
138
157
|
"react": ">=18.0.0",
|
|
139
158
|
"react-dom": ">=18.0.0",
|
|
@@ -144,6 +163,12 @@
|
|
|
144
163
|
"three": ">=0.170.0"
|
|
145
164
|
},
|
|
146
165
|
"peerDependenciesMeta": {
|
|
166
|
+
"ai": {
|
|
167
|
+
"optional": true
|
|
168
|
+
},
|
|
169
|
+
"@ai-sdk/react": {
|
|
170
|
+
"optional": true
|
|
171
|
+
},
|
|
147
172
|
"react-markdown": {
|
|
148
173
|
"optional": true
|
|
149
174
|
},
|
|
@@ -167,6 +192,8 @@
|
|
|
167
192
|
}
|
|
168
193
|
},
|
|
169
194
|
"devDependencies": {
|
|
195
|
+
"@ai-sdk/react": "^4.0.50",
|
|
196
|
+
"@changesets/cli": "^2.31.1",
|
|
170
197
|
"@chromatic-com/storybook": "^5.0.0",
|
|
171
198
|
"@emotion/is-prop-valid": "^1.4.0",
|
|
172
199
|
"@eslint/js": "^9",
|
|
@@ -184,6 +211,7 @@
|
|
|
184
211
|
"@storybook/addon-themes": "^10.2.3",
|
|
185
212
|
"@storybook/addon-webpack5-compiler-swc": "^4.0.2",
|
|
186
213
|
"@storybook/react-webpack5": "^10.2.3",
|
|
214
|
+
"@storybook/test-runner": "^0.24.4",
|
|
187
215
|
"@tailwindcss/cli": "^4.1.18",
|
|
188
216
|
"@testing-library/dom": "^10.4.1",
|
|
189
217
|
"@testing-library/jest-dom": "^6.9.1",
|
|
@@ -195,7 +223,9 @@
|
|
|
195
223
|
"@types/react-syntax-highlighter": "^15.5.11",
|
|
196
224
|
"@types/three": "^0.182.0",
|
|
197
225
|
"@vitejs/plugin-react": "^5.2.0",
|
|
226
|
+
"ai": "^7.0.47",
|
|
198
227
|
"autoprefixer": "^10.4.24",
|
|
228
|
+
"chromatic": "^18.1.0",
|
|
199
229
|
"concurrently": "^9.2.1",
|
|
200
230
|
"eslint": "^9",
|
|
201
231
|
"eslint-plugin-react-hooks": "^5.2.0",
|
package/src/global.scss
CHANGED
|
@@ -822,6 +822,12 @@ body {
|
|
|
822
822
|
-moz-osx-font-smoothing: grayscale;
|
|
823
823
|
}
|
|
824
824
|
|
|
825
|
+
@layer base {
|
|
826
|
+
h1, h2, h3, h4, h5, h6 {
|
|
827
|
+
font-family: var(--font-heading);
|
|
828
|
+
}
|
|
829
|
+
}
|
|
830
|
+
|
|
825
831
|
/* Auto-fill input styling resets - fixes border-radius issues with auto-populated inputs */
|
|
826
832
|
@layer base {
|
|
827
833
|
/* Webkit browsers (Chrome, Safari, Edge) */
|
|
@@ -896,34 +902,6 @@ body {
|
|
|
896
902
|
}
|
|
897
903
|
}
|
|
898
904
|
|
|
899
|
-
/* Heatmap flicker animation */
|
|
900
|
-
@keyframes flicker {
|
|
901
|
-
0% {
|
|
902
|
-
opacity: 0;
|
|
903
|
-
transform: scale(1.05);
|
|
904
|
-
}
|
|
905
|
-
20% {
|
|
906
|
-
opacity: 0.3;
|
|
907
|
-
transform: scale(1.02);
|
|
908
|
-
}
|
|
909
|
-
40% {
|
|
910
|
-
opacity: 0.1;
|
|
911
|
-
transform: scale(1.03);
|
|
912
|
-
}
|
|
913
|
-
60% {
|
|
914
|
-
opacity: 0.7;
|
|
915
|
-
transform: scale(1.01);
|
|
916
|
-
}
|
|
917
|
-
80% {
|
|
918
|
-
opacity: 0.4;
|
|
919
|
-
transform: scale(1.02);
|
|
920
|
-
}
|
|
921
|
-
100% {
|
|
922
|
-
transform: scale(1);
|
|
923
|
-
/* No opacity at 100% - let inline styles control final opacity */
|
|
924
|
-
}
|
|
925
|
-
}
|
|
926
|
-
|
|
927
905
|
/* Loader shimmer animation for indeterminate linear progress */
|
|
928
906
|
@keyframes shimmer {
|
|
929
907
|
0% {
|
|
@@ -1023,3 +1001,18 @@ body {
|
|
|
1023
1001
|
width: 33%;
|
|
1024
1002
|
}
|
|
1025
1003
|
}
|
|
1004
|
+
|
|
1005
|
+
/*
|
|
1006
|
+
* Segmented Progress indeterminate animation. Each cell runs the same pulse
|
|
1007
|
+
* with a staggered animation-delay, which reads as a lit band travelling along
|
|
1008
|
+
* the row — the discrete equivalent of the sweep above.
|
|
1009
|
+
*/
|
|
1010
|
+
@keyframes progress-segment-chase {
|
|
1011
|
+
0%,
|
|
1012
|
+
100% {
|
|
1013
|
+
opacity: 0.15;
|
|
1014
|
+
}
|
|
1015
|
+
50% {
|
|
1016
|
+
opacity: 1;
|
|
1017
|
+
}
|
|
1018
|
+
}
|
package/src/styles/theme.css
CHANGED
|
@@ -21,26 +21,6 @@
|
|
|
21
21
|
the live --color-primary, so a raw override (even white) self-corrects. */
|
|
22
22
|
--color-primary-contrast: oklch(from var(--color-primary) clamp(0, (0.85 - l) * 1000, 1) 0 0);
|
|
23
23
|
|
|
24
|
-
/* DEPRECATED: the `secondary` semantic color was removed (it overlapped
|
|
25
|
-
`neutral` and was ambiguous — see CLAUDE.md §8). These vars are now aliased
|
|
26
|
-
to the neutral scale so any stray/consumer CSS still resolves. Remove next
|
|
27
|
-
major. Original Tailwind-gray ramp kept for reference:
|
|
28
|
-
50 oklch(0.984 0.003 247.858) … 600 oklch(0.446 0.043 257.281) … 950 oklch(0.129 0.042 264.695). */
|
|
29
|
-
--color-secondary-50: var(--color-mono-50);
|
|
30
|
-
--color-secondary-100: var(--color-mono-100);
|
|
31
|
-
--color-secondary-200: var(--color-mono-200);
|
|
32
|
-
--color-secondary-300: var(--color-mono-300);
|
|
33
|
-
--color-secondary-400: var(--color-mono-400);
|
|
34
|
-
--color-secondary-500: var(--color-mono-500);
|
|
35
|
-
--color-secondary-600: var(--color-mono-600);
|
|
36
|
-
--color-secondary-700: var(--color-mono-700);
|
|
37
|
-
--color-secondary-800: var(--color-mono-800);
|
|
38
|
-
--color-secondary-900: var(--color-mono-900);
|
|
39
|
-
--color-secondary-950: var(--color-mono-950);
|
|
40
|
-
|
|
41
|
-
--color-secondary: var(--color-secondary-600);
|
|
42
|
-
--color-secondary-contrast: oklch(from var(--color-secondary) clamp(0, (0.85 - l) * 1000, 1) 0 0);
|
|
43
|
-
|
|
44
24
|
/* Danger/Error color palette - full 50-950 range */
|
|
45
25
|
--color-danger-50: oklch(0.971 0.013 17.38);
|
|
46
26
|
--color-danger-100: oklch(0.936 0.032 17.717);
|
|
@@ -168,13 +148,6 @@
|
|
|
168
148
|
--color-chart-5-contrast: oklch(from var(--color-chart-5) clamp(0, (0.85 - l) * 1000, 1) 0 0);
|
|
169
149
|
--color-background: var(--surface-1);
|
|
170
150
|
/* near-white page canvas (rung 1) — white cards lift via the shadow ring */
|
|
171
|
-
/* DEPRECATED (remove next major): alias of --color-surface. Use the surface ladder. */
|
|
172
|
-
--color-background-secondary: var(--color-surface);
|
|
173
|
-
/* DEPRECATED (remove next major): recessed/subtle fills. Migrate per-usage to --color-surface-sunken
|
|
174
|
-
(dark values below are inverted vs. a correct sunken token, so no blind alias). */
|
|
175
|
-
--color-background-tertiary: oklch(90% 0.002 247.839);
|
|
176
|
-
--color-background-quaternary: oklch(85% 0.002 247.839);
|
|
177
|
-
--color-background-quinary: oklch(80% 0.002 247.839);
|
|
178
151
|
--color-background-disabled: var(--color-mono-100);
|
|
179
152
|
|
|
180
153
|
--color-mono-50: oklch(98.5% 0 0);
|
|
@@ -199,6 +172,10 @@
|
|
|
199
172
|
|
|
200
173
|
/* Font family variables */
|
|
201
174
|
--font-family-base: var(--font-sans);
|
|
175
|
+
/* Heading font — defaults to the body font so the default render is
|
|
176
|
+
unchanged; themes override it independently (e.g. display face for
|
|
177
|
+
headings, workhorse for body). */
|
|
178
|
+
--font-heading: var(--font-family-base);
|
|
202
179
|
|
|
203
180
|
/* ============================================
|
|
204
181
|
TYPE SCALE — one --font-scale knob (like --radius-base).
|
|
@@ -261,12 +238,33 @@
|
|
|
261
238
|
font-size, and a bare var() value resolves to the COLOR branch (silently
|
|
262
239
|
dropping the font-size change, no error). The `length:` type hint forces
|
|
263
240
|
the correct branch.
|
|
241
|
+
|
|
242
|
+
🔴 Every size token below has a PAIRED --*-line-height token, consumed via
|
|
243
|
+
the `/[var(--…)]` modifier: `text-[length:var(--x-size)]/[var(--x-line-height)]`.
|
|
244
|
+
This is the same rule CONTROL TYPE SIZE states for --form-text-size-*, and it
|
|
245
|
+
is mandatory for the same reason. A named utility like `text-sm` compiles to
|
|
246
|
+
font-size AND Tailwind's paired --text-sm--line-height; an arbitrary
|
|
247
|
+
`text-[length:…]` carries font-size ONLY and silently falls back to
|
|
248
|
+
normal/1.5. These roles previously pinned the gap shut with hardcoded
|
|
249
|
+
literals (leading-[1.4], leading-6, leading-none), which meant a theme could
|
|
250
|
+
resize a title but never re-lead it — and a theme raising --card-title-size
|
|
251
|
+
got a title that stayed locked at line-height 1. Defaults below are the exact
|
|
252
|
+
values those literals resolved to, so this is a zero-visual-change addition.
|
|
264
253
|
============================================ */
|
|
265
254
|
--card-title-size: var(--text-base);
|
|
266
255
|
--modal-title-size: var(--text-base);
|
|
267
256
|
--drawer-title-size: var(--text-base);
|
|
268
257
|
--page-heading-title-size: var(--text-xl);
|
|
269
258
|
--section-title-size: var(--text-base);
|
|
259
|
+
/* Unitless where the old literal was unitless (1.4/1.5 scale with the font),
|
|
260
|
+
and 1.5rem where it was leading-6 (a fixed 6 x --spacing step, which did
|
|
261
|
+
NOT scale with the title size) — preserving each role's existing behaviour
|
|
262
|
+
rather than silently converting one model into the other. */
|
|
263
|
+
--card-title-line-height: 1;
|
|
264
|
+
--modal-title-line-height: 1.5rem;
|
|
265
|
+
--drawer-title-line-height: 1.5rem;
|
|
266
|
+
--page-heading-title-line-height: 1.4;
|
|
267
|
+
--section-title-line-height: 1.5;
|
|
270
268
|
/* AlertDialog has no title style of its own — it renders Modal.Title
|
|
271
269
|
directly, so it already inherits --modal-title-size above. */
|
|
272
270
|
|
|
@@ -281,9 +279,18 @@
|
|
|
281
279
|
--kpi-value-size-sm: var(--text-xl);
|
|
282
280
|
--kpi-value-size-md: var(--text-2xl);
|
|
283
281
|
--kpi-value-size-lg: var(--text-3xl);
|
|
282
|
+
/* Paired leading, per the rule above. Unitless so a themed value-size still
|
|
283
|
+
leads proportionally — these are big display numerals where a fixed rem
|
|
284
|
+
leading would clip descenders the moment a theme scaled the size up. */
|
|
285
|
+
--metric-value-line-height-sm: 1.4;
|
|
286
|
+
--metric-value-line-height-md: 1.2;
|
|
287
|
+
--metric-value-line-height-lg: 1.2;
|
|
288
|
+
--kpi-value-line-height-sm: 1.4;
|
|
289
|
+
--kpi-value-line-height-md: 1.333;
|
|
290
|
+
--kpi-value-line-height-lg: 1.2;
|
|
284
291
|
|
|
285
292
|
/* Form element variables — fixed px so they don't scale with root font-size */
|
|
286
|
-
--form-min-h-sm:
|
|
293
|
+
--form-min-h-sm: 28px;
|
|
287
294
|
/* h-8 in Tailwind */
|
|
288
295
|
--form-min-h-md: 36px;
|
|
289
296
|
/* h-9 in Tailwind */
|
|
@@ -300,8 +307,9 @@
|
|
|
300
307
|
--form-px-lg: 16px;
|
|
301
308
|
/* px-4 in Tailwind */
|
|
302
309
|
|
|
303
|
-
--form-py-sm:
|
|
304
|
-
/* py-2
|
|
310
|
+
--form-py-sm: 6px;
|
|
311
|
+
/* 6px, not py-2's 8px: the sm rung is a 28px box around a 12px/16px line,
|
|
312
|
+
so 8px left a 12px content box for a 16px line. */
|
|
305
313
|
--form-py-md: 10px;
|
|
306
314
|
/* py-2.5 in Tailwind */
|
|
307
315
|
--form-py-lg: 12px;
|
|
@@ -324,7 +332,7 @@
|
|
|
324
332
|
Tailwind's arbitrary text-[…] syntax is ambiguous between colour and
|
|
325
333
|
font-size and a bare var() resolves to the COLOUR branch, silently
|
|
326
334
|
no-oping the size (see TYPE ROLE SYSTEM). */
|
|
327
|
-
--form-text-size-sm: var(--text-
|
|
335
|
+
--form-text-size-sm: var(--text-xs);
|
|
328
336
|
--form-text-size-md: var(--text-sm);
|
|
329
337
|
--form-text-size-lg: var(--text-base);
|
|
330
338
|
|
|
@@ -337,10 +345,30 @@
|
|
|
337
345
|
that 20px→21px step. Values alias Tailwind's own pairing vars so the
|
|
338
346
|
ramp stays byte-identical and --font-scale still flows through (the
|
|
339
347
|
pairings are unitless ratios). */
|
|
340
|
-
--form-line-height-sm: var(--text-
|
|
348
|
+
--form-line-height-sm: var(--text-xs--line-height);
|
|
341
349
|
--form-line-height-md: var(--text-sm--line-height);
|
|
342
350
|
--form-line-height-lg: var(--text-base--line-height);
|
|
343
351
|
|
|
352
|
+
/* CONTROL ICON SIZE — the GLYPH inside a field (chevron, clock, search,
|
|
353
|
+
check), NOT any button square.
|
|
354
|
+
|
|
355
|
+
🔴 Do not confuse with --button-icon-square-* , which is the icon-only
|
|
356
|
+
BUTTON's box (aliased to --form-min-h-*). This family is the drawn icon.
|
|
357
|
+
|
|
358
|
+
Icons were the one axis of a field's geometry that was NOT themeable: a
|
|
359
|
+
preset could retune height, padding, radius and type, and every decorator
|
|
360
|
+
stayed a hardcoded size-4/size-5. So a scaled-up theme got 16px chevrons
|
|
361
|
+
rattling around a 48px field. The ramp is deliberately gentler than the
|
|
362
|
+
type ramp (12/14/16 against 14/14/16) — an icon carries more optical mass
|
|
363
|
+
per px than a glyph of text, so matching type 1:1 reads heavy at sm.
|
|
364
|
+
|
|
365
|
+
Consumed as size-[var(--form-icon-size-…)] via formsBaseTheme.iconStyles.sizes.
|
|
366
|
+
Unlike --form-text-size-*, there is no line-height partner to pair — an
|
|
367
|
+
icon is a box, not a line of text. */
|
|
368
|
+
--form-icon-size-sm: 12px;
|
|
369
|
+
--form-icon-size-md: 14px;
|
|
370
|
+
--form-icon-size-lg: 16px;
|
|
371
|
+
|
|
344
372
|
/* ============================================
|
|
345
373
|
OTP SLOT SIZING
|
|
346
374
|
OTP slots are SQUARE, so this is one size token per rung, not a height +
|
|
@@ -435,6 +463,17 @@
|
|
|
435
463
|
/* Overlays (1.5x base = 18px, capped; tooltip stays 1x but is now ALSO
|
|
436
464
|
capped — same 1x multiplier as before, just no longer unbounded) */
|
|
437
465
|
--dropdown-radius: min(calc(var(--radius-base) * 1.5), var(--surface-radius-cap-sm));
|
|
466
|
+
/* The form listbox panel (Select/Combobox/InputTag/Mention) is the same kind of
|
|
467
|
+
anchored menu panel as the one above — Mention literally renders MenuItem rows
|
|
468
|
+
in it — so it ALIASES --dropdown-radius rather than restating the formula. An
|
|
469
|
+
alias, not a copy: `precision.css` overrides --dropdown-radius alone, and two
|
|
470
|
+
parallel formulas would have left form listboxes at a different radius than the
|
|
471
|
+
menus they sit beside. Override this token to deliberately split the two.
|
|
472
|
+
🔴 It used to paint --form-radius, which is `var(--radius-base)`: the UNCAPPED
|
|
473
|
+
CONTROL token, on a padded content container — the exact bypass the caps above
|
|
474
|
+
exist to prevent (on `ember`, base 24px, a 24px curve against 4px of padding).
|
|
475
|
+
Never route a panel through a control token. */
|
|
476
|
+
--form-dropdown-radius: var(--dropdown-radius);
|
|
438
477
|
--tooltip-radius: min(var(--radius-base), var(--surface-radius-cap-xs));
|
|
439
478
|
--codeblock-radius: min(calc(var(--radius-base) * 1.5), var(--surface-radius-cap-sm));
|
|
440
479
|
--popover-radius: min(calc(var(--radius-base) * 1.5), var(--surface-radius-cap-sm));
|
|
@@ -453,6 +492,17 @@
|
|
|
453
492
|
/* Owns its own border/bg/shadow with compact (~12-20px) paddings, closer
|
|
454
493
|
to Alert/Dropdown's profile than Card's, despite living in data-display. */
|
|
455
494
|
--gantt-chart-radius: min(calc(var(--radius-base) * 1.5), var(--surface-radius-cap-sm));
|
|
495
|
+
/* AgentRequest: the composer-slot panel. Compact chrome (~14px padding), so
|
|
496
|
+
it takes the sm cap like Dropdown/Popover/Toast — NOT --card-radius. It
|
|
497
|
+
used to borrow that token, but Card earns the lg cap by having 24px of
|
|
498
|
+
padding to absorb the curve; at 14px the same 32px radius visibly crowds
|
|
499
|
+
the header row (ember, --radius-base: 24px). */
|
|
500
|
+
--agent-request-radius: min(calc(var(--radius-base) * 1.5), var(--surface-radius-cap-sm));
|
|
501
|
+
/* The payload well INSIDE that panel (the command/diff being approved) has
|
|
502
|
+
only ~10px of padding, so it needs the tight xs cap — same formula and
|
|
503
|
+
reasoning as --tooltip-radius, one tier below its own container. A bare
|
|
504
|
+
var(--radius-base) here rendered a 24px curve on a 10px-padded box. */
|
|
505
|
+
--agent-request-well-radius: min(var(--radius-base), var(--surface-radius-cap-xs));
|
|
456
506
|
|
|
457
507
|
/* Surfaces (1.5x base = 18px, capped) */
|
|
458
508
|
--card-radius: min(calc(var(--radius-base) * 1.5), var(--surface-radius-cap-lg));
|
|
@@ -495,27 +545,42 @@
|
|
|
495
545
|
--button-icon-p-md: 8px;
|
|
496
546
|
--button-icon-p-lg: 10px;
|
|
497
547
|
|
|
498
|
-
/*
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
548
|
+
/* Icon-only Button SQUARE — the button's box, aliased to the form height so
|
|
549
|
+
an icon button lines up with the field beside it. Named `-square-`, not
|
|
550
|
+
`-size-`: it is not the size of the icon (that is --form-icon-size-*, and
|
|
551
|
+
two tokens both called `icon-size` meaning different things is a trap). */
|
|
552
|
+
--button-icon-square-sm: var(--form-min-h-sm);
|
|
553
|
+
--button-icon-square-md: var(--form-min-h-md);
|
|
554
|
+
--button-icon-square-lg: var(--form-min-h-lg);
|
|
502
555
|
|
|
503
556
|
/* Badge variables.
|
|
504
557
|
Radius derives from --radius-base like every other CONTROL (Button/Input/
|
|
505
558
|
Segmented) — 0.75x = 6px at the 8px base, and now it tracks a themed base
|
|
506
559
|
(was a hardcoded 6px literal that silently ignored --radius-base). Uncapped:
|
|
507
560
|
a large base takes Badge fully pill, which CSS auto-clamps to 50%.
|
|
508
|
-
Paddings are fixed px (like --button-px
|
|
561
|
+
Paddings are fixed px (like --button-px-* / --form-px-*), overridable per theme
|
|
509
562
|
so a spacious theme can grow the chip tier alongside its controls. py drives
|
|
510
|
-
height together with the text line-height + 1px border (sm: 16+
|
|
563
|
+
height together with the text line-height + 1px border (sm: 16+2+2=20, md:
|
|
511
564
|
16+4+2=22). pill-px must clear the rounded-full cap so text is not eaten
|
|
512
|
-
by the curve.
|
|
565
|
+
by the curve.
|
|
566
|
+
|
|
567
|
+
RADIUS IS PER SIZE. A single shared radius does not survive down the ramp:
|
|
568
|
+
the curve starts `radius` in from each edge while text starts `px + border`
|
|
569
|
+
in, so the smaller box — which has LESS padding to absorb the curve — is the
|
|
570
|
+
one whose glyphs end up sitting inside it. At the shared 0.75x (6px) sm's
|
|
571
|
+
text started at 5px against a 6px curve; 0.5x (4px) clears it. Same
|
|
572
|
+
curve-vs-padding collision the --surface-radius-cap-* ceilings solve for
|
|
573
|
+
containers, one tier down. Both still derive from --radius-base so a themed
|
|
574
|
+
base scales them; --badge-radius stays the md value (and the name a theme
|
|
575
|
+
already overrides), with --badge-radius-md aliasing it. */
|
|
513
576
|
--badge-radius: calc(var(--radius-base) * 0.75);
|
|
577
|
+
--badge-radius-sm: calc(var(--radius-base) * 0.5);
|
|
578
|
+
--badge-radius-md: var(--badge-radius);
|
|
514
579
|
--badge-px-sm: 4px;
|
|
515
580
|
--badge-px-md: 6px;
|
|
516
|
-
--badge-py-sm:
|
|
581
|
+
--badge-py-sm: 1px;
|
|
517
582
|
--badge-py-md: 2px;
|
|
518
|
-
--badge-pill-px-sm:
|
|
583
|
+
--badge-pill-px-sm: 10px;
|
|
519
584
|
--badge-pill-px-md: 10px;
|
|
520
585
|
|
|
521
586
|
/* Pill (chip tier) — px/py per size. rounded-full is intrinsic (no radius
|
|
@@ -599,6 +664,37 @@
|
|
|
599
664
|
--metric-content-p-lg: 20px;
|
|
600
665
|
/* from p-5 */
|
|
601
666
|
|
|
667
|
+
/* ============================================
|
|
668
|
+
MOTION SYSTEM — the transition-duration tier, tokenised.
|
|
669
|
+
|
|
670
|
+
Unlike the type utilities, Tailwind's duration-* does NOT route through a
|
|
671
|
+
theme variable: `duration-200` compiles to a literal `transition-duration:
|
|
672
|
+
.2s`, so a theme had no way to make the whole UI quicker or calmer. These
|
|
673
|
+
five tokens cover every duration the library actually uses; consume them as
|
|
674
|
+
`duration-[var(--motion-duration-base)]`.
|
|
675
|
+
|
|
676
|
+
🔴 Values are the EXACT literals they replace — this is a tokenisation, not
|
|
677
|
+
a retune. The names label the existing tiers rather than proposing new
|
|
678
|
+
timings, so a theme opts into a different feel by overriding a token; the
|
|
679
|
+
default rendering is byte-identical.
|
|
680
|
+
|
|
681
|
+
🔴 There is deliberately NO --motion-ease-* family. Easing ALREADY routes
|
|
682
|
+
through overridable variables — `ease-out` compiles to
|
|
683
|
+
`transition-timing-function: var(--ease-out)`, same as `tracking-tight` ->
|
|
684
|
+
var(--tracking-tight). A theme retunes --ease-out/--ease-in/--ease-in-out
|
|
685
|
+
directly; adding a parallel --motion-ease-* namespace would give the same
|
|
686
|
+
property two competing knobs.
|
|
687
|
+
|
|
688
|
+
🔴 Scope is CSS transitions only. motion/react animations take durations as
|
|
689
|
+
JS numbers (seconds) in .animations.ts and cannot read a CSS variable — see
|
|
690
|
+
interaction.animations.ts for the shared press/hover springs, which stay the
|
|
691
|
+
single source of truth for those. Don't mirror these tokens into JS. */
|
|
692
|
+
--motion-duration-fast: 150ms;
|
|
693
|
+
--motion-duration-base: 200ms;
|
|
694
|
+
--motion-duration-slow: 300ms;
|
|
695
|
+
--motion-duration-slower: 400ms;
|
|
696
|
+
--motion-duration-slowest: 500ms;
|
|
697
|
+
|
|
602
698
|
/* Segmented inner offset — drives wrapper padding AND inner radius so
|
|
603
699
|
the sliding background + items stay concentric with the outer shell.
|
|
604
700
|
border (1px) + padding (--segmented-padding) = total inset. */
|
|
@@ -606,6 +702,25 @@
|
|
|
606
702
|
/* 2px */
|
|
607
703
|
--segmented-inner-radius: calc(var(--segmented-radius) - var(--segmented-padding) - 1px);
|
|
608
704
|
|
|
705
|
+
/* Menu panel inner offset — same model as --segmented-* above: one padding
|
|
706
|
+
token drives BOTH the panel's own padding AND the outer corner radius of
|
|
707
|
+
its first/last row, so the rows stay concentric with the panel instead of
|
|
708
|
+
bulging past its curve. border (1px) + padding (--dropdown-padding) = total
|
|
709
|
+
inset. Consumed by Dropdown's menu, ContextMenu's body + submenu body, and
|
|
710
|
+
MenuItem's first:/last: rules — change the padding here, never at a call
|
|
711
|
+
site, or the two drift apart. Interior rows keep their own flat radius;
|
|
712
|
+
only the two rows that meet the panel's corners take this one. */
|
|
713
|
+
--dropdown-padding: 0.25rem;
|
|
714
|
+
/* 4px */
|
|
715
|
+
--dropdown-inner-radius: calc(var(--dropdown-radius) - var(--dropdown-padding) - 1px);
|
|
716
|
+
|
|
717
|
+
/* Same pair for the FORM listbox panel, aliasing the menu's by default (see
|
|
718
|
+
--form-dropdown-radius). Named separately so a theme CAN split the two — and so
|
|
719
|
+
the inner radius always derives from the panel it actually sits in, whichever
|
|
720
|
+
way that goes. */
|
|
721
|
+
--form-dropdown-padding: var(--dropdown-padding);
|
|
722
|
+
--form-dropdown-inner-radius: calc(var(--form-dropdown-radius) - var(--form-dropdown-padding) - 1px);
|
|
723
|
+
|
|
609
724
|
/* Glass effect gradient variables */
|
|
610
725
|
--glass-gradient-outer: linear-gradient(to bottom,
|
|
611
726
|
rgba(250, 250, 250, 0.8) 0%,
|
|
@@ -634,7 +749,7 @@
|
|
|
634
749
|
--nav-item-radius: var(--radius-base);
|
|
635
750
|
|
|
636
751
|
/* Modal and Drawer */
|
|
637
|
-
--overlay-bg: rgba(0, 0, 0, 0.
|
|
752
|
+
--overlay-bg: rgba(0, 0, 0, 0.75);
|
|
638
753
|
--overlay-blur: 8px;
|
|
639
754
|
--color-scale-background: oklch(0% 0 0);
|
|
640
755
|
/* backdrop behind scaled content */
|
|
@@ -892,7 +1007,6 @@
|
|
|
892
1007
|
--color-success: var(--color-success-400);
|
|
893
1008
|
--color-warning: var(--color-warning-400);
|
|
894
1009
|
--color-danger: var(--color-danger-400);
|
|
895
|
-
--color-secondary: var(--color-secondary-400);
|
|
896
1010
|
/* Neutral fill flips to a light chip (dark ink text via auto contrast) */
|
|
897
1011
|
--color-mono: var(--color-mono-200);
|
|
898
1012
|
|
|
@@ -903,7 +1017,6 @@
|
|
|
903
1017
|
--color-danger-contrast: oklch(from var(--color-danger) clamp(0, (0.85 - l) * 1000, 1) 0 0);
|
|
904
1018
|
--color-success-contrast: oklch(from var(--color-success) clamp(0, (0.85 - l) * 1000, 1) 0 0);
|
|
905
1019
|
--color-warning-contrast: oklch(from var(--color-warning) clamp(0, (0.85 - l) * 1000, 1) 0 0);
|
|
906
|
-
--color-secondary-contrast: oklch(from var(--color-secondary) clamp(0, (0.85 - l) * 1000, 1) 0 0);
|
|
907
1020
|
--color-mono-contrast: oklch(from var(--color-mono) clamp(0, (0.85 - l) * 1000, 1) 0 0);
|
|
908
1021
|
|
|
909
1022
|
/* Background colors - dark equivalents */
|
|
@@ -926,12 +1039,6 @@
|
|
|
926
1039
|
--color-surface-hover: oklch(100% 0 0 / 0.07);
|
|
927
1040
|
--color-background: var(--surface-1);
|
|
928
1041
|
/* rung 1 — dark floor */
|
|
929
|
-
/* DEPRECATED (remove next major): alias of --color-surface. */
|
|
930
|
-
--color-background-secondary: var(--color-surface);
|
|
931
|
-
/* DEPRECATED (remove next major): migrate per-usage to --color-surface-sunken / surface ladder. */
|
|
932
|
-
--color-background-tertiary: oklch(22% 0 0);
|
|
933
|
-
--color-background-quaternary: oklch(26% 0 0);
|
|
934
|
-
--color-background-quinary: oklch(30% 0 0);
|
|
935
1042
|
--color-background-disabled: var(--color-mono-800);
|
|
936
1043
|
|
|
937
1044
|
/* Scale backdrop — sits behind scaled content, darker than the #171717 floor */
|