aboutsummaryrefslogtreecommitdiffstats
path: root/packages/instant/src/util/maybe_big_number.ts
diff options
context:
space:
mode:
authorDavid Sun <dvsuner@protonmail.com>2019-02-06 05:46:51 +0800
committerDavid Sun <dvsuner@protonmail.com>2019-02-06 05:46:51 +0800
commitd95af455f1102dc7aa833ebb7b84498cce564df3 (patch)
treed59490202c60a9ce25e9be2498548f714b6e2156 /packages/instant/src/util/maybe_big_number.ts
parent59f48d6d5702210acea868c3ac2ede6315f0c8ec (diff)
downloaddexon-0x-contracts-d95af455f1102dc7aa833ebb7b84498cce564df3.tar.gz
dexon-0x-contracts-d95af455f1102dc7aa833ebb7b84498cce564df3.tar.zst
dexon-0x-contracts-d95af455f1102dc7aa833ebb7b84498cce564df3.zip
added coercion util functions
Diffstat (limited to 'packages/instant/src/util/maybe_big_number.ts')
-rw-r--r--packages/instant/src/util/maybe_big_number.ts11
1 files changed, 11 insertions, 0 deletions
diff --git a/packages/instant/src/util/maybe_big_number.ts b/packages/instant/src/util/maybe_big_number.ts
index f48473389..7e206a125 100644
--- a/packages/instant/src/util/maybe_big_number.ts
+++ b/packages/instant/src/util/maybe_big_number.ts
@@ -16,6 +16,17 @@ export const maybeBigNumberUtil = {
return validBigNumber.isNaN() ? undefined : validBigNumber;
},
+ // converts a BigNumber or String to the BigNumber used by 0x libraries
+ bigNumberOrStringToMaybeBigNumber: (value: any): Maybe<BigNumber> => {
+ if (_.isString(value)) {
+ return maybeBigNumberUtil.stringToMaybeBigNumber(value);
+ }
+ // checks for pre v8 bignumber with member variable
+ if (BigNumber.isBigNumber(value) || value.isBigNumber) {
+ return new BigNumber(value.toString());
+ }
+ return undefined;
+ },
areMaybeBigNumbersEqual: (val1: Maybe<BigNumber>, val2: Maybe<BigNumber>): boolean => {
if (!_.isUndefined(val1) && !_.isUndefined(val2)) {
return val1.isEqualTo(val2);