New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@ot06/be-utils

Package Overview
Dependencies
Maintainers
3
Versions
27
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@ot06/be-utils - npm Package Compare versions

Comparing version 0.0.21 to 0.0.22

67

dist/expressMiddlewares/RequestHandler.js

@@ -8,6 +8,8 @@ 'use strict';

var _expressHttpContext = _interopRequireDefault(require("express-http-context"));
var _lodash = _interopRequireDefault(require("lodash"));
var _nanoid = require("nanoid");
var _expressHttpContext = _interopRequireDefault(require("express-http-context"));
var _classes = _interopRequireDefault(require("../classes"));

@@ -19,8 +21,2 @@

function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
var {

@@ -32,8 +28,13 @@ ResponseBody

} = _constants.HEADERS;
var DEFAULT_CONFIG = {};
var DEFAULT_CONFIG = {
asyncWrapper: {
isPreHandler: false,
isDataHandler: false,
isErrorHandler: false
}
};
class RequestHandler {
constructor(masterConfig, inputConfig) {
this.masterConfig = masterConfig || _objectSpread({}, DEFAULT_CONFIG);
this.inputConfig = inputConfig || _objectSpread({}, DEFAULT_CONFIG);
constructor(config) {
this.requestConfig = _lodash.default.merge(DEFAULT_CONFIG, config);
this.asyncWrapper = this.asyncWrapper.bind(this);

@@ -48,27 +49,43 @@ this.extractHeaders = this.extractHeaders.bind(this);

asyncWrapper(middleware) {
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
return (request, response, next) => {
if (!request.isMatch) {
var {
requestConfig = {}
} = this;
var {
asyncWrapper = {}
} = requestConfig;
var asyncWrapperConfig = _lodash.default.merge(asyncWrapper, options);
var {
isPreHandler,
isDataHandler,
isErrorHandler
} = asyncWrapperConfig;
if (!isPreHandler && !request.isMatch) {
return process.nextTick(next);
}
if (response.body || response.error) {
if (!isDataHandler && response.body) {
return process.nextTick(next);
}
return Promise.resolve(middleware(request, response, next)).catch(error => {
var responseBody;
if (!isErrorHandler && response.error) {
return process.nextTick(next);
}
if (error.constructor.name === ResponseBody.name) {
responseBody = error;
} else if (error.getResponseBody && typeof error.getResponseBody === 'function') {
responseBody = error.getResponseBody();
return Promise.resolve(middleware(request, response, next)).catch(middlewareError => {
var error;
if (middlewareError.constructor.name === ResponseBody.name) {
error = middlewareError;
} else if (middlewareError.getResponseBody && typeof middlewareError.getResponseBody === 'function') {
error = middlewareError.getResponseBody();
} else {
var {
statusCode = 500,
message = 'Unhandled Error'
} = error;
responseBody = new ResponseBody(statusCode, message, undefined, error);
error = middlewareError;
}
response.error = responseBody;
response.error = error;
next();

@@ -75,0 +92,0 @@ });

@@ -8,2 +8,4 @@ 'use strict';

var _lodash = _interopRequireDefault(require("lodash"));
var _expressHttpContext = _interopRequireDefault(require("express-http-context"));

@@ -17,8 +19,2 @@

function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
var {

@@ -34,5 +30,4 @@ ResponseBody

class ResponseHandler {
constructor(masterConfig, inputConfig) {
this.masterConfig = masterConfig || _objectSpread({}, DEFAULT_CONFIG);
this.inputConfig = inputConfig || _objectSpread({}, DEFAULT_CONFIG);
constructor(config) {
this.responseConfig = _lodash.default.merge(DEFAULT_CONFIG, config);
this.handleResponse = this.handleResponse.bind(this);

@@ -48,33 +43,15 @@ this.handleError = this.handleError.bind(this);

handleResponse(request, response, next) {
// Handle Route Match
if (!request.isMatch) {
var {
method,
originalUrl
} = request;
var message = "Cannot ".concat(method, " ").concat(originalUrl);
var responseHandler; // Handle Response for No Route
var _error = new ResponseBody(404, message);
var {
isMatch
} = request;
responseHandler = !isMatch && _handleNoRouteResponse; // Handle Response for EncryptedBody / Error / PlaintextBody
response.body = _error;
return _sendResponse(request, response, next);
} // Handle Response Error
var {
encryptedBody,
error
} = response;
if (error && error.constructor.name === ResponseBody.name) {
response.body = error;
return _sendResponse(request, response, next);
} // Handle Response Body
var resBody = response.encryptedBody || response.body || {};
var {
statusCode
} = resBody;
var handler = [301, 302].indexOf(statusCode) > -1 ? _redirectResponse : _sendResponse;
handler(request, response, next);
responseHandler = responseHandler || encryptedBody ? _handleDataResponse : error ? _handleErrorResponse : _handleDataResponse;
responseHandler(request, response, next);
}

@@ -104,2 +81,40 @@

function _handleNoRouteResponse(request, response, next) {
var {
method,
originalUrl
} = request;
var message = "Cannot ".concat(method, " ").concat(originalUrl);
var error = new ResponseBody(404, message);
response.body = error;
return _sendResponse(request, response, next);
}
function _handleErrorResponse(request, response, next) {
var {
error
} = response;
if (error.constructor.name === ResponseBody.name) {
response.body = error;
} else {
var {
statusCode = 500,
message = 'Unhandled Error'
} = error;
response.body = new ResponseBody(statusCode, message, undefined, error);
}
return _sendResponse(request, response, next);
}
function _handleDataResponse(request, response, next) {
var resBody = response.encryptedBody || response.body || {};
var {
statusCode
} = resBody;
var handler = [301, 302].indexOf(statusCode) > -1 ? _redirectResponse : _sendResponse;
handler(request, response, next);
}
function _sendResponse(request, response, next) {

@@ -106,0 +121,0 @@ var resBody = response.encryptedBody || response.body || {};

@@ -12,8 +12,2 @@ 'use strict';

function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
var DEFAULT_CONFIG = {

@@ -24,6 +18,4 @@ routes: {}

class RouteHandler {
constructor(masterConfig, inputConfig) {
this.masterConfig = masterConfig || _objectSpread({}, DEFAULT_CONFIG);
this.inputConfig = inputConfig || _objectSpread({}, DEFAULT_CONFIG);
this.routesConfig = _lodash.default.merge(this.masterConfig, this.inputConfig);
constructor(config) {
this.routesConfig = _lodash.default.merge(DEFAULT_CONFIG, config);
this.enableRoute = this.enableRoute.bind(this);

@@ -30,0 +22,0 @@ }

{
"name": "@ot06/be-utils",
"version": "0.0.21",
"version": "0.0.22",
"description": "Backend Utilities Module",

@@ -5,0 +5,0 @@ "main": "dist/index.js",

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