Module that supports parsing / parsing of all the different ethereum standard urls: ERC-681 and ERC-831
This module contains two functions:
Takes in a string of an Ethereum URL and returns an object matching that URL according to the previously mentioned standards The returned object looks like this:
{
scheme: 'ethereum',
target_address: '0x1234DEADBEEF5678ABCD1234DEADBEEF5678ABCD', // ENS names are also supported!
chain_id: '1',
parameters: {
'value': '2014000000000000000', // (in WEI)
'gas': '45000', // can be also gasLimit
'gasPrice': '50',
}
}
Takes in an object representing the different parts of the ethereum url and returns a string representing a valid ethereum url
$ npm install eth-url-parser --save
import { parse, build } from 'eth-url-parser';
const parsedUrl = parse('ethereum:0x1234DEADBEEF5678ABCD1234DEADBEEF5678ABCD')
console.log(parseUrl.target_address)
// '0x1234DEADBEEF5678ABCD1234DEADBEEF5678ABCD'
const url = build({
scheme: 'ethereum',
prefix: 'pay',
target_address: '0x1234DEADBEEF5678ABCD1234DEADBEEF5678ABCD'
});
console.log(url);
// 'ethereum:pay-0x1234DEADBEEF5678ABCD1234DEADBEEF5678ABCD'
MIT
This repo is a combination of erc681 (by @parity-js) and eip681 (by tokenkit)