@wormhole-foundation/sdk-aptos 1.3.3 → 1.4.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/dist/cjs/platform.d.ts +10 -10
- package/dist/cjs/platform.d.ts.map +1 -1
- package/dist/cjs/platform.js +22 -18
- package/dist/cjs/platform.js.map +1 -1
- package/dist/cjs/signer.d.ts +2 -3
- package/dist/cjs/signer.d.ts.map +1 -1
- package/dist/cjs/signer.js +19 -16
- package/dist/cjs/signer.js.map +1 -1
- package/dist/cjs/unsignedTransaction.d.ts +3 -3
- package/dist/cjs/unsignedTransaction.d.ts.map +1 -1
- package/dist/cjs/unsignedTransaction.js.map +1 -1
- package/dist/esm/platform.d.ts +10 -10
- package/dist/esm/platform.d.ts.map +1 -1
- package/dist/esm/platform.js +22 -18
- package/dist/esm/platform.js.map +1 -1
- package/dist/esm/signer.d.ts +2 -3
- package/dist/esm/signer.d.ts.map +1 -1
- package/dist/esm/signer.js +19 -16
- package/dist/esm/signer.js.map +1 -1
- package/dist/esm/unsignedTransaction.d.ts +3 -3
- package/dist/esm/unsignedTransaction.d.ts.map +1 -1
- package/dist/esm/unsignedTransaction.js.map +1 -1
- package/package.json +3 -3
package/dist/cjs/platform.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Balances, Chain, ChainsConfig, Network, SignedTx, StaticPlatformMethods, TokenId, TxHash } from "@wormhole-foundation/sdk-connect";
|
|
2
2
|
import { PlatformContext } from "@wormhole-foundation/sdk-connect";
|
|
3
|
-
import {
|
|
3
|
+
import { Aptos } from "@aptos-labs/ts-sdk";
|
|
4
4
|
import { AptosChain } from "./chain.js";
|
|
5
5
|
import type { AptosChains, AptosPlatformType } from "./types.js";
|
|
6
6
|
import type { AnyAptosAddress } from "./types.js";
|
|
@@ -10,18 +10,18 @@ import type { AnyAptosAddress } from "./types.js";
|
|
|
10
10
|
export declare class AptosPlatform<N extends Network> extends PlatformContext<N, AptosPlatformType> implements StaticPlatformMethods<AptosPlatformType, typeof AptosPlatform> {
|
|
11
11
|
static _platform: "Aptos";
|
|
12
12
|
constructor(network: N, config?: ChainsConfig<N, AptosPlatformType>);
|
|
13
|
-
getRpc<C extends AptosChains>(chain: C):
|
|
14
|
-
getChain<C extends AptosChains>(chain: C, rpc?:
|
|
13
|
+
getRpc<C extends AptosChains>(chain: C): Aptos;
|
|
14
|
+
getChain<C extends AptosChains>(chain: C, rpc?: Aptos): AptosChain<N, C>;
|
|
15
15
|
static nativeTokenId<N extends Network, C extends AptosChains>(network: N, chain: C): TokenId<C>;
|
|
16
16
|
static isNativeTokenId<N extends Network, C extends AptosChains>(network: N, chain: C, tokenId: TokenId): boolean;
|
|
17
17
|
static isSupportedChain(chain: Chain): boolean;
|
|
18
|
-
static getDecimals(chain: Chain, rpc:
|
|
19
|
-
static getBalance(chain: Chain, rpc:
|
|
20
|
-
static getBalances(chain: Chain, rpc:
|
|
21
|
-
static sendWait(chain: Chain, rpc:
|
|
22
|
-
static getLatestBlock(rpc:
|
|
23
|
-
static getLatestFinalizedBlock(rpc:
|
|
18
|
+
static getDecimals(chain: Chain, rpc: Aptos, token: AnyAptosAddress): Promise<number>;
|
|
19
|
+
static getBalance(chain: Chain, rpc: Aptos, walletAddress: string, token: AnyAptosAddress): Promise<bigint | null>;
|
|
20
|
+
static getBalances(chain: Chain, rpc: Aptos, walletAddress: string, tokens: AnyAptosAddress[]): Promise<Balances>;
|
|
21
|
+
static sendWait(chain: Chain, rpc: Aptos, stxns: SignedTx[]): Promise<TxHash[]>;
|
|
22
|
+
static getLatestBlock(rpc: Aptos): Promise<number>;
|
|
23
|
+
static getLatestFinalizedBlock(rpc: Aptos): Promise<number>;
|
|
24
24
|
static chainFromChainId(chainId: string | bigint): [Network, AptosChains];
|
|
25
|
-
static chainFromRpc(rpc:
|
|
25
|
+
static chainFromRpc(rpc: Aptos): Promise<[Network, AptosChains]>;
|
|
26
26
|
}
|
|
27
27
|
//# sourceMappingURL=platform.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../../src/platform.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,QAAQ,EACR,KAAK,EACL,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,qBAAqB,EACrB,OAAO,EACP,MAAM,EACP,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,eAAe,EAOhB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../../src/platform.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,QAAQ,EACR,KAAK,EACL,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,qBAAqB,EACrB,OAAO,EACP,MAAM,EACP,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,eAAe,EAOhB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAsD,MAAM,oBAAoB,CAAC;AAC/F,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAKjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD;;GAEG;AACH,qBAAa,aAAa,CAAC,CAAC,SAAS,OAAO,CAC1C,SAAQ,eAAe,CAAC,CAAC,EAAE,iBAAiB,CAC5C,YAAW,qBAAqB,CAAC,iBAAiB,EAAE,OAAO,aAAa,CAAC;IAEzE,MAAM,CAAC,SAAS,UAAa;gBAEjB,OAAO,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,YAAY,CAAC,CAAC,EAAE,iBAAiB,CAAC;IAInE,MAAM,CAAC,CAAC,SAAS,WAAW,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK;IAS9C,QAAQ,CAAC,CAAC,SAAS,WAAW,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,KAAK,GAAG,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC;IAKxE,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,WAAW,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAKhG,MAAM,CAAC,eAAe,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,WAAW,EAC7D,OAAO,EAAE,CAAC,EACV,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,OAAO,GACf,OAAO;IAOV,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO;WAKjC,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC;WAY9E,UAAU,CACrB,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,KAAK,EACV,aAAa,EAAE,MAAM,EACrB,KAAK,EAAE,eAAe,GACrB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;WAgBZ,WAAW,CACtB,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,KAAK,EACV,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,eAAe,EAAE,GACxB,OAAO,CAAC,QAAQ,CAAC;WAWP,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;WAYxE,cAAc,CAAC,GAAG,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;WAK3C,uBAAuB,CAAC,GAAG,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;IAKjE,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC;WAa5D,YAAY,CAAC,GAAG,EAAE,KAAK,GAAG,OAAO,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;CAIvE"}
|
package/dist/cjs/platform.js
CHANGED
|
@@ -2,10 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.AptosPlatform = void 0;
|
|
4
4
|
const sdk_connect_1 = require("@wormhole-foundation/sdk-connect");
|
|
5
|
-
const
|
|
5
|
+
const ts_sdk_1 = require("@aptos-labs/ts-sdk");
|
|
6
6
|
const chain_js_1 = require("./chain.js");
|
|
7
7
|
const types_js_1 = require("./types.js");
|
|
8
|
-
const aptos_2 = require("aptos");
|
|
9
8
|
const address_js_1 = require("./address.js");
|
|
10
9
|
const constants_js_1 = require("./constants.js");
|
|
11
10
|
/**
|
|
@@ -17,8 +16,11 @@ class AptosPlatform extends sdk_connect_1.PlatformContext {
|
|
|
17
16
|
super(network, config ?? (0, sdk_connect_1.networkPlatformConfigs)(network, AptosPlatform._platform));
|
|
18
17
|
}
|
|
19
18
|
getRpc(chain) {
|
|
20
|
-
if (chain in this.config)
|
|
21
|
-
|
|
19
|
+
if (chain in this.config) {
|
|
20
|
+
const network = this.network === "Mainnet" ? ts_sdk_1.Network.MAINNET : ts_sdk_1.Network.TESTNET;
|
|
21
|
+
const config = new ts_sdk_1.AptosConfig({ fullnode: this.config[chain].rpc, network });
|
|
22
|
+
return new ts_sdk_1.Aptos(config);
|
|
23
|
+
}
|
|
22
24
|
throw new Error("No configuration available for chain: " + chain);
|
|
23
25
|
}
|
|
24
26
|
getChain(chain, rpc) {
|
|
@@ -44,24 +46,26 @@ class AptosPlatform extends sdk_connect_1.PlatformContext {
|
|
|
44
46
|
return platform === AptosPlatform._platform;
|
|
45
47
|
}
|
|
46
48
|
static async getDecimals(chain, rpc, token) {
|
|
47
|
-
if ((0, sdk_connect_1.isNative)(token))
|
|
49
|
+
if ((0, sdk_connect_1.isNative)(token) || token === constants_js_1.APTOS_COIN)
|
|
48
50
|
return sdk_connect_1.decimals.nativeDecimals(AptosPlatform._platform);
|
|
49
51
|
const tokenAddr = token.toString();
|
|
50
|
-
const
|
|
51
|
-
|
|
52
|
-
|
|
52
|
+
const resource = await rpc.getAccountResource({
|
|
53
|
+
accountAddress: tokenAddr.split(constants_js_1.APTOS_SEPARATOR)[0],
|
|
54
|
+
resourceType: `0x1::coin::CoinInfo<${tokenAddr}>`,
|
|
55
|
+
});
|
|
56
|
+
return resource.decimals;
|
|
53
57
|
}
|
|
54
58
|
static async getBalance(chain, rpc, walletAddress, token) {
|
|
55
59
|
const tokenAddress = (0, sdk_connect_1.isNative)(token) ? constants_js_1.APTOS_COIN : token.toString();
|
|
56
|
-
const cc = new aptos_2.CoinClient(rpc);
|
|
57
60
|
try {
|
|
58
|
-
const balance = await
|
|
61
|
+
const balance = await rpc.getAccountCoinAmount({
|
|
62
|
+
accountAddress: walletAddress,
|
|
59
63
|
coinType: tokenAddress,
|
|
60
64
|
});
|
|
61
|
-
return balance;
|
|
65
|
+
return BigInt(balance);
|
|
62
66
|
}
|
|
63
67
|
catch (e) {
|
|
64
|
-
if (e.
|
|
68
|
+
if (e.status === 404) {
|
|
65
69
|
return null;
|
|
66
70
|
}
|
|
67
71
|
throw e;
|
|
@@ -76,11 +80,12 @@ class AptosPlatform extends sdk_connect_1.PlatformContext {
|
|
|
76
80
|
return balancesArr.reduce((obj, item) => Object.assign(obj, item), {});
|
|
77
81
|
}
|
|
78
82
|
static async sendWait(chain, rpc, stxns) {
|
|
79
|
-
// TODO: concurrent
|
|
80
83
|
const txhashes = [];
|
|
81
84
|
for (const stxn of stxns) {
|
|
82
|
-
const pendingTx = await rpc.
|
|
83
|
-
const res = await rpc.
|
|
85
|
+
const pendingTx = await rpc.transaction.submit.simple(stxn.transaction);
|
|
86
|
+
const res = await rpc.waitForTransaction({
|
|
87
|
+
transactionHash: pendingTx.hash,
|
|
88
|
+
});
|
|
84
89
|
txhashes.push(res.hash);
|
|
85
90
|
}
|
|
86
91
|
return txhashes;
|
|
@@ -101,9 +106,8 @@ class AptosPlatform extends sdk_connect_1.PlatformContext {
|
|
|
101
106
|
return [network, chain];
|
|
102
107
|
}
|
|
103
108
|
static async chainFromRpc(rpc) {
|
|
104
|
-
const
|
|
105
|
-
|
|
106
|
-
return this.chainFromChainId(ci.toString());
|
|
109
|
+
const li = await rpc.getLedgerInfo();
|
|
110
|
+
return this.chainFromChainId(li.chain_id.toString());
|
|
107
111
|
}
|
|
108
112
|
}
|
|
109
113
|
exports.AptosPlatform = AptosPlatform;
|
package/dist/cjs/platform.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform.js","sourceRoot":"","sources":["../../src/platform.ts"],"names":[],"mappings":";;;AAUA,kEAQ0C;AAC1C
|
|
1
|
+
{"version":3,"file":"platform.js","sourceRoot":"","sources":["../../src/platform.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/signer.d.ts
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
import type { Network, RpcConnection, SignAndSendSigner, Signer, TxHash, UnsignedTransaction } from "@wormhole-foundation/sdk-connect";
|
|
2
|
-
import type { AptosClient } from "aptos";
|
|
3
|
-
import { AptosAccount } from "aptos";
|
|
4
2
|
import type { AptosChains } from "./types.js";
|
|
3
|
+
import { Account, Aptos } from "@aptos-labs/ts-sdk";
|
|
5
4
|
export declare function getAptosSigner(rpc: RpcConnection<"Aptos">, privateKey: string): Promise<Signer>;
|
|
6
5
|
export declare class AptosSigner<N extends Network, C extends AptosChains> implements SignAndSendSigner<N, C> {
|
|
7
6
|
private _chain;
|
|
8
7
|
private _account;
|
|
9
8
|
private _rpc;
|
|
10
9
|
private _debug?;
|
|
11
|
-
constructor(_chain: C, _account:
|
|
10
|
+
constructor(_chain: C, _account: Account, _rpc: Aptos, _debug?: boolean | undefined);
|
|
12
11
|
chain(): C;
|
|
13
12
|
address(): string;
|
|
14
13
|
signAndSend(tx: UnsignedTransaction[]): Promise<TxHash[]>;
|
package/dist/cjs/signer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../src/signer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,aAAa,EACb,iBAAiB,EACjB,MAAM,EACN,MAAM,EACN,mBAAmB,EACpB,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../src/signer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,aAAa,EACb,iBAAiB,EACjB,MAAM,EACN,MAAM,EACN,mBAAmB,EACpB,MAAM,kCAAkC,CAAC;AAG1C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EACL,OAAO,EAEP,KAAK,EAIN,MAAM,oBAAoB,CAAC;AAG5B,wBAAsB,cAAc,CAClC,GAAG,EAAE,aAAa,CAAC,OAAO,CAAC,EAC3B,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,CAAC,CAOjB;AAED,qBAAa,WAAW,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,WAAW,CAC/D,YAAW,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC;IAGhC,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,IAAI;IACZ,OAAO,CAAC,MAAM,CAAC;gBAHP,MAAM,EAAE,CAAC,EACT,QAAQ,EAAE,OAAO,EACjB,IAAI,EAAE,KAAK,EACX,MAAM,CAAC,qBAAS;IAG1B,KAAK;IAIL,OAAO,IAAI,MAAM;IAIX,WAAW,CAAC,EAAE,EAAE,mBAAmB,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;YAoBjD,YAAY;CAmB3B"}
|
package/dist/cjs/signer.js
CHANGED
|
@@ -2,12 +2,16 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.AptosSigner = exports.getAptosSigner = void 0;
|
|
4
4
|
const sdk_connect_1 = require("@wormhole-foundation/sdk-connect");
|
|
5
|
-
const aptos_1 = require("aptos");
|
|
6
5
|
const platform_js_1 = require("./platform.js");
|
|
6
|
+
const ts_sdk_1 = require("@aptos-labs/ts-sdk");
|
|
7
7
|
// returns a SignOnlySigner for the Aptos platform
|
|
8
8
|
async function getAptosSigner(rpc, privateKey) {
|
|
9
9
|
const [_, chain] = await platform_js_1.AptosPlatform.chainFromRpc(rpc);
|
|
10
|
-
|
|
10
|
+
const account = ts_sdk_1.Account.fromPrivateKey({
|
|
11
|
+
// TODO: support secp256k1
|
|
12
|
+
privateKey: new ts_sdk_1.Ed25519PrivateKey(sdk_connect_1.encoding.hex.decode(privateKey)),
|
|
13
|
+
});
|
|
14
|
+
return new AptosSigner(chain, account, rpc);
|
|
11
15
|
}
|
|
12
16
|
exports.getAptosSigner = getAptosSigner;
|
|
13
17
|
class AptosSigner {
|
|
@@ -25,7 +29,7 @@ class AptosSigner {
|
|
|
25
29
|
return this._chain;
|
|
26
30
|
}
|
|
27
31
|
address() {
|
|
28
|
-
return this._account.
|
|
32
|
+
return this._account.accountAddress.toString();
|
|
29
33
|
}
|
|
30
34
|
async signAndSend(tx) {
|
|
31
35
|
const txhashes = [];
|
|
@@ -33,14 +37,10 @@ class AptosSigner {
|
|
|
33
37
|
const { description, transaction } = txn;
|
|
34
38
|
if (this._debug)
|
|
35
39
|
console.log(`Signing: ${description} for ${this.address()}`);
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
max_gas_amount: "30000",
|
|
41
|
-
expiration_timestamp_secs: (BigInt(Date.now() + 8 * 60 * 60 * 1000) / 1000n).toString(),
|
|
42
|
-
};
|
|
43
|
-
const tx = await this._rpc.generateTransaction(this._account.address(), transaction, customOpts);
|
|
40
|
+
const tx = await this._rpc.transaction.build.simple({
|
|
41
|
+
sender: this._account.accountAddress,
|
|
42
|
+
data: transaction,
|
|
43
|
+
});
|
|
44
44
|
const { hash } = await this._simSignSend(tx);
|
|
45
45
|
txhashes.push(hash);
|
|
46
46
|
}
|
|
@@ -48,16 +48,19 @@ class AptosSigner {
|
|
|
48
48
|
}
|
|
49
49
|
async _simSignSend(rawTx) {
|
|
50
50
|
// simulate transaction
|
|
51
|
-
await this._rpc.
|
|
51
|
+
await this._rpc.transaction.simulate
|
|
52
|
+
.simple({
|
|
53
|
+
signerPublicKey: this._account.publicKey,
|
|
54
|
+
transaction: rawTx,
|
|
55
|
+
})
|
|
56
|
+
.then((sims) => sims.forEach((tx) => {
|
|
52
57
|
if (!tx.success) {
|
|
53
58
|
throw new Error(`Transaction failed: ${tx.vm_status}\n${JSON.stringify(tx, null, 2)}`);
|
|
54
59
|
}
|
|
55
60
|
}));
|
|
56
|
-
// sign & submit transaction
|
|
57
61
|
return this._rpc
|
|
58
|
-
.
|
|
59
|
-
.then((
|
|
60
|
-
.then((pendingTx) => this._rpc.waitForTransactionWithResult(pendingTx.hash));
|
|
62
|
+
.signAndSubmitTransaction({ signer: this._account, transaction: rawTx })
|
|
63
|
+
.then((pendingTx) => this._rpc.waitForTransaction({ transactionHash: pendingTx.hash }));
|
|
61
64
|
}
|
|
62
65
|
}
|
|
63
66
|
exports.AptosSigner = AptosSigner;
|
package/dist/cjs/signer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signer.js","sourceRoot":"","sources":["../../src/signer.ts"],"names":[],"mappings":";;;AAQA,kEAA4D;
|
|
1
|
+
{"version":3,"file":"signer.js","sourceRoot":"","sources":["../../src/signer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import type { Network, UnsignedTransaction } from "@wormhole-foundation/sdk-connect";
|
|
2
|
-
import type {
|
|
2
|
+
import type { InputGenerateTransactionPayloadData } from "@aptos-labs/ts-sdk";
|
|
3
3
|
import type { AptosChains } from "./types.js";
|
|
4
4
|
export declare class AptosUnsignedTransaction<N extends Network, C extends AptosChains> implements UnsignedTransaction<N, C> {
|
|
5
|
-
readonly transaction:
|
|
5
|
+
readonly transaction: InputGenerateTransactionPayloadData;
|
|
6
6
|
readonly network: N;
|
|
7
7
|
readonly chain: C;
|
|
8
8
|
readonly description: string;
|
|
9
9
|
readonly parallelizable: boolean;
|
|
10
|
-
constructor(transaction:
|
|
10
|
+
constructor(transaction: InputGenerateTransactionPayloadData, network: N, chain: C, description: string, parallelizable?: boolean);
|
|
11
11
|
}
|
|
12
12
|
//# sourceMappingURL=unsignedTransaction.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unsignedTransaction.d.ts","sourceRoot":"","sources":["../../src/unsignedTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACrF,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"unsignedTransaction.d.ts","sourceRoot":"","sources":["../../src/unsignedTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACrF,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,oBAAoB,CAAC;AAC9E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,qBAAa,wBAAwB,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,WAAW,CAC5E,YAAW,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC;IAGlC,QAAQ,CAAC,WAAW,EAAE,mCAAmC;IACzD,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,mCAAmC,EAChD,OAAO,EAAE,CAAC,EACV,KAAK,EAAE,CAAC,EACR,WAAW,EAAE,MAAM,EACnB,cAAc,GAAE,OAAe;CAE3C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unsignedTransaction.js","sourceRoot":"","sources":["../../src/unsignedTransaction.ts"],"names":[],"mappings":";;;AAIA,MAAa,wBAAwB;IAIxB;IACA;IACA;IACA;IACA;IALX,YACW,
|
|
1
|
+
{"version":3,"file":"unsignedTransaction.js","sourceRoot":"","sources":["../../src/unsignedTransaction.ts"],"names":[],"mappings":";;;AAIA,MAAa,wBAAwB;IAIxB;IACA;IACA;IACA;IACA;IALX,YACW,WAAgD,EAChD,OAAU,EACV,KAAQ,EACR,WAAmB,EACnB,iBAA0B,KAAK;QAJ/B,gBAAW,GAAX,WAAW,CAAqC;QAChD,YAAO,GAAP,OAAO,CAAG;QACV,UAAK,GAAL,KAAK,CAAG;QACR,gBAAW,GAAX,WAAW,CAAQ;QACnB,mBAAc,GAAd,cAAc,CAAiB;IACvC,CAAC;CACL;AAVD,4DAUC"}
|
package/dist/esm/platform.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Balances, Chain, ChainsConfig, Network, SignedTx, StaticPlatformMethods, TokenId, TxHash } from "@wormhole-foundation/sdk-connect";
|
|
2
2
|
import { PlatformContext } from "@wormhole-foundation/sdk-connect";
|
|
3
|
-
import {
|
|
3
|
+
import { Aptos } from "@aptos-labs/ts-sdk";
|
|
4
4
|
import { AptosChain } from "./chain.js";
|
|
5
5
|
import type { AptosChains, AptosPlatformType } from "./types.js";
|
|
6
6
|
import type { AnyAptosAddress } from "./types.js";
|
|
@@ -10,18 +10,18 @@ import type { AnyAptosAddress } from "./types.js";
|
|
|
10
10
|
export declare class AptosPlatform<N extends Network> extends PlatformContext<N, AptosPlatformType> implements StaticPlatformMethods<AptosPlatformType, typeof AptosPlatform> {
|
|
11
11
|
static _platform: "Aptos";
|
|
12
12
|
constructor(network: N, config?: ChainsConfig<N, AptosPlatformType>);
|
|
13
|
-
getRpc<C extends AptosChains>(chain: C):
|
|
14
|
-
getChain<C extends AptosChains>(chain: C, rpc?:
|
|
13
|
+
getRpc<C extends AptosChains>(chain: C): Aptos;
|
|
14
|
+
getChain<C extends AptosChains>(chain: C, rpc?: Aptos): AptosChain<N, C>;
|
|
15
15
|
static nativeTokenId<N extends Network, C extends AptosChains>(network: N, chain: C): TokenId<C>;
|
|
16
16
|
static isNativeTokenId<N extends Network, C extends AptosChains>(network: N, chain: C, tokenId: TokenId): boolean;
|
|
17
17
|
static isSupportedChain(chain: Chain): boolean;
|
|
18
|
-
static getDecimals(chain: Chain, rpc:
|
|
19
|
-
static getBalance(chain: Chain, rpc:
|
|
20
|
-
static getBalances(chain: Chain, rpc:
|
|
21
|
-
static sendWait(chain: Chain, rpc:
|
|
22
|
-
static getLatestBlock(rpc:
|
|
23
|
-
static getLatestFinalizedBlock(rpc:
|
|
18
|
+
static getDecimals(chain: Chain, rpc: Aptos, token: AnyAptosAddress): Promise<number>;
|
|
19
|
+
static getBalance(chain: Chain, rpc: Aptos, walletAddress: string, token: AnyAptosAddress): Promise<bigint | null>;
|
|
20
|
+
static getBalances(chain: Chain, rpc: Aptos, walletAddress: string, tokens: AnyAptosAddress[]): Promise<Balances>;
|
|
21
|
+
static sendWait(chain: Chain, rpc: Aptos, stxns: SignedTx[]): Promise<TxHash[]>;
|
|
22
|
+
static getLatestBlock(rpc: Aptos): Promise<number>;
|
|
23
|
+
static getLatestFinalizedBlock(rpc: Aptos): Promise<number>;
|
|
24
24
|
static chainFromChainId(chainId: string | bigint): [Network, AptosChains];
|
|
25
|
-
static chainFromRpc(rpc:
|
|
25
|
+
static chainFromRpc(rpc: Aptos): Promise<[Network, AptosChains]>;
|
|
26
26
|
}
|
|
27
27
|
//# sourceMappingURL=platform.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../../src/platform.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,QAAQ,EACR,KAAK,EACL,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,qBAAqB,EACrB,OAAO,EACP,MAAM,EACP,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,eAAe,EAOhB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../../src/platform.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,QAAQ,EACR,KAAK,EACL,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,qBAAqB,EACrB,OAAO,EACP,MAAM,EACP,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,eAAe,EAOhB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAsD,MAAM,oBAAoB,CAAC;AAC/F,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAKjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD;;GAEG;AACH,qBAAa,aAAa,CAAC,CAAC,SAAS,OAAO,CAC1C,SAAQ,eAAe,CAAC,CAAC,EAAE,iBAAiB,CAC5C,YAAW,qBAAqB,CAAC,iBAAiB,EAAE,OAAO,aAAa,CAAC;IAEzE,MAAM,CAAC,SAAS,UAAa;gBAEjB,OAAO,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,YAAY,CAAC,CAAC,EAAE,iBAAiB,CAAC;IAInE,MAAM,CAAC,CAAC,SAAS,WAAW,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK;IAS9C,QAAQ,CAAC,CAAC,SAAS,WAAW,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,KAAK,GAAG,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC;IAKxE,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,WAAW,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAKhG,MAAM,CAAC,eAAe,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,WAAW,EAC7D,OAAO,EAAE,CAAC,EACV,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,OAAO,GACf,OAAO;IAOV,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO;WAKjC,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC;WAY9E,UAAU,CACrB,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,KAAK,EACV,aAAa,EAAE,MAAM,EACrB,KAAK,EAAE,eAAe,GACrB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;WAgBZ,WAAW,CACtB,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,KAAK,EACV,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,eAAe,EAAE,GACxB,OAAO,CAAC,QAAQ,CAAC;WAWP,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;WAYxE,cAAc,CAAC,GAAG,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;WAK3C,uBAAuB,CAAC,GAAG,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;IAKjE,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC;WAa5D,YAAY,CAAC,GAAG,EAAE,KAAK,GAAG,OAAO,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;CAIvE"}
|
package/dist/esm/platform.js
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { PlatformContext, Wormhole, chainToPlatform, isNative, nativeChainIds, decimals as nativeDecimals, networkPlatformConfigs, } from "@wormhole-foundation/sdk-connect";
|
|
2
|
-
import {
|
|
2
|
+
import { Aptos, AptosConfig, Network as AptosNetwork } from "@aptos-labs/ts-sdk";
|
|
3
3
|
import { AptosChain } from "./chain.js";
|
|
4
4
|
import { _platform } from "./types.js";
|
|
5
|
-
import { CoinClient } from "aptos";
|
|
6
5
|
import { AptosAddress } from "./address.js";
|
|
7
6
|
import { APTOS_COIN, APTOS_SEPARATOR } from "./constants.js";
|
|
8
7
|
/**
|
|
@@ -14,8 +13,11 @@ export class AptosPlatform extends PlatformContext {
|
|
|
14
13
|
super(network, config ?? networkPlatformConfigs(network, AptosPlatform._platform));
|
|
15
14
|
}
|
|
16
15
|
getRpc(chain) {
|
|
17
|
-
if (chain in this.config)
|
|
18
|
-
|
|
16
|
+
if (chain in this.config) {
|
|
17
|
+
const network = this.network === "Mainnet" ? AptosNetwork.MAINNET : AptosNetwork.TESTNET;
|
|
18
|
+
const config = new AptosConfig({ fullnode: this.config[chain].rpc, network });
|
|
19
|
+
return new Aptos(config);
|
|
20
|
+
}
|
|
19
21
|
throw new Error("No configuration available for chain: " + chain);
|
|
20
22
|
}
|
|
21
23
|
getChain(chain, rpc) {
|
|
@@ -41,24 +43,26 @@ export class AptosPlatform extends PlatformContext {
|
|
|
41
43
|
return platform === AptosPlatform._platform;
|
|
42
44
|
}
|
|
43
45
|
static async getDecimals(chain, rpc, token) {
|
|
44
|
-
if (isNative(token))
|
|
46
|
+
if (isNative(token) || token === APTOS_COIN)
|
|
45
47
|
return nativeDecimals.nativeDecimals(AptosPlatform._platform);
|
|
46
48
|
const tokenAddr = token.toString();
|
|
47
|
-
const
|
|
48
|
-
|
|
49
|
-
|
|
49
|
+
const resource = await rpc.getAccountResource({
|
|
50
|
+
accountAddress: tokenAddr.split(APTOS_SEPARATOR)[0],
|
|
51
|
+
resourceType: `0x1::coin::CoinInfo<${tokenAddr}>`,
|
|
52
|
+
});
|
|
53
|
+
return resource.decimals;
|
|
50
54
|
}
|
|
51
55
|
static async getBalance(chain, rpc, walletAddress, token) {
|
|
52
56
|
const tokenAddress = isNative(token) ? APTOS_COIN : token.toString();
|
|
53
|
-
const cc = new CoinClient(rpc);
|
|
54
57
|
try {
|
|
55
|
-
const balance = await
|
|
58
|
+
const balance = await rpc.getAccountCoinAmount({
|
|
59
|
+
accountAddress: walletAddress,
|
|
56
60
|
coinType: tokenAddress,
|
|
57
61
|
});
|
|
58
|
-
return balance;
|
|
62
|
+
return BigInt(balance);
|
|
59
63
|
}
|
|
60
64
|
catch (e) {
|
|
61
|
-
if (e.
|
|
65
|
+
if (e.status === 404) {
|
|
62
66
|
return null;
|
|
63
67
|
}
|
|
64
68
|
throw e;
|
|
@@ -73,11 +77,12 @@ export class AptosPlatform extends PlatformContext {
|
|
|
73
77
|
return balancesArr.reduce((obj, item) => Object.assign(obj, item), {});
|
|
74
78
|
}
|
|
75
79
|
static async sendWait(chain, rpc, stxns) {
|
|
76
|
-
// TODO: concurrent
|
|
77
80
|
const txhashes = [];
|
|
78
81
|
for (const stxn of stxns) {
|
|
79
|
-
const pendingTx = await rpc.
|
|
80
|
-
const res = await rpc.
|
|
82
|
+
const pendingTx = await rpc.transaction.submit.simple(stxn.transaction);
|
|
83
|
+
const res = await rpc.waitForTransaction({
|
|
84
|
+
transactionHash: pendingTx.hash,
|
|
85
|
+
});
|
|
81
86
|
txhashes.push(res.hash);
|
|
82
87
|
}
|
|
83
88
|
return txhashes;
|
|
@@ -98,9 +103,8 @@ export class AptosPlatform extends PlatformContext {
|
|
|
98
103
|
return [network, chain];
|
|
99
104
|
}
|
|
100
105
|
static async chainFromRpc(rpc) {
|
|
101
|
-
const
|
|
102
|
-
|
|
103
|
-
return this.chainFromChainId(ci.toString());
|
|
106
|
+
const li = await rpc.getLedgerInfo();
|
|
107
|
+
return this.chainFromChainId(li.chain_id.toString());
|
|
104
108
|
}
|
|
105
109
|
}
|
|
106
110
|
//# sourceMappingURL=platform.js.map
|
package/dist/esm/platform.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform.js","sourceRoot":"","sources":["../../src/platform.ts"],"names":[],"mappings":"AAUA,OAAO,EACL,eAAe,EACf,QAAQ,EACR,eAAe,EACf,QAAQ,EACR,cAAc,EACd,QAAQ,IAAI,cAAc,EAC1B,sBAAsB,GACvB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"platform.js","sourceRoot":"","sources":["../../src/platform.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/signer.d.ts
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
import type { Network, RpcConnection, SignAndSendSigner, Signer, TxHash, UnsignedTransaction } from "@wormhole-foundation/sdk-connect";
|
|
2
|
-
import type { AptosClient } from "aptos";
|
|
3
|
-
import { AptosAccount } from "aptos";
|
|
4
2
|
import type { AptosChains } from "./types.js";
|
|
3
|
+
import { Account, Aptos } from "@aptos-labs/ts-sdk";
|
|
5
4
|
export declare function getAptosSigner(rpc: RpcConnection<"Aptos">, privateKey: string): Promise<Signer>;
|
|
6
5
|
export declare class AptosSigner<N extends Network, C extends AptosChains> implements SignAndSendSigner<N, C> {
|
|
7
6
|
private _chain;
|
|
8
7
|
private _account;
|
|
9
8
|
private _rpc;
|
|
10
9
|
private _debug?;
|
|
11
|
-
constructor(_chain: C, _account:
|
|
10
|
+
constructor(_chain: C, _account: Account, _rpc: Aptos, _debug?: boolean | undefined);
|
|
12
11
|
chain(): C;
|
|
13
12
|
address(): string;
|
|
14
13
|
signAndSend(tx: UnsignedTransaction[]): Promise<TxHash[]>;
|
package/dist/esm/signer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../src/signer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,aAAa,EACb,iBAAiB,EACjB,MAAM,EACN,MAAM,EACN,mBAAmB,EACpB,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../src/signer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,aAAa,EACb,iBAAiB,EACjB,MAAM,EACN,MAAM,EACN,mBAAmB,EACpB,MAAM,kCAAkC,CAAC;AAG1C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EACL,OAAO,EAEP,KAAK,EAIN,MAAM,oBAAoB,CAAC;AAG5B,wBAAsB,cAAc,CAClC,GAAG,EAAE,aAAa,CAAC,OAAO,CAAC,EAC3B,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,CAAC,CAOjB;AAED,qBAAa,WAAW,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,WAAW,CAC/D,YAAW,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC;IAGhC,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,IAAI;IACZ,OAAO,CAAC,MAAM,CAAC;gBAHP,MAAM,EAAE,CAAC,EACT,QAAQ,EAAE,OAAO,EACjB,IAAI,EAAE,KAAK,EACX,MAAM,CAAC,qBAAS;IAG1B,KAAK;IAIL,OAAO,IAAI,MAAM;IAIX,WAAW,CAAC,EAAE,EAAE,mBAAmB,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;YAoBjD,YAAY;CAmB3B"}
|
package/dist/esm/signer.js
CHANGED
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
import { encoding } from "@wormhole-foundation/sdk-connect";
|
|
2
|
-
import { AptosAccount } from "aptos";
|
|
3
2
|
import { AptosPlatform } from "./platform.js";
|
|
3
|
+
import { Account, Ed25519PrivateKey, } from "@aptos-labs/ts-sdk";
|
|
4
4
|
// returns a SignOnlySigner for the Aptos platform
|
|
5
5
|
export async function getAptosSigner(rpc, privateKey) {
|
|
6
6
|
const [_, chain] = await AptosPlatform.chainFromRpc(rpc);
|
|
7
|
-
|
|
7
|
+
const account = Account.fromPrivateKey({
|
|
8
|
+
// TODO: support secp256k1
|
|
9
|
+
privateKey: new Ed25519PrivateKey(encoding.hex.decode(privateKey)),
|
|
10
|
+
});
|
|
11
|
+
return new AptosSigner(chain, account, rpc);
|
|
8
12
|
}
|
|
9
13
|
export class AptosSigner {
|
|
10
14
|
_chain;
|
|
@@ -21,7 +25,7 @@ export class AptosSigner {
|
|
|
21
25
|
return this._chain;
|
|
22
26
|
}
|
|
23
27
|
address() {
|
|
24
|
-
return this._account.
|
|
28
|
+
return this._account.accountAddress.toString();
|
|
25
29
|
}
|
|
26
30
|
async signAndSend(tx) {
|
|
27
31
|
const txhashes = [];
|
|
@@ -29,14 +33,10 @@ export class AptosSigner {
|
|
|
29
33
|
const { description, transaction } = txn;
|
|
30
34
|
if (this._debug)
|
|
31
35
|
console.log(`Signing: ${description} for ${this.address()}`);
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
max_gas_amount: "30000",
|
|
37
|
-
expiration_timestamp_secs: (BigInt(Date.now() + 8 * 60 * 60 * 1000) / 1000n).toString(),
|
|
38
|
-
};
|
|
39
|
-
const tx = await this._rpc.generateTransaction(this._account.address(), transaction, customOpts);
|
|
36
|
+
const tx = await this._rpc.transaction.build.simple({
|
|
37
|
+
sender: this._account.accountAddress,
|
|
38
|
+
data: transaction,
|
|
39
|
+
});
|
|
40
40
|
const { hash } = await this._simSignSend(tx);
|
|
41
41
|
txhashes.push(hash);
|
|
42
42
|
}
|
|
@@ -44,16 +44,19 @@ export class AptosSigner {
|
|
|
44
44
|
}
|
|
45
45
|
async _simSignSend(rawTx) {
|
|
46
46
|
// simulate transaction
|
|
47
|
-
await this._rpc.
|
|
47
|
+
await this._rpc.transaction.simulate
|
|
48
|
+
.simple({
|
|
49
|
+
signerPublicKey: this._account.publicKey,
|
|
50
|
+
transaction: rawTx,
|
|
51
|
+
})
|
|
52
|
+
.then((sims) => sims.forEach((tx) => {
|
|
48
53
|
if (!tx.success) {
|
|
49
54
|
throw new Error(`Transaction failed: ${tx.vm_status}\n${JSON.stringify(tx, null, 2)}`);
|
|
50
55
|
}
|
|
51
56
|
}));
|
|
52
|
-
// sign & submit transaction
|
|
53
57
|
return this._rpc
|
|
54
|
-
.
|
|
55
|
-
.then((
|
|
56
|
-
.then((pendingTx) => this._rpc.waitForTransactionWithResult(pendingTx.hash));
|
|
58
|
+
.signAndSubmitTransaction({ signer: this._account, transaction: rawTx })
|
|
59
|
+
.then((pendingTx) => this._rpc.waitForTransaction({ transactionHash: pendingTx.hash }));
|
|
57
60
|
}
|
|
58
61
|
}
|
|
59
62
|
//# sourceMappingURL=signer.js.map
|
package/dist/esm/signer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signer.js","sourceRoot":"","sources":["../../src/signer.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"signer.js","sourceRoot":"","sources":["../../src/signer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import type { Network, UnsignedTransaction } from "@wormhole-foundation/sdk-connect";
|
|
2
|
-
import type {
|
|
2
|
+
import type { InputGenerateTransactionPayloadData } from "@aptos-labs/ts-sdk";
|
|
3
3
|
import type { AptosChains } from "./types.js";
|
|
4
4
|
export declare class AptosUnsignedTransaction<N extends Network, C extends AptosChains> implements UnsignedTransaction<N, C> {
|
|
5
|
-
readonly transaction:
|
|
5
|
+
readonly transaction: InputGenerateTransactionPayloadData;
|
|
6
6
|
readonly network: N;
|
|
7
7
|
readonly chain: C;
|
|
8
8
|
readonly description: string;
|
|
9
9
|
readonly parallelizable: boolean;
|
|
10
|
-
constructor(transaction:
|
|
10
|
+
constructor(transaction: InputGenerateTransactionPayloadData, network: N, chain: C, description: string, parallelizable?: boolean);
|
|
11
11
|
}
|
|
12
12
|
//# sourceMappingURL=unsignedTransaction.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unsignedTransaction.d.ts","sourceRoot":"","sources":["../../src/unsignedTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACrF,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"unsignedTransaction.d.ts","sourceRoot":"","sources":["../../src/unsignedTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACrF,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,oBAAoB,CAAC;AAC9E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,qBAAa,wBAAwB,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,WAAW,CAC5E,YAAW,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC;IAGlC,QAAQ,CAAC,WAAW,EAAE,mCAAmC;IACzD,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,mCAAmC,EAChD,OAAO,EAAE,CAAC,EACV,KAAK,EAAE,CAAC,EACR,WAAW,EAAE,MAAM,EACnB,cAAc,GAAE,OAAe;CAE3C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unsignedTransaction.js","sourceRoot":"","sources":["../../src/unsignedTransaction.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,wBAAwB;IAIxB;IACA;IACA;IACA;IACA;IALX,YACW,
|
|
1
|
+
{"version":3,"file":"unsignedTransaction.js","sourceRoot":"","sources":["../../src/unsignedTransaction.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,wBAAwB;IAIxB;IACA;IACA;IACA;IACA;IALX,YACW,WAAgD,EAChD,OAAU,EACV,KAAQ,EACR,WAAmB,EACnB,iBAA0B,KAAK;QAJ/B,gBAAW,GAAX,WAAW,CAAqC;QAChD,YAAO,GAAP,OAAO,CAAG;QACV,UAAK,GAAL,KAAK,CAAG;QACR,gBAAW,GAAX,WAAW,CAAQ;QACnB,mBAAc,GAAd,cAAc,CAAiB;IACvC,CAAC;CACL"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wormhole-foundation/sdk-aptos",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.4.0",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "git+https://github.com/wormhole-foundation/connect-sdk.git"
|
|
@@ -46,8 +46,8 @@
|
|
|
46
46
|
"prettier": "prettier --write ./src"
|
|
47
47
|
},
|
|
48
48
|
"dependencies": {
|
|
49
|
-
"@
|
|
50
|
-
"
|
|
49
|
+
"@aptos-labs/ts-sdk": "^1.33.1",
|
|
50
|
+
"@wormhole-foundation/sdk-connect": "1.4.0"
|
|
51
51
|
},
|
|
52
52
|
"type": "module",
|
|
53
53
|
"typesVersions": {
|