UNPKG

804 BJavaScriptView Raw
1const isObject = require('is-object')
2
3const ErrorCodes = {
4 PARSEERROR: {
5 code: -32700,
6 message: "Parse error"
7 },
8 INVALIDREQUEST: {
9 code: -32600,
10 message: "Invalid Request"
11 },
12 METHODNOTFOUND: {
13 code: -32601,
14 message: "Method not found"
15 },
16 INVALIDPARAMS: {
17 code: -32602,
18 message: "Invalid params"
19 },
20 INTERNALERROR: {
21 code: -32603,
22 message: "Internal error"
23 }
24}
25
26// -32000 to -32099 is reserved!
27
28class CustomError extends Error {
29 constructor(message = ErrorCodes.INTERNALERROR.message, data = null, code = ErrorCodes.INTERNALERROR.code) {
30
31 if (isObject(message)) {
32 super(message.message)
33 this.code = message.code
34 this.data = message.data
35 } else {
36 super(message)
37 this.code = code
38 this.data = data
39 }
40 }
41}
42
43module.exports = {
44 CustomError,
45 ErrorCodes
46}
\No newline at end of file