@easyedu/js-lsm-api 1.101.0 → 1.103.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 (110) hide show
  1. package/.openapi-generator/FILES +14 -0
  2. package/README.md +12 -3
  3. package/dist/apis/ContentLibraryQuizApi.d.ts +3 -2
  4. package/dist/apis/ContentLibraryQuizApi.js +5 -2
  5. package/dist/apis/CourseApi.d.ts +38 -0
  6. package/dist/apis/CourseApi.js +101 -0
  7. package/dist/esm/apis/ContentLibraryQuizApi.d.ts +3 -2
  8. package/dist/esm/apis/ContentLibraryQuizApi.js +5 -2
  9. package/dist/esm/apis/CourseApi.d.ts +38 -0
  10. package/dist/esm/apis/CourseApi.js +101 -0
  11. package/dist/esm/models/CourseProgressionMode.d.ts +25 -0
  12. package/dist/esm/models/CourseProgressionMode.js +43 -0
  13. package/dist/esm/models/GetCourseVersion.d.ts +7 -0
  14. package/dist/esm/models/GetCourseVersion.js +5 -0
  15. package/dist/esm/models/GetCourseVersionItem.d.ts +6 -0
  16. package/dist/esm/models/GetCourseVersionItem.js +4 -0
  17. package/dist/esm/models/GetCourseVersionItemProgression.d.ts +105 -0
  18. package/dist/esm/models/GetCourseVersionItemProgression.js +92 -0
  19. package/dist/esm/models/GetCourseVersionItemSession.d.ts +37 -1
  20. package/dist/esm/models/GetCourseVersionItemSession.js +24 -0
  21. package/dist/esm/models/GetCourseVersionProgression.d.ts +59 -0
  22. package/dist/esm/models/GetCourseVersionProgression.js +62 -0
  23. package/dist/esm/models/GetCourseVersionSectionProgression.d.ts +75 -0
  24. package/dist/esm/models/GetCourseVersionSectionProgression.js +72 -0
  25. package/dist/esm/models/GetResourceSession.d.ts +36 -0
  26. package/dist/esm/models/GetResourceSession.js +24 -0
  27. package/dist/esm/models/PostCourseVersionItem.d.ts +6 -0
  28. package/dist/esm/models/PostCourseVersionItem.js +2 -0
  29. package/dist/esm/models/PostCourseVersionItemSession.d.ts +1 -1
  30. package/dist/esm/models/ProgressionGateError.d.ts +76 -0
  31. package/dist/esm/models/ProgressionGateError.js +74 -0
  32. package/dist/esm/models/ProgressionLockReason.d.ts +24 -0
  33. package/dist/esm/models/ProgressionLockReason.js +42 -0
  34. package/dist/esm/models/PutCourseVersionDraft.d.ts +33 -0
  35. package/dist/esm/models/PutCourseVersionDraft.js +44 -0
  36. package/dist/esm/models/PutCourseVersionItem.d.ts +6 -0
  37. package/dist/esm/models/PutCourseVersionItem.js +2 -0
  38. package/dist/esm/models/PutResourceSessionOverride.d.ts +6 -0
  39. package/dist/esm/models/PutResourceSessionOverride.js +2 -0
  40. package/dist/esm/models/index.d.ts +7 -0
  41. package/dist/esm/models/index.js +7 -0
  42. package/dist/models/CourseProgressionMode.d.ts +25 -0
  43. package/dist/models/CourseProgressionMode.js +51 -0
  44. package/dist/models/GetCourseVersion.d.ts +7 -0
  45. package/dist/models/GetCourseVersion.js +5 -0
  46. package/dist/models/GetCourseVersionItem.d.ts +6 -0
  47. package/dist/models/GetCourseVersionItem.js +4 -0
  48. package/dist/models/GetCourseVersionItemProgression.d.ts +105 -0
  49. package/dist/models/GetCourseVersionItemProgression.js +99 -0
  50. package/dist/models/GetCourseVersionItemSession.d.ts +37 -1
  51. package/dist/models/GetCourseVersionItemSession.js +24 -0
  52. package/dist/models/GetCourseVersionProgression.d.ts +59 -0
  53. package/dist/models/GetCourseVersionProgression.js +69 -0
  54. package/dist/models/GetCourseVersionSectionProgression.d.ts +75 -0
  55. package/dist/models/GetCourseVersionSectionProgression.js +79 -0
  56. package/dist/models/GetResourceSession.d.ts +36 -0
  57. package/dist/models/GetResourceSession.js +24 -0
  58. package/dist/models/PostCourseVersionItem.d.ts +6 -0
  59. package/dist/models/PostCourseVersionItem.js +2 -0
  60. package/dist/models/PostCourseVersionItemSession.d.ts +1 -1
  61. package/dist/models/ProgressionGateError.d.ts +76 -0
  62. package/dist/models/ProgressionGateError.js +82 -0
  63. package/dist/models/ProgressionLockReason.d.ts +24 -0
  64. package/dist/models/ProgressionLockReason.js +50 -0
  65. package/dist/models/PutCourseVersionDraft.d.ts +33 -0
  66. package/dist/models/PutCourseVersionDraft.js +51 -0
  67. package/dist/models/PutCourseVersionItem.d.ts +6 -0
  68. package/dist/models/PutCourseVersionItem.js +2 -0
  69. package/dist/models/PutResourceSessionOverride.d.ts +6 -0
  70. package/dist/models/PutResourceSessionOverride.js +2 -0
  71. package/dist/models/index.d.ts +7 -0
  72. package/dist/models/index.js +7 -0
  73. package/docs/ContentLibraryQuizApi.md +7 -4
  74. package/docs/CourseApi.md +158 -4
  75. package/docs/CourseProgressionMode.md +33 -0
  76. package/docs/GetCourseVersion.md +2 -0
  77. package/docs/GetCourseVersionItem.md +2 -0
  78. package/docs/GetCourseVersionItemProgression.md +58 -0
  79. package/docs/GetCourseVersionItemSession.md +12 -0
  80. package/docs/GetCourseVersionProgression.md +43 -0
  81. package/docs/GetCourseVersionSectionProgression.md +48 -0
  82. package/docs/GetResourceSession.md +12 -0
  83. package/docs/PlayerApi.md +1 -0
  84. package/docs/PostCourseVersionItem.md +2 -0
  85. package/docs/PostCourseVersionItemSession.md +1 -1
  86. package/docs/ProgressionGateError.md +47 -0
  87. package/docs/ProgressionLockReason.md +32 -0
  88. package/docs/PutCourseVersionDraft.md +34 -0
  89. package/docs/PutCourseVersionItem.md +2 -0
  90. package/docs/PutResourceSessionOverride.md +2 -0
  91. package/package.json +1 -1
  92. package/src/apis/ContentLibraryQuizApi.ts +7 -2
  93. package/src/apis/CourseApi.ts +153 -0
  94. package/src/apis/PlayerApi.ts +5 -0
  95. package/src/models/CourseProgressionMode.ts +53 -0
  96. package/src/models/GetCourseVersion.ts +16 -0
  97. package/src/models/GetCourseVersionItem.ts +9 -0
  98. package/src/models/GetCourseVersionItemProgression.ts +184 -0
  99. package/src/models/GetCourseVersionItemSession.ts +55 -1
  100. package/src/models/GetCourseVersionProgression.ts +126 -0
  101. package/src/models/GetCourseVersionSectionProgression.ts +139 -0
  102. package/src/models/GetResourceSession.ts +54 -0
  103. package/src/models/PostCourseVersionItem.ts +8 -0
  104. package/src/models/PostCourseVersionItemSession.ts +1 -1
  105. package/src/models/ProgressionGateError.ts +131 -0
  106. package/src/models/ProgressionLockReason.ts +52 -0
  107. package/src/models/PutCourseVersionDraft.ts +76 -0
  108. package/src/models/PutCourseVersionItem.ts +8 -0
  109. package/src/models/PutResourceSessionOverride.ts +8 -0
  110. package/src/models/index.ts +7 -0
@@ -34,6 +34,7 @@ import { GetCourseVersionItemFromJSON, } from '../models/GetCourseVersionItem';
34
34
  import { GetCourseVersionItemLaunchFromJSON, } from '../models/GetCourseVersionItemLaunch';
35
35
  import { GetCourseVersionItemSessionFromJSON, } from '../models/GetCourseVersionItemSession';
36
36
  import { GetCourseVersionListFromJSON, } from '../models/GetCourseVersionList';
37
+ import { GetCourseVersionProgressionFromJSON, } from '../models/GetCourseVersionProgression';
37
38
  import { GetCourseVersionSectionFromJSON, } from '../models/GetCourseVersionSection';
38
39
  import { PostClearSessionsToJSON, } from '../models/PostClearSessions';
39
40
  import { PostClearSessionsResponseFromJSON, } from '../models/PostClearSessionsResponse';
@@ -51,6 +52,7 @@ import { PostDuplicateToJSON, } from '../models/PostDuplicate';
51
52
  import { PutAttemptAllowanceToJSON, } from '../models/PutAttemptAllowance';
52
53
  import { PutCourseToJSON, } from '../models/PutCourse';
53
54
  import { PutCourseEnrollmentToJSON, } from '../models/PutCourseEnrollment';
55
+ import { PutCourseVersionDraftToJSON, } from '../models/PutCourseVersionDraft';
54
56
  import { PutCourseVersionItemToJSON, } from '../models/PutCourseVersionItem';
55
57
  import { PutCourseVersionOutlineEntryMoveToJSON, } from '../models/PutCourseVersionOutlineEntryMove';
56
58
  import { PutCourseVersionSectionToJSON, } from '../models/PutCourseVersionSection';
@@ -727,6 +729,9 @@ export class CourseApi extends runtime.BaseAPI {
727
729
  throw new runtime.RequiredError('courseVersionId', 'Required parameter "courseVersionId" was null or undefined when calling getCourseVersion().');
728
730
  }
729
731
  const queryParameters = {};
732
+ if (requestParameters['preview'] != null) {
733
+ queryParameters['preview'] = requestParameters['preview'];
734
+ }
730
735
  const headerParameters = {};
731
736
  let urlPath = `/courses/{courseId}/versions/{courseVersionId}`;
732
737
  urlPath = urlPath.replace('{courseId}', encodeURIComponent(String(requestParameters['courseId'])));
@@ -773,6 +778,9 @@ export class CourseApi extends runtime.BaseAPI {
773
778
  throw new runtime.RequiredError('itemId', 'Required parameter "itemId" was null or undefined when calling getCourseVersionItemLaunch().');
774
779
  }
775
780
  const queryParameters = {};
781
+ if (requestParameters['preview'] != null) {
782
+ queryParameters['preview'] = requestParameters['preview'];
783
+ }
776
784
  const headerParameters = {};
777
785
  let urlPath = `/courses/{courseId}/versions/{courseVersionId}/items/{itemId}/launch`;
778
786
  urlPath = urlPath.replace('{courseId}', encodeURIComponent(String(requestParameters['courseId'])));
@@ -844,6 +852,52 @@ export class CourseApi extends runtime.BaseAPI {
844
852
  return yield response.value();
845
853
  });
846
854
  }
855
+ /**
856
+ * Creates request options for getCourseVersionProgression without sending the request
857
+ */
858
+ getCourseVersionProgressionRequestOpts(requestParameters) {
859
+ return __awaiter(this, void 0, void 0, function* () {
860
+ if (requestParameters['courseId'] == null) {
861
+ throw new runtime.RequiredError('courseId', 'Required parameter "courseId" was null or undefined when calling getCourseVersionProgression().');
862
+ }
863
+ if (requestParameters['courseVersionId'] == null) {
864
+ throw new runtime.RequiredError('courseVersionId', 'Required parameter "courseVersionId" was null or undefined when calling getCourseVersionProgression().');
865
+ }
866
+ const queryParameters = {};
867
+ if (requestParameters['preview'] != null) {
868
+ queryParameters['preview'] = requestParameters['preview'];
869
+ }
870
+ const headerParameters = {};
871
+ let urlPath = `/courses/{courseId}/versions/{courseVersionId}/progression`;
872
+ urlPath = urlPath.replace('{courseId}', encodeURIComponent(String(requestParameters['courseId'])));
873
+ urlPath = urlPath.replace('{courseVersionId}', encodeURIComponent(String(requestParameters['courseVersionId'])));
874
+ return {
875
+ path: urlPath,
876
+ method: 'GET',
877
+ headers: headerParameters,
878
+ query: queryParameters,
879
+ };
880
+ });
881
+ }
882
+ /**
883
+ * Get learner-specific completion and section lock state
884
+ */
885
+ getCourseVersionProgressionRaw(requestParameters, initOverrides) {
886
+ return __awaiter(this, void 0, void 0, function* () {
887
+ const requestOptions = yield this.getCourseVersionProgressionRequestOpts(requestParameters);
888
+ const response = yield this.request(requestOptions, initOverrides);
889
+ return new runtime.JSONApiResponse(response, (jsonValue) => GetCourseVersionProgressionFromJSON(jsonValue));
890
+ });
891
+ }
892
+ /**
893
+ * Get learner-specific completion and section lock state
894
+ */
895
+ getCourseVersionProgression(requestParameters, initOverrides) {
896
+ return __awaiter(this, void 0, void 0, function* () {
897
+ const response = yield this.getCourseVersionProgressionRaw(requestParameters, initOverrides);
898
+ return yield response.value();
899
+ });
900
+ }
847
901
  /**
848
902
  * Creates request options for postCourse without sending the request
849
903
  */
@@ -1325,6 +1379,9 @@ export class CourseApi extends runtime.BaseAPI {
1325
1379
  throw new runtime.RequiredError('itemId', 'Required parameter "itemId" was null or undefined when calling postCourseVersionItemSession().');
1326
1380
  }
1327
1381
  const queryParameters = {};
1382
+ if (requestParameters['preview'] != null) {
1383
+ queryParameters['preview'] = requestParameters['preview'];
1384
+ }
1328
1385
  const headerParameters = {};
1329
1386
  headerParameters['Content-Type'] = 'application/json';
1330
1387
  let urlPath = `/courses/{courseId}/versions/{courseVersionId}/items/{itemId}/sessions`;
@@ -1641,6 +1698,50 @@ export class CourseApi extends runtime.BaseAPI {
1641
1698
  return yield response.value();
1642
1699
  });
1643
1700
  }
1701
+ /**
1702
+ * Creates request options for putCourseVersionDraft without sending the request
1703
+ */
1704
+ putCourseVersionDraftRequestOpts(requestParameters) {
1705
+ return __awaiter(this, void 0, void 0, function* () {
1706
+ if (requestParameters['courseId'] == null) {
1707
+ throw new runtime.RequiredError('courseId', 'Required parameter "courseId" was null or undefined when calling putCourseVersionDraft().');
1708
+ }
1709
+ if (requestParameters['putCourseVersionDraft'] == null) {
1710
+ throw new runtime.RequiredError('putCourseVersionDraft', 'Required parameter "putCourseVersionDraft" was null or undefined when calling putCourseVersionDraft().');
1711
+ }
1712
+ const queryParameters = {};
1713
+ const headerParameters = {};
1714
+ headerParameters['Content-Type'] = 'application/json';
1715
+ let urlPath = `/courses/{courseId}/draft`;
1716
+ urlPath = urlPath.replace('{courseId}', encodeURIComponent(String(requestParameters['courseId'])));
1717
+ return {
1718
+ path: urlPath,
1719
+ method: 'PUT',
1720
+ headers: headerParameters,
1721
+ query: queryParameters,
1722
+ body: PutCourseVersionDraftToJSON(requestParameters['putCourseVersionDraft']),
1723
+ };
1724
+ });
1725
+ }
1726
+ /**
1727
+ * Update progression settings on the editable course draft
1728
+ */
1729
+ putCourseVersionDraftRaw(requestParameters, initOverrides) {
1730
+ return __awaiter(this, void 0, void 0, function* () {
1731
+ const requestOptions = yield this.putCourseVersionDraftRequestOpts(requestParameters);
1732
+ const response = yield this.request(requestOptions, initOverrides);
1733
+ return new runtime.JSONApiResponse(response, (jsonValue) => GetCourseVersionFromJSON(jsonValue));
1734
+ });
1735
+ }
1736
+ /**
1737
+ * Update progression settings on the editable course draft
1738
+ */
1739
+ putCourseVersionDraft(requestParameters, initOverrides) {
1740
+ return __awaiter(this, void 0, void 0, function* () {
1741
+ const response = yield this.putCourseVersionDraftRaw(requestParameters, initOverrides);
1742
+ return yield response.value();
1743
+ });
1744
+ }
1644
1745
  /**
1645
1746
  * Creates request options for putCourseVersionItem without sending the request
1646
1747
  */
@@ -0,0 +1,25 @@
1
+ /**
2
+ * LMS API
3
+ * LMS API
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * Controls whether top-level course sections unlock freely or in completion order.
14
+ * @export
15
+ */
16
+ export declare const CourseProgressionMode: {
17
+ readonly Free: "free";
18
+ readonly SequentialSections: "sequential_sections";
19
+ };
20
+ export type CourseProgressionMode = typeof CourseProgressionMode[keyof typeof CourseProgressionMode];
21
+ export declare function instanceOfCourseProgressionMode(value: any): boolean;
22
+ export declare function CourseProgressionModeFromJSON(json: any): CourseProgressionMode;
23
+ export declare function CourseProgressionModeFromJSONTyped(json: any, ignoreDiscriminator: boolean): CourseProgressionMode;
24
+ export declare function CourseProgressionModeToJSON(value?: CourseProgressionMode | null): any;
25
+ export declare function CourseProgressionModeToJSONTyped(value: any, ignoreDiscriminator: boolean): CourseProgressionMode;
@@ -0,0 +1,43 @@
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
+ * Controls whether top-level course sections unlock freely or in completion order.
16
+ * @export
17
+ */
18
+ export const CourseProgressionMode = {
19
+ Free: 'free',
20
+ SequentialSections: 'sequential_sections'
21
+ };
22
+ export function instanceOfCourseProgressionMode(value) {
23
+ for (const key in CourseProgressionMode) {
24
+ if (Object.prototype.hasOwnProperty.call(CourseProgressionMode, key)) {
25
+ if (CourseProgressionMode[key] === value) {
26
+ return true;
27
+ }
28
+ }
29
+ }
30
+ return false;
31
+ }
32
+ export function CourseProgressionModeFromJSON(json) {
33
+ return CourseProgressionModeFromJSONTyped(json, false);
34
+ }
35
+ export function CourseProgressionModeFromJSONTyped(json, ignoreDiscriminator) {
36
+ return json;
37
+ }
38
+ export function CourseProgressionModeToJSON(value) {
39
+ return value;
40
+ }
41
+ export function CourseProgressionModeToJSONTyped(value, ignoreDiscriminator) {
42
+ return value;
43
+ }
@@ -11,6 +11,7 @@
11
11
  */
12
12
  import type { ContentLibraryVersionStatus } from './ContentLibraryVersionStatus';
13
13
  import type { RichTextDocument } from './RichTextDocument';
14
+ import type { CourseProgressionMode } from './CourseProgressionMode';
14
15
  import type { GetCourseVersionSection } from './GetCourseVersionSection';
15
16
  /**
16
17
  *
@@ -66,6 +67,12 @@ export interface GetCourseVersion {
66
67
  * @memberof GetCourseVersion
67
68
  */
68
69
  changeNotes?: string | null;
70
+ /**
71
+ *
72
+ * @type {CourseProgressionMode}
73
+ * @memberof GetCourseVersion
74
+ */
75
+ progressionMode: CourseProgressionMode;
69
76
  /**
70
77
  *
71
78
  * @type {Array<GetCourseVersionSection>}
@@ -13,6 +13,7 @@
13
13
  */
14
14
  import { ContentLibraryVersionStatusFromJSON, ContentLibraryVersionStatusToJSON, } from './ContentLibraryVersionStatus';
15
15
  import { RichTextDocumentFromJSON, RichTextDocumentToJSON, } from './RichTextDocument';
16
+ import { CourseProgressionModeFromJSON, CourseProgressionModeToJSON, } from './CourseProgressionMode';
16
17
  import { GetCourseVersionSectionFromJSON, GetCourseVersionSectionToJSON, } from './GetCourseVersionSection';
17
18
  /**
18
19
  * Check if a given object implements the GetCourseVersion interface.
@@ -32,6 +33,8 @@ export function instanceOfGetCourseVersion(value) {
32
33
  return false;
33
34
  if (!('descriptionRich' in value) || value['descriptionRich'] === undefined)
34
35
  return false;
36
+ if (!('progressionMode' in value) || value['progressionMode'] === undefined)
37
+ return false;
35
38
  if (!('sections' in value) || value['sections'] === undefined)
36
39
  return false;
37
40
  if (!('createdAt' in value) || value['createdAt'] === undefined)
@@ -56,6 +59,7 @@ export function GetCourseVersionFromJSONTyped(json, ignoreDiscriminator) {
56
59
  'description': json['description'],
57
60
  'descriptionRich': RichTextDocumentFromJSON(json['description_rich']),
58
61
  'changeNotes': json['change_notes'] == null ? undefined : json['change_notes'],
62
+ 'progressionMode': CourseProgressionModeFromJSON(json['progression_mode']),
59
63
  'sections': (json['sections'].map(GetCourseVersionSectionFromJSON)),
60
64
  'createdAt': json['created_at'],
61
65
  'updatedAt': json['updated_at'],
@@ -78,6 +82,7 @@ export function GetCourseVersionToJSONTyped(value, ignoreDiscriminator = false)
78
82
  'description': value['description'],
79
83
  'description_rich': RichTextDocumentToJSON(value['descriptionRich']),
80
84
  'change_notes': value['changeNotes'],
85
+ 'progression_mode': CourseProgressionModeToJSON(value['progressionMode']),
81
86
  'sections': (value['sections'].map(GetCourseVersionSectionToJSON)),
82
87
  'created_at': value['createdAt'],
83
88
  'updated_at': value['updatedAt'],
@@ -88,6 +88,12 @@ export interface GetCourseVersionItem {
88
88
  * @memberof GetCourseVersionItem
89
89
  */
90
90
  isRequired: boolean;
91
+ /**
92
+ * Minimum cumulative active time required for this resource placement. Null disables the timer.
93
+ * @type {number}
94
+ * @memberof GetCourseVersionItem
95
+ */
96
+ minimumActiveSeconds: number | null;
91
97
  /**
92
98
  *
93
99
  * @type {ContentLaunchMode}
@@ -50,6 +50,8 @@ export function instanceOfGetCourseVersionItem(value) {
50
50
  return false;
51
51
  if (!('isRequired' in value) || value['isRequired'] === undefined)
52
52
  return false;
53
+ if (!('minimumActiveSeconds' in value) || value['minimumActiveSeconds'] === undefined)
54
+ return false;
53
55
  if (!('launchMode' in value) || value['launchMode'] === undefined)
54
56
  return false;
55
57
  if (!('maxAttempts' in value) || value['maxAttempts'] === undefined)
@@ -80,6 +82,7 @@ export function GetCourseVersionItemFromJSONTyped(json, ignoreDiscriminator) {
80
82
  'displayOrder': json['display_order'],
81
83
  'isVisible': json['is_visible'],
82
84
  'isRequired': json['is_required'],
85
+ 'minimumActiveSeconds': json['minimum_active_seconds'],
83
86
  'launchMode': ContentLaunchModeFromJSON(json['launch_mode']),
84
87
  'maxAttempts': json['max_attempts'],
85
88
  'scoreRollupStrategy': json['score_rollup_strategy'],
@@ -106,6 +109,7 @@ export function GetCourseVersionItemToJSONTyped(value, ignoreDiscriminator = fal
106
109
  'display_order': value['displayOrder'],
107
110
  'is_visible': value['isVisible'],
108
111
  'is_required': value['isRequired'],
112
+ 'minimum_active_seconds': value['minimumActiveSeconds'],
109
113
  'launch_mode': ContentLaunchModeToJSON(value['launchMode']),
110
114
  'max_attempts': value['maxAttempts'],
111
115
  'score_rollup_strategy': value['scoreRollupStrategy'],
@@ -0,0 +1,105 @@
1
+ /**
2
+ * LMS API
3
+ * LMS API
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { ProgressionLockReason } from './ProgressionLockReason';
13
+ /**
14
+ *
15
+ * @export
16
+ * @interface GetCourseVersionItemProgression
17
+ */
18
+ export interface GetCourseVersionItemProgression {
19
+ /**
20
+ *
21
+ * @type {string}
22
+ * @memberof GetCourseVersionItemProgression
23
+ */
24
+ itemId: string;
25
+ /**
26
+ *
27
+ * @type {string}
28
+ * @memberof GetCourseVersionItemProgression
29
+ */
30
+ rootSectionId: string;
31
+ /**
32
+ *
33
+ * @type {boolean}
34
+ * @memberof GetCourseVersionItemProgression
35
+ */
36
+ isRequired: boolean;
37
+ /**
38
+ *
39
+ * @type {boolean}
40
+ * @memberof GetCourseVersionItemProgression
41
+ */
42
+ isLocked: boolean;
43
+ /**
44
+ *
45
+ * @type {ProgressionLockReason}
46
+ * @memberof GetCourseVersionItemProgression
47
+ */
48
+ lockReason: ProgressionLockReason | null;
49
+ /**
50
+ *
51
+ * @type {string}
52
+ * @memberof GetCourseVersionItemProgression
53
+ */
54
+ blockingSectionId: string | null;
55
+ /**
56
+ *
57
+ * @type {boolean}
58
+ * @memberof GetCourseVersionItemProgression
59
+ */
60
+ nativeCompleted: boolean;
61
+ /**
62
+ *
63
+ * @type {boolean}
64
+ * @memberof GetCourseVersionItemProgression
65
+ */
66
+ effectiveCompleted: boolean;
67
+ /**
68
+ *
69
+ * @type {number}
70
+ * @memberof GetCourseVersionItemProgression
71
+ */
72
+ activeSeconds: number;
73
+ /**
74
+ *
75
+ * @type {number}
76
+ * @memberof GetCourseVersionItemProgression
77
+ */
78
+ minimumActiveSeconds: number | null;
79
+ /**
80
+ *
81
+ * @type {number}
82
+ * @memberof GetCourseVersionItemProgression
83
+ */
84
+ remainingActiveSeconds: number;
85
+ /**
86
+ *
87
+ * @type {boolean}
88
+ * @memberof GetCourseVersionItemProgression
89
+ */
90
+ timeRequirementMet: boolean;
91
+ /**
92
+ *
93
+ * @type {boolean}
94
+ * @memberof GetCourseVersionItemProgression
95
+ */
96
+ timeRequirementWaived: boolean;
97
+ }
98
+ /**
99
+ * Check if a given object implements the GetCourseVersionItemProgression interface.
100
+ */
101
+ export declare function instanceOfGetCourseVersionItemProgression(value: object): value is GetCourseVersionItemProgression;
102
+ export declare function GetCourseVersionItemProgressionFromJSON(json: any): GetCourseVersionItemProgression;
103
+ export declare function GetCourseVersionItemProgressionFromJSONTyped(json: any, ignoreDiscriminator: boolean): GetCourseVersionItemProgression;
104
+ export declare function GetCourseVersionItemProgressionToJSON(json: any): GetCourseVersionItemProgression;
105
+ export declare function GetCourseVersionItemProgressionToJSONTyped(value?: GetCourseVersionItemProgression | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,92 @@
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
+ import { ProgressionLockReasonFromJSON, ProgressionLockReasonToJSON, } from './ProgressionLockReason';
15
+ /**
16
+ * Check if a given object implements the GetCourseVersionItemProgression interface.
17
+ */
18
+ export function instanceOfGetCourseVersionItemProgression(value) {
19
+ if (!('itemId' in value) || value['itemId'] === undefined)
20
+ return false;
21
+ if (!('rootSectionId' in value) || value['rootSectionId'] === undefined)
22
+ return false;
23
+ if (!('isRequired' in value) || value['isRequired'] === undefined)
24
+ return false;
25
+ if (!('isLocked' in value) || value['isLocked'] === undefined)
26
+ return false;
27
+ if (!('lockReason' in value) || value['lockReason'] === undefined)
28
+ return false;
29
+ if (!('blockingSectionId' in value) || value['blockingSectionId'] === undefined)
30
+ return false;
31
+ if (!('nativeCompleted' in value) || value['nativeCompleted'] === undefined)
32
+ return false;
33
+ if (!('effectiveCompleted' in value) || value['effectiveCompleted'] === undefined)
34
+ return false;
35
+ if (!('activeSeconds' in value) || value['activeSeconds'] === undefined)
36
+ return false;
37
+ if (!('minimumActiveSeconds' in value) || value['minimumActiveSeconds'] === undefined)
38
+ return false;
39
+ if (!('remainingActiveSeconds' in value) || value['remainingActiveSeconds'] === undefined)
40
+ return false;
41
+ if (!('timeRequirementMet' in value) || value['timeRequirementMet'] === undefined)
42
+ return false;
43
+ if (!('timeRequirementWaived' in value) || value['timeRequirementWaived'] === undefined)
44
+ return false;
45
+ return true;
46
+ }
47
+ export function GetCourseVersionItemProgressionFromJSON(json) {
48
+ return GetCourseVersionItemProgressionFromJSONTyped(json, false);
49
+ }
50
+ export function GetCourseVersionItemProgressionFromJSONTyped(json, ignoreDiscriminator) {
51
+ if (json == null) {
52
+ return json;
53
+ }
54
+ return {
55
+ 'itemId': json['item_id'],
56
+ 'rootSectionId': json['root_section_id'],
57
+ 'isRequired': json['is_required'],
58
+ 'isLocked': json['is_locked'],
59
+ 'lockReason': ProgressionLockReasonFromJSON(json['lock_reason']),
60
+ 'blockingSectionId': json['blocking_section_id'],
61
+ 'nativeCompleted': json['native_completed'],
62
+ 'effectiveCompleted': json['effective_completed'],
63
+ 'activeSeconds': json['active_seconds'],
64
+ 'minimumActiveSeconds': json['minimum_active_seconds'],
65
+ 'remainingActiveSeconds': json['remaining_active_seconds'],
66
+ 'timeRequirementMet': json['time_requirement_met'],
67
+ 'timeRequirementWaived': json['time_requirement_waived'],
68
+ };
69
+ }
70
+ export function GetCourseVersionItemProgressionToJSON(json) {
71
+ return GetCourseVersionItemProgressionToJSONTyped(json, false);
72
+ }
73
+ export function GetCourseVersionItemProgressionToJSONTyped(value, ignoreDiscriminator = false) {
74
+ if (value == null) {
75
+ return value;
76
+ }
77
+ return {
78
+ 'item_id': value['itemId'],
79
+ 'root_section_id': value['rootSectionId'],
80
+ 'is_required': value['isRequired'],
81
+ 'is_locked': value['isLocked'],
82
+ 'lock_reason': ProgressionLockReasonToJSON(value['lockReason']),
83
+ 'blocking_section_id': value['blockingSectionId'],
84
+ 'native_completed': value['nativeCompleted'],
85
+ 'effective_completed': value['effectiveCompleted'],
86
+ 'active_seconds': value['activeSeconds'],
87
+ 'minimum_active_seconds': value['minimumActiveSeconds'],
88
+ 'remaining_active_seconds': value['remainingActiveSeconds'],
89
+ 'time_requirement_met': value['timeRequirementMet'],
90
+ 'time_requirement_waived': value['timeRequirementWaived'],
91
+ };
92
+ }
@@ -103,11 +103,47 @@ export interface GetCourseVersionItemSession {
103
103
  */
104
104
  scoreRaw?: number | null;
105
105
  /**
106
- * Accumulated active learner time across this session's activities.
106
+ *
107
107
  * @type {number}
108
108
  * @memberof GetCourseVersionItemSession
109
109
  */
110
110
  durationSeconds: number;
111
+ /**
112
+ *
113
+ * @type {number}
114
+ * @memberof GetCourseVersionItemSession
115
+ */
116
+ minimumActiveSeconds: number | null;
117
+ /**
118
+ *
119
+ * @type {number}
120
+ * @memberof GetCourseVersionItemSession
121
+ */
122
+ accumulatedActiveSeconds: number;
123
+ /**
124
+ *
125
+ * @type {number}
126
+ * @memberof GetCourseVersionItemSession
127
+ */
128
+ remainingActiveSeconds: number;
129
+ /**
130
+ *
131
+ * @type {boolean}
132
+ * @memberof GetCourseVersionItemSession
133
+ */
134
+ timeRequirementMet: boolean;
135
+ /**
136
+ *
137
+ * @type {boolean}
138
+ * @memberof GetCourseVersionItemSession
139
+ */
140
+ timeRequirementWaived: boolean;
141
+ /**
142
+ * True when native completion and the placement's active-time requirement are both satisfied.
143
+ * @type {boolean}
144
+ * @memberof GetCourseVersionItemSession
145
+ */
146
+ effectiveCompletionMet: boolean;
111
147
  /**
112
148
  *
113
149
  * @type {number}
@@ -46,6 +46,18 @@ export function instanceOfGetCourseVersionItemSession(value) {
46
46
  return false;
47
47
  if (!('durationSeconds' in value) || value['durationSeconds'] === undefined)
48
48
  return false;
49
+ if (!('minimumActiveSeconds' in value) || value['minimumActiveSeconds'] === undefined)
50
+ return false;
51
+ if (!('accumulatedActiveSeconds' in value) || value['accumulatedActiveSeconds'] === undefined)
52
+ return false;
53
+ if (!('remainingActiveSeconds' in value) || value['remainingActiveSeconds'] === undefined)
54
+ return false;
55
+ if (!('timeRequirementMet' in value) || value['timeRequirementMet'] === undefined)
56
+ return false;
57
+ if (!('timeRequirementWaived' in value) || value['timeRequirementWaived'] === undefined)
58
+ return false;
59
+ if (!('effectiveCompletionMet' in value) || value['effectiveCompletionMet'] === undefined)
60
+ return false;
49
61
  if (!('createdAt' in value) || value['createdAt'] === undefined)
50
62
  return false;
51
63
  if (!('updatedAt' in value) || value['updatedAt'] === undefined)
@@ -75,6 +87,12 @@ export function GetCourseVersionItemSessionFromJSONTyped(json, ignoreDiscriminat
75
87
  'gradeStatus': json['grade_status'],
76
88
  'scoreRaw': json['score_raw'] == null ? undefined : json['score_raw'],
77
89
  'durationSeconds': json['duration_seconds'],
90
+ 'minimumActiveSeconds': json['minimum_active_seconds'],
91
+ 'accumulatedActiveSeconds': json['accumulated_active_seconds'],
92
+ 'remainingActiveSeconds': json['remaining_active_seconds'],
93
+ 'timeRequirementMet': json['time_requirement_met'],
94
+ 'timeRequirementWaived': json['time_requirement_waived'],
95
+ 'effectiveCompletionMet': json['effective_completion_met'],
78
96
  'createdAt': json['created_at'],
79
97
  'updatedAt': json['updated_at'],
80
98
  'completedAt': json['completed_at'] == null ? undefined : json['completed_at'],
@@ -103,6 +121,12 @@ export function GetCourseVersionItemSessionToJSONTyped(value, ignoreDiscriminato
103
121
  'grade_status': value['gradeStatus'],
104
122
  'score_raw': value['scoreRaw'],
105
123
  'duration_seconds': value['durationSeconds'],
124
+ 'minimum_active_seconds': value['minimumActiveSeconds'],
125
+ 'accumulated_active_seconds': value['accumulatedActiveSeconds'],
126
+ 'remaining_active_seconds': value['remainingActiveSeconds'],
127
+ 'time_requirement_met': value['timeRequirementMet'],
128
+ 'time_requirement_waived': value['timeRequirementWaived'],
129
+ 'effective_completion_met': value['effectiveCompletionMet'],
106
130
  'created_at': value['createdAt'],
107
131
  'updated_at': value['updatedAt'],
108
132
  'completed_at': value['completedAt'],
@@ -0,0 +1,59 @@
1
+ /**
2
+ * LMS API
3
+ * LMS API
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { GetCourseVersionItemProgression } from './GetCourseVersionItemProgression';
13
+ import type { CourseProgressionMode } from './CourseProgressionMode';
14
+ import type { GetCourseVersionSectionProgression } from './GetCourseVersionSectionProgression';
15
+ /**
16
+ * Learner-specific live completion state, or isolated sandbox completion state during an authorized course preview.
17
+ * @export
18
+ * @interface GetCourseVersionProgression
19
+ */
20
+ export interface GetCourseVersionProgression {
21
+ /**
22
+ *
23
+ * @type {string}
24
+ * @memberof GetCourseVersionProgression
25
+ */
26
+ courseId: string;
27
+ /**
28
+ *
29
+ * @type {string}
30
+ * @memberof GetCourseVersionProgression
31
+ */
32
+ courseVersionId: string;
33
+ /**
34
+ *
35
+ * @type {CourseProgressionMode}
36
+ * @memberof GetCourseVersionProgression
37
+ */
38
+ progressionMode: CourseProgressionMode;
39
+ /**
40
+ *
41
+ * @type {Array<GetCourseVersionSectionProgression>}
42
+ * @memberof GetCourseVersionProgression
43
+ */
44
+ sections: Array<GetCourseVersionSectionProgression>;
45
+ /**
46
+ *
47
+ * @type {Array<GetCourseVersionItemProgression>}
48
+ * @memberof GetCourseVersionProgression
49
+ */
50
+ items: Array<GetCourseVersionItemProgression>;
51
+ }
52
+ /**
53
+ * Check if a given object implements the GetCourseVersionProgression interface.
54
+ */
55
+ export declare function instanceOfGetCourseVersionProgression(value: object): value is GetCourseVersionProgression;
56
+ export declare function GetCourseVersionProgressionFromJSON(json: any): GetCourseVersionProgression;
57
+ export declare function GetCourseVersionProgressionFromJSONTyped(json: any, ignoreDiscriminator: boolean): GetCourseVersionProgression;
58
+ export declare function GetCourseVersionProgressionToJSON(json: any): GetCourseVersionProgression;
59
+ export declare function GetCourseVersionProgressionToJSONTyped(value?: GetCourseVersionProgression | null, ignoreDiscriminator?: boolean): any;