@easyedu/js-lsm-api 1.118.0 → 1.120.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 (182) hide show
  1. package/.openapi-generator/FILES +42 -0
  2. package/README.md +34 -2
  3. package/dist/apis/CourseApi.d.ts +55 -0
  4. package/dist/apis/CourseApi.js +148 -0
  5. package/dist/apis/DispatchApi.d.ts +121 -5
  6. package/dist/apis/DispatchApi.js +303 -8
  7. package/dist/apis/PlayerApi.d.ts +26 -6
  8. package/dist/apis/PlayerApi.js +57 -6
  9. package/dist/esm/apis/CourseApi.d.ts +55 -0
  10. package/dist/esm/apis/CourseApi.js +148 -0
  11. package/dist/esm/apis/DispatchApi.d.ts +121 -5
  12. package/dist/esm/apis/DispatchApi.js +303 -8
  13. package/dist/esm/apis/PlayerApi.d.ts +26 -6
  14. package/dist/esm/apis/PlayerApi.js +57 -6
  15. package/dist/esm/models/DispatchTokenResponse.d.ts +57 -0
  16. package/dist/esm/models/DispatchTokenResponse.js +61 -0
  17. package/dist/esm/models/GetCourseExport.d.ts +62 -0
  18. package/dist/esm/models/GetCourseExport.js +44 -0
  19. package/dist/esm/models/GetDispatchCourse.d.ts +82 -0
  20. package/dist/esm/models/GetDispatchCourse.js +77 -0
  21. package/dist/esm/models/GetDispatchRollup.d.ts +104 -0
  22. package/dist/esm/models/GetDispatchRollup.js +95 -0
  23. package/dist/esm/models/GetHostedScormRegistration.d.ts +80 -0
  24. package/dist/esm/models/GetHostedScormRegistration.js +71 -0
  25. package/dist/esm/models/GetHostedScormRegistrationList.d.ts +57 -0
  26. package/dist/esm/models/GetHostedScormRegistrationList.js +60 -0
  27. package/dist/esm/models/GetResourceSessionDiagnostics.d.ts +8 -0
  28. package/dist/esm/models/GetResourceSessionDiagnostics.js +2 -0
  29. package/dist/esm/models/HostedScormAccessPolicy.d.ts +50 -0
  30. package/dist/esm/models/HostedScormAccessPolicy.js +55 -0
  31. package/dist/esm/models/HostedScormOutlineEntry.d.ts +108 -0
  32. package/dist/esm/models/HostedScormOutlineEntry.js +97 -0
  33. package/dist/esm/models/HostedScormRollupPolicy.d.ts +69 -0
  34. package/dist/esm/models/HostedScormRollupPolicy.js +72 -0
  35. package/dist/esm/models/HostedScormScoreItem.d.ts +38 -0
  36. package/dist/esm/models/HostedScormScoreItem.js +47 -0
  37. package/dist/esm/models/PostCourseExport.d.ts +28 -0
  38. package/dist/esm/models/PostCourseExport.js +15 -0
  39. package/dist/esm/models/PostDispatchItemLaunch.d.ts +32 -0
  40. package/dist/esm/models/PostDispatchItemLaunch.js +41 -0
  41. package/dist/esm/models/PostDispatchItemLaunchResponse.d.ts +64 -0
  42. package/dist/esm/models/PostDispatchItemLaunchResponse.js +66 -0
  43. package/dist/esm/models/PostDispatchLaunch.d.ts +50 -0
  44. package/dist/esm/models/PostDispatchLaunch.js +53 -0
  45. package/dist/esm/models/PostDispatchLaunchResponse.d.ts +70 -0
  46. package/dist/esm/models/PostDispatchLaunchResponse.js +70 -0
  47. package/dist/esm/models/PostDispatchTokenExchange.d.ts +32 -0
  48. package/dist/esm/models/PostDispatchTokenExchange.js +43 -0
  49. package/dist/esm/models/PutHostedScormStatus.d.ts +32 -0
  50. package/dist/esm/models/PutHostedScormStatus.js +43 -0
  51. package/dist/esm/models/ScormGetValueResponse.d.ts +12 -0
  52. package/dist/esm/models/ScormGetValueResponse.js +8 -0
  53. package/dist/esm/models/ScormNavigationDelivery.d.ts +64 -0
  54. package/dist/esm/models/ScormNavigationDelivery.js +66 -0
  55. package/dist/esm/models/ScormNavigationRequest.d.ts +55 -0
  56. package/dist/esm/models/ScormNavigationRequest.js +61 -0
  57. package/dist/esm/models/ScormNavigationResponse.d.ts +70 -0
  58. package/dist/esm/models/ScormNavigationResponse.js +67 -0
  59. package/dist/esm/models/ScormNavigationValidity.d.ts +92 -0
  60. package/dist/esm/models/ScormNavigationValidity.js +83 -0
  61. package/dist/esm/models/ScormRuntimeResponse.d.ts +44 -0
  62. package/dist/esm/models/ScormRuntimeResponse.js +51 -0
  63. package/dist/esm/models/ScormSetValueResponse.d.ts +12 -0
  64. package/dist/esm/models/ScormSetValueResponse.js +8 -0
  65. package/dist/esm/models/ScormTerminateResponse.d.ts +63 -0
  66. package/dist/esm/models/ScormTerminateResponse.js +62 -0
  67. package/dist/esm/models/index.d.ts +21 -0
  68. package/dist/esm/models/index.js +21 -0
  69. package/dist/models/DispatchTokenResponse.d.ts +57 -0
  70. package/dist/models/DispatchTokenResponse.js +69 -0
  71. package/dist/models/GetCourseExport.d.ts +62 -0
  72. package/dist/models/GetCourseExport.js +45 -1
  73. package/dist/models/GetDispatchCourse.d.ts +82 -0
  74. package/dist/models/GetDispatchCourse.js +84 -0
  75. package/dist/models/GetDispatchRollup.d.ts +104 -0
  76. package/dist/models/GetDispatchRollup.js +103 -0
  77. package/dist/models/GetHostedScormRegistration.d.ts +80 -0
  78. package/dist/models/GetHostedScormRegistration.js +78 -0
  79. package/dist/models/GetHostedScormRegistrationList.d.ts +57 -0
  80. package/dist/models/GetHostedScormRegistrationList.js +67 -0
  81. package/dist/models/GetResourceSessionDiagnostics.d.ts +8 -0
  82. package/dist/models/GetResourceSessionDiagnostics.js +2 -0
  83. package/dist/models/HostedScormAccessPolicy.d.ts +50 -0
  84. package/dist/models/HostedScormAccessPolicy.js +62 -0
  85. package/dist/models/HostedScormOutlineEntry.d.ts +108 -0
  86. package/dist/models/HostedScormOutlineEntry.js +105 -0
  87. package/dist/models/HostedScormRollupPolicy.d.ts +69 -0
  88. package/dist/models/HostedScormRollupPolicy.js +80 -0
  89. package/dist/models/HostedScormScoreItem.d.ts +38 -0
  90. package/dist/models/HostedScormScoreItem.js +54 -0
  91. package/dist/models/PostCourseExport.d.ts +28 -0
  92. package/dist/models/PostCourseExport.js +16 -1
  93. package/dist/models/PostDispatchItemLaunch.d.ts +32 -0
  94. package/dist/models/PostDispatchItemLaunch.js +48 -0
  95. package/dist/models/PostDispatchItemLaunchResponse.d.ts +64 -0
  96. package/dist/models/PostDispatchItemLaunchResponse.js +74 -0
  97. package/dist/models/PostDispatchLaunch.d.ts +50 -0
  98. package/dist/models/PostDispatchLaunch.js +60 -0
  99. package/dist/models/PostDispatchLaunchResponse.d.ts +70 -0
  100. package/dist/models/PostDispatchLaunchResponse.js +78 -0
  101. package/dist/models/PostDispatchTokenExchange.d.ts +32 -0
  102. package/dist/models/PostDispatchTokenExchange.js +50 -0
  103. package/dist/models/PutHostedScormStatus.d.ts +32 -0
  104. package/dist/models/PutHostedScormStatus.js +50 -0
  105. package/dist/models/ScormGetValueResponse.d.ts +12 -0
  106. package/dist/models/ScormGetValueResponse.js +8 -0
  107. package/dist/models/ScormNavigationDelivery.d.ts +64 -0
  108. package/dist/models/ScormNavigationDelivery.js +74 -0
  109. package/dist/models/ScormNavigationRequest.d.ts +55 -0
  110. package/dist/models/ScormNavigationRequest.js +69 -0
  111. package/dist/models/ScormNavigationResponse.d.ts +70 -0
  112. package/dist/models/ScormNavigationResponse.js +74 -0
  113. package/dist/models/ScormNavigationValidity.d.ts +92 -0
  114. package/dist/models/ScormNavigationValidity.js +90 -0
  115. package/dist/models/ScormRuntimeResponse.d.ts +44 -0
  116. package/dist/models/ScormRuntimeResponse.js +58 -0
  117. package/dist/models/ScormSetValueResponse.d.ts +12 -0
  118. package/dist/models/ScormSetValueResponse.js +8 -0
  119. package/dist/models/ScormTerminateResponse.d.ts +63 -0
  120. package/dist/models/ScormTerminateResponse.js +69 -0
  121. package/dist/models/index.d.ts +21 -0
  122. package/dist/models/index.js +21 -0
  123. package/docs/CourseApi.md +225 -0
  124. package/docs/DispatchApi.md +480 -9
  125. package/docs/DispatchTokenResponse.md +40 -0
  126. package/docs/GetCourseExport.md +14 -0
  127. package/docs/GetDispatchCourse.md +50 -0
  128. package/docs/GetDispatchRollup.md +52 -0
  129. package/docs/GetHostedScormRegistration.md +50 -0
  130. package/docs/GetHostedScormRegistrationList.md +42 -0
  131. package/docs/GetResourceSessionDiagnostics.md +2 -0
  132. package/docs/HostedScormAccessPolicy.md +41 -0
  133. package/docs/HostedScormOutlineEntry.md +54 -0
  134. package/docs/HostedScormRollupPolicy.md +41 -0
  135. package/docs/HostedScormScoreItem.md +36 -0
  136. package/docs/PlayerApi.md +80 -9
  137. package/docs/PostCourseExport.md +6 -0
  138. package/docs/PostDispatchItemLaunch.md +34 -0
  139. package/docs/PostDispatchItemLaunchResponse.md +42 -0
  140. package/docs/PostDispatchLaunch.md +40 -0
  141. package/docs/PostDispatchLaunchResponse.md +44 -0
  142. package/docs/PostDispatchTokenExchange.md +34 -0
  143. package/docs/PutHostedScormStatus.md +34 -0
  144. package/docs/ScormGetValueResponse.md +4 -0
  145. package/docs/ScormNavigationDelivery.md +43 -0
  146. package/docs/ScormNavigationRequest.md +37 -0
  147. package/docs/ScormNavigationResponse.md +47 -0
  148. package/docs/ScormNavigationValidity.md +55 -0
  149. package/docs/ScormRuntimeResponse.md +39 -0
  150. package/docs/ScormSetValueResponse.md +4 -0
  151. package/docs/ScormTerminateResponse.md +44 -0
  152. package/package.json +1 -1
  153. package/src/apis/CourseApi.ts +221 -0
  154. package/src/apis/DispatchApi.ts +426 -10
  155. package/src/apis/PlayerApi.ts +95 -12
  156. package/src/models/DispatchTokenResponse.ts +103 -0
  157. package/src/models/GetCourseExport.ts +97 -0
  158. package/src/models/GetDispatchCourse.ts +153 -0
  159. package/src/models/GetDispatchRollup.ts +169 -0
  160. package/src/models/GetHostedScormRegistration.ts +136 -0
  161. package/src/models/GetHostedScormRegistrationList.ts +110 -0
  162. package/src/models/GetResourceSessionDiagnostics.ts +8 -0
  163. package/src/models/HostedScormAccessPolicy.ts +93 -0
  164. package/src/models/HostedScormOutlineEntry.ts +176 -0
  165. package/src/models/HostedScormRollupPolicy.ts +123 -0
  166. package/src/models/HostedScormScoreItem.ts +75 -0
  167. package/src/models/PostCourseExport.ts +48 -0
  168. package/src/models/PostDispatchItemLaunch.ts +65 -0
  169. package/src/models/PostDispatchItemLaunchResponse.ts +113 -0
  170. package/src/models/PostDispatchLaunch.ts +92 -0
  171. package/src/models/PostDispatchLaunchResponse.ts +122 -0
  172. package/src/models/PostDispatchTokenExchange.ts +66 -0
  173. package/src/models/PutHostedScormStatus.ts +66 -0
  174. package/src/models/ScormGetValueResponse.ts +18 -0
  175. package/src/models/ScormNavigationDelivery.ts +113 -0
  176. package/src/models/ScormNavigationRequest.ts +94 -0
  177. package/src/models/ScormNavigationResponse.ts +134 -0
  178. package/src/models/ScormNavigationValidity.ts +156 -0
  179. package/src/models/ScormRuntimeResponse.ts +84 -0
  180. package/src/models/ScormSetValueResponse.ts +18 -0
  181. package/src/models/ScormTerminateResponse.ts +118 -0
  182. package/src/models/index.ts +21 -0
@@ -0,0 +1,110 @@
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 { GetHostedScormRegistration } from './GetHostedScormRegistration';
17
+ import {
18
+ GetHostedScormRegistrationFromJSON,
19
+ GetHostedScormRegistrationFromJSONTyped,
20
+ GetHostedScormRegistrationToJSON,
21
+ GetHostedScormRegistrationToJSONTyped,
22
+ } from './GetHostedScormRegistration';
23
+
24
+ /**
25
+ *
26
+ * @export
27
+ * @interface GetHostedScormRegistrationList
28
+ */
29
+ export interface GetHostedScormRegistrationList {
30
+ /**
31
+ *
32
+ * @type {number}
33
+ * @memberof GetHostedScormRegistrationList
34
+ */
35
+ page: number;
36
+ /**
37
+ *
38
+ * @type {number}
39
+ * @memberof GetHostedScormRegistrationList
40
+ */
41
+ pageSize: number;
42
+ /**
43
+ *
44
+ * @type {number}
45
+ * @memberof GetHostedScormRegistrationList
46
+ */
47
+ totalPages: number;
48
+ /**
49
+ *
50
+ * @type {number}
51
+ * @memberof GetHostedScormRegistrationList
52
+ */
53
+ totalItems: number;
54
+ /**
55
+ *
56
+ * @type {Array<GetHostedScormRegistration>}
57
+ * @memberof GetHostedScormRegistrationList
58
+ */
59
+ items: Array<GetHostedScormRegistration>;
60
+ }
61
+
62
+ /**
63
+ * Check if a given object implements the GetHostedScormRegistrationList interface.
64
+ */
65
+ export function instanceOfGetHostedScormRegistrationList(value: object): value is GetHostedScormRegistrationList {
66
+ if (!('page' in value) || value['page'] === undefined) return false;
67
+ if (!('pageSize' in value) || value['pageSize'] === undefined) return false;
68
+ if (!('totalPages' in value) || value['totalPages'] === undefined) return false;
69
+ if (!('totalItems' in value) || value['totalItems'] === undefined) return false;
70
+ if (!('items' in value) || value['items'] === undefined) return false;
71
+ return true;
72
+ }
73
+
74
+ export function GetHostedScormRegistrationListFromJSON(json: any): GetHostedScormRegistrationList {
75
+ return GetHostedScormRegistrationListFromJSONTyped(json, false);
76
+ }
77
+
78
+ export function GetHostedScormRegistrationListFromJSONTyped(json: any, ignoreDiscriminator: boolean): GetHostedScormRegistrationList {
79
+ if (json == null) {
80
+ return json;
81
+ }
82
+ return {
83
+
84
+ 'page': json['page'],
85
+ 'pageSize': json['page_size'],
86
+ 'totalPages': json['total_pages'],
87
+ 'totalItems': json['total_items'],
88
+ 'items': ((json['items'] as Array<any>).map(GetHostedScormRegistrationFromJSON)),
89
+ };
90
+ }
91
+
92
+ export function GetHostedScormRegistrationListToJSON(json: any): GetHostedScormRegistrationList {
93
+ return GetHostedScormRegistrationListToJSONTyped(json, false);
94
+ }
95
+
96
+ export function GetHostedScormRegistrationListToJSONTyped(value?: GetHostedScormRegistrationList | null, ignoreDiscriminator: boolean = false): any {
97
+ if (value == null) {
98
+ return value;
99
+ }
100
+
101
+ return {
102
+
103
+ 'page': value['page'],
104
+ 'page_size': value['pageSize'],
105
+ 'total_pages': value['totalPages'],
106
+ 'total_items': value['totalItems'],
107
+ 'items': ((value['items'] as Array<any>).map(GetHostedScormRegistrationToJSON)),
108
+ };
109
+ }
110
+
@@ -104,6 +104,12 @@ export interface GetResourceSessionDiagnostics {
104
104
  * @memberof GetResourceSessionDiagnostics
105
105
  */
106
106
  scormSummary?: GetResourceSessionDiagnosticsScormSummary | null;
107
+ /**
108
+ * Read-only sanitized SCORM 2004 sequencing diagnostics; never the mutable engine snapshot.
109
+ * @type {{ [key: string]: any; }}
110
+ * @memberof GetResourceSessionDiagnostics
111
+ */
112
+ sequencing?: { [key: string]: any; } | null;
107
113
  }
108
114
 
109
115
  /**
@@ -135,6 +141,7 @@ export function GetResourceSessionDiagnosticsFromJSONTyped(json: any, ignoreDisc
135
141
  'version': GetResourceSessionDiagnosticsVersionFromJSON(json['version']),
136
142
  'courseContext': json['course_context'] == null ? undefined : GetResourceSessionDiagnosticsCourseContextFromJSON(json['course_context']),
137
143
  'scormSummary': json['scorm_summary'] == null ? undefined : GetResourceSessionDiagnosticsScormSummaryFromJSON(json['scorm_summary']),
144
+ 'sequencing': json['sequencing'] == null ? undefined : json['sequencing'],
138
145
  };
139
146
  }
140
147
 
@@ -156,6 +163,7 @@ export function GetResourceSessionDiagnosticsToJSONTyped(value?: GetResourceSess
156
163
  'version': GetResourceSessionDiagnosticsVersionToJSON(value['version']),
157
164
  'course_context': GetResourceSessionDiagnosticsCourseContextToJSON(value['courseContext']),
158
165
  'scorm_summary': GetResourceSessionDiagnosticsScormSummaryToJSON(value['scormSummary']),
166
+ 'sequencing': value['sequencing'],
159
167
  };
160
168
  }
161
169
 
@@ -0,0 +1,93 @@
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
+ * Mutable reseller access controls for a hosted SCORM export.
18
+ * @export
19
+ * @interface HostedScormAccessPolicy
20
+ */
21
+ export interface HostedScormAccessPolicy {
22
+ /**
23
+ *
24
+ * @type {number}
25
+ * @memberof HostedScormAccessPolicy
26
+ */
27
+ learnerCap: number | null;
28
+ /**
29
+ * Optional Unix timestamp before which launches are rejected.
30
+ * @type {number}
31
+ * @memberof HostedScormAccessPolicy
32
+ */
33
+ validFrom: number | null;
34
+ /**
35
+ * Optional Unix timestamp at or after which launches are rejected.
36
+ * @type {number}
37
+ * @memberof HostedScormAccessPolicy
38
+ */
39
+ validUntil: number | null;
40
+ /**
41
+ * Exact HTTP(S) origins. Empty permits any origin.
42
+ * @type {Array<string>}
43
+ * @memberof HostedScormAccessPolicy
44
+ */
45
+ allowedLmsOrigins: Array<string>;
46
+ }
47
+
48
+ /**
49
+ * Check if a given object implements the HostedScormAccessPolicy interface.
50
+ */
51
+ export function instanceOfHostedScormAccessPolicy(value: object): value is HostedScormAccessPolicy {
52
+ if (!('learnerCap' in value) || value['learnerCap'] === undefined) return false;
53
+ if (!('validFrom' in value) || value['validFrom'] === undefined) return false;
54
+ if (!('validUntil' in value) || value['validUntil'] === undefined) return false;
55
+ if (!('allowedLmsOrigins' in value) || value['allowedLmsOrigins'] === undefined) return false;
56
+ return true;
57
+ }
58
+
59
+ export function HostedScormAccessPolicyFromJSON(json: any): HostedScormAccessPolicy {
60
+ return HostedScormAccessPolicyFromJSONTyped(json, false);
61
+ }
62
+
63
+ export function HostedScormAccessPolicyFromJSONTyped(json: any, ignoreDiscriminator: boolean): HostedScormAccessPolicy {
64
+ if (json == null) {
65
+ return json;
66
+ }
67
+ return {
68
+
69
+ 'learnerCap': json['learner_cap'],
70
+ 'validFrom': json['valid_from'],
71
+ 'validUntil': json['valid_until'],
72
+ 'allowedLmsOrigins': json['allowed_lms_origins'],
73
+ };
74
+ }
75
+
76
+ export function HostedScormAccessPolicyToJSON(json: any): HostedScormAccessPolicy {
77
+ return HostedScormAccessPolicyToJSONTyped(json, false);
78
+ }
79
+
80
+ export function HostedScormAccessPolicyToJSONTyped(value?: HostedScormAccessPolicy | null, ignoreDiscriminator: boolean = false): any {
81
+ if (value == null) {
82
+ return value;
83
+ }
84
+
85
+ return {
86
+
87
+ 'learner_cap': value['learnerCap'],
88
+ 'valid_from': value['validFrom'],
89
+ 'valid_until': value['validUntil'],
90
+ 'allowed_lms_origins': value['allowedLmsOrigins'],
91
+ };
92
+ }
93
+
@@ -0,0 +1,176 @@
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
+ *
18
+ * @export
19
+ * @interface HostedScormOutlineEntry
20
+ */
21
+ export interface HostedScormOutlineEntry {
22
+ /**
23
+ *
24
+ * @type {HostedScormOutlineEntryEntryTypeEnum}
25
+ * @memberof HostedScormOutlineEntry
26
+ */
27
+ entryType: HostedScormOutlineEntryEntryTypeEnum;
28
+ /**
29
+ *
30
+ * @type {string}
31
+ * @memberof HostedScormOutlineEntry
32
+ */
33
+ id: string;
34
+ /**
35
+ *
36
+ * @type {string}
37
+ * @memberof HostedScormOutlineEntry
38
+ */
39
+ parentSectionId: string | null;
40
+ /**
41
+ *
42
+ * @type {string}
43
+ * @memberof HostedScormOutlineEntry
44
+ */
45
+ title: string;
46
+ /**
47
+ *
48
+ * @type {number}
49
+ * @memberof HostedScormOutlineEntry
50
+ */
51
+ displayOrder: number;
52
+ /**
53
+ *
54
+ * @type {HostedScormOutlineEntryKindEnum}
55
+ * @memberof HostedScormOutlineEntry
56
+ */
57
+ kind: HostedScormOutlineEntryKindEnum | null;
58
+ /**
59
+ *
60
+ * @type {boolean}
61
+ * @memberof HostedScormOutlineEntry
62
+ */
63
+ required: boolean;
64
+ /**
65
+ *
66
+ * @type {boolean}
67
+ * @memberof HostedScormOutlineEntry
68
+ */
69
+ completed: boolean;
70
+ /**
71
+ *
72
+ * @type {boolean}
73
+ * @memberof HostedScormOutlineEntry
74
+ */
75
+ locked: boolean;
76
+ /**
77
+ *
78
+ * @type {number}
79
+ * @memberof HostedScormOutlineEntry
80
+ */
81
+ attemptNumber: number | null;
82
+ /**
83
+ *
84
+ * @type {number}
85
+ * @memberof HostedScormOutlineEntry
86
+ */
87
+ maxAttempts: number | null;
88
+ }
89
+
90
+
91
+ /**
92
+ * @export
93
+ */
94
+ export const HostedScormOutlineEntryEntryTypeEnum = {
95
+ Section: 'SECTION',
96
+ Item: 'ITEM'
97
+ } as const;
98
+ export type HostedScormOutlineEntryEntryTypeEnum = typeof HostedScormOutlineEntryEntryTypeEnum[keyof typeof HostedScormOutlineEntryEntryTypeEnum];
99
+
100
+ /**
101
+ * @export
102
+ */
103
+ export const HostedScormOutlineEntryKindEnum = {
104
+ Resource: 'RESOURCE',
105
+ Quiz: 'QUIZ'
106
+ } as const;
107
+ export type HostedScormOutlineEntryKindEnum = typeof HostedScormOutlineEntryKindEnum[keyof typeof HostedScormOutlineEntryKindEnum];
108
+
109
+
110
+ /**
111
+ * Check if a given object implements the HostedScormOutlineEntry interface.
112
+ */
113
+ export function instanceOfHostedScormOutlineEntry(value: object): value is HostedScormOutlineEntry {
114
+ if (!('entryType' in value) || value['entryType'] === undefined) return false;
115
+ if (!('id' in value) || value['id'] === undefined) return false;
116
+ if (!('parentSectionId' in value) || value['parentSectionId'] === undefined) return false;
117
+ if (!('title' in value) || value['title'] === undefined) return false;
118
+ if (!('displayOrder' in value) || value['displayOrder'] === undefined) return false;
119
+ if (!('kind' in value) || value['kind'] === undefined) return false;
120
+ if (!('required' in value) || value['required'] === undefined) return false;
121
+ if (!('completed' in value) || value['completed'] === undefined) return false;
122
+ if (!('locked' in value) || value['locked'] === undefined) return false;
123
+ if (!('attemptNumber' in value) || value['attemptNumber'] === undefined) return false;
124
+ if (!('maxAttempts' in value) || value['maxAttempts'] === undefined) return false;
125
+ return true;
126
+ }
127
+
128
+ export function HostedScormOutlineEntryFromJSON(json: any): HostedScormOutlineEntry {
129
+ return HostedScormOutlineEntryFromJSONTyped(json, false);
130
+ }
131
+
132
+ export function HostedScormOutlineEntryFromJSONTyped(json: any, ignoreDiscriminator: boolean): HostedScormOutlineEntry {
133
+ if (json == null) {
134
+ return json;
135
+ }
136
+ return {
137
+
138
+ 'entryType': json['entry_type'],
139
+ 'id': json['id'],
140
+ 'parentSectionId': json['parent_section_id'],
141
+ 'title': json['title'],
142
+ 'displayOrder': json['display_order'],
143
+ 'kind': json['kind'],
144
+ 'required': json['required'],
145
+ 'completed': json['completed'],
146
+ 'locked': json['locked'],
147
+ 'attemptNumber': json['attempt_number'],
148
+ 'maxAttempts': json['max_attempts'],
149
+ };
150
+ }
151
+
152
+ export function HostedScormOutlineEntryToJSON(json: any): HostedScormOutlineEntry {
153
+ return HostedScormOutlineEntryToJSONTyped(json, false);
154
+ }
155
+
156
+ export function HostedScormOutlineEntryToJSONTyped(value?: HostedScormOutlineEntry | null, ignoreDiscriminator: boolean = false): any {
157
+ if (value == null) {
158
+ return value;
159
+ }
160
+
161
+ return {
162
+
163
+ 'entry_type': value['entryType'],
164
+ 'id': value['id'],
165
+ 'parent_section_id': value['parentSectionId'],
166
+ 'title': value['title'],
167
+ 'display_order': value['displayOrder'],
168
+ 'kind': value['kind'],
169
+ 'required': value['required'],
170
+ 'completed': value['completed'],
171
+ 'locked': value['locked'],
172
+ 'attempt_number': value['attemptNumber'],
173
+ 'max_attempts': value['maxAttempts'],
174
+ };
175
+ }
176
+
@@ -0,0 +1,123 @@
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 { HostedScormScoreItem } from './HostedScormScoreItem';
17
+ import {
18
+ HostedScormScoreItemFromJSON,
19
+ HostedScormScoreItemFromJSONTyped,
20
+ HostedScormScoreItemToJSON,
21
+ HostedScormScoreItemToJSONTyped,
22
+ } from './HostedScormScoreItem';
23
+
24
+ /**
25
+ * Immutable course aggregate rules captured by a hosted SCORM export.
26
+ * @export
27
+ * @interface HostedScormRollupPolicy
28
+ */
29
+ export interface HostedScormRollupPolicy {
30
+ /**
31
+ *
32
+ * @type {HostedScormRollupPolicySuccessRuleEnum}
33
+ * @memberof HostedScormRollupPolicy
34
+ */
35
+ successRule: HostedScormRollupPolicySuccessRuleEnum;
36
+ /**
37
+ *
38
+ * @type {number}
39
+ * @memberof HostedScormRollupPolicy
40
+ */
41
+ passingScorePercent: number | null;
42
+ /**
43
+ *
44
+ * @type {HostedScormRollupPolicyScoreAggregationEnum}
45
+ * @memberof HostedScormRollupPolicy
46
+ */
47
+ scoreAggregation: HostedScormRollupPolicyScoreAggregationEnum;
48
+ /**
49
+ * Empty selects every score-producing resource or quiz in the exported tree.
50
+ * @type {Array<HostedScormScoreItem>}
51
+ * @memberof HostedScormRollupPolicy
52
+ */
53
+ scoredItems: Array<HostedScormScoreItem>;
54
+ }
55
+
56
+
57
+ /**
58
+ * @export
59
+ */
60
+ export const HostedScormRollupPolicySuccessRuleEnum = {
61
+ CompletionOnly: 'COMPLETION_ONLY',
62
+ AllRequiredGradedPass: 'ALL_REQUIRED_GRADED_PASS',
63
+ ScoreThreshold: 'SCORE_THRESHOLD',
64
+ AllRequiredGradedPassAndScoreThreshold: 'ALL_REQUIRED_GRADED_PASS_AND_SCORE_THRESHOLD'
65
+ } as const;
66
+ export type HostedScormRollupPolicySuccessRuleEnum = typeof HostedScormRollupPolicySuccessRuleEnum[keyof typeof HostedScormRollupPolicySuccessRuleEnum];
67
+
68
+ /**
69
+ * @export
70
+ */
71
+ export const HostedScormRollupPolicyScoreAggregationEnum = {
72
+ Equal: 'EQUAL',
73
+ Weighted: 'WEIGHTED'
74
+ } as const;
75
+ export type HostedScormRollupPolicyScoreAggregationEnum = typeof HostedScormRollupPolicyScoreAggregationEnum[keyof typeof HostedScormRollupPolicyScoreAggregationEnum];
76
+
77
+
78
+ /**
79
+ * Check if a given object implements the HostedScormRollupPolicy interface.
80
+ */
81
+ export function instanceOfHostedScormRollupPolicy(value: object): value is HostedScormRollupPolicy {
82
+ if (!('successRule' in value) || value['successRule'] === undefined) return false;
83
+ if (!('passingScorePercent' in value) || value['passingScorePercent'] === undefined) return false;
84
+ if (!('scoreAggregation' in value) || value['scoreAggregation'] === undefined) return false;
85
+ if (!('scoredItems' in value) || value['scoredItems'] === undefined) return false;
86
+ return true;
87
+ }
88
+
89
+ export function HostedScormRollupPolicyFromJSON(json: any): HostedScormRollupPolicy {
90
+ return HostedScormRollupPolicyFromJSONTyped(json, false);
91
+ }
92
+
93
+ export function HostedScormRollupPolicyFromJSONTyped(json: any, ignoreDiscriminator: boolean): HostedScormRollupPolicy {
94
+ if (json == null) {
95
+ return json;
96
+ }
97
+ return {
98
+
99
+ 'successRule': json['success_rule'],
100
+ 'passingScorePercent': json['passing_score_percent'],
101
+ 'scoreAggregation': json['score_aggregation'],
102
+ 'scoredItems': ((json['scored_items'] as Array<any>).map(HostedScormScoreItemFromJSON)),
103
+ };
104
+ }
105
+
106
+ export function HostedScormRollupPolicyToJSON(json: any): HostedScormRollupPolicy {
107
+ return HostedScormRollupPolicyToJSONTyped(json, false);
108
+ }
109
+
110
+ export function HostedScormRollupPolicyToJSONTyped(value?: HostedScormRollupPolicy | null, ignoreDiscriminator: boolean = false): any {
111
+ if (value == null) {
112
+ return value;
113
+ }
114
+
115
+ return {
116
+
117
+ 'success_rule': value['successRule'],
118
+ 'passing_score_percent': value['passingScorePercent'],
119
+ 'score_aggregation': value['scoreAggregation'],
120
+ 'scored_items': ((value['scoredItems'] as Array<any>).map(HostedScormScoreItemToJSON)),
121
+ };
122
+ }
123
+
@@ -0,0 +1,75 @@
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
+ *
18
+ * @export
19
+ * @interface HostedScormScoreItem
20
+ */
21
+ export interface HostedScormScoreItem {
22
+ /**
23
+ *
24
+ * @type {string}
25
+ * @memberof HostedScormScoreItem
26
+ */
27
+ itemId: string;
28
+ /**
29
+ *
30
+ * @type {number}
31
+ * @memberof HostedScormScoreItem
32
+ */
33
+ weight: number;
34
+ }
35
+
36
+ /**
37
+ * Check if a given object implements the HostedScormScoreItem interface.
38
+ */
39
+ export function instanceOfHostedScormScoreItem(value: object): value is HostedScormScoreItem {
40
+ if (!('itemId' in value) || value['itemId'] === undefined) return false;
41
+ if (!('weight' in value) || value['weight'] === undefined) return false;
42
+ return true;
43
+ }
44
+
45
+ export function HostedScormScoreItemFromJSON(json: any): HostedScormScoreItem {
46
+ return HostedScormScoreItemFromJSONTyped(json, false);
47
+ }
48
+
49
+ export function HostedScormScoreItemFromJSONTyped(json: any, ignoreDiscriminator: boolean): HostedScormScoreItem {
50
+ if (json == null) {
51
+ return json;
52
+ }
53
+ return {
54
+
55
+ 'itemId': json['item_id'],
56
+ 'weight': json['weight'],
57
+ };
58
+ }
59
+
60
+ export function HostedScormScoreItemToJSON(json: any): HostedScormScoreItem {
61
+ return HostedScormScoreItemToJSONTyped(json, false);
62
+ }
63
+
64
+ export function HostedScormScoreItemToJSONTyped(value?: HostedScormScoreItem | null, ignoreDiscriminator: boolean = false): any {
65
+ if (value == null) {
66
+ return value;
67
+ }
68
+
69
+ return {
70
+
71
+ 'item_id': value['itemId'],
72
+ 'weight': value['weight'],
73
+ };
74
+ }
75
+
@@ -13,6 +13,21 @@
13
13
  */
14
14
 
15
15
  import { mapValues } from '../runtime';
16
+ import type { HostedScormRollupPolicy } from './HostedScormRollupPolicy';
17
+ import {
18
+ HostedScormRollupPolicyFromJSON,
19
+ HostedScormRollupPolicyFromJSONTyped,
20
+ HostedScormRollupPolicyToJSON,
21
+ HostedScormRollupPolicyToJSONTyped,
22
+ } from './HostedScormRollupPolicy';
23
+ import type { HostedScormAccessPolicy } from './HostedScormAccessPolicy';
24
+ import {
25
+ HostedScormAccessPolicyFromJSON,
26
+ HostedScormAccessPolicyFromJSONTyped,
27
+ HostedScormAccessPolicyToJSON,
28
+ HostedScormAccessPolicyToJSONTyped,
29
+ } from './HostedScormAccessPolicy';
30
+
16
31
  /**
17
32
  * Request to create a new export for a course
18
33
  * @export
@@ -37,6 +52,24 @@ export interface PostCourseExport {
37
52
  * @memberof PostCourseExport
38
53
  */
39
54
  sectionIds: Array<string>;
55
+ /**
56
+ * Hosted course mode is an additive backend preview until its player is deployed.
57
+ * @type {PostCourseExportDeliveryModeEnum}
58
+ * @memberof PostCourseExport
59
+ */
60
+ deliveryMode?: PostCourseExportDeliveryModeEnum;
61
+ /**
62
+ *
63
+ * @type {HostedScormRollupPolicy}
64
+ * @memberof PostCourseExport
65
+ */
66
+ rollupPolicy?: HostedScormRollupPolicy;
67
+ /**
68
+ *
69
+ * @type {HostedScormAccessPolicy}
70
+ * @memberof PostCourseExport
71
+ */
72
+ accessPolicy?: HostedScormAccessPolicy;
40
73
  }
41
74
 
42
75
 
@@ -50,6 +83,15 @@ export const PostCourseExportExportTypeEnum = {
50
83
  } as const;
51
84
  export type PostCourseExportExportTypeEnum = typeof PostCourseExportExportTypeEnum[keyof typeof PostCourseExportExportTypeEnum];
52
85
 
86
+ /**
87
+ * @export
88
+ */
89
+ export const PostCourseExportDeliveryModeEnum = {
90
+ LegacyMultiSco: 'LEGACY_MULTI_SCO',
91
+ HostedCourseV1: 'HOSTED_COURSE_V1'
92
+ } as const;
93
+ export type PostCourseExportDeliveryModeEnum = typeof PostCourseExportDeliveryModeEnum[keyof typeof PostCourseExportDeliveryModeEnum];
94
+
53
95
 
54
96
  /**
55
97
  * Check if a given object implements the PostCourseExport interface.
@@ -74,6 +116,9 @@ export function PostCourseExportFromJSONTyped(json: any, ignoreDiscriminator: bo
74
116
  'courseVersionId': json['course_version_id'],
75
117
  'exportType': json['export_type'],
76
118
  'sectionIds': json['section_ids'],
119
+ 'deliveryMode': json['delivery_mode'] == null ? undefined : json['delivery_mode'],
120
+ 'rollupPolicy': json['rollup_policy'] == null ? undefined : HostedScormRollupPolicyFromJSON(json['rollup_policy']),
121
+ 'accessPolicy': json['access_policy'] == null ? undefined : HostedScormAccessPolicyFromJSON(json['access_policy']),
77
122
  };
78
123
  }
79
124
 
@@ -91,6 +136,9 @@ export function PostCourseExportToJSONTyped(value?: PostCourseExport | null, ign
91
136
  'course_version_id': value['courseVersionId'],
92
137
  'export_type': value['exportType'],
93
138
  'section_ids': value['sectionIds'],
139
+ 'delivery_mode': value['deliveryMode'],
140
+ 'rollup_policy': HostedScormRollupPolicyToJSON(value['rollupPolicy']),
141
+ 'access_policy': HostedScormAccessPolicyToJSON(value['accessPolicy']),
94
142
  };
95
143
  }
96
144