base45-ts
v1.0.3
Published
type-safe base45 encoder and decoder
Downloads
1,109
Readme
base45 typescript implementation
Simple typescript base45 (charset of Qr codes, alphanumeric mode) encoder/decoder.
This library exports an ES module, together with the required type annotations.
Example
import * as b45 from "base45-ts";
const buffer : Uint8Array = new TextEncoder().encode('Hello!')
const e : string = b45.encode(buffer);
console.log(e); // Will output %69 VD92EX0"
const d = b45.decode('%69 VD92EX0')
console.log(d); // will output 'Uint8Array(7) [72, 101, 108, 108, 111, 33, 33]'
const d = b45.decodeToUtf8String('%69 VD92EX0')
console.log(d); // will output 'Hello!'
Exported functions
decode
decode(utf8StringArg: string): Uint8Array
Decode a base45-encoded string
Parameters
- utf8StringArg,
string
: A base45-encoded string
Returns
An Uint8Array
containing the decoded data
decodeToUtf8String
decodeToUtf8String(utf8StringArg: string): string
Same as decode, but returns a string instead of a typed array. If the base45-encoded data was not valid UTF-8, throws an error.
Parameters
- utf8StringArg,
string
: base45-encoded string representing an utf8 string
Returns
the decoded string
encode
encode(byteArrayArg: Uint8Array | number[]): string
Encode binary data to base45
Parameters
- byteArrayArg:
Uint8Array | number[]
An array of bytes to encode
Returns
a base45-encoded string
Development
This library doesn't have any dependency.
- Build the code with
npm run build
- Test with
npm test