From 620f439816b8c62edb5f0e2e140647176b8702c8 Mon Sep 17 00:00:00 2001 From: Steve Klebanoff Date: Fri, 2 Nov 2018 13:22:10 -0700 Subject: Move MaybeBigNumber functions into helper --- packages/instant/src/util/maybe_big_number.ts | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 packages/instant/src/util/maybe_big_number.ts (limited to 'packages/instant/src/util') diff --git a/packages/instant/src/util/maybe_big_number.ts b/packages/instant/src/util/maybe_big_number.ts new file mode 100644 index 000000000..113ba552f --- /dev/null +++ b/packages/instant/src/util/maybe_big_number.ts @@ -0,0 +1,25 @@ +import { BigNumber } from '@0x/utils'; +import * as _ from 'lodash'; + +import { MaybeBigNumber } from '../types'; + +export const maybeBigNumberUtil = { + // converts a string to a MaybeBigNumber + // if string is a NaN, considered undefined + stringToMaybeBigNumber: (stringValue: string): MaybeBigNumber => { + let validBigNumber: BigNumber; + try { + validBigNumber = new BigNumber(stringValue); + } catch { + return undefined; + } + + return validBigNumber.isNaN() ? undefined : validBigNumber; + }, + areMaybeBigNumbersEqual: (val1: MaybeBigNumber, val2: MaybeBigNumber): boolean => { + if (!_.isUndefined(val1) && !_.isUndefined(val2)) { + return val1.equals(val2); + } + return _.isUndefined(val1) && _.isUndefined(val2); + }, +}; -- cgit