Add transformer for Job classes
This commit is contained in:
parent
fe32a49bc4
commit
f73787c23d
6 changed files with 68 additions and 9 deletions
15
transformers/JobAccessoryTransformer.tsx
Normal file
15
transformers/JobAccessoryTransformer.tsx
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
import * as Job from './JobTransformer'
|
||||
|
||||
// Transforms API response to JobAccessory object
|
||||
export function toObject(data: any): JobAccessory {
|
||||
return {
|
||||
id: data.id,
|
||||
granblueId: data.granblue_id,
|
||||
name: {
|
||||
en: data.name.en,
|
||||
ja: data.name.jp,
|
||||
},
|
||||
job: Job.toObject(data.job),
|
||||
rarity: data.rarity,
|
||||
}
|
||||
}
|
||||
20
transformers/JobSkillTransformer.tsx
Normal file
20
transformers/JobSkillTransformer.tsx
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
import * as Job from './JobTransformer'
|
||||
|
||||
// Transforms API response to JobSkill object
|
||||
export function toObject(data: any): JobSkill {
|
||||
return {
|
||||
id: data.id,
|
||||
name: {
|
||||
en: data.name.en,
|
||||
ja: data.name.jp,
|
||||
},
|
||||
job: Job.toObject(data.job),
|
||||
slug: data.slug,
|
||||
color: data.color,
|
||||
main: data.main,
|
||||
base: data.base,
|
||||
sub: data.sub,
|
||||
emp: data.emp,
|
||||
order: data.order,
|
||||
}
|
||||
}
|
||||
22
transformers/JobTransformer.tsx
Normal file
22
transformers/JobTransformer.tsx
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
// Transforms API response to Job object
|
||||
export function toObject(data: any): Job {
|
||||
return {
|
||||
id: data.id,
|
||||
granblueId: data.granblue_id,
|
||||
name: {
|
||||
en: data.name.en,
|
||||
ja: data.name.jp,
|
||||
},
|
||||
baseJob: toObject(data.base_job),
|
||||
row: data.row,
|
||||
order: data.order,
|
||||
masterLevel: data.master_level,
|
||||
ultimateMastery: data.ultimate_mastery,
|
||||
proficiency: {
|
||||
proficiency1: data.proficiency1,
|
||||
proficiency2: data.proficiency2,
|
||||
},
|
||||
accessory: data.accessory,
|
||||
accessory_type: data.accessory_type,
|
||||
}
|
||||
}
|
||||
|
|
@ -1,3 +1,5 @@
|
|||
import * as Job from './JobTransformer'
|
||||
import * as JobAccessory from './JobAccessoryTransformer'
|
||||
import * as Raid from './RaidTransformer'
|
||||
import * as User from './UserTransformer'
|
||||
|
||||
|
|
@ -22,11 +24,11 @@ export function toObject(data: any): Party {
|
|||
chainCount: data.chain_count,
|
||||
},
|
||||
protagonist: {
|
||||
job: data.job,
|
||||
job: Job.toObject(data.job),
|
||||
skills: data.job_skills,
|
||||
masterLevel: data.master_level,
|
||||
ultimateMastery: data.ultimate_mastery,
|
||||
accessory: data.accessory,
|
||||
accessory: JobAccessory.toObject(data.accessory),
|
||||
},
|
||||
social: {
|
||||
favorited: data.favorited,
|
||||
|
|
|
|||
12
types/Job.d.ts
vendored
12
types/Job.d.ts
vendored
|
|
@ -1,10 +1,7 @@
|
|||
interface Job {
|
||||
id: string
|
||||
granblue_id: string
|
||||
row: string
|
||||
master_level: boolean
|
||||
ultimate_mastery: boolean
|
||||
order: number
|
||||
granblueId: string
|
||||
baseJob?: Job
|
||||
name: {
|
||||
[key: string]: string
|
||||
en: string
|
||||
|
|
@ -14,7 +11,10 @@ interface Job {
|
|||
proficiency1: number
|
||||
proficiency2: number
|
||||
}
|
||||
base_job?: Job
|
||||
row: string
|
||||
masterLevel: boolean
|
||||
ultimateMastery: boolean
|
||||
order: number
|
||||
accessory: boolean
|
||||
accessory_type: number
|
||||
}
|
||||
|
|
|
|||
2
types/JobAccessory.d.ts
vendored
2
types/JobAccessory.d.ts
vendored
|
|
@ -1,6 +1,6 @@
|
|||
interface JobAccessory {
|
||||
id: string
|
||||
granblue_id: string
|
||||
granblueId: string
|
||||
job: Job
|
||||
name: {
|
||||
[key: string]: string
|
||||
|
|
|
|||
Loading…
Reference in a new issue