UNPKG

@hazae41/base64

Version:

Base64 adapter for JS implementations

34 lines (30 loc) 1.08 kB
'use strict'; var buffers = require('../../../libs/buffers/buffers.cjs'); var bytes = require('../../../libs/bytes/bytes.cjs'); var index = require('../native/index.cjs'); function fromNativeOrBuffer() { if ("fromBase64" in Uint8Array) return index.fromNative(); return fromBuffer(); } function fromBuffer() { return { encodePaddedOrThrow(bytes) { const unpadded = buffers.Buffers.fromView(bytes).toString("base64url"); const repadded = unpadded + "=".repeat((4 - unpadded.length % 4) % 4); return repadded; }, decodePaddedOrThrow(text) { return bytes.Bytes.fromView(Buffer.from(text, "base64url")); }, encodeUnpaddedOrThrow(bytes) { return buffers.Buffers.fromView(bytes).toString("base64url"); }, decodeUnpaddedOrThrow(text) { return bytes.Bytes.fromView(Buffer.from(text, "base64url")); } }; } exports.fromBuffer = fromBuffer; exports.fromNativeOrBuffer = fromNativeOrBuffer; //# sourceMappingURL=index.cjs.map