@optimiser/common 1.0.412 → 1.0.414
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/aws/awsservices.js +1 -1
- package/dist/lib/utility.d.ts +2 -1
- package/dist/lib/utility.js +66 -22
- package/package.json +1 -1
package/dist/aws/awsservices.js
CHANGED
|
@@ -144,7 +144,7 @@ var AwsServices = /** @class */ (function () {
|
|
|
144
144
|
encodedurl = "".concat(CDN, "/").concat(FilePath);
|
|
145
145
|
}
|
|
146
146
|
else {
|
|
147
|
-
FileName = this.EncodeFileName(FileName);
|
|
147
|
+
FileName = this.EncodeFileName(FileName).replace(/[^a-zA-Z0-9-_\.]/g, "-");
|
|
148
148
|
encodedurl = "".concat(CDN, "/").concat(FilePath, "?response-content-disposition=").concat(encodeURIComponent("attachment;filename=" + FileName));
|
|
149
149
|
}
|
|
150
150
|
signingParams = {
|
package/dist/lib/utility.d.ts
CHANGED
|
@@ -306,10 +306,11 @@ declare function GetFileFolderDetailsInFolderForDriveSharing(parentFolderID: any
|
|
|
306
306
|
*/
|
|
307
307
|
declare function SyncTotalSlotRemaining(registrationID: any, db: Db): Promise<void>;
|
|
308
308
|
declare function CheckAccessPermissions(permissionType: string, objectName: string, msp_d: AnyObjectInterface, db: Db, mdb: Db, next: NextFunction): Promise<boolean | undefined>;
|
|
309
|
+
declare function CheckProfilePermissions(permissionType: string, objectName: string, pageName: string, msp_d: AnyObjectInterface, db: Db, mdb: Db, next: NextFunction): Promise<boolean | undefined>;
|
|
309
310
|
/**
|
|
310
311
|
* TODO: To Set the delay
|
|
311
312
|
*
|
|
312
313
|
* @param ms - delay in milisecond
|
|
313
314
|
*/
|
|
314
315
|
declare function Delay(ms: integer): Promise<unknown>;
|
|
315
|
-
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 };
|
|
316
|
+
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, CheckProfilePermissions, 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.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;
|
|
88
|
+
exports.Delay = exports.CheckProfilePermissions = 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");
|
|
@@ -5786,7 +5786,7 @@ function ValidateStateCountryField(_a) {
|
|
|
5786
5786
|
});
|
|
5787
5787
|
}
|
|
5788
5788
|
/*
|
|
5789
|
-
*
|
|
5789
|
+
* Please not use this function, it will remove after go live of CheckProfilePermissions function
|
|
5790
5790
|
* @param1: permissionType, like Create/Modify/Delete/Import. permission type user has.
|
|
5791
5791
|
* @param2: objectName, like Contact, Account etc
|
|
5792
5792
|
* @param3:
|
|
@@ -5797,55 +5797,99 @@ function ValidateStateCountryField(_a) {
|
|
|
5797
5797
|
* Return: true/false
|
|
5798
5798
|
*/
|
|
5799
5799
|
function CheckAccessPermissions(permissionType, objectName, msp_d, db, mdb, next) {
|
|
5800
|
-
var _a, _b, _c;
|
|
5801
5800
|
return __awaiter(this, void 0, void 0, function () {
|
|
5802
|
-
var response, isAllowed, data, _i,
|
|
5803
|
-
return __generator(this, function (
|
|
5804
|
-
switch (
|
|
5801
|
+
var response, isAllowed, data, _i, _a, item, error_9;
|
|
5802
|
+
return __generator(this, function (_b) {
|
|
5803
|
+
switch (_b.label) {
|
|
5805
5804
|
case 0:
|
|
5806
|
-
|
|
5805
|
+
_b.trys.push([0, 2, , 3]);
|
|
5807
5806
|
return [4 /*yield*/, GetUserProfile(msp_d, db, mdb, next)];
|
|
5808
5807
|
case 1:
|
|
5809
|
-
response =
|
|
5808
|
+
response = _b.sent();
|
|
5809
|
+
isAllowed = true;
|
|
5810
|
+
data = response === null || response === void 0 ? void 0 : response.data;
|
|
5811
|
+
if (data && data.Permissions.length > 0) {
|
|
5812
|
+
for (_i = 0, _a = data.Permissions; _i < _a.length; _i++) {
|
|
5813
|
+
item = _a[_i];
|
|
5814
|
+
if (item.ModuleID.toLowerCase() == objectName.toLowerCase()) {
|
|
5815
|
+
if (!item.Operations.includes(permissionType)) {
|
|
5816
|
+
isAllowed = false;
|
|
5817
|
+
if (item.Operations.includes('Create-Edit'))
|
|
5818
|
+
isAllowed = true;
|
|
5819
|
+
}
|
|
5820
|
+
}
|
|
5821
|
+
}
|
|
5822
|
+
}
|
|
5823
|
+
else if ((response === null || response === void 0 ? void 0 : response.message) != 'success') { // Else if was added by Shahzaib not to allow user to perform CRUD operation with inactive licence.
|
|
5824
|
+
isAllowed = false;
|
|
5825
|
+
}
|
|
5826
|
+
return [2 /*return*/, isAllowed];
|
|
5827
|
+
case 2:
|
|
5828
|
+
error_9 = _b.sent();
|
|
5829
|
+
console.error("Internal Error in CheckAccessPermissions function : ".concat(error_9));
|
|
5830
|
+
return [3 /*break*/, 3];
|
|
5831
|
+
case 3: return [2 /*return*/];
|
|
5832
|
+
}
|
|
5833
|
+
});
|
|
5834
|
+
});
|
|
5835
|
+
}
|
|
5836
|
+
exports.CheckAccessPermissions = CheckAccessPermissions;
|
|
5837
|
+
/*
|
|
5838
|
+
* This function is used to check user profile permission
|
|
5839
|
+
* @param1: permissionType, like Create/Modify/Delete/Import. permission type user has.
|
|
5840
|
+
* @param2: objectName, like Contact, Account etc
|
|
5841
|
+
* @param3: pageName
|
|
5842
|
+
* @param4: msp_d, it contains userid, companyid, etc
|
|
5843
|
+
* @param5: db (database)
|
|
5844
|
+
* @param6: mdb (master DB)
|
|
5845
|
+
* Desc: allow user to procced, if he has access permission
|
|
5846
|
+
* Example: If user has Create/Modify/Delete/Import permission let him procceed else stop access.
|
|
5847
|
+
* Return: true/false
|
|
5848
|
+
*/
|
|
5849
|
+
function CheckProfilePermissions(permissionType, objectName, pageName, msp_d, db, mdb, next) {
|
|
5850
|
+
var _a, _b, _c, _d, _e;
|
|
5851
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
5852
|
+
var response, isAllowed, data, _i, _f, item, error_10;
|
|
5853
|
+
return __generator(this, function (_g) {
|
|
5854
|
+
switch (_g.label) {
|
|
5855
|
+
case 0:
|
|
5856
|
+
_g.trys.push([0, 2, , 3]);
|
|
5857
|
+
return [4 /*yield*/, GetUserProfile(msp_d, db, mdb, next)];
|
|
5858
|
+
case 1:
|
|
5859
|
+
response = _g.sent();
|
|
5810
5860
|
isAllowed = false;
|
|
5811
5861
|
data = response === null || response === void 0 ? void 0 : response.data;
|
|
5812
5862
|
if (data && data.Permissions.length > 0) {
|
|
5813
|
-
for (_i = 0,
|
|
5814
|
-
item =
|
|
5815
|
-
if (item.ModuleID.toLowerCase() == objectName.toLowerCase() || ((_b = (_a = item.ModuleData) === null || _a === void 0 ? void 0 : _a.Objects) === null || _b === void 0 ? void 0 : _b.includes(objectName))) {
|
|
5863
|
+
for (_i = 0, _f = data.Permissions; _i < _f.length; _i++) {
|
|
5864
|
+
item = _f[_i];
|
|
5865
|
+
if (item.ModuleID.toLowerCase() == objectName.toLowerCase() || ((_b = (_a = item.ModuleData) === null || _a === void 0 ? void 0 : _a.Objects) === null || _b === void 0 ? void 0 : _b.includes(objectName)) || (pageName && ((_d = (_c = item.ModuleData) === null || _c === void 0 ? void 0 : _c.Pages) === null || _d === void 0 ? void 0 : _d.includes(pageName)))) {
|
|
5816
5866
|
if (permissionType == "CheckOnlyAccess") {
|
|
5817
5867
|
isAllowed = true;
|
|
5818
|
-
break;
|
|
5819
5868
|
}
|
|
5820
5869
|
else if (item.Operations.includes(permissionType)) {
|
|
5821
5870
|
isAllowed = true;
|
|
5822
|
-
break;
|
|
5823
5871
|
}
|
|
5824
|
-
else if (((
|
|
5872
|
+
else if (((_e = item.ModuleData) === null || _e === void 0 ? void 0 : _e.CheckOnlyControlPanel) && item.Operations.includes('Control Panel')) {
|
|
5825
5873
|
isAllowed = true;
|
|
5826
|
-
break;
|
|
5827
5874
|
}
|
|
5828
5875
|
else if (item.ModuleID == "report" && item.Operations.includes('Create-Edit')) {
|
|
5829
5876
|
isAllowed = true;
|
|
5830
|
-
break;
|
|
5831
5877
|
}
|
|
5878
|
+
break;
|
|
5832
5879
|
}
|
|
5833
5880
|
}
|
|
5834
5881
|
}
|
|
5835
|
-
else if ((response === null || response === void 0 ? void 0 : response.message) != 'success') { // Else if was added by Shahzaib not to allow user to perform CRUD operation with inactive licence.
|
|
5836
|
-
isAllowed = false;
|
|
5837
|
-
}
|
|
5838
5882
|
return [2 /*return*/, isAllowed];
|
|
5839
5883
|
case 2:
|
|
5840
|
-
|
|
5841
|
-
console.error("Internal Error in
|
|
5884
|
+
error_10 = _g.sent();
|
|
5885
|
+
console.error("Internal Error in CheckProfilePermissions function : ".concat(error_10));
|
|
5842
5886
|
return [3 /*break*/, 3];
|
|
5843
5887
|
case 3: return [2 /*return*/];
|
|
5844
5888
|
}
|
|
5845
5889
|
});
|
|
5846
5890
|
});
|
|
5847
5891
|
}
|
|
5848
|
-
exports.
|
|
5892
|
+
exports.CheckProfilePermissions = CheckProfilePermissions;
|
|
5849
5893
|
/**
|
|
5850
5894
|
* TODO: To Set the delay
|
|
5851
5895
|
*
|