UNPKG

bsso

Version:

Bloomberg SSO js utilities

22 lines (21 loc) 809 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.base64UrlEncode = exports.sha256 = exports.generateRandomString = void 0; const js_base64_1 = require("js-base64"); const js_sha256_1 = require("js-sha256"); function slice(uint32) { return ('0' + uint32.toString(16)).slice(-1); } function generateRandomString(length) { const array = global.crypto.getRandomValues(new Uint32Array(length)); return Array.from(array, slice).join(''); } exports.generateRandomString = generateRandomString; function sha256(str) { return js_sha256_1.sha256.create().update(str).arrayBuffer(); } exports.sha256 = sha256; function base64UrlEncode(hashBuf) { return js_base64_1.Base64.fromUint8Array(new Uint8Array(hashBuf), true); } exports.base64UrlEncode = base64UrlEncode;