@4us-dev/crypto
Version:
Utility classes to assist developers during software development
18 lines (17 loc) • 745 B
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var __1 = require("../");
var isBrowser_1 = __importDefault(require("../isBrowser"));
/**
* See https://tools.ietf.org/html/rfc7636#section-4.2 to more information
*/
exports.default = (function (codeVerifier) {
if ((0, isBrowser_1.default)()) {
throw new Error('No support for codeChallengeGenerator() in the browser, use codeChallengeGeneratorAsync()');
}
var valueHashed = (0, __1.sha256)(codeVerifier);
return __1.base64Url.base64ToBase64Url(Buffer.from(valueHashed, 'hex').toString('base64'));
});