UNPKG

@azure/communication-common

Version:
69 lines (68 loc) 2.88 kB
var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __hasOwnProp = Object.prototype.hasOwnProperty; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); var azureCommunicationTokenCredential_exports = {}; __export(azureCommunicationTokenCredential_exports, { AzureCommunicationTokenCredential: () => AzureCommunicationTokenCredential }); module.exports = __toCommonJS(azureCommunicationTokenCredential_exports); var import_autoRefreshTokenCredential = require("./autoRefreshTokenCredential.js"); var import_staticTokenCredential = require("./staticTokenCredential.js"); var import_tokenParser = require("./tokenParser.js"); var import_entraTokenCredential = require("./entraTokenCredential.js"); class AzureCommunicationTokenCredential { tokenCredential; disposed = false; constructor(tokenOrRefreshOptionsOrEntraOptions) { if (typeof tokenOrRefreshOptionsOrEntraOptions === "string") { this.tokenCredential = new import_staticTokenCredential.StaticTokenCredential( (0, import_tokenParser.parseToken)(tokenOrRefreshOptionsOrEntraOptions) ); } else if ("tokenRefresher" in tokenOrRefreshOptionsOrEntraOptions) { this.tokenCredential = new import_autoRefreshTokenCredential.AutoRefreshTokenCredential(tokenOrRefreshOptionsOrEntraOptions); } else { this.tokenCredential = new import_entraTokenCredential.EntraTokenCredential(tokenOrRefreshOptionsOrEntraOptions); } } /** * Gets an `AccessToken` for the user. Throws if already disposed. * @param abortSignal - An implementation of `AbortSignalLike` to cancel the operation. */ async getToken(options) { this.throwIfDisposed(); const token = await this.tokenCredential.getToken(options); this.throwIfDisposed(); return token; } /** * Disposes the CommunicationTokenCredential and cancels any internal auto-refresh operation. */ dispose() { this.disposed = true; this.tokenCredential.dispose(); } throwIfDisposed() { if (this.disposed) { throw new Error("User credential is disposed"); } } } // Annotate the CommonJS export names for ESM import in node: 0 && (module.exports = { AzureCommunicationTokenCredential }); //# sourceMappingURL=azureCommunicationTokenCredential.js.map