nexaaddrjs
v1.1.2
Published
Nexa address format support for Node.js and web browsers.
Downloads
119
Maintainers
Readme
NexaAddr.js: The Nexa address format for Node.js and web browsers.
JavaScript implementation for the Nexa cryptocurrency address format.
Compliant with the Nexa address specification.
Installation
Using NPM
$ npm install --save nexaaddrjs
Using Bower
$ bower install --save nexaaddrjs
Manually
You may also download the distribution file manually and place it within your third-party scripts directory: dist/nexaaddrjs-1.1.1.min.js.
Usage
In Node.js
const nexaaddr = require('nexaaddrjs');
const address = 'nexatest:qzmzm493h5j67z2zk2lsag4qeye02x5pxyrlswqv76';
const { prefix, type, hash } = nexaaddr.decode(address);
console.log(prefix); // 'nexatest'
console.log(type); // 'P2PKH'
console.log(hash); // Uint8Array [... ]
console.log(nexaaddr.encode(prefix, type, hash)); // 'nexatest:qzmzm493h5j67z2zk2lsag4qeye02x5pxyrlswqv76'
Example with bitcore-lib
This example decodes a Nexa cashaddr P2PKH address and loads it into a bitcore-lib Address. Even though bitcore-lib is for Bitcoin, Nexa P2PKH is equivalent to Bitcoin/Bitcoin Cash P2PKH so some bitcore-lib operations apply.
var bitcore = require("bitcore-lib");
var nexaaddr = require("nexaaddrjs");
const fixAddressFormat = address => {
let addrBytes = nexaaddr.decode(address);
let buf = addrBytes.hash.buffer.slice(1,21); // ignore the type byte
let buf2 = Buffer.from(buf);
console.log(buf);
console.log(buf2);
return bitcore.Address.fromPublicKeyHash(buf2, "livenet")
}
Browser
Script Tag
You may include a script tag in your HTML and the cashaddr
module will be defined globally on subsequent scripts.
<html>
<head>
...
<script src="https://unpkg.com/[email protected]/dist/nexaaddrjs-1.1.1.min.js"></script>
</head>
...
</html>
Documentation
Generate and Browse Locally
$ npm run docs
Online
Browse automatically generated jsdocs online.