immich/web/src/lib/components/asset-viewer
Dag Stuan bd70824961
fix(web): more refactoring and tweaking of the memory viewer. (#19214)
* Fix fade in for video-native-viewer.

The previous implementation never actually faded in the video element.
Fix this by ensuring the video element is only added to the DOM after
mounting, so Svelte can handle the fade-in transition correctly.

* Refactor asset viewing in memory page.

Split photo and video viewing into separate components to ensure they
work similarly to the assets viewer. The previous implementation faded
out the assets, while the assets-viewer only fades assets in. For
images, add a spinner while waiting for the image to load, before adding
the image to the DOM. For videos, add the video to the DOM after
mounting the component. In both cases, the assets fade in smoothly, like
the regular assets viewer.

* fix: styling

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2025-06-17 14:09:34 +00:00
..
actions feat(web): Change the primary asset of a stack (#18913) 2025-06-08 21:35:41 -05:00
editor chore(web): passive events (#19179) 2025-06-16 11:03:23 -04:00
face-editor ci: browser compatibility linting (#19132) 2025-06-13 10:54:59 -04:00
activity-status.svelte feat(web): display number of likes in asset viewer (#18911) 2025-06-04 12:41:50 -05:00
activity-viewer.svelte refactor: user avatar (#19121) 2025-06-11 15:08:11 -04:00
album-list-item-details.svelte chore(web): migration svelte 5 syntax (#13883) 2024-11-14 08:43:25 -06:00
album-list-item.svelte fix: z-index overuse (#18192) 2025-05-13 16:10:05 +02:00
asset-viewer-nav-bar.spec.ts feat(web): make google cast opt in (#18514) 2025-05-28 15:57:36 -05:00
asset-viewer-nav-bar.svelte feat(web): Change the primary asset of a stack (#18913) 2025-06-08 21:35:41 -05:00
asset-viewer.svelte ci: browser compatibility linting (#19132) 2025-06-13 10:54:59 -04:00
detail-panel-description.svelte chore(web): migration svelte 5 syntax (#13883) 2024-11-14 08:43:25 -06:00
detail-panel-location.svelte feat: rtl (#17860) 2025-04-28 08:53:53 -05:00
detail-panel-star-rating.svelte refactor: app init event (#17937) 2025-04-28 14:48:33 -04:00
detail-panel-tags.svelte refactor: css variables (#19146) 2025-06-12 23:06:38 +00:00
detail-panel.svelte refactor(web): tree data structure for folder and tag views (#18980) 2025-06-09 10:02:16 -05:00
download-panel.svelte chore(web): migrate CircleIconButton to @immich/ui IconButton (#18486) 2025-06-02 14:47:23 +00:00
image-panorama-viewer.svelte refactor: app init event (#17937) 2025-04-28 14:48:33 -04:00
navigation-area.svelte chore(web): migration svelte 5 syntax (#13883) 2024-11-14 08:43:25 -06:00
photo-sphere-viewer-adapter.svelte chore(web): passive events (#19179) 2025-06-16 11:03:23 -04:00
photo-viewer.spec.ts feat(web): add support for casting (#18231) 2025-05-20 16:08:23 -05:00
photo-viewer.svelte chore(web): passive events (#19179) 2025-06-16 11:03:23 -04:00
slideshow-bar.svelte ci: browser compatibility linting (#19132) 2025-06-13 10:54:59 -04:00
video-native-viewer.svelte fix(web): more refactoring and tweaking of the memory viewer. (#19214) 2025-06-17 14:09:34 +00:00
video-panorama-viewer.svelte fix: z-index war in the asset viewer (#18091) 2025-05-09 10:17:26 -04:00
video-remote-viewer.svelte chore(web): migrate CircleIconButton to @immich/ui IconButton (#18486) 2025-06-02 14:47:23 +00:00
video-wrapper-viewer.svelte feat(web): use thumbhash as a cache key (#16106) 2025-02-16 03:34:13 +00:00