@schemasjs/valibot-numbers
TypeScript icon, indicating that this package has built-in type declarations

1.0.16 • Public • Published

@SchemasJS/valibot-numbers

version Bundle size minified build

Valibot schemas for numbers and their types.

Numbers

Data Schema Type Values
Unsigned integers
Unsigned integer 8 bits Uint8Schema Uint8 0 to 255
Unsigned integer 16 bits Uint16Schema Uint16 0 to 65535
Unsigned integer 32 bits Uint32Schema Uint32 0 to 4294967295
Unsigned Big Integer BigUintSchema BigUint 0 to 2^64-1
Integers
Integer 8 bits Int8Schema Int8 -128 to 127
Integer 16 bits Int16Schema Int16 -32768 to 32767
Integer 32 bits Int32Schema Int32 -2147483648 to 2147483647
Big Integer BigIntSchema built-in TS -2^63 to 2^63-1
Floats
Float 32 bit Float32Schema Float32 -3.4e38 to 3.4e38
Float 64 bit Float64Schema Float64 -1.8e308 to 1.8e308

Typed Arrays

It contains typed arrays too.

Data Schema Type Values
Unsigned integers
Unsigned integer 8 bits Uint8ArraySchema built-in TS 0 to 255
Unsigned integer 16 bits Uint16ArraySchema built-in TS 0 to 65535
Unsigned integer 32 bits Uint32ArraySchema built-in TS 0 to 4294967295
Unsigned Big Integer BigUint64ArraySchema built-in TS 0 to 2^64-1
Integers
Integer 8 bits Int8ArraySchema built-in TS -128 to 127
Integer 16 bits Int16ArraySchema built-in TS -32768 to 32767
Integer 32 bits Int32ArraySchema built-in TS -2147483648 to 2147483647
Big Integer BigInt64ArraySchema built-in TS -2^63 to 2^63-1
Floats
Float 32 bit Float32ArraySchema built-in TS -3.4e38 to 3.4e38
Float 64 bit Float64ArraySchema built-in TS -1.8e308 to 1.8e308

There is a cool feature: It is added if you introduce a number, it could be transformed into an typed array. For example:

import * as v from 'valibot'
import { Uint8ArraTransform, Uint16ArrayTransform } from @schemasjs/valibot-numbers

const num = 256

console.log(v.parse(Uint8ArrayTransform, num)) // [255, 1]
console.log(v.parse(Uint16ArrayTransform, num)) // [256]
Data Schema Type Values
Unsigned integers
Unsigned integer 8 bits Uint8ArrayTransform built-in TS 0 to 255
Unsigned integer 16 bits Uint16ArrayTransform built-in TS 0 to 65535
Unsigned integer 32 bits Uint32ArrayTransform built-in TS 0 to 4294967295
Unsigned Big Integer BigUint64ArrayTransform built-in TS 0 to 2^64-1
Integers
Integer 8 bits Int8ArrayTransform built-in TS -128 to 127
Integer 16 bits Int16ArrayTransform built-in TS -32768 to 32767
Integer 32 bits Int32ArrayTransform built-in TS -2147483648 to 2147483647
Big Integer BigInt64ArrayTransform built-in TS -2^63 to 2^63-1
Floats
Float 32 bit Float32ArrayTransform built-in TS -3.4e38 to 3.4e38
Float 64 bit Float64ArrayTransform built-in TS -1.8e308 to 1.8e308

Package Sidebar

Install

npm i @schemasjs/valibot-numbers

Weekly Downloads

10

Version

1.0.16

License

MIT

Unpacked Size

35.6 kB

Total Files

7

Last publish

Collaborators

  • crisconru