diff --git a/web/src/lib/components/asset-viewer/asset-viewer.svelte b/web/src/lib/components/asset-viewer/asset-viewer.svelte index e5b1377965..32894ad908 100644 --- a/web/src/lib/components/asset-viewer/asset-viewer.svelte +++ b/web/src/lib/components/asset-viewer/asset-viewer.svelte @@ -43,10 +43,10 @@ import DetailPanel from './detail-panel.svelte'; import CropArea from './editor/crop-tool/crop-area.svelte'; import EditorPanel from './editor/editor-panel.svelte'; - import PanoramaViewer from './panorama-viewer.svelte'; import PhotoViewer from './photo-viewer.svelte'; import SlideshowBar from './slideshow-bar.svelte'; import VideoViewer from './video-wrapper-viewer.svelte'; + import ImagePanoramaViewer from './image-panorama-viewer.svelte'; interface Props { assetStore?: AssetStore | null; @@ -512,7 +512,7 @@ {:else if asset.exifInfo?.projectionType === ProjectionType.EQUIRECTANGULAR || (asset.originalPath && asset.originalPath .toLowerCase() .endsWith('.insp'))} - + {:else if isShowEditor && selectedEditType === 'crop'} {:else} diff --git a/web/src/lib/components/asset-viewer/image-panorama-viewer.svelte b/web/src/lib/components/asset-viewer/image-panorama-viewer.svelte new file mode 100644 index 0000000000..6da8cc33d3 --- /dev/null +++ b/web/src/lib/components/asset-viewer/image-panorama-viewer.svelte @@ -0,0 +1,32 @@ + + +
+ {#await Promise.all([loadAssetData(asset.id), import('./photo-sphere-viewer-adapter.svelte')])} + + {:then [data, { default: PhotoSphereViewer }]} + + {:catch} + {$t('errors.failed_to_load_asset')} + {/await} +
diff --git a/web/src/lib/components/asset-viewer/panorama-viewer.svelte b/web/src/lib/components/asset-viewer/panorama-viewer.svelte deleted file mode 100644 index b17f9fdea7..0000000000 --- a/web/src/lib/components/asset-viewer/panorama-viewer.svelte +++ /dev/null @@ -1,54 +0,0 @@ - - -
- - {#await Promise.all([loadAssetData(), import('./photo-sphere-viewer-adapter.svelte'), ...photoSphereConfigs])} - - {:then [data, module, adapter, plugins, navbar]} - - {:catch} - {$t('errors.failed_to_load_asset')} - {/await} -
diff --git a/web/src/lib/components/asset-viewer/photo-sphere-viewer-adapter.svelte b/web/src/lib/components/asset-viewer/photo-sphere-viewer-adapter.svelte index c18e6bd14b..0c8f76a01e 100644 --- a/web/src/lib/components/asset-viewer/photo-sphere-viewer-adapter.svelte +++ b/web/src/lib/components/asset-viewer/photo-sphere-viewer-adapter.svelte @@ -12,7 +12,7 @@ interface Props { panorama: string | { source: string }; - originalImageUrl: string | null; + originalImageUrl?: string; adapter?: AdapterConstructor | [AdapterConstructor, unknown]; plugins?: (PluginConstructor | [PluginConstructor, unknown])[]; navbar?: boolean; diff --git a/web/src/lib/components/asset-viewer/video-panorama-viewer.svelte b/web/src/lib/components/asset-viewer/video-panorama-viewer.svelte new file mode 100644 index 0000000000..73315d661e --- /dev/null +++ b/web/src/lib/components/asset-viewer/video-panorama-viewer.svelte @@ -0,0 +1,29 @@ + + +
+ {#await modules} + + {:then [PhotoSphereViewer, adapter, videoPlugin]} + + {:catch} + {$t('errors.failed_to_load_asset')} + {/await} +
diff --git a/web/src/lib/components/asset-viewer/video-wrapper-viewer.svelte b/web/src/lib/components/asset-viewer/video-wrapper-viewer.svelte index 3ee4791b07..7ee21e59a2 100644 --- a/web/src/lib/components/asset-viewer/video-wrapper-viewer.svelte +++ b/web/src/lib/components/asset-viewer/video-wrapper-viewer.svelte @@ -1,8 +1,7 @@ {#if projectionType === ProjectionType.EQUIRECTANGULAR} - + {:else}