1
0
mirror of https://github.com/immich-app/immich.git synced 2025-06-26 05:01:05 +02:00
Files
immich/web/src/lib/components/asset-viewer/video-wrapper-viewer.svelte

46 lines
1.1 KiB
Svelte
Raw Normal View History

<script lang="ts">
import { AssetTypeEnum } from '@immich/sdk';
import { ProjectionType } from '$lib/constants';
import VideoNativeViewer from '$lib/components/asset-viewer/video-native-viewer.svelte';
import PanoramaViewer from '$lib/components/asset-viewer/panorama-viewer.svelte';
interface Props {
assetId: string;
projectionType: string | null | undefined;
checksum: string;
loopVideo: boolean;
onClose?: () => void;
onPreviousAsset?: () => void;
onNextAsset?: () => void;
onVideoEnded?: () => void;
onVideoStarted?: () => void;
}
let {
assetId,
projectionType,
checksum,
loopVideo,
onPreviousAsset,
onClose,
onNextAsset,
onVideoEnded,
onVideoStarted,
}: Props = $props();
</script>
{#if projectionType === ProjectionType.EQUIRECTANGULAR}
<PanoramaViewer asset={{ id: assetId, type: AssetTypeEnum.Video }} />
{:else}
2024-09-21 00:24:46 +02:00
<VideoNativeViewer
{loopVideo}
{checksum}
{assetId}
{onPreviousAsset}
{onNextAsset}
{onVideoEnded}
{onVideoStarted}
{onClose}
2024-09-21 00:24:46 +02:00
/>
{/if}