aboutsummaryrefslogtreecommitdiff
path: root/src/lib/List
diff options
context:
space:
mode:
authorFuwn <[email protected]>2024-02-02 04:12:16 -0800
committerFuwn <[email protected]>2024-02-02 04:12:16 -0800
commit4319f04d15fea1ec610cde51648709ae3d77248b (patch)
tree8cc3382eded31482e6d22792e4a1068465eaf6ca /src/lib/List
parentfix(schedule): use non-custom cover width (diff)
downloaddue.moe-4319f04d15fea1ec610cde51648709ae3d77248b.tar.xz
due.moe-4319f04d15fea1ec610cde51648709ae3d77248b.zip
feat(schedule): shorten long titles
Diffstat (limited to 'src/lib/List')
-rw-r--r--src/lib/List/MediaTitleDisplay.svelte39
1 files changed, 30 insertions, 9 deletions
diff --git a/src/lib/List/MediaTitleDisplay.svelte b/src/lib/List/MediaTitleDisplay.svelte
index 118d9b2c..5463d009 100644
--- a/src/lib/List/MediaTitleDisplay.svelte
+++ b/src/lib/List/MediaTitleDisplay.svelte
@@ -1,32 +1,53 @@
<script lang="ts">
import type { MediaTitle } from '$lib/AniList/media';
+ import * as tooltipper from '$lib/Tooltip/tooltip';
+ import { abbreviate as abbreviated } from '$lib/Utility/string';
import settings from '$stores/settings';
import * as wanakana from 'wanakana';
export let title: MediaTitle;
+ export let abbreviate = false;
+ export let abbreviateTo = 20;
+ export let tooltip = false;
</script>
{#if $settings.displayTitleFormat === 'native'}
{#if $settings.displayFurigana}
- <span title={title.english || title.romaji || title.native}>
+ <span
+ title={title.english || title.romaji || title.native}
+ use:tooltipper.default
+ data-tooltip-disable={tooltip}
+ >
<ruby>
- {title.native}
+ {abbreviate ? abbreviated(title.native, abbreviateTo) : title.native}
<rt>
- {wanakana.toKana(title.romaji)}
+ {abbreviate
+ ? abbreviated(wanakana.toKana(title.native), abbreviateTo)
+ : wanakana.toKana(title.native)}
</rt>
</ruby>
</span>
{:else}
- <span title={title.english || title.romaji || title.native}>
- {title.native}
+ <span
+ title={title.english || title.romaji || title.native}
+ use:tooltipper.default
+ data-tooltip-disable={tooltip}
+ >
+ {abbreviate ? abbreviated(title.native, abbreviateTo) : title.native}
</span>
{/if}
{:else if $settings.displayTitleFormat === 'romaji'}
- <span title={title.english || title.romaji || title.native}>
- {title.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}>
- {title.english || title.romaji || title.native}
+ <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}