@azure/communication-common
Version:
Common package for Azure Communication services.
29 lines • 1.09 kB
JavaScript
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.
import { AzureKeyCredential } from "@azure/core-auth";
// TODO: update when connection string format is finalized
const CONNECTION_STRING_REGEX = /endpoint=(.*);accesskey=(.*)/i;
const tryParseConnectionString = (s) => {
const match = s.match(CONNECTION_STRING_REGEX);
if (match?.[1] && match[2]) {
return { endpoint: match[1], credential: new AzureKeyCredential(match[2]) };
}
return undefined;
};
/**
* Returns an EndpointCredential to easily access properties of the connection string.
* @hidden
*
* @param connectionString - The connection string to parse
* @returns Object to access the endpoint and the credentials
*/
export const parseConnectionString = (connectionString) => {
const parsedConnectionString = tryParseConnectionString(connectionString);
if (parsedConnectionString) {
return parsedConnectionString;
}
else {
throw new Error(`Invalid connection string ${connectionString}`);
}
};
//# sourceMappingURL=connectionString.js.map