diff --git a/src/app/components/Icons.tsx b/src/app/components/Icons.tsx
index 42b78fce..35902cc8 100644
--- a/src/app/components/Icons.tsx
+++ b/src/app/components/Icons.tsx
@@ -20,6 +20,7 @@ export const Icons = {
recipe: ,
'tag/block': TAG,
'tag/damage_type': TAG,
+ 'tag/enchantment': TAG,
'tag/entity_type': TAG,
'tag/fluid': TAG,
'tag/game_event': TAG,
diff --git a/src/app/components/previews/RecipePreview.tsx b/src/app/components/previews/RecipePreview.tsx
index deaa0b2b..a0e9bb00 100644
--- a/src/app/components/previews/RecipePreview.tsx
+++ b/src/app/components/previews/RecipePreview.tsx
@@ -1,9 +1,10 @@
import { DataModel } from '@mcschema/core'
import { Identifier, ItemStack } from 'deepslate'
import { useEffect, useMemo, useRef, useState } from 'preact/hooks'
-import { useLocale, useVersion } from '../../contexts/index.js'
+import { useLocale } from '../../contexts/index.js'
import { useAsync } from '../../hooks/useAsync.js'
-import { fetchAllPresets } from '../../services/index.js'
+import type { VersionId } from '../../services/index.js'
+import { checkVersion, fetchAllPresets } from '../../services/index.js'
import { jsonToNbt } from '../../Utils.js'
import { Btn, BtnMenu } from '../index.js'
import { ItemDisplay } from '../ItemDisplay.jsx'
@@ -11,9 +12,8 @@ import type { PreviewProps } from './index.js'
const ANIMATION_TIME = 1000
-export const RecipePreview = ({ data }: PreviewProps) => {
+export const RecipePreview = ({ data, version }: PreviewProps) => {
const { locale } = useLocale()
- const { version } = useVersion()
const [advancedTooltips, setAdvancedTooltips] = useState(true)
const [animation, setAnimation] = useState(0)
const overlay = useRef(null)
@@ -32,7 +32,7 @@ export const RecipePreview = ({ data }: PreviewProps) => {
const recipe = DataModel.unwrapLists(data)
const state = JSON.stringify(recipe)
const items = useMemo