diff --git a/index.js b/index.js index 3efae3d..60e275b 100644 --- a/index.js +++ b/index.js @@ -1,12 +1,19 @@ "use strict"; -const createError = require("create-error"); +// NOTE: We don't actually inherit from the real Error here, because collecting stacktraces is very expensive and largely useless for our purposes. Validatem's own error reporting is clear enough, and if not, that's a bug in Validatem anyway. +function ValidationError(message, properties) { + this.message = message; -module.exports = createError("ValidationError", { - path: [], - // NOTE: The below are for potential future compatibility logic. - ___validatem_isValidationError: true, - ___validatem_errorVersion: 1 -}); + Object.assign(this, { + path: [], + ___validatem_isValidationError: true, + ___validatem_errorVersion: 1 + }); + Object.assign(this, properties); +} + +ValidationError.prototype.name = "ValidationError"; + +module.exports = ValidationError; module.exports.__modulePath = __dirname; diff --git a/package.json b/package.json index 1e5a6a7..8251045 100644 --- a/package.json +++ b/package.json @@ -4,8 +4,5 @@ "main": "index.js", "repository": "http://git.cryto.net/validatem/error.git", "author": "Sven Slootweg ", - "license": "WTFPL OR CC0-1.0", - "dependencies": { - "create-error": "^0.3.1" - } + "license": "WTFPL OR CC0-1.0" }