chore(web): migration svelte 5 syntax (#13883)

This commit is contained in:
Alex
2024-11-14 08:43:25 -06:00
committed by GitHub
parent 9203a61709
commit 0b3742cf13
310 changed files with 6435 additions and 4176 deletions
@@ -15,21 +15,24 @@
import { assetViewingStore } from '$lib/stores/asset-viewing.store';
import { tick } from 'svelte';
export let data: PageData;
interface Props {
data: PageData;
}
let { data }: Props = $props();
let { gridScrollTarget } = assetViewingStore;
let { sharedLink, passwordRequired, sharedLinkKey: key, meta } = data;
let { title, description } = meta;
let isOwned = $user ? $user.id === sharedLink?.userId : false;
let password = '';
let innerWidth: number;
let { sharedLink, passwordRequired, sharedLinkKey: key, meta } = $state(data);
let { title, description } = $state(meta);
let isOwned = $derived($user ? $user.id === sharedLink?.userId : false);
let password = $state('');
let innerWidth: number = $state(0);
const handlePasswordSubmit = async () => {
try {
sharedLink = await getMySharedLink({ password, key });
setSharedLink(sharedLink);
passwordRequired = false;
isOwned = $user ? $user.id === sharedLink.userId : false;
title = (sharedLink.album ? sharedLink.album.albumName : $t('public_share')) + ' - Immich';
description =
sharedLink.description ||
@@ -43,6 +46,11 @@
handleError(error, $t('errors.unable_to_get_shared_link'));
}
};
const onsubmit = async (event: Event) => {
event.preventDefault();
await handlePasswordSubmit();
};
</script>
<svelte:window bind:innerWidth />
@@ -54,13 +62,13 @@
{#if passwordRequired}
<header>
<ControlAppBar showBackButton={false}>
<svelte:fragment slot="leading">
{#snippet leading()}
<ImmichLogoSmallLink width={innerWidth} />
</svelte:fragment>
{/snippet}
<svelte:fragment slot="trailing">
{#snippet trailing()}
<ThemeButton />
</svelte:fragment>
{/snippet}
</ControlAppBar>
</header>
<main
@@ -72,7 +80,7 @@
{$t('sharing_enter_password')}
</div>
<div class="mt-4">
<form novalidate autocomplete="off" on:submit|preventDefault={handlePasswordSubmit}>
<form novalidate autocomplete="off" {onsubmit}>
<input type="password" class="immich-form-input mr-2" placeholder={$t('password')} bind:value={password} />
<Button type="submit">{$t('submit')}</Button>
</form>