@axelar-network/axelarjs-sdk 0.11.6 → 0.11.8
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/supported-chains-list.d.ts +3 -0
- package/dist/src/chains/supported-chains-list.d.ts.map +1 -1
- package/dist/src/chains/supported-chains-list.js +12 -9
- package/dist/src/chains/supported-chains-list.js.map +1 -1
- package/dist/src/constants/index.js +1 -1
- package/dist/src/constants/index.js.map +1 -1
- package/dist/src/libs/AxelarAssetTransfer.d.ts +2 -2
- package/dist/src/libs/AxelarAssetTransfer.d.ts.map +1 -1
- package/dist/src/libs/AxelarAssetTransfer.js +22 -23
- package/dist/src/libs/AxelarAssetTransfer.js.map +1 -1
- package/package.json +1 -1
|
@@ -15,6 +15,7 @@ export declare const CHAINS: {
|
|
|
15
15
|
FANTOM: string;
|
|
16
16
|
MOONBEAM: string;
|
|
17
17
|
POLYGON: string;
|
|
18
|
+
TERRA: string;
|
|
18
19
|
};
|
|
19
20
|
MAINNET: {
|
|
20
21
|
ASSETMANTLE: string;
|
|
@@ -40,6 +41,8 @@ export declare const CHAINS: {
|
|
|
40
41
|
STARGAZE: string;
|
|
41
42
|
TERRA: string;
|
|
42
43
|
EMONEY: string;
|
|
44
|
+
AGORIC: string;
|
|
45
|
+
UMEEE: string;
|
|
43
46
|
};
|
|
44
47
|
};
|
|
45
48
|
//# sourceMappingURL=supported-chains-list.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"supported-chains-list.d.ts","sourceRoot":"","sources":["../../../src/chains/supported-chains-list.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM
|
|
1
|
+
{"version":3,"file":"supported-chains-list.d.ts","sourceRoot":"","sources":["../../../src/chains/supported-chains-list.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8ClB,CAAC"}
|
|
@@ -12,37 +12,40 @@ exports.CHAINS = {
|
|
|
12
12
|
OSMOSIS: "osmosis-4",
|
|
13
13
|
SEI: "sei",
|
|
14
14
|
AURORA: "aurora",
|
|
15
|
-
AVALANCHE: "
|
|
15
|
+
AVALANCHE: "Avalanche",
|
|
16
16
|
BINANCE: "binance",
|
|
17
17
|
ETHEREUM: "ethereum-2",
|
|
18
|
-
FANTOM: "
|
|
19
|
-
MOONBEAM: "
|
|
20
|
-
POLYGON: "
|
|
18
|
+
FANTOM: "Fantom",
|
|
19
|
+
MOONBEAM: "Moonbeam",
|
|
20
|
+
POLYGON: "Polygon",
|
|
21
|
+
TERRA: "terra-3",
|
|
21
22
|
},
|
|
22
23
|
MAINNET: {
|
|
23
24
|
ASSETMANTLE: "assetmantle",
|
|
24
|
-
AVALANCHE: "
|
|
25
|
+
AVALANCHE: "Avalanche",
|
|
25
26
|
AXELAR: "axelarnet",
|
|
26
27
|
BINANCE: "binance",
|
|
27
28
|
COMDEX: "comdex",
|
|
28
29
|
COSMOSHUB: "cosmoshub",
|
|
29
30
|
CRESCENT: "crescent",
|
|
30
|
-
ETHEREUM: "
|
|
31
|
+
ETHEREUM: "Ethereum",
|
|
31
32
|
EVMOS: "evmos",
|
|
32
|
-
FANTOM: "
|
|
33
|
+
FANTOM: "Fantom",
|
|
33
34
|
FETCH: "fetch",
|
|
34
35
|
INJECTIVE: "injective",
|
|
35
36
|
JUNO: "juno",
|
|
36
37
|
KI: "ki",
|
|
37
38
|
KUJIRA: "kujira",
|
|
38
|
-
MOONBEAM: "
|
|
39
|
+
MOONBEAM: "Moonbeam",
|
|
39
40
|
OSMOSIS: "osmosis",
|
|
40
|
-
POLYGON: "
|
|
41
|
+
POLYGON: "Polygon",
|
|
41
42
|
REGEN: "regen",
|
|
42
43
|
SECRET: "secret",
|
|
43
44
|
STARGAZE: "stargaze",
|
|
44
45
|
TERRA: "terra-2",
|
|
45
46
|
EMONEY: "e-money",
|
|
47
|
+
AGORIC: "agoric",
|
|
48
|
+
UMEEE: "umee",
|
|
46
49
|
},
|
|
47
50
|
};
|
|
48
51
|
//# sourceMappingURL=supported-chains-list.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"supported-chains-list.js","sourceRoot":"","sources":["../../../src/chains/supported-chains-list.ts"],"names":[],"mappings":";;;AAAa,QAAA,MAAM,GAAG;IACpB,OAAO,EAAE;QACP,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE,WAAW;QACnB,MAAM,EAAE,QAAQ;QAChB,KAAK,EAAE,OAAO;QACd,KAAK,EAAE,OAAO;QACd,MAAM,EAAE,QAAQ;QAChB,OAAO,EAAE,WAAW;QACpB,GAAG,EAAE,KAAK;QACV,MAAM,EAAE,QAAQ;QAChB,SAAS,EAAE,WAAW;QACtB,OAAO,EAAE,SAAS;QAClB,QAAQ,EAAE,YAAY;QACtB,MAAM,EAAE,QAAQ;QAChB,QAAQ,EAAE,UAAU;QACpB,OAAO,EAAE,SAAS;
|
|
1
|
+
{"version":3,"file":"supported-chains-list.js","sourceRoot":"","sources":["../../../src/chains/supported-chains-list.ts"],"names":[],"mappings":";;;AAAa,QAAA,MAAM,GAAG;IACpB,OAAO,EAAE;QACP,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE,WAAW;QACnB,MAAM,EAAE,QAAQ;QAChB,KAAK,EAAE,OAAO;QACd,KAAK,EAAE,OAAO;QACd,MAAM,EAAE,QAAQ;QAChB,OAAO,EAAE,WAAW;QACpB,GAAG,EAAE,KAAK;QACV,MAAM,EAAE,QAAQ;QAChB,SAAS,EAAE,WAAW;QACtB,OAAO,EAAE,SAAS;QAClB,QAAQ,EAAE,YAAY;QACtB,MAAM,EAAE,QAAQ;QAChB,QAAQ,EAAE,UAAU;QACpB,OAAO,EAAE,SAAS;QAClB,KAAK,EAAE,SAAS;KACjB;IACD,OAAO,EAAE;QACP,WAAW,EAAE,aAAa;QAC1B,SAAS,EAAE,WAAW;QACtB,MAAM,EAAE,WAAW;QACnB,OAAO,EAAE,SAAS;QAClB,MAAM,EAAE,QAAQ;QAChB,SAAS,EAAE,WAAW;QACtB,QAAQ,EAAE,UAAU;QACpB,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE,OAAO;QACd,MAAM,EAAE,QAAQ;QAChB,KAAK,EAAE,OAAO;QACd,SAAS,EAAE,WAAW;QACtB,IAAI,EAAE,MAAM;QACZ,EAAE,EAAE,IAAI;QACR,MAAM,EAAE,QAAQ;QAChB,QAAQ,EAAE,UAAU;QACpB,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,SAAS;QAClB,KAAK,EAAE,OAAO;QACd,MAAM,EAAE,QAAQ;QAChB,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE,SAAS;QAChB,MAAM,EAAE,SAAS;QACjB,MAAM,EAAE,QAAQ;QAChB,KAAK,EAAE,MAAM;KACd;CACF,CAAC"}
|
|
@@ -34,7 +34,7 @@ const testnetConfigs = {
|
|
|
34
34
|
};
|
|
35
35
|
const mainnetConfigs = {
|
|
36
36
|
resourceUrl: `https://nest-server-mainnet.axelar.dev`,
|
|
37
|
-
axelarRpcUrl: "https://
|
|
37
|
+
axelarRpcUrl: "https://mainnet-rpc-router.axelar-dev.workers.dev/chain/axelar",
|
|
38
38
|
axelarLcdUrl: "https://axelar-lcd.quickapi.com",
|
|
39
39
|
axelarGMPApiUrl: "https://api.gmp.axelarscan.io",
|
|
40
40
|
depositServiceUrl: "https://deposit-service.mainnet.axelar.dev",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/constants/index.ts"],"names":[],"mappings":";;;AAAA,MAAM,UAAU,GAAkD,EAAE,CAAC;AAarE,MAAM,YAAY,GAAuB;IACvC,WAAW,EAAE,uBAAuB;IACpC,YAAY,EAAE,mDAAmD;IACjE,YAAY,EAAE,mDAAmD;IACjE,eAAe,EAAE,uCAAuC;IACxD,iBAAiB,EAAE,0DAA0D;IAC7E,cAAc,EAAE,mDAAmD;IACnE,sBAAsB,EAAE,+CAA+C;IACvE,aAAa,EAAE,+BAA+B;CAC/C,CAAC;AACF,MAAM,aAAa,GAAuB;IACxC,WAAW,EAAE,uCAAuC;IACpD,YAAY,EAAE,EAAE;IAChB,YAAY,EAAE,EAAE;IAChB,eAAe,EAAE,sCAAsC;IACvD,iBAAiB,EAAE,0DAA0D;IAC7E,cAAc,EAAE,EAAE;IAClB,sBAAsB,EAAE,EAAE;IAC1B,aAAa,EAAE,EAAE;CAClB,CAAC;AACF,MAAM,cAAc,GAAuB;IACzC,WAAW,EAAE,wCAAwC;IACrD,YAAY,EAAE,mDAAmD;IACjE,YAAY,EAAE,mDAAmD;IACjE,iBAAiB,EAAE,4CAA4C;IAC/D,eAAe,EAAE,uCAAuC;IACxD,cAAc,EAAE,mDAAmD;IACnE,sBAAsB,EAAE,+CAA+C;IACvE,aAAa,EAAE,+BAA+B;CAC/C,CAAC;AACF,MAAM,cAAc,GAAuB;IACzC,WAAW,EAAE,wCAAwC;IACrD,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/constants/index.ts"],"names":[],"mappings":";;;AAAA,MAAM,UAAU,GAAkD,EAAE,CAAC;AAarE,MAAM,YAAY,GAAuB;IACvC,WAAW,EAAE,uBAAuB;IACpC,YAAY,EAAE,mDAAmD;IACjE,YAAY,EAAE,mDAAmD;IACjE,eAAe,EAAE,uCAAuC;IACxD,iBAAiB,EAAE,0DAA0D;IAC7E,cAAc,EAAE,mDAAmD;IACnE,sBAAsB,EAAE,+CAA+C;IACvE,aAAa,EAAE,+BAA+B;CAC/C,CAAC;AACF,MAAM,aAAa,GAAuB;IACxC,WAAW,EAAE,uCAAuC;IACpD,YAAY,EAAE,EAAE;IAChB,YAAY,EAAE,EAAE;IAChB,eAAe,EAAE,sCAAsC;IACvD,iBAAiB,EAAE,0DAA0D;IAC7E,cAAc,EAAE,EAAE;IAClB,sBAAsB,EAAE,EAAE;IAC1B,aAAa,EAAE,EAAE;CAClB,CAAC;AACF,MAAM,cAAc,GAAuB;IACzC,WAAW,EAAE,wCAAwC;IACrD,YAAY,EAAE,mDAAmD;IACjE,YAAY,EAAE,mDAAmD;IACjE,iBAAiB,EAAE,4CAA4C;IAC/D,eAAe,EAAE,uCAAuC;IACxD,cAAc,EAAE,mDAAmD;IACnE,sBAAsB,EAAE,+CAA+C;IACvE,aAAa,EAAE,+BAA+B;CAC/C,CAAC;AACF,MAAM,cAAc,GAAuB;IACzC,WAAW,EAAE,wCAAwC;IACrD,YAAY,EAAE,gEAAgE;IAC9E,YAAY,EAAE,iCAAiC;IAC/C,eAAe,EAAE,+BAA+B;IAChD,iBAAiB,EAAE,4CAA4C;IAC/D,cAAc,EAAE,mDAAmD;IACnE,sBAAsB,EAAE,uCAAuC;IAC/D,aAAa,EAAE,uBAAuB;CACvC,CAAC;AAEF,UAAU,CAAC,OAAO,CAAC,GAAG,YAAY,CAAC;AACnC,UAAU,CAAC,QAAQ,CAAC,GAAG,aAAa,CAAC;AACrC,UAAU,CAAC,SAAS,CAAC,GAAG,cAAc,CAAC;AACvC,UAAU,CAAC,SAAS,CAAC,GAAG,cAAc,CAAC;AAEvC,IAAI,WAA+B,CAAC;AAE7B,MAAM,UAAU,GAAG,CAAC,WAAmB,EAAsB,EAAE;IACpE,IAAI,CAAC,WAAW,EAAE;QAChB,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACnF,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;KACvC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC,CAAC;AANW,QAAA,UAAU,cAMrB"}
|
|
@@ -11,8 +11,8 @@ export declare class AxelarAssetTransfer {
|
|
|
11
11
|
private evmDenomMap;
|
|
12
12
|
private staticInfo;
|
|
13
13
|
constructor(config: AxelarAssetTransferConfig);
|
|
14
|
-
getDepositAddressForNativeWrap(fromChain: string, toChain: string, destinationAddress: string, refundAddress?: string
|
|
15
|
-
getDepositAddressForNativeUnwrap(fromChain: string, toChain: string, destinationAddress: string, refundAddress
|
|
14
|
+
getDepositAddressForNativeWrap(fromChain: string, toChain: string, destinationAddress: string, refundAddress?: string): Promise<string>;
|
|
15
|
+
getDepositAddressForNativeUnwrap(fromChain: string, toChain: string, destinationAddress: string, refundAddress?: string): Promise<string>;
|
|
16
16
|
getDepositAddressFromRemote(wrapOrUnWrap: "wrap" | "unwrap", fromChain: string | undefined, toChain: string | undefined, destinationAddress: string, refundAddress: string, hexSalt: string): Promise<{
|
|
17
17
|
address: string;
|
|
18
18
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AxelarAssetTransfer.d.ts","sourceRoot":"","sources":["../../../src/libs/AxelarAssetTransfer.ts"],"names":[],"mappings":"
|
|
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;AAOzD,OAAO,EAAE,yBAAyB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAQjE,qBAAa,mBAAmB;IAC9B,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAC;IAC1B,QAAQ,CAAC,iBAAiB,EAAE,WAAW,CAAC;IACxC,OAAO,CAAC,mBAAmB,CAA8B;IACzD,OAAO,CAAC,sBAAsB,CAA8B;IAC5D,OAAO,CAAC,WAAW,CAA8B;IACjD,OAAO,CAAC,UAAU,CAAsB;gBAE5B,MAAM,EAAE,yBAAyB;IAavC,8BAA8B,CAClC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,kBAAkB,EAAE,MAAM,EAC1B,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,MAAM,CAAC;IAyBZ,gCAAgC,CACpC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,kBAAkB,EAAE,MAAM,EAC1B,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,MAAM,CAAC;IAkCZ,2BAA2B,CAC/B,YAAY,EAAE,MAAM,GAAG,QAAQ,EAC/B,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,kBAAkB,EAAE,MAAM,EAC1B,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAczB,6BAA6B,CACjC,YAAY,EAAE,MAAM,GAAG,QAAQ,EAC/B,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,kBAAkB,EAAE,MAAM,EAC1B,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,MAAM;IA+BjB;;;;;;;;OAQG;IACU,iBAAiB,CAC5B,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,kBAAkB,EAAE,MAAM,EAC1B,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE;QACR,QAAQ,EAAE,MAAM,CAAC;KAClB,GACA,OAAO,CAAC,MAAM,CAAC;IAyCZ,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAWpE,aAAa,CACjB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,kBAAkB,EAAE,MAAM,EAC1B,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,CAAC;IAuBZ,YAAY,CAChB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,kBAAkB,EAAE,MAAM,GACzB,OAAO,CAAC,MAAM,CAAC;IAUlB,gBAAgB;IAIhB,qBAAqB,CAAC,MAAM,EAAE,MAAM;IAI9B,6BAA6B,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAWjE,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAYjD,gCAAgC,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAWpE,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAS7C,wBAAwB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAgBlE"}
|
|
@@ -15,14 +15,16 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
15
15
|
exports.AxelarAssetTransfer = void 0;
|
|
16
16
|
const uuid_1 = require("uuid");
|
|
17
17
|
const cross_fetch_1 = __importDefault(require("cross-fetch"));
|
|
18
|
+
const utils_1 = require("ethers/lib/utils");
|
|
18
19
|
const types_1 = require("../services/types");
|
|
19
20
|
const services_1 = require("../services");
|
|
20
|
-
const
|
|
21
|
+
const utils_2 = require("../utils");
|
|
21
22
|
const constants_1 = require("../constants");
|
|
22
|
-
const utils_2 = require("ethers/lib/utils");
|
|
23
23
|
const DepositReceiver_json_1 = __importDefault(require("../../artifacts/contracts/deposit-service/DepositReceiver.sol/DepositReceiver.json"));
|
|
24
24
|
const ReceiverImplementation_json_1 = __importDefault(require("../../artifacts/contracts/deposit-service/ReceiverImplementation.sol/ReceiverImplementation.json"));
|
|
25
25
|
const s3_1 = __importDefault(require("./TransactionRecoveryApi/constants/s3"));
|
|
26
|
+
const ethers_1 = require("ethers");
|
|
27
|
+
const { HashZero } = ethers_1.constants;
|
|
26
28
|
class AxelarAssetTransfer {
|
|
27
29
|
constructor(config) {
|
|
28
30
|
this.gasReceiverContract = {};
|
|
@@ -37,27 +39,26 @@ class AxelarAssetTransfer {
|
|
|
37
39
|
this.api = new services_1.RestService(this.resourceUrl);
|
|
38
40
|
this.depositServiceApi = new services_1.RestService(configs.depositServiceUrl);
|
|
39
41
|
}
|
|
40
|
-
getDepositAddressForNativeWrap(fromChain, toChain, destinationAddress, refundAddress
|
|
42
|
+
getDepositAddressForNativeWrap(fromChain, toChain, destinationAddress, refundAddress) {
|
|
41
43
|
return __awaiter(this, void 0, void 0, function* () {
|
|
42
|
-
const hexSalt = (0, utils_2.hexZeroPad)((0, utils_2.hexlify)(salt || 0), 32);
|
|
43
44
|
refundAddress = refundAddress || (yield this.getGasReceiverContractAddress(fromChain));
|
|
44
|
-
const { address } = yield this.getDepositAddressFromRemote("wrap", fromChain, toChain, destinationAddress, refundAddress,
|
|
45
|
-
const expectedAddress = yield this.validateOfflineDepositAddress("wrap", fromChain, toChain, destinationAddress, refundAddress,
|
|
45
|
+
const { address } = yield this.getDepositAddressFromRemote("wrap", fromChain, toChain, destinationAddress, refundAddress, HashZero);
|
|
46
|
+
const expectedAddress = yield this.validateOfflineDepositAddress("wrap", fromChain, toChain, destinationAddress, refundAddress, HashZero);
|
|
46
47
|
if (address !== expectedAddress)
|
|
47
|
-
|
|
48
|
+
throw new Error("Deposit address mismatch");
|
|
48
49
|
return address;
|
|
49
50
|
});
|
|
50
51
|
}
|
|
51
|
-
getDepositAddressForNativeUnwrap(fromChain, toChain, destinationAddress, refundAddress
|
|
52
|
+
getDepositAddressForNativeUnwrap(fromChain, toChain, destinationAddress, refundAddress) {
|
|
52
53
|
return __awaiter(this, void 0, void 0, function* () {
|
|
53
|
-
const hexSalt = (0, utils_2.hexZeroPad)((0, utils_2.hexlify)(salt || 0), 32);
|
|
54
54
|
refundAddress = refundAddress || (yield this.getGasReceiverContractAddress(fromChain));
|
|
55
|
-
const { address: unwrapAddress } = yield this.getDepositAddressFromRemote("unwrap", undefined, toChain, destinationAddress, refundAddress,
|
|
56
|
-
const expectedAddress = yield this.validateOfflineDepositAddress("unwrap", fromChain, toChain, destinationAddress, refundAddress,
|
|
55
|
+
const { address: unwrapAddress } = yield this.getDepositAddressFromRemote("unwrap", undefined, toChain, destinationAddress, refundAddress, HashZero);
|
|
56
|
+
const expectedAddress = yield this.validateOfflineDepositAddress("unwrap", fromChain, toChain, destinationAddress, refundAddress, HashZero);
|
|
57
57
|
if (unwrapAddress !== expectedAddress)
|
|
58
|
-
|
|
59
|
-
const
|
|
60
|
-
|
|
58
|
+
throw new Error("Deposit address mismatch");
|
|
59
|
+
const denom = yield this.getERC20Denom(toChain);
|
|
60
|
+
const finalDepositAddress = yield this.getDepositAddress(fromChain, toChain, unwrapAddress, denom);
|
|
61
|
+
return finalDepositAddress;
|
|
61
62
|
});
|
|
62
63
|
}
|
|
63
64
|
getDepositAddressFromRemote(wrapOrUnWrap, fromChain, toChain, destinationAddress, refundAddress, hexSalt) {
|
|
@@ -77,7 +78,7 @@ class AxelarAssetTransfer {
|
|
|
77
78
|
}
|
|
78
79
|
validateOfflineDepositAddress(wrapOrUnWrap, fromChain, toChain, destinationAddress, refundAddress, hexSalt) {
|
|
79
80
|
return __awaiter(this, void 0, void 0, function* () {
|
|
80
|
-
const receiverInterface = new
|
|
81
|
+
const receiverInterface = new utils_1.Interface(ReceiverImplementation_json_1.default.abi);
|
|
81
82
|
const functionData = wrapOrUnWrap === "wrap"
|
|
82
83
|
? receiverInterface.encodeFunctionData("receiveAndSendNative", [
|
|
83
84
|
refundAddress,
|
|
@@ -88,9 +89,9 @@ class AxelarAssetTransfer {
|
|
|
88
89
|
refundAddress,
|
|
89
90
|
destinationAddress,
|
|
90
91
|
]);
|
|
91
|
-
const address = (0,
|
|
92
|
+
const address = (0, utils_1.getCreate2Address)(yield this.getDepositServiceContractAddress(fromChain), hexSalt, (0, utils_1.keccak256)((0, utils_1.solidityPack)(["bytes", "bytes"], [
|
|
92
93
|
DepositReceiver_json_1.default.bytecode,
|
|
93
|
-
|
|
94
|
+
utils_1.defaultAbiCoder.encode(["bytes", "address"], [functionData, refundAddress]),
|
|
94
95
|
])));
|
|
95
96
|
return address.toLowerCase();
|
|
96
97
|
});
|
|
@@ -111,11 +112,11 @@ class AxelarAssetTransfer {
|
|
|
111
112
|
// validate chain identifiers
|
|
112
113
|
yield this.validateChainIdentifiers(fromChain, toChain);
|
|
113
114
|
// verify destination address format
|
|
114
|
-
const isDestinationAddressValid = yield (0,
|
|
115
|
+
const isDestinationAddressValid = yield (0, utils_2.validateDestinationAddressByChainName)(toChain, destinationAddress, this.environment);
|
|
115
116
|
if (!isDestinationAddressValid)
|
|
116
117
|
throw new Error(`Invalid destination address for chain ${toChain}`);
|
|
117
118
|
// auth/rate limiting
|
|
118
|
-
const wallet = (0,
|
|
119
|
+
const wallet = (0, utils_2.createWallet)();
|
|
119
120
|
// sign validation message
|
|
120
121
|
const { validationMsg } = yield this.getOneTimeCode(wallet.address, traceId);
|
|
121
122
|
const signature = yield wallet.signMessage(validationMsg);
|
|
@@ -194,9 +195,7 @@ class AxelarAssetTransfer {
|
|
|
194
195
|
return __awaiter(this, void 0, void 0, function* () {
|
|
195
196
|
if (!this.evmDenomMap[chainName.toLowerCase()]) {
|
|
196
197
|
const staticInfo = yield this.getStaticInfo();
|
|
197
|
-
console.log("staticInfo", staticInfo);
|
|
198
198
|
const denom = (_a = staticInfo.chains[chainName.toLowerCase()]) === null || _a === void 0 ? void 0 : _a.nativeAsset[0];
|
|
199
|
-
console.log("denom", denom);
|
|
200
199
|
if (denom) {
|
|
201
200
|
this.evmDenomMap[chainName.toLowerCase()] = denom;
|
|
202
201
|
}
|
|
@@ -231,8 +230,8 @@ class AxelarAssetTransfer {
|
|
|
231
230
|
validateChainIdentifiers(fromChain, toChain) {
|
|
232
231
|
return __awaiter(this, void 0, void 0, function* () {
|
|
233
232
|
const [fromChainValid, toChainValid] = yield Promise.all([
|
|
234
|
-
(0,
|
|
235
|
-
(0,
|
|
233
|
+
(0, utils_2.validateChainIdentifier)(fromChain, this.environment),
|
|
234
|
+
(0, utils_2.validateChainIdentifier)(toChain, this.environment),
|
|
236
235
|
]);
|
|
237
236
|
if (!fromChainValid.foundChain)
|
|
238
237
|
throw new Error(`Invalid chain identifier for ${fromChain}. Did you mean ${fromChainValid.bestMatch}?`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AxelarAssetTransfer.js","sourceRoot":"","sources":["../../../src/libs/AxelarAssetTransfer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,+BAAoC;AACpC,8DAAgC;AAChC,6CAA4F;
|
|
1
|
+
{"version":3,"file":"AxelarAssetTransfer.js","sourceRoot":"","sources":["../../../src/libs/AxelarAssetTransfer.ts"],"names":[],"mappings":"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"}
|