diff --git a/apps/expo/src/stores/audio/index.ts b/apps/expo/src/stores/audio/index.ts new file mode 100644 index 0000000..ca4c341 --- /dev/null +++ b/apps/expo/src/stores/audio/index.ts @@ -0,0 +1,20 @@ +import { create } from "zustand"; +import { immer } from "zustand/middleware/immer"; + +import type { AudioTrack } from "../player/slices/interface"; + +export interface AudioTrackStore { + selectedTrack: AudioTrack | null; + setSelectedAudioTrack(track: AudioTrack | null): void; +} + +export const useAudioTrackStore = create( + immer((set) => ({ + selectedTrack: null, + setSelectedAudioTrack: (track) => { + set((s) => { + s.selectedTrack = track; + }); + }, + })), +);