update search and party schemas for weapon series objects
This commit is contained in:
parent
23a2481190
commit
c5f6963ca7
3 changed files with 20 additions and 4 deletions
|
|
@ -50,8 +50,8 @@ export interface SearchResult {
|
||||||
rarity?: number
|
rarity?: number
|
||||||
/** Weapon/Character proficiency */
|
/** Weapon/Character proficiency */
|
||||||
proficiency?: number
|
proficiency?: number
|
||||||
/** Series ID for categorization */
|
/** Series - object for weapons (WeaponSeriesRef), number array for characters */
|
||||||
series?: number
|
series?: { id: string; slug: string; name: { en: string; ja: string } } | number[]
|
||||||
/** URL for entity image */
|
/** URL for entity image */
|
||||||
imageUrl?: string
|
imageUrl?: string
|
||||||
/** Type of entity (lowercase for compatibility) */
|
/** Type of entity (lowercase for compatibility) */
|
||||||
|
|
|
||||||
|
|
@ -40,7 +40,8 @@ export interface SearchPageResult {
|
||||||
element?: number
|
element?: number
|
||||||
rarity?: number
|
rarity?: number
|
||||||
proficiency?: number
|
proficiency?: number
|
||||||
series?: number
|
/** Series - object for weapons, number array for characters */
|
||||||
|
series?: { id: string; slug: string; name: { en: string; ja: string } } | number[]
|
||||||
imageUrl?: string
|
imageUrl?: string
|
||||||
searchableType: 'Weapon' | 'Character' | 'Summon'
|
searchableType: 'Weapon' | 'Character' | 'Summon'
|
||||||
}>
|
}>
|
||||||
|
|
|
||||||
|
|
@ -186,6 +186,21 @@ const JobAccessorySchema = z.object({
|
||||||
slug: z.string()
|
slug: z.string()
|
||||||
})
|
})
|
||||||
|
|
||||||
|
// Weapon series reference schema (embedded in weapon)
|
||||||
|
const WeaponSeriesRefSchema = z.object({
|
||||||
|
id: z.string(),
|
||||||
|
slug: z.string(),
|
||||||
|
name: z.object({
|
||||||
|
en: z.string(),
|
||||||
|
ja: z.string()
|
||||||
|
}),
|
||||||
|
has_weapon_keys: z.boolean().optional(),
|
||||||
|
has_awakening: z.boolean().optional(),
|
||||||
|
has_ax_skills: z.boolean().optional(),
|
||||||
|
extra: z.boolean().optional(),
|
||||||
|
element_changeable: z.boolean().optional()
|
||||||
|
})
|
||||||
|
|
||||||
// Item schemas
|
// Item schemas
|
||||||
const WeaponSchema = z.object({
|
const WeaponSchema = z.object({
|
||||||
id: z.string(),
|
id: z.string(),
|
||||||
|
|
@ -199,7 +214,7 @@ const WeaponSchema = z.object({
|
||||||
rarity: z.number().nullish(),
|
rarity: z.number().nullish(),
|
||||||
max_level: z.number().nullish(),
|
max_level: z.number().nullish(),
|
||||||
max_skill_level: z.number().nullish(),
|
max_skill_level: z.number().nullish(),
|
||||||
series: z.number().nullish(),
|
series: WeaponSeriesRefSchema.nullish(),
|
||||||
icon_url: z.string().nullish(),
|
icon_url: z.string().nullish(),
|
||||||
square_url: z.string().nullish()
|
square_url: z.string().nullish()
|
||||||
})
|
})
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue