aboutsummaryrefslogtreecommitdiffstats
path: root/backend/node_modules/express/lib/middleware/query.js
diff options
context:
space:
mode:
Diffstat (limited to 'backend/node_modules/express/lib/middleware/query.js')
-rw-r--r--backend/node_modules/express/lib/middleware/query.js47
1 files changed, 47 insertions, 0 deletions
diff --git a/backend/node_modules/express/lib/middleware/query.js b/backend/node_modules/express/lib/middleware/query.js
new file mode 100644
index 0000000..7e91669
--- /dev/null
+++ b/backend/node_modules/express/lib/middleware/query.js
@@ -0,0 +1,47 @@
+/*!
+ * express
+ * Copyright(c) 2009-2013 TJ Holowaychuk
+ * Copyright(c) 2013 Roman Shtylman
+ * Copyright(c) 2014-2015 Douglas Christopher Wilson
+ * MIT Licensed
+ */
+
+'use strict';
+
+/**
+ * Module dependencies.
+ */
+
+var merge = require('utils-merge')
+var parseUrl = require('parseurl');
+var qs = require('qs');
+
+/**
+ * @param {Object} options
+ * @return {Function}
+ * @api public
+ */
+
+module.exports = function query(options) {
+ var opts = merge({}, options)
+ var queryparse = qs.parse;
+
+ if (typeof options === 'function') {
+ queryparse = options;
+ opts = undefined;
+ }
+
+ if (opts !== undefined && opts.allowPrototypes === undefined) {
+ // back-compat for qs module
+ opts.allowPrototypes = true;
+ }
+
+ return function query(req, res, next){
+ if (!req.query) {
+ var val = parseUrl(req).query;
+ req.query = queryparse(val, opts);
+ }
+
+ next();
+ };
+};