aboutsummaryrefslogtreecommitdiff
path: root/src/lib/minecraft/Item.svelte
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/minecraft/Item.svelte')
-rw-r--r--src/lib/minecraft/Item.svelte32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/lib/minecraft/Item.svelte b/src/lib/minecraft/Item.svelte
new file mode 100644
index 0000000..86bd8f1
--- /dev/null
+++ b/src/lib/minecraft/Item.svelte
@@ -0,0 +1,32 @@
+<script lang="ts">
+ import { formattingCodeToHtml } from '$lib/utils'
+
+ export let item: any | null
+ export let isslot = true
+ export let pack = ''
+
+ $: itemLoreHtml = item.display.lore.map(l => formattingCodeToHtml(l)).join('<br>')
+ $: itemNameHtml = formattingCodeToHtml(item.display.name)
+</script>
+
+<!-- {#if data}{/if} -->
+
+<!-- {%- macro item(data, slot=true, pack='') -%}
+ {%- if data -%}
+ {%- set itemLoreHtml -%}
+ {%- for line in data.display.lore -%}
+ {{- line|formattingCodeToHtml -}}{% if not loop.last %}<br>{% endif %}
+ {%- endfor -%}
+ {%- endset -%}
+ {%- set itemNameHtml = data.display.name|formattingCodeToHtml -%}
+ {%- endif -%}
+ <span class="item{% if slot %} item-slot{% endif %}"{% if data %} data-lore-html="{{- itemLoreHtml -}}" data-name-html="{{- itemNameHtml -}}"{% endif %}>
+ {%- if data -%}
+ {%- set imageUrl = data|itemToUrl(pack) -%}
+ {%- if imageUrl -%}
+ <img loading="lazy" src="{{ imageUrl }}" alt="{{ data.display.name|removeFormattingCode }}"{% if imageUrl|startsWith('https://mc-heads.net/head/') %} class="item-custom-head"{% endif %}>
+ {%- endif -%}
+ {%- if data.count != 1 %}<span class="item-count">{{ data.count }}</span>{% endif -%}
+ {%- endif -%}
+ </span>
+{%- endmacro -%} -->