refactor: album service (#23768)

This commit is contained in:
Jason Rasmussen
2025-11-10 13:40:58 -05:00
committed by GitHub
parent d27c01ef70
commit 8de6ec1a1b
9 changed files with 114 additions and 107 deletions

View File

@@ -1,6 +1,6 @@
<script lang="ts">
import SharedLinkCopy from '$lib/components/sharedlinks-page/actions/shared-link-copy.svelte';
import { handleViewSharedLinkQrCode } from '$lib/services/shared-link.service';
import { handleShowSharedLinkQrCode } from '$lib/services/shared-link.service';
import { locale } from '$lib/stores/preferences.store';
import type { AlbumResponseDto, SharedLinkResponseDto } from '@immich/sdk';
import { IconButton, Text } from '@immich/ui';
@@ -46,7 +46,7 @@
color="secondary"
variant="ghost"
icon={mdiQrcode}
onclick={() => handleViewSharedLinkQrCode(sharedLink)}
onclick={() => handleShowSharedLinkQrCode(sharedLink)}
/>
<SharedLinkCopy {sharedLink} />
</div>

View File

@@ -11,7 +11,6 @@
import AlbumShareModal from '$lib/modals/AlbumShareModal.svelte';
import SharedLinkCreateModal from '$lib/modals/SharedLinkCreateModal.svelte';
import { handleConfirmAlbumDelete, handleDownloadAlbum } from '$lib/services/album.service';
import { handleViewSharedLinkQrCode } from '$lib/services/shared-link.service';
import {
AlbumFilter,
AlbumGroupBy,
@@ -255,10 +254,11 @@
}
case 'sharedLink': {
const sharedLink = await modalManager.show(SharedLinkCreateModal, { albumId: selectedAlbum.id });
if (sharedLink) {
handleSharedLinkCreated(selectedAlbum);
await handleViewSharedLinkQrCode(sharedLink);
const success = await modalManager.show(SharedLinkCreateModal, { albumId: selectedAlbum.id });
if (success) {
selectedAlbum.shared = true;
selectedAlbum.hasSharedLink = true;
updateAlbumInfo(selectedAlbum);
}
break;
}
@@ -346,12 +346,6 @@
albumToShare = null;
}
};
const handleSharedLinkCreated = (album: AlbumResponseDto) => {
album.shared = true;
album.hasSharedLink = true;
updateAlbumInfo(album);
};
</script>
{#if albums.length > 0}

View File

@@ -1,6 +1,5 @@
<script lang="ts">
import SharedLinkCreateModal from '$lib/modals/SharedLinkCreateModal.svelte';
import { handleViewSharedLinkQrCode } from '$lib/services/shared-link.service';
import type { AssetResponseDto } from '@immich/sdk';
import { IconButton, modalManager } from '@immich/ui';
import { mdiShareVariantOutline } from '@mdi/js';
@@ -13,10 +12,7 @@
let { asset }: Props = $props();
const handleClick = async () => {
const sharedLink = await modalManager.show(SharedLinkCreateModal, { assetIds: [asset.id] });
if (sharedLink) {
await handleViewSharedLinkQrCode(sharedLink);
}
await modalManager.show(SharedLinkCreateModal, { assetIds: [asset.id] });
};
</script>

View File

@@ -1,7 +1,6 @@
<script lang="ts">
import { getAssetControlContext } from '$lib/components/timeline/AssetSelectControlBar.svelte';
import SharedLinkCreateModal from '$lib/modals/SharedLinkCreateModal.svelte';
import { handleViewSharedLinkQrCode } from '$lib/services/shared-link.service';
import { IconButton, modalManager } from '@immich/ui';
import { mdiShareVariantOutline } from '@mdi/js';
import { t } from 'svelte-i18n';
@@ -9,13 +8,7 @@
const { getAssets } = getAssetControlContext();
const handleClick = async () => {
const sharedLink = await modalManager.show(SharedLinkCreateModal, {
assetIds: [...getAssets()].map(({ id }) => id),
});
if (sharedLink) {
await handleViewSharedLinkQrCode(sharedLink);
}
await modalManager.show(SharedLinkCreateModal, { assetIds: [...getAssets()].map(({ id }) => id) });
};
</script>