@optimiser/common 1.0.315 → 1.0.316
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.d.ts +1 -8
- package/dist/lib/utility.js +140 -161
- package/package.json +1 -1
package/dist/lib/utility.d.ts
CHANGED
|
@@ -235,11 +235,4 @@ declare function GetMailFromString(fromUser: string): string;
|
|
|
235
235
|
* @returns string
|
|
236
236
|
*/
|
|
237
237
|
declare function InvitationMailReplyContent(fromUser: string, fromEmail: string): string;
|
|
238
|
-
|
|
239
|
-
* TODO: Check if filter has fiscal in Operator value - Recursion Function
|
|
240
|
-
*
|
|
241
|
-
* @param filter - object || array
|
|
242
|
-
* @return boolean
|
|
243
|
-
*/
|
|
244
|
-
declare function HasFiscalOperator(filter: any): boolean;
|
|
245
|
-
export { CheckForWhiteListedDomain, ReturnJsonResponse, ConvertFileByteSize, GetObjectByKeyValueFromList, IsEqualArrays, IsEqualValue, CheckUserProfileField, GetPageFieldData, GetPageObjectSchema, GetFieldDetail, UpdateRecentViewObject, UpdateRecentViewFields, SyncChildObjectData, SyncParentObjectData, DeleteFieldInOtherCollection, SyncFieldInSameCollection, SyncFieldInSameCollectionByObjectID, SyncFieldInSameCollectionByObjectIDWithPromise, SyncFieldInOtherCollection, SyncUserInOtherCollection, BuildLookupDataField, CheckDataBeforeAdd, CheckDataBeforeUpdate, BuildGridFieldProjection, BuildFieldProjection, BuildLookupFieldProjection, FilterConditions, GirdHeaderFilters, FieldsGridHeaderFilters, AddLog, CheckFilterFieldsProjection, VerifyEmailPassword, GetMyTeamUsers, ExtractChildUsersTree, GetMaxKeyValueListSchema, VerifyAWSEmailConfig, GenerateId, SyncUserDetailsWithMasterDB, SignoutUserFromAllDevices, SignoutUsersWithPromise, SignoutMultipleUsersFromAllDevices, UserLicenseConsumeCalculate, sendMailWithUserAccount, GetEmailClientConfigs, GetCompanyEncryptionKey, ExecuteDynamicDMLQuery, ExecuteDynamicDQLQuery, GetUserProfilePermissions, MakeUserPasswordInvalid, ConvertJsonToXLXS, SendResetPasswordMail, SendMailToSupport, MailTemplateStructure, SendMailToCustomer, parseMSPCookie, GetIPDetailsFromReq, isEmptyObj, SyncListSchemaFieldInOtherCollection, UpdateTagCountAfterDelete, SyncTagCountAfterUpdate, ReactivateFieldInOtherCollection, SyncUserLicenceConsumedCount, BroadCastEventToAllCompanyUsers, CheckDataPermission, SyncCompanyLicenceInMasterCompanyAfterAdd, NextServiceDateForDashboard, CheckDateNotInPast, GetWeekDayByDayAndOccurance, GetInterValFromOccurance, GetWeekDayInfoInMonth, GetDayIndex, RemoveFieldsFromFilters, GetUserProfile, CheckPageAuthentication, ErrorHandlerForServices, CheckCaptcha, IsStringValue, ValidateSanitizeUserInput, ValidateUserInput, AddDaysToDate, CreateBanquetingVATSettingsData, CheckReportFolderAccess, GetMailFromString, InvitationMailReplyContent, HasFiscalOperator };
|
|
238
|
+
export { CheckForWhiteListedDomain, ReturnJsonResponse, ConvertFileByteSize, GetObjectByKeyValueFromList, IsEqualArrays, IsEqualValue, CheckUserProfileField, GetPageFieldData, GetPageObjectSchema, GetFieldDetail, UpdateRecentViewObject, UpdateRecentViewFields, SyncChildObjectData, SyncParentObjectData, DeleteFieldInOtherCollection, SyncFieldInSameCollection, SyncFieldInSameCollectionByObjectID, SyncFieldInSameCollectionByObjectIDWithPromise, SyncFieldInOtherCollection, SyncUserInOtherCollection, BuildLookupDataField, CheckDataBeforeAdd, CheckDataBeforeUpdate, BuildGridFieldProjection, BuildFieldProjection, BuildLookupFieldProjection, FilterConditions, GirdHeaderFilters, FieldsGridHeaderFilters, AddLog, CheckFilterFieldsProjection, VerifyEmailPassword, GetMyTeamUsers, ExtractChildUsersTree, GetMaxKeyValueListSchema, VerifyAWSEmailConfig, GenerateId, SyncUserDetailsWithMasterDB, SignoutUserFromAllDevices, SignoutUsersWithPromise, SignoutMultipleUsersFromAllDevices, UserLicenseConsumeCalculate, sendMailWithUserAccount, GetEmailClientConfigs, GetCompanyEncryptionKey, ExecuteDynamicDMLQuery, ExecuteDynamicDQLQuery, GetUserProfilePermissions, MakeUserPasswordInvalid, ConvertJsonToXLXS, SendResetPasswordMail, SendMailToSupport, MailTemplateStructure, SendMailToCustomer, parseMSPCookie, GetIPDetailsFromReq, isEmptyObj, SyncListSchemaFieldInOtherCollection, UpdateTagCountAfterDelete, SyncTagCountAfterUpdate, ReactivateFieldInOtherCollection, SyncUserLicenceConsumedCount, BroadCastEventToAllCompanyUsers, CheckDataPermission, SyncCompanyLicenceInMasterCompanyAfterAdd, NextServiceDateForDashboard, CheckDateNotInPast, GetWeekDayByDayAndOccurance, GetInterValFromOccurance, GetWeekDayInfoInMonth, GetDayIndex, RemoveFieldsFromFilters, GetUserProfile, CheckPageAuthentication, ErrorHandlerForServices, CheckCaptcha, IsStringValue, ValidateSanitizeUserInput, ValidateUserInput, AddDaysToDate, CreateBanquetingVATSettingsData, CheckReportFolderAccess, GetMailFromString, InvitationMailReplyContent };
|
package/dist/lib/utility.js
CHANGED
|
@@ -80,7 +80,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
80
80
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
81
81
|
};
|
|
82
82
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
83
|
-
exports.
|
|
83
|
+
exports.InvitationMailReplyContent = exports.GetMailFromString = exports.CheckReportFolderAccess = exports.CreateBanquetingVATSettingsData = exports.AddDaysToDate = exports.ValidateUserInput = exports.ValidateSanitizeUserInput = exports.IsStringValue = exports.CheckCaptcha = exports.ErrorHandlerForServices = exports.CheckPageAuthentication = exports.GetUserProfile = exports.RemoveFieldsFromFilters = exports.GetDayIndex = exports.GetWeekDayInfoInMonth = exports.GetInterValFromOccurance = exports.GetWeekDayByDayAndOccurance = exports.CheckDateNotInPast = exports.NextServiceDateForDashboard = exports.SyncCompanyLicenceInMasterCompanyAfterAdd = exports.CheckDataPermission = exports.BroadCastEventToAllCompanyUsers = exports.SyncUserLicenceConsumedCount = exports.ReactivateFieldInOtherCollection = exports.SyncTagCountAfterUpdate = exports.UpdateTagCountAfterDelete = exports.SyncListSchemaFieldInOtherCollection = exports.isEmptyObj = exports.GetIPDetailsFromReq = exports.parseMSPCookie = exports.SendMailToCustomer = exports.MailTemplateStructure = exports.SendMailToSupport = exports.SendResetPasswordMail = exports.ConvertJsonToXLXS = exports.MakeUserPasswordInvalid = exports.GetUserProfilePermissions = exports.ExecuteDynamicDQLQuery = exports.ExecuteDynamicDMLQuery = exports.GetCompanyEncryptionKey = exports.GetEmailClientConfigs = exports.sendMailWithUserAccount = exports.UserLicenseConsumeCalculate = exports.SignoutMultipleUsersFromAllDevices = exports.SignoutUsersWithPromise = exports.SignoutUserFromAllDevices = exports.SyncUserDetailsWithMasterDB = exports.GenerateId = exports.VerifyAWSEmailConfig = exports.GetMaxKeyValueListSchema = exports.ExtractChildUsersTree = exports.GetMyTeamUsers = exports.VerifyEmailPassword = exports.CheckFilterFieldsProjection = exports.AddLog = exports.FieldsGridHeaderFilters = exports.GirdHeaderFilters = exports.FilterConditions = exports.BuildLookupFieldProjection = exports.BuildFieldProjection = exports.BuildGridFieldProjection = exports.CheckDataBeforeUpdate = exports.CheckDataBeforeAdd = exports.BuildLookupDataField = exports.SyncUserInOtherCollection = exports.SyncFieldInOtherCollection = exports.SyncFieldInSameCollectionByObjectIDWithPromise = exports.SyncFieldInSameCollectionByObjectID = exports.SyncFieldInSameCollection = exports.DeleteFieldInOtherCollection = exports.SyncParentObjectData = exports.SyncChildObjectData = exports.UpdateRecentViewFields = exports.UpdateRecentViewObject = exports.GetFieldDetail = exports.GetPageObjectSchema = exports.GetPageFieldData = exports.CheckUserProfileField = exports.IsEqualValue = exports.IsEqualArrays = exports.GetObjectByKeyValueFromList = exports.ConvertFileByteSize = exports.ReturnJsonResponse = exports.CheckForWhiteListedDomain = void 0;
|
|
84
84
|
var moment_1 = __importDefault(require("moment"));
|
|
85
85
|
var nodemailer_1 = __importDefault(require("nodemailer"));
|
|
86
86
|
var mongodb_1 = require("mongodb");
|
|
@@ -4595,7 +4595,7 @@ function ValidateUserInput(options) {
|
|
|
4595
4595
|
}
|
|
4596
4596
|
}
|
|
4597
4597
|
_loop_19 = function (pageField) {
|
|
4598
|
-
var fieldName, fieldData, field, searchQuery, result, _a, filter, searchObj, result, searchObj, totalRecord, _b, schemaData, result, searchObj, result, schemaData, result, searchObj, totalRecord, regexpression, phone, files, _i, fieldData_1, obj, searchObj, totalRecord, searchObj, result, _c, fieldData_2, obj;
|
|
4598
|
+
var fieldName, fieldData, field, searchQuery, result, _a, minValue, maxValue, filter, searchObj, result, searchObj, totalRecord, _b, schemaData, result, searchObj, result, schemaData, result, searchObj, totalRecord, regexpression, phone, files, _i, fieldData_1, obj, searchObj, totalRecord, searchObj, result, _c, fieldData_2, obj;
|
|
4599
4599
|
return __generator(this, function (_d) {
|
|
4600
4600
|
switch (_d.label) {
|
|
4601
4601
|
case 0:
|
|
@@ -4608,7 +4608,7 @@ function ValidateUserInput(options) {
|
|
|
4608
4608
|
delete inputFields[pageField.Name];
|
|
4609
4609
|
}
|
|
4610
4610
|
field = schemaFields.find(function (x) { return x.Name == fieldName; });
|
|
4611
|
-
if (!field) return [3 /*break*/,
|
|
4611
|
+
if (!field) return [3 /*break*/, 55];
|
|
4612
4612
|
if (field.DisableValidateUserInput) {
|
|
4613
4613
|
return [2 /*return*/, "continue"];
|
|
4614
4614
|
}
|
|
@@ -4643,40 +4643,34 @@ function ValidateUserInput(options) {
|
|
|
4643
4643
|
}
|
|
4644
4644
|
_d.label = 2;
|
|
4645
4645
|
case 2:
|
|
4646
|
-
if (!inputField.includes(fieldName)) return [3 /*break*/,
|
|
4647
|
-
if (!(fieldData || fieldData === 0 || fieldData === false)) return [3 /*break*/,
|
|
4646
|
+
if (!inputField.includes(fieldName)) return [3 /*break*/, 54];
|
|
4647
|
+
if (!(fieldData || fieldData === 0 || fieldData === false)) return [3 /*break*/, 54];
|
|
4648
4648
|
_a = field.UIDataType;
|
|
4649
4649
|
switch (_a) {
|
|
4650
4650
|
case 'int': return [3 /*break*/, 3];
|
|
4651
|
-
case 'decimal': return [3 /*break*/,
|
|
4652
|
-
case 'date': return [3 /*break*/,
|
|
4653
|
-
case 'datetime': return [3 /*break*/,
|
|
4654
|
-
case 'time': return [3 /*break*/,
|
|
4655
|
-
case 'email': return [3 /*break*/,
|
|
4656
|
-
case 'checkbox': return [3 /*break*/,
|
|
4657
|
-
case 'lookup': return [3 /*break*/,
|
|
4658
|
-
case 'multilookup': return [3 /*break*/,
|
|
4659
|
-
case 'dropdown': return [3 /*break*/,
|
|
4660
|
-
case 'multiselect': return [3 /*break*/,
|
|
4661
|
-
case 'url': return [3 /*break*/,
|
|
4662
|
-
case 'phone': return [3 /*break*/,
|
|
4663
|
-
case "image": return [3 /*break*/,
|
|
4664
|
-
case 'file': return [3 /*break*/,
|
|
4665
|
-
case 'textarea': return [3 /*break*/,
|
|
4666
|
-
case 'text': return [3 /*break*/,
|
|
4667
|
-
case 'texteditor': return [3 /*break*/,
|
|
4668
|
-
case 'collection': return [3 /*break*/,
|
|
4651
|
+
case 'decimal': return [3 /*break*/, 4];
|
|
4652
|
+
case 'date': return [3 /*break*/, 5];
|
|
4653
|
+
case 'datetime': return [3 /*break*/, 5];
|
|
4654
|
+
case 'time': return [3 /*break*/, 6];
|
|
4655
|
+
case 'email': return [3 /*break*/, 7];
|
|
4656
|
+
case 'checkbox': return [3 /*break*/, 8];
|
|
4657
|
+
case 'lookup': return [3 /*break*/, 9];
|
|
4658
|
+
case 'multilookup': return [3 /*break*/, 12];
|
|
4659
|
+
case 'dropdown': return [3 /*break*/, 21];
|
|
4660
|
+
case 'multiselect': return [3 /*break*/, 27];
|
|
4661
|
+
case 'url': return [3 /*break*/, 37];
|
|
4662
|
+
case 'phone': return [3 /*break*/, 38];
|
|
4663
|
+
case "image": return [3 /*break*/, 39];
|
|
4664
|
+
case 'file': return [3 /*break*/, 39];
|
|
4665
|
+
case 'textarea': return [3 /*break*/, 48];
|
|
4666
|
+
case 'text': return [3 /*break*/, 48];
|
|
4667
|
+
case 'texteditor': return [3 /*break*/, 48];
|
|
4668
|
+
case 'collection': return [3 /*break*/, 49];
|
|
4669
4669
|
}
|
|
4670
|
-
return [3 /*break*/,
|
|
4670
|
+
return [3 /*break*/, 54];
|
|
4671
4671
|
case 3:
|
|
4672
4672
|
{
|
|
4673
|
-
if (IsStringValue(fieldData)) {
|
|
4674
|
-
msg = 'Invalid value for ' + field.DisplayName + '!';
|
|
4675
|
-
}
|
|
4676
|
-
else if (field.UIDataType == 'int' && Number.isInteger(fieldData) == false) {
|
|
4677
|
-
msg = 'Invalid value for ' + field.DisplayName + '!';
|
|
4678
|
-
}
|
|
4679
|
-
else if (field.UIDataType == 'decimal' && isNaN(fieldData)) {
|
|
4673
|
+
if (IsStringValue(fieldData) || Number.isInteger(fieldData) == false) {
|
|
4680
4674
|
msg = 'Invalid value for ' + field.DisplayName + '!';
|
|
4681
4675
|
}
|
|
4682
4676
|
else if (field.MinValue !== undefined && field.MinValue !== null && fieldData < field.MinValue) {
|
|
@@ -4686,15 +4680,33 @@ function ValidateUserInput(options) {
|
|
|
4686
4680
|
msg = field.DisplayName + ' value must be smaller then or equal to ' + field.MaxValue;
|
|
4687
4681
|
}
|
|
4688
4682
|
}
|
|
4689
|
-
return [3 /*break*/,
|
|
4683
|
+
return [3 /*break*/, 54];
|
|
4690
4684
|
case 4:
|
|
4685
|
+
{
|
|
4686
|
+
minValue = field.MinValue, maxValue = field.MaxValue;
|
|
4687
|
+
if (minValue instanceof mongodb_1.Decimal128)
|
|
4688
|
+
minValue = parseFloat((minValue).toString());
|
|
4689
|
+
if (maxValue instanceof mongodb_1.Decimal128)
|
|
4690
|
+
maxValue = parseFloat((maxValue).toString());
|
|
4691
|
+
if (IsStringValue(fieldData) || isNaN(fieldData)) {
|
|
4692
|
+
msg = 'Invalid value for ' + field.DisplayName + '!';
|
|
4693
|
+
}
|
|
4694
|
+
else if (minValue !== undefined && minValue !== null && fieldData < minValue) {
|
|
4695
|
+
msg = field.DisplayName + ' value must be greater then or equal to ' + minValue;
|
|
4696
|
+
}
|
|
4697
|
+
else if (maxValue !== undefined && maxValue !== null && maxValue < fieldData) {
|
|
4698
|
+
msg = field.DisplayName + ' value must be smaller then or equal to ' + maxValue;
|
|
4699
|
+
}
|
|
4700
|
+
}
|
|
4701
|
+
return [3 /*break*/, 54];
|
|
4702
|
+
case 5:
|
|
4691
4703
|
{
|
|
4692
4704
|
if ((fieldData instanceof Date && !isNaN(inputFields[fieldName])) == false) {
|
|
4693
4705
|
msg = 'Invalid date for ' + field.DisplayName + '!';
|
|
4694
4706
|
}
|
|
4695
4707
|
}
|
|
4696
|
-
return [3 /*break*/,
|
|
4697
|
-
case
|
|
4708
|
+
return [3 /*break*/, 54];
|
|
4709
|
+
case 6:
|
|
4698
4710
|
{
|
|
4699
4711
|
if (field.ShowNextDayHoursUpto) {
|
|
4700
4712
|
//When we are showing hours of Next days in Time Control
|
|
@@ -4711,24 +4723,24 @@ function ValidateUserInput(options) {
|
|
|
4711
4723
|
}
|
|
4712
4724
|
}
|
|
4713
4725
|
}
|
|
4714
|
-
return [3 /*break*/,
|
|
4715
|
-
case
|
|
4726
|
+
return [3 /*break*/, 54];
|
|
4727
|
+
case 7:
|
|
4716
4728
|
{
|
|
4717
4729
|
filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
|
|
4718
4730
|
if (!filter.test(fieldData)) {
|
|
4719
4731
|
msg = fieldData + ' is invalid email for ' + field.DisplayName + '!';
|
|
4720
4732
|
}
|
|
4721
4733
|
}
|
|
4722
|
-
return [3 /*break*/,
|
|
4723
|
-
case
|
|
4734
|
+
return [3 /*break*/, 54];
|
|
4735
|
+
case 8:
|
|
4724
4736
|
{
|
|
4725
4737
|
if (fieldData !== true && fieldData !== false) {
|
|
4726
4738
|
msg = 'Invalid user input for ' + field.DisplayName + '!';
|
|
4727
4739
|
}
|
|
4728
4740
|
}
|
|
4729
|
-
return [3 /*break*/,
|
|
4730
|
-
case
|
|
4731
|
-
if (!!field.IsMultipleLookupObject) return [3 /*break*/,
|
|
4741
|
+
return [3 /*break*/, 54];
|
|
4742
|
+
case 9:
|
|
4743
|
+
if (!!field.IsMultipleLookupObject) return [3 /*break*/, 11];
|
|
4732
4744
|
searchObj = { _id: fieldData };
|
|
4733
4745
|
if (field.LookupKey) {
|
|
4734
4746
|
searchObj = {};
|
|
@@ -4739,17 +4751,17 @@ function ValidateUserInput(options) {
|
|
|
4739
4751
|
}
|
|
4740
4752
|
;
|
|
4741
4753
|
return [4 /*yield*/, db.collection(field.LookupObject).findOne(searchObj)];
|
|
4742
|
-
case
|
|
4754
|
+
case 10:
|
|
4743
4755
|
result = _d.sent();
|
|
4744
4756
|
if (result == null) {
|
|
4745
4757
|
msg = field.DisplayName + ' does not exist!';
|
|
4746
4758
|
}
|
|
4747
|
-
_d.label =
|
|
4748
|
-
case
|
|
4749
|
-
case
|
|
4750
|
-
if (!Array.isArray(fieldData)) return [3 /*break*/,
|
|
4751
|
-
if (!fieldData.length) return [3 /*break*/,
|
|
4752
|
-
if (!!field.IsMultipleLookupObject) return [3 /*break*/,
|
|
4759
|
+
_d.label = 11;
|
|
4760
|
+
case 11: return [3 /*break*/, 54];
|
|
4761
|
+
case 12:
|
|
4762
|
+
if (!Array.isArray(fieldData)) return [3 /*break*/, 19];
|
|
4763
|
+
if (!fieldData.length) return [3 /*break*/, 17];
|
|
4764
|
+
if (!!field.IsMultipleLookupObject) return [3 /*break*/, 16];
|
|
4753
4765
|
searchObj = { _id: { $in: fieldData } };
|
|
4754
4766
|
if (field.LookupKey) {
|
|
4755
4767
|
searchObj = {};
|
|
@@ -4760,46 +4772,46 @@ function ValidateUserInput(options) {
|
|
|
4760
4772
|
}
|
|
4761
4773
|
;
|
|
4762
4774
|
return [4 /*yield*/, db.collection(field.LookupObject).find(searchObj).count()];
|
|
4763
|
-
case
|
|
4775
|
+
case 13:
|
|
4764
4776
|
totalRecord = _d.sent();
|
|
4765
|
-
if (!(objectName == "Activity" && field.Name == 'Attendees')) return [3 /*break*/,
|
|
4777
|
+
if (!(objectName == "Activity" && field.Name == 'Attendees')) return [3 /*break*/, 15];
|
|
4766
4778
|
_b = totalRecord;
|
|
4767
4779
|
return [4 /*yield*/, db.collection('Contact').find(searchObj).count()];
|
|
4768
|
-
case 13:
|
|
4769
|
-
totalRecord = _b + _d.sent();
|
|
4770
|
-
_d.label = 14;
|
|
4771
4780
|
case 14:
|
|
4781
|
+
totalRecord = _b + _d.sent();
|
|
4782
|
+
_d.label = 15;
|
|
4783
|
+
case 15:
|
|
4772
4784
|
if (totalRecord !== fieldData.length) {
|
|
4773
4785
|
msg = field.DisplayName + ' does not exist!';
|
|
4774
4786
|
}
|
|
4775
|
-
_d.label =
|
|
4776
|
-
case
|
|
4777
|
-
case
|
|
4787
|
+
_d.label = 16;
|
|
4788
|
+
case 16: return [3 /*break*/, 18];
|
|
4789
|
+
case 17:
|
|
4778
4790
|
if (field.IsRequired) {
|
|
4779
4791
|
msg = field.DisplayName + ' is required!';
|
|
4780
4792
|
}
|
|
4781
|
-
_d.label =
|
|
4782
|
-
case
|
|
4783
|
-
case
|
|
4793
|
+
_d.label = 18;
|
|
4794
|
+
case 18: return [3 /*break*/, 20];
|
|
4795
|
+
case 19:
|
|
4784
4796
|
msg = 'Invalid value for ' + field.DisplayName;
|
|
4785
|
-
_d.label =
|
|
4786
|
-
case
|
|
4787
|
-
case
|
|
4788
|
-
if (!(field.ListSchemaName !== undefined)) return [3 /*break*/,
|
|
4789
|
-
if (!!field.IsMultipleListSchemaName) return [3 /*break*/,
|
|
4797
|
+
_d.label = 20;
|
|
4798
|
+
case 20: return [3 /*break*/, 54];
|
|
4799
|
+
case 21:
|
|
4800
|
+
if (!(field.ListSchemaName !== undefined)) return [3 /*break*/, 24];
|
|
4801
|
+
if (!!field.IsMultipleListSchemaName) return [3 /*break*/, 23];
|
|
4790
4802
|
schemaData = null;
|
|
4791
4803
|
return [4 /*yield*/, db.collection('ListSchema').findOne({ Name: field.ListSchemaName })];
|
|
4792
|
-
case
|
|
4804
|
+
case 22:
|
|
4793
4805
|
result = _d.sent();
|
|
4794
4806
|
if (result && result.Data)
|
|
4795
4807
|
schemaData = result.Data.find(function (x) { return x.Key == fieldData; });
|
|
4796
4808
|
if (schemaData == null || (action == 'add' && schemaData.IsActive == false)) {
|
|
4797
4809
|
msg = field.DisplayName + ' does not exist!';
|
|
4798
4810
|
}
|
|
4799
|
-
_d.label =
|
|
4800
|
-
case
|
|
4801
|
-
case
|
|
4802
|
-
if (!(field.LookupObject !== undefined && !field.IsMultipleLookupObject)) return [3 /*break*/,
|
|
4811
|
+
_d.label = 23;
|
|
4812
|
+
case 23: return [3 /*break*/, 26];
|
|
4813
|
+
case 24:
|
|
4814
|
+
if (!(field.LookupObject !== undefined && !field.IsMultipleLookupObject)) return [3 /*break*/, 26];
|
|
4803
4815
|
searchObj = { _id: fieldData };
|
|
4804
4816
|
if (field.LookupKey) {
|
|
4805
4817
|
searchObj = {};
|
|
@@ -4810,21 +4822,21 @@ function ValidateUserInput(options) {
|
|
|
4810
4822
|
}
|
|
4811
4823
|
;
|
|
4812
4824
|
return [4 /*yield*/, db.collection(field.LookupObject).findOne(searchObj)];
|
|
4813
|
-
case
|
|
4825
|
+
case 25:
|
|
4814
4826
|
result = _d.sent();
|
|
4815
4827
|
if (result == null) {
|
|
4816
4828
|
msg = field.DisplayName + ' does not exist!';
|
|
4817
4829
|
}
|
|
4818
|
-
_d.label =
|
|
4819
|
-
case
|
|
4820
|
-
case
|
|
4821
|
-
if (!Array.isArray(fieldData)) return [3 /*break*/,
|
|
4822
|
-
if (!fieldData.length) return [3 /*break*/,
|
|
4823
|
-
if (!(field.ListSchemaName !== undefined)) return [3 /*break*/,
|
|
4824
|
-
if (!!field.IsMultipleListSchemaName) return [3 /*break*/,
|
|
4830
|
+
_d.label = 26;
|
|
4831
|
+
case 26: return [3 /*break*/, 54];
|
|
4832
|
+
case 27:
|
|
4833
|
+
if (!Array.isArray(fieldData)) return [3 /*break*/, 35];
|
|
4834
|
+
if (!fieldData.length) return [3 /*break*/, 33];
|
|
4835
|
+
if (!(field.ListSchemaName !== undefined)) return [3 /*break*/, 30];
|
|
4836
|
+
if (!!field.IsMultipleListSchemaName) return [3 /*break*/, 29];
|
|
4825
4837
|
schemaData = [];
|
|
4826
4838
|
return [4 /*yield*/, db.collection('ListSchema').findOne({ Name: field.ListSchemaName })];
|
|
4827
|
-
case
|
|
4839
|
+
case 28:
|
|
4828
4840
|
result = _d.sent();
|
|
4829
4841
|
if (result && result.Data) {
|
|
4830
4842
|
if (action == 'add')
|
|
@@ -4835,10 +4847,10 @@ function ValidateUserInput(options) {
|
|
|
4835
4847
|
if (schemaData.length != fieldData.length) {
|
|
4836
4848
|
msg = field.DisplayName + ' does not exist!';
|
|
4837
4849
|
}
|
|
4838
|
-
_d.label =
|
|
4839
|
-
case
|
|
4840
|
-
case
|
|
4841
|
-
if (!(field.LookupObject !== undefined && !field.IsMultipleLookupObject)) return [3 /*break*/,
|
|
4850
|
+
_d.label = 29;
|
|
4851
|
+
case 29: return [3 /*break*/, 32];
|
|
4852
|
+
case 30:
|
|
4853
|
+
if (!(field.LookupObject !== undefined && !field.IsMultipleLookupObject)) return [3 /*break*/, 32];
|
|
4842
4854
|
searchObj = { _id: { $in: fieldData } };
|
|
4843
4855
|
if (field.LookupKey) {
|
|
4844
4856
|
searchObj = {};
|
|
@@ -4849,32 +4861,32 @@ function ValidateUserInput(options) {
|
|
|
4849
4861
|
}
|
|
4850
4862
|
;
|
|
4851
4863
|
return [4 /*yield*/, db.collection(field.LookupObject).find(searchObj).count()];
|
|
4852
|
-
case
|
|
4864
|
+
case 31:
|
|
4853
4865
|
totalRecord = _d.sent();
|
|
4854
4866
|
if (totalRecord !== fieldData.length) {
|
|
4855
4867
|
msg = field.DisplayName + ' does not exist!';
|
|
4856
4868
|
}
|
|
4857
|
-
_d.label =
|
|
4858
|
-
case
|
|
4859
|
-
case
|
|
4869
|
+
_d.label = 32;
|
|
4870
|
+
case 32: return [3 /*break*/, 34];
|
|
4871
|
+
case 33:
|
|
4860
4872
|
if (field.IsRequired) {
|
|
4861
4873
|
msg = field.DisplayName + ' is required!';
|
|
4862
4874
|
}
|
|
4863
|
-
_d.label =
|
|
4864
|
-
case
|
|
4865
|
-
case
|
|
4875
|
+
_d.label = 34;
|
|
4876
|
+
case 34: return [3 /*break*/, 36];
|
|
4877
|
+
case 35:
|
|
4866
4878
|
msg = 'Invalid value for ' + field.DisplayName;
|
|
4867
|
-
_d.label =
|
|
4868
|
-
case
|
|
4869
|
-
case
|
|
4879
|
+
_d.label = 36;
|
|
4880
|
+
case 36: return [3 /*break*/, 54];
|
|
4881
|
+
case 37:
|
|
4870
4882
|
{
|
|
4871
4883
|
regexpression = new RegExp('^(https?:\\/\\/)?((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.)+[a-z]{2,}|((\\d{1,3}\\.){3}\\d{1,3}))(\\:\\d+)?(\\/[-a-z\\d%_.~+@,:=#()]*)*(\\?[;&a-z\\d%_@,.:()~+=-]*)?(\\#[-a-z\\d_]*)?$', 'i');
|
|
4872
4884
|
if (!regexpression.test(fieldData)) {
|
|
4873
4885
|
msg = 'Invalid URL for ' + field.DisplayName + '!';
|
|
4874
4886
|
}
|
|
4875
4887
|
}
|
|
4876
|
-
return [3 /*break*/,
|
|
4877
|
-
case
|
|
4888
|
+
return [3 /*break*/, 54];
|
|
4889
|
+
case 38:
|
|
4878
4890
|
{
|
|
4879
4891
|
if (field.IncludeCountryCode) {
|
|
4880
4892
|
if (!fieldData.indexOf("+")) {
|
|
@@ -4888,11 +4900,11 @@ function ValidateUserInput(options) {
|
|
|
4888
4900
|
}
|
|
4889
4901
|
}
|
|
4890
4902
|
}
|
|
4891
|
-
return [3 /*break*/,
|
|
4892
|
-
case
|
|
4893
|
-
if (!field.IsMultiple) return [3 /*break*/,
|
|
4894
|
-
if (!Array.isArray(fieldData)) return [3 /*break*/,
|
|
4895
|
-
if (!fieldData.length) return [3 /*break*/,
|
|
4903
|
+
return [3 /*break*/, 54];
|
|
4904
|
+
case 39:
|
|
4905
|
+
if (!field.IsMultiple) return [3 /*break*/, 45];
|
|
4906
|
+
if (!Array.isArray(fieldData)) return [3 /*break*/, 43];
|
|
4907
|
+
if (!fieldData.length) return [3 /*break*/, 41];
|
|
4896
4908
|
files = [];
|
|
4897
4909
|
for (_i = 0, fieldData_1 = fieldData; _i < fieldData_1.length; _i++) {
|
|
4898
4910
|
obj = fieldData_1[_i];
|
|
@@ -4904,37 +4916,37 @@ function ValidateUserInput(options) {
|
|
|
4904
4916
|
}
|
|
4905
4917
|
;
|
|
4906
4918
|
return [4 /*yield*/, db.collection("Drive").find(searchObj).count()];
|
|
4907
|
-
case
|
|
4919
|
+
case 40:
|
|
4908
4920
|
totalRecord = _d.sent();
|
|
4909
4921
|
if (totalRecord !== fieldData.length) {
|
|
4910
4922
|
msg = field.DisplayName + ' does not exist!';
|
|
4911
4923
|
}
|
|
4912
|
-
return [3 /*break*/,
|
|
4913
|
-
case
|
|
4924
|
+
return [3 /*break*/, 42];
|
|
4925
|
+
case 41:
|
|
4914
4926
|
if (field.IsRequired) {
|
|
4915
4927
|
msg = field.DisplayName + ' is required!';
|
|
4916
4928
|
}
|
|
4917
|
-
_d.label =
|
|
4918
|
-
case
|
|
4919
|
-
case
|
|
4929
|
+
_d.label = 42;
|
|
4930
|
+
case 42: return [3 /*break*/, 44];
|
|
4931
|
+
case 43:
|
|
4920
4932
|
msg = 'Invalid value for ' + field.DisplayName;
|
|
4921
|
-
_d.label =
|
|
4922
|
-
case
|
|
4923
|
-
case
|
|
4933
|
+
_d.label = 44;
|
|
4934
|
+
case 44: return [3 /*break*/, 47];
|
|
4935
|
+
case 45:
|
|
4924
4936
|
searchObj = { _id: fieldData };
|
|
4925
4937
|
if (action == 'add') {
|
|
4926
4938
|
searchObj.IsActive = true;
|
|
4927
4939
|
}
|
|
4928
4940
|
;
|
|
4929
4941
|
return [4 /*yield*/, db.collection("Drive").findOne(searchObj)];
|
|
4930
|
-
case
|
|
4942
|
+
case 46:
|
|
4931
4943
|
result = _d.sent();
|
|
4932
4944
|
if (result == null) {
|
|
4933
4945
|
msg = field.DisplayName + ' does not exist!';
|
|
4934
4946
|
}
|
|
4935
|
-
_d.label =
|
|
4936
|
-
case
|
|
4937
|
-
case
|
|
4947
|
+
_d.label = 47;
|
|
4948
|
+
case 47: return [3 /*break*/, 54];
|
|
4949
|
+
case 48:
|
|
4938
4950
|
{
|
|
4939
4951
|
// Maxlength check;
|
|
4940
4952
|
if (field.MaxLength !== undefined && field.MaxLength !== null && fieldData.length > field.MaxLength) {
|
|
@@ -4944,34 +4956,34 @@ function ValidateUserInput(options) {
|
|
|
4944
4956
|
msg = 'Invalid value for ' + field.DisplayName;
|
|
4945
4957
|
}
|
|
4946
4958
|
}
|
|
4947
|
-
return [3 /*break*/,
|
|
4948
|
-
case 48:
|
|
4949
|
-
if (!fieldData.length) return [3 /*break*/, 52];
|
|
4950
|
-
_c = 0, fieldData_2 = fieldData;
|
|
4951
|
-
_d.label = 49;
|
|
4959
|
+
return [3 /*break*/, 54];
|
|
4952
4960
|
case 49:
|
|
4953
|
-
if (!
|
|
4961
|
+
if (!fieldData.length) return [3 /*break*/, 53];
|
|
4962
|
+
_c = 0, fieldData_2 = fieldData;
|
|
4963
|
+
_d.label = 50;
|
|
4964
|
+
case 50:
|
|
4965
|
+
if (!(_c < fieldData_2.length)) return [3 /*break*/, 53];
|
|
4954
4966
|
obj = fieldData_2[_c];
|
|
4955
4967
|
return [4 /*yield*/, ValidateUserInput({ 'userInput': obj, 'pageData': pageData, 'objectID': documentID, 'db': db, 'collectionField': fieldName })];
|
|
4956
|
-
case
|
|
4968
|
+
case 51:
|
|
4957
4969
|
validateResp = _d.sent();
|
|
4958
4970
|
if (validateResp && validateResp != "") {
|
|
4959
4971
|
msg = validateResp;
|
|
4960
|
-
return [3 /*break*/,
|
|
4972
|
+
return [3 /*break*/, 53];
|
|
4961
4973
|
}
|
|
4962
|
-
_d.label =
|
|
4963
|
-
case
|
|
4974
|
+
_d.label = 52;
|
|
4975
|
+
case 52:
|
|
4964
4976
|
_c++;
|
|
4965
|
-
return [3 /*break*/,
|
|
4966
|
-
case
|
|
4967
|
-
case
|
|
4968
|
-
case
|
|
4977
|
+
return [3 /*break*/, 50];
|
|
4978
|
+
case 53: return [3 /*break*/, 54];
|
|
4979
|
+
case 54: return [3 /*break*/, 56];
|
|
4980
|
+
case 55:
|
|
4969
4981
|
if (!IsSystemField(objectName, fieldName) && !IsAnotherObjectField(pageData, fieldName)) {
|
|
4970
4982
|
msg = fieldName + " is not valid schema!";
|
|
4971
4983
|
return [2 /*return*/, "break"];
|
|
4972
4984
|
}
|
|
4973
|
-
_d.label =
|
|
4974
|
-
case
|
|
4985
|
+
_d.label = 56;
|
|
4986
|
+
case 56: return [2 /*return*/];
|
|
4975
4987
|
}
|
|
4976
4988
|
});
|
|
4977
4989
|
};
|
|
@@ -5130,36 +5142,3 @@ function InvitationMailReplyContent(fromUser, fromEmail) {
|
|
|
5130
5142
|
return "Please do not 'reply' to this email as it is an automated message and replies are routed to an unmonitored mailbox. If you wish to propose an alternative time or send a message, please contact " + fromUser + " at " + fromEmail + " directly.";
|
|
5131
5143
|
}
|
|
5132
5144
|
exports.InvitationMailReplyContent = InvitationMailReplyContent;
|
|
5133
|
-
/**
|
|
5134
|
-
* TODO: Check if filter has fiscal in Operator value - Recursion Function
|
|
5135
|
-
*
|
|
5136
|
-
* @param filter - object || array
|
|
5137
|
-
* @return boolean
|
|
5138
|
-
*/
|
|
5139
|
-
function HasFiscalOperator(filter) {
|
|
5140
|
-
if (Array.isArray(filter)) {
|
|
5141
|
-
if (filter && filter.length) {
|
|
5142
|
-
for (var i = 0; i < filter.length; i++) {
|
|
5143
|
-
var hasFiscalOption = HasFiscalOperator(filter[i]);
|
|
5144
|
-
if (hasFiscalOption) {
|
|
5145
|
-
return true;
|
|
5146
|
-
}
|
|
5147
|
-
}
|
|
5148
|
-
}
|
|
5149
|
-
}
|
|
5150
|
-
else {
|
|
5151
|
-
if (filter.Filters && filter.Filters.length) {
|
|
5152
|
-
for (var i = 0; i < filter.Filters.length; i++) {
|
|
5153
|
-
var hasFiscalOption = HasFiscalOperator(filter.Filters[i]);
|
|
5154
|
-
if (hasFiscalOption) {
|
|
5155
|
-
return true;
|
|
5156
|
-
}
|
|
5157
|
-
}
|
|
5158
|
-
}
|
|
5159
|
-
else if (filter && filter.Operator && (filter.Operator.includes("fiscal") || filter.Operator.includes("year-to-date"))) {
|
|
5160
|
-
return true;
|
|
5161
|
-
}
|
|
5162
|
-
}
|
|
5163
|
-
return false;
|
|
5164
|
-
}
|
|
5165
|
-
exports.HasFiscalOperator = HasFiscalOperator;
|