@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
@@ -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 completion and lock state for an enrollment-pinned course version.
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;
@@ -0,0 +1,62 @@
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 { GetCourseVersionItemProgressionFromJSON, GetCourseVersionItemProgressionToJSON, } from './GetCourseVersionItemProgression';
15
+ import { CourseProgressionModeFromJSON, CourseProgressionModeToJSON, } from './CourseProgressionMode';
16
+ import { GetCourseVersionSectionProgressionFromJSON, GetCourseVersionSectionProgressionToJSON, } from './GetCourseVersionSectionProgression';
17
+ /**
18
+ * Check if a given object implements the GetCourseVersionProgression interface.
19
+ */
20
+ export function instanceOfGetCourseVersionProgression(value) {
21
+ if (!('courseId' in value) || value['courseId'] === undefined)
22
+ return false;
23
+ if (!('courseVersionId' in value) || value['courseVersionId'] === undefined)
24
+ return false;
25
+ if (!('progressionMode' in value) || value['progressionMode'] === undefined)
26
+ return false;
27
+ if (!('sections' in value) || value['sections'] === undefined)
28
+ return false;
29
+ if (!('items' in value) || value['items'] === undefined)
30
+ return false;
31
+ return true;
32
+ }
33
+ export function GetCourseVersionProgressionFromJSON(json) {
34
+ return GetCourseVersionProgressionFromJSONTyped(json, false);
35
+ }
36
+ export function GetCourseVersionProgressionFromJSONTyped(json, ignoreDiscriminator) {
37
+ if (json == null) {
38
+ return json;
39
+ }
40
+ return {
41
+ 'courseId': json['course_id'],
42
+ 'courseVersionId': json['course_version_id'],
43
+ 'progressionMode': CourseProgressionModeFromJSON(json['progression_mode']),
44
+ 'sections': (json['sections'].map(GetCourseVersionSectionProgressionFromJSON)),
45
+ 'items': (json['items'].map(GetCourseVersionItemProgressionFromJSON)),
46
+ };
47
+ }
48
+ export function GetCourseVersionProgressionToJSON(json) {
49
+ return GetCourseVersionProgressionToJSONTyped(json, false);
50
+ }
51
+ export function GetCourseVersionProgressionToJSONTyped(value, ignoreDiscriminator = false) {
52
+ if (value == null) {
53
+ return value;
54
+ }
55
+ return {
56
+ 'course_id': value['courseId'],
57
+ 'course_version_id': value['courseVersionId'],
58
+ 'progression_mode': CourseProgressionModeToJSON(value['progressionMode']),
59
+ 'sections': (value['sections'].map(GetCourseVersionSectionProgressionToJSON)),
60
+ 'items': (value['items'].map(GetCourseVersionItemProgressionToJSON)),
61
+ };
62
+ }
@@ -0,0 +1,75 @@
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 GetCourseVersionSectionProgression
17
+ */
18
+ export interface GetCourseVersionSectionProgression {
19
+ /**
20
+ *
21
+ * @type {string}
22
+ * @memberof GetCourseVersionSectionProgression
23
+ */
24
+ sectionId: string;
25
+ /**
26
+ *
27
+ * @type {string}
28
+ * @memberof GetCourseVersionSectionProgression
29
+ */
30
+ rootSectionId: string;
31
+ /**
32
+ *
33
+ * @type {boolean}
34
+ * @memberof GetCourseVersionSectionProgression
35
+ */
36
+ isRootSection: boolean;
37
+ /**
38
+ *
39
+ * @type {boolean}
40
+ * @memberof GetCourseVersionSectionProgression
41
+ */
42
+ isComplete: boolean;
43
+ /**
44
+ *
45
+ * @type {boolean}
46
+ * @memberof GetCourseVersionSectionProgression
47
+ */
48
+ isLocked: boolean;
49
+ /**
50
+ *
51
+ * @type {ProgressionLockReason}
52
+ * @memberof GetCourseVersionSectionProgression
53
+ */
54
+ lockReason: ProgressionLockReason | null;
55
+ /**
56
+ *
57
+ * @type {string}
58
+ * @memberof GetCourseVersionSectionProgression
59
+ */
60
+ blockingSectionId: string | null;
61
+ /**
62
+ *
63
+ * @type {Array<string>}
64
+ * @memberof GetCourseVersionSectionProgression
65
+ */
66
+ blockingItemIds: Array<string>;
67
+ }
68
+ /**
69
+ * Check if a given object implements the GetCourseVersionSectionProgression interface.
70
+ */
71
+ export declare function instanceOfGetCourseVersionSectionProgression(value: object): value is GetCourseVersionSectionProgression;
72
+ export declare function GetCourseVersionSectionProgressionFromJSON(json: any): GetCourseVersionSectionProgression;
73
+ export declare function GetCourseVersionSectionProgressionFromJSONTyped(json: any, ignoreDiscriminator: boolean): GetCourseVersionSectionProgression;
74
+ export declare function GetCourseVersionSectionProgressionToJSON(json: any): GetCourseVersionSectionProgression;
75
+ export declare function GetCourseVersionSectionProgressionToJSONTyped(value?: GetCourseVersionSectionProgression | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,72 @@
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 GetCourseVersionSectionProgression interface.
17
+ */
18
+ export function instanceOfGetCourseVersionSectionProgression(value) {
19
+ if (!('sectionId' in value) || value['sectionId'] === undefined)
20
+ return false;
21
+ if (!('rootSectionId' in value) || value['rootSectionId'] === undefined)
22
+ return false;
23
+ if (!('isRootSection' in value) || value['isRootSection'] === undefined)
24
+ return false;
25
+ if (!('isComplete' in value) || value['isComplete'] === undefined)
26
+ return false;
27
+ if (!('isLocked' in value) || value['isLocked'] === undefined)
28
+ return false;
29
+ if (!('lockReason' in value) || value['lockReason'] === undefined)
30
+ return false;
31
+ if (!('blockingSectionId' in value) || value['blockingSectionId'] === undefined)
32
+ return false;
33
+ if (!('blockingItemIds' in value) || value['blockingItemIds'] === undefined)
34
+ return false;
35
+ return true;
36
+ }
37
+ export function GetCourseVersionSectionProgressionFromJSON(json) {
38
+ return GetCourseVersionSectionProgressionFromJSONTyped(json, false);
39
+ }
40
+ export function GetCourseVersionSectionProgressionFromJSONTyped(json, ignoreDiscriminator) {
41
+ if (json == null) {
42
+ return json;
43
+ }
44
+ return {
45
+ 'sectionId': json['section_id'],
46
+ 'rootSectionId': json['root_section_id'],
47
+ 'isRootSection': json['is_root_section'],
48
+ 'isComplete': json['is_complete'],
49
+ 'isLocked': json['is_locked'],
50
+ 'lockReason': ProgressionLockReasonFromJSON(json['lock_reason']),
51
+ 'blockingSectionId': json['blocking_section_id'],
52
+ 'blockingItemIds': json['blocking_item_ids'],
53
+ };
54
+ }
55
+ export function GetCourseVersionSectionProgressionToJSON(json) {
56
+ return GetCourseVersionSectionProgressionToJSONTyped(json, false);
57
+ }
58
+ export function GetCourseVersionSectionProgressionToJSONTyped(value, ignoreDiscriminator = false) {
59
+ if (value == null) {
60
+ return value;
61
+ }
62
+ return {
63
+ 'section_id': value['sectionId'],
64
+ 'root_section_id': value['rootSectionId'],
65
+ 'is_root_section': value['isRootSection'],
66
+ 'is_complete': value['isComplete'],
67
+ 'is_locked': value['isLocked'],
68
+ 'lock_reason': ProgressionLockReasonToJSON(value['lockReason']),
69
+ 'blocking_section_id': value['blockingSectionId'],
70
+ 'blocking_item_ids': value['blockingItemIds'],
71
+ };
72
+ }
@@ -156,6 +156,42 @@ export interface GetResourceSession {
156
156
  * @memberof GetResourceSession
157
157
  */
158
158
  durationSeconds: number;
159
+ /**
160
+ *
161
+ * @type {number}
162
+ * @memberof GetResourceSession
163
+ */
164
+ minimumActiveSeconds: number | null;
165
+ /**
166
+ * Active time accumulated across all live attempts for this course placement.
167
+ * @type {number}
168
+ * @memberof GetResourceSession
169
+ */
170
+ accumulatedActiveSeconds: number;
171
+ /**
172
+ *
173
+ * @type {number}
174
+ * @memberof GetResourceSession
175
+ */
176
+ remainingActiveSeconds: number;
177
+ /**
178
+ *
179
+ * @type {boolean}
180
+ * @memberof GetResourceSession
181
+ */
182
+ timeRequirementMet: boolean;
183
+ /**
184
+ *
185
+ * @type {boolean}
186
+ * @memberof GetResourceSession
187
+ */
188
+ timeRequirementWaived: boolean;
189
+ /**
190
+ *
191
+ * @type {boolean}
192
+ * @memberof GetResourceSession
193
+ */
194
+ effectiveCompletionMet: boolean;
159
195
  /**
160
196
  *
161
197
  * @type {number}
@@ -48,6 +48,18 @@ export function instanceOfGetResourceSession(value) {
48
48
  return false;
49
49
  if (!('durationSeconds' in value) || value['durationSeconds'] === undefined)
50
50
  return false;
51
+ if (!('minimumActiveSeconds' in value) || value['minimumActiveSeconds'] === undefined)
52
+ return false;
53
+ if (!('accumulatedActiveSeconds' in value) || value['accumulatedActiveSeconds'] === undefined)
54
+ return false;
55
+ if (!('remainingActiveSeconds' in value) || value['remainingActiveSeconds'] === undefined)
56
+ return false;
57
+ if (!('timeRequirementMet' in value) || value['timeRequirementMet'] === undefined)
58
+ return false;
59
+ if (!('timeRequirementWaived' in value) || value['timeRequirementWaived'] === undefined)
60
+ return false;
61
+ if (!('effectiveCompletionMet' in value) || value['effectiveCompletionMet'] === undefined)
62
+ return false;
51
63
  if (!('createdAt' in value) || value['createdAt'] === undefined)
52
64
  return false;
53
65
  if (!('updatedAt' in value) || value['updatedAt'] === undefined)
@@ -85,6 +97,12 @@ export function GetResourceSessionFromJSONTyped(json, ignoreDiscriminator) {
85
97
  'gradeStatus': json['grade_status'],
86
98
  'scoreRaw': json['score_raw'] == null ? undefined : json['score_raw'],
87
99
  'durationSeconds': json['duration_seconds'],
100
+ 'minimumActiveSeconds': json['minimum_active_seconds'],
101
+ 'accumulatedActiveSeconds': json['accumulated_active_seconds'],
102
+ 'remainingActiveSeconds': json['remaining_active_seconds'],
103
+ 'timeRequirementMet': json['time_requirement_met'],
104
+ 'timeRequirementWaived': json['time_requirement_waived'],
105
+ 'effectiveCompletionMet': json['effective_completion_met'],
88
106
  'initializedAt': json['initialized_at'] == null ? undefined : json['initialized_at'],
89
107
  'terminatedAt': json['terminated_at'] == null ? undefined : json['terminated_at'],
90
108
  'createdAt': json['created_at'],
@@ -123,6 +141,12 @@ export function GetResourceSessionToJSONTyped(value, ignoreDiscriminator = false
123
141
  'grade_status': value['gradeStatus'],
124
142
  'score_raw': value['scoreRaw'],
125
143
  'duration_seconds': value['durationSeconds'],
144
+ 'minimum_active_seconds': value['minimumActiveSeconds'],
145
+ 'accumulated_active_seconds': value['accumulatedActiveSeconds'],
146
+ 'remaining_active_seconds': value['remainingActiveSeconds'],
147
+ 'time_requirement_met': value['timeRequirementMet'],
148
+ 'time_requirement_waived': value['timeRequirementWaived'],
149
+ 'effective_completion_met': value['effectiveCompletionMet'],
126
150
  'initialized_at': value['initializedAt'],
127
151
  'terminated_at': value['terminatedAt'],
128
152
  'created_at': value['createdAt'],
@@ -52,6 +52,12 @@ export interface PostCourseVersionItem {
52
52
  * @memberof PostCourseVersionItem
53
53
  */
54
54
  isRequired?: boolean;
55
+ /**
56
+ * Resource placements only. Omit or set null to disable the timer.
57
+ * @type {number}
58
+ * @memberof PostCourseVersionItem
59
+ */
60
+ minimumActiveSeconds?: number | null;
55
61
  /**
56
62
  *
57
63
  * @type {ContentLaunchMode}
@@ -41,6 +41,7 @@ export function PostCourseVersionItemFromJSONTyped(json, ignoreDiscriminator) {
41
41
  'position': json['position'] == null ? undefined : json['position'],
42
42
  'isVisible': json['is_visible'] == null ? undefined : json['is_visible'],
43
43
  'isRequired': json['is_required'] == null ? undefined : json['is_required'],
44
+ 'minimumActiveSeconds': json['minimum_active_seconds'] == null ? undefined : json['minimum_active_seconds'],
44
45
  'launchMode': json['launch_mode'] == null ? undefined : ContentLaunchModeFromJSON(json['launch_mode']),
45
46
  'maxAttempts': json['max_attempts'] == null ? undefined : json['max_attempts'],
46
47
  'scoreRollupStrategy': json['score_rollup_strategy'] == null ? undefined : json['score_rollup_strategy'],
@@ -61,6 +62,7 @@ export function PostCourseVersionItemToJSONTyped(value, ignoreDiscriminator = fa
61
62
  'position': value['position'],
62
63
  'is_visible': value['isVisible'],
63
64
  'is_required': value['isRequired'],
65
+ 'minimum_active_seconds': value['minimumActiveSeconds'],
64
66
  'launch_mode': ContentLaunchModeToJSON(value['launchMode']),
65
67
  'max_attempts': value['maxAttempts'],
66
68
  'score_rollup_strategy': value['scoreRollupStrategy'],
@@ -0,0 +1,76 @@
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
+ * Structured detail explaining why learner progression is currently blocked.
14
+ * @export
15
+ * @interface ProgressionGateError
16
+ */
17
+ export interface ProgressionGateError {
18
+ /**
19
+ *
20
+ * @type {ProgressionGateErrorCodeEnum}
21
+ * @memberof ProgressionGateError
22
+ */
23
+ code: ProgressionGateErrorCodeEnum;
24
+ /**
25
+ *
26
+ * @type {string}
27
+ * @memberof ProgressionGateError
28
+ */
29
+ message: string;
30
+ /**
31
+ *
32
+ * @type {string}
33
+ * @memberof ProgressionGateError
34
+ */
35
+ blockingSectionId: string | null;
36
+ /**
37
+ *
38
+ * @type {Array<string>}
39
+ * @memberof ProgressionGateError
40
+ */
41
+ blockingItemIds: Array<string>;
42
+ /**
43
+ *
44
+ * @type {number}
45
+ * @memberof ProgressionGateError
46
+ */
47
+ minimumActiveSeconds: number | null;
48
+ /**
49
+ *
50
+ * @type {number}
51
+ * @memberof ProgressionGateError
52
+ */
53
+ activeSeconds: number | null;
54
+ /**
55
+ *
56
+ * @type {number}
57
+ * @memberof ProgressionGateError
58
+ */
59
+ remainingActiveSeconds: number | null;
60
+ }
61
+ /**
62
+ * @export
63
+ */
64
+ export declare const ProgressionGateErrorCodeEnum: {
65
+ readonly ProgressionLocked: "progression_locked";
66
+ readonly MinimumActiveTimeNotMet: "minimum_active_time_not_met";
67
+ };
68
+ export type ProgressionGateErrorCodeEnum = typeof ProgressionGateErrorCodeEnum[keyof typeof ProgressionGateErrorCodeEnum];
69
+ /**
70
+ * Check if a given object implements the ProgressionGateError interface.
71
+ */
72
+ export declare function instanceOfProgressionGateError(value: object): value is ProgressionGateError;
73
+ export declare function ProgressionGateErrorFromJSON(json: any): ProgressionGateError;
74
+ export declare function ProgressionGateErrorFromJSONTyped(json: any, ignoreDiscriminator: boolean): ProgressionGateError;
75
+ export declare function ProgressionGateErrorToJSON(json: any): ProgressionGateError;
76
+ export declare function ProgressionGateErrorToJSONTyped(value?: ProgressionGateError | null, ignoreDiscriminator?: boolean): any;