@datastax/astra-db-ts
Version:
Data API TypeScript client
28 lines (27 loc) • 1.12 kB
JavaScript
// Copyright Datastax, Inc
// SPDX-License-Identifier: Apache-2.0
var _StaticTokenProvider_token;
import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
import { TokenProvider } from '../../lib/token-providers/token-provider.js';
import { HeadersProvider, PureHeadersProvider } from '../../lib/headers-providers/index.js';
export class StaticTokenProvider extends TokenProvider {
constructor(token) {
super();
_StaticTokenProvider_token.set(this, void 0);
__classPrivateFieldSet(this, _StaticTokenProvider_token, token, "f");
}
getToken() {
return __classPrivateFieldGet(this, _StaticTokenProvider_token, "f");
}
toHeadersProvider() {
// eslint-disable-next-line @typescript-eslint/no-this-alias -- necessary in this case
const tp = this;
const hp = new (class extends PureHeadersProvider {
getHeaders(ctx) {
return tp._mkAuthHeader(ctx)(tp.getToken());
}
})();
return HeadersProvider.opts.fromObj.parse(hp);
}
}
_StaticTokenProvider_token = new WeakMap();