@wormhole-foundation/sdk-cosmwasm 0.5.0-alpha.0
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/README.md +31 -0
- package/dist/cjs/address.d.ts +29 -0
- package/dist/cjs/address.d.ts.map +1 -0
- package/dist/cjs/address.js +217 -0
- package/dist/cjs/address.js.map +1 -0
- package/dist/cjs/chain.d.ts +5 -0
- package/dist/cjs/chain.d.ts.map +1 -0
- package/dist/cjs/chain.js +8 -0
- package/dist/cjs/chain.js.map +1 -0
- package/dist/cjs/constants.d.ts +771 -0
- package/dist/cjs/constants.d.ts.map +1 -0
- package/dist/cjs/constants.js +180 -0
- package/dist/cjs/constants.js.map +1 -0
- package/dist/cjs/gateway.d.ts +17 -0
- package/dist/cjs/gateway.d.ts.map +1 -0
- package/dist/cjs/gateway.js +75 -0
- package/dist/cjs/gateway.js.map +1 -0
- package/dist/cjs/index.d.ts +9 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +25 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/platform.d.ts +33 -0
- package/dist/cjs/platform.d.ts.map +1 -0
- package/dist/cjs/platform.js +131 -0
- package/dist/cjs/platform.js.map +1 -0
- package/dist/cjs/signer.d.ts +31 -0
- package/dist/cjs/signer.d.ts.map +1 -0
- package/dist/cjs/signer.js +114 -0
- package/dist/cjs/signer.js.map +1 -0
- package/dist/cjs/types.d.ts +18 -0
- package/dist/cjs/types.d.ts.map +1 -0
- package/dist/cjs/types.js +20 -0
- package/dist/cjs/types.js.map +1 -0
- package/dist/cjs/unsignedTransaction.d.ts +20 -0
- package/dist/cjs/unsignedTransaction.d.ts.map +1 -0
- package/dist/cjs/unsignedTransaction.js +43 -0
- package/dist/cjs/unsignedTransaction.js.map +1 -0
- package/dist/esm/address.d.ts +29 -0
- package/dist/esm/address.d.ts.map +1 -0
- package/dist/esm/address.js +213 -0
- package/dist/esm/address.js.map +1 -0
- package/dist/esm/chain.d.ts +5 -0
- package/dist/esm/chain.d.ts.map +1 -0
- package/dist/esm/chain.js +4 -0
- package/dist/esm/chain.js.map +1 -0
- package/dist/esm/constants.d.ts +771 -0
- package/dist/esm/constants.d.ts.map +1 -0
- package/dist/esm/constants.js +177 -0
- package/dist/esm/constants.js.map +1 -0
- package/dist/esm/gateway.d.ts +17 -0
- package/dist/esm/gateway.d.ts.map +1 -0
- package/dist/esm/gateway.js +71 -0
- package/dist/esm/gateway.js.map +1 -0
- package/dist/esm/index.d.ts +9 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +9 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/platform.d.ts +33 -0
- package/dist/esm/platform.d.ts.map +1 -0
- package/dist/esm/platform.js +127 -0
- package/dist/esm/platform.js.map +1 -0
- package/dist/esm/signer.d.ts +31 -0
- package/dist/esm/signer.d.ts.map +1 -0
- package/dist/esm/signer.js +108 -0
- package/dist/esm/signer.js.map +1 -0
- package/dist/esm/types.d.ts +18 -0
- package/dist/esm/types.d.ts.map +1 -0
- package/dist/esm/types.js +16 -0
- package/dist/esm/types.js.map +1 -0
- package/dist/esm/unsignedTransaction.d.ts +20 -0
- package/dist/esm/unsignedTransaction.d.ts.map +1 -0
- package/dist/esm/unsignedTransaction.js +37 -0
- package/dist/esm/unsignedTransaction.js.map +1 -0
- package/package.json +63 -0
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CosmwasmEvmSigner = exports.CosmwasmSigner = exports.getCosmwasmSigner = void 0;
|
|
4
|
+
const cosmwasm_stargate_1 = require("@cosmjs/cosmwasm-stargate");
|
|
5
|
+
const proto_signing_1 = require("@cosmjs/proto-signing");
|
|
6
|
+
const sdk_ts_1 = require("@injectivelabs/sdk-ts");
|
|
7
|
+
const sdk_connect_1 = require("@wormhole-foundation/sdk-connect");
|
|
8
|
+
const tx_1 = require("cosmjs-types/cosmos/tx/v1beta1/tx");
|
|
9
|
+
const constants_1 = require("./constants");
|
|
10
|
+
const platform_1 = require("./platform");
|
|
11
|
+
async function getCosmwasmSigner(rpc, mnemonic) {
|
|
12
|
+
const [network, chain] = await platform_1.CosmwasmPlatform.chainFromRpc(rpc);
|
|
13
|
+
// Use the EVM signer for Evmos and Injective only
|
|
14
|
+
if (constants_1.evmLikeChains.includes(chain)) {
|
|
15
|
+
return new CosmwasmEvmSigner(chain, network, mnemonic);
|
|
16
|
+
}
|
|
17
|
+
// Otherwise use the default signer
|
|
18
|
+
const signer = await proto_signing_1.DirectSecp256k1HdWallet.fromMnemonic(mnemonic, {
|
|
19
|
+
prefix: (0, constants_1.chainToAddressPrefix)(chain),
|
|
20
|
+
});
|
|
21
|
+
const acct = (await signer.getAccounts())[0];
|
|
22
|
+
const signingClient = await cosmwasm_stargate_1.SigningCosmWasmClient.connectWithSigner(sdk_connect_1.rpc.rpcAddress(network, chain), signer);
|
|
23
|
+
return new CosmwasmSigner(chain, signingClient, acct.address);
|
|
24
|
+
}
|
|
25
|
+
exports.getCosmwasmSigner = getCosmwasmSigner;
|
|
26
|
+
class CosmwasmSigner {
|
|
27
|
+
_chain;
|
|
28
|
+
_signer;
|
|
29
|
+
_account;
|
|
30
|
+
constructor(_chain, _signer, _account) {
|
|
31
|
+
this._chain = _chain;
|
|
32
|
+
this._signer = _signer;
|
|
33
|
+
this._account = _account;
|
|
34
|
+
}
|
|
35
|
+
chain() {
|
|
36
|
+
return this._chain;
|
|
37
|
+
}
|
|
38
|
+
address() {
|
|
39
|
+
return this._account;
|
|
40
|
+
}
|
|
41
|
+
async sign(tx) {
|
|
42
|
+
const signed = [];
|
|
43
|
+
for (const txn of tx) {
|
|
44
|
+
const { description, transaction } = txn;
|
|
45
|
+
console.log(`Signing: ${description} for ${this.address()}`);
|
|
46
|
+
console.log(transaction.msgs, transaction.fee, transaction.memo);
|
|
47
|
+
const txRaw = await this._signer.sign(this.address(), transaction.msgs, transaction.fee, transaction.memo);
|
|
48
|
+
const encoded = tx_1.TxRaw.encode(txRaw).finish();
|
|
49
|
+
signed.push(encoded);
|
|
50
|
+
}
|
|
51
|
+
return signed;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
exports.CosmwasmSigner = CosmwasmSigner;
|
|
55
|
+
class CosmwasmEvmSigner {
|
|
56
|
+
_chain;
|
|
57
|
+
_chainId;
|
|
58
|
+
key;
|
|
59
|
+
prefix;
|
|
60
|
+
_rpc;
|
|
61
|
+
constructor(_chain, _network, _mnemonic) {
|
|
62
|
+
this._chain = _chain;
|
|
63
|
+
this._rpc = new sdk_ts_1.ChainRestAuthApi((0, constants_1.cosmwasmNetworkChainToRestUrls)(_network, _chain));
|
|
64
|
+
this._chainId = sdk_connect_1.nativeChainIds.networkChainToNativeChainId.get(_network, _chain);
|
|
65
|
+
this.prefix = (0, constants_1.chainToAddressPrefix)(_chain);
|
|
66
|
+
this.key = sdk_ts_1.PrivateKey.fromMnemonic(_mnemonic);
|
|
67
|
+
}
|
|
68
|
+
chain() {
|
|
69
|
+
return this._chain;
|
|
70
|
+
}
|
|
71
|
+
address() {
|
|
72
|
+
return this.key.toAddress().toBech32(this.prefix);
|
|
73
|
+
}
|
|
74
|
+
async sign(txns) {
|
|
75
|
+
const pubKey = this.key.toPublicKey().toBase64();
|
|
76
|
+
const { sequence, accountNumber } = await this.getSignerData();
|
|
77
|
+
const signed = [];
|
|
78
|
+
for (const tx of txns) {
|
|
79
|
+
const { description, transaction } = tx;
|
|
80
|
+
console.log(`Signing ${description} for ${this.address()}`);
|
|
81
|
+
const { signBytes, txRaw } = (0, sdk_ts_1.createTransaction)({
|
|
82
|
+
message: transaction.msgs.map((eo) => sdk_ts_1.MsgTransfer.fromJSON({
|
|
83
|
+
port: eo.value.sourcePort,
|
|
84
|
+
amount: eo.value.token,
|
|
85
|
+
memo: eo.value.memo,
|
|
86
|
+
sender: eo.value.sender,
|
|
87
|
+
receiver: eo.value.receiver,
|
|
88
|
+
channelId: eo.value.sourceChannel,
|
|
89
|
+
timeout: eo.value.timeoutTimestamp,
|
|
90
|
+
height: eo.value.timeoutHeight,
|
|
91
|
+
})),
|
|
92
|
+
pubKey,
|
|
93
|
+
sequence,
|
|
94
|
+
accountNumber,
|
|
95
|
+
chainId: this._chainId,
|
|
96
|
+
memo: transaction.memo,
|
|
97
|
+
fee: transaction.fee,
|
|
98
|
+
});
|
|
99
|
+
// @ts-ignore -- sign wants a `Buffer` but we give it uint8array
|
|
100
|
+
txRaw.signatures = [await this.key.sign(signBytes)];
|
|
101
|
+
signed.push(sdk_connect_1.encoding.b64.decode(sdk_ts_1.TxClient.encode(txRaw)));
|
|
102
|
+
}
|
|
103
|
+
return signed;
|
|
104
|
+
}
|
|
105
|
+
async getSignerData() {
|
|
106
|
+
const address = this.address();
|
|
107
|
+
const { account } = await this._rpc.fetchAccount(address);
|
|
108
|
+
const accountNumber = parseInt(account.base_account.account_number, 10);
|
|
109
|
+
const sequence = parseInt(account.base_account.sequence, 10);
|
|
110
|
+
return { address, sequence, accountNumber };
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
exports.CosmwasmEvmSigner = CosmwasmEvmSigner;
|
|
114
|
+
//# sourceMappingURL=signer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"signer.js","sourceRoot":"","sources":["../../src/signer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { UniversalOrNative, PlatformToChains } from "@wormhole-foundation/sdk-connect";
|
|
2
|
+
import { logs as cosmosLogs } from "@cosmjs/stargate";
|
|
3
|
+
/**
|
|
4
|
+
* Runtime value for the Cosmwasm Platform
|
|
5
|
+
*/
|
|
6
|
+
export declare const _platform: "Cosmwasm";
|
|
7
|
+
/**
|
|
8
|
+
* Compile time type for Cosmwasm Platform
|
|
9
|
+
*/
|
|
10
|
+
export type CosmwasmPlatformType = typeof _platform;
|
|
11
|
+
export type CosmwasmChains = PlatformToChains<CosmwasmPlatformType>;
|
|
12
|
+
export type UniversalOrCosmwasm = UniversalOrNative<CosmwasmChains>;
|
|
13
|
+
export type AnyCosmwasmAddress = UniversalOrCosmwasm | string | Uint8Array;
|
|
14
|
+
export interface WrappedRegistryResponse {
|
|
15
|
+
address: string;
|
|
16
|
+
}
|
|
17
|
+
export declare const searchCosmosLogs: (key: string, logs: readonly cosmosLogs.Log[]) => string | null;
|
|
18
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACvF,OAAO,EAAE,IAAI,IAAI,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEtD;;GAEG;AACH,eAAO,MAAM,SAAS,EAAE,UAAuB,CAAC;AAChD;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,OAAO,SAAS,CAAC;AAEpD,MAAM,MAAM,cAAc,GAAG,gBAAgB,CAAC,oBAAoB,CAAC,CAAC;AACpE,MAAM,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,cAAc,CAAC,CAAC;AACpE,MAAM,MAAM,kBAAkB,GAAG,mBAAmB,GAAG,MAAM,GAAG,UAAU,CAAC;AAE3E,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,gBAAgB,QAAS,MAAM,QAAQ,SAAS,WAAW,GAAG,EAAE,KAAG,MAAM,GAAG,IASxF,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.searchCosmosLogs = exports._platform = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Runtime value for the Cosmwasm Platform
|
|
6
|
+
*/
|
|
7
|
+
exports._platform = "Cosmwasm";
|
|
8
|
+
const searchCosmosLogs = (key, logs) => {
|
|
9
|
+
for (const log of logs) {
|
|
10
|
+
for (const ev of log.events) {
|
|
11
|
+
for (const attr of ev.attributes) {
|
|
12
|
+
if (attr.key === key)
|
|
13
|
+
return attr.value;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
return null;
|
|
18
|
+
};
|
|
19
|
+
exports.searchCosmosLogs = searchCosmosLogs;
|
|
20
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";;;AAGA;;GAEG;AACU,QAAA,SAAS,GAAe,UAAU,CAAC;AAczC,MAAM,gBAAgB,GAAG,CAAC,GAAW,EAAE,IAA+B,EAAiB,EAAE;IAC9F,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;QACtB,KAAK,MAAM,EAAE,IAAI,GAAG,CAAC,MAAM,EAAE;YAC3B,KAAK,MAAM,IAAI,IAAI,EAAE,CAAC,UAAU,EAAE;gBAChC,IAAI,IAAI,CAAC,GAAG,KAAK,GAAG;oBAAE,OAAO,IAAI,CAAC,KAAK,CAAC;aACzC;SACF;KACF;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AATW,QAAA,gBAAgB,oBAS3B"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Coin, EncodeObject } from "@cosmjs/proto-signing";
|
|
2
|
+
import { StdFee } from "@cosmjs/stargate";
|
|
3
|
+
import { Network, UnsignedTransaction } from "@wormhole-foundation/sdk-connect";
|
|
4
|
+
import { CosmwasmChains } from "./types";
|
|
5
|
+
export interface CosmwasmTransaction {
|
|
6
|
+
fee: StdFee;
|
|
7
|
+
msgs: EncodeObject[];
|
|
8
|
+
memo: string;
|
|
9
|
+
}
|
|
10
|
+
export declare function computeFee<N extends Network, C extends CosmwasmChains>(network: N, chain: C): StdFee;
|
|
11
|
+
export declare function buildExecuteMsg(sender: string, contract: string, msg: Record<string, any>, funds?: Coin[]): EncodeObject;
|
|
12
|
+
export declare class CosmwasmUnsignedTransaction<N extends Network, C extends CosmwasmChains> implements UnsignedTransaction<N, C> {
|
|
13
|
+
readonly transaction: CosmwasmTransaction;
|
|
14
|
+
readonly network: N;
|
|
15
|
+
readonly chain: C;
|
|
16
|
+
readonly description: string;
|
|
17
|
+
readonly parallelizable: boolean;
|
|
18
|
+
constructor(transaction: CosmwasmTransaction, network: N, chain: C, description: string, parallelizable?: boolean);
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=unsignedTransaction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unsignedTransaction.d.ts","sourceRoot":"","sources":["../../src/unsignedTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAgB,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAY,MAAM,kCAAkC,CAAC;AAI1F,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEzC,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,YAAY,EAAE,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,UAAU,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,cAAc,EACpE,OAAO,EAAE,CAAC,EACV,KAAK,EAAE,CAAC,GACP,MAAM,CAQR;AAED,wBAAgB,eAAe,CAC7B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACxB,KAAK,CAAC,EAAE,IAAI,EAAE,GACb,YAAY,CAUd;AAED,qBAAa,2BAA2B,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,cAAc,CAClF,YAAW,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC;IAGlC,QAAQ,CAAC,WAAW,EAAE,mBAAmB;IACzC,QAAQ,CAAC,OAAO,EAAE,CAAC;IACnB,QAAQ,CAAC,KAAK,EAAE,CAAC;IACjB,QAAQ,CAAC,WAAW,EAAE,MAAM;IAC5B,QAAQ,CAAC,cAAc,EAAE,OAAO;gBAJvB,WAAW,EAAE,mBAAmB,EAChC,OAAO,EAAE,CAAC,EACV,KAAK,EAAE,CAAC,EACR,WAAW,EAAE,MAAM,EACnB,cAAc,GAAE,OAAe;CAE3C"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CosmwasmUnsignedTransaction = exports.buildExecuteMsg = exports.computeFee = void 0;
|
|
4
|
+
const stargate_1 = require("@cosmjs/stargate");
|
|
5
|
+
const sdk_connect_1 = require("@wormhole-foundation/sdk-connect");
|
|
6
|
+
const tx_1 = require("cosmjs-types/cosmwasm/wasm/v1/tx");
|
|
7
|
+
const constants_1 = require("./constants");
|
|
8
|
+
const platform_1 = require("./platform");
|
|
9
|
+
function computeFee(network, chain) {
|
|
10
|
+
let avgFee = constants_1.averageGasPrices.get(network, chain);
|
|
11
|
+
if (!avgFee)
|
|
12
|
+
avgFee = "0.1";
|
|
13
|
+
return (0, stargate_1.calculateFee)(constants_1.DEFAULT_FEE * 1.5, `${avgFee}${platform_1.CosmwasmPlatform.getNativeDenom(network, chain)}`);
|
|
14
|
+
}
|
|
15
|
+
exports.computeFee = computeFee;
|
|
16
|
+
function buildExecuteMsg(sender, contract, msg, funds) {
|
|
17
|
+
return {
|
|
18
|
+
typeUrl: constants_1.MSG_EXECUTE_CONTRACT_TYPE_URL,
|
|
19
|
+
value: tx_1.MsgExecuteContract.fromPartial({
|
|
20
|
+
sender: sender,
|
|
21
|
+
contract: contract,
|
|
22
|
+
msg: sdk_connect_1.encoding.bytes.encode(JSON.stringify(msg)),
|
|
23
|
+
funds,
|
|
24
|
+
}),
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
exports.buildExecuteMsg = buildExecuteMsg;
|
|
28
|
+
class CosmwasmUnsignedTransaction {
|
|
29
|
+
transaction;
|
|
30
|
+
network;
|
|
31
|
+
chain;
|
|
32
|
+
description;
|
|
33
|
+
parallelizable;
|
|
34
|
+
constructor(transaction, network, chain, description, parallelizable = false) {
|
|
35
|
+
this.transaction = transaction;
|
|
36
|
+
this.network = network;
|
|
37
|
+
this.chain = chain;
|
|
38
|
+
this.description = description;
|
|
39
|
+
this.parallelizable = parallelizable;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
exports.CosmwasmUnsignedTransaction = CosmwasmUnsignedTransaction;
|
|
43
|
+
//# sourceMappingURL=unsignedTransaction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unsignedTransaction.js","sourceRoot":"","sources":["../../src/unsignedTransaction.ts"],"names":[],"mappings":";;;AACA,+CAAwD;AACxD,kEAA0F;AAC1F,yDAAsE;AACtE,2CAA2F;AAC3F,yCAA8C;AAS9C,SAAgB,UAAU,CACxB,OAAU,EACV,KAAQ;IAER,IAAI,MAAM,GAAW,4BAAgB,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAW,CAAC;IACpE,IAAI,CAAC,MAAM;QAAE,MAAM,GAAG,KAAK,CAAC;IAE5B,OAAO,IAAA,uBAAY,EACjB,uBAAW,GAAG,GAAG,EACjB,GAAG,MAAM,GAAG,2BAAgB,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAC9D,CAAC;AACJ,CAAC;AAXD,gCAWC;AAED,SAAgB,eAAe,CAC7B,MAAc,EACd,QAAgB,EAChB,GAAwB,EACxB,KAAc;IAEd,OAAO;QACL,OAAO,EAAE,yCAA6B;QACtC,KAAK,EAAE,uBAAkB,CAAC,WAAW,CAAC;YACpC,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,QAAQ;YAClB,GAAG,EAAE,sBAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YAC/C,KAAK;SACN,CAAC;KACH,CAAC;AACJ,CAAC;AAfD,0CAeC;AAED,MAAa,2BAA2B;IAI3B;IACA;IACA;IACA;IACA;IALX,YACW,WAAgC,EAChC,OAAU,EACV,KAAQ,EACR,WAAmB,EACnB,iBAA0B,KAAK;QAJ/B,gBAAW,GAAX,WAAW,CAAqB;QAChC,YAAO,GAAP,OAAO,CAAG;QACV,UAAK,GAAL,KAAK,CAAG;QACR,gBAAW,GAAX,WAAW,CAAQ;QACnB,mBAAc,GAAd,cAAc,CAAiB;IACvC,CAAC;CACL;AAVD,kEAUC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Address, UniversalAddress } from "@wormhole-foundation/sdk-connect";
|
|
2
|
+
import { AnyCosmwasmAddress } from "./types";
|
|
3
|
+
export declare class CosmwasmAddress implements Address {
|
|
4
|
+
static readonly contractAddressByteSize = 32;
|
|
5
|
+
static readonly accountAddressByteSize = 20;
|
|
6
|
+
readonly platform: "Cosmwasm";
|
|
7
|
+
readonly address: Uint8Array;
|
|
8
|
+
readonly domain?: string;
|
|
9
|
+
readonly denom?: string;
|
|
10
|
+
readonly denomType?: string;
|
|
11
|
+
constructor(address: AnyCosmwasmAddress);
|
|
12
|
+
unwrap(): string;
|
|
13
|
+
toString(): string;
|
|
14
|
+
toNative(): this;
|
|
15
|
+
toUint8Array(): Uint8Array;
|
|
16
|
+
toUniversalAddress(): UniversalAddress;
|
|
17
|
+
static isValidAddress(address: string): boolean;
|
|
18
|
+
private static validAddressLength;
|
|
19
|
+
static instanceof(address: any): address is CosmwasmAddress;
|
|
20
|
+
equals(other: CosmwasmAddress | UniversalAddress): boolean;
|
|
21
|
+
}
|
|
22
|
+
declare module "@wormhole-foundation/sdk-connect" {
|
|
23
|
+
namespace WormholeRegistry {
|
|
24
|
+
interface PlatformToNativeAddressMapping {
|
|
25
|
+
Cosmwasm: CosmwasmAddress;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=address.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"address.d.ts","sourceRoot":"","sources":["../../src/address.ts"],"names":[],"mappings":"AACA,OAAO,EACL,OAAO,EACP,gBAAgB,EAGjB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAE,kBAAkB,EAAa,MAAM,SAAS,CAAC;AAqFxD,qBAAa,eAAgB,YAAW,OAAO;IAC7C,MAAM,CAAC,QAAQ,CAAC,uBAAuB,MAAM;IAC7C,MAAM,CAAC,QAAQ,CAAC,sBAAsB,MAAM;IAC5C,SAAgB,QAAQ,aAA8B;IAGtD,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAG7B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEzB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAExB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;gBAEhB,OAAO,EAAE,kBAAkB;IAwDvC,MAAM,IAAI,MAAM;IAIhB,QAAQ,IAAI,MAAM;IAoBlB,QAAQ;IAIR,YAAY;IAIZ,kBAAkB;IAMlB,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAQ/C,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAajC,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,IAAI,eAAe;IAI3D,MAAM,CAAC,KAAK,EAAE,eAAe,GAAG,gBAAgB,GAAG,OAAO;CAO3D;AAED,OAAO,QAAQ,kCAAkC,CAAC;IAChD,UAAiB,gBAAgB,CAAC;QAChC,UAAU,8BAA8B;YACtC,QAAQ,EAAE,eAAe,CAAC;SAC3B;KACF;CACF"}
|
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
import { fromBase64, fromBech32, fromHex, toBech32 } from "@cosmjs/encoding";
|
|
2
|
+
import { UniversalAddress, encoding, registerNative, } from "@wormhole-foundation/sdk-connect";
|
|
3
|
+
import { CosmwasmPlatform } from "./platform";
|
|
4
|
+
import { _platform } from "./types";
|
|
5
|
+
/*
|
|
6
|
+
Categories:
|
|
7
|
+
|
|
8
|
+
Bank Tokens
|
|
9
|
+
|
|
10
|
+
uatom,ibc/...,factory/...
|
|
11
|
+
|
|
12
|
+
Contract Tokens
|
|
13
|
+
|
|
14
|
+
*/
|
|
15
|
+
/*
|
|
16
|
+
Cosmos Addresses
|
|
17
|
+
-----
|
|
18
|
+
|
|
19
|
+
There are at least 5 types of addresses in Cosmos:
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
Native Denom
|
|
23
|
+
ex: "uatom"
|
|
24
|
+
|
|
25
|
+
address = [] // 0 bytes
|
|
26
|
+
domain = undefined
|
|
27
|
+
denom = "uatom"
|
|
28
|
+
denomType = "native"
|
|
29
|
+
|
|
30
|
+
Contract Address
|
|
31
|
+
ex: "wormhole1ctnjk7an90lz5wjfvr3cf6x984a8cjnv8dpmztmlpcq4xteaa2xs9pwmzk"
|
|
32
|
+
|
|
33
|
+
address = [0x...] // 32 bytes
|
|
34
|
+
domain = "wormhole"
|
|
35
|
+
denom = undefined
|
|
36
|
+
denomType = undefined
|
|
37
|
+
|
|
38
|
+
Account Address
|
|
39
|
+
ex: "cosmos1hsk6jryyqjfhp5dhc55tc9jtckygx0eph6dd02"
|
|
40
|
+
|
|
41
|
+
address = [0x...] // 20 bytes
|
|
42
|
+
domain = "cosmos"
|
|
43
|
+
denom = undefined
|
|
44
|
+
denomType = undefined
|
|
45
|
+
|
|
46
|
+
IBC Denom
|
|
47
|
+
ex: IBC/BAEAC83736444C09656FBE666FB625974FCCDEE566EB700EBFD2642C5F6CF13A
|
|
48
|
+
|
|
49
|
+
address = [0x...] // 32 bytes
|
|
50
|
+
domain = undefined
|
|
51
|
+
denom = undefined
|
|
52
|
+
denomType = "IBC"
|
|
53
|
+
|
|
54
|
+
Factory Address
|
|
55
|
+
ex: "factory/inj17vytdwqczqz72j65saukplrktd4gyfme5agf6c/avax"
|
|
56
|
+
|
|
57
|
+
address = [0x...] 20 bytes
|
|
58
|
+
domain = "inj"
|
|
59
|
+
denom = "avax"
|
|
60
|
+
denomType = "factory"
|
|
61
|
+
|
|
62
|
+
Transfer Denom
|
|
63
|
+
ex: transfer/channel-486/factory/wormhole1ctnjk7an90lz5wjfvr3cf6x984a8cjnv8dpmztmlpcq4xteaa2xs9pwmzk/6vxRV62YN1CTZeQM5ZfvCZDCVA4nLhtZcLxziYa7xYqb
|
|
64
|
+
|
|
65
|
+
address = [0x...] 32 bytes
|
|
66
|
+
domain = "wormhole"
|
|
67
|
+
denom = "6vxRV62YN1CTZeQM5ZfvCZDCVA4nLhtZcLxziYa7xYqb"
|
|
68
|
+
denomType = "transfer/channel-486/factory"
|
|
69
|
+
*/
|
|
70
|
+
// Factory type addresses may have hex or b64 or bech32 encoded addresses
|
|
71
|
+
function tryDecode(data) {
|
|
72
|
+
try {
|
|
73
|
+
return { ...fromBech32(data) };
|
|
74
|
+
}
|
|
75
|
+
catch { }
|
|
76
|
+
try {
|
|
77
|
+
return { data: fromHex(data) };
|
|
78
|
+
}
|
|
79
|
+
catch { }
|
|
80
|
+
try {
|
|
81
|
+
return { data: fromBase64(data) };
|
|
82
|
+
}
|
|
83
|
+
catch { }
|
|
84
|
+
throw new Error(`Cannot decode: ${data}`);
|
|
85
|
+
}
|
|
86
|
+
export class CosmwasmAddress {
|
|
87
|
+
static contractAddressByteSize = 32;
|
|
88
|
+
static accountAddressByteSize = 20;
|
|
89
|
+
platform = CosmwasmPlatform._platform;
|
|
90
|
+
// the actual bytes of the address
|
|
91
|
+
address;
|
|
92
|
+
// The domain is the prefix for the address, like "cosmos" or "ibc"
|
|
93
|
+
domain;
|
|
94
|
+
// The denom is the token name, like "uatom" or "usdc"
|
|
95
|
+
denom;
|
|
96
|
+
// The denomType is "native", "ibc", or "factory"
|
|
97
|
+
denomType;
|
|
98
|
+
constructor(address) {
|
|
99
|
+
if (CosmwasmAddress.instanceof(address)) {
|
|
100
|
+
const a = address;
|
|
101
|
+
this.address = a.address;
|
|
102
|
+
this.domain = a.domain;
|
|
103
|
+
this.denom = a.denom;
|
|
104
|
+
this.denomType = a.denomType;
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
if (typeof address === "string") {
|
|
108
|
+
// A native denom like "uatom"
|
|
109
|
+
if (address.length <= 8) {
|
|
110
|
+
this.address = new Uint8Array(0);
|
|
111
|
+
this.denom = address;
|
|
112
|
+
this.denomType = "native";
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
115
|
+
if (address.indexOf("/") !== -1) {
|
|
116
|
+
// A denom address like "ibc/..." or "factory/..." or "transfer/channel-${id}/factory/..."
|
|
117
|
+
const chunks = address.split("/");
|
|
118
|
+
// It's a `transfer/...` denom
|
|
119
|
+
if (chunks.length >= 3) {
|
|
120
|
+
// Address will be second from the last
|
|
121
|
+
const { data, prefix } = tryDecode(chunks[chunks.length - 2]);
|
|
122
|
+
this.address = data;
|
|
123
|
+
this.domain = prefix;
|
|
124
|
+
this.denom = chunks[chunks.length - 1];
|
|
125
|
+
this.denomType = chunks.slice(0, chunks.length - 2).join("/");
|
|
126
|
+
}
|
|
127
|
+
else {
|
|
128
|
+
const { data } = tryDecode(chunks[1]);
|
|
129
|
+
this.address = data;
|
|
130
|
+
this.denomType = chunks[0];
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
else {
|
|
134
|
+
// should be a contract or account address by now
|
|
135
|
+
if (!CosmwasmAddress.isValidAddress(address))
|
|
136
|
+
throw new Error(`Invalid Cosmwasm address: ${address}`);
|
|
137
|
+
const { data, prefix } = fromBech32(address);
|
|
138
|
+
this.address = data;
|
|
139
|
+
this.domain = prefix;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
else if (address instanceof Uint8Array) {
|
|
143
|
+
this.address = address;
|
|
144
|
+
}
|
|
145
|
+
else if (UniversalAddress.instanceof(address)) {
|
|
146
|
+
this.address = address.toUint8Array();
|
|
147
|
+
}
|
|
148
|
+
else
|
|
149
|
+
throw new Error(`Invalid Cosmwasm address ${address}`);
|
|
150
|
+
if (!CosmwasmAddress.validAddressLength(this.address)) {
|
|
151
|
+
throw new Error("Expected 20 or 32 bytes address");
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
unwrap() {
|
|
155
|
+
return this.toString();
|
|
156
|
+
}
|
|
157
|
+
toString() {
|
|
158
|
+
// Coin address
|
|
159
|
+
if (this.denomType !== undefined) {
|
|
160
|
+
// native asset denom
|
|
161
|
+
if (this.denomType === "native")
|
|
162
|
+
return this.denom;
|
|
163
|
+
// ibc/hex
|
|
164
|
+
if (this.denomType === "ibc") {
|
|
165
|
+
// NOTE: this is case sensitive, should be `ibc` not `IBC`
|
|
166
|
+
return `${this.denomType.toLowerCase()}/${encoding.hex.encode(this.address).toUpperCase()}`;
|
|
167
|
+
}
|
|
168
|
+
// ?/factory/address/denom
|
|
169
|
+
return `${this.denomType}/${toBech32(this.domain, this.address)}/${this.denom}`;
|
|
170
|
+
}
|
|
171
|
+
// contract or account address
|
|
172
|
+
return toBech32(this.domain, this.address);
|
|
173
|
+
}
|
|
174
|
+
toNative() {
|
|
175
|
+
return this;
|
|
176
|
+
}
|
|
177
|
+
toUint8Array() {
|
|
178
|
+
return this.address;
|
|
179
|
+
}
|
|
180
|
+
toUniversalAddress() {
|
|
181
|
+
const buff = new Uint8Array(UniversalAddress.byteSize);
|
|
182
|
+
buff.set(this.address, UniversalAddress.byteSize - this.address.length);
|
|
183
|
+
return new UniversalAddress(buff);
|
|
184
|
+
}
|
|
185
|
+
static isValidAddress(address) {
|
|
186
|
+
try {
|
|
187
|
+
const maybe = fromBech32(address);
|
|
188
|
+
return CosmwasmAddress.validAddressLength(maybe.data);
|
|
189
|
+
}
|
|
190
|
+
catch { }
|
|
191
|
+
return false;
|
|
192
|
+
}
|
|
193
|
+
static validAddressLength(address) {
|
|
194
|
+
if (address.length !== CosmwasmAddress.contractAddressByteSize &&
|
|
195
|
+
address.length !== CosmwasmAddress.accountAddressByteSize)
|
|
196
|
+
throw new Error(`Invalid Cosmwasm address, expected ${CosmwasmAddress.contractAddressByteSize} ` +
|
|
197
|
+
`or ${CosmwasmAddress.accountAddressByteSize} bytes but got ${address.length}`);
|
|
198
|
+
return true;
|
|
199
|
+
}
|
|
200
|
+
static instanceof(address) {
|
|
201
|
+
return address.platform === CosmwasmPlatform._platform;
|
|
202
|
+
}
|
|
203
|
+
equals(other) {
|
|
204
|
+
if (CosmwasmAddress.instanceof(other)) {
|
|
205
|
+
return this.toString() === other.toString();
|
|
206
|
+
}
|
|
207
|
+
else {
|
|
208
|
+
return other.equals(this.toUniversalAddress());
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
registerNative(_platform, CosmwasmAddress);
|
|
213
|
+
//# sourceMappingURL=address.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"address.js","sourceRoot":"","sources":["../../src/address.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { Chain, ChainContext, Network } from "@wormhole-foundation/sdk-connect";
|
|
2
|
+
import { CosmwasmChains } from "./types";
|
|
3
|
+
export declare class CosmwasmChain<N extends Network = Network, C extends Chain = CosmwasmChains> extends ChainContext<N, C> {
|
|
4
|
+
}
|
|
5
|
+
//# sourceMappingURL=chain.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chain.d.ts","sourceRoot":"","sources":["../../src/chain.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,kCAAkC,CAAC;AAChF,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEzC,qBAAa,aAAa,CACxB,CAAC,SAAS,OAAO,GAAG,OAAO,EAC3B,CAAC,SAAS,KAAK,GAAG,cAAc,CAChC,SAAQ,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC;CAAG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chain.js","sourceRoot":"","sources":["../../src/chain.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,YAAY,EAAW,MAAM,kCAAkC,CAAC;AAGhF,MAAM,OAAO,aAGX,SAAQ,YAAkB;CAAG"}
|