This is a [fonk](https://github.com/Lemoncode/fonk) microlibrary that brings validation capabilities to validate if a field of a form is in a given range
npm install @lemoncode/fonk-range-number-validator


This is a fonk microlibrary that brings validation capabilities to:
- Validate if a field of a form is in a given range
How to install it:
``bash`
npm install @lemoncode/fonk-range-number-validator --save
How to add it to an existing form validation schema:
We have the following form model:
`javascript`
const myFormValues = {
product: 'shoes',
price: 20,
};
The validator must be configured with the following required arguments:
`javascript
export interface CustomValidatorArgs {
strictTypes?: boolean;
min: Limit;
max: Limit;
}
export interface Limit {
value: number;
inclusive: boolean;
}
`
These are the default arguments:
`javascript`
let defaultCustomArgs: CustomValidatorArgs = {
strictTypes: false,
min: {
value: 0,
inclusive: true,
},
max: {
value: 100,
inclusive: true,
},
};
You can specify the custom arguments in two ways:
- Locally just customize the arguments for this validationSchema:
`javascript
import { rangeNumber } from '@lemoncode/fonk-range-number-validator';
const validationSchema = {
field: {
price: [
{
validator: rangeNumber.validator,
customArgs: {
strictTypes: true,
min: {
value: 10,
inclusive: false,
},
max: {
value: 20,
inclusive: false,
},
},
},
],
},
};
`
- Globally, replace the default custom arguments in all validationSchemas (e.g. enable strict types):
`javascript
import { rangeNumber } from '@lemoncode/fonk-range-number-validator';
rangeNumber.setCustomArgs({ strictTypes: true });
`
You can customize the error message displayed in two ways:
- Globally, replace the default error message in all validationSchemas (e.g. porting to spanish):
`javascript
import { rangeNumber } from '@lemoncode/fonk-range-number-validator';
rangeNumber.setErrorMessage(
'El campo debe de ser un valor mayor que {{min.value}} y menor que {{max.value}}'
);
`
- Locally just override the error message for this validationSchema:
`javascript
import { rangeNumber } from '@lemoncode/fonk-range-number-validator';
const validationSchema = {
field: {
price: [
{
validator: rangeNumber.validator,
message: 'Error message only updated for the validation schema',
},
],
},
};
``
Please, refer to fonk to know more.
We are an innovating team of Javascript experts, passionate about turning your ideas into robust products.
Basefactor, consultancy by Lemoncode provides consultancy and coaching services.
Lemoncode provides training services.
For the LATAM/Spanish audience we are running an Online Front End Master degree, more info: http://lemoncode.net/master-frontend