/
matchQueryMiddleware.js
39 lines (30 loc) · 1.04 KB
/
matchQueryMiddleware.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = matchQueryMiddleware;
var _bodyParser = _interopRequireDefault(require("body-parser"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var jsonParser = _bodyParser.default.json();
var log = function log(message, debug) {
if (debug) console.log(message);
};
function matchQueryMiddleware(queryMapJson) {
var debug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
return function (req, res, next) {
return jsonParser(req, res, function () {
var queryId = req.body.queryId;
if (queryId) {
log("Mapping queryId: ".concat(queryId), debug);
var query = queryMapJson[queryId];
if (query) {
log("Yayy! Found persisted query ".concat(queryId), debug);
req.body.query = query;
} else {
throw new Error("matchQueryMiddleware: can't find queryId: ".concat(queryId));
}
}
next();
});
};
}