UNPKG

@krebitdao/reputation-passport

Version:

Krebit SDK for Verified Credentials

31 lines (30 loc) 893 B
const encodeb64 = (uintarray) => { const b64 = Buffer.from(uintarray).toString('base64'); return b64; }; const blobToBase64 = async (blob) => { const arrayBuffer = await blob.arrayBuffer(); const b64 = Buffer.from(arrayBuffer).toString('base64'); return b64; }; const decodeb64 = (b64String) => { return new Uint8Array(Buffer.from(b64String, 'base64')); }; // utility to create an ordered array of the given input (of the form [[key:string, value:string], ...]) const objToSortedArray = (obj) => { const keys = Object.keys(obj).sort(); return keys.reduce((out, key) => { out.push([key, obj[key]]); return out; }, []); }; const arrayToObject = (arr) => { return arr.reduce((o, key) => ({ ...o, [key[0]]: key[1] }), {}); }; export const base64 = { encodeb64, blobToBase64, decodeb64, objToSortedArray, arrayToObject };