not-node 6.3.54 → 6.3.56

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "not-node",
3
- "version": "6.3.54",
3
+ "version": "6.3.56",
4
4
  "description": "node complimentary part for client side notFramework.",
5
5
  "main": "index.js",
6
6
  "scripts": {
package/src/common.js CHANGED
@@ -104,7 +104,8 @@ module.exports.copyObj = (obj) => {
104
104
 
105
105
  /**
106
106
  * Copies object to secure it from changes
107
- * @param {object} obj original object
107
+ * @param {object} obj original object
108
+ * @param {Array<string>} list properties list to include
108
109
  * @return {object} copy of object
109
110
  **/
110
111
  module.exports.partCopyObj = (obj, list) => {
@@ -117,6 +118,22 @@ module.exports.partCopyObj = (obj, list) => {
117
118
  return JSON.parse(JSON.stringify(partObj));
118
119
  };
119
120
 
121
+ /**
122
+ * Copies object to secure it from changes
123
+ * @param {object} obj original object
124
+ * @param {Array<string>} except properties list to exclude
125
+ * @return {object} copy of object
126
+ **/
127
+ module.exports.partCopyObjExcept = (obj, except) => {
128
+ let partObj = Object.keys(obj).reduce((prev, curr) => {
129
+ if (!except.includes(curr)) {
130
+ prev[curr] = obj[curr];
131
+ }
132
+ return prev;
133
+ }, {});
134
+ return JSON.parse(JSON.stringify(partObj));
135
+ };
136
+
120
137
  /**
121
138
  * Test argument type to be 'function'
122
139
  * @param {any} func possible function
@@ -208,12 +208,15 @@ class notRoute {
208
208
 
209
209
  async executeRoute(modRoute, actionName, { req, res, next }) {
210
210
  try {
211
+ let prepared = undefined;
211
212
  //waiting preparation
212
- let prepared = await this.executeFunction(
213
- modRoute,
214
- CONST_BEFORE_ACTION,
215
- [req, res, next]
216
- );
213
+ if (modRoute[CONST_AFTER_ACTION]) {
214
+ prepared = await this.executeFunction(
215
+ modRoute,
216
+ CONST_BEFORE_ACTION,
217
+ [req, res, next]
218
+ );
219
+ }
217
220
  //waiting results
218
221
  let result = await this.executeFunction(modRoute, actionName, [
219
222
  req,
@@ -234,12 +237,16 @@ class notRoute {
234
237
  notManifestRouteResultFilter.filter(req.notRouteData, result);
235
238
  }
236
239
  //run after with results, continue without waiting when it finished
237
- return this.executeFunction(modRoute, CONST_AFTER_ACTION, [
238
- req,
239
- res,
240
- next,
241
- result,
242
- ]);
240
+ if (modRoute[CONST_AFTER_ACTION]) {
241
+ return this.executeFunction(modRoute, CONST_AFTER_ACTION, [
242
+ req,
243
+ res,
244
+ next,
245
+ result,
246
+ ]);
247
+ } else {
248
+ return result;
249
+ }
243
250
  } catch (e) {
244
251
  next(e);
245
252
  }