1 | import { buildMessage, ValidateBy } from '../common/ValidateBy';
|
2 | export const ARRAY_MAX_SIZE = 'arrayMaxSize';
|
3 |
|
4 |
|
5 |
|
6 |
|
7 | export function arrayMaxSize(array, max) {
|
8 | return Array.isArray(array) && array.length <= max;
|
9 | }
|
10 |
|
11 |
|
12 |
|
13 |
|
14 | export function ArrayMaxSize(max, validationOptions) {
|
15 | return ValidateBy({
|
16 | name: ARRAY_MAX_SIZE,
|
17 | constraints: [max],
|
18 | validator: {
|
19 | validate: (value, args) => arrayMaxSize(value, args.constraints[0]),
|
20 | defaultMessage: buildMessage(eachPrefix => eachPrefix + '$property must contain not more than $constraint1 elements', validationOptions),
|
21 | },
|
22 | }, validationOptions);
|
23 | }
|
24 |
|
\ | No newline at end of file |