git list refactor

This commit is contained in:
2026-03-01 12:13:19 +03:00
parent e15eb115c2
commit 4769fbd258
26 changed files with 10313 additions and 2179 deletions

View File

@@ -1,35 +1,19 @@
<!-- [DEF:StorageBackupsPage:Page] -->
<!--
@TIER: STANDARD
@SEMANTICS: backup, page, tools
@PURPOSE: Entry point for the Backup Management interface (moved from /tools/backups).
@TIER: TRIVIAL
@SEMANTICS: storage, backups, routing
@PURPOSE: Temporary switch to legacy storage browser for backup UX validation.
@LAYER: Page
@RELATION: USES -> BackupManager
@RELATION: REDIRECTS_TO -> /tools/storage
@INVARIANT: BackupManager component is always rendered.
@INVARIANT: Always redirects to /tools/storage.
-->
<script>
import { onMount } from 'svelte';
import { goto } from '$app/navigation';
<script lang="ts">
/**
* @UX_STATE: Loading -> (via BackupManager) showing spinner.
* @UX_STATE: Idle -> Showing BackupManager interface.
* @UX_FEEDBACK: Toast -> (via BackupManager) success/error notifications.
*/
// [SECTION: IMPORTS]
import { t } from '$lib/i18n';
import { PageHeader } from '$lib/ui';
import BackupManager from '../../../components/backups/BackupManager.svelte';
// [/SECTION]
onMount(() => {
goto('/tools/storage');
});
</script>
<!-- [SECTION: TEMPLATE] -->
<div class="container mx-auto p-4 max-w-6xl">
<PageHeader title={$t.nav?.backups } />
<div class="mt-6">
<BackupManager />
</div>
</div>
<!-- [/SECTION] -->
<!-- [/DEF:StorageBackupsPage:Page] -->

View File

@@ -4,7 +4,7 @@
@SEMANTICS: git, dashboard, management, ui
@PURPOSE: Dashboard management page for Git integration (moved from /git).
@LAYER: UI (Page)
@RELATION: DEPENDS_ON -> DashboardGrid
@RELATION: DEPENDS_ON -> RepositoryDashboardGrid
@RELATION: DEPENDS_ON -> api
@INVARIANT: Dashboard grid is always shown when an environment is selected.
-->
@@ -18,7 +18,7 @@
* @UX_RECOVERY: Environment Selection -> Switch environment to retry loading.
*/
import { onMount } from 'svelte';
import DashboardGrid from '../../../components/DashboardGrid.svelte';
import RepositoryDashboardGrid from '../../../components/RepositoryDashboardGrid.svelte';
import { addToast as toast } from '$lib/toasts.js';
import { api } from '$lib/api.js';
import type { DashboardMetadata } from '$lib/types/dashboard';
@@ -111,7 +111,7 @@
{#if fetchingDashboards}
<p class="text-gray-500">{$t.common?.loading }</p>
{:else if dashboards.length > 0}
<DashboardGrid {dashboards} />
<RepositoryDashboardGrid {dashboards} statusMode="repository" />
{:else}
<p class="text-gray-500 italic">{$t.dashboard?.no_dashboards }</p>
{/if}