Add optional specialty type field to boss battles

Gym leaders, Elite Four, and champions can now have a Pokemon type
specialty (e.g. Rock, Water). Shown as a type image badge on boss
cards in the run view, and editable via dropdown in the admin form.
Includes migration, export, and seed pipeline support.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-08 15:23:59 +01:00
parent 1a7476f811
commit 0e4fac8790
10 changed files with 65 additions and 1 deletions

View File

@@ -15,6 +15,7 @@ import {
RuleBadges,
ShinyBox,
ShinyEncounterModal,
TypeBadge,
} from '../components'
import { BossDefeatModal } from '../components/BossDefeatModal'
import type {
@@ -1097,6 +1098,9 @@ export function RunEncounters() {
<span className="px-2 py-0.5 text-xs font-medium rounded-full bg-gray-100 dark:bg-gray-700 text-gray-600 dark:text-gray-300">
{bossTypeLabel[boss.bossType] ?? boss.bossType}
</span>
{boss.specialtyType && (
<TypeBadge type={boss.specialtyType} />
)}
</div>
<p className="text-xs text-gray-500 dark:text-gray-400">
{boss.location} &middot; Level Cap: {boss.levelCap}