@@ -30,39 +30,40 @@ export function initThemeSettings() {
3030}
3131
3232/**
33- * Create theme token
33+ * create theme token css vars value by theme settings
3434 *
3535 * @param colors Theme colors
36+ * @param tokens Theme setting tokens
3637 * @param [recommended=false] Use recommended color. Default is `false`
3738 */
38- export function createThemeToken ( colors : App . Theme . ThemeColor , recommended = false ) {
39+ export function createThemeToken (
40+ colors : App . Theme . ThemeColor ,
41+ tokens ?: App . Theme . ThemeSetting [ 'tokens' ] ,
42+ recommended = false
43+ ) {
3944 const paletteColors = createThemePaletteColors ( colors , recommended ) ;
4045
41- const themeTokens : App . Theme . ThemeToken = {
46+ const { light, dark } = tokens || themeSettings . tokens ;
47+
48+ const themeTokens : App . Theme . ThemeTokenCSSVars = {
4249 colors : {
4350 ...paletteColors ,
4451 nprogress : paletteColors . primary ,
45- container : 'rgb(255, 255, 255)' ,
46- layout : 'rgb(247, 250, 252)' ,
47- inverted : 'rgb(0, 20, 40)' ,
48- base_text : 'rgb(31, 31, 31)'
52+ ...light . colors
4953 } ,
5054 boxShadow : {
51- header : '0 1px 2px rgb(0, 21, 41, 0.08)' ,
52- sider : '2px 0 8px 0 rgb(29, 35, 41, 0.05)' ,
53- tab : '0 1px 2px rgb(0, 21, 41, 0.08)'
55+ ...light . boxShadow
5456 }
5557 } ;
5658
57- const darkThemeTokens : App . Theme . ThemeToken = {
59+ const darkThemeTokens : App . Theme . ThemeTokenCSSVars = {
5860 colors : {
5961 ...themeTokens . colors ,
60- container : 'rgb(28, 28, 28)' ,
61- layout : 'rgb(18, 18, 18)' ,
62- base_text : 'rgb(224, 224, 224)'
62+ ...dark ?. colors
6363 } ,
6464 boxShadow : {
65- ...themeTokens . boxShadow
65+ ...themeTokens . boxShadow ,
66+ ...dark ?. boxShadow
6667 }
6768 } ;
6869
0 commit comments