summaryrefslogtreecommitdiff
path: root/school/node_modules/trouter/index.js
diff options
context:
space:
mode:
Diffstat (limited to 'school/node_modules/trouter/index.js')
-rw-r--r--school/node_modules/trouter/index.js45
1 files changed, 0 insertions, 45 deletions
diff --git a/school/node_modules/trouter/index.js b/school/node_modules/trouter/index.js
deleted file mode 100644
index a9e7f4b..0000000
--- a/school/node_modules/trouter/index.js
+++ /dev/null
@@ -1,45 +0,0 @@
-const { exec, match, parse } = require('matchit');
-
-class Trouter {
- constructor(opts) {
- this.opts = opts || {};
- this.routes = {};
- this.handlers = {};
-
- this.all = this.add.bind(this, '*');
- this.get = this.add.bind(this, 'GET');
- this.head = this.add.bind(this, 'HEAD');
- this.patch = this.add.bind(this, 'PATCH');
- this.options = this.add.bind(this, 'OPTIONS');
- this.connect = this.add.bind(this, 'CONNECT');
- this.delete = this.add.bind(this, 'DELETE');
- this.trace = this.add.bind(this, 'TRACE');
- this.post = this.add.bind(this, 'POST');
- this.put = this.add.bind(this, 'PUT');
- }
-
- add(method, pattern, ...fns) {
- // Save decoded pattern info
- if (this.routes[method] === void 0) this.routes[method]=[];
- this.routes[method].push(parse(pattern));
- // Save route handler(s)
- if (this.handlers[method] === void 0) this.handlers[method]={};
- this.handlers[method][pattern] = fns;
- // Allow chainable
- return this;
- }
-
- find(method, url) {
- let arr = match(url, this.routes[method] || []);
- if (arr.length === 0) {
- arr = match(url, this.routes[method='*'] || []);
- if (!arr.length) return false;
- }
- return {
- params: exec(url, arr),
- handlers: this.handlers[method][arr[0].old]
- };
- }
-}
-
-module.exports = Trouter;