-
-
Notifications
You must be signed in to change notification settings - Fork 3.8k
/
error.js
63 lines (48 loc) · 1.5 KB
/
error.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
/**
* MongooseError constructor
*
* @param {String} msg Error message
* @inherits Error https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Error
*/
function MongooseError (msg) {
Error.call(this);
Error.captureStackTrace(this, arguments.callee);
this.message = msg;
this.name = 'MongooseError';
};
/*!
* Formats error messages
*/
MongooseError.prototype.formatMessage = function (msg, path, type, val) {
if (!msg) throw new TypeError('message is required');
return msg.replace(/{PATH}/, path)
.replace(/{VALUE}/, String(val||''))
.replace(/{TYPE}/, type || 'declared type');
}
/*!
* Inherits from Error.
*/
MongooseError.prototype.__proto__ = Error.prototype;
/*!
* Module exports.
*/
module.exports = exports = MongooseError;
/**
* The default built-in validator error messages.
*
* @see Error.messages #error_messages_MongooseError-messages
* @api public
*/
MongooseError.messages = require('./error/messages');
// backward compat
MongooseError.Messages = MongooseError.messages;
/*!
* Expose subclasses
*/
MongooseError.CastError = require('./error/cast');
MongooseError.ValidationError = require('./error/validation')
MongooseError.ValidatorError = require('./error/validator')
MongooseError.VersionError =require('./error/version')
MongooseError.OverwriteModelError = require('./error/overwriteModel')
MongooseError.MissingSchemaError = require('./error/missingSchema')
MongooseError.DivergentArrayError = require('./error/divergentArray')