feat(logs): make log files downloadable (#706)

* feat(logs): show and download log files

* feat(logs): make logs settings dropdown

* feat(logs): minor cosmetic changes

* fix(logs): send empty response when lohpath not configured

* fix(logs): remove unused imports

* feat(logs): check if logs dir exists

* feat(logs): list log files in settings
This commit is contained in:
ze0s 2023-02-12 17:34:09 +01:00 committed by GitHub
parent 21724f29f6
commit b21c01a7df
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 394 additions and 79 deletions

View file

@ -42,7 +42,7 @@ export async function HttpClient<T>(
// Resolve immediately since 204 contains no data
if (response.status === 204)
return Promise.resolve(response);
return await response.json();
});
}
@ -144,6 +144,10 @@ export const APIClient = {
deleteNetwork: (id: number) => appClient.Delete(`api/irc/network/${id}`),
restartNetwork: (id: number) => appClient.Get(`api/irc/network/${id}/restart`)
},
logs: {
files: () => appClient.Get<LogFileResponse>("api/logs/files"),
getFile: (file: string) => appClient.Get(`api/logs/files/${file}`)
},
events: {
logs: () => new EventSource(`${sseBaseUrl()}api/events?stream=logs`, { withCredentials: true })
},
@ -185,6 +189,6 @@ export const APIClient = {
},
updates: {
check: () => appClient.Get("api/updates/check"),
getLatestRelease: () => appClient.Get<GithubRelease|undefined>("api/updates/latest")
getLatestRelease: () => appClient.Get<GithubRelease | undefined>("api/updates/latest")
}
};