validatorshield
Version:
Universal validation (frontend + backend) with TypeScript. Includes common rules and Sequelize-backed async rules (unique, exists).
20 lines (19 loc) • 719 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.createSequelizeAdapter = createSequelizeAdapter;
function createSequelizeAdapter(sequelize) {
return {
async unique(table, column, value) {
const [results] = await sequelize.query(`SELECT * FROM ${table} WHERE ${column} = ? LIMIT 1`, {
replacements: [value],
});
return results.length === 0;
},
async exists(table, column, value) {
const [results] = await sequelize.query(`SELECT * FROM ${table} WHERE ${column} = ? LIMIT 1`, {
replacements: [value],
});
return results.length > 0;
},
};
}