@4us-dev/crypto
Version:
Utility classes to assist developers during software development
21 lines (20 loc) • 696 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.base64UrlToBase64 = void 0;
var index_1 = require("../index");
var base64RegExp = /^[a-zA-Z0-9_-]*$/;
var base64UrlToBase64 = function (base64url) {
return base64url.replace(/-/g, '+').replace(/_/g, '/');
};
exports.base64UrlToBase64 = base64UrlToBase64;
/**
* See https://tools.ietf.org/html/rfc4648#section-5 to more information
* @param value
*/
var decode = function (value) {
if (!base64RegExp.test(value)) {
throw new TypeError('value is not a valid base64url encoded string');
}
return index_1.base64.decode((0, exports.base64UrlToBase64)(value));
};
exports.default = decode;