UNPKG

@datastax/astra-db-ts

Version:
25 lines (24 loc) 1.02 kB
"use strict"; // Copyright Datastax, Inc // SPDX-License-Identifier: Apache-2.0 Object.defineProperty(exports, "__esModule", { value: true }); exports.UsernamePasswordTokenProvider = void 0; const utils_js_1 = require("../../lib/utils.js"); const static_token_provider_js_1 = require("../../lib/token-providers/static-token-provider.js"); class UsernamePasswordTokenProvider extends static_token_provider_js_1.StaticTokenProvider { constructor(username, password) { super(`Cassandra:${encodeB64(username)}:${encodeB64(password)}`); } } exports.UsernamePasswordTokenProvider = UsernamePasswordTokenProvider; const encodeB64 = (0, utils_js_1.forJSEnv)({ server: (input) => { return Buffer.from(input, 'utf-8').toString('base64'); }, browser: (input) => { return window.btoa(input); }, unknown: () => { throw new Error('Unable to encode username/password to base64... please provide the "Cassandra:[username_b64]:[password_b64]" token manually'); }, });