Files
librodrome/app/plugins/audio-player.client.ts
2026-02-20 12:55:10 +01:00

27 lines
750 B
TypeScript

export default defineNuxtPlugin(() => {
// Initialize the player store on client side
const store = usePlayerStore()
// Restore volume from localStorage
if (typeof localStorage !== 'undefined') {
const savedVolume = localStorage.getItem('librodrome-volume')
if (savedVolume) {
store.setVolume(parseFloat(savedVolume))
}
const savedMode = localStorage.getItem('librodrome-mode') as 'guided' | 'free' | null
if (savedMode) {
store.setMode(savedMode)
}
// Watch for changes and persist
watch(() => store.volume, (vol) => {
localStorage.setItem('librodrome-volume', String(vol))
})
watch(() => store.mode, (mode) => {
localStorage.setItem('librodrome-mode', mode)
})
}
})