Small UI cleanup, auto-refresh, and per-kind artifact routes
- Remove redundant "manage scripts" button and pipeline sidebar from Fleet page - Bump log tail default 200 -> 1000 lines - Auto-refresh (5s) on deployments list/detail, betas list, server detail, and artifact detail - Drift ignores dedicated.cfg (Plutonium MP config; regenerates if deleted) - Extract ArtifactDetail component; mount under /scripts/[id], /configs/[id], /plugins/[id] so configs and plugins no longer land on /scripts URLs Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<script lang="ts">
|
||||
import { onMount } from 'svelte';
|
||||
import { onMount, onDestroy } from 'svelte';
|
||||
import { page } from '$app/stores';
|
||||
import DiffViewer from '$ui/components/DiffViewer.svelte';
|
||||
|
||||
@@ -39,10 +39,19 @@
|
||||
let detail = $state<Detail | null>(null);
|
||||
let openFile = $state<{ id: number; before: string | null; after: string | null; verb: string; relPath: string } | null>(null);
|
||||
|
||||
onMount(async () => {
|
||||
async function loadDetail(): Promise<void> {
|
||||
const id = $page.params.id;
|
||||
const res = await fetch(`/api/deployments/${id}`);
|
||||
detail = (await res.json()) as Detail;
|
||||
}
|
||||
|
||||
let poll: ReturnType<typeof setInterval> | null = null;
|
||||
onMount(() => {
|
||||
loadDetail();
|
||||
poll = setInterval(loadDetail, 5000);
|
||||
});
|
||||
onDestroy(() => {
|
||||
if (poll) clearInterval(poll);
|
||||
});
|
||||
|
||||
async function loadDiff(f: FileRow) {
|
||||
|
||||
Reference in New Issue
Block a user