feat(web): add /admin/requests approval queue with override modal
Pending/Approved/Completed/Rejected tabs (active count only). Override modal collapsed by default; reject modal with notes textarea. Lidarr-unreachable toast surfaces sync-Approve failures. Cancel buttons in both modals are Pewter ghost; Reject/Confirm reject use Bronze (the design system reserves Oxblood for irreversible actions like Disconnect).
This commit is contained in:
@@ -8,7 +8,6 @@
|
||||
approveRequest,
|
||||
rejectRequest
|
||||
} from '$lib/api/admin';
|
||||
import { qk } from '$lib/api/queries';
|
||||
import StatusPill from '$lib/components/StatusPill.svelte';
|
||||
import type { LidarrRequest, LidarrRequestKind, LidarrRequestStatus } from '$lib/api/types';
|
||||
|
||||
@@ -348,7 +347,7 @@
|
||||
<div class="mt-5 flex justify-end gap-2">
|
||||
<button
|
||||
type="button"
|
||||
class="rounded-md bg-action-secondary px-3 py-1.5 text-sm text-text-primary"
|
||||
class="rounded-md border border-border px-3 py-1.5 text-sm text-text-secondary hover:text-text-primary"
|
||||
onclick={cancelOverride}
|
||||
>
|
||||
Cancel
|
||||
@@ -400,14 +399,14 @@
|
||||
<div class="mt-5 flex justify-end gap-2">
|
||||
<button
|
||||
type="button"
|
||||
class="rounded-md bg-action-secondary px-3 py-1.5 text-sm text-text-primary"
|
||||
class="rounded-md border border-border px-3 py-1.5 text-sm text-text-secondary hover:text-text-primary"
|
||||
onclick={cancelReject}
|
||||
>
|
||||
Cancel
|
||||
</button>
|
||||
<button
|
||||
type="button"
|
||||
class="inline-flex items-center gap-1 rounded-md bg-action-destructive px-3 py-1.5 text-sm text-text-primary"
|
||||
class="inline-flex items-center gap-1 rounded-md bg-action-secondary px-3 py-1.5 text-sm text-text-primary"
|
||||
onclick={() => confirmReject(rejectRow!)}
|
||||
>
|
||||
<X size={14} strokeWidth={2} />
|
||||
|
||||
Reference in New Issue
Block a user