Socket
Socket
Sign inDemoInstall

@kibcode/tonlib-node

Package Overview
Dependencies
14
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @kibcode/tonlib-node

TonLib Node JS implementation based on FFI-NAPI library.


Version published
Weekly downloads
1
Maintainers
1
Created
Weekly downloads
 

Readme

Source

TonLib Node JS

TonLib Node JS implementation based on FFI-NAPI library.

Supported Operating Systems

  • Ubuntu 18
  • Windows x86_64
  • Mac OS 10.15

Installation

yarn

yarn add @kibcode/tonlib-node

npm

npm i @kibcode/tonlib-node

Examples

Common usage

/**
 * This example shows common usage of TonLib Node JS client.
 */

import {Client} from './src';
import {testInitConfig} from './test-init-config';

(async () => {
  // Create tonlib client.
  const client = new Client();

  // Let's listen to all events coming from tonlib. It is worth paying attention
  // to the fact, that you will additionally receive messages which are request
  // responses as long as responses are events.
  //
  // So, when you call client.request, you will see its response event here too.
  client.on(data => console.log('Hey, I got some data!', data));

  // Send command to decrease count of logs, received from tonlib.
  client.send({'@type': 'setLogVerbosityLevel', 'new_verbosity_level': 1});

  // For future examples, lets define function which gets some address
  // information.
  function getAddressInformation(timeout: number) {
    return client
      .request({
        '@type': 'getAccountState',
        account_address: {
          '@type': 'accountAddress',
          account_address: 'EQAogu1aTrj2GWzA3BsHGxadmOTheuRubH5GY54XSRFr497x'
        }
      }, {timeout})
      .then(i => console.log('Address information:', i))
      .catch(e => console.log('Error while getting address information:', e));
  }

  // Then, lets try to get it.
  // At this stage, it is known that we will get an error connected with
  // tonlib internal initialization state.
  await getAddressInformation(10000);

  // So, to solve this problem, we should firstly send init request.
  await client.request(testInitConfig).then(r => console.log('Init result:', r));

  // Finally, we can now get address information.
  await getAddressInformation(30000);
})();

Usage with types generator

/**
 * This example shows how to use TonLib Node JS client along with types,
 * generated with TypesGenerator.
 *
 * You can find more information about generating types via separate
 * package @ton.js/types-generator or use already generated types placed in
 * @ton.js/types
 */

import {Client} from './src';
import {TonLib} from '@ton.js/types';

// Create TonLib Node client instance.
const client = new Client();

// Use send method with specified type which we received from generator.
// Type usage will make us to pass all the fields required for this type
// and as a result, we will not receive any error.
client.send<TonLib.Combinators.SetLogVerbosityLevel>({
  '@type': 'setLogVerbosityLevel',
  new_verbosity_level: 1,
});

FAQs

Last updated on 12 Apr 2022

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc