Socket
Socket
Sign inDemoInstall

@voiceflow/common

Package Overview
Dependencies
Maintainers
9
Versions
130
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@voiceflow/common - npm Package Compare versions

Comparing version 3.0.0 to 3.1.0

54

lib/middleware/responseBuilder.js

@@ -100,23 +100,41 @@ 'use strict';

*/
self.route = (dataPromise, successCodeOverride, failureCodeOverride) => async (req, res, next) => {
if (successCodeOverride && !Object.values(VError.HTTP_STATUS).includes(successCodeOverride)) {
log.error('successCodeOverride must be a valid HTTP code, ignoring');
successCodeOverride = undefined;
}
self.route = (dataPromise, successCodeOverride, failureCodeOverride) => {
dataPromise.route = true;
if (failureCodeOverride && !Object.values(VError.HTTP_STATUS).includes(failureCodeOverride)) {
log.error('failureCodeOverride must be a valid HTTP code, ignoring');
failureCodeOverride = undefined;
}
return async (req, res, next) => {
if (successCodeOverride && !Object.values(VError.HTTP_STATUS).includes(successCodeOverride)) {
log.error('successCodeOverride must be a valid HTTP code, ignoring');
successCodeOverride = undefined;
}
await Promise.try(() => (_.isFunction(dataPromise) ? dataPromise(req, res, next) : dataPromise))
.then((data) => {
if (data instanceof Error) {
return self._errorResponse(data, failureCodeOverride);
}
if (failureCodeOverride && !Object.values(VError.HTTP_STATUS).includes(failureCodeOverride)) {
log.error('failureCodeOverride must be a valid HTTP code, ignoring');
failureCodeOverride = undefined;
}
return self._okResponse(data, successCodeOverride);
})
.catch((err) => self._errorResponse(err, failureCodeOverride))
.then((output) => res.status(output.code).json(output.data));
let nextCalled = null;
const nextCheck = (route) => {
nextCalled = () => next(route);
};
await Promise.try(() => (_.isFunction(dataPromise) ? dataPromise(req, res, nextCheck) : dataPromise))
.then((data) => {
if (data instanceof Error) {
return self._errorResponse(data, failureCodeOverride);
}
return self._okResponse(data, successCodeOverride);
})
.catch((err) => self._errorResponse(err, failureCodeOverride))
.then((output) => {
if (res.headerSent) {
return;
}
if (nextCalled) {
nextCalled();
return;
}
res.status(output.code).json(output.data);
});
};
};

@@ -123,0 +141,0 @@

{
"name": "@voiceflow/common",
"description": "Junk drawer of utility functions",
"version": "3.0.0",
"version": "3.1.0",
"author": "Voiceflow",

@@ -16,3 +16,3 @@ "bugs": {

"@voiceflow/verror": "^1.1.0",
"bluebird": "^3.5.4",
"bluebird": "^3.5.5",
"bunyan": "^1.8.12",

@@ -35,2 +35,3 @@ "bunyan-prettystream": "^0.1.3",

"eslint": "^5.16.0",
"express": "^4.17.1",
"fixpack": "^2.3.1",

@@ -44,3 +45,4 @@ "husky": "^2.3.0",

"semantic-release": "^15.13.3",
"sinon": "^7.3.2"
"sinon": "^7.3.2",
"supertest": "^4.0.2"
},

@@ -47,0 +49,0 @@ "files": [

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc