@ -10,8 +10,8 @@ import {
|
||||
createThemeToken,
|
||||
getNaiveTheme,
|
||||
initThemeSettings,
|
||||
toggleCssDarkMode,
|
||||
toggleGrayscaleMode
|
||||
toggleAuxiliaryColorModes,
|
||||
toggleCssDarkMode
|
||||
} from './shared';
|
||||
|
||||
/** Theme store */
|
||||
@ -33,6 +33,9 @@ export const useThemeStore = defineStore(SetupStoreId.Theme, () => {
|
||||
/** grayscale mode */
|
||||
const grayscaleMode = computed(() => settings.value.grayscale);
|
||||
|
||||
/** colourWeakness mode */
|
||||
const colourWeaknessMode = computed(() => settings.value.colourWeakness);
|
||||
|
||||
/** Theme colors */
|
||||
const themeColors = computed(() => {
|
||||
const { themeColor, otherColor, isInfoFollowPrimary } = settings.value;
|
||||
@ -79,6 +82,15 @@ export const useThemeStore = defineStore(SetupStoreId.Theme, () => {
|
||||
settings.value.grayscale = isGrayscale;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set colourWeakness value
|
||||
*
|
||||
* @param isColourWeakness
|
||||
*/
|
||||
function setColourWeakness(isColourWeakness: boolean) {
|
||||
settings.value.colourWeakness = isColourWeakness;
|
||||
}
|
||||
|
||||
/** Toggle theme scheme */
|
||||
function toggleThemeScheme() {
|
||||
const themeSchemes: UnionKey.ThemeScheme[] = ['light', 'dark', 'auto'];
|
||||
@ -167,9 +179,9 @@ export const useThemeStore = defineStore(SetupStoreId.Theme, () => {
|
||||
);
|
||||
|
||||
watch(
|
||||
grayscaleMode,
|
||||
[grayscaleMode, colourWeaknessMode],
|
||||
val => {
|
||||
toggleGrayscaleMode(val);
|
||||
toggleAuxiliaryColorModes(val[0], val[1]);
|
||||
},
|
||||
{ immediate: true }
|
||||
);
|
||||
@ -197,6 +209,7 @@ export const useThemeStore = defineStore(SetupStoreId.Theme, () => {
|
||||
naiveTheme,
|
||||
settingsJson,
|
||||
setGrayscale,
|
||||
setColourWeakness,
|
||||
resetStore,
|
||||
setThemeScheme,
|
||||
toggleThemeScheme,
|
||||
|
||||
Reference in New Issue
Block a user