@easyedu/js-lsm-api 1.100.0 → 1.102.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 (123) hide show
  1. package/.openapi-generator/FILES +20 -0
  2. package/README.md +14 -2
  3. package/dist/apis/ChangelogApi.d.ts +32 -0
  4. package/dist/apis/ChangelogApi.js +70 -0
  5. package/dist/apis/CourseApi.d.ts +34 -0
  6. package/dist/apis/CourseApi.js +89 -0
  7. package/dist/apis/index.d.ts +1 -0
  8. package/dist/apis/index.js +1 -0
  9. package/dist/esm/apis/ChangelogApi.d.ts +32 -0
  10. package/dist/esm/apis/ChangelogApi.js +66 -0
  11. package/dist/esm/apis/CourseApi.d.ts +34 -0
  12. package/dist/esm/apis/CourseApi.js +89 -0
  13. package/dist/esm/apis/index.d.ts +1 -0
  14. package/dist/esm/apis/index.js +1 -0
  15. package/dist/esm/models/CourseProgressionMode.d.ts +25 -0
  16. package/dist/esm/models/CourseProgressionMode.js +43 -0
  17. package/dist/esm/models/GetChangelogEntry.d.ts +44 -0
  18. package/dist/esm/models/GetChangelogEntry.js +51 -0
  19. package/dist/esm/models/GetChangelogList.d.ts +33 -0
  20. package/dist/esm/models/GetChangelogList.js +44 -0
  21. package/dist/esm/models/GetCourseVersion.d.ts +7 -0
  22. package/dist/esm/models/GetCourseVersion.js +5 -0
  23. package/dist/esm/models/GetCourseVersionItem.d.ts +6 -0
  24. package/dist/esm/models/GetCourseVersionItem.js +4 -0
  25. package/dist/esm/models/GetCourseVersionItemProgression.d.ts +105 -0
  26. package/dist/esm/models/GetCourseVersionItemProgression.js +92 -0
  27. package/dist/esm/models/GetCourseVersionItemSession.d.ts +37 -1
  28. package/dist/esm/models/GetCourseVersionItemSession.js +24 -0
  29. package/dist/esm/models/GetCourseVersionProgression.d.ts +59 -0
  30. package/dist/esm/models/GetCourseVersionProgression.js +62 -0
  31. package/dist/esm/models/GetCourseVersionSectionProgression.d.ts +75 -0
  32. package/dist/esm/models/GetCourseVersionSectionProgression.js +72 -0
  33. package/dist/esm/models/GetResourceSession.d.ts +36 -0
  34. package/dist/esm/models/GetResourceSession.js +24 -0
  35. package/dist/esm/models/PostCourseVersionItem.d.ts +6 -0
  36. package/dist/esm/models/PostCourseVersionItem.js +2 -0
  37. package/dist/esm/models/ProgressionGateError.d.ts +76 -0
  38. package/dist/esm/models/ProgressionGateError.js +74 -0
  39. package/dist/esm/models/ProgressionLockReason.d.ts +24 -0
  40. package/dist/esm/models/ProgressionLockReason.js +42 -0
  41. package/dist/esm/models/PutCourseVersionDraft.d.ts +33 -0
  42. package/dist/esm/models/PutCourseVersionDraft.js +44 -0
  43. package/dist/esm/models/PutCourseVersionItem.d.ts +6 -0
  44. package/dist/esm/models/PutCourseVersionItem.js +2 -0
  45. package/dist/esm/models/PutResourceSessionOverride.d.ts +6 -0
  46. package/dist/esm/models/PutResourceSessionOverride.js +2 -0
  47. package/dist/esm/models/index.d.ts +9 -0
  48. package/dist/esm/models/index.js +9 -0
  49. package/dist/models/CourseProgressionMode.d.ts +25 -0
  50. package/dist/models/CourseProgressionMode.js +51 -0
  51. package/dist/models/GetChangelogEntry.d.ts +44 -0
  52. package/dist/models/GetChangelogEntry.js +58 -0
  53. package/dist/models/GetChangelogList.d.ts +33 -0
  54. package/dist/models/GetChangelogList.js +51 -0
  55. package/dist/models/GetCourseVersion.d.ts +7 -0
  56. package/dist/models/GetCourseVersion.js +5 -0
  57. package/dist/models/GetCourseVersionItem.d.ts +6 -0
  58. package/dist/models/GetCourseVersionItem.js +4 -0
  59. package/dist/models/GetCourseVersionItemProgression.d.ts +105 -0
  60. package/dist/models/GetCourseVersionItemProgression.js +99 -0
  61. package/dist/models/GetCourseVersionItemSession.d.ts +37 -1
  62. package/dist/models/GetCourseVersionItemSession.js +24 -0
  63. package/dist/models/GetCourseVersionProgression.d.ts +59 -0
  64. package/dist/models/GetCourseVersionProgression.js +69 -0
  65. package/dist/models/GetCourseVersionSectionProgression.d.ts +75 -0
  66. package/dist/models/GetCourseVersionSectionProgression.js +79 -0
  67. package/dist/models/GetResourceSession.d.ts +36 -0
  68. package/dist/models/GetResourceSession.js +24 -0
  69. package/dist/models/PostCourseVersionItem.d.ts +6 -0
  70. package/dist/models/PostCourseVersionItem.js +2 -0
  71. package/dist/models/ProgressionGateError.d.ts +76 -0
  72. package/dist/models/ProgressionGateError.js +82 -0
  73. package/dist/models/ProgressionLockReason.d.ts +24 -0
  74. package/dist/models/ProgressionLockReason.js +50 -0
  75. package/dist/models/PutCourseVersionDraft.d.ts +33 -0
  76. package/dist/models/PutCourseVersionDraft.js +51 -0
  77. package/dist/models/PutCourseVersionItem.d.ts +6 -0
  78. package/dist/models/PutCourseVersionItem.js +2 -0
  79. package/dist/models/PutResourceSessionOverride.d.ts +6 -0
  80. package/dist/models/PutResourceSessionOverride.js +2 -0
  81. package/dist/models/index.d.ts +9 -0
  82. package/dist/models/index.js +9 -0
  83. package/docs/ChangelogApi.md +68 -0
  84. package/docs/CourseApi.md +143 -1
  85. package/docs/CourseProgressionMode.md +33 -0
  86. package/docs/GetChangelogEntry.md +39 -0
  87. package/docs/GetChangelogList.md +34 -0
  88. package/docs/GetCourseVersion.md +2 -0
  89. package/docs/GetCourseVersionItem.md +2 -0
  90. package/docs/GetCourseVersionItemProgression.md +58 -0
  91. package/docs/GetCourseVersionItemSession.md +12 -0
  92. package/docs/GetCourseVersionProgression.md +43 -0
  93. package/docs/GetCourseVersionSectionProgression.md +48 -0
  94. package/docs/GetResourceSession.md +12 -0
  95. package/docs/PlayerApi.md +1 -0
  96. package/docs/PostCourseVersionItem.md +2 -0
  97. package/docs/ProgressionGateError.md +47 -0
  98. package/docs/ProgressionLockReason.md +32 -0
  99. package/docs/PutCourseVersionDraft.md +34 -0
  100. package/docs/PutCourseVersionItem.md +2 -0
  101. package/docs/PutResourceSessionOverride.md +2 -0
  102. package/package.json +1 -1
  103. package/src/apis/ChangelogApi.ts +66 -0
  104. package/src/apis/CourseApi.ts +133 -0
  105. package/src/apis/PlayerApi.ts +5 -0
  106. package/src/apis/index.ts +1 -0
  107. package/src/models/CourseProgressionMode.ts +53 -0
  108. package/src/models/GetChangelogEntry.ts +84 -0
  109. package/src/models/GetChangelogList.ts +74 -0
  110. package/src/models/GetCourseVersion.ts +16 -0
  111. package/src/models/GetCourseVersionItem.ts +9 -0
  112. package/src/models/GetCourseVersionItemProgression.ts +184 -0
  113. package/src/models/GetCourseVersionItemSession.ts +55 -1
  114. package/src/models/GetCourseVersionProgression.ts +126 -0
  115. package/src/models/GetCourseVersionSectionProgression.ts +139 -0
  116. package/src/models/GetResourceSession.ts +54 -0
  117. package/src/models/PostCourseVersionItem.ts +8 -0
  118. package/src/models/ProgressionGateError.ts +131 -0
  119. package/src/models/ProgressionLockReason.ts +52 -0
  120. package/src/models/PutCourseVersionDraft.ts +76 -0
  121. package/src/models/PutCourseVersionItem.ts +8 -0
  122. package/src/models/PutResourceSessionOverride.ts +8 -0
  123. package/src/models/index.ts +9 -0
@@ -10,6 +10,7 @@ Name | Type
10
10
  `completionStatus` | string
11
11
  `gradeStatus` | string
12
12
  `scoreRaw` | number
13
+ `waiveMinimumActiveTime` | boolean
13
14
  `reason` | string
14
15
 
15
16
  ## Example
@@ -22,6 +23,7 @@ const example = {
22
23
  "completionStatus": null,
23
24
  "gradeStatus": null,
24
25
  "scoreRaw": null,
26
+ "waiveMinimumActiveTime": null,
25
27
  "reason": null,
26
28
  } satisfies PutResourceSessionOverride
27
29
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@easyedu/js-lsm-api",
3
- "version": "1.100.0",
3
+ "version": "1.102.0",
4
4
  "description": "OpenAPI client for @easyedu/js-lsm-api",
5
5
  "author": "OpenAPI-Generator",
6
6
  "repository": {
@@ -0,0 +1,66 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * LMS API
5
+ * LMS API
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import * as runtime from '../runtime';
16
+ import {
17
+ type GetChangelogList,
18
+ GetChangelogListFromJSON,
19
+ GetChangelogListToJSON,
20
+ } from '../models/GetChangelogList';
21
+
22
+ /**
23
+ *
24
+ */
25
+ export class ChangelogApi extends runtime.BaseAPI {
26
+
27
+ /**
28
+ * Creates request options for getChangelog without sending the request
29
+ */
30
+ async getChangelogRequestOpts(): Promise<runtime.RequestOpts> {
31
+ const queryParameters: any = {};
32
+
33
+ const headerParameters: runtime.HTTPHeaders = {};
34
+
35
+
36
+ let urlPath = `/changelog`;
37
+
38
+ return {
39
+ path: urlPath,
40
+ method: 'GET',
41
+ headers: headerParameters,
42
+ query: queryParameters,
43
+ };
44
+ }
45
+
46
+ /**
47
+ * Returns the changelog loaded from the server\'s configured changelog file at startup, newest first.
48
+ * List user-facing product updates
49
+ */
50
+ async getChangelogRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetChangelogList>> {
51
+ const requestOptions = await this.getChangelogRequestOpts();
52
+ const response = await this.request(requestOptions, initOverrides);
53
+
54
+ return new runtime.JSONApiResponse(response, (jsonValue) => GetChangelogListFromJSON(jsonValue));
55
+ }
56
+
57
+ /**
58
+ * Returns the changelog loaded from the server\'s configured changelog file at startup, newest first.
59
+ * List user-facing product updates
60
+ */
61
+ async getChangelog(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetChangelogList> {
62
+ const response = await this.getChangelogRaw(initOverrides);
63
+ return await response.value();
64
+ }
65
+
66
+ }
@@ -78,6 +78,11 @@ import {
78
78
  GetCourseVersionListFromJSON,
79
79
  GetCourseVersionListToJSON,
80
80
  } from '../models/GetCourseVersionList';
81
+ import {
82
+ type GetCourseVersionProgression,
83
+ GetCourseVersionProgressionFromJSON,
84
+ GetCourseVersionProgressionToJSON,
85
+ } from '../models/GetCourseVersionProgression';
81
86
  import {
82
87
  type GetCourseVersionSection,
83
88
  GetCourseVersionSectionFromJSON,
@@ -148,6 +153,11 @@ import {
148
153
  PostDuplicateFromJSON,
149
154
  PostDuplicateToJSON,
150
155
  } from '../models/PostDuplicate';
156
+ import {
157
+ type ProgressionGateError,
158
+ ProgressionGateErrorFromJSON,
159
+ ProgressionGateErrorToJSON,
160
+ } from '../models/ProgressionGateError';
151
161
  import {
152
162
  type PutAttemptAllowance,
153
163
  PutAttemptAllowanceFromJSON,
@@ -163,6 +173,11 @@ import {
163
173
  PutCourseEnrollmentFromJSON,
164
174
  PutCourseEnrollmentToJSON,
165
175
  } from '../models/PutCourseEnrollment';
176
+ import {
177
+ type PutCourseVersionDraft,
178
+ PutCourseVersionDraftFromJSON,
179
+ PutCourseVersionDraftToJSON,
180
+ } from '../models/PutCourseVersionDraft';
166
181
  import {
167
182
  type PutCourseVersionItem,
168
183
  PutCourseVersionItemFromJSON,
@@ -276,6 +291,11 @@ export interface GetCourseVersionListRequest {
276
291
  courseId: string;
277
292
  }
278
293
 
294
+ export interface GetCourseVersionProgressionRequest {
295
+ courseId: string;
296
+ courseVersionId: string;
297
+ }
298
+
279
299
  export interface PostCourseRequest {
280
300
  postCourse: PostCourse;
281
301
  }
@@ -370,6 +390,11 @@ export interface PutCourseItemLearnerAttemptAllowanceRequest {
370
390
  putAttemptAllowance: PutAttemptAllowance;
371
391
  }
372
392
 
393
+ export interface PutCourseVersionDraftRequest {
394
+ courseId: string;
395
+ putCourseVersionDraft: PutCourseVersionDraft;
396
+ }
397
+
373
398
  export interface PutCourseVersionItemRequest {
374
399
  courseId: string;
375
400
  sectionId: string;
@@ -1351,6 +1376,59 @@ export class CourseApi extends runtime.BaseAPI {
1351
1376
  return await response.value();
1352
1377
  }
1353
1378
 
1379
+ /**
1380
+ * Creates request options for getCourseVersionProgression without sending the request
1381
+ */
1382
+ async getCourseVersionProgressionRequestOpts(requestParameters: GetCourseVersionProgressionRequest): Promise<runtime.RequestOpts> {
1383
+ if (requestParameters['courseId'] == null) {
1384
+ throw new runtime.RequiredError(
1385
+ 'courseId',
1386
+ 'Required parameter "courseId" was null or undefined when calling getCourseVersionProgression().'
1387
+ );
1388
+ }
1389
+
1390
+ if (requestParameters['courseVersionId'] == null) {
1391
+ throw new runtime.RequiredError(
1392
+ 'courseVersionId',
1393
+ 'Required parameter "courseVersionId" was null or undefined when calling getCourseVersionProgression().'
1394
+ );
1395
+ }
1396
+
1397
+ const queryParameters: any = {};
1398
+
1399
+ const headerParameters: runtime.HTTPHeaders = {};
1400
+
1401
+
1402
+ let urlPath = `/courses/{courseId}/versions/{courseVersionId}/progression`;
1403
+ urlPath = urlPath.replace('{courseId}', encodeURIComponent(String(requestParameters['courseId'])));
1404
+ urlPath = urlPath.replace('{courseVersionId}', encodeURIComponent(String(requestParameters['courseVersionId'])));
1405
+
1406
+ return {
1407
+ path: urlPath,
1408
+ method: 'GET',
1409
+ headers: headerParameters,
1410
+ query: queryParameters,
1411
+ };
1412
+ }
1413
+
1414
+ /**
1415
+ * Get learner-specific completion and section lock state
1416
+ */
1417
+ async getCourseVersionProgressionRaw(requestParameters: GetCourseVersionProgressionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetCourseVersionProgression>> {
1418
+ const requestOptions = await this.getCourseVersionProgressionRequestOpts(requestParameters);
1419
+ const response = await this.request(requestOptions, initOverrides);
1420
+
1421
+ return new runtime.JSONApiResponse(response, (jsonValue) => GetCourseVersionProgressionFromJSON(jsonValue));
1422
+ }
1423
+
1424
+ /**
1425
+ * Get learner-specific completion and section lock state
1426
+ */
1427
+ async getCourseVersionProgression(requestParameters: GetCourseVersionProgressionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetCourseVersionProgression> {
1428
+ const response = await this.getCourseVersionProgressionRaw(requestParameters, initOverrides);
1429
+ return await response.value();
1430
+ }
1431
+
1354
1432
  /**
1355
1433
  * Creates request options for postCourse without sending the request
1356
1434
  */
@@ -2350,6 +2428,61 @@ export class CourseApi extends runtime.BaseAPI {
2350
2428
  return await response.value();
2351
2429
  }
2352
2430
 
2431
+ /**
2432
+ * Creates request options for putCourseVersionDraft without sending the request
2433
+ */
2434
+ async putCourseVersionDraftRequestOpts(requestParameters: PutCourseVersionDraftRequest): Promise<runtime.RequestOpts> {
2435
+ if (requestParameters['courseId'] == null) {
2436
+ throw new runtime.RequiredError(
2437
+ 'courseId',
2438
+ 'Required parameter "courseId" was null or undefined when calling putCourseVersionDraft().'
2439
+ );
2440
+ }
2441
+
2442
+ if (requestParameters['putCourseVersionDraft'] == null) {
2443
+ throw new runtime.RequiredError(
2444
+ 'putCourseVersionDraft',
2445
+ 'Required parameter "putCourseVersionDraft" was null or undefined when calling putCourseVersionDraft().'
2446
+ );
2447
+ }
2448
+
2449
+ const queryParameters: any = {};
2450
+
2451
+ const headerParameters: runtime.HTTPHeaders = {};
2452
+
2453
+ headerParameters['Content-Type'] = 'application/json';
2454
+
2455
+
2456
+ let urlPath = `/courses/{courseId}/draft`;
2457
+ urlPath = urlPath.replace('{courseId}', encodeURIComponent(String(requestParameters['courseId'])));
2458
+
2459
+ return {
2460
+ path: urlPath,
2461
+ method: 'PUT',
2462
+ headers: headerParameters,
2463
+ query: queryParameters,
2464
+ body: PutCourseVersionDraftToJSON(requestParameters['putCourseVersionDraft']),
2465
+ };
2466
+ }
2467
+
2468
+ /**
2469
+ * Update progression settings on the editable course draft
2470
+ */
2471
+ async putCourseVersionDraftRaw(requestParameters: PutCourseVersionDraftRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetCourseVersion>> {
2472
+ const requestOptions = await this.putCourseVersionDraftRequestOpts(requestParameters);
2473
+ const response = await this.request(requestOptions, initOverrides);
2474
+
2475
+ return new runtime.JSONApiResponse(response, (jsonValue) => GetCourseVersionFromJSON(jsonValue));
2476
+ }
2477
+
2478
+ /**
2479
+ * Update progression settings on the editable course draft
2480
+ */
2481
+ async putCourseVersionDraft(requestParameters: PutCourseVersionDraftRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetCourseVersion> {
2482
+ const response = await this.putCourseVersionDraftRaw(requestParameters, initOverrides);
2483
+ return await response.value();
2484
+ }
2485
+
2353
2486
  /**
2354
2487
  * Creates request options for putCourseVersionItem without sending the request
2355
2488
  */
@@ -58,6 +58,11 @@ import {
58
58
  PostResourceSessionActivityEventFromJSON,
59
59
  PostResourceSessionActivityEventToJSON,
60
60
  } from '../models/PostResourceSessionActivityEvent';
61
+ import {
62
+ type ProgressionGateError,
63
+ ProgressionGateErrorFromJSON,
64
+ ProgressionGateErrorToJSON,
65
+ } from '../models/ProgressionGateError';
61
66
  import {
62
67
  type PutResourceSessionOverride,
63
68
  PutResourceSessionOverrideFromJSON,
package/src/apis/index.ts CHANGED
@@ -2,6 +2,7 @@
2
2
  /* eslint-disable */
3
3
  export * from './CertificateApi';
4
4
  export * from './CertificateTemplateApi';
5
+ export * from './ChangelogApi';
5
6
  export * from './ChatApi';
6
7
  export * from './ContentLibraryApi';
7
8
  export * from './ContentLibraryQuizApi';
@@ -0,0 +1,53 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * LMS API
5
+ * LMS API
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+
16
+ /**
17
+ * Controls whether top-level course sections unlock freely or in completion order.
18
+ * @export
19
+ */
20
+ export const CourseProgressionMode = {
21
+ Free: 'free',
22
+ SequentialSections: 'sequential_sections'
23
+ } as const;
24
+ export type CourseProgressionMode = typeof CourseProgressionMode[keyof typeof CourseProgressionMode];
25
+
26
+
27
+ export function instanceOfCourseProgressionMode(value: any): boolean {
28
+ for (const key in CourseProgressionMode) {
29
+ if (Object.prototype.hasOwnProperty.call(CourseProgressionMode, key)) {
30
+ if (CourseProgressionMode[key as keyof typeof CourseProgressionMode] === value) {
31
+ return true;
32
+ }
33
+ }
34
+ }
35
+ return false;
36
+ }
37
+
38
+ export function CourseProgressionModeFromJSON(json: any): CourseProgressionMode {
39
+ return CourseProgressionModeFromJSONTyped(json, false);
40
+ }
41
+
42
+ export function CourseProgressionModeFromJSONTyped(json: any, ignoreDiscriminator: boolean): CourseProgressionMode {
43
+ return json as CourseProgressionMode;
44
+ }
45
+
46
+ export function CourseProgressionModeToJSON(value?: CourseProgressionMode | null): any {
47
+ return value as any;
48
+ }
49
+
50
+ export function CourseProgressionModeToJSONTyped(value: any, ignoreDiscriminator: boolean): CourseProgressionMode {
51
+ return value as CourseProgressionMode;
52
+ }
53
+
@@ -0,0 +1,84 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * LMS API
5
+ * LMS API
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ /**
17
+ * A user-facing summary of product changes published on one date.
18
+ * @export
19
+ * @interface GetChangelogEntry
20
+ */
21
+ export interface GetChangelogEntry {
22
+ /**
23
+ *
24
+ * @type {string}
25
+ * @memberof GetChangelogEntry
26
+ */
27
+ title: string;
28
+ /**
29
+ * A short Markdown-formatted summary. Multiple changes are represented as bullet points.
30
+ * @type {string}
31
+ * @memberof GetChangelogEntry
32
+ */
33
+ desc: string;
34
+ /**
35
+ *
36
+ * @type {Date}
37
+ * @memberof GetChangelogEntry
38
+ */
39
+ date: Date;
40
+ }
41
+
42
+ /**
43
+ * Check if a given object implements the GetChangelogEntry interface.
44
+ */
45
+ export function instanceOfGetChangelogEntry(value: object): value is GetChangelogEntry {
46
+ if (!('title' in value) || value['title'] === undefined) return false;
47
+ if (!('desc' in value) || value['desc'] === undefined) return false;
48
+ if (!('date' in value) || value['date'] === undefined) return false;
49
+ return true;
50
+ }
51
+
52
+ export function GetChangelogEntryFromJSON(json: any): GetChangelogEntry {
53
+ return GetChangelogEntryFromJSONTyped(json, false);
54
+ }
55
+
56
+ export function GetChangelogEntryFromJSONTyped(json: any, ignoreDiscriminator: boolean): GetChangelogEntry {
57
+ if (json == null) {
58
+ return json;
59
+ }
60
+ return {
61
+
62
+ 'title': json['title'],
63
+ 'desc': json['desc'],
64
+ 'date': (new Date(json['date'])),
65
+ };
66
+ }
67
+
68
+ export function GetChangelogEntryToJSON(json: any): GetChangelogEntry {
69
+ return GetChangelogEntryToJSONTyped(json, false);
70
+ }
71
+
72
+ export function GetChangelogEntryToJSONTyped(value?: GetChangelogEntry | null, ignoreDiscriminator: boolean = false): any {
73
+ if (value == null) {
74
+ return value;
75
+ }
76
+
77
+ return {
78
+
79
+ 'title': value['title'],
80
+ 'desc': value['desc'],
81
+ 'date': value['date'].toISOString().substring(0,10),
82
+ };
83
+ }
84
+
@@ -0,0 +1,74 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * LMS API
5
+ * LMS API
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ import type { GetChangelogEntry } from './GetChangelogEntry';
17
+ import {
18
+ GetChangelogEntryFromJSON,
19
+ GetChangelogEntryFromJSONTyped,
20
+ GetChangelogEntryToJSON,
21
+ GetChangelogEntryToJSONTyped,
22
+ } from './GetChangelogEntry';
23
+
24
+ /**
25
+ *
26
+ * @export
27
+ * @interface GetChangelogList
28
+ */
29
+ export interface GetChangelogList {
30
+ /**
31
+ *
32
+ * @type {Array<GetChangelogEntry>}
33
+ * @memberof GetChangelogList
34
+ */
35
+ items: Array<GetChangelogEntry>;
36
+ }
37
+
38
+ /**
39
+ * Check if a given object implements the GetChangelogList interface.
40
+ */
41
+ export function instanceOfGetChangelogList(value: object): value is GetChangelogList {
42
+ if (!('items' in value) || value['items'] === undefined) return false;
43
+ return true;
44
+ }
45
+
46
+ export function GetChangelogListFromJSON(json: any): GetChangelogList {
47
+ return GetChangelogListFromJSONTyped(json, false);
48
+ }
49
+
50
+ export function GetChangelogListFromJSONTyped(json: any, ignoreDiscriminator: boolean): GetChangelogList {
51
+ if (json == null) {
52
+ return json;
53
+ }
54
+ return {
55
+
56
+ 'items': ((json['items'] as Array<any>).map(GetChangelogEntryFromJSON)),
57
+ };
58
+ }
59
+
60
+ export function GetChangelogListToJSON(json: any): GetChangelogList {
61
+ return GetChangelogListToJSONTyped(json, false);
62
+ }
63
+
64
+ export function GetChangelogListToJSONTyped(value?: GetChangelogList | null, ignoreDiscriminator: boolean = false): any {
65
+ if (value == null) {
66
+ return value;
67
+ }
68
+
69
+ return {
70
+
71
+ 'items': ((value['items'] as Array<any>).map(GetChangelogEntryToJSON)),
72
+ };
73
+ }
74
+
@@ -27,6 +27,13 @@ import {
27
27
  RichTextDocumentToJSON,
28
28
  RichTextDocumentToJSONTyped,
29
29
  } from './RichTextDocument';
30
+ import type { CourseProgressionMode } from './CourseProgressionMode';
31
+ import {
32
+ CourseProgressionModeFromJSON,
33
+ CourseProgressionModeFromJSONTyped,
34
+ CourseProgressionModeToJSON,
35
+ CourseProgressionModeToJSONTyped,
36
+ } from './CourseProgressionMode';
30
37
  import type { GetCourseVersionSection } from './GetCourseVersionSection';
31
38
  import {
32
39
  GetCourseVersionSectionFromJSON,
@@ -89,6 +96,12 @@ export interface GetCourseVersion {
89
96
  * @memberof GetCourseVersion
90
97
  */
91
98
  changeNotes?: string | null;
99
+ /**
100
+ *
101
+ * @type {CourseProgressionMode}
102
+ * @memberof GetCourseVersion
103
+ */
104
+ progressionMode: CourseProgressionMode;
92
105
  /**
93
106
  *
94
107
  * @type {Array<GetCourseVersionSection>}
@@ -128,6 +141,7 @@ export function instanceOfGetCourseVersion(value: object): value is GetCourseVer
128
141
  if (!('name' in value) || value['name'] === undefined) return false;
129
142
  if (!('description' in value) || value['description'] === undefined) return false;
130
143
  if (!('descriptionRich' in value) || value['descriptionRich'] === undefined) return false;
144
+ if (!('progressionMode' in value) || value['progressionMode'] === undefined) return false;
131
145
  if (!('sections' in value) || value['sections'] === undefined) return false;
132
146
  if (!('createdAt' in value) || value['createdAt'] === undefined) return false;
133
147
  if (!('updatedAt' in value) || value['updatedAt'] === undefined) return false;
@@ -152,6 +166,7 @@ export function GetCourseVersionFromJSONTyped(json: any, ignoreDiscriminator: bo
152
166
  'description': json['description'],
153
167
  'descriptionRich': RichTextDocumentFromJSON(json['description_rich']),
154
168
  'changeNotes': json['change_notes'] == null ? undefined : json['change_notes'],
169
+ 'progressionMode': CourseProgressionModeFromJSON(json['progression_mode']),
155
170
  'sections': ((json['sections'] as Array<any>).map(GetCourseVersionSectionFromJSON)),
156
171
  'createdAt': json['created_at'],
157
172
  'updatedAt': json['updated_at'],
@@ -178,6 +193,7 @@ export function GetCourseVersionToJSONTyped(value?: GetCourseVersion | null, ign
178
193
  'description': value['description'],
179
194
  'description_rich': RichTextDocumentToJSON(value['descriptionRich']),
180
195
  'change_notes': value['changeNotes'],
196
+ 'progression_mode': CourseProgressionModeToJSON(value['progressionMode']),
181
197
  'sections': ((value['sections'] as Array<any>).map(GetCourseVersionSectionToJSON)),
182
198
  'created_at': value['createdAt'],
183
199
  'updated_at': value['updatedAt'],
@@ -99,6 +99,12 @@ export interface GetCourseVersionItem {
99
99
  * @memberof GetCourseVersionItem
100
100
  */
101
101
  isRequired: boolean;
102
+ /**
103
+ * Minimum cumulative active time required for this resource placement. Null disables the timer.
104
+ * @type {number}
105
+ * @memberof GetCourseVersionItem
106
+ */
107
+ minimumActiveSeconds: number | null;
102
108
  /**
103
109
  *
104
110
  * @type {ContentLaunchMode}
@@ -159,6 +165,7 @@ export function instanceOfGetCourseVersionItem(value: object): value is GetCours
159
165
  if (!('displayOrder' in value) || value['displayOrder'] === undefined) return false;
160
166
  if (!('isVisible' in value) || value['isVisible'] === undefined) return false;
161
167
  if (!('isRequired' in value) || value['isRequired'] === undefined) return false;
168
+ if (!('minimumActiveSeconds' in value) || value['minimumActiveSeconds'] === undefined) return false;
162
169
  if (!('launchMode' in value) || value['launchMode'] === undefined) return false;
163
170
  if (!('maxAttempts' in value) || value['maxAttempts'] === undefined) return false;
164
171
  if (!('scoreRollupStrategy' in value) || value['scoreRollupStrategy'] === undefined) return false;
@@ -188,6 +195,7 @@ export function GetCourseVersionItemFromJSONTyped(json: any, ignoreDiscriminator
188
195
  'displayOrder': json['display_order'],
189
196
  'isVisible': json['is_visible'],
190
197
  'isRequired': json['is_required'],
198
+ 'minimumActiveSeconds': json['minimum_active_seconds'],
191
199
  'launchMode': ContentLaunchModeFromJSON(json['launch_mode']),
192
200
  'maxAttempts': json['max_attempts'],
193
201
  'scoreRollupStrategy': json['score_rollup_strategy'],
@@ -218,6 +226,7 @@ export function GetCourseVersionItemToJSONTyped(value?: GetCourseVersionItem | n
218
226
  'display_order': value['displayOrder'],
219
227
  'is_visible': value['isVisible'],
220
228
  'is_required': value['isRequired'],
229
+ 'minimum_active_seconds': value['minimumActiveSeconds'],
221
230
  'launch_mode': ContentLaunchModeToJSON(value['launchMode']),
222
231
  'max_attempts': value['maxAttempts'],
223
232
  'score_rollup_strategy': value['scoreRollupStrategy'],