UNPKG

@azure/msal-browser

Version:
45 lines (42 loc) 1.4 kB
/*! @azure/msal-browser v4.12.0 2025-05-06 */ 'use strict'; import { createBrowserAuthError } from '../error/BrowserAuthError.mjs'; import { invalidBase64String } from '../error/BrowserAuthErrorCodes.mjs'; /* * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. */ /** * Class which exposes APIs to decode base64 strings to plaintext. See here for implementation details: * https://developer.mozilla.org/en-US/docs/Glossary/Base64#the_unicode_problem */ /** * Returns a URL-safe plaintext decoded string from b64 encoded input. * @param input */ function base64Decode(input) { return new TextDecoder().decode(base64DecToArr(input)); } /** * Decodes base64 into Uint8Array * @param base64String */ function base64DecToArr(base64String) { let encodedString = base64String.replace(/-/g, "+").replace(/_/g, "/"); switch (encodedString.length % 4) { case 0: break; case 2: encodedString += "=="; break; case 3: encodedString += "="; break; default: throw createBrowserAuthError(invalidBase64String); } const binString = atob(encodedString); return Uint8Array.from(binString, (m) => m.codePointAt(0) || 0); } export { base64DecToArr, base64Decode }; //# sourceMappingURL=Base64Decode.mjs.map