From c9ee099226854e6720d0a2ce2eeb63d3b9aeedef Mon Sep 17 00:00:00 2001 From: ametel01 Date: Tue, 2 Jan 2024 15:12:16 +0800 Subject: [PATCH] fixes on undefined system --- packages/testnet/frontend/src/hooks/usePlanetPosition.ts | 4 ++-- packages/testnet/frontend/src/shared/utils/index.ts | 8 +++++++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/packages/testnet/frontend/src/hooks/usePlanetPosition.ts b/packages/testnet/frontend/src/hooks/usePlanetPosition.ts index ab5f16c..1dbc7eb 100644 --- a/packages/testnet/frontend/src/hooks/usePlanetPosition.ts +++ b/packages/testnet/frontend/src/hooks/usePlanetPosition.ts @@ -3,7 +3,7 @@ import { GAMEADDRESS } from '../constants/addresses'; import gameContract from '../constants/nogame.json'; import { type Position } from '../shared/types'; -const DefaultPosition = { +export const DefaultPosition: Position = { system: 0, orbit: 0, }; @@ -22,5 +22,5 @@ export function usePlanetPosition(planetId: number | undefined) { return DefaultPosition; } - return data as unknown as Position; + return data as Position; } diff --git a/packages/testnet/frontend/src/shared/utils/index.ts b/packages/testnet/frontend/src/shared/utils/index.ts index 5c655d0..058d3f3 100644 --- a/packages/testnet/frontend/src/shared/utils/index.ts +++ b/packages/testnet/frontend/src/shared/utils/index.ts @@ -1,6 +1,7 @@ /* eslint-disable no-unused-vars */ import BigNumber from 'bignumber.js'; import { type Position, type TechLevels } from '../types'; +import { DefaultPosition } from '../../hooks/usePlanetPosition'; export const dataToNumber = (value: unknown[] | string | number | undefined) => new BigNumber(value as unknown as number).toNumber(); @@ -261,7 +262,12 @@ export function convertTechLevelsToNumbers(techLevels: TechLevels): { return converted; } -export function convertPositionToNumbers(position: Position): Position { +export function convertPositionToNumbers( + position?: Position +): Position | undefined { + if (!position) { + return DefaultPosition; + } return { system: Number(position.system), orbit: Number(position.orbit),