@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.
Files changed (74) hide show
  1. package/README.md +31 -0
  2. package/dist/cjs/address.d.ts +29 -0
  3. package/dist/cjs/address.d.ts.map +1 -0
  4. package/dist/cjs/address.js +217 -0
  5. package/dist/cjs/address.js.map +1 -0
  6. package/dist/cjs/chain.d.ts +5 -0
  7. package/dist/cjs/chain.d.ts.map +1 -0
  8. package/dist/cjs/chain.js +8 -0
  9. package/dist/cjs/chain.js.map +1 -0
  10. package/dist/cjs/constants.d.ts +771 -0
  11. package/dist/cjs/constants.d.ts.map +1 -0
  12. package/dist/cjs/constants.js +180 -0
  13. package/dist/cjs/constants.js.map +1 -0
  14. package/dist/cjs/gateway.d.ts +17 -0
  15. package/dist/cjs/gateway.d.ts.map +1 -0
  16. package/dist/cjs/gateway.js +75 -0
  17. package/dist/cjs/gateway.js.map +1 -0
  18. package/dist/cjs/index.d.ts +9 -0
  19. package/dist/cjs/index.d.ts.map +1 -0
  20. package/dist/cjs/index.js +25 -0
  21. package/dist/cjs/index.js.map +1 -0
  22. package/dist/cjs/platform.d.ts +33 -0
  23. package/dist/cjs/platform.d.ts.map +1 -0
  24. package/dist/cjs/platform.js +131 -0
  25. package/dist/cjs/platform.js.map +1 -0
  26. package/dist/cjs/signer.d.ts +31 -0
  27. package/dist/cjs/signer.d.ts.map +1 -0
  28. package/dist/cjs/signer.js +114 -0
  29. package/dist/cjs/signer.js.map +1 -0
  30. package/dist/cjs/types.d.ts +18 -0
  31. package/dist/cjs/types.d.ts.map +1 -0
  32. package/dist/cjs/types.js +20 -0
  33. package/dist/cjs/types.js.map +1 -0
  34. package/dist/cjs/unsignedTransaction.d.ts +20 -0
  35. package/dist/cjs/unsignedTransaction.d.ts.map +1 -0
  36. package/dist/cjs/unsignedTransaction.js +43 -0
  37. package/dist/cjs/unsignedTransaction.js.map +1 -0
  38. package/dist/esm/address.d.ts +29 -0
  39. package/dist/esm/address.d.ts.map +1 -0
  40. package/dist/esm/address.js +213 -0
  41. package/dist/esm/address.js.map +1 -0
  42. package/dist/esm/chain.d.ts +5 -0
  43. package/dist/esm/chain.d.ts.map +1 -0
  44. package/dist/esm/chain.js +4 -0
  45. package/dist/esm/chain.js.map +1 -0
  46. package/dist/esm/constants.d.ts +771 -0
  47. package/dist/esm/constants.d.ts.map +1 -0
  48. package/dist/esm/constants.js +177 -0
  49. package/dist/esm/constants.js.map +1 -0
  50. package/dist/esm/gateway.d.ts +17 -0
  51. package/dist/esm/gateway.d.ts.map +1 -0
  52. package/dist/esm/gateway.js +71 -0
  53. package/dist/esm/gateway.js.map +1 -0
  54. package/dist/esm/index.d.ts +9 -0
  55. package/dist/esm/index.d.ts.map +1 -0
  56. package/dist/esm/index.js +9 -0
  57. package/dist/esm/index.js.map +1 -0
  58. package/dist/esm/platform.d.ts +33 -0
  59. package/dist/esm/platform.d.ts.map +1 -0
  60. package/dist/esm/platform.js +127 -0
  61. package/dist/esm/platform.js.map +1 -0
  62. package/dist/esm/signer.d.ts +31 -0
  63. package/dist/esm/signer.d.ts.map +1 -0
  64. package/dist/esm/signer.js +108 -0
  65. package/dist/esm/signer.js.map +1 -0
  66. package/dist/esm/types.d.ts +18 -0
  67. package/dist/esm/types.d.ts.map +1 -0
  68. package/dist/esm/types.js +16 -0
  69. package/dist/esm/types.js.map +1 -0
  70. package/dist/esm/unsignedTransaction.d.ts +20 -0
  71. package/dist/esm/unsignedTransaction.d.ts.map +1 -0
  72. package/dist/esm/unsignedTransaction.js +37 -0
  73. package/dist/esm/unsignedTransaction.js.map +1 -0
  74. package/package.json +63 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEzC,eAAO,MAAM,WAAW,UAAY,CAAC;AAErC,eAAO,MAAM,6BAA6B,yCAAyC,CAAC;AAEpF,eAAO,MAAM,YAAY,8CAA8C,CAAC;AAExE,eAAO,MAAM,iBAAiB,aAAa,CAAC;AAG5C,eAAO,MAAM,eAAe,gBAAgB,CAAC;AAC7C,eAAO,MAAM,kBAAkB,gBAAgB,CAAC;AAGhD,eAAO,MAAM,cAAc,uBAAuB,CAAC;AACnD,eAAO,MAAM,cAAc,uBAAuB,CAAC;AACnD,eAAO,MAAM,mBAAmB,oBAAoB,CAAC;AACrD,eAAO,MAAM,mBAAmB,oBAAoB,CAAC;AACrD,eAAO,MAAM,cAAc,oBAAoB,CAAC;AAChD,eAAO,MAAM,eAAe,gBAAgB,CAAC;AAC7C,eAAO,MAAM,eAAe,sBAAsB,CAAC;AAEnD,eAAO,MAAM,kBAAkB,QAAiB,CAAC;AAmBjD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;CAAkC,CAAC;AACpE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;CAA4C,CAAC;AAsD9E,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAgC,CAAC;AACjE,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAA+C,CAAC;AAG/E,MAAM,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC;AA4ClE,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAA+B,CAAC;AAEnE,eAAO,MAAM,aAAa,iCAAoE,CAAC;AAC/F,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AA0B9D,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAwC,CAAC;AAuBpF,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAsB,CAAC"}
@@ -0,0 +1,180 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.averageGasPrices = exports.cosmwasmNetworkChainToRestUrls = exports.evmLikeChains = exports.networkChainToChannels = exports.nativeDenomToChain = exports.chainToNativeDenoms = exports.addressPrefixToChain = exports.chainToAddressPrefix = exports.IBC_TIMEOUT_MILLIS = exports.IBC_PACKET_CONN = exports.IBC_PACKET_DATA = exports.IBC_PACKET_SEQ = exports.IBC_PACKET_DST_PORT = exports.IBC_PACKET_SRC_PORT = exports.IBC_PACKET_SRC = exports.IBC_PACKET_DST = exports.IBC_PACKET_RECEIVE = exports.IBC_PACKET_SEND = exports.IBC_TRANSFER_PORT = exports.IBC_MSG_TYPE = exports.MSG_EXECUTE_CONTRACT_TYPE_URL = exports.DEFAULT_FEE = void 0;
4
+ const sdk_connect_1 = require("@wormhole-foundation/sdk-connect");
5
+ exports.DEFAULT_FEE = 1000000;
6
+ exports.MSG_EXECUTE_CONTRACT_TYPE_URL = "/cosmwasm.wasm.v1.MsgExecuteContract";
7
+ exports.IBC_MSG_TYPE = "/ibc.applications.transfer.v1.MsgTransfer";
8
+ exports.IBC_TRANSFER_PORT = "transfer";
9
+ // IBC Message Event type
10
+ exports.IBC_PACKET_SEND = "send_packet";
11
+ exports.IBC_PACKET_RECEIVE = "recv_packet";
12
+ // Attributes for IBC Packet Event
13
+ exports.IBC_PACKET_DST = "packet_dst_channel";
14
+ exports.IBC_PACKET_SRC = "packet_src_channel";
15
+ exports.IBC_PACKET_SRC_PORT = "packet_src_port";
16
+ exports.IBC_PACKET_DST_PORT = "packet_dst_port";
17
+ exports.IBC_PACKET_SEQ = "packet_sequence";
18
+ exports.IBC_PACKET_DATA = "packet_data";
19
+ exports.IBC_PACKET_CONN = "packet_connection";
20
+ exports.IBC_TIMEOUT_MILLIS = 60 * 60 * 1000; // 60 minutes
21
+ const cosmwasmAddressPrefix = [
22
+ ["Cosmoshub", "cosmos"],
23
+ ["Evmos", "evmos"],
24
+ ["Injective", "inj"],
25
+ ["Kujira", "kuji"],
26
+ ["Osmosis", "osmo"],
27
+ ["Sei", "sei"],
28
+ ["Terra", "terra"],
29
+ ["Terra2", "terra"],
30
+ ["Wormchain", "wormhole"],
31
+ ["Xpla", "xpla"],
32
+ ["Celestia", "celestia"],
33
+ ["Stargaze", "stars"],
34
+ ["Dymension", "dym"],
35
+ ["Neutron", "neutron"],
36
+ ];
37
+ exports.chainToAddressPrefix = (0, sdk_connect_1.constMap)(cosmwasmAddressPrefix);
38
+ exports.addressPrefixToChain = (0, sdk_connect_1.constMap)(cosmwasmAddressPrefix, [1, [0]]);
39
+ const cosmwasmNativeDenom = [
40
+ [
41
+ "Mainnet",
42
+ [
43
+ ["Cosmoshub", "uatom"],
44
+ ["Evmos", "aevmos"],
45
+ ["Injective", "inj"],
46
+ ["Kujira", "kuji"],
47
+ ["Osmosis", "uosmo"],
48
+ ["Sei", "usei"],
49
+ ["Terra", "luna"],
50
+ ["Terra2", "uluna"],
51
+ ["Wormchain", "uworm"],
52
+ ["Xpla", "uxpla"],
53
+ ["Celestia", "utia"],
54
+ ["Dymension", "adym"],
55
+ ["Stargaze", "ustars"],
56
+ ["Neutron", "untrn"],
57
+ ],
58
+ ],
59
+ [
60
+ "Testnet",
61
+ [
62
+ ["Cosmoshub", "uatom"],
63
+ ["Evmos", "atevmos"],
64
+ ["Injective", "inj"],
65
+ ["Kujira", "kuji"],
66
+ ["Osmosis", "uosmo"],
67
+ ["Sei", "usei"],
68
+ ["Terra", "luna"],
69
+ ["Terra2", "uluna"],
70
+ ["Wormchain", "uworm"],
71
+ ["Xpla", "uxpla"],
72
+ ],
73
+ ],
74
+ [
75
+ "Devnet",
76
+ [
77
+ ["Cosmoshub", "uatom"],
78
+ ["Evmos", "atevmos"],
79
+ ["Injective", "inj"],
80
+ ["Kujira", "kuji"],
81
+ ["Osmosis", "uosmo"],
82
+ ["Sei", "usei"],
83
+ ["Terra", "luna"],
84
+ ["Terra2", "uluna"],
85
+ ["Wormchain", "uworm"],
86
+ ["Xpla", "uxpla"],
87
+ ],
88
+ ],
89
+ ];
90
+ exports.chainToNativeDenoms = (0, sdk_connect_1.constMap)(cosmwasmNativeDenom);
91
+ exports.nativeDenomToChain = (0, sdk_connect_1.constMap)(cosmwasmNativeDenom, [[0, 2], [1]]);
92
+ // For each chain, add the channel id for each other chain
93
+ const gatewayConnections = [
94
+ [
95
+ "Mainnet",
96
+ [
97
+ [
98
+ "Wormchain",
99
+ {
100
+ Osmosis: "channel-3",
101
+ Evmos: "channel-5",
102
+ Kujira: "channel-9",
103
+ Stargaze: "channel-12",
104
+ Injective: "channel-13",
105
+ Dymension: "channel-15",
106
+ },
107
+ ],
108
+ ["Osmosis", { Wormchain: "channel-2186" }],
109
+ ["Evmos", { Wormchain: "channel-94" }],
110
+ ["Kujira", { Wormchain: "channel-113" }],
111
+ ["Injective", { Wormchain: "channel-183" }],
112
+ ["Dymension", { Wormchain: "channel-36" }],
113
+ ["Stargaze", { Wormchain: "channel-278" }],
114
+ ],
115
+ ],
116
+ [
117
+ "Testnet",
118
+ [
119
+ ["Wormchain", { Cosmoshub: "channel-5", Osmosis: "channel-9" }],
120
+ ["Cosmoshub", { Wormchain: "channel-3086" }],
121
+ ["Osmosis", { Wormchain: "channel-3906" }],
122
+ ],
123
+ ],
124
+ [
125
+ "Devnet",
126
+ [
127
+ ["Wormchain", { Cosmoshub: "channel-1", Osmosis: "channel-2" }],
128
+ ["Cosmoshub", { Wormchain: "channel-1" }],
129
+ ["Osmosis", { Wormchain: "channel-1" }],
130
+ ],
131
+ ],
132
+ ];
133
+ exports.networkChainToChannels = (0, sdk_connect_1.constMap)(gatewayConnections);
134
+ exports.evmLikeChains = ["Evmos", "Injective"];
135
+ const cosmwasmNetworkChainRestUrl = [
136
+ [
137
+ "Mainnet",
138
+ [
139
+ ["Injective", "https://lcd.injective.network"],
140
+ ["Evmos", "https://rest.bd.evmos.org:1317"],
141
+ ],
142
+ ],
143
+ [
144
+ "Testnet",
145
+ [
146
+ ["Injective", "https://k8s.testnet.lcd.injective.network"],
147
+ ["Evmos", "https://rest.bd.evmos.dev:1317"],
148
+ ],
149
+ ],
150
+ [
151
+ "Devnet",
152
+ [
153
+ ["Injective", "https://localhost:1234"],
154
+ ["Evmos", "https://localhost:1233"],
155
+ ],
156
+ ],
157
+ ];
158
+ exports.cosmwasmNetworkChainToRestUrls = (0, sdk_connect_1.constMap)(cosmwasmNetworkChainRestUrl);
159
+ const avgPrices = [
160
+ [
161
+ "Mainnet",
162
+ [
163
+ ["Terra", "28.325"],
164
+ ["Terra2", "0.015"],
165
+ ["Osmosis", "0.025"],
166
+ ["Sei", "0.02"],
167
+ ["Cosmoshub", "0.025"],
168
+ ["Kujira", "0.0051"],
169
+ ["Neutron", "0.075"],
170
+ ["Celestia", "0.02"],
171
+ ["Stargaze", "1.1"],
172
+ ["Injective", "700000000"],
173
+ ["Xpla", "1147500000000"],
174
+ ["Evmos", "25000000000"],
175
+ ["Dymension", "5000000000"],
176
+ ],
177
+ ],
178
+ ];
179
+ exports.averageGasPrices = (0, sdk_connect_1.constMap)(avgPrices);
180
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import { Chain, GatewayTransferMsg, GatewayTransferWithPayloadMsg, Network, TokenId } from "@wormhole-foundation/sdk-connect";
2
+ import { CosmwasmAddress } from "./address";
3
+ import { CosmwasmChain } from "./chain";
4
+ import { CosmwasmChains } from "./types";
5
+ export declare class Gateway<N extends Network> extends CosmwasmChain<N, "Wormchain"> {
6
+ static chain: "Wormchain";
7
+ static gatewayAddress: (network: Network) => string;
8
+ static tokenBridgeAddress: (network: Network) => string;
9
+ static coreAddress: (network: Network) => string;
10
+ getWrappedAsset(token: TokenId): Promise<CosmwasmAddress>;
11
+ static getGatewaySourceChannel<N extends Network, C extends CosmwasmChains>(network: N, chain: C): string;
12
+ static deriveIbcDenom<N extends Network, C extends CosmwasmChains>(network: N, chain: C, denom: string): CosmwasmAddress;
13
+ static factoryToCw20(address: CosmwasmAddress): CosmwasmAddress;
14
+ static cw20ToFactory(network: Network, address: CosmwasmAddress): CosmwasmAddress;
15
+ static makeTransferMsg(chain: Chain, recipient: CosmwasmAddress, fee?: bigint, payload?: string, nonce?: number): GatewayTransferWithPayloadMsg | GatewayTransferMsg;
16
+ }
17
+ //# sourceMappingURL=gateway.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gateway.d.ts","sourceRoot":"","sources":["../../src/gateway.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,EACL,kBAAkB,EAClB,6BAA6B,EAC7B,OAAO,EACP,OAAO,EAIR,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAGxC,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEzC,qBAAa,OAAO,CAAC,CAAC,SAAS,OAAO,CAAE,SAAQ,aAAa,CAAC,CAAC,EAAE,WAAW,CAAC;IAC3E,MAAM,CAAC,KAAK,EAAE,WAAW,CAAe;IAExC,MAAM,CAAC,cAAc,YAAa,OAAO,KAAG,MAAM,CACU;IAC5D,MAAM,CAAC,kBAAkB,YAAa,OAAO,KAAG,MAAM,CACU;IAChE,MAAM,CAAC,WAAW,YAAa,OAAO,KAAG,MAAM,CACgB;IAGzD,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC;IAa/D,MAAM,CAAC,uBAAuB,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,cAAc,EACxE,OAAO,EAAE,CAAC,EACV,KAAK,EAAE,CAAC,GACP,MAAM;IAST,MAAM,CAAC,cAAc,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,cAAc,EAC/D,OAAO,EAAE,CAAC,EACV,KAAK,EAAE,CAAC,EACR,KAAK,EAAE,MAAM,GACZ,eAAe;IAWlB,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,eAAe;IAI7C,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe;IAO/D,MAAM,CAAC,eAAe,CACpB,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,eAAe,EAC1B,GAAG,GAAE,MAAW,EAChB,OAAO,CAAC,EAAE,MAAM,EAChB,KAAK,CAAC,EAAE,MAAM,GACb,6BAA6B,GAAG,kBAAkB;CAmBtD"}
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Gateway = void 0;
4
+ const encoding_1 = require("@cosmjs/encoding");
5
+ const sdk_connect_1 = require("@wormhole-foundation/sdk-connect");
6
+ const address_1 = require("./address");
7
+ const chain_1 = require("./chain");
8
+ const constants_1 = require("./constants");
9
+ const platform_1 = require("./platform");
10
+ class Gateway extends chain_1.CosmwasmChain {
11
+ static chain = "Wormchain";
12
+ static gatewayAddress = (network) => sdk_connect_1.CONFIG[network].chains[Gateway.chain].contracts.gateway;
13
+ static tokenBridgeAddress = (network) => sdk_connect_1.CONFIG[network].chains[Gateway.chain].contracts.tokenBridge;
14
+ static coreAddress = (network) => sdk_connect_1.CONFIG[network].chains[Gateway.chain].contracts.coreBridge;
15
+ // Get the wrapped version of an asset created on wormchain
16
+ async getWrappedAsset(token) {
17
+ const tb = await this.getTokenBridge();
18
+ const wrappedAsset = new address_1.CosmwasmAddress(await tb.getWrappedAsset(token));
19
+ // Encode the original address to base58 and add it
20
+ // to the factory address for cw20 style factory token address
21
+ const encodedAddress = sdk_connect_1.encoding.b58.encode(wrappedAsset.toUniversalAddress().toUint8Array());
22
+ const factoryAddress = `factory/${Gateway.gatewayAddress(this.network)}/${encodedAddress}`;
23
+ return new address_1.CosmwasmAddress(factoryAddress);
24
+ }
25
+ // Gets the the source channel for outgoing transfers from wormchain
26
+ static getGatewaySourceChannel(network, chain) {
27
+ const channels = platform_1.CosmwasmPlatform.getIbcChannels(network, chain);
28
+ if (!channels)
29
+ throw new Error("No channels configured for chain " + chain);
30
+ if (!(Gateway.chain in channels))
31
+ throw new Error("No channel configured for chain " + chain);
32
+ return channels[Gateway.chain];
33
+ }
34
+ // derive the ics20 token denom from the
35
+ // wrapped denom and destination channel
36
+ static deriveIbcDenom(network, chain, denom) {
37
+ // Otherwise compute the ibc address from the channel and denom
38
+ const channel = this.getGatewaySourceChannel(network, chain);
39
+ const hashData = sdk_connect_1.encoding.bytes.encode(`${constants_1.IBC_TRANSFER_PORT}/${channel}/${denom}`);
40
+ const hash = sdk_connect_1.encoding.hex.encode((0, sdk_connect_1.sha256)(hashData));
41
+ return new address_1.CosmwasmAddress(`ibc/${hash.toUpperCase()}`);
42
+ }
43
+ // Util to convert a factory address to a CW20 address
44
+ // expects the denom to be base58 encoded
45
+ // e.g. factoryToCw20("wormhole", "8sYgCzLRJC3J7qPn2bNbx6PiGcarhyx8rBhVaNnfvHCA")
46
+ static factoryToCw20(address) {
47
+ if (address.denomType !== "factory")
48
+ throw new Error("Invalid address type");
49
+ return new address_1.CosmwasmAddress((0, encoding_1.toBech32)(address.domain, sdk_connect_1.encoding.b58.decode(address.denom)));
50
+ }
51
+ static cw20ToFactory(network, address) {
52
+ // Encode the original address to base58 and add it
53
+ // to the factory address for cw20 style factory token address
54
+ const encodedAddress = sdk_connect_1.encoding.b58.encode(address.toUniversalAddress().toUint8Array());
55
+ return new address_1.CosmwasmAddress(`factory/${Gateway.gatewayAddress(network)}/${encodedAddress}`);
56
+ }
57
+ static makeTransferMsg(chain, recipient, fee = 0n, payload, nonce) {
58
+ // Address of recipient is b64 encoded Cosmos bech32 address
59
+ const address = sdk_connect_1.encoding.b64.encode(recipient.toUint8Array());
60
+ const common = {
61
+ chain: (0, sdk_connect_1.toChainId)(chain),
62
+ recipient: address,
63
+ fee: fee.toString(),
64
+ nonce: nonce ?? Math.round(Math.random() * 100000),
65
+ };
66
+ const msg = payload
67
+ ? {
68
+ gateway_transfer_with_payload: { ...common, payload: payload },
69
+ }
70
+ : { gateway_transfer: { ...common } };
71
+ return msg;
72
+ }
73
+ }
74
+ exports.Gateway = Gateway;
75
+ //# sourceMappingURL=gateway.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gateway.js","sourceRoot":"","sources":["../../src/gateway.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export * from "./constants";
2
+ export * from "./address";
3
+ export * from "./unsignedTransaction";
4
+ export * from "./chain";
5
+ export * from "./types";
6
+ export * from "./platform";
7
+ export * from "./gateway";
8
+ export * from "./signer";
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,uBAAuB,CAAC;AACtC,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./constants"), exports);
18
+ __exportStar(require("./address"), exports);
19
+ __exportStar(require("./unsignedTransaction"), exports);
20
+ __exportStar(require("./chain"), exports);
21
+ __exportStar(require("./types"), exports);
22
+ __exportStar(require("./platform"), exports);
23
+ __exportStar(require("./gateway"), exports);
24
+ __exportStar(require("./signer"), exports);
25
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,4CAA0B;AAC1B,wDAAsC;AACtC,0CAAwB;AACxB,0CAAwB;AACxB,6CAA2B;AAC3B,4CAA0B;AAC1B,2CAAyB"}
@@ -0,0 +1,33 @@
1
+ import { CosmWasmClient } from "@cosmjs/cosmwasm-stargate";
2
+ import { BankExtension, IbcExtension, QueryClient } from "@cosmjs/stargate";
3
+ import { Chain, ChainsConfig, Network, PlatformContext, SignedTx, StaticPlatformMethods, TxHash } from "@wormhole-foundation/sdk-connect";
4
+ import { CosmwasmChain } from "./chain";
5
+ import { IbcChannels } from "./constants";
6
+ import { CosmwasmChains, CosmwasmPlatformType } from "./types";
7
+ import { Balances, TokenId } from "@wormhole-foundation/sdk-connect";
8
+ import { AnyCosmwasmAddress } from "./types";
9
+ /**
10
+ * @category Cosmwasm
11
+ */
12
+ export declare class CosmwasmPlatform<N extends Network> extends PlatformContext<N, CosmwasmPlatformType> implements StaticPlatformMethods<CosmwasmPlatformType, typeof CosmwasmPlatform> {
13
+ static _platform: "Cosmwasm";
14
+ constructor(network: N, _config?: ChainsConfig<N, CosmwasmPlatformType>);
15
+ getRpc<C extends CosmwasmChains>(chain: C): Promise<CosmWasmClient>;
16
+ getChain<C extends CosmwasmChains>(chain: C, rpc?: CosmWasmClient): CosmwasmChain<N, C>;
17
+ static getQueryClient: (rpc: CosmWasmClient) => QueryClient & BankExtension & IbcExtension;
18
+ static getIbcChannels<N extends Network, C extends CosmwasmChains>(network: N, chain: C): IbcChannels | null;
19
+ static nativeTokenId<C extends CosmwasmChains>(network: Network, chain: C): TokenId<C>;
20
+ static isSupportedChain(chain: Chain): boolean;
21
+ static isNativeTokenId<N extends Network, C extends CosmwasmChains>(network: N, chain: C, tokenId: TokenId): boolean;
22
+ static getDecimals<C extends CosmwasmChains>(chain: C, rpc: CosmWasmClient, token: AnyCosmwasmAddress): Promise<number>;
23
+ static getBalance<C extends CosmwasmChains>(chain: C, rpc: CosmWasmClient, walletAddress: string, token: AnyCosmwasmAddress): Promise<bigint | null>;
24
+ static getBalances<C extends CosmwasmChains>(chain: C, rpc: CosmWasmClient, walletAddress: string, tokens: AnyCosmwasmAddress[]): Promise<Balances>;
25
+ static getNativeDenom<N extends Network, C extends CosmwasmChains>(network: N, chain: C): string;
26
+ static sendWait(chain: Chain, rpc: CosmWasmClient, stxns: SignedTx[]): Promise<TxHash[]>;
27
+ static getLatestBlock(rpc: CosmWasmClient): Promise<number>;
28
+ static getLatestFinalizedBlock(rpc: CosmWasmClient): Promise<number>;
29
+ static chainFromChainId(chainMoniker: string): [Network, CosmwasmChains];
30
+ static chainFromRpc(rpc: CosmWasmClient): Promise<[Network, CosmwasmChains]>;
31
+ static getCounterpartyChannel(sourceChannel: string, rpc: CosmWasmClient): Promise<string | null>;
32
+ }
33
+ //# sourceMappingURL=platform.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../../src/platform.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,131 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CosmwasmPlatform = void 0;
4
+ const cosmwasm_stargate_1 = require("@cosmjs/cosmwasm-stargate");
5
+ const stargate_1 = require("@cosmjs/stargate");
6
+ const sdk_connect_1 = require("@wormhole-foundation/sdk-connect");
7
+ const chain_1 = require("./chain");
8
+ const constants_1 = require("./constants");
9
+ const types_1 = require("./types");
10
+ const sdk_connect_2 = require("@wormhole-foundation/sdk-connect");
11
+ const address_1 = require("./address");
12
+ const constants_2 = require("./constants");
13
+ const gateway_1 = require("./gateway");
14
+ /**
15
+ * @category Cosmwasm
16
+ */
17
+ class CosmwasmPlatform extends sdk_connect_1.PlatformContext {
18
+ static _platform = types_1._platform;
19
+ constructor(network, _config) {
20
+ super(network, _config ?? (0, sdk_connect_1.networkPlatformConfigs)(network, CosmwasmPlatform._platform));
21
+ }
22
+ async getRpc(chain) {
23
+ if (chain in this.config && this.config[chain].rpc)
24
+ return await cosmwasm_stargate_1.CosmWasmClient.connect(this.config[chain].rpc);
25
+ throw new Error("No configuration available for chain: " + chain);
26
+ }
27
+ getChain(chain, rpc) {
28
+ if (!(chain in this.config))
29
+ throw new Error("No configuration available for chain: " + chain);
30
+ return new chain_1.CosmwasmChain(chain, this, rpc);
31
+ }
32
+ static getQueryClient = (rpc) => {
33
+ return stargate_1.QueryClient.withExtensions(rpc["cometClient"], stargate_1.setupBankExtension, stargate_1.setupIbcExtension);
34
+ };
35
+ // cached channels from config if available
36
+ static getIbcChannels(network, chain) {
37
+ return constants_1.networkChainToChannels.has(network, chain)
38
+ ? constants_1.networkChainToChannels.get(network, chain)
39
+ : null;
40
+ }
41
+ static nativeTokenId(network, chain) {
42
+ if (!this.isSupportedChain(chain))
43
+ throw new Error(`invalid chain for CosmWasm: ${chain}`);
44
+ return sdk_connect_1.Wormhole.chainAddress(chain, this.getNativeDenom(network, chain));
45
+ }
46
+ static isSupportedChain(chain) {
47
+ const platform = (0, sdk_connect_2.chainToPlatform)(chain);
48
+ return platform === CosmwasmPlatform._platform;
49
+ }
50
+ static isNativeTokenId(network, chain, tokenId) {
51
+ if (!this.isSupportedChain(chain))
52
+ return false;
53
+ if (tokenId.chain !== chain)
54
+ return false;
55
+ const native = this.nativeTokenId(network, chain);
56
+ return native == tokenId;
57
+ }
58
+ static async getDecimals(chain, rpc, token) {
59
+ if ((0, sdk_connect_1.isNative)(token))
60
+ return sdk_connect_1.decimals.nativeDecimals(CosmwasmPlatform._platform);
61
+ let addrStr = new address_1.CosmwasmAddress(token).toString();
62
+ if (addrStr.startsWith("factory")) {
63
+ addrStr = gateway_1.Gateway.factoryToCw20(new address_1.CosmwasmAddress(addrStr)).toString();
64
+ }
65
+ const { decimals: numDecimals } = await rpc.queryContractSmart(addrStr, {
66
+ token_info: {},
67
+ });
68
+ return numDecimals;
69
+ }
70
+ static async getBalance(chain, rpc, walletAddress, token) {
71
+ if ((0, sdk_connect_1.isNative)(token)) {
72
+ const [network, _] = await CosmwasmPlatform.chainFromRpc(rpc);
73
+ const { amount } = await rpc.getBalance(walletAddress, this.getNativeDenom(network, chain));
74
+ return BigInt(amount);
75
+ }
76
+ const addrStr = new address_1.CosmwasmAddress(token).toString();
77
+ const { amount } = await rpc.getBalance(walletAddress, addrStr);
78
+ return BigInt(amount);
79
+ }
80
+ static async getBalances(chain, rpc, walletAddress, tokens) {
81
+ const client = CosmwasmPlatform.getQueryClient(rpc);
82
+ const allBalances = await client.bank.allBalances(walletAddress);
83
+ const [network, _] = await CosmwasmPlatform.chainFromRpc(rpc);
84
+ const balancesArr = tokens.map((token) => {
85
+ const address = (0, sdk_connect_1.isNative)(token)
86
+ ? this.getNativeDenom(network, chain)
87
+ : new address_1.CosmwasmAddress(token).toString();
88
+ const balance = allBalances.find((balance) => balance.denom === address);
89
+ const balanceBigInt = balance ? BigInt(balance.amount) : null;
90
+ return { [address]: balanceBigInt };
91
+ });
92
+ return balancesArr.reduce((obj, item) => Object.assign(obj, item), {});
93
+ }
94
+ static getNativeDenom(network, chain) {
95
+ return constants_1.chainToNativeDenoms.get(network, chain);
96
+ }
97
+ static async sendWait(chain, rpc, stxns) {
98
+ const txhashes = [];
99
+ for (const stxn of stxns) {
100
+ const result = await rpc.broadcastTx(stxn);
101
+ if (result.code !== 0)
102
+ throw new Error(`Error sending transaction (${result.transactionHash}): ${result.rawLog}`);
103
+ txhashes.push(result.transactionHash);
104
+ }
105
+ return txhashes;
106
+ }
107
+ static async getLatestBlock(rpc) {
108
+ return await rpc.getHeight();
109
+ }
110
+ static async getLatestFinalizedBlock(rpc) {
111
+ throw new Error("not implemented");
112
+ }
113
+ static chainFromChainId(chainMoniker) {
114
+ const networkChainPair = sdk_connect_1.nativeChainIds.platformNativeChainIdToNetworkChain(CosmwasmPlatform._platform, chainMoniker);
115
+ if (networkChainPair === undefined)
116
+ throw new Error(`Unknown Cosmwasm chainId ${chainMoniker}`);
117
+ const [network, chain] = networkChainPair;
118
+ return [network, chain];
119
+ }
120
+ static async chainFromRpc(rpc) {
121
+ const chainId = await rpc.getChainId();
122
+ return this.chainFromChainId(chainId);
123
+ }
124
+ static async getCounterpartyChannel(sourceChannel, rpc) {
125
+ const queryClient = CosmwasmPlatform.getQueryClient(rpc);
126
+ const conn = await queryClient.ibc.channel.channel(constants_2.IBC_TRANSFER_PORT, sourceChannel);
127
+ return conn.channel?.counterparty?.channelId ?? null;
128
+ }
129
+ }
130
+ exports.CosmwasmPlatform = CosmwasmPlatform;
131
+ //# sourceMappingURL=platform.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform.js","sourceRoot":"","sources":["../../src/platform.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ import { CosmWasmClient, SigningCosmWasmClient } from "@cosmjs/cosmwasm-stargate";
2
+ import { Network, SignOnlySigner, SignedTx, Signer, UnsignedTransaction } from "@wormhole-foundation/sdk-connect";
3
+ import { CosmwasmEvmChain } from "./constants";
4
+ import { CosmwasmChains } from "./types";
5
+ export declare function getCosmwasmSigner(rpc: CosmWasmClient, mnemonic: string): Promise<Signer>;
6
+ export declare class CosmwasmSigner<N extends Network, C extends CosmwasmChains> implements SignOnlySigner<N, C> {
7
+ private _chain;
8
+ private _signer;
9
+ private _account;
10
+ constructor(_chain: C, _signer: SigningCosmWasmClient, _account: string);
11
+ chain(): C;
12
+ address(): string;
13
+ sign(tx: UnsignedTransaction[]): Promise<SignedTx[]>;
14
+ }
15
+ export declare class CosmwasmEvmSigner<N extends Network, C extends CosmwasmEvmChain> implements SignOnlySigner<N, C> {
16
+ private _chain;
17
+ private _chainId;
18
+ private key;
19
+ private prefix;
20
+ private _rpc;
21
+ constructor(_chain: C, _network: Network, _mnemonic: string);
22
+ chain(): C;
23
+ address(): string;
24
+ sign(txns: UnsignedTransaction[]): Promise<SignedTx[]>;
25
+ getSignerData(): Promise<{
26
+ address: string;
27
+ sequence: number;
28
+ accountNumber: number;
29
+ }>;
30
+ }
31
+ //# sourceMappingURL=signer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../src/signer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AASlF,OAAO,EACL,OAAO,EAEP,cAAc,EACd,QAAQ,EACR,MAAM,EACN,mBAAmB,EAIpB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EACL,gBAAgB,EAIjB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAGzC,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAoB9F;AAED,qBAAa,cAAc,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,cAAc,CACrE,YAAW,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC;IAG7B,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,QAAQ;gBAFR,MAAM,EAAE,CAAC,EACT,OAAO,EAAE,qBAAqB,EAC9B,QAAQ,EAAE,MAAM;IAG1B,KAAK,IAAI,CAAC;IAIV,OAAO,IAAI,MAAM;IAIX,IAAI,CAAC,EAAE,EAAE,mBAAmB,EAAE,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;CAqB3D;AAED,qBAAa,iBAAiB,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,gBAAgB,CAC1E,YAAW,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC;IAO7B,OAAO,CAAC,MAAM;IALhB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,GAAG,CAAa;IACxB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,IAAI,CAAmB;gBAErB,MAAM,EAAE,CAAC,EACjB,QAAQ,EAAE,OAAO,EACjB,SAAS,EAAE,MAAM;IAenB,KAAK;IAIL,OAAO;IAID,IAAI,CAAC,IAAI,EAAE,mBAAmB,EAAE,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAqCtD,aAAa,IAAI,OAAO,CAAC;QAC7B,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;CAOH"}