@ton/ton 16.1.0 → 16.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +47 -11
- package/dist/client/TonClient.d.ts +6 -6
- package/dist/client/TonClient.js +105 -80
- package/dist/client/TonClient4.d.ts +1 -1
- package/dist/client/TonClient4.js +227 -138
- package/dist/client/api/HttpApi.d.ts +122 -122
- package/dist/client/api/HttpApi.js +103 -72
- package/dist/client/api/TonCache.js +3 -3
- package/dist/config/ConfigParser.js +133 -112
- package/dist/elector/ElectorContract.js +46 -20
- package/dist/index.d.ts +22 -22
- package/dist/jetton/JettonMaster.js +5 -3
- package/dist/jetton/JettonWallet.js +2 -2
- package/dist/multisig/MultisigOrder.d.ts +2 -2
- package/dist/multisig/MultisigOrder.js +1 -1
- package/dist/multisig/MultisigOrderBuilder.d.ts +2 -2
- package/dist/multisig/MultisigOrderBuilder.js +1 -1
- package/dist/multisig/MultisigWallet.d.ts +3 -3
- package/dist/multisig/MultisigWallet.js +8 -8
- package/dist/utils/createTestClient.d.ts +1 -1
- package/dist/utils/createTestClient.js +6 -2
- package/dist/utils/createTestClient4.d.ts +1 -1
- package/dist/utils/createTestClient4.js +5 -1
- package/dist/utils/fees.d.ts +2 -2
- package/dist/utils/fees.js +21 -6
- package/dist/utils/{randomTestKey.d.ts → testUtils.d.ts} +2 -0
- package/dist/utils/testUtils.js +21 -0
- package/dist/utils/testWallets.d.ts +10 -10
- package/dist/utils/time.js +5 -3
- package/dist/utils/toUrlSafe.js +6 -6
- package/dist/wallets/WalletContractV1R1.d.ts +1 -57
- package/dist/wallets/WalletContractV1R1.js +15 -99
- package/dist/wallets/WalletContractV1R2.d.ts +1 -57
- package/dist/wallets/WalletContractV1R2.js +15 -100
- package/dist/wallets/WalletContractV1R3.d.ts +1 -57
- package/dist/wallets/WalletContractV1R3.js +15 -99
- package/dist/wallets/WalletContractV2R1.d.ts +1 -59
- package/dist/wallets/WalletContractV2R1.js +15 -101
- package/dist/wallets/WalletContractV2R2.d.ts +1 -59
- package/dist/wallets/WalletContractV2R2.js +15 -101
- package/dist/wallets/WalletContractV3R1.d.ts +1 -56
- package/dist/wallets/WalletContractV3R1.js +15 -103
- package/dist/wallets/WalletContractV3R2.d.ts +1 -56
- package/dist/wallets/WalletContractV3R2.js +15 -103
- package/dist/wallets/WalletContractV4.d.ts +2 -2
- package/dist/wallets/WalletContractV5Beta.d.ts +3 -3
- package/dist/wallets/WalletContractV5R1.d.ts +3 -3
- package/dist/wallets/signing/createWalletTransfer.d.ts +11 -3
- package/dist/wallets/signing/createWalletTransfer.js +18 -15
- package/dist/wallets/signing/singer.d.ts +2 -1
- package/dist/wallets/signing/singer.js +11 -5
- package/dist/wallets/v1/r1.d.ts +59 -0
- package/dist/wallets/v1/r1.js +103 -0
- package/dist/wallets/v1/r2.d.ts +59 -0
- package/dist/wallets/v1/r2.js +104 -0
- package/dist/wallets/v1/r3.d.ts +59 -0
- package/dist/wallets/v1/r3.js +103 -0
- package/dist/wallets/v2/r1.d.ts +61 -0
- package/dist/wallets/v2/r1.js +107 -0
- package/dist/wallets/v2/r2.d.ts +61 -0
- package/dist/wallets/v2/r2.js +107 -0
- package/dist/wallets/v3/r1.d.ts +58 -0
- package/dist/wallets/v3/r1.js +109 -0
- package/dist/wallets/v3/r2.d.ts +58 -0
- package/dist/wallets/v3/r2.js +109 -0
- package/dist/wallets/v4/WalletContractV4.d.ts +4 -2
- package/dist/wallets/v4/WalletContractV4.js +36 -32
- package/dist/wallets/v4/WalletContractV4Actions.d.ts +4 -4
- package/dist/wallets/v4/WalletContractV4Actions.js +10 -10
- package/dist/wallets/v5beta/WalletContractV5Beta.d.ts +7 -5
- package/dist/wallets/v5beta/WalletContractV5Beta.js +44 -28
- package/dist/wallets/v5beta/WalletV5BetaActions.d.ts +1 -1
- package/dist/wallets/v5beta/WalletV5BetaActions.js +25 -18
- package/dist/wallets/v5beta/WalletV5BetaWalletId.d.ts +2 -2
- package/dist/wallets/v5beta/WalletV5BetaWalletId.js +6 -4
- package/dist/wallets/v5beta/WalletV5OutActions.d.ts +4 -4
- package/dist/wallets/v5beta/WalletV5OutActions.js +3 -1
- package/dist/wallets/v5r1/WalletContractV5R1.d.ts +10 -6
- package/dist/wallets/v5r1/WalletContractV5R1.js +55 -36
- package/dist/wallets/v5r1/WalletV5R1Actions.d.ts +3 -3
- package/dist/wallets/v5r1/WalletV5R1Actions.js +32 -25
- package/dist/wallets/v5r1/WalletV5R1WalletId.d.ts +2 -2
- package/dist/wallets/v5r1/WalletV5R1WalletId.js +16 -10
- package/package.json +62 -65
- package/dist/client/TonClient.spec.d.ts +0 -1
- package/dist/client/TonClient.spec.js +0 -59
- package/dist/client/TonClient4.spec.d.ts +0 -1
- package/dist/client/TonClient4.spec.js +0 -67
- package/dist/config/ConfigParser.spec.d.ts +0 -8
- package/dist/config/ConfigParser.spec.js +0 -247
- package/dist/elector/ElectorContract.spec.d.ts +0 -8
- package/dist/elector/ElectorContract.spec.js +0 -104
- package/dist/jetton/JettonMaster.spec.d.ts +0 -8
- package/dist/jetton/JettonMaster.spec.js +0 -27
- package/dist/multisig/MultisigOrder.spec.d.ts +0 -1
- package/dist/multisig/MultisigOrder.spec.js +0 -139
- package/dist/multisig/MultisigWallet.spec.d.ts +0 -1
- package/dist/multisig/MultisigWallet.spec.js +0 -248
- package/dist/utils/fees.spec.d.ts +0 -1
- package/dist/utils/fees.spec.js +0 -83
- package/dist/utils/randomTestKey.js +0 -23
- package/dist/wallets/WalletContractV1R1.spec.d.ts +0 -8
- package/dist/wallets/WalletContractV1R1.spec.js +0 -67
- package/dist/wallets/WalletContractV1R2.spec.d.ts +0 -8
- package/dist/wallets/WalletContractV1R2.spec.js +0 -67
- package/dist/wallets/WalletContractV1R3.spec.d.ts +0 -8
- package/dist/wallets/WalletContractV1R3.spec.js +0 -44
- package/dist/wallets/WalletContractV2R1.spec.d.ts +0 -8
- package/dist/wallets/WalletContractV2R1.spec.js +0 -67
- package/dist/wallets/WalletContractV2R2.spec.d.ts +0 -8
- package/dist/wallets/WalletContractV2R2.spec.js +0 -67
- package/dist/wallets/WalletContractV3R1.spec.d.ts +0 -8
- package/dist/wallets/WalletContractV3R1.spec.js +0 -67
- package/dist/wallets/WalletContractV3R2.spec.d.ts +0 -8
- package/dist/wallets/WalletContractV3R2.spec.js +0 -67
- package/dist/wallets/v4/WalletContractV4.spec.d.ts +0 -8
- package/dist/wallets/v4/WalletContractV4.spec.js +0 -157
- package/dist/wallets/v4/WalletContractV4Actions.spec.d.ts +0 -1
- package/dist/wallets/v4/WalletContractV4Actions.spec.js +0 -74
- package/dist/wallets/v5beta/WalletContractV5Beta.spec.d.ts +0 -8
- package/dist/wallets/v5beta/WalletContractV5Beta.spec.js +0 -317
- package/dist/wallets/v5beta/WalletV5BetaActions.spec.d.ts +0 -1
- package/dist/wallets/v5beta/WalletV5BetaActions.spec.js +0 -166
- package/dist/wallets/v5beta/WalletV5BetaWalletId.spec.d.ts +0 -1
- package/dist/wallets/v5beta/WalletV5BetaWalletId.spec.js +0 -68
- package/dist/wallets/v5r1/WalletContractV5R1.spec.d.ts +0 -8
- package/dist/wallets/v5r1/WalletContractV5R1.spec.js +0 -340
- package/dist/wallets/v5r1/WalletV5R1Actions.spec.d.ts +0 -1
- package/dist/wallets/v5r1/WalletV5R1Actions.spec.js +0 -262
- package/dist/wallets/v5r1/WalletV5R1WalletId.spec.d.ts +0 -1
- package/dist/wallets/v5r1/WalletV5R1WalletId.spec.js +0 -103
|
@@ -1,59 +1 @@
|
|
|
1
|
-
|
|
2
|
-
* Copyright (c) Whales Corp.
|
|
3
|
-
* All Rights Reserved.
|
|
4
|
-
*
|
|
5
|
-
* This source code is licensed under the MIT license found in the
|
|
6
|
-
* LICENSE file in the root directory of this source tree.
|
|
7
|
-
*/
|
|
8
|
-
import { Address, Cell, Contract, ContractProvider, MessageRelaxed, Sender, SendMode } from "@ton/core";
|
|
9
|
-
import { Maybe } from "../utils/maybe";
|
|
10
|
-
export declare class WalletContractV2R2 implements Contract {
|
|
11
|
-
static create(args: {
|
|
12
|
-
workchain: number;
|
|
13
|
-
publicKey: Buffer;
|
|
14
|
-
}): WalletContractV2R2;
|
|
15
|
-
readonly workchain: number;
|
|
16
|
-
readonly publicKey: Buffer;
|
|
17
|
-
readonly address: Address;
|
|
18
|
-
readonly init: {
|
|
19
|
-
data: Cell;
|
|
20
|
-
code: Cell;
|
|
21
|
-
};
|
|
22
|
-
constructor(workchain: number, publicKey: Buffer);
|
|
23
|
-
/**
|
|
24
|
-
* Get Wallet Balance
|
|
25
|
-
*/
|
|
26
|
-
getBalance(provider: ContractProvider): Promise<bigint>;
|
|
27
|
-
/**
|
|
28
|
-
* Get Wallet Seqno
|
|
29
|
-
*/
|
|
30
|
-
getSeqno(provider: ContractProvider): Promise<number>;
|
|
31
|
-
/**
|
|
32
|
-
* Send signed transfer
|
|
33
|
-
*/
|
|
34
|
-
send(provider: ContractProvider, message: Cell): Promise<void>;
|
|
35
|
-
/**
|
|
36
|
-
* Sign and send transfer
|
|
37
|
-
*/
|
|
38
|
-
sendTransfer(provider: ContractProvider, args: {
|
|
39
|
-
seqno: number;
|
|
40
|
-
secretKey: Buffer;
|
|
41
|
-
messages: MessageRelaxed[];
|
|
42
|
-
sendMode?: Maybe<SendMode>;
|
|
43
|
-
timeout?: Maybe<number>;
|
|
44
|
-
}): Promise<void>;
|
|
45
|
-
/**
|
|
46
|
-
* Create signed transfer
|
|
47
|
-
*/
|
|
48
|
-
createTransfer(args: {
|
|
49
|
-
seqno: number;
|
|
50
|
-
secretKey: Buffer;
|
|
51
|
-
messages: MessageRelaxed[];
|
|
52
|
-
sendMode?: Maybe<SendMode>;
|
|
53
|
-
timeout?: Maybe<number>;
|
|
54
|
-
}): Cell;
|
|
55
|
-
/**
|
|
56
|
-
* Create sender
|
|
57
|
-
*/
|
|
58
|
-
sender(provider: ContractProvider, secretKey: Buffer): Sender;
|
|
59
|
-
}
|
|
1
|
+
export * from "./v2/r2";
|
|
@@ -1,103 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
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
|
+
};
|
|
9
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports
|
|
11
|
-
const core_1 = require("@ton/core");
|
|
12
|
-
const createWalletTransfer_1 = require("./signing/createWalletTransfer");
|
|
13
|
-
class WalletContractV2R2 {
|
|
14
|
-
static create(args) {
|
|
15
|
-
return new WalletContractV2R2(args.workchain, args.publicKey);
|
|
16
|
-
}
|
|
17
|
-
constructor(workchain, publicKey) {
|
|
18
|
-
this.workchain = workchain;
|
|
19
|
-
this.publicKey = publicKey;
|
|
20
|
-
// Build initial code and data
|
|
21
|
-
let code = core_1.Cell.fromBoc(Buffer.from('te6cckEBAQEAYwAAwv8AIN0gggFMl7ohggEznLqxnHGw7UTQ0x/XC//jBOCk8mCDCNcYINMf0x8B+CO78mPtRNDTH9P/0VExuvKhA/kBVBBC+RDyovgAApMg10qW0wfUAvsA6NGkyMsfy//J7VQETNeh', 'base64'))[0];
|
|
22
|
-
let data = (0, core_1.beginCell)()
|
|
23
|
-
.storeUint(0, 32) // Seqno
|
|
24
|
-
.storeBuffer(publicKey)
|
|
25
|
-
.endCell();
|
|
26
|
-
this.init = { code, data };
|
|
27
|
-
this.address = (0, core_1.contractAddress)(workchain, { code, data });
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* Get Wallet Balance
|
|
31
|
-
*/
|
|
32
|
-
async getBalance(provider) {
|
|
33
|
-
let state = await provider.getState();
|
|
34
|
-
return state.balance;
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* Get Wallet Seqno
|
|
38
|
-
*/
|
|
39
|
-
async getSeqno(provider) {
|
|
40
|
-
let state = await provider.getState();
|
|
41
|
-
if (state.state.type === 'active') {
|
|
42
|
-
let res = await provider.get('seqno', []);
|
|
43
|
-
return res.stack.readNumber();
|
|
44
|
-
}
|
|
45
|
-
else {
|
|
46
|
-
return 0;
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
/**
|
|
50
|
-
* Send signed transfer
|
|
51
|
-
*/
|
|
52
|
-
async send(provider, message) {
|
|
53
|
-
await provider.external(message);
|
|
54
|
-
}
|
|
55
|
-
/**
|
|
56
|
-
* Sign and send transfer
|
|
57
|
-
*/
|
|
58
|
-
async sendTransfer(provider, args) {
|
|
59
|
-
let transfer = this.createTransfer(args);
|
|
60
|
-
await this.send(provider, transfer);
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* Create signed transfer
|
|
64
|
-
*/
|
|
65
|
-
createTransfer(args) {
|
|
66
|
-
let sendMode = core_1.SendMode.PAY_GAS_SEPARATELY;
|
|
67
|
-
if (args.sendMode !== null && args.sendMode !== undefined) {
|
|
68
|
-
sendMode = args.sendMode;
|
|
69
|
-
}
|
|
70
|
-
return (0, createWalletTransfer_1.createWalletTransferV2)({
|
|
71
|
-
seqno: args.seqno,
|
|
72
|
-
sendMode,
|
|
73
|
-
secretKey: args.secretKey,
|
|
74
|
-
messages: args.messages,
|
|
75
|
-
timeout: args.timeout
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
/**
|
|
79
|
-
* Create sender
|
|
80
|
-
*/
|
|
81
|
-
sender(provider, secretKey) {
|
|
82
|
-
return {
|
|
83
|
-
send: async (args) => {
|
|
84
|
-
let seqno = await this.getSeqno(provider);
|
|
85
|
-
let transfer = this.createTransfer({
|
|
86
|
-
seqno,
|
|
87
|
-
secretKey,
|
|
88
|
-
sendMode: args.sendMode,
|
|
89
|
-
messages: [(0, core_1.internal)({
|
|
90
|
-
to: args.to,
|
|
91
|
-
value: args.value,
|
|
92
|
-
extracurrency: args.extracurrency,
|
|
93
|
-
init: args.init,
|
|
94
|
-
body: args.body,
|
|
95
|
-
bounce: args.bounce
|
|
96
|
-
})]
|
|
97
|
-
});
|
|
98
|
-
await this.send(provider, transfer);
|
|
99
|
-
}
|
|
100
|
-
};
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
exports.WalletContractV2R2 = WalletContractV2R2;
|
|
17
|
+
__exportStar(require("./v2/r2"), exports);
|
|
@@ -1,56 +1 @@
|
|
|
1
|
-
|
|
2
|
-
* Copyright (c) Whales Corp.
|
|
3
|
-
* All Rights Reserved.
|
|
4
|
-
*
|
|
5
|
-
* This source code is licensed under the MIT license found in the
|
|
6
|
-
* LICENSE file in the root directory of this source tree.
|
|
7
|
-
*/
|
|
8
|
-
import { Address, Cell, Contract, ContractProvider, MessageRelaxed, Sender, SendMode } from "@ton/core";
|
|
9
|
-
import { Maybe } from "../utils/maybe";
|
|
10
|
-
import { WalletV3SendArgsSignable, WalletV3SendArgsSigned } from "./WalletContractV3Types";
|
|
11
|
-
export declare class WalletContractV3R1 implements Contract {
|
|
12
|
-
static create(args: {
|
|
13
|
-
workchain: number;
|
|
14
|
-
publicKey: Buffer;
|
|
15
|
-
walletId?: Maybe<number>;
|
|
16
|
-
}): WalletContractV3R1;
|
|
17
|
-
readonly workchain: number;
|
|
18
|
-
readonly publicKey: Buffer;
|
|
19
|
-
readonly address: Address;
|
|
20
|
-
readonly walletId: number;
|
|
21
|
-
readonly init: {
|
|
22
|
-
data: Cell;
|
|
23
|
-
code: Cell;
|
|
24
|
-
};
|
|
25
|
-
constructor(workchain: number, publicKey: Buffer, walletId?: Maybe<number>);
|
|
26
|
-
/**
|
|
27
|
-
* Get wallet balance
|
|
28
|
-
*/
|
|
29
|
-
getBalance(provider: ContractProvider): Promise<bigint>;
|
|
30
|
-
/**
|
|
31
|
-
* Get Wallet Seqno
|
|
32
|
-
*/
|
|
33
|
-
getSeqno(provider: ContractProvider): Promise<number>;
|
|
34
|
-
/**
|
|
35
|
-
* Send signed transfer
|
|
36
|
-
*/
|
|
37
|
-
send(provider: ContractProvider, message: Cell): Promise<void>;
|
|
38
|
-
/**
|
|
39
|
-
* Sign and send transfer
|
|
40
|
-
*/
|
|
41
|
-
sendTransfer(provider: ContractProvider, args: {
|
|
42
|
-
seqno: number;
|
|
43
|
-
secretKey: Buffer;
|
|
44
|
-
messages: MessageRelaxed[];
|
|
45
|
-
sendMode?: Maybe<SendMode>;
|
|
46
|
-
timeout?: Maybe<number>;
|
|
47
|
-
}): Promise<void>;
|
|
48
|
-
/**
|
|
49
|
-
* Create transfer
|
|
50
|
-
*/
|
|
51
|
-
createTransfer<T extends WalletV3SendArgsSigned | WalletV3SendArgsSignable>(args: T): T extends WalletV3SendArgsSignable ? Promise<Cell> : Cell;
|
|
52
|
-
/**
|
|
53
|
-
* Create sender
|
|
54
|
-
*/
|
|
55
|
-
sender(provider: ContractProvider, secretKey: Buffer): Sender;
|
|
56
|
-
}
|
|
1
|
+
export * from "./v3/r1";
|
|
@@ -1,105 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
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
|
+
};
|
|
9
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports
|
|
11
|
-
const core_1 = require("@ton/core");
|
|
12
|
-
const createWalletTransfer_1 = require("./signing/createWalletTransfer");
|
|
13
|
-
class WalletContractV3R1 {
|
|
14
|
-
static create(args) {
|
|
15
|
-
return new WalletContractV3R1(args.workchain, args.publicKey, args.walletId);
|
|
16
|
-
}
|
|
17
|
-
constructor(workchain, publicKey, walletId) {
|
|
18
|
-
// Resolve parameters
|
|
19
|
-
this.workchain = workchain;
|
|
20
|
-
this.publicKey = publicKey;
|
|
21
|
-
if (walletId !== null && walletId !== undefined) {
|
|
22
|
-
this.walletId = walletId;
|
|
23
|
-
}
|
|
24
|
-
else {
|
|
25
|
-
this.walletId = 698983191 + workchain;
|
|
26
|
-
}
|
|
27
|
-
// Build initial code and data
|
|
28
|
-
let code = core_1.Cell.fromBoc(Buffer.from('te6cckEBAQEAYgAAwP8AIN0gggFMl7qXMO1E0NcLH+Ck8mCDCNcYINMf0x/TH/gjE7vyY+1E0NMf0x/T/9FRMrryoVFEuvKiBPkBVBBV+RDyo/gAkyDXSpbTB9QC+wDo0QGkyMsfyx/L/8ntVD++buA=', 'base64'))[0];
|
|
29
|
-
let data = (0, core_1.beginCell)()
|
|
30
|
-
.storeUint(0, 32) // Seqno
|
|
31
|
-
.storeUint(this.walletId, 32)
|
|
32
|
-
.storeBuffer(publicKey)
|
|
33
|
-
.endCell();
|
|
34
|
-
this.init = { code, data };
|
|
35
|
-
this.address = (0, core_1.contractAddress)(workchain, { code, data });
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* Get wallet balance
|
|
39
|
-
*/
|
|
40
|
-
async getBalance(provider) {
|
|
41
|
-
let state = await provider.getState();
|
|
42
|
-
return state.balance;
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* Get Wallet Seqno
|
|
46
|
-
*/
|
|
47
|
-
async getSeqno(provider) {
|
|
48
|
-
let state = await provider.getState();
|
|
49
|
-
if (state.state.type === 'active') {
|
|
50
|
-
let res = await provider.get('seqno', []);
|
|
51
|
-
return res.stack.readNumber();
|
|
52
|
-
}
|
|
53
|
-
else {
|
|
54
|
-
return 0;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* Send signed transfer
|
|
59
|
-
*/
|
|
60
|
-
async send(provider, message) {
|
|
61
|
-
await provider.external(message);
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* Sign and send transfer
|
|
65
|
-
*/
|
|
66
|
-
async sendTransfer(provider, args) {
|
|
67
|
-
let transfer = this.createTransfer(args);
|
|
68
|
-
await this.send(provider, transfer);
|
|
69
|
-
}
|
|
70
|
-
/**
|
|
71
|
-
* Create transfer
|
|
72
|
-
*/
|
|
73
|
-
createTransfer(args) {
|
|
74
|
-
return (0, createWalletTransfer_1.createWalletTransferV3)({
|
|
75
|
-
...args,
|
|
76
|
-
sendMode: args.sendMode ?? core_1.SendMode.PAY_GAS_SEPARATELY,
|
|
77
|
-
walletId: this.walletId
|
|
78
|
-
});
|
|
79
|
-
}
|
|
80
|
-
/**
|
|
81
|
-
* Create sender
|
|
82
|
-
*/
|
|
83
|
-
sender(provider, secretKey) {
|
|
84
|
-
return {
|
|
85
|
-
send: async (args) => {
|
|
86
|
-
let seqno = await this.getSeqno(provider);
|
|
87
|
-
let transfer = this.createTransfer({
|
|
88
|
-
seqno,
|
|
89
|
-
secretKey,
|
|
90
|
-
sendMode: args.sendMode,
|
|
91
|
-
messages: [(0, core_1.internal)({
|
|
92
|
-
to: args.to,
|
|
93
|
-
value: args.value,
|
|
94
|
-
extracurrency: args.extracurrency,
|
|
95
|
-
init: args.init,
|
|
96
|
-
body: args.body,
|
|
97
|
-
bounce: args.bounce
|
|
98
|
-
})]
|
|
99
|
-
});
|
|
100
|
-
await this.send(provider, transfer);
|
|
101
|
-
}
|
|
102
|
-
};
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
exports.WalletContractV3R1 = WalletContractV3R1;
|
|
17
|
+
__exportStar(require("./v3/r1"), exports);
|
|
@@ -1,56 +1 @@
|
|
|
1
|
-
|
|
2
|
-
* Copyright (c) Whales Corp.
|
|
3
|
-
* All Rights Reserved.
|
|
4
|
-
*
|
|
5
|
-
* This source code is licensed under the MIT license found in the
|
|
6
|
-
* LICENSE file in the root directory of this source tree.
|
|
7
|
-
*/
|
|
8
|
-
import { Address, Cell, Contract, ContractProvider, MessageRelaxed, Sender, SendMode } from "@ton/core";
|
|
9
|
-
import { Maybe } from "../utils/maybe";
|
|
10
|
-
import { WalletV3SendArgsSignable, WalletV3SendArgsSigned } from "./WalletContractV3Types";
|
|
11
|
-
export declare class WalletContractV3R2 implements Contract {
|
|
12
|
-
static create(args: {
|
|
13
|
-
workchain: number;
|
|
14
|
-
publicKey: Buffer;
|
|
15
|
-
walletId?: Maybe<number>;
|
|
16
|
-
}): WalletContractV3R2;
|
|
17
|
-
readonly workchain: number;
|
|
18
|
-
readonly publicKey: Buffer;
|
|
19
|
-
readonly address: Address;
|
|
20
|
-
readonly walletId: number;
|
|
21
|
-
readonly init: {
|
|
22
|
-
data: Cell;
|
|
23
|
-
code: Cell;
|
|
24
|
-
};
|
|
25
|
-
constructor(workchain: number, publicKey: Buffer, walletId?: Maybe<number>);
|
|
26
|
-
/**
|
|
27
|
-
* Get wallet balance
|
|
28
|
-
*/
|
|
29
|
-
getBalance(provider: ContractProvider): Promise<bigint>;
|
|
30
|
-
/**
|
|
31
|
-
* Get Wallet Seqno
|
|
32
|
-
*/
|
|
33
|
-
getSeqno(provider: ContractProvider): Promise<number>;
|
|
34
|
-
/**
|
|
35
|
-
* Send signed transfer
|
|
36
|
-
*/
|
|
37
|
-
send(provider: ContractProvider, message: Cell): Promise<void>;
|
|
38
|
-
/**
|
|
39
|
-
* Sign and send transfer
|
|
40
|
-
*/
|
|
41
|
-
sendTransfer(provider: ContractProvider, args: {
|
|
42
|
-
seqno: number;
|
|
43
|
-
secretKey: Buffer;
|
|
44
|
-
messages: MessageRelaxed[];
|
|
45
|
-
sendMode?: Maybe<SendMode>;
|
|
46
|
-
timeout?: Maybe<number>;
|
|
47
|
-
}): Promise<void>;
|
|
48
|
-
/**
|
|
49
|
-
* Create transfer
|
|
50
|
-
*/
|
|
51
|
-
createTransfer<T extends WalletV3SendArgsSigned | WalletV3SendArgsSignable>(args: T): T extends WalletV3SendArgsSignable ? Promise<Cell> : Cell;
|
|
52
|
-
/**
|
|
53
|
-
* Create sender
|
|
54
|
-
*/
|
|
55
|
-
sender(provider: ContractProvider, secretKey: Buffer): Sender;
|
|
56
|
-
}
|
|
1
|
+
export * from "./v3/r2";
|
|
@@ -1,105 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
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
|
+
};
|
|
9
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports
|
|
11
|
-
const core_1 = require("@ton/core");
|
|
12
|
-
const createWalletTransfer_1 = require("./signing/createWalletTransfer");
|
|
13
|
-
class WalletContractV3R2 {
|
|
14
|
-
static create(args) {
|
|
15
|
-
return new WalletContractV3R2(args.workchain, args.publicKey, args.walletId);
|
|
16
|
-
}
|
|
17
|
-
constructor(workchain, publicKey, walletId) {
|
|
18
|
-
// Resolve parameters
|
|
19
|
-
this.workchain = workchain;
|
|
20
|
-
this.publicKey = publicKey;
|
|
21
|
-
if (walletId !== null && walletId !== undefined) {
|
|
22
|
-
this.walletId = walletId;
|
|
23
|
-
}
|
|
24
|
-
else {
|
|
25
|
-
this.walletId = 698983191 + workchain;
|
|
26
|
-
}
|
|
27
|
-
// Build initial code and data
|
|
28
|
-
let code = core_1.Cell.fromBoc(Buffer.from('te6cckEBAQEAcQAA3v8AIN0gggFMl7ohggEznLqxn3Gw7UTQ0x/THzHXC//jBOCk8mCDCNcYINMf0x/TH/gjE7vyY+1E0NMf0x/T/9FRMrryoVFEuvKiBPkBVBBV+RDyo/gAkyDXSpbTB9QC+wDo0QGkyMsfyx/L/8ntVBC9ba0=', 'base64'))[0];
|
|
29
|
-
let data = (0, core_1.beginCell)()
|
|
30
|
-
.storeUint(0, 32) // Seqno
|
|
31
|
-
.storeUint(this.walletId, 32)
|
|
32
|
-
.storeBuffer(publicKey)
|
|
33
|
-
.endCell();
|
|
34
|
-
this.init = { code, data };
|
|
35
|
-
this.address = (0, core_1.contractAddress)(workchain, { code, data });
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* Get wallet balance
|
|
39
|
-
*/
|
|
40
|
-
async getBalance(provider) {
|
|
41
|
-
let state = await provider.getState();
|
|
42
|
-
return state.balance;
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* Get Wallet Seqno
|
|
46
|
-
*/
|
|
47
|
-
async getSeqno(provider) {
|
|
48
|
-
let state = await provider.getState();
|
|
49
|
-
if (state.state.type === 'active') {
|
|
50
|
-
let res = await provider.get('seqno', []);
|
|
51
|
-
return res.stack.readNumber();
|
|
52
|
-
}
|
|
53
|
-
else {
|
|
54
|
-
return 0;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* Send signed transfer
|
|
59
|
-
*/
|
|
60
|
-
async send(provider, message) {
|
|
61
|
-
await provider.external(message);
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* Sign and send transfer
|
|
65
|
-
*/
|
|
66
|
-
async sendTransfer(provider, args) {
|
|
67
|
-
let transfer = this.createTransfer(args);
|
|
68
|
-
await this.send(provider, transfer);
|
|
69
|
-
}
|
|
70
|
-
/**
|
|
71
|
-
* Create transfer
|
|
72
|
-
*/
|
|
73
|
-
createTransfer(args) {
|
|
74
|
-
return (0, createWalletTransfer_1.createWalletTransferV3)({
|
|
75
|
-
...args,
|
|
76
|
-
sendMode: args.sendMode ?? core_1.SendMode.PAY_GAS_SEPARATELY,
|
|
77
|
-
walletId: this.walletId
|
|
78
|
-
});
|
|
79
|
-
}
|
|
80
|
-
/**
|
|
81
|
-
* Create sender
|
|
82
|
-
*/
|
|
83
|
-
sender(provider, secretKey) {
|
|
84
|
-
return {
|
|
85
|
-
send: async (args) => {
|
|
86
|
-
let seqno = await this.getSeqno(provider);
|
|
87
|
-
let transfer = this.createTransfer({
|
|
88
|
-
seqno,
|
|
89
|
-
secretKey,
|
|
90
|
-
sendMode: args.sendMode,
|
|
91
|
-
messages: [(0, core_1.internal)({
|
|
92
|
-
to: args.to,
|
|
93
|
-
value: args.value,
|
|
94
|
-
extracurrency: args.extracurrency,
|
|
95
|
-
init: args.init,
|
|
96
|
-
body: args.body,
|
|
97
|
-
bounce: args.bounce
|
|
98
|
-
})]
|
|
99
|
-
});
|
|
100
|
-
await this.send(provider, transfer);
|
|
101
|
-
}
|
|
102
|
-
};
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
exports.WalletContractV3R2 = WalletContractV3R2;
|
|
17
|
+
__exportStar(require("./v3/r2"), exports);
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from
|
|
2
|
-
export * from
|
|
1
|
+
export * from "./v4/WalletContractV4";
|
|
2
|
+
export * from "./v4/WalletContractV4Actions";
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export * from
|
|
2
|
-
export * from
|
|
3
|
-
export * from
|
|
1
|
+
export * from "./v5beta/WalletContractV5Beta";
|
|
2
|
+
export * from "./v5beta/WalletV5BetaActions";
|
|
3
|
+
export * from "./v5beta/WalletV5BetaWalletId";
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export * from
|
|
2
|
-
export * from
|
|
3
|
-
export * from
|
|
1
|
+
export * from "./v5r1/WalletContractV5R1";
|
|
2
|
+
export * from "./v5r1/WalletV5R1Actions";
|
|
3
|
+
export * from "./v5r1/WalletV5R1WalletId";
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* This source code is licensed under the MIT license found in the
|
|
6
6
|
* LICENSE file in the root directory of this source tree.
|
|
7
7
|
*/
|
|
8
|
-
import { Builder, Cell, MessageRelaxed, OutActionSendMsg } from "@ton/core";
|
|
8
|
+
import { Builder, Cell, MessageRelaxed, OutActionSendMsg, SignatureDomain } from "@ton/core";
|
|
9
9
|
import { Maybe } from "../../utils/maybe";
|
|
10
10
|
import { WalletV5BetaPackedCell, WalletV5BetaSendArgs, WalletV5BetaSendArgsExtensionAuth } from "../v5beta/WalletContractV5Beta";
|
|
11
11
|
import { WalletV3SendArgsSignable, WalletV3SendArgsSigned } from "../WalletContractV3Types";
|
|
@@ -17,6 +17,7 @@ export declare function createWalletTransferV1(args: {
|
|
|
17
17
|
sendMode: number;
|
|
18
18
|
message: Maybe<MessageRelaxed>;
|
|
19
19
|
secretKey: Buffer;
|
|
20
|
+
domain?: SignatureDomain;
|
|
20
21
|
}): Cell;
|
|
21
22
|
export declare function createWalletTransferV2(args: {
|
|
22
23
|
seqno: number;
|
|
@@ -24,25 +25,32 @@ export declare function createWalletTransferV2(args: {
|
|
|
24
25
|
messages: MessageRelaxed[];
|
|
25
26
|
secretKey: Buffer;
|
|
26
27
|
timeout?: Maybe<number>;
|
|
28
|
+
domain?: SignatureDomain;
|
|
27
29
|
}): Cell;
|
|
28
30
|
export declare function createWalletTransferV3<T extends WalletV3SendArgsSignable | WalletV3SendArgsSigned>(args: T & {
|
|
29
31
|
sendMode: number;
|
|
30
32
|
walletId: number;
|
|
33
|
+
domain?: SignatureDomain;
|
|
31
34
|
}): T extends WalletV3SendArgsSignable ? Promise<Cell> : Cell;
|
|
32
35
|
export declare function createWalletTransferV4<T extends WalletV4SendArgs & {
|
|
33
36
|
action: OutActionWalletV4;
|
|
34
37
|
}>(args: T & {
|
|
35
38
|
walletId: number;
|
|
39
|
+
domain?: SignatureDomain;
|
|
36
40
|
}): T extends WalletV4SendArgsSignable ? Promise<Cell> : Cell;
|
|
37
|
-
export declare function createWalletTransferV5Beta<T extends WalletV5BetaSendArgs>(args: T extends WalletV5BetaSendArgsExtensionAuth ? T & {
|
|
41
|
+
export declare function createWalletTransferV5Beta<T extends WalletV5BetaSendArgs>(args: (T extends WalletV5BetaSendArgsExtensionAuth ? T & {
|
|
38
42
|
actions: (OutActionSendMsg | OutActionExtended)[];
|
|
39
43
|
} : T & {
|
|
40
44
|
actions: (OutActionSendMsg | OutActionExtended)[];
|
|
41
45
|
walletId: (builder: Builder) => void;
|
|
46
|
+
}) & {
|
|
47
|
+
domain?: SignatureDomain;
|
|
42
48
|
}): WalletV5BetaPackedCell<T>;
|
|
43
|
-
export declare function createWalletTransferV5R1<T extends WalletV5R1SendArgs>(args: T extends Wallet5VR1SendArgsExtensionAuth ? T & {
|
|
49
|
+
export declare function createWalletTransferV5R1<T extends WalletV5R1SendArgs>(args: (T extends Wallet5VR1SendArgsExtensionAuth ? T & {
|
|
44
50
|
actions: (OutActionSendMsg | OutActionExtended)[];
|
|
45
51
|
} : T & {
|
|
46
52
|
actions: (OutActionSendMsg | OutActionExtended)[];
|
|
47
53
|
walletId: (builder: Builder) => void;
|
|
54
|
+
}) & {
|
|
55
|
+
domain?: SignatureDomain;
|
|
48
56
|
}): WalletV5R1PackedCell<T>;
|