@hyperlane-xyz/utils 3.1.0-beta4 → 3.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export { addressToByteHexString, addressToBytes, addressToBytes32, addressToBytesCosmos, addressToBytesEvm, addressToBytesSol, bytes32ToAddress, bytesToAddressCosmos, bytesToAddressEvm, bytesToAddressSol, bytesToProtocolAddress, capitalizeAddress, convertToProtocolAddress, ensure0x, eqAddress, eqAddressCosmos, eqAddressEvm, eqAddressSol, getAddressProtocolType, isAddressCosmos, isAddressEvm, isAddressSealevel, isValidAddress, isValidAddressCosmos, isValidAddressEvm, isValidAddressSealevel, isValidTransactionHash, isValidTransactionHashCosmos, isValidTransactionHashEvm, isValidTransactionHashSealevel, isZeroishAddress, normalizeAddress, normalizeAddressCosmos, normalizeAddressEvm, normalizeAddressSealevel, shortenAddress, strip0x, } from './src/addresses';
2
- export { convertDecimals, eqAmountApproximate, fromWei, fromWeiRounded, toWei, tryParseAmount, } from './src/amount';
2
+ export { convertDecimals, convertDecimalsEthersBigNumber, eqAmountApproximate, fromWei, fromWeiRounded, toWei, tryParseAmount, } from './src/amount';
3
3
  export { chunk, exclude } from './src/arrays';
4
4
  export { pollAsync, retryAsync, runWithTimeout, sleep, timeout, } from './src/async';
5
5
  export { base58ToBuffer, bufferToBase58, hexOrBase58ToHex } from './src/base58';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.timeout = exports.sleep = exports.runWithTimeout = exports.retryAsync = exports.pollAsync = exports.exclude = exports.chunk = exports.tryParseAmount = exports.toWei = exports.fromWeiRounded = exports.fromWei = exports.eqAmountApproximate = exports.convertDecimals = exports.strip0x = exports.shortenAddress = exports.normalizeAddressSealevel = exports.normalizeAddressEvm = exports.normalizeAddressCosmos = exports.normalizeAddress = exports.isZeroishAddress = exports.isValidTransactionHashSealevel = exports.isValidTransactionHashEvm = exports.isValidTransactionHashCosmos = exports.isValidTransactionHash = exports.isValidAddressSealevel = exports.isValidAddressEvm = exports.isValidAddressCosmos = exports.isValidAddress = exports.isAddressSealevel = exports.isAddressEvm = exports.isAddressCosmos = exports.getAddressProtocolType = exports.eqAddressSol = exports.eqAddressEvm = exports.eqAddressCosmos = exports.eqAddress = exports.ensure0x = exports.convertToProtocolAddress = exports.capitalizeAddress = exports.bytesToProtocolAddress = exports.bytesToAddressSol = exports.bytesToAddressEvm = exports.bytesToAddressCosmos = exports.bytes32ToAddress = exports.addressToBytesSol = exports.addressToBytesEvm = exports.addressToBytesCosmos = exports.addressToBytes32 = exports.addressToBytes = exports.addressToByteHexString = void 0;
4
- exports.streamToString = exports.sanitizeString = exports.errorToString = exports.symmetricDifference = exports.setEquality = exports.difference = exports.promiseObjAll = exports.pick = exports.objMerge = exports.objMapEntries = exports.objMap = exports.objFilter = exports.isObject = exports.invertKeysAndValues = exports.deepEquals = exports.arrayToObject = exports.parseLegacyMultisigIsmMetadata = exports.formatLegacyMultisigIsmMetadata = exports.parseMessage = exports.messageId = exports.formatMessage = exports.sum = exports.stdDev = exports.median = exports.mean = exports.warn = exports.trace = exports.log = exports.error = exports.debug = exports.evmId = exports.canonizeId = exports.safelyAccessEnvVar = exports.domainHash = exports.isS3CheckpointWithId = exports.isS3Checkpoint = exports.isCheckpoint = exports.formatCallData = exports.mulBigAndFixed = exports.isZeroish = exports.isBigNumberish = exports.fixedToBig = exports.bigToFixed = exports.BigNumberMin = exports.BigNumberMax = exports.toBase64 = exports.fromBase64 = exports.hexOrBase58ToHex = exports.bufferToBase58 = exports.base58ToBuffer = void 0;
5
- exports.BaseValidator = exports.assert = exports.ProtocolType = exports.ProtocolSmallestUnit = exports.MessageStatus = exports.InterchainSecurityModuleType = exports.isNumeric = exports.isNullish = exports.trimToLength = exports.toTitleCase = void 0;
3
+ exports.sleep = exports.runWithTimeout = exports.retryAsync = exports.pollAsync = exports.exclude = exports.chunk = exports.tryParseAmount = exports.toWei = exports.fromWeiRounded = exports.fromWei = exports.eqAmountApproximate = exports.convertDecimalsEthersBigNumber = exports.convertDecimals = exports.strip0x = exports.shortenAddress = exports.normalizeAddressSealevel = exports.normalizeAddressEvm = exports.normalizeAddressCosmos = exports.normalizeAddress = exports.isZeroishAddress = exports.isValidTransactionHashSealevel = exports.isValidTransactionHashEvm = exports.isValidTransactionHashCosmos = exports.isValidTransactionHash = exports.isValidAddressSealevel = exports.isValidAddressEvm = exports.isValidAddressCosmos = exports.isValidAddress = exports.isAddressSealevel = exports.isAddressEvm = exports.isAddressCosmos = exports.getAddressProtocolType = exports.eqAddressSol = exports.eqAddressEvm = exports.eqAddressCosmos = exports.eqAddress = exports.ensure0x = exports.convertToProtocolAddress = exports.capitalizeAddress = exports.bytesToProtocolAddress = exports.bytesToAddressSol = exports.bytesToAddressEvm = exports.bytesToAddressCosmos = exports.bytes32ToAddress = exports.addressToBytesSol = exports.addressToBytesEvm = exports.addressToBytesCosmos = exports.addressToBytes32 = exports.addressToBytes = exports.addressToByteHexString = void 0;
4
+ exports.sanitizeString = exports.errorToString = exports.symmetricDifference = exports.setEquality = exports.difference = exports.promiseObjAll = exports.pick = exports.objMerge = exports.objMapEntries = exports.objMap = exports.objFilter = exports.isObject = exports.invertKeysAndValues = exports.deepEquals = exports.arrayToObject = exports.parseLegacyMultisigIsmMetadata = exports.formatLegacyMultisigIsmMetadata = exports.parseMessage = exports.messageId = exports.formatMessage = exports.sum = exports.stdDev = exports.median = exports.mean = exports.warn = exports.trace = exports.log = exports.error = exports.debug = exports.evmId = exports.canonizeId = exports.safelyAccessEnvVar = exports.domainHash = exports.isS3CheckpointWithId = exports.isS3Checkpoint = exports.isCheckpoint = exports.formatCallData = exports.mulBigAndFixed = exports.isZeroish = exports.isBigNumberish = exports.fixedToBig = exports.bigToFixed = exports.BigNumberMin = exports.BigNumberMax = exports.toBase64 = exports.fromBase64 = exports.hexOrBase58ToHex = exports.bufferToBase58 = exports.base58ToBuffer = exports.timeout = void 0;
5
+ exports.BaseValidator = exports.assert = exports.ProtocolType = exports.ProtocolSmallestUnit = exports.MessageStatus = exports.InterchainSecurityModuleType = exports.isNumeric = exports.isNullish = exports.trimToLength = exports.toTitleCase = exports.streamToString = void 0;
6
6
  var addresses_1 = require("./src/addresses");
7
7
  Object.defineProperty(exports, "addressToByteHexString", { enumerable: true, get: function () { return addresses_1.addressToByteHexString; } });
8
8
  Object.defineProperty(exports, "addressToBytes", { enumerable: true, get: function () { return addresses_1.addressToBytes; } });
@@ -43,6 +43,7 @@ Object.defineProperty(exports, "shortenAddress", { enumerable: true, get: functi
43
43
  Object.defineProperty(exports, "strip0x", { enumerable: true, get: function () { return addresses_1.strip0x; } });
44
44
  var amount_1 = require("./src/amount");
45
45
  Object.defineProperty(exports, "convertDecimals", { enumerable: true, get: function () { return amount_1.convertDecimals; } });
46
+ Object.defineProperty(exports, "convertDecimalsEthersBigNumber", { enumerable: true, get: function () { return amount_1.convertDecimalsEthersBigNumber; } });
46
47
  Object.defineProperty(exports, "eqAmountApproximate", { enumerable: true, get: function () { return amount_1.eqAmountApproximate; } });
47
48
  Object.defineProperty(exports, "fromWei", { enumerable: true, get: function () { return amount_1.fromWei; } });
48
49
  Object.defineProperty(exports, "fromWeiRounded", { enumerable: true, get: function () { return amount_1.fromWeiRounded; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
@@ -1,45 +1,28 @@
1
1
  import BigNumber from 'bignumber.js';
2
+ import { ethers } from 'ethers';
3
+ type NumberT = BigNumber.Value;
4
+ export declare function fromWei(value: NumberT | null | undefined, decimals?: number): number;
5
+ export declare function fromWeiRounded(value: NumberT | null | undefined, decimals?: number, roundDownIfSmall?: boolean): string;
6
+ export declare function toWei(value: NumberT | null | undefined, decimals?: number): BigNumber;
7
+ export declare function tryParseAmount(value: NumberT | null | undefined): BigNumber | null;
8
+ export declare function eqAmountApproximate(amountInWei1: BigNumber, amountInWei2: NumberT): boolean;
2
9
  /**
3
- * Convert the given Wei value to Ether value
4
- * @param value The value to convert.
5
- * @returns Converted value in string type.
6
- */
7
- export declare function fromWei(value: BigNumber.Value | null | undefined, decimals?: number): string;
8
- /**
9
- * Convert the given Wei value to Ether value,
10
- * round to set number of decimals with a minimum floor, configured per token
11
- * @param value The value to convert.
12
- * @param decimals
13
- * @returns Converted value in string type.
14
- */
15
- export declare function fromWeiRounded(value: BigNumber.Value | null | undefined, decimals?: number, displayDecimals?: number): string;
16
- /**
17
- * Convert the given value to Wei value
10
+ * Converts a value with `fromDecimals` decimals to a value with `toDecimals` decimals.
11
+ * Incurs a loss of precision when `fromDecimals` > `toDecimals`.
12
+ * @param fromDecimals The number of decimals `value` has.
13
+ * @param toDecimals The number of decimals to convert `value` to.
18
14
  * @param value The value to convert.
19
- * @returns Converted value in string type.
20
- */
21
- export declare function toWei(value: BigNumber.Value | null | undefined, decimals?: number): string;
22
- /**
23
- * Try to parse the given value into BigNumber.js BigNumber
24
- * @param value The value to parse.
25
- * @returns Parsed value in BigNumber.js BigNumber type.
26
- */
27
- export declare function tryParseAmount(value: BigNumber.Value | null | undefined): BigNumber | null;
28
- /**
29
- * Checks if an amount is equal of nearly equal to balance within a small margin of error
30
- * Necessary because amounts in the UI are often rounded
31
- * @param amount1 The amount to compare.
32
- * @param amount2 The amount to compare.
33
- * @returns true/false.
15
+ * @returns `value` represented with `toDecimals` decimals.
34
16
  */
35
- export declare function eqAmountApproximate(amount1: BigNumber.Value, amount2: BigNumber.Value, maxDifference: BigNumber.Value): boolean;
17
+ export declare function convertDecimals(fromDecimals: number, toDecimals: number, value: NumberT): BigNumber;
36
18
  /**
37
19
  * Converts a value with `fromDecimals` decimals to a value with `toDecimals` decimals.
38
20
  * Incurs a loss of precision when `fromDecimals` > `toDecimals`.
39
21
  * @param fromDecimals The number of decimals `value` has.
40
22
  * @param toDecimals The number of decimals to convert `value` to.
41
23
  * @param value The value to convert.
42
- * @returns `value` represented with `toDecimals` decimals in string type.
24
+ * @returns `value` represented with `toDecimals` decimals.
43
25
  */
44
- export declare function convertDecimals(fromDecimals: number, toDecimals: number, value: BigNumber.Value): string;
26
+ export declare function convertDecimalsEthersBigNumber(fromDecimals: number, toDecimals: number, value: ethers.BigNumber): ethers.BigNumber;
27
+ export {};
45
28
  //# sourceMappingURL=amount.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"amount.d.ts","sourceRoot":"","sources":["../../src/amount.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,cAAc,CAAC;AAKrC;;;;GAIG;AACH,wBAAgB,OAAO,CACrB,KAAK,EAAE,SAAS,CAAC,KAAK,GAAG,IAAI,GAAG,SAAS,EACzC,QAAQ,SAAyB,GAChC,MAAM,CAKR;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,SAAS,CAAC,KAAK,GAAG,IAAI,GAAG,SAAS,EACzC,QAAQ,SAAyB,EACjC,eAAe,CAAC,EAAE,MAAM,GACvB,MAAM,CAOR;AAED;;;;GAIG;AACH,wBAAgB,KAAK,CACnB,KAAK,EAAE,SAAS,CAAC,KAAK,GAAG,IAAI,GAAG,SAAS,EACzC,QAAQ,SAAyB,GAChC,MAAM,CAmBR;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,SAAS,CAAC,KAAK,GAAG,IAAI,GAAG,SAAS,GACxC,SAAS,GAAG,IAAI,CASlB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,SAAS,CAAC,KAAK,EACxB,OAAO,EAAE,SAAS,CAAC,KAAK,EACxB,aAAa,EAAE,SAAS,CAAC,KAAK,GAC7B,OAAO,CAGT;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,SAAS,CAAC,KAAK,GACrB,MAAM,CAgBR"}
1
+ {"version":3,"file":"amount.d.ts","sourceRoot":"","sources":["../../src/amount.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAMhC,KAAK,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC;AAE/B,wBAAgB,OAAO,CACrB,KAAK,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,EACjC,QAAQ,SAAyB,GAChC,MAAM,CAQR;AAID,wBAAgB,cAAc,CAC5B,KAAK,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,EACjC,QAAQ,SAAyB,EACjC,gBAAgB,UAAO,GACtB,MAAM,CAcR;AAED,wBAAgB,KAAK,CACnB,KAAK,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,EACjC,QAAQ,SAAyB,GAChC,SAAS,CAkBX;AAED,wBAAgB,cAAc,CAC5B,KAAK,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,GAChC,SAAS,GAAG,IAAI,CASlB;AAID,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,SAAS,EACvB,YAAY,EAAE,OAAO,WAKtB;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,OAAO,aAgBf;AAED;;;;;;;GAOG;AACH,wBAAgB,8BAA8B,CAC5C,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,CAAC,SAAS,oBAYxB"}
@@ -3,78 +3,66 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.convertDecimals = exports.eqAmountApproximate = exports.tryParseAmount = exports.toWei = exports.fromWeiRounded = exports.fromWei = void 0;
6
+ exports.convertDecimalsEthersBigNumber = exports.convertDecimals = exports.eqAmountApproximate = exports.tryParseAmount = exports.toWei = exports.fromWeiRounded = exports.fromWei = void 0;
7
7
  const units_1 = require("@ethersproject/units");
8
8
  const bignumber_js_1 = __importDefault(require("bignumber.js"));
9
+ const ethers_1 = require("ethers");
10
+ const DEFAULT_MIN_ROUNDED_VALUE = 0.00001;
9
11
  const DEFAULT_DISPLAY_DECIMALS = 4;
10
12
  const DEFAULT_TOKEN_DECIMALS = 18;
11
- /**
12
- * Convert the given Wei value to Ether value
13
- * @param value The value to convert.
14
- * @returns Converted value in string type.
15
- */
16
13
  function fromWei(value, decimals = DEFAULT_TOKEN_DECIMALS) {
17
14
  if (!value)
18
- return (0).toString();
19
- const valueString = value.toString(10).trim();
20
- const flooredValue = (0, bignumber_js_1.default)(valueString).toFixed(0, bignumber_js_1.default.ROUND_FLOOR);
21
- return parseFloat((0, units_1.formatUnits)(flooredValue, decimals)).toString();
15
+ return 0;
16
+ const valueString = value.toString().trim();
17
+ const flooredValue = new bignumber_js_1.default(valueString).toFixed(0, bignumber_js_1.default.ROUND_FLOOR);
18
+ return parseFloat((0, units_1.formatUnits)(flooredValue, decimals));
22
19
  }
23
20
  exports.fromWei = fromWei;
24
- /**
25
- * Convert the given Wei value to Ether value,
26
- * round to set number of decimals with a minimum floor, configured per token
27
- * @param value The value to convert.
28
- * @param decimals
29
- * @returns Converted value in string type.
30
- */
31
- function fromWeiRounded(value, decimals = DEFAULT_TOKEN_DECIMALS, displayDecimals) {
21
+ // Similar to fromWei above but rounds to set number of decimals
22
+ // with a minimum floor, configured per token
23
+ function fromWeiRounded(value, decimals = DEFAULT_TOKEN_DECIMALS, roundDownIfSmall = true) {
32
24
  if (!value)
33
25
  return '0';
34
- const flooredValue = (0, bignumber_js_1.default)(value).toFixed(0, bignumber_js_1.default.ROUND_FLOOR);
35
- const amount = (0, bignumber_js_1.default)((0, units_1.formatUnits)(flooredValue, decimals));
26
+ const flooredValue = new bignumber_js_1.default(value).toFixed(0, bignumber_js_1.default.ROUND_FLOOR);
27
+ const amount = new bignumber_js_1.default((0, units_1.formatUnits)(flooredValue, decimals));
36
28
  if (amount.isZero())
37
29
  return '0';
38
- displayDecimals ?? (displayDecimals = amount.gte(10000) ? 2 : DEFAULT_DISPLAY_DECIMALS);
39
- return amount.toFixed(displayDecimals, bignumber_js_1.default.ROUND_FLOOR);
30
+ // If amount is less than min value
31
+ if (amount.lt(DEFAULT_MIN_ROUNDED_VALUE)) {
32
+ if (roundDownIfSmall)
33
+ return '0';
34
+ return amount.toString(10);
35
+ }
36
+ const displayDecimals = amount.gte(10000) ? 2 : DEFAULT_DISPLAY_DECIMALS;
37
+ return amount.toFixed(displayDecimals).toString();
40
38
  }
41
39
  exports.fromWeiRounded = fromWeiRounded;
42
- /**
43
- * Convert the given value to Wei value
44
- * @param value The value to convert.
45
- * @returns Converted value in string type.
46
- */
47
40
  function toWei(value, decimals = DEFAULT_TOKEN_DECIMALS) {
48
41
  if (!value)
49
- return (0, bignumber_js_1.default)(0).toString();
42
+ return new bignumber_js_1.default(0);
50
43
  // First convert to a BigNumber, and then call `toString` with the
51
44
  // explicit radix 10 such that the result is formatted as a base-10 string
52
45
  // and not in scientific notation.
53
- const valueBN = (0, bignumber_js_1.default)(value);
46
+ const valueBN = new bignumber_js_1.default(value);
54
47
  const valueString = valueBN.toString(10).trim();
55
48
  const components = valueString.split('.');
56
49
  if (components.length === 1) {
57
- return (0, units_1.parseUnits)(valueString, decimals).toString();
50
+ return new bignumber_js_1.default((0, units_1.parseUnits)(valueString, decimals).toString());
58
51
  }
59
52
  else if (components.length === 2) {
60
53
  const trimmedFraction = components[1].substring(0, decimals);
61
- return (0, units_1.parseUnits)(`${components[0]}.${trimmedFraction}`, decimals).toString();
54
+ return new bignumber_js_1.default((0, units_1.parseUnits)(`${components[0]}.${trimmedFraction}`, decimals).toString());
62
55
  }
63
56
  else {
64
57
  throw new Error(`Cannot convert ${valueString} to wei`);
65
58
  }
66
59
  }
67
60
  exports.toWei = toWei;
68
- /**
69
- * Try to parse the given value into BigNumber.js BigNumber
70
- * @param value The value to parse.
71
- * @returns Parsed value in BigNumber.js BigNumber type.
72
- */
73
61
  function tryParseAmount(value) {
74
62
  try {
75
63
  if (!value)
76
64
  return null;
77
- const parsed = (0, bignumber_js_1.default)(value);
65
+ const parsed = new bignumber_js_1.default(value);
78
66
  if (!parsed || parsed.isNaN() || !parsed.isFinite())
79
67
  return null;
80
68
  else
@@ -85,16 +73,12 @@ function tryParseAmount(value) {
85
73
  }
86
74
  }
87
75
  exports.tryParseAmount = tryParseAmount;
88
- /**
89
- * Checks if an amount is equal of nearly equal to balance within a small margin of error
90
- * Necessary because amounts in the UI are often rounded
91
- * @param amount1 The amount to compare.
92
- * @param amount2 The amount to compare.
93
- * @returns true/false.
94
- */
95
- function eqAmountApproximate(amount1, amount2, maxDifference) {
96
- // Is difference btwn amounts less than maxDifference
97
- return (0, bignumber_js_1.default)(amount1).minus(amount2).abs().lte(maxDifference);
76
+ // Checks if an amount is equal of nearly equal to balance within a small margin of error
77
+ // Necessary because amounts in the UI are often rounded
78
+ function eqAmountApproximate(amountInWei1, amountInWei2) {
79
+ const minValueWei = toWei(DEFAULT_MIN_ROUNDED_VALUE);
80
+ // Is difference btwn amount and balance less than min amount shown for token
81
+ return amountInWei1.minus(amountInWei2).abs().lt(minValueWei);
98
82
  }
99
83
  exports.eqAmountApproximate = eqAmountApproximate;
100
84
  /**
@@ -103,24 +87,45 @@ exports.eqAmountApproximate = eqAmountApproximate;
103
87
  * @param fromDecimals The number of decimals `value` has.
104
88
  * @param toDecimals The number of decimals to convert `value` to.
105
89
  * @param value The value to convert.
106
- * @returns `value` represented with `toDecimals` decimals in string type.
90
+ * @returns `value` represented with `toDecimals` decimals.
107
91
  */
108
92
  function convertDecimals(fromDecimals, toDecimals, value) {
109
- const amount = (0, bignumber_js_1.default)(value);
93
+ const amount = new bignumber_js_1.default(value);
110
94
  if (fromDecimals === toDecimals)
111
- return amount.toString(10);
95
+ return amount;
112
96
  else if (fromDecimals > toDecimals) {
113
97
  const difference = fromDecimals - toDecimals;
114
98
  return amount
115
- .div((0, bignumber_js_1.default)(10).pow(difference))
116
- .integerValue(bignumber_js_1.default.ROUND_FLOOR)
117
- .toString(10);
99
+ .div(new bignumber_js_1.default(10).pow(difference))
100
+ .integerValue(bignumber_js_1.default.ROUND_FLOOR);
118
101
  }
119
102
  // fromDecimals < toDecimals
120
103
  else {
121
104
  const difference = toDecimals - fromDecimals;
122
- return amount.times((0, bignumber_js_1.default)(10).pow(difference)).toString(10);
105
+ return amount.times(new bignumber_js_1.default(10).pow(difference));
123
106
  }
124
107
  }
125
108
  exports.convertDecimals = convertDecimals;
109
+ /**
110
+ * Converts a value with `fromDecimals` decimals to a value with `toDecimals` decimals.
111
+ * Incurs a loss of precision when `fromDecimals` > `toDecimals`.
112
+ * @param fromDecimals The number of decimals `value` has.
113
+ * @param toDecimals The number of decimals to convert `value` to.
114
+ * @param value The value to convert.
115
+ * @returns `value` represented with `toDecimals` decimals.
116
+ */
117
+ function convertDecimalsEthersBigNumber(fromDecimals, toDecimals, value) {
118
+ if (fromDecimals === toDecimals)
119
+ return value;
120
+ else if (fromDecimals > toDecimals) {
121
+ const difference = fromDecimals - toDecimals;
122
+ return value.div(ethers_1.ethers.BigNumber.from('10').pow(difference));
123
+ }
124
+ // fromDecimals < toDecimals
125
+ else {
126
+ const difference = toDecimals - fromDecimals;
127
+ return value.mul(ethers_1.ethers.BigNumber.from('10').pow(difference));
128
+ }
129
+ }
130
+ exports.convertDecimalsEthersBigNumber = convertDecimalsEthersBigNumber;
126
131
  //# sourceMappingURL=amount.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"amount.js","sourceRoot":"","sources":["../../src/amount.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"amount.js","sourceRoot":"","sources":["../../src/amount.ts"],"names":[],"mappings":"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"}
@@ -1,23 +1,12 @@
1
- import BigNumber from 'bignumber.js';
2
- import { FixedNumber } from 'ethers';
3
- /**
4
- * Check if a value is bigNumberish (e.g. valid numbers, bigNumber).
5
- * @param value The value to check.
6
- * @returns true/false.
7
- */
8
- export declare function isBigNumberish(value: BigNumber.Value | undefined | null): boolean;
9
- /**
10
- * Check if a value (e.g. hex string or number) is zeroish (0, 0x0, 0x00, etc.).
11
- * @param value The value to check.
12
- * @returns true/false.
13
- */
14
- export declare function isZeroish(value: BigNumber.Value): boolean;
1
+ import { BigNumber, BigNumberish, FixedNumber } from 'ethers';
2
+ export declare function isBigNumberish(value: any): value is BigNumberish;
3
+ export declare function isZeroish(value: BigNumberish): boolean;
15
4
  /**
16
5
  * Converts a BigNumber to a FixedNumber of the format fixed128x18.
17
6
  * @param big The BigNumber to convert.
18
7
  * @returns A FixedNumber representation of a BigNumber.
19
8
  */
20
- export declare function bigToFixed(big: BigNumber.Value): FixedNumber;
9
+ export declare function bigToFixed(big: BigNumber): FixedNumber;
21
10
  /**
22
11
  * Converts a FixedNumber (of any format) to a BigNumber.
23
12
  * @param fixed The FixedNumber to convert.
@@ -30,21 +19,9 @@ export declare function fixedToBig(fixed: FixedNumber, ceil?: boolean): BigNumbe
30
19
  * @param big The BigNumber to multiply.
31
20
  * @param fixed The FixedNumber to multiply.
32
21
  * @param ceil If true, the ceiling of the product is used. Otherwise, the floor is used.
33
- * @returns The BigNumber product in string type.
34
- */
35
- export declare function mulBigAndFixed(big: BigNumber.Value, fixed: FixedNumber, ceil?: boolean): string;
36
- /**
37
- * Return the smaller in the given two BigNumbers.
38
- * @param bn1 The BigNumber to compare.
39
- * @param bn2 The BigNumber to compare.
40
- * @returns The smaller BigNumber in string type.
41
- */
42
- export declare function BigNumberMin(bn1: BigNumber.Value, bn2: BigNumber.Value): string;
43
- /**
44
- * Return the bigger in the given two BigNumbers.
45
- * @param bn1 The BigNumber to compare.
46
- * @param bn2 The BigNumber to compare.
47
- * @returns The bigger BigNumber in string type.
22
+ * @returns The BigNumber product.
48
23
  */
49
- export declare function BigNumberMax(bn1: BigNumber.Value, bn2: BigNumber.Value): string;
24
+ export declare function mulBigAndFixed(big: BigNumber, fixed: FixedNumber, ceil?: boolean): BigNumber;
25
+ export declare function BigNumberMin(bn1: BigNumber, bn2: BigNumber): BigNumber;
26
+ export declare function BigNumberMax(bn1: BigNumber, bn2: BigNumber): BigNumber;
50
27
  //# sourceMappingURL=big-numbers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"big-numbers.d.ts","sourceRoot":"","sources":["../../src/big-numbers.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAKrC;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,SAAS,CAAC,KAAK,GAAG,SAAS,GAAG,IAAI,GACxC,OAAO,CAOT;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,KAAK,GAAG,OAAO,CAMzD;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,SAAS,CAAC,KAAK,GAAG,WAAW,CAE5D;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,UAAQ,GAAG,SAAS,CAGtE;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,SAAS,CAAC,KAAK,EACpB,KAAK,EAAE,WAAW,EAClB,IAAI,UAAQ,GACX,MAAM,CAIR;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,GAAG,EAAE,SAAS,CAAC,KAAK,EACpB,GAAG,EAAE,SAAS,CAAC,KAAK,GACnB,MAAM,CAER;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,GAAG,EAAE,SAAS,CAAC,KAAK,EACpB,GAAG,EAAE,SAAS,CAAC,KAAK,GACnB,MAAM,CAER"}
1
+ {"version":3,"file":"big-numbers.d.ts","sourceRoot":"","sources":["../../src/big-numbers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,WAAW,EAAa,MAAM,QAAQ,CAAC;AAIzE,wBAAgB,cAAc,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,YAAY,CAOhE;AAGD,wBAAgB,SAAS,CAAC,KAAK,EAAE,YAAY,WAY5C;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,SAAS,GAAG,WAAW,CAEtD;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,UAAQ,GAAG,SAAS,CAGtE;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,SAAS,EACd,KAAK,EAAE,WAAW,EAClB,IAAI,UAAQ,GACX,SAAS,CAIX;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,aAE1D;AACD,wBAAgB,YAAY,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,aAE1D"}
@@ -1,36 +1,27 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.BigNumberMax = exports.BigNumberMin = exports.mulBigAndFixed = exports.fixedToBig = exports.bigToFixed = exports.isZeroish = exports.isBigNumberish = void 0;
7
- const bignumber_js_1 = __importDefault(require("bignumber.js"));
8
4
  const ethers_1 = require("ethers");
9
- // Use toString(10) on bignumber.js to prevent ethers.js bigNumber error
10
- // when parsing exponential string over e21
11
- /**
12
- * Check if a value is bigNumberish (e.g. valid numbers, bigNumber).
13
- * @param value The value to check.
14
- * @returns true/false.
15
- */
5
+ const typeof_1 = require("./typeof");
16
6
  function isBigNumberish(value) {
17
7
  try {
18
- const val = (0, bignumber_js_1.default)(value);
19
- return !val.isNaN() && val.isFinite() && bignumber_js_1.default.isBigNumber(val);
8
+ if ((0, typeof_1.isNullish)(value))
9
+ return false;
10
+ return ethers_1.BigNumber.from(value)._isBigNumber;
20
11
  }
21
12
  catch (error) {
22
13
  return false;
23
14
  }
24
15
  }
25
16
  exports.isBigNumberish = isBigNumberish;
26
- /**
27
- * Check if a value (e.g. hex string or number) is zeroish (0, 0x0, 0x00, etc.).
28
- * @param value The value to check.
29
- * @returns true/false.
30
- */
17
+ // If a value (e.g. hex string or number) is zeroish (0, 0x0, 0x00, etc.)
31
18
  function isZeroish(value) {
32
19
  try {
33
- return (0, bignumber_js_1.default)(value).isZero();
20
+ if (!value ||
21
+ value === ethers_1.constants.HashZero ||
22
+ value === ethers_1.constants.AddressZero)
23
+ return true;
24
+ return ethers_1.BigNumber.from(value).isZero();
34
25
  }
35
26
  catch (error) {
36
27
  return false;
@@ -43,7 +34,7 @@ exports.isZeroish = isZeroish;
43
34
  * @returns A FixedNumber representation of a BigNumber.
44
35
  */
45
36
  function bigToFixed(big) {
46
- return ethers_1.FixedNumber.from(big.toString(10));
37
+ return ethers_1.FixedNumber.from(big.toString());
47
38
  }
48
39
  exports.bigToFixed = bigToFixed;
49
40
  /**
@@ -54,7 +45,7 @@ exports.bigToFixed = bigToFixed;
54
45
  */
55
46
  function fixedToBig(fixed, ceil = false) {
56
47
  const fixedAsInteger = ceil ? fixed.ceiling() : fixed.floor();
57
- return (0, bignumber_js_1.default)(fixedAsInteger.toFormat('fixed256x0').toString());
48
+ return ethers_1.BigNumber.from(fixedAsInteger.toFormat('fixed256x0').toString());
58
49
  }
59
50
  exports.fixedToBig = fixedToBig;
60
51
  /**
@@ -62,32 +53,20 @@ exports.fixedToBig = fixedToBig;
62
53
  * @param big The BigNumber to multiply.
63
54
  * @param fixed The FixedNumber to multiply.
64
55
  * @param ceil If true, the ceiling of the product is used. Otherwise, the floor is used.
65
- * @returns The BigNumber product in string type.
56
+ * @returns The BigNumber product.
66
57
  */
67
58
  function mulBigAndFixed(big, fixed, ceil = false) {
68
59
  // Converts big to a FixedNumber, multiplies it by fixed, and converts the product back
69
60
  // to a BigNumber.
70
- return fixedToBig(fixed.mulUnsafe(bigToFixed(big)), ceil).toString(10);
61
+ return fixedToBig(fixed.mulUnsafe(bigToFixed(big)), ceil);
71
62
  }
72
63
  exports.mulBigAndFixed = mulBigAndFixed;
73
- /**
74
- * Return the smaller in the given two BigNumbers.
75
- * @param bn1 The BigNumber to compare.
76
- * @param bn2 The BigNumber to compare.
77
- * @returns The smaller BigNumber in string type.
78
- */
79
64
  function BigNumberMin(bn1, bn2) {
80
- return (0, bignumber_js_1.default)(bn1).gte(bn2) ? bn2.toString(10) : bn1.toString(10);
65
+ return bn1.gte(bn2) ? bn2 : bn1;
81
66
  }
82
67
  exports.BigNumberMin = BigNumberMin;
83
- /**
84
- * Return the bigger in the given two BigNumbers.
85
- * @param bn1 The BigNumber to compare.
86
- * @param bn2 The BigNumber to compare.
87
- * @returns The bigger BigNumber in string type.
88
- */
89
68
  function BigNumberMax(bn1, bn2) {
90
- return (0, bignumber_js_1.default)(bn1).lte(bn2) ? bn2.toString(10) : bn1.toString(10);
69
+ return bn1.lte(bn2) ? bn2 : bn1;
91
70
  }
92
71
  exports.BigNumberMax = BigNumberMax;
93
72
  //# sourceMappingURL=big-numbers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"big-numbers.js","sourceRoot":"","sources":["../../src/big-numbers.ts"],"names":[],"mappings":";;;;;;AAAA,gEAAqC;AACrC,mCAAqC;AAErC,wEAAwE;AACxE,2CAA2C;AAE3C;;;;GAIG;AACH,SAAgB,cAAc,CAC5B,KAAyC;IAEzC,IAAI;QACF,MAAM,GAAG,GAAG,IAAA,sBAAS,EAAC,KAAM,CAAC,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,GAAG,CAAC,QAAQ,EAAE,IAAI,sBAAS,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;KACrE;IAAC,OAAO,KAAK,EAAE;QACd,OAAO,KAAK,CAAC;KACd;AACH,CAAC;AATD,wCASC;AAED;;;;GAIG;AACH,SAAgB,SAAS,CAAC,KAAsB;IAC9C,IAAI;QACF,OAAO,IAAA,sBAAS,EAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;KAClC;IAAC,OAAO,KAAK,EAAE;QACd,OAAO,KAAK,CAAC;KACd;AACH,CAAC;AAND,8BAMC;AAED;;;;GAIG;AACH,SAAgB,UAAU,CAAC,GAAoB;IAC7C,OAAO,oBAAW,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;AAC5C,CAAC;AAFD,gCAEC;AAED;;;;;GAKG;AACH,SAAgB,UAAU,CAAC,KAAkB,EAAE,IAAI,GAAG,KAAK;IACzD,MAAM,cAAc,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IAC9D,OAAO,IAAA,sBAAS,EAAC,cAAc,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;AACrE,CAAC;AAHD,gCAGC;AAED;;;;;;GAMG;AACH,SAAgB,cAAc,CAC5B,GAAoB,EACpB,KAAkB,EAClB,IAAI,GAAG,KAAK;IAEZ,uFAAuF;IACvF,kBAAkB;IAClB,OAAO,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AACzE,CAAC;AARD,wCAQC;AAED;;;;;GAKG;AACH,SAAgB,YAAY,CAC1B,GAAoB,EACpB,GAAoB;IAEpB,OAAO,IAAA,sBAAS,EAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AACvE,CAAC;AALD,oCAKC;AAED;;;;;GAKG;AACH,SAAgB,YAAY,CAC1B,GAAoB,EACpB,GAAoB;IAEpB,OAAO,IAAA,sBAAS,EAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;AACvE,CAAC;AALD,oCAKC"}
1
+ {"version":3,"file":"big-numbers.js","sourceRoot":"","sources":["../../src/big-numbers.ts"],"names":[],"mappings":";;;AAAA,mCAAyE;AAEzE,qCAAqC;AAErC,SAAgB,cAAc,CAAC,KAAU;IACvC,IAAI;QACF,IAAI,IAAA,kBAAS,EAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACnC,OAAO,kBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC;KAC3C;IAAC,OAAO,KAAK,EAAE;QACd,OAAO,KAAK,CAAC;KACd;AACH,CAAC;AAPD,wCAOC;AAED,yEAAyE;AACzE,SAAgB,SAAS,CAAC,KAAmB;IAC3C,IAAI;QACF,IACE,CAAC,KAAK;YACN,KAAK,KAAK,kBAAS,CAAC,QAAQ;YAC5B,KAAK,KAAK,kBAAS,CAAC,WAAW;YAE/B,OAAO,IAAI,CAAC;QACd,OAAO,kBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;KACvC;IAAC,OAAO,KAAK,EAAE;QACd,OAAO,KAAK,CAAC;KACd;AACH,CAAC;AAZD,8BAYC;AAED;;;;GAIG;AACH,SAAgB,UAAU,CAAC,GAAc;IACvC,OAAO,oBAAW,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC1C,CAAC;AAFD,gCAEC;AAED;;;;;GAKG;AACH,SAAgB,UAAU,CAAC,KAAkB,EAAE,IAAI,GAAG,KAAK;IACzD,MAAM,cAAc,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IAC9D,OAAO,kBAAS,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC1E,CAAC;AAHD,gCAGC;AAED;;;;;;GAMG;AACH,SAAgB,cAAc,CAC5B,GAAc,EACd,KAAkB,EAClB,IAAI,GAAG,KAAK;IAEZ,uFAAuF;IACvF,kBAAkB;IAClB,OAAO,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;AAC5D,CAAC;AARD,wCAQC;AAED,SAAgB,YAAY,CAAC,GAAc,EAAE,GAAc;IACzD,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;AAClC,CAAC;AAFD,oCAEC;AACD,SAAgB,YAAY,CAAC,GAAc,EAAE,GAAc;IACzD,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;AAClC,CAAC;AAFD,oCAEC"}
@@ -1,101 +1,41 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
- const bignumber_js_1 = __importDefault(require("bignumber.js"));
7
3
  const chai_1 = require("chai");
8
4
  const ethers_1 = require("ethers");
9
5
  const big_numbers_1 = require("./big-numbers");
10
- describe('isBigNumberish', () => {
11
- const testCases = [
12
- { expect: false, context: 'invalid number', case: 'invalidNumber' },
13
- { expect: false, context: 'NaN', case: NaN },
14
- { expect: false, context: 'undefined', case: undefined },
15
- { expect: false, context: 'null', case: null },
16
- { expect: true, context: 'decimal', case: 123.123 },
17
- { expect: true, context: 'integer', case: 300000 },
18
- { expect: true, context: 'hex 0', case: 0x00 },
19
- { expect: true, context: 'hex 0', case: 0x000 },
20
- {
21
- expect: true,
22
- context: 'address 0',
23
- case: 0x0000000000000000000000000000000000000000,
24
- },
25
- ];
26
- testCases.forEach((tc) => {
27
- it(`returns ${tc.expect} for ${tc.case}`, () => {
28
- (0, chai_1.expect)((0, big_numbers_1.isBigNumberish)(tc.case)).to.equal(tc.expect);
6
+ describe('utils', () => {
7
+ describe('bigToFixed', () => {
8
+ it('converts a BigNumber to a FixedNumber', () => {
9
+ const big = ethers_1.BigNumber.from('1234');
10
+ const fixed = (0, big_numbers_1.bigToFixed)(big);
11
+ (0, chai_1.expect)(fixed.toUnsafeFloat()).to.equal(1234);
29
12
  });
30
13
  });
31
- });
32
- describe('isZeroish', () => {
33
- const testCases = [
34
- { expect: false, context: 'invalid number', case: 'invalidNumber' },
35
- { expect: false, context: 'NaN', case: NaN },
36
- { expect: false, context: 'undefined', case: undefined },
37
- { expect: false, context: 'null', case: null },
38
- { expect: false, context: 'non 0 decimal', case: 123.123 },
39
- { expect: false, context: 'non 0 integer', case: 123 },
40
- { expect: true, context: 'hex 0', case: 0x00 },
41
- { expect: true, context: 'hex 0', case: 0x000 },
42
- {
43
- expect: true,
44
- context: 'address 0',
45
- case: 0x0000000000000000000000000000000000000000,
46
- },
47
- ];
48
- testCases.forEach((tc) => {
49
- it(`returns ${tc.expect} for ${tc.case}`, () => {
50
- (0, chai_1.expect)((0, big_numbers_1.isZeroish)(tc.case)).to.equal(tc.expect);
14
+ describe('fixedToBig', () => {
15
+ it('converts a FixedNumber to a floored BigNumber', () => {
16
+ const fixed = ethers_1.FixedNumber.from('12.34');
17
+ const big = (0, big_numbers_1.fixedToBig)(fixed);
18
+ (0, chai_1.expect)(big.toNumber()).to.equal(12);
19
+ });
20
+ it('converts a FixedNumber to a ceilinged BigNumber', () => {
21
+ const fixed = ethers_1.FixedNumber.from('12.34');
22
+ const big = (0, big_numbers_1.fixedToBig)(fixed, true);
23
+ (0, chai_1.expect)(big.toNumber()).to.equal(13);
51
24
  });
52
25
  });
53
- });
54
- describe('bigToFixed', () => {
55
- it('converts a BigNumber to a FixedNumber', () => {
56
- const big = (0, bignumber_js_1.default)('7.5e-10');
57
- const fixed = (0, big_numbers_1.bigToFixed)(big);
58
- (0, chai_1.expect)(fixed.toUnsafeFloat()).to.equal(7.5e-10);
59
- });
60
- });
61
- describe('fixedToBig', () => {
62
- it('converts a FixedNumber to a floored BigNumber', () => {
63
- const fixed = ethers_1.FixedNumber.from('12.34');
64
- const big = (0, big_numbers_1.fixedToBig)(fixed);
65
- (0, chai_1.expect)(big.toNumber()).to.equal(12);
66
- });
67
- it('converts a FixedNumber to a ceilinged BigNumber', () => {
68
- const fixed = ethers_1.FixedNumber.from('12.34');
69
- const big = (0, big_numbers_1.fixedToBig)(fixed, true);
70
- (0, chai_1.expect)(big.toNumber()).to.equal(13);
71
- });
72
- });
73
- describe('mulBigAndFixed', () => {
74
- it('gets the floored product of a BigNumber and FixedNumber', () => {
75
- const big = (0, bignumber_js_1.default)('1000');
76
- const fixed = ethers_1.FixedNumber.from('1.2345');
77
- const product = (0, big_numbers_1.mulBigAndFixed)(big, fixed);
78
- (0, chai_1.expect)(product).to.equal((1234).toString());
79
- });
80
- it('gets the ceilinged product of a BigNumber and FixedNumber', () => {
81
- const big = (0, bignumber_js_1.default)('1000');
82
- const fixed = ethers_1.FixedNumber.from('1.2345');
83
- const product = (0, big_numbers_1.mulBigAndFixed)(big, fixed, true);
84
- (0, chai_1.expect)(product).to.equal((1235).toString());
85
- });
86
- });
87
- describe('BigNumberMin', () => {
88
- it('gets the min between the two BigNumber', () => {
89
- const big = (0, bignumber_js_1.default)('1000');
90
- const bigger = (0, bignumber_js_1.default)('10000');
91
- (0, chai_1.expect)((0, big_numbers_1.BigNumberMin)(big, bigger)).to.equal(big.toString());
92
- });
93
- });
94
- describe('BigNumberMax', () => {
95
- it('gets the max between the two BigNumber', () => {
96
- const big = (0, bignumber_js_1.default)('1000');
97
- const bigger = (0, bignumber_js_1.default)('10000');
98
- (0, chai_1.expect)((0, big_numbers_1.BigNumberMax)(big, bigger)).to.equal(bigger.toString());
26
+ describe('mulBigAndFixed', () => {
27
+ it('gets the floored product of a BigNumber and FixedNumber', () => {
28
+ const big = ethers_1.BigNumber.from('1000');
29
+ const fixed = ethers_1.FixedNumber.from('1.2345');
30
+ const product = (0, big_numbers_1.mulBigAndFixed)(big, fixed);
31
+ (0, chai_1.expect)(product.toNumber()).to.equal(1234);
32
+ });
33
+ it('gets the ceilinged product of a BigNumber and FixedNumber', () => {
34
+ const big = ethers_1.BigNumber.from('1000');
35
+ const fixed = ethers_1.FixedNumber.from('1.2345');
36
+ const product = (0, big_numbers_1.mulBigAndFixed)(big, fixed, true);
37
+ (0, chai_1.expect)(product.toNumber()).to.equal(1235);
38
+ });
99
39
  });
100
40
  });
101
41
  //# sourceMappingURL=big-numbers.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"big-numbers.test.js","sourceRoot":"","sources":["../../src/big-numbers.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"big-numbers.test.js","sourceRoot":"","sources":["../../src/big-numbers.test.ts"],"names":[],"mappings":";;AAAA,+BAA8B;AAC9B,mCAAgD;AAEhD,+CAAuE;AAEvE,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;IACrB,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;QAC1B,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;YAC/C,MAAM,GAAG,GAAG,kBAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACnC,MAAM,KAAK,GAAG,IAAA,wBAAU,EAAC,GAAG,CAAC,CAAC;YAE9B,IAAA,aAAM,EAAC,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;QAC1B,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;YACvD,MAAM,KAAK,GAAG,oBAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACxC,MAAM,GAAG,GAAG,IAAA,wBAAU,EAAC,KAAK,CAAC,CAAC;YAE9B,IAAA,aAAM,EAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;YACzD,MAAM,KAAK,GAAG,oBAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACxC,MAAM,GAAG,GAAG,IAAA,wBAAU,EAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YAEpC,IAAA,aAAM,EAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;YACjE,MAAM,GAAG,GAAG,kBAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACnC,MAAM,KAAK,GAAG,oBAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACzC,MAAM,OAAO,GAAG,IAAA,4BAAc,EAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YAE3C,IAAA,aAAM,EAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;YACnE,MAAM,GAAG,GAAG,kBAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACnC,MAAM,KAAK,GAAG,oBAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACzC,MAAM,OAAO,GAAG,IAAA,4BAAc,EAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YAEjD,IAAA,aAAM,EAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"multisig.d.ts","sourceRoot":"","sources":["../../src/multisig.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,+BAA+B,EAAE,MAAM,SAAS,CAAC;AAE1D,eAAO,MAAM,8BAA8B,aAC/B,MAAM,KACf,+BA4CF,CAAC;AAEF,eAAO,MAAM,+BAA+B,aAChC,+BAA+B,KACxC,MAqBF,CAAC"}
1
+ {"version":3,"file":"multisig.d.ts","sourceRoot":"","sources":["../../src/multisig.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,+BAA+B,EAAE,MAAM,SAAS,CAAC;AAE1D,eAAO,MAAM,8BAA8B,aAC/B,MAAM,KACf,+BA4CF,CAAC;AAEF,eAAO,MAAM,+BAA+B,aAChC,+BAA+B,KACxC,MAqBF,CAAC"}
@@ -1,10 +1,6 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.formatLegacyMultisigIsmMetadata = exports.parseLegacyMultisigIsmMetadata = void 0;
7
- const bignumber_js_1 = __importDefault(require("bignumber.js"));
8
4
  const ethers_1 = require("ethers");
9
5
  const addresses_1 = require("./addresses");
10
6
  const parseLegacyMultisigIsmMetadata = (metadata) => {
@@ -17,13 +13,13 @@ const parseLegacyMultisigIsmMetadata = (metadata) => {
17
13
  const SIGNATURE_LENGTH = 65;
18
14
  const buf = Buffer.from(ethers_1.utils.arrayify(metadata));
19
15
  const checkpointRoot = ethers_1.utils.hexlify(buf.slice(MERKLE_ROOT_OFFSET, MERKLE_INDEX_OFFSET));
20
- const checkpointIndex = (0, bignumber_js_1.default)(ethers_1.utils.hexlify(buf.slice(MERKLE_INDEX_OFFSET, ORIGIN_MAILBOX_OFFSET))).toNumber();
16
+ const checkpointIndex = ethers_1.BigNumber.from(ethers_1.utils.hexlify(buf.slice(MERKLE_INDEX_OFFSET, ORIGIN_MAILBOX_OFFSET))).toNumber();
21
17
  const originMailbox = ethers_1.utils.hexlify(buf.slice(ORIGIN_MAILBOX_OFFSET, MERKLE_PROOF_OFFSET));
22
18
  const parseBytesArray = (start, count, size) => {
23
19
  return [...Array(count).keys()].map((i) => ethers_1.utils.hexlify(buf.slice(start + size * i, start + size * (i + 1))));
24
20
  };
25
21
  const proof = parseBytesArray(MERKLE_PROOF_OFFSET, 32, 32);
26
- const threshold = (0, bignumber_js_1.default)(ethers_1.utils.hexlify(buf.slice(THRESHOLD_OFFSET, SIGNATURES_OFFSET))).toNumber();
22
+ const threshold = ethers_1.BigNumber.from(ethers_1.utils.hexlify(buf.slice(THRESHOLD_OFFSET, SIGNATURES_OFFSET))).toNumber();
27
23
  const signatures = parseBytesArray(SIGNATURES_OFFSET, threshold, SIGNATURE_LENGTH);
28
24
  const VALIDATORS_OFFSET = SIGNATURES_OFFSET + threshold * SIGNATURE_LENGTH;
29
25
  const addressesCount = buf.slice(VALIDATORS_OFFSET).length / 32;
@@ -1 +1 @@
1
- {"version":3,"file":"multisig.js","sourceRoot":"","sources":["../../src/multisig.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"multisig.js","sourceRoot":"","sources":["../../src/multisig.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,17 +1,16 @@
1
1
  {
2
2
  "name": "@hyperlane-xyz/utils",
3
3
  "description": "General utilities and types for the Hyperlane network",
4
- "version": "3.1.0-beta4",
4
+ "version": "3.1.1",
5
5
  "dependencies": {
6
6
  "@cosmjs/encoding": "^0.31.3",
7
7
  "@solana/web3.js": "^1.78.0",
8
8
  "bignumber.js": "^9.1.1",
9
- "ethers": "^5.7.2",
10
- "mocha": "^10.2.0"
9
+ "ethers": "^5.7.2"
11
10
  },
12
11
  "devDependencies": {
13
12
  "chai": "^4.3.0",
14
- "prettier": "^2.4.1",
13
+ "prettier": "^2.8.8",
15
14
  "typescript": "^5.1.6"
16
15
  },
17
16
  "homepage": "https://www.hyperlane.xyz",
@@ -28,13 +27,11 @@
28
27
  "build": "tsc",
29
28
  "clean": "rm -rf ./dist",
30
29
  "check": "tsc --noEmit",
31
- "prettier": "prettier --write ./src",
32
- "test": "mocha --config .mocharc.json './src/**/*.test.ts'"
30
+ "prettier": "prettier --write ./src"
33
31
  },
34
32
  "sideEffects": false,
35
33
  "types": "dist/index.d.ts",
36
34
  "files": [
37
35
  "/dist"
38
- ],
39
- "stableVersion": "1.5.0"
40
- }
36
+ ]
37
+ }
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=amount.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"amount.test.d.ts","sourceRoot":"","sources":["../../src/amount.test.ts"],"names":[],"mappings":""}
@@ -1,48 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const chai_1 = require("chai");
4
- const amount_1 = require("./amount");
5
- describe('fromWei', () => {
6
- it('parses and converts correctly', () => {
7
- (0, chai_1.expect)((0, amount_1.fromWei)(1, 0)).to.equal('1');
8
- (0, chai_1.expect)((0, amount_1.fromWei)('1000000', 6)).to.equal('1');
9
- (0, chai_1.expect)((0, amount_1.fromWei)('1000000000000000000')).to.equal('1');
10
- (0, chai_1.expect)((0, amount_1.fromWei)('1000000000000000000.1234')).to.equal('1');
11
- });
12
- });
13
- describe('fromWeiRounded', () => {
14
- it('parses and converts correctly', () => {
15
- (0, chai_1.expect)((0, amount_1.fromWeiRounded)(1, 0)).to.equal('1.0000');
16
- (0, chai_1.expect)((0, amount_1.fromWeiRounded)('1000000', 6)).to.equal('1.0000');
17
- (0, chai_1.expect)((0, amount_1.fromWeiRounded)('1000000000000000000')).to.equal('1.0000');
18
- (0, chai_1.expect)((0, amount_1.fromWeiRounded)('1000000000000000000.1234')).to.equal('1.0000');
19
- });
20
- it('rounds correctly', () => {
21
- (0, chai_1.expect)((0, amount_1.fromWeiRounded)(1234567890, 6, 2)).to.equal('1234.56');
22
- (0, chai_1.expect)((0, amount_1.fromWeiRounded)('1234567890', 6, 4)).to.equal('1234.5678');
23
- (0, chai_1.expect)((0, amount_1.fromWeiRounded)('10000000000000000000')).to.equal('10.0000');
24
- (0, chai_1.expect)((0, amount_1.fromWeiRounded)('10000000000000000000', 18, 0)).to.equal('10');
25
- });
26
- it('can drop decimals for large numbers', () => {
27
- (0, chai_1.expect)((0, amount_1.fromWeiRounded)('10001000000000000000000')).to.equal('10001.00');
28
- (0, chai_1.expect)((0, amount_1.fromWeiRounded)('10001000000000000000', 15, 4)).to.equal('10001.0000');
29
- });
30
- });
31
- describe('toWei', () => {
32
- it('parses and converts correctly', () => {
33
- (0, chai_1.expect)((0, amount_1.toWei)(1, 0)).to.equal('1');
34
- (0, chai_1.expect)((0, amount_1.toWei)('1', 6)).to.equal('1000000');
35
- (0, chai_1.expect)((0, amount_1.toWei)('123.456')).to.equal('123456000000000000000');
36
- (0, chai_1.expect)((0, amount_1.toWei)('1.00000000000000000001')).to.equal('1000000000000000000');
37
- (0, chai_1.expect)((0, amount_1.toWei)('1.00000000000000000001', 6)).to.equal('1000000');
38
- });
39
- });
40
- describe('eqAmountApproximate', () => {
41
- it('compares correctly', () => {
42
- (0, chai_1.expect)((0, amount_1.eqAmountApproximate)(1, 1.001, 0.001)).to.be.true;
43
- (0, chai_1.expect)((0, amount_1.eqAmountApproximate)(9, 9.001, 0.01)).to.be.true;
44
- (0, chai_1.expect)((0, amount_1.eqAmountApproximate)('9876543210', '9876543210', '1')).to.be.true;
45
- (0, chai_1.expect)((0, amount_1.eqAmountApproximate)('9876543210', '9876543212', '1')).to.be.false;
46
- });
47
- });
48
- //# sourceMappingURL=amount.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"amount.test.js","sourceRoot":"","sources":["../../src/amount.test.ts"],"names":[],"mappings":"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"}