UNPKG

livr-extra-rules

Version:
24 lines (18 loc) 658 B
const util = require('../util'); function has_methods(requiredMethods) { if (!Array.isArray(requiredMethods)) { requiredMethods = Array.prototype.slice.call(arguments); requiredMethods.pop(); // pop ruleBuilders } return (value, params, outputArr) => { if (util.isNoValue(value)) return; if (util.isPrimitiveValue(value)) return 'FORMAT_ERROR'; for (const method of requiredMethods) { if (!value[method] || typeof value[method] !== 'function' ) { return `NOT_HAVING_METHOD [${method}]` } } return; }; } module.exports = has_methods;