diff --git a/frontend/src/lib/components/auditLogs/AuditLogsFilters.svelte b/frontend/src/lib/components/auditLogs/AuditLogsFilters.svelte index dcc0ee1000..0da67ef43e 100644 --- a/frontend/src/lib/components/auditLogs/AuditLogsFilters.svelte +++ b/frontend/src/lib/components/auditLogs/AuditLogsFilters.svelte @@ -4,13 +4,21 @@ import Button from '$lib/components/common/button/Button.svelte' import CalendarPicker from '$lib/components/common/calendarPicker/CalendarPicker.svelte' - import { AuditLog, AuditService, UserService } from '$lib/gen' + import { + AuditLog, + AuditService, + ResourceService, + UserService, + type ListableResource + } from '$lib/gen' import { userStore, workspaceStore } from '$lib/stores' import { Loader2, RefreshCcw } from 'lucide-svelte' import { onDestroy } from 'svelte' + import AutoComplete from 'simple-svelte-autocomplete' let usernames: string[] + let resources: ListableResource[] let loading: boolean = false export let logs: AuditLog[] = [] @@ -20,7 +28,7 @@ export let after: string | undefined = undefined export let perPage: number | undefined = 100 export let operation: string = 'all' - export let resource: string | undefined = undefined + export let resource: string | undefined = 'all' export let actionKind: ActionKind | 'all' = 'all' async function loadLogs( @@ -47,6 +55,10 @@ actionKind = undefined } + if (resource == 'all' || resource == '') { + resource = undefined + } + logs = await AuditService.listAuditLogs({ workspace: $workspaceStore!, page, @@ -69,9 +81,16 @@ : [$userStore?.username ?? ''] } + async function loadResources() { + resources = await ResourceService.listResource({ + workspace: $workspaceStore! + }) + } + $: { if ($workspaceStore && refresh) { loadUsers() + loadResources() loadLogs(username, pageIndex, perPage, before, after, operation, resource, actionKind) } } @@ -159,6 +178,7 @@ perPage = Number(urlSearchParams.get('perPage')) || 100 operation = urlSearchParams.get('operation') ?? 'all' resource = urlSearchParams.get('resource') ?? undefined + actionKind = (urlSearchParams.get('actionKind') as ActionKind) ?? 'all' } @@ -256,7 +276,7 @@ let refresh = 1 -