@endo/base64
Advanced tools
Comparing version 0.2.21 to 0.2.22
@@ -6,2 +6,11 @@ # Change Log | ||
### [0.2.22](https://github.com/endojs/endo/compare/@endo/base64@0.2.21...@endo/base64@0.2.22) (2022-04-12) | ||
### Bug Fixes | ||
* **base64:** ensure `decodeBase64` returns a `Uint8Array` ([24f88b5](https://github.com/endojs/endo/commit/24f88b520c3098b3200d03c073d66de4bc87916e)) | ||
### [0.2.21](https://github.com/endojs/endo/compare/@endo/base64@0.2.20...@endo/base64@0.2.21) (2022-03-07) | ||
@@ -8,0 +17,0 @@ |
{ | ||
"name": "@endo/base64", | ||
"version": "0.2.21", | ||
"version": "0.2.22", | ||
"description": "Transcodes base64", | ||
@@ -39,3 +39,3 @@ "keywords": [ | ||
"devDependencies": { | ||
"@endo/eslint-config": "^0.4.6", | ||
"@endo/eslint-config": "^0.4.7", | ||
"ava": "^3.12.1", | ||
@@ -51,3 +51,3 @@ "babel-eslint": "^10.0.3", | ||
"prettier": "^1.19.1", | ||
"typescript": "~4.5.5" | ||
"typescript": "~4.6.2" | ||
}, | ||
@@ -79,3 +79,3 @@ "files": [ | ||
}, | ||
"gitHead": "9ddd58b4a26755cdba9403b0cb042b2067c69832" | ||
"gitHead": "59e511891ab67f4fa52d67141510974e22362134" | ||
} |
@@ -63,3 +63,16 @@ // @ts-check | ||
// The XS Base64.decode function is faster, but might return ArrayBuffer (not | ||
// Uint8Array). Adapt it to our needs. | ||
const adaptDecoder = nativeDecodeBase64 => (...args) => { | ||
const decoded = nativeDecodeBase64(...args); | ||
if (decoded instanceof Uint8Array) { | ||
return decoded; | ||
} | ||
return new Uint8Array(decoded); | ||
}; | ||
/** @type {typeof jsDecodeBase64} */ | ||
export const decodeBase64 = | ||
globalThis.Base64 !== undefined ? globalThis.Base64.decode : jsDecodeBase64; | ||
globalThis.Base64 !== undefined | ||
? adaptDecoder(globalThis.Base64.decode) | ||
: jsDecodeBase64; |
@@ -65,3 +65,4 @@ // @ts-check | ||
/** @type {typeof jsEncodeBase64} */ | ||
export const encodeBase64 = | ||
globalThis.Base64 !== undefined ? globalThis.Base64.encode : jsEncodeBase64; |
28176
151