Add transformer for GridWeapon
This commit is contained in:
parent
7cd87bd4a7
commit
8ef2bf76e3
3 changed files with 58 additions and 4 deletions
39
transformers/GridWeaponTransformer.tsx
Normal file
39
transformers/GridWeaponTransformer.tsx
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
import * as Element from './ElementTransformer'
|
||||
import * as Weapon from './WeaponTransformer'
|
||||
|
||||
// Transforms API response to GridWeapon object
|
||||
export function toObject(data: any): GridWeapon {
|
||||
return {
|
||||
id: data.id,
|
||||
object: Weapon.toObject(data.object),
|
||||
position: data.position,
|
||||
mainhand: data.mainhand,
|
||||
uncapLevel: data.uncap_level,
|
||||
element: Element.toObject(data.element),
|
||||
weaponKeys: data.weapon_keys.map((key: any) => WeaponKey.toObject(key)),
|
||||
ax: data.ax,
|
||||
awakening: {
|
||||
type: Awakening.toObject(data.awakening.type),
|
||||
level: data.awakening.awakening_level,
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
// Transforms User object into API parameters
|
||||
export function toParams(data: GridWeapon): GridWeaponParams {
|
||||
return {
|
||||
weapon_id: data.id,
|
||||
position: data.position,
|
||||
uncap_level: data.uncapLevel,
|
||||
element: data.element.id,
|
||||
weapon_key1_id: data.weaponKeys?.[0].id,
|
||||
weapon_key2_id: data.weaponKeys?.[1].id,
|
||||
weapon_key3_id: data.weaponKeys?.[2].id,
|
||||
ax_modifier1: data.ax?.[0].modifier,
|
||||
ax_modifier2: data.ax?.[1].modifier,
|
||||
ax_strength1: data.ax?.[0].strength,
|
||||
ax_strength2: data.ax?.[1].strength,
|
||||
awakening_id: data.awakening?.type.id,
|
||||
awakening_level: data.awakening?.level,
|
||||
}
|
||||
}
|
||||
8
types/GridWeapon.d.ts
vendored
8
types/GridWeapon.d.ts
vendored
|
|
@ -3,10 +3,10 @@ interface GridWeapon {
|
|||
mainhand: boolean
|
||||
position: number
|
||||
object: Weapon
|
||||
uncap_level: number
|
||||
element: number
|
||||
weapon_keys?: Array<WeaponKey>
|
||||
ax?: Array<SimpleAxSkill>
|
||||
uncapLevel: number
|
||||
element: GranblueElement
|
||||
weaponKeys?: WeaponKey[]
|
||||
ax?: SimpleAxSkill[]
|
||||
awakening?: {
|
||||
type: Awakening
|
||||
level: number
|
||||
|
|
|
|||
15
types/GridWeaponParams.d.ts
vendored
Normal file
15
types/GridWeaponParams.d.ts
vendored
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
interface GridWeaponParams {
|
||||
weapon_id: string
|
||||
position?: number
|
||||
uncap_level?: number
|
||||
element?: number
|
||||
weapon_key1_id?: string
|
||||
weapon_key2_id?: string
|
||||
weapon_key3_id?: string
|
||||
ax_modifier1?: number
|
||||
ax_modifier2?: number
|
||||
ax_strength1?: number
|
||||
ax_strength2?: number
|
||||
awakening_id?: string
|
||||
awakening_level?: number
|
||||
}
|
||||
Loading…
Reference in a new issue