@mindlogic-ai/logician-ui 3.0.0 → 3.1.0-alpha.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/dist/components/Avatar/Avatar.js +1 -1
- package/dist/components/Avatar/Avatar.js.map +1 -1
- package/dist/components/Avatar/Avatar.mjs +1 -1
- package/dist/components/Avatar/Avatar.mjs.map +1 -1
- package/dist/components/Badge/Badge.styles.d.ts.map +1 -1
- package/dist/components/Badge/Badge.styles.js +5 -3
- package/dist/components/Badge/Badge.styles.js.map +1 -1
- package/dist/components/Badge/Badge.styles.mjs +5 -3
- package/dist/components/Badge/Badge.styles.mjs.map +1 -1
- package/dist/components/Button/Button.styles.d.ts.map +1 -1
- package/dist/components/Button/Button.styles.js +39 -33
- package/dist/components/Button/Button.styles.js.map +1 -1
- package/dist/components/Button/Button.styles.mjs +39 -33
- package/dist/components/Button/Button.styles.mjs.map +1 -1
- package/dist/components/Card/Card.js +1 -1
- package/dist/components/Card/Card.js.map +1 -1
- package/dist/components/Card/Card.mjs +1 -1
- package/dist/components/Card/Card.mjs.map +1 -1
- package/dist/components/Checkbox/CheckboxControl.d.ts.map +1 -1
- package/dist/components/Checkbox/CheckboxControl.js +9 -3
- package/dist/components/Checkbox/CheckboxControl.js.map +1 -1
- package/dist/components/Checkbox/CheckboxControl.mjs +9 -3
- package/dist/components/Checkbox/CheckboxControl.mjs.map +1 -1
- package/dist/components/Chip/Chip.styles.d.ts.map +1 -1
- package/dist/components/Chip/Chip.styles.js +14 -11
- package/dist/components/Chip/Chip.styles.js.map +1 -1
- package/dist/components/Chip/Chip.styles.mjs +14 -11
- package/dist/components/Chip/Chip.styles.mjs.map +1 -1
- package/dist/components/Code/Code.js +4 -4
- package/dist/components/Code/Code.js.map +1 -1
- package/dist/components/Code/Code.mjs +4 -4
- package/dist/components/Code/Code.mjs.map +1 -1
- package/dist/components/CodeTabs/CopyButton.js +1 -1
- package/dist/components/CodeTabs/CopyButton.mjs +1 -1
- package/dist/components/Collapsible/CollapsibleRoot.js +1 -1
- package/dist/components/Collapsible/CollapsibleRoot.js.map +1 -1
- package/dist/components/Collapsible/CollapsibleRoot.mjs +1 -1
- package/dist/components/Collapsible/CollapsibleRoot.mjs.map +1 -1
- package/dist/components/Collapsible/CollapsibleTrigger.js +1 -1
- package/dist/components/Collapsible/CollapsibleTrigger.js.map +1 -1
- package/dist/components/Collapsible/CollapsibleTrigger.mjs +1 -1
- package/dist/components/Collapsible/CollapsibleTrigger.mjs.map +1 -1
- package/dist/components/ColorMode/ColorModeProvider.d.ts +39 -0
- package/dist/components/ColorMode/ColorModeProvider.d.ts.map +1 -0
- package/dist/components/ColorMode/ColorModeProvider.js +39 -0
- package/dist/components/ColorMode/ColorModeProvider.js.map +1 -0
- package/dist/components/ColorMode/ColorModeProvider.mjs +37 -0
- package/dist/components/ColorMode/ColorModeProvider.mjs.map +1 -0
- package/dist/components/ColorMode/ColorModeToggle.d.ts +18 -0
- package/dist/components/ColorMode/ColorModeToggle.d.ts.map +1 -0
- package/dist/components/ColorMode/ColorModeToggle.js +34 -0
- package/dist/components/ColorMode/ColorModeToggle.js.map +1 -0
- package/dist/components/ColorMode/ColorModeToggle.mjs +32 -0
- package/dist/components/ColorMode/ColorModeToggle.mjs.map +1 -0
- package/dist/components/ColorMode/index.d.ts +7 -0
- package/dist/components/ColorMode/index.d.ts.map +1 -0
- package/dist/components/ColorMode/useColorMode.d.ts +41 -0
- package/dist/components/ColorMode/useColorMode.d.ts.map +1 -0
- package/dist/components/ColorMode/useColorMode.js +55 -0
- package/dist/components/ColorMode/useColorMode.js.map +1 -0
- package/dist/components/ColorMode/useColorMode.mjs +52 -0
- package/dist/components/ColorMode/useColorMode.mjs.map +1 -0
- package/dist/components/DatePicker/RangeDatePicker.d.ts.map +1 -1
- package/dist/components/DatePicker/RangeDatePicker.js +8 -5
- package/dist/components/DatePicker/RangeDatePicker.js.map +1 -1
- package/dist/components/DatePicker/RangeDatePicker.mjs +8 -5
- package/dist/components/DatePicker/RangeDatePicker.mjs.map +1 -1
- package/dist/components/DatePicker/SingleDatePicker.js +3 -3
- package/dist/components/DatePicker/SingleDatePicker.js.map +1 -1
- package/dist/components/DatePicker/SingleDatePicker.mjs +3 -3
- package/dist/components/DatePicker/SingleDatePicker.mjs.map +1 -1
- package/dist/components/ErrorFallback/ErrorFallback.js +1 -1
- package/dist/components/ErrorFallback/ErrorFallback.js.map +1 -1
- package/dist/components/ErrorFallback/ErrorFallback.mjs +1 -1
- package/dist/components/ErrorFallback/ErrorFallback.mjs.map +1 -1
- package/dist/components/FileInput/FileInput.js +1 -1
- package/dist/components/FileInput/FileInput.js.map +1 -1
- package/dist/components/FileInput/FileInput.mjs +1 -1
- package/dist/components/FileInput/FileInput.mjs.map +1 -1
- package/dist/components/FileItem/FileItem.js +2 -2
- package/dist/components/FileItem/FileItem.js.map +1 -1
- package/dist/components/FileItem/FileItem.mjs +2 -2
- package/dist/components/FileItem/FileItem.mjs.map +1 -1
- package/dist/components/FileList/FileList.js +3 -3
- package/dist/components/FileList/FileList.js.map +1 -1
- package/dist/components/FileList/FileList.mjs +3 -3
- package/dist/components/FileList/FileList.mjs.map +1 -1
- package/dist/components/FormLabel/FormLabel.js +1 -1
- package/dist/components/FormLabel/FormLabel.js.map +1 -1
- package/dist/components/FormLabel/FormLabel.mjs +1 -1
- package/dist/components/FormLabel/FormLabel.mjs.map +1 -1
- package/dist/components/IconButton/IconButton.styles.js +1 -1
- package/dist/components/IconButton/IconButton.styles.js.map +1 -1
- package/dist/components/IconButton/IconButton.styles.mjs +1 -1
- package/dist/components/IconButton/IconButton.styles.mjs.map +1 -1
- package/dist/components/Input/Input.d.ts.map +1 -1
- package/dist/components/Input/Input.js +6 -6
- package/dist/components/Input/Input.js.map +1 -1
- package/dist/components/Input/Input.mjs +6 -6
- package/dist/components/Input/Input.mjs.map +1 -1
- package/dist/components/LineGraph/LineGraph.d.ts.map +1 -1
- package/dist/components/LineGraph/LineGraph.js +9 -5
- package/dist/components/LineGraph/LineGraph.js.map +1 -1
- package/dist/components/LineGraph/LineGraph.mjs +9 -5
- package/dist/components/LineGraph/LineGraph.mjs.map +1 -1
- package/dist/components/Loaders/PageLoader.js +1 -1
- package/dist/components/Loaders/PageLoader.js.map +1 -1
- package/dist/components/Loaders/PageLoader.mjs +1 -1
- package/dist/components/Loaders/PageLoader.mjs.map +1 -1
- package/dist/components/Loaders/SectionLoader.js +1 -1
- package/dist/components/Loaders/SectionLoader.js.map +1 -1
- package/dist/components/Loaders/SectionLoader.mjs +1 -1
- package/dist/components/Loaders/SectionLoader.mjs.map +1 -1
- package/dist/components/LogicianProvider/LogicianProvider.d.ts +20 -0
- package/dist/components/LogicianProvider/LogicianProvider.d.ts.map +1 -1
- package/dist/components/LogicianProvider/LogicianProvider.js +9 -2
- package/dist/components/LogicianProvider/LogicianProvider.js.map +1 -1
- package/dist/components/LogicianProvider/LogicianProvider.mjs +9 -2
- package/dist/components/LogicianProvider/LogicianProvider.mjs.map +1 -1
- package/dist/components/MDXEditor/MDXEditor.d.ts.map +1 -1
- package/dist/components/MDXEditor/MDXEditor.js +8 -16
- package/dist/components/MDXEditor/MDXEditor.js.map +1 -1
- package/dist/components/MDXEditor/MDXEditor.mjs +8 -16
- package/dist/components/MDXEditor/MDXEditor.mjs.map +1 -1
- package/dist/components/Markdown/Markdown.module.css.js +1 -1
- package/dist/components/Markdown/Markdown.module.css.mjs +1 -1
- package/dist/components/MaxLengthIndicator/MaxLengthIndicator.js +1 -1
- package/dist/components/MaxLengthIndicator/MaxLengthIndicator.js.map +1 -1
- package/dist/components/MaxLengthIndicator/MaxLengthIndicator.mjs +1 -1
- package/dist/components/MaxLengthIndicator/MaxLengthIndicator.mjs.map +1 -1
- package/dist/components/Menu/MenuItem.d.ts.map +1 -1
- package/dist/components/Menu/MenuItem.js +7 -3
- package/dist/components/Menu/MenuItem.js.map +1 -1
- package/dist/components/Menu/MenuItem.mjs +7 -3
- package/dist/components/Menu/MenuItem.mjs.map +1 -1
- package/dist/components/Menu/MenuList.d.ts.map +1 -1
- package/dist/components/Menu/MenuList.js +7 -1
- package/dist/components/Menu/MenuList.js.map +1 -1
- package/dist/components/Menu/MenuList.mjs +7 -1
- package/dist/components/Menu/MenuList.mjs.map +1 -1
- package/dist/components/Modal/ModalFooter/ModalFooter.js +1 -1
- package/dist/components/Modal/ModalFooter/ModalFooter.js.map +1 -1
- package/dist/components/Modal/ModalFooter/ModalFooter.mjs +1 -1
- package/dist/components/Modal/ModalFooter/ModalFooter.mjs.map +1 -1
- package/dist/components/MonthPicker/MonthPicker.js +1 -1
- package/dist/components/MonthPicker/MonthPicker.mjs +1 -1
- package/dist/components/Popover/PopoverArrowTip.js +1 -1
- package/dist/components/Popover/PopoverArrowTip.js.map +1 -1
- package/dist/components/Popover/PopoverArrowTip.mjs +1 -1
- package/dist/components/Popover/PopoverArrowTip.mjs.map +1 -1
- package/dist/components/Popover/PopoverContent.js +1 -1
- package/dist/components/Popover/PopoverContent.js.map +1 -1
- package/dist/components/Popover/PopoverContent.mjs +1 -1
- package/dist/components/Popover/PopoverContent.mjs.map +1 -1
- package/dist/components/RadialProgress/RadialProgress.js +1 -1
- package/dist/components/RadialProgress/RadialProgress.js.map +1 -1
- package/dist/components/RadialProgress/RadialProgress.mjs +1 -1
- package/dist/components/RadialProgress/RadialProgress.mjs.map +1 -1
- package/dist/components/SeeMoreButton/SeeMoreButton.styles.js +2 -2
- package/dist/components/SeeMoreButton/SeeMoreButton.styles.js.map +1 -1
- package/dist/components/SeeMoreButton/SeeMoreButton.styles.mjs +2 -2
- package/dist/components/SeeMoreButton/SeeMoreButton.styles.mjs.map +1 -1
- package/dist/components/SegmentedControl/SegmentedControl.d.ts.map +1 -1
- package/dist/components/SegmentedControl/SegmentedControl.js +7 -3
- package/dist/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/dist/components/SegmentedControl/SegmentedControl.mjs +7 -3
- package/dist/components/SegmentedControl/SegmentedControl.mjs.map +1 -1
- package/dist/components/Select/Select.styles.d.ts +18 -4
- package/dist/components/Select/Select.styles.d.ts.map +1 -1
- package/dist/components/Select/Select.styles.js +11 -10
- package/dist/components/Select/Select.styles.js.map +1 -1
- package/dist/components/Select/Select.styles.mjs +11 -10
- package/dist/components/Select/Select.styles.mjs.map +1 -1
- package/dist/components/Slider/SliderThumb/SliderThumb.js +1 -1
- package/dist/components/Slider/SliderThumb/SliderThumb.js.map +1 -1
- package/dist/components/Slider/SliderThumb/SliderThumb.mjs +1 -1
- package/dist/components/Slider/SliderThumb/SliderThumb.mjs.map +1 -1
- package/dist/components/Table/Table.styles.js +1 -1
- package/dist/components/Table/Table.styles.js.map +1 -1
- package/dist/components/Table/Table.styles.mjs +1 -1
- package/dist/components/Table/Table.styles.mjs.map +1 -1
- package/dist/components/Table/TableContainer.js +1 -1
- package/dist/components/Table/TableContainer.js.map +1 -1
- package/dist/components/Table/TableContainer.mjs +1 -1
- package/dist/components/Table/TableContainer.mjs.map +1 -1
- package/dist/components/Table/Tbody.js +1 -1
- package/dist/components/Table/Tbody.js.map +1 -1
- package/dist/components/Table/Tbody.mjs +1 -1
- package/dist/components/Table/Tbody.mjs.map +1 -1
- package/dist/components/Table/Thead.js +1 -1
- package/dist/components/Table/Thead.mjs +1 -1
- package/dist/components/Tabs/Tab/Tab.js +1 -1
- package/dist/components/Tabs/Tab/Tab.mjs +1 -1
- package/dist/components/Tabs/TabList/TabList.js +1 -1
- package/dist/components/Tabs/TabList/TabList.js.map +1 -1
- package/dist/components/Tabs/TabList/TabList.mjs +1 -1
- package/dist/components/Tabs/TabList/TabList.mjs.map +1 -1
- package/dist/components/Tag/Tag.styles.d.ts.map +1 -1
- package/dist/components/Tag/Tag.styles.js +19 -16
- package/dist/components/Tag/Tag.styles.js.map +1 -1
- package/dist/components/Tag/Tag.styles.mjs +19 -16
- package/dist/components/Tag/Tag.styles.mjs.map +1 -1
- package/dist/components/Textarea/Textarea.d.ts.map +1 -1
- package/dist/components/Textarea/Textarea.js +7 -7
- package/dist/components/Textarea/Textarea.js.map +1 -1
- package/dist/components/Textarea/Textarea.mjs +7 -7
- package/dist/components/Textarea/Textarea.mjs.map +1 -1
- package/dist/components/Typography/H3.js +1 -1
- package/dist/components/Typography/H3.js.map +1 -1
- package/dist/components/Typography/H3.mjs +1 -1
- package/dist/components/Typography/H3.mjs.map +1 -1
- package/dist/components/Typography/Subtext.js +1 -1
- package/dist/components/Typography/Subtext.js.map +1 -1
- package/dist/components/Typography/Subtext.mjs +1 -1
- package/dist/components/Typography/Subtext.mjs.map +1 -1
- package/dist/components/Typography/Subtitle.js +1 -1
- package/dist/components/Typography/Subtitle.js.map +1 -1
- package/dist/components/Typography/Subtitle.mjs +1 -1
- package/dist/components/Typography/Subtitle.mjs.map +1 -1
- package/dist/components/Typography/Text.js +1 -1
- package/dist/components/Typography/Text.js.map +1 -1
- package/dist/components/Typography/Text.mjs +1 -1
- package/dist/components/Typography/Text.mjs.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +3 -0
- package/dist/index.mjs.map +1 -1
- package/dist/theme/colors.d.ts +276 -40
- package/dist/theme/colors.d.ts.map +1 -1
- package/dist/theme/colors.js +197 -40
- package/dist/theme/colors.js.map +1 -1
- package/dist/theme/colors.mjs +197 -40
- package/dist/theme/colors.mjs.map +1 -1
- package/dist/theme/global.d.ts.map +1 -1
- package/dist/theme/global.js +11 -1
- package/dist/theme/global.js.map +1 -1
- package/dist/theme/global.mjs +11 -1
- package/dist/theme/global.mjs.map +1 -1
- package/package.json +2 -1
- package/src/components/Avatar/Avatar.tsx +1 -1
- package/src/components/Badge/Badge.styles.ts +5 -3
- package/src/components/Button/Button.styles.ts +39 -33
- package/src/components/Card/Card.tsx +3 -3
- package/src/components/Checkbox/CheckboxControl.tsx +8 -3
- package/src/components/Chip/Chip.styles.ts +14 -11
- package/src/components/Code/Code.tsx +5 -5
- package/src/components/CodeTabs/CopyButton.tsx +1 -1
- package/src/components/Collapsible/CollapsibleRoot.tsx +1 -1
- package/src/components/Collapsible/CollapsibleTrigger.tsx +1 -1
- package/src/components/ColorMode/ColorModeProvider.tsx +63 -0
- package/src/components/ColorMode/ColorModeToggle.tsx +45 -0
- package/src/components/ColorMode/index.ts +6 -0
- package/src/components/ColorMode/useColorMode.ts +74 -0
- package/src/components/DatePicker/RangeDatePicker.tsx +8 -5
- package/src/components/DatePicker/SingleDatePicker.tsx +3 -3
- package/src/components/ErrorFallback/ErrorFallback.tsx +3 -3
- package/src/components/FileInput/FileInput.tsx +1 -1
- package/src/components/FileItem/FileItem.tsx +5 -5
- package/src/components/FileList/FileList.tsx +4 -4
- package/src/components/FormLabel/FormLabel.tsx +1 -1
- package/src/components/IconButton/IconButton.styles.ts +1 -1
- package/src/components/Input/Input.tsx +10 -7
- package/src/components/LineGraph/LineGraph.tsx +8 -5
- package/src/components/Loaders/PageLoader.tsx +1 -1
- package/src/components/Loaders/SectionLoader.tsx +1 -1
- package/src/components/LogicianProvider/LogicianProvider.tsx +41 -1
- package/src/components/MDXEditor/MDXEditor.tsx +8 -18
- package/src/components/Markdown/Markdown.module.css +1 -1
- package/src/components/MaxLengthIndicator/MaxLengthIndicator.tsx +1 -1
- package/src/components/Menu/MenuItem.tsx +6 -3
- package/src/components/Menu/MenuList.tsx +7 -2
- package/src/components/Modal/ModalFooter/ModalFooter.tsx +1 -1
- package/src/components/MonthPicker/MonthPicker.tsx +1 -1
- package/src/components/Popover/PopoverArrowTip.tsx +1 -1
- package/src/components/Popover/PopoverContent.tsx +1 -1
- package/src/components/RadialProgress/RadialProgress.stories.tsx +1 -1
- package/src/components/RadialProgress/RadialProgress.tsx +2 -2
- package/src/components/SeeMoreButton/SeeMoreButton.styles.ts +2 -2
- package/src/components/SegmentedControl/SegmentedControl.tsx +6 -3
- package/src/components/Select/Select.styles.ts +11 -10
- package/src/components/Slider/SliderThumb/SliderThumb.tsx +1 -1
- package/src/components/Table/Table.styles.ts +1 -1
- package/src/components/Table/TableContainer.tsx +1 -1
- package/src/components/Table/Tbody.tsx +1 -1
- package/src/components/Table/Thead.tsx +1 -1
- package/src/components/Tabs/Tab/Tab.tsx +1 -1
- package/src/components/Tabs/TabList/TabList.tsx +1 -1
- package/src/components/Tag/Tag.styles.ts +19 -16
- package/src/components/Textarea/Textarea.tsx +10 -7
- package/src/components/Typography/H3.tsx +1 -1
- package/src/components/Typography/Subtext.tsx +1 -1
- package/src/components/Typography/Subtitle.tsx +1 -1
- package/src/components/Typography/Text.tsx +1 -1
- package/src/index.ts +2 -0
- package/src/theme/Palette.stories.tsx +114 -88
- package/src/theme/colors.ts +225 -40
- package/src/theme/global.ts +12 -1
package/src/theme/colors.ts
CHANGED
|
@@ -66,94 +66,279 @@ export const semanticTokens = {
|
|
|
66
66
|
* Primary colors (Blue-based)
|
|
67
67
|
* Use for: Primary buttons, links, focus rings, brand elements
|
|
68
68
|
*
|
|
69
|
-
*
|
|
69
|
+
* Light contrast ratios (on white):
|
|
70
70
|
* - main (#1751D0): 5.9:1 ✓ AA
|
|
71
71
|
* - dark (#0D317D): 9.4:1 ✓ AAA
|
|
72
|
+
*
|
|
73
|
+
* `_dark` lightens brand steps ~2 stops so interactive/text tokens keep
|
|
74
|
+
* AA contrast on dark surfaces (bg.canvas → gray.1500). Background tints
|
|
75
|
+
* (lightest/extralight/lighter/light) map to the deep end of the scale so
|
|
76
|
+
* brand-tinted fills read as subtle on dark, not as glare.
|
|
72
77
|
*/
|
|
73
78
|
primary: {
|
|
74
|
-
lightest: {
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
79
|
+
lightest: {
|
|
80
|
+
value: { base: '{colors.blue.25}', _dark: '{colors.blue.900}' },
|
|
81
|
+
},
|
|
82
|
+
extralight: {
|
|
83
|
+
value: { base: '{colors.blue.50}', _dark: '{colors.blue.800}' },
|
|
84
|
+
},
|
|
85
|
+
lighter: {
|
|
86
|
+
value: { base: '{colors.blue.100}', _dark: '{colors.blue.700}' },
|
|
87
|
+
},
|
|
88
|
+
light: {
|
|
89
|
+
value: { base: '{colors.blue.200}', _dark: '{colors.blue.600}' },
|
|
90
|
+
},
|
|
91
|
+
main: {
|
|
92
|
+
value: { base: '{colors.blue.500}', _dark: '{colors.blue.300}' },
|
|
93
|
+
}, // primary actions
|
|
94
|
+
dark: {
|
|
95
|
+
value: { base: '{colors.blue.700}', _dark: '{colors.blue.200}' },
|
|
96
|
+
}, // emphasis text
|
|
97
|
+
darker: {
|
|
98
|
+
value: { base: '{colors.blue.900}', _dark: '{colors.blue.100}' },
|
|
99
|
+
}, // high-contrast text
|
|
81
100
|
},
|
|
82
101
|
|
|
83
102
|
/**
|
|
84
103
|
* Secondary colors (Violet-based)
|
|
85
104
|
* Use for: Accent elements, highlights, tags
|
|
86
105
|
*
|
|
87
|
-
*
|
|
106
|
+
* Light contrast ratios (on white):
|
|
88
107
|
* - main (#9117D0): 5.1:1 ✓ AA
|
|
89
108
|
* - dark (#570D7D): 9.2:1 ✓ AAA
|
|
90
109
|
*/
|
|
91
110
|
secondary: {
|
|
92
|
-
lightest: {
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
111
|
+
lightest: {
|
|
112
|
+
value: { base: '{colors.violet.25}', _dark: '{colors.violet.900}' },
|
|
113
|
+
},
|
|
114
|
+
extralight: {
|
|
115
|
+
value: { base: '{colors.violet.50}', _dark: '{colors.violet.800}' },
|
|
116
|
+
},
|
|
117
|
+
lighter: {
|
|
118
|
+
value: { base: '{colors.violet.100}', _dark: '{colors.violet.700}' },
|
|
119
|
+
},
|
|
120
|
+
light: {
|
|
121
|
+
value: { base: '{colors.violet.200}', _dark: '{colors.violet.600}' },
|
|
122
|
+
},
|
|
123
|
+
main: {
|
|
124
|
+
// _dark is violet.200 (not .300 like the other brands): violet.300 on
|
|
125
|
+
// the dark canvas is only 4.29:1, just under AA. Solid fills no longer
|
|
126
|
+
// use *.main (they pin to violet.500), so main now only drives
|
|
127
|
+
// text/icon/outline on dark, where the extra lift is pure benefit.
|
|
128
|
+
value: { base: '{colors.violet.500}', _dark: '{colors.violet.200}' },
|
|
129
|
+
},
|
|
130
|
+
dark: {
|
|
131
|
+
value: { base: '{colors.violet.700}', _dark: '{colors.violet.200}' },
|
|
132
|
+
},
|
|
133
|
+
darker: {
|
|
134
|
+
value: { base: '{colors.violet.900}', _dark: '{colors.violet.100}' },
|
|
135
|
+
},
|
|
99
136
|
},
|
|
100
137
|
|
|
101
138
|
/**
|
|
102
139
|
* Danger colors (Rose-based)
|
|
103
140
|
* Use for: Error states, destructive actions, validation errors
|
|
104
141
|
*
|
|
105
|
-
*
|
|
142
|
+
* Light contrast ratios (on white):
|
|
106
143
|
* - main (#D01721): 5.2:1 ✓ AA
|
|
107
144
|
* - dark (#7D0D14): 9.6:1 ✓ AAA
|
|
108
145
|
*/
|
|
109
146
|
danger: {
|
|
110
|
-
lightest: {
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
147
|
+
lightest: {
|
|
148
|
+
value: { base: '{colors.rose.25}', _dark: '{colors.rose.900}' },
|
|
149
|
+
},
|
|
150
|
+
extralight: {
|
|
151
|
+
value: { base: '{colors.rose.50}', _dark: '{colors.rose.800}' },
|
|
152
|
+
},
|
|
153
|
+
lighter: {
|
|
154
|
+
value: { base: '{colors.rose.100}', _dark: '{colors.rose.700}' },
|
|
155
|
+
},
|
|
156
|
+
light: {
|
|
157
|
+
value: { base: '{colors.rose.200}', _dark: '{colors.rose.600}' },
|
|
158
|
+
},
|
|
159
|
+
main: {
|
|
160
|
+
value: { base: '{colors.rose.500}', _dark: '{colors.rose.300}' },
|
|
161
|
+
},
|
|
162
|
+
dark: {
|
|
163
|
+
value: { base: '{colors.rose.700}', _dark: '{colors.rose.200}' },
|
|
164
|
+
},
|
|
165
|
+
darker: {
|
|
166
|
+
value: { base: '{colors.rose.900}', _dark: '{colors.rose.100}' },
|
|
167
|
+
},
|
|
117
168
|
},
|
|
118
169
|
|
|
119
170
|
/**
|
|
120
171
|
* Success colors (Green-based)
|
|
121
172
|
* Use for: Success messages, confirmations, positive feedback
|
|
122
173
|
*
|
|
123
|
-
*
|
|
174
|
+
* Light contrast ratios (on white):
|
|
124
175
|
* - main (#1AA612): 4.5:1 ✓ AA (large text)
|
|
125
176
|
* - dark (#147D0D): 6.1:1 ✓ AA
|
|
126
177
|
*/
|
|
127
178
|
success: {
|
|
128
|
-
lightest: {
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
179
|
+
lightest: {
|
|
180
|
+
value: { base: '{colors.green.25}', _dark: '{colors.green.900}' },
|
|
181
|
+
},
|
|
182
|
+
extralight: {
|
|
183
|
+
value: { base: '{colors.green.50}', _dark: '{colors.green.800}' },
|
|
184
|
+
},
|
|
185
|
+
lighter: {
|
|
186
|
+
value: { base: '{colors.green.100}', _dark: '{colors.green.700}' },
|
|
187
|
+
},
|
|
188
|
+
light: {
|
|
189
|
+
value: { base: '{colors.green.200}', _dark: '{colors.green.600}' },
|
|
190
|
+
},
|
|
191
|
+
main: {
|
|
192
|
+
value: { base: '{colors.green.600}', _dark: '{colors.green.300}' },
|
|
193
|
+
},
|
|
194
|
+
dark: {
|
|
195
|
+
value: { base: '{colors.green.700}', _dark: '{colors.green.200}' },
|
|
196
|
+
},
|
|
197
|
+
darker: {
|
|
198
|
+
value: { base: '{colors.green.900}', _dark: '{colors.green.100}' },
|
|
199
|
+
},
|
|
135
200
|
},
|
|
136
201
|
|
|
137
202
|
/**
|
|
138
203
|
* Warning colors (Gold-based)
|
|
139
204
|
* Use for: Warning messages, caution states, attention needed
|
|
140
205
|
*
|
|
141
|
-
*
|
|
206
|
+
* Light contrast ratios (on white):
|
|
142
207
|
* - main (#D0A117): 3.0:1 (use dark on light backgrounds)
|
|
143
208
|
* - dark (#7D610D): 5.8:1 ✓ AA
|
|
209
|
+
*
|
|
210
|
+
* NOTE: gold is the AA risk in both modes — verify per-pair contrast in the
|
|
211
|
+
* Storybook palette before relying on `warning.main` for text.
|
|
144
212
|
*/
|
|
145
213
|
warning: {
|
|
146
|
-
lightest: {
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
214
|
+
lightest: {
|
|
215
|
+
value: { base: '{colors.gold.25}', _dark: '{colors.gold.900}' },
|
|
216
|
+
},
|
|
217
|
+
extralight: {
|
|
218
|
+
value: { base: '{colors.gold.50}', _dark: '{colors.gold.800}' },
|
|
219
|
+
},
|
|
220
|
+
lighter: {
|
|
221
|
+
value: { base: '{colors.gold.100}', _dark: '{colors.gold.700}' },
|
|
222
|
+
},
|
|
223
|
+
light: {
|
|
224
|
+
value: { base: '{colors.gold.200}', _dark: '{colors.gold.600}' },
|
|
225
|
+
},
|
|
226
|
+
main: {
|
|
227
|
+
value: { base: '{colors.gold.500}', _dark: '{colors.gold.300}' },
|
|
228
|
+
},
|
|
229
|
+
dark: {
|
|
230
|
+
value: { base: '{colors.gold.700}', _dark: '{colors.gold.200}' },
|
|
231
|
+
},
|
|
232
|
+
darker: {
|
|
233
|
+
value: { base: '{colors.gold.900}', _dark: '{colors.gold.100}' },
|
|
234
|
+
},
|
|
235
|
+
},
|
|
236
|
+
|
|
237
|
+
/**
|
|
238
|
+
* Neutral background tokens — map onto the gray.0–1500 scale.
|
|
239
|
+
* Use for: page/canvas, raised surfaces (cards, menus), subtle/muted fills,
|
|
240
|
+
* and inverse surfaces (tooltips, contrast banners).
|
|
241
|
+
*
|
|
242
|
+
* - canvas: app background
|
|
243
|
+
* - surface: raised surface (card, popover, menu)
|
|
244
|
+
* - subtle: subtle fill / secondary surface
|
|
245
|
+
* - muted: muted fill / tertiary surface, hover
|
|
246
|
+
* - inverse: high-contrast surface (flips to light in dark mode)
|
|
247
|
+
*/
|
|
248
|
+
bg: {
|
|
249
|
+
canvas: {
|
|
250
|
+
value: { base: '{colors.gray.0}', _dark: '{colors.gray.1500}' },
|
|
251
|
+
},
|
|
252
|
+
surface: {
|
|
253
|
+
value: { base: '{colors.white}', _dark: '{colors.gray.1400}' },
|
|
254
|
+
},
|
|
255
|
+
subtle: {
|
|
256
|
+
value: { base: '{colors.gray.50}', _dark: '{colors.gray.1300}' },
|
|
257
|
+
},
|
|
258
|
+
muted: {
|
|
259
|
+
value: { base: '{colors.gray.100}', _dark: '{colors.gray.1200}' },
|
|
260
|
+
},
|
|
261
|
+
inverse: {
|
|
262
|
+
value: { base: '{colors.gray.1300}', _dark: '{colors.gray.50}' },
|
|
263
|
+
},
|
|
264
|
+
// Override Chakra's default `bg.panel` (whose `_dark` resolves to Chakra's
|
|
265
|
+
// own gray.950 = #111111, off our slate palette). Light value is white —
|
|
266
|
+
// identical to Chakra's default — so this only realigns dark overlay
|
|
267
|
+
// surfaces (Menu / Modal / Popover / Toast) onto our gray scale.
|
|
268
|
+
panel: {
|
|
269
|
+
value: { base: '{colors.white}', _dark: '{colors.gray.1400}' },
|
|
270
|
+
},
|
|
271
|
+
},
|
|
272
|
+
|
|
273
|
+
/**
|
|
274
|
+
* Neutral foreground (text/icon) tokens — map onto the gray.0–1500 scale.
|
|
275
|
+
*
|
|
276
|
+
* - default: primary text/icons
|
|
277
|
+
* - muted: secondary text
|
|
278
|
+
* - subtle: tertiary / placeholder text
|
|
279
|
+
* - inverse: text on inverse surfaces (flips with mode)
|
|
280
|
+
*/
|
|
281
|
+
fg: {
|
|
282
|
+
default: {
|
|
283
|
+
value: { base: '{colors.gray.1300}', _dark: '{colors.gray.50}' },
|
|
284
|
+
},
|
|
285
|
+
muted: {
|
|
286
|
+
value: { base: '{colors.gray.900}', _dark: '{colors.gray.400}' },
|
|
287
|
+
},
|
|
288
|
+
subtle: {
|
|
289
|
+
value: { base: '{colors.gray.700}', _dark: '{colors.gray.600}' },
|
|
290
|
+
},
|
|
291
|
+
inverse: {
|
|
292
|
+
value: { base: '{colors.gray.0}', _dark: '{colors.gray.1400}' },
|
|
293
|
+
},
|
|
294
|
+
},
|
|
295
|
+
|
|
296
|
+
/**
|
|
297
|
+
* Neutral border tokens — map onto the gray.0–1500 scale.
|
|
298
|
+
*
|
|
299
|
+
* - default: standard borders, dividers
|
|
300
|
+
* - subtle: low-emphasis dividers
|
|
301
|
+
* - strong: high-emphasis borders, focus outlines on neutral
|
|
302
|
+
*/
|
|
303
|
+
border: {
|
|
304
|
+
default: {
|
|
305
|
+
value: { base: '{colors.gray.300}', _dark: '{colors.gray.1100}' },
|
|
306
|
+
},
|
|
307
|
+
subtle: {
|
|
308
|
+
value: { base: '{colors.gray.200}', _dark: '{colors.gray.1300}' },
|
|
309
|
+
},
|
|
310
|
+
strong: {
|
|
311
|
+
value: { base: '{colors.gray.500}', _dark: '{colors.gray.900}' },
|
|
312
|
+
},
|
|
153
313
|
},
|
|
154
314
|
},
|
|
155
315
|
} as const;
|
|
156
316
|
|
|
317
|
+
/**
|
|
318
|
+
* Union of every semantic color token name exposed by the Logician theme,
|
|
319
|
+
* in Chakra dotted-path form (e.g. `fg.default`, `bg.surface`, `primary.main`).
|
|
320
|
+
*
|
|
321
|
+
* This is the contract consumed by the factchat primitive→semantic codemod and
|
|
322
|
+
* by reviewers. It is intentionally hand-maintained alongside `semanticTokens`
|
|
323
|
+
* so a rename here is a visible, reviewable diff.
|
|
324
|
+
*
|
|
325
|
+
* Note: `bg.panel` is deliberately omitted — it is an internal realignment of a
|
|
326
|
+
* Chakra default (for overlay surfaces), not part of the public migration
|
|
327
|
+
* contract. App code should use `bg.surface`/`bg.canvas`.
|
|
328
|
+
*/
|
|
329
|
+
export type SemanticColorToken =
|
|
330
|
+
| `bg.${'canvas' | 'surface' | 'subtle' | 'muted' | 'inverse'}`
|
|
331
|
+
| `fg.${'default' | 'muted' | 'subtle' | 'inverse'}`
|
|
332
|
+
| `border.${'default' | 'subtle' | 'strong'}`
|
|
333
|
+
| `${'primary' | 'secondary' | 'danger' | 'success' | 'warning'}.${
|
|
334
|
+
| 'lightest'
|
|
335
|
+
| 'extralight'
|
|
336
|
+
| 'lighter'
|
|
337
|
+
| 'light'
|
|
338
|
+
| 'main'
|
|
339
|
+
| 'dark'
|
|
340
|
+
| 'darker'}`;
|
|
341
|
+
|
|
157
342
|
/**
|
|
158
343
|
* Primitive color palette following the Golden Ratio system.
|
|
159
344
|
*
|
package/src/theme/global.ts
CHANGED
|
@@ -11,11 +11,19 @@ import { inter, noto, pretendard } from './font';
|
|
|
11
11
|
* @see ./colors.ts for full color palette documentation
|
|
12
12
|
*/
|
|
13
13
|
export const globalCss = defineGlobalStyles({
|
|
14
|
+
// Light mode body fallbacks (unchanged — preserves existing resolved values).
|
|
14
15
|
':root': {
|
|
15
16
|
'--chakra-colors-chakra-body-text': '#1E2433', // gray.1300 - Primary text
|
|
16
17
|
'--chakra-colors-chakra-body-bg': '#FDFDFF', // gray.0 - Background
|
|
17
18
|
},
|
|
18
19
|
|
|
20
|
+
// Dark mode body fallbacks. Only activates under the `.dark` class set by the
|
|
21
|
+
// color-mode provider, so light-mode rendering is byte-for-byte identical.
|
|
22
|
+
'.dark': {
|
|
23
|
+
'--chakra-colors-chakra-body-text': '#F7F9FC', // gray.50 - Primary text (dark)
|
|
24
|
+
'--chakra-colors-chakra-body-bg': '#0B0E17', // gray.1500 - Background (dark)
|
|
25
|
+
},
|
|
26
|
+
|
|
19
27
|
html: {
|
|
20
28
|
height: 'var(--chakra-vh)',
|
|
21
29
|
fontSize: 16,
|
|
@@ -29,7 +37,10 @@ export const globalCss = defineGlobalStyles({
|
|
|
29
37
|
},
|
|
30
38
|
|
|
31
39
|
'html, body': {
|
|
32
|
-
|
|
40
|
+
// Mode-aware primary text. In light mode `fg.default` resolves to gray.1300
|
|
41
|
+
// (#1E2433) — identical to the previous literal — and flips to gray.50 under
|
|
42
|
+
// `.dark`. Resolved light value is unchanged; only the CSS var name differs.
|
|
43
|
+
color: 'fg.default',
|
|
33
44
|
},
|
|
34
45
|
|
|
35
46
|
'#__next': {
|