aboutsummaryrefslogtreecommitdiff
path: root/node_modules/makeerror
diff options
context:
space:
mode:
authorJoel Kronqvist <joel.h.kronqvist@gmail.com>2022-03-05 19:02:27 +0200
committerJoel Kronqvist <joel.h.kronqvist@gmail.com>2022-03-05 19:02:27 +0200
commit5d309ff52cd399a6b71968a6b9a70c8ac0b98981 (patch)
tree360f7eb50f956e2367ef38fa1fc6ac7ac5258042 /node_modules/makeerror
parentb500a50f1b97d93c98b36ed9a980f8188d648147 (diff)
downloadLYLLRuoka-5d309ff52cd399a6b71968a6b9a70c8ac0b98981.tar.gz
LYLLRuoka-5d309ff52cd399a6b71968a6b9a70c8ac0b98981.zip
Added node_modules for the updating to work properly.
Diffstat (limited to 'node_modules/makeerror')
-rw-r--r--node_modules/makeerror/.travis.yml3
-rw-r--r--node_modules/makeerror/lib/makeerror.js87
-rw-r--r--node_modules/makeerror/license28
-rw-r--r--node_modules/makeerror/package.json21
-rw-r--r--node_modules/makeerror/readme.md77
5 files changed, 216 insertions, 0 deletions
diff --git a/node_modules/makeerror/.travis.yml b/node_modules/makeerror/.travis.yml
new file mode 100644
index 0000000..2d26206
--- /dev/null
+++ b/node_modules/makeerror/.travis.yml
@@ -0,0 +1,3 @@
+language: node_js
+node_js:
+ - 0.6
diff --git a/node_modules/makeerror/lib/makeerror.js b/node_modules/makeerror/lib/makeerror.js
new file mode 100644
index 0000000..9dd6d1f
--- /dev/null
+++ b/node_modules/makeerror/lib/makeerror.js
@@ -0,0 +1,87 @@
+var tmpl = require('tmpl')
+
+module.exports = makeError
+
+function BaseError() {}
+BaseError.prototype = new Error()
+BaseError.prototype.toString = function() {
+ return this.message
+}
+
+
+/**
+ * Makes an Error function with the signature:
+ *
+ * function(message, data)
+ *
+ * You'll typically do something like:
+ *
+ * var UnknownFileTypeError = makeError(
+ * 'UnknownFileTypeError',
+ * 'The specified type is not known.'
+ * )
+ * var er = UnknownFileTypeError()
+ *
+ * `er` will have a prototype chain that ensures:
+ *
+ * er instanceof Error
+ * er instanceof UnknownFileTypeError
+ *
+ * You can also do `var er = new UnknownFileTypeError()` if you really like the
+ * `new` keyword.
+ *
+ * @param String The name of the error.
+ * @param String The default message string.
+ * @param Object The default data object, merged with per instance data.
+ */
+function makeError(name, defaultMessage, defaultData) {
+ defaultMessage = tmpl(defaultMessage || '')
+ defaultData = defaultData || {}
+ if (defaultData.proto && !(defaultData.proto instanceof BaseError))
+ throw new Error('The custom "proto" must be an Error created via makeError')
+
+ var CustomError = function(message, data) {
+ if (!(this instanceof CustomError)) return new CustomError(message, data)
+
+ if (typeof message !== 'string' && !data) {
+ data = message
+ message = null
+ }
+
+ this.name = name
+ this.data = data || defaultData
+
+ if (typeof message === 'string') {
+ this.message = tmpl(message, this.data)
+ } else {
+ this.message = defaultMessage(this.data)
+ }
+
+ var er = new Error()
+ this.stack = er.stack
+ if (this.stack) {
+ // remove TWO stack level:
+ if (typeof Components !== 'undefined') {
+ // Mozilla:
+ this.stack = this.stack.substring(this.stack.indexOf('\n') + 2)
+ } else if (typeof chrome !== 'undefined' || typeof process !== 'undefined') {
+ // Google Chrome/Node.js:
+ this.stack = this.stack.replace(/\n[^\n]*/, '')
+ this.stack = this.stack.replace(/\n[^\n]*/, '')
+ this.stack = (
+ this.name +
+ (this.message ? (': ' + this.message) : '') +
+ this.stack.substring(5)
+ )
+ }
+ }
+
+ if ('fileName' in er) this.fileName = er.fileName
+ if ('lineNumber' in er) this.lineNumber = er.lineNumber
+ }
+
+ CustomError.prototype = defaultData.proto || new BaseError()
+ delete defaultData.proto
+
+ return CustomError
+}
diff --git a/node_modules/makeerror/license b/node_modules/makeerror/license
new file mode 100644
index 0000000..39ae386
--- /dev/null
+++ b/node_modules/makeerror/license
@@ -0,0 +1,28 @@
+BSD License
+
+Copyright (c) 2014, Naitik Shah. All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+ * Redistributions of source code must retain the above copyright notice, this
+ list of conditions and the following disclaimer.
+
+ * Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+
+ * Neither the name Naitik Shah nor the names of its contributors may be used to
+ endorse or promote products derived from this software without specific
+ prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
+ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/node_modules/makeerror/package.json b/node_modules/makeerror/package.json
new file mode 100644
index 0000000..59da193
--- /dev/null
+++ b/node_modules/makeerror/package.json
@@ -0,0 +1,21 @@
+{
+ "name": "makeerror",
+ "description": "A library to make errors.",
+ "version": "1.0.12",
+ "license": "BSD-3-Clause",
+ "author": "Naitik Shah <n@daaku.org>",
+ "main": "lib/makeerror",
+ "repository": {
+ "type": "git",
+ "url": "https://github.com/daaku/nodejs-makeerror"
+ },
+ "scripts": {
+ "test": "NODE_PATH=./lib mocha --ui exports"
+ },
+ "dependencies": {
+ "tmpl": "1.0.5"
+ },
+ "devDependencies": {
+ "mocha": "9.1.3"
+ }
+}
diff --git a/node_modules/makeerror/readme.md b/node_modules/makeerror/readme.md
new file mode 100644
index 0000000..f4f8eb1
--- /dev/null
+++ b/node_modules/makeerror/readme.md
@@ -0,0 +1,77 @@
+makeerror [![Build Status](https://secure.travis-ci.org/nshah/nodejs-makeerror.png)](http://travis-ci.org/nshah/nodejs-makeerror)
+=========
+
+A library to make errors.
+
+
+Basics
+------
+
+Makes an Error constructor function with the signature below. All arguments are
+optional, and if the first argument is not a `String`, it will be assumed to be
+`data`:
+
+```javascript
+function(message, data)
+```
+
+You'll typically do something like:
+
+```javascript
+var makeError = require('makeerror')
+var UnknownFileTypeError = makeError(
+ 'UnknownFileTypeError',
+ 'The specified type is not known.'
+)
+var er = UnknownFileTypeError()
+```
+
+`er` will have a prototype chain that ensures:
+
+```javascript
+er instanceof UnknownFileTypeError
+er instanceof Error
+```
+
+
+Templatized Error Messages
+--------------------------
+
+There is support for simple string substitutions like:
+
+```javascript
+var makeError = require('makeerror')
+var UnknownFileTypeError = makeError(
+ 'UnknownFileTypeError',
+ 'The specified type "{type}" is not known.'
+)
+var er = UnknownFileTypeError({ type: 'bmp' })
+```
+
+Now `er.message` or `er.toString()` will return `'The specified type "bmp" is
+not known.'`.
+
+
+Prototype Hierarchies
+---------------------
+
+You can create simple hierarchies as well using the `prototype` chain:
+
+```javascript
+var makeError = require('makeerror')
+var ParentError = makeError('ParentError')
+var ChildError = makeError(
+ 'ChildError',
+ 'The child error.',
+ { proto: ParentError() }
+)
+var er = ChildError()
+```
+
+`er` will have a prototype chain that ensures:
+
+```javascript
+er instanceof ChildError
+er instanceof ParentError
+er instanceof Error
+```