@xchainjs/xchain-thorchain-amm 3.0.14 → 3.0.15

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 (3) hide show
  1. package/lib/index.esm.js +27 -27
  2. package/lib/index.js +27 -27
  3. package/package.json +18 -18
package/lib/index.esm.js CHANGED
@@ -3031,8 +3031,8 @@ class ThorchainAction {
3031
3031
  : this.makeProtocolAction(actionParams);
3032
3032
  });
3033
3033
  }
3034
- static makeProtocolAction({ wallet, assetAmount, memo }) {
3035
- return __awaiter(this, void 0, void 0, function* () {
3034
+ static makeProtocolAction(_a) {
3035
+ return __awaiter(this, arguments, void 0, function* ({ wallet, assetAmount, memo }) {
3036
3036
  const hash = yield wallet.deposit({
3037
3037
  chain: THORChain,
3038
3038
  asset: assetAmount.asset,
@@ -3045,8 +3045,8 @@ class ThorchainAction {
3045
3045
  };
3046
3046
  });
3047
3047
  }
3048
- static makeNonProtocolAction({ wallet, assetAmount, recipient, memo, }) {
3049
- return __awaiter(this, void 0, void 0, function* () {
3048
+ static makeNonProtocolAction(_a) {
3049
+ return __awaiter(this, arguments, void 0, function* ({ wallet, assetAmount, recipient, memo, }) {
3050
3050
  // Non EVM actions
3051
3051
  if (!isProtocolEVMChain(assetAmount.asset.chain)) {
3052
3052
  if (isProtocolBFTChain(assetAmount.asset.chain)) {
@@ -3164,8 +3164,8 @@ class ThorchainAMM {
3164
3164
 
3165
3165
  * @returns The estimated swap details.
3166
3166
  */
3167
- estimateSwap({ fromAddress, fromAsset, amount, destinationAsset, destinationAddress, affiliateAddress = '', affiliateBps = 0, toleranceBps, liquidityToleranceBps, streamingInterval, streamingQuantity, }) {
3168
- return __awaiter(this, void 0, void 0, function* () {
3167
+ estimateSwap(_a) {
3168
+ return __awaiter(this, arguments, void 0, function* ({ fromAddress, fromAsset, amount, destinationAsset, destinationAddress, affiliateAddress = '', affiliateBps = 0, toleranceBps, liquidityToleranceBps, streamingInterval, streamingQuantity, }) {
3169
3169
  const errors = yield this.validateSwap({
3170
3170
  fromAddress,
3171
3171
  fromAsset,
@@ -3196,8 +3196,8 @@ class ThorchainAMM {
3196
3196
  * @param {QuoteSwapParams} quoteSwapParams Swap params
3197
3197
  * @returns {string[]} the reasons the swap can not be done. If it is empty there are no reason to avoid the swap
3198
3198
  */
3199
- validateSwap({ fromAsset, fromAddress, destinationAsset, destinationAddress, amount, affiliateAddress, affiliateBps, streamingInterval, streamingQuantity, }) {
3200
- return __awaiter(this, void 0, void 0, function* () {
3199
+ validateSwap(_a) {
3200
+ return __awaiter(this, arguments, void 0, function* ({ fromAsset, fromAddress, destinationAsset, destinationAddress, amount, affiliateAddress, affiliateBps, streamingInterval, streamingQuantity, }) {
3201
3201
  const errors = [];
3202
3202
  if (destinationAddress &&
3203
3203
  !validateAddress(this.thorchainQuery.thorchainCache.midgardQuery.midgardCache.midgard.network, isSynthAsset(destinationAsset) || isTradeAsset(destinationAsset) || isSecuredAsset(destinationAsset)
@@ -3249,8 +3249,8 @@ class ThorchainAMM {
3249
3249
  * @param params - The swap parameters.
3250
3250
  * @returns {SwapSubmitted} - The transaction hash, URL of BlockExplorer, and expected wait time.
3251
3251
  */
3252
- doSwap({ fromAsset, fromAddress, amount, destinationAsset, destinationAddress, affiliateAddress, affiliateBps, toleranceBps, streamingInterval, streamingQuantity, }) {
3253
- return __awaiter(this, void 0, void 0, function* () {
3252
+ doSwap(_a) {
3253
+ return __awaiter(this, arguments, void 0, function* ({ fromAsset, fromAddress, amount, destinationAsset, destinationAddress, affiliateAddress, affiliateBps, toleranceBps, streamingInterval, streamingQuantity, }) {
3254
3254
  // Retrieve swap details from ThorchainQuery to ensure validity
3255
3255
  const txDetails = yield this.thorchainQuery.quoteSwap({
3256
3256
  fromAsset,
@@ -3281,8 +3281,8 @@ class ThorchainAMM {
3281
3281
  * @param {ApproveParams} approveParams Parameters for approving the router to spend
3282
3282
  * @returns {Promise<TxSubmitted>} Transaction hash and URL
3283
3283
  */
3284
- approveRouterToSpend({ asset, amount }) {
3285
- return __awaiter(this, void 0, void 0, function* () {
3284
+ approveRouterToSpend(_a) {
3285
+ return __awaiter(this, arguments, void 0, function* ({ asset, amount }) {
3286
3286
  // Get inbound details for the asset chain
3287
3287
  const inboundDetails = yield this.thorchainQuery.getChainInboundDetails(asset.chain);
3288
3288
  if (!inboundDetails.router)
@@ -3303,8 +3303,8 @@ class ThorchainAMM {
3303
3303
  * int name of address
3304
3304
  * @returns {string[]} the reasons the router of the asset is not allowed to spend the amount. If it is empty, the asset router is allowed to spend the amount
3305
3305
  */
3306
- isRouterApprovedToSpend({ asset, amount, address }) {
3307
- return __awaiter(this, void 0, void 0, function* () {
3306
+ isRouterApprovedToSpend(_a) {
3307
+ return __awaiter(this, arguments, void 0, function* ({ asset, amount, address }) {
3308
3308
  const errors = [];
3309
3309
  if (!isProtocolERC20Asset(asset)) {
3310
3310
  errors.push('Asset should be ERC20');
@@ -3709,8 +3709,8 @@ class ThorchainAMM {
3709
3709
  * @param {AddToTradeAccountParams} param Add to trade account params
3710
3710
  * @returns {AddToTradeAccount} Estimation to add amount to trade account
3711
3711
  */
3712
- estimateAddToTradeAccount({ amount, address }) {
3713
- return __awaiter(this, void 0, void 0, function* () {
3712
+ estimateAddToTradeAccount(_a) {
3713
+ return __awaiter(this, arguments, void 0, function* ({ amount, address }) {
3714
3714
  const errors = [];
3715
3715
  if (!validateAddress(this.thorchainQuery.thorchainCache.midgardQuery.midgardCache.midgard.network, THORChain, address)) {
3716
3716
  errors.push('Invalid trade account address');
@@ -3719,7 +3719,7 @@ class ThorchainAMM {
3719
3719
  try {
3720
3720
  inboundDetails = yield this.thorchainQuery.getChainInboundDetails(amount.asset.chain);
3721
3721
  }
3722
- catch (_a) {
3722
+ catch (_b) {
3723
3723
  errors.push(`Can not get inbound address for ${amount.asset.chain}`);
3724
3724
  }
3725
3725
  if (errors.length) {
@@ -3745,8 +3745,8 @@ class ThorchainAMM {
3745
3745
  * @param {AddToTradeAccountParams} param Add to trade account params
3746
3746
  * @returns {TxSubmitted} Transaction made to add the trade amount
3747
3747
  */
3748
- addToTradeAccount({ amount, address }) {
3749
- return __awaiter(this, void 0, void 0, function* () {
3748
+ addToTradeAccount(_a) {
3749
+ return __awaiter(this, arguments, void 0, function* ({ amount, address }) {
3750
3750
  const quote = yield this.estimateAddToTradeAccount({ amount, address });
3751
3751
  if (!quote.allowed)
3752
3752
  throw Error(`Can not add to trade account. ${quote.errors.join(' ')}`);
@@ -3763,8 +3763,8 @@ class ThorchainAMM {
3763
3763
  * @param {WithdrawFromTradeAccountParams} param Withdraw from trade account params
3764
3764
  * @returns {WithdrawFromTradeAccount} Estimation to withdraw amount from trade account
3765
3765
  */
3766
- estimateWithdrawFromTradeAccount({ amount, address, }) {
3767
- return __awaiter(this, void 0, void 0, function* () {
3766
+ estimateWithdrawFromTradeAccount(_a) {
3767
+ return __awaiter(this, arguments, void 0, function* ({ amount, address, }) {
3768
3768
  const errors = [];
3769
3769
  if (!validateAddress(this.thorchainQuery.thorchainCache.midgardQuery.midgardCache.midgard.network, amount.asset.chain, address)) {
3770
3770
  errors.push('Invalid address to send the withdraw');
@@ -3790,8 +3790,8 @@ class ThorchainAMM {
3790
3790
  * @param {WithdrawFromTradeAccountParams} param Withdraw from trade account params
3791
3791
  * @returns {TxSubmitted} Estimation to withdraw amount from trade account
3792
3792
  */
3793
- withdrawFromTradeAccount({ amount, address }) {
3794
- return __awaiter(this, void 0, void 0, function* () {
3793
+ withdrawFromTradeAccount(_a) {
3794
+ return __awaiter(this, arguments, void 0, function* ({ amount, address }) {
3795
3795
  const quote = yield this.estimateWithdrawFromTradeAccount({ amount, address });
3796
3796
  if (!quote.allowed)
3797
3797
  throw Error(`Can not withdraw from trade account. ${quote.errors.join(' ')}`);
@@ -3807,8 +3807,8 @@ class ThorchainAMM {
3807
3807
  * @param {DepositToRunePoolParams} params Deposit to Rune pool params
3808
3808
  * @returns {EstimateDepositToRunePool} Estimation to make the deposit
3809
3809
  */
3810
- estimateDepositToRunePool({ amount }) {
3811
- return __awaiter(this, void 0, void 0, function* () {
3810
+ estimateDepositToRunePool(_a) {
3811
+ return __awaiter(this, arguments, void 0, function* ({ amount }) {
3812
3812
  const constants = yield this.thorchainQuery.thorchainCache.thornode.getTcConstants();
3813
3813
  return {
3814
3814
  allowed: true,
@@ -3841,8 +3841,8 @@ class ThorchainAMM {
3841
3841
  * @param {WithdrawFromRunePoolParams} params Withdraw from Rune pool params
3842
3842
  * @returns {EstimateWithdrawFromRunePool} Estimation to make a withdraw from Rune pool
3843
3843
  */
3844
- estimateWithdrawFromRunePool({ withdrawBps, affiliate, feeBps, }) {
3845
- return __awaiter(this, void 0, void 0, function* () {
3844
+ estimateWithdrawFromRunePool(_a) {
3845
+ return __awaiter(this, arguments, void 0, function* ({ withdrawBps, affiliate, feeBps, }) {
3846
3846
  const errors = [];
3847
3847
  if (withdrawBps <= 0 || withdrawBps > 10000) {
3848
3848
  errors.push('withdrawBps out of range. Range 0-10000');
package/lib/index.js CHANGED
@@ -3033,8 +3033,8 @@ class ThorchainAction {
3033
3033
  : this.makeProtocolAction(actionParams);
3034
3034
  });
3035
3035
  }
3036
- static makeProtocolAction({ wallet, assetAmount, memo }) {
3037
- return __awaiter(this, void 0, void 0, function* () {
3036
+ static makeProtocolAction(_a) {
3037
+ return __awaiter(this, arguments, void 0, function* ({ wallet, assetAmount, memo }) {
3038
3038
  const hash = yield wallet.deposit({
3039
3039
  chain: xchainThorchain.THORChain,
3040
3040
  asset: assetAmount.asset,
@@ -3047,8 +3047,8 @@ class ThorchainAction {
3047
3047
  };
3048
3048
  });
3049
3049
  }
3050
- static makeNonProtocolAction({ wallet, assetAmount, recipient, memo, }) {
3051
- return __awaiter(this, void 0, void 0, function* () {
3050
+ static makeNonProtocolAction(_a) {
3051
+ return __awaiter(this, arguments, void 0, function* ({ wallet, assetAmount, recipient, memo, }) {
3052
3052
  // Non EVM actions
3053
3053
  if (!isProtocolEVMChain(assetAmount.asset.chain)) {
3054
3054
  if (isProtocolBFTChain(assetAmount.asset.chain)) {
@@ -3166,8 +3166,8 @@ class ThorchainAMM {
3166
3166
 
3167
3167
  * @returns The estimated swap details.
3168
3168
  */
3169
- estimateSwap({ fromAddress, fromAsset, amount, destinationAsset, destinationAddress, affiliateAddress = '', affiliateBps = 0, toleranceBps, liquidityToleranceBps, streamingInterval, streamingQuantity, }) {
3170
- return __awaiter(this, void 0, void 0, function* () {
3169
+ estimateSwap(_a) {
3170
+ return __awaiter(this, arguments, void 0, function* ({ fromAddress, fromAsset, amount, destinationAsset, destinationAddress, affiliateAddress = '', affiliateBps = 0, toleranceBps, liquidityToleranceBps, streamingInterval, streamingQuantity, }) {
3171
3171
  const errors = yield this.validateSwap({
3172
3172
  fromAddress,
3173
3173
  fromAsset,
@@ -3198,8 +3198,8 @@ class ThorchainAMM {
3198
3198
  * @param {QuoteSwapParams} quoteSwapParams Swap params
3199
3199
  * @returns {string[]} the reasons the swap can not be done. If it is empty there are no reason to avoid the swap
3200
3200
  */
3201
- validateSwap({ fromAsset, fromAddress, destinationAsset, destinationAddress, amount, affiliateAddress, affiliateBps, streamingInterval, streamingQuantity, }) {
3202
- return __awaiter(this, void 0, void 0, function* () {
3201
+ validateSwap(_a) {
3202
+ return __awaiter(this, arguments, void 0, function* ({ fromAsset, fromAddress, destinationAsset, destinationAddress, amount, affiliateAddress, affiliateBps, streamingInterval, streamingQuantity, }) {
3203
3203
  const errors = [];
3204
3204
  if (destinationAddress &&
3205
3205
  !validateAddress(this.thorchainQuery.thorchainCache.midgardQuery.midgardCache.midgard.network, xchainUtil.isSynthAsset(destinationAsset) || xchainUtil.isTradeAsset(destinationAsset) || xchainUtil.isSecuredAsset(destinationAsset)
@@ -3251,8 +3251,8 @@ class ThorchainAMM {
3251
3251
  * @param params - The swap parameters.
3252
3252
  * @returns {SwapSubmitted} - The transaction hash, URL of BlockExplorer, and expected wait time.
3253
3253
  */
3254
- doSwap({ fromAsset, fromAddress, amount, destinationAsset, destinationAddress, affiliateAddress, affiliateBps, toleranceBps, streamingInterval, streamingQuantity, }) {
3255
- return __awaiter(this, void 0, void 0, function* () {
3254
+ doSwap(_a) {
3255
+ return __awaiter(this, arguments, void 0, function* ({ fromAsset, fromAddress, amount, destinationAsset, destinationAddress, affiliateAddress, affiliateBps, toleranceBps, streamingInterval, streamingQuantity, }) {
3256
3256
  // Retrieve swap details from ThorchainQuery to ensure validity
3257
3257
  const txDetails = yield this.thorchainQuery.quoteSwap({
3258
3258
  fromAsset,
@@ -3283,8 +3283,8 @@ class ThorchainAMM {
3283
3283
  * @param {ApproveParams} approveParams Parameters for approving the router to spend
3284
3284
  * @returns {Promise<TxSubmitted>} Transaction hash and URL
3285
3285
  */
3286
- approveRouterToSpend({ asset, amount }) {
3287
- return __awaiter(this, void 0, void 0, function* () {
3286
+ approveRouterToSpend(_a) {
3287
+ return __awaiter(this, arguments, void 0, function* ({ asset, amount }) {
3288
3288
  // Get inbound details for the asset chain
3289
3289
  const inboundDetails = yield this.thorchainQuery.getChainInboundDetails(asset.chain);
3290
3290
  if (!inboundDetails.router)
@@ -3305,8 +3305,8 @@ class ThorchainAMM {
3305
3305
  * int name of address
3306
3306
  * @returns {string[]} the reasons the router of the asset is not allowed to spend the amount. If it is empty, the asset router is allowed to spend the amount
3307
3307
  */
3308
- isRouterApprovedToSpend({ asset, amount, address }) {
3309
- return __awaiter(this, void 0, void 0, function* () {
3308
+ isRouterApprovedToSpend(_a) {
3309
+ return __awaiter(this, arguments, void 0, function* ({ asset, amount, address }) {
3310
3310
  const errors = [];
3311
3311
  if (!isProtocolERC20Asset(asset)) {
3312
3312
  errors.push('Asset should be ERC20');
@@ -3711,8 +3711,8 @@ class ThorchainAMM {
3711
3711
  * @param {AddToTradeAccountParams} param Add to trade account params
3712
3712
  * @returns {AddToTradeAccount} Estimation to add amount to trade account
3713
3713
  */
3714
- estimateAddToTradeAccount({ amount, address }) {
3715
- return __awaiter(this, void 0, void 0, function* () {
3714
+ estimateAddToTradeAccount(_a) {
3715
+ return __awaiter(this, arguments, void 0, function* ({ amount, address }) {
3716
3716
  const errors = [];
3717
3717
  if (!validateAddress(this.thorchainQuery.thorchainCache.midgardQuery.midgardCache.midgard.network, xchainThorchain.THORChain, address)) {
3718
3718
  errors.push('Invalid trade account address');
@@ -3721,7 +3721,7 @@ class ThorchainAMM {
3721
3721
  try {
3722
3722
  inboundDetails = yield this.thorchainQuery.getChainInboundDetails(amount.asset.chain);
3723
3723
  }
3724
- catch (_a) {
3724
+ catch (_b) {
3725
3725
  errors.push(`Can not get inbound address for ${amount.asset.chain}`);
3726
3726
  }
3727
3727
  if (errors.length) {
@@ -3747,8 +3747,8 @@ class ThorchainAMM {
3747
3747
  * @param {AddToTradeAccountParams} param Add to trade account params
3748
3748
  * @returns {TxSubmitted} Transaction made to add the trade amount
3749
3749
  */
3750
- addToTradeAccount({ amount, address }) {
3751
- return __awaiter(this, void 0, void 0, function* () {
3750
+ addToTradeAccount(_a) {
3751
+ return __awaiter(this, arguments, void 0, function* ({ amount, address }) {
3752
3752
  const quote = yield this.estimateAddToTradeAccount({ amount, address });
3753
3753
  if (!quote.allowed)
3754
3754
  throw Error(`Can not add to trade account. ${quote.errors.join(' ')}`);
@@ -3765,8 +3765,8 @@ class ThorchainAMM {
3765
3765
  * @param {WithdrawFromTradeAccountParams} param Withdraw from trade account params
3766
3766
  * @returns {WithdrawFromTradeAccount} Estimation to withdraw amount from trade account
3767
3767
  */
3768
- estimateWithdrawFromTradeAccount({ amount, address, }) {
3769
- return __awaiter(this, void 0, void 0, function* () {
3768
+ estimateWithdrawFromTradeAccount(_a) {
3769
+ return __awaiter(this, arguments, void 0, function* ({ amount, address, }) {
3770
3770
  const errors = [];
3771
3771
  if (!validateAddress(this.thorchainQuery.thorchainCache.midgardQuery.midgardCache.midgard.network, amount.asset.chain, address)) {
3772
3772
  errors.push('Invalid address to send the withdraw');
@@ -3792,8 +3792,8 @@ class ThorchainAMM {
3792
3792
  * @param {WithdrawFromTradeAccountParams} param Withdraw from trade account params
3793
3793
  * @returns {TxSubmitted} Estimation to withdraw amount from trade account
3794
3794
  */
3795
- withdrawFromTradeAccount({ amount, address }) {
3796
- return __awaiter(this, void 0, void 0, function* () {
3795
+ withdrawFromTradeAccount(_a) {
3796
+ return __awaiter(this, arguments, void 0, function* ({ amount, address }) {
3797
3797
  const quote = yield this.estimateWithdrawFromTradeAccount({ amount, address });
3798
3798
  if (!quote.allowed)
3799
3799
  throw Error(`Can not withdraw from trade account. ${quote.errors.join(' ')}`);
@@ -3809,8 +3809,8 @@ class ThorchainAMM {
3809
3809
  * @param {DepositToRunePoolParams} params Deposit to Rune pool params
3810
3810
  * @returns {EstimateDepositToRunePool} Estimation to make the deposit
3811
3811
  */
3812
- estimateDepositToRunePool({ amount }) {
3813
- return __awaiter(this, void 0, void 0, function* () {
3812
+ estimateDepositToRunePool(_a) {
3813
+ return __awaiter(this, arguments, void 0, function* ({ amount }) {
3814
3814
  const constants = yield this.thorchainQuery.thorchainCache.thornode.getTcConstants();
3815
3815
  return {
3816
3816
  allowed: true,
@@ -3843,8 +3843,8 @@ class ThorchainAMM {
3843
3843
  * @param {WithdrawFromRunePoolParams} params Withdraw from Rune pool params
3844
3844
  * @returns {EstimateWithdrawFromRunePool} Estimation to make a withdraw from Rune pool
3845
3845
  */
3846
- estimateWithdrawFromRunePool({ withdrawBps, affiliate, feeBps, }) {
3847
- return __awaiter(this, void 0, void 0, function* () {
3846
+ estimateWithdrawFromRunePool(_a) {
3847
+ return __awaiter(this, arguments, void 0, function* ({ withdrawBps, affiliate, feeBps, }) {
3848
3848
  const errors = [];
3849
3849
  if (withdrawBps <= 0 || withdrawBps > 10000) {
3850
3850
  errors.push('withdrawBps out of range. Range 0-10000');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xchainjs/xchain-thorchain-amm",
3
- "version": "3.0.14",
3
+ "version": "3.0.15",
4
4
  "description": "module that exposes estimating & swappping cryptocurrency assets on thorchain",
5
5
  "keywords": [
6
6
  "THORChain",
@@ -36,23 +36,23 @@
36
36
  "url": "https://github.com/xchainjs/xchainjs-lib/issues"
37
37
  },
38
38
  "dependencies": {
39
- "@xchainjs/xchain-avax": "2.0.8",
40
- "@xchainjs/xchain-base": "1.0.8",
41
- "@xchainjs/xchain-bitcoin": "2.0.5",
42
- "@xchainjs/xchain-bitcoincash": "2.0.6",
43
- "@xchainjs/xchain-bsc": "2.0.9",
44
- "@xchainjs/xchain-client": "2.0.5",
45
- "@xchainjs/xchain-cosmos": "3.0.5",
46
- "@xchainjs/xchain-doge": "2.0.5",
47
- "@xchainjs/xchain-ethereum": "2.0.9",
48
- "@xchainjs/xchain-evm": "2.0.8",
49
- "@xchainjs/xchain-litecoin": "2.0.5",
50
- "@xchainjs/xchain-ripple": "1.0.6",
51
- "@xchainjs/xchain-solana": "1.0.5",
52
- "@xchainjs/xchain-thorchain": "3.0.9",
53
- "@xchainjs/xchain-thorchain-query": "2.0.7",
54
- "@xchainjs/xchain-util": "2.0.3",
55
- "@xchainjs/xchain-wallet": "2.0.12",
39
+ "@xchainjs/xchain-avax": "2.0.9",
40
+ "@xchainjs/xchain-base": "1.0.9",
41
+ "@xchainjs/xchain-bitcoin": "2.0.6",
42
+ "@xchainjs/xchain-bitcoincash": "2.0.7",
43
+ "@xchainjs/xchain-bsc": "2.0.10",
44
+ "@xchainjs/xchain-client": "2.0.6",
45
+ "@xchainjs/xchain-cosmos": "3.0.6",
46
+ "@xchainjs/xchain-doge": "2.0.6",
47
+ "@xchainjs/xchain-ethereum": "2.0.10",
48
+ "@xchainjs/xchain-evm": "2.0.9",
49
+ "@xchainjs/xchain-litecoin": "2.0.6",
50
+ "@xchainjs/xchain-ripple": "1.0.7",
51
+ "@xchainjs/xchain-solana": "1.0.6",
52
+ "@xchainjs/xchain-thorchain": "3.0.10",
53
+ "@xchainjs/xchain-thorchain-query": "2.0.8",
54
+ "@xchainjs/xchain-util": "2.0.4",
55
+ "@xchainjs/xchain-wallet": "2.0.13",
56
56
  "ethers": "^6.14.3"
57
57
  },
58
58
  "devDependencies": {