18 lines
443 B
Svelte
18 lines
443 B
Svelte
<script lang="ts">
|
|
import { MISSING_ITEM_ICON_URL } from '$lib/item-icons';
|
|
|
|
let {
|
|
src = '',
|
|
alt = '',
|
|
className = ''
|
|
}: {
|
|
src?: string | null;
|
|
alt?: string;
|
|
className?: string;
|
|
} = $props();
|
|
|
|
const resolvedAlt = $derived(src || !alt ? alt : `${alt} — icon awaiting contribution`);
|
|
</script>
|
|
|
|
<img src={src || MISSING_ITEM_ICON_URL} alt={resolvedAlt} class:missing-item-icon={!src} class={`item-icon ${className}`.trim()}/>
|