apemanerror
Version:
Error parser for apeman.
99 lines (89 loc) • 2.37 kB
JavaScript
/**
* Buildin error creators
* @module buildin
*/
const apemanerror = require('./apemanerror')
module.exports = Object.assign(exports, {},
// Basic errors
{
valueMissingError: (msg = 'Value required') => apemanerror(msg, {
name: 'ValueMissingError',
status: 400
}),
valueInvalidError: (msg = 'Value invalid') => apemanerror(msg, {
name: 'valueInvalidError',
status: 400
})
},
// Sign errors
{
signupProveError: (msg = 'Provision Failed') => apemanerror(msg, {
name: 'SignupProveError',
status: 400
}),
signinFailError: (msg = 'Signin Failed') => apemanerror(msg, {
name: 'SigninFail',
status: 400
}),
signinRequiredError: (msg = 'Signin required') => apemanerror(msg, {
name: 'SigninRequiredError',
status: 401
}),
signInvalidError: (msg = 'User not registered for sign') => apemanerror(msg, {
name: 'SignInvalidError',
status: 403
})
},
// Verify errors
{
verifyNotFoundError: (msg = 'User not found for the given email') => apemanerror(msg, {
name: 'VerifyNotFoundError',
status: 400
}),
verifyTokenWrongError: (msg = 'Token is wrong') => apemanerror(msg, {
name: 'VerifyTokenWrongError',
status: 400
}),
verifyTokenExpiredError: (msg = 'Token is expired') => apemanerror(msg, {
name: 'VerifyTokenExpiredError',
status: 400
})
},
// Recover errors
{
recoverNotFoundError: (msg = 'User not found for the given email') => apemanerror(msg, {
name: 'RecoverNotFoundError',
status: 400
}),
recoverTokenWrongError: (msg = 'Token is wrong') => apemanerror(msg, {
name: 'RecoverTokenWrongError',
status: 400
}),
recoverTokenExpiredError: (msg = 'Token is expired') => apemanerror(msg, {
name: 'RecoverTokenExpiredError',
status: 400
})
},
// Auth errors
{
notAllowedError: (msg = 'Not allowed here') => apemanerror(msg, {
name: 'NotAllowedError',
status: 403
})
},
// Resource errors
{
notFoundError: (msg = 'Not found') => apemanerror(msg, {
name: 'NotFound',
status: 404
})
},
// Authorize errors
{
notAuthorizedError: (msg = 'Not authroized') => apemanerror(msg, {
name: 'NotAuthorized',
status: 402
})
}
)