diff options
| author | Fuwn <[email protected]> | 2023-12-28 20:17:05 -0800 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2023-12-28 20:17:45 -0800 |
| commit | da50f756d90da9fa66c60d4aec97c751bb2d2ff5 (patch) | |
| tree | d16db9f2c50036449d434c65ff2ece6cd52f0923 /src/lib/Media | |
| parent | feat(hovercover): default image width (diff) | |
| download | due.moe-da50f756d90da9fa66c60d4aec97c751bb2d2ff5.tar.xz due.moe-da50f756d90da9fa66c60d4aec97c751bb2d2ff5.zip | |
feat(hovercover): allow for no subs
Diffstat (limited to 'src/lib/Media')
| -rw-r--r-- | src/lib/Media/HoverCover.svelte | 5 | ||||
| -rw-r--r-- | src/lib/Media/hoverCover.ts | 7 |
2 files changed, 7 insertions, 5 deletions
diff --git a/src/lib/Media/HoverCover.svelte b/src/lib/Media/HoverCover.svelte index a3aea9d6..d4009bec 100644 --- a/src/lib/Media/HoverCover.svelte +++ b/src/lib/Media/HoverCover.svelte @@ -2,17 +2,18 @@ import type { Media } from '$lib/AniList/media'; import type { SubsPleaseEpisode } from './Anime/Airing/Subtitled/subsPlease'; + export let hovering = false; export let hoveredItem: SubsPleaseEpisode | null = null; export let hoveredMedia: Media | null = null; export let imageStyle = ''; </script> -{#if hoveredItem} +{#if hovering} <img class="hover-image show" src={hoveredMedia ? hoveredMedia.coverImage.extraLarge - : `https://subsplease.org${hoveredItem.image_url}`} + : `https://subsplease.org${hoveredItem?.image_url}`} alt="Media Cover" style={imageStyle} /> diff --git a/src/lib/Media/hoverCover.ts b/src/lib/Media/hoverCover.ts index 944ac605..29d2df46 100644 --- a/src/lib/Media/hoverCover.ts +++ b/src/lib/Media/hoverCover.ts @@ -2,16 +2,17 @@ import type { Media } from '$lib/AniList/media'; import type { SubsPleaseEpisode } from './Anime/Airing/Subtitled/subsPlease'; interface OnMouseEnterLeave { + hovering: boolean; item: SubsPleaseEpisode | null; media: Media | null; } -export const onMouseEnter = (item: SubsPleaseEpisode, media: Media | null) => { - return { item, media } as OnMouseEnterLeave; +export const onMouseEnter = (media: Media | null, item: SubsPleaseEpisode | null = null) => { + return { hovering: true, item, media } as OnMouseEnterLeave; }; export const onMouseLeave = () => { - return { item: null, media: null } as OnMouseEnterLeave; + return { hovering: false, item: null, media: null } as OnMouseEnterLeave; }; interface OnMouseMove { |