@stackfactor/client-api 1.1.11 → 1.1.12-9.2

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 (41) hide show
  1. package/.eslintrc.json +13 -0
  2. package/{exports.js → exports.ts} +14 -0
  3. package/index.ts +1 -0
  4. package/lib/{actionNotifications.js → actionNotifications.ts} +21 -11
  5. package/lib/{address.js → address.ts} +4 -5
  6. package/lib/aiAssistant.ts +197 -0
  7. package/lib/avatar.ts +41 -0
  8. package/lib/axiosClient.ts +92 -0
  9. package/lib/{config.js → config.ts} +20 -9
  10. package/lib/{constants.js → constants.ts} +11 -41
  11. package/lib/{dashboard.js → dashboard.ts} +19 -10
  12. package/lib/{departmentTrainingPlans.js → departmentTrainingPlans.ts} +63 -32
  13. package/lib/{groups.js → groups.ts} +68 -29
  14. package/lib/{integration.js → integration.ts} +103 -47
  15. package/lib/{integrationConfiguration.js → integrationConfiguration.ts} +27 -22
  16. package/lib/integrations/{contentGenerator.js → contentGenerator.ts} +38 -18
  17. package/lib/{learningContent.js → learningContent.ts} +218 -62
  18. package/lib/{learningPath.js → learningPath.ts} +57 -30
  19. package/lib/{logger.js → logger.ts} +18 -8
  20. package/lib/microSkillsQuizes.ts +70 -0
  21. package/lib/quotas.ts +59 -0
  22. package/lib/{role.js → role.ts} +117 -69
  23. package/lib/{roleTemplate.js → roleTemplate.ts} +65 -30
  24. package/lib/security.ts +99 -0
  25. package/lib/{skill.js → skill.ts} +125 -87
  26. package/lib/{skillAssessments.js → skillAssessmentTestingSession.ts} +63 -16
  27. package/lib/skillAssessments.ts +192 -0
  28. package/lib/{skillTemplate.js → skillTemplate.ts} +73 -42
  29. package/lib/talentTransfromation.ts +126 -0
  30. package/lib/{teams.js → teams.ts} +73 -38
  31. package/lib/{tenants.js → tenants.ts} +17 -10
  32. package/lib/{trainingPlans.js → trainingPlans.ts} +159 -56
  33. package/lib/trainingPlansProficiencyLevels.ts +132 -0
  34. package/lib/{userInformation.js → userInformation.ts} +27 -26
  35. package/lib/{users.js → users.ts} +239 -140
  36. package/lib/utils.ts +64 -0
  37. package/package.json +12 -1
  38. package/index.js +0 -3
  39. package/lib/axiosClient.js +0 -85
  40. package/lib/skillAssessmentTestingSession.js +0 -148
  41. package/lib/utils.js +0 -48
@@ -6,15 +6,21 @@ import { client } from "./axiosClient.js";
6
6
  * @param {Number} position - The position on the dashboard
7
7
  * @param {Object} data - The card settings data
8
8
  * @param {String} authToken - Authorization token
9
+ * @returns {Promise<Object>}
9
10
  */
10
- export const addCardToDashboard = (id, position, data, authToken) => {
11
- return new Promise(function (resolve, reject) {
11
+ const addCardToDashboard = (
12
+ id: string,
13
+ position: number,
14
+ data: object,
15
+ authToken: string
16
+ ): Promise<object> => {
17
+ return new Promise((resolve, reject) => {
12
18
  const request = client.put(
13
19
  `/api/v1/dashboard/card`,
14
20
  {
15
21
  id: id,
16
22
  position: position,
17
- data: data ? data : {},
23
+ data: data || {},
18
24
  },
19
25
  { headers: { authorization: authToken } }
20
26
  );
@@ -31,9 +37,10 @@ export const addCardToDashboard = (id, position, data, authToken) => {
31
37
  /**
32
38
  * Get the list of the cards from the dashboard
33
39
  * @param {String} authToken - Authorization token
40
+ * @returns {Promise<Object>}
34
41
  */
35
- export const getDashboardCardsList = (authToken) => {
36
- return new Promise(function (resolve, reject) {
42
+ const getDashboardCardsList = (authToken: string): Promise<object> => {
43
+ return new Promise((resolve, reject) => {
37
44
  const request = client.get(`/api/v1/dashboard/card`, {
38
45
  headers: { authorization: authToken },
39
46
  });
@@ -51,9 +58,13 @@ export const getDashboardCardsList = (authToken) => {
51
58
  * Remove a card from the dashboard
52
59
  * @param {String} id - the id of the configuration element
53
60
  * @param {String} authToken - Authorization token
61
+ * @returns {Promise<Object>}
54
62
  */
55
- export const removeCardFromDashboard = (id, authToken) => {
56
- return new Promise(function (resolve, reject) {
63
+ const removeCardFromDashboard = (
64
+ id: string,
65
+ authToken: string
66
+ ): Promise<object> => {
67
+ return new Promise((resolve, reject) => {
57
68
  const request = client.delete(`/api/v1/dashboard/card`, {
58
69
  headers: { authorization: authToken },
59
70
  data: {
@@ -70,10 +81,8 @@ export const removeCardFromDashboard = (id, authToken) => {
70
81
  });
71
82
  };
72
83
 
73
- const dashboard = {
84
+ export default {
74
85
  addCardToDashboard,
75
86
  getDashboardCardsList,
76
87
  removeCardFromDashboard,
77
88
  };
78
-
79
- export default dashboard;
@@ -1,25 +1,35 @@
1
1
  import { client } from "./axiosClient.js";
2
2
 
3
+ interface Activity {
4
+ // Define the structure of an activity object here
5
+ }
6
+
7
+ interface Filter {
8
+ // Define the structure of a filter object here
9
+ }
10
+
3
11
  /**
4
12
  * Create department training plan and set information
5
13
  * @param {String} name
6
14
  * @param {String} summary
7
- * @param {Array<Object>} activities
15
+ * @param {String} skill
16
+ * @param {Array<Activity>} activities
8
17
  * @param {String} token Authorization token
18
+ * @returns {Promise<Object>}
9
19
  */
10
- export const createDepartmentTrainingPlan = (
11
- name,
12
- summary,
13
- skill,
14
- activities,
15
- token
16
- ) => {
17
- return new Promise(function (resolve, reject) {
20
+ const createDepartmentTrainingPlan = (
21
+ name: string,
22
+ summary: string,
23
+ skill: string,
24
+ activities: Activity[],
25
+ token: string
26
+ ): Promise<object> => {
27
+ return new Promise((resolve, reject) => {
18
28
  const requestData = {
19
- name: name ? name : "",
20
- summary: summary ? summary : "",
21
- skill: skill ? skill : "",
22
- activities: activities ? activities : [],
29
+ name: name || "",
30
+ summary: summary || "",
31
+ skill: skill || "",
32
+ activities: activities || [],
23
33
  };
24
34
  let confirmationRequest = client.put(
25
35
  "api/v1/departmentTrainingPlans",
@@ -42,9 +52,13 @@ export const createDepartmentTrainingPlan = (
42
52
  * Delete department training plan
43
53
  * @param {String} id The id of the template to be deleted
44
54
  * @param {String} token Authorization token
55
+ * @returns {Promise<Object>}
45
56
  */
46
- export const deleteDepartmentTrainingPlan = (id, token) => {
47
- return new Promise(function (resolve, reject) {
57
+ const deleteDepartmentTrainingPlan = (
58
+ id: string,
59
+ token: string
60
+ ): Promise<object> => {
61
+ return new Promise((resolve, reject) => {
48
62
  const request = client.delete(`api/v1/departmenttrainingplans/`, {
49
63
  headers: { authorization: token },
50
64
  data: {
@@ -62,16 +76,18 @@ export const deleteDepartmentTrainingPlan = (id, token) => {
62
76
  };
63
77
 
64
78
  /**
65
- * Get department traing plan information
79
+ * Get department training plan information
66
80
  * @param {Number} id The id of the plan
81
+ * @param {String} version The version of the plan
67
82
  * @param {String} token Authorization token
83
+ * @returns {Promise<Object>}
68
84
  */
69
- export const getDepartmentTrainingPlanInformationById = (
70
- id,
71
- version,
72
- token
73
- ) => {
74
- return new Promise(function (resolve, reject) {
85
+ const getDepartmentTrainingPlanInformationById = (
86
+ id: number,
87
+ version: string,
88
+ token: string
89
+ ): Promise<object> => {
90
+ return new Promise((resolve, reject) => {
75
91
  let confirmationRequest = client.get(
76
92
  `api/v1/departmenttrainingplans/${id}/${version}`,
77
93
  {
@@ -90,13 +106,19 @@ export const getDepartmentTrainingPlanInformationById = (
90
106
 
91
107
  /**
92
108
  * Get department training plan list
93
- * @param {Object} filter The filter used to select the plan
109
+ * @param {Filter} filter The filter used to select the plan
110
+ * @param {String} version The version of the plan
94
111
  * @param {String} token Authorization token
112
+ * @returns {Promise<Object>}
95
113
  */
96
- export const getDepartmentTrainingPlanList = (filter, version, token) => {
97
- return new Promise(function (resolve, reject) {
114
+ const getDepartmentTrainingPlanList = (
115
+ filter: Filter,
116
+ version: string,
117
+ token: string
118
+ ): Promise<object> => {
119
+ return new Promise((resolve, reject) => {
98
120
  const requestData = {
99
- filter: filter ? filter : "",
121
+ filter: filter || "",
100
122
  version: version,
101
123
  };
102
124
  let confirmationRequest = client.post(
@@ -120,9 +142,13 @@ export const getDepartmentTrainingPlanList = (filter, version, token) => {
120
142
  * Publish department training plan
121
143
  * @param {number} id The id of the plan to be published
122
144
  * @param {String} token Authorization token
145
+ * @returns {Promise<Object>}
123
146
  */
124
- export const publishDepartmentTrainingPlan = (id, token) => {
125
- return new Promise(function (resolve, reject) {
147
+ const publishDepartmentTrainingPlan = (
148
+ id: number,
149
+ token: string
150
+ ): Promise<object> => {
151
+ return new Promise((resolve, reject) => {
126
152
  let confirmationRequest = client.post(
127
153
  `api/v1/departmenttrainingplans/publish/${id}`,
128
154
  {},
@@ -145,9 +171,14 @@ export const publishDepartmentTrainingPlan = (id, token) => {
145
171
  * @param {String} id The id of the plan to be updated
146
172
  * @param {Object} data Data used to update the plan
147
173
  * @param {String} token Authorization token
174
+ * @returns {Promise<Object>}
148
175
  */
149
- export const setDepartmentTrainingPlanInformation = (id, data, token) => {
150
- return new Promise(function (resolve, reject) {
176
+ const setDepartmentTrainingPlanInformation = (
177
+ id: string,
178
+ data: object,
179
+ token: string
180
+ ): Promise<object> => {
181
+ return new Promise((resolve, reject) => {
151
182
  const requestData = {
152
183
  data: data,
153
184
  };
@@ -168,7 +199,7 @@ export const setDepartmentTrainingPlanInformation = (id, data, token) => {
168
199
  });
169
200
  };
170
201
 
171
- const departmentTraingPlans = {
202
+ const departmentTrainingPlans = {
172
203
  createDepartmentTrainingPlan,
173
204
  deleteDepartmentTrainingPlan,
174
205
  getDepartmentTrainingPlanInformationById,
@@ -177,4 +208,4 @@ const departmentTraingPlans = {
177
208
  setDepartmentTrainingPlanInformation,
178
209
  };
179
210
 
180
- export default departmentTraingPlans;
211
+ export default departmentTrainingPlans;
@@ -5,9 +5,14 @@ import { client } from "./axiosClient.js";
5
5
  * @param {String} groupId The group Id
6
6
  * @param {Array<String>} permissions The permissions to be added
7
7
  * @param {String} authToken - Authentication token
8
+ * @returns {Promise<Object>}
8
9
  */
9
- export const addPermissionsToGroup = (groupId, permissions, authToken) => {
10
- return new Promise(function (resolve, reject) {
10
+ const addPermissionsToGroup = (
11
+ groupId: string,
12
+ permissions: string[],
13
+ authToken: string
14
+ ): Promise<object> => {
15
+ return new Promise((resolve, reject) => {
11
16
  const request = client.post(
12
17
  `api/v1/groups/permissions/add`,
13
18
  {
@@ -31,9 +36,14 @@ export const addPermissionsToGroup = (groupId, permissions, authToken) => {
31
36
  * @param {String} groupId The group Id
32
37
  * @param {Array<String>} users The users to be added
33
38
  * @param {String} authToken - Authentication token
39
+ * @returns {Promise<Object>}
34
40
  */
35
- export const addUsersToGroup = (groupId, users, authToken) => {
36
- return new Promise(function (resolve, reject) {
41
+ const addUsersToGroup = (
42
+ groupId: string,
43
+ users: string[],
44
+ authToken: string
45
+ ): Promise<object> => {
46
+ return new Promise((resolve, reject) => {
37
47
  const request = client.post(
38
48
  `api/v1/groups/users/add`,
39
49
  {
@@ -57,9 +67,14 @@ export const addUsersToGroup = (groupId, users, authToken) => {
57
67
  * @param {String} name The name of the group
58
68
  * @param {String} description The description of the group
59
69
  * @param {String} authToken The authorization token
70
+ * @returns {Promise<Object>}
60
71
  */
61
- export const createGroup = (name, description, authToken) => {
62
- return new Promise(function (resolve, reject) {
72
+ const createGroup = (
73
+ name: string,
74
+ description: string,
75
+ authToken: string
76
+ ): Promise<object> => {
77
+ return new Promise((resolve, reject) => {
63
78
  const request = client.post(
64
79
  `api/v1/groups/group`,
65
80
  {
@@ -83,9 +98,14 @@ export const createGroup = (name, description, authToken) => {
83
98
  * @param {String} groupId The group to be deleted
84
99
  * @param {String} defaultGroupId The default group all the users will be moved to
85
100
  * @param {String} authToken The authentication token
101
+ * @returns {Promise<Object>}
86
102
  */
87
- export const deleteGroup = (groupId, defaultGroupId, authToken) => {
88
- return new Promise(function (resolve, reject) {
103
+ const deleteGroup = (
104
+ groupId: string,
105
+ defaultGroupId: string,
106
+ authToken: string
107
+ ): Promise<object> => {
108
+ return new Promise((resolve, reject) => {
89
109
  const request = client.delete(`api/v1/groups/delete`, {
90
110
  headers: { authorization: authToken },
91
111
  data: {
@@ -106,9 +126,10 @@ export const deleteGroup = (groupId, defaultGroupId, authToken) => {
106
126
  /**
107
127
  * Get all permissions
108
128
  * @param {String} authToken The authentication token
129
+ * @returns {Promise<Object>}
109
130
  */
110
- export const getAllPermissions = (authToken) => {
111
- return new Promise(function (resolve, reject) {
131
+ const getAllPermissions = (authToken: string): Promise<object> => {
132
+ return new Promise((resolve, reject) => {
112
133
  const request = client.get(`api/v1/groups/permissions/getAllPermissions`, {
113
134
  headers: { authorization: authToken },
114
135
  });
@@ -126,9 +147,10 @@ export const getAllPermissions = (authToken) => {
126
147
  * Get group by Id
127
148
  * @param {String} groupId The group Id
128
149
  * @param {String} authToken The authentication token
150
+ * @returns {Promise<Object>}
129
151
  */
130
- export const getGroupById = (groupId, authToken) => {
131
- return new Promise(function (resolve, reject) {
152
+ const getGroupById = (groupId: string, authToken: string): Promise<object> => {
153
+ return new Promise((resolve, reject) => {
132
154
  const request = client.get(`api/v1/groups/group/${groupId}`, {
133
155
  headers: { authorization: authToken },
134
156
  });
@@ -145,9 +167,10 @@ export const getGroupById = (groupId, authToken) => {
145
167
  /**
146
168
  * Get groups for current tenant
147
169
  * @param {String} authToken The authentication token
170
+ * @returns {Promise<Object>}
148
171
  */
149
- export const getGroups = (authToken) => {
150
- return new Promise(function (resolve, reject) {
172
+ const getGroups = (authToken: string): Promise<object> => {
173
+ return new Promise((resolve, reject) => {
151
174
  const request = client.get(`api/v1/groups/`, {
152
175
  headers: { authorization: authToken },
153
176
  });
@@ -164,9 +187,10 @@ export const getGroups = (authToken) => {
164
187
  /**
165
188
  * Get current user permissions
166
189
  * @param {String} authToken The authentication token
190
+ * @returns {Promise<Object>}
167
191
  */
168
- export const getUserPermissions = (authToken) => {
169
- return new Promise(function (resolve, reject) {
192
+ const getUserPermissions = (authToken: string): Promise<object> => {
193
+ return new Promise((resolve, reject) => {
170
194
  const request = client.get(`api/v1/groups/users/getuserpermissions`, {
171
195
  headers: { authorization: authToken },
172
196
  });
@@ -185,9 +209,14 @@ export const getUserPermissions = (authToken) => {
185
209
  * @param {String} groupId The group Id
186
210
  * @param {Array<String>} permissions The permissions to be removed from the group
187
211
  * @param {String} authToken The authentication token
212
+ * @returns {Promise<Object>}
188
213
  */
189
- export const removePermissionsFromGroup = (groupId, permissions, authToken) => {
190
- return new Promise(function (resolve, reject) {
214
+ const removePermissionsFromGroup = (
215
+ groupId: string,
216
+ permissions: string[],
217
+ authToken: string
218
+ ): Promise<object> => {
219
+ return new Promise((resolve, reject) => {
191
220
  const request = client.post(
192
221
  `api/v1/groups/permissions/remove/`,
193
222
  {
@@ -211,9 +240,14 @@ export const removePermissionsFromGroup = (groupId, permissions, authToken) => {
211
240
  * @param {String} groupId The group Id
212
241
  * @param {Array<String>} users The users to be removed from the group
213
242
  * @param {String} authToken The authentication token
243
+ * @returns {Promise<Object>}
214
244
  */
215
- export const removeUsersFromGroup = (groupId, users, authToken) => {
216
- return new Promise(function (resolve, reject) {
245
+ const removeUsersFromGroup = (
246
+ groupId: string,
247
+ users: string[],
248
+ authToken: string
249
+ ): Promise<object> => {
250
+ return new Promise((resolve, reject) => {
217
251
  const request = client.post(
218
252
  `api/v1/groups/users/remove/`,
219
253
  {
@@ -232,13 +266,14 @@ export const removeUsersFromGroup = (groupId, users, authToken) => {
232
266
  });
233
267
  };
234
268
 
235
- /*
236
- * Set group as defualt
269
+ /**
270
+ * Set group as default
237
271
  * @param {String} groupId The group Id
238
272
  * @param {String} authToken The authentication token
273
+ * @returns {Promise<Object>}
239
274
  */
240
- export const setDefault = (groupId, authToken) => {
241
- return new Promise(function (resolve, reject) {
275
+ const setDefault = (groupId: string, authToken: string): Promise<object> => {
276
+ return new Promise((resolve, reject) => {
242
277
  const request = client.put(
243
278
  `api/v1/groups/setDefault/`,
244
279
  {
@@ -262,9 +297,15 @@ export const setDefault = (groupId, authToken) => {
262
297
  * @param {String} name The updated name of the group
263
298
  * @param {String} description The updated description of the group
264
299
  * @param {String} authToken The authentication token
300
+ * @returns {Promise<Object>}
265
301
  */
266
- export const updateGroup = (groupId, name, description, authToken) => {
267
- return new Promise(function (resolve, reject) {
302
+ const updateGroup = (
303
+ groupId: string,
304
+ name: string,
305
+ description: string,
306
+ authToken: string
307
+ ): Promise<object> => {
308
+ return new Promise((resolve, reject) => {
268
309
  const request = client.patch(
269
310
  `api/v1/groups/group/`,
270
311
  {
@@ -284,7 +325,7 @@ export const updateGroup = (groupId, name, description, authToken) => {
284
325
  });
285
326
  };
286
327
 
287
- const groups = {
328
+ export default {
288
329
  addPermissionsToGroup,
289
330
  addUsersToGroup,
290
331
  createGroup,
@@ -298,5 +339,3 @@ const groups = {
298
339
  setDefault,
299
340
  updateGroup,
300
341
  };
301
-
302
- export default groups;