Package Exports
- undio
Readme
⇔ undio
⇔ Conventionally and Safely convert between various JavaScript data types:
And enjoy...
✅ Type-safe usage.
✅ Runtime type safety assertions.
✅ Auto type detection and convertors.
✅ Tree-shakable and compact build.
Usage
Install package:
# ✨ Auto-detect
npx nypm install undio
# npm
npm install undio
# yarn
yarn add undio
# pnpm
pnpm install undio
# bun
bun install undioImport:
ESM (Node.js, Bun)
import {} from "undio";CommonJS (Legacy Node.js)
const {} = require("undio");CDN (Deno, Bun and Browsers)
import {} from "https://esm.sh/undio";Runtime type checking utils
You can use is*(input) ans assert*(input) utils to validate input type.
[!NOTE] All convert utils by default use assertion for runtime type safety and you don't need to manually do this.
Example:
import { isReadableStream, assertArrayBuffer } from "undio";
if (isReadableStream(value)) {
/* do something */
}
assertArrayBuffer(value); // Throws an error if value is not ArrayBuffer
// do somethingAuto Convert utils
You can either use explicit *To*(value) utils (see next sections) or use auto detection.
Example:
import { detectType, toString } from "undio";
// "ArrayBuffer" | "Blob"| "DataView" | "NumberArray" | "ReadableStream" | "String" | "Uint8Array";
const type = detectType(value);
// Convert any supported type (auto detected)
const value = await toString(value);Array Buffer
arrayBufferToBlob(arrayBuffer, options?)
Convert from ArrayBuffer to Blob
arrayBufferToDataView(arrayBuffer)
Convert from ArrayBuffer to DataView
arrayBufferToNumberArray(arrayBuffer)
Convert from ArrayBuffer to Number Array
arrayBufferToReadableStream(arrayBuffer)
Convert from ArrayBuffer to ReadableStream
arrayBufferToString(arrayBuffer)
Convert from ArrayBuffer to String
arrayBufferToUint8Array(arrayBuffer)
Convert from ArrayBuffer to Uint8Array
assertArrayBuffer(input)
Assert that input is instance of ArrayBuffer or throw a TypeError.
isArrayBuffer(input)
Test if input is instance of ArrayBuffer and return true or false.
Blob
assertBlob(input)
Assert that input is instance of Blob or throw a TypeError.
blobToArrayBuffer(blob)
Convert from Blob to ArrayBuffer
blobToDataView(blob)
blobToNumberArray(blob)
Convert from Blob to Number Array
blobToReadableStream(blob)
Convert from Blob to ReadableStream
blobToString(blob)
blobToUint8Array(blob)
Convert from Blob to Uint8Array
isBlob(input)
Test if input is instance of Blob and return true or false.
Data View
assertDataView(input)
Assert that input is instance of DataView or throw a TypeError.
dataViewToArrayBuffer(dataView)
Convert from DataView to ArrayBuffer
dataViewToBlob(dataView, options?)
dataViewToNumberArray(dataView)
Convert from DataView to Number Array
dataViewToReadableStream(dataView)
Convert from DataView to ReadableStream
dataViewToString(dataView)
Convert from DataView to String
dataViewToUint8Array(dataView)
Convert from DataView to Uint8Array
isDataView(input)
Test if input is instance of DataView and return true or false.
Number Array
assertNumberArray(input)
Assert that input is instance of Number Array or throw a TypeError.
isNumberArray(input)
Test if input is instance of Number Array and return true or false.
numberArrayToArrayBuffer(numberArray)
Convert from Number Array to ArrayBuffer
numberArrayToBlob(numberArray, options?)
Convert from Number Array to Blob
numberArrayToDataView(numberArray)
Convert from Number Array to DataView
numberArrayToReadableStream(numberArray)
Convert from Number Array to ReadableStream
numberArrayToString(numberArray)
Convert from Number Array to String
numberArrayToUint8Array(numberArray)
Convert from Number Array to Uint8Array
Readable Stream
assertReadableStream(input)
Assert that input is instance of ReadableStream or throw a TypeError.
isReadableStream(input)
Test if input is instance of ReadableStream and return true or false.
readableStreamToArrayBuffer(readableStream)
Convert from ReadableStream to ArrayBuffer
readableStreamToBlob(readableStream, options?)
Convert from ReadableStream to Blob
readableStreamToDataView(readableStream)
Convert from ReadableStream to DataView
readableStreamToNumberArray(readableStream)
Convert from ReadableStream to Number Array
readableStreamToString(readableStream)
Convert from ReadableStream to String
readableStreamToUint8Array(readableStream)
Convert from ReadableStream to Uint8Array
String
assertString(input)
Assert that input is instance of String or throw a TypeError.
isString(input)
Test if input is instance of String and return true or false.
stringToArrayBuffer(string)
Convert from string to ArrayBuffer
stringToBlob(string, options?)
stringToDataView(string)
Convert from string to DataView
stringToNumberArray(string)
Convert from string to Number Array
stringToReadableStream(string)
Convert from string to ReadableStream
stringToUint8Array(string)
Convert from string to Uint8Array
Uint8 Array
assertUint8Array(input)
Assert that input is instance of Uint8Array or throw a TypeError.
isUint8Array(input)
Test if input is instance of Uint8Array and return true or false.
uint8ArrayToArrayBuffer(uint8Array)
Convert from Uint8Array to ArrayBuffer
@group Uint8Array
uint8ArrayToBlob(uint8Array, options?)
Convert from Uint8Array to Blob
@group Uint8Array
uint8ArrayToDataView(uint8Array)
Convert from Uint8Array to DataView
@group Uint8Array
uint8ArrayToNumberArray(uint8Array)
Convert from Uint8Array to Number Array
@group Uint8Array
uint8ArrayToReadableStream(uint8Array)
Convert from Uint8Array to ReadableStream
@group Uint8Array
uint8ArrayToString(uint8Array)
Convert from Uint8Array to String
@group Uint8Array
Development
local development
License
Published under the MIT license.
Made by community 💛
🤖 auto updated with automd