@easyedu/js-lsm-api 1.123.0 → 1.125.0

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 (65) hide show
  1. package/.openapi-generator/FILES +12 -0
  2. package/README.md +11 -4
  3. package/dist/apis/CourseApi.d.ts +4 -4
  4. package/dist/apis/CourseApi.js +4 -4
  5. package/dist/apis/ReportingApi.d.ts +16 -0
  6. package/dist/apis/ReportingApi.js +39 -0
  7. package/dist/esm/apis/CourseApi.d.ts +4 -4
  8. package/dist/esm/apis/CourseApi.js +4 -4
  9. package/dist/esm/apis/ReportingApi.d.ts +16 -0
  10. package/dist/esm/apis/ReportingApi.js +39 -0
  11. package/dist/esm/models/GetPortalManagementDashboard.d.ts +73 -0
  12. package/dist/esm/models/GetPortalManagementDashboard.js +72 -0
  13. package/dist/esm/models/GetPortalManagementDashboardActivityDay.d.ts +50 -0
  14. package/dist/esm/models/GetPortalManagementDashboardActivityDay.js +55 -0
  15. package/dist/esm/models/GetPortalManagementDashboardAttention.d.ts +56 -0
  16. package/dist/esm/models/GetPortalManagementDashboardAttention.js +59 -0
  17. package/dist/esm/models/GetPortalManagementDashboardEnrollmentStatus.d.ts +44 -0
  18. package/dist/esm/models/GetPortalManagementDashboardEnrollmentStatus.js +51 -0
  19. package/dist/esm/models/GetPortalManagementDashboardSummary.d.ts +74 -0
  20. package/dist/esm/models/GetPortalManagementDashboardSummary.js +71 -0
  21. package/dist/esm/models/GetPortalManagementDashboardTopCourse.d.ts +56 -0
  22. package/dist/esm/models/GetPortalManagementDashboardTopCourse.js +59 -0
  23. package/dist/esm/models/PostCourseEnrollment.d.ts +8 -4
  24. package/dist/esm/models/PutCourseEnrollment.d.ts +0 -14
  25. package/dist/esm/models/PutCourseEnrollment.js +0 -9
  26. package/dist/esm/models/index.d.ts +6 -0
  27. package/dist/esm/models/index.js +6 -0
  28. package/dist/models/GetPortalManagementDashboard.d.ts +73 -0
  29. package/dist/models/GetPortalManagementDashboard.js +79 -0
  30. package/dist/models/GetPortalManagementDashboardActivityDay.d.ts +50 -0
  31. package/dist/models/GetPortalManagementDashboardActivityDay.js +62 -0
  32. package/dist/models/GetPortalManagementDashboardAttention.d.ts +56 -0
  33. package/dist/models/GetPortalManagementDashboardAttention.js +66 -0
  34. package/dist/models/GetPortalManagementDashboardEnrollmentStatus.d.ts +44 -0
  35. package/dist/models/GetPortalManagementDashboardEnrollmentStatus.js +58 -0
  36. package/dist/models/GetPortalManagementDashboardSummary.d.ts +74 -0
  37. package/dist/models/GetPortalManagementDashboardSummary.js +78 -0
  38. package/dist/models/GetPortalManagementDashboardTopCourse.d.ts +56 -0
  39. package/dist/models/GetPortalManagementDashboardTopCourse.js +66 -0
  40. package/dist/models/PostCourseEnrollment.d.ts +8 -4
  41. package/dist/models/PutCourseEnrollment.d.ts +0 -14
  42. package/dist/models/PutCourseEnrollment.js +1 -10
  43. package/dist/models/index.d.ts +6 -0
  44. package/dist/models/index.js +6 -0
  45. package/docs/CourseApi.md +7 -5
  46. package/docs/GetPortalManagementDashboard.md +46 -0
  47. package/docs/GetPortalManagementDashboardActivityDay.md +40 -0
  48. package/docs/GetPortalManagementDashboardAttention.md +42 -0
  49. package/docs/GetPortalManagementDashboardEnrollmentStatus.md +38 -0
  50. package/docs/GetPortalManagementDashboardSummary.md +48 -0
  51. package/docs/GetPortalManagementDashboardTopCourse.md +42 -0
  52. package/docs/PutCourseEnrollment.md +0 -2
  53. package/docs/ReportingApi.md +67 -0
  54. package/package.json +1 -1
  55. package/src/apis/CourseApi.ts +4 -4
  56. package/src/apis/ReportingApi.ts +50 -0
  57. package/src/models/GetPortalManagementDashboard.ts +156 -0
  58. package/src/models/GetPortalManagementDashboardActivityDay.ts +93 -0
  59. package/src/models/GetPortalManagementDashboardAttention.ts +102 -0
  60. package/src/models/GetPortalManagementDashboardEnrollmentStatus.ts +84 -0
  61. package/src/models/GetPortalManagementDashboardSummary.ts +129 -0
  62. package/src/models/GetPortalManagementDashboardTopCourse.ts +102 -0
  63. package/src/models/PostCourseEnrollment.ts +8 -4
  64. package/src/models/PutCourseEnrollment.ts +0 -17
  65. package/src/models/index.ts +6 -0
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * LMS API
6
+ * LMS API
7
+ *
8
+ * The version of the OpenAPI document: 1.0.0
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.instanceOfGetPortalManagementDashboardTopCourse = instanceOfGetPortalManagementDashboardTopCourse;
17
+ exports.GetPortalManagementDashboardTopCourseFromJSON = GetPortalManagementDashboardTopCourseFromJSON;
18
+ exports.GetPortalManagementDashboardTopCourseFromJSONTyped = GetPortalManagementDashboardTopCourseFromJSONTyped;
19
+ exports.GetPortalManagementDashboardTopCourseToJSON = GetPortalManagementDashboardTopCourseToJSON;
20
+ exports.GetPortalManagementDashboardTopCourseToJSONTyped = GetPortalManagementDashboardTopCourseToJSONTyped;
21
+ /**
22
+ * Check if a given object implements the GetPortalManagementDashboardTopCourse interface.
23
+ */
24
+ function instanceOfGetPortalManagementDashboardTopCourse(value) {
25
+ if (!('courseId' in value) || value['courseId'] === undefined)
26
+ return false;
27
+ if (!('courseName' in value) || value['courseName'] === undefined)
28
+ return false;
29
+ if (!('enrollmentCount' in value) || value['enrollmentCount'] === undefined)
30
+ return false;
31
+ if (!('activeLearnerCount' in value) || value['activeLearnerCount'] === undefined)
32
+ return false;
33
+ if (!('completionRatePercentage' in value) || value['completionRatePercentage'] === undefined)
34
+ return false;
35
+ return true;
36
+ }
37
+ function GetPortalManagementDashboardTopCourseFromJSON(json) {
38
+ return GetPortalManagementDashboardTopCourseFromJSONTyped(json, false);
39
+ }
40
+ function GetPortalManagementDashboardTopCourseFromJSONTyped(json, ignoreDiscriminator) {
41
+ if (json == null) {
42
+ return json;
43
+ }
44
+ return {
45
+ 'courseId': json['course_id'],
46
+ 'courseName': json['course_name'],
47
+ 'enrollmentCount': json['enrollment_count'],
48
+ 'activeLearnerCount': json['active_learner_count'],
49
+ 'completionRatePercentage': json['completion_rate_percentage'],
50
+ };
51
+ }
52
+ function GetPortalManagementDashboardTopCourseToJSON(json) {
53
+ return GetPortalManagementDashboardTopCourseToJSONTyped(json, false);
54
+ }
55
+ function GetPortalManagementDashboardTopCourseToJSONTyped(value, ignoreDiscriminator = false) {
56
+ if (value == null) {
57
+ return value;
58
+ }
59
+ return {
60
+ 'course_id': value['courseId'],
61
+ 'course_name': value['courseName'],
62
+ 'enrollment_count': value['enrollmentCount'],
63
+ 'active_learner_count': value['activeLearnerCount'],
64
+ 'completion_rate_percentage': value['completionRatePercentage'],
65
+ };
66
+ }
@@ -40,15 +40,19 @@ export interface PostCourseEnrollment {
40
40
  */
41
41
  notes?: string | null;
42
42
  /**
43
- * The role/type of the user in this enrollment
43
+ * The role/type of this enrollment. A user may have one current Student and
44
+ * one current Instructor enrollment for the same course. Assign both roles
45
+ * with two requests, one for each user_type.
46
+ *
44
47
  * @type {PostCourseEnrollmentUserTypeEnum}
45
48
  * @memberof PostCourseEnrollment
46
49
  */
47
50
  userType?: PostCourseEnrollmentUserTypeEnum | null;
48
51
  /**
49
- * How to handle a learner with a prior terminal enrollment for this course.
50
- * restart creates a new enrollment period; resume reopens the latest terminal
51
- * enrollment. Active enrollments always conflict.
52
+ * How to handle a user with a prior terminal enrollment of the requested
53
+ * user_type for this course. restart creates a new enrollment period; resume
54
+ * reopens the latest terminal enrollment of that type. A current enrollment
55
+ * of the same type always conflicts.
52
56
  *
53
57
  * @type {PostCourseEnrollmentReEnrollmentModeEnum}
54
58
  * @memberof PostCourseEnrollment
@@ -24,12 +24,6 @@ export interface PutCourseEnrollment {
24
24
  * @memberof PutCourseEnrollment
25
25
  */
26
26
  status?: PutCourseEnrollmentStatusEnum;
27
- /**
28
- * The role/type of the user in this enrollment
29
- * @type {PutCourseEnrollmentUserTypeEnum}
30
- * @memberof PutCourseEnrollment
31
- */
32
- userType?: PutCourseEnrollmentUserTypeEnum;
33
27
  /**
34
28
  * End date of the enrollment (Unix timestamp)
35
29
  * @type {number}
@@ -71,14 +65,6 @@ export declare const PutCourseEnrollmentStatusEnum: {
71
65
  readonly Suspended: "Suspended";
72
66
  };
73
67
  export type PutCourseEnrollmentStatusEnum = typeof PutCourseEnrollmentStatusEnum[keyof typeof PutCourseEnrollmentStatusEnum];
74
- /**
75
- * @export
76
- */
77
- export declare const PutCourseEnrollmentUserTypeEnum: {
78
- readonly Student: "Student";
79
- readonly Instructor: "Instructor";
80
- };
81
- export type PutCourseEnrollmentUserTypeEnum = typeof PutCourseEnrollmentUserTypeEnum[keyof typeof PutCourseEnrollmentUserTypeEnum];
82
68
  /**
83
69
  * Check if a given object implements the PutCourseEnrollment interface.
84
70
  */
@@ -13,7 +13,7 @@
13
13
  * Do not edit the class manually.
14
14
  */
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.PutCourseEnrollmentUserTypeEnum = exports.PutCourseEnrollmentStatusEnum = void 0;
16
+ exports.PutCourseEnrollmentStatusEnum = void 0;
17
17
  exports.instanceOfPutCourseEnrollment = instanceOfPutCourseEnrollment;
18
18
  exports.PutCourseEnrollmentFromJSON = PutCourseEnrollmentFromJSON;
19
19
  exports.PutCourseEnrollmentFromJSONTyped = PutCourseEnrollmentFromJSONTyped;
@@ -31,13 +31,6 @@ exports.PutCourseEnrollmentStatusEnum = {
31
31
  Archived: 'Archived',
32
32
  Suspended: 'Suspended'
33
33
  };
34
- /**
35
- * @export
36
- */
37
- exports.PutCourseEnrollmentUserTypeEnum = {
38
- Student: 'Student',
39
- Instructor: 'Instructor'
40
- };
41
34
  /**
42
35
  * Check if a given object implements the PutCourseEnrollment interface.
43
36
  */
@@ -53,7 +46,6 @@ function PutCourseEnrollmentFromJSONTyped(json, ignoreDiscriminator) {
53
46
  }
54
47
  return {
55
48
  'status': json['status'] == null ? undefined : json['status'],
56
- 'userType': json['user_type'] == null ? undefined : json['user_type'],
57
49
  'enrollmentDateEnd': json['enrollment_date_end'] == null ? undefined : json['enrollment_date_end'],
58
50
  'extensionDays': json['extension_days'] == null ? undefined : json['extension_days'],
59
51
  'notes': json['notes'] == null ? undefined : json['notes'],
@@ -69,7 +61,6 @@ function PutCourseEnrollmentToJSONTyped(value, ignoreDiscriminator = false) {
69
61
  }
70
62
  return {
71
63
  'status': value['status'],
72
- 'user_type': value['userType'],
73
64
  'enrollment_date_end': value['enrollmentDateEnd'],
74
65
  'extension_days': value['extensionDays'],
75
66
  'notes': value['notes'],
@@ -117,6 +117,12 @@ export * from './GetPortalFaviconUpload';
117
117
  export * from './GetPortalInvitationSummary';
118
118
  export * from './GetPortalList';
119
119
  export * from './GetPortalLogoUpload';
120
+ export * from './GetPortalManagementDashboard';
121
+ export * from './GetPortalManagementDashboardActivityDay';
122
+ export * from './GetPortalManagementDashboardAttention';
123
+ export * from './GetPortalManagementDashboardEnrollmentStatus';
124
+ export * from './GetPortalManagementDashboardSummary';
125
+ export * from './GetPortalManagementDashboardTopCourse';
120
126
  export * from './GetPortalUser';
121
127
  export * from './GetPortalUserFieldValues';
122
128
  export * from './GetPortalUserList';
@@ -135,6 +135,12 @@ __exportStar(require("./GetPortalFaviconUpload"), exports);
135
135
  __exportStar(require("./GetPortalInvitationSummary"), exports);
136
136
  __exportStar(require("./GetPortalList"), exports);
137
137
  __exportStar(require("./GetPortalLogoUpload"), exports);
138
+ __exportStar(require("./GetPortalManagementDashboard"), exports);
139
+ __exportStar(require("./GetPortalManagementDashboardActivityDay"), exports);
140
+ __exportStar(require("./GetPortalManagementDashboardAttention"), exports);
141
+ __exportStar(require("./GetPortalManagementDashboardEnrollmentStatus"), exports);
142
+ __exportStar(require("./GetPortalManagementDashboardSummary"), exports);
143
+ __exportStar(require("./GetPortalManagementDashboardTopCourse"), exports);
138
144
  __exportStar(require("./GetPortalUser"), exports);
139
145
  __exportStar(require("./GetPortalUserFieldValues"), exports);
140
146
  __exportStar(require("./GetPortalUserList"), exports);
package/docs/CourseApi.md CHANGED
@@ -29,7 +29,7 @@ All URIs are relative to *https://sbzw93t49b.execute-api.us-east-2.amazonaws.com
29
29
  | [**postCourseDraft**](CourseApi.md#postcoursedraft) | **POST** /courses/{courseId}/draft | Create or return the single editable course draft |
30
30
  | [**postCourseDraftResourceUpdateAll**](CourseApi.md#postcoursedraftresourceupdateall) | **POST** /courses/{courseId}/draft/resources/update-all | Update all draft resource placements to their latest published versions |
31
31
  | [**postCourseDuplicate**](CourseApi.md#postcourseduplicate) | **POST** /courses/{courseId}/duplicate | Duplicate a course |
32
- | [**postCourseEnrollment**](CourseApi.md#postcourseenrollment) | **POST** /courses/{courseId}/enrollments | Create a new course enrollment |
32
+ | [**postCourseEnrollment**](CourseApi.md#postcourseenrollment) | **POST** /courses/{courseId}/enrollments | Create a new single-role course enrollment |
33
33
  | [**postCourseExport**](CourseApi.md#postcourseexport) | **POST** /courses/{courseId}/exports | Create a new SCORM export for a course |
34
34
  | [**postCourseImageUpload**](CourseApi.md#postcourseimageupload) | **POST** /courses/{courseId}/image | Upload a course image |
35
35
  | [**postCourseItemLearnerSessionsClear**](CourseApi.md#postcourseitemlearnersessionsclear) | **POST** /courses/{courseId}/versions/{courseVersionId}/items/{itemId}/learners/{userId}/sessions/clear | Clear all live sessions for a learner and course item |
@@ -40,7 +40,7 @@ All URIs are relative to *https://sbzw93t49b.execute-api.us-east-2.amazonaws.com
40
40
  | [**postCourseVersionSection**](CourseApi.md#postcourseversionsection) | **POST** /courses/{courseId}/draft/sections | Add a root or nested section to the editable course draft |
41
41
  | [**postCourseVersionSectionDuplicate**](CourseApi.md#postcourseversionsectionduplicate) | **POST** /courses/{courseId}/draft/sections/{sectionId}/duplicate | Recursively duplicate a draft section and reuse its pinned library items |
42
42
  | [**putCourse**](CourseApi.md#putcourse) | **PUT** /courses/{courseId} | Update a course by id |
43
- | [**putCourseEnrollment**](CourseApi.md#putcourseenrollment) | **PUT** /courses/{courseId}/enrollments/{enrollmentId} | Update a course enrollment |
43
+ | [**putCourseEnrollment**](CourseApi.md#putcourseenrollment) | **PUT** /courses/{courseId}/enrollments/{enrollmentId} | Update an enrollment without changing its user type |
44
44
  | [**putCourseItemLearnerAttemptAllowance**](CourseApi.md#putcourseitemlearnerattemptallowance) | **PUT** /courses/{courseId}/versions/{courseVersionId}/items/{itemId}/learners/{userId}/attempt-allowance | Set extra attempts for a learner on a course item |
45
45
  | [**putCourseVersionDraft**](CourseApi.md#putcourseversiondraft) | **PUT** /courses/{courseId}/draft | Update progression settings on the editable course draft |
46
46
  | [**putCourseVersionItem**](CourseApi.md#putcourseversionitem) | **PUT** /courses/{courseId}/draft/sections/{sectionId}/items/{itemId} | Update a draft placement; use the outline move endpoint to change its parent or position |
@@ -1823,7 +1823,7 @@ No authorization required
1823
1823
 
1824
1824
  > GetCourseEnrollment postCourseEnrollment(courseId, postCourseEnrollment)
1825
1825
 
1826
- Create a new course enrollment
1826
+ Create a new single-role course enrollment
1827
1827
 
1828
1828
  ### Example
1829
1829
 
@@ -1882,7 +1882,9 @@ No authorization required
1882
1882
  ### HTTP response details
1883
1883
  | Status code | Description | Response headers |
1884
1884
  |-------------|-------------|------------------|
1885
- | **200** | post course enrollment response OK | - |
1885
+ | **200** | A prior terminal enrollment of the requested type was resumed | - |
1886
+ | **201** | A new enrollment of the requested type was created | - |
1887
+ | **409** | A current enrollment of the requested type already exists, or an enrollment limit was reached | - |
1886
1888
 
1887
1889
  [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
1888
1890
 
@@ -2613,7 +2615,7 @@ No authorization required
2613
2615
 
2614
2616
  > GetCourseEnrollment putCourseEnrollment(courseId, enrollmentId, putCourseEnrollment)
2615
2617
 
2616
- Update a course enrollment
2618
+ Update an enrollment without changing its user type
2617
2619
 
2618
2620
  ### Example
2619
2621
 
@@ -0,0 +1,46 @@
1
+
2
+ # GetPortalManagementDashboard
3
+
4
+
5
+ ## Properties
6
+
7
+ Name | Type
8
+ ------------ | -------------
9
+ `rangeDays` | number
10
+ `generatedAt` | number
11
+ `summary` | [GetPortalManagementDashboardSummary](GetPortalManagementDashboardSummary.md)
12
+ `enrollmentStatus` | [GetPortalManagementDashboardEnrollmentStatus](GetPortalManagementDashboardEnrollmentStatus.md)
13
+ `activity` | [Array<GetPortalManagementDashboardActivityDay>](GetPortalManagementDashboardActivityDay.md)
14
+ `topCourses` | [Array<GetPortalManagementDashboardTopCourse>](GetPortalManagementDashboardTopCourse.md)
15
+ `attention` | [GetPortalManagementDashboardAttention](GetPortalManagementDashboardAttention.md)
16
+
17
+ ## Example
18
+
19
+ ```typescript
20
+ import type { GetPortalManagementDashboard } from '@easyedu/js-lsm-api'
21
+
22
+ // TODO: Update the object below with actual values
23
+ const example = {
24
+ "rangeDays": null,
25
+ "generatedAt": null,
26
+ "summary": null,
27
+ "enrollmentStatus": null,
28
+ "activity": null,
29
+ "topCourses": null,
30
+ "attention": null,
31
+ } satisfies GetPortalManagementDashboard
32
+
33
+ console.log(example)
34
+
35
+ // Convert the instance to a JSON string
36
+ const exampleJSON: string = JSON.stringify(example)
37
+ console.log(exampleJSON)
38
+
39
+ // Parse the JSON string back to an object
40
+ const exampleParsed = JSON.parse(exampleJSON) as GetPortalManagementDashboard
41
+ console.log(exampleParsed)
42
+ ```
43
+
44
+ [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
45
+
46
+
@@ -0,0 +1,40 @@
1
+
2
+ # GetPortalManagementDashboardActivityDay
3
+
4
+
5
+ ## Properties
6
+
7
+ Name | Type
8
+ ------------ | -------------
9
+ `date` | Date
10
+ `activeLearnerCount` | number
11
+ `loginCount` | number
12
+ `completionCount` | number
13
+
14
+ ## Example
15
+
16
+ ```typescript
17
+ import type { GetPortalManagementDashboardActivityDay } from '@easyedu/js-lsm-api'
18
+
19
+ // TODO: Update the object below with actual values
20
+ const example = {
21
+ "date": null,
22
+ "activeLearnerCount": null,
23
+ "loginCount": null,
24
+ "completionCount": null,
25
+ } satisfies GetPortalManagementDashboardActivityDay
26
+
27
+ console.log(example)
28
+
29
+ // Convert the instance to a JSON string
30
+ const exampleJSON: string = JSON.stringify(example)
31
+ console.log(exampleJSON)
32
+
33
+ // Parse the JSON string back to an object
34
+ const exampleParsed = JSON.parse(exampleJSON) as GetPortalManagementDashboardActivityDay
35
+ console.log(exampleParsed)
36
+ ```
37
+
38
+ [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
39
+
40
+
@@ -0,0 +1,42 @@
1
+
2
+ # GetPortalManagementDashboardAttention
3
+
4
+
5
+ ## Properties
6
+
7
+ Name | Type
8
+ ------------ | -------------
9
+ `notStartedEnrollmentCount` | number
10
+ `inactiveLearnerCount` | number
11
+ `expiringEnrollmentCount` | number
12
+ `expiringCertificateCount` | number
13
+ `draftCourseCount` | number
14
+
15
+ ## Example
16
+
17
+ ```typescript
18
+ import type { GetPortalManagementDashboardAttention } from '@easyedu/js-lsm-api'
19
+
20
+ // TODO: Update the object below with actual values
21
+ const example = {
22
+ "notStartedEnrollmentCount": null,
23
+ "inactiveLearnerCount": null,
24
+ "expiringEnrollmentCount": null,
25
+ "expiringCertificateCount": null,
26
+ "draftCourseCount": null,
27
+ } satisfies GetPortalManagementDashboardAttention
28
+
29
+ console.log(example)
30
+
31
+ // Convert the instance to a JSON string
32
+ const exampleJSON: string = JSON.stringify(example)
33
+ console.log(exampleJSON)
34
+
35
+ // Parse the JSON string back to an object
36
+ const exampleParsed = JSON.parse(exampleJSON) as GetPortalManagementDashboardAttention
37
+ console.log(exampleParsed)
38
+ ```
39
+
40
+ [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
41
+
42
+
@@ -0,0 +1,38 @@
1
+
2
+ # GetPortalManagementDashboardEnrollmentStatus
3
+
4
+
5
+ ## Properties
6
+
7
+ Name | Type
8
+ ------------ | -------------
9
+ `notStartedCount` | number
10
+ `inProgressCount` | number
11
+ `completedCount` | number
12
+
13
+ ## Example
14
+
15
+ ```typescript
16
+ import type { GetPortalManagementDashboardEnrollmentStatus } from '@easyedu/js-lsm-api'
17
+
18
+ // TODO: Update the object below with actual values
19
+ const example = {
20
+ "notStartedCount": null,
21
+ "inProgressCount": null,
22
+ "completedCount": null,
23
+ } satisfies GetPortalManagementDashboardEnrollmentStatus
24
+
25
+ console.log(example)
26
+
27
+ // Convert the instance to a JSON string
28
+ const exampleJSON: string = JSON.stringify(example)
29
+ console.log(exampleJSON)
30
+
31
+ // Parse the JSON string back to an object
32
+ const exampleParsed = JSON.parse(exampleJSON) as GetPortalManagementDashboardEnrollmentStatus
33
+ console.log(exampleParsed)
34
+ ```
35
+
36
+ [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
37
+
38
+
@@ -0,0 +1,48 @@
1
+
2
+ # GetPortalManagementDashboardSummary
3
+
4
+
5
+ ## Properties
6
+
7
+ Name | Type
8
+ ------------ | -------------
9
+ `learnerCount` | number
10
+ `activeLearnerCount` | number
11
+ `activeEnrollmentCount` | number
12
+ `completionRatePercentage` | number
13
+ `courseCount` | number
14
+ `publishedCourseCount` | number
15
+ `draftCourseCount` | number
16
+ `loginsToday` | number
17
+
18
+ ## Example
19
+
20
+ ```typescript
21
+ import type { GetPortalManagementDashboardSummary } from '@easyedu/js-lsm-api'
22
+
23
+ // TODO: Update the object below with actual values
24
+ const example = {
25
+ "learnerCount": null,
26
+ "activeLearnerCount": null,
27
+ "activeEnrollmentCount": null,
28
+ "completionRatePercentage": null,
29
+ "courseCount": null,
30
+ "publishedCourseCount": null,
31
+ "draftCourseCount": null,
32
+ "loginsToday": null,
33
+ } satisfies GetPortalManagementDashboardSummary
34
+
35
+ console.log(example)
36
+
37
+ // Convert the instance to a JSON string
38
+ const exampleJSON: string = JSON.stringify(example)
39
+ console.log(exampleJSON)
40
+
41
+ // Parse the JSON string back to an object
42
+ const exampleParsed = JSON.parse(exampleJSON) as GetPortalManagementDashboardSummary
43
+ console.log(exampleParsed)
44
+ ```
45
+
46
+ [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
47
+
48
+
@@ -0,0 +1,42 @@
1
+
2
+ # GetPortalManagementDashboardTopCourse
3
+
4
+
5
+ ## Properties
6
+
7
+ Name | Type
8
+ ------------ | -------------
9
+ `courseId` | string
10
+ `courseName` | string
11
+ `enrollmentCount` | number
12
+ `activeLearnerCount` | number
13
+ `completionRatePercentage` | number
14
+
15
+ ## Example
16
+
17
+ ```typescript
18
+ import type { GetPortalManagementDashboardTopCourse } from '@easyedu/js-lsm-api'
19
+
20
+ // TODO: Update the object below with actual values
21
+ const example = {
22
+ "courseId": null,
23
+ "courseName": null,
24
+ "enrollmentCount": null,
25
+ "activeLearnerCount": null,
26
+ "completionRatePercentage": null,
27
+ } satisfies GetPortalManagementDashboardTopCourse
28
+
29
+ console.log(example)
30
+
31
+ // Convert the instance to a JSON string
32
+ const exampleJSON: string = JSON.stringify(example)
33
+ console.log(exampleJSON)
34
+
35
+ // Parse the JSON string back to an object
36
+ const exampleParsed = JSON.parse(exampleJSON) as GetPortalManagementDashboardTopCourse
37
+ console.log(exampleParsed)
38
+ ```
39
+
40
+ [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
41
+
42
+
@@ -7,7 +7,6 @@
7
7
  Name | Type
8
8
  ------------ | -------------
9
9
  `status` | string
10
- `userType` | string
11
10
  `enrollmentDateEnd` | number
12
11
  `extensionDays` | number
13
12
  `notes` | string
@@ -21,7 +20,6 @@ import type { PutCourseEnrollment } from '@easyedu/js-lsm-api'
21
20
  // TODO: Update the object below with actual values
22
21
  const example = {
23
22
  "status": null,
24
- "userType": null,
25
23
  "enrollmentDateEnd": null,
26
24
  "extensionDays": null,
27
25
  "notes": null,
@@ -6,6 +6,7 @@ All URIs are relative to *https://sbzw93t49b.execute-api.us-east-2.amazonaws.com
6
6
  |------------- | ------------- | -------------|
7
7
  | [**getCourseVersionReporting**](ReportingApi.md#getcourseversionreporting) | **GET** /courses/{courseId}/versions/{courseVersionId}/reporting | Get instructor reporting for one explicit course version |
8
8
  | [**getCourseVersionSectionReporting**](ReportingApi.md#getcourseversionsectionreporting) | **GET** /courses/{courseId}/versions/{courseVersionId}/sections/{sectionId}/reporting | Get instructor reporting for one section and its descendants in an explicit course version |
9
+ | [**getPortalManagementDashboard**](ReportingApi.md#getportalmanagementdashboard) | **GET** /reporting/portal/dashboard | Get the selected portal\'s management dashboard reporting |
9
10
 
10
11
 
11
12
 
@@ -149,3 +150,69 @@ No authorization required
149
150
 
150
151
  [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
151
152
 
153
+
154
+ ## getPortalManagementDashboard
155
+
156
+ > GetPortalManagementDashboard getPortalManagementDashboard(days)
157
+
158
+ Get the selected portal\'s management dashboard reporting
159
+
160
+ ### Example
161
+
162
+ ```ts
163
+ import {
164
+ Configuration,
165
+ ReportingApi,
166
+ } from '@easyedu/js-lsm-api';
167
+ import type { GetPortalManagementDashboardRequest } from '@easyedu/js-lsm-api';
168
+
169
+ async function example() {
170
+ console.log("🚀 Testing @easyedu/js-lsm-api SDK...");
171
+ const api = new ReportingApi();
172
+
173
+ const body = {
174
+ // number | Number of UTC calendar days to include in activity reporting. (optional)
175
+ days: 56,
176
+ } satisfies GetPortalManagementDashboardRequest;
177
+
178
+ try {
179
+ const data = await api.getPortalManagementDashboard(body);
180
+ console.log(data);
181
+ } catch (error) {
182
+ console.error(error);
183
+ }
184
+ }
185
+
186
+ // Run the test
187
+ example().catch(console.error);
188
+ ```
189
+
190
+ ### Parameters
191
+
192
+
193
+ | Name | Type | Description | Notes |
194
+ |------------- | ------------- | ------------- | -------------|
195
+ | **days** | `number` | Number of UTC calendar days to include in activity reporting. | [Optional] [Defaults to `30`] |
196
+
197
+ ### Return type
198
+
199
+ [**GetPortalManagementDashboard**](GetPortalManagementDashboard.md)
200
+
201
+ ### Authorization
202
+
203
+ No authorization required
204
+
205
+ ### HTTP request headers
206
+
207
+ - **Content-Type**: Not defined
208
+ - **Accept**: `application/json`
209
+
210
+
211
+ ### HTTP response details
212
+ | Status code | Description | Response headers |
213
+ |-------------|-------------|------------------|
214
+ | **200** | Portal-scoped dashboard totals, trends, and attention counts | - |
215
+ | **400** | Invalid reporting range | - |
216
+
217
+ [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
218
+
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@easyedu/js-lsm-api",
3
- "version": "1.123.0",
3
+ "version": "1.125.0",
4
4
  "description": "OpenAPI client for @easyedu/js-lsm-api",
5
5
  "author": "OpenAPI-Generator",
6
6
  "repository": {
@@ -1833,7 +1833,7 @@ export class CourseApi extends runtime.BaseAPI {
1833
1833
  }
1834
1834
 
1835
1835
  /**
1836
- * Create a new course enrollment
1836
+ * Create a new single-role course enrollment
1837
1837
  */
1838
1838
  async postCourseEnrollmentRaw(requestParameters: PostCourseEnrollmentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetCourseEnrollment>> {
1839
1839
  const requestOptions = await this.postCourseEnrollmentRequestOpts(requestParameters);
@@ -1843,7 +1843,7 @@ export class CourseApi extends runtime.BaseAPI {
1843
1843
  }
1844
1844
 
1845
1845
  /**
1846
- * Create a new course enrollment
1846
+ * Create a new single-role course enrollment
1847
1847
  */
1848
1848
  async postCourseEnrollment(requestParameters: PostCourseEnrollmentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetCourseEnrollment> {
1849
1849
  const response = await this.postCourseEnrollmentRaw(requestParameters, initOverrides);
@@ -2512,7 +2512,7 @@ export class CourseApi extends runtime.BaseAPI {
2512
2512
  }
2513
2513
 
2514
2514
  /**
2515
- * Update a course enrollment
2515
+ * Update an enrollment without changing its user type
2516
2516
  */
2517
2517
  async putCourseEnrollmentRaw(requestParameters: PutCourseEnrollmentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetCourseEnrollment>> {
2518
2518
  const requestOptions = await this.putCourseEnrollmentRequestOpts(requestParameters);
@@ -2522,7 +2522,7 @@ export class CourseApi extends runtime.BaseAPI {
2522
2522
  }
2523
2523
 
2524
2524
  /**
2525
- * Update a course enrollment
2525
+ * Update an enrollment without changing its user type
2526
2526
  */
2527
2527
  async putCourseEnrollment(requestParameters: PutCourseEnrollmentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetCourseEnrollment> {
2528
2528
  const response = await this.putCourseEnrollmentRaw(requestParameters, initOverrides);