@kynesyslabs/demosdk 2.5.11 → 2.5.13
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/build/abstraction/Identities.d.ts +21 -5
- package/build/abstraction/Identities.js +21 -20
- package/build/abstraction/Identities.js.map +1 -1
- package/build/abstraction/index.d.ts +2 -2
- package/build/abstraction/index.js.map +1 -1
- package/build/multichain/core/aptos.js.map +1 -1
- package/build/multichain/core/btc.d.ts +26 -2
- package/build/multichain/core/btc.js +106 -37
- package/build/multichain/core/btc.js.map +1 -1
- package/build/multichain/core/ibc.d.ts +1 -1
- package/build/multichain/core/ibc.js +29 -14
- package/build/multichain/core/ibc.js.map +1 -1
- package/build/multichain/core/index.d.ts +1 -0
- package/build/multichain/core/index.js +3 -1
- package/build/multichain/core/index.js.map +1 -1
- package/build/multichain/core/multiversx.d.ts +2 -2
- package/build/multichain/core/multiversx.js +9 -1
- package/build/multichain/core/multiversx.js.map +1 -1
- package/build/multichain/core/near.js +6 -2
- package/build/multichain/core/near.js.map +1 -1
- package/build/multichain/core/ton.d.ts +11 -3
- package/build/multichain/core/ton.js +61 -7
- package/build/multichain/core/ton.js.map +1 -1
- package/build/multichain/core/tron.d.ts +77 -0
- package/build/multichain/core/tron.js +255 -0
- package/build/multichain/core/tron.js.map +1 -0
- package/build/multichain/core/types/defaultChain.d.ts +5 -0
- package/build/multichain/core/types/defaultChain.js +7 -0
- package/build/multichain/core/types/defaultChain.js.map +1 -1
- package/build/multichain/localsdk/ibc.js +2 -2
- package/build/multichain/localsdk/ibc.js.map +1 -1
- package/build/multichain/localsdk/index.d.ts +1 -0
- package/build/multichain/localsdk/index.js +3 -1
- package/build/multichain/localsdk/index.js.map +1 -1
- package/build/multichain/localsdk/multiversx.d.ts +1 -1
- package/build/multichain/localsdk/multiversx.js +27 -7
- package/build/multichain/localsdk/multiversx.js.map +1 -1
- package/build/multichain/localsdk/tron.d.ts +3 -0
- package/build/multichain/localsdk/tron.js +8 -0
- package/build/multichain/localsdk/tron.js.map +1 -0
- package/build/types/abstraction/index.d.ts +4 -8
- package/build/websdk/demosclass.js +3 -3
- package/build/websdk/demosclass.js.map +1 -1
- package/build/websdk/examples/tryWeb2.js +1 -1
- package/package.json +6 -3
|
@@ -48,14 +48,11 @@ class IBC extends defaultChain_1.DefaultChain {
|
|
|
48
48
|
constructor(rpc_url) {
|
|
49
49
|
super(rpc_url);
|
|
50
50
|
this.address = '';
|
|
51
|
-
this.
|
|
51
|
+
this.chainId = '';
|
|
52
52
|
// IBC options
|
|
53
53
|
this.gasPrice = '';
|
|
54
54
|
this.multiplier = 2.0;
|
|
55
55
|
this.name = 'ibc';
|
|
56
|
-
if (rpc_url) {
|
|
57
|
-
this.setRpc(rpc_url);
|
|
58
|
-
}
|
|
59
56
|
}
|
|
60
57
|
async setRpc(rpc_url) {
|
|
61
58
|
this.rpc_url = rpc_url;
|
|
@@ -63,12 +60,14 @@ class IBC extends defaultChain_1.DefaultChain {
|
|
|
63
60
|
}
|
|
64
61
|
// INFO: rpc_url used to avoid overwriting this.provider for test mocking
|
|
65
62
|
async connect(rpc_url) {
|
|
66
|
-
if (rpc_url !== this.rpc_url) {
|
|
67
|
-
|
|
63
|
+
if (!this.provider || (rpc_url && rpc_url !== this.rpc_url)) {
|
|
64
|
+
const url = rpc_url || this.rpc_url;
|
|
65
|
+
this.rpc_url = url;
|
|
66
|
+
this.provider = await stargate_1.StargateClient.connect(url);
|
|
68
67
|
}
|
|
69
68
|
try {
|
|
70
69
|
const chain_id = await this.provider.getChainId();
|
|
71
|
-
this.
|
|
70
|
+
this.chainId = chain_id;
|
|
72
71
|
this.connected = Boolean(chain_id);
|
|
73
72
|
}
|
|
74
73
|
catch (error) {
|
|
@@ -108,6 +107,7 @@ class IBC extends defaultChain_1.DefaultChain {
|
|
|
108
107
|
}
|
|
109
108
|
this.rpc_url = rpc_url || this.rpc_url;
|
|
110
109
|
this.wallet = await stargate_1.SigningStargateClient.connectWithSigner(this.rpc_url, this.signer);
|
|
110
|
+
this.chainId = await this.wallet.getChainId();
|
|
111
111
|
return this.wallet;
|
|
112
112
|
}
|
|
113
113
|
getAddress() {
|
|
@@ -178,15 +178,30 @@ class IBC extends defaultChain_1.DefaultChain {
|
|
|
178
178
|
}
|
|
179
179
|
async signMessage(message, options) {
|
|
180
180
|
(0, utils_1.required)(options && options?.privateKey, "Wallet not connected");
|
|
181
|
-
|
|
182
|
-
const
|
|
183
|
-
|
|
184
|
-
|
|
181
|
+
// Check if privateKey is a mnemonic or raw private key
|
|
182
|
+
const isMnemonic = options.privateKey.includes(' ');
|
|
183
|
+
let privateKey;
|
|
184
|
+
let publicKey;
|
|
185
|
+
if (isMnemonic) {
|
|
186
|
+
const seed = bip39.mnemonicToSeedSync(options.privateKey);
|
|
187
|
+
const hdkey = bip32.HDKey.fromMasterSeed(seed);
|
|
188
|
+
const derivedKey = hdkey.derive("m/44'/118'/0'/0/0");
|
|
189
|
+
privateKey = derivedKey.privateKey;
|
|
190
|
+
publicKey = derivedKey.publicKey;
|
|
191
|
+
}
|
|
192
|
+
else {
|
|
193
|
+
const privateKeyBytes = Buffer.from(options.privateKey, 'hex');
|
|
194
|
+
const keypair = await crypto_2.Secp256k1.makeKeypair(privateKeyBytes);
|
|
195
|
+
privateKey = privateKeyBytes;
|
|
196
|
+
publicKey = crypto_2.Secp256k1.compressPubkey(keypair.pubkey);
|
|
197
|
+
}
|
|
185
198
|
const messageHash = (0, crypto_1.createHash)('sha256').update(message).digest();
|
|
186
199
|
const signObj = await crypto_2.Secp256k1.createSignature(messageHash, privateKey);
|
|
187
200
|
const fixedLengthData = signObj.toFixedLength();
|
|
188
|
-
const
|
|
189
|
-
|
|
201
|
+
const base64Signature = (0, encoding_1.toBase64)(fixedLengthData);
|
|
202
|
+
const base64PublicKey = (0, encoding_1.toBase64)(publicKey);
|
|
203
|
+
// Return signature|publicKey so both can be extracted
|
|
204
|
+
return `${base64Signature}|${base64PublicKey}`;
|
|
190
205
|
}
|
|
191
206
|
async verifyMessage(message, signature, publicKey) {
|
|
192
207
|
const signatureBytes = (0, encoding_1.fromBase64)(signature);
|
|
@@ -234,7 +249,7 @@ class IBC extends defaultChain_1.DefaultChain {
|
|
|
234
249
|
const signerInfo = {
|
|
235
250
|
sequence: current_sequence,
|
|
236
251
|
accountNumber: account.accountNumber,
|
|
237
|
-
chainId: this.
|
|
252
|
+
chainId: this.chainId,
|
|
238
253
|
};
|
|
239
254
|
if (tx.fee === null) {
|
|
240
255
|
// INFO: Throw an error if fee is not set
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ibc.js","sourceRoot":"","sources":["../../../../src/multichain/core/ibc.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yDAG8B;AAC9B,+CAIyB;AACzB,+CAAwD;AACxD,0DAAyD;AAEzD,uDAAoE;AASpE,mCAAkC;AAClC,mCAAoC;AACpC,2CAA+D;AAC/D,oDAAqC;AACrC,oDAAqC;AAErC,MAAa,GAAI,SAAQ,2BAAY;IAWjC,YAAY,OAAe;QACvB,KAAK,CAAC,OAAO,CAAC,CAAA;QAXlB,YAAO,GAAW,EAAE,CAAA;QACpB,YAAO,GAAW,EAAE,CAAA;QAKpB,cAAc;QACd,aAAQ,GAAW,EAAE,CAAA;QACrB,eAAU,GAAW,GAAG,CAAA;QAIpB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"ibc.js","sourceRoot":"","sources":["../../../../src/multichain/core/ibc.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.NEAR = exports.xrplGetLastSequence = exports.XRPL = exports.APTOS = exports.BTC = exports.TON = exports.SOLANA = exports.MULTIVERSX = exports.IBC = exports.EVM = exports.required = exports.DefaultChain = void 0;
|
|
3
|
+
exports.NEAR = exports.xrplGetLastSequence = exports.XRPL = exports.TRON = exports.APTOS = exports.BTC = exports.TON = exports.SOLANA = exports.MULTIVERSX = exports.IBC = exports.EVM = exports.required = exports.DefaultChain = void 0;
|
|
4
4
|
var defaultChain_1 = require("./types/defaultChain");
|
|
5
5
|
Object.defineProperty(exports, "DefaultChain", { enumerable: true, get: function () { return defaultChain_1.DefaultChain; } });
|
|
6
6
|
var utils_1 = require("./utils");
|
|
@@ -20,6 +20,8 @@ var btc_1 = require("./btc");
|
|
|
20
20
|
Object.defineProperty(exports, "BTC", { enumerable: true, get: function () { return btc_1.BTC; } });
|
|
21
21
|
var aptos_1 = require("./aptos");
|
|
22
22
|
Object.defineProperty(exports, "APTOS", { enumerable: true, get: function () { return aptos_1.APTOS; } });
|
|
23
|
+
var tron_1 = require("./tron");
|
|
24
|
+
Object.defineProperty(exports, "TRON", { enumerable: true, get: function () { return tron_1.TRON; } });
|
|
23
25
|
// The official XRPL Library is called "xrpl" which conflicts with the name of our XRPL SDK
|
|
24
26
|
var xrp_1 = require("./xrp");
|
|
25
27
|
Object.defineProperty(exports, "XRPL", { enumerable: true, get: function () { return xrp_1.XRPL; } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/multichain/core/index.ts"],"names":[],"mappings":";;;AAAA,qDAM6B;AALzB,4GAAA,YAAY,OAAA;AAkBhB,iCAAkC;AAAzB,iGAAA,QAAQ,OAAA;AAEjB,sBAAsB;AACtB,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,2CAAyC;AAAhC,wGAAA,UAAU,OAAA;AACnB,mCAAiC;AAAxB,gGAAA,MAAM,OAAA;AACf,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,iCAA+B;AAAtB,8FAAA,KAAK,OAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/multichain/core/index.ts"],"names":[],"mappings":";;;AAAA,qDAM6B;AALzB,4GAAA,YAAY,OAAA;AAkBhB,iCAAkC;AAAzB,iGAAA,QAAQ,OAAA;AAEjB,sBAAsB;AACtB,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,2CAAyC;AAAhC,wGAAA,UAAU,OAAA;AACnB,mCAAiC;AAAxB,gGAAA,MAAM,OAAA;AACf,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,iCAA+B;AAAtB,8FAAA,KAAK,OAAA;AACd,+BAA6B;AAApB,4FAAA,IAAI,OAAA;AAEb,2FAA2F;AAC3F,6BAAiD;AAAxC,2FAAA,IAAI,OAAA;AAAE,0GAAA,mBAAmB,OAAA;AAClC,+BAA6B;AAApB,4FAAA,IAAI,OAAA"}
|
|
@@ -11,8 +11,8 @@ export declare class MULTIVERSX extends DefaultChain {
|
|
|
11
11
|
setRPC(rpc_url: string): void;
|
|
12
12
|
connect(): Promise<boolean>;
|
|
13
13
|
connectKeyFileWallet(keyFile: string, password: string): Promise<UserSigner>;
|
|
14
|
-
connectWallet(privateKey: string, options
|
|
15
|
-
password
|
|
14
|
+
connectWallet(privateKey: string, options?: {
|
|
15
|
+
password?: string;
|
|
16
16
|
}): Promise<UserSigner>;
|
|
17
17
|
getAddress(): string;
|
|
18
18
|
getBalance(address: string): Promise<string>;
|
|
@@ -48,7 +48,15 @@ class MULTIVERSX extends core_1.DefaultChain {
|
|
|
48
48
|
async connectWallet(privateKey, options) {
|
|
49
49
|
// INFO: This method is overriden in the web sdk
|
|
50
50
|
// to connect with the extension wallet
|
|
51
|
-
|
|
51
|
+
// Check if privateKey is a raw hex string (64 hex characters)
|
|
52
|
+
const isRawHexKey = /^[0-9a-fA-F]{64}$/.test(privateKey);
|
|
53
|
+
if (isRawHexKey) {
|
|
54
|
+
const secretKey = sdk_wallet_1.UserSecretKey.fromString(privateKey);
|
|
55
|
+
this.wallet = new sdk_wallet_1.UserSigner(secretKey);
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
this.wallet = await this.connectKeyFileWallet(privateKey, options?.password ?? '');
|
|
59
|
+
}
|
|
52
60
|
return this.wallet;
|
|
53
61
|
}
|
|
54
62
|
getAddress() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multiversx.js","sourceRoot":"","sources":["../../../../src/multichain/core/multiversx.ts"],"names":[],"mappings":";;;;;;AAAA,mDAS6B;AAE7B,6EAAsE;AAEtE,
|
|
1
|
+
{"version":3,"file":"multiversx.js","sourceRoot":"","sources":["../../../../src/multichain/core/multiversx.ts"],"names":[],"mappings":"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"}
|
|
@@ -47,6 +47,9 @@ const bip39 = __importStar(require("@scure/bip39"));
|
|
|
47
47
|
const bytes_1 = require("@project-serum/anchor/dist/cjs/utils/bytes");
|
|
48
48
|
const tweetnacl_1 = __importDefault(require("tweetnacl"));
|
|
49
49
|
const tweetnacl_util_1 = require("tweetnacl-util");
|
|
50
|
+
const ed25519_hd_key_1 = require("ed25519-hd-key");
|
|
51
|
+
// NEAR BIP44 derivation path (coin type 397)
|
|
52
|
+
const NEAR_DERIVATION_PATH = "m/44'/397'/0'";
|
|
50
53
|
class NEAR extends defaultChain_1.DefaultChain {
|
|
51
54
|
constructor(rpc_url, networkId = "testnet") {
|
|
52
55
|
super(rpc_url);
|
|
@@ -92,8 +95,9 @@ class NEAR extends defaultChain_1.DefaultChain {
|
|
|
92
95
|
async connectWallet(privateKey, options) {
|
|
93
96
|
(0, websdk_1._required)(options && options.accountId, "AccountId is required");
|
|
94
97
|
const seed = bip39.mnemonicToSeedSync(privateKey);
|
|
95
|
-
const
|
|
96
|
-
const
|
|
98
|
+
const seedHex = Buffer.from(seed).toString('hex');
|
|
99
|
+
const { key: derivedKey } = (0, ed25519_hd_key_1.derivePath)(NEAR_DERIVATION_PATH, seedHex);
|
|
100
|
+
const base58PrivateKey = bytes_1.bs58.encode(derivedKey);
|
|
97
101
|
this.wallet = near_api_js_1.KeyPair.fromString(`ed25519:${base58PrivateKey}`);
|
|
98
102
|
this.accountId = options.accountId;
|
|
99
103
|
this.networkId = options?.networkId;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"near.js","sourceRoot":"","sources":["../../../../src/multichain/core/near.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAOoB;AACpB,8DAAgC;AAEhC,qCAAgD;AAChD,uDAAmD;AACnD,6DAAyD;AACzD,0CAA4D;AAC5D,oDAAqC;AACrC,sEAAiE;AACjE,0DAA4B;AAC5B,mDAA2C;AAE3C,MAAa,IAAK,SAAQ,2BAAY;IASlC,YAAY,OAAe,EAAE,YAAoB,SAAS;QACtD,KAAK,CAAC,OAAO,CAAC,CAAA;QAHlB,YAAO,GAAmB,0BAAO,CAAA;QAK7B,IAAI,CAAC,IAAI,GAAG,MAAM,CAAA;QAClB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;IACnC,CAAC;IAED,MAAM,CAAU,KAAK,CAAC,MAAM,CAExB,OAAe;QAEf,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,CAAA;QAElC,IAAI,OAAO,EAAE,CAAC;YACV,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAA;QAC5B,CAAC;QAED,OAAO,QAAQ,CAAA;IACnB,CAAC;IAEQ,MAAM,CAAC,OAAe,EAAE,YAAoB,SAAS;QAC1D,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,QAAQ,GAAG,IAAI,kBAAI,CAAC;YACrB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,OAAO,EAAE,IAAI,CAAC,OAAO;SACxB,CAAC,CAAA;IACN,CAAC;IAED,KAAK,CAAC,OAAO;QACT,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAA;YAC/D,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,MAAM,CAAA;QAC7B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YACpB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;QAC1B,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAA;IACzB,CAAC;IAED,UAAU;QACN,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,QAAQ,EAAE,CAAA;IAChD,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,OAAe,EAAE,OAAY;QAC1C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QACpD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,iBAAiB,EAAE,CAAA;QACjD,OAAO,OAAO,CAAC,KAAK,CAAA;IACxB,CAAC;IAED,KAAK,CAAC,aAAa,CACf,UAAkB,EAClB,OAMC;QAED,IAAA,kBAAQ,EAAC,OAAO,IAAI,OAAO,CAAC,SAAS,EAAE,uBAAuB,CAAC,CAAA;QAE/D,MAAM,IAAI,GAAG,KAAK,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAClD,MAAM,
|
|
1
|
+
{"version":3,"file":"near.js","sourceRoot":"","sources":["../../../../src/multichain/core/near.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +1,17 @@
|
|
|
1
|
-
import { Cell, TonClient,
|
|
1
|
+
import { Cell, TonClient, WalletContractV5R1 } from "@ton/ton";
|
|
2
2
|
import { KeyPair } from "@ton/crypto";
|
|
3
3
|
import { IPayOptions } from ".";
|
|
4
4
|
import { DefaultChain } from "./types/defaultChain";
|
|
5
5
|
export declare class TON extends DefaultChain {
|
|
6
6
|
provider: TonClient;
|
|
7
7
|
signer: KeyPair;
|
|
8
|
-
wallet:
|
|
8
|
+
wallet: WalletContractV5R1;
|
|
9
9
|
constructor(rpc_url: string);
|
|
10
10
|
setRpc(rpc_url: string): void;
|
|
11
11
|
connect(): Promise<boolean>;
|
|
12
|
-
connectWallet(mnemonics: string): Promise<
|
|
12
|
+
connectWallet(mnemonics: string): Promise<WalletContractV5R1>;
|
|
13
13
|
getAddress(): string;
|
|
14
|
+
getPublicKey(): string | undefined;
|
|
14
15
|
getBalance(address: string): Promise<string>;
|
|
15
16
|
signMessage(message: string, options?: {
|
|
16
17
|
privateKey?: string;
|
|
@@ -38,4 +39,11 @@ export declare class TON extends DefaultChain {
|
|
|
38
39
|
*/
|
|
39
40
|
cellsToSendableFile(cells: Cell[]): Promise<Buffer<ArrayBufferLike>[]>;
|
|
40
41
|
getEmptyTransaction(): Promise<import("@ton/ton").Builder>;
|
|
42
|
+
/**
|
|
43
|
+
* Estimate the transaction fee for a transfer
|
|
44
|
+
* @param receiver The recipient address
|
|
45
|
+
* @param amount The amount in TON (not nanotons)
|
|
46
|
+
* @returns Fee estimate in nanotons as bigint
|
|
47
|
+
*/
|
|
48
|
+
estimateFee(receiver: string, amount: string): Promise<bigint>;
|
|
41
49
|
}
|
|
@@ -31,16 +31,37 @@ class TON extends defaultChain_1.DefaultChain {
|
|
|
31
31
|
return this.connected;
|
|
32
32
|
}
|
|
33
33
|
async connectWallet(mnemonics) {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
}
|
|
39
|
-
|
|
34
|
+
const mnemonicArray = mnemonics.trim().split(/\s+/);
|
|
35
|
+
// Validate mnemonic - must be exactly 24 words and valid TON mnemonic
|
|
36
|
+
if (mnemonicArray.length !== 24) {
|
|
37
|
+
throw new Error(`Invalid mnemonic: expected 24 words, got ${mnemonicArray.length}`);
|
|
38
|
+
}
|
|
39
|
+
const isValid = await (0, crypto_1.mnemonicValidate)(mnemonicArray);
|
|
40
|
+
if (!isValid) {
|
|
41
|
+
throw new Error("Invalid TON mnemonic: validation failed");
|
|
42
|
+
}
|
|
43
|
+
try {
|
|
44
|
+
this.signer = await (0, crypto_1.mnemonicToPrivateKey)(mnemonicArray);
|
|
45
|
+
this.wallet = ton_1.WalletContractV5R1.create({
|
|
46
|
+
publicKey: this.signer.publicKey,
|
|
47
|
+
workchain: 0,
|
|
48
|
+
});
|
|
49
|
+
return this.wallet;
|
|
50
|
+
}
|
|
51
|
+
catch (error) {
|
|
52
|
+
console.error("[TON SDK] connectWallet error:", error);
|
|
53
|
+
throw error;
|
|
54
|
+
}
|
|
40
55
|
}
|
|
41
56
|
// SECTION: Information
|
|
42
57
|
getAddress() {
|
|
43
|
-
return this.wallet.address.toString();
|
|
58
|
+
return this.wallet.address.toString({ urlSafe: true, bounceable: false });
|
|
59
|
+
}
|
|
60
|
+
getPublicKey() {
|
|
61
|
+
if (!this.signer?.publicKey) {
|
|
62
|
+
return undefined;
|
|
63
|
+
}
|
|
64
|
+
return this.signer.publicKey.toString('hex');
|
|
44
65
|
}
|
|
45
66
|
async getBalance(address) {
|
|
46
67
|
const addr = ton_1.Address.parse(address);
|
|
@@ -94,10 +115,12 @@ class TON extends defaultChain_1.DefaultChain {
|
|
|
94
115
|
const cell = contract.createTransfer({
|
|
95
116
|
seqno: seqNo,
|
|
96
117
|
secretKey: signer.secretKey,
|
|
118
|
+
sendMode: ton_1.SendMode.PAY_GAS_SEPARATELY,
|
|
97
119
|
messages: [
|
|
98
120
|
(0, ton_1.internal)({
|
|
99
121
|
value: (0, ton_1.toNano)(payment.amount),
|
|
100
122
|
to: payment.address,
|
|
123
|
+
bounce: true,
|
|
101
124
|
}),
|
|
102
125
|
],
|
|
103
126
|
});
|
|
@@ -137,6 +160,37 @@ class TON extends defaultChain_1.DefaultChain {
|
|
|
137
160
|
async getEmptyTransaction() {
|
|
138
161
|
return (0, ton_1.beginCell)();
|
|
139
162
|
}
|
|
163
|
+
/**
|
|
164
|
+
* Estimate the transaction fee for a transfer
|
|
165
|
+
* @param receiver The recipient address
|
|
166
|
+
* @param amount The amount in TON (not nanotons)
|
|
167
|
+
* @returns Fee estimate in nanotons as bigint
|
|
168
|
+
*/
|
|
169
|
+
async estimateFee(receiver, amount) {
|
|
170
|
+
(0, _1.required)(this.signer, "Wallet not connected");
|
|
171
|
+
const contract = this.provider.open(this.wallet);
|
|
172
|
+
const seqNo = await contract.getSeqno();
|
|
173
|
+
const transfer = contract.createTransfer({
|
|
174
|
+
seqno: seqNo,
|
|
175
|
+
secretKey: this.signer.secretKey,
|
|
176
|
+
sendMode: ton_1.SendMode.PAY_GAS_SEPARATELY,
|
|
177
|
+
messages: [
|
|
178
|
+
(0, ton_1.internal)({
|
|
179
|
+
value: (0, ton_1.toNano)(amount),
|
|
180
|
+
to: receiver,
|
|
181
|
+
bounce: true,
|
|
182
|
+
}),
|
|
183
|
+
],
|
|
184
|
+
});
|
|
185
|
+
const estimate = await this.provider.estimateExternalMessageFee(this.wallet.address, { body: transfer, initCode: null, initData: null, ignoreSignature: true });
|
|
186
|
+
// Sum all fee components
|
|
187
|
+
const totalFee = BigInt(estimate.source_fees.in_fwd_fee) +
|
|
188
|
+
BigInt(estimate.source_fees.storage_fee) +
|
|
189
|
+
BigInt(estimate.source_fees.gas_fee) +
|
|
190
|
+
BigInt(estimate.source_fees.fwd_fee);
|
|
191
|
+
// Add 10% buffer for safety margin
|
|
192
|
+
return (totalFee * 110n) / 100n;
|
|
193
|
+
}
|
|
140
194
|
}
|
|
141
195
|
exports.TON = TON;
|
|
142
196
|
//# sourceMappingURL=ton.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ton.js","sourceRoot":"","sources":["../../../../src/multichain/core/ton.ts"],"names":[],"mappings":";;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"ton.js","sourceRoot":"","sources":["../../../../src/multichain/core/ton.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { IPayOptions } from ".";
|
|
2
|
+
import { TronWeb } from "tronweb";
|
|
3
|
+
import { DefaultChain, IDefaultChainLocal } from "./types/defaultChain";
|
|
4
|
+
import { XmTransactionResponse } from "./types/interfaces";
|
|
5
|
+
type TronWebInstance = InstanceType<typeof TronWeb>;
|
|
6
|
+
export declare class TRON extends DefaultChain implements IDefaultChainLocal {
|
|
7
|
+
provider: TronWebInstance;
|
|
8
|
+
wallet: TronWebInstance;
|
|
9
|
+
static readonly SUN_PER_TRX = 1000000;
|
|
10
|
+
constructor(rpc_url: string);
|
|
11
|
+
setRpc(rpc_url: string): void;
|
|
12
|
+
connect(): Promise<boolean>;
|
|
13
|
+
connectWallet(privateKey: string): Promise<TronWebInstance>;
|
|
14
|
+
getAddress(): string;
|
|
15
|
+
getBalance(address: string): Promise<string>;
|
|
16
|
+
getInfo(): Promise<any>;
|
|
17
|
+
/**
|
|
18
|
+
* Creates a new TRON wallet
|
|
19
|
+
* @param _password Password parameter (reserved for future encryption support)
|
|
20
|
+
* @returns Object containing the wallet address and private key
|
|
21
|
+
* @note Currently returns unencrypted private key. Password parameter is accepted
|
|
22
|
+
* for interface compatibility but not yet used for encryption.
|
|
23
|
+
*/
|
|
24
|
+
createWallet(_password: string): Promise<{
|
|
25
|
+
address: string;
|
|
26
|
+
privateKey: string;
|
|
27
|
+
}>;
|
|
28
|
+
signMessage(message: string, options?: {
|
|
29
|
+
privateKey?: string;
|
|
30
|
+
}): Promise<string>;
|
|
31
|
+
verifyMessage(message: string, signature: string, publicKey: string): Promise<boolean>;
|
|
32
|
+
signTransaction(tx: any): Promise<any>;
|
|
33
|
+
signTransactions(transactions: any[], options?: {
|
|
34
|
+
privateKey?: string;
|
|
35
|
+
}): Promise<any[]>;
|
|
36
|
+
/**
|
|
37
|
+
* Prepare a TRX transfer transaction
|
|
38
|
+
* @param receiver Recipient address (base58 format)
|
|
39
|
+
* @param amount Amount in SUN (1 TRX = 1,000,000 SUN)
|
|
40
|
+
* @param options Options including optional privateKey
|
|
41
|
+
* @returns Signed transaction ready to broadcast
|
|
42
|
+
*/
|
|
43
|
+
preparePay(receiver: string, amount: string, options?: {
|
|
44
|
+
privateKey?: string;
|
|
45
|
+
}): Promise<any>;
|
|
46
|
+
/**
|
|
47
|
+
* Prepare multiple TRX transfer transactions
|
|
48
|
+
* @param payments Array of payments with address and amount (in SUN)
|
|
49
|
+
* @param options Options including optional privateKey
|
|
50
|
+
* @returns Array of signed transactions
|
|
51
|
+
*/
|
|
52
|
+
preparePays(payments: IPayOptions[], options?: {
|
|
53
|
+
privateKey?: string;
|
|
54
|
+
}): Promise<any[]>;
|
|
55
|
+
/**
|
|
56
|
+
* Broadcast a signed transaction to the network
|
|
57
|
+
* @param signedTx The signed transaction
|
|
58
|
+
* @returns Transaction response with result and hash
|
|
59
|
+
*/
|
|
60
|
+
sendTransaction(signedTx: any): Promise<XmTransactionResponse>;
|
|
61
|
+
getEmptyTransaction(): any;
|
|
62
|
+
/**
|
|
63
|
+
* Convert TRX to SUN
|
|
64
|
+
* @param trx Amount in TRX
|
|
65
|
+
* @returns Amount in SUN as bigint
|
|
66
|
+
*/
|
|
67
|
+
static trxToSun(trx: string | number): bigint;
|
|
68
|
+
/**
|
|
69
|
+
* Convert SUN to TRX with full precision preservation
|
|
70
|
+
* @param sun Amount in SUN as bigint
|
|
71
|
+
* @returns Amount in TRX as a decimal string (e.g., "123.456789")
|
|
72
|
+
* @note This method returns a string to preserve precision for large values.
|
|
73
|
+
* For display purposes, you may want to parse this with a BigNumber library.
|
|
74
|
+
*/
|
|
75
|
+
static sunToTrx(sun: bigint): string;
|
|
76
|
+
}
|
|
77
|
+
export {};
|