import {deleteData, getData, patchData, putData} from "../../App"; import INewLibraryRecord from "../types/records/INewLibraryRecord"; import ILocalLibrary from "../types/ILocalLibrary"; export default class LocalLibrary { static async GetLibraries(apiUri: string): Promise { return getData(`${apiUri}/v2/LocalLibraries`) .then((json) => { const ret = json as ILocalLibrary[]; return (ret); }); } static async GetLibrary(apiUri: string, libraryId: string): Promise { return getData(`${apiUri}/v2/LocalLibraries/${libraryId}`) .then((json) => { const ret = json as ILocalLibrary; //console.debug(ret); return (ret); }); } static async CreateLibrary(apiUri: string, data: INewLibraryRecord): Promise { return putData(`${apiUri}/v2/LocalLibraries`, data) .then((json) => { const ret = json as ILocalLibrary; //console.debug(ret); return (ret); }); } static async DeleteLibrary(apiUri: string, libraryId: string): Promise { return deleteData(`${apiUri}/v2/LocalLibraries/${libraryId}`); } static async ChangeLibraryPath(apiUri: string, libraryId: string, newPath: string): Promise { return patchData(`${apiUri}/v2/LocalLibraries/${libraryId}/ChangeBasePath`, newPath) .then(()=> { return Promise.resolve() }); } static async ChangeLibraryName(apiUri: string, libraryId: string, newName: string): Promise { return patchData(`${apiUri}/v2/LocalLibraries/${libraryId}/ChangeName`, newName) .then(()=> { return Promise.resolve() }); } static async UpdateLibrary(apiUri: string, libraryId: string, record: INewLibraryRecord): Promise { return patchData(`${apiUri}/v2/LocalLibraries/${libraryId}`, record) .then(()=> { return Promise.resolve() }); } }