Add web interface with admin functionality (#167)

This commit is contained in:
Alex 2022-05-21 02:23:55 -05:00 committed by GitHub
parent 79dea504b0
commit a779c3803c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
76 changed files with 8252 additions and 87 deletions

View file

@ -0,0 +1,39 @@
<script lang="ts">
import { getRequest } from '$lib/api';
import { onDestroy } from 'svelte';
import { fade } from 'svelte/transition';
import '../app.css';
import { serverEndpoint } from '../lib/constants';
let endpoint = serverEndpoint;
let isServerOk = true;
const pingServerInterval = setInterval(async () => {
const response = await getRequest('server-info/ping', '');
if (response.res === 'pong') isServerOk = true;
if (response.statusCode === 404) isServerOk = false;
}, 10000);
onDestroy(() => clearInterval(pingServerInterval));
</script>
<main>
<slot />
</main>
<footer
class="text-sm fixed bottom-0 h-8 flex place-items-center place-content-center bg-immich-primary/10 w-screen font-mono gap-8 px-4 font-medium"
>
<p class="">
Server URL <span class="text-immich-primary font-bold">{endpoint}</span>
</p>
<p class="">
Server Status
{#if isServerOk}
<span class="text-immich-primary font-bold">OK</span>
{:else}
<span class="text-red-500 font-bold">OFFLINE</span>
{/if}
</p>
</footer>