@stackfactor/client-api 1.1.128 → 1.1.129

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 (38) hide show
  1. package/lib/{actionNotifications.js → actionNotifications.ts} +18 -6
  2. package/lib/{address.js → address.ts} +3 -2
  3. package/lib/{aiAssistant.js → aiAssistant.ts} +58 -25
  4. package/lib/{avatar.js → avatar.ts} +10 -4
  5. package/lib/axiosClient.ts +92 -0
  6. package/lib/{config.js → config.ts} +19 -6
  7. package/lib/{constants.js → constants.ts} +6 -41
  8. package/lib/{dashboard.js → dashboard.ts} +17 -7
  9. package/lib/{departmentTrainingPlans.js → departmentTrainingPlans.ts} +57 -23
  10. package/lib/{groups.js → groups.ts} +67 -26
  11. package/lib/{integration.js → integration.ts} +100 -43
  12. package/lib/{integrationConfiguration.js → integrationConfiguration.ts} +25 -8
  13. package/lib/integrations/{contentGenerator.js → contentGenerator.ts} +38 -18
  14. package/lib/{learningContent.js → learningContent.ts} +127 -66
  15. package/lib/{learningPath.js → learningPath.ts} +56 -29
  16. package/lib/{logger.js → logger.ts} +17 -5
  17. package/lib/{microSkillsQuizes.js → microSkillsQuizes.ts} +15 -6
  18. package/lib/{quotas.js → quotas.ts} +10 -5
  19. package/lib/{role.js → role.ts} +114 -66
  20. package/lib/{roleTemplate.js → roleTemplate.ts} +63 -28
  21. package/lib/{security.js → security.ts} +14 -10
  22. package/lib/{skill.js → skill.ts} +119 -82
  23. package/lib/{skillAssessments.js → skillAssessmentTestingSession.ts} +39 -17
  24. package/lib/skillAssessments.ts +192 -0
  25. package/lib/{skillTemplate.js → skillTemplate.ts} +70 -39
  26. package/lib/{talentTransfromation.js → talentTransfromation.ts} +21 -15
  27. package/lib/{teams.js → teams.ts} +71 -27
  28. package/lib/{tenants.js → tenants.ts} +16 -7
  29. package/lib/{trainingPlans.js → trainingPlans.ts} +96 -59
  30. package/lib/{trainingPlansProficiencyLevels.js → trainingPlansProficiencyLevels.ts} +29 -23
  31. package/lib/{userInformation.js → userInformation.ts} +25 -12
  32. package/lib/{users.js → users.ts} +172 -154
  33. package/lib/{utils.js → utils.ts} +6 -6
  34. package/package.json +3 -1
  35. package/lib/axiosClient.js +0 -82
  36. package/lib/skillAssessmentTestingSession.js +0 -147
  37. /package/{exports.js → exports.ts} +0 -0
  38. /package/{index.js → index.ts} +0 -0
@@ -5,8 +5,8 @@ import { client } from "./axiosClient.js";
5
5
  * @param {String} id The id of the training plan to be deleted
6
6
  * @param {String} token Authorization token
7
7
  */
8
- const archiveTrainingPlan = (id, token) => {
9
- return new Promise(function (resolve, reject) {
8
+ const archiveTrainingPlan = (id: string, token: string): Promise<object> => {
9
+ return new Promise((resolve, reject) => {
10
10
  const request = client.get(`api/v1/trainingplans/archive/${id}`, {
11
11
  headers: { authorization: token },
12
12
  });
@@ -27,14 +27,19 @@ const archiveTrainingPlan = (id, token) => {
27
27
  * @param {Boolean} saveAsDraft Save as draft flag
28
28
  * @param {String} token Authorization token
29
29
  */
30
- const createTrainingPlan = (data, type, saveAsDraft, token) => {
31
- return new Promise(function (resolve, reject) {
32
- const requestData = {
33
- data: {
34
- ...data,
35
- },
36
- saveAsDraft,
37
- type,
30
+ const createTrainingPlan = (
31
+ data: object,
32
+ type: number,
33
+ saveAsDraft: boolean,
34
+ token: string
35
+ ): Promise<void> => {
36
+ return new Promise((resolve, reject) => {
37
+ const requestData: { version: string; includeDeleted: boolean; includeDetailedInformation: boolean; returnDefaultIfVersionNotAvailable: boolean; fields?: string[]; types?: number[]; users?: string[] } = {
38
+ version: "1.0",
39
+ includeDeleted: false,
40
+ includeDetailedInformation: true,
41
+ returnDefaultIfVersionNotAvailable: true,
42
+ types: [type],
38
43
  };
39
44
  let confirmationRequest = client.put("api/v1/trainingplans", requestData, {
40
45
  headers: { authorization: token },
@@ -55,15 +60,18 @@ const createTrainingPlan = (data, type, saveAsDraft, token) => {
55
60
  * @param {String} comments The comments for approver
56
61
  * @param {String} token Authorization token
57
62
  */
58
- const deleteTrainingPlan = (id, comments, token) => {
59
- return new Promise(function (resolve, reject) {
60
- const data = {
63
+ const deleteTrainingPlan = (
64
+ id: string,
65
+ comments: string,
66
+ token: string
67
+ ): Promise<object> => {
68
+ return new Promise((resolve, reject) => {
69
+ const data: { id: string; comments?: string } = {
61
70
  id: id,
62
71
  };
63
72
  if (comments) data.comments = comments;
64
73
  const request = client.delete(`api/v1/trainingplans/`, {
65
74
  headers: { authorization: token },
66
-
67
75
  data: data,
68
76
  });
69
77
  request
@@ -81,8 +89,11 @@ const deleteTrainingPlan = (id, comments, token) => {
81
89
  * @param {String} id The id of the training plan to be deleted
82
90
  * @param {String} token Authorization token
83
91
  */
84
- const discardTrainingPlanChanges = (id, token) => {
85
- return new Promise(function (resolve, reject) {
92
+ const discardTrainingPlanChanges = (
93
+ id: string,
94
+ token: string
95
+ ): Promise<object> => {
96
+ return new Promise((resolve, reject) => {
86
97
  const request = client.get(`api/v1/trainingplans/discard/${id}`, {
87
98
  headers: { authorization: token },
88
99
  });
@@ -97,7 +108,7 @@ const discardTrainingPlanChanges = (id, token) => {
97
108
  };
98
109
 
99
110
  /**
100
- * Create a new baselie
111
+ * Create a new baseline
101
112
  * @param {String} id The Id of the plan for which a new baseline is to be generated
102
113
  * @param {Object} data The data
103
114
  * @param {Boolean} returnMinimized If set to true just high level plan baseline information will be returned
@@ -105,14 +116,14 @@ const discardTrainingPlanChanges = (id, token) => {
105
116
  * @param {String} token Authorization token
106
117
  */
107
118
  const generateNewBaseline = (
108
- id,
109
- data,
110
- returnMinimized,
111
- saveBaseline,
112
- token
113
- ) => {
114
- return new Promise(function (resolve, reject) {
115
- const requestData = {
119
+ id: string,
120
+ data: object,
121
+ returnMinimized: boolean,
122
+ saveBaseline: boolean,
123
+ token: string
124
+ ): Promise<object> => {
125
+ return new Promise((resolve, reject) => {
126
+ const requestData: { data: object; returnMinimized: boolean; saveBaseline: boolean; id?: string } = {
116
127
  data: data,
117
128
  returnMinimized: returnMinimized,
118
129
  saveBaseline: saveBaseline,
@@ -136,12 +147,17 @@ const generateNewBaseline = (
136
147
  };
137
148
 
138
149
  /**
139
- * Get traing plan information
150
+ * Get training plan information
140
151
  * @param {String} id The id of the training plan
152
+ * @param {String} version The version of the training plan
141
153
  * @param {String} token Authorization token
142
154
  */
143
- const getTrainingPlanById = (id, version, token) => {
144
- return new Promise(function (resolve, reject) {
155
+ const getTrainingPlanById = (
156
+ id: string,
157
+ version: string,
158
+ token: string
159
+ ): Promise<object> => {
160
+ return new Promise((resolve, reject) => {
145
161
  let confirmationRequest = client.get(
146
162
  `api/v1/trainingplans/${id}/${version}`,
147
163
  {
@@ -162,8 +178,10 @@ const getTrainingPlanById = (id, version, token) => {
162
178
  * Get tasks summary for a recipient across all of the training plans
163
179
  * @param {String} token Authorization token
164
180
  */
165
- const getAllTrainingPlansTasksSummary = async (token = null) => {
166
- return new Promise(function (resolve, reject) {
181
+ const getAllTrainingPlansTasksSummary = (
182
+ token: string | null = null
183
+ ): Promise<object> => {
184
+ return new Promise((resolve, reject) => {
167
185
  let confirmationRequest = client.get(`api/v1/trainingplans/taskssummary`, {
168
186
  headers: token ? { authorization: token } : {},
169
187
  });
@@ -176,28 +194,30 @@ const getAllTrainingPlansTasksSummary = async (token = null) => {
176
194
  });
177
195
  });
178
196
  };
197
+
179
198
  /**
180
199
  * Get training plans list
181
- * @param {Array<ObjectId>} users The list of users for which the plans should be loaded
182
- * @param {Array<Number>} types The types of plans to be loaded
200
+ * @param {Array<string>} users The list of users for which the plans should be loaded
201
+ * @param {Array<number>} types The types of plans to be loaded
183
202
  * @param {String} version The version of the document to be retrieved
184
- * @param {Array<String>} fields The fields to be selected
203
+ * @param {Array<string>} fields The fields to be selected
185
204
  * @param {Boolean} includeDeleted If set true it will return deleted plans too
205
+ * @param {Boolean} includeDetailedInformation If set true it will return detailed information
186
206
  * @param {Boolean} returnDefaultIfVersionNotAvailable If set to true it will load the draft information if the plan was never published
187
207
  * @param {String} token Authorization token
188
208
  */
189
209
  const getListOfTrainingPlans = (
190
- users,
191
- types,
192
- version,
193
- fields,
194
- includeDeleted,
195
- includeDetailedInformation,
196
- returnDefaultIfVersionNotAvailable,
197
- token
198
- ) => {
199
- return new Promise(function (resolve, reject) {
200
- const requestData = {
210
+ users: string[],
211
+ types: number[],
212
+ version: string,
213
+ fields: string[],
214
+ includeDeleted: boolean,
215
+ includeDetailedInformation: boolean,
216
+ returnDefaultIfVersionNotAvailable: boolean,
217
+ token: string
218
+ ): Promise<object> => {
219
+ return new Promise((resolve, reject) => {
220
+ const requestData: { version: string; includeDeleted: boolean; includeDetailedInformation: boolean; returnDefaultIfVersionNotAvailable: boolean; fields?: string[]; types?: number[]; users?: string[] } = {
201
221
  version: version,
202
222
  includeDeleted: includeDeleted,
203
223
  includeDetailedInformation: includeDetailedInformation,
@@ -225,9 +245,13 @@ const getListOfTrainingPlans = (
225
245
  * @param {String} comments The comments to be include with the request
226
246
  * @param {String} token Authorization token
227
247
  */
228
- const publishTrainingPlan = (id, comments, token) => {
229
- return new Promise(function (resolve, reject) {
230
- let data = {};
248
+ const publishTrainingPlan = (
249
+ id: string,
250
+ comments: string,
251
+ token: string
252
+ ): Promise<object> => {
253
+ return new Promise((resolve, reject) => {
254
+ let data: { comments?: string } = {};
231
255
  if (comments) data.comments = comments;
232
256
  let confirmationRequest = client.post(
233
257
  `api/v1/trainingplans/publish/${id}`,
@@ -248,12 +272,18 @@ const publishTrainingPlan = (id, comments, token) => {
248
272
 
249
273
  /**
250
274
  * Update training plan
251
- * @param {String} id The ID of the training plan
275
+ * @param {String} planId The ID of the training plan
252
276
  * @param {Object} data The updated data
277
+ * @param {Boolean} saveAsDraft Save as draft flag
253
278
  * @param {String} token Authorization token
254
279
  */
255
- const updateTrainingPlan = (planId, data, saveAsDraft, token) => {
256
- return new Promise(function (resolve, reject) {
280
+ const updateTrainingPlan = (
281
+ planId: string,
282
+ data: object,
283
+ saveAsDraft: boolean,
284
+ token: string
285
+ ): Promise<object> => {
286
+ return new Promise((resolve, reject) => {
257
287
  const requestData = {
258
288
  data: data,
259
289
  id: planId,
@@ -283,8 +313,12 @@ const updateTrainingPlan = (planId, data, saveAsDraft, token) => {
283
313
  * @param {String} token
284
314
  * @returns {Promise<Object>}
285
315
  */
286
- const updateTrainingPlanTaskStatus = (id, status, token) => {
287
- return new Promise(function (resolve, reject) {
316
+ const updateTrainingPlanTaskStatus = (
317
+ id: string,
318
+ status: number,
319
+ token: string
320
+ ): Promise<object> => {
321
+ return new Promise((resolve, reject) => {
288
322
  let data = {
289
323
  id: id,
290
324
  status: status,
@@ -294,7 +328,7 @@ const updateTrainingPlanTaskStatus = (id, status, token) => {
294
328
  });
295
329
  confirmationRequest
296
330
  .then(() => {
297
- resolve();
331
+ resolve({});
298
332
  })
299
333
  .catch((error) => {
300
334
  reject(error);
@@ -306,12 +340,15 @@ const updateTrainingPlanTaskStatus = (id, status, token) => {
306
340
  * Update a task
307
341
  * @param {String} planId
308
342
  * @param {Object} data Ordered array of objects containing the activity Id and the new status
309
- * @param {Function} successCallBack
310
- * @param {Function} failCallBack
311
- * @returns {Object} An object containing the task information
343
+ * @param {String} token Authorization token
344
+ * @returns {Promise<Object>}
312
345
  */
313
- const updateActivities = (planId, data, token) => {
314
- return new Promise(function (resolve, reject) {
346
+ const updateActivities = (
347
+ planId: string,
348
+ data: object,
349
+ token: string
350
+ ): Promise<object> => {
351
+ return new Promise((resolve, reject) => {
315
352
  let confirmationRequest = client.post(
316
353
  `api/v1/trainingplans/${planId}/activities`,
317
354
  data,
@@ -321,7 +358,7 @@ const updateActivities = (planId, data, token) => {
321
358
  );
322
359
  confirmationRequest
323
360
  .then(() => {
324
- resolve();
361
+ resolve({});
325
362
  })
326
363
  .catch((error) => {
327
364
  reject(error);
@@ -4,10 +4,13 @@ import { client } from "./axiosClient.js";
4
4
  * Get training plan proficiency level
5
5
  * @param {String} proficiencyLevelId
6
6
  * @param {String} token
7
- * @returns {Object} An object containing the proficiency level information
7
+ * @returns {Promise<Object>} An object containing the proficiency level information
8
8
  */
9
- const getTrainingPlanProficiencyLevel = (proficiencyLevelId, token) => {
10
- return new Promise(function (resolve, reject) {
9
+ const getTrainingPlanProficiencyLevel = (
10
+ proficiencyLevelId: string,
11
+ token: string
12
+ ): Promise<object> => {
13
+ return new Promise((resolve, reject) => {
11
14
  let confirmationRequest = client.get(
12
15
  `api/v1/trainingplans/proficiencylevels/${proficiencyLevelId}`,
13
16
  {
@@ -30,14 +33,15 @@ const getTrainingPlanProficiencyLevel = (proficiencyLevelId, token) => {
30
33
  * @param {Boolean} includeDetailedInformation If set to true it will return detailed information for each plan
31
34
  * @param {Boolean} includeArchived If set to true it will return all the closed items too
32
35
  * @param {String} token Authorization token
36
+ * @returns {Promise<Object>}
33
37
  */
34
38
  const getTrainingPlanProficiencyLevelList = (
35
- includeDeleted,
36
- includeDetailedInformation,
37
- includeArchived,
38
- token
39
- ) => {
40
- return new Promise(function (resolve, reject) {
39
+ includeDeleted: boolean,
40
+ includeDetailedInformation: boolean,
41
+ includeArchived: boolean,
42
+ token: string
43
+ ): Promise<object> => {
44
+ return new Promise((resolve, reject) => {
41
45
  const requestData = {
42
46
  includeArchived: includeArchived,
43
47
  includeDeleted: includeDeleted,
@@ -61,13 +65,16 @@ const getTrainingPlanProficiencyLevelList = (
61
65
  };
62
66
 
63
67
  /**
64
- * Reoder training plan proficiency levels
65
- * @param {Array<Object>} data
68
+ * Reorder training plan proficiency levels
69
+ * @param {Array<Object>} order
66
70
  * @param {String} token
67
- * @returns
71
+ * @returns {Promise<void>}
68
72
  */
69
- const reorderTrainingPlansProficiencyLevels = (order, token) => {
70
- return new Promise(function (resolve, reject) {
73
+ const reorderTrainingPlansProficiencyLevels = (
74
+ order: object[],
75
+ token: string
76
+ ): Promise<void> => {
77
+ return new Promise((resolve, reject) => {
71
78
  let confirmationRequest = client.post(
72
79
  `api/v1/trainingplans/proficiencylevels/reorder`,
73
80
  { order: order },
@@ -87,18 +94,17 @@ const reorderTrainingPlansProficiencyLevels = (order, token) => {
87
94
 
88
95
  /**
89
96
  * Update a training plan proficiency level
90
- * @param {String} planId
97
+ * @param {String} proficiencyLevelId
91
98
  * @param {Object} data Ordered array of objects containing the activity Id and the new status
92
- * @param {Function} successCallBack
93
- * @param {Function} failCallBack
94
- * @returns {Object} An object containing the task information
99
+ * @param {String} token
100
+ * @returns {Promise<void>}
95
101
  */
96
102
  const updateTrainingPlanProficiencyLevel = (
97
- proficiencyLevelId,
98
- data,
99
- token
100
- ) => {
101
- return new Promise(function (resolve, reject) {
103
+ proficiencyLevelId: string,
104
+ data: object,
105
+ token: string
106
+ ): Promise<void> => {
107
+ return new Promise((resolve, reject) => {
102
108
  let confirmationRequest = client.post(
103
109
  `api/v1/trainingplans/proficiencylevel/${proficiencyLevelId}`,
104
110
  data,
@@ -6,9 +6,15 @@ import { client } from "./axiosClient.js";
6
6
  * @param {String} property
7
7
  * @param {Object} data
8
8
  * @param {String} token Authorization token
9
+ * @returns {Promise<Object>}
9
10
  */
10
- const addEntryToArrayBusinessProperty = (userId, property, data, token) => {
11
- return new Promise(function (resolve, reject) {
11
+ const addEntryToArrayBusinessProperty = (
12
+ userId: string,
13
+ property: string,
14
+ data: object,
15
+ token: string
16
+ ): Promise<object> => {
17
+ return new Promise((resolve, reject) => {
12
18
  const requestData = {
13
19
  data: data,
14
20
  };
@@ -30,14 +36,20 @@ const addEntryToArrayBusinessProperty = (userId, property, data, token) => {
30
36
  };
31
37
 
32
38
  /**
33
- * Update an entry from an array type business property such as experience, education or certifications
39
+ * Remove an entry from an array type business property such as experience, education or certifications
34
40
  * @param {String} userId
35
41
  * @param {String} property
36
42
  * @param {String} id
37
43
  * @param {String} token Authorization token
44
+ * @returns {Promise<Object>}
38
45
  */
39
- const removeEntryFromArrayBusinessProperty = (userId, property, id, token) => {
40
- return new Promise(function (resolve, reject) {
46
+ const removeEntryFromArrayBusinessProperty = (
47
+ userId: string,
48
+ property: string,
49
+ id: string,
50
+ token: string
51
+ ): Promise<object> => {
52
+ return new Promise((resolve, reject) => {
41
53
  const confirmationRequest = client.delete(
42
54
  `api/v1/user/arrayproperty/${userId}/${property}/${id}`,
43
55
  {
@@ -61,15 +73,16 @@ const removeEntryFromArrayBusinessProperty = (userId, property, id, token) => {
61
73
  * @param {String} id
62
74
  * @param {Object} data
63
75
  * @param {String} token Authorization token
76
+ * @returns {Promise<Object>}
64
77
  */
65
78
  const updateEntryfromArrayBusinessProperty = (
66
- userId,
67
- property,
68
- id,
69
- data,
70
- token
71
- ) => {
72
- return new Promise(function (resolve, reject) {
79
+ userId: string,
80
+ property: string,
81
+ id: string,
82
+ data: object,
83
+ token: string
84
+ ): Promise<object> => {
85
+ return new Promise((resolve, reject) => {
73
86
  const requestData = {
74
87
  data: data,
75
88
  };