drapcode-utility 1.2.3 → 1.2.4
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/build/encryption/KMS.js +1 -1
- package/build/encryption/crypt.js +2 -2
- package/build/encryption/file.js +4 -4
- package/build/encryption/index.js +14 -14
- package/build/encryption/model.d.ts +2 -2
- package/build/index.js +1 -5
- package/build/middlewares/error-logger.js +6 -6
- package/build/middlewares/interceptor-logger-new.js +6 -6
- package/build/middlewares/interceptor-logger.js +3 -3
- package/build/middlewares/redis/request-log.js +4 -4
- package/build/utils/check-error.js +8 -12
- package/build/utils/date-util.js +3 -3
- package/build/utils/query-parser.js +54 -58
- package/build/utils/query-paser-new.js +49 -53
- package/build/utils/s3-util.js +19 -22
- package/build/utils/util.d.ts +1 -1
- package/build/utils/util.js +22 -26
- package/build/utils/uuid-generator.js +2 -2
- package/package.json +3 -3
|
@@ -14,7 +14,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
14
14
|
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
15
|
function step(op) {
|
|
16
16
|
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
-
while (
|
|
17
|
+
while (_) try {
|
|
18
18
|
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
19
|
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
20
|
switch (op[0]) {
|
|
@@ -35,14 +35,10 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
35
35
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
36
|
}
|
|
37
37
|
};
|
|
38
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
ar[i] = from[i];
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
38
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from) {
|
|
39
|
+
for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
|
|
40
|
+
to[j] = from[i];
|
|
41
|
+
return to;
|
|
46
42
|
};
|
|
47
43
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
48
44
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
@@ -89,7 +85,7 @@ var queryParser = function (collectionName, query, constants, externalParams, cu
|
|
|
89
85
|
searchQueryObj = null;
|
|
90
86
|
if (searchObj) {
|
|
91
87
|
_a = getSearchObjQuery(searchObj, searchQueryTypeObj, timezone), searchAggregateQuery = _a.searchAggregateQuery, likeQuery = _a.likeQuery;
|
|
92
|
-
aggregateQuery = __spreadArray(__spreadArray([], aggregateQuery
|
|
88
|
+
aggregateQuery = __spreadArray(__spreadArray([], aggregateQuery), searchAggregateQuery);
|
|
93
89
|
console.log("likeQuery after getSearchObjQuery", JSON.stringify(likeQuery));
|
|
94
90
|
if (likeQuery && likeQuery.length > 0) {
|
|
95
91
|
searchQueryObj = likeQuery;
|
|
@@ -107,7 +103,7 @@ var queryParser = function (collectionName, query, constants, externalParams, cu
|
|
|
107
103
|
else if (searchObj) {
|
|
108
104
|
console.log("I donot have filter query");
|
|
109
105
|
_b = getSearchObjQuery(searchObj, searchQueryTypeObj, timezone), searchAggregateQuery = _b.searchAggregateQuery, likeQuery = _b.likeQuery;
|
|
110
|
-
aggregateQuery = __spreadArray(__spreadArray([], aggregateQuery
|
|
106
|
+
aggregateQuery = __spreadArray(__spreadArray([], aggregateQuery), searchAggregateQuery);
|
|
111
107
|
if (likeQuery.length) {
|
|
112
108
|
// aggregateQuery.push({ $match: { $or: likeQuery } });
|
|
113
109
|
aggregateQuery.push({ $match: { $and: likeQuery } });
|
|
@@ -128,7 +124,7 @@ var queryParser = function (collectionName, query, constants, externalParams, cu
|
|
|
128
124
|
if (field.type === "belongsTo") {
|
|
129
125
|
aggregateQuery.push({
|
|
130
126
|
$lookup: {
|
|
131
|
-
from: ""
|
|
127
|
+
from: "" + collectionName_1,
|
|
132
128
|
localField: field.fieldName,
|
|
133
129
|
foreignField: "uuid",
|
|
134
130
|
as: field.fieldName,
|
|
@@ -143,8 +139,8 @@ var queryParser = function (collectionName, query, constants, externalParams, cu
|
|
|
143
139
|
else {
|
|
144
140
|
aggregateQuery.push({
|
|
145
141
|
$lookup: {
|
|
146
|
-
from: ""
|
|
147
|
-
let: (_b = {}, _b[""
|
|
142
|
+
from: "" + collectionName_1,
|
|
143
|
+
let: (_b = {}, _b["" + field.fieldName] = "$" + field.fieldName, _b),
|
|
148
144
|
pipeline: [
|
|
149
145
|
{
|
|
150
146
|
$match: {
|
|
@@ -154,10 +150,10 @@ var queryParser = function (collectionName, query, constants, externalParams, cu
|
|
|
154
150
|
{
|
|
155
151
|
$cond: {
|
|
156
152
|
if: {
|
|
157
|
-
$in: ["$$"
|
|
153
|
+
$in: ["$$" + field.fieldName, ["", null]],
|
|
158
154
|
},
|
|
159
155
|
then: [],
|
|
160
|
-
else: { $ifNull: ["$$"
|
|
156
|
+
else: { $ifNull: ["$$" + field.fieldName, []] },
|
|
161
157
|
},
|
|
162
158
|
},
|
|
163
159
|
],
|
|
@@ -190,10 +186,10 @@ var queryParser = function (collectionName, query, constants, externalParams, cu
|
|
|
190
186
|
aggregateQuery.push({
|
|
191
187
|
$lookup: {
|
|
192
188
|
from: "user",
|
|
193
|
-
let: (_c = {}, _c[""
|
|
189
|
+
let: (_c = {}, _c["" + field.fieldName] = "$" + field.fieldName, _c),
|
|
194
190
|
pipeline: [
|
|
195
191
|
{
|
|
196
|
-
$match: { $expr: { $eq: ["$uuid", "$$"
|
|
192
|
+
$match: { $expr: { $eq: ["$uuid", "$$" + field.fieldName] } },
|
|
197
193
|
},
|
|
198
194
|
{ $project: { _id: 0, password: 0 } },
|
|
199
195
|
],
|
|
@@ -205,7 +201,7 @@ var queryParser = function (collectionName, query, constants, externalParams, cu
|
|
|
205
201
|
_e.sent();
|
|
206
202
|
_e.label = 2;
|
|
207
203
|
case 2:
|
|
208
|
-
if (finder != "COUNT" && !
|
|
204
|
+
if (finder != "COUNT" && !util_1.isEmpty(projection)) {
|
|
209
205
|
aggregateQuery.push({ $project: projection });
|
|
210
206
|
}
|
|
211
207
|
if (finder === "COUNT") {
|
|
@@ -226,8 +222,8 @@ var queryParser = function (collectionName, query, constants, externalParams, cu
|
|
|
226
222
|
}
|
|
227
223
|
console.log("==> aggregateQuery", aggregateQuery);
|
|
228
224
|
console.log("==> aggregateQuery", JSON.stringify(aggregateQuery));
|
|
229
|
-
queryStr = ".aggregate("
|
|
230
|
-
str = "req.db.collection('"
|
|
225
|
+
queryStr = ".aggregate(" + JSON.stringify(aggregateQuery) + ", { collation: { locale: \"en\" } })";
|
|
226
|
+
str = "req.db.collection('" + collectionName + "')" + queryStr;
|
|
231
227
|
str += ".toArray()";
|
|
232
228
|
return [2 /*return*/, str];
|
|
233
229
|
}
|
|
@@ -267,7 +263,7 @@ var mongoFilterQuery = function (query, externalParams, constants, currentUser,
|
|
|
267
263
|
filterQuery[lastKey].push(mongoQuery);
|
|
268
264
|
}
|
|
269
265
|
else {
|
|
270
|
-
filterQuery["$or"
|
|
266
|
+
filterQuery["$or" + index] = [mongoQuery];
|
|
271
267
|
}
|
|
272
268
|
}
|
|
273
269
|
else if (queryObj.conjunctionType == "AND") {
|
|
@@ -276,11 +272,11 @@ var mongoFilterQuery = function (query, externalParams, constants, currentUser,
|
|
|
276
272
|
filterQuery[lastKey].push(mongoQuery);
|
|
277
273
|
}
|
|
278
274
|
else {
|
|
279
|
-
filterQuery["$and"
|
|
275
|
+
filterQuery["$and" + index] = [mongoQuery];
|
|
280
276
|
}
|
|
281
277
|
}
|
|
282
278
|
else {
|
|
283
|
-
filterQuery["$or"
|
|
279
|
+
filterQuery["$or" + index] = [mongoQuery];
|
|
284
280
|
}
|
|
285
281
|
});
|
|
286
282
|
console.log("==> *** filterQuery mongoFilterQuery :>> ", filterQuery);
|
|
@@ -299,15 +295,15 @@ var mongoSelectQuery = function (query) {
|
|
|
299
295
|
if (fieldsInclude[0] === "*") {
|
|
300
296
|
fieldsExclude.map(function (field) {
|
|
301
297
|
if (field)
|
|
302
|
-
return (projection[""
|
|
298
|
+
return (projection["" + field] = 0);
|
|
303
299
|
});
|
|
304
300
|
}
|
|
305
301
|
else {
|
|
306
302
|
if (["FIND_ALL", "FIND"].includes(finder))
|
|
307
|
-
fieldsInclude =
|
|
303
|
+
fieldsInclude = util_1.processFieldsInlcude(fieldsInclude);
|
|
308
304
|
fieldsInclude.map(function (field) {
|
|
309
305
|
if (field)
|
|
310
|
-
return (projection[""
|
|
306
|
+
return (projection["" + field] = 1);
|
|
311
307
|
});
|
|
312
308
|
}
|
|
313
309
|
return projection;
|
|
@@ -339,7 +335,7 @@ var queryToMongo = function (query, requiredExternal, externalParams, constants,
|
|
|
339
335
|
//TODO: In case of this, we assign some random string to avoid resulting all values
|
|
340
336
|
//TODO: This is use case in Spot Factor Project, where a new user with blank value able to see all records
|
|
341
337
|
//TODO: Discussed on meet
|
|
342
|
-
fieldValue = "random_string_since_field_not_present_"
|
|
338
|
+
fieldValue = "random_string_since_field_not_present_" + moment_1.default(1318874398806).valueOf();
|
|
343
339
|
}
|
|
344
340
|
console.log("fieldValue queryToMongo 1", fieldValue);
|
|
345
341
|
var isDate = checkDate(fieldValue);
|
|
@@ -407,7 +403,7 @@ var queryToMongo = function (query, requiredExternal, externalParams, constants,
|
|
|
407
403
|
return _q = {},
|
|
408
404
|
_q[field] = {
|
|
409
405
|
$gte: fieldValue,
|
|
410
|
-
$lt:
|
|
406
|
+
$lt: date_util_1.nextDayDate(fieldValue),
|
|
411
407
|
},
|
|
412
408
|
_q;
|
|
413
409
|
// Todo: Remove this if works properly
|
|
@@ -463,7 +459,7 @@ var queryToMongo = function (query, requiredExternal, externalParams, constants,
|
|
|
463
459
|
},
|
|
464
460
|
_y;
|
|
465
461
|
if (key == drapcode_constant_1.BETWEEN) {
|
|
466
|
-
var _0 =
|
|
462
|
+
var _0 = exports.getMinMaxValue(fieldValue), startValue = _0.startValue, endValue = _0.endValue, isInteger = _0.isInteger;
|
|
467
463
|
return _z = {},
|
|
468
464
|
_z[field] = {
|
|
469
465
|
$gte: isInteger ? +startValue : startValue,
|
|
@@ -513,13 +509,13 @@ var replaceExternalParams = function (query, requiredExternal, externalParams, c
|
|
|
513
509
|
return valueList_1;
|
|
514
510
|
}
|
|
515
511
|
if (key === drapcode_constant_1.BETWEEN) {
|
|
516
|
-
var _a =
|
|
512
|
+
var _a = exports.getMinMaxValue(value), startValue_1 = _a.startValue, endValue_1 = _a.endValue, isInteger = _a.isInteger;
|
|
517
513
|
if (requiredExternal) {
|
|
518
|
-
startValue_1 = ""
|
|
519
|
-
endValue_1 = ""
|
|
514
|
+
startValue_1 = "" + externalParams[startValue_1];
|
|
515
|
+
endValue_1 = "" + externalParams[endValue_1];
|
|
520
516
|
}
|
|
521
517
|
else {
|
|
522
|
-
if (__spreadArray([drapcode_constant_1.CURRENT_USER], drapcode_constant_1.DateConstant
|
|
518
|
+
if (__spreadArray([drapcode_constant_1.CURRENT_USER], drapcode_constant_1.DateConstant).some(function (cnst) {
|
|
523
519
|
return startValue_1.includes(cnst);
|
|
524
520
|
})) {
|
|
525
521
|
startValue_1 = getValueOfProjectConstant(startValue_1, currentUser, timezone);
|
|
@@ -527,7 +523,7 @@ var replaceExternalParams = function (query, requiredExternal, externalParams, c
|
|
|
527
523
|
else {
|
|
528
524
|
startValue_1 = constants.filter(function (constant) { return constant.name == startValue_1; });
|
|
529
525
|
}
|
|
530
|
-
if (__spreadArray([drapcode_constant_1.CURRENT_USER], drapcode_constant_1.DateConstant
|
|
526
|
+
if (__spreadArray([drapcode_constant_1.CURRENT_USER], drapcode_constant_1.DateConstant).some(function (cnst) { return endValue_1.includes(cnst); })) {
|
|
531
527
|
endValue_1 = getValueOfProjectConstant(endValue_1, currentUser, timezone);
|
|
532
528
|
}
|
|
533
529
|
else {
|
|
@@ -543,10 +539,10 @@ var replaceExternalParams = function (query, requiredExternal, externalParams, c
|
|
|
543
539
|
}
|
|
544
540
|
//TODO: Need to figure out the params should be treated as number/string
|
|
545
541
|
if (!isNaN(startValue_1)) {
|
|
546
|
-
return
|
|
542
|
+
return startValue_1 + "---" + endValue_1 + "^";
|
|
547
543
|
}
|
|
548
544
|
else
|
|
549
|
-
return
|
|
545
|
+
return startValue_1 + "---" + endValue_1;
|
|
550
546
|
}
|
|
551
547
|
console.log("==> value", value);
|
|
552
548
|
console.log("==> currentUser", currentUser);
|
|
@@ -642,18 +638,18 @@ var replaceExternalParams = function (query, requiredExternal, externalParams, c
|
|
|
642
638
|
if (drapcode_constant_1.DateConstant.some(function (cnst) { return value.includes(cnst); })) {
|
|
643
639
|
return getValueOfProjectConstant(value, {}, timezone);
|
|
644
640
|
}
|
|
645
|
-
if (
|
|
641
|
+
if (exports.isEntityInCondition(value)) {
|
|
646
642
|
var key_1 = value.replace("ENTITY::", "");
|
|
647
643
|
return externalParams[key_1] ? externalParams[key_1] : "";
|
|
648
644
|
}
|
|
649
645
|
//TODO: This is just to confirm if external then it should be get from externalParams
|
|
650
646
|
if (requiredExternal) {
|
|
651
647
|
//TODO: Value returns from here undefined.
|
|
652
|
-
var externalParamValue = externalParams[""
|
|
648
|
+
var externalParamValue = externalParams["" + value];
|
|
653
649
|
if (!isNaN(externalParamValue)) {
|
|
654
650
|
return +externalParamValue;
|
|
655
651
|
}
|
|
656
|
-
return externalParams[""
|
|
652
|
+
return externalParams["" + value];
|
|
657
653
|
}
|
|
658
654
|
var constantArr = constants.filter(function (constant) { return constant.name == value; });
|
|
659
655
|
return constantArr.length ? "" + constantArr[0].value : "";
|
|
@@ -684,11 +680,11 @@ var getValueOfProjectConstant = function (value, currentUser, timezone) {
|
|
|
684
680
|
if (value === drapcode_constant_1.CURRENT_USER)
|
|
685
681
|
return currentUser["uuid"];
|
|
686
682
|
if (value === drapcode_constant_1.CURRENT_DATE)
|
|
687
|
-
result =
|
|
683
|
+
result = date_util_1.createLoggerDateFormat(timezone);
|
|
688
684
|
if ([drapcode_constant_1.CURRENT_TIME, drapcode_constant_1.CURRENT_DATE_TIME].includes(value))
|
|
689
|
-
result =
|
|
685
|
+
result = date_util_1.createLogsDateFormat(timezone);
|
|
690
686
|
if (drapcode_constant_1.DateTimeUnit.some(function (cnst) { return value.includes(cnst); }))
|
|
691
|
-
result =
|
|
687
|
+
result = date_util_1.getDateValue(value, timezone);
|
|
692
688
|
return result;
|
|
693
689
|
};
|
|
694
690
|
var getSearchObjQuery = function (searchObj, searchQueryTypeObj, timezone) {
|
|
@@ -704,11 +700,11 @@ var getSearchObjQuery = function (searchObj, searchQueryTypeObj, timezone) {
|
|
|
704
700
|
// if input is string and db field type is boolean
|
|
705
701
|
searchAggregateQuery.push({
|
|
706
702
|
$addFields: (_b = {},
|
|
707
|
-
_b["_"
|
|
703
|
+
_b["_" + key] = "$" + key,
|
|
708
704
|
_b),
|
|
709
705
|
});
|
|
710
706
|
likeQuery.push((_c = {},
|
|
711
|
-
_c["_"
|
|
707
|
+
_c["_" + key] = toBoolean(value),
|
|
712
708
|
_c));
|
|
713
709
|
}
|
|
714
710
|
else if ([
|
|
@@ -720,22 +716,22 @@ var getSearchObjQuery = function (searchObj, searchQueryTypeObj, timezone) {
|
|
|
720
716
|
// if input is string and db field type is array
|
|
721
717
|
searchAggregateQuery.push({
|
|
722
718
|
$addFields: (_d = {},
|
|
723
|
-
_d["_"
|
|
719
|
+
_d["_" + key] = "$" + key,
|
|
724
720
|
_d),
|
|
725
721
|
});
|
|
726
722
|
likeQuery.push((_e = {},
|
|
727
|
-
_e["_"
|
|
723
|
+
_e["_" + key] = { $all: [value] },
|
|
728
724
|
_e));
|
|
729
725
|
}
|
|
730
726
|
else if (searchQueryTypeKey === "tel") {
|
|
731
727
|
// handling value when db field type is tel
|
|
732
728
|
searchAggregateQuery.push({
|
|
733
729
|
$addFields: (_f = {},
|
|
734
|
-
_f["_"
|
|
730
|
+
_f["_" + key] = { $toString: "$" + key },
|
|
735
731
|
_f),
|
|
736
732
|
});
|
|
737
733
|
likeQuery.push((_g = {},
|
|
738
|
-
_g["_"
|
|
734
|
+
_g["_" + key] = {
|
|
739
735
|
$regex: value.startsWith("+") ? value.replace("+", "") : value,
|
|
740
736
|
$options: "i",
|
|
741
737
|
},
|
|
@@ -745,11 +741,11 @@ var getSearchObjQuery = function (searchObj, searchQueryTypeObj, timezone) {
|
|
|
745
741
|
// handling value when db field type is Double/Int
|
|
746
742
|
searchAggregateQuery.push({
|
|
747
743
|
$addFields: (_h = {},
|
|
748
|
-
_h["_"
|
|
744
|
+
_h["_" + key] = { $toString: { $toLong: "$" + key } },
|
|
749
745
|
_h),
|
|
750
746
|
});
|
|
751
747
|
likeQuery.push((_j = {},
|
|
752
|
-
_j["_"
|
|
748
|
+
_j["_" + key] = {
|
|
753
749
|
$regex: value,
|
|
754
750
|
$options: "i",
|
|
755
751
|
},
|
|
@@ -761,20 +757,20 @@ var getSearchObjQuery = function (searchObj, searchQueryTypeObj, timezone) {
|
|
|
761
757
|
fieldKey = fieldKey.replace("end_", "");
|
|
762
758
|
searchAggregateQuery.push({
|
|
763
759
|
$addFields: (_k = {},
|
|
764
|
-
_k["_"
|
|
760
|
+
_k["_" + key] = { $toString: "$" + fieldKey },
|
|
765
761
|
_k),
|
|
766
762
|
});
|
|
767
763
|
if (key.startsWith("start_")) {
|
|
768
764
|
likeQuery.push((_l = {},
|
|
769
|
-
_l["_"
|
|
770
|
-
$gte:
|
|
765
|
+
_l["_" + key] = {
|
|
766
|
+
$gte: date_util_1.timezoneDateParse(value, false, true),
|
|
771
767
|
},
|
|
772
768
|
_l));
|
|
773
769
|
}
|
|
774
770
|
else if (key.startsWith("end_")) {
|
|
775
771
|
likeQuery.push((_m = {},
|
|
776
|
-
_m["_"
|
|
777
|
-
$lt:
|
|
772
|
+
_m["_" + key] = {
|
|
773
|
+
$lt: date_util_1.timezoneDateParse(value, true),
|
|
778
774
|
},
|
|
779
775
|
_m));
|
|
780
776
|
}
|
|
@@ -785,11 +781,11 @@ var getSearchObjQuery = function (searchObj, searchQueryTypeObj, timezone) {
|
|
|
785
781
|
// converting db field to string first
|
|
786
782
|
searchAggregateQuery.push({
|
|
787
783
|
$addFields: (_o = {},
|
|
788
|
-
_o["_"
|
|
784
|
+
_o["_" + key] = { $toString: "$" + key },
|
|
789
785
|
_o),
|
|
790
786
|
});
|
|
791
787
|
likeQuery.push((_p = {},
|
|
792
|
-
_p["_"
|
|
788
|
+
_p["_" + key] = {
|
|
793
789
|
$regex: value,
|
|
794
790
|
$options: "i",
|
|
795
791
|
},
|