mirror of
https://github.com/usebruno/bruno.git
synced 2026-06-28 07:04:10 +00:00
25 lines
623 B
JavaScript
25 lines
623 B
JavaScript
const jsonQuery = require('json-query');
|
|
|
|
const evaluateJsExpression = (expression, context) => {
|
|
const fn = new Function(...Object.keys(context), `return ${expression}`);
|
|
return fn(...Object.values(context));
|
|
};
|
|
|
|
const createResponseParser = (response = {}) => {
|
|
const res = (expr) => {
|
|
const output = jsonQuery(expr, { data: response.data });
|
|
return output ? output.value : null;
|
|
}
|
|
|
|
res.status = response.status;
|
|
res.statusText = response.statusText;
|
|
res.headers = response.headers;
|
|
res.body = response.data;
|
|
|
|
return res;
|
|
};
|
|
|
|
module.exports = {
|
|
evaluateJsExpression,
|
|
createResponseParser
|
|
}; |