@getjones/test-infra 4.5.25 → 4.5.27

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 (250) hide show
  1. package/eslint.config.mjs +156 -0
  2. package/package.json +36 -36
  3. package/src/common/commonFlows/auth/auth.js +40 -40
  4. package/src/common/commonFlows/index.js +4 -4
  5. package/src/common/commonFlows/records/records.js +269 -269
  6. package/src/common/consts/accountSettings.js +44 -44
  7. package/src/common/consts/activationStatuses.js +6 -6
  8. package/src/common/consts/autocomplete.js +10 -10
  9. package/src/common/consts/constantsForRecordsSortingAndFilters.js +49 -49
  10. package/src/common/consts/dashboardCharts.js +18 -18
  11. package/src/common/consts/homepage/AttentionTab.js +6 -6
  12. package/src/common/consts/homepage/sortOptions.js +19 -19
  13. package/src/common/consts/ocrStatuses.js +6 -6
  14. package/src/common/consts/projectSettings.js +21 -21
  15. package/src/common/consts/recordTypes.js +5 -5
  16. package/src/common/consts/requirementActions.js +10 -10
  17. package/src/common/consts/s3FileTypes.js +13 -13
  18. package/src/common/consts/userRoles.js +18 -18
  19. package/src/common/consts/userTypes.js +8 -8
  20. package/src/common/errorCodes.js +3 -3
  21. package/src/common/httpResponseStatusCodes.json +11 -11
  22. package/src/common/httpResponseTypes.json +2 -2
  23. package/src/common/requests/apiKeyAuth/requests.js +44 -44
  24. package/src/common/requests/cookieAuth/requests.js +40 -40
  25. package/src/common/requests/internalAuth/requests.js +48 -48
  26. package/src/common/requests/requestHandlers.js +80 -80
  27. package/src/common/utils/complianceUtil.js +113 -113
  28. package/src/common/utils/configsUtil.js +22 -22
  29. package/src/common/utils/dataTypeUtils.js +41 -41
  30. package/src/common/utils/numberUtils.js +22 -22
  31. package/src/common/utils/objectUtils.js +7 -7
  32. package/src/common/utils/timeUtils.js +177 -177
  33. package/src/common/validations/errorValidation.js +16 -16
  34. package/src/common/validations/typeValidations.js +36 -36
  35. package/src/defaults/configs/auditConfigs.js +125 -125
  36. package/src/defaults/configs/coverage.js +144 -144
  37. package/src/defaults/configs/polices.js +76 -76
  38. package/src/defaults/configs/requirement.js +32 -32
  39. package/src/defaults/index.js +6 -6
  40. package/src/env.js +57 -57
  41. package/src/factory/globalRecord/globalRecord.js +43 -43
  42. package/src/factory/index.js +8 -8
  43. package/src/factory/records/records.js +281 -281
  44. package/src/factory/users/users.js +69 -69
  45. package/src/index.js +105 -105
  46. package/src/saas/internal-api/accountDirectory/api/accountDirectory.api.js +50 -50
  47. package/src/saas/internal-api/accountDirectory/api/accountDirectory.service.js +182 -182
  48. package/src/saas/internal-api/accountDirectory/index.js +4 -4
  49. package/src/saas/internal-api/accountDirectory/models/accountDirectory.model.js +40 -40
  50. package/src/saas/internal-api/accounts/api/core/accounts.core.api.js +35 -35
  51. package/src/saas/internal-api/accounts/api/core/accounts.core.service.js +93 -93
  52. package/src/saas/internal-api/accounts/api/emailCustomization/accounts.email.customizations.api.js +29 -29
  53. package/src/saas/internal-api/accounts/api/emailCustomization/accounts.email.customizations.service.js +61 -61
  54. package/src/saas/internal-api/accounts/api/openapi/accounts.openapi.api.js +48 -48
  55. package/src/saas/internal-api/accounts/api/openapi/accounts.openapi.service.js +74 -74
  56. package/src/saas/internal-api/accounts/api/settings/settings.api.js +21 -21
  57. package/src/saas/internal-api/accounts/api/settings/settings.service.js +41 -41
  58. package/src/saas/internal-api/accounts/consts/consts.js +8 -8
  59. package/src/saas/internal-api/accounts/index.js +22 -22
  60. package/src/saas/internal-api/accounts/models/core/create.account.model.js +16 -16
  61. package/src/saas/internal-api/accounts/models/settings/update.settings.model.js +53 -53
  62. package/src/saas/internal-api/accounts/utils/utils.js +61 -61
  63. package/src/saas/internal-api/agreement/api/agreement.api.js +39 -39
  64. package/src/saas/internal-api/agreement/api/agreement.service.js +121 -121
  65. package/src/saas/internal-api/agreement/consts/consts.js +11 -11
  66. package/src/saas/internal-api/agreement/index.js +12 -12
  67. package/src/saas/internal-api/agreement/models/create.agreement.model.js +12 -12
  68. package/src/saas/internal-api/agreement/models/createAgreementByAuditorModel.js +11 -11
  69. package/src/saas/internal-api/agreement/models/createAgreementByPMModel.js +13 -13
  70. package/src/saas/internal-api/auditCustomerRules/api/customer.rules.api.js +43 -43
  71. package/src/saas/internal-api/auditCustomerRules/api/customer.rules.service.js +105 -105
  72. package/src/saas/internal-api/auditCustomerRules/consts/customer.rule.js +11 -11
  73. package/src/saas/internal-api/auditCustomerRules/index.js +6 -6
  74. package/src/saas/internal-api/auditCustomerRules/models/customer.rule.model.js +46 -46
  75. package/src/saas/internal-api/auditCustomerRules/utils/customer.rule.util.js +19 -19
  76. package/src/saas/internal-api/auditNotes/api/audit.notes.api.js +40 -40
  77. package/src/saas/internal-api/auditNotes/api/audit.notes.service.js +115 -115
  78. package/src/saas/internal-api/auditNotes/index.js +4 -4
  79. package/src/saas/internal-api/auditNotes/models/audit.note.model.js +30 -30
  80. package/src/saas/internal-api/auth/api/auth.api.js +27 -27
  81. package/src/saas/internal-api/auth/api/auth.service.js +90 -90
  82. package/src/saas/internal-api/auth/index.js +3 -3
  83. package/src/saas/internal-api/coi/api/coi.api.js +58 -58
  84. package/src/saas/internal-api/coi/api/coi.service.js +61 -61
  85. package/src/saas/internal-api/coi/consts/hashes.js +5 -5
  86. package/src/saas/internal-api/coi/consts/uploaderTypes.js +5 -5
  87. package/src/saas/internal-api/coi/index.js +14 -14
  88. package/src/saas/internal-api/coi/models/Combine.last.two.cois.model.js +25 -25
  89. package/src/saas/internal-api/coi/models/submit.coi.model.js +19 -19
  90. package/src/saas/internal-api/coi/utils/utils.js +117 -117
  91. package/src/saas/internal-api/compliance/api/amBestRating/am.best.rating.api.js +12 -12
  92. package/src/saas/internal-api/compliance/api/amBestRating/am.best.rating.service.js +14 -14
  93. package/src/saas/internal-api/compliance/api/audit/aiAudit/aiAudit.api.js +27 -27
  94. package/src/saas/internal-api/compliance/api/audit/aiAudit/aiAudit.service.js +38 -38
  95. package/src/saas/internal-api/compliance/api/audit/audit.api.js +112 -112
  96. package/src/saas/internal-api/compliance/api/audit/audit.service.js +319 -319
  97. package/src/saas/internal-api/compliance/api/convert/convert.api.js +17 -17
  98. package/src/saas/internal-api/compliance/api/convert/convert.service.js +11 -11
  99. package/src/saas/internal-api/compliance/api/coverage/coverage.api.js +33 -33
  100. package/src/saas/internal-api/compliance/api/coverage/coverage.service.js +46 -46
  101. package/src/saas/internal-api/compliance/api/overrideGap/override.gap.api.js +38 -38
  102. package/src/saas/internal-api/compliance/api/overrideGap/override.gap.service.js +189 -189
  103. package/src/saas/internal-api/compliance/consts/audit.js +113 -113
  104. package/src/saas/internal-api/compliance/index.js +38 -38
  105. package/src/saas/internal-api/compliance/models/audit/audit.model.js +96 -96
  106. package/src/saas/internal-api/compliance/models/waive/waive.model.js +49 -49
  107. package/src/saas/internal-api/compliance/utils/auditUtil.js +269 -269
  108. package/src/saas/internal-api/compliance/utils/coverageUtil.js +45 -45
  109. package/src/saas/internal-api/contractors/api/contractors.api.js +209 -209
  110. package/src/saas/internal-api/contractors/api/contractors.service.js +367 -361
  111. package/src/saas/internal-api/contractors/consts/consts.js +6 -6
  112. package/src/saas/internal-api/contractors/index.js +8 -8
  113. package/src/saas/internal-api/contractors/models/assign.requirement.model.js +10 -10
  114. package/src/saas/internal-api/contractors/models/edit.contractor.model.js +73 -73
  115. package/src/saas/internal-api/contractors/models/link.request.model.js +10 -10
  116. package/src/saas/internal-api/contractors/models/subscription.contractor.model.js +13 -13
  117. package/src/saas/internal-api/contractors/models/verification.contractor.model.js +27 -27
  118. package/src/saas/internal-api/contractors/utils.js +25 -25
  119. package/src/saas/internal-api/dashboard/api/recordList.api.js +38 -38
  120. package/src/saas/internal-api/dashboard/api/recordList.service.js +60 -60
  121. package/src/saas/internal-api/dashboard/index.js +5 -5
  122. package/src/saas/internal-api/dashboard/models/dashboard.filter.criteria.model.js +38 -38
  123. package/src/saas/internal-api/dbEmails/api/db.emails.api.js +25 -25
  124. package/src/saas/internal-api/dbEmails/api/db.emails.service.js +168 -163
  125. package/src/saas/internal-api/dbEmails/consts/consts.js +56 -56
  126. package/src/saas/internal-api/dbEmails/index.js +6 -6
  127. package/src/saas/internal-api/dbEmails/models/db.emails.model.js +22 -22
  128. package/src/saas/internal-api/dbEmails/utils/util.js +87 -87
  129. package/src/saas/internal-api/emailCustomization/api/email.customization.api.js +26 -26
  130. package/src/saas/internal-api/emailCustomization/api/email.customization.service.js +50 -50
  131. package/src/saas/internal-api/emailCustomization/index.js +3 -3
  132. package/src/saas/internal-api/globalRecord/api/global.record.api.js +95 -95
  133. package/src/saas/internal-api/globalRecord/api/global.record.service.js +112 -112
  134. package/src/saas/internal-api/globalRecord/consts.js +20 -20
  135. package/src/saas/internal-api/globalRecord/index.js +6 -6
  136. package/src/saas/internal-api/globalRecord/models/global.record.model.js +60 -60
  137. package/src/saas/internal-api/globalRecord/utils/util.js +161 -161
  138. package/src/saas/internal-api/homepageCharts/api/charts.api.js +12 -12
  139. package/src/saas/internal-api/homepageCharts/api/charts.service.js +7 -7
  140. package/src/saas/internal-api/homepageCharts/index.js +3 -3
  141. package/src/saas/internal-api/jonesNetworkTab/api/jones.network.tab.api.js +14 -14
  142. package/src/saas/internal-api/jonesNetworkTab/api/jones.network.tab.service.js +16 -16
  143. package/src/saas/internal-api/jonesNetworkTab/index.js +3 -3
  144. package/src/saas/internal-api/notificationCenter/api/notification.center.api.js +32 -32
  145. package/src/saas/internal-api/notificationCenter/api/notification.center.service.js +49 -49
  146. package/src/saas/internal-api/notificationCenter/index.js +3 -3
  147. package/src/saas/internal-api/outlook/api/outlook.api.js +14 -14
  148. package/src/saas/internal-api/outlook/api/outlook.service.js +14 -14
  149. package/src/saas/internal-api/outlook/index.js +3 -3
  150. package/src/saas/internal-api/policyFile/api/policy.file.api.js +43 -43
  151. package/src/saas/internal-api/policyFile/api/policy.file.service.js +117 -117
  152. package/src/saas/internal-api/policyFile/consts.js +21 -21
  153. package/src/saas/internal-api/policyFile/index.js +11 -11
  154. package/src/saas/internal-api/policyFile/models/create.policy.file.model.js +11 -11
  155. package/src/saas/internal-api/policyFile/models/set.publish.flag.to.policy.model.js +13 -13
  156. package/src/saas/internal-api/projects/api/core/projects.api.js +39 -39
  157. package/src/saas/internal-api/projects/api/core/projects.service.js +77 -77
  158. package/src/saas/internal-api/projects/api/settings/project.settings.api.js +18 -18
  159. package/src/saas/internal-api/projects/api/settings/project.settings.service.js +35 -35
  160. package/src/saas/internal-api/projects/consts/defaultProject.js +3 -3
  161. package/src/saas/internal-api/projects/index.js +24 -24
  162. package/src/saas/internal-api/projects/models/core/create.project.model.js +41 -41
  163. package/src/saas/internal-api/projects/models/core/update.project.model.js +47 -47
  164. package/src/saas/internal-api/projects/models/settings/update.project.settings.model.js +40 -40
  165. package/src/saas/internal-api/projects/utils/utils.js +155 -155
  166. package/src/saas/internal-api/recordHub/api/record.hub.api.js +14 -14
  167. package/src/saas/internal-api/recordHub/api/record.hub.service.js +32 -32
  168. package/src/saas/internal-api/recordHub/index.js +3 -3
  169. package/src/saas/internal-api/recordNotes/api/record.notes.api.js +38 -38
  170. package/src/saas/internal-api/recordNotes/api/record.notes.service.js +56 -56
  171. package/src/saas/internal-api/recordNotes/api/record.notes.utils.js +12 -12
  172. package/src/saas/internal-api/recordNotes/index.js +3 -3
  173. package/src/saas/internal-api/reports/api/reports.api.js +62 -62
  174. package/src/saas/internal-api/reports/api/reports.service.js +79 -79
  175. package/src/saas/internal-api/reports/consts/consts.js +74 -74
  176. package/src/saas/internal-api/reports/index.js +15 -15
  177. package/src/saas/internal-api/reports/models/report.model.js +27 -27
  178. package/src/saas/internal-api/requests/api/requests.api.js +132 -132
  179. package/src/saas/internal-api/requests/api/requests.service.js +312 -312
  180. package/src/saas/internal-api/requests/index.js +21 -21
  181. package/src/saas/internal-api/requests/models/create.request.model.js +36 -36
  182. package/src/saas/internal-api/requests/models/draft.request.criteria.model.js +18 -18
  183. package/src/saas/internal-api/requests/models/draft.request.report.model.js +14 -14
  184. package/src/saas/internal-api/requests/models/edit.request.model.js +31 -31
  185. package/src/saas/internal-api/requests/models/homepageRequestCriteriaModel.js +19 -19
  186. package/src/saas/internal-api/requests/models/requestListCriteriaModel.js +17 -17
  187. package/src/saas/internal-api/requests/models/tenant.request.model.js +9 -9
  188. package/src/saas/internal-api/requests/utils.js +16 -16
  189. package/src/saas/internal-api/requestsTable/api/requests.table.api.js +20 -20
  190. package/src/saas/internal-api/requestsTable/api/requests.table.service.js +14 -14
  191. package/src/saas/internal-api/requestsTable/index.js +3 -3
  192. package/src/saas/internal-api/requirements/api/requirements.api.js +57 -57
  193. package/src/saas/internal-api/requirements/api/requirements.service.js +184 -184
  194. package/src/saas/internal-api/requirements/consts/attributeTypes.json +8 -8
  195. package/src/saas/internal-api/requirements/consts/consts.js +6 -6
  196. package/src/saas/internal-api/requirements/index.js +10 -10
  197. package/src/saas/internal-api/requirements/models/create.requirement.model.js +17 -17
  198. package/src/saas/internal-api/requirements/models/policy.model.js +35 -35
  199. package/src/saas/internal-api/requirements/models/update.requirement.model.js +19 -19
  200. package/src/saas/internal-api/requirements/utils/utils.js +129 -129
  201. package/src/saas/internal-api/serviceArea/api/coordinates.api.js +12 -12
  202. package/src/saas/internal-api/serviceArea/api/coordinates.service.js +7 -7
  203. package/src/saas/internal-api/serviceArea/index.js +4 -4
  204. package/src/saas/internal-api/serviceArea/utils/utils.js +8 -8
  205. package/src/saas/internal-api/tabs/api/tabs.api.js +32 -32
  206. package/src/saas/internal-api/tabs/api/tabs.service.js +60 -60
  207. package/src/saas/internal-api/tabs/index.js +3 -3
  208. package/src/saas/internal-api/tabs/models/tabs.model.js +19 -19
  209. package/src/saas/internal-api/thread-scheduler/runner.js +55 -55
  210. package/src/saas/internal-api/uploadFiles/api/upload.file.api.js +43 -43
  211. package/src/saas/internal-api/uploadFiles/api/upload.file.service.js +107 -107
  212. package/src/saas/internal-api/uploadFiles/consts.js +12 -12
  213. package/src/saas/internal-api/uploadFiles/index.js +5 -5
  214. package/src/saas/internal-api/users/api/tenantApp/tenant.app.api.js +38 -38
  215. package/src/saas/internal-api/users/api/tenantApp/tenant.app.service.js +108 -108
  216. package/src/saas/internal-api/users/api/users.api.js +126 -126
  217. package/src/saas/internal-api/users/api/users.service.js +258 -258
  218. package/src/saas/internal-api/users/index.js +16 -16
  219. package/src/saas/internal-api/users/models/create.inner.system.user.model.js +18 -18
  220. package/src/saas/internal-api/users/models/notification.settings.model.js +12 -12
  221. package/src/saas/internal-api/users/models/tenent.user.model.js +11 -11
  222. package/src/saas/internal-api/users/models/users.model.js +43 -43
  223. package/src/saas/internal-api/users/utils/util.js +39 -39
  224. package/src/saas/internal-api/vendorProfile/api/vendor.profile.api.js +26 -26
  225. package/src/saas/internal-api/vendorProfile/api/vendor.profile.service.js +19 -19
  226. package/src/saas/internal-api/vendorProfile/index.js +3 -3
  227. package/src/saas/openapi/accounts/accounts.api.js +17 -17
  228. package/src/saas/openapi/accounts/accounts.service.js +11 -11
  229. package/src/saas/openapi/coi/coi.api.js +30 -30
  230. package/src/saas/openapi/coi/coi.service.js +43 -43
  231. package/src/saas/openapi/projects/projects.api.js +83 -83
  232. package/src/saas/openapi/projects/projects.service.js +71 -64
  233. package/src/saas/openapi/requests/index.js +7 -7
  234. package/src/saas/openapi/requests/models/invite.request.model.js +40 -40
  235. package/src/saas/openapi/requests/models/update.request.model.js +35 -35
  236. package/src/saas/openapi/requests/requests.api.js +93 -93
  237. package/src/saas/openapi/requests/requests.service.js +94 -94
  238. package/src/saas/openapi/requirements/index.js +6 -6
  239. package/src/saas/openapi/requirements/models/copy.requirement.model.js +10 -10
  240. package/src/saas/openapi/requirements/requirements.api.js +41 -41
  241. package/src/saas/openapi/requirements/requirements.service.js +49 -49
  242. package/src/saas/openapi/tabs/index.js +6 -6
  243. package/src/saas/openapi/tabs/models/create.tab.model.js +6 -6
  244. package/src/saas/openapi/tabs/tabs.api.js +27 -27
  245. package/src/saas/openapi/tabs/tabs.service.js +19 -19
  246. package/src/saas/openapi/users/user.model.js +10 -10
  247. package/src/saas/openapi/users/users.api.js +33 -33
  248. package/src/saas/openapi/users/users.service.js +51 -51
  249. package/tests/env.test.js +40 -40
  250. package/tests/validation.test.js +83 -83
@@ -1,11 +1,11 @@
1
- const convertApi = require('./convert.api');
2
-
3
- const convertOcrToCoverage = async ocrData => {
4
- return convertApi.convertOcrToCoverage(ocrData).then(res => res && res.data);
5
- };
6
-
7
- const convertRequirement = async requirement => {
8
- return convertApi.convertRequirement(requirement).then(res => res && res.data);
9
- };
10
-
11
- module.exports = { convertOcrToCoverage, convertRequirement };
1
+ const convertApi = require('./convert.api');
2
+
3
+ const convertOcrToCoverage = async ocrData => {
4
+ return convertApi.convertOcrToCoverage(ocrData).then(res => res && res.data);
5
+ };
6
+
7
+ const convertRequirement = async requirement => {
8
+ return convertApi.convertRequirement(requirement).then(res => res && res.data);
9
+ };
10
+
11
+ module.exports = { convertOcrToCoverage, convertRequirement };
@@ -1,33 +1,33 @@
1
- const internalRequests = require('../../../../../common/requests/internalAuth/requests');
2
- const cookieAuthRequests = require('../../../../../common/requests/cookieAuth/requests');
3
- const { backendUrl, nodeBackendUrl } = require('../../../../../env').getEnv();
4
-
5
- const Endpoints = {
6
- saveCoverageNode: `${nodeBackendUrl}/coverage`,
7
- saveCoverageJava: `${backendUrl}/saas/contractors/coverage`,
8
- getCoverageByCoiId: coiId => `${nodeBackendUrl}/coverage/${coiId}`,
9
- deleteCoverageByCoiId: coiId => `${nodeBackendUrl}/coverage/${coiId}`
10
- };
11
-
12
- const saveCoverageNode = coverage => {
13
- return internalRequests.postRequestHandler(Endpoints.saveCoverageNode, coverage);
14
- };
15
-
16
- const saveCoverageJava = (auditorContext, auditDates, coverage) => {
17
- return cookieAuthRequests.postRequestHandler(Endpoints.saveCoverageJava, { auditDates, coverage }, auditorContext);
18
- };
19
-
20
- const getCoverageByCoiId = coiId => {
21
- return internalRequests.getRequestHandler(Endpoints.getCoverageByCoiId(coiId));
22
- };
23
-
24
- const deleteCoverageByCoiId = (coiId, icsContext) => {
25
- return cookieAuthRequests.deleteRequestHandler(Endpoints.deleteCoverageByCoiId(coiId), icsContext);
26
- };
27
-
28
- module.exports = {
29
- saveCoverageNode,
30
- saveCoverageJava,
31
- getCoverageByCoiId,
32
- deleteCoverageByCoiId
33
- };
1
+ const internalRequests = require('../../../../../common/requests/internalAuth/requests');
2
+ const cookieAuthRequests = require('../../../../../common/requests/cookieAuth/requests');
3
+ const { backendUrl, nodeBackendUrl } = require('../../../../../env').getEnv();
4
+
5
+ const Endpoints = {
6
+ saveCoverageNode: `${nodeBackendUrl}/coverage`,
7
+ saveCoverageJava: `${backendUrl}/saas/contractors/coverage`,
8
+ getCoverageByCoiId: coiId => `${nodeBackendUrl}/coverage/${coiId}`,
9
+ deleteCoverageByCoiId: coiId => `${nodeBackendUrl}/coverage/${coiId}`
10
+ };
11
+
12
+ const saveCoverageNode = coverage => {
13
+ return internalRequests.postRequestHandler(Endpoints.saveCoverageNode, coverage);
14
+ };
15
+
16
+ const saveCoverageJava = (auditorContext, auditDates, coverage) => {
17
+ return cookieAuthRequests.postRequestHandler(Endpoints.saveCoverageJava, { auditDates, coverage }, auditorContext);
18
+ };
19
+
20
+ const getCoverageByCoiId = coiId => {
21
+ return internalRequests.getRequestHandler(Endpoints.getCoverageByCoiId(coiId));
22
+ };
23
+
24
+ const deleteCoverageByCoiId = (coiId, icsContext) => {
25
+ return cookieAuthRequests.deleteRequestHandler(Endpoints.deleteCoverageByCoiId(coiId), icsContext);
26
+ };
27
+
28
+ module.exports = {
29
+ saveCoverageNode,
30
+ saveCoverageJava,
31
+ getCoverageByCoiId,
32
+ deleteCoverageByCoiId
33
+ };
@@ -1,46 +1,46 @@
1
- const coverageApi = require('./coverage.api');
2
- const { prepareMetadataForAudit } = require('../../../../../common/utils/complianceUtil');
3
- const { getCoverageConfig } = require('../../utils/coverageUtil');
4
-
5
- const saveCoverageNode = coverage => {
6
- return coverageApi.saveCoverageNode(coverage);
7
- };
8
-
9
- const saveCoverageJava = (auditorContext, auditDates, coverage) => {
10
- return coverageApi.saveCoverageJava(auditorContext, auditDates, coverage);
11
- };
12
-
13
- const getCoverageByCoiId = (coiId, crossServiceCommunicationAuthKey) => {
14
- return coverageApi.getCoverageByCoiId(coiId, crossServiceCommunicationAuthKey).then(res => res && res.data);
15
- };
16
-
17
- const deleteCoverageByCoiId = (coiId, icsContext) => {
18
- return coverageApi.deleteCoverageByCoiId(coiId, icsContext);
19
- };
20
-
21
- const addCoverage = async function(
22
- auditorContext,
23
- accountId,
24
- projectId,
25
- requirementId,
26
- record,
27
- policiesCoverageConfig //If automation is passing "true" - will no longer work, can pass an array of policy names instead
28
- ) {
29
- const coiId = record.certificatePdf.split('contractor').shift();
30
- const recordId = record.contractorId;
31
-
32
- const { auditDates } = await prepareMetadataForAudit(auditorContext, accountId, projectId, requirementId, recordId);
33
-
34
- const coverageConfig = getCoverageConfig(coiId, policiesCoverageConfig);
35
-
36
- const coverageResponse = await saveCoverageJava(auditorContext, auditDates, coverageConfig);
37
- return coverageResponse;
38
- };
39
-
40
- module.exports = {
41
- saveCoverageNode,
42
- saveCoverageJava,
43
- getCoverageByCoiId,
44
- deleteCoverageByCoiId,
45
- addCoverage
46
- };
1
+ const coverageApi = require('./coverage.api');
2
+ const { prepareMetadataForAudit } = require('../../../../../common/utils/complianceUtil');
3
+ const { getCoverageConfig } = require('../../utils/coverageUtil');
4
+
5
+ const saveCoverageNode = coverage => {
6
+ return coverageApi.saveCoverageNode(coverage);
7
+ };
8
+
9
+ const saveCoverageJava = (auditorContext, auditDates, coverage) => {
10
+ return coverageApi.saveCoverageJava(auditorContext, auditDates, coverage);
11
+ };
12
+
13
+ const getCoverageByCoiId = (coiId, crossServiceCommunicationAuthKey) => {
14
+ return coverageApi.getCoverageByCoiId(coiId, crossServiceCommunicationAuthKey).then(res => res && res.data);
15
+ };
16
+
17
+ const deleteCoverageByCoiId = (coiId, icsContext) => {
18
+ return coverageApi.deleteCoverageByCoiId(coiId, icsContext);
19
+ };
20
+
21
+ const addCoverage = async function(
22
+ auditorContext,
23
+ accountId,
24
+ projectId,
25
+ requirementId,
26
+ record,
27
+ policiesCoverageConfig //If automation is passing "true" - will no longer work, can pass an array of policy names instead
28
+ ) {
29
+ const coiId = record.certificatePdf.split('contractor').shift();
30
+ const recordId = record.contractorId;
31
+
32
+ const { auditDates } = await prepareMetadataForAudit(auditorContext, accountId, projectId, requirementId, recordId);
33
+
34
+ const coverageConfig = getCoverageConfig(coiId, policiesCoverageConfig);
35
+
36
+ const coverageResponse = await saveCoverageJava(auditorContext, auditDates, coverageConfig);
37
+ return coverageResponse;
38
+ };
39
+
40
+ module.exports = {
41
+ saveCoverageNode,
42
+ saveCoverageJava,
43
+ getCoverageByCoiId,
44
+ deleteCoverageByCoiId,
45
+ addCoverage
46
+ };
@@ -1,38 +1,38 @@
1
- const requests = require('../../../../../common/requests/cookieAuth/requests');
2
- const { backendUrl } = require('../../../../../env').getEnv();
3
-
4
- const Endpoints = {
5
- waive: contractorId => `${backendUrl}/saas/contractors/${contractorId}/waiver`,
6
- retract: contractorId => `${backendUrl}/saas/contractors/${contractorId}/waiver`,
7
- overrideGap: `${backendUrl}/saas/record/override-gap`,
8
- retractOverride: `${backendUrl}/saas/record/retract-override`,
9
- getOverridesByRecordId: recordId => `${backendUrl}/saas/integration-tests/record/${recordId}/override`
10
- };
11
-
12
- const waive = async (contractorId, waiveRequestModel, context) => {
13
- const status = waiveRequestModel.status;
14
- delete waiveRequestModel.status;
15
- return requests.postRequestHandler(Endpoints.waive(contractorId), waiveRequestModel, context, {}, { status });
16
- };
17
-
18
- const retract = async (contractorId, retractRequestModel, context) => {
19
- const status = retractRequestModel.status;
20
- delete retractRequestModel.status;
21
- return requests.postRequestHandler(Endpoints.retract(contractorId), retractRequestModel, context, {}, { status });
22
- };
23
-
24
- const overrideGap = ({ waiveRequestModel, isTestingBackwardCompatibility = false, context }) => {
25
- const headers = {};
26
- const params = { isTestingBackwardCompatibility };
27
- return requests.postRequestHandler(Endpoints.overrideGap, waiveRequestModel, context, headers, params);
28
- };
29
-
30
- const retractOverride = (retractRequestModel, context) => {
31
- return requests.postRequestHandler(Endpoints.retractOverride, retractRequestModel, context);
32
- };
33
-
34
- const getOverridesByRecordId = (recordId, context) => {
35
- return requests.getRequestHandler(Endpoints.getOverridesByRecordId(recordId), {}, context);
36
- };
37
-
38
- module.exports = { waive, retract, overrideGap, retractOverride, getOverridesByRecordId };
1
+ const requests = require('../../../../../common/requests/cookieAuth/requests');
2
+ const { backendUrl } = require('../../../../../env').getEnv();
3
+
4
+ const Endpoints = {
5
+ waive: contractorId => `${backendUrl}/saas/contractors/${contractorId}/waiver`,
6
+ retract: contractorId => `${backendUrl}/saas/contractors/${contractorId}/waiver`,
7
+ overrideGap: `${backendUrl}/saas/record/override-gap`,
8
+ retractOverride: `${backendUrl}/saas/record/retract-override`,
9
+ getOverridesByRecordId: recordId => `${backendUrl}/saas/integration-tests/record/${recordId}/override`
10
+ };
11
+
12
+ const waive = async (contractorId, waiveRequestModel, context) => {
13
+ const status = waiveRequestModel.status;
14
+ delete waiveRequestModel.status;
15
+ return requests.postRequestHandler(Endpoints.waive(contractorId), waiveRequestModel, context, {}, { status });
16
+ };
17
+
18
+ const retract = async (contractorId, retractRequestModel, context) => {
19
+ const status = retractRequestModel.status;
20
+ delete retractRequestModel.status;
21
+ return requests.postRequestHandler(Endpoints.retract(contractorId), retractRequestModel, context, {}, { status });
22
+ };
23
+
24
+ const overrideGap = ({ waiveRequestModel, isTestingBackwardCompatibility = false, context }) => {
25
+ const headers = {};
26
+ const params = { isTestingBackwardCompatibility };
27
+ return requests.postRequestHandler(Endpoints.overrideGap, waiveRequestModel, context, headers, params);
28
+ };
29
+
30
+ const retractOverride = (retractRequestModel, context) => {
31
+ return requests.postRequestHandler(Endpoints.retractOverride, retractRequestModel, context);
32
+ };
33
+
34
+ const getOverridesByRecordId = (recordId, context) => {
35
+ return requests.getRequestHandler(Endpoints.getOverridesByRecordId(recordId), {}, context);
36
+ };
37
+
38
+ module.exports = { waive, retract, overrideGap, retractOverride, getOverridesByRecordId };
@@ -1,189 +1,189 @@
1
- const env = require('../../../../../env');
2
-
3
- const overrideGapApi = require('./override.gap.api');
4
- const { WaiveRequestModel, RetractRequestModel, WAIVER_REASONS } = require('../../models/waive/waive.model');
5
- const { validateType } = require('../../../../../common/validations/typeValidations');
6
- const auditUtil = require('../../utils/auditUtil');
7
- const httpResponseStatusCodes = require('../../../../../common/httpResponseStatusCodes.json');
8
-
9
- const { credentials } = env.getEnv();
10
- const userTypes = require('../../../../../common/consts/userTypes');
11
-
12
- const waive = (waiveRequestModel, context) => {
13
- validateType(waiveRequestModel, WaiveRequestModel);
14
- return overrideGapApi.waive(waiveRequestModel.contractorId, waiveRequestModel, context);
15
- };
16
-
17
- const retract = (retractRequestModel, context) => {
18
- validateType(retractRequestModel, RetractRequestModel);
19
- return overrideGapApi.retract(retractRequestModel.contractorId, retractRequestModel, context);
20
- };
21
-
22
- const overrideGap = ({ waiveRequestModel, isTestingBackwardCompatibility = false, context }) => {
23
- validateType(waiveRequestModel, WaiveRequestModel);
24
- return overrideGapApi.overrideGap({ waiveRequestModel, isTestingBackwardCompatibility, context });
25
- };
26
-
27
- const retractOverride = (retractRequestModel, context) => {
28
- validateType(retractRequestModel, RetractRequestModel);
29
- return overrideGapApi.retractOverride(retractRequestModel, context);
30
- };
31
-
32
- const getAllWaiveModels = (
33
- record,
34
- policyName,
35
- attributeName,
36
- waiverReason,
37
- remarks,
38
- {
39
- userId,
40
- userRole,
41
- auditId
42
- } = {}) => {
43
- const auditIds = auditId ? [auditId] : getPolicyAuditIdsFromRecord(record, policyName, auditUtil.getAttributeKey(attributeName));
44
- userId = userId || env.getSystemUserIdentity(credentials.superUser).id;
45
- userRole = userRole || userTypes.ICS;
46
-
47
- const waiverModels = [];
48
- let i = 0;
49
- while (i < auditIds.length) {
50
- const auditId = auditIds[i];
51
- const waiveModel = new WaiveRequestModel({
52
- contractorId: record.id,
53
- auditId,
54
- waiverReason,
55
- remarks,
56
- userId,
57
- userRole
58
- });
59
- waiverModels.push(waiveModel);
60
- i++;
61
- }
62
-
63
- return waiverModels;
64
- };
65
-
66
- const getWaiveModel = (
67
- record,
68
- policyName,
69
- attributeName,
70
- waiverReason,
71
- remarks,
72
- {
73
- userId,
74
- userRole,
75
- auditId
76
- } = {}) => {
77
- return getAllWaiveModels(record, policyName, attributeName, waiverReason, remarks, { userId, userRole, auditId })[0];
78
- };
79
-
80
- // used by automation. has to return a single model
81
- const getWaiveModelByGap = (
82
- record,
83
- policyName,
84
- gap,
85
- reason,
86
- note,
87
- {
88
- userId,
89
- userRole
90
- } = {}) => {
91
- const { attributeName, auditId } = auditUtil.getAttributeNameAndAuditIdByGap(record, policyName, gap);
92
-
93
- return getWaiveModel(record, policyName, attributeName, reason, note, { userId, userRole, auditId });
94
- };
95
-
96
- const getRetractModel = (record, policyName, attributeName) => {
97
- const auditIds = getPolicyAuditIdsFromRecord(record, policyName, auditUtil.getAttributeKey(attributeName));
98
- const userId = env.getSystemUserIdentity(credentials.superUser).id;
99
- const userRole = userTypes.ICS;
100
-
101
- const retractModels = [];
102
- for (const auditId of auditIds) {
103
- const model = new RetractRequestModel({
104
- contractorId: record.id,
105
- auditId,
106
- userId,
107
- userRole
108
- });
109
- retractModels.push(model);
110
- }
111
- return retractModels.length > 1 ? retractModels : retractModels[0];
112
- };
113
-
114
- const getPolicyAuditIdsFromRecord = (record, policyName, attributeName) => {
115
- const policy = record.reviewbyAuditor.find(contractorCoverage =>
116
- contractorCoverage.insuranceName === policyName);
117
-
118
- if (!policy) {
119
- throw new Error(`Policy name: ${policyName} don't exist in record`);
120
- }
121
-
122
- const attributes = policy.errorList.filter(error => error.limitname === attributeName);
123
-
124
- if (!attributes.length) {
125
- throw new Error(`Attribute name: ${attributeName} don't exist in record`);
126
- }
127
-
128
- const auditIds = attributes.map(a => a.auditId);
129
-
130
- return auditIds;
131
- };
132
-
133
- // private method - please refer to waiveAll / acceptAll
134
- const overrideAll = async (record, reason, context, { note = 'OVERRIDDEN AUTOMATICALLY' } = {}) => {
135
- let allWaivablePolicies = auditUtil.getAllWaivablePolicies(record, context);
136
- // Remove duplicates, this can happen for example in case of multiple errors on Additional Insured, Certificate Holder or Additional Information
137
- allWaivablePolicies = allWaivablePolicies.filter((value, index, self) =>
138
- index === self.findIndex(t => (
139
- t.policyName === value.policyName && t.attributeName === value.attributeName
140
- ))
141
- );
142
-
143
- for (const waivable of allWaivablePolicies) {
144
- const waiveModels = getAllWaiveModels(record, waivable.policyName, waivable.attributeName, reason, note);
145
- for (const waiveModel of waiveModels) {
146
- const waiveResponse = await overrideGap({ waiveRequestModel: waiveModel, context });
147
-
148
- if (waiveResponse.status !== httpResponseStatusCodes.OK) {
149
- throw Error(`Failed to waive ${waivable.policyName} - ${waivable.attributeName} for ${record.company}`);
150
- }
151
- }
152
- }
153
- };
154
-
155
- const waiveAll = async (record, context, { reason = WAIVER_REASONS.BUSINESS_DECISION, note = 'WAIVED AUTOMATICALLY' } = {}) => {
156
- if (reason === WAIVER_REASONS.ACCEPT_NO_EXPOSURE) {
157
- throw Error('Invalid override gap reason to waive');
158
- }
159
-
160
- await overrideAll(record, reason, context, { note });
161
- };
162
-
163
- const acceptAll = async (record, context, { note = 'ACCEPTED AUTOMATICALLY' } = {}) => {
164
- await overrideAll(record, WAIVER_REASONS.ACCEPT_NO_EXPOSURE, context, { note });
165
- };
166
-
167
- const getOverridesByRecordId = async function(recordId, context) {
168
- const responseAudit = await overrideGapApi.getOverridesByRecordId(recordId, context);
169
-
170
- if (responseAudit.status !== httpResponseStatusCodes.OK) {
171
- throw Error(`Failed to get overrides by record id\n${responseAudit}`);
172
- }
173
-
174
- return responseAudit.data;
175
- };
176
-
177
- module.exports = {
178
- waive,
179
- waiveAll,
180
- acceptAll,
181
- retract,
182
- getWaiveModel,
183
- getAllWaiveModels,
184
- getRetractModel,
185
- getWaiveModelByGap,
186
- overrideGap,
187
- retractOverride,
188
- getOverridesByRecordId
189
- };
1
+ const env = require('../../../../../env');
2
+
3
+ const overrideGapApi = require('./override.gap.api');
4
+ const { WaiveRequestModel, RetractRequestModel, WAIVER_REASONS } = require('../../models/waive/waive.model');
5
+ const { validateType } = require('../../../../../common/validations/typeValidations');
6
+ const auditUtil = require('../../utils/auditUtil');
7
+ const httpResponseStatusCodes = require('../../../../../common/httpResponseStatusCodes.json');
8
+
9
+ const { credentials } = env.getEnv();
10
+ const userTypes = require('../../../../../common/consts/userTypes');
11
+
12
+ const waive = (waiveRequestModel, context) => {
13
+ validateType(waiveRequestModel, WaiveRequestModel);
14
+ return overrideGapApi.waive(waiveRequestModel.contractorId, waiveRequestModel, context);
15
+ };
16
+
17
+ const retract = (retractRequestModel, context) => {
18
+ validateType(retractRequestModel, RetractRequestModel);
19
+ return overrideGapApi.retract(retractRequestModel.contractorId, retractRequestModel, context);
20
+ };
21
+
22
+ const overrideGap = ({ waiveRequestModel, isTestingBackwardCompatibility = false, context }) => {
23
+ validateType(waiveRequestModel, WaiveRequestModel);
24
+ return overrideGapApi.overrideGap({ waiveRequestModel, isTestingBackwardCompatibility, context });
25
+ };
26
+
27
+ const retractOverride = (retractRequestModel, context) => {
28
+ validateType(retractRequestModel, RetractRequestModel);
29
+ return overrideGapApi.retractOverride(retractRequestModel, context);
30
+ };
31
+
32
+ const getAllWaiveModels = (
33
+ record,
34
+ policyName,
35
+ attributeName,
36
+ waiverReason,
37
+ remarks,
38
+ {
39
+ userId,
40
+ userRole,
41
+ auditId
42
+ } = {}) => {
43
+ const auditIds = auditId ? [auditId] : getPolicyAuditIdsFromRecord(record, policyName, auditUtil.getAttributeKey(attributeName));
44
+ userId = userId || env.getSystemUserIdentity(credentials.superUser).id;
45
+ userRole = userRole || userTypes.ICS;
46
+
47
+ const waiverModels = [];
48
+ let i = 0;
49
+ while (i < auditIds.length) {
50
+ const auditId = auditIds[i];
51
+ const waiveModel = new WaiveRequestModel({
52
+ contractorId: record.id,
53
+ auditId,
54
+ waiverReason,
55
+ remarks,
56
+ userId,
57
+ userRole
58
+ });
59
+ waiverModels.push(waiveModel);
60
+ i++;
61
+ }
62
+
63
+ return waiverModels;
64
+ };
65
+
66
+ const getWaiveModel = (
67
+ record,
68
+ policyName,
69
+ attributeName,
70
+ waiverReason,
71
+ remarks,
72
+ {
73
+ userId,
74
+ userRole,
75
+ auditId
76
+ } = {}) => {
77
+ return getAllWaiveModels(record, policyName, attributeName, waiverReason, remarks, { userId, userRole, auditId })[0];
78
+ };
79
+
80
+ // used by automation. has to return a single model
81
+ const getWaiveModelByGap = (
82
+ record,
83
+ policyName,
84
+ gap,
85
+ reason,
86
+ note,
87
+ {
88
+ userId,
89
+ userRole
90
+ } = {}) => {
91
+ const { attributeName, auditId } = auditUtil.getAttributeNameAndAuditIdByGap(record, policyName, gap);
92
+
93
+ return getWaiveModel(record, policyName, attributeName, reason, note, { userId, userRole, auditId });
94
+ };
95
+
96
+ const getRetractModel = (record, policyName, attributeName) => {
97
+ const auditIds = getPolicyAuditIdsFromRecord(record, policyName, auditUtil.getAttributeKey(attributeName));
98
+ const userId = env.getSystemUserIdentity(credentials.superUser).id;
99
+ const userRole = userTypes.ICS;
100
+
101
+ const retractModels = [];
102
+ for (const auditId of auditIds) {
103
+ const model = new RetractRequestModel({
104
+ contractorId: record.id,
105
+ auditId,
106
+ userId,
107
+ userRole
108
+ });
109
+ retractModels.push(model);
110
+ }
111
+ return retractModels.length > 1 ? retractModels : retractModels[0];
112
+ };
113
+
114
+ const getPolicyAuditIdsFromRecord = (record, policyName, attributeName) => {
115
+ const policy = record.reviewbyAuditor.find(contractorCoverage =>
116
+ contractorCoverage.insuranceName === policyName);
117
+
118
+ if (!policy) {
119
+ throw new Error(`Policy name: ${policyName} don't exist in record`);
120
+ }
121
+
122
+ const attributes = policy.errorList.filter(error => error.limitname === attributeName);
123
+
124
+ if (!attributes.length) {
125
+ throw new Error(`Attribute name: ${attributeName} don't exist in record`);
126
+ }
127
+
128
+ const auditIds = attributes.map(a => a.auditId);
129
+
130
+ return auditIds;
131
+ };
132
+
133
+ // private method - please refer to waiveAll / acceptAll
134
+ const overrideAll = async (record, reason, context, { note = 'OVERRIDDEN AUTOMATICALLY' } = {}) => {
135
+ let allWaivablePolicies = auditUtil.getAllWaivablePolicies(record, context);
136
+ // Remove duplicates, this can happen for example in case of multiple errors on Additional Insured, Certificate Holder or Additional Information
137
+ allWaivablePolicies = allWaivablePolicies.filter((value, index, self) =>
138
+ index === self.findIndex(t => (
139
+ t.policyName === value.policyName && t.attributeName === value.attributeName
140
+ ))
141
+ );
142
+
143
+ for (const waivable of allWaivablePolicies) {
144
+ const waiveModels = getAllWaiveModels(record, waivable.policyName, waivable.attributeName, reason, note);
145
+ for (const waiveModel of waiveModels) {
146
+ const waiveResponse = await overrideGap({ waiveRequestModel: waiveModel, context });
147
+
148
+ if (waiveResponse.status !== httpResponseStatusCodes.OK) {
149
+ throw Error(`Failed to waive ${waivable.policyName} - ${waivable.attributeName} for ${record.company}`);
150
+ }
151
+ }
152
+ }
153
+ };
154
+
155
+ const waiveAll = async (record, context, { reason = WAIVER_REASONS.BUSINESS_DECISION, note = 'WAIVED AUTOMATICALLY' } = {}) => {
156
+ if (reason === WAIVER_REASONS.ACCEPT_NO_EXPOSURE) {
157
+ throw Error('Invalid override gap reason to waive');
158
+ }
159
+
160
+ await overrideAll(record, reason, context, { note });
161
+ };
162
+
163
+ const acceptAll = async (record, context, { note = 'ACCEPTED AUTOMATICALLY' } = {}) => {
164
+ await overrideAll(record, WAIVER_REASONS.ACCEPT_NO_EXPOSURE, context, { note });
165
+ };
166
+
167
+ const getOverridesByRecordId = async function(recordId, context) {
168
+ const responseAudit = await overrideGapApi.getOverridesByRecordId(recordId, context);
169
+
170
+ if (responseAudit.status !== httpResponseStatusCodes.OK) {
171
+ throw Error(`Failed to get overrides by record id\n${responseAudit}`);
172
+ }
173
+
174
+ return responseAudit.data;
175
+ };
176
+
177
+ module.exports = {
178
+ waive,
179
+ waiveAll,
180
+ acceptAll,
181
+ retract,
182
+ getWaiveModel,
183
+ getAllWaiveModels,
184
+ getRetractModel,
185
+ getWaiveModelByGap,
186
+ overrideGap,
187
+ retractOverride,
188
+ getOverridesByRecordId
189
+ };