UNPKG

@opengis/fastify-table

Version:

core-plugins

21 lines (18 loc) 909 B
function onCheck(rule, data) { const val = data[rule[0]]; // console.log(val, rule[1], rule[2]) if (rule[1] === '==') return val === rule[2]; if (rule[1] === '!=') return val !== rule[2]; if (rule[1] === 'in' && rule[2].split) return rule[2].split(',').includes(val); if (rule[1] === 'in' && rule[2].includes) return rule[2].includes(val); if (rule[1] === 'not in' && rule[2].split) return !rule[2].split(',').includes(val); if (rule[1] === 'not in' && rule[2].includes) return !rule[2].includes(val); if (rule[1] === '>') return val > rule[2]; if (rule[1] === '<') return val < rule[2]; } export default function conditions(rules, data) { if (!rules?.length) return true; const result = Array.isArray(rules[0]) ? !rules.filter(el => !onCheck(el, data)).length : onCheck(rules, data) // console.log(rules, result) return result; }