@getjones/test-infra 4.4.12 → 4.4.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (231) hide show
  1. package/package.json +30 -30
  2. package/src/common/commonFlows/auth/auth.js +40 -40
  3. package/src/common/commonFlows/index.js +4 -4
  4. package/src/common/commonFlows/records/records.js +243 -229
  5. package/src/common/consts/accountSettings.js +14 -14
  6. package/src/common/consts/activationStatuses.js +6 -6
  7. package/src/common/consts/autocomplete.js +10 -9
  8. package/src/common/consts/constantsForRecordsSortingAndFilters.js +40 -40
  9. package/src/common/consts/dashboardCharts.js +18 -18
  10. package/src/common/consts/ocrStatuses.js +6 -6
  11. package/src/common/consts/projectSettings.js +21 -21
  12. package/src/common/consts/recordTypes.js +5 -5
  13. package/src/common/consts/s3FileTypes.js +13 -13
  14. package/src/common/consts/userRoles.js +6 -0
  15. package/src/common/consts/userTypes.js +8 -8
  16. package/src/common/errorCodes.js +3 -3
  17. package/src/common/httpResponseStatusCodes.json +11 -11
  18. package/src/common/httpResponseTypes.json +2 -2
  19. package/src/common/requests/apiKeyAuth/requests.js +44 -44
  20. package/src/common/requests/cookieAuth/requests.js +40 -40
  21. package/src/common/requests/internalAuth/requests.js +48 -48
  22. package/src/common/requests/requestHandlers.js +80 -80
  23. package/src/common/utils/complianceUtil.js +114 -114
  24. package/src/common/utils/configsUtil.js +22 -22
  25. package/src/common/utils/dataTypeUtils.js +41 -41
  26. package/src/common/utils/numberUtils.js +22 -22
  27. package/src/common/utils/objectUtils.js +7 -7
  28. package/src/common/utils/timeUtils.js +177 -177
  29. package/src/common/validations/errorValidation.js +16 -16
  30. package/src/common/validations/typeValidations.js +36 -36
  31. package/src/defaults/configs/auditConfigs.js +125 -125
  32. package/src/defaults/configs/coverage.js +227 -227
  33. package/src/defaults/configs/polices.js +75 -75
  34. package/src/defaults/configs/requirement.js +32 -32
  35. package/src/defaults/index.js +6 -6
  36. package/src/env.js +57 -57
  37. package/src/factory/globalRecord/globalRecord.js +43 -43
  38. package/src/factory/index.js +8 -8
  39. package/src/factory/records/records.js +229 -229
  40. package/src/factory/users/users.js +86 -77
  41. package/src/index.js +97 -95
  42. package/src/saas/internal-api/accountDirectory/api/accountDirectory.api.js +50 -50
  43. package/src/saas/internal-api/accountDirectory/api/accountDirectory.service.js +182 -182
  44. package/src/saas/internal-api/accountDirectory/index.js +4 -4
  45. package/src/saas/internal-api/accountDirectory/models/accountDirectory.model.js +40 -40
  46. package/src/saas/internal-api/accounts/api/core/accounts.core.api.js +35 -35
  47. package/src/saas/internal-api/accounts/api/core/accounts.core.service.js +93 -93
  48. package/src/saas/internal-api/accounts/api/emailCustomization/accounts.email.customizations.api.js +29 -29
  49. package/src/saas/internal-api/accounts/api/emailCustomization/accounts.email.customizations.service.js +61 -61
  50. package/src/saas/internal-api/accounts/api/openapi/accounts.openapi.api.js +48 -48
  51. package/src/saas/internal-api/accounts/api/openapi/accounts.openapi.service.js +74 -74
  52. package/src/saas/internal-api/accounts/api/settings/settings.api.js +21 -21
  53. package/src/saas/internal-api/accounts/api/settings/settings.service.js +41 -41
  54. package/src/saas/internal-api/accounts/consts/consts.js +8 -8
  55. package/src/saas/internal-api/accounts/index.js +22 -22
  56. package/src/saas/internal-api/accounts/models/core/create.account.model.js +16 -16
  57. package/src/saas/internal-api/accounts/models/settings/update.settings.model.js +42 -42
  58. package/src/saas/internal-api/accounts/utils/utils.js +60 -60
  59. package/src/saas/internal-api/agreement/api/agreement.api.js +39 -39
  60. package/src/saas/internal-api/agreement/api/agreement.service.js +121 -121
  61. package/src/saas/internal-api/agreement/consts/consts.js +10 -10
  62. package/src/saas/internal-api/agreement/index.js +12 -12
  63. package/src/saas/internal-api/agreement/models/create.agreement.model.js +12 -12
  64. package/src/saas/internal-api/agreement/models/createAgreementByAuditorModel.js +11 -11
  65. package/src/saas/internal-api/agreement/models/createAgreementByPMModel.js +13 -13
  66. package/src/saas/internal-api/auditCustomerRules/api/customer.rules.api.js +43 -43
  67. package/src/saas/internal-api/auditCustomerRules/api/customer.rules.service.js +105 -105
  68. package/src/saas/internal-api/auditCustomerRules/consts/customer.rule.js +11 -11
  69. package/src/saas/internal-api/auditCustomerRules/index.js +6 -6
  70. package/src/saas/internal-api/auditCustomerRules/models/customer.rule.model.js +46 -46
  71. package/src/saas/internal-api/auditCustomerRules/utils/customer.rule.util.js +19 -19
  72. package/src/saas/internal-api/auditNotes/api/audit.notes.api.js +40 -40
  73. package/src/saas/internal-api/auditNotes/api/audit.notes.service.js +115 -115
  74. package/src/saas/internal-api/auditNotes/index.js +4 -4
  75. package/src/saas/internal-api/auditNotes/models/audit.note.model.js +30 -30
  76. package/src/saas/internal-api/auth/api/auth.api.js +27 -27
  77. package/src/saas/internal-api/auth/api/auth.service.js +90 -90
  78. package/src/saas/internal-api/auth/index.js +3 -3
  79. package/src/saas/internal-api/coi/api/coi.api.js +45 -45
  80. package/src/saas/internal-api/coi/api/coi.service.js +39 -39
  81. package/src/saas/internal-api/coi/consts/hashes.js +4 -4
  82. package/src/saas/internal-api/coi/consts/uploaderTypes.js +5 -5
  83. package/src/saas/internal-api/coi/index.js +14 -14
  84. package/src/saas/internal-api/coi/models/Combine.last.two.cois.model.js +25 -25
  85. package/src/saas/internal-api/coi/models/submit.coi.model.js +19 -19
  86. package/src/saas/internal-api/coi/utils/utils.js +117 -117
  87. package/src/saas/internal-api/compliance/api/audit/audit.api.js +115 -115
  88. package/src/saas/internal-api/compliance/api/audit/audit.service.js +300 -300
  89. package/src/saas/internal-api/compliance/api/convert/convert.api.js +17 -17
  90. package/src/saas/internal-api/compliance/api/convert/convert.service.js +11 -11
  91. package/src/saas/internal-api/compliance/api/coverage/coverage.api.js +33 -33
  92. package/src/saas/internal-api/compliance/api/coverage/coverage.service.js +48 -48
  93. package/src/saas/internal-api/compliance/api/overrideGap/override.gap.api.js +38 -38
  94. package/src/saas/internal-api/compliance/api/overrideGap/override.gap.service.js +182 -182
  95. package/src/saas/internal-api/compliance/consts/audit.js +111 -110
  96. package/src/saas/internal-api/compliance/index.js +33 -33
  97. package/src/saas/internal-api/compliance/models/audit/audit.model.js +96 -96
  98. package/src/saas/internal-api/compliance/models/waive/waive.model.js +49 -49
  99. package/src/saas/internal-api/compliance/utils/auditUtil.js +254 -254
  100. package/src/saas/internal-api/compliance/utils/coverageUtil.js +40 -40
  101. package/src/saas/internal-api/contractors/api/contractors.api.js +209 -209
  102. package/src/saas/internal-api/contractors/api/contractors.service.js +361 -355
  103. package/src/saas/internal-api/contractors/consts/consts.js +6 -6
  104. package/src/saas/internal-api/contractors/index.js +8 -8
  105. package/src/saas/internal-api/contractors/models/assign.requirement.model.js +10 -10
  106. package/src/saas/internal-api/contractors/models/edit.contractor.model.js +62 -62
  107. package/src/saas/internal-api/contractors/models/link.request.model.js +10 -10
  108. package/src/saas/internal-api/contractors/models/subscription.contractor.model.js +13 -13
  109. package/src/saas/internal-api/contractors/models/verification.contractor.model.js +27 -27
  110. package/src/saas/internal-api/contractors/utils.js +25 -25
  111. package/src/saas/internal-api/dashboard/api/recordList.api.js +38 -38
  112. package/src/saas/internal-api/dashboard/api/recordList.service.js +60 -60
  113. package/src/saas/internal-api/dashboard/index.js +5 -5
  114. package/src/saas/internal-api/dashboard/models/dashboard.filter.criteria.model.js +38 -38
  115. package/src/saas/internal-api/dbEmails/api/db.emails.api.js +25 -25
  116. package/src/saas/internal-api/dbEmails/api/db.emails.service.js +156 -156
  117. package/src/saas/internal-api/dbEmails/consts/consts.js +55 -55
  118. package/src/saas/internal-api/dbEmails/index.js +6 -6
  119. package/src/saas/internal-api/dbEmails/models/db.emails.model.js +22 -22
  120. package/src/saas/internal-api/dbEmails/utils/util.js +87 -87
  121. package/src/saas/internal-api/emailCustomization/api/email.customization.api.js +26 -26
  122. package/src/saas/internal-api/emailCustomization/api/email.customization.service.js +50 -50
  123. package/src/saas/internal-api/emailCustomization/index.js +3 -3
  124. package/src/saas/internal-api/globalRecord/api/global.record.api.js +95 -101
  125. package/src/saas/internal-api/globalRecord/api/global.record.service.js +112 -117
  126. package/src/saas/internal-api/globalRecord/consts.js +20 -20
  127. package/src/saas/internal-api/globalRecord/index.js +6 -6
  128. package/src/saas/internal-api/globalRecord/models/global.record.model.js +60 -60
  129. package/src/saas/internal-api/globalRecord/utils/util.js +161 -161
  130. package/src/saas/internal-api/homepageCharts/api/charts.api.js +12 -12
  131. package/src/saas/internal-api/homepageCharts/api/charts.service.js +7 -7
  132. package/src/saas/internal-api/homepageCharts/index.js +3 -3
  133. package/src/saas/internal-api/policyFile/api/policy.file.api.js +25 -0
  134. package/src/saas/internal-api/policyFile/api/policy.file.service.js +39 -0
  135. package/src/saas/internal-api/policyFile/consts.js +21 -0
  136. package/src/saas/internal-api/policyFile/index.js +11 -0
  137. package/src/saas/internal-api/{uploadFiles → policyFile}/models/create.policy.file.model.js +11 -11
  138. package/src/saas/internal-api/projects/api/core/projects.api.js +39 -39
  139. package/src/saas/internal-api/projects/api/core/projects.service.js +77 -70
  140. package/src/saas/internal-api/projects/api/settings/project.settings.api.js +18 -18
  141. package/src/saas/internal-api/projects/api/settings/project.settings.service.js +35 -35
  142. package/src/saas/internal-api/projects/consts/defaultProject.js +3 -3
  143. package/src/saas/internal-api/projects/index.js +24 -24
  144. package/src/saas/internal-api/projects/models/core/create.project.model.js +41 -41
  145. package/src/saas/internal-api/projects/models/core/update.project.model.js +47 -47
  146. package/src/saas/internal-api/projects/models/settings/update.project.settings.model.js +40 -40
  147. package/src/saas/internal-api/projects/utils/utils.js +155 -155
  148. package/src/saas/internal-api/recordHub/api/record.hub.api.js +14 -14
  149. package/src/saas/internal-api/recordHub/api/record.hub.service.js +21 -21
  150. package/src/saas/internal-api/recordHub/index.js +3 -3
  151. package/src/saas/internal-api/recordNotes/api/record.notes.api.js +38 -38
  152. package/src/saas/internal-api/recordNotes/api/record.notes.service.js +47 -47
  153. package/src/saas/internal-api/recordNotes/api/record.notes.utils.js +12 -12
  154. package/src/saas/internal-api/recordNotes/index.js +3 -3
  155. package/src/saas/internal-api/reports/api/reports.api.js +62 -62
  156. package/src/saas/internal-api/reports/api/reports.service.js +79 -79
  157. package/src/saas/internal-api/reports/consts/consts.js +74 -74
  158. package/src/saas/internal-api/reports/index.js +15 -15
  159. package/src/saas/internal-api/reports/models/report.model.js +27 -27
  160. package/src/saas/internal-api/requests/api/requests.api.js +120 -120
  161. package/src/saas/internal-api/requests/api/requests.service.js +274 -272
  162. package/src/saas/internal-api/requests/index.js +21 -20
  163. package/src/saas/internal-api/requests/models/create.request.model.js +36 -33
  164. package/src/saas/internal-api/requests/models/draft.request.criteria.model.js +18 -18
  165. package/src/saas/internal-api/requests/models/draft.request.report.model.js +14 -14
  166. package/src/saas/internal-api/requests/models/edit.request.model.js +31 -31
  167. package/src/saas/internal-api/requests/models/requestListCriteriaModel.js +17 -17
  168. package/src/saas/internal-api/requests/models/tenant.request.model.js +9 -9
  169. package/src/saas/internal-api/requests/utils.js +16 -8
  170. package/src/saas/internal-api/requestsTable/api/requests.table.api.js +20 -20
  171. package/src/saas/internal-api/requestsTable/api/requests.table.service.js +14 -14
  172. package/src/saas/internal-api/requestsTable/index.js +3 -3
  173. package/src/saas/internal-api/requirements/api/requirements.api.js +57 -57
  174. package/src/saas/internal-api/requirements/api/requirements.service.js +177 -177
  175. package/src/saas/internal-api/requirements/consts/attributeTypes.json +8 -8
  176. package/src/saas/internal-api/requirements/consts/consts.js +6 -6
  177. package/src/saas/internal-api/requirements/index.js +10 -10
  178. package/src/saas/internal-api/requirements/models/create.requirement.model.js +17 -17
  179. package/src/saas/internal-api/requirements/models/policy.model.js +35 -35
  180. package/src/saas/internal-api/requirements/models/update.requirement.model.js +19 -19
  181. package/src/saas/internal-api/requirements/utils/utils.js +129 -129
  182. package/src/saas/internal-api/serviceArea/api/coordinates.api.js +12 -12
  183. package/src/saas/internal-api/serviceArea/api/coordinates.service.js +7 -7
  184. package/src/saas/internal-api/serviceArea/index.js +4 -4
  185. package/src/saas/internal-api/serviceArea/utils/utils.js +8 -8
  186. package/src/saas/internal-api/tabs/api/tabs.api.js +32 -32
  187. package/src/saas/internal-api/tabs/api/tabs.service.js +54 -54
  188. package/src/saas/internal-api/tabs/index.js +3 -3
  189. package/src/saas/internal-api/tabs/models/tabs.model.js +19 -19
  190. package/src/saas/internal-api/thread-scheduler/runner.js +55 -55
  191. package/src/saas/internal-api/uploadFiles/api/upload.file.api.js +43 -49
  192. package/src/saas/internal-api/uploadFiles/api/upload.file.service.js +106 -117
  193. package/src/saas/internal-api/uploadFiles/consts.js +12 -31
  194. package/src/saas/internal-api/uploadFiles/index.js +5 -11
  195. package/src/saas/internal-api/users/api/tenantApp/tenant.app.api.js +38 -38
  196. package/src/saas/internal-api/users/api/tenantApp/tenant.app.service.js +108 -108
  197. package/src/saas/internal-api/users/api/users.api.js +127 -127
  198. package/src/saas/internal-api/users/api/users.service.js +243 -225
  199. package/src/saas/internal-api/users/index.js +16 -16
  200. package/src/saas/internal-api/users/models/create.inner.system.user.model.js +18 -18
  201. package/src/saas/internal-api/users/models/notification.settings.model.js +12 -12
  202. package/src/saas/internal-api/users/models/tenent.user.model.js +11 -11
  203. package/src/saas/internal-api/users/models/users.model.js +42 -41
  204. package/src/saas/internal-api/users/utils/util.js +39 -39
  205. package/src/saas/internal-api/vendorProfile/api/vendor.profile.api.js +26 -20
  206. package/src/saas/internal-api/vendorProfile/api/vendor.profile.service.js +19 -14
  207. package/src/saas/internal-api/vendorProfile/index.js +3 -3
  208. package/src/saas/openapi/accounts/accounts.api.js +17 -17
  209. package/src/saas/openapi/accounts/accounts.service.js +11 -11
  210. package/src/saas/openapi/coi/coi.api.js +30 -30
  211. package/src/saas/openapi/coi/coi.service.js +43 -43
  212. package/src/saas/openapi/projects/projects.api.js +83 -83
  213. package/src/saas/openapi/projects/projects.service.js +64 -64
  214. package/src/saas/openapi/requests/index.js +7 -7
  215. package/src/saas/openapi/requests/models/invite.request.model.js +40 -40
  216. package/src/saas/openapi/requests/models/update.request.model.js +35 -35
  217. package/src/saas/openapi/requests/requests.api.js +87 -87
  218. package/src/saas/openapi/requests/requests.service.js +81 -81
  219. package/src/saas/openapi/requirements/index.js +6 -6
  220. package/src/saas/openapi/requirements/models/copy.requirement.model.js +10 -10
  221. package/src/saas/openapi/requirements/requirements.api.js +41 -41
  222. package/src/saas/openapi/requirements/requirements.service.js +49 -49
  223. package/src/saas/openapi/tabs/index.js +6 -6
  224. package/src/saas/openapi/tabs/models/create.tab.model.js +6 -6
  225. package/src/saas/openapi/tabs/tabs.api.js +27 -27
  226. package/src/saas/openapi/tabs/tabs.service.js +19 -19
  227. package/src/saas/openapi/users/user.model.js +10 -10
  228. package/src/saas/openapi/users/users.api.js +33 -33
  229. package/src/saas/openapi/users/users.service.js +41 -41
  230. package/tests/env.test.js +40 -40
  231. package/tests/validation.test.js +83 -83
@@ -1,161 +1,161 @@
1
- const globalRecordServices = require('../api/global.record.service');
2
- const globalRecordModels = require('../models/global.record.model');
3
-
4
- const { CreateGlobalRecordModel } = globalRecordModels;
5
- const { createGlobalRecord, getAllGlobalRecordsInPage } = globalRecordServices;
6
-
7
- const {
8
- getCapitalLetterUnicodeValueList,
9
- getUniqueNumber
10
- } = require('../../../../common/utils/numberUtils');
11
-
12
- const { SERVICE_AREAS } = require('../consts');
13
- const { cloneObject } = require('../../../../common/utils/objectUtils');
14
-
15
- const createGlobalRecordConfig = (
16
- name,
17
- { stateIndex, glPolicyNumbers } = {}
18
- ) => {
19
- const serviceArea = getServiceAreaByIndex(stateIndex || 0);
20
- const uniqueNumbers = glPolicyNumbers || getUniqueNumber();
21
- const emailBase = name.replace(/\s+/g, '').toLowerCase();
22
- return {
23
- header: `${name}Header`,
24
- recordName: `${name}Name`,
25
- additionalContacts: [
26
- `${emailBase}@additional1.jon`,
27
- `${emailBase}@additional2.jon`
28
- ],
29
- brokerEmails: [`${emailBase}@broker1.jon`, `${emailBase}@broker2.jon`],
30
- expirationDate: '2030-12-09',
31
- publishDate: '',
32
- lastPublishUserName: '',
33
- glPolicyNumbers: [uniqueNumbers.toString()],
34
- numberOfAssociatedRequests: 0,
35
- numberOfFilledMandatory: 0,
36
- dba: '',
37
- primaryEmail: '',
38
- serviceAreas: [getServiceArea(serviceArea)],
39
- __v: 0,
40
- recordType: ['Vendors']
41
- };
42
- };
43
-
44
- const getServiceArea = state => {
45
- return {
46
- city: `${state}TestCity`,
47
- state: state
48
- };
49
- };
50
-
51
- const createGlobalRecordConfigs = (
52
- nameList,
53
- { stateIndexes, glPolicyNumbers } = {}
54
- ) => {
55
- return nameList.map((name, index) =>
56
- createGlobalRecordConfig(name, {
57
- stateIndex: stateIndexes ? stateIndexes[index] : index,
58
- glPolicyNumbers: glPolicyNumbers ? glPolicyNumbers[index] : null
59
- })
60
- );
61
- };
62
-
63
- const createGlobalRecordModel = config => {
64
- return new CreateGlobalRecordModel(
65
- config.header,
66
- config.expirationDate,
67
- config.glPolicyNumbers,
68
- config.numberOfAssociatedRequests,
69
- config.numberOfFilledMandatory,
70
- {
71
- id: config.id,
72
- recordName: config.recordName,
73
- additionalContacts: config.additionalContacts,
74
- brokerEmails: config.brokerEmails,
75
- publishDate: config.publishDate,
76
- serviceAreas: config.serviceAreas,
77
- primaryEmail: config.primaryEmail,
78
- dba: config.dba,
79
- lastPublishUserName: config.lastPublishUserName,
80
- __v: config.__v,
81
- recordType: config.recordType
82
- }
83
- );
84
- };
85
-
86
- const createGlobalRecordModels = configList => {
87
- return configList.map(config => createGlobalRecordModel(config));
88
- };
89
-
90
- const getCreateRandomGlobalRecordModels = nameList => {
91
- const configList = createGlobalRecordConfigs(nameList);
92
- return createGlobalRecordModels(configList);
93
- };
94
-
95
- const createGlobalRecords = async (globalRecordModelList, context) => {
96
- const newGlobalRecodDetailsList = new Array();
97
- for (globalRecordModel of globalRecordModelList) {
98
- const newGlobalRecordDetails = await createGlobalRecord(
99
- globalRecordModel,
100
- context
101
- );
102
- newGlobalRecodDetailsList.push(newGlobalRecordDetails);
103
- }
104
-
105
- return newGlobalRecodDetailsList;
106
- };
107
-
108
- const getGlobalRecordsByNumberOfPages = async (numberOfPages, context) => {
109
- const allGlobalRecords = new Array();
110
-
111
- for (let pageNumber = 1; pageNumber <= numberOfPages; pageNumber++) {
112
- const allGlobalRecordsInPage = await getAllGlobalRecordsInPage(
113
- pageNumber,
114
- context
115
- );
116
- allGlobalRecords.push(allGlobalRecordsInPage);
117
- }
118
-
119
- return allGlobalRecords;
120
- };
121
-
122
- const getServiceAreaByIndex = stateIndex => {
123
- return SERVICE_AREAS[Object.keys(SERVICE_AREAS)[stateIndex % 10]];
124
- };
125
-
126
- const getGlobalRecordsDefaultNameList = (nameBase, listLength) => {
127
- const letterUnicodeValueList = getCapitalLetterUnicodeValueList({
128
- listLength
129
- });
130
-
131
- //How much times same letter will appear in one index on the array
132
- const repeatTimes = 4;
133
- return letterUnicodeValueList.map(
134
- unicode =>
135
- `${nameBase} ${String.fromCharCode(unicode).repeat(repeatTimes)}`
136
- );
137
- };
138
-
139
- const createPublishGlobalConfig = (recordName, id, primaryEmail, { additionalContacts, brokerEmails } = {}) => {
140
- return cloneObject({
141
- recordName,
142
- id,
143
- primaryEmail,
144
- additionalContacts: additionalContacts || [],
145
- brokerEmails: brokerEmails || []
146
-
147
- });
148
- };
149
-
150
- module.exports = {
151
- createGlobalRecords,
152
- createGlobalRecordConfig,
153
- createGlobalRecordConfigs,
154
- createGlobalRecordModel,
155
- createGlobalRecordModels,
156
- createPublishGlobalConfig,
157
- getCreateRandomGlobalRecordModels,
158
- getGlobalRecordsDefaultNameList,
159
- getGlobalRecordsByNumberOfPages,
160
- getServiceArea
161
- };
1
+ const globalRecordServices = require('../api/global.record.service');
2
+ const globalRecordModels = require('../models/global.record.model');
3
+
4
+ const { CreateGlobalRecordModel } = globalRecordModels;
5
+ const { createGlobalRecord, getAllGlobalRecordsInPage } = globalRecordServices;
6
+
7
+ const {
8
+ getCapitalLetterUnicodeValueList,
9
+ getUniqueNumber
10
+ } = require('../../../../common/utils/numberUtils');
11
+
12
+ const { SERVICE_AREAS } = require('../consts');
13
+ const { cloneObject } = require('../../../../common/utils/objectUtils');
14
+
15
+ const createGlobalRecordConfig = (
16
+ name,
17
+ { stateIndex, glPolicyNumbers } = {}
18
+ ) => {
19
+ const serviceArea = getServiceAreaByIndex(stateIndex || 0);
20
+ const uniqueNumbers = glPolicyNumbers || getUniqueNumber();
21
+ const emailBase = name.replace(/\s+/g, '').toLowerCase();
22
+ return {
23
+ header: `${name}Header`,
24
+ recordName: `${name}Name`,
25
+ additionalContacts: [
26
+ `${emailBase}@additional1.jon`,
27
+ `${emailBase}@additional2.jon`
28
+ ],
29
+ brokerEmails: [`${emailBase}@broker1.jon`, `${emailBase}@broker2.jon`],
30
+ expirationDate: '2030-12-09',
31
+ publishDate: '',
32
+ lastPublishUserName: '',
33
+ glPolicyNumbers: [uniqueNumbers.toString()],
34
+ numberOfAssociatedRequests: 0,
35
+ numberOfFilledMandatory: 0,
36
+ dba: '',
37
+ primaryEmail: '',
38
+ serviceAreas: [getServiceArea(serviceArea)],
39
+ __v: 0,
40
+ recordType: ['Vendors']
41
+ };
42
+ };
43
+
44
+ const getServiceArea = state => {
45
+ return {
46
+ city: `${state}TestCity`,
47
+ state: state
48
+ };
49
+ };
50
+
51
+ const createGlobalRecordConfigs = (
52
+ nameList,
53
+ { stateIndexes, glPolicyNumbers } = {}
54
+ ) => {
55
+ return nameList.map((name, index) =>
56
+ createGlobalRecordConfig(name, {
57
+ stateIndex: stateIndexes ? stateIndexes[index] : index,
58
+ glPolicyNumbers: glPolicyNumbers ? glPolicyNumbers[index] : null
59
+ })
60
+ );
61
+ };
62
+
63
+ const createGlobalRecordModel = config => {
64
+ return new CreateGlobalRecordModel(
65
+ config.header,
66
+ config.expirationDate,
67
+ config.glPolicyNumbers,
68
+ config.numberOfAssociatedRequests,
69
+ config.numberOfFilledMandatory,
70
+ {
71
+ id: config.id,
72
+ recordName: config.recordName,
73
+ additionalContacts: config.additionalContacts,
74
+ brokerEmails: config.brokerEmails,
75
+ publishDate: config.publishDate,
76
+ serviceAreas: config.serviceAreas,
77
+ primaryEmail: config.primaryEmail,
78
+ dba: config.dba,
79
+ lastPublishUserName: config.lastPublishUserName,
80
+ __v: config.__v,
81
+ recordType: config.recordType
82
+ }
83
+ );
84
+ };
85
+
86
+ const createGlobalRecordModels = configList => {
87
+ return configList.map(config => createGlobalRecordModel(config));
88
+ };
89
+
90
+ const getCreateRandomGlobalRecordModels = nameList => {
91
+ const configList = createGlobalRecordConfigs(nameList);
92
+ return createGlobalRecordModels(configList);
93
+ };
94
+
95
+ const createGlobalRecords = async (globalRecordModelList, context) => {
96
+ const newGlobalRecodDetailsList = new Array();
97
+ for (globalRecordModel of globalRecordModelList) {
98
+ const newGlobalRecordDetails = await createGlobalRecord(
99
+ globalRecordModel,
100
+ context
101
+ );
102
+ newGlobalRecodDetailsList.push(newGlobalRecordDetails);
103
+ }
104
+
105
+ return newGlobalRecodDetailsList;
106
+ };
107
+
108
+ const getGlobalRecordsByNumberOfPages = async (numberOfPages, context) => {
109
+ const allGlobalRecords = new Array();
110
+
111
+ for (let pageNumber = 1; pageNumber <= numberOfPages; pageNumber++) {
112
+ const allGlobalRecordsInPage = await getAllGlobalRecordsInPage(
113
+ pageNumber,
114
+ context
115
+ );
116
+ allGlobalRecords.push(allGlobalRecordsInPage);
117
+ }
118
+
119
+ return allGlobalRecords;
120
+ };
121
+
122
+ const getServiceAreaByIndex = stateIndex => {
123
+ return SERVICE_AREAS[Object.keys(SERVICE_AREAS)[stateIndex % 10]];
124
+ };
125
+
126
+ const getGlobalRecordsDefaultNameList = (nameBase, listLength) => {
127
+ const letterUnicodeValueList = getCapitalLetterUnicodeValueList({
128
+ listLength
129
+ });
130
+
131
+ //How much times same letter will appear in one index on the array
132
+ const repeatTimes = 4;
133
+ return letterUnicodeValueList.map(
134
+ unicode =>
135
+ `${nameBase} ${String.fromCharCode(unicode).repeat(repeatTimes)}`
136
+ );
137
+ };
138
+
139
+ const createPublishGlobalConfig = (recordName, id, primaryEmail, { additionalContacts, brokerEmails } = {}) => {
140
+ return cloneObject({
141
+ recordName,
142
+ id,
143
+ primaryEmail,
144
+ additionalContacts: additionalContacts || [],
145
+ brokerEmails: brokerEmails || []
146
+
147
+ });
148
+ };
149
+
150
+ module.exports = {
151
+ createGlobalRecords,
152
+ createGlobalRecordConfig,
153
+ createGlobalRecordConfigs,
154
+ createGlobalRecordModel,
155
+ createGlobalRecordModels,
156
+ createPublishGlobalConfig,
157
+ getCreateRandomGlobalRecordModels,
158
+ getGlobalRecordsDefaultNameList,
159
+ getGlobalRecordsByNumberOfPages,
160
+ getServiceArea
161
+ };
@@ -1,12 +1,12 @@
1
- const requests = require('../../../../common/requests/cookieAuth/requests');
2
- const { backendUrl } = require('../../../../env').getEnv();
3
-
4
- const Endpoints = {
5
- getHomePageChartsDataApi: () => `${backendUrl}/saas/user/properties/compliance-summary`
6
- };
7
-
8
- const getHomePageChartsData = context => {
9
- return requests.postRequestHandler(Endpoints.getHomePageChartsDataApi(), {}, context);
10
- };
11
-
12
- module.exports = { getHomePageChartsData };
1
+ const requests = require('../../../../common/requests/cookieAuth/requests');
2
+ const { backendUrl } = require('../../../../env').getEnv();
3
+
4
+ const Endpoints = {
5
+ getHomePageChartsDataApi: () => `${backendUrl}/saas/user/properties/compliance-summary`
6
+ };
7
+
8
+ const getHomePageChartsData = context => {
9
+ return requests.postRequestHandler(Endpoints.getHomePageChartsDataApi(), {}, context);
10
+ };
11
+
12
+ module.exports = { getHomePageChartsData };
@@ -1,7 +1,7 @@
1
- const chartsAPI = require('./charts.api');
2
-
3
- const getHomePageChartsData = context => {
4
- return chartsAPI.getHomePageChartsData(context);
5
- };
6
-
7
- module.exports = { getHomePageChartsData };
1
+ const chartsAPI = require('./charts.api');
2
+
3
+ const getHomePageChartsData = context => {
4
+ return chartsAPI.getHomePageChartsData(context);
5
+ };
6
+
7
+ module.exports = { getHomePageChartsData };
@@ -1,3 +1,3 @@
1
- const services = require('./api/charts.service');
2
-
3
- module.exports = { services };
1
+ const services = require('./api/charts.service');
2
+
3
+ module.exports = { services };
@@ -0,0 +1,25 @@
1
+ const requests = require('../../../../common/requests/cookieAuth/requests');
2
+ const { backendUrl } = require('../../../../env').getEnv();
3
+
4
+ const Endpoints = {
5
+ getPolicyFilesForVendorReport: requestId => `${backendUrl}/saas/request/${requestId}/policy-files`,
6
+ getPreSignedUrlByPolicyId: policyFileId => `${backendUrl}/saas/policy-file/${policyFileId}`,
7
+ getAuditPolicyFilesByAuditId: (recordId, auditId) => `${backendUrl}/saas/integration-tests/record/${recordId}/audit/${auditId}/policy-files`
8
+ };
9
+ const getPolicyFilesForVendorReport = async (requestId, context) => {
10
+ return requests.getRequestHandler(Endpoints.getPolicyFilesForVendorReport(requestId), {}, context);
11
+ };
12
+
13
+ const getPreSignedUrlByPolicyId = async (policyFileId, context) => {
14
+ return requests.getRequestHandler(Endpoints.getPreSignedUrlByPolicyId(policyFileId), {}, context);
15
+ };
16
+
17
+ const getAuditPolicyFiles = async (recordId, auditId, context) => {
18
+ return requests.getRequestHandler(Endpoints.getAuditPolicyFilesByAuditId(recordId, auditId), {}, context);
19
+ };
20
+
21
+ module.exports = {
22
+ getPolicyFilesForVendorReport,
23
+ getPreSignedUrlByPolicyId,
24
+ getAuditPolicyFiles
25
+ };
@@ -0,0 +1,39 @@
1
+ const policyFileApi = require('./policy.file.api');
2
+
3
+ const httpResponseStatusCodes = require('../../../../common/httpResponseStatusCodes.json');
4
+
5
+ const getPolicyFilesForVendorReport = async (requestId, context, { shouldExpectError } = {}) => {
6
+ const getPolicyResponse = await policyFileApi.getPolicyFilesForVendorReport(requestId, context);
7
+
8
+ if (getPolicyResponse.status !== httpResponseStatusCodes.OK && !shouldExpectError) {
9
+ throw new Error('Failed to get policy files for PM');
10
+ }
11
+
12
+ return getPolicyResponse;
13
+ };
14
+
15
+ const getPreSignedUrlByPolicyId = async (policyFileId, context, { shouldExpectError } = {}) => {
16
+ const getPolicyLinkResponse = await policyFileApi.getPreSignedUrlByPolicyId(policyFileId, context);
17
+
18
+ if (getPolicyLinkResponse.status !== httpResponseStatusCodes.OK && !shouldExpectError) {
19
+ throw new Error('Failed to get policy view only link');
20
+ }
21
+
22
+ return getPolicyLinkResponse;
23
+ };
24
+
25
+ const getAuditPolicyFiles = async (recordId, auditId, context) => {
26
+ const getAuditPolicyFilesResponse = await policyFileApi.getAuditPolicyFiles(recordId, auditId, context);
27
+
28
+ if (getAuditPolicyFilesResponse.status !== httpResponseStatusCodes.OK) {
29
+ throw new Error('Failed to get policy files by audit id');
30
+ }
31
+
32
+ return getAuditPolicyFilesResponse;
33
+ };
34
+
35
+ module.exports = {
36
+ getPolicyFilesForVendorReport,
37
+ getPreSignedUrlByPolicyId,
38
+ getAuditPolicyFiles
39
+ };
@@ -0,0 +1,21 @@
1
+ const policyType = {
2
+ generalLiability: 'GENERAL_LIABILITY',
3
+ umbrella: 'UMBRELLA_EXCESS_LIABILITY',
4
+ workersCompensation: 'WORKERS_COMPENSATION',
5
+ automobileLiability: 'AUTOMOBILE_LIABILITY',
6
+ propertyInsurance: 'PROPERTY_INSURANCE',
7
+ professionalLiability: 'PROFESSIONAL_LIABILITY',
8
+ businessInterruptions: 'BUSINESS_INTERRUPTION_INCOME_INSURANCE',
9
+ environmentalLiability: 'POLLUTION_LIABILITY',
10
+ crimeLiability: 'CRIME_LIABILITY',
11
+ liquorLiability: 'LIQUOR_LIABILITY',
12
+ directorsAndOfficers: 'DIRECTORS_AND_OFFICERS_LIABILITY',
13
+ employmentPractice: 'EMPLOYMENT_PRACTICES_LIABILITY',
14
+ cyberLiability: 'CYBER_LIABILITY',
15
+ garageLiability: 'GARAGE_LIABILITY',
16
+ garageKeepers: 'GARAGE_KEEPERS_LIABILITY'
17
+ };
18
+
19
+ module.exports = {
20
+ policyType
21
+ };
@@ -0,0 +1,11 @@
1
+ const services = require('./api/policy.file.service');
2
+
3
+ const { CreatePolicyFileModel } = require('../policyFile/models/create.policy.file.model');
4
+
5
+ const models = {
6
+ CreatePolicyFileModel
7
+ };
8
+
9
+ const consts = require('./consts');
10
+
11
+ module.exports = { services, models, consts };
@@ -1,11 +1,11 @@
1
- class CreatePolicyFileModel {
2
- constructor(
3
- policyFileName,
4
- policyType
5
- ) {
6
- this.policyFileName = policyFileName;
7
- this.policyType = policyType;
8
- }
9
- }
10
-
11
- module.exports = { CreatePolicyFileModel };
1
+ class CreatePolicyFileModel {
2
+ constructor(
3
+ policyFileName,
4
+ policyType
5
+ ) {
6
+ this.policyFileName = policyFileName;
7
+ this.policyType = policyType;
8
+ }
9
+ }
10
+
11
+ module.exports = { CreatePolicyFileModel };
@@ -1,39 +1,39 @@
1
- const requests = require('../../../../../common/requests/cookieAuth/requests');
2
- const { backendUrl } = require('../../../../../env').getEnv();
3
-
4
- const Endpoints = {
5
- create: `${backendUrl}/saas/project`,
6
- delete: projectId => `${backendUrl}/saas/project/${projectId}`,
7
- getByAccountId: `${backendUrl}/saas/project/list`,
8
- update: `${backendUrl}/saas/project`,
9
- getProjectByProjectId: projectId => `${backendUrl}/saas/project/${projectId}`,
10
- getProjectServiceAreaByProjectId: projectId => `${backendUrl}/saas/integration-tests/project/${projectId}/service-area`
11
- };
12
-
13
- const create = (project, context) => {
14
- return requests.putRequestHandler(Endpoints.create, project, context);
15
- };
16
-
17
- const getProjectsByAccountId = (accountId, context) => {
18
- const params = { userId: accountId };
19
- return requests.getRequestHandler(Endpoints.getByAccountId, params, context);
20
- };
21
-
22
- const getProjectByProjectId = (projectId, context) => {
23
- const params = { };
24
- return requests.getRequestHandler(Endpoints.getProjectByProjectId(projectId), params, context);
25
- };
26
-
27
- const deleteProjectById = (projectId, context) => {
28
- return requests.deleteRequestHandler(Endpoints.delete(projectId), context);
29
- };
30
-
31
- const update = (project, context) => {
32
- return requests.postRequestHandler(Endpoints.update, project, context);
33
- };
34
-
35
- const getProjectServiceAreaByProjectId = (projectId, context) => {
36
- return requests.getRequestHandler(Endpoints.getProjectServiceAreaByProjectId(projectId), {}, context);
37
- };
38
-
39
- module.exports = { create, getProjectsByAccountId, deleteProjectById, update, getProjectByProjectId, getProjectServiceAreaByProjectId };
1
+ const requests = require('../../../../../common/requests/cookieAuth/requests');
2
+ const { backendUrl } = require('../../../../../env').getEnv();
3
+
4
+ const Endpoints = {
5
+ create: `${backendUrl}/saas/project`,
6
+ delete: projectId => `${backendUrl}/saas/project/${projectId}`,
7
+ getByAccountId: `${backendUrl}/saas/project/list`,
8
+ update: `${backendUrl}/saas/project`,
9
+ getProjectByProjectId: projectId => `${backendUrl}/saas/project/${projectId}`,
10
+ getProjectServiceAreaByProjectId: projectId => `${backendUrl}/saas/integration-tests/project/${projectId}/service-area`
11
+ };
12
+
13
+ const create = (project, context) => {
14
+ return requests.putRequestHandler(Endpoints.create, project, context);
15
+ };
16
+
17
+ const getProjectsByAccountId = (accountId, context) => {
18
+ const params = { userId: accountId };
19
+ return requests.getRequestHandler(Endpoints.getByAccountId, params, context);
20
+ };
21
+
22
+ const getProjectByProjectId = (projectId, context) => {
23
+ const params = { };
24
+ return requests.getRequestHandler(Endpoints.getProjectByProjectId(projectId), params, context);
25
+ };
26
+
27
+ const deleteProjectById = (projectId, context) => {
28
+ return requests.deleteRequestHandler(Endpoints.delete(projectId), context);
29
+ };
30
+
31
+ const update = (project, context) => {
32
+ return requests.postRequestHandler(Endpoints.update, project, context);
33
+ };
34
+
35
+ const getProjectServiceAreaByProjectId = (projectId, context) => {
36
+ return requests.getRequestHandler(Endpoints.getProjectServiceAreaByProjectId(projectId), {}, context);
37
+ };
38
+
39
+ module.exports = { create, getProjectsByAccountId, deleteProjectById, update, getProjectByProjectId, getProjectServiceAreaByProjectId };