@optimiser/common 1.0.291 → 1.0.292

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.
Files changed (2) hide show
  1. package/dist/lib/utility.js +89 -79
  2. package/package.json +1 -1
@@ -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 searchAlias = fldName + constants_1.default.SearchValueAlias;
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
- // let result = '';
1509
- // if (fieldSchema.LookupFields != undefined) {
1510
- // for (let j = 0; j < fieldSchema.LookupFields.length; j++) {
1511
- // if (fieldSchema.ExcludeLookupFieldsOnSearch && fieldSchema.ExcludeLookupFieldsOnSearch.filter((x: AnyObjectInterface) => x == fieldSchema.LookupFields[j]).length != 0) {
1512
- // continue;
1513
- // }
1514
- // if (fldLookupData[fieldSchema.LookupFields[j]] != undefined)
1515
- // result += fldLookupData[fieldSchema.LookupFields[j]].toString() + ' ';
1516
- // }
1517
- // }
1518
- // updateObj[searchAlias] = result?.trim();
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
- // let result = '';
1551
- // for (let i = 0; i < data.length; i++) {
1552
- // let lookupRecord = data[i];
1553
- // if (fieldSchema.LookupFields != undefined) {
1554
- // for (let j = 0; j < fieldSchema.LookupFields.length; j++) {
1555
- // if (lookupRecord[fieldSchema.LookupFields[j]] != undefined)
1556
- // result += lookupRecord[fieldSchema.LookupFields[j]].toString() + ' ';
1557
- // }
1558
- // }
1559
- // }
1560
- // updateObj[searchAlias] = result?.trim();
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
- // if (fieldSchema.UIDataType == 'lookup' || fieldSchema.UIDataType == 'multilookup') {
1665
- // updateObj[searchAlias] = fldLookupData;
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 _loop_10, _i, _a, fldName;
1694
+ var _loop_11, _i, _a, fldName;
1680
1695
  return __generator(this, function (_b) {
1681
1696
  switch (_b.label) {
1682
1697
  case 0:
1683
- _loop_10 = function (fldName) {
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**/, _loop_10(fldName)];
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 _loop_11, _i, _a, fldName;
1760
+ var _loop_12, _i, _a, fldName;
1746
1761
  return __generator(this, function (_b) {
1747
1762
  switch (_b.label) {
1748
1763
  case 0:
1749
- _loop_11 = function (fldName) {
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**/, _loop_11(fldName)];
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
- for (var i = 0; i < field.Schema.LookupFields.length; i++) {
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;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@optimiser/common",
3
- "version": "1.0.291",
3
+ "version": "1.0.292",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {