mage-validator
Version:
Validation utility for MAGE user commands & topics (TypeScript)
27 lines • 2.63 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const mage = require("mage");
/**
* Validation error classes
*
* Will contain all the validation errors that were found upon validation.
*/
class ValidationError extends Error {
constructor(message, code, details, errors) {
super(message);
this.code = code;
this.details = details;
this.validationErrors = errors;
this.name = 'ValidationError';
}
}
exports.ValidationError = ValidationError;
/**
* Log emergency and crash
*/
function crash(message, data) {
mage.logger.emergency.data(data).log(message);
return new Error(message);
}
exports.crash = crash;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLDZCQUE0QjtBQUU1Qjs7OztHQUlHO0FBQ0gscUJBQTZCLFNBQVEsS0FBSztJQVV4QyxZQUFZLE9BQWUsRUFBRSxJQUFZLEVBQUUsT0FBWSxFQUFFLE1BQVc7UUFDbEUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBQ2QsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUE7UUFDaEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUE7UUFDdEIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLE1BQU0sQ0FBQTtRQUM5QixJQUFJLENBQUMsSUFBSSxHQUFHLGlCQUFpQixDQUFBO0lBQy9CLENBQUM7Q0FDRjtBQWpCRCwwQ0FpQkM7QUFFRDs7R0FFRztBQUNILGVBQXNCLE9BQWUsRUFBRSxJQUFTO0lBQzlDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUE7SUFDN0MsT0FBTyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQTtBQUMzQixDQUFDO0FBSEQsc0JBR0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBtYWdlIGZyb20gJ21hZ2UnXG5cbi8qKlxuICogVmFsaWRhdGlvbiBlcnJvciBjbGFzc2VzXG4gKlxuICogV2lsbCBjb250YWluIGFsbCB0aGUgdmFsaWRhdGlvbiBlcnJvcnMgdGhhdCB3ZXJlIGZvdW5kIHVwb24gdmFsaWRhdGlvbi5cbiAqL1xuZXhwb3J0IGNsYXNzIFZhbGlkYXRpb25FcnJvciBleHRlbmRzIEVycm9yIHtcbiAgLy8gRXJyb3IgY29kZSB0byBiZSByZXR1cm5lZCB0byB0aGUgY2xpZW50XG4gIHB1YmxpYyBjb2RlOiBzdHJpbmdcblxuICAvLyBEZXRhaWxzIGFib3V0IHRoZSB0b3BpYyBpbnN0YW5jZVxuICBwdWJsaWMgZGV0YWlsczogYW55W11cblxuICAvLyBMaXN0IG9mIHZhbGlkYXRpb24gZXJyb3JzXG4gIHB1YmxpYyB2YWxpZGF0aW9uRXJyb3JzOiBhbnlbXVxuXG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZywgY29kZTogc3RyaW5nLCBkZXRhaWxzOiBhbnksIGVycm9yczogYW55KSB7XG4gICAgc3VwZXIobWVzc2FnZSlcbiAgICB0aGlzLmNvZGUgPSBjb2RlXG4gICAgdGhpcy5kZXRhaWxzID0gZGV0YWlsc1xuICAgIHRoaXMudmFsaWRhdGlvbkVycm9ycyA9IGVycm9yc1xuICAgIHRoaXMubmFtZSA9ICdWYWxpZGF0aW9uRXJyb3InXG4gIH1cbn1cblxuLyoqXG4gKiBMb2cgZW1lcmdlbmN5IGFuZCBjcmFzaFxuICovXG5leHBvcnQgZnVuY3Rpb24gY3Jhc2gobWVzc2FnZTogc3RyaW5nLCBkYXRhOiBhbnkpIHtcbiAgbWFnZS5sb2dnZXIuZW1lcmdlbmN5LmRhdGEoZGF0YSkubG9nKG1lc3NhZ2UpXG4gIHJldHVybiBuZXcgRXJyb3IobWVzc2FnZSlcbn1cbiJdfQ==