UNPKG

@webex/common

Version:

Common utilities for Cisco Webex

77 lines (70 loc) 1.94 kB
"use strict"; var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property"); var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault"); _Object$defineProperty(exports, "__esModule", { value: true }); exports.decode = decode; exports.default = void 0; exports.encode = encode; exports.fromBase64url = fromBase64url; exports.toBase64Url = toBase64Url; exports.validate = validate; var _urlsafeBase = _interopRequireDefault(require("urlsafe-base64")); var _safeBuffer = require("safe-buffer"); var _isBuffer = _interopRequireDefault(require("./isBuffer")); /*! * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file. */ /** * Converts a string from a base64url-encoded string * @param {string} str * @returns {string} */ function fromBase64url(str) { return _urlsafeBase.default.decode(str).toString(); } /** * Converts a string to a base64url-encoded string. It also accepts a buffer * @param {string|buffer} str * @returns {string} */ function toBase64Url(str) { var buffer = str; if (!(0, _isBuffer.default)(buffer)) { buffer = _safeBuffer.Buffer.from(buffer); } return _urlsafeBase.default.encode(buffer); } /** * Converts a string to a base64url-encoded string. It also accepts a buffer * @param {string|buffer} str * @returns {string} */ function encode(str) { return toBase64Url(str); } /** * Converts a string from a base64url-encoded string * @param {string} str * @returns {string} */ function decode(str) { return fromBase64url(str); } /** * Indicates if the provided string is, in fact, a base64 string * @param {String} str * @returns {Boolean} */ function validate(str) { return _urlsafeBase.default.validate(str); } var _default = exports.default = { fromBase64url: fromBase64url, toBase64Url: toBase64Url, encode: encode, decode: decode, validate: validate }; //# sourceMappingURL=base64.js.map