aboutsummaryrefslogtreecommitdiffstats
path: root/packages/order-utils/src/parsing_utils.ts
diff options
context:
space:
mode:
authorF. Eugene Aumson <feuGeneA@users.noreply.github.com>2018-09-12 07:00:11 +0800
committerGitHub <noreply@github.com>2018-09-12 07:00:11 +0800
commitcbb5a425dfb45d1dfda3579548d6b3f70dfca166 (patch)
tree8751979ad70ed0eb61dfda5a954bb9e1bc3d5c3b /packages/order-utils/src/parsing_utils.ts
parent800dd5fb4f0ab21388440a46aef21cd0cf0801c3 (diff)
parent45b68832aa3eb5c09db33140468ab737114be9e3 (diff)
downloaddexon-sol-tools-cbb5a425dfb45d1dfda3579548d6b3f70dfca166.tar
dexon-sol-tools-cbb5a425dfb45d1dfda3579548d6b3f70dfca166.tar.gz
dexon-sol-tools-cbb5a425dfb45d1dfda3579548d6b3f70dfca166.tar.bz2
dexon-sol-tools-cbb5a425dfb45d1dfda3579548d6b3f70dfca166.tar.lz
dexon-sol-tools-cbb5a425dfb45d1dfda3579548d6b3f70dfca166.tar.xz
dexon-sol-tools-cbb5a425dfb45d1dfda3579548d6b3f70dfca166.tar.zst
dexon-sol-tools-cbb5a425dfb45d1dfda3579548d6b3f70dfca166.zip
Merge branch 'development' into sol-doc
Diffstat (limited to 'packages/order-utils/src/parsing_utils.ts')
-rw-r--r--packages/order-utils/src/parsing_utils.ts27
1 files changed, 27 insertions, 0 deletions
diff --git a/packages/order-utils/src/parsing_utils.ts b/packages/order-utils/src/parsing_utils.ts
new file mode 100644
index 000000000..232c54b7b
--- /dev/null
+++ b/packages/order-utils/src/parsing_utils.ts
@@ -0,0 +1,27 @@
+import { BigNumber } from '@0xproject/utils';
+import * as _ from 'lodash';
+
+export const orderParsingUtils = {
+ convertStringsFieldsToBigNumbers(obj: any, fields: string[]): any {
+ const result = _.assign({}, obj);
+ _.each(fields, field => {
+ _.update(result, field, (value: string) => {
+ if (_.isUndefined(value)) {
+ throw new Error(`Could not find field '${field}' while converting string fields to BigNumber.`);
+ }
+ return new BigNumber(value);
+ });
+ });
+ return result;
+ },
+ convertOrderStringFieldsToBigNumber(order: any): any {
+ return orderParsingUtils.convertStringsFieldsToBigNumbers(order, [
+ 'makerAssetAmount',
+ 'takerAssetAmount',
+ 'makerFee',
+ 'takerFee',
+ 'expirationTimeSeconds',
+ 'salt',
+ ]);
+ },
+};