UNPKG

diamante-js-xdr

Version:

Read/write XDR encoded data structures (RFC 4506)

31 lines (24 loc) 698 B
import * as XDR from '../src'; let xdr = XDR.config((xdr) => { xdr.struct('Signature', [ ['publicKey', xdr.opaque(32)], ['data', xdr.opaque(32)] ]); xdr.struct('Envelope', [ ['body', xdr.varOpaque(1000)], ['timestamp', xdr.uint()], ['signature', xdr.lookup('Signature')] ]); }); let sig = new xdr.Signature(); sig.publicKey(Buffer.alloc(32)); sig.data(Buffer.from('00000000000000000000000000000000')); let env = new xdr.Envelope({ signature: sig, body: Buffer.from('hello'), timestamp: Math.floor(new Date() / 1000) }); let output = env.toXDR(); let parsed = xdr.Envelope.fromXDR(output); console.log(env); console.log(parsed);