@getjones/test-infra 2.11.1 → 2.11.3

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 (193) 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 +102 -102
  5. package/src/common/consts/dashboardCharts.js +18 -18
  6. package/src/common/consts/recordTypes.js +5 -5
  7. package/src/common/consts/s3FileTypes.js +11 -11
  8. package/src/common/consts/userTypes.js +8 -8
  9. package/src/common/httpResponseStatusCodes.json +11 -11
  10. package/src/common/requests/apiKeyAuth/requests.js +44 -44
  11. package/src/common/requests/cookieAuth/requests.js +40 -40
  12. package/src/common/requests/requestHandlers.js +78 -78
  13. package/src/common/utils/complianceUtil.js +83 -83
  14. package/src/common/utils/configsUtil.js +22 -22
  15. package/src/common/utils/dataTypeUtils.js +41 -41
  16. package/src/common/utils/numberUtils.js +22 -22
  17. package/src/common/utils/objectUtils.js +7 -7
  18. package/src/common/utils/timeUtils.js +177 -177
  19. package/src/common/validations/errorValidation.js +16 -16
  20. package/src/common/validations/typeValidations.js +36 -36
  21. package/src/defaults/configs/auditConfigs.js +91 -91
  22. package/src/defaults/configs/coverage.js +227 -227
  23. package/src/defaults/configs/polices.js +54 -54
  24. package/src/defaults/configs/requirement.js +32 -32
  25. package/src/defaults/index.js +6 -6
  26. package/src/env.js +57 -57
  27. package/src/factory/globalRecord/globalRecord.js +70 -70
  28. package/src/factory/index.js +8 -8
  29. package/src/factory/records/records.js +128 -128
  30. package/src/factory/users/users.js +77 -77
  31. package/src/index.js +89 -89
  32. package/src/saas/internal-api/accounts/api/core/accounts.core.api.js +28 -28
  33. package/src/saas/internal-api/accounts/api/core/accounts.core.service.js +82 -82
  34. package/src/saas/internal-api/accounts/api/openapi/accounts.openapi.api.js +48 -48
  35. package/src/saas/internal-api/accounts/api/openapi/accounts.openapi.service.js +74 -74
  36. package/src/saas/internal-api/accounts/api/settings/settings.api.js +21 -21
  37. package/src/saas/internal-api/accounts/api/settings/settings.service.js +41 -41
  38. package/src/saas/internal-api/accounts/consts/consts.js +6 -6
  39. package/src/saas/internal-api/accounts/index.js +20 -20
  40. package/src/saas/internal-api/accounts/models/core/create.account.model.js +16 -16
  41. package/src/saas/internal-api/accounts/models/settings/update.settings.model.js +38 -38
  42. package/src/saas/internal-api/accounts/utils/utils.js +58 -58
  43. package/src/saas/internal-api/agreement/api/agreement.api.js +35 -35
  44. package/src/saas/internal-api/agreement/api/agreement.service.js +67 -67
  45. package/src/saas/internal-api/agreement/consts/consts.js +8 -8
  46. package/src/saas/internal-api/agreement/index.js +11 -11
  47. package/src/saas/internal-api/agreement/models/create.agreement.model.js +12 -12
  48. package/src/saas/internal-api/auditNotes/api/audit.notes.api.js +40 -40
  49. package/src/saas/internal-api/auditNotes/api/audit.notes.service.js +115 -115
  50. package/src/saas/internal-api/auditNotes/index.js +4 -4
  51. package/src/saas/internal-api/auditNotes/models/audit.note.model.js +30 -30
  52. package/src/saas/internal-api/auth/api/auth.api.js +27 -27
  53. package/src/saas/internal-api/auth/api/auth.service.js +90 -90
  54. package/src/saas/internal-api/auth/index.js +3 -3
  55. package/src/saas/internal-api/coi/api/coi.api.js +34 -34
  56. package/src/saas/internal-api/coi/api/coi.service.js +22 -22
  57. package/src/saas/internal-api/coi/consts/uploaderTypes.js +5 -5
  58. package/src/saas/internal-api/coi/index.js +13 -13
  59. package/src/saas/internal-api/coi/models/submit.coi.model.js +9 -9
  60. package/src/saas/internal-api/coi/utils/utils.js +48 -48
  61. package/src/saas/internal-api/compliance/api/audit/audit.api.js +96 -96
  62. package/src/saas/internal-api/compliance/api/audit/audit.service.js +219 -219
  63. package/src/saas/internal-api/compliance/api/convert/convert.api.js +17 -17
  64. package/src/saas/internal-api/compliance/api/convert/convert.service.js +11 -11
  65. package/src/saas/internal-api/compliance/api/coverage/coverage.api.js +33 -33
  66. package/src/saas/internal-api/compliance/api/coverage/coverage.service.js +48 -48
  67. package/src/saas/internal-api/compliance/api/overrideGap/override.gap.api.js +33 -33
  68. package/src/saas/internal-api/compliance/api/overrideGap/override.gap.service.js +141 -141
  69. package/src/saas/internal-api/compliance/consts/audit.js +102 -102
  70. package/src/saas/internal-api/compliance/index.js +33 -33
  71. package/src/saas/internal-api/compliance/models/audit/audit.model.js +94 -94
  72. package/src/saas/internal-api/compliance/models/waive/waive.model.js +49 -49
  73. package/src/saas/internal-api/compliance/utils/auditUtil.js +222 -222
  74. package/src/saas/internal-api/compliance/utils/coverageUtil.js +40 -40
  75. package/src/saas/internal-api/contractors/api/contractors.api.js +166 -166
  76. package/src/saas/internal-api/contractors/api/contractors.service.js +211 -199
  77. package/src/saas/internal-api/contractors/consts/consts.js +6 -6
  78. package/src/saas/internal-api/contractors/index.js +9 -9
  79. package/src/saas/internal-api/contractors/models/assign.requirement.model.js +10 -10
  80. package/src/saas/internal-api/contractors/models/create.contractor.model.js +22 -22
  81. package/src/saas/internal-api/contractors/models/edit.contractor.model.js +60 -60
  82. package/src/saas/internal-api/contractors/models/verification.contractor.model.js +27 -27
  83. package/src/saas/internal-api/dashboard/api/recordList.api.js +38 -38
  84. package/src/saas/internal-api/dashboard/api/recordList.service.js +60 -60
  85. package/src/saas/internal-api/dashboard/index.js +5 -5
  86. package/src/saas/internal-api/dashboard/models/dashboard.filter.criteria.model.js +38 -38
  87. package/src/saas/internal-api/dbEmails/api/db.emails.api.js +25 -25
  88. package/src/saas/internal-api/dbEmails/api/db.emails.service.js +147 -147
  89. package/src/saas/internal-api/dbEmails/consts/consts.js +53 -53
  90. package/src/saas/internal-api/dbEmails/index.js +6 -6
  91. package/src/saas/internal-api/dbEmails/models/db.emails.model.js +22 -22
  92. package/src/saas/internal-api/dbEmails/utils/util.js +82 -82
  93. package/src/saas/internal-api/emailCustomization/api/email.customization.api.js +26 -26
  94. package/src/saas/internal-api/emailCustomization/api/email.customization.service.js +50 -50
  95. package/src/saas/internal-api/emailCustomization/index.js +3 -3
  96. package/src/saas/internal-api/globalRecord/api/global.record.api.js +95 -95
  97. package/src/saas/internal-api/globalRecord/api/global.record.service.js +106 -106
  98. package/src/saas/internal-api/globalRecord/consts.js +20 -20
  99. package/src/saas/internal-api/globalRecord/index.js +6 -6
  100. package/src/saas/internal-api/globalRecord/models/global.record.model.js +60 -60
  101. package/src/saas/internal-api/globalRecord/utils/util.js +161 -161
  102. package/src/saas/internal-api/homepageCharts/api/charts.api.js +12 -12
  103. package/src/saas/internal-api/homepageCharts/api/charts.service.js +7 -7
  104. package/src/saas/internal-api/homepageCharts/index.js +3 -3
  105. package/src/saas/internal-api/projects/api/core/projects.api.js +39 -39
  106. package/src/saas/internal-api/projects/api/core/projects.service.js +65 -65
  107. package/src/saas/internal-api/projects/api/settings/project.settings.api.js +18 -18
  108. package/src/saas/internal-api/projects/api/settings/project.settings.service.js +35 -35
  109. package/src/saas/internal-api/projects/consts/defaultProject.js +3 -3
  110. package/src/saas/internal-api/projects/index.js +24 -24
  111. package/src/saas/internal-api/projects/models/core/create.project.model.js +41 -41
  112. package/src/saas/internal-api/projects/models/core/update.project.model.js +47 -47
  113. package/src/saas/internal-api/projects/models/settings/update.project.settings.model.js +41 -41
  114. package/src/saas/internal-api/projects/utils/utils.js +156 -156
  115. package/src/saas/internal-api/recordNotes/api/record.notes.api.js +38 -38
  116. package/src/saas/internal-api/recordNotes/api/record.notes.service.js +29 -29
  117. package/src/saas/internal-api/recordNotes/index.js +3 -3
  118. package/src/saas/internal-api/reports/api/reports.api.js +39 -39
  119. package/src/saas/internal-api/reports/api/reports.service.js +34 -34
  120. package/src/saas/internal-api/reports/consts/consts.js +64 -64
  121. package/src/saas/internal-api/reports/index.js +15 -15
  122. package/src/saas/internal-api/reports/models/report.model.js +27 -27
  123. package/src/saas/internal-api/requests/api/requests.api.js +78 -78
  124. package/src/saas/internal-api/requests/api/requests.service.js +151 -151
  125. package/src/saas/internal-api/requests/index.js +16 -16
  126. package/src/saas/internal-api/requests/models/create.request.model.js +33 -33
  127. package/src/saas/internal-api/requests/models/edit.request.model.js +31 -31
  128. package/src/saas/internal-api/requests/models/inner.page.request.criteria.model.js +17 -17
  129. package/src/saas/internal-api/requests/models/tenant.request.model.js +9 -9
  130. package/src/saas/internal-api/requests/utils.js +8 -8
  131. package/src/saas/internal-api/requestsTable/api/requests.table.api.js +20 -20
  132. package/src/saas/internal-api/requestsTable/api/requests.table.service.js +14 -14
  133. package/src/saas/internal-api/requestsTable/index.js +3 -3
  134. package/src/saas/internal-api/requirements/api/requirements.api.js +45 -45
  135. package/src/saas/internal-api/requirements/api/requirements.service.js +134 -134
  136. package/src/saas/internal-api/requirements/consts/attributeTypes.json +6 -6
  137. package/src/saas/internal-api/requirements/consts/consts.js +6 -6
  138. package/src/saas/internal-api/requirements/index.js +10 -10
  139. package/src/saas/internal-api/requirements/models/create.requirement.model.js +17 -17
  140. package/src/saas/internal-api/requirements/models/policy.model.js +33 -33
  141. package/src/saas/internal-api/requirements/models/update.requirement.model.js +19 -19
  142. package/src/saas/internal-api/requirements/utils/utils.js +115 -115
  143. package/src/saas/internal-api/serviceArea/api/coordinates.api.js +12 -12
  144. package/src/saas/internal-api/serviceArea/api/coordinates.service.js +7 -7
  145. package/src/saas/internal-api/serviceArea/index.js +4 -4
  146. package/src/saas/internal-api/serviceArea/utils/utils.js +8 -8
  147. package/src/saas/internal-api/tabs/api/tabs.api.js +32 -32
  148. package/src/saas/internal-api/tabs/api/tabs.service.js +54 -54
  149. package/src/saas/internal-api/tabs/index.js +3 -3
  150. package/src/saas/internal-api/tabs/models/tabs.model.js +18 -18
  151. package/src/saas/internal-api/thread-scheduler/runner.js +39 -39
  152. package/src/saas/internal-api/uploadFiles/api/upload.file.api.js +25 -25
  153. package/src/saas/internal-api/uploadFiles/api/upload.file.service.js +32 -32
  154. package/src/saas/internal-api/uploadFiles/consts.js +12 -12
  155. package/src/saas/internal-api/uploadFiles/index.js +3 -3
  156. package/src/saas/internal-api/users/api/tenantApp/tenant.app.api.js +32 -32
  157. package/src/saas/internal-api/users/api/tenantApp/tenant.app.service.js +78 -78
  158. package/src/saas/internal-api/users/api/users.api.js +109 -109
  159. package/src/saas/internal-api/users/api/users.service.js +198 -198
  160. package/src/saas/internal-api/users/index.js +16 -16
  161. package/src/saas/internal-api/users/models/create.inner.system.user.model.js +18 -18
  162. package/src/saas/internal-api/users/models/notification.settings.model.js +12 -12
  163. package/src/saas/internal-api/users/models/tenent.user.model.js +11 -11
  164. package/src/saas/internal-api/users/models/users.model.js +41 -41
  165. package/src/saas/internal-api/users/utils/util.js +39 -39
  166. package/src/saas/internal-api/vendorProfile/api/vendor.profile.api.js +20 -20
  167. package/src/saas/internal-api/vendorProfile/api/vendor.profile.service.js +14 -14
  168. package/src/saas/internal-api/vendorProfile/index.js +3 -3
  169. package/src/saas/openapi/accounts/accounts.api.js +17 -17
  170. package/src/saas/openapi/accounts/accounts.service.js +11 -11
  171. package/src/saas/openapi/coi/coi.api.js +20 -20
  172. package/src/saas/openapi/coi/coi.service.js +13 -13
  173. package/src/saas/openapi/projects/projects.api.js +83 -83
  174. package/src/saas/openapi/projects/projects.service.js +64 -64
  175. package/src/saas/openapi/requests/index.js +7 -7
  176. package/src/saas/openapi/requests/models/invite.request.model.js +37 -37
  177. package/src/saas/openapi/requests/models/update.request.model.js +35 -35
  178. package/src/saas/openapi/requests/requests.api.js +76 -76
  179. package/src/saas/openapi/requests/requests.service.js +65 -65
  180. package/src/saas/openapi/requirements/index.js +6 -6
  181. package/src/saas/openapi/requirements/models/copy.requirement.model.js +10 -10
  182. package/src/saas/openapi/requirements/requirements.api.js +32 -32
  183. package/src/saas/openapi/requirements/requirements.service.js +37 -37
  184. package/src/saas/openapi/tabs/index.js +6 -6
  185. package/src/saas/openapi/tabs/models/create.tab.model.js +6 -6
  186. package/src/saas/openapi/tabs/tabs.api.js +27 -27
  187. package/src/saas/openapi/tabs/tabs.service.js +19 -19
  188. package/src/saas/openapi/users/user.model.js +10 -10
  189. package/src/saas/openapi/users/users.api.js +33 -33
  190. package/src/saas/openapi/users/users.service.js +41 -41
  191. package/tests/env.test.js +40 -40
  192. package/tests/validation.test.js +83 -83
  193. package/src/resources/virusFile.pdf +0 -0
@@ -1,60 +1,60 @@
1
- const { isObject } = require('../../../../common/utils/dataTypeUtils');
2
-
3
- class CreateGlobalRecordModel {
4
- constructor(
5
- header,
6
- expirationDate,
7
- glPolicyNumbers,
8
- numberOfAssociatedRequests,
9
- numberOfFilledMandatory,
10
- {
11
- id,
12
- recordName,
13
- additionalContacts,
14
- brokerEmails,
15
- publishDate,
16
- serviceAreas,
17
- primaryEmail,
18
- dba,
19
- lastPublishUserName,
20
- __v,
21
- recordType
22
- } = {}
23
- ) {
24
- this.id = id;
25
- this.header = header;
26
- this.recordName = recordName;
27
- this.additionalContacts = additionalContacts;
28
- this.expirationDate = expirationDate;
29
- this.publishDate = publishDate;
30
- this.glPolicyNumbers = glPolicyNumbers;
31
- this.numberOfAssociatedRequests = numberOfAssociatedRequests;
32
- this.brokerEmails = brokerEmails;
33
- this.numberOfFilledMandatory = numberOfFilledMandatory;
34
- this.serviceAreas = serviceAreas;
35
- this.primaryEmail = primaryEmail;
36
- this.dba = dba;
37
- this.lastPublishUserName = lastPublishUserName;
38
- this.__v = __v;
39
- this.recordType = recordType;
40
- }
41
- }
42
-
43
- class CreateGlobalRecordSearchModel {
44
- constructor(
45
- searchTerm,
46
- {
47
- sortBy = 'status',
48
- sortOrderFlag = true
49
- } = {}
50
- ) {
51
- this.searchTerm = isObject(searchTerm) ? [searchTerm] : searchTerm,
52
- this.sortBy = sortBy,
53
- this.sortOrderFlag = sortOrderFlag;
54
- }
55
- }
56
-
57
- module.exports = {
58
- CreateGlobalRecordModel,
59
- CreateGlobalRecordSearchModel
60
- };
1
+ const { isObject } = require('../../../../common/utils/dataTypeUtils');
2
+
3
+ class CreateGlobalRecordModel {
4
+ constructor(
5
+ header,
6
+ expirationDate,
7
+ glPolicyNumbers,
8
+ numberOfAssociatedRequests,
9
+ numberOfFilledMandatory,
10
+ {
11
+ id,
12
+ recordName,
13
+ additionalContacts,
14
+ brokerEmails,
15
+ publishDate,
16
+ serviceAreas,
17
+ primaryEmail,
18
+ dba,
19
+ lastPublishUserName,
20
+ __v,
21
+ recordType
22
+ } = {}
23
+ ) {
24
+ this.id = id;
25
+ this.header = header;
26
+ this.recordName = recordName;
27
+ this.additionalContacts = additionalContacts;
28
+ this.expirationDate = expirationDate;
29
+ this.publishDate = publishDate;
30
+ this.glPolicyNumbers = glPolicyNumbers;
31
+ this.numberOfAssociatedRequests = numberOfAssociatedRequests;
32
+ this.brokerEmails = brokerEmails;
33
+ this.numberOfFilledMandatory = numberOfFilledMandatory;
34
+ this.serviceAreas = serviceAreas;
35
+ this.primaryEmail = primaryEmail;
36
+ this.dba = dba;
37
+ this.lastPublishUserName = lastPublishUserName;
38
+ this.__v = __v;
39
+ this.recordType = recordType;
40
+ }
41
+ }
42
+
43
+ class CreateGlobalRecordSearchModel {
44
+ constructor(
45
+ searchTerm,
46
+ {
47
+ sortBy = 'status',
48
+ sortOrderFlag = true
49
+ } = {}
50
+ ) {
51
+ this.searchTerm = isObject(searchTerm) ? [searchTerm] : searchTerm,
52
+ this.sortBy = sortBy,
53
+ this.sortOrderFlag = sortOrderFlag;
54
+ }
55
+ }
56
+
57
+ module.exports = {
58
+ CreateGlobalRecordModel,
59
+ CreateGlobalRecordSearchModel
60
+ };
@@ -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 };
@@ -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 };