Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

@schemasjs/valibot-numbers

crisconru224MIT1.0.17TypeScript support: included

Javascript (and Typescript) valibot number schemas

uint, int, float, c-types, valibot, types, schemas, modular, typescript, schema, validation, parsing, type-safe, runtime

readme

@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