@optimiser/common 1.0.398 → 1.0.400
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 +7 -1
- package/dist/lib/utility.js +32 -10
- package/package.json +1 -1
package/dist/lib/utility.d.ts
CHANGED
|
@@ -305,4 +305,10 @@ declare function GetFileFolderDetailsInFolderForDriveSharing(parentFolderID: any
|
|
|
305
305
|
*/
|
|
306
306
|
declare function SyncTotalSlotRemaining(registrationID: any, db: Db): Promise<void>;
|
|
307
307
|
declare function CheckAccessPermissions(permissionType: string, objectName: string, msp_d: AnyObjectInterface, db: Db, mdb: Db, next: NextFunction): Promise<boolean | undefined>;
|
|
308
|
-
|
|
308
|
+
/**
|
|
309
|
+
* TODO: To Set the delay
|
|
310
|
+
*
|
|
311
|
+
* @param ms - delay in milisecond
|
|
312
|
+
*/
|
|
313
|
+
declare function delay(ms: integer): Promise<unknown>;
|
|
314
|
+
export { CheckForWhiteListedDomain, ReturnJsonResponse, ConvertFileByteSize, GetObjectByKeyValueFromList, IsEqualArrays, IsEqualValue, CheckUserProfileField, GetPageFieldData, GetPageObjectSchema, GetFieldDetail, UpdateRecentViewObject, UpdateRecentViewFields, SyncChildObjectData, SyncParentObjectData, DeleteFieldInOtherCollection, SyncFieldInSameCollection, SyncFieldInSameCollectionByObjectID, SyncFieldInSameCollectionByObjectIDWithPromise, SyncFieldInOtherCollection, SyncUserInOtherCollection, GetObjectByString, 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, CheckConditionalField, CheckExpressionOnDateField, AddDaysToDate, CreateBanquetingVATSettingsData, CheckReportFolderAccess, GetMailFromString, InvitationMailReplyContent, HasFiscalOperator, GetEncryptedURL, GenerateBase64QRCodeData, GetFileFolderDetailsInFolderForDriveSharing, SyncTotalSlotRemaining, CheckAccessPermissions, delay };
|
package/dist/lib/utility.js
CHANGED
|
@@ -85,7 +85,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
85
85
|
};
|
|
86
86
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
87
87
|
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.GetObjectByString = 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;
|
|
88
|
-
exports.CheckAccessPermissions = exports.SyncTotalSlotRemaining = exports.GetFileFolderDetailsInFolderForDriveSharing = exports.GenerateBase64QRCodeData = exports.GetEncryptedURL = exports.HasFiscalOperator = exports.InvitationMailReplyContent = exports.GetMailFromString = exports.CheckReportFolderAccess = exports.CreateBanquetingVATSettingsData = exports.AddDaysToDate = exports.CheckExpressionOnDateField = exports.CheckConditionalField = 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 = void 0;
|
|
88
|
+
exports.delay = exports.CheckAccessPermissions = exports.SyncTotalSlotRemaining = exports.GetFileFolderDetailsInFolderForDriveSharing = exports.GenerateBase64QRCodeData = exports.GetEncryptedURL = exports.HasFiscalOperator = exports.InvitationMailReplyContent = exports.GetMailFromString = exports.CheckReportFolderAccess = exports.CreateBanquetingVATSettingsData = exports.AddDaysToDate = exports.CheckExpressionOnDateField = exports.CheckConditionalField = 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 = void 0;
|
|
89
89
|
var moment_1 = __importDefault(require("moment"));
|
|
90
90
|
var nodemailer_1 = __importDefault(require("nodemailer"));
|
|
91
91
|
var mongodb_1 = require("mongodb");
|
|
@@ -4760,14 +4760,27 @@ function IsAnotherObjectField(pageData, fieldName) {
|
|
|
4760
4760
|
}
|
|
4761
4761
|
return false;
|
|
4762
4762
|
}
|
|
4763
|
-
var CustomSanitizeHtml = function (dirtyHtml) {
|
|
4764
|
-
|
|
4765
|
-
|
|
4766
|
-
|
|
4767
|
-
|
|
4768
|
-
|
|
4769
|
-
|
|
4770
|
-
|
|
4763
|
+
var CustomSanitizeHtml = function (dirtyHtml, uiDataType) {
|
|
4764
|
+
// Define default sanitization options
|
|
4765
|
+
var defaultOptions = {
|
|
4766
|
+
allowedTags: sanitize_html_1.default.defaults.allowedTags || false, // Use an empty array if defaults are unavailable
|
|
4767
|
+
allowedAttributes: false
|
|
4768
|
+
};
|
|
4769
|
+
// Determine sanitization options based on uiDataType
|
|
4770
|
+
var sanitizeOptions = (uiDataType === 'texteditor') ? defaultOptions : {};
|
|
4771
|
+
try {
|
|
4772
|
+
// Sanitize the HTML content
|
|
4773
|
+
var sanitizedHtmlContent = (0, sanitize_html_1.default)(dirtyHtml, sanitizeOptions);
|
|
4774
|
+
// Replace HTML entities with their characters (use caution)
|
|
4775
|
+
return sanitizedHtmlContent
|
|
4776
|
+
.replace(/&/g, '&')
|
|
4777
|
+
.replace(/</g, '<')
|
|
4778
|
+
.replace(/>/g, '>');
|
|
4779
|
+
}
|
|
4780
|
+
catch (error) {
|
|
4781
|
+
console.error('Sanitization failed:', error);
|
|
4782
|
+
return ''; // Return empty string or handle error as needed
|
|
4783
|
+
}
|
|
4771
4784
|
};
|
|
4772
4785
|
/*
|
|
4773
4786
|
* Created by: Nirbhay as on 01-09-22
|
|
@@ -4839,7 +4852,7 @@ function ValidateUserInput(options) {
|
|
|
4839
4852
|
if (!field) return [3 /*break*/, 58];
|
|
4840
4853
|
//sanitizing Html and added IgnoreSanitizeHtml condition so that it can be ignored for certain fields
|
|
4841
4854
|
if (!field.IgnoreSanitizeHtml && IsStringValue(fieldData)) {
|
|
4842
|
-
inputFields[fieldName] = CustomSanitizeHtml(fieldData);
|
|
4855
|
+
inputFields[fieldName] = CustomSanitizeHtml(fieldData, field.UIDataType);
|
|
4843
4856
|
fieldData = inputFields[fieldName];
|
|
4844
4857
|
}
|
|
4845
4858
|
if (field.DisableValidateUserInput) {
|
|
@@ -5813,6 +5826,15 @@ function CheckAccessPermissions(permissionType, objectName, msp_d, db, mdb, next
|
|
|
5813
5826
|
});
|
|
5814
5827
|
}
|
|
5815
5828
|
exports.CheckAccessPermissions = CheckAccessPermissions;
|
|
5829
|
+
/**
|
|
5830
|
+
* TODO: To Set the delay
|
|
5831
|
+
*
|
|
5832
|
+
* @param ms - delay in milisecond
|
|
5833
|
+
*/
|
|
5834
|
+
function delay(ms) {
|
|
5835
|
+
return new Promise(function (resolve) { return setTimeout(resolve, ms); });
|
|
5836
|
+
}
|
|
5837
|
+
exports.delay = delay;
|
|
5816
5838
|
/**
|
|
5817
5839
|
* Activity Mail Template Structure
|
|
5818
5840
|
* @param {string} content It is html body content sent over mail
|