@cryptorubic/web3 0.0.19 → 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 +1 -1
- package/src/lib/adapter/adapters/evm-adapter.d.ts +1 -0
- package/src/lib/adapter/adapters/evm-adapter.js +5 -0
- package/src/lib/adapter/adapters/models/approve-adapter.d.ts +8 -1
- package/src/lib/adapter/adapters/tron-adapter.d.ts +1 -0
- package/src/lib/adapter/adapters/tron-adapter.js +5 -0
package/package.json
CHANGED
|
@@ -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
|
}
|
|
@@ -242,5 +242,10 @@ class EvmAdapter extends abstract_adapter_1.AbstractAdapter {
|
|
|
242
242
|
return allowanceWei.lt(token.weiAmount);
|
|
243
243
|
}
|
|
244
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
|
+
;
|
|
245
250
|
}
|
|
246
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;
|