| /* Reusable validator functions used in controls definitions |
| * |
| * validator functions receive the v and the configuration of the control |
| * as arguments and return something that evals to false if v is valid, |
| * and an error message if not valid. |
| * */ |
| import { t } from '../locales'; |
| |
| export function numeric(v) { |
| if (v && isNaN(v)) { |
| return t('is expected to be a number'); |
| } |
| return false; |
| } |
| |
| export function integer(v) { |
| if (v && (isNaN(v) || parseInt(v, 10) !== +(v))) { |
| return t('is expected to be an integer'); |
| } |
| return false; |
| } |
| |
| export function nonEmpty(v) { |
| if ( |
| v === null || |
| v === undefined || |
| v === '' || |
| (Array.isArray(v) && v.length === 0) |
| ) { |
| return t('cannot be empty'); |
| } |
| return false; |
| } |