@getjones/test-infra 4.5.0 → 4.5.2
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/package.json +30 -30
- package/src/common/commonFlows/auth/auth.js +40 -40
- package/src/common/commonFlows/index.js +4 -4
- package/src/common/commonFlows/records/records.js +260 -260
- package/src/common/consts/accountSettings.js +14 -14
- package/src/common/consts/activationStatuses.js +6 -6
- package/src/common/consts/autocomplete.js +10 -10
- package/src/common/consts/constantsForRecordsSortingAndFilters.js +48 -48
- package/src/common/consts/dashboardCharts.js +18 -18
- package/src/common/consts/homepage/AttentionTab.js +5 -5
- package/src/common/consts/homepage/sortOptions.js +14 -14
- package/src/common/consts/ocrStatuses.js +6 -6
- package/src/common/consts/projectSettings.js +21 -21
- package/src/common/consts/recordTypes.js +5 -5
- package/src/common/consts/requirementActions.js +10 -10
- package/src/common/consts/s3FileTypes.js +13 -13
- package/src/common/consts/userRoles.js +18 -18
- package/src/common/consts/userTypes.js +8 -8
- package/src/common/errorCodes.js +3 -3
- package/src/common/httpResponseStatusCodes.json +11 -11
- package/src/common/httpResponseTypes.json +2 -2
- package/src/common/requests/apiKeyAuth/requests.js +44 -44
- package/src/common/requests/cookieAuth/requests.js +40 -40
- package/src/common/requests/internalAuth/requests.js +48 -48
- package/src/common/requests/requestHandlers.js +80 -80
- package/src/common/utils/complianceUtil.js +114 -114
- package/src/common/utils/configsUtil.js +22 -22
- package/src/common/utils/dataTypeUtils.js +41 -41
- package/src/common/utils/numberUtils.js +22 -22
- package/src/common/utils/objectUtils.js +7 -7
- package/src/common/utils/timeUtils.js +177 -177
- package/src/common/validations/errorValidation.js +16 -16
- package/src/common/validations/typeValidations.js +36 -36
- package/src/defaults/configs/auditConfigs.js +146 -125
- package/src/defaults/configs/coverage.js +236 -227
- package/src/defaults/configs/polices.js +75 -75
- package/src/defaults/configs/requirement.js +32 -32
- package/src/defaults/index.js +6 -6
- package/src/env.js +57 -57
- package/src/factory/globalRecord/globalRecord.js +43 -43
- package/src/factory/index.js +8 -8
- package/src/factory/records/records.js +297 -229
- package/src/factory/users/users.js +86 -86
- package/src/index.js +97 -97
- package/src/resources/virusFile.pdf +0 -0
- package/src/saas/internal-api/accountDirectory/api/accountDirectory.api.js +50 -50
- package/src/saas/internal-api/accountDirectory/api/accountDirectory.service.js +182 -182
- package/src/saas/internal-api/accountDirectory/index.js +4 -4
- package/src/saas/internal-api/accountDirectory/models/accountDirectory.model.js +40 -40
- package/src/saas/internal-api/accounts/api/core/accounts.core.api.js +35 -35
- package/src/saas/internal-api/accounts/api/core/accounts.core.service.js +93 -93
- package/src/saas/internal-api/accounts/api/emailCustomization/accounts.email.customizations.api.js +29 -29
- package/src/saas/internal-api/accounts/api/emailCustomization/accounts.email.customizations.service.js +61 -61
- package/src/saas/internal-api/accounts/api/openapi/accounts.openapi.api.js +48 -48
- package/src/saas/internal-api/accounts/api/openapi/accounts.openapi.service.js +74 -74
- package/src/saas/internal-api/accounts/api/settings/settings.api.js +21 -21
- package/src/saas/internal-api/accounts/api/settings/settings.service.js +41 -41
- package/src/saas/internal-api/accounts/consts/consts.js +8 -8
- package/src/saas/internal-api/accounts/index.js +22 -22
- package/src/saas/internal-api/accounts/models/core/create.account.model.js +16 -16
- package/src/saas/internal-api/accounts/models/settings/update.settings.model.js +51 -51
- package/src/saas/internal-api/accounts/utils/utils.js +60 -60
- package/src/saas/internal-api/agreement/api/agreement.api.js +39 -39
- package/src/saas/internal-api/agreement/api/agreement.service.js +121 -121
- package/src/saas/internal-api/agreement/consts/consts.js +11 -11
- package/src/saas/internal-api/agreement/index.js +12 -12
- package/src/saas/internal-api/agreement/models/create.agreement.model.js +12 -12
- package/src/saas/internal-api/agreement/models/createAgreementByAuditorModel.js +11 -11
- package/src/saas/internal-api/agreement/models/createAgreementByPMModel.js +13 -13
- package/src/saas/internal-api/auditCustomerRules/api/customer.rules.api.js +43 -43
- package/src/saas/internal-api/auditCustomerRules/api/customer.rules.service.js +105 -105
- package/src/saas/internal-api/auditCustomerRules/consts/customer.rule.js +11 -11
- package/src/saas/internal-api/auditCustomerRules/index.js +6 -6
- package/src/saas/internal-api/auditCustomerRules/models/customer.rule.model.js +46 -46
- package/src/saas/internal-api/auditCustomerRules/utils/customer.rule.util.js +19 -19
- package/src/saas/internal-api/auditNotes/api/audit.notes.api.js +40 -40
- package/src/saas/internal-api/auditNotes/api/audit.notes.service.js +115 -115
- package/src/saas/internal-api/auditNotes/index.js +4 -4
- package/src/saas/internal-api/auditNotes/models/audit.note.model.js +30 -30
- package/src/saas/internal-api/auth/api/auth.api.js +27 -27
- package/src/saas/internal-api/auth/api/auth.service.js +90 -90
- package/src/saas/internal-api/auth/index.js +3 -3
- package/src/saas/internal-api/coi/api/coi.api.js +45 -45
- package/src/saas/internal-api/coi/api/coi.service.js +39 -39
- package/src/saas/internal-api/coi/consts/hashes.js +4 -4
- package/src/saas/internal-api/coi/consts/uploaderTypes.js +5 -5
- package/src/saas/internal-api/coi/index.js +14 -14
- package/src/saas/internal-api/coi/models/Combine.last.two.cois.model.js +25 -25
- package/src/saas/internal-api/coi/models/submit.coi.model.js +19 -19
- package/src/saas/internal-api/coi/utils/utils.js +117 -117
- package/src/saas/internal-api/compliance/api/amBestRating/am.best.rating.api.js +12 -12
- package/src/saas/internal-api/compliance/api/amBestRating/am.best.rating.service.js +14 -14
- package/src/saas/internal-api/compliance/api/audit/audit.api.js +115 -115
- package/src/saas/internal-api/compliance/api/audit/audit.service.js +300 -300
- package/src/saas/internal-api/compliance/api/convert/convert.api.js +17 -17
- package/src/saas/internal-api/compliance/api/convert/convert.service.js +11 -11
- package/src/saas/internal-api/compliance/api/coverage/coverage.api.js +33 -33
- package/src/saas/internal-api/compliance/api/coverage/coverage.service.js +50 -48
- package/src/saas/internal-api/compliance/api/overrideGap/override.gap.api.js +38 -38
- package/src/saas/internal-api/compliance/api/overrideGap/override.gap.service.js +183 -183
- package/src/saas/internal-api/compliance/consts/audit.js +111 -111
- package/src/saas/internal-api/compliance/index.js +36 -36
- package/src/saas/internal-api/compliance/models/audit/audit.model.js +96 -96
- package/src/saas/internal-api/compliance/models/waive/waive.model.js +49 -49
- package/src/saas/internal-api/compliance/utils/auditUtil.js +254 -254
- package/src/saas/internal-api/compliance/utils/coverageUtil.js +55 -40
- package/src/saas/internal-api/contractors/api/contractors.api.js +209 -209
- package/src/saas/internal-api/contractors/api/contractors.service.js +361 -361
- package/src/saas/internal-api/contractors/consts/consts.js +6 -6
- package/src/saas/internal-api/contractors/index.js +8 -8
- package/src/saas/internal-api/contractors/models/assign.requirement.model.js +10 -10
- package/src/saas/internal-api/contractors/models/edit.contractor.model.js +73 -73
- package/src/saas/internal-api/contractors/models/link.request.model.js +10 -10
- package/src/saas/internal-api/contractors/models/subscription.contractor.model.js +13 -13
- package/src/saas/internal-api/contractors/models/verification.contractor.model.js +27 -27
- package/src/saas/internal-api/contractors/utils.js +25 -25
- package/src/saas/internal-api/dashboard/api/recordList.api.js +38 -38
- package/src/saas/internal-api/dashboard/api/recordList.service.js +60 -60
- package/src/saas/internal-api/dashboard/index.js +5 -5
- package/src/saas/internal-api/dashboard/models/dashboard.filter.criteria.model.js +38 -38
- package/src/saas/internal-api/dbEmails/api/db.emails.api.js +25 -25
- package/src/saas/internal-api/dbEmails/api/db.emails.service.js +156 -156
- package/src/saas/internal-api/dbEmails/consts/consts.js +55 -55
- package/src/saas/internal-api/dbEmails/index.js +6 -6
- package/src/saas/internal-api/dbEmails/models/db.emails.model.js +22 -22
- package/src/saas/internal-api/dbEmails/utils/util.js +87 -87
- package/src/saas/internal-api/emailCustomization/api/email.customization.api.js +26 -26
- package/src/saas/internal-api/emailCustomization/api/email.customization.service.js +50 -50
- package/src/saas/internal-api/emailCustomization/index.js +3 -3
- package/src/saas/internal-api/globalRecord/api/global.record.api.js +95 -95
- package/src/saas/internal-api/globalRecord/api/global.record.service.js +112 -112
- package/src/saas/internal-api/globalRecord/consts.js +20 -20
- package/src/saas/internal-api/globalRecord/index.js +6 -6
- package/src/saas/internal-api/globalRecord/models/global.record.model.js +60 -60
- package/src/saas/internal-api/globalRecord/utils/util.js +161 -161
- package/src/saas/internal-api/homepageCharts/api/charts.api.js +12 -12
- package/src/saas/internal-api/homepageCharts/api/charts.service.js +7 -7
- package/src/saas/internal-api/homepageCharts/index.js +3 -3
- package/src/saas/internal-api/policyFile/api/policy.file.api.js +43 -43
- package/src/saas/internal-api/policyFile/api/policy.file.service.js +117 -117
- package/src/saas/internal-api/policyFile/consts.js +21 -21
- package/src/saas/internal-api/policyFile/index.js +11 -11
- package/src/saas/internal-api/policyFile/models/create.policy.file.model.js +11 -11
- package/src/saas/internal-api/policyFile/models/set.publish.flag.to.policy.model.js +13 -13
- package/src/saas/internal-api/projects/api/core/projects.api.js +39 -39
- package/src/saas/internal-api/projects/api/core/projects.service.js +77 -77
- package/src/saas/internal-api/projects/api/settings/project.settings.api.js +18 -18
- package/src/saas/internal-api/projects/api/settings/project.settings.service.js +35 -35
- package/src/saas/internal-api/projects/consts/defaultProject.js +3 -3
- package/src/saas/internal-api/projects/index.js +24 -24
- package/src/saas/internal-api/projects/models/core/create.project.model.js +41 -41
- package/src/saas/internal-api/projects/models/core/update.project.model.js +47 -47
- package/src/saas/internal-api/projects/models/settings/update.project.settings.model.js +40 -40
- package/src/saas/internal-api/projects/utils/utils.js +155 -155
- package/src/saas/internal-api/recordHub/api/record.hub.api.js +14 -14
- package/src/saas/internal-api/recordHub/api/record.hub.service.js +21 -21
- package/src/saas/internal-api/recordHub/index.js +3 -3
- package/src/saas/internal-api/recordNotes/api/record.notes.api.js +38 -38
- package/src/saas/internal-api/recordNotes/api/record.notes.service.js +47 -47
- package/src/saas/internal-api/recordNotes/api/record.notes.utils.js +12 -12
- package/src/saas/internal-api/recordNotes/index.js +3 -3
- package/src/saas/internal-api/reports/api/reports.api.js +62 -62
- package/src/saas/internal-api/reports/api/reports.service.js +79 -79
- package/src/saas/internal-api/reports/consts/consts.js +74 -74
- package/src/saas/internal-api/reports/index.js +15 -15
- package/src/saas/internal-api/reports/models/report.model.js +27 -27
- package/src/saas/internal-api/requests/api/requests.api.js +126 -126
- package/src/saas/internal-api/requests/api/requests.service.js +301 -301
- package/src/saas/internal-api/requests/index.js +21 -21
- package/src/saas/internal-api/requests/models/create.request.model.js +36 -36
- package/src/saas/internal-api/requests/models/draft.request.criteria.model.js +18 -18
- package/src/saas/internal-api/requests/models/draft.request.report.model.js +14 -14
- package/src/saas/internal-api/requests/models/edit.request.model.js +31 -31
- package/src/saas/internal-api/requests/models/homepageRequestCriteriaModel.js +19 -19
- package/src/saas/internal-api/requests/models/requestListCriteriaModel.js +17 -17
- package/src/saas/internal-api/requests/models/tenant.request.model.js +9 -9
- package/src/saas/internal-api/requests/utils.js +16 -16
- package/src/saas/internal-api/requestsTable/api/requests.table.api.js +20 -20
- package/src/saas/internal-api/requestsTable/api/requests.table.service.js +14 -14
- package/src/saas/internal-api/requestsTable/index.js +3 -3
- package/src/saas/internal-api/requirements/api/requirements.api.js +57 -57
- package/src/saas/internal-api/requirements/api/requirements.service.js +177 -177
- package/src/saas/internal-api/requirements/consts/attributeTypes.json +8 -8
- package/src/saas/internal-api/requirements/consts/consts.js +6 -6
- package/src/saas/internal-api/requirements/index.js +10 -10
- package/src/saas/internal-api/requirements/models/create.requirement.model.js +17 -17
- package/src/saas/internal-api/requirements/models/policy.model.js +35 -35
- package/src/saas/internal-api/requirements/models/update.requirement.model.js +19 -19
- package/src/saas/internal-api/requirements/utils/utils.js +129 -129
- package/src/saas/internal-api/serviceArea/api/coordinates.api.js +12 -12
- package/src/saas/internal-api/serviceArea/api/coordinates.service.js +7 -7
- package/src/saas/internal-api/serviceArea/index.js +4 -4
- package/src/saas/internal-api/serviceArea/utils/utils.js +8 -8
- package/src/saas/internal-api/tabs/api/tabs.api.js +32 -32
- package/src/saas/internal-api/tabs/api/tabs.service.js +54 -54
- package/src/saas/internal-api/tabs/index.js +3 -3
- package/src/saas/internal-api/tabs/models/tabs.model.js +19 -19
- package/src/saas/internal-api/thread-scheduler/runner.js +55 -55
- package/src/saas/internal-api/uploadFiles/api/upload.file.api.js +43 -43
- package/src/saas/internal-api/uploadFiles/api/upload.file.service.js +107 -107
- package/src/saas/internal-api/uploadFiles/consts.js +12 -12
- package/src/saas/internal-api/uploadFiles/index.js +5 -5
- package/src/saas/internal-api/users/api/tenantApp/tenant.app.api.js +38 -38
- package/src/saas/internal-api/users/api/tenantApp/tenant.app.service.js +108 -108
- package/src/saas/internal-api/users/api/users.api.js +127 -127
- package/src/saas/internal-api/users/api/users.service.js +258 -258
- package/src/saas/internal-api/users/index.js +16 -16
- package/src/saas/internal-api/users/models/create.inner.system.user.model.js +18 -18
- package/src/saas/internal-api/users/models/notification.settings.model.js +12 -12
- package/src/saas/internal-api/users/models/tenent.user.model.js +11 -11
- package/src/saas/internal-api/users/models/users.model.js +43 -43
- package/src/saas/internal-api/users/utils/util.js +39 -39
- package/src/saas/internal-api/vendorProfile/api/vendor.profile.api.js +26 -26
- package/src/saas/internal-api/vendorProfile/api/vendor.profile.service.js +19 -19
- package/src/saas/internal-api/vendorProfile/index.js +3 -3
- package/src/saas/openapi/accounts/accounts.api.js +17 -17
- package/src/saas/openapi/accounts/accounts.service.js +11 -11
- package/src/saas/openapi/coi/coi.api.js +30 -30
- package/src/saas/openapi/coi/coi.service.js +43 -43
- package/src/saas/openapi/projects/projects.api.js +83 -83
- package/src/saas/openapi/projects/projects.service.js +64 -64
- package/src/saas/openapi/requests/index.js +7 -7
- package/src/saas/openapi/requests/models/invite.request.model.js +40 -40
- package/src/saas/openapi/requests/models/update.request.model.js +35 -35
- package/src/saas/openapi/requests/requests.api.js +93 -93
- package/src/saas/openapi/requests/requests.service.js +94 -94
- package/src/saas/openapi/requirements/index.js +6 -6
- package/src/saas/openapi/requirements/models/copy.requirement.model.js +10 -10
- package/src/saas/openapi/requirements/requirements.api.js +41 -41
- package/src/saas/openapi/requirements/requirements.service.js +49 -49
- package/src/saas/openapi/tabs/index.js +6 -6
- package/src/saas/openapi/tabs/models/create.tab.model.js +6 -6
- package/src/saas/openapi/tabs/tabs.api.js +27 -27
- package/src/saas/openapi/tabs/tabs.service.js +19 -19
- package/src/saas/openapi/users/user.model.js +10 -10
- package/src/saas/openapi/users/users.api.js +33 -33
- package/src/saas/openapi/users/users.service.js +51 -51
- package/tests/env.test.js +40 -40
- package/tests/validation.test.js +83 -83
|
@@ -1,86 +1,86 @@
|
|
|
1
|
-
const { getEnv } = require('../../env');
|
|
2
|
-
const auth = require('../../saas/internal-api/auth/api/auth.service');
|
|
3
|
-
const httpResponseStatusCodes = require('../../common/httpResponseStatusCodes.json');
|
|
4
|
-
|
|
5
|
-
const { credentials } = getEnv();
|
|
6
|
-
|
|
7
|
-
const users = require('../../saas/internal-api/users');
|
|
8
|
-
const { InviteUserModel } = users.models;
|
|
9
|
-
|
|
10
|
-
const defaultsPassword = credentials.strongPassword;
|
|
11
|
-
const roles = {
|
|
12
|
-
readOnly: 'Read-only User',
|
|
13
|
-
inviter: 'Inviter',
|
|
14
|
-
cm: 'Compliance Manager'
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
const inviteSaasUser = async (username, role, projectIds, context, { hasCompleteAccessPermission } = {}) => {
|
|
18
|
-
const userResponse = await users.services.getUserByEmail(username, context);
|
|
19
|
-
|
|
20
|
-
if (userResponse.data && userResponse.data.id) {
|
|
21
|
-
const { projectPermissions } = userResponse.data;
|
|
22
|
-
const projectPermissionsIds = projectPermissions.map(projectPermission => projectPermission.projectId);
|
|
23
|
-
|
|
24
|
-
projectIds = projectIds.filter(projectId => !projectPermissionsIds.includes(projectId));
|
|
25
|
-
|
|
26
|
-
if (!projectIds.length) {
|
|
27
|
-
return;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
const inviteUserModel = new InviteUserModel(username, role, projectIds, hasCompleteAccessPermission);
|
|
32
|
-
const inviteResponse = await users.services.inviteUser([inviteUserModel], context);
|
|
33
|
-
|
|
34
|
-
if (inviteResponse.status !== httpResponseStatusCodes.NO_CONTENT) {
|
|
35
|
-
throw new Error(`Failed to invite user with email: ${username}\n${inviteResponse}`);
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
|
|
39
|
-
const signupSaasUser = async (username, role, context) => {
|
|
40
|
-
const userResponse = await users.services.getUserByEmail(username, context);
|
|
41
|
-
|
|
42
|
-
//Already signup user
|
|
43
|
-
if (userResponse.data.isVerified) {
|
|
44
|
-
return;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
const signupUserModel = await users.util.getSignupUserModel(username, role, role, defaultsPassword, context);
|
|
48
|
-
const signupResponse = await users.services.signupUser(signupUserModel, context);
|
|
49
|
-
|
|
50
|
-
if (signupResponse.status !== httpResponseStatusCodes.OK) {
|
|
51
|
-
throw new Error(`Failed to invite ${role} user with email: ${username}\n${signupResponse}`);
|
|
52
|
-
}
|
|
53
|
-
};
|
|
54
|
-
|
|
55
|
-
const prepareUser = async (username, role, projectIds, context, { signup = true, hasCompleteAccessPermission } = {}) => {
|
|
56
|
-
await inviteSaasUser(username, role, projectIds, context, { hasCompleteAccessPermission });
|
|
57
|
-
|
|
58
|
-
const icsContext = await auth.getIcsCookie();
|
|
59
|
-
signup && await signupSaasUser(username, role, icsContext); // Can not use other context than ics to use this function
|
|
60
|
-
|
|
61
|
-
const userResponse = await users.services.getUserByEmail(username, icsContext); // Can not use other context than ics to use this function
|
|
62
|
-
|
|
63
|
-
if (userResponse.status !== httpResponseStatusCodes.OK) {
|
|
64
|
-
throw new Error(`Failed to prepare ${role} user with email: ${username}\n${userResponse}`);
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
return userResponse.data;
|
|
68
|
-
};
|
|
69
|
-
|
|
70
|
-
const prepareComplianceManagerUser = (username, projectIds, context, { signup, hasCompleteAccessPermission } = {}) => {
|
|
71
|
-
return prepareUser(username, roles.cm, projectIds, context, { signup, hasCompleteAccessPermission });
|
|
72
|
-
};
|
|
73
|
-
|
|
74
|
-
const prepareInviterUser = (username, projectIds, context, { signup, hasCompleteAccessPermission } = {}) => {
|
|
75
|
-
return prepareUser(username, roles.inviter, projectIds, context, { signup, hasCompleteAccessPermission });
|
|
76
|
-
};
|
|
77
|
-
|
|
78
|
-
const prepareReadOnlyUser = (username, projectIds, context, { signup, hasCompleteAccessPermission } = {}) => {
|
|
79
|
-
return prepareUser(username, roles.readOnly, projectIds, context, { signup, hasCompleteAccessPermission });
|
|
80
|
-
};
|
|
81
|
-
|
|
82
|
-
module.exports = {
|
|
83
|
-
prepareComplianceManagerUser,
|
|
84
|
-
prepareInviterUser,
|
|
85
|
-
prepareReadOnlyUser
|
|
86
|
-
};
|
|
1
|
+
const { getEnv } = require('../../env');
|
|
2
|
+
const auth = require('../../saas/internal-api/auth/api/auth.service');
|
|
3
|
+
const httpResponseStatusCodes = require('../../common/httpResponseStatusCodes.json');
|
|
4
|
+
|
|
5
|
+
const { credentials } = getEnv();
|
|
6
|
+
|
|
7
|
+
const users = require('../../saas/internal-api/users');
|
|
8
|
+
const { InviteUserModel } = users.models;
|
|
9
|
+
|
|
10
|
+
const defaultsPassword = credentials.strongPassword;
|
|
11
|
+
const roles = {
|
|
12
|
+
readOnly: 'Read-only User',
|
|
13
|
+
inviter: 'Inviter',
|
|
14
|
+
cm: 'Compliance Manager'
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
const inviteSaasUser = async (username, role, projectIds, context, { hasCompleteAccessPermission } = {}) => {
|
|
18
|
+
const userResponse = await users.services.getUserByEmail(username, context);
|
|
19
|
+
|
|
20
|
+
if (userResponse.data && userResponse.data.id) {
|
|
21
|
+
const { projectPermissions } = userResponse.data;
|
|
22
|
+
const projectPermissionsIds = projectPermissions.map(projectPermission => projectPermission.projectId);
|
|
23
|
+
|
|
24
|
+
projectIds = projectIds.filter(projectId => !projectPermissionsIds.includes(projectId));
|
|
25
|
+
|
|
26
|
+
if (!projectIds.length) {
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
const inviteUserModel = new InviteUserModel(username, role, projectIds, hasCompleteAccessPermission);
|
|
32
|
+
const inviteResponse = await users.services.inviteUser([inviteUserModel], context);
|
|
33
|
+
|
|
34
|
+
if (inviteResponse.status !== httpResponseStatusCodes.NO_CONTENT) {
|
|
35
|
+
throw new Error(`Failed to invite user with email: ${username}\n${inviteResponse}`);
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
const signupSaasUser = async (username, role, context) => {
|
|
40
|
+
const userResponse = await users.services.getUserByEmail(username, context);
|
|
41
|
+
|
|
42
|
+
//Already signup user
|
|
43
|
+
if (userResponse.data.isVerified) {
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
const signupUserModel = await users.util.getSignupUserModel(username, role, role, defaultsPassword, context);
|
|
48
|
+
const signupResponse = await users.services.signupUser(signupUserModel, context);
|
|
49
|
+
|
|
50
|
+
if (signupResponse.status !== httpResponseStatusCodes.OK) {
|
|
51
|
+
throw new Error(`Failed to invite ${role} user with email: ${username}\n${signupResponse}`);
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
const prepareUser = async (username, role, projectIds, context, { signup = true, hasCompleteAccessPermission } = {}) => {
|
|
56
|
+
await inviteSaasUser(username, role, projectIds, context, { hasCompleteAccessPermission });
|
|
57
|
+
|
|
58
|
+
const icsContext = await auth.getIcsCookie();
|
|
59
|
+
signup && await signupSaasUser(username, role, icsContext); // Can not use other context than ics to use this function
|
|
60
|
+
|
|
61
|
+
const userResponse = await users.services.getUserByEmail(username, icsContext); // Can not use other context than ics to use this function
|
|
62
|
+
|
|
63
|
+
if (userResponse.status !== httpResponseStatusCodes.OK) {
|
|
64
|
+
throw new Error(`Failed to prepare ${role} user with email: ${username}\n${userResponse}`);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
return userResponse.data;
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
const prepareComplianceManagerUser = (username, projectIds, context, { signup, hasCompleteAccessPermission } = {}) => {
|
|
71
|
+
return prepareUser(username, roles.cm, projectIds, context, { signup, hasCompleteAccessPermission });
|
|
72
|
+
};
|
|
73
|
+
|
|
74
|
+
const prepareInviterUser = (username, projectIds, context, { signup, hasCompleteAccessPermission } = {}) => {
|
|
75
|
+
return prepareUser(username, roles.inviter, projectIds, context, { signup, hasCompleteAccessPermission });
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
const prepareReadOnlyUser = (username, projectIds, context, { signup, hasCompleteAccessPermission } = {}) => {
|
|
79
|
+
return prepareUser(username, roles.readOnly, projectIds, context, { signup, hasCompleteAccessPermission });
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
module.exports = {
|
|
83
|
+
prepareComplianceManagerUser,
|
|
84
|
+
prepareInviterUser,
|
|
85
|
+
prepareReadOnlyUser
|
|
86
|
+
};
|
package/src/index.js
CHANGED
|
@@ -1,97 +1,97 @@
|
|
|
1
|
-
const env = require('./env');
|
|
2
|
-
const init = conf => {
|
|
3
|
-
env.init(conf);
|
|
4
|
-
const internalAPI = getInternalAPI();
|
|
5
|
-
const openAPI = getOpenAPI();
|
|
6
|
-
|
|
7
|
-
return { internalAPI, openAPI };
|
|
8
|
-
};
|
|
9
|
-
|
|
10
|
-
const getInternalAPI = () => {
|
|
11
|
-
const factory = require('./factory');
|
|
12
|
-
const defaults = require('./defaults');
|
|
13
|
-
const auth = require('./saas/internal-api/auth');
|
|
14
|
-
const accounts = require('./saas/internal-api/accounts');
|
|
15
|
-
|
|
16
|
-
const projects = require('./saas/internal-api/projects');
|
|
17
|
-
const tabs = require('./saas/internal-api/tabs');
|
|
18
|
-
|
|
19
|
-
const requirements = require('./saas/internal-api/requirements');
|
|
20
|
-
const contractors = require('./saas/internal-api/contractors');
|
|
21
|
-
const requests = require('./saas/internal-api/requests');
|
|
22
|
-
|
|
23
|
-
const coi = require('./saas/internal-api/coi');
|
|
24
|
-
const compliance = require('./saas/internal-api/compliance');
|
|
25
|
-
const auditNotes = require('./saas/internal-api/auditNotes');
|
|
26
|
-
const auditCustomerRules = require('./saas/internal-api/auditCustomerRules');
|
|
27
|
-
|
|
28
|
-
const users = require('./saas/internal-api/users');
|
|
29
|
-
|
|
30
|
-
const reports = require('./saas/internal-api/reports');
|
|
31
|
-
const charts = require('./saas/internal-api/homepageCharts');
|
|
32
|
-
const dashboard = require('./saas/internal-api/dashboard');
|
|
33
|
-
const accountDirectory = require('./saas/internal-api/accountDirectory');
|
|
34
|
-
|
|
35
|
-
const globalRecord = require('./saas/internal-api/globalRecord');
|
|
36
|
-
const vendorProfile = require('./saas/internal-api/vendorProfile');
|
|
37
|
-
const serviceArea = require('./saas/internal-api/serviceArea');
|
|
38
|
-
|
|
39
|
-
const recordHub = require('./saas/internal-api/recordHub');
|
|
40
|
-
const requestsTable = require('./saas/internal-api/requestsTable');
|
|
41
|
-
|
|
42
|
-
const threadScheduler = require('./saas/internal-api/thread-scheduler/runner');
|
|
43
|
-
const dbEmails = require('./saas/internal-api/dbEmails/index');
|
|
44
|
-
const agreement = require('./saas/internal-api/agreement/index');
|
|
45
|
-
const uploadFile = require('./saas/internal-api/uploadFiles/index');
|
|
46
|
-
const policyFile = require('./saas/internal-api/policyFile');
|
|
47
|
-
|
|
48
|
-
const emailCustomization = require('./saas/internal-api/emailCustomization');
|
|
49
|
-
|
|
50
|
-
const internalAPI = {
|
|
51
|
-
defaults,
|
|
52
|
-
auth,
|
|
53
|
-
accounts,
|
|
54
|
-
projects,
|
|
55
|
-
tabs,
|
|
56
|
-
requirements,
|
|
57
|
-
contractors,
|
|
58
|
-
requests,
|
|
59
|
-
coi,
|
|
60
|
-
compliance,
|
|
61
|
-
auditNotes,
|
|
62
|
-
auditCustomerRules,
|
|
63
|
-
reports,
|
|
64
|
-
users,
|
|
65
|
-
charts,
|
|
66
|
-
dashboard,
|
|
67
|
-
accountDirectory,
|
|
68
|
-
globalRecord,
|
|
69
|
-
vendorProfile,
|
|
70
|
-
serviceArea,
|
|
71
|
-
recordHub,
|
|
72
|
-
requestsTable,
|
|
73
|
-
threadScheduler,
|
|
74
|
-
dbEmails,
|
|
75
|
-
emailCustomization,
|
|
76
|
-
factory,
|
|
77
|
-
agreement,
|
|
78
|
-
uploadFile,
|
|
79
|
-
policyFile
|
|
80
|
-
};
|
|
81
|
-
|
|
82
|
-
return internalAPI;
|
|
83
|
-
};
|
|
84
|
-
|
|
85
|
-
const getOpenAPI = () => {
|
|
86
|
-
const accounts = require('./saas/openapi/accounts/accounts.service');
|
|
87
|
-
const projects = require('./saas/openapi/projects/projects.service');
|
|
88
|
-
const tabs = require('./saas/openapi/tabs');
|
|
89
|
-
const requirements = require('./saas/openapi/requirements');
|
|
90
|
-
const requests = require('./saas/openapi/requests');
|
|
91
|
-
const coi = require('./saas/openapi/coi/coi.service');
|
|
92
|
-
const users = require('./saas/openapi/users/users.service');
|
|
93
|
-
const openAPI = { accounts, projects, tabs, requirements, requests, coi, users };
|
|
94
|
-
return openAPI;
|
|
95
|
-
};
|
|
96
|
-
|
|
97
|
-
module.exports = init;
|
|
1
|
+
const env = require('./env');
|
|
2
|
+
const init = conf => {
|
|
3
|
+
env.init(conf);
|
|
4
|
+
const internalAPI = getInternalAPI();
|
|
5
|
+
const openAPI = getOpenAPI();
|
|
6
|
+
|
|
7
|
+
return { internalAPI, openAPI };
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
const getInternalAPI = () => {
|
|
11
|
+
const factory = require('./factory');
|
|
12
|
+
const defaults = require('./defaults');
|
|
13
|
+
const auth = require('./saas/internal-api/auth');
|
|
14
|
+
const accounts = require('./saas/internal-api/accounts');
|
|
15
|
+
|
|
16
|
+
const projects = require('./saas/internal-api/projects');
|
|
17
|
+
const tabs = require('./saas/internal-api/tabs');
|
|
18
|
+
|
|
19
|
+
const requirements = require('./saas/internal-api/requirements');
|
|
20
|
+
const contractors = require('./saas/internal-api/contractors');
|
|
21
|
+
const requests = require('./saas/internal-api/requests');
|
|
22
|
+
|
|
23
|
+
const coi = require('./saas/internal-api/coi');
|
|
24
|
+
const compliance = require('./saas/internal-api/compliance');
|
|
25
|
+
const auditNotes = require('./saas/internal-api/auditNotes');
|
|
26
|
+
const auditCustomerRules = require('./saas/internal-api/auditCustomerRules');
|
|
27
|
+
|
|
28
|
+
const users = require('./saas/internal-api/users');
|
|
29
|
+
|
|
30
|
+
const reports = require('./saas/internal-api/reports');
|
|
31
|
+
const charts = require('./saas/internal-api/homepageCharts');
|
|
32
|
+
const dashboard = require('./saas/internal-api/dashboard');
|
|
33
|
+
const accountDirectory = require('./saas/internal-api/accountDirectory');
|
|
34
|
+
|
|
35
|
+
const globalRecord = require('./saas/internal-api/globalRecord');
|
|
36
|
+
const vendorProfile = require('./saas/internal-api/vendorProfile');
|
|
37
|
+
const serviceArea = require('./saas/internal-api/serviceArea');
|
|
38
|
+
|
|
39
|
+
const recordHub = require('./saas/internal-api/recordHub');
|
|
40
|
+
const requestsTable = require('./saas/internal-api/requestsTable');
|
|
41
|
+
|
|
42
|
+
const threadScheduler = require('./saas/internal-api/thread-scheduler/runner');
|
|
43
|
+
const dbEmails = require('./saas/internal-api/dbEmails/index');
|
|
44
|
+
const agreement = require('./saas/internal-api/agreement/index');
|
|
45
|
+
const uploadFile = require('./saas/internal-api/uploadFiles/index');
|
|
46
|
+
const policyFile = require('./saas/internal-api/policyFile');
|
|
47
|
+
|
|
48
|
+
const emailCustomization = require('./saas/internal-api/emailCustomization');
|
|
49
|
+
|
|
50
|
+
const internalAPI = {
|
|
51
|
+
defaults,
|
|
52
|
+
auth,
|
|
53
|
+
accounts,
|
|
54
|
+
projects,
|
|
55
|
+
tabs,
|
|
56
|
+
requirements,
|
|
57
|
+
contractors,
|
|
58
|
+
requests,
|
|
59
|
+
coi,
|
|
60
|
+
compliance,
|
|
61
|
+
auditNotes,
|
|
62
|
+
auditCustomerRules,
|
|
63
|
+
reports,
|
|
64
|
+
users,
|
|
65
|
+
charts,
|
|
66
|
+
dashboard,
|
|
67
|
+
accountDirectory,
|
|
68
|
+
globalRecord,
|
|
69
|
+
vendorProfile,
|
|
70
|
+
serviceArea,
|
|
71
|
+
recordHub,
|
|
72
|
+
requestsTable,
|
|
73
|
+
threadScheduler,
|
|
74
|
+
dbEmails,
|
|
75
|
+
emailCustomization,
|
|
76
|
+
factory,
|
|
77
|
+
agreement,
|
|
78
|
+
uploadFile,
|
|
79
|
+
policyFile
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
return internalAPI;
|
|
83
|
+
};
|
|
84
|
+
|
|
85
|
+
const getOpenAPI = () => {
|
|
86
|
+
const accounts = require('./saas/openapi/accounts/accounts.service');
|
|
87
|
+
const projects = require('./saas/openapi/projects/projects.service');
|
|
88
|
+
const tabs = require('./saas/openapi/tabs');
|
|
89
|
+
const requirements = require('./saas/openapi/requirements');
|
|
90
|
+
const requests = require('./saas/openapi/requests');
|
|
91
|
+
const coi = require('./saas/openapi/coi/coi.service');
|
|
92
|
+
const users = require('./saas/openapi/users/users.service');
|
|
93
|
+
const openAPI = { accounts, projects, tabs, requirements, requests, coi, users };
|
|
94
|
+
return openAPI;
|
|
95
|
+
};
|
|
96
|
+
|
|
97
|
+
module.exports = init;
|
|
Binary file
|
|
@@ -1,50 +1,50 @@
|
|
|
1
|
-
const requests = require('../../../../common/requests/cookieAuth/requests');
|
|
2
|
-
const { backendUrl } = require('../../../../env').getEnv();
|
|
3
|
-
|
|
4
|
-
const Endpoints = {
|
|
5
|
-
recordTable: `${backendUrl}/saas/account-directory/record-table`,
|
|
6
|
-
recordsCount: `${backendUrl}/saas/account-directory/records-count`,
|
|
7
|
-
projectLocations: `${backendUrl}/saas/account-directory/filter/location`,
|
|
8
|
-
requestTable: `${backendUrl}/saas/account-directory/request-table`,
|
|
9
|
-
requestTableFilters: `${backendUrl}/saas/account-directory/request-table/filters`,
|
|
10
|
-
requestActivityCount: `${backendUrl}/saas/account-directory/request-activity-count`,
|
|
11
|
-
recordDetails: `${backendUrl}/saas/account-directory/record-details`
|
|
12
|
-
};
|
|
13
|
-
|
|
14
|
-
const getRecordTable = (accountDirectoryRecordTableFilterModel, context) => {
|
|
15
|
-
return requests.postRequestHandler(Endpoints.recordTable, accountDirectoryRecordTableFilterModel, context);
|
|
16
|
-
};
|
|
17
|
-
|
|
18
|
-
const getRecordsCount = (accountId, context) => {
|
|
19
|
-
return requests.getRequestHandler(Endpoints.recordsCount, { accountId }, context);
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
const getProjectLocations = (accountId, context) => {
|
|
23
|
-
return requests.getRequestHandler(Endpoints.projectLocations, { accountId }, context);
|
|
24
|
-
};
|
|
25
|
-
|
|
26
|
-
const getRequestTable = (accountDirectoryRequestTableFilterModel, context) => {
|
|
27
|
-
return requests.postRequestHandler(Endpoints.requestTable, accountDirectoryRequestTableFilterModel, context);
|
|
28
|
-
};
|
|
29
|
-
|
|
30
|
-
const getRequestTableFilters = (accountDirectoryRequestTableFilterModel, context) => {
|
|
31
|
-
return requests.postRequestHandler(Endpoints.requestTableFilters, accountDirectoryRequestTableFilterModel, context);
|
|
32
|
-
};
|
|
33
|
-
|
|
34
|
-
const getRequestActivityCount = (accountDirectoryRequestTableFilterModel, context) => {
|
|
35
|
-
return requests.postRequestHandler(Endpoints.requestActivityCount, accountDirectoryRequestTableFilterModel, context);
|
|
36
|
-
};
|
|
37
|
-
|
|
38
|
-
const getRecordDetails = (accountDirectoryRequestTableFilterModel, context) => {
|
|
39
|
-
return requests.postRequestHandler(Endpoints.recordDetails, accountDirectoryRequestTableFilterModel, context);
|
|
40
|
-
};
|
|
41
|
-
|
|
42
|
-
module.exports = {
|
|
43
|
-
getRecordTable,
|
|
44
|
-
getRecordsCount,
|
|
45
|
-
getProjectLocations,
|
|
46
|
-
getRequestTable,
|
|
47
|
-
getRequestTableFilters,
|
|
48
|
-
getRequestActivityCount,
|
|
49
|
-
getRecordDetails
|
|
50
|
-
};
|
|
1
|
+
const requests = require('../../../../common/requests/cookieAuth/requests');
|
|
2
|
+
const { backendUrl } = require('../../../../env').getEnv();
|
|
3
|
+
|
|
4
|
+
const Endpoints = {
|
|
5
|
+
recordTable: `${backendUrl}/saas/account-directory/record-table`,
|
|
6
|
+
recordsCount: `${backendUrl}/saas/account-directory/records-count`,
|
|
7
|
+
projectLocations: `${backendUrl}/saas/account-directory/filter/location`,
|
|
8
|
+
requestTable: `${backendUrl}/saas/account-directory/request-table`,
|
|
9
|
+
requestTableFilters: `${backendUrl}/saas/account-directory/request-table/filters`,
|
|
10
|
+
requestActivityCount: `${backendUrl}/saas/account-directory/request-activity-count`,
|
|
11
|
+
recordDetails: `${backendUrl}/saas/account-directory/record-details`
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
const getRecordTable = (accountDirectoryRecordTableFilterModel, context) => {
|
|
15
|
+
return requests.postRequestHandler(Endpoints.recordTable, accountDirectoryRecordTableFilterModel, context);
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
const getRecordsCount = (accountId, context) => {
|
|
19
|
+
return requests.getRequestHandler(Endpoints.recordsCount, { accountId }, context);
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
const getProjectLocations = (accountId, context) => {
|
|
23
|
+
return requests.getRequestHandler(Endpoints.projectLocations, { accountId }, context);
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
const getRequestTable = (accountDirectoryRequestTableFilterModel, context) => {
|
|
27
|
+
return requests.postRequestHandler(Endpoints.requestTable, accountDirectoryRequestTableFilterModel, context);
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
const getRequestTableFilters = (accountDirectoryRequestTableFilterModel, context) => {
|
|
31
|
+
return requests.postRequestHandler(Endpoints.requestTableFilters, accountDirectoryRequestTableFilterModel, context);
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
const getRequestActivityCount = (accountDirectoryRequestTableFilterModel, context) => {
|
|
35
|
+
return requests.postRequestHandler(Endpoints.requestActivityCount, accountDirectoryRequestTableFilterModel, context);
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
const getRecordDetails = (accountDirectoryRequestTableFilterModel, context) => {
|
|
39
|
+
return requests.postRequestHandler(Endpoints.recordDetails, accountDirectoryRequestTableFilterModel, context);
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
module.exports = {
|
|
43
|
+
getRecordTable,
|
|
44
|
+
getRecordsCount,
|
|
45
|
+
getProjectLocations,
|
|
46
|
+
getRequestTable,
|
|
47
|
+
getRequestTableFilters,
|
|
48
|
+
getRequestActivityCount,
|
|
49
|
+
getRecordDetails
|
|
50
|
+
};
|