import { HttpClient } from '@angular/common/http'; import { Injectable } from '@angular/core'; import { environment } from 'src/environments/environment'; import {ServerInfoSlim} from '../admin/_models/server-info'; import { UpdateVersionEvent } from '../_models/events/update-version-event'; import { Job } from '../_models/job/job'; import { KavitaMediaError } from '../admin/_models/media-error'; @Injectable({ providedIn: 'root' }) export class ServerService { baseUrl = environment.apiUrl; constructor(private httpClient: HttpClient) { } getServerInfo() { return this.httpClient.get(this.baseUrl + 'server/server-info-slim'); } clearCache() { return this.httpClient.post(this.baseUrl + 'server/clear-cache', {}); } cleanupWantToRead() { return this.httpClient.post(this.baseUrl + 'server/cleanup-want-to-read', {}); } backupDatabase() { return this.httpClient.post(this.baseUrl + 'server/backup-db', {}); } analyzeFiles() { return this.httpClient.post(this.baseUrl + 'server/analyze-files', {}); } checkForUpdate() { return this.httpClient.get(this.baseUrl + 'server/check-update', {}); } getChangelog() { return this.httpClient.get(this.baseUrl + 'server/changelog', {}); } isServerAccessible() { return this.httpClient.get(this.baseUrl + 'server/accessible'); } getRecurringJobs() { return this.httpClient.get(this.baseUrl + 'server/jobs'); } convertMedia() { return this.httpClient.post(this.baseUrl + 'server/convert-media', {}); } bustCache() { return this.httpClient.post(this.baseUrl + 'server/bust-review-and-rec-cache', {}); } getMediaErrors() { return this.httpClient.get>(this.baseUrl + 'server/media-errors', {}); } clearMediaAlerts() { return this.httpClient.post(this.baseUrl + 'server/clear-media-alerts', {}); } }