1.1.1 • Published 3 months ago
@schemasjs/valibot-numbers
Licence
MIT
Version
1.1.1
Deps
0
Size
34 kB
Vulns
0
Weekly
0
@SchemasJS/valibot-numbers
Part of SchemasJS — Like DefinitelyTyped, but for schemas.
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 |