Skip to content

Commit

Permalink
fix pagination handling and filter refreshes
Browse files Browse the repository at this point in the history
  • Loading branch information
Guilhem-lm committed Feb 25, 2025
1 parent c8a9596 commit c73fa2d
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 8 deletions.
31 changes: 24 additions & 7 deletions frontend/src/lib/components/auditLogs/AuditLogsFilters.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,8 @@
export let logs: AuditLog[] = []
export let username: string = 'all'
export let pageIndex: number | undefined = 0
export let pageIndex: number | undefined = 1
export let hasMore: boolean = false
export let before: string | undefined = undefined
export let after: string | undefined = undefined
export let perPage: number | undefined = 100
Expand Down Expand Up @@ -77,6 +78,7 @@
actionKind,
allWorkspaces: scope === 'all_workspaces'
})
hasMore = logs.length > 0 && logs.length === perPage
loading = false
}
Expand Down Expand Up @@ -109,12 +111,12 @@
.sort()
}
$: {
if ($workspaceStore && refresh) {
loadUsers()
loadResources()
loadLogs(username, pageIndex, perPage, before, after, operation, resource, actionKind, scope)
}
$: $workspaceStore && refresh && refreshLogs()
function refreshLogs() {
loadUsers()
loadResources()
loadLogs(username, pageIndex, perPage, before, after, operation, resource, actionKind, scope)
}
function updateQueryParams({
Expand Down Expand Up @@ -158,6 +160,9 @@
}
const query = '?' + queryParams.join('&')
goto(query)
pageIndex = 1
loadLogs(username, 1, perPage, before, after, operation, resource, actionKind, scope)
}
function updatePageQueryParams(pageIndex?: number | undefined) {
Expand All @@ -184,6 +189,18 @@
const query = '?' + queryParams.join('&')
goto(query)
loadLogs(
username,
pageIndex ?? 1,
perPage,
before,
after,
operation,
resource,
actionKind,
scope
)
}
$: updateQueryParams({
Expand Down
3 changes: 2 additions & 1 deletion frontend/src/lib/components/auditLogs/AuditLogsTable.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
export let logs: AuditLog[] = []
export let pageIndex: number | undefined = 1
export let perPage: number | undefined = 100
export let hasMore: boolean = true
export let actionKind: string | undefined = undefined
export let operation: string | undefined = undefined
export let selectedId: number | undefined = undefined
Expand Down Expand Up @@ -69,8 +70,8 @@
paginated
rounded={false}
size="sm"
{hasMore}
bind:perPage
shouldHidePagination={logs?.length === 0}
>
<Head>
<Cell first head>ID</Cell>
Expand Down
5 changes: 5 additions & 0 deletions frontend/src/routes/(root)/(logged)/audit_logs/+page.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
let username: string = $page.url.searchParams.get('username') ?? 'all'
let pageIndex: number | undefined = Number($page.url.searchParams.get('page')) || 0
let before: string | undefined = $page.url.searchParams.get('before') ?? undefined
let hasMore: boolean = false
let after: string | undefined = $page.url.searchParams.get('after') ?? undefined
let perPage: number | undefined = Number($page.url.searchParams.get('perPage')) || 100
let operation: string = $page.url.searchParams.get('operation') ?? 'all'
Expand Down Expand Up @@ -61,6 +62,7 @@
bind:pageIndex
bind:perPage
bind:scope
bind:hasMore
/>
</div>
<div class="2xl:hidden">
Expand All @@ -75,6 +77,7 @@
bind:operation
bind:resource
bind:scope
bind:hasMore
/>
</svelte:fragment>
</AuditLogMobileFilters>
Expand All @@ -100,6 +103,7 @@
bind:operation
bind:usernameFilter={username}
bind:resourceFilter={resource}
bind:hasMore
on:select={(e) => {
selectedId = e.detail
}}
Expand All @@ -114,6 +118,7 @@
<div class="md:hidden">
<AuditLogsTable
{logs}
bind:hasMore
bind:pageIndex
bind:perPage
bind:actionKind
Expand Down

0 comments on commit c73fa2d

Please sign in to comment.