Add nullable region field to evolutions for regional form filtering

Regional evolutions (e.g., Pikachu → Alolan Raichu) only occur in specific
regions. This adds a nullable region column so the app can filter evolutions
by the game's region. When a regional evolution exists for a given trigger/item,
the non-regional counterpart is automatically hidden.

Full-stack: migration, model, schemas, API with region query param, seeder,
Go fetch tool, frontend types/API/hook/components, and admin form.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-07 20:05:07 +01:00
parent 23a7b6ad53
commit a65efa22da
17 changed files with 147 additions and 11 deletions

View File

@@ -28,6 +28,7 @@ class EvolutionResponse(CamelModel):
item: str | None
held_item: str | None
condition: str | None
region: str | None
class RouteEncounterResponse(CamelModel):
@@ -106,6 +107,7 @@ class EvolutionAdminResponse(CamelModel):
item: str | None
held_item: str | None
condition: str | None
region: str | None
class PaginatedEvolutionResponse(CamelModel):
@@ -123,6 +125,7 @@ class EvolutionCreate(CamelModel):
item: str | None = None
held_item: str | None = None
condition: str | None = None
region: str | None = None
class EvolutionUpdate(CamelModel):
@@ -133,3 +136,4 @@ class EvolutionUpdate(CamelModel):
item: str | None = None
held_item: str | None = None
condition: str | None = None
region: str | None = None