Sid Gifari File Manager
🏠 Root
/
home
/
genremedia08
/
musicjukebox.overlookedtracks.com
/
common
/
resources
/
client
/
player
/
Editing: player-context.tsx
import {createContext, ReactNode, useState} from 'react'; import {createPlayerStore} from '@common/player/state/player-store'; import {PlayerStoreOptions} from '@common/player/state/player-store-options'; import type {PlayerStoreApi} from '@common/player/state/player-state'; export const PlayerStoreContext = createContext<PlayerStoreApi>(null!); interface PlayerContextProps { children: ReactNode; id: string | number; options: PlayerStoreOptions; } export function PlayerContext({children, id, options}: PlayerContextProps) { //lazily create store object only once const [store] = useState(() => { return createPlayerStore(id, options); }); return ( <PlayerStoreContext.Provider value={store}> {children} </PlayerStoreContext.Provider> ); }
Save
Cancel