miru/common/components/cards/Card.svelte
2023-11-12 14:43:06 +01:00

45 lines
924 B
Svelte

<script>
import SkeletonCard from './SkeletonCard.svelte'
import SmallCard from './SmallCard.svelte'
import EpisodeSkeletonCard from './EpisodeSkeletonCard.svelte'
import FullCard from './FullCard.svelte'
import EpisodeCard from './EpisodeCard.svelte'
import FullSkeletonCard from './FullSkeletonCard.svelte'
import { settings } from '@/modules/settings.js'
export let card
const type = card.type || $settings.cards
</script>
{#if type === 'episode'}
{#await card.data}
<EpisodeSkeletonCard />
{:then data}
{#if data}
<EpisodeCard {data} />
{/if}
{/await}
{:else if type === 'full'}
{#await card.data}
<FullSkeletonCard />
{:then media}
{#if media}
<FullCard {media} />
{/if}
{/await}
{:else} <!-- type === 'small' -->
{#await card.data}
<SkeletonCard />
{:then media}
{#if media}
<SmallCard {media} />
{/if}
{/await}
{/if}