UNPKG

lesca-atobtoa

Version:

encode / decode data to base64

21 lines (20 loc) 661 B
const n = typeof window > "u", a = n ? (o) => Buffer.from(o).toString("base64") : window.btoa, s = n ? (o) => Buffer.from(o, "base64").toString() : window.atob, c = (o, e = 1) => { let t = ""; return a(encodeURIComponent(escape(JSON.stringify(o)))).split("").forEach((r) => { t += String.fromCharCode(r.charCodeAt(0) + e); }), t; }, f = (o, e = 1) => { try { let t = ""; return o.split("").forEach((r) => { t += String.fromCharCode(r.charCodeAt(0) - e); }), JSON.parse(unescape(decodeURIComponent(s(t)))); } catch { return !1; } }, d = { toBase64: c, toJson: f }; export { d as default, c as toBase64, f as toJson };