Files
FloatingIsland/app/composables/useCustomTheme.ts
2025-09-19 01:04:05 +08:00

23 lines
529 B
TypeScript

import { useDark, useToggle } from "@vueuse/core"
// composables/useCustomTheme.ts
export function useCustomTheme(): {
isDark: WritableComputedRef<boolean, boolean>
toggle: (value?: boolean | undefined) => boolean
} {
const { $vuetify } = useNuxtApp()
const isDark = useDark({
valueDark: "dark",
valueLight: "light",
initialValue: "light",
onChanged: (dark: boolean) => {
$vuetify.theme.change(dark ? "dark" : "light")
}
})
const toggle = useToggle(isDark)
return { isDark, toggle }
}