@getjones/test-infra 2.8.3 → 2.8.5

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 (171) hide show
  1. package/package.json +29 -29
  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 +72 -72
  5. package/src/common/consts/dashboardCharts.js +17 -17
  6. package/src/common/consts/recordTypes.js +5 -5
  7. package/src/common/consts/userTypes.js +5 -5
  8. package/src/common/httpResponseStatusCodes.json +11 -11
  9. package/src/common/requests/apiKeyAuth/requests.js +44 -44
  10. package/src/common/requests/cookieAuth/requests.js +40 -40
  11. package/src/common/requests/requestHandlers.js +78 -78
  12. package/src/common/utils/complianceUtil.js +56 -56
  13. package/src/common/utils/dataTypeUtils.js +41 -41
  14. package/src/common/utils/numberUtils.js +22 -22
  15. package/src/common/utils/objectUtils.js +7 -7
  16. package/src/common/utils/timeUtils.js +175 -175
  17. package/src/common/validations/errorValidation.js +16 -16
  18. package/src/common/validations/typeValidations.js +36 -36
  19. package/src/defaults/configs/auditConfigs.js +91 -91
  20. package/src/defaults/configs/coverage.js +227 -227
  21. package/src/defaults/configs/polices.js +49 -49
  22. package/src/defaults/configs/requirement.js +32 -32
  23. package/src/defaults/index.js +6 -6
  24. package/src/env.js +57 -57
  25. package/src/factory/index.js +7 -7
  26. package/src/factory/records/records.js +141 -143
  27. package/src/factory/users/users.js +79 -79
  28. package/src/index.js +81 -81
  29. package/src/saas/internal-api/accounts/api/core/accounts.core.api.js +28 -28
  30. package/src/saas/internal-api/accounts/api/core/accounts.core.service.js +77 -77
  31. package/src/saas/internal-api/accounts/api/openapi/accounts.openapi.api.js +48 -48
  32. package/src/saas/internal-api/accounts/api/openapi/accounts.openapi.service.js +74 -74
  33. package/src/saas/internal-api/accounts/api/settings/settings.api.js +21 -21
  34. package/src/saas/internal-api/accounts/api/settings/settings.service.js +41 -41
  35. package/src/saas/internal-api/accounts/consts/consts.js +6 -6
  36. package/src/saas/internal-api/accounts/index.js +21 -21
  37. package/src/saas/internal-api/accounts/models/core/create.account.model.js +16 -16
  38. package/src/saas/internal-api/accounts/models/settings/update.settings.model.js +38 -38
  39. package/src/saas/internal-api/accounts/utils/utils.js +66 -66
  40. package/src/saas/internal-api/auditNotes/api/audit.notes.api.js +40 -40
  41. package/src/saas/internal-api/auditNotes/api/audit.notes.service.js +115 -115
  42. package/src/saas/internal-api/auditNotes/index.js +4 -4
  43. package/src/saas/internal-api/auditNotes/models/audit.note.model.js +30 -30
  44. package/src/saas/internal-api/auth/api/auth.api.js +27 -27
  45. package/src/saas/internal-api/auth/api/auth.service.js +90 -90
  46. package/src/saas/internal-api/auth/index.js +3 -3
  47. package/src/saas/internal-api/coi/api/coi.api.js +34 -34
  48. package/src/saas/internal-api/coi/api/coi.service.js +22 -22
  49. package/src/saas/internal-api/coi/consts/uploaderTypes.js +5 -5
  50. package/src/saas/internal-api/coi/index.js +13 -13
  51. package/src/saas/internal-api/coi/models/submit.coi.model.js +9 -9
  52. package/src/saas/internal-api/coi/utils/utils.js +48 -48
  53. package/src/saas/internal-api/compliance/api/audit/audit.api.js +46 -46
  54. package/src/saas/internal-api/compliance/api/audit/audit.service.js +143 -143
  55. package/src/saas/internal-api/compliance/api/convert/convert.api.js +17 -17
  56. package/src/saas/internal-api/compliance/api/convert/convert.service.js +11 -11
  57. package/src/saas/internal-api/compliance/api/coverage/coverage.api.js +33 -33
  58. package/src/saas/internal-api/compliance/api/coverage/coverage.service.js +48 -48
  59. package/src/saas/internal-api/compliance/api/overrideGap/override.gap.api.js +33 -33
  60. package/src/saas/internal-api/compliance/api/overrideGap/override.gap.service.js +127 -127
  61. package/src/saas/internal-api/compliance/consts/audit.js +71 -71
  62. package/src/saas/internal-api/compliance/index.js +33 -33
  63. package/src/saas/internal-api/compliance/models/audit/audit.model.js +84 -84
  64. package/src/saas/internal-api/compliance/models/waive/waive.model.js +49 -49
  65. package/src/saas/internal-api/compliance/utils/auditUtil.js +222 -222
  66. package/src/saas/internal-api/compliance/utils/coverageUtil.js +40 -40
  67. package/src/saas/internal-api/contractors/api/contractors.api.js +153 -153
  68. package/src/saas/internal-api/contractors/api/contractors.service.js +181 -169
  69. package/src/saas/internal-api/contractors/consts/consts.js +6 -6
  70. package/src/saas/internal-api/contractors/index.js +9 -9
  71. package/src/saas/internal-api/contractors/models/assign.requirement.model.js +10 -10
  72. package/src/saas/internal-api/contractors/models/create.contractor.model.js +22 -22
  73. package/src/saas/internal-api/contractors/models/edit.contractor.model.js +60 -60
  74. package/src/saas/internal-api/contractors/models/verification.contractor.model.js +27 -27
  75. package/src/saas/internal-api/dashboard/api/recordList.api.js +38 -38
  76. package/src/saas/internal-api/dashboard/api/recordList.service.js +60 -60
  77. package/src/saas/internal-api/dashboard/index.js +5 -5
  78. package/src/saas/internal-api/dashboard/models/dashboard.filter.criteria.model.js +38 -38
  79. package/src/saas/internal-api/dbEmails/api/db.emails.api.js +25 -25
  80. package/src/saas/internal-api/dbEmails/api/db.emails.service.js +127 -127
  81. package/src/saas/internal-api/dbEmails/consts/consts.js +37 -37
  82. package/src/saas/internal-api/dbEmails/index.js +5 -5
  83. package/src/saas/internal-api/dbEmails/models/db.emails.model.js +21 -21
  84. package/src/saas/internal-api/dbEmails/utils/util.js +68 -68
  85. package/src/saas/internal-api/globalRecord/api/global.record.api.js +82 -82
  86. package/src/saas/internal-api/globalRecord/api/global.record.service.js +95 -95
  87. package/src/saas/internal-api/globalRecord/consts.js +20 -20
  88. package/src/saas/internal-api/globalRecord/index.js +6 -6
  89. package/src/saas/internal-api/globalRecord/models/global.record.model.js +43 -43
  90. package/src/saas/internal-api/globalRecord/utils/util.js +148 -148
  91. package/src/saas/internal-api/homepageCharts/api/charts.api.js +12 -12
  92. package/src/saas/internal-api/homepageCharts/api/charts.service.js +7 -7
  93. package/src/saas/internal-api/homepageCharts/index.js +3 -3
  94. package/src/saas/internal-api/projects/api/core/projects.api.js +39 -39
  95. package/src/saas/internal-api/projects/api/core/projects.service.js +65 -65
  96. package/src/saas/internal-api/projects/api/settings/project.settings.api.js +18 -18
  97. package/src/saas/internal-api/projects/api/settings/project.settings.service.js +35 -35
  98. package/src/saas/internal-api/projects/consts/defaultProject.js +3 -3
  99. package/src/saas/internal-api/projects/index.js +24 -24
  100. package/src/saas/internal-api/projects/models/core/create.project.model.js +41 -41
  101. package/src/saas/internal-api/projects/models/core/update.project.model.js +47 -47
  102. package/src/saas/internal-api/projects/models/settings/update.project.settings.model.js +41 -41
  103. package/src/saas/internal-api/projects/utils/utils.js +156 -156
  104. package/src/saas/internal-api/recordNotes/api/record.notes.api.js +38 -38
  105. package/src/saas/internal-api/recordNotes/api/record.notes.service.js +29 -29
  106. package/src/saas/internal-api/recordNotes/index.js +3 -3
  107. package/src/saas/internal-api/reports/api/reports.api.js +39 -39
  108. package/src/saas/internal-api/reports/api/reports.service.js +34 -34
  109. package/src/saas/internal-api/reports/consts/consts.js +63 -63
  110. package/src/saas/internal-api/reports/index.js +15 -15
  111. package/src/saas/internal-api/reports/models/report.model.js +27 -27
  112. package/src/saas/internal-api/requests/api/requests.api.js +72 -72
  113. package/src/saas/internal-api/requests/api/requests.service.js +114 -114
  114. package/src/saas/internal-api/requests/index.js +14 -14
  115. package/src/saas/internal-api/requests/models/create.request.model.js +33 -33
  116. package/src/saas/internal-api/requests/models/edit.request.model.js +31 -31
  117. package/src/saas/internal-api/requests/models/tenant.request.model.js +9 -9
  118. package/src/saas/internal-api/requests/utils.js +8 -8
  119. package/src/saas/internal-api/requestsTable/api/requests.table.api.js +20 -20
  120. package/src/saas/internal-api/requestsTable/api/requests.table.service.js +14 -14
  121. package/src/saas/internal-api/requestsTable/index.js +3 -3
  122. package/src/saas/internal-api/requirements/api/requirements.api.js +45 -45
  123. package/src/saas/internal-api/requirements/api/requirements.service.js +134 -134
  124. package/src/saas/internal-api/requirements/consts/attributeTypes.json +5 -5
  125. package/src/saas/internal-api/requirements/consts/consts.js +6 -6
  126. package/src/saas/internal-api/requirements/index.js +9 -9
  127. package/src/saas/internal-api/requirements/models/create.requirement.model.js +17 -17
  128. package/src/saas/internal-api/requirements/models/policy.model.js +32 -32
  129. package/src/saas/internal-api/requirements/models/update.requirement.model.js +19 -19
  130. package/src/saas/internal-api/requirements/utils/utils.js +102 -102
  131. package/src/saas/internal-api/serviceArea/api/coordinates.api.js +12 -12
  132. package/src/saas/internal-api/serviceArea/api/coordinates.service.js +7 -7
  133. package/src/saas/internal-api/serviceArea/index.js +4 -4
  134. package/src/saas/internal-api/serviceArea/utils/utils.js +8 -8
  135. package/src/saas/internal-api/tabs/api/tabs.api.js +32 -32
  136. package/src/saas/internal-api/tabs/api/tabs.service.js +54 -54
  137. package/src/saas/internal-api/tabs/index.js +3 -3
  138. package/src/saas/internal-api/tabs/models/tabs.model.js +18 -18
  139. package/src/saas/internal-api/thread-scheduler/runner.js +39 -39
  140. package/src/saas/internal-api/users/api/tenantApp/tenant.app.api.js +32 -32
  141. package/src/saas/internal-api/users/api/tenantApp/tenant.app.service.js +78 -78
  142. package/src/saas/internal-api/users/api/users.api.js +77 -77
  143. package/src/saas/internal-api/users/api/users.service.js +101 -101
  144. package/src/saas/internal-api/users/index.js +11 -11
  145. package/src/saas/internal-api/users/models/tenent.user.model.js +11 -11
  146. package/src/saas/internal-api/users/models/users.model.js +31 -31
  147. package/src/saas/internal-api/users/utils/util.js +20 -20
  148. package/src/saas/internal-api/vendorProfile/api/vendor.profile.api.js +20 -20
  149. package/src/saas/internal-api/vendorProfile/api/vendor.profile.service.js +14 -14
  150. package/src/saas/internal-api/vendorProfile/index.js +3 -3
  151. package/src/saas/openapi/accounts/accounts.api.js +17 -17
  152. package/src/saas/openapi/accounts/accounts.service.js +11 -11
  153. package/src/saas/openapi/coi/coi.api.js +20 -20
  154. package/src/saas/openapi/coi/coi.service.js +13 -13
  155. package/src/saas/openapi/projects/projects.api.js +59 -59
  156. package/src/saas/openapi/projects/projects.service.js +44 -44
  157. package/src/saas/openapi/requests/index.js +7 -7
  158. package/src/saas/openapi/requests/models/invite.request.model.js +37 -37
  159. package/src/saas/openapi/requests/models/update.request.model.js +35 -35
  160. package/src/saas/openapi/requests/requests.api.js +76 -76
  161. package/src/saas/openapi/requests/requests.service.js +65 -65
  162. package/src/saas/openapi/requirements/index.js +6 -6
  163. package/src/saas/openapi/requirements/models/copy.requirement.model.js +10 -10
  164. package/src/saas/openapi/requirements/requirements.api.js +26 -26
  165. package/src/saas/openapi/requirements/requirements.service.js +32 -32
  166. package/src/saas/openapi/tabs/index.js +6 -6
  167. package/src/saas/openapi/tabs/models/create.tab.model.js +6 -6
  168. package/src/saas/openapi/tabs/tabs.api.js +18 -18
  169. package/src/saas/openapi/tabs/tabs.service.js +11 -11
  170. package/tests/env.test.js +40 -40
  171. package/tests/validation.test.js +83 -83
package/src/index.js CHANGED
@@ -1,81 +1,81 @@
1
- const env = require('./env');
2
- const init = conf => {
3
- env.init(conf);
4
- const internalAPI = getInternalAPI();
5
- const openAPI = getOpenAPI();
6
-
7
- return { internalAPI, openAPI };
8
- };
9
-
10
- const getInternalAPI = () => {
11
- const factory = require('./factory');
12
- const defaults = require('./defaults');
13
- const auth = require('./saas/internal-api/auth');
14
- const accounts = require('./saas/internal-api/accounts');
15
-
16
- const projects = require('./saas/internal-api/projects');
17
- const tabs = require('./saas/internal-api/tabs');
18
-
19
- const requirements = require('./saas/internal-api/requirements');
20
- const contractors = require('./saas/internal-api/contractors');
21
- const requests = require('./saas/internal-api/requests');
22
-
23
- const coi = require('./saas/internal-api/coi');
24
- const compliance = require('./saas/internal-api/compliance');
25
- const auditNotes = require('./saas/internal-api/auditNotes');
26
-
27
- const users = require('./saas/internal-api/users');
28
-
29
- const reports = require('./saas/internal-api/reports');
30
- const charts = require('./saas/internal-api/homepageCharts');
31
- const dashboard = require('./saas/internal-api/dashboard');
32
-
33
- const globalRecord = require('./saas/internal-api/globalRecord');
34
- const vendorProfile = require('./saas/internal-api/vendorProfile');
35
- const serviceArea = require('./saas/internal-api/serviceArea');
36
-
37
- const requestsTable = require('./saas/internal-api/requestsTable');
38
-
39
- const threadScheduler = require('./saas/internal-api/thread-scheduler/runner');
40
- const dbEmails = require('./saas/internal-api/dbEmails/index');
41
-
42
- const internalAPI = {
43
- defaults,
44
- auth,
45
- accounts,
46
- projects,
47
- tabs,
48
- requirements,
49
- contractors,
50
- requests,
51
- coi,
52
- compliance,
53
- auditNotes,
54
- reports,
55
- users,
56
- charts,
57
- dashboard,
58
- globalRecord,
59
- vendorProfile,
60
- serviceArea,
61
- requestsTable,
62
- threadScheduler,
63
- dbEmails,
64
- factory
65
- };
66
-
67
- return internalAPI;
68
- };
69
-
70
- const getOpenAPI = () => {
71
- const accounts = require('./saas/openapi/accounts/accounts.service');
72
- const projects = require('./saas/openapi/projects/projects.service');
73
- const tabs = require('./saas/openapi/tabs');
74
- const requirements = require('./saas/openapi/requirements');
75
- const requests = require('./saas/openapi/requests');
76
- const coi = require('./saas/openapi/coi/coi.service');
77
- const openAPI = { accounts, projects, tabs, requirements, requests, coi };
78
- return openAPI;
79
- };
80
-
81
- module.exports = init;
1
+ const env = require('./env');
2
+ const init = conf => {
3
+ env.init(conf);
4
+ const internalAPI = getInternalAPI();
5
+ const openAPI = getOpenAPI();
6
+
7
+ return { internalAPI, openAPI };
8
+ };
9
+
10
+ const getInternalAPI = () => {
11
+ const factory = require('./factory');
12
+ const defaults = require('./defaults');
13
+ const auth = require('./saas/internal-api/auth');
14
+ const accounts = require('./saas/internal-api/accounts');
15
+
16
+ const projects = require('./saas/internal-api/projects');
17
+ const tabs = require('./saas/internal-api/tabs');
18
+
19
+ const requirements = require('./saas/internal-api/requirements');
20
+ const contractors = require('./saas/internal-api/contractors');
21
+ const requests = require('./saas/internal-api/requests');
22
+
23
+ const coi = require('./saas/internal-api/coi');
24
+ const compliance = require('./saas/internal-api/compliance');
25
+ const auditNotes = require('./saas/internal-api/auditNotes');
26
+
27
+ const users = require('./saas/internal-api/users');
28
+
29
+ const reports = require('./saas/internal-api/reports');
30
+ const charts = require('./saas/internal-api/homepageCharts');
31
+ const dashboard = require('./saas/internal-api/dashboard');
32
+
33
+ const globalRecord = require('./saas/internal-api/globalRecord');
34
+ const vendorProfile = require('./saas/internal-api/vendorProfile');
35
+ const serviceArea = require('./saas/internal-api/serviceArea');
36
+
37
+ const requestsTable = require('./saas/internal-api/requestsTable');
38
+
39
+ const threadScheduler = require('./saas/internal-api/thread-scheduler/runner');
40
+ const dbEmails = require('./saas/internal-api/dbEmails/index');
41
+
42
+ const internalAPI = {
43
+ defaults,
44
+ auth,
45
+ accounts,
46
+ projects,
47
+ tabs,
48
+ requirements,
49
+ contractors,
50
+ requests,
51
+ coi,
52
+ compliance,
53
+ auditNotes,
54
+ reports,
55
+ users,
56
+ charts,
57
+ dashboard,
58
+ globalRecord,
59
+ vendorProfile,
60
+ serviceArea,
61
+ requestsTable,
62
+ threadScheduler,
63
+ dbEmails,
64
+ factory
65
+ };
66
+
67
+ return internalAPI;
68
+ };
69
+
70
+ const getOpenAPI = () => {
71
+ const accounts = require('./saas/openapi/accounts/accounts.service');
72
+ const projects = require('./saas/openapi/projects/projects.service');
73
+ const tabs = require('./saas/openapi/tabs');
74
+ const requirements = require('./saas/openapi/requirements');
75
+ const requests = require('./saas/openapi/requests');
76
+ const coi = require('./saas/openapi/coi/coi.service');
77
+ const openAPI = { accounts, projects, tabs, requirements, requests, coi };
78
+ return openAPI;
79
+ };
80
+
81
+ module.exports = init;
@@ -1,28 +1,28 @@
1
- const requests = require('../../../../../common/requests/cookieAuth/requests');
2
- const { backendUrl } = require('../../../../../env').getEnv();
3
-
4
- const Endpoints = {
5
- getAccount: `${backendUrl}/saas/accounts`,
6
- create: `${backendUrl}/saas/createaccount`,
7
- delete: `${backendUrl}/saas/account`,
8
- edit: accountId => `${backendUrl}/saas/account/${accountId}/settings`
9
- };
10
-
11
- const create = (account, context) => {
12
- return requests.postRequestHandler(Endpoints.create, account, context);
13
- };
14
-
15
- const deleteAccount = (accountId, context) => {
16
- return requests.deleteRequestHandler(Endpoints.delete, context, {}, { 'userId': accountId });
17
- };
18
-
19
- const updateAccountSettings = (accountId, settings, context) => {
20
- return requests.putRequestHandler(Endpoints.edit(accountId), { accountId, ... settings }, context);
21
- };
22
-
23
- const getByName = (accountName, context) => {
24
- const params = { name: accountName };
25
- return requests.getRequestHandler(Endpoints.getAccount, params, context);
26
- };
27
-
28
- module.exports = { create, getByName, deleteAccount, updateAccountSettings };
1
+ const requests = require('../../../../../common/requests/cookieAuth/requests');
2
+ const { backendUrl } = require('../../../../../env').getEnv();
3
+
4
+ const Endpoints = {
5
+ getAccount: `${backendUrl}/saas/accounts`,
6
+ create: `${backendUrl}/saas/createaccount`,
7
+ delete: `${backendUrl}/saas/account`,
8
+ edit: accountId => `${backendUrl}/saas/account/${accountId}/settings`
9
+ };
10
+
11
+ const create = (account, context) => {
12
+ return requests.postRequestHandler(Endpoints.create, account, context);
13
+ };
14
+
15
+ const deleteAccount = (accountId, context) => {
16
+ return requests.deleteRequestHandler(Endpoints.delete, context, {}, { 'userId': accountId });
17
+ };
18
+
19
+ const updateAccountSettings = (accountId, settings, context) => {
20
+ return requests.putRequestHandler(Endpoints.edit(accountId), { accountId, ... settings }, context);
21
+ };
22
+
23
+ const getByName = (accountName, context) => {
24
+ const params = { name: accountName };
25
+ return requests.getRequestHandler(Endpoints.getAccount, params, context);
26
+ };
27
+
28
+ module.exports = { create, getByName, deleteAccount, updateAccountSettings };
@@ -1,77 +1,77 @@
1
- const env = require('../../../../../env');
2
- const accountsAPI = require('./accounts.core.api');
3
- const CreateAccountModel = require('../../models/core/create.account.model');
4
- const { validateType } = require('../../../../../common/validations/typeValidations');
5
-
6
- const { accountCreationSecret } = env.getEnv();
7
-
8
- const createAccount = async (createAccountModel, context) => {
9
- validateType(createAccountModel, CreateAccountModel);
10
-
11
- env.requiredValidation({
12
- accountCreationSecret: accountCreationSecret,
13
- 'credentials.strongPassword': createAccountModel.password
14
- });
15
-
16
- return accountsAPI.create(createAccountModel, context);
17
- };
18
-
19
- const getAccount = async (accountName, context) => {
20
- const response = await accountsAPI.getByName(accountName, context);
21
-
22
- if (!response.data || !response.data.length) {
23
- return null;
24
- }
25
-
26
- if (response.data.length > 1) {
27
- throw new Error(`Got more than one account with the name: ${accountName}. IDs: ${existingAccounts.map(item => item.userId).join(', ')}`);
28
- }
29
-
30
- return response.data[0];
31
- };
32
-
33
- const getOrCreateAccount = async (createAccountModel, context) => {
34
- validateType(createAccountModel, CreateAccountModel);
35
- const existingAccount = await getAccount(createAccountModel.companyName, context);
36
-
37
- if (existingAccount) {
38
- return existingAccount;
39
- }
40
-
41
- const response = await accountsAPI.create(createAccountModel, context);
42
-
43
- if (!response.data) {
44
- throw new Error(`Account by the name ${createAccountModel.companyName} was not created\n${response}`);
45
- }
46
-
47
- return response.data;
48
- };
49
-
50
- const getAccountId = async (accountName, context) => {
51
- const account = await getAccount(accountName, context);
52
-
53
- if (!account) {
54
- console.error(`Account ${accountName} does not exist`);
55
- return null;
56
- }
57
-
58
- return account.userId;
59
- };
60
-
61
- const deleteAccountByName = async (accountName, context) => {
62
- const accountId = await getAccountId(accountName, context);
63
- return accountsAPI.deleteAccount(accountId, context);
64
- };
65
-
66
- const deleteAccountById = async (accountId, context) => {
67
- return accountsAPI.deleteAccount(accountId, context);
68
- };
69
-
70
- module.exports = {
71
- getAccount,
72
- getOrCreateAccount,
73
- getAccountId,
74
- createAccount,
75
- deleteAccountByName,
76
- deleteAccountById
77
- };
1
+ const env = require('../../../../../env');
2
+ const accountsAPI = require('./accounts.core.api');
3
+ const CreateAccountModel = require('../../models/core/create.account.model');
4
+ const { validateType } = require('../../../../../common/validations/typeValidations');
5
+
6
+ const { accountCreationSecret } = env.getEnv();
7
+
8
+ const createAccount = async (createAccountModel, context) => {
9
+ validateType(createAccountModel, CreateAccountModel);
10
+
11
+ env.requiredValidation({
12
+ accountCreationSecret: accountCreationSecret,
13
+ 'credentials.strongPassword': createAccountModel.password
14
+ });
15
+
16
+ return accountsAPI.create(createAccountModel, context);
17
+ };
18
+
19
+ const getAccount = async (accountName, context) => {
20
+ const response = await accountsAPI.getByName(accountName, context);
21
+
22
+ if (!response.data || !response.data.length) {
23
+ return null;
24
+ }
25
+
26
+ if (response.data.length > 1) {
27
+ throw new Error(`Got more than one account with the name: ${accountName}. IDs: ${existingAccounts.map(item => item.userId).join(', ')}`);
28
+ }
29
+
30
+ return response.data[0];
31
+ };
32
+
33
+ const getOrCreateAccount = async (createAccountModel, context) => {
34
+ validateType(createAccountModel, CreateAccountModel);
35
+ const existingAccount = await getAccount(createAccountModel.companyName, context);
36
+
37
+ if (existingAccount) {
38
+ return existingAccount;
39
+ }
40
+
41
+ const response = await accountsAPI.create(createAccountModel, context);
42
+
43
+ if (!response.data) {
44
+ throw new Error(`Account by the name ${createAccountModel.companyName} was not created\n${response}`);
45
+ }
46
+
47
+ return response.data;
48
+ };
49
+
50
+ const getAccountId = async (accountName, context) => {
51
+ const account = await getAccount(accountName, context);
52
+
53
+ if (!account) {
54
+ console.error(`Account ${accountName} does not exist`);
55
+ return null;
56
+ }
57
+
58
+ return account.userId;
59
+ };
60
+
61
+ const deleteAccountByName = async (accountName, context) => {
62
+ const accountId = await getAccountId(accountName, context);
63
+ return accountsAPI.deleteAccount(accountId, context);
64
+ };
65
+
66
+ const deleteAccountById = async (accountId, context) => {
67
+ return accountsAPI.deleteAccount(accountId, context);
68
+ };
69
+
70
+ module.exports = {
71
+ getAccount,
72
+ getOrCreateAccount,
73
+ getAccountId,
74
+ createAccount,
75
+ deleteAccountByName,
76
+ deleteAccountById
77
+ };
@@ -1,48 +1,48 @@
1
- const requests = require('../../../../../common/requests/cookieAuth/requests');
2
- const { backendUrl } = require('../../../../../env').getEnv();
3
-
4
- const Endpoints = {
5
- createApiKey: `${backendUrl}/saas/api-keys`,
6
- getStaticApiKeyByAccountId: accountId => `${backendUrl}/saas/accounts/${accountId}/static-api-keys`,
7
- getApiKeyByKeyValue: `${backendUrl}/saas/api-keys`,
8
- removeStaticApiKey: accountId => `${backendUrl}/saas/accounts/${accountId}/static-api-keys`,
9
- dynamicApiKey: accountId => `${backendUrl}/saas/accounts/${accountId}/dynamic-api-key`
10
- };
11
-
12
- const createStaticApiKey = (data, context) => {
13
- return requests.postRequestHandler(Endpoints.createApiKey, data, context);
14
- };
15
-
16
- const createGeneratorApiKey = (data, context) => {
17
- return requests.postRequestHandler(Endpoints.createApiKey, data, context);
18
- };
19
-
20
- const getStaticApiKeyByAccountId = (accountId, context) => {
21
- return requests.getRequestHandler(Endpoints.getStaticApiKeyByAccountId(accountId), {}, context);
22
- };
23
-
24
- const getApiKeyDetails = (apiKeyValue, context) => {
25
- return requests.getRequestHandler(Endpoints.getApiKeyByKeyValue, { apiKeyValue }, context);
26
- };
27
-
28
- const deleteStaticApiKey = (accountId, context) => {
29
- return requests.deleteRequestHandler(Endpoints.removeStaticApiKey(accountId), context);
30
- };
31
-
32
- const deleteDynamicApiKey = (accountId, context) => {
33
- return requests.deleteRequestHandler(Endpoints.dynamicApiKey(accountId), context);
34
- };
35
-
36
- const makeDynamicApiKeyExpired = (accountId, context) => {
37
- return requests.patchRequestHandler(Endpoints.dynamicApiKey(accountId), context, {});
38
- };
39
-
40
- module.exports = {
41
- createStaticApiKey,
42
- createGeneratorApiKey,
43
- getStaticApiKeyByAccountId,
44
- getApiKeyDetails,
45
- makeDynamicApiKeyExpired,
46
- deleteStaticApiKey,
47
- deleteDynamicApiKey
48
- };
1
+ const requests = require('../../../../../common/requests/cookieAuth/requests');
2
+ const { backendUrl } = require('../../../../../env').getEnv();
3
+
4
+ const Endpoints = {
5
+ createApiKey: `${backendUrl}/saas/api-keys`,
6
+ getStaticApiKeyByAccountId: accountId => `${backendUrl}/saas/accounts/${accountId}/static-api-keys`,
7
+ getApiKeyByKeyValue: `${backendUrl}/saas/api-keys`,
8
+ removeStaticApiKey: accountId => `${backendUrl}/saas/accounts/${accountId}/static-api-keys`,
9
+ dynamicApiKey: accountId => `${backendUrl}/saas/accounts/${accountId}/dynamic-api-key`
10
+ };
11
+
12
+ const createStaticApiKey = (data, context) => {
13
+ return requests.postRequestHandler(Endpoints.createApiKey, data, context);
14
+ };
15
+
16
+ const createGeneratorApiKey = (data, context) => {
17
+ return requests.postRequestHandler(Endpoints.createApiKey, data, context);
18
+ };
19
+
20
+ const getStaticApiKeyByAccountId = (accountId, context) => {
21
+ return requests.getRequestHandler(Endpoints.getStaticApiKeyByAccountId(accountId), {}, context);
22
+ };
23
+
24
+ const getApiKeyDetails = (apiKeyValue, context) => {
25
+ return requests.getRequestHandler(Endpoints.getApiKeyByKeyValue, { apiKeyValue }, context);
26
+ };
27
+
28
+ const deleteStaticApiKey = (accountId, context) => {
29
+ return requests.deleteRequestHandler(Endpoints.removeStaticApiKey(accountId), context);
30
+ };
31
+
32
+ const deleteDynamicApiKey = (accountId, context) => {
33
+ return requests.deleteRequestHandler(Endpoints.dynamicApiKey(accountId), context);
34
+ };
35
+
36
+ const makeDynamicApiKeyExpired = (accountId, context) => {
37
+ return requests.patchRequestHandler(Endpoints.dynamicApiKey(accountId), context, {});
38
+ };
39
+
40
+ module.exports = {
41
+ createStaticApiKey,
42
+ createGeneratorApiKey,
43
+ getStaticApiKeyByAccountId,
44
+ getApiKeyDetails,
45
+ makeDynamicApiKeyExpired,
46
+ deleteStaticApiKey,
47
+ deleteDynamicApiKey
48
+ };
@@ -1,74 +1,74 @@
1
- const accountsAPI = require('./accounts.openapi.api');
2
- const crypto = require('crypto');
3
-
4
- const generateApiKeyValue = accountName => {
5
- return crypto.createHash('sha256').update(accountName).digest('base64');
6
- };
7
-
8
- const createStaticApiKey = async (accountId, apiKeyValue, context, { apiKeyType = 'ACCOUNT_STATIC', apiKeyName = null } = {}) => {
9
- const data = { accountId, apiKeyValue, apiKeyName, apiKeyType };
10
- return accountsAPI.createStaticApiKey(data, context);
11
- };
12
-
13
- const createGeneratorApiKey = async (accountId, apiKeyValue, context, { apiKeyType = 'GENERATOR', apiKeyName = null } = {}) => {
14
- const data = { accountId, apiKeyValue, apiKeyName, apiKeyType };
15
- return accountsAPI.createGeneratorApiKey(data, context);
16
- };
17
-
18
- const getStaticApiKeyByAccountId = async (accountId, context) => {
19
- return accountsAPI.getStaticApiKeyByAccountId(accountId, context);
20
- };
21
-
22
- const getApiKeyDetails = async (apiKeyValue, context) => {
23
- return accountsAPI.getApiKeyDetails(apiKeyValue, context);
24
- };
25
-
26
- const deleteStaticApiKey = async (accountId, context) => {
27
- return accountsAPI.deleteStaticApiKey(accountId, context);
28
- };
29
-
30
- const getOrCreateStaticApiKey = async (accountId, apiKeyValue, context, { apiKeyType = 'ACCOUNT_STATIC', apiKeyName = null } = {}) => {
31
- let response = await getStaticApiKeyByAccountId(accountId, context);
32
-
33
- if (response.data.apiKeyValue) {
34
- return response.data;
35
- }
36
-
37
- response = await getApiKeyDetails(apiKeyValue, context);
38
-
39
- if (!response.data.apiKeyValue) {
40
- response = await createStaticApiKey(accountId, apiKeyValue, context, { apiKeyType, apiKeyName });
41
- }
42
-
43
- return response.data;
44
- };
45
-
46
- const getOrCreateGeneratorApiKey = async (accountId, apiKeyValue, context, { apiKeyType = 'GENERATOR', apiKeyName = null } = {}) => {
47
- const existingApiKey = await getApiKeyDetails(apiKeyValue, context);
48
-
49
- if (!existingApiKey.apiKeyValue) {
50
- return createGeneratorApiKey(accountId, apiKeyValue, context, { apiKeyType, apiKeyName });
51
- }
52
-
53
- return existingApiKey;
54
- };
55
-
56
- const deleteDynamicApiKey = async (accountId, context) => {
57
- return accountsAPI.deleteDynamicApiKey(accountId, context);
58
- };
59
-
60
- const makeDynamicApiKeyExpired = async (accountId, context) => {
61
- return accountsAPI.makeDynamicApiKeyExpired(accountId, context);
62
- };
63
-
64
- module.exports = {
65
- createStaticApiKey,
66
- generateApiKeyValue,
67
- getOrCreateStaticApiKey,
68
- getOrCreateGeneratorApiKey,
69
- getStaticApiKeyByAccountId,
70
- getApiKeyDetails,
71
- makeDynamicApiKeyExpired,
72
- deleteStaticApiKey,
73
- deleteDynamicApiKey
74
- };
1
+ const accountsAPI = require('./accounts.openapi.api');
2
+ const crypto = require('crypto');
3
+
4
+ const generateApiKeyValue = accountName => {
5
+ return crypto.createHash('sha256').update(accountName).digest('base64');
6
+ };
7
+
8
+ const createStaticApiKey = async (accountId, apiKeyValue, context, { apiKeyType = 'ACCOUNT_STATIC', apiKeyName = null } = {}) => {
9
+ const data = { accountId, apiKeyValue, apiKeyName, apiKeyType };
10
+ return accountsAPI.createStaticApiKey(data, context);
11
+ };
12
+
13
+ const createGeneratorApiKey = async (accountId, apiKeyValue, context, { apiKeyType = 'GENERATOR', apiKeyName = null } = {}) => {
14
+ const data = { accountId, apiKeyValue, apiKeyName, apiKeyType };
15
+ return accountsAPI.createGeneratorApiKey(data, context);
16
+ };
17
+
18
+ const getStaticApiKeyByAccountId = async (accountId, context) => {
19
+ return accountsAPI.getStaticApiKeyByAccountId(accountId, context);
20
+ };
21
+
22
+ const getApiKeyDetails = async (apiKeyValue, context) => {
23
+ return accountsAPI.getApiKeyDetails(apiKeyValue, context);
24
+ };
25
+
26
+ const deleteStaticApiKey = async (accountId, context) => {
27
+ return accountsAPI.deleteStaticApiKey(accountId, context);
28
+ };
29
+
30
+ const getOrCreateStaticApiKey = async (accountId, apiKeyValue, context, { apiKeyType = 'ACCOUNT_STATIC', apiKeyName = null } = {}) => {
31
+ let response = await getStaticApiKeyByAccountId(accountId, context);
32
+
33
+ if (response.data.apiKeyValue) {
34
+ return response.data;
35
+ }
36
+
37
+ response = await getApiKeyDetails(apiKeyValue, context);
38
+
39
+ if (!response.data.apiKeyValue) {
40
+ response = await createStaticApiKey(accountId, apiKeyValue, context, { apiKeyType, apiKeyName });
41
+ }
42
+
43
+ return response.data;
44
+ };
45
+
46
+ const getOrCreateGeneratorApiKey = async (accountId, apiKeyValue, context, { apiKeyType = 'GENERATOR', apiKeyName = null } = {}) => {
47
+ const existingApiKey = await getApiKeyDetails(apiKeyValue, context);
48
+
49
+ if (!existingApiKey.apiKeyValue) {
50
+ return createGeneratorApiKey(accountId, apiKeyValue, context, { apiKeyType, apiKeyName });
51
+ }
52
+
53
+ return existingApiKey;
54
+ };
55
+
56
+ const deleteDynamicApiKey = async (accountId, context) => {
57
+ return accountsAPI.deleteDynamicApiKey(accountId, context);
58
+ };
59
+
60
+ const makeDynamicApiKeyExpired = async (accountId, context) => {
61
+ return accountsAPI.makeDynamicApiKeyExpired(accountId, context);
62
+ };
63
+
64
+ module.exports = {
65
+ createStaticApiKey,
66
+ generateApiKeyValue,
67
+ getOrCreateStaticApiKey,
68
+ getOrCreateGeneratorApiKey,
69
+ getStaticApiKeyByAccountId,
70
+ getApiKeyDetails,
71
+ makeDynamicApiKeyExpired,
72
+ deleteStaticApiKey,
73
+ deleteDynamicApiKey
74
+ };
@@ -1,21 +1,21 @@
1
- const requests = require('../../../../../common/requests/cookieAuth/requests');
2
- const { backendUrl } = require('../../../../../env').getEnv();
3
-
4
- const Endpoints = {
5
- get: accountId => `${backendUrl}/saas/account/${accountId}/settings`,
6
- edit: accountId => `${backendUrl}/saas/account/${accountId}/settings`
7
- };
8
-
9
- const getAccountSettings = (accountId, context) => {
10
- return requests.getRequestHandler(Endpoints.get(accountId), {}, context);
11
- };
12
-
13
- const updateAccountSettings = (updateAccountSettingsModel, context) => {
14
- const { accountId } = updateAccountSettingsModel;
15
- return requests.putRequestHandler(Endpoints.edit(accountId), updateAccountSettingsModel, context);
16
- };
17
-
18
- module.exports = {
19
- getAccountSettings,
20
- updateAccountSettings
21
- };
1
+ const requests = require('../../../../../common/requests/cookieAuth/requests');
2
+ const { backendUrl } = require('../../../../../env').getEnv();
3
+
4
+ const Endpoints = {
5
+ get: accountId => `${backendUrl}/saas/account/${accountId}/settings`,
6
+ edit: accountId => `${backendUrl}/saas/account/${accountId}/settings`
7
+ };
8
+
9
+ const getAccountSettings = (accountId, context) => {
10
+ return requests.getRequestHandler(Endpoints.get(accountId), {}, context);
11
+ };
12
+
13
+ const updateAccountSettings = (updateAccountSettingsModel, context) => {
14
+ const { accountId } = updateAccountSettingsModel;
15
+ return requests.putRequestHandler(Endpoints.edit(accountId), updateAccountSettingsModel, context);
16
+ };
17
+
18
+ module.exports = {
19
+ getAccountSettings,
20
+ updateAccountSettings
21
+ };