mirror of
https://github.com/austinried/subtracks.git
synced 2025-12-27 09:09:29 +01:00
30 lines
757 B
TypeScript
30 lines
757 B
TypeScript
import { useReset } from '@app/hooks/trackplayer'
|
|
import { selectSettings } from '@app/state/settings'
|
|
import { useStore } from '@app/state/store'
|
|
import { useEffect } from 'react'
|
|
|
|
export const useSwitchActiveServer = () => {
|
|
const activeServer = useStore(selectSettings.activeServer)
|
|
const setActiveServer = useStore(selectSettings.setActiveServer)
|
|
const resetPlayer = useReset()
|
|
|
|
return async (id: string) => {
|
|
if (id === activeServer?.id) {
|
|
return
|
|
}
|
|
|
|
await resetPlayer()
|
|
setActiveServer(id)
|
|
}
|
|
}
|
|
|
|
export const useActiveServerRefresh = (refresh: () => void) => {
|
|
const activeServer = useStore(selectSettings.activeServer)
|
|
|
|
useEffect(() => {
|
|
if (activeServer) {
|
|
refresh()
|
|
}
|
|
}, [activeServer, refresh])
|
|
}
|