diff --git a/web/src/lib/services/asset.service.ts b/web/src/lib/services/asset.service.ts index c8614186fd..76ac0b7fc0 100644 --- a/web/src/lib/services/asset.service.ts +++ b/web/src/lib/services/asset.service.ts @@ -8,17 +8,16 @@ import SharedLinkCreateModal from '$lib/modals/SharedLinkCreateModal.svelte'; import { isFaceEditMode } from '$lib/stores/face-edit.svelte'; import { user as authUser, preferences } from '$lib/stores/user.store'; import type { AssetControlContext } from '$lib/types'; -import { getSharedLink, sleep } from '$lib/utils'; +import { getAssetMediaUrl, getSharedLink, sleep } from '$lib/utils'; import { downloadUrl } from '$lib/utils/asset-utils'; import { handleError } from '$lib/utils/handle-error'; import { getFormatter } from '$lib/utils/i18n'; -import { asQueryString } from '$lib/utils/shared-links'; import { AssetJobName, + AssetMediaSize, AssetTypeEnum, AssetVisibility, getAssetInfo, - getBaseUrl, runAssetJobs, updateAsset, type AssetJobsDto, @@ -308,6 +307,7 @@ export const handleDownloadAsset = async (asset: AssetResponseDto, { edited }: { { filename: asset.originalFileName, id: asset.id, + cacheKey: asset.thumbhash, }, ]; @@ -321,13 +321,12 @@ export const handleDownloadAsset = async (asset: AssetResponseDto, { edited }: { assets.push({ filename: motionAsset.originalFileName, id: asset.livePhotoVideoId, + cacheKey: motionAsset.thumbhash, }); } } - const queryParams = asQueryString(authManager.params); - - for (const [i, { filename, id }] of assets.entries()) { + for (const [i, { filename, id, cacheKey }] of assets.entries()) { if (i !== 0) { // play nice with Safari await sleep(500); @@ -335,12 +334,7 @@ export const handleDownloadAsset = async (asset: AssetResponseDto, { edited }: { try { toastManager.primary($t('downloading_asset_filename', { values: { filename } })); - downloadUrl( - getBaseUrl() + - `/assets/${id}/original` + - (queryParams ? `?${queryParams}&edited=${edited}` : `?edited=${edited}`), - filename, - ); + downloadUrl(getAssetMediaUrl({ id, size: AssetMediaSize.Original, edited, cacheKey }), filename); } catch (error) { handleError(error, $t('errors.error_downloading', { values: { filename } })); }