@ibad.one/basex
v1.0.2
Published
Arbitrary-Base Buffer Utility
Downloads
7
Readme
Description
A pure javascript library for Arbitrary-Base Buffer operations.
Built-in support for: Base16 (Hexadecimal), Base32, Base58, Base62, Base64, Base64URI
Installing
npm install --save @ibad.one/basexAPI
Class: BaseX
- Static methods:
- from_int(src[, base, endian])
- to_int(src[, base, endian])
- from(src[, decode_cb, state_init, endian])
- from_str(src)
- from_b64(buff[, alphabet, pad])
- from_b32(buff[, alphabet, pad])
- to(src[, encode_cb, state_init, endian])
- to_str(x)
- to_b64(buff[, alphabet, pad])
- to_b32(buff[, alphabet, pad])
- shift(x, c)
- cmp(x_a, x_b)
- add(x_a, x_b[, base])
- sub(x_a, x_b[, base])
- mult_byte(x_a, c[, base])
- mult(x_a, x_b[, base])
- div_byte(x_a, c[, base])
- convert(x, base_s, base_d)
- make_encoder(alphabet[, mode])
- Static fields:
Class: IntegralBaseX
- Instance methods:
- Instances:
Class: BaseCustomX
- Instance methods:
- Instances:
Class: BaseX
An Arbitrary-Base Buffer Utility
Static method: from_int(src[, base, endian])
src: <number>base: <number>endian: <number> <0 (default) for little-endian, >=0 for big-endian- Returns: <Uint8Array>
Static method: to_int(src[, base, endian])
src: <Uint8Array>base: <number>- Returns: <number>
Static method: from(src[, decode_cb, state_init, endian])
src: <string>decode_cb: <CallableFunction> | <string> | null (default, null)state_init: <Object> Initial state for decoder (default, {})endian: <number> <0 (default) for little-endian, >=0 for big-endian- Returns: <Uint8Array>
Static method: from_str(src)
src: <string>- Returns: <Uint8Array>
Static method: from_b64(buff[, alphabet, pad])
buff: <string>alphabet: <string> (default, BaseX.ALPHABET.base64)pad: <string> (default, "=")- Returns: <Uint8Array>
Static method: from_b32(buff[, alphabet, pad])
buff: <string>alphabet: <string> (default, BaseX.ALPHABET.base32)pad: <string> (default, "=")- Returns: <Uint8Array>
Static method: to(src[, encode_cb, state_init, endian])
src: <Uint8Array>encode_cb: <CallableFunction> | <string> | null (default, null)state_init: <Object> Initial state for encoder (default, {})endian: <number> <0 (default) for little-endian, >=0 for big-endian- Returns: <string>
Static method: to_str(x);
x: <Uint8Array>- Returns: <string>
Static method: to_b64(buff[, alphabet, pad])
buff: <Uint8Array>alphabet: <string> (default, BaseX.ALPHABET.base64)pad: <string> (default, "=")- Returns: <string>
Static method: to_b32(buff[, alphabet, pad])
buff: <Uint8Array>alphabet: <string> (default, BaseX.ALPHABET.base32)pad: <string> (default, "=")- Returns: <string>
Static method: shift(x, c)
x: <Uint8Array>c: <number> No. of bits to shift left. Use negative c to shift right.- Returns: <Uint8Array>
Static method: cmp(x_a, x_b)
x_a: <Uint8Array> Left bufferx_b: <Uint8Array> Right buffer- Returns: <number> 0 for equal, <0 for x_a < x_b, >0 for x_a > x_b
Static method: add(x_a, x_b[, base])
x_a: <Uint8Array> Buffer Addendx_b: <Uint8Array> Buffer Addendbase: <number> (default, 256)- Returns: <Uint8Array> The sum of the two buffers
Static method: sub(x_a, x_b[, base])
x_a: <Uint8Array> Buffer Minuendx_b: <Uint8Array> Buffer Subtrahendbase: <number> (default, 256)- Returns: <Uint8Array> The difference of the two buffers
Static method: mult_byte(x_a, c[, base])
x: <Uint8Array> Buffer Multiplicandc: <number> Scalar Multiplicandbase: <number> (default, 256)- Returns: <Uint8Array> Scalar product
Static method: mult(x_a, x_b[, base])
x_a: <Uint8Array> Buffer Multiplicandx_b: <Uint8Array> Buffer Multiplicandbase: <number> (default, 256)- Returns: <Uint8Array> The cross product of the two buffers
Static method: div_byte(x_a, c[, base])
x: <Uint8Array> Buffer Dividendc: <number> Scalar Divisorbase: <number> (default, 256)- Returns: <Uint8Array> Quotient
Static method: convert(x, base_s, base_d)
x: <Uint8Array> Bufferbase_s: <number> Source basebase_d: <number> Destination base- Returns: <Uint8Array> Buffer converted from bases_s to base_d
Static method: make_encoder(alphabet[, mode])
alphabet: <string>mode: <{0|1}> 0 (default) for encode, 1 for decode- Returns: <CallableFunction> Encoder or decoder function
Static field: ALPHABET
List of built-in alphabets for encoding, as follows:
- base16: "0123456789ABCDEF"
- base32: "ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"
- base58: "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"
- base62: "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
- base64: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"
- base64uri: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"
Class: IntegralBaseX
A template for a Base interpreter using a specified base and alphabet, using an integral approach. That is, string inputs will be treated as a big endian buffer stream, that will first be converted to little-endian before conversions.
Instance method: constructor(base, alphabet)
base: <number>alphabet: <string>|null (default, null)
Instance method: from_buff(x)
x: <Uint8Array> Plaintext buffer- Returns: <string> BaseX encoded Encodes a plaintext buffer into the instance's encoding scheme
Instance method: from(src)
src: <string> Plaintext string- Returns: <string> BaseX encoded Encodes a plaintext string into the instance's encoding scheme
Instance method: from_int(val)
val: <number> Plaintext integer- Returns: <string> BaseX encoded Encodes a plaintext integer into the instance's encoding scheme
Instance method: to_buff(src)
src: <string> BaseX encoded string- Returns: <Uint8Array> Buffer Decodes a BaseX encoded string into a buffer
Instance method: to(src)
src: <string> BaseX encoded string- Returns: <string> Plaintext string Decodes a BaseX encoded string into a plaintext string
Instance method: to_int(src)
src: <string> BaseX encoded string- Returns: <number> Plaintext integer Decodes a BaseX encoded string into a plaintext number
Instance: Base16
Instance: Base58
Instance: Base62
Class: BaseCustomX
A template for a Base interpreter using a specified base and alphabet, using an arbitrary encoder and decoder. Buffer and alphabet will be fed to the encoder / decoder as-is.
Instance method: constructor(base, alphabet)
base: <number>alphabet: <string>|null (default, null)
Instance method: from_buff(x)
x: <Uint8Array> Plaintext buffer- Returns: <string> BaseX encoded Encodes a plaintext buffer into the instance's encoding scheme
Instance method: from(src)
src: <string> Plaintext string- Returns: <string> BaseX encoded Encodes a plaintext string into the instance's encoding scheme
Instance method: from_int(val)
val: <number> Plaintext integer- Returns: <string> BaseX encoded Encodes a plaintext integer into the instance's encoding scheme
Instance method: to_buff(src)
src: <string> BaseX encoded string- Returns: <Uint8Array> Buffer Decodes a BaseX encoded string into a buffer
Instance method: to(src)
src: <string> BaseX encoded string- Returns: <string> Plaintext string Decodes a BaseX encoded string into a plaintext string
Instance method: to_int(src)
src: <string> BaseX encoded string- Returns: <number> Plaintext integer Decodes a BaseX encoded string into a plaintext number
Instance: Base32
Instance: Base64
Instance: Base64URI
License
Copyright © 2024 Josh Ibad. All rights reserved.
REFER to Ibad.one Commercial & Proprietary License in "LICENSE"
