From a3c5676c4c3a21e4dc862941cfa9281a6e86f950 Mon Sep 17 00:00:00 2001 From: Justin Edmund Date: Sat, 13 Dec 2025 14:55:40 -0800 Subject: [PATCH] add missing type props: dates, wiki links, editKey, gw stats --- src/lib/api/adapters/entity.adapter.ts | 29 ++++++++++++++++++++++ src/lib/types/api/entities.ts | 33 ++++++++++++++++++++++++++ src/lib/types/api/gw.ts | 8 +++++++ src/lib/types/api/party.ts | 1 + 4 files changed, 71 insertions(+) diff --git a/src/lib/api/adapters/entity.adapter.ts b/src/lib/api/adapters/entity.adapter.ts index 2a1ebd93..6e8a8d5e 100644 --- a/src/lib/api/adapters/entity.adapter.ts +++ b/src/lib/api/adapters/entity.adapter.ts @@ -66,6 +66,12 @@ export interface Weapon { transcendence?: boolean } maxLevel?: number + maxSkillLevel?: number + maxAwakeningLevel?: number + limit?: number + extra?: boolean + ax?: boolean + axType?: number skillLevelCap?: number weapon_skills?: Array<{ name?: string @@ -94,6 +100,14 @@ export interface Weapon { ja?: string } } + // Date fields + releaseDate?: string + flbDate?: string + ulbDate?: string + transcendenceDate?: string + wiki?: { en?: string; ja?: string } + gamewith?: string + kamigame?: string } /** @@ -166,6 +180,13 @@ export interface Character { promotions: number[] promotionNames: string[] } + // Date fields + releaseDate?: string + flbDate?: string + ulbDate?: string + wiki?: { en?: string; ja?: string } + gamewith?: string + kamigame?: string } /** @@ -259,6 +280,14 @@ export interface Summon { gamewith?: string kamigame?: string } + // Date fields + releaseDate?: string + flbDate?: string + ulbDate?: string + transcendenceDate?: string + wiki?: { en?: string; ja?: string } + gamewith?: string + kamigame?: string } /** diff --git a/src/lib/types/api/entities.ts b/src/lib/types/api/entities.ts index 3110834c..982565de 100644 --- a/src/lib/types/api/entities.ts +++ b/src/lib/types/api/entities.ts @@ -23,6 +23,8 @@ export interface Weapon { series: WeaponSeriesRef | null ax: boolean axType: number + limit?: number + extra?: boolean hp: { minHp: number maxHp: number @@ -40,8 +42,20 @@ export interface Weapon { ulb: boolean transcendence: boolean } + transcendenceHp?: number + transcendenceAtk?: number // Available awakenings for this weapon (from :full view) awakenings?: Awakening[] + // Database/admin fields + releaseDate?: string + flbDate?: string + ulbDate?: string + transcendenceDate?: string + wiki?: { en?: string; ja?: string } + gamewith?: string + kamigame?: string + nicknames?: { en?: string[]; ja?: string[] } + recruits?: string | { id: string; granblueId: string; name: LocalizedName } } // Character entity from CharacterBlueprint @@ -78,6 +92,14 @@ export interface Character { } // Available awakenings for this character (from :full view) awakenings?: Awakening[] + // Database/admin fields + releaseDate?: string + flbDate?: string + ulbDate?: string + wiki?: { en?: string; ja?: string } + gamewith?: string + kamigame?: string + nicknames?: { en?: string[]; ja?: string[] } } // Summon entity from SummonBlueprint @@ -106,6 +128,17 @@ export interface Summon { maxAtkFlb: number maxAtkUlb: number } + transcendenceHp?: number + transcendenceAtk?: number + // Database/admin fields + releaseDate?: string + flbDate?: string + ulbDate?: string + transcendenceDate?: string + wiki?: { en?: string; ja?: string } + gamewith?: string + kamigame?: string + nicknames?: { en?: string[]; ja?: string[] } } // Raw data response from separate /raw endpoint diff --git a/src/lib/types/api/gw.ts b/src/lib/types/api/gw.ts index 9916214d..85b9e966 100644 --- a/src/lib/types/api/gw.ts +++ b/src/lib/types/api/gw.ts @@ -19,6 +19,9 @@ export const GW_ROUND_LABELS: Record = { 5: 'Finals Day 4' } +// GwEvent status +export type GwEventStatus = 'upcoming' | 'active' | 'completed' + // GwEvent from GwEventBlueprint export interface GwEvent { id: string @@ -26,6 +29,7 @@ export interface GwEvent { startDate: string endDate: string eventNumber: number // GW #XX + status?: GwEventStatus createdAt?: string updatedAt?: string } @@ -35,6 +39,10 @@ export interface CrewGwParticipation { id: string preliminaryRanking: number | null finalRanking: number | null + // Aggregated stats + totalScore?: number + wins?: number + losses?: number createdAt?: string // From :with_event view gwEvent?: GwEvent diff --git a/src/lib/types/api/party.ts b/src/lib/types/api/party.ts index e283e5a9..2f5e79e7 100644 --- a/src/lib/types/api/party.ts +++ b/src/lib/types/api/party.ts @@ -112,6 +112,7 @@ export interface Party { favorited?: boolean extra?: boolean remix?: boolean + editKey?: string // Relationships weapons: GridWeapon[]