Spaces:
Runtime error
Runtime error
| const { AVV_ERR_PLUGIN_NOT_VALID } = require('./errors') | |
| /** | |
| * @param {any} maybePlugin | |
| * @throws {AVV_ERR_PLUGIN_NOT_VALID} | |
| * | |
| * @returns {asserts plugin is Function|PromiseLike} | |
| */ | |
| function validatePlugin (maybePlugin) { | |
| // validate if plugin is a function or Promise | |
| if (!(maybePlugin && (typeof maybePlugin === 'function' || typeof maybePlugin.then === 'function'))) { | |
| if (Array.isArray(maybePlugin)) { | |
| throw new AVV_ERR_PLUGIN_NOT_VALID('array') | |
| } else if (maybePlugin === null) { | |
| throw new AVV_ERR_PLUGIN_NOT_VALID('null') | |
| } else { | |
| throw new AVV_ERR_PLUGIN_NOT_VALID(typeof maybePlugin) | |
| } | |
| } | |
| } | |
| module.exports = { | |
| validatePlugin | |
| } | |