@optimiser/common 1.0.291 → 1.0.293
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/dist/lib/utility.js +97 -79
- package/package.json +1 -1
package/dist/lib/utility.js
CHANGED
|
@@ -1021,7 +1021,7 @@ function SyncFieldInSameCollection(objectName, objectIDs, db) {
|
|
|
1021
1021
|
}
|
|
1022
1022
|
db.collection(objectName).find(findObj).forEach(function (objectData) {
|
|
1023
1023
|
return __awaiter(this, void 0, void 0, function () {
|
|
1024
|
-
var updateObj, i, fieldSchema, lookupData, ex_1;
|
|
1024
|
+
var updateObj, i, fieldSchema, lookupData, searchValue, ex_1;
|
|
1025
1025
|
return __generator(this, function (_a) {
|
|
1026
1026
|
switch (_a.label) {
|
|
1027
1027
|
case 0:
|
|
@@ -1042,6 +1042,10 @@ function SyncFieldInSameCollection(objectName, objectIDs, db) {
|
|
|
1042
1042
|
if (lookupData !== undefined) {
|
|
1043
1043
|
updateObj[fieldSchema.Name + constants_1.default.LookupAlias] = lookupData;
|
|
1044
1044
|
}
|
|
1045
|
+
searchValue = objectData[fieldSchema.Name + constants_1.default.SearchValueAlias];
|
|
1046
|
+
if (searchValue !== undefined) {
|
|
1047
|
+
updateObj[fieldSchema.Name + constants_1.default.SearchValueAlias] = searchValue;
|
|
1048
|
+
}
|
|
1045
1049
|
_a.label = 4;
|
|
1046
1050
|
case 4:
|
|
1047
1051
|
i++;
|
|
@@ -1097,7 +1101,7 @@ function SyncFieldInSameCollectionByObjectID(objectName, objectID, db) {
|
|
|
1097
1101
|
if (fieldArr_2) {
|
|
1098
1102
|
db.collection(objectName).findOne({ '_id': objectID }, function (err, objectData) {
|
|
1099
1103
|
return __awaiter(this, void 0, void 0, function () {
|
|
1100
|
-
var updateObj, i, fieldSchema, lookupData;
|
|
1104
|
+
var updateObj, i, fieldSchema, lookupData, searchValue;
|
|
1101
1105
|
return __generator(this, function (_a) {
|
|
1102
1106
|
switch (_a.label) {
|
|
1103
1107
|
case 0:
|
|
@@ -1115,6 +1119,10 @@ function SyncFieldInSameCollectionByObjectID(objectName, objectID, db) {
|
|
|
1115
1119
|
if (lookupData !== undefined) {
|
|
1116
1120
|
updateObj[fieldSchema.Name + constants_1.default.LookupAlias] = lookupData;
|
|
1117
1121
|
}
|
|
1122
|
+
searchValue = objectData[fieldSchema.Name + constants_1.default.SearchValueAlias];
|
|
1123
|
+
if (searchValue !== undefined) {
|
|
1124
|
+
updateObj[fieldSchema.Name + constants_1.default.SearchValueAlias] = searchValue;
|
|
1125
|
+
}
|
|
1118
1126
|
_a.label = 3;
|
|
1119
1127
|
case 3:
|
|
1120
1128
|
i++;
|
|
@@ -1143,7 +1151,7 @@ function SyncFieldInSameCollectionByObjectIDWithPromise(objectName, objectID, db
|
|
|
1143
1151
|
if (fieldArr_3) {
|
|
1144
1152
|
db.collection(objectName).findOne({ '_id': objectID }, function (err, objectData) {
|
|
1145
1153
|
return __awaiter(this, void 0, void 0, function () {
|
|
1146
|
-
var updateObj, i, fieldSchema, lookupData;
|
|
1154
|
+
var updateObj, i, fieldSchema, lookupData, searchValue;
|
|
1147
1155
|
return __generator(this, function (_a) {
|
|
1148
1156
|
switch (_a.label) {
|
|
1149
1157
|
case 0:
|
|
@@ -1161,6 +1169,10 @@ function SyncFieldInSameCollectionByObjectIDWithPromise(objectName, objectID, db
|
|
|
1161
1169
|
if (lookupData !== undefined) {
|
|
1162
1170
|
updateObj[fieldSchema.Name + constants_1.default.LookupAlias] = lookupData;
|
|
1163
1171
|
}
|
|
1172
|
+
searchValue = objectData[fieldSchema.Name + constants_1.default.SearchValueAlias];
|
|
1173
|
+
if (searchValue !== undefined) {
|
|
1174
|
+
updateObj[fieldSchema.Name + constants_1.default.SearchValueAlias] = searchValue;
|
|
1175
|
+
}
|
|
1164
1176
|
_a.label = 3;
|
|
1165
1177
|
case 3:
|
|
1166
1178
|
i++;
|
|
@@ -1462,7 +1474,7 @@ function BuildLookupDataField(fieldSchema, updateObj, db) {
|
|
|
1462
1474
|
var fldName = fieldSchema.Name;
|
|
1463
1475
|
var fldValue_1 = updateObj[fldName];
|
|
1464
1476
|
var alias_1 = fldName + constants_1.default.LookupAlias;
|
|
1465
|
-
var
|
|
1477
|
+
var searchAlias_1 = fldName + constants_1.default.SearchValueAlias;
|
|
1466
1478
|
var fldLookupData_1 = null;
|
|
1467
1479
|
if (fldValue_1) {
|
|
1468
1480
|
var aggregateArry = [];
|
|
@@ -1505,17 +1517,20 @@ function BuildLookupDataField(fieldSchema, updateObj, db) {
|
|
|
1505
1517
|
fldLookupData_1 = data[0];
|
|
1506
1518
|
updateObj[alias_1] = fldLookupData_1;
|
|
1507
1519
|
//** Below code is added by Shahzaib on 05/09/2022 to create SearchValue */
|
|
1508
|
-
|
|
1509
|
-
|
|
1510
|
-
|
|
1511
|
-
|
|
1512
|
-
|
|
1513
|
-
|
|
1514
|
-
|
|
1515
|
-
|
|
1516
|
-
|
|
1517
|
-
|
|
1518
|
-
|
|
1520
|
+
var result = '';
|
|
1521
|
+
if (fieldSchema.LookupFields != undefined) {
|
|
1522
|
+
var _loop_10 = function (j) {
|
|
1523
|
+
if (fieldSchema.ExcludeLookupFieldsOnSearch && fieldSchema.ExcludeLookupFieldsOnSearch.filter(function (x) { return x == fieldSchema.LookupFields[j]; }).length != 0) {
|
|
1524
|
+
return "continue";
|
|
1525
|
+
}
|
|
1526
|
+
if (fldLookupData_1[fieldSchema.LookupFields[j]] != undefined)
|
|
1527
|
+
result += fldLookupData_1[fieldSchema.LookupFields[j]].toString() + ' ';
|
|
1528
|
+
};
|
|
1529
|
+
for (var j = 0; j < fieldSchema.LookupFields.length; j++) {
|
|
1530
|
+
_loop_10(j);
|
|
1531
|
+
}
|
|
1532
|
+
}
|
|
1533
|
+
updateObj[searchAlias_1] = result === null || result === void 0 ? void 0 : result.trim();
|
|
1519
1534
|
//** Ends here */
|
|
1520
1535
|
}
|
|
1521
1536
|
resolve();
|
|
@@ -1547,17 +1562,17 @@ function BuildLookupDataField(fieldSchema, updateObj, db) {
|
|
|
1547
1562
|
fldLookupData_1 = data;
|
|
1548
1563
|
updateObj[alias_1] = fldLookupData_1;
|
|
1549
1564
|
//** Below code is added by Shahzaib on 05/09/2022 to create SearchValue */
|
|
1550
|
-
|
|
1551
|
-
|
|
1552
|
-
|
|
1553
|
-
|
|
1554
|
-
|
|
1555
|
-
|
|
1556
|
-
|
|
1557
|
-
|
|
1558
|
-
|
|
1559
|
-
|
|
1560
|
-
|
|
1565
|
+
var result = '';
|
|
1566
|
+
for (var i = 0; i < data.length; i++) {
|
|
1567
|
+
var lookupRecord = data[i];
|
|
1568
|
+
if (fieldSchema.LookupFields != undefined) {
|
|
1569
|
+
for (var j = 0; j < fieldSchema.LookupFields.length; j++) {
|
|
1570
|
+
if (lookupRecord[fieldSchema.LookupFields[j]] != undefined)
|
|
1571
|
+
result += lookupRecord[fieldSchema.LookupFields[j]].toString() + ' ';
|
|
1572
|
+
}
|
|
1573
|
+
}
|
|
1574
|
+
}
|
|
1575
|
+
updateObj[searchAlias_1] = result === null || result === void 0 ? void 0 : result.trim();
|
|
1561
1576
|
//** Ends here */
|
|
1562
1577
|
}
|
|
1563
1578
|
resolve();
|
|
@@ -1661,9 +1676,9 @@ function BuildLookupDataField(fieldSchema, updateObj, db) {
|
|
|
1661
1676
|
else {
|
|
1662
1677
|
updateObj[alias_1] = fldLookupData_1;
|
|
1663
1678
|
// Below if cond was added by Shahzaib on 05/09/2022
|
|
1664
|
-
|
|
1665
|
-
|
|
1666
|
-
|
|
1679
|
+
if (fieldSchema.UIDataType == 'lookup' || fieldSchema.UIDataType == 'multilookup') {
|
|
1680
|
+
updateObj[searchAlias_1] = fldLookupData_1;
|
|
1681
|
+
}
|
|
1667
1682
|
resolve();
|
|
1668
1683
|
}
|
|
1669
1684
|
}
|
|
@@ -1676,11 +1691,11 @@ exports.BuildLookupDataField = BuildLookupDataField;
|
|
|
1676
1691
|
//CheckDataBeforeAdd it sync object before add
|
|
1677
1692
|
function CheckDataBeforeAdd(updateObj, objectSchema, db) {
|
|
1678
1693
|
return __awaiter(this, void 0, void 0, function () {
|
|
1679
|
-
var
|
|
1694
|
+
var _loop_11, _i, _a, fldName;
|
|
1680
1695
|
return __generator(this, function (_b) {
|
|
1681
1696
|
switch (_b.label) {
|
|
1682
1697
|
case 0:
|
|
1683
|
-
|
|
1698
|
+
_loop_11 = function (fldName) {
|
|
1684
1699
|
var fieldSchema, sequenceDocument, val, j, item, num;
|
|
1685
1700
|
return __generator(this, function (_a) {
|
|
1686
1701
|
switch (_a.label) {
|
|
@@ -1726,7 +1741,7 @@ function CheckDataBeforeAdd(updateObj, objectSchema, db) {
|
|
|
1726
1741
|
case 1:
|
|
1727
1742
|
if (!(_i < _a.length)) return [3 /*break*/, 4];
|
|
1728
1743
|
fldName = _a[_i];
|
|
1729
|
-
return [5 /*yield**/,
|
|
1744
|
+
return [5 /*yield**/, _loop_11(fldName)];
|
|
1730
1745
|
case 2:
|
|
1731
1746
|
_b.sent();
|
|
1732
1747
|
_b.label = 3;
|
|
@@ -1742,11 +1757,11 @@ exports.CheckDataBeforeAdd = CheckDataBeforeAdd;
|
|
|
1742
1757
|
//CheckDataBeforeAdd it sync object before update
|
|
1743
1758
|
function CheckDataBeforeUpdate(updateObj, objectData, objectSchema, db) {
|
|
1744
1759
|
return __awaiter(this, void 0, void 0, function () {
|
|
1745
|
-
var
|
|
1760
|
+
var _loop_12, _i, _a, fldName;
|
|
1746
1761
|
return __generator(this, function (_b) {
|
|
1747
1762
|
switch (_b.label) {
|
|
1748
1763
|
case 0:
|
|
1749
|
-
|
|
1764
|
+
_loop_12 = function (fldName) {
|
|
1750
1765
|
var fieldSchema, oldValue, newValue, isSame;
|
|
1751
1766
|
return __generator(this, function (_a) {
|
|
1752
1767
|
switch (_a.label) {
|
|
@@ -1789,7 +1804,7 @@ function CheckDataBeforeUpdate(updateObj, objectData, objectSchema, db) {
|
|
|
1789
1804
|
case 1:
|
|
1790
1805
|
if (!(_i < _a.length)) return [3 /*break*/, 4];
|
|
1791
1806
|
fldName = _a[_i];
|
|
1792
|
-
return [5 /*yield**/,
|
|
1807
|
+
return [5 /*yield**/, _loop_12(fldName)];
|
|
1793
1808
|
case 2:
|
|
1794
1809
|
_b.sent();
|
|
1795
1810
|
_b.label = 3;
|
|
@@ -1812,56 +1827,51 @@ function BuildGridFieldProjection(project, field, group) {
|
|
|
1812
1827
|
var searchConcatArry = [];
|
|
1813
1828
|
switch (field.Schema.UIDataType) {
|
|
1814
1829
|
// below code was added by Shahzaib on 05/09/2022
|
|
1815
|
-
// case "lookup":
|
|
1816
|
-
// case "multilookup":
|
|
1817
|
-
// alias = fldName + constants.LookupAlias;
|
|
1818
|
-
// project[fldName] = 1;
|
|
1819
|
-
// project[alias] = 1;
|
|
1820
|
-
// project[searchAlias] = 1;
|
|
1821
|
-
// break;
|
|
1822
|
-
// Below code was commented by Shahzaib on 05/09/2022, searchAlias was added instead of it.
|
|
1823
1830
|
case "lookup":
|
|
1824
|
-
alias = fldName + constants_1.default.LookupAlias;
|
|
1825
|
-
project[fldName] = 1;
|
|
1826
|
-
project[alias] = 1;
|
|
1827
|
-
var _loop_12 = function (i) {
|
|
1828
|
-
if (field.Schema.ExcludeLookupFieldsOnSearch && field.Schema.ExcludeLookupFieldsOnSearch.filter(function (x) { return x == field.Schema.LookupFields[i]; }).length != 0) {
|
|
1829
|
-
return "continue";
|
|
1830
|
-
}
|
|
1831
|
-
// searchConcatArry.push({ "$ifNull": ['$' + alias + '.' + field.Schema.LookupFields[i], ""] });
|
|
1832
|
-
// added by Shahzaib, make int to string and concat
|
|
1833
|
-
searchConcatArry.push({ "$ifNull": [{ $toString: '$' + alias + '.' + field.Schema.LookupFields[i] }, ""] });
|
|
1834
|
-
if (i < field.Schema.LookupFields.length - 1) {
|
|
1835
|
-
searchConcatArry.push(" ");
|
|
1836
|
-
}
|
|
1837
|
-
};
|
|
1838
|
-
for (var i = 0; i < field.Schema.LookupFields.length; i++) {
|
|
1839
|
-
_loop_12(i);
|
|
1840
|
-
}
|
|
1841
|
-
;
|
|
1842
|
-
project[fldName + '_SearchValue'] = { $concat: searchConcatArry };
|
|
1843
|
-
break;
|
|
1844
1831
|
case "multilookup":
|
|
1845
1832
|
alias = fldName + constants_1.default.LookupAlias;
|
|
1846
1833
|
project[fldName] = 1;
|
|
1847
1834
|
project[alias] = 1;
|
|
1848
|
-
|
|
1849
|
-
searchConcatArry.push({ "$ifNull": ['$' + alias + '.' + field.Schema.LookupFields[i], [" "]] });
|
|
1850
|
-
if (i < field.Schema.LookupFields.length - 1) {
|
|
1851
|
-
searchConcatArry.push([" "]);
|
|
1852
|
-
}
|
|
1853
|
-
}
|
|
1854
|
-
;
|
|
1855
|
-
//project[fldName + '_SearchValue'] = { $concatArrays: searchConcatArry };
|
|
1856
|
-
project[fldName + '_SearchValue'] = {
|
|
1857
|
-
$reduce: {
|
|
1858
|
-
input: { $concatArrays: searchConcatArry },
|
|
1859
|
-
initialValue: "",
|
|
1860
|
-
//in: { $concat: ["$$value", "$$this"] } // Commented by and below line was added by Shahzaib, make int to string
|
|
1861
|
-
in: { $concat: ["$$value", { $toString: "$$this" }] }
|
|
1862
|
-
}
|
|
1863
|
-
};
|
|
1835
|
+
project[searchAlias] = 1;
|
|
1864
1836
|
break;
|
|
1837
|
+
// Below code was commented by Shahzaib on 05/09/2022, searchAlias was added instead of it.
|
|
1838
|
+
// case "lookup":
|
|
1839
|
+
// alias = fldName + constants.LookupAlias;
|
|
1840
|
+
// project[fldName] = 1;
|
|
1841
|
+
// project[alias] = 1;
|
|
1842
|
+
// for (let i = 0; i < field.Schema.LookupFields.length; i++) {
|
|
1843
|
+
// if (field.Schema.ExcludeLookupFieldsOnSearch && field.Schema.ExcludeLookupFieldsOnSearch.filter((x: AnyObjectInterface) => x == field.Schema.LookupFields[i]).length != 0) {
|
|
1844
|
+
// continue;
|
|
1845
|
+
// }
|
|
1846
|
+
// // searchConcatArry.push({ "$ifNull": ['$' + alias + '.' + field.Schema.LookupFields[i], ""] });
|
|
1847
|
+
// // added by Shahzaib, make int to string and concat
|
|
1848
|
+
// searchConcatArry.push({ "$ifNull": [{$toString : '$' + alias + '.' + field.Schema.LookupFields[i]}, ""] });
|
|
1849
|
+
// if (i < field.Schema.LookupFields.length - 1) {
|
|
1850
|
+
// searchConcatArry.push(" ");
|
|
1851
|
+
// }
|
|
1852
|
+
// };
|
|
1853
|
+
// project[fldName + '_SearchValue'] = { $concat: searchConcatArry };
|
|
1854
|
+
// break;
|
|
1855
|
+
// case "multilookup":
|
|
1856
|
+
// alias = fldName + constants.LookupAlias;
|
|
1857
|
+
// project[fldName] = 1;
|
|
1858
|
+
// project[alias] = 1;
|
|
1859
|
+
// for (let i = 0; i < field.Schema.LookupFields.length; i++) {
|
|
1860
|
+
// searchConcatArry.push({ "$ifNull": ['$' + alias + '.' + field.Schema.LookupFields[i], [" "]] });
|
|
1861
|
+
// if (i < field.Schema.LookupFields.length - 1) {
|
|
1862
|
+
// searchConcatArry.push([" "]);
|
|
1863
|
+
// }
|
|
1864
|
+
// };
|
|
1865
|
+
// //project[fldName + '_SearchValue'] = { $concatArrays: searchConcatArry };
|
|
1866
|
+
// project[fldName + '_SearchValue'] = {
|
|
1867
|
+
// $reduce: {
|
|
1868
|
+
// input: { $concatArrays: searchConcatArry },
|
|
1869
|
+
// initialValue: "",
|
|
1870
|
+
// //in: { $concat: ["$$value", "$$this"] } // Commented by and below line was added by Shahzaib, make int to string
|
|
1871
|
+
// in: { $concat: ["$$value", { $toString : "$$this" }] }
|
|
1872
|
+
// }
|
|
1873
|
+
// };
|
|
1874
|
+
// break;
|
|
1865
1875
|
case "dropdown":
|
|
1866
1876
|
alias = fldName + constants_1.default.LookupAlias;
|
|
1867
1877
|
project[fldName] = 1;
|
|
@@ -4573,6 +4583,10 @@ function ValidateUserInput(options) {
|
|
|
4573
4583
|
return [3 /*break*/, 51];
|
|
4574
4584
|
case 8:
|
|
4575
4585
|
searchObj = { _id: fieldData };
|
|
4586
|
+
if (field.LookupKey) {
|
|
4587
|
+
searchObj = {};
|
|
4588
|
+
searchObj[field.LookupKey] = fieldData;
|
|
4589
|
+
}
|
|
4576
4590
|
if (action == 'add') {
|
|
4577
4591
|
searchObj.IsActive = true;
|
|
4578
4592
|
}
|
|
@@ -4588,6 +4602,10 @@ function ValidateUserInput(options) {
|
|
|
4588
4602
|
if (!Array.isArray(fieldData)) return [3 /*break*/, 16];
|
|
4589
4603
|
if (!fieldData.length) return [3 /*break*/, 14];
|
|
4590
4604
|
searchObj = { _id: { $in: fieldData } };
|
|
4605
|
+
if (field.LookupKey) {
|
|
4606
|
+
searchObj = {};
|
|
4607
|
+
searchObj[field.LookupKey] = { $in: fieldData };
|
|
4608
|
+
}
|
|
4591
4609
|
if (action == 'add') {
|
|
4592
4610
|
searchObj.IsActive = true;
|
|
4593
4611
|
}
|