@expo/schemer
Version:
Centralized scheme validation library for Expo
64 lines (62 loc) • 1.72 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
0 && (module.exports = {
ErrorCodes: null,
SchemerError: null,
ValidationError: null
});
function _export(target, all) {
for(var name in all)Object.defineProperty(target, name, {
enumerable: true,
get: Object.getOwnPropertyDescriptor(all, name).get
});
}
_export(exports, {
get ErrorCodes () {
return ErrorCodes;
},
get SchemerError () {
return SchemerError;
},
get ValidationError () {
return ValidationError;
}
});
class SchemerError extends Error {
name = 'SchemerError';
errors;
constructor(errors){
super('');
this.message = errors.map((error)=>error.message).join('\n');
this.errors = errors;
}
}
class ValidationError extends Error {
name = 'ValidationError';
errorCode;
fieldPath;
data;
meta;
constructor({ errorCode, fieldPath, message, data, meta }){
super(message);
this.errorCode = errorCode;
this.fieldPath = fieldPath;
this.data = data;
this.meta = meta;
}
}
const ErrorCodes = {
SCHEMA_VALIDATION_ERROR: 'SCHEMA_VALIDATION_ERROR',
SCHEMA_ADDITIONAL_PROPERTY: 'SCHEMA_ADDITIONAL_PROPERTY',
SCHEMA_MISSING_REQUIRED_PROPERTY: 'SCHEMA_MISSING_REQUIRED_PROPERTY',
SCHEMA_INVALID_PATTERN: 'SCHEMA_INVALID_PATTERN',
SCHEMA_INVALID_NOT: 'SCHEMA_INVALID_NOT',
INVALID_ASSET_URI: 'INVALID_ASSET_URI',
INVALID_DIMENSIONS: 'INVALID_DIMENSIONS',
INVALID_CONTENT_TYPE: 'INVALID_CONTENT_TYPE',
NOT_SQUARE: 'NOT_SQUARE',
FILE_EXTENSION_MISMATCH: 'FILE_EXTENSION_MISMATCH'
};
//# sourceMappingURL=Error.js.map