diff --git a/src/lib/components/database/DatabaseGridWithProvider.svelte b/src/lib/components/database/DatabaseGridWithProvider.svelte index f9df3b1e..3ed68056 100644 --- a/src/lib/components/database/DatabaseGridWithProvider.svelte +++ b/src/lib/components/database/DatabaseGridWithProvider.svelte @@ -11,13 +11,16 @@ import { onMount, onDestroy } from 'svelte' import { goto } from '$app/navigation' + import type { Snippet } from 'svelte' + interface Props { resource: 'weapons' | 'characters' | 'summons' columns: IColumn[] pageSize?: number + headerActions?: Snippet } - const { resource, columns, pageSize: initialPageSize = 20 }: Props = $props() + const { resource, columns, pageSize: initialPageSize = 20, headerActions }: Props = $props() // State let data = $state([]) @@ -159,14 +162,20 @@
-
- - +
+ {#if headerActions} + {@render headerActions()} + {/if} + +
+ + +
@@ -249,6 +258,12 @@ } } + .controls-right { + display: flex; + align-items: center; + gap: spacing.$unit; + } + .page-size-selector { display: flex; align-items: center; diff --git a/src/routes/(app)/database/characters/+page.svelte b/src/routes/(app)/database/characters/+page.svelte index bf0672a3..47120b12 100644 --- a/src/routes/(app)/database/characters/+page.svelte +++ b/src/routes/(app)/database/characters/+page.svelte @@ -7,9 +7,11 @@ import DatabaseGridWithProvider from '$lib/components/database/DatabaseGridWithProvider.svelte' import ElementCell from '$lib/components/database/cells/ElementCell.svelte' import LastUpdatedCell from '$lib/components/database/cells/LastUpdatedCell.svelte' + import Button from '$lib/components/ui/Button.svelte' // Utilities import { getRarityLabel } from '$lib/utils/rarity' + import { goto } from '$app/navigation' const columns = [ { @@ -61,7 +63,13 @@
- + + {#snippet headerActions()} + + {/snippet} +