diff --git a/web/src/lib/components/data-table/data-table-card.svelte b/web/src/lib/components/data-table/data-table-card.svelte index c3dfe00..09d1e08 100644 --- a/web/src/lib/components/data-table/data-table-card.svelte +++ b/web/src/lib/components/data-table/data-table-card.svelte @@ -1,31 +1,57 @@ - + {#if title} - {title} - {#if description} - {description} - {/if} +
+ {#if icon && accent} +
+ {@render icon()} +
+ {/if} +
+ {title} + {#if description} + {description} + {/if} +
+
{/if} {#if toolbar} diff --git a/web/src/routes/+page.svelte b/web/src/routes/+page.svelte index f935043..a9204a9 100644 --- a/web/src/routes/+page.svelte +++ b/web/src/routes/+page.svelte @@ -45,6 +45,7 @@ import GlobeIcon from '@lucide/svelte/icons/globe'; import CloudUploadIcon from '@lucide/svelte/icons/cloud-upload'; import LockIcon from '@lucide/svelte/icons/lock'; + import UsersIcon from '@lucide/svelte/icons/users'; import { nextSortDir, compareStrings, compareNum, type SortDir } from '$lib/table-sort.js'; let loading = $state(true); @@ -619,7 +620,9 @@ async function handleAliasFilterChange(nextAlias: string) { class="mb-6" title="Активные IP (агрегат)" description="С GeoIP при включённой базе на шлюзе" + accent="teal" > + {#snippet icon()}