refactor: TmdbIntegration

This commit is contained in:
Aleksi Lassila
2024-06-18 01:08:50 +03:00
parent 355c93e9e8
commit d687b33249
3 changed files with 22 additions and 21 deletions

View File

@@ -2,15 +2,10 @@
import { tmdbApi } from '../../apis/tmdb/tmdb-api';
import { user } from '../../stores/user.store';
import SelectField from '../SelectField.svelte';
import { createEventDispatcher } from 'svelte';
import Button from '../Button.svelte';
import { ArrowRight, Trash } from 'radix-icons-svelte';
import { Trash } from 'radix-icons-svelte';
import { derived } from 'svelte/store';
import classNames from 'classnames';
export let handleConnectTmdb: () => void;
const dispatch = createEventDispatcher<{ 'click-user': null }>();
const userId = derived(user, (user) => user?.settings.tmdb.userId);
$: connectedTmdbAccount = !!$userId && tmdbApi.getAccountDetails();
@@ -32,17 +27,10 @@
{#await connectedTmdbAccount then tmdbAccount}
{#if tmdbAccount}
<SelectField value={tmdbAccount.username || ''} action={handleDisconnectTmdb} class="mb-4">
<SelectField value={tmdbAccount.username || ''} action={handleDisconnectTmdb}>
Connected to
<Trash slot="icon" let:size let:iconClass {size} class={classNames(iconClass, '')} />
</SelectField>
{:else}
<slot>
<div class="flex space-x-4">
<Button type="primary-dark" iconAfter={ArrowRight} on:clickOrSelect={handleConnectTmdb}>
Connect
</Button>
</div>
</slot>
{/if}
<slot connected={!!tmdbAccount} />
{/await}