UNPKG

express-sequelize-autocrud

Version:

Express Sequelize AutoCRUD: Simplify API development with automatic CRUD routes for Sequelize models in Express.js.

29 lines 1.28 kB
export const getFieldValue = async (field, req, res) => (typeof field !== 'function' ? field : await field(req, res)); export const isIncludeExcludeMatchCriteria = async (includeExcludeFields, fieldToTest, req, res) => { const fields = await getFieldValue(includeExcludeFields, req, res); const toTest = Array.isArray(fieldToTest) ? fieldToTest : [fieldToTest]; if ('include' in fields || Array.isArray(fields)) { const includables = Array.isArray(fields) ? fields : fields.include; const problematicFields = toTest.filter(f => includables.indexOf(f) === -1); return { result: problematicFields.length === 0, problematicFields }; } else { const problematicFields = toTest.filter(f => fields.exclude.indexOf(f) !== -1); return { result: problematicFields.length === 0, problematicFields }; } }; export const buildOptionsFromConfig = async (config, req, res) => { const newConfig = config; for (const key in config) { newConfig[key] = await getFieldValue(config[key], req, res); } return newConfig; }; export const runCustomMiddleware = (middleware) => { return middleware ? middleware : (req, res, next) => { next(); }; }; //# sourceMappingURL=config.js.map