1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | 361x 3x 358x 150x 208x 2x 206x 2x 204x 18x 18x 25x 18x 186x | // Checks whether the return value is a valid primary or secondary // index value in RethinkDB. export default function validIndexValue(val) { if (val === null) { return false } if ([ 'boolean', 'number', 'string' ].indexOf(typeof val) !== -1) { return true } if (val instanceof ArrayBuffer) { return true } if (val instanceof Date) { return true } if (Array.isArray(val)) { let isValid = true val.forEach(v => { isValid = isValid && validIndexValue(v) }) return isValid } return false } |