Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 400,000 packages pre-installed, including bancorx with all npm packages installed. Try it out:

var bancorx = require("bancorx")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

bancorx v0.2.1

BancorX Utility

BancorX utility

Collection of useful Javascript (Typescript) methods used for BancorX.

Wallet (Lynx/Scatter, etc...) transfer actions are not included.

Install

Using Yarn:

yarn add bancorx

or using NPM:

npm install --save bancorx

Import Module

CommonJS

const bancorx = require("bancorx");

Typescript (ES6)

import * as bancorx from "bancorx";

Relays

symbolcodeaccountprecision
EOSeosio.tokenbnt2eoscnvrt4
BNTbntbntbntbntbnt2eoscnvrt10
ZOSzosdiscountsbancorc111514
IQeveripediaiqbancorc111233
PGLprospectorsgbancorc111134
CUSDstablecarbonbancorc111442
DICEbetdicetokenbancorc111252
BLACKeosblackteambancorc111114
CETeosiochaincebancorc111144
EPRAepraofficialbancorc111244
MEETONEeosiomeetonebancorc111224
ZKSzkstokensr4ubancorc111420
OCTocttothemoonbancorc111324
KARMAtherealkarmabancorc111124
HVThirevibeshvtbancorc111314
HORUShorustokeniobancorc111214
MEVeosvegascoinbancorc111344

Get Relay Balances

eosjs is required to use get_currency_balance method.

const {code, account, symbol} = bancorx.relays.CUSD;
const balance = await rpc.get_currency_balance(code, account, symbol);
// => [ '24874.22 CUSD' ]

API

Table of Contents

bancorFormula

Bancor Formula

  • token balance of EOS (eosio.token) in the relay: 77814.0638 EOS
  • token balance of BNT (bntbntbntbnt) in the relay: 429519.5539120331 BNT
Formula:
1.0000 / (77814.0638 + 1.0000) * 429519.5539120331
// => 5.519748143058556

Parameters

  • balanceFrom number from token balance in the relay
  • balanceTo number to token balance in the relay
  • amount number amount to convert

Examples

const balanceFrom = 77814.0638 // EOS
const balanceTo = 429519.5539120331 // BNT
const amount = 1

bancorx.bancorFormula(balanceFrom, balanceTo, amount)
// => 5.519748143058556

Returns number computed amount

bancorInverseFormula

Bancor Inverse Formula

  • token balance of EOS (eosio.token) in the relay: 77814.0638 EOS
  • token balance of BNT (bntbntbntbnt) in the relay: 429519.5539120331 BNT
Inverse Formula:
77814.0638 / (1.0 - 1 / 429519.5539120331) - 77814.0638
// => 0.18116577989712823

Parameters

  • balanceFrom number from token balance in the relay
  • balanceTo number to token balance in the relay
  • amountDesired number amount to desired

Examples

const balanceFrom = 77814.0638 // EOS
const balanceTo = 429519.5539120331 // BNT
const amountDesired = 1

bancorx.bancorInverseFormula(balanceFrom, balanceTo, amountDesired)
// => 0.18116577989712823

Returns number computed desired amount

parseMemo

Parse Memo

Parameters

  • converters Array<Converter> relay converters
  • minReturn number minimum return
  • destAccount string destination acccount
  • version number bancor protocol version (optional, default 1)

Examples

const CUSD = bancorx.relays.CUSD;
const BNT = bancorx.relays.BNT;

// Single converter (BNT => CUSD)
bancorx.parseMemo([CUSD], "3.17", "<account>")
// => "1,bancorc11144 CUSD,3.17,<account>"

// Multi converter (EOS => BNT => CUSD)
bancorx.parseMemo([BNT, CUSD], "3.17", "<account>")
// => "1,bnt2eoscnvrt BNT bancorc11144 CUSD,3.17,<account>"

Returns string computed memo

parseBalance

Parse Balance

Parameters

Examples

bancorx.parseBalance("10.0000 EOS") // => {quantity: 10.0, symbol: "EOS"}
bancorx.parseBalance(10.0) // => {quantity: 10.0}

Returns Object parsed balance

relays

Relays

Examples

bancorx.relays.BNT
// => { code: "bntbntbntbnt", account: "bnt2eoscnvrt", symbol: "BNT", precision: 10 }

bancorx.relays.CUSD
// => { code: "stablecarbon", account: "bancorc11144", symbol: "CUSD", precision: 2 }

Metadata

RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free