fix(releases): delete older than X (#993)

* fix(release): DeleteOlder func for zero duration

resolves a bug in the `DeleteOlder` function where recent 24-hour data wasn't deleted when set to `delete everything`. We now correctly set the olderThanTimestamp to a future date when duration is zero, ensuring complete deletion of all records.

* fix(releases): delete older

---------

Co-authored-by: ze0s <ze0s@riseup.net>
This commit is contained in:
soup 2023-07-22 14:49:28 +02:00 committed by GitHub
parent 56d3603505
commit e6f32596a1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 56 additions and 71 deletions

View file

@ -195,8 +195,14 @@ export const APIClient = {
},
indexerOptions: () => appClient.Get<string[]>("api/release/indexers"),
stats: () => appClient.Get<ReleaseStats>("api/release/stats"),
delete: () => appClient.Delete("api/release/all"),
deleteOlder: (duration: number) => appClient.Delete(`api/release/older-than/${duration}`),
delete: (olderThan: number) => {
const params = new URLSearchParams();
if (olderThan !== undefined && olderThan > 0) {
params.append("olderThan", olderThan.toString());
}
return appClient.Delete(`api/release?${params.toString()}`)
},
replayAction: (releaseId: number, actionId: number) => appClient.Post(`api/release/${releaseId}/actions/${actionId}/retry`)
},
updates: {

View file

@ -71,7 +71,7 @@ function DeleteReleases() {
const [deleteModalIsOpen, toggleDeleteModal] = useToggle(false);
const deleteOlderMutation = useMutation({
mutationFn: (duration: number) => APIClient.release.deleteOlder(duration),
mutationFn: (olderThan: number) => APIClient.release.delete(olderThan),
onSuccess: () => {
if (parsedDuration === 0) {
toast.custom((t) => (