[feature-107] Advancement on playlists feature

This commit is contained in:
MathieuG-P
2024-03-27 21:33:19 +01:00
parent 0460a0dab3
commit b98e1ccdfa
15 changed files with 210 additions and 94 deletions
+5
View File
@@ -18,3 +18,8 @@ export function popElement<T = unknown>(func: (element: T) => boolean, arr: T[])
}
return arr.splice(index, 1)[0];
}
export function removeIndex<T = unknown>(index: number, arr: T[]): T[] {
arr.splice(index, 1);
return arr;
}
+1
View File
@@ -0,0 +1 @@
export type FieldRequired<T, K extends keyof T> = Partial<T> & Required<Pick<T, K>>; // All fields of T are optional except for K
+2 -2
View File
@@ -18,7 +18,7 @@ import { FileFilter, OpenDialogReturnValue } from "electron";
import { SystemNotificationOptions } from "../notification/system-notification.model";
import { Supporter } from "../supporters";
import { AppWindow } from "../window-manager/app-window.model";
import { LocalBPListsDetails } from "../playlists/local-playlist.models";
import { LocalBPList, LocalBPListsDetails } from "../playlists/local-playlist.models";
export type IpcReplier<T> = (data: Observable<T>) => void;
@@ -82,7 +82,7 @@ export interface IpcChannelMapping extends Record<string, { request: unknown, re
"is-playlists-deep-links-enabled": { request: void, response: boolean };
"install-playlist": {request: {playlist: BPList, version?: BSVersion, ignoreSongsHashs?: string[]}, response: Progression<DownloadPlaylistProgressionData>};
"get-version-playlists-details": {request: BSVersion, response: Progression<LocalBPListsDetails[]>};
"delete-playlist": {request: {path: string, deleteMaps?: boolean}, response: Progression};
"delete-playlist": {request: {version: BSVersion, bpList: LocalBPList, deleteMaps?: boolean}, response: Progression};
/* ** bs-uninstall-ipcs ** */
"bs.uninstall": { request: BSVersion, response: boolean };