@cryptorubic/web3 0.0.18 → 0.0.20

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cryptorubic/web3",
3
- "version": "0.0.18",
3
+ "version": "0.0.20",
4
4
  "dependencies": {
5
5
  "tslib": "^2.3.0"
6
6
  },
@@ -31,4 +31,5 @@ export declare class EvmAdapter extends AbstractAdapter<PublicActions & PublicCl
31
31
  getAllowance(fromTokenAddress: string, walletAddress: string, spenderAddress: string): Promise<AllowanceInfo>;
32
32
  encodeApprove(tokenAddress: string, spenderAddress: string, amount?: string): EvmTransactionConfig;
33
33
  needApprove(token: TokenAmount, contractAddress: string, walletAddress: string, amount: string): Promise<boolean>;
34
+ approve(fromAddress: string, tokenAddress: string, spenderAddress: string, amount?: string): Promise<string>;
34
35
  }
@@ -136,8 +136,7 @@ class EvmAdapter extends abstract_adapter_1.AbstractAdapter {
136
136
  to: config.to,
137
137
  ...(config.value && { value: BigInt(config.value) })
138
138
  };
139
- // @ts-ignore
140
- await this.core.call(callParams);
139
+ await this.public.call(callParams);
141
140
  }
142
141
  catch (err) {
143
142
  this.logger?.customError('Error while simulating transaction', err);
@@ -243,5 +242,10 @@ class EvmAdapter extends abstract_adapter_1.AbstractAdapter {
243
242
  return allowanceWei.lt(token.weiAmount);
244
243
  }
245
244
  ;
245
+ async approve(fromAddress, tokenAddress, spenderAddress, amount) {
246
+ const config = this.encodeApprove(tokenAddress, spenderAddress, amount);
247
+ return this.write(fromAddress, config.to, config.value, config.data);
248
+ }
249
+ ;
246
250
  }
247
251
  exports.EvmAdapter = EvmAdapter;
@@ -9,7 +9,7 @@ export interface ApproveAdapter<T> {
9
9
  */
10
10
  getAllowance(fromTokenAddress: string, walletAddress: string, spenderAddress: string): Promise<AllowanceInfo>;
11
11
  /**
12
- *
12
+ * Get data for tokens approve
13
13
  * @param tokenAddress erc20 token address
14
14
  * @param spenderAddress spender address
15
15
  * @param amount amount in non wei
@@ -23,4 +23,11 @@ export interface ApproveAdapter<T> {
23
23
  * @param amount
24
24
  */
25
25
  needApprove(token: TokenAmount, contractAddress: string, walletAddress: string, amount: string): Promise<boolean>;
26
+ /**
27
+ * Get data for tokens approve
28
+ * @param tokenAddress erc20 token address
29
+ * @param spenderAddress spender address
30
+ * @param amount amount in non wei
31
+ */
32
+ approve(walletAddress: string, tokenAddress: string, spenderAddress: string, amount?: string): Promise<string>;
26
33
  }
@@ -31,4 +31,5 @@ export declare class TronAdapter extends AbstractAdapter<TronWeb, TronWeb, TronB
31
31
  needApprove(from: TokenAmount | PriceTokenAmount, walletAddress: string, spender: string): Promise<boolean>;
32
32
  encodeApprove(tokenAddress: string, spenderAddress: string, amount?: string): TronTransactionConfig;
33
33
  getAllowance(fromTokenAddress: string, walletAddress: string, spender: string): Promise<AllowanceInfo>;
34
+ approve(fromAddress: string, tokenAddress: string, spenderAddress: string, amount?: string): Promise<string>;
34
35
  }
@@ -215,5 +215,10 @@ class TronAdapter extends abstract_adapter_1.AbstractAdapter {
215
215
  const allowanceNonWei = core_1.Token.fromWei(allowanceWeiBN, Number(decimals));
216
216
  return { allowanceNonWei, allowanceWei: allowanceWeiBN };
217
217
  }
218
+ async approve(fromAddress, tokenAddress, spenderAddress, amount) {
219
+ const config = this.encodeApprove(tokenAddress, spenderAddress, amount);
220
+ return this.write(config.to, config.signature, config.arguments);
221
+ }
222
+ ;
218
223
  }
219
224
  exports.TronAdapter = TronAdapter;