drapcode-utility 2.7.3 → 2.7.4-sandbox.1
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/aws/aws-util.d.ts +6 -0
- package/build/aws/aws-util.d.ts.map +1 -0
- package/build/aws/aws-util.js +34 -0
- package/build/aws/aws-util.js.map +1 -0
- package/build/aws/encryption/KMS.d.ts +9 -0
- package/build/aws/encryption/KMS.d.ts.map +1 -0
- package/build/aws/encryption/KMS.js +65 -0
- package/build/aws/encryption/KMS.js.map +1 -0
- package/build/{encryption → aws/encryption}/crypt.d.ts +1 -0
- package/build/aws/encryption/crypt.d.ts.map +1 -0
- package/build/{encryption → aws/encryption}/crypt.js +25 -36
- package/build/aws/encryption/crypt.js.map +1 -0
- package/build/{encryption → aws/encryption}/file.d.ts +2 -1
- package/build/aws/encryption/file.d.ts.map +1 -0
- package/build/{encryption → aws/encryption}/file.js +2 -3
- package/build/aws/encryption/file.js.map +1 -0
- package/build/{encryption → aws/encryption}/index.d.ts +4 -3
- package/build/aws/encryption/index.d.ts.map +1 -0
- package/build/{encryption → aws/encryption}/index.js +41 -41
- package/build/aws/encryption/index.js.map +1 -0
- package/build/{encryption → aws/encryption}/utility.d.ts +1 -0
- package/build/aws/encryption/utility.d.ts.map +1 -0
- package/build/{encryption → aws/encryption}/utility.js +3 -2
- package/build/aws/encryption/utility.js.map +1 -0
- package/build/aws/model.d.ts +30 -0
- package/build/aws/model.d.ts.map +1 -0
- package/build/{encryption → aws}/model.js +1 -0
- package/build/aws/model.js.map +1 -0
- package/build/aws/s3-util.d.ts +36 -0
- package/build/aws/s3-util.d.ts.map +1 -0
- package/build/aws/s3-util.js +198 -0
- package/build/aws/s3-util.js.map +1 -0
- package/build/errors/app-error.d.ts +17 -4
- package/build/errors/app-error.d.ts.map +1 -0
- package/build/errors/app-error.js +184 -6
- package/build/errors/app-error.js.map +1 -0
- package/build/errors/async-handler.d.ts +3 -0
- package/build/errors/async-handler.d.ts.map +1 -0
- package/build/errors/async-handler.js +9 -0
- package/build/errors/async-handler.js.map +1 -0
- package/build/errors/axios-error.d.ts +2 -1
- package/build/errors/axios-error.d.ts.map +1 -0
- package/build/errors/axios-error.js +12 -8
- package/build/errors/axios-error.js.map +1 -0
- package/build/errors/bad-request-error.d.ts +2 -1
- package/build/errors/bad-request-error.d.ts.map +1 -0
- package/build/errors/bad-request-error.js +1 -0
- package/build/errors/bad-request-error.js.map +1 -0
- package/build/errors/custom-error.d.ts +1 -0
- package/build/errors/custom-error.d.ts.map +1 -0
- package/build/errors/custom-error.js +1 -0
- package/build/errors/custom-error.js.map +1 -0
- package/build/errors/error-classes.d.ts +23 -0
- package/build/errors/error-classes.d.ts.map +1 -0
- package/build/errors/error-classes.js +87 -0
- package/build/errors/error-classes.js.map +1 -0
- package/build/errors/error-codes.d.ts +47 -0
- package/build/errors/error-codes.d.ts.map +1 -0
- package/build/errors/error-codes.js +78 -0
- package/build/errors/error-codes.js.map +1 -0
- package/build/errors/error-obj.d.ts +10 -0
- package/build/errors/error-obj.d.ts.map +1 -0
- package/build/errors/error-obj.js +55 -0
- package/build/errors/error-obj.js.map +1 -0
- package/build/errors/get-error-details.d.ts +11 -0
- package/build/errors/get-error-details.d.ts.map +1 -0
- package/build/errors/get-error-details.js +28 -0
- package/build/errors/get-error-details.js.map +1 -0
- package/build/errors/not-found.d.ts +2 -1
- package/build/errors/not-found.d.ts.map +1 -0
- package/build/errors/not-found.js +3 -2
- package/build/errors/not-found.js.map +1 -0
- package/build/errors/wrap-error.d.ts +9 -0
- package/build/errors/wrap-error.d.ts.map +1 -0
- package/build/errors/wrap-error.js +17 -0
- package/build/errors/wrap-error.js.map +1 -0
- package/build/format-fields/index.d.ts +1 -0
- package/build/format-fields/index.d.ts.map +1 -0
- package/build/format-fields/index.js +13 -13
- package/build/format-fields/index.js.map +1 -0
- package/build/index.d.ts +25 -21
- package/build/index.d.ts.map +1 -0
- package/build/index.js +13 -7
- package/build/index.js.map +1 -0
- package/build/middlewares/redis/request-log.d.ts +1 -0
- package/build/middlewares/redis/request-log.d.ts.map +1 -0
- package/build/middlewares/redis/request-log.js +3 -2
- package/build/middlewares/redis/request-log.js.map +1 -0
- package/build/query/queryBuilder.d.ts +1 -0
- package/build/query/queryBuilder.d.ts.map +1 -0
- package/build/query/queryBuilder.js +66 -129
- package/build/query/queryBuilder.js.map +1 -0
- package/build/utils/check-error.d.ts +1 -0
- package/build/utils/check-error.d.ts.map +1 -0
- package/build/utils/check-error.js +14 -15
- package/build/utils/check-error.js.map +1 -0
- package/build/utils/common-util.d.ts +2 -1
- package/build/utils/common-util.d.ts.map +1 -0
- package/build/utils/common-util.js +46 -47
- package/build/utils/common-util.js.map +1 -0
- package/build/utils/date-util.d.ts +1 -0
- package/build/utils/date-util.d.ts.map +1 -0
- package/build/utils/date-util.js +59 -60
- package/build/utils/date-util.js.map +1 -0
- package/build/utils/file-util.d.ts +9 -0
- package/build/utils/file-util.d.ts.map +1 -0
- package/build/utils/file-util.js +120 -9
- package/build/utils/file-util.js.map +1 -0
- package/build/utils/prepare-query.d.ts +1 -0
- package/build/utils/prepare-query.d.ts.map +1 -0
- package/build/utils/prepare-query.js +15 -17
- package/build/utils/prepare-query.js.map +1 -0
- package/build/utils/project-util.d.ts +2 -1
- package/build/utils/project-util.d.ts.map +1 -0
- package/build/utils/project-util.js +45 -50
- package/build/utils/project-util.js.map +1 -0
- package/build/utils/query-parser.d.ts +1 -1
- package/build/utils/query-parser.d.ts.map +1 -0
- package/build/utils/query-parser.js +6 -568
- package/build/utils/query-parser.js.map +1 -0
- package/build/utils/query-utils.d.ts +1 -0
- package/build/utils/query-utils.d.ts.map +1 -0
- package/build/utils/query-utils.js +46 -50
- package/build/utils/query-utils.js.map +1 -0
- package/build/utils/rest-client.d.ts +1 -0
- package/build/utils/rest-client.d.ts.map +1 -0
- package/build/utils/rest-client.js +88 -122
- package/build/utils/rest-client.js.map +1 -0
- package/build/utils/token.d.ts +1 -0
- package/build/utils/token.d.ts.map +1 -0
- package/build/utils/token.js +4 -3
- package/build/utils/token.js.map +1 -0
- package/build/utils/util.d.ts +2 -1
- package/build/utils/util.d.ts.map +1 -0
- package/build/utils/util.js +340 -392
- package/build/utils/util.js.map +1 -0
- package/build/utils/uuid-generator.d.ts +1 -0
- package/build/utils/uuid-generator.d.ts.map +1 -0
- package/build/utils/uuid-generator.js +9 -8
- package/build/utils/uuid-generator.js.map +1 -0
- package/package.json +7 -6
- package/build/encryption/KMS.d.ts +0 -8
- package/build/encryption/KMS.js +0 -67
- package/build/encryption/model.d.ts +0 -17
- package/build/middlewares/error-logger.d.ts +0 -3
- package/build/middlewares/error-logger.js +0 -74
- package/build/utils/s3-util.d.ts +0 -36
- package/build/utils/s3-util.js +0 -275
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request-log.d.ts","sourceRoot":"","sources":["../../../src/middlewares/redis/request-log.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,WAAW,GAAU,MAAK,GAAQ,EAAE,MAAK,GAAQ,kBAuB7D,CAAC"}
|
|
@@ -6,7 +6,7 @@ const util_1 = require("../../utils/util");
|
|
|
6
6
|
const saveRequest = async (req = {}, res = {}) => {
|
|
7
7
|
req.body = (0, util_1.isEmpty)(req.body) ? req.query : req.body;
|
|
8
8
|
let redisData;
|
|
9
|
-
|
|
9
|
+
const ip = req.headers['x-forwarded-for'] ||
|
|
10
10
|
req.connection.remoteAddress ||
|
|
11
11
|
req.socket.remoteAddress ||
|
|
12
12
|
(req.connection.socket ? req.connection.socket.remoteAddress : null);
|
|
@@ -20,10 +20,11 @@ const saveRequest = async (req = {}, res = {}) => {
|
|
|
20
20
|
response: JSON.stringify(res),
|
|
21
21
|
ipAddress: ip,
|
|
22
22
|
};
|
|
23
|
-
redisData = await (0, drapcode_redis_1.redis_get_method)(
|
|
23
|
+
redisData = await (0, drapcode_redis_1.redis_get_method)('requestLog');
|
|
24
24
|
if (!redisData)
|
|
25
25
|
redisData = [];
|
|
26
26
|
redisData.push(respObj);
|
|
27
27
|
await (0, drapcode_redis_1.redis_set_method)(`requestLog`, redisData);
|
|
28
28
|
};
|
|
29
29
|
exports.saveRequest = saveRequest;
|
|
30
|
+
//# sourceMappingURL=request-log.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request-log.js","sourceRoot":"","sources":["../../../src/middlewares/redis/request-log.ts"],"names":[],"mappings":";;;AAAA,mDAAoE;AACpE,2CAA2C;AAEpC,MAAM,WAAW,GAAG,KAAK,EAAE,MAAW,EAAE,EAAE,MAAW,EAAE,EAAE,EAAE;IAChE,GAAG,CAAC,IAAI,GAAG,IAAA,cAAO,EAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;IACpD,IAAI,SAAc,CAAC;IACnB,MAAM,EAAE,GACN,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC;QAC9B,GAAG,CAAC,UAAU,CAAC,aAAa;QAC5B,GAAG,CAAC,MAAM,CAAC,aAAa;QACxB,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAEvE,MAAM,OAAO,GAAG;QACd,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,KAAK,EAAE,GAAG,CAAC,WAAW;QACtB,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,UAAU,EAAE,GAAG,CAAC,UAAU,IAAI,GAAG;QACjC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC;QACjC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;QAC7B,SAAS,EAAE,EAAE;KACd,CAAC;IACF,SAAS,GAAG,MAAM,IAAA,iCAAgB,EAAC,YAAY,CAAC,CAAC;IACjD,IAAI,CAAC,SAAS;QAAE,SAAS,GAAG,EAAE,CAAC;IAC/B,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACxB,MAAM,IAAA,iCAAgB,EAAC,YAAY,EAAE,SAAS,CAAC,CAAC;AAClD,CAAC,CAAC;AAvBW,QAAA,WAAW,eAuBtB"}
|
|
@@ -7,3 +7,4 @@ interface AuthDetail {
|
|
|
7
7
|
export declare const queryBuilder: (collectionName: string, query: any, constants: any[], externalParams: any, authDetail: AuthDetail, timezone: string, searchObj: any | undefined, refCollectionFieldsInItems: any | undefined, searchQueryTypeObj: any | undefined, lookupConfig: any | undefined, rowLevelSecurityFilter: any) => Promise<any>;
|
|
8
8
|
export declare const isEntityCondition: (value: any) => boolean;
|
|
9
9
|
export {};
|
|
10
|
+
//# sourceMappingURL=queryBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queryBuilder.d.ts","sourceRoot":"","sources":["../../src/query/queryBuilder.ts"],"names":[],"mappings":"AAuCA,UAAU,UAAU;IAClB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,SAAS,CAAC,EAAE,GAAG,CAAC;CACjB;AAYD,eAAO,MAAM,YAAY,GACvB,gBAAgB,MAAM,EACtB,OAAO,GAAG,EACV,WAAW,GAAG,EAAE,EAChB,gBAAgB,GAAG,EACnB,YAAY,UAAU,EACtB,UAAU,MAAM,EAChB,WAAW,GAAG,YAAO,EACrB,4BAA4B,GAAG,YAAO,EACtC,oBAAoB,GAAG,YAAK,EAC5B,cAAc,GAAG,YAAK,EACtB,wBAAwB,GAAG,iBAoH5B,CAAC;AA0cF,eAAO,MAAM,iBAAiB,GAAI,OAAO,GAAG,KAAG,OAM9C,CAAC"}
|
|
@@ -6,23 +6,16 @@ const query_utils_1 = require("../utils/query-utils");
|
|
|
6
6
|
const date_util_1 = require("../utils/date-util");
|
|
7
7
|
const prepare_query_1 = require("../utils/prepare-query");
|
|
8
8
|
const util_1 = require("../utils/util");
|
|
9
|
-
const noFieldString =
|
|
9
|
+
const noFieldString = 'random_string_since_field_not_present_1318874398806';
|
|
10
10
|
const { boolean, number } = drapcode_constant_1.FieldTypes;
|
|
11
11
|
const isEqualOrIgnore = [drapcode_constant_1.EQUALS, drapcode_constant_1.EQUALS_OR_IGNORE];
|
|
12
12
|
const queryBuilder = async (collectionName, query, constants, externalParams, authDetail, timezone, searchObj = null, refCollectionFieldsInItems = null, searchQueryTypeObj = {}, lookupConfig = [], rowLevelSecurityFilter) => {
|
|
13
13
|
if (!collectionName || !query)
|
|
14
|
-
return
|
|
14
|
+
return '';
|
|
15
15
|
let finalQuery = { $and: [] };
|
|
16
16
|
// Apply both filters using the helper
|
|
17
17
|
applyFilterQuery(query, finalQuery, externalParams, constants, timezone, authDetail);
|
|
18
|
-
console.log("After main query check: ", JSON.stringify(finalQuery));
|
|
19
|
-
// finalQuery = simplifyMongoQuery(finalQuery);
|
|
20
|
-
// console.log("After main simplifyMongoQuery: ", JSON.stringify(finalQuery));
|
|
21
18
|
applyFilterQuery(rowLevelSecurityFilter, finalQuery, externalParams, constants, timezone, authDetail);
|
|
22
|
-
console.log("After RLS query check: ", JSON.stringify(finalQuery));
|
|
23
|
-
// finalQuery = simplifyMongoQuery(finalQuery);
|
|
24
|
-
// console.log("After RLS simplifyMongoQuery: ", JSON.stringify(finalQuery));
|
|
25
|
-
console.log(`==> searchQueryTypeObj :>>`, searchQueryTypeObj);
|
|
26
19
|
let aggregateQuery = [];
|
|
27
20
|
let searchQueryObj = null;
|
|
28
21
|
if (searchObj) {
|
|
@@ -32,90 +25,80 @@ const queryBuilder = async (collectionName, query, constants, externalParams, au
|
|
|
32
25
|
searchQueryObj = likeQuery;
|
|
33
26
|
}
|
|
34
27
|
}
|
|
35
|
-
console.log("1");
|
|
36
28
|
if (searchQueryObj) {
|
|
37
29
|
finalQuery.$and.push(...searchQueryObj);
|
|
38
30
|
}
|
|
39
|
-
console.log("2");
|
|
40
31
|
const { tenant, user } = authDetail;
|
|
41
32
|
const { addTenantQuery, addSubTenantQuery } = query;
|
|
42
33
|
const additionalFilters = [];
|
|
43
34
|
if (addTenantQuery && tenant?.uuid) {
|
|
44
35
|
additionalFilters.push({ tenantId: tenant.uuid });
|
|
45
36
|
}
|
|
46
|
-
|
|
47
|
-
if (addSubTenantQuery &&
|
|
48
|
-
Array.isArray(user.subTenantId) &&
|
|
49
|
-
user.subTenantId.length > 0) {
|
|
50
|
-
console.log("4");
|
|
37
|
+
if (addSubTenantQuery && Array.isArray(user.subTenantId) && user.subTenantId.length > 0) {
|
|
51
38
|
const subTenantUuids = user.subTenantId
|
|
52
39
|
.map((item) => item?.uuid)
|
|
53
40
|
.filter((uuid) => uuid); // Filters out undefined/null
|
|
54
|
-
console.log("5");
|
|
55
41
|
if (subTenantUuids && subTenantUuids.length > 0) {
|
|
56
42
|
additionalFilters.push({ subTenantId: { $in: subTenantUuids } });
|
|
57
43
|
}
|
|
58
44
|
}
|
|
59
|
-
console.log("6");
|
|
60
45
|
if (additionalFilters.length > 0) {
|
|
61
46
|
finalQuery.$and.push(...additionalFilters);
|
|
62
47
|
}
|
|
63
|
-
console.log("7");
|
|
64
48
|
finalQuery = simplifyMongoQuery(finalQuery);
|
|
65
|
-
console.log("After all simplifyMongoQuery: ", JSON.stringify(finalQuery));
|
|
66
49
|
//Remove empty and in final query
|
|
67
50
|
if (!finalQuery?.$and?.length) {
|
|
68
51
|
delete finalQuery.$and;
|
|
69
52
|
}
|
|
70
|
-
console.log("8");
|
|
71
53
|
if (finalQuery && Object.keys(finalQuery).length) {
|
|
72
54
|
aggregateQuery.push({ $match: finalQuery });
|
|
73
55
|
}
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
56
|
+
const projection = (0, query_utils_1.mongoSelectQuery)(query);
|
|
57
|
+
const { finder, orderBy, aggregateFunctionField } = query;
|
|
58
|
+
let { sortBy } = query;
|
|
59
|
+
if (finder != 'COUNT' && refCollectionFieldsInItems) {
|
|
77
60
|
await Promise.all(refCollectionFieldsInItems.map((field) => (0, prepare_query_1.commonLookupSetting)(field, lookupConfig, aggregateQuery)));
|
|
78
61
|
}
|
|
79
62
|
if (!util_1.nonFindQuery.includes(finder) && !(0, util_1.isEmpty)(projection)) {
|
|
80
63
|
aggregateQuery.push({ $project: projection });
|
|
81
64
|
}
|
|
82
|
-
if (finder ===
|
|
65
|
+
if (finder === 'COUNT') {
|
|
83
66
|
aggregateQuery.push({ $group: { _id: null, count: { $sum: 1 } } });
|
|
84
67
|
}
|
|
85
|
-
else if (finder ===
|
|
68
|
+
else if (finder === 'SUM') {
|
|
86
69
|
aggregateQuery.push({
|
|
87
70
|
$group: { _id: null, total: { $sum: `$${aggregateFunctionField}` } },
|
|
88
71
|
});
|
|
89
72
|
}
|
|
90
|
-
else if (finder ===
|
|
73
|
+
else if (finder === 'AVG') {
|
|
91
74
|
aggregateQuery.push({
|
|
92
75
|
$group: { _id: null, average: { $avg: `$${aggregateFunctionField}` } },
|
|
93
76
|
});
|
|
94
77
|
}
|
|
95
|
-
else if (finder ===
|
|
78
|
+
else if (finder === 'MIN') {
|
|
96
79
|
aggregateQuery.push({
|
|
97
80
|
$group: { _id: null, minimum: { $min: `$${aggregateFunctionField}` } },
|
|
98
81
|
});
|
|
99
82
|
}
|
|
100
|
-
else if (finder ===
|
|
83
|
+
else if (finder === 'MAX') {
|
|
101
84
|
aggregateQuery.push({
|
|
102
85
|
$group: { _id: null, maximum: { $max: `$${aggregateFunctionField}` } },
|
|
103
86
|
});
|
|
104
87
|
}
|
|
105
88
|
let offset = externalParams.offset || 0;
|
|
106
89
|
let limit = externalParams.limit || 20000;
|
|
107
|
-
|
|
108
|
-
if (externalParams.pagination ==
|
|
90
|
+
const resetLimit = externalParams.resetLimit || false;
|
|
91
|
+
if (externalParams.pagination == 'false') {
|
|
109
92
|
limit = 0;
|
|
110
93
|
sortBy = 0;
|
|
111
94
|
}
|
|
112
95
|
// Reset limit value to 1 in case filter is of type FIND or when it's a COUNT finder for FIND filter
|
|
113
|
-
if (finder ===
|
|
96
|
+
if (finder === 'FIND' || (util_1.nonFindQuery.includes(finder) && resetLimit)) {
|
|
114
97
|
offset = 0;
|
|
115
98
|
limit = 1;
|
|
116
99
|
}
|
|
117
100
|
if (!util_1.nonFindQuery.includes(finder) && sortBy) {
|
|
118
|
-
|
|
101
|
+
const direction = orderBy && orderBy == 'asc' ? 1 : -1;
|
|
119
102
|
aggregateQuery.push({ $sort: { [sortBy]: direction, _id: 1 } });
|
|
120
103
|
}
|
|
121
104
|
if (!util_1.nonFindQuery.includes(finder) && limit) {
|
|
@@ -125,7 +108,7 @@ const queryBuilder = async (collectionName, query, constants, externalParams, au
|
|
|
125
108
|
};
|
|
126
109
|
exports.queryBuilder = queryBuilder;
|
|
127
110
|
const simplifyMongoQuery = (query) => {
|
|
128
|
-
if (typeof query !==
|
|
111
|
+
if (typeof query !== 'object' || query === null)
|
|
129
112
|
return query;
|
|
130
113
|
const keys = Object.keys(query);
|
|
131
114
|
// Recursively simplify nested queries
|
|
@@ -134,7 +117,7 @@ const simplifyMongoQuery = (query) => {
|
|
|
134
117
|
? query[key].map(simplifyMongoQuery)
|
|
135
118
|
: simplifyMongoQuery(query[key]);
|
|
136
119
|
}
|
|
137
|
-
if (keys.length === 1 && (keys[0] ===
|
|
120
|
+
if (keys.length === 1 && (keys[0] === '$and' || keys[0] === '$or')) {
|
|
138
121
|
const op = keys[0];
|
|
139
122
|
const conditions = query[op];
|
|
140
123
|
// Flatten if nested same operator inside
|
|
@@ -154,15 +137,8 @@ const simplifyMongoQuery = (query) => {
|
|
|
154
137
|
};
|
|
155
138
|
const applyFilterQuery = (filter, finalQuery, externalParams, constants, timezone, authDetail) => {
|
|
156
139
|
const generatedQuery = createFilterQuery(filter, externalParams, constants, timezone, authDetail);
|
|
157
|
-
console.log("**************************");
|
|
158
140
|
if (generatedQuery)
|
|
159
141
|
finalQuery.$and.push(generatedQuery);
|
|
160
|
-
// const first = generatedQuery;
|
|
161
|
-
// const hasOr = first?.$or?.length > 0;
|
|
162
|
-
// const hasAnd = first?.$and?.length > 0;
|
|
163
|
-
// if (generatedQuery.length && (hasOr || hasAnd)) {
|
|
164
|
-
// finalQuery.$and.push(...generatedQuery);
|
|
165
|
-
// }
|
|
166
142
|
};
|
|
167
143
|
const createFilterQuery = (query, externalParams, constants, timezone, authDetail) => {
|
|
168
144
|
if (!query || !query.conditions.length)
|
|
@@ -172,15 +148,13 @@ const createFilterQuery = (query, externalParams, constants, timezone, authDetai
|
|
|
172
148
|
const filterQuery = { $or0: [] };
|
|
173
149
|
const finalConditions = [];
|
|
174
150
|
conditions.forEach((queryObj, index) => {
|
|
175
|
-
console.log("queryObj :>> ", queryObj);
|
|
176
151
|
const { query, requiredExternal, conjunctionType } = queryObj;
|
|
177
|
-
|
|
178
|
-
console.log("mongoQuery :>> ", mongoQuery);
|
|
152
|
+
const mongoQuery = conditionToQuery(query, requiredExternal, externalParams, constants, timezone, authDetail);
|
|
179
153
|
if (mongoQuery) {
|
|
180
154
|
finalConditions.push({ conjunctionType, query: mongoQuery });
|
|
181
|
-
queryConjunctions.push(conjunctionType ||
|
|
182
|
-
const key = `$${conjunctionType?.toLowerCase() ||
|
|
183
|
-
if ([
|
|
155
|
+
queryConjunctions.push(conjunctionType || 'OR');
|
|
156
|
+
const key = `$${conjunctionType?.toLowerCase() || 'or'}${index}`;
|
|
157
|
+
if (['OR', 'AND'].includes(conjunctionType || '')) {
|
|
184
158
|
const lastKey = Object.keys(filterQuery)[Object.keys(filterQuery).length - 1];
|
|
185
159
|
if (filterQuery[lastKey] && Array.isArray(filterQuery[lastKey])) {
|
|
186
160
|
filterQuery[lastKey].push(mongoQuery);
|
|
@@ -195,10 +169,8 @@ const createFilterQuery = (query, externalParams, constants, timezone, authDetai
|
|
|
195
169
|
}
|
|
196
170
|
});
|
|
197
171
|
const newQuery = prepareFinalQueryString(finalConditions);
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
const oldQuery = (0, query_utils_1.modifyQuery)(filterQuery, hasAndQueryConjunction);
|
|
201
|
-
console.log("oldQuery :>> ", JSON.stringify(oldQuery));
|
|
172
|
+
const hasAndQueryConjunction = queryConjunctions.includes('AND');
|
|
173
|
+
(0, query_utils_1.modifyQuery)(filterQuery, hasAndQueryConjunction);
|
|
202
174
|
return newQuery;
|
|
203
175
|
};
|
|
204
176
|
const prepareFinalQueryString = (conditions) => {
|
|
@@ -212,10 +184,10 @@ const prepareFinalQueryString = (conditions) => {
|
|
|
212
184
|
finalQuery = query;
|
|
213
185
|
}
|
|
214
186
|
else {
|
|
215
|
-
if (conjunctionType ===
|
|
187
|
+
if (conjunctionType === 'AND') {
|
|
216
188
|
finalQuery = { $and: [finalQuery, query] };
|
|
217
189
|
}
|
|
218
|
-
else if (conjunctionType ===
|
|
190
|
+
else if (conjunctionType === 'OR') {
|
|
219
191
|
finalQuery = { $or: [finalQuery, query] };
|
|
220
192
|
}
|
|
221
193
|
else {
|
|
@@ -227,49 +199,34 @@ const prepareFinalQueryString = (conditions) => {
|
|
|
227
199
|
};
|
|
228
200
|
const conditionToQuery = (query, requiredExternal, externalParams, constants, timezone, authDetail) => {
|
|
229
201
|
const { key, field, value, fieldType } = query;
|
|
230
|
-
console.log("query :>> ", query);
|
|
231
202
|
if ([drapcode_constant_1.NOT_EQUAL, ...isEqualOrIgnore].includes(key) &&
|
|
232
|
-
typeof value ===
|
|
203
|
+
typeof value === 'string' &&
|
|
233
204
|
drapcode_constant_1.DateRangeConstant.some((cnst) => value.includes(cnst))) {
|
|
234
|
-
|
|
205
|
+
const final = (0, date_util_1.getDateRangeValue)(key, field, value, fieldType);
|
|
235
206
|
return final;
|
|
236
207
|
}
|
|
237
|
-
console.log("No date range constants");
|
|
238
208
|
let fieldValue = changeExternalParams(query, requiredExternal, externalParams, constants, timezone, authDetail);
|
|
239
|
-
|
|
240
|
-
console.log("type of fieldValue :>> ", typeof fieldValue);
|
|
241
|
-
if (["undefined", "null", null, undefined, ""].includes(fieldValue)) {
|
|
242
|
-
//Assign some random value if fieldValue is missing from old records
|
|
209
|
+
if (['undefined', 'null', null, undefined, ''].includes(fieldValue)) {
|
|
243
210
|
fieldValue = noFieldString;
|
|
244
211
|
}
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
console.log("isDate queryToMongo 2", isDate);
|
|
248
|
-
// Field Type: reference, belongsTo, static option and dynamic option
|
|
249
|
-
let condition = drapcode_constant_1.AllSelectOptionFields.includes(fieldType);
|
|
250
|
-
console.log("If field is of type reference, belongs, static or dynamic option:", condition);
|
|
212
|
+
const isDate = (0, query_utils_1.isItDate)(fieldValue);
|
|
213
|
+
const condition = drapcode_constant_1.AllSelectOptionFields.includes(fieldType);
|
|
251
214
|
if (condition) {
|
|
252
215
|
if (key === drapcode_constant_1.IS_NULL) {
|
|
253
216
|
return {
|
|
254
|
-
$or: [
|
|
255
|
-
{ [field]: { $exists: false } },
|
|
256
|
-
{ [field]: { $type: "array", $eq: [] } },
|
|
257
|
-
],
|
|
217
|
+
$or: [{ [field]: { $exists: false } }, { [field]: { $type: 'array', $eq: [] } }],
|
|
258
218
|
};
|
|
259
219
|
}
|
|
260
220
|
if (key === drapcode_constant_1.IS_NOT_NULL) {
|
|
261
|
-
return { [field]: { $exists: true, $type:
|
|
221
|
+
return { [field]: { $exists: true, $type: 'array', $ne: [] } };
|
|
262
222
|
}
|
|
263
223
|
if (!isDate) {
|
|
264
224
|
if (key === drapcode_constant_1.EQUALS_OR_IGNORE &&
|
|
265
|
-
typeof fieldValue ===
|
|
266
|
-
fieldValue.startsWith(
|
|
267
|
-
//When Current Logged In Tenant/Settings/User have no data in that specific field
|
|
268
|
-
//Then they return the fieldValue as CURRENT_SETTINGS:field not blank
|
|
225
|
+
typeof fieldValue === 'string' &&
|
|
226
|
+
fieldValue.startsWith('CURRENT_')) {
|
|
269
227
|
return {};
|
|
270
228
|
}
|
|
271
229
|
fieldValue = prepNonArrayValue(fieldValue);
|
|
272
|
-
console.log("After Non Array check:", fieldValue);
|
|
273
230
|
if (isEqualOrIgnore.includes(key)) {
|
|
274
231
|
return { [field]: { $in: fieldValue || [] } };
|
|
275
232
|
}
|
|
@@ -291,18 +248,13 @@ const conditionToQuery = (query, requiredExternal, externalParams, constants, ti
|
|
|
291
248
|
}
|
|
292
249
|
}
|
|
293
250
|
else {
|
|
294
|
-
//Since we already checked condition for array/dropdown field type
|
|
295
|
-
//static_option, dynamic_option, reference, belongsTo
|
|
296
|
-
//Now check for remaining field type
|
|
297
|
-
//Let's check for all other keys
|
|
298
251
|
if (key === drapcode_constant_1.IS_NOT_NULL)
|
|
299
|
-
return { [field]: { $nin: [null,
|
|
252
|
+
return { [field]: { $nin: [null, ''] } };
|
|
300
253
|
if (key === drapcode_constant_1.IS_NULL)
|
|
301
|
-
return { [field]: { $in: [null,
|
|
254
|
+
return { [field]: { $in: [null, ''] } };
|
|
302
255
|
if (key === drapcode_constant_1.LIKE)
|
|
303
|
-
return { [field]: { $regex: fieldValue, $options:
|
|
256
|
+
return { [field]: { $regex: fieldValue, $options: 'i' } };
|
|
304
257
|
if ([drapcode_constant_1.IN_LIST, drapcode_constant_1.NOT_IN_LIST].includes(key)) {
|
|
305
|
-
console.log("In list or not in list check");
|
|
306
258
|
fieldValue = prepNonArrayValue(fieldValue);
|
|
307
259
|
if (key === drapcode_constant_1.IN_LIST) {
|
|
308
260
|
return { [field]: { $in: fieldValue || [] } };
|
|
@@ -326,12 +278,8 @@ const conditionToQuery = (query, requiredExternal, externalParams, constants, ti
|
|
|
326
278
|
const { startValue, endValue, isInteger } = (0, query_utils_1.getMinMaxValue)(fieldValue);
|
|
327
279
|
return {
|
|
328
280
|
[field]: {
|
|
329
|
-
$gte: isInteger
|
|
330
|
-
|
|
331
|
-
: prepareBetweenValues(startValue, fieldType),
|
|
332
|
-
$lte: isInteger
|
|
333
|
-
? +endValue
|
|
334
|
-
: prepareBetweenValues(endValue, fieldType),
|
|
281
|
+
$gte: isInteger ? +startValue : prepareBetweenValues(startValue, fieldType),
|
|
282
|
+
$lte: isInteger ? +endValue : prepareBetweenValues(endValue, fieldType),
|
|
335
283
|
},
|
|
336
284
|
};
|
|
337
285
|
}
|
|
@@ -343,16 +291,14 @@ const conditionToQuery = (query, requiredExternal, externalParams, constants, ti
|
|
|
343
291
|
return { [field]: { $lt: isDate ? fieldValue : +fieldValue } };
|
|
344
292
|
if (key === drapcode_constant_1.GREATER_THAN)
|
|
345
293
|
return { [field]: { $gt: isDate ? fieldValue : +fieldValue } };
|
|
346
|
-
//Equal & Equal Ignore
|
|
347
|
-
//Created By
|
|
348
294
|
if (equalIgnoreCheck(fieldValue, key)) {
|
|
349
295
|
return {};
|
|
350
296
|
}
|
|
351
|
-
if (field ===
|
|
297
|
+
if (field === 'createdBy' && isEqualOrIgnore.includes(key)) {
|
|
352
298
|
return {
|
|
353
299
|
$and: [
|
|
354
300
|
{ [field]: { $ne: null } },
|
|
355
|
-
{ [field]: { $ne:
|
|
301
|
+
{ [field]: { $ne: '' } },
|
|
356
302
|
{ [field]: { $eq: fieldValue } },
|
|
357
303
|
],
|
|
358
304
|
};
|
|
@@ -374,13 +320,9 @@ const conditionToQuery = (query, requiredExternal, externalParams, constants, ti
|
|
|
374
320
|
},
|
|
375
321
|
};
|
|
376
322
|
}
|
|
377
|
-
//Since we already check equal & equal ignore for boolean, number, date, createdBy
|
|
378
|
-
//Now if it still equal & equal ignore, but no field type match then
|
|
379
|
-
console.log("Equal & Non Equal has been checked for boolean, number, date etc");
|
|
380
|
-
console.log("Now it will be by default string, if issue with comparison please verify");
|
|
381
323
|
if (isEqualOrIgnore.includes(key)) {
|
|
382
324
|
return {
|
|
383
|
-
[field]: typeof fieldValue ===
|
|
325
|
+
[field]: typeof fieldValue === 'number' ? `${fieldValue}` : fieldValue,
|
|
384
326
|
};
|
|
385
327
|
}
|
|
386
328
|
}
|
|
@@ -389,9 +331,7 @@ const changeExternalParams = (query, requiredExternal, externalParams, constants
|
|
|
389
331
|
const { key, value, fieldType } = query;
|
|
390
332
|
const { user, tenant, setting, subTenant } = authDetail;
|
|
391
333
|
//For select
|
|
392
|
-
if (fieldType &&
|
|
393
|
-
!requiredExternal &&
|
|
394
|
-
drapcode_constant_1.AllSelectOptionFields.includes(fieldType)) {
|
|
334
|
+
if (fieldType && !requiredExternal && drapcode_constant_1.AllSelectOptionFields.includes(fieldType)) {
|
|
395
335
|
const { refCollection, refField } = query;
|
|
396
336
|
let finalValue = value;
|
|
397
337
|
if (drapcode_constant_1.OptionTypeFields.includes(fieldType) && !value) {
|
|
@@ -417,8 +357,7 @@ const changeExternalParams = (query, requiredExternal, externalParams, constants
|
|
|
417
357
|
finalValue = value;
|
|
418
358
|
return finalValue;
|
|
419
359
|
}
|
|
420
|
-
if (fieldType === boolean.id &&
|
|
421
|
-
["true", "false", "", true, false].includes(value)) {
|
|
360
|
+
if (fieldType === boolean.id && ['true', 'false', '', true, false].includes(value)) {
|
|
422
361
|
return String(value);
|
|
423
362
|
}
|
|
424
363
|
const constantDataMap = {
|
|
@@ -428,7 +367,7 @@ const changeExternalParams = (query, requiredExternal, externalParams, constants
|
|
|
428
367
|
[drapcode_constant_1.CURRENT_SUB_TENANT]: subTenant,
|
|
429
368
|
};
|
|
430
369
|
if ([drapcode_constant_1.IN_LIST, drapcode_constant_1.NOT_IN_LIST].includes(key)) {
|
|
431
|
-
|
|
370
|
+
const valueList = [];
|
|
432
371
|
if (Array.isArray(value) && value.length) {
|
|
433
372
|
valueList.push(...value);
|
|
434
373
|
value.forEach((val) => {
|
|
@@ -439,7 +378,7 @@ const changeExternalParams = (query, requiredExternal, externalParams, constants
|
|
|
439
378
|
});
|
|
440
379
|
});
|
|
441
380
|
}
|
|
442
|
-
else if (typeof value ===
|
|
381
|
+
else if (typeof value === 'string') {
|
|
443
382
|
Object.entries(constantDataMap).forEach(([constantName, data]) => {
|
|
444
383
|
if (value.includes(constantName)) {
|
|
445
384
|
const currentDataValue = getCurrentDataValueFrom(value, constantName, data, true);
|
|
@@ -457,7 +396,8 @@ const changeExternalParams = (query, requiredExternal, externalParams, constants
|
|
|
457
396
|
return valueList;
|
|
458
397
|
}
|
|
459
398
|
if (key === drapcode_constant_1.BETWEEN) {
|
|
460
|
-
|
|
399
|
+
const { isFixedValue } = (0, query_utils_1.getMinMaxValue)(value);
|
|
400
|
+
let { startValue, endValue } = (0, query_utils_1.getMinMaxValue)(value);
|
|
461
401
|
if (requiredExternal) {
|
|
462
402
|
startValue = `${externalParams[startValue]}`;
|
|
463
403
|
endValue = `${externalParams[endValue]}`;
|
|
@@ -483,12 +423,11 @@ const changeExternalParams = (query, requiredExternal, externalParams, constants
|
|
|
483
423
|
endValue = endValue[0].value;
|
|
484
424
|
}
|
|
485
425
|
const isNumeric = !isNaN(startValue) && !isNaN(endValue);
|
|
486
|
-
const result = `${startValue}---${endValue}${isNumeric ?
|
|
426
|
+
const result = `${startValue}---${endValue}${isNumeric ? '^' : ''}`;
|
|
487
427
|
return result;
|
|
488
428
|
}
|
|
489
429
|
for (const [constant, source] of Object.entries(constantDataMap)) {
|
|
490
430
|
const valueFromSource = getCurrentDataValueFrom(value, constant, source);
|
|
491
|
-
console.log(`\n ${constant} Value :>>`, valueFromSource);
|
|
492
431
|
if (valueFromSource)
|
|
493
432
|
return valueFromSource;
|
|
494
433
|
}
|
|
@@ -496,33 +435,31 @@ const changeExternalParams = (query, requiredExternal, externalParams, constants
|
|
|
496
435
|
return (0, query_utils_1.getValueOfProjectConstant)(value, {}, timezone);
|
|
497
436
|
}
|
|
498
437
|
if ((0, exports.isEntityCondition)(value)) {
|
|
499
|
-
const key = value.replace(
|
|
500
|
-
return externalParams[key] ? externalParams[key] :
|
|
438
|
+
const key = value.replace('ENTITY::', '');
|
|
439
|
+
return externalParams[key] ? externalParams[key] : '';
|
|
501
440
|
}
|
|
502
441
|
if ((0, query_utils_1.isFixedValueQuery)(value))
|
|
503
|
-
return value.replace(
|
|
442
|
+
return value.replace('FIXED_VALUE::', '');
|
|
504
443
|
if (requiredExternal) {
|
|
505
444
|
const externalParamValue = externalParams[`${value}`];
|
|
506
|
-
if (!isNaN(externalParamValue) && (fieldType ===
|
|
445
|
+
if (!isNaN(externalParamValue) && (fieldType === 'number' || !fieldType)) {
|
|
507
446
|
return +externalParamValue;
|
|
508
447
|
}
|
|
509
448
|
return externalParamValue;
|
|
510
449
|
}
|
|
511
|
-
|
|
512
|
-
return constantArr.length ?
|
|
450
|
+
const constantArr = constants.filter((constant) => constant.name == value);
|
|
451
|
+
return constantArr.length ? '' + constantArr[0].value : '';
|
|
513
452
|
};
|
|
514
453
|
const equalIgnoreCheck = (fieldValue, key) => {
|
|
515
|
-
return (key === drapcode_constant_1.EQUALS_OR_IGNORE &&
|
|
516
|
-
Array.isArray(fieldValue) &&
|
|
517
|
-
fieldValue.includes(noFieldString));
|
|
454
|
+
return (key === drapcode_constant_1.EQUALS_OR_IGNORE && Array.isArray(fieldValue) && fieldValue.includes(noFieldString));
|
|
518
455
|
};
|
|
519
456
|
const getCurrentDataValueFrom = (value, constantName, data, isMultiRef = false) => {
|
|
520
457
|
if (!value.includes(constantName))
|
|
521
458
|
return;
|
|
522
459
|
if (value === constantName)
|
|
523
460
|
return data[`uuid`];
|
|
524
|
-
const splitValues = value.split(
|
|
525
|
-
let refCollection =
|
|
461
|
+
const splitValues = value.split('::');
|
|
462
|
+
let refCollection = '', refCollectionField = '';
|
|
526
463
|
if (splitValues.length === 2) {
|
|
527
464
|
[refCollection, refCollectionField] = splitValues;
|
|
528
465
|
}
|
|
@@ -533,16 +470,15 @@ const getCurrentDataValueFrom = (value, constantName, data, isMultiRef = false)
|
|
|
533
470
|
refCollection = splitValues[0];
|
|
534
471
|
}
|
|
535
472
|
if (refCollection && refCollectionField) {
|
|
536
|
-
console.log("I have refCollection and Field");
|
|
537
473
|
if (refCollection === constantName) {
|
|
538
474
|
return data[refCollectionField];
|
|
539
475
|
}
|
|
540
476
|
let refCollectionData = data?.[refCollection];
|
|
541
477
|
if (!refCollectionData)
|
|
542
|
-
return
|
|
478
|
+
return '';
|
|
543
479
|
if (Array.isArray(refCollectionData)) {
|
|
544
480
|
if (!isMultiRef)
|
|
545
|
-
return
|
|
481
|
+
return '';
|
|
546
482
|
return refCollectionData
|
|
547
483
|
.map((ref) => ref?.[refCollectionField])
|
|
548
484
|
.filter((v) => v !== undefined && v !== null);
|
|
@@ -555,12 +491,12 @@ const getCurrentDataValueFrom = (value, constantName, data, isMultiRef = false)
|
|
|
555
491
|
};
|
|
556
492
|
const isEntityCondition = (value) => {
|
|
557
493
|
if (Array.isArray(value)) {
|
|
558
|
-
return value.some((val) => typeof val ===
|
|
494
|
+
return value.some((val) => typeof val === 'string' && val.startsWith('ENTITY::'));
|
|
559
495
|
}
|
|
560
|
-
return typeof value ===
|
|
496
|
+
return typeof value === 'string' && value.startsWith('ENTITY::');
|
|
561
497
|
};
|
|
562
498
|
exports.isEntityCondition = isEntityCondition;
|
|
563
|
-
const prepNonArrayValue = (val) => Array.isArray(val) ? val : [val];
|
|
499
|
+
const prepNonArrayValue = (val) => (Array.isArray(val) ? val : [val]);
|
|
564
500
|
const parseBooleanSafe = (val) => {
|
|
565
501
|
try {
|
|
566
502
|
return JSON.parse(val) === true;
|
|
@@ -580,7 +516,8 @@ const prepareBooleanQuery = (field, fieldValue) => {
|
|
|
580
516
|
};
|
|
581
517
|
};
|
|
582
518
|
const prepareBetweenValues = (value, fieldType) => {
|
|
583
|
-
if ([
|
|
519
|
+
if (['createdat', 'updatedat', ...drapcode_constant_1.systemDateField].includes(fieldType))
|
|
584
520
|
return new Date(value);
|
|
585
521
|
return value;
|
|
586
522
|
};
|
|
523
|
+
//# sourceMappingURL=queryBuilder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queryBuilder.js","sourceRoot":"","sources":["../../src/query/queryBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"check-error.d.ts","sourceRoot":"","sources":["../../src/utils/check-error.ts"],"names":[],"mappings":"AASA,UAAU,WAAW;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACzB;AAOD,UAAU,gBAAgB;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,UAAU,YAAY;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC;CAC7B;AAED,eAAO,MAAM,aAAa,GACxB,QAAQ,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,QAAQ,WAAW,EAAE,EACrB,SAAS,YAAY,EACrB,QAAQ,MAAM,KACb,OAAO,CAAC,gBAAgB,CA4C1B,CAAC"}
|