@mento-protocol/mento-sdk 1.0.0 → 1.0.2

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.
@@ -1,5 +1,11 @@
1
1
  import { BigNumberish, providers, Signer } from 'ethers';
2
2
  import { Address } from './interfaces';
3
+ /**
4
+ * Gets the chain ID from a signer or provider
5
+ * @param signerOrProvider an ethers provider or signer
6
+ * @returns the chain ID
7
+ */
8
+ export declare function getChainId(signerOrProvider: Signer | providers.Provider): Promise<number>;
3
9
  /**
4
10
  * Ensures that given signer is truly a a connected signer
5
11
  * @param signer an ethers signer
package/dist/cjs/utils.js CHANGED
@@ -9,8 +9,22 @@ 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 = void 0;
12
+ exports.increaseAllowance = exports.getSymbolFromTokenAddress = exports.getBrokerAddressFromRegistry = exports.validateSignerOrProvider = exports.validateSigner = exports.getChainId = void 0;
13
13
  const ethers_1 = require("ethers");
14
+ /**
15
+ * Gets the chain ID from a signer or provider
16
+ * @param signerOrProvider an ethers provider or signer
17
+ * @returns the chain ID
18
+ */
19
+ function getChainId(signerOrProvider) {
20
+ return __awaiter(this, void 0, void 0, function* () {
21
+ const provider = ethers_1.Signer.isSigner(signerOrProvider)
22
+ ? signerOrProvider.provider
23
+ : signerOrProvider;
24
+ return (yield provider.getNetwork()).chainId;
25
+ });
26
+ }
27
+ exports.getChainId = getChainId;
14
28
  /**
15
29
  * Ensures that given signer is truly a a connected signer
16
30
  * @param signer an ethers signer
@@ -1,2 +1,4 @@
1
1
  import { ContractAddressMap } from '../types';
2
2
  export declare const addresses: ContractAddressMap;
3
+ export type Identifier = keyof ContractAddressMap[keyof ContractAddressMap];
4
+ export declare function getAddress(identifier: Identifier, chainId: number): string;
@@ -8,6 +8,7 @@ export const addresses = {
8
8
  MentoToken: '0x7FF62f59e3e89EA34163EA1458EEBCc81177Cfb6',
9
9
  TimelockController: '0x890DB8A597940165901372Dd7DB61C9f246e2147',
10
10
  Locking: '0x001Bb66636dCd149A1A2bA8C50E408BdDd80279C',
11
+ MentoRouter: '0xbe729350f8cdfc19db6866e8579841188ee57f67',
11
12
  Broker: '0x777A8255cA72412f0d706dc03C9D1987306B4CaD',
12
13
  BiPoolManager: '0x22d9db95E6Ae61c104A7B6F6C78D7993B94ec901',
13
14
  BreakerBox: '0x303ED1df62Fa067659B586EbEe8De0EcE824Ab39',
@@ -30,6 +31,7 @@ export const addresses = {
30
31
  MentoToken: '0x3eDd2f7c90e2E931c817a44302Af7112E84be6Cc',
31
32
  TimelockController: '0xa0Ad8DD40104556122c21dF50eD14bb1B53A3338',
32
33
  Locking: '0x537CaE97C588C6DA64A385817F3D3563DDCf0591',
34
+ MentoRouter: '0xe6101a457a69b53e298e35a7f6e3dcb0390df02a',
33
35
  Broker: '0xD3Dff18E465bCa6241A244144765b4421Ac14D09',
34
36
  BiPoolManager: '0x9B64E8EaBD1a035b148cE970d3319c5C3Ad53EC3',
35
37
  BreakerBox: '0xC76BDf0AFb654888728003683cf748A8B1b4f5fD',
@@ -45,13 +47,14 @@ export const addresses = {
45
47
  SortedOracles: '0xFdd8bD58115FfBf04e47411c1d228eCC45E93075',
46
48
  },
47
49
  [ChainId.BAKLAVA]: {
48
- GovernanceFactory: '0x77645271665AdDF195202dEf1ad3cA678B442411',
49
- Airgrab: '0x349aa8910577A6fE16cA7b98b5A135d14CE4dF9f',
50
- Emission: '0xcd427DDB27D835E5353312e7897bb9ad35F0E214',
51
- MentoGovernor: '0x5dFE8CC7743C636a86bED8F8d0de982d502E22fC',
52
- MentoToken: '0xD2f4f160BAF7D88a7A9189b03D0B3AA6A5D9775B',
53
- TimelockController: '0xb5977b1d208ef35FAf97A9534Dd849c356F362C5',
54
- Locking: '0x831DAfC0912e1c2aBa2Da90668c0856d48a8C06b',
50
+ GovernanceFactory: '0xe23A28a92B95c743fC0F09c16a6b2E6D59F234Fa',
51
+ Airgrab: '0xNotDeployed',
52
+ Emission: '0xNotDeployed',
53
+ MentoGovernor: '0xf1873597aA9757f57BA8Ed84a3EDb2E3217EF09f',
54
+ MentoToken: '0x8942330eCB5A6c808aac3Aec3C6aab6D8CF436FE',
55
+ TimelockController: '0x8c045769087F9de69B70949ED7fC23c14Db71e20',
56
+ Locking: '0x1E15b108c51a0cAEAFf1a0E6f27A853Bde1AA2e6',
57
+ MentoRouter: '0xC5449dbB0aF89F5E3C8E0e1611966E1964F891b1',
55
58
  Broker: '0x6723749339e320E1EFcd9f1B0D997ecb45587208',
56
59
  BiPoolManager: '0xFF9a3da00F42839CD6D33AD7adf50bCc97B41411',
57
60
  BreakerBox: '0x5Ea5A5F694F10de979BEeC7b8041E9f931F54bc7',
@@ -67,3 +70,14 @@ export const addresses = {
67
70
  SortedOracles: '0x88A187a876290E9843175027902B9f7f1B092c88',
68
71
  },
69
72
  };
73
+ export function getAddress(identifier, chainId) {
74
+ const addressesForChain = addresses[chainId];
75
+ if (!addressesForChain) {
76
+ throw new Error(`No addresses found for chain ID ${chainId}`);
77
+ }
78
+ const address = addressesForChain[identifier];
79
+ if (!address) {
80
+ throw new Error(`Address not found for identifier ${identifier} on chain ID ${chainId}`);
81
+ }
82
+ return address;
83
+ }
@@ -0,0 +1,3 @@
1
+ import { TradablePair } from '../mento';
2
+ export declare const TRADABLE_PAIRS: Record<number, TradablePair[]>;
3
+ export declare function getCachedTradablePairs(chainId: number): TradablePair[] | undefined;