playlists now save to files, can be restored from files

This commit is contained in:
2026-02-19 23:10:20 -05:00
parent 56cf92a44c
commit 560ab3a3b5
18 changed files with 2454 additions and 113 deletions
+2
View File
@@ -4,4 +4,6 @@ import {context} from '../models';
export function DirectoryPicker():Promise<string>;
export function PlaylistFilePicker():Promise<string>;
export function SetContext(arg1:context.Context):Promise<void>;
@@ -6,6 +6,10 @@ export function DirectoryPicker() {
return window['go']['frontendutil']['FrontendUtil']['DirectoryPicker']();
}
export function PlaylistFilePicker() {
return window['go']['frontendutil']['FrontendUtil']['PlaylistFilePicker']();
}
export function SetContext(arg1) {
return window['go']['frontendutil']['FrontendUtil']['SetContext'](arg1);
}
+2
View File
@@ -15,4 +15,6 @@ export function Scan():Promise<library.ScanMetrics>;
export function SetContext(arg1:context.Context):Promise<void>;
export function SetPlaylistRestorer(arg1:library.playlistRestorer):Promise<void>;
export function SetQueue(arg1:library.queueClearer):Promise<void>;
+4
View File
@@ -26,6 +26,10 @@ export function SetContext(arg1) {
return window['go']['library']['Library']['SetContext'](arg1);
}
export function SetPlaylistRestorer(arg1) {
return window['go']['library']['Library']['SetPlaylistRestorer'](arg1);
}
export function SetQueue(arg1) {
return window['go']['library']['Library']['SetQueue'](arg1);
}
+2
View File
@@ -425,6 +425,7 @@ export namespace playlist {
CoverArtMedium: string;
CoverArtLarge: string;
Duration: string;
Phantom: boolean;
static createFrom(source: any = {}) {
return new Track(source);
@@ -443,6 +444,7 @@ export namespace playlist {
this.CoverArtMedium = source["CoverArtMedium"];
this.CoverArtLarge = source["CoverArtLarge"];
this.Duration = source["Duration"];
this.Phantom = source["Phantom"];
}
}
export class WithTracks {
+8
View File
@@ -9,12 +9,20 @@ export function CreatePlaylist(arg1:string):Promise<playlist.Summary>;
export function CreatePlaylistWithTracks(arg1:string,arg2:Array<string>):Promise<playlist.Summary>;
export function DeletePlaylist(arg1:number):Promise<void>;
export function GetAllPlaylists():Promise<Array<playlist.Summary>>;
export function GetAllPlaylistsWithTracks():Promise<Array<playlist.WithTracks>>;
export function GetPlaylistTracks(arg1:number):Promise<Array<playlist.Track>>;
export function ImportPlaylist(arg1:string):Promise<playlist.Summary>;
export function RemoveTracksFromPlaylist(arg1:number,arg2:Array<number>):Promise<void>;
export function RenamePlaylist(arg1:number,arg2:string):Promise<void>;
export function RestoreAllPlaylists():Promise<void>;
export function SetContext(arg1:context.Context):Promise<void>;
+16
View File
@@ -14,6 +14,10 @@ export function CreatePlaylistWithTracks(arg1, arg2) {
return window['go']['playlist']['Service']['CreatePlaylistWithTracks'](arg1, arg2);
}
export function DeletePlaylist(arg1) {
return window['go']['playlist']['Service']['DeletePlaylist'](arg1);
}
export function GetAllPlaylists() {
return window['go']['playlist']['Service']['GetAllPlaylists']();
}
@@ -26,10 +30,22 @@ export function GetPlaylistTracks(arg1) {
return window['go']['playlist']['Service']['GetPlaylistTracks'](arg1);
}
export function ImportPlaylist(arg1) {
return window['go']['playlist']['Service']['ImportPlaylist'](arg1);
}
export function RemoveTracksFromPlaylist(arg1, arg2) {
return window['go']['playlist']['Service']['RemoveTracksFromPlaylist'](arg1, arg2);
}
export function RenamePlaylist(arg1, arg2) {
return window['go']['playlist']['Service']['RenamePlaylist'](arg1, arg2);
}
export function RestoreAllPlaylists() {
return window['go']['playlist']['Service']['RestoreAllPlaylists']();
}
export function SetContext(arg1) {
return window['go']['playlist']['Service']['SetContext'](arg1);
}