@getjones/test-infra 4.4.8 → 4.4.10

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 (226) 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 +195 -195
  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 +9 -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/userTypes.js +8 -8
  15. package/src/common/errorCodes.js +3 -3
  16. package/src/common/httpResponseStatusCodes.json +11 -11
  17. package/src/common/httpResponseTypes.json +2 -2
  18. package/src/common/requests/apiKeyAuth/requests.js +44 -44
  19. package/src/common/requests/cookieAuth/requests.js +40 -40
  20. package/src/common/requests/internalAuth/requests.js +48 -48
  21. package/src/common/requests/requestHandlers.js +80 -80
  22. package/src/common/utils/complianceUtil.js +114 -114
  23. package/src/common/utils/configsUtil.js +22 -22
  24. package/src/common/utils/dataTypeUtils.js +41 -41
  25. package/src/common/utils/numberUtils.js +22 -22
  26. package/src/common/utils/objectUtils.js +7 -7
  27. package/src/common/utils/timeUtils.js +177 -177
  28. package/src/common/validations/errorValidation.js +16 -16
  29. package/src/common/validations/typeValidations.js +36 -36
  30. package/src/defaults/configs/auditConfigs.js +124 -124
  31. package/src/defaults/configs/coverage.js +227 -227
  32. package/src/defaults/configs/polices.js +75 -75
  33. package/src/defaults/configs/requirement.js +32 -32
  34. package/src/defaults/index.js +6 -6
  35. package/src/env.js +57 -57
  36. package/src/factory/globalRecord/globalRecord.js +43 -43
  37. package/src/factory/index.js +8 -8
  38. package/src/factory/records/records.js +231 -231
  39. package/src/factory/users/users.js +77 -77
  40. package/src/index.js +95 -95
  41. package/src/saas/internal-api/accountDirectory/api/accountDirectory.api.js +50 -50
  42. package/src/saas/internal-api/accountDirectory/api/accountDirectory.service.js +182 -182
  43. package/src/saas/internal-api/accountDirectory/index.js +4 -4
  44. package/src/saas/internal-api/accountDirectory/models/accountDirectory.model.js +40 -40
  45. package/src/saas/internal-api/accounts/api/core/accounts.core.api.js +35 -35
  46. package/src/saas/internal-api/accounts/api/core/accounts.core.service.js +93 -93
  47. package/src/saas/internal-api/accounts/api/emailCustomization/accounts.email.customizations.api.js +29 -29
  48. package/src/saas/internal-api/accounts/api/emailCustomization/accounts.email.customizations.service.js +61 -61
  49. package/src/saas/internal-api/accounts/api/openapi/accounts.openapi.api.js +48 -48
  50. package/src/saas/internal-api/accounts/api/openapi/accounts.openapi.service.js +74 -74
  51. package/src/saas/internal-api/accounts/api/settings/settings.api.js +21 -21
  52. package/src/saas/internal-api/accounts/api/settings/settings.service.js +41 -41
  53. package/src/saas/internal-api/accounts/consts/consts.js +8 -8
  54. package/src/saas/internal-api/accounts/index.js +22 -22
  55. package/src/saas/internal-api/accounts/models/core/create.account.model.js +16 -16
  56. package/src/saas/internal-api/accounts/models/settings/update.settings.model.js +42 -42
  57. package/src/saas/internal-api/accounts/utils/utils.js +60 -59
  58. package/src/saas/internal-api/agreement/api/agreement.api.js +39 -39
  59. package/src/saas/internal-api/agreement/api/agreement.service.js +121 -121
  60. package/src/saas/internal-api/agreement/consts/consts.js +10 -10
  61. package/src/saas/internal-api/agreement/index.js +12 -12
  62. package/src/saas/internal-api/agreement/models/create.agreement.model.js +12 -12
  63. package/src/saas/internal-api/agreement/models/createAgreementByAuditorModel.js +11 -11
  64. package/src/saas/internal-api/agreement/models/createAgreementByPMModel.js +13 -13
  65. package/src/saas/internal-api/auditCustomerRules/api/customer.rules.api.js +43 -43
  66. package/src/saas/internal-api/auditCustomerRules/api/customer.rules.service.js +105 -105
  67. package/src/saas/internal-api/auditCustomerRules/consts/customer.rule.js +11 -11
  68. package/src/saas/internal-api/auditCustomerRules/index.js +6 -6
  69. package/src/saas/internal-api/auditCustomerRules/models/customer.rule.model.js +46 -46
  70. package/src/saas/internal-api/auditCustomerRules/utils/customer.rule.util.js +19 -19
  71. package/src/saas/internal-api/auditNotes/api/audit.notes.api.js +40 -40
  72. package/src/saas/internal-api/auditNotes/api/audit.notes.service.js +115 -115
  73. package/src/saas/internal-api/auditNotes/index.js +4 -4
  74. package/src/saas/internal-api/auditNotes/models/audit.note.model.js +30 -30
  75. package/src/saas/internal-api/auth/api/auth.api.js +27 -27
  76. package/src/saas/internal-api/auth/api/auth.service.js +90 -90
  77. package/src/saas/internal-api/auth/index.js +3 -3
  78. package/src/saas/internal-api/coi/api/coi.api.js +45 -45
  79. package/src/saas/internal-api/coi/api/coi.service.js +39 -39
  80. package/src/saas/internal-api/coi/consts/hashes.js +4 -4
  81. package/src/saas/internal-api/coi/consts/uploaderTypes.js +5 -5
  82. package/src/saas/internal-api/coi/index.js +14 -14
  83. package/src/saas/internal-api/coi/models/Combine.last.two.cois.model.js +25 -25
  84. package/src/saas/internal-api/coi/models/submit.coi.model.js +19 -19
  85. package/src/saas/internal-api/coi/utils/utils.js +117 -117
  86. package/src/saas/internal-api/compliance/api/audit/audit.api.js +115 -115
  87. package/src/saas/internal-api/compliance/api/audit/audit.service.js +300 -300
  88. package/src/saas/internal-api/compliance/api/convert/convert.api.js +17 -17
  89. package/src/saas/internal-api/compliance/api/convert/convert.service.js +11 -11
  90. package/src/saas/internal-api/compliance/api/coverage/coverage.api.js +33 -33
  91. package/src/saas/internal-api/compliance/api/coverage/coverage.service.js +48 -48
  92. package/src/saas/internal-api/compliance/api/overrideGap/override.gap.api.js +38 -38
  93. package/src/saas/internal-api/compliance/api/overrideGap/override.gap.service.js +182 -182
  94. package/src/saas/internal-api/compliance/consts/audit.js +110 -110
  95. package/src/saas/internal-api/compliance/index.js +33 -33
  96. package/src/saas/internal-api/compliance/models/audit/audit.model.js +96 -96
  97. package/src/saas/internal-api/compliance/models/waive/waive.model.js +49 -49
  98. package/src/saas/internal-api/compliance/utils/auditUtil.js +254 -254
  99. package/src/saas/internal-api/compliance/utils/coverageUtil.js +40 -40
  100. package/src/saas/internal-api/contractors/api/contractors.api.js +203 -203
  101. package/src/saas/internal-api/contractors/api/contractors.service.js +342 -342
  102. package/src/saas/internal-api/contractors/consts/consts.js +6 -6
  103. package/src/saas/internal-api/contractors/index.js +8 -8
  104. package/src/saas/internal-api/contractors/models/assign.requirement.model.js +10 -10
  105. package/src/saas/internal-api/contractors/models/edit.contractor.model.js +62 -62
  106. package/src/saas/internal-api/contractors/models/link.request.model.js +10 -10
  107. package/src/saas/internal-api/contractors/models/subscription.contractor.model.js +13 -13
  108. package/src/saas/internal-api/contractors/models/verification.contractor.model.js +27 -27
  109. package/src/saas/internal-api/contractors/utils.js +25 -25
  110. package/src/saas/internal-api/dashboard/api/recordList.api.js +38 -38
  111. package/src/saas/internal-api/dashboard/api/recordList.service.js +60 -60
  112. package/src/saas/internal-api/dashboard/index.js +5 -5
  113. package/src/saas/internal-api/dashboard/models/dashboard.filter.criteria.model.js +38 -38
  114. package/src/saas/internal-api/dbEmails/api/db.emails.api.js +25 -25
  115. package/src/saas/internal-api/dbEmails/api/db.emails.service.js +156 -156
  116. package/src/saas/internal-api/dbEmails/consts/consts.js +55 -55
  117. package/src/saas/internal-api/dbEmails/index.js +6 -6
  118. package/src/saas/internal-api/dbEmails/models/db.emails.model.js +22 -22
  119. package/src/saas/internal-api/dbEmails/utils/util.js +87 -87
  120. package/src/saas/internal-api/emailCustomization/api/email.customization.api.js +26 -26
  121. package/src/saas/internal-api/emailCustomization/api/email.customization.service.js +50 -50
  122. package/src/saas/internal-api/emailCustomization/index.js +3 -3
  123. package/src/saas/internal-api/globalRecord/api/global.record.api.js +101 -101
  124. package/src/saas/internal-api/globalRecord/api/global.record.service.js +117 -117
  125. package/src/saas/internal-api/globalRecord/consts.js +20 -20
  126. package/src/saas/internal-api/globalRecord/index.js +6 -6
  127. package/src/saas/internal-api/globalRecord/models/global.record.model.js +60 -60
  128. package/src/saas/internal-api/globalRecord/utils/util.js +161 -161
  129. package/src/saas/internal-api/homepageCharts/api/charts.api.js +12 -12
  130. package/src/saas/internal-api/homepageCharts/api/charts.service.js +7 -7
  131. package/src/saas/internal-api/homepageCharts/index.js +3 -3
  132. package/src/saas/internal-api/projects/api/core/projects.api.js +39 -39
  133. package/src/saas/internal-api/projects/api/core/projects.service.js +70 -70
  134. package/src/saas/internal-api/projects/api/settings/project.settings.api.js +18 -18
  135. package/src/saas/internal-api/projects/api/settings/project.settings.service.js +35 -35
  136. package/src/saas/internal-api/projects/consts/defaultProject.js +3 -3
  137. package/src/saas/internal-api/projects/index.js +24 -24
  138. package/src/saas/internal-api/projects/models/core/create.project.model.js +41 -41
  139. package/src/saas/internal-api/projects/models/core/update.project.model.js +47 -47
  140. package/src/saas/internal-api/projects/models/settings/update.project.settings.model.js +40 -40
  141. package/src/saas/internal-api/projects/utils/utils.js +155 -155
  142. package/src/saas/internal-api/recordHub/api/record.hub.api.js +14 -14
  143. package/src/saas/internal-api/recordHub/api/record.hub.service.js +21 -21
  144. package/src/saas/internal-api/recordHub/index.js +3 -3
  145. package/src/saas/internal-api/recordNotes/api/record.notes.api.js +38 -38
  146. package/src/saas/internal-api/recordNotes/api/record.notes.service.js +47 -47
  147. package/src/saas/internal-api/recordNotes/api/record.notes.utils.js +12 -12
  148. package/src/saas/internal-api/recordNotes/index.js +3 -3
  149. package/src/saas/internal-api/reports/api/reports.api.js +62 -62
  150. package/src/saas/internal-api/reports/api/reports.service.js +79 -79
  151. package/src/saas/internal-api/reports/consts/consts.js +74 -74
  152. package/src/saas/internal-api/reports/index.js +15 -15
  153. package/src/saas/internal-api/reports/models/report.model.js +27 -27
  154. package/src/saas/internal-api/requests/api/requests.api.js +120 -120
  155. package/src/saas/internal-api/requests/api/requests.service.js +272 -272
  156. package/src/saas/internal-api/requests/index.js +20 -20
  157. package/src/saas/internal-api/requests/models/create.request.model.js +33 -33
  158. package/src/saas/internal-api/requests/models/draft.request.criteria.model.js +18 -18
  159. package/src/saas/internal-api/requests/models/draft.request.report.model.js +14 -14
  160. package/src/saas/internal-api/requests/models/edit.request.model.js +31 -31
  161. package/src/saas/internal-api/requests/models/requestListCriteriaModel.js +17 -17
  162. package/src/saas/internal-api/requests/models/tenant.request.model.js +9 -9
  163. package/src/saas/internal-api/requests/utils.js +8 -8
  164. package/src/saas/internal-api/requestsTable/api/requests.table.api.js +20 -20
  165. package/src/saas/internal-api/requestsTable/api/requests.table.service.js +14 -14
  166. package/src/saas/internal-api/requestsTable/index.js +3 -3
  167. package/src/saas/internal-api/requirements/api/requirements.api.js +57 -57
  168. package/src/saas/internal-api/requirements/api/requirements.service.js +177 -177
  169. package/src/saas/internal-api/requirements/consts/attributeTypes.json +8 -8
  170. package/src/saas/internal-api/requirements/consts/consts.js +6 -6
  171. package/src/saas/internal-api/requirements/index.js +10 -10
  172. package/src/saas/internal-api/requirements/models/create.requirement.model.js +17 -17
  173. package/src/saas/internal-api/requirements/models/policy.model.js +35 -35
  174. package/src/saas/internal-api/requirements/models/update.requirement.model.js +19 -19
  175. package/src/saas/internal-api/requirements/utils/utils.js +129 -129
  176. package/src/saas/internal-api/serviceArea/api/coordinates.api.js +12 -12
  177. package/src/saas/internal-api/serviceArea/api/coordinates.service.js +7 -7
  178. package/src/saas/internal-api/serviceArea/index.js +4 -4
  179. package/src/saas/internal-api/serviceArea/utils/utils.js +8 -8
  180. package/src/saas/internal-api/tabs/api/tabs.api.js +32 -32
  181. package/src/saas/internal-api/tabs/api/tabs.service.js +54 -54
  182. package/src/saas/internal-api/tabs/index.js +3 -3
  183. package/src/saas/internal-api/tabs/models/tabs.model.js +19 -19
  184. package/src/saas/internal-api/thread-scheduler/runner.js +55 -55
  185. package/src/saas/internal-api/uploadFiles/api/upload.file.api.js +49 -49
  186. package/src/saas/internal-api/uploadFiles/api/upload.file.service.js +117 -117
  187. package/src/saas/internal-api/uploadFiles/consts.js +31 -31
  188. package/src/saas/internal-api/uploadFiles/index.js +11 -11
  189. package/src/saas/internal-api/uploadFiles/models/create.policy.file.model.js +11 -11
  190. package/src/saas/internal-api/users/api/tenantApp/tenant.app.api.js +38 -38
  191. package/src/saas/internal-api/users/api/tenantApp/tenant.app.service.js +108 -108
  192. package/src/saas/internal-api/users/api/users.api.js +127 -121
  193. package/src/saas/internal-api/users/api/users.service.js +225 -214
  194. package/src/saas/internal-api/users/index.js +16 -16
  195. package/src/saas/internal-api/users/models/create.inner.system.user.model.js +18 -18
  196. package/src/saas/internal-api/users/models/notification.settings.model.js +12 -12
  197. package/src/saas/internal-api/users/models/tenent.user.model.js +11 -11
  198. package/src/saas/internal-api/users/models/users.model.js +41 -41
  199. package/src/saas/internal-api/users/utils/util.js +39 -39
  200. package/src/saas/internal-api/vendorProfile/api/vendor.profile.api.js +20 -20
  201. package/src/saas/internal-api/vendorProfile/api/vendor.profile.service.js +14 -14
  202. package/src/saas/internal-api/vendorProfile/index.js +3 -3
  203. package/src/saas/openapi/accounts/accounts.api.js +17 -17
  204. package/src/saas/openapi/accounts/accounts.service.js +11 -11
  205. package/src/saas/openapi/coi/coi.api.js +30 -30
  206. package/src/saas/openapi/coi/coi.service.js +43 -43
  207. package/src/saas/openapi/projects/projects.api.js +83 -83
  208. package/src/saas/openapi/projects/projects.service.js +64 -64
  209. package/src/saas/openapi/requests/index.js +7 -7
  210. package/src/saas/openapi/requests/models/invite.request.model.js +40 -40
  211. package/src/saas/openapi/requests/models/update.request.model.js +35 -35
  212. package/src/saas/openapi/requests/requests.api.js +87 -87
  213. package/src/saas/openapi/requests/requests.service.js +81 -81
  214. package/src/saas/openapi/requirements/index.js +6 -6
  215. package/src/saas/openapi/requirements/models/copy.requirement.model.js +10 -10
  216. package/src/saas/openapi/requirements/requirements.api.js +41 -41
  217. package/src/saas/openapi/requirements/requirements.service.js +49 -49
  218. package/src/saas/openapi/tabs/index.js +6 -6
  219. package/src/saas/openapi/tabs/models/create.tab.model.js +6 -6
  220. package/src/saas/openapi/tabs/tabs.api.js +27 -27
  221. package/src/saas/openapi/tabs/tabs.service.js +19 -19
  222. package/src/saas/openapi/users/user.model.js +10 -10
  223. package/src/saas/openapi/users/users.api.js +33 -33
  224. package/src/saas/openapi/users/users.service.js +41 -41
  225. package/tests/env.test.js +40 -40
  226. package/tests/validation.test.js +83 -83
@@ -1,87 +1,87 @@
1
- const { EMAIL_SUBJECT } = require('../consts/consts');
2
-
3
- //compare method for sorting with ignore caseSensitive
4
- const compareFn = (a, b) => a.toLowerCase().localeCompare(b.toLowerCase());
5
-
6
- const compareUnorderedArrays = (arr, other, { caseSensitive = true } = {}) => {
7
- const isEachElementEqual = arr.sort(compareFn).every((mail, i) => {
8
- if (caseSensitive) {
9
- return mail === other.sort((compareFn))[i];
10
- } else {
11
- return mail.toLowerCase() === other.sort(compareFn)[i].toLowerCase();
12
- }
13
- });
14
- return arr.length === other.length && isEachElementEqual;
15
- };
16
-
17
- const recipientsMatchVerification = (expectedRecipients, actualRecipients) => {
18
- const caseSensitive = false;
19
-
20
- return expectedRecipients.from.includes(actualRecipients.from) && // For some emails can be few sendor options (ex: branded emails)
21
- compareUnorderedArrays(actualRecipients.to, expectedRecipients.to, { caseSensitive }) &&
22
- compareUnorderedArrays(actualRecipients.cc, expectedRecipients.cc, { caseSensitive });
23
- };
24
-
25
- const regexVerification = (message, regex, { returnType } = {}) => {
26
- const capturingGroupsArr = message.match(regex);
27
-
28
- if (!capturingGroupsArr || capturingGroupsArr.length < 1) {
29
- return null;
30
- }
31
-
32
- const capturingGroups = capturingGroupsArr[capturingGroupsArr.length - 1];
33
-
34
- if (!capturingGroups || capturingGroups.length < 2) {
35
- return null;
36
- }
37
-
38
- switch (returnType) {
39
- case 'url':
40
- return typeof capturingGroups === 'string' ? capturingGroups : capturingGroups[capturingGroups.length - 1];
41
- case 'body':
42
- return message;
43
- default:
44
- return 'Bad "returnType" argument';
45
- }
46
- };
47
-
48
- const extractEmailFromNameAndEmailFormat = str => {
49
- // In case the format is 'First Last <username@domain.com>' we will return username@domain.com only
50
- return str.split('<').pop().split('>')[0];
51
- };
52
- const logRetrievedEmailInfo = (to, subject, { cc } = {}) => {
53
- let log = 'The following email retrieved and will be sent to trash:';
54
- log += `\n| To: ${to}`;
55
- cc ? log += `\n| Cc: ${cc}` : '';
56
- log += `\n| Subject: ${subject}`;
57
- };
58
-
59
- const getEmailTextInSubject = (recordCompanyName, emailType, isAfterUpdateRequirements = false, { requesterName = 'Default' } = {}) => {
60
- const subject = EMAIL_SUBJECT[emailType]({ recordCompanyName, requesterName });
61
-
62
- return isAfterUpdateRequirements ? `Updated Requirements - ${subject}` : subject;
63
- };
64
-
65
- const getMailActionButtonUrlRegex = () => {
66
- return /(https:\/\/[a-zA-Z0-9.].*[a-zA-Z.]+\/CheckCustomersInviteLinkJSON\?data=[^"]+)/g;
67
- };
68
-
69
- const getUnsubscribeButtonUrlRegex = () => {
70
- return /(\/[a-zA-Z0-9.].*[a-zA-Z.]+\/vendor-app\/email\/unsubscribe\?data=[^"]+)/g;
71
- };
72
-
73
- const getEncryptedDataFromLink = (link, { removeLastTwoCharts } = {}) => {
74
- const encryptedData = link.split('data=').pop();
75
- return removeLastTwoCharts ? encryptedData.slice(0, -2) : encryptedData;
76
- };
77
-
78
- module.exports = {
79
- recipientsMatchVerification,
80
- regexVerification,
81
- extractEmailFromNameAndEmailFormat,
82
- logRetrievedEmailInfo,
83
- getEmailTextInSubject,
84
- getMailActionButtonUrlRegex,
85
- getUnsubscribeButtonUrlRegex,
86
- getEncryptedDataFromLink
87
- };
1
+ const { EMAIL_SUBJECT } = require('../consts/consts');
2
+
3
+ //compare method for sorting with ignore caseSensitive
4
+ const compareFn = (a, b) => a.toLowerCase().localeCompare(b.toLowerCase());
5
+
6
+ const compareUnorderedArrays = (arr, other, { caseSensitive = true } = {}) => {
7
+ const isEachElementEqual = arr.sort(compareFn).every((mail, i) => {
8
+ if (caseSensitive) {
9
+ return mail === other.sort((compareFn))[i];
10
+ } else {
11
+ return mail.toLowerCase() === other.sort(compareFn)[i].toLowerCase();
12
+ }
13
+ });
14
+ return arr.length === other.length && isEachElementEqual;
15
+ };
16
+
17
+ const recipientsMatchVerification = (expectedRecipients, actualRecipients) => {
18
+ const caseSensitive = false;
19
+
20
+ return expectedRecipients.from.includes(actualRecipients.from) && // For some emails can be few sendor options (ex: branded emails)
21
+ compareUnorderedArrays(actualRecipients.to, expectedRecipients.to, { caseSensitive }) &&
22
+ compareUnorderedArrays(actualRecipients.cc, expectedRecipients.cc, { caseSensitive });
23
+ };
24
+
25
+ const regexVerification = (message, regex, { returnType } = {}) => {
26
+ const capturingGroupsArr = message.match(regex);
27
+
28
+ if (!capturingGroupsArr || capturingGroupsArr.length < 1) {
29
+ return null;
30
+ }
31
+
32
+ const capturingGroups = capturingGroupsArr[capturingGroupsArr.length - 1];
33
+
34
+ if (!capturingGroups || capturingGroups.length < 2) {
35
+ return null;
36
+ }
37
+
38
+ switch (returnType) {
39
+ case 'url':
40
+ return typeof capturingGroups === 'string' ? capturingGroups : capturingGroups[capturingGroups.length - 1];
41
+ case 'body':
42
+ return message;
43
+ default:
44
+ return 'Bad "returnType" argument';
45
+ }
46
+ };
47
+
48
+ const extractEmailFromNameAndEmailFormat = str => {
49
+ // In case the format is 'First Last <username@domain.com>' we will return username@domain.com only
50
+ return str.split('<').pop().split('>')[0];
51
+ };
52
+ const logRetrievedEmailInfo = (to, subject, { cc } = {}) => {
53
+ let log = 'The following email retrieved and will be sent to trash:';
54
+ log += `\n| To: ${to}`;
55
+ cc ? log += `\n| Cc: ${cc}` : '';
56
+ log += `\n| Subject: ${subject}`;
57
+ };
58
+
59
+ const getEmailTextInSubject = (recordCompanyName, emailType, isAfterUpdateRequirements = false, { requesterName = 'Default' } = {}) => {
60
+ const subject = EMAIL_SUBJECT[emailType]({ recordCompanyName, requesterName });
61
+
62
+ return isAfterUpdateRequirements ? `Updated Requirements - ${subject}` : subject;
63
+ };
64
+
65
+ const getMailActionButtonUrlRegex = () => {
66
+ return /(https:\/\/[a-zA-Z0-9.].*[a-zA-Z.]+\/CheckCustomersInviteLinkJSON\?data=[^"]+)/g;
67
+ };
68
+
69
+ const getUnsubscribeButtonUrlRegex = () => {
70
+ return /(\/[a-zA-Z0-9.].*[a-zA-Z.]+\/vendor-app\/email\/unsubscribe\?data=[^"]+)/g;
71
+ };
72
+
73
+ const getEncryptedDataFromLink = (link, { removeLastTwoCharts } = {}) => {
74
+ const encryptedData = link.split('data=').pop();
75
+ return removeLastTwoCharts ? encryptedData.slice(0, -2) : encryptedData;
76
+ };
77
+
78
+ module.exports = {
79
+ recipientsMatchVerification,
80
+ regexVerification,
81
+ extractEmailFromNameAndEmailFormat,
82
+ logRetrievedEmailInfo,
83
+ getEmailTextInSubject,
84
+ getMailActionButtonUrlRegex,
85
+ getUnsubscribeButtonUrlRegex,
86
+ getEncryptedDataFromLink
87
+ };
@@ -1,26 +1,26 @@
1
- const requests = require('../../../../common/requests/cookieAuth/requests');
2
- const { backendUrl } = require('../../../../env').getEnv();
3
-
4
- const Endpoints = {
5
- getCustomizationsByAccountId: accountId => `${backendUrl}/saas/email-customizations?accountId=${accountId}`,
6
- restoreDefaultById: id => `${backendUrl}/saas/email-customization/${id}/restore?version=DEFAULT`,
7
- deletePermanentlyById: id => `${backendUrl}/saas/email-customization/${id}/permanently`
8
- };
9
-
10
- const getEmailCustomizationsByAccountId = (accountId, context) => {
11
- return requests.getRequestHandler(Endpoints.getCustomizationsByAccountId(accountId), {}, context);
12
- };
13
-
14
- const restoreDefaultById = (id, context) => {
15
- return requests.postRequestHandler(Endpoints.restoreDefaultById(id), {}, context);
16
- };
17
-
18
- const deleteEmailCustomizationPermanentlyById = (id, context) => {
19
- return requests.deleteRequestHandler(Endpoints.deletePermanentlyById(id), context);
20
- };
21
-
22
- module.exports = {
23
- getEmailCustomizationsByAccountId,
24
- restoreDefaultById,
25
- deleteEmailCustomizationPermanentlyById
26
- };
1
+ const requests = require('../../../../common/requests/cookieAuth/requests');
2
+ const { backendUrl } = require('../../../../env').getEnv();
3
+
4
+ const Endpoints = {
5
+ getCustomizationsByAccountId: accountId => `${backendUrl}/saas/email-customizations?accountId=${accountId}`,
6
+ restoreDefaultById: id => `${backendUrl}/saas/email-customization/${id}/restore?version=DEFAULT`,
7
+ deletePermanentlyById: id => `${backendUrl}/saas/email-customization/${id}/permanently`
8
+ };
9
+
10
+ const getEmailCustomizationsByAccountId = (accountId, context) => {
11
+ return requests.getRequestHandler(Endpoints.getCustomizationsByAccountId(accountId), {}, context);
12
+ };
13
+
14
+ const restoreDefaultById = (id, context) => {
15
+ return requests.postRequestHandler(Endpoints.restoreDefaultById(id), {}, context);
16
+ };
17
+
18
+ const deleteEmailCustomizationPermanentlyById = (id, context) => {
19
+ return requests.deleteRequestHandler(Endpoints.deletePermanentlyById(id), context);
20
+ };
21
+
22
+ module.exports = {
23
+ getEmailCustomizationsByAccountId,
24
+ restoreDefaultById,
25
+ deleteEmailCustomizationPermanentlyById
26
+ };
@@ -1,50 +1,50 @@
1
- const httpResponseStatusCodes = require('../../../../common/httpResponseStatusCodes.json');
2
-
3
- const emailCustomizationApi = require('./email.customization.api');
4
-
5
- const getEmailCustomizationsByAccountId = async (accountId, context) => {
6
- const response = await emailCustomizationApi.getEmailCustomizationsByAccountId(accountId, context);
7
-
8
- if (response.status !== httpResponseStatusCodes.OK) {
9
- throw new Error(`Failed to get email customization by account id ${accountId}`);
10
- }
11
-
12
- return response.data;
13
- };
14
-
15
- const restoreDefaultById = async (id, context) => {
16
- const response = await emailCustomizationApi.restoreDefaultById(id, context);
17
-
18
- if (response.status !== httpResponseStatusCodes.OK) {
19
- throw new Error('Failed to restore email customization to default');
20
- }
21
-
22
- return response;
23
- };
24
-
25
- const deleteEmailCustomizationPermanentlyById = async (id, context) => {
26
- const response = await emailCustomizationApi.deleteEmailCustomizationPermanentlyById(id, context);
27
-
28
- if (response.status !== httpResponseStatusCodes.OK) {
29
- throw new Error(`Failed to delete email customization by id ${id}`);
30
- }
31
-
32
- return response;
33
- };
34
-
35
- const restoreAllEmailCustomizationsInAccount = async (accountId, context) => {
36
- const customizationList = await getEmailCustomizationsByAccountId(accountId, context);
37
-
38
- for (const customization of customizationList) {
39
- if (customization.id) {
40
- await restoreDefaultById(customization.id, context);
41
- }
42
- }
43
- };
44
-
45
- module.exports = {
46
- getEmailCustomizationsByAccountId,
47
- restoreDefaultById,
48
- deleteEmailCustomizationPermanentlyById,
49
- restoreAllEmailCustomizationsInAccount
50
- };
1
+ const httpResponseStatusCodes = require('../../../../common/httpResponseStatusCodes.json');
2
+
3
+ const emailCustomizationApi = require('./email.customization.api');
4
+
5
+ const getEmailCustomizationsByAccountId = async (accountId, context) => {
6
+ const response = await emailCustomizationApi.getEmailCustomizationsByAccountId(accountId, context);
7
+
8
+ if (response.status !== httpResponseStatusCodes.OK) {
9
+ throw new Error(`Failed to get email customization by account id ${accountId}`);
10
+ }
11
+
12
+ return response.data;
13
+ };
14
+
15
+ const restoreDefaultById = async (id, context) => {
16
+ const response = await emailCustomizationApi.restoreDefaultById(id, context);
17
+
18
+ if (response.status !== httpResponseStatusCodes.OK) {
19
+ throw new Error('Failed to restore email customization to default');
20
+ }
21
+
22
+ return response;
23
+ };
24
+
25
+ const deleteEmailCustomizationPermanentlyById = async (id, context) => {
26
+ const response = await emailCustomizationApi.deleteEmailCustomizationPermanentlyById(id, context);
27
+
28
+ if (response.status !== httpResponseStatusCodes.OK) {
29
+ throw new Error(`Failed to delete email customization by id ${id}`);
30
+ }
31
+
32
+ return response;
33
+ };
34
+
35
+ const restoreAllEmailCustomizationsInAccount = async (accountId, context) => {
36
+ const customizationList = await getEmailCustomizationsByAccountId(accountId, context);
37
+
38
+ for (const customization of customizationList) {
39
+ if (customization.id) {
40
+ await restoreDefaultById(customization.id, context);
41
+ }
42
+ }
43
+ };
44
+
45
+ module.exports = {
46
+ getEmailCustomizationsByAccountId,
47
+ restoreDefaultById,
48
+ deleteEmailCustomizationPermanentlyById,
49
+ restoreAllEmailCustomizationsInAccount
50
+ };
@@ -1,3 +1,3 @@
1
- const services = require('./api/email.customization.service');
2
-
3
- module.exports = { services };
1
+ const services = require('./api/email.customization.service');
2
+
3
+ module.exports = { services };
@@ -1,101 +1,101 @@
1
- const requests = require('../../../../common/requests/cookieAuth/requests');
2
- const internalRequests = require('../../../../common/requests/internalAuth/requests');
3
-
4
- const { nodeBackendUrl, backendUrl } = require('../../../../env').getEnv();
5
-
6
- const Endpoints = {
7
- createGlobalRecord: `${nodeBackendUrl}/global-record`,
8
- getGlobalRecordById: id => `${nodeBackendUrl}/global-record/id/${id}`,
9
- getAllGlobalRecords: (pageNumber, itemsInPage) => `${nodeBackendUrl}/global-record/all-global-records/${pageNumber}/items/${itemsInPage}`,
10
- getGlobalRecordServiceAreas: `${backendUrl}/saas/global-record/service-areas`,
11
- deleteGlobalRecord: id => `${nodeBackendUrl}/global-record/id/${id}`,
12
- updateGlobalRecord: id => `${nodeBackendUrl}/global-record/id/${id}`,
13
- getGlobalRecordProfile: id => `${nodeBackendUrl}/global-record/record-profile/id/${id}`,
14
- getGlobalRecordProfileDetails: (recordId, projectId) => `${backendUrl}/saas/vendorProfile/data/record/${recordId}/project/${projectId}`,
15
- getGlobalRecordByPolicyNumber: policyNumber => `${nodeBackendUrl}/global-record/policyNumber/${policyNumber}`,
16
- publishGlobalRecord: `${backendUrl}/saas/global-record/publish`,
17
- getGlobalRecordLinkedRecords: id => `${backendUrl}/saas/global-record/${id}/linked-records`,
18
- splitToNewGlobalRecord: `${backendUrl}/saas/global-record/split-to-new`,
19
- splitToExistingRecord: `${backendUrl}/saas/global-record/split-to-existing`,
20
- getGlobalByRecordId: recordId => `${backendUrl}/saas/global-record/${recordId}`,
21
- dismiss: `${backendUrl}/saas/global-record/dismiss`
22
- };
23
-
24
- const getGlobalRecord = id => {
25
- return internalRequests.getRequestHandler(Endpoints.getGlobalRecordById(id));
26
- };
27
-
28
- const createGlobalRecord = globalRecord => {
29
- return internalRequests.postRequestHandler(Endpoints.createGlobalRecord, globalRecord);
30
- };
31
-
32
- const getAllGlobalRecords = (data, pageNumber, itemsInPage, context) => {
33
- return requests.postRequestHandler(Endpoints.getAllGlobalRecords(pageNumber, itemsInPage), data, context);
34
- };
35
-
36
- const deleteGlobalRecord = (id, globalRecordModel) => {
37
- return internalRequests.deleteRequestHandler(Endpoints.deleteGlobalRecord(id), {}, {}, globalRecordModel);
38
- };
39
-
40
- const updateGlobalRecord = (id, updatedGlobalRecord) => {
41
- return internalRequests.putRequestHandler(Endpoints.updateGlobalRecord(id), updatedGlobalRecord);
42
- };
43
-
44
- const getGlobalRecordServiceAreas = context => {
45
- return requests.getRequestHandler(Endpoints.getGlobalRecordServiceAreas, {}, context);
46
- };
47
-
48
- const getGlobalRecordProfile = (id, context) => {
49
- return requests.getRequestHandler(Endpoints.getGlobalRecordProfile(id), {}, context);
50
- };
51
-
52
- const getGlobalRecordProfileDetails = (recordId, projectId, context) => {
53
- return requests.getRequestHandler(Endpoints.getGlobalRecordProfileDetails(recordId, projectId), {}, context);
54
- };
55
-
56
- const publishGlobalRecord = (globalRecordDetails, context) => {
57
- return requests.putRequestHandler(Endpoints.publishGlobalRecord, globalRecordDetails, context);
58
- };
59
-
60
- const getGlobalRecordByPolicyNumber = policyNumber => {
61
- return internalRequests.getRequestHandler(Endpoints.getGlobalRecordByPolicyNumber(policyNumber));
62
- };
63
-
64
- const getGlobalRecordLinkedRecords = (id, context) => {
65
- return requests.getRequestHandler(Endpoints.getGlobalRecordLinkedRecords(id), {}, context);
66
- };
67
-
68
- const splitToNewGlobalRecord = ({ recordId, glPolicyNumber }, context) => {
69
- return requests.postRequestHandler(Endpoints.splitToNewGlobalRecord, { recordId, glPolicyNumber }, context);
70
- };
71
-
72
- const splitToExistGlobalRecord = ({ recordId, glPolicyNumber, newGlobalRecordId }, context) => {
73
- return requests.putRequestHandler(Endpoints.splitToExistingRecord, { recordId, glPolicyNumber, newGlobalRecordId }, context);
74
- };
75
-
76
- const getGlobalRecordByRecordId = (recordId, context) => {
77
- return requests.getRequestHandler(Endpoints.getGlobalByRecordId(recordId), {}, context);
78
- };
79
-
80
- const dismissGlobalChanges = (id, context) => {
81
- const body = { id, userName: 'Main Operator' };
82
- return requests.putRequestHandler(Endpoints.dismiss, body, context);
83
- };
84
-
85
- module.exports = {
86
- createGlobalRecord,
87
- getGlobalRecord,
88
- getAllGlobalRecords,
89
- getGlobalRecordServiceAreas,
90
- deleteGlobalRecord,
91
- updateGlobalRecord,
92
- getGlobalRecordProfile,
93
- getGlobalRecordProfileDetails,
94
- getGlobalRecordByPolicyNumber,
95
- publishGlobalRecord,
96
- getGlobalRecordLinkedRecords,
97
- splitToNewGlobalRecord,
98
- splitToExistGlobalRecord,
99
- getGlobalRecordByRecordId,
100
- dismissGlobalChanges
101
- };
1
+ const requests = require('../../../../common/requests/cookieAuth/requests');
2
+ const internalRequests = require('../../../../common/requests/internalAuth/requests');
3
+
4
+ const { nodeBackendUrl, backendUrl } = require('../../../../env').getEnv();
5
+
6
+ const Endpoints = {
7
+ createGlobalRecord: `${nodeBackendUrl}/global-record`,
8
+ getGlobalRecordById: id => `${nodeBackendUrl}/global-record/id/${id}`,
9
+ getAllGlobalRecords: (pageNumber, itemsInPage) => `${nodeBackendUrl}/global-record/all-global-records/${pageNumber}/items/${itemsInPage}`,
10
+ getGlobalRecordServiceAreas: `${backendUrl}/saas/global-record/service-areas`,
11
+ deleteGlobalRecord: id => `${nodeBackendUrl}/global-record/id/${id}`,
12
+ updateGlobalRecord: id => `${nodeBackendUrl}/global-record/id/${id}`,
13
+ getGlobalRecordProfile: id => `${nodeBackendUrl}/global-record/record-profile/id/${id}`,
14
+ getGlobalRecordProfileDetails: (recordId, projectId) => `${backendUrl}/saas/vendorProfile/data/record/${recordId}/project/${projectId}`,
15
+ getGlobalRecordByPolicyNumber: policyNumber => `${nodeBackendUrl}/global-record/policyNumber/${policyNumber}`,
16
+ publishGlobalRecord: `${backendUrl}/saas/global-record/publish`,
17
+ getGlobalRecordLinkedRecords: id => `${backendUrl}/saas/global-record/${id}/linked-records`,
18
+ splitToNewGlobalRecord: `${backendUrl}/saas/global-record/split-to-new`,
19
+ splitToExistingRecord: `${backendUrl}/saas/global-record/split-to-existing`,
20
+ getGlobalByRecordId: recordId => `${backendUrl}/saas/global-record/${recordId}`,
21
+ dismiss: `${backendUrl}/saas/global-record/dismiss`
22
+ };
23
+
24
+ const getGlobalRecord = id => {
25
+ return internalRequests.getRequestHandler(Endpoints.getGlobalRecordById(id));
26
+ };
27
+
28
+ const createGlobalRecord = globalRecord => {
29
+ return internalRequests.postRequestHandler(Endpoints.createGlobalRecord, globalRecord);
30
+ };
31
+
32
+ const getAllGlobalRecords = (data, pageNumber, itemsInPage, context) => {
33
+ return requests.postRequestHandler(Endpoints.getAllGlobalRecords(pageNumber, itemsInPage), data, context);
34
+ };
35
+
36
+ const deleteGlobalRecord = (id, globalRecordModel) => {
37
+ return internalRequests.deleteRequestHandler(Endpoints.deleteGlobalRecord(id), {}, {}, globalRecordModel);
38
+ };
39
+
40
+ const updateGlobalRecord = (id, updatedGlobalRecord) => {
41
+ return internalRequests.putRequestHandler(Endpoints.updateGlobalRecord(id), updatedGlobalRecord);
42
+ };
43
+
44
+ const getGlobalRecordServiceAreas = context => {
45
+ return requests.getRequestHandler(Endpoints.getGlobalRecordServiceAreas, {}, context);
46
+ };
47
+
48
+ const getGlobalRecordProfile = (id, context) => {
49
+ return requests.getRequestHandler(Endpoints.getGlobalRecordProfile(id), {}, context);
50
+ };
51
+
52
+ const getGlobalRecordProfileDetails = (recordId, projectId, context) => {
53
+ return requests.getRequestHandler(Endpoints.getGlobalRecordProfileDetails(recordId, projectId), {}, context);
54
+ };
55
+
56
+ const publishGlobalRecord = (globalRecordDetails, context) => {
57
+ return requests.putRequestHandler(Endpoints.publishGlobalRecord, globalRecordDetails, context);
58
+ };
59
+
60
+ const getGlobalRecordByPolicyNumber = policyNumber => {
61
+ return internalRequests.getRequestHandler(Endpoints.getGlobalRecordByPolicyNumber(policyNumber));
62
+ };
63
+
64
+ const getGlobalRecordLinkedRecords = (id, context) => {
65
+ return requests.getRequestHandler(Endpoints.getGlobalRecordLinkedRecords(id), {}, context);
66
+ };
67
+
68
+ const splitToNewGlobalRecord = ({ recordId, glPolicyNumber }, context) => {
69
+ return requests.postRequestHandler(Endpoints.splitToNewGlobalRecord, { recordId, glPolicyNumber }, context);
70
+ };
71
+
72
+ const splitToExistGlobalRecord = ({ recordId, glPolicyNumber, newGlobalRecordId }, context) => {
73
+ return requests.putRequestHandler(Endpoints.splitToExistingRecord, { recordId, glPolicyNumber, newGlobalRecordId }, context);
74
+ };
75
+
76
+ const getGlobalRecordByRecordId = (recordId, context) => {
77
+ return requests.getRequestHandler(Endpoints.getGlobalByRecordId(recordId), {}, context);
78
+ };
79
+
80
+ const dismissGlobalChanges = (id, context) => {
81
+ const body = { id, userName: 'Main Operator' };
82
+ return requests.putRequestHandler(Endpoints.dismiss, body, context);
83
+ };
84
+
85
+ module.exports = {
86
+ createGlobalRecord,
87
+ getGlobalRecord,
88
+ getAllGlobalRecords,
89
+ getGlobalRecordServiceAreas,
90
+ deleteGlobalRecord,
91
+ updateGlobalRecord,
92
+ getGlobalRecordProfile,
93
+ getGlobalRecordProfileDetails,
94
+ getGlobalRecordByPolicyNumber,
95
+ publishGlobalRecord,
96
+ getGlobalRecordLinkedRecords,
97
+ splitToNewGlobalRecord,
98
+ splitToExistGlobalRecord,
99
+ getGlobalRecordByRecordId,
100
+ dismissGlobalChanges
101
+ };