feat(wiki): add event item flag and decouple pokemon display ID

Add `is_event_item` to pokemon, items, and habitats.
Separate internal `id` and `display_id` for pokemon to allow event variants.
Update frontend forms and views to support the new fields.
This commit is contained in:
2026-05-03 10:11:04 +08:00
parent 4d05618530
commit 3d99f00c75
13 changed files with 191 additions and 58 deletions

View File

@@ -38,6 +38,7 @@ export const systemWordingMessages = {
inDev: 'In-Dev',
removeNamed: 'Remove {name}',
quantity: 'Quantity',
eventItem: 'Event item',
required: 'Required'
},
nav: {
@@ -133,6 +134,7 @@ export const systemWordingMessages = {
editTabAdvance: 'Advance',
newTitle: 'New Pokemon',
editTitle: 'Edit #{id} {name}',
id: 'Pokemon ID',
fetchData: 'Fetch data',
fetchingData: 'Fetching',
fetchIdentifier: 'Data identifier',
@@ -155,6 +157,7 @@ export const systemWordingMessages = {
clearImage: 'Clear image',
imageEmpty: 'No Pokemon image selected',
imageAlt: '{name} {variant} image',
eventItem: 'Event item',
loadingList: 'Loading Pokemon list',
loadingDetail: 'Loading Pokemon detail',
loadingEdit: 'Loading Pokemon editor',
@@ -221,6 +224,7 @@ export const systemWordingMessages = {
loadingList: 'Loading habitat list',
loadingDetail: 'Loading habitat detail',
loadingEdit: 'Loading habitat editor',
eventItem: 'Event item',
recipe: 'Recipe',
recipeList: 'Recipe list',
possiblePokemon: 'Possible Pokemon',
@@ -251,6 +255,7 @@ export const systemWordingMessages = {
dualDyeable: 'Dual dyeable',
patternEditable: 'Pattern editable',
noRecipe: 'No recipe',
eventItem: 'Event item',
recipeInfo: 'Recipe info',
relatedRecipes: 'Related recipes',
relatedHabitats: 'Related habitats',
@@ -686,6 +691,7 @@ export const systemWordingMessages = {
inDev: '开发中',
removeNamed: '移除{name}',
quantity: '数量',
eventItem: '活动物品',
required: '必填'
},
nav: {
@@ -781,6 +787,7 @@ export const systemWordingMessages = {
editTabAdvance: '进阶',
newTitle: '新增 Pokemon',
editTitle: '编辑 #{id} {name}',
id: 'Pokemon ID',
fetchData: '获取数据',
fetchingData: '正在获取',
fetchIdentifier: '数据标识',
@@ -803,6 +810,7 @@ export const systemWordingMessages = {
clearImage: '清除图片',
imageEmpty: '尚未选择 Pokemon 图片',
imageAlt: '{name} {variant} 图片',
eventItem: '活动物品',
loadingList: '正在加载 Pokemon 列表',
loadingDetail: '正在加载 Pokemon 详情',
loadingEdit: '正在加载 Pokemon 编辑内容',
@@ -869,6 +877,7 @@ export const systemWordingMessages = {
loadingList: '正在加载栖息地列表',
loadingDetail: '正在加载栖息地详情',
loadingEdit: '正在加载栖息地编辑内容',
eventItem: '活动物品',
recipe: '配方',
recipeList: '配方列表',
possiblePokemon: '可能出现的宝可梦',
@@ -899,6 +908,7 @@ export const systemWordingMessages = {
dualDyeable: '可双区染色',
patternEditable: '可改花纹',
noRecipe: '无材料单',
eventItem: '活动物品',
recipeInfo: '材料单信息',
relatedRecipes: '相关材料单',
relatedHabitats: '相关栖息地',