@mento-protocol/mento-sdk 1.0.5 → 1.0.6

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.
Files changed (171) hide show
  1. package/dist/cjs/ChainClient.js +1 -1
  2. package/dist/cjs/constants/addresses.js +3 -3
  3. package/dist/cjs/constants/tradablePairs.js +4055 -2545
  4. package/dist/cjs/enums/chainId.js +1 -1
  5. package/dist/cjs/enums/proposalState.js +1 -1
  6. package/dist/cjs/limits.js +4 -5
  7. package/dist/cjs/mento.d.ts +7 -3
  8. package/dist/cjs/mento.js +17 -11
  9. package/dist/cjs/utils.js +6 -7
  10. package/dist/esm/ChainClient.js +1 -1
  11. package/dist/esm/constants/addresses.js +1 -1
  12. package/dist/esm/constants/tradablePairs.js +4053 -2543
  13. package/dist/esm/mento.d.ts +7 -3
  14. package/dist/esm/mento.js +17 -11
  15. package/package.json +1 -1
  16. package/dist/abis/bipoolmanager.d.ts +0 -15
  17. package/dist/abis/bipoolmanager.d.ts.map +0 -1
  18. package/dist/abis/bipoolmanager.js +0 -26
  19. package/dist/abis/bipoolmanager.js.map +0 -1
  20. package/dist/abis/broker.d.ts +0 -2
  21. package/dist/abis/broker.d.ts.map +0 -1
  22. package/dist/abis/broker.js +0 -8
  23. package/dist/abis/broker.js.map +0 -1
  24. package/dist/abis/erc20.d.ts +0 -2
  25. package/dist/abis/erc20.d.ts.map +0 -1
  26. package/dist/abis/erc20.js +0 -11
  27. package/dist/abis/erc20.js.map +0 -1
  28. package/dist/abis/index.d.ts +0 -5
  29. package/dist/abis/index.d.ts.map +0 -1
  30. package/dist/abis/index.js +0 -21
  31. package/dist/abis/index.js.map +0 -1
  32. package/dist/abis/pricingmodule.d.ts +0 -2
  33. package/dist/abis/pricingmodule.d.ts.map +0 -1
  34. package/dist/abis/pricingmodule.js +0 -5
  35. package/dist/abis/pricingmodule.js.map +0 -1
  36. package/dist/abis/reserve.d.ts +0 -2
  37. package/dist/abis/reserve.d.ts.map +0 -1
  38. package/dist/abis/reserve.js +0 -9
  39. package/dist/abis/reserve.js.map +0 -1
  40. package/dist/abis/uniswapV3.d.ts +0 -4
  41. package/dist/abis/uniswapV3.d.ts.map +0 -1
  42. package/dist/abis/uniswapV3.js +0 -15
  43. package/dist/abis/uniswapV3.js.map +0 -1
  44. package/dist/adapters/implementations/ethersAdapter.d.ts +0 -9
  45. package/dist/adapters/implementations/ethersAdapter.d.ts.map +0 -1
  46. package/dist/adapters/implementations/ethersAdapter.js +0 -19
  47. package/dist/adapters/implementations/ethersAdapter.js.map +0 -1
  48. package/dist/adapters/implementations/ethersV5Adapter.d.ts +0 -9
  49. package/dist/adapters/implementations/ethersV5Adapter.d.ts.map +0 -1
  50. package/dist/adapters/implementations/ethersV5Adapter.js +0 -19
  51. package/dist/adapters/implementations/ethersV5Adapter.js.map +0 -1
  52. package/dist/adapters/implementations/viemAdapter.d.ts +0 -9
  53. package/dist/adapters/implementations/viemAdapter.d.ts.map +0 -1
  54. package/dist/adapters/implementations/viemAdapter.js +0 -26
  55. package/dist/adapters/implementations/viemAdapter.js.map +0 -1
  56. package/dist/adapters/index.d.ts +0 -5
  57. package/dist/adapters/index.d.ts.map +0 -1
  58. package/dist/adapters/index.js +0 -10
  59. package/dist/adapters/index.js.map +0 -1
  60. package/dist/adapters/proxies/ethersAdapterProxy.d.ts +0 -25
  61. package/dist/adapters/proxies/ethersAdapterProxy.d.ts.map +0 -1
  62. package/dist/adapters/proxies/ethersAdapterProxy.js +0 -71
  63. package/dist/adapters/proxies/ethersAdapterProxy.js.map +0 -1
  64. package/dist/adapters/proxies/ethersV5AdapterProxy.d.ts +0 -25
  65. package/dist/adapters/proxies/ethersV5AdapterProxy.d.ts.map +0 -1
  66. package/dist/adapters/proxies/ethersV5AdapterProxy.js +0 -71
  67. package/dist/adapters/proxies/ethersV5AdapterProxy.js.map +0 -1
  68. package/dist/adapters/proxies/viemAdapterProxy.d.ts +0 -25
  69. package/dist/adapters/proxies/viemAdapterProxy.d.ts.map +0 -1
  70. package/dist/adapters/proxies/viemAdapterProxy.js +0 -71
  71. package/dist/adapters/proxies/viemAdapterProxy.js.map +0 -1
  72. package/dist/constants/addresses.d.ts +0 -14
  73. package/dist/constants/addresses.d.ts.map +0 -1
  74. package/dist/constants/addresses.js +0 -61
  75. package/dist/constants/addresses.js.map +0 -1
  76. package/dist/constants/chainId.d.ts +0 -5
  77. package/dist/constants/chainId.d.ts.map +0 -1
  78. package/dist/constants/chainId.js +0 -9
  79. package/dist/constants/chainId.js.map +0 -1
  80. package/dist/constants/contractNames.d.ts +0 -21
  81. package/dist/constants/contractNames.d.ts.map +0 -1
  82. package/dist/constants/contractNames.js +0 -24
  83. package/dist/constants/contractNames.js.map +0 -1
  84. package/dist/constants/index.d.ts +0 -8
  85. package/dist/constants/index.d.ts.map +0 -1
  86. package/dist/constants/index.js +0 -24
  87. package/dist/constants/index.js.map +0 -1
  88. package/dist/constants/mentoAddresses.d.ts +0 -4
  89. package/dist/constants/mentoAddresses.d.ts.map +0 -1
  90. package/dist/constants/mentoAddresses.js +0 -7
  91. package/dist/constants/mentoAddresses.js.map +0 -1
  92. package/dist/constants/proposalState.d.ts +0 -11
  93. package/dist/constants/proposalState.d.ts.map +0 -1
  94. package/dist/constants/proposalState.js +0 -15
  95. package/dist/constants/proposalState.js.map +0 -1
  96. package/dist/constants/protocolAddresses.d.ts +0 -5
  97. package/dist/constants/protocolAddresses.d.ts.map +0 -1
  98. package/dist/constants/protocolAddresses.js +0 -8
  99. package/dist/constants/protocolAddresses.js.map +0 -1
  100. package/dist/constants/stableTokenMetadata.d.ts +0 -14
  101. package/dist/constants/stableTokenMetadata.d.ts.map +0 -1
  102. package/dist/constants/stableTokenMetadata.js +0 -32
  103. package/dist/constants/stableTokenMetadata.js.map +0 -1
  104. package/dist/index.d.ts +0 -67
  105. package/dist/index.d.ts.map +0 -1
  106. package/dist/index.js +0 -122
  107. package/dist/index.js.map +0 -1
  108. package/dist/services/collateralAssetService.d.ts +0 -8
  109. package/dist/services/collateralAssetService.d.ts.map +0 -1
  110. package/dist/services/collateralAssetService.js +0 -47
  111. package/dist/services/collateralAssetService.js.map +0 -1
  112. package/dist/services/index.d.ts +0 -6
  113. package/dist/services/index.d.ts.map +0 -1
  114. package/dist/services/index.js +0 -22
  115. package/dist/services/index.js.map +0 -1
  116. package/dist/services/stableTokenService.d.ts +0 -9
  117. package/dist/services/stableTokenService.d.ts.map +0 -1
  118. package/dist/services/stableTokenService.js +0 -40
  119. package/dist/services/stableTokenService.js.map +0 -1
  120. package/dist/services/supply/ISupplyCalculator.d.ts +0 -4
  121. package/dist/services/supply/ISupplyCalculator.d.ts.map +0 -1
  122. package/dist/services/supply/ISupplyCalculator.js +0 -3
  123. package/dist/services/supply/ISupplyCalculator.js.map +0 -1
  124. package/dist/services/supply/UniV3SupplyCalculator.d.ts +0 -21
  125. package/dist/services/supply/UniV3SupplyCalculator.d.ts.map +0 -1
  126. package/dist/services/supply/UniV3SupplyCalculator.js +0 -233
  127. package/dist/services/supply/UniV3SupplyCalculator.js.map +0 -1
  128. package/dist/services/supply/index.d.ts +0 -4
  129. package/dist/services/supply/index.d.ts.map +0 -1
  130. package/dist/services/supply/index.js +0 -20
  131. package/dist/services/supply/index.js.map +0 -1
  132. package/dist/services/supply/multisigSupplyCalculator.d.ts +0 -9
  133. package/dist/services/supply/multisigSupplyCalculator.d.ts.map +0 -1
  134. package/dist/services/supply/multisigSupplyCalculator.js +0 -21
  135. package/dist/services/supply/multisigSupplyCalculator.js.map +0 -1
  136. package/dist/services/supplyAdjustmentService.d.ts +0 -12
  137. package/dist/services/supplyAdjustmentService.d.ts.map +0 -1
  138. package/dist/services/supplyAdjustmentService.js +0 -35
  139. package/dist/services/supplyAdjustmentService.js.map +0 -1
  140. package/dist/services/tokenMetadataService.d.ts +0 -8
  141. package/dist/services/tokenMetadataService.d.ts.map +0 -1
  142. package/dist/services/tokenMetadataService.js +0 -44
  143. package/dist/services/tokenMetadataService.js.map +0 -1
  144. package/dist/types/contractAddresses.d.ts +0 -23
  145. package/dist/types/contractAddresses.d.ts.map +0 -1
  146. package/dist/types/contractAddresses.js +0 -3
  147. package/dist/types/contractAddresses.js.map +0 -1
  148. package/dist/types/exchange.d.ts +0 -6
  149. package/dist/types/exchange.d.ts.map +0 -1
  150. package/dist/types/exchange.js +0 -3
  151. package/dist/types/exchange.js.map +0 -1
  152. package/dist/types/index.d.ts +0 -5
  153. package/dist/types/index.d.ts.map +0 -1
  154. package/dist/types/index.js +0 -21
  155. package/dist/types/index.js.map +0 -1
  156. package/dist/types/provider.d.ts +0 -11
  157. package/dist/types/provider.d.ts.map +0 -1
  158. package/dist/types/provider.js +0 -3
  159. package/dist/types/provider.js.map +0 -1
  160. package/dist/types/token.d.ts +0 -19
  161. package/dist/types/token.d.ts.map +0 -1
  162. package/dist/types/token.js +0 -3
  163. package/dist/types/token.js.map +0 -1
  164. package/dist/utils/index.d.ts +0 -2
  165. package/dist/utils/index.d.ts.map +0 -1
  166. package/dist/utils/index.js +0 -18
  167. package/dist/utils/index.js.map +0 -1
  168. package/dist/utils/retry.d.ts +0 -12
  169. package/dist/utils/retry.d.ts.map +0 -1
  170. package/dist/utils/retry.js +0 -28
  171. package/dist/utils/retry.js.map +0 -1
@@ -6,4 +6,4 @@ var ChainId;
6
6
  ChainId[ChainId["CELO"] = 42220] = "CELO";
7
7
  ChainId[ChainId["ALFAJORES"] = 44787] = "ALFAJORES";
8
8
  ChainId[ChainId["BAKLAVA"] = 62320] = "BAKLAVA";
9
- })(ChainId = exports.ChainId || (exports.ChainId = {}));
9
+ })(ChainId || (exports.ChainId = ChainId = {}));
@@ -11,4 +11,4 @@ var ProposalState;
11
11
  ProposalState[ProposalState["QUEUED"] = 5] = "QUEUED";
12
12
  ProposalState[ProposalState["EXPIRED"] = 6] = "EXPIRED";
13
13
  ProposalState[ProposalState["EXECUTED"] = 7] = "EXECUTED";
14
- })(ProposalState = exports.ProposalState || (exports.ProposalState = {}));
14
+ })(ProposalState || (exports.ProposalState = ProposalState = {}));
@@ -9,7 +9,10 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.getLimitId = exports.getLimits = exports.getLimitsState = exports.getLimitsConfig = void 0;
12
+ exports.getLimitsConfig = getLimitsConfig;
13
+ exports.getLimitsState = getLimitsState;
14
+ exports.getLimits = getLimits;
15
+ exports.getLimitId = getLimitId;
13
16
  const assert_1 = require("assert");
14
17
  const ethers_1 = require("ethers");
15
18
  /**
@@ -34,7 +37,6 @@ function getLimitsConfig(broker, exchangeId, asset) {
34
37
  };
35
38
  });
36
39
  }
37
- exports.getLimitsConfig = getLimitsConfig;
38
40
  /**
39
41
  * Returns the limit state in the broker for the given exchange and asset
40
42
  * @param broker an instance of the broker
@@ -64,7 +66,6 @@ function getLimitsState(broker, exchangeId, asset) {
64
66
  };
65
67
  });
66
68
  }
67
- exports.getLimitsState = getLimitsState;
68
69
  /**
69
70
  * Returns a human-friendly representation of the limits for the given exchange and asset
70
71
  * @param broker an instance of the broker
@@ -113,7 +114,6 @@ function getLimits(broker, exchangeId, asset) {
113
114
  return limits;
114
115
  });
115
116
  }
116
- exports.getLimits = getLimits;
117
117
  /**
118
118
  * Returns the limit id for the given exchange and asset
119
119
  * @param exchangeId the id of the exchange
@@ -127,4 +127,3 @@ function getLimitId(exchangeId, asset) {
127
127
  (0, assert_1.strict)(exchangeIdBytes.length === assetBytes.length, 'exchangeId and asset0 must be the same length');
128
128
  return ethers_1.utils.hexlify(exchangeIdBytes.map((b, i) => b ^ assetBytes[i]));
129
129
  }
130
- exports.getLimitId = getLimitId;
@@ -1,6 +1,6 @@
1
- import { Address, TradingLimit, TradingLimitsConfig, TradingLimitsState } from './interfaces';
2
1
  import { IBroker } from '@mento-protocol/mento-core-ts';
3
2
  import { BigNumber, BigNumberish, Signer, providers } from 'ethers';
3
+ import { Address, TradingLimit, TradingLimitsConfig, TradingLimitsState } from './interfaces';
4
4
  export interface Exchange {
5
5
  providerAddr: Address;
6
6
  id: string;
@@ -58,7 +58,9 @@ export declare class Mento {
58
58
  * Get tradable pairs for backwards compatibility
59
59
  * @returns an array of Asset pairs
60
60
  */
61
- getTradablePairs(cached?: boolean): Promise<[Asset, Asset][]>;
61
+ getTradablePairs({ cached, }?: {
62
+ cached?: boolean;
63
+ }): Promise<[Asset, Asset][]>;
62
64
  /**
63
65
  * Returns a list of all tradable pairs on Mento via direct exchanges.
64
66
  * Each pair is represented using the TradablePair interface, with its id
@@ -74,7 +76,9 @@ export declare class Mento {
74
76
  * the two Asset objects, and an array of exchange details for each hop.
75
77
  * @returns An array of TradablePair objects representing available trade routes.
76
78
  */
77
- getTradablePairsWithPath(cached?: boolean): Promise<readonly TradablePair[]>;
79
+ getTradablePairsWithPath({ cached, }?: {
80
+ cached?: boolean;
81
+ }): Promise<readonly TradablePair[]>;
78
82
  /**
79
83
  * Returns the amount of tokenIn to be sold to buy amountOut of tokenOut.
80
84
  * If the provided tradablePair has a single (direct) pricing path, then direct pricing is used.
package/dist/cjs/mento.js CHANGED
@@ -12,12 +12,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.Mento = void 0;
13
13
  const mento_core_ts_1 = require("@mento-protocol/mento-core-ts");
14
14
  const ethers_1 = require("ethers");
15
- const utils_1 = require("./utils");
16
15
  const limits_1 = require("./limits");
16
+ const utils_1 = require("./utils");
17
17
  const assert_1 = require("assert");
18
- const tradablePairs_1 = require("./constants/tradablePairs");
19
18
  const mento_router_ts_1 = require("mento-router-ts");
20
19
  const addresses_1 = require("./constants/addresses");
20
+ const tradablePairs_1 = require("./constants/tradablePairs");
21
21
  class Mento {
22
22
  /**
23
23
  * This constructor is private, use the static create or createWithParams methods
@@ -69,9 +69,9 @@ class Mento {
69
69
  * Get tradable pairs for backwards compatibility
70
70
  * @returns an array of Asset pairs
71
71
  */
72
- getTradablePairs(cached = true) {
73
- return __awaiter(this, void 0, void 0, function* () {
74
- return (yield this.getTradablePairsWithPath(cached)).map((pair) => pair.assets);
72
+ getTradablePairs() {
73
+ return __awaiter(this, arguments, void 0, function* ({ cached = true, } = {}) {
74
+ return (yield this.getTradablePairsWithPath({ cached })).map((pair) => pair.assets);
75
75
  });
76
76
  }
77
77
  /**
@@ -131,8 +131,8 @@ class Mento {
131
131
  * the two Asset objects, and an array of exchange details for each hop.
132
132
  * @returns An array of TradablePair objects representing available trade routes.
133
133
  */
134
- getTradablePairsWithPath(cached = true) {
135
- return __awaiter(this, void 0, void 0, function* () {
134
+ getTradablePairsWithPath() {
135
+ return __awaiter(this, arguments, void 0, function* ({ cached = true, } = {}) {
136
136
  // Get tradable pairs from cache if available.
137
137
  if (cached) {
138
138
  const value = (0, tradablePairs_1.getCachedTradablePairs)(yield (0, utils_1.getChainId)(this.signerOrProvider));
@@ -307,7 +307,9 @@ class Mento {
307
307
  */
308
308
  increaseTradingAllowance(tokenIn, amount, tradablePair) {
309
309
  return __awaiter(this, void 0, void 0, function* () {
310
- const spender = !tradablePair || (tradablePair === null || tradablePair === void 0 ? void 0 : tradablePair.path.length) == 1 ? this.broker.address : this.router.address;
310
+ const spender = !tradablePair || (tradablePair === null || tradablePair === void 0 ? void 0 : tradablePair.path.length) == 1
311
+ ? this.broker.address
312
+ : this.router.address;
311
313
  const tx = yield (0, utils_1.increaseAllowance)(tokenIn, spender, amount, this.signerOrProvider);
312
314
  if (ethers_1.Signer.isSigner(this.signerOrProvider)) {
313
315
  // The contract call doesn't populate all of the signer fields, so we need an extra call for the signer
@@ -458,11 +460,15 @@ class Mento {
458
460
  return __awaiter(this, void 0, void 0, function* () {
459
461
  const pair = (yield this.getTradablePairsWithPath()).find((p) =>
460
462
  // Direct path
461
- (p.path.length === 1 && p.path[0].assets.includes(tokenIn) && p.path[0].assets.includes(tokenOut)) ||
463
+ (p.path.length === 1 &&
464
+ p.path[0].assets.includes(tokenIn) &&
465
+ p.path[0].assets.includes(tokenOut)) ||
462
466
  // Routed path
463
467
  (p.path.length === 2 &&
464
- ((p.path[0].assets.includes(tokenIn) && p.path[1].assets.includes(tokenOut)) ||
465
- (p.path[0].assets.includes(tokenOut) && p.path[1].assets.includes(tokenIn)))));
468
+ ((p.path[0].assets.includes(tokenIn) &&
469
+ p.path[1].assets.includes(tokenOut)) ||
470
+ (p.path[0].assets.includes(tokenOut) &&
471
+ p.path[1].assets.includes(tokenIn)))));
466
472
  if (!pair) {
467
473
  throw new Error(`No tradable pair found for tokens ${tokenIn} and ${tokenOut}`);
468
474
  }
package/dist/cjs/utils.js CHANGED
@@ -9,7 +9,12 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.increaseAllowance = exports.getSymbolFromTokenAddress = exports.getBrokerAddressFromRegistry = exports.validateSignerOrProvider = exports.validateSigner = exports.getChainId = void 0;
12
+ exports.getChainId = getChainId;
13
+ exports.validateSigner = validateSigner;
14
+ exports.validateSignerOrProvider = validateSignerOrProvider;
15
+ exports.getBrokerAddressFromRegistry = getBrokerAddressFromRegistry;
16
+ exports.getSymbolFromTokenAddress = getSymbolFromTokenAddress;
17
+ exports.increaseAllowance = increaseAllowance;
13
18
  const ethers_1 = require("ethers");
14
19
  /**
15
20
  * Gets the chain ID from a signer or provider
@@ -24,7 +29,6 @@ function getChainId(signerOrProvider) {
24
29
  return (yield provider.getNetwork()).chainId;
25
30
  });
26
31
  }
27
- exports.getChainId = getChainId;
28
32
  /**
29
33
  * Ensures that given signer is truly a a connected signer
30
34
  * @param signer an ethers signer
@@ -38,7 +42,6 @@ function validateSigner(signer) {
38
42
  throw new Error('Signer must be connected to a provider');
39
43
  }
40
44
  }
41
- exports.validateSigner = validateSigner;
42
45
  /**
43
46
  * Ensures that given signerOrProvider is truly a provider or a connected signer
44
47
  * @param signerOrProvider an ethers provider or signer
@@ -54,7 +57,6 @@ function validateSignerOrProvider(signerOrProvider) {
54
57
  throw new Error('Signer must be connected to a provider');
55
58
  }
56
59
  }
57
- exports.validateSignerOrProvider = validateSignerOrProvider;
58
60
  /**
59
61
  * Returns the broker address from the Celo registry
60
62
  * @param signerOrProvider an ethers provider or signer
@@ -75,7 +77,6 @@ function getBrokerAddressFromRegistry(signerOrProvider) {
75
77
  return brokerAddress;
76
78
  });
77
79
  }
78
- exports.getBrokerAddressFromRegistry = getBrokerAddressFromRegistry;
79
80
  /**
80
81
  * Returns the symbol of an erc20 token
81
82
  * @param tokenAddr the address of the erc20 token
@@ -89,7 +90,6 @@ function getSymbolFromTokenAddress(tokenAddr, signerOrProvider) {
89
90
  return contract.symbol();
90
91
  });
91
92
  }
92
- exports.getSymbolFromTokenAddress = getSymbolFromTokenAddress;
93
93
  /**
94
94
  * Returns a populated tx obj for increasing the allowance of a spender for a given erc20 token by a given amount
95
95
  * @param tokenAddr the address of the erc20 token
@@ -109,4 +109,3 @@ function increaseAllowance(tokenAddr, spender, amount, signerOrProvider) {
109
109
  return yield contract.populateTransaction.increaseAllowance(spender, amount);
110
110
  });
111
111
  }
112
- exports.increaseAllowance = increaseAllowance;
@@ -20,8 +20,8 @@ export class ChainClient {
20
20
  });
21
21
  }
22
22
  getChainId() {
23
- var _a;
24
23
  return __awaiter(this, void 0, void 0, function* () {
24
+ var _a;
25
25
  let chainId = 0;
26
26
  if (Signer.isSigner(this.signerOrProvider)) {
27
27
  const network = yield ((_a = this.signerOrProvider.provider) === null || _a === void 0 ? void 0 : _a.getNetwork());
@@ -72,7 +72,7 @@ export const addresses = {
72
72
  };
73
73
  export function getAddress(identifier, chainId) {
74
74
  const addressesForChain = addresses[chainId];
75
- if (!addresses) {
75
+ if (!addressesForChain) {
76
76
  throw new Error(`No addresses found for chain ID ${chainId}`);
77
77
  }
78
78
  const address = addressesForChain[identifier];