3.0.2 • Published 5 months ago
@tonkite/highload-wallet-v3 v3.0.2
Description
Wrapper for interacting with the highload-wallet-v3
contract.
Installation
Using npm:
npm install --save @tonkite/highload-wallet-v3
Using Yarn:
yarn add @tonkite/highload-wallet-v3
Using pnpm:
pnpm add @tonkite/highload-wallet-v3
Quick Start
Initialize TonClient
, HighloadWalletV3
, HighloadWalletV3QueryIdSequnce
:
import { TonClient } from '@ton/ton';
import { HighloadWalletV3 } from '@tonkite/highload-wallet-v3';
/* ... */
// NOTE: You may also use `TonClient4` from `@ton/ton` package.
const tonClient = new TonClient({
endpoint: 'https://toncenter.com/api/v2/jsonRPC',
apiKey: 'YOUR API KEY',
});
const queryIdSequence = HighloadWalletV3.newSequence(); // or `HighloadWalletV3.restoreSequence(xxx)`
const wallet = tonClient.open(new HighloadWalletV3(queryIdSequence, keyPair.publicKey));
Send a batch of messages:
import { Address, SendMode, internal, toNano, comment } from '@ton/core';
/* ... */
await wallet.sendBatch(keyPair.secretKey, {
messages: [
{
mode: SendMode.PAY_GAS_SEPARATELY,
message: internal({
to: Address.parse('UQDz0wQL6EEdgbPkFgS7nNmywzr468AvgLyhH7PIMALxPEND'),
value: toNano('0.005'),
body: comment('Hello Tonkite!'),
}),
},
/* ... */
],
/*
* NOTE: This it subtotal for all messages + fees.
* This value can be omitted, but it's recommended to specify it.
* Otherwise, batches will be sent in different blocks (e.a. time-consuming).
*/
valuePerBatch: toNano('0.015'),
/*
* NOTE: Time-shift because time may be out of sync.
* The contract accepts older messages, but not those ahead of time.
*/
createdAt: Math.floor(Date.now() / 1000) - 60,
});
this.sequence.next();
Store a final sequence state during a timeout
time-window:
// Store it somewhere after all the operations:
const lastValue = queryIdSequence.current();
/* ... */
// Restore it next time:
const queryIdSequence = HighloadWalletV3.restoreSequence(lastValue);
Emergency Mode
For emergency cases, the wrapper supports emergency mode. A special request identifier is reserved for this, which is not generated in normal mode.
To use emergency mode:
const queryIdSequence = HighloadWalletV3.emergencySequence();
License
Tonkite is Apache 2.0 licensed.
3.0.2
5 months ago
3.0.1
5 months ago
3.0.0
5 months ago
2.0.11
5 months ago
2.0.10
11 months ago
2.0.9
11 months ago
2.0.8
11 months ago
2.0.7
11 months ago
2.0.6
11 months ago
2.0.5
11 months ago
2.0.4
11 months ago
2.0.3
11 months ago
2.0.2
11 months ago
2.0.1
11 months ago
2.0.0
11 months ago
1.0.2
11 months ago
1.0.1
11 months ago
1.0.0
11 months ago