From 537448501439aaa68485e2ac436941656d7250e8 Mon Sep 17 00:00:00 2001 From: "(quasar) nebula" Date: Sat, 15 Jul 2023 19:46:30 -0300 Subject: data: split arrayOf validator into {strict,sparse}ArrayOf --- src/data/things/validators.js | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'src/data') diff --git a/src/data/things/validators.js b/src/data/things/validators.js index 14092102..1754adf3 100644 --- a/src/data/things/validators.js +++ b/src/data/things/validators.js @@ -195,10 +195,20 @@ export function validateArrayItems(itemValidator) { }; } -export function arrayOf(itemValidator) { +export function strictArrayOf(itemValidator) { return validateArrayItems(itemValidator); } +export function sparseArrayOf(itemValidator) { + return validateArrayItems(item => { + if (item === false || item === null) { + return true; + } + + return itemValidator(item); + }); +} + export function validateInstanceOf(constructor) { return (object) => isInstance(object, constructor); } -- cgit 1.3.0-6-gf8a5