@axelar-network/axelarjs-sdk 0.11.7 → 0.12.0-alpha
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/dist/src/chains/types/index.d.ts +2 -0
- package/dist/src/chains/types/index.d.ts.map +1 -1
- package/dist/src/chains/types/index.js.map +1 -1
- package/dist/src/constants/index.js +2 -2
- package/dist/src/libs/AxelarAssetTransfer.d.ts +20 -10
- package/dist/src/libs/AxelarAssetTransfer.d.ts.map +1 -1
- package/dist/src/libs/AxelarAssetTransfer.js +57 -12
- package/dist/src/libs/AxelarAssetTransfer.js.map +1 -1
- package/dist/src/libs/AxelarQueryAPI.d.ts +2 -2
- package/dist/src/libs/AxelarQueryAPI.d.ts.map +1 -1
- package/dist/src/libs/AxelarQueryAPI.js +20 -25
- package/dist/src/libs/AxelarQueryAPI.js.map +1 -1
- package/dist/src/libs/TransactionRecoveryApi/AxelarDepositRecoveryAPI.d.ts.map +1 -1
- package/dist/src/libs/TransactionRecoveryApi/AxelarDepositRecoveryAPI.js +4 -2
- package/dist/src/libs/TransactionRecoveryApi/AxelarDepositRecoveryAPI.js.map +1 -1
- package/dist/src/libs/TransactionRecoveryApi/AxelarGMPRecoveryAPI.d.ts +2 -2
- package/dist/src/libs/TransactionRecoveryApi/AxelarGMPRecoveryAPI.d.ts.map +1 -1
- package/dist/src/libs/TransactionRecoveryApi/AxelarGMPRecoveryAPI.js +11 -1
- package/dist/src/libs/TransactionRecoveryApi/AxelarGMPRecoveryAPI.js.map +1 -1
- package/dist/src/libs/TransactionRecoveryApi/AxelarRecoveryApi.d.ts +8 -8
- package/dist/src/libs/TransactionRecoveryApi/AxelarRecoveryApi.d.ts.map +1 -1
- package/dist/src/libs/TransactionRecoveryApi/AxelarRecoveryApi.js +27 -21
- package/dist/src/libs/TransactionRecoveryApi/AxelarRecoveryApi.js.map +1 -1
- package/dist/src/libs/TransactionRecoveryApi/client/EVMClient/index.js +1 -1
- package/dist/src/libs/TransactionRecoveryApi/client/EVMClient/index.js.map +1 -1
- package/dist/src/libs/TransactionRecoveryApi/constants/chain/testnet.d.ts +2 -2
- package/dist/src/libs/TransactionRecoveryApi/constants/chain/testnet.d.ts.map +1 -1
- package/dist/src/libs/TransactionRecoveryApi/constants/chain/testnet.js +3 -3
- package/dist/src/libs/TransactionRecoveryApi/constants/chain/testnet.js.map +1 -1
- package/dist/src/libs/TransactionRecoveryApi/helpers/contractEventHelper.d.ts +7 -0
- package/dist/src/libs/TransactionRecoveryApi/helpers/contractEventHelper.d.ts.map +1 -1
- package/dist/src/libs/TransactionRecoveryApi/helpers/contractEventHelper.js +75 -10
- package/dist/src/libs/TransactionRecoveryApi/helpers/contractEventHelper.js.map +1 -1
- package/dist/src/libs/TransactionRecoveryApi/helpers/providerHelper.d.ts +1 -2
- package/dist/src/libs/TransactionRecoveryApi/helpers/providerHelper.d.ts.map +1 -1
- package/dist/src/libs/TransactionRecoveryApi/helpers/providerHelper.js.map +1 -1
- package/dist/src/libs/types/index.d.ts +1 -1
- package/dist/src/libs/types/index.d.ts.map +1 -1
- package/dist/src/libs/types/index.js +7 -7
- package/dist/src/libs/types/index.js.map +1 -1
- package/dist/src/services/SocketService.d.ts.map +1 -1
- package/dist/src/services/SocketService.js +25 -23
- package/dist/src/services/SocketService.js.map +1 -1
- package/dist/src/utils/asyncRetry.js +3 -3
- package/dist/src/utils/asyncRetry.js.map +1 -1
- package/dist/src/utils/validateChain.d.ts +1 -0
- package/dist/src/utils/validateChain.d.ts.map +1 -1
- package/dist/src/utils/validateChain.js +12 -1
- package/dist/src/utils/validateChain.js.map +1 -1
- package/package.json +1 -1
|
@@ -11,6 +11,7 @@ export interface AssetAndChainInfo {
|
|
|
11
11
|
destinationChainInfo: ChainInfo;
|
|
12
12
|
}
|
|
13
13
|
export interface ChainInfo {
|
|
14
|
+
id: string;
|
|
14
15
|
assets?: AssetInfo[];
|
|
15
16
|
chainSymbol: string;
|
|
16
17
|
chainName: string;
|
|
@@ -24,6 +25,7 @@ export interface ChainInfo {
|
|
|
24
25
|
testnet: string;
|
|
25
26
|
mainnet: string;
|
|
26
27
|
};
|
|
28
|
+
nativeAsset: string[];
|
|
27
29
|
addressPrefix: string;
|
|
28
30
|
}
|
|
29
31
|
export interface AssetTransferObject {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/chains/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D,MAAM,WAAW,KAAK;IACpB,SAAS,EAAE,SAAS,CAAC;IACrB,eAAe,EAAE,CAAC,kBAAkB,EAAE,MAAM,KAAK,OAAO,CAAC;CAC1D;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,iBAAiB,CAAC;IAC7B,eAAe,EAAE,SAAS,CAAC;IAC3B,oBAAoB,EAAE,SAAS,CAAC;CACjC;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,OAAO,CAAC;IACxB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,WAAW,GAAG,KAAK,CAAC;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE;QACf,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,mBAAmB;IAClC,eAAe,EAAE,SAAS,CAAC;IAC3B,oBAAoB,EAAE,SAAS,CAAC;IAChC,mBAAmB,EAAE,SAAS,CAAC;IAC/B,wBAAwB,EAAE,SAAS,CAAC;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,kBAAmB,SAAQ,SAAS;IACnD,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,SAAS,CAAC;CACtB;AAED,MAAM,WAAW,iBAAkB,SAAQ,SAAS;IAClD,iBAAiB,EAAE,mBAAmB,CAAC;IACvC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,oBAAY,QAAQ;IAClB,GAAG,oCAAoC;IACvC,GAAG,0CAA0C;CAC9C;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,QAAQ,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,kBAAmB,SAAQ,eAAe;IACzD,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,kBAAmB,SAAQ,eAAe;IACzD,KAAK,EAAE,MAAM,CAAC;CACf;AAGD,oBAAY,mBAAmB;IAE7B,IAAI,SAAS;IACb,gBAAgB,qBAAqB;IACrC,iBAAiB,sBAAsB;CACxC;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,mBAAmB,CAAC;CAC5B;AAED,oBAAY,eAAe,GAAG;IAC5B,WAAW,EAAE,WAAW,CAAC;CAC1B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/chains/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D,MAAM,WAAW,KAAK;IACpB,SAAS,EAAE,SAAS,CAAC;IACrB,eAAe,EAAE,CAAC,kBAAkB,EAAE,MAAM,KAAK,OAAO,CAAC;CAC1D;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,iBAAiB,CAAC;IAC7B,eAAe,EAAE,SAAS,CAAC;IAC3B,oBAAoB,EAAE,SAAS,CAAC;CACjC;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,OAAO,CAAC;IACxB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,WAAW,GAAG,KAAK,CAAC;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE;QACf,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,mBAAmB;IAClC,eAAe,EAAE,SAAS,CAAC;IAC3B,oBAAoB,EAAE,SAAS,CAAC;IAChC,mBAAmB,EAAE,SAAS,CAAC;IAC/B,wBAAwB,EAAE,SAAS,CAAC;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,kBAAmB,SAAQ,SAAS;IACnD,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,SAAS,CAAC;CACtB;AAED,MAAM,WAAW,iBAAkB,SAAQ,SAAS;IAClD,iBAAiB,EAAE,mBAAmB,CAAC;IACvC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,oBAAY,QAAQ;IAClB,GAAG,oCAAoC;IACvC,GAAG,0CAA0C;CAC9C;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,QAAQ,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,kBAAmB,SAAQ,eAAe;IACzD,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,kBAAmB,SAAQ,eAAe;IACzD,KAAK,EAAE,MAAM,CAAC;CACf;AAGD,oBAAY,mBAAmB;IAE7B,IAAI,SAAS;IACb,gBAAgB,qBAAqB;IACrC,iBAAiB,sBAAsB;CACxC;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,mBAAmB,CAAC;CAC5B;AAED,oBAAY,eAAe,GAAG;IAC5B,WAAW,EAAE,WAAW,CAAC;CAC1B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/chains/types/index.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/chains/types/index.ts"],"names":[],"mappings":";;;AAuDA,IAAY,QAGX;AAHD,WAAY,QAAQ;IAClB,mDAAuC,CAAA;IACvC,yDAA6C,CAAA;AAC/C,CAAC,EAHW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAGnB;AAiBD,2CAA2C;AAC3C,IAAY,mBAKX;AALD,WAAY,mBAAmB;IAC7B,wCAAwC;IACxC,oCAAa,CAAA;IACb,4DAAqC,CAAA;IACrC,8DAAuC,CAAA;AACzC,CAAC,EALW,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAK9B"}
|
|
@@ -34,8 +34,8 @@ const testnetConfigs = {
|
|
|
34
34
|
};
|
|
35
35
|
const mainnetConfigs = {
|
|
36
36
|
resourceUrl: `https://nest-server-mainnet.axelar.dev`,
|
|
37
|
-
axelarRpcUrl: "https://axelar
|
|
38
|
-
axelarLcdUrl: "https://axelar
|
|
37
|
+
axelarRpcUrl: "https://rpc-axelar.imperator.co",
|
|
38
|
+
axelarLcdUrl: "https://lcd-axelar.imperator.co",
|
|
39
39
|
axelarGMPApiUrl: "https://api.gmp.axelarscan.io",
|
|
40
40
|
depositServiceUrl: "https://deposit-service.mainnet.axelar.dev",
|
|
41
41
|
recoveryApiUrl: "https://axelar-signing-relayer-mainnet.axelar.dev",
|
|
@@ -1,6 +1,15 @@
|
|
|
1
1
|
import { OTC } from "../services/types";
|
|
2
2
|
import { RestService, SocketService } from "../services";
|
|
3
3
|
import { AxelarAssetTransferConfig, Environment } from "./types";
|
|
4
|
+
interface GetDepositAddressParams {
|
|
5
|
+
fromChain: string;
|
|
6
|
+
toChain: string;
|
|
7
|
+
destinationAddress: string;
|
|
8
|
+
asset: string;
|
|
9
|
+
options?: {
|
|
10
|
+
_traceId?: string;
|
|
11
|
+
};
|
|
12
|
+
}
|
|
4
13
|
export declare class AxelarAssetTransfer {
|
|
5
14
|
readonly environment: Environment;
|
|
6
15
|
readonly resourceUrl: string;
|
|
@@ -18,17 +27,17 @@ export declare class AxelarAssetTransfer {
|
|
|
18
27
|
}>;
|
|
19
28
|
validateOfflineDepositAddress(wrapOrUnWrap: "wrap" | "unwrap", fromChain: string, toChain: string, destinationAddress: string, refundAddress: string, hexSalt: string): Promise<string>;
|
|
20
29
|
/**
|
|
21
|
-
*
|
|
22
|
-
* @param fromChain Source chain identifier eg: avalanche, moonbeam ethereum-2, terra-2 ...
|
|
23
|
-
* @param toChain Destination chain identifier eg: avalanche, moonbeam ethereum-2, terra-2 ...
|
|
24
|
-
* @param destinationAddress Address where the asset should be transferred to on the destination chain
|
|
25
|
-
* @param asset Asset denomination eg: uausdc, uaxl ...
|
|
26
|
-
* @param options
|
|
27
|
-
* @
|
|
30
|
+
* @param {Object} requestParams
|
|
31
|
+
* @param {string} requestParams.fromChain - Source chain identifier eg: avalanche, moonbeam ethereum-2, terra-2 ...
|
|
32
|
+
* @param {string} requestParams.toChain - Destination chain identifier eg: avalanche, moonbeam ethereum-2, terra-2 ...
|
|
33
|
+
* @param {string} requestParams.destinationAddress - Address where the asset should be transferred to on the destination chain
|
|
34
|
+
* @param {string} requestParams.asset - Asset denomination eg: uausdc, uaxl ... If the asset specific is native cxy (e.g. ETH, AVAX, etc), the ERC20 version of the asset will appear on the dest chain
|
|
35
|
+
* @param {Object} requestParams.options
|
|
36
|
+
* @param {string} requestParams.options._traceId
|
|
37
|
+
* @param {boolean} requestParams.options.shouldUnwrapIntoNative - when sending wrapped native asset back to its home chain (e.g. WETH back to Ethereum), specify "true" to receive native ETH; otherwise will received ERC20 version
|
|
38
|
+
* @param {string} requestParams.options.refundAddress - recipient where funds can be refunded if wrong ERC20 asset is deposited; ONLY AVAILABLE FOR WRAP/UNWRAP SERVICE
|
|
28
39
|
*/
|
|
29
|
-
getDepositAddress(
|
|
30
|
-
_traceId: string;
|
|
31
|
-
}): Promise<string>;
|
|
40
|
+
getDepositAddress(requestParamsOrFromChain: GetDepositAddressParams | string, _toChain?: string, _destinationAddress?: string, _asset?: string, _options?: any): Promise<string>;
|
|
32
41
|
getOneTimeCode(signerAddress: string, traceId: string): Promise<OTC>;
|
|
33
42
|
getInitRoomId(fromChain: string, toChain: string, destinationAddress: string, asset: string, publicAddress: string, signature: string, traceId: string): Promise<string>;
|
|
34
43
|
getLinkEvent(roomId: string, sourceChain: string, destinationChain: string, destinationAddress: string): Promise<string>;
|
|
@@ -40,4 +49,5 @@ export declare class AxelarAssetTransfer {
|
|
|
40
49
|
getStaticInfo(): Promise<Record<string, any>>;
|
|
41
50
|
validateChainIdentifiers(fromChain: string, toChain: string): Promise<boolean>;
|
|
42
51
|
}
|
|
52
|
+
export {};
|
|
43
53
|
//# sourceMappingURL=AxelarAssetTransfer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AxelarAssetTransfer.d.ts","sourceRoot":"","sources":["../../../src/libs/AxelarAssetTransfer.ts"],"names":[],"mappings":"AAUA,OAAO,EAAsD,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAC5F,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"AxelarAssetTransfer.d.ts","sourceRoot":"","sources":["../../../src/libs/AxelarAssetTransfer.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,10 +20,12 @@ const types_1 = require("../services/types");
|
|
|
20
20
|
const services_1 = require("../services");
|
|
21
21
|
const utils_2 = require("../utils");
|
|
22
22
|
const constants_1 = require("../constants");
|
|
23
|
+
const types_2 = require("./types");
|
|
23
24
|
const DepositReceiver_json_1 = __importDefault(require("../../artifacts/contracts/deposit-service/DepositReceiver.sol/DepositReceiver.json"));
|
|
24
25
|
const ReceiverImplementation_json_1 = __importDefault(require("../../artifacts/contracts/deposit-service/ReceiverImplementation.sol/ReceiverImplementation.json"));
|
|
25
26
|
const s3_1 = __importDefault(require("./TransactionRecoveryApi/constants/s3"));
|
|
26
27
|
const ethers_1 = require("ethers");
|
|
28
|
+
const chains_1 = require("../chains");
|
|
27
29
|
const { HashZero } = ethers_1.constants;
|
|
28
30
|
class AxelarAssetTransfer {
|
|
29
31
|
constructor(config) {
|
|
@@ -41,6 +43,8 @@ class AxelarAssetTransfer {
|
|
|
41
43
|
}
|
|
42
44
|
getDepositAddressForNativeWrap(fromChain, toChain, destinationAddress, refundAddress) {
|
|
43
45
|
return __awaiter(this, void 0, void 0, function* () {
|
|
46
|
+
yield (0, utils_2.isValidChainIdentifier)(fromChain, this.environment);
|
|
47
|
+
yield (0, utils_2.isValidChainIdentifier)(toChain, this.environment);
|
|
44
48
|
refundAddress = refundAddress || (yield this.getGasReceiverContractAddress(fromChain));
|
|
45
49
|
const { address } = yield this.getDepositAddressFromRemote("wrap", fromChain, toChain, destinationAddress, refundAddress, HashZero);
|
|
46
50
|
const expectedAddress = yield this.validateOfflineDepositAddress("wrap", fromChain, toChain, destinationAddress, refundAddress, HashZero);
|
|
@@ -51,6 +55,8 @@ class AxelarAssetTransfer {
|
|
|
51
55
|
}
|
|
52
56
|
getDepositAddressForNativeUnwrap(fromChain, toChain, destinationAddress, refundAddress) {
|
|
53
57
|
return __awaiter(this, void 0, void 0, function* () {
|
|
58
|
+
yield (0, utils_2.isValidChainIdentifier)(fromChain, this.environment);
|
|
59
|
+
yield (0, utils_2.isValidChainIdentifier)(toChain, this.environment);
|
|
54
60
|
refundAddress = refundAddress || (yield this.getGasReceiverContractAddress(fromChain));
|
|
55
61
|
const { address: unwrapAddress } = yield this.getDepositAddressFromRemote("unwrap", undefined, toChain, destinationAddress, refundAddress, HashZero);
|
|
56
62
|
const expectedAddress = yield this.validateOfflineDepositAddress("unwrap", fromChain, toChain, destinationAddress, refundAddress, HashZero);
|
|
@@ -64,7 +70,11 @@ class AxelarAssetTransfer {
|
|
|
64
70
|
getDepositAddressFromRemote(wrapOrUnWrap, fromChain, toChain, destinationAddress, refundAddress, hexSalt) {
|
|
65
71
|
return __awaiter(this, void 0, void 0, function* () {
|
|
66
72
|
const endpoint = wrapOrUnWrap === "wrap" ? "/deposit/wrap" : "/deposit/unwrap";
|
|
67
|
-
|
|
73
|
+
if (fromChain)
|
|
74
|
+
yield (0, utils_2.isValidChainIdentifier)(fromChain, this.environment);
|
|
75
|
+
if (toChain)
|
|
76
|
+
yield (0, utils_2.isValidChainIdentifier)(toChain, this.environment);
|
|
77
|
+
return this.depositServiceApi
|
|
68
78
|
.post(endpoint, {
|
|
69
79
|
salt: hexSalt,
|
|
70
80
|
source_chain: fromChain,
|
|
@@ -78,6 +88,8 @@ class AxelarAssetTransfer {
|
|
|
78
88
|
}
|
|
79
89
|
validateOfflineDepositAddress(wrapOrUnWrap, fromChain, toChain, destinationAddress, refundAddress, hexSalt) {
|
|
80
90
|
return __awaiter(this, void 0, void 0, function* () {
|
|
91
|
+
yield (0, utils_2.isValidChainIdentifier)(fromChain, this.environment);
|
|
92
|
+
yield (0, utils_2.isValidChainIdentifier)(toChain, this.environment);
|
|
81
93
|
const receiverInterface = new utils_1.Interface(ReceiverImplementation_json_1.default.abi);
|
|
82
94
|
const functionData = wrapOrUnWrap === "wrap"
|
|
83
95
|
? receiverInterface.encodeFunctionData("receiveAndSendNative", [
|
|
@@ -97,16 +109,30 @@ class AxelarAssetTransfer {
|
|
|
97
109
|
});
|
|
98
110
|
}
|
|
99
111
|
/**
|
|
100
|
-
*
|
|
101
|
-
* @param fromChain Source chain identifier eg: avalanche, moonbeam ethereum-2, terra-2 ...
|
|
102
|
-
* @param toChain Destination chain identifier eg: avalanche, moonbeam ethereum-2, terra-2 ...
|
|
103
|
-
* @param destinationAddress Address where the asset should be transferred to on the destination chain
|
|
104
|
-
* @param asset Asset denomination eg: uausdc, uaxl ...
|
|
105
|
-
* @param options
|
|
106
|
-
* @
|
|
112
|
+
* @param {Object} requestParams
|
|
113
|
+
* @param {string} requestParams.fromChain - Source chain identifier eg: avalanche, moonbeam ethereum-2, terra-2 ...
|
|
114
|
+
* @param {string} requestParams.toChain - Destination chain identifier eg: avalanche, moonbeam ethereum-2, terra-2 ...
|
|
115
|
+
* @param {string} requestParams.destinationAddress - Address where the asset should be transferred to on the destination chain
|
|
116
|
+
* @param {string} requestParams.asset - Asset denomination eg: uausdc, uaxl ... If the asset specific is native cxy (e.g. ETH, AVAX, etc), the ERC20 version of the asset will appear on the dest chain
|
|
117
|
+
* @param {Object} requestParams.options
|
|
118
|
+
* @param {string} requestParams.options._traceId
|
|
119
|
+
* @param {boolean} requestParams.options.shouldUnwrapIntoNative - when sending wrapped native asset back to its home chain (e.g. WETH back to Ethereum), specify "true" to receive native ETH; otherwise will received ERC20 version
|
|
120
|
+
* @param {string} requestParams.options.refundAddress - recipient where funds can be refunded if wrong ERC20 asset is deposited; ONLY AVAILABLE FOR WRAP/UNWRAP SERVICE
|
|
107
121
|
*/
|
|
108
|
-
getDepositAddress(
|
|
122
|
+
getDepositAddress(requestParamsOrFromChain, _toChain, _destinationAddress, _asset, _options) {
|
|
109
123
|
return __awaiter(this, void 0, void 0, function* () {
|
|
124
|
+
let fromChain, toChain, destinationAddress, asset, options;
|
|
125
|
+
if (typeof requestParamsOrFromChain === "string") {
|
|
126
|
+
fromChain = requestParamsOrFromChain;
|
|
127
|
+
toChain = _toChain;
|
|
128
|
+
destinationAddress = _destinationAddress;
|
|
129
|
+
asset = _asset;
|
|
130
|
+
options = _options;
|
|
131
|
+
}
|
|
132
|
+
else {
|
|
133
|
+
({ fromChain, toChain, destinationAddress, asset, options } =
|
|
134
|
+
requestParamsOrFromChain);
|
|
135
|
+
}
|
|
110
136
|
// use trace ID sent in by invoking user, or otherwise generate a new one
|
|
111
137
|
const traceId = (options === null || options === void 0 ? void 0 : options._traceId) || (0, uuid_1.v4)();
|
|
112
138
|
// validate chain identifiers
|
|
@@ -115,6 +141,21 @@ class AxelarAssetTransfer {
|
|
|
115
141
|
const isDestinationAddressValid = yield (0, utils_2.validateDestinationAddressByChainName)(toChain, destinationAddress, this.environment);
|
|
116
142
|
if (!isDestinationAddressValid)
|
|
117
143
|
throw new Error(`Invalid destination address for chain ${toChain}`);
|
|
144
|
+
const chainList = yield (0, chains_1.loadChains)({ environment: this.environment });
|
|
145
|
+
const srcChainInfo = chainList.find((chainInfo) => chainInfo.id === fromChain.toLowerCase());
|
|
146
|
+
if (!srcChainInfo)
|
|
147
|
+
throw new Error("cannot find chain" + fromChain);
|
|
148
|
+
const destChainInfo = chainList.find((chainInfo) => chainInfo.id === toChain.toLowerCase());
|
|
149
|
+
if (!destChainInfo)
|
|
150
|
+
throw new Error("cannot find chain" + toChain);
|
|
151
|
+
/**if user has selected native cxy, e.g. ETH, AVAX, etc, assume it is to be wrapped into ERC20 on dest chain */
|
|
152
|
+
if ((0, types_2.isNativeToken)(srcChainInfo.chainName.toLowerCase(), asset)) {
|
|
153
|
+
return yield this.getDepositAddressForNativeWrap(fromChain, toChain, destinationAddress, options === null || options === void 0 ? void 0 : options.refundAddress);
|
|
154
|
+
}
|
|
155
|
+
/**if user has selected native cxy wrapped asset, e.g. WETH, WAVAX, and selected to unwrap it */
|
|
156
|
+
if (destChainInfo.nativeAsset.includes(asset) && (options === null || options === void 0 ? void 0 : options.shouldUnwrapIntoNative)) {
|
|
157
|
+
return yield this.getDepositAddressForNativeUnwrap(fromChain, toChain, destinationAddress, options.refundAddress);
|
|
158
|
+
}
|
|
118
159
|
// auth/rate limiting
|
|
119
160
|
const wallet = (0, utils_2.createWallet)();
|
|
120
161
|
// sign validation message
|
|
@@ -142,6 +183,8 @@ class AxelarAssetTransfer {
|
|
|
142
183
|
getInitRoomId(fromChain, toChain, destinationAddress, asset, publicAddress, signature, traceId) {
|
|
143
184
|
var _a;
|
|
144
185
|
return __awaiter(this, void 0, void 0, function* () {
|
|
186
|
+
yield (0, utils_2.isValidChainIdentifier)(fromChain, this.environment);
|
|
187
|
+
yield (0, utils_2.isValidChainIdentifier)(toChain, this.environment);
|
|
145
188
|
const payload = {
|
|
146
189
|
fromChain,
|
|
147
190
|
toChain,
|
|
@@ -162,6 +205,8 @@ class AxelarAssetTransfer {
|
|
|
162
205
|
}
|
|
163
206
|
getLinkEvent(roomId, sourceChain, destinationChain, destinationAddress) {
|
|
164
207
|
return __awaiter(this, void 0, void 0, function* () {
|
|
208
|
+
yield (0, utils_2.isValidChainIdentifier)(sourceChain, this.environment);
|
|
209
|
+
yield (0, utils_2.isValidChainIdentifier)(destinationChain, this.environment);
|
|
165
210
|
const { newRoomId } = yield this.getSocketService()
|
|
166
211
|
.joinRoomAndWaitForEvent(roomId, sourceChain, destinationChain, destinationAddress)
|
|
167
212
|
.catch((error) => {
|
|
@@ -185,7 +230,7 @@ class AxelarAssetTransfer {
|
|
|
185
230
|
var _a;
|
|
186
231
|
return (_a = body.assets.network[chainName.toLowerCase()]) === null || _a === void 0 ? void 0 : _a.gas_service;
|
|
187
232
|
})
|
|
188
|
-
.catch((
|
|
233
|
+
.catch(() => undefined);
|
|
189
234
|
}
|
|
190
235
|
return this.gasReceiverContract[chainName];
|
|
191
236
|
});
|
|
@@ -212,7 +257,7 @@ class AxelarAssetTransfer {
|
|
|
212
257
|
var _a;
|
|
213
258
|
return (_a = body.assets.network[chainName.toLowerCase()]) === null || _a === void 0 ? void 0 : _a.deposit_service;
|
|
214
259
|
})
|
|
215
|
-
.catch((
|
|
260
|
+
.catch(() => undefined);
|
|
216
261
|
}
|
|
217
262
|
return this.depositServiceContract[chainName];
|
|
218
263
|
});
|
|
@@ -222,7 +267,7 @@ class AxelarAssetTransfer {
|
|
|
222
267
|
if (!this.staticInfo) {
|
|
223
268
|
this.staticInfo = yield (0, cross_fetch_1.default)(s3_1.default[this.environment])
|
|
224
269
|
.then((res) => res.json())
|
|
225
|
-
.catch((
|
|
270
|
+
.catch(() => undefined);
|
|
226
271
|
}
|
|
227
272
|
return this.staticInfo;
|
|
228
273
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AxelarAssetTransfer.js","sourceRoot":"","sources":["../../../src/libs/AxelarAssetTransfer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,+BAAoC;AACpC,8DAAgC;AAChC,4CAM0B;AAE1B,6CAA4F;AAC5F,0CAAyD;AACzD,
|
|
1
|
+
{"version":3,"file":"AxelarAssetTransfer.js","sourceRoot":"","sources":["../../../src/libs/AxelarAssetTransfer.ts"],"names":[],"mappings":"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"}
|
|
@@ -47,7 +47,7 @@ export declare class AxelarQueryAPI {
|
|
|
47
47
|
* @param sourceTokenSymbol (optional)
|
|
48
48
|
* @returns base fee in native token in wei, translated into the native gas token of choice
|
|
49
49
|
*/
|
|
50
|
-
getNativeGasBaseFee(sourceChainName: EvmChain, destinationChainName: EvmChain, sourceTokenSymbol?: GasToken): Promise<BaseFeeResponse>;
|
|
50
|
+
getNativeGasBaseFee(sourceChainName: EvmChain | string, destinationChainName: EvmChain | string, sourceTokenSymbol?: GasToken): Promise<BaseFeeResponse>;
|
|
51
51
|
/**
|
|
52
52
|
* Calculate estimated gas amount to pay for the gas receiver contract.
|
|
53
53
|
* @param sourceChainName
|
|
@@ -57,7 +57,7 @@ export declare class AxelarQueryAPI {
|
|
|
57
57
|
* @param gasMultiplier (Optional) A multiplier used to create a buffer above the calculated gas fee, to account for potential slippage throughout tx execution, e.g. 1.1 = 10% buffer. supports up to 3 decimal places
|
|
58
58
|
* @returns
|
|
59
59
|
*/
|
|
60
|
-
estimateGasFee(sourceChainName: EvmChain, destinationChainName: EvmChain, sourceChainTokenSymbol: GasToken | string, gasLimit?: number, gasMultiplier?: number): Promise<string>;
|
|
60
|
+
estimateGasFee(sourceChainName: EvmChain | string, destinationChainName: EvmChain | string, sourceChainTokenSymbol: GasToken | string, gasLimit?: number, gasMultiplier?: number): Promise<string>;
|
|
61
61
|
/**
|
|
62
62
|
* Get the denom for an asset given its symbol on a chain
|
|
63
63
|
* @param symbol
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AxelarQueryAPI.d.ts","sourceRoot":"","sources":["../../../src/libs/AxelarQueryAPI.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAGjG,OAAO,EACL,eAAe,EACf,mBAAmB,EACpB,MAAM,2DAA2D,CAAC;
|
|
1
|
+
{"version":3,"file":"AxelarQueryAPI.d.ts","sourceRoot":"","sources":["../../../src/libs/AxelarQueryAPI.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAGjG,OAAO,EACL,eAAe,EACf,mBAAmB,EACpB,MAAM,2DAA2D,CAAC;AAGnE,qBAAa,cAAc;IACzB,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,mBAAmB,EAAE,WAAW,CAAC;IAC1C,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,OAAO,CAAC,SAAS,CAAgB;IACjC,OAAO,CAAC,iBAAiB,CAAwB;gBAE9B,MAAM,EAAE,oBAAoB;YAgBjC,iBAAiB;IAI/B;;;;;;OAMG;IACU,sBAAsB,CACjC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,eAAe,CAAC;IAS3B;;;;;;;;OAQG;IACU,cAAc,CACzB,eAAe,EAAE,MAAM,EACvB,oBAAoB,EAAE,MAAM,EAC5B,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,mBAAmB,CAAC;IAa/B;;;;;;;OAOG;IACU,UAAU,CACrB,eAAe,EAAE,QAAQ,EACzB,oBAAoB,EAAE,QAAQ,EAC9B,sBAAsB,EAAE,QAAQ,GAAG,MAAM,GACxC,OAAO,CAAC,GAAG,CAAC;IAWf;;;;;;OAMG;IACU,mBAAmB,CAC9B,eAAe,EAAE,QAAQ,GAAG,MAAM,EAClC,oBAAoB,EAAE,QAAQ,GAAG,MAAM,EACvC,iBAAiB,CAAC,EAAE,QAAQ,GAC3B,OAAO,CAAC,eAAe,CAAC;IAmB3B;;;;;;;;OAQG;IACU,cAAc,CACzB,eAAe,EAAE,QAAQ,GAAG,MAAM,EAClC,oBAAoB,EAAE,QAAQ,GAAG,MAAM,EACvC,sBAAsB,EAAE,QAAQ,GAAG,MAAM,EACzC,QAAQ,GAAE,MAA8B,EACxC,aAAa,SAAM,GAClB,OAAO,CAAC,MAAM,CAAC;IA8BlB;;;;;OAKG;IACU,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;IASjE;;;;;OAKG;IACU,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;IAShE;;;;;OAKG;IACU,uBAAuB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;CAYtE"}
|
|
@@ -16,6 +16,7 @@ const constants_1 = require("../constants");
|
|
|
16
16
|
const services_1 = require("../services");
|
|
17
17
|
const contract_1 = require("./TransactionRecoveryApi/constants/contract");
|
|
18
18
|
const AxelarQueryClient_1 = require("./AxelarQueryClient");
|
|
19
|
+
const utils_2 = require("../utils");
|
|
19
20
|
class AxelarQueryAPI {
|
|
20
21
|
constructor(config) {
|
|
21
22
|
const { axelarLcdUrl, axelarRpcUrl, environment } = config;
|
|
@@ -43,17 +44,12 @@ class AxelarQueryAPI {
|
|
|
43
44
|
*/
|
|
44
45
|
getFeeForChainAndAsset(chainName, assetDenom) {
|
|
45
46
|
return __awaiter(this, void 0, void 0, function* () {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
this.
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
return yield this.axelarQueryClient.nexus.FeeInfo({ chain: chainName, asset: assetDenom });
|
|
53
|
-
}
|
|
54
|
-
catch (e) {
|
|
55
|
-
throw e;
|
|
56
|
-
}
|
|
47
|
+
if (!this.axelarQueryClient)
|
|
48
|
+
this.axelarQueryClient = yield AxelarQueryClient_1.AxelarQueryClient.initOrGetAxelarQueryClient({
|
|
49
|
+
environment: this.environment,
|
|
50
|
+
axelarRpcUrl: this.axelarRpcUrl,
|
|
51
|
+
});
|
|
52
|
+
return this.axelarQueryClient.nexus.FeeInfo({ chain: chainName, asset: assetDenom });
|
|
57
53
|
});
|
|
58
54
|
}
|
|
59
55
|
/**
|
|
@@ -67,21 +63,16 @@ class AxelarQueryAPI {
|
|
|
67
63
|
*/
|
|
68
64
|
getTransferFee(sourceChainName, destinationChainName, assetDenom, amountInDenom) {
|
|
69
65
|
return __awaiter(this, void 0, void 0, function* () {
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
this.
|
|
73
|
-
|
|
74
|
-
axelarRpcUrl: this.axelarRpcUrl,
|
|
75
|
-
});
|
|
76
|
-
return yield this.axelarQueryClient.nexus.TransferFee({
|
|
77
|
-
sourceChain: sourceChainName,
|
|
78
|
-
destinationChain: destinationChainName,
|
|
79
|
-
amount: `${amountInDenom.toString()}${assetDenom}`,
|
|
66
|
+
if (!this.axelarQueryClient)
|
|
67
|
+
this.axelarQueryClient = yield AxelarQueryClient_1.AxelarQueryClient.initOrGetAxelarQueryClient({
|
|
68
|
+
environment: this.environment,
|
|
69
|
+
axelarRpcUrl: this.axelarRpcUrl,
|
|
80
70
|
});
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
71
|
+
return this.axelarQueryClient.nexus.TransferFee({
|
|
72
|
+
sourceChain: sourceChainName,
|
|
73
|
+
destinationChain: destinationChainName,
|
|
74
|
+
amount: `${amountInDenom.toString()}${assetDenom}`,
|
|
75
|
+
});
|
|
85
76
|
});
|
|
86
77
|
}
|
|
87
78
|
/**
|
|
@@ -112,6 +103,8 @@ class AxelarQueryAPI {
|
|
|
112
103
|
*/
|
|
113
104
|
getNativeGasBaseFee(sourceChainName, destinationChainName, sourceTokenSymbol) {
|
|
114
105
|
return __awaiter(this, void 0, void 0, function* () {
|
|
106
|
+
yield (0, utils_2.isValidChainIdentifier)(sourceChainName, this.environment);
|
|
107
|
+
yield (0, utils_2.isValidChainIdentifier)(destinationChainName, this.environment);
|
|
115
108
|
return this.axelarGMPServiceApi
|
|
116
109
|
.post("", {
|
|
117
110
|
method: "getFees",
|
|
@@ -139,6 +132,8 @@ class AxelarQueryAPI {
|
|
|
139
132
|
*/
|
|
140
133
|
estimateGasFee(sourceChainName, destinationChainName, sourceChainTokenSymbol, gasLimit = contract_1.DEFAULT_ESTIMATED_GAS, gasMultiplier = 1.1) {
|
|
141
134
|
return __awaiter(this, void 0, void 0, function* () {
|
|
135
|
+
yield (0, utils_2.isValidChainIdentifier)(sourceChainName, this.environment);
|
|
136
|
+
yield (0, utils_2.isValidChainIdentifier)(destinationChainName, this.environment);
|
|
142
137
|
const response = yield this.getNativeGasBaseFee(sourceChainName, destinationChainName, sourceChainTokenSymbol).catch(() => undefined);
|
|
143
138
|
if (!response)
|
|
144
139
|
return "0";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AxelarQueryAPI.js","sourceRoot":"","sources":["../../../src/libs/AxelarQueryAPI.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,4CAA0D;AAC1D,sCAAuC;AACvC,4CAA8D;AAC9D,0CAA0C;AAE1C,0EAAoF;AACpF,2DAA+E;
|
|
1
|
+
{"version":3,"file":"AxelarQueryAPI.js","sourceRoot":"","sources":["../../../src/libs/AxelarQueryAPI.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AxelarDepositRecoveryAPI.d.ts","sourceRoot":"","sources":["../../../../src/libs/TransactionRecoveryApi/AxelarDepositRecoveryAPI.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"AxelarDepositRecoveryAPI.d.ts","sourceRoot":"","sources":["../../../../src/libs/TransactionRecoveryApi/AxelarDepositRecoveryAPI.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAUpD,qBAAa,wBAAyB,SAAQ,iBAAiB;gBAC1C,MAAM,EAAE,uBAAuB;IAIrC,cAAc,CAAC,MAAM,EAAE,qBAAqB;IA4B5C,iBAAiB;CAO/B;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH;;;;;;;;;;;;;GAaG"}
|
|
@@ -14,15 +14,17 @@ const AxelarRecoveryApi_1 = require("./AxelarRecoveryApi");
|
|
|
14
14
|
const cosmos_1 = require("./client/helpers/cosmos");
|
|
15
15
|
const chains_1 = require("../../chains");
|
|
16
16
|
const axelarHelper_1 = require("./helpers/axelarHelper");
|
|
17
|
+
const utils_1 = require("../../utils");
|
|
17
18
|
class AxelarDepositRecoveryAPI extends AxelarRecoveryApi_1.AxelarRecoveryApi {
|
|
18
19
|
constructor(config) {
|
|
19
20
|
super(config);
|
|
20
21
|
}
|
|
21
22
|
confirmDeposit(params) {
|
|
22
23
|
return __awaiter(this, void 0, void 0, function* () {
|
|
24
|
+
yield (0, utils_1.isValidChainIdentifier)(params.from, this.environment);
|
|
23
25
|
const chain = (yield (0, chains_1.loadChains)({
|
|
24
26
|
environment: this.environment,
|
|
25
|
-
})).find((chainInfo) => chainInfo.
|
|
27
|
+
})).find((chainInfo) => chainInfo.id.toLowerCase() === params.from.toLowerCase());
|
|
26
28
|
if (!chain)
|
|
27
29
|
throw new Error("cannot find chain" + params.from);
|
|
28
30
|
const txBytes = yield this.execRecoveryUrlFetch("/confirm_deposit_tx", Object.assign(Object.assign({}, params), { sourceChain: chain.chainIdentifier[this.environment], module: chain.module }));
|
|
@@ -40,7 +42,7 @@ class AxelarDepositRecoveryAPI extends AxelarRecoveryApi_1.AxelarRecoveryApi {
|
|
|
40
42
|
const txBytes = yield this.execRecoveryUrlFetch("/route_ibc_transfers", {
|
|
41
43
|
module: "axelarnet",
|
|
42
44
|
});
|
|
43
|
-
return
|
|
45
|
+
return (0, cosmos_1.broadcastCosmosTxBytes)(txBytes, this.axelarRpcUrl);
|
|
44
46
|
});
|
|
45
47
|
}
|
|
46
48
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AxelarDepositRecoveryAPI.js","sourceRoot":"","sources":["../../../../src/libs/TransactionRecoveryApi/AxelarDepositRecoveryAPI.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,2DAAwD;AAExD,oDAAiE;AACjE,yCAA0C;AAE1C,yDAGgC;
|
|
1
|
+
{"version":3,"file":"AxelarDepositRecoveryAPI.js","sourceRoot":"","sources":["../../../../src/libs/TransactionRecoveryApi/AxelarDepositRecoveryAPI.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,2DAAwD;AAExD,oDAAiE;AACjE,yCAA0C;AAE1C,yDAGgC;AAChC,uCAAqD;AAErD,MAAa,wBAAyB,SAAQ,qCAAiB;IAC7D,YAAmB,MAA+B;QAChD,KAAK,CAAC,MAAM,CAAC,CAAC;IAChB,CAAC;IAEY,cAAc,CAAC,MAA6B;;YAEvD,MAAM,IAAA,8BAAsB,EAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YAE5D,MAAM,KAAK,GAAc,CACvB,MAAM,IAAA,mBAAU,EAAC;gBACf,WAAW,EAAE,IAAI,CAAC,WAAW;aAC9B,CAAC,CACH,CAAC,IAAI,CACJ,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,CAC3D,CAAC;YACf,IAAI,CAAC,KAAK;gBAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;YAE/D,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,qBAAqB,kCAChE,MAAM,KACT,WAAW,EAAE,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,EACpD,MAAM,EAAE,KAAK,CAAC,MAAM,IACpB,CAAC;YAEH,MAAM,EAAE,GAAG,MAAM,IAAA,+BAAsB,EAAC,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAEpE,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,EAAE;gBAC1B,OAAO,IAAA,6CAA8B,EAAC,EAAE,CAAC,CAAC;aAC3C;iBAAM;gBACL,OAAO,IAAA,gDAAiC,EAAC,EAAE,CAAC,CAAC;aAC9C;QACH,CAAC;KAAA;IAEY,iBAAiB;;YAC5B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,sBAAsB,EAAE;gBACtE,MAAM,EAAE,WAAW;aACpB,CAAC,CAAC;YAEH,OAAO,IAAA,+BAAsB,EAAC,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAC5D,CAAC;KAAA;CACF;AAxCD,4DAwCC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH;;;;;;;;;;;;;GAaG"}
|
|
@@ -21,7 +21,7 @@ export declare class AxelarGMPRecoveryAPI extends AxelarRecoveryApi {
|
|
|
21
21
|
* @param options QueryGasFeeOptions - options
|
|
22
22
|
* @returns Promise<string> - The gas fee to be paid at source chain
|
|
23
23
|
*/
|
|
24
|
-
calculateNativeGasFee(txHash: string, sourceChain:
|
|
24
|
+
calculateNativeGasFee(txHash: string, sourceChain: string, destinationChain: string, gasTokenSymbol: GasToken | string, options: QueryGasFeeOptions): Promise<string>;
|
|
25
25
|
/**
|
|
26
26
|
* Calculate the gas fee in an ERC-20 tokens for executing a transaction at the destination chain using the source chain's gas price.
|
|
27
27
|
* @param txHash string - transaction hash
|
|
@@ -62,6 +62,6 @@ export declare class AxelarGMPRecoveryAPI extends AxelarRecoveryApi {
|
|
|
62
62
|
execute(srcTxHash: string, srcTxLogIndex?: number, evmWalletDetails?: EvmWalletDetails): Promise<TxResult>;
|
|
63
63
|
private subtractGasFee;
|
|
64
64
|
private getSigner;
|
|
65
|
-
getGasReceiverContractAddress(
|
|
65
|
+
getGasReceiverContractAddress(chainId: string): Promise<string>;
|
|
66
66
|
}
|
|
67
67
|
//# sourceMappingURL=AxelarGMPRecoveryAPI.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AxelarGMPRecoveryAPI.d.ts","sourceRoot":"","sources":["../../../../src/libs/TransactionRecoveryApi/AxelarGMPRecoveryAPI.ts"],"names":[],"mappings":"AACA,OAAO,EACL,uBAAuB,EACvB,QAAQ,EAER,gBAAgB,EAChB,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,kBAAkB,EAElB,sBAAsB,EAEvB,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,iBAAiB,EAIlB,MAAM,qBAAqB,CAAC;AAK7B,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"AxelarGMPRecoveryAPI.d.ts","sourceRoot":"","sources":["../../../../src/libs/TransactionRecoveryApi/AxelarGMPRecoveryAPI.ts"],"names":[],"mappings":"AACA,OAAO,EACL,uBAAuB,EACvB,QAAQ,EAER,gBAAgB,EAChB,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,kBAAkB,EAElB,sBAAsB,EAEvB,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,iBAAiB,EAIlB,MAAM,qBAAqB,CAAC;AAK7B,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAgCnD,qBAAa,oBAAqB,SAAQ,iBAAiB;IACzD,cAAc,EAAE,cAAc,CAAC;gBACZ,MAAM,EAAE,uBAAuB;YASpC,OAAO;IAeR,sBAAsB,CACjC,MAAM,EAAE,MAAM,EACd,gBAAgB,CAAC,EAAE,gBAAgB,GAClC,OAAO,CAAC,sBAAsB,CAAC;IA2ElC;;;;OAIG;IACU,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAOzD;;;;;;;;OAQG;IACU,qBAAqB,CAChC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,cAAc,EAAE,QAAQ,GAAG,MAAM,EACjC,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,MAAM,CAAC;IAYlB;;;;;;;;OAQG;IACU,eAAe,CAC1B,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,QAAQ,EACrB,gBAAgB,EAAE,QAAQ,EAC1B,cAAc,EAAE,QAAQ,GAAG,MAAM,EACjC,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,MAAM,CAAC;IAQlB;;;;;;;OAOG;IACU,YAAY,CACvB,KAAK,EAAE,QAAQ,EACf,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,QAAQ,CAAC;IA0DpB;;;;;;;;;OASG;IACU,MAAM,CACjB,KAAK,EAAE,QAAQ,EACf,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,EACvB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,QAAQ,CAAC;IAkEpB;;;;;;OAMG;IACU,OAAO,CAClB,SAAS,EAAE,MAAM,EACjB,aAAa,CAAC,EAAE,MAAM,EACtB,gBAAgB,CAAC,EAAE,gBAAgB,GAClC,OAAO,CAAC,QAAQ,CAAC;YAkEN,cAAc;IAsB5B,OAAO,CAAC,SAAS;IAcJ,6BAA6B,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAU7E"}
|
|
@@ -31,6 +31,7 @@ const helpers_1 = require("./helpers");
|
|
|
31
31
|
const utils_1 = require("../../utils");
|
|
32
32
|
const s3_1 = __importDefault(require("./constants/s3"));
|
|
33
33
|
const utils_2 = require("ethers/lib/utils");
|
|
34
|
+
const chains_1 = require("../../chains");
|
|
34
35
|
class AxelarGMPRecoveryAPI extends AxelarRecoveryApi_1.AxelarRecoveryApi {
|
|
35
36
|
constructor(config) {
|
|
36
37
|
super(config);
|
|
@@ -131,6 +132,8 @@ class AxelarGMPRecoveryAPI extends AxelarRecoveryApi_1.AxelarRecoveryApi {
|
|
|
131
132
|
*/
|
|
132
133
|
calculateNativeGasFee(txHash, sourceChain, destinationChain, gasTokenSymbol, options) {
|
|
133
134
|
return __awaiter(this, void 0, void 0, function* () {
|
|
135
|
+
yield (0, utils_1.isValidChainIdentifier)(sourceChain, this.environment);
|
|
136
|
+
yield (0, utils_1.isValidChainIdentifier)(destinationChain, this.environment);
|
|
134
137
|
const provider = options.provider || (0, providerHelper_1.getDefaultProvider)(sourceChain, this.environment);
|
|
135
138
|
const receipt = yield provider.getTransactionReceipt(txHash);
|
|
136
139
|
const paidGasFee = (0, contractEventHelper_1.getNativeGasAmountFromTxReceipt)(receipt) || "0";
|
|
@@ -343,6 +346,8 @@ class AxelarGMPRecoveryAPI extends AxelarRecoveryApi_1.AxelarRecoveryApi {
|
|
|
343
346
|
}
|
|
344
347
|
subtractGasFee(sourceChain, destinationChain, gasTokenSymbol, paidGasFee, options) {
|
|
345
348
|
return __awaiter(this, void 0, void 0, function* () {
|
|
349
|
+
yield (0, utils_1.isValidChainIdentifier)(sourceChain, this.environment);
|
|
350
|
+
yield (0, utils_1.isValidChainIdentifier)(destinationChain, this.environment);
|
|
346
351
|
const totalGasFee = yield this.axelarQueryApi.estimateGasFee(sourceChain, destinationChain, gasTokenSymbol, options.estimatedGas);
|
|
347
352
|
const topupGasAmount = ethers_1.ethers.BigNumber.from(totalGasFee).sub(paidGasFee);
|
|
348
353
|
return topupGasAmount.gt(0) ? topupGasAmount.toString() : "0";
|
|
@@ -358,8 +363,13 @@ class AxelarGMPRecoveryAPI extends AxelarRecoveryApi_1.AxelarRecoveryApi {
|
|
|
358
363
|
const evmClient = new EVMClient_1.default(evmClientConfig);
|
|
359
364
|
return evmClient.getSigner();
|
|
360
365
|
}
|
|
361
|
-
getGasReceiverContractAddress(
|
|
366
|
+
getGasReceiverContractAddress(chainId) {
|
|
362
367
|
return __awaiter(this, void 0, void 0, function* () {
|
|
368
|
+
const chains = yield (0, chains_1.loadChains)({ environment: this.environment });
|
|
369
|
+
const selectedChain = chains.find(chain => chain.id === chainId);
|
|
370
|
+
if (!selectedChain)
|
|
371
|
+
throw `getGasReceiverContractAddress() ${chainId} not found`;
|
|
372
|
+
const { chainName } = selectedChain;
|
|
363
373
|
return yield (0, cross_fetch_1.default)(s3_1.default[this.environment])
|
|
364
374
|
.then((res) => res.json())
|
|
365
375
|
.then((body) => { var _a; return (_a = body.assets.network[chainName.toLowerCase()]) === null || _a === void 0 ? void 0 : _a.gas_service; })
|