aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/lib/User/BadgeWall/Badges.svelte5
-rw-r--r--src/lib/User/BadgeWall/FallbackBadge.svelte5
-rw-r--r--src/lib/User/BadgeWall/badge.ts13
3 files changed, 16 insertions, 7 deletions
diff --git a/src/lib/User/BadgeWall/Badges.svelte b/src/lib/User/BadgeWall/Badges.svelte
index 2821ae15..4a73b06c 100644
--- a/src/lib/User/BadgeWall/Badges.svelte
+++ b/src/lib/User/BadgeWall/Badges.svelte
@@ -63,11 +63,6 @@
if (hiddenInput instanceof HTMLInputElement)
hiddenInput.value = badge.hidden ? 'Hidden' : 'Shown';
}}
- title={`${dev ? `${badge.id}\n` : ''}${
- badge.time ? $locale().dateFormatter(databaseTimeToDate(badge.time)) : ''
- }${badge.description ? `, ${badge.description}` : ''}${
- badge.designer ? `\nDesigner: ${badge.designer}` : ''
- }${badge.source ? `\nSource: ${badge.source}` : ''}`}
>
<FallbackImage
source={cdn(thumbnail(badge.image))}
diff --git a/src/lib/User/BadgeWall/FallbackBadge.svelte b/src/lib/User/BadgeWall/FallbackBadge.svelte
index 829cb71b..8317b2e0 100644
--- a/src/lib/User/BadgeWall/FallbackBadge.svelte
+++ b/src/lib/User/BadgeWall/FallbackBadge.svelte
@@ -1,4 +1,5 @@
<script lang="ts">
+ import { classifyDesignerName } from './badge';
import locale from '$stores/locale';
import { tweened } from 'svelte/motion';
import type { Badge } from '../../Database/userBadges';
@@ -67,8 +68,8 @@
content={`${dev && !awc ? `${badge.id}\n` : ''}${
badge.time ? $locale().dateFormatter(databaseTimeToDate(badge.time)) : ''
}${badge.description ? `${awc ? '' : '\n'}${badge.description}` : ''}${
- badge.designer ? `\nDesigner: ${badge.designer}` : ''
- }${badge.source ? `\nSource: ${badge.source}` : ''}`}
+ badge.designer ? `\nDesigner: ${classifyDesignerName(badge.designer)}` : ''
+ }`}
pin={`badge-${awc ? index : badge.id}`}
pinPosition="top"
relative
diff --git a/src/lib/User/BadgeWall/badge.ts b/src/lib/User/BadgeWall/badge.ts
index 7e6b7254..fb02f3c5 100644
--- a/src/lib/User/BadgeWall/badge.ts
+++ b/src/lib/User/BadgeWall/badge.ts
@@ -3,3 +3,16 @@ import type { Badge } from '$lib/Database/userBadges';
export interface IndexedBadge extends Badge {
index: number;
}
+
+export const classifyDesignerName = (designer: string) => {
+ let name = designer;
+ const anilistUser = designer.match(/https?:\/\/anilist\.co\/user\/([^/]+)\/?/);
+
+ if (anilistUser) {
+ name = `@${anilistUser[1]}`;
+ } else if (!designer.toLowerCase().startsWith('@')) {
+ name = `@${designer}`;
+ }
+
+ return name;
+};