diff options
Diffstat (limited to 'node_modules/blake3-wasm/esm/browser/encoding.js')
| -rw-r--r-- | node_modules/blake3-wasm/esm/browser/encoding.js | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/node_modules/blake3-wasm/esm/browser/encoding.js b/node_modules/blake3-wasm/esm/browser/encoding.js new file mode 100644 index 0000000..0b6d1e4 --- /dev/null +++ b/node_modules/blake3-wasm/esm/browser/encoding.js @@ -0,0 +1,28 @@ +// A small collection of encodings for convenience of use in the browser. +const decoder = new TextDecoder(); +const encoders = { + // certainly not the fastest, but hashes are pretty small + base64: data => btoa(String.fromCharCode(...data)), + hex: data => { + let out = ''; + for (const byte of data) { + if (byte < 0x10) { + out += '0'; + } + out += byte.toString(16); + } + return out; + }, + utf8: data => decoder.decode(data), +}; +/** + * @hidden + */ +export const mustGetEncoder = (encoding) => { + const encoder = encoders[encoding]; + if (!encoder) { + throw new Error(`Unknown encoding ${encoding}`); + } + return encoder; +}; +//# sourceMappingURL=encoding.js.map
\ No newline at end of file |
