update entity types for new api format

- remove links property, use wiki/gamewith/kamigame at top level
- add seriesNames to Character
This commit is contained in:
Justin Edmund 2025-12-15 12:48:16 -08:00
parent 6ba89dc216
commit 34c3dd6aa6
2 changed files with 34 additions and 29 deletions

View file

@ -98,12 +98,6 @@ export interface Weapon {
en?: string[] en?: string[]
ja?: string[] ja?: string[]
} }
links?: {
wikiEn?: string
wikiJa?: string
gamewith?: string
kamigame?: string
}
recruits?: { recruits?: {
id: string id: string
granblueId: string granblueId: string
@ -128,7 +122,7 @@ export interface Weapon {
export interface Character { export interface Character {
id: string id: string
granblueId: string granblueId: string
characterId?: number characterId?: number[]
name: { name: {
en?: string en?: string
ja?: string ja?: string
@ -148,17 +142,24 @@ export interface Character {
series?: CharacterSeriesRef[] | number[] series?: CharacterSeriesRef[] | number[]
/** Human-readable series names */ /** Human-readable series names */
seriesNames?: string[] seriesNames?: string[]
/** Whether character can be pulled from gacha */
gachaAvailable?: boolean
hp?: { hp?: {
minHp?: number minHp?: number
maxHp?: number maxHp?: number
maxHpFlb?: number maxHpFlb?: number
maxHpUlb?: number
} }
atk?: { atk?: {
minAtk?: number minAtk?: number
maxAtk?: number maxAtk?: number
maxAtkFlb?: number maxAtkFlb?: number
maxAtkUlb?: number
}
// Other stats
baseDa?: number
baseTa?: number
ougiRatio?: {
ougiRatio?: number
ougiRatioFlb?: number
} }
uncap?: { uncap?: {
flb?: boolean flb?: boolean
@ -175,12 +176,6 @@ export interface Character {
en?: string[] en?: string[]
ja?: string[] ja?: string[]
} }
links?: {
wikiEn?: string
wikiJa?: string
gamewith?: string
kamigame?: string
}
/** Weapon that recruits this character (reverse of Weapon.recruits) */ /** Weapon that recruits this character (reverse of Weapon.recruits) */
recruitedBy?: { recruitedBy?: {
id: string id: string
@ -287,12 +282,6 @@ export interface Summon {
en?: string[] en?: string[]
ja?: string[] ja?: string[]
} }
links?: {
wikiEn?: string
wikiJa?: string
gamewith?: string
kamigame?: string
}
// Date fields // Date fields
releaseDate?: string releaseDate?: string
flbDate?: string flbDate?: string

View file

@ -2,6 +2,7 @@
// These are the base types for game objects // These are the base types for game objects
import type { WeaponSeriesRef } from './weaponSeries' import type { WeaponSeriesRef } from './weaponSeries'
import type { CharacterSeriesRef } from './characterSeries'
export interface LocalizedName { export interface LocalizedName {
en: string en: string
@ -80,19 +81,33 @@ export interface Character {
race2: number race2: number
} }
proficiency: number[] proficiency: number[]
hp: { hp?: {
minHp: number minHp?: number
maxHp: number maxHp?: number
maxHpFlb: number maxHpFlb?: number
maxHpUlb?: number
} }
atk: { atk?: {
minAtk: number minAtk?: number
maxAtk: number maxAtk?: number
maxAtkFlb: number maxAtkFlb?: number
maxAtkUlb?: number
}
// Other stats
baseDa?: number
baseTa?: number
ougiRatio?: {
ougiRatio?: number
ougiRatioFlb?: number
} }
// Available awakenings for this character (from :full view) // Available awakenings for this character (from :full view)
awakenings?: Awakening[] awakenings?: Awakening[]
// Database/admin fields // Database/admin fields
characterId?: number[]
season?: number
series?: number[] | CharacterSeriesRef[]
/** Human-readable series names (computed by API) */
seriesNames?: string[]
releaseDate?: string releaseDate?: string
flbDate?: string flbDate?: string
ulbDate?: string ulbDate?: string
@ -100,6 +115,7 @@ export interface Character {
gamewith?: string gamewith?: string
kamigame?: string kamigame?: string
nicknames?: { en?: string[]; ja?: string[] } nicknames?: { en?: string[]; ja?: string[] }
recruitedBy?: { id: string; granblueId: string; name: LocalizedName; promotionNames?: string[] }
} }
// Summon entity from SummonBlueprint // Summon entity from SummonBlueprint