OverviewFilesCommitsIssuesDocsReleasesPeers

holepunchto-deps / @holepunchto / keet-push / lib / encoding.js

1 lines · javascript ref:
const e=require("compact-encoding"),o="io.keet.app",d=(global.Pear?global.Pear.config.appId:null)||o,n={preencode(n,r){e.uint.preencode(n,r.version),e.fixed32.preencode(n,r.roomDiscoveryKey),e.buffer.preencode(n,r.payload),d!==o&&e.string.preencode(n,d)},encode(n,r){e.uint.encode(n,r.version),e.fixed32.encode(n,r.roomDiscoveryKey),e.buffer.encode(n,r.payload),d!==o&&e.string.encode(n,d)},decode(d){const n=e.uint.decode(d);if(0!==n&&1!==n)throw new Error("Unknown version: "+n);return{version:n,roomDiscoveryKey:e.fixed32.decode(d),payload:e.buffer.decode(d),appId:d.start<d.end?e.string.decode(d):o}}},r={preencode(o,d){e.buffer.preencode(o,d.proof),e.uint.preencode(o,0),e.buffer.preencode(o,d.attest)},encode(o,d){e.buffer.encode(o,d.proof),e.uint.encode(o,d.attest?1:0),d.attest&&e.buffer.encode(o,d.attest)},decode:o=>({proof:e.buffer.decode(o),attest:1&e.uint.decode(o)?e.buffer.decode(o):null})};module.exports={notification:n,payload:r};