@SchemasJS/valibot-numbers
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 |