restructure files onto electron-vite boilerplate

This commit is contained in:
jeffvli 2025-05-18 14:03:18 -07:00
parent 91ce2cd8a1
commit 1cf587bc8f
457 changed files with 9927 additions and 11705 deletions

View file

@ -6,34 +6,9 @@ import { create } from 'zustand';
import { devtools, persist, subscribeWithSelector } from 'zustand/middleware';
import { immer } from 'zustand/middleware/immer';
import { shallow } from 'zustand/shallow';
import { QueueSong } from '/@/renderer/api/types';
import { PlayerStatus, PlayerRepeat, PlayerShuffle, Play } from '/@/renderer/types';
export interface PlayerState {
current: {
index: number;
nextIndex: number;
player: 1 | 2;
previousIndex: number;
seek: boolean;
shuffledIndex: number;
song?: QueueSong;
status: PlayerStatus;
time: number;
};
fallback: boolean | null;
muted: boolean;
queue: {
default: QueueSong[];
previousNode?: QueueSong;
shuffled: string[];
sorted: QueueSong[];
};
repeat: PlayerRepeat;
shuffle: PlayerShuffle;
speed: number;
volume: number;
}
import { QueueSong } from '/@/renderer/api/types';
import { Play, PlayerRepeat, PlayerShuffle, PlayerStatus } from '/@/renderer/types';
export interface PlayerData {
current: {
@ -50,13 +25,6 @@ export interface PlayerData {
queue: QueueData;
}
export interface QueueData {
current?: QueueSong;
length: number;
next?: QueueSong;
previous?: QueueSong;
}
export interface PlayerSlice extends PlayerState {
actions: {
addToQueue: (args: {
@ -90,7 +58,7 @@ export interface PlayerSlice extends PlayerState {
setFallback: (fallback: boolean | null) => boolean;
setFavorite: (ids: string[], favorite: boolean) => string[];
setMuted: (muted: boolean) => void;
setRating: (ids: string[], rating: number | null) => string[];
setRating: (ids: string[], rating: null | number) => string[];
setRepeat: (type: PlayerRepeat) => PlayerData;
setShuffle: (type: PlayerShuffle) => PlayerData;
setShuffledIndex: (index: number) => PlayerData;
@ -100,6 +68,39 @@ export interface PlayerSlice extends PlayerState {
};
}
export interface PlayerState {
current: {
index: number;
nextIndex: number;
player: 1 | 2;
previousIndex: number;
seek: boolean;
shuffledIndex: number;
song?: QueueSong;
status: PlayerStatus;
time: number;
};
fallback: boolean | null;
muted: boolean;
queue: {
default: QueueSong[];
previousNode?: QueueSong;
shuffled: string[];
sorted: QueueSong[];
};
repeat: PlayerRepeat;
shuffle: PlayerShuffle;
speed: number;
volume: number;
}
export interface QueueData {
current?: QueueSong;
length: number;
next?: QueueSong;
previous?: QueueSong;
}
export const usePlayerStore = create<PlayerSlice>()(
subscribeWithSelector(
persist(