import { deepMerge, ThemeEnum } from '@eciol/shared'; import { theme } from 'ant-design-vue'; import { computed } from 'vue'; import { useRootSetting } from '../setting'; export function useDarkModeTheme() { const { getDarkMode, getThemeColor, getDarkTheme, getLightTheme } = useRootSetting(); const { darkAlgorithm } = theme; const isDark = computed(() => getDarkMode.value === ThemeEnum.DARK); const darkTheme = computed(() => deepMerge(getDarkTheme.value, { token: { colorPrimary: getThemeColor.value, colorInfo: getThemeColor.value, }, algorithm: [darkAlgorithm], }), ); const lightTheme = computed(() => deepMerge(getLightTheme.value, { token: { colorPrimary: getThemeColor.value, colorInfo: getThemeColor.value, }, }), ); return { isDark, darkTheme, lightTheme, }; }