PluralKit/src/lib/system/Main.svelte

34 lines
956 B
Svelte
Raw Normal View History

2021-12-11 15:57:20 +01:00
<script lang="ts">
import { Card, CardBody, CardHeader } from 'sveltestrap';
import FaAddressCard from 'svelte-icons/fa/FaAddressCard.svelte'
2021-12-11 15:57:20 +01:00
import CardsHeader from '../CardsHeader.svelte';
2021-12-12 08:01:51 +01:00
import Body from './Body.svelte';
import Privacy from './Privacy.svelte';
2021-12-12 07:46:57 +01:00
import Edit from './Edit.svelte';
import type Sys from '../../api/system';
2021-12-11 15:57:20 +01:00
export let user: Sys;
2021-12-11 18:41:21 +01:00
export let isPublic = true;
2021-12-12 10:31:08 +01:00
let loading = false;
2021-12-11 15:57:20 +01:00
2021-12-11 18:41:21 +01:00
let editMode = false;
2021-12-11 15:57:20 +01:00
</script>
2021-12-11 18:41:21 +01:00
<Card class="mb-4">
<CardHeader>
<CardsHeader bind:item={user} bind:loading>
<FaAddressCard slot="icon" />
</CardsHeader>
</CardHeader>
2021-12-11 15:57:20 +01:00
<CardBody style="border-left: 4px solid #{user.color}">
{#if !editMode}
2021-12-12 10:31:08 +01:00
<Body bind:user bind:editMode bind:isPublic/>
2021-12-11 15:57:20 +01:00
{:else}
2021-12-12 07:46:57 +01:00
<Edit bind:user bind:editMode bind:loading />
2021-12-11 15:57:20 +01:00
{/if}
</CardBody>
2021-12-11 18:41:21 +01:00
</Card>
{#if !isPublic}
2021-12-12 08:01:51 +01:00
<Privacy bind:user />
2021-12-11 18:41:21 +01:00
{/if}