diff options
| author | Fuwn <[email protected]> | 2024-08-23 14:36:23 -0700 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2024-08-23 14:36:23 -0700 |
| commit | 74a8128d8555040d111d3be66afb9f17190a6d6f (patch) | |
| tree | 6490963a36806d69f7c7bbbf60fa432db05dd010 /src/lib/List | |
| parent | fix(SequelCatcher): allow toggling current (diff) | |
| download | due.moe-74a8128d8555040d111d3be66afb9f17190a6d6f.tar.xz due.moe-74a8128d8555040d111d3be66afb9f17190a6d6f.zip | |
fix(SequelCatcher): tooltips
Diffstat (limited to 'src/lib/List')
| -rw-r--r-- | src/lib/List/MediaTitleDisplay.svelte | 101 |
1 files changed, 58 insertions, 43 deletions
diff --git a/src/lib/List/MediaTitleDisplay.svelte b/src/lib/List/MediaTitleDisplay.svelte index 932e5c1e..edf41120 100644 --- a/src/lib/List/MediaTitleDisplay.svelte +++ b/src/lib/List/MediaTitleDisplay.svelte @@ -1,8 +1,9 @@ <script lang="ts"> import type { MediaTitle } from '$lib/Data/AniList/media'; - import * as tooltipper from '$lib/Tooltip/tooltip'; + import LinkedTooltip from '$lib/Tooltip/LinkedTooltip.svelte'; import { abbreviate as abbreviated } from '$lib/Utility/string'; import settings from '$stores/settings'; + import { compressToBase64 } from 'lz-string'; import * as wanakana from 'wanakana'; export let title: MediaTitle; @@ -11,50 +12,64 @@ export let tooltip = false; </script> -{#if $settings.displayTitleFormat === 'native'} - {#if $settings.displayFurigana} - {@const kana = abbreviate - ? abbreviated(wanakana.toKana(title.native), abbreviateTo) - : wanakana.toKana(title.native)} - {@const native = abbreviate ? abbreviated(title.native, abbreviateTo) : title.native} +<span id={`title-display-${compressToBase64(title.native)}`}> + {#if $settings.displayTitleFormat === 'native'} + {#if $settings.displayFurigana} + {@const kana = abbreviate + ? abbreviated(wanakana.toKana(title.native), abbreviateTo) + : wanakana.toKana(title.native)} + {@const native = abbreviate ? abbreviated(title.native, abbreviateTo) : title.native} - <span - title={title.english || title.romaji || title.native} - use:tooltipper.default - data-tooltip-disable={!tooltip} - > - {#if kana === native} - {native} - {:else} - <ruby> + <LinkedTooltip + content={title.english || title.romaji || title.native} + disable={tooltip} + pin={`title-display-${compressToBase64(title.native)}`} + relative + ignoreAnchorStyling + > + {#if kana === native} {native} - <rt> - {kana} - </rt> - </ruby> - {/if} - </span> + {:else} + <ruby> + {native} + <rt> + {kana} + </rt> + </ruby> + {/if} + </LinkedTooltip> + {:else} + <LinkedTooltip + content={title.english || title.romaji || title.native} + disable={tooltip} + pin={`title-display-${compressToBase64(title.native)}`} + relative + ignoreAnchorStyling + > + {abbreviate ? abbreviated(title.native, abbreviateTo) : title.native} + </LinkedTooltip> + {/if} + {:else if $settings.displayTitleFormat === 'romaji'} + <LinkedTooltip + content={title.english || title.romaji || title.native} + disable={tooltip} + pin={`title-display-${compressToBase64(title.native)}`} + relative + ignoreAnchorStyling + > + {abbreviate ? abbreviated(title.romaji, abbreviateTo) : title.romaji} + </LinkedTooltip> {:else} - <span - title={title.english || title.romaji || title.native} - use:tooltipper.default - data-tooltip-disable={!tooltip} + <LinkedTooltip + content={title.romaji || title.native} + disable={tooltip} + pin={`title-display-${compressToBase64(title.native)}`} + relative + ignoreAnchorStyling > - {abbreviate ? abbreviated(title.native, abbreviateTo) : title.native} - </span> + {abbreviate + ? abbreviated(title.english || title.romaji || title.native, abbreviateTo) + : title.english || title.romaji || title.native} + </LinkedTooltip> {/if} -{:else if $settings.displayTitleFormat === 'romaji'} - <span - title={title.english || title.romaji || title.native} - use:tooltipper.default - data-tooltip-disable={!tooltip} - > - {abbreviate ? abbreviated(title.romaji, abbreviateTo) : title.romaji} - </span> -{:else} - <span title={title.romaji || title.native} use:tooltipper.default data-tooltip-disable={!tooltip}> - {abbreviate - ? abbreviated(title.english || title.romaji || title.native, abbreviateTo) - : title.english || title.romaji || title.native} - </span> -{/if} +</span> |