@easyedu/js-lsm-api 1.89.0 → 1.90.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.
- package/.openapi-generator/FILES +8 -0
- package/README.md +11 -2
- package/dist/apis/ContentLibraryApi.d.ts +19 -0
- package/dist/apis/ContentLibraryApi.js +47 -0
- package/dist/apis/PlayerApi.d.ts +73 -0
- package/dist/apis/PlayerApi.js +188 -0
- package/dist/esm/apis/ContentLibraryApi.d.ts +19 -0
- package/dist/esm/apis/ContentLibraryApi.js +47 -0
- package/dist/esm/apis/PlayerApi.d.ts +73 -0
- package/dist/esm/apis/PlayerApi.js +188 -0
- package/dist/esm/models/GetCourseVersionItemSession.d.ts +7 -0
- package/dist/esm/models/GetCourseVersionItemSession.js +5 -0
- package/dist/esm/models/GetResourceSession.d.ts +161 -0
- package/dist/esm/models/GetResourceSession.js +112 -0
- package/dist/esm/models/GetResourceSessionList.d.ts +57 -0
- package/dist/esm/models/GetResourceSessionList.js +60 -0
- package/dist/esm/models/PostResourceVersionSession.d.ts +32 -0
- package/dist/esm/models/PostResourceVersionSession.js +41 -0
- package/dist/esm/models/ResourceSessionEnvironment.d.ts +25 -0
- package/dist/esm/models/ResourceSessionEnvironment.js +43 -0
- package/dist/esm/models/index.d.ts +4 -0
- package/dist/esm/models/index.js +4 -0
- package/dist/models/GetCourseVersionItemSession.d.ts +7 -0
- package/dist/models/GetCourseVersionItemSession.js +5 -0
- package/dist/models/GetResourceSession.d.ts +161 -0
- package/dist/models/GetResourceSession.js +119 -0
- package/dist/models/GetResourceSessionList.d.ts +57 -0
- package/dist/models/GetResourceSessionList.js +67 -0
- package/dist/models/PostResourceVersionSession.d.ts +32 -0
- package/dist/models/PostResourceVersionSession.js +48 -0
- package/dist/models/ResourceSessionEnvironment.d.ts +25 -0
- package/dist/models/ResourceSessionEnvironment.js +51 -0
- package/dist/models/index.d.ts +4 -0
- package/dist/models/index.js +4 -0
- package/docs/ContentLibraryApi.md +73 -0
- package/docs/GetCourseVersionItemSession.md +2 -0
- package/docs/GetResourceSession.md +77 -0
- package/docs/GetResourceSessionList.md +43 -0
- package/docs/PlayerApi.md +296 -0
- package/docs/PostResourceVersionSession.md +35 -0
- package/docs/ResourceSessionEnvironment.md +33 -0
- package/package.json +1 -1
- package/src/apis/ContentLibraryApi.ts +72 -0
- package/src/apis/PlayerApi.ts +261 -0
- package/src/models/GetCourseVersionItemSession.ts +16 -0
- package/src/models/GetResourceSession.ts +270 -0
- package/src/models/GetResourceSessionList.ts +110 -0
- package/src/models/PostResourceVersionSession.ts +65 -0
- package/src/models/ResourceSessionEnvironment.ts +53 -0
- package/src/models/index.ts +4 -0
package/src/apis/PlayerApi.ts
CHANGED
|
@@ -13,6 +13,21 @@
|
|
|
13
13
|
*/
|
|
14
14
|
|
|
15
15
|
import * as runtime from '../runtime';
|
|
16
|
+
import {
|
|
17
|
+
type GetResourceSession,
|
|
18
|
+
GetResourceSessionFromJSON,
|
|
19
|
+
GetResourceSessionToJSON,
|
|
20
|
+
} from '../models/GetResourceSession';
|
|
21
|
+
import {
|
|
22
|
+
type GetResourceSessionList,
|
|
23
|
+
GetResourceSessionListFromJSON,
|
|
24
|
+
GetResourceSessionListToJSON,
|
|
25
|
+
} from '../models/GetResourceSessionList';
|
|
26
|
+
import {
|
|
27
|
+
type ResourceSessionEnvironment,
|
|
28
|
+
ResourceSessionEnvironmentFromJSON,
|
|
29
|
+
ResourceSessionEnvironmentToJSON,
|
|
30
|
+
} from '../models/ResourceSessionEnvironment';
|
|
16
31
|
import {
|
|
17
32
|
type ScormGetValueResponse,
|
|
18
33
|
ScormGetValueResponseFromJSON,
|
|
@@ -72,6 +87,28 @@ export interface GetResourceScormValueRequest {
|
|
|
72
87
|
key: string;
|
|
73
88
|
}
|
|
74
89
|
|
|
90
|
+
export interface GetResourceSessionRequest {
|
|
91
|
+
sessionId: string;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
export interface GetResourceSessionAssetRequest {
|
|
95
|
+
sessionId: string;
|
|
96
|
+
assetPath: string;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
export interface GetResourceSessionListRequest {
|
|
100
|
+
userId?: string;
|
|
101
|
+
resourceId?: string;
|
|
102
|
+
versionId?: string;
|
|
103
|
+
courseId?: string;
|
|
104
|
+
environment?: ResourceSessionEnvironment;
|
|
105
|
+
completionStatus?: string;
|
|
106
|
+
createdFrom?: number;
|
|
107
|
+
createdTo?: number;
|
|
108
|
+
page?: number;
|
|
109
|
+
pageSize?: number;
|
|
110
|
+
}
|
|
111
|
+
|
|
75
112
|
export interface GetResourceSessionPlayerRequest {
|
|
76
113
|
sessionId: string;
|
|
77
114
|
}
|
|
@@ -97,6 +134,10 @@ export interface InitializeResourceScormSessionRequest {
|
|
|
97
134
|
sessionId: string;
|
|
98
135
|
}
|
|
99
136
|
|
|
137
|
+
export interface PostResourceSessionCompleteRequest {
|
|
138
|
+
sessionId: string;
|
|
139
|
+
}
|
|
140
|
+
|
|
100
141
|
export interface SetResourceScormValueRequest {
|
|
101
142
|
sessionId: string;
|
|
102
143
|
scormSetValueRequest: ScormSetValueRequest;
|
|
@@ -580,6 +621,181 @@ export class PlayerApi extends runtime.BaseAPI {
|
|
|
580
621
|
return await response.value();
|
|
581
622
|
}
|
|
582
623
|
|
|
624
|
+
/**
|
|
625
|
+
* Creates request options for getResourceSession without sending the request
|
|
626
|
+
*/
|
|
627
|
+
async getResourceSessionRequestOpts(requestParameters: GetResourceSessionRequest): Promise<runtime.RequestOpts> {
|
|
628
|
+
if (requestParameters['sessionId'] == null) {
|
|
629
|
+
throw new runtime.RequiredError(
|
|
630
|
+
'sessionId',
|
|
631
|
+
'Required parameter "sessionId" was null or undefined when calling getResourceSession().'
|
|
632
|
+
);
|
|
633
|
+
}
|
|
634
|
+
|
|
635
|
+
const queryParameters: any = {};
|
|
636
|
+
|
|
637
|
+
const headerParameters: runtime.HTTPHeaders = {};
|
|
638
|
+
|
|
639
|
+
|
|
640
|
+
let urlPath = `/resource/sessions/{sessionId}`;
|
|
641
|
+
urlPath = urlPath.replace('{sessionId}', encodeURIComponent(String(requestParameters['sessionId'])));
|
|
642
|
+
|
|
643
|
+
return {
|
|
644
|
+
path: urlPath,
|
|
645
|
+
method: 'GET',
|
|
646
|
+
headers: headerParameters,
|
|
647
|
+
query: queryParameters,
|
|
648
|
+
};
|
|
649
|
+
}
|
|
650
|
+
|
|
651
|
+
/**
|
|
652
|
+
* Get a resource session
|
|
653
|
+
*/
|
|
654
|
+
async getResourceSessionRaw(requestParameters: GetResourceSessionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetResourceSession>> {
|
|
655
|
+
const requestOptions = await this.getResourceSessionRequestOpts(requestParameters);
|
|
656
|
+
const response = await this.request(requestOptions, initOverrides);
|
|
657
|
+
|
|
658
|
+
return new runtime.JSONApiResponse(response, (jsonValue) => GetResourceSessionFromJSON(jsonValue));
|
|
659
|
+
}
|
|
660
|
+
|
|
661
|
+
/**
|
|
662
|
+
* Get a resource session
|
|
663
|
+
*/
|
|
664
|
+
async getResourceSession(requestParameters: GetResourceSessionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetResourceSession> {
|
|
665
|
+
const response = await this.getResourceSessionRaw(requestParameters, initOverrides);
|
|
666
|
+
return await response.value();
|
|
667
|
+
}
|
|
668
|
+
|
|
669
|
+
/**
|
|
670
|
+
* Creates request options for getResourceSessionAsset without sending the request
|
|
671
|
+
*/
|
|
672
|
+
async getResourceSessionAssetRequestOpts(requestParameters: GetResourceSessionAssetRequest): Promise<runtime.RequestOpts> {
|
|
673
|
+
if (requestParameters['sessionId'] == null) {
|
|
674
|
+
throw new runtime.RequiredError(
|
|
675
|
+
'sessionId',
|
|
676
|
+
'Required parameter "sessionId" was null or undefined when calling getResourceSessionAsset().'
|
|
677
|
+
);
|
|
678
|
+
}
|
|
679
|
+
|
|
680
|
+
if (requestParameters['assetPath'] == null) {
|
|
681
|
+
throw new runtime.RequiredError(
|
|
682
|
+
'assetPath',
|
|
683
|
+
'Required parameter "assetPath" was null or undefined when calling getResourceSessionAsset().'
|
|
684
|
+
);
|
|
685
|
+
}
|
|
686
|
+
|
|
687
|
+
const queryParameters: any = {};
|
|
688
|
+
|
|
689
|
+
const headerParameters: runtime.HTTPHeaders = {};
|
|
690
|
+
|
|
691
|
+
|
|
692
|
+
let urlPath = `/resource/sessions/{sessionId}/asset/{assetPath}`;
|
|
693
|
+
urlPath = urlPath.replace('{sessionId}', encodeURIComponent(String(requestParameters['sessionId'])));
|
|
694
|
+
urlPath = urlPath.replace('{assetPath}', encodeURIComponent(String(requestParameters['assetPath'])));
|
|
695
|
+
|
|
696
|
+
return {
|
|
697
|
+
path: urlPath,
|
|
698
|
+
method: 'GET',
|
|
699
|
+
headers: headerParameters,
|
|
700
|
+
query: queryParameters,
|
|
701
|
+
};
|
|
702
|
+
}
|
|
703
|
+
|
|
704
|
+
/**
|
|
705
|
+
* Stream an asset pinned to a resource session
|
|
706
|
+
*/
|
|
707
|
+
async getResourceSessionAssetRaw(requestParameters: GetResourceSessionAssetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
|
|
708
|
+
const requestOptions = await this.getResourceSessionAssetRequestOpts(requestParameters);
|
|
709
|
+
const response = await this.request(requestOptions, initOverrides);
|
|
710
|
+
|
|
711
|
+
return new runtime.BlobApiResponse(response);
|
|
712
|
+
}
|
|
713
|
+
|
|
714
|
+
/**
|
|
715
|
+
* Stream an asset pinned to a resource session
|
|
716
|
+
*/
|
|
717
|
+
async getResourceSessionAsset(requestParameters: GetResourceSessionAssetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
|
|
718
|
+
const response = await this.getResourceSessionAssetRaw(requestParameters, initOverrides);
|
|
719
|
+
return await response.value();
|
|
720
|
+
}
|
|
721
|
+
|
|
722
|
+
/**
|
|
723
|
+
* Creates request options for getResourceSessionList without sending the request
|
|
724
|
+
*/
|
|
725
|
+
async getResourceSessionListRequestOpts(requestParameters: GetResourceSessionListRequest): Promise<runtime.RequestOpts> {
|
|
726
|
+
const queryParameters: any = {};
|
|
727
|
+
|
|
728
|
+
if (requestParameters['userId'] != null) {
|
|
729
|
+
queryParameters['user_id'] = requestParameters['userId'];
|
|
730
|
+
}
|
|
731
|
+
|
|
732
|
+
if (requestParameters['resourceId'] != null) {
|
|
733
|
+
queryParameters['resource_id'] = requestParameters['resourceId'];
|
|
734
|
+
}
|
|
735
|
+
|
|
736
|
+
if (requestParameters['versionId'] != null) {
|
|
737
|
+
queryParameters['version_id'] = requestParameters['versionId'];
|
|
738
|
+
}
|
|
739
|
+
|
|
740
|
+
if (requestParameters['courseId'] != null) {
|
|
741
|
+
queryParameters['course_id'] = requestParameters['courseId'];
|
|
742
|
+
}
|
|
743
|
+
|
|
744
|
+
if (requestParameters['environment'] != null) {
|
|
745
|
+
queryParameters['environment'] = requestParameters['environment'];
|
|
746
|
+
}
|
|
747
|
+
|
|
748
|
+
if (requestParameters['completionStatus'] != null) {
|
|
749
|
+
queryParameters['completion_status'] = requestParameters['completionStatus'];
|
|
750
|
+
}
|
|
751
|
+
|
|
752
|
+
if (requestParameters['createdFrom'] != null) {
|
|
753
|
+
queryParameters['created_from'] = requestParameters['createdFrom'];
|
|
754
|
+
}
|
|
755
|
+
|
|
756
|
+
if (requestParameters['createdTo'] != null) {
|
|
757
|
+
queryParameters['created_to'] = requestParameters['createdTo'];
|
|
758
|
+
}
|
|
759
|
+
|
|
760
|
+
if (requestParameters['page'] != null) {
|
|
761
|
+
queryParameters['page'] = requestParameters['page'];
|
|
762
|
+
}
|
|
763
|
+
|
|
764
|
+
if (requestParameters['pageSize'] != null) {
|
|
765
|
+
queryParameters['pageSize'] = requestParameters['pageSize'];
|
|
766
|
+
}
|
|
767
|
+
|
|
768
|
+
const headerParameters: runtime.HTTPHeaders = {};
|
|
769
|
+
|
|
770
|
+
|
|
771
|
+
let urlPath = `/resource/sessions`;
|
|
772
|
+
|
|
773
|
+
return {
|
|
774
|
+
path: urlPath,
|
|
775
|
+
method: 'GET',
|
|
776
|
+
headers: headerParameters,
|
|
777
|
+
query: queryParameters,
|
|
778
|
+
};
|
|
779
|
+
}
|
|
780
|
+
|
|
781
|
+
/**
|
|
782
|
+
* List resource sessions for the selected portal
|
|
783
|
+
*/
|
|
784
|
+
async getResourceSessionListRaw(requestParameters: GetResourceSessionListRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetResourceSessionList>> {
|
|
785
|
+
const requestOptions = await this.getResourceSessionListRequestOpts(requestParameters);
|
|
786
|
+
const response = await this.request(requestOptions, initOverrides);
|
|
787
|
+
|
|
788
|
+
return new runtime.JSONApiResponse(response, (jsonValue) => GetResourceSessionListFromJSON(jsonValue));
|
|
789
|
+
}
|
|
790
|
+
|
|
791
|
+
/**
|
|
792
|
+
* List resource sessions for the selected portal
|
|
793
|
+
*/
|
|
794
|
+
async getResourceSessionList(requestParameters: GetResourceSessionListRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetResourceSessionList> {
|
|
795
|
+
const response = await this.getResourceSessionListRaw(requestParameters, initOverrides);
|
|
796
|
+
return await response.value();
|
|
797
|
+
}
|
|
798
|
+
|
|
583
799
|
/**
|
|
584
800
|
* Creates request options for getResourceSessionPlayer without sending the request
|
|
585
801
|
*/
|
|
@@ -857,6 +1073,51 @@ export class PlayerApi extends runtime.BaseAPI {
|
|
|
857
1073
|
await this.initializeResourceScormSessionRaw(requestParameters, initOverrides);
|
|
858
1074
|
}
|
|
859
1075
|
|
|
1076
|
+
/**
|
|
1077
|
+
* Creates request options for postResourceSessionComplete without sending the request
|
|
1078
|
+
*/
|
|
1079
|
+
async postResourceSessionCompleteRequestOpts(requestParameters: PostResourceSessionCompleteRequest): Promise<runtime.RequestOpts> {
|
|
1080
|
+
if (requestParameters['sessionId'] == null) {
|
|
1081
|
+
throw new runtime.RequiredError(
|
|
1082
|
+
'sessionId',
|
|
1083
|
+
'Required parameter "sessionId" was null or undefined when calling postResourceSessionComplete().'
|
|
1084
|
+
);
|
|
1085
|
+
}
|
|
1086
|
+
|
|
1087
|
+
const queryParameters: any = {};
|
|
1088
|
+
|
|
1089
|
+
const headerParameters: runtime.HTTPHeaders = {};
|
|
1090
|
+
|
|
1091
|
+
|
|
1092
|
+
let urlPath = `/resource/sessions/{sessionId}/complete`;
|
|
1093
|
+
urlPath = urlPath.replace('{sessionId}', encodeURIComponent(String(requestParameters['sessionId'])));
|
|
1094
|
+
|
|
1095
|
+
return {
|
|
1096
|
+
path: urlPath,
|
|
1097
|
+
method: 'POST',
|
|
1098
|
+
headers: headerParameters,
|
|
1099
|
+
query: queryParameters,
|
|
1100
|
+
};
|
|
1101
|
+
}
|
|
1102
|
+
|
|
1103
|
+
/**
|
|
1104
|
+
* Complete a non-SCORM resource session
|
|
1105
|
+
*/
|
|
1106
|
+
async postResourceSessionCompleteRaw(requestParameters: PostResourceSessionCompleteRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetResourceSession>> {
|
|
1107
|
+
const requestOptions = await this.postResourceSessionCompleteRequestOpts(requestParameters);
|
|
1108
|
+
const response = await this.request(requestOptions, initOverrides);
|
|
1109
|
+
|
|
1110
|
+
return new runtime.JSONApiResponse(response, (jsonValue) => GetResourceSessionFromJSON(jsonValue));
|
|
1111
|
+
}
|
|
1112
|
+
|
|
1113
|
+
/**
|
|
1114
|
+
* Complete a non-SCORM resource session
|
|
1115
|
+
*/
|
|
1116
|
+
async postResourceSessionComplete(requestParameters: PostResourceSessionCompleteRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetResourceSession> {
|
|
1117
|
+
const response = await this.postResourceSessionCompleteRaw(requestParameters, initOverrides);
|
|
1118
|
+
return await response.value();
|
|
1119
|
+
}
|
|
1120
|
+
|
|
860
1121
|
/**
|
|
861
1122
|
* Creates request options for setResourceScormValue without sending the request
|
|
862
1123
|
*/
|
|
@@ -13,6 +13,13 @@
|
|
|
13
13
|
*/
|
|
14
14
|
|
|
15
15
|
import { mapValues } from '../runtime';
|
|
16
|
+
import type { ResourceSessionEnvironment } from './ResourceSessionEnvironment';
|
|
17
|
+
import {
|
|
18
|
+
ResourceSessionEnvironmentFromJSON,
|
|
19
|
+
ResourceSessionEnvironmentFromJSONTyped,
|
|
20
|
+
ResourceSessionEnvironmentToJSON,
|
|
21
|
+
ResourceSessionEnvironmentToJSONTyped,
|
|
22
|
+
} from './ResourceSessionEnvironment';
|
|
16
23
|
import type { ResourceType } from './ResourceType';
|
|
17
24
|
import {
|
|
18
25
|
ResourceTypeFromJSON,
|
|
@@ -40,6 +47,12 @@ export interface GetCourseVersionItemSession {
|
|
|
40
47
|
* @memberof GetCourseVersionItemSession
|
|
41
48
|
*/
|
|
42
49
|
id: string;
|
|
50
|
+
/**
|
|
51
|
+
*
|
|
52
|
+
* @type {ResourceSessionEnvironment}
|
|
53
|
+
* @memberof GetCourseVersionItemSession
|
|
54
|
+
*/
|
|
55
|
+
environment: ResourceSessionEnvironment;
|
|
43
56
|
/**
|
|
44
57
|
*
|
|
45
58
|
* @type {string}
|
|
@@ -139,6 +152,7 @@ export interface GetCourseVersionItemSession {
|
|
|
139
152
|
*/
|
|
140
153
|
export function instanceOfGetCourseVersionItemSession(value: object): value is GetCourseVersionItemSession {
|
|
141
154
|
if (!('id' in value) || value['id'] === undefined) return false;
|
|
155
|
+
if (!('environment' in value) || value['environment'] === undefined) return false;
|
|
142
156
|
if (!('courseVersionId' in value) || value['courseVersionId'] === undefined) return false;
|
|
143
157
|
if (!('itemId' in value) || value['itemId'] === undefined) return false;
|
|
144
158
|
if (!('contentLibraryItemId' in value) || value['contentLibraryItemId'] === undefined) return false;
|
|
@@ -166,6 +180,7 @@ export function GetCourseVersionItemSessionFromJSONTyped(json: any, ignoreDiscri
|
|
|
166
180
|
return {
|
|
167
181
|
|
|
168
182
|
'id': json['id'],
|
|
183
|
+
'environment': ResourceSessionEnvironmentFromJSON(json['environment']),
|
|
169
184
|
'courseVersionId': json['course_version_id'],
|
|
170
185
|
'itemId': json['item_id'],
|
|
171
186
|
'contentLibraryItemId': json['content_library_item_id'],
|
|
@@ -196,6 +211,7 @@ export function GetCourseVersionItemSessionToJSONTyped(value?: GetCourseVersionI
|
|
|
196
211
|
return {
|
|
197
212
|
|
|
198
213
|
'id': value['id'],
|
|
214
|
+
'environment': ResourceSessionEnvironmentToJSON(value['environment']),
|
|
199
215
|
'course_version_id': value['courseVersionId'],
|
|
200
216
|
'item_id': value['itemId'],
|
|
201
217
|
'content_library_item_id': value['contentLibraryItemId'],
|
|
@@ -0,0 +1,270 @@
|
|
|
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 { ResourceSessionEnvironment } from './ResourceSessionEnvironment';
|
|
17
|
+
import {
|
|
18
|
+
ResourceSessionEnvironmentFromJSON,
|
|
19
|
+
ResourceSessionEnvironmentFromJSONTyped,
|
|
20
|
+
ResourceSessionEnvironmentToJSON,
|
|
21
|
+
ResourceSessionEnvironmentToJSONTyped,
|
|
22
|
+
} from './ResourceSessionEnvironment';
|
|
23
|
+
import type { ResourceType } from './ResourceType';
|
|
24
|
+
import {
|
|
25
|
+
ResourceTypeFromJSON,
|
|
26
|
+
ResourceTypeFromJSONTyped,
|
|
27
|
+
ResourceTypeToJSON,
|
|
28
|
+
ResourceTypeToJSONTyped,
|
|
29
|
+
} from './ResourceType';
|
|
30
|
+
import type { ContentLaunchMode } from './ContentLaunchMode';
|
|
31
|
+
import {
|
|
32
|
+
ContentLaunchModeFromJSON,
|
|
33
|
+
ContentLaunchModeFromJSONTyped,
|
|
34
|
+
ContentLaunchModeToJSON,
|
|
35
|
+
ContentLaunchModeToJSONTyped,
|
|
36
|
+
} from './ContentLaunchMode';
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* A user-owned session pinned to an immutable Content Library resource version.
|
|
40
|
+
* @export
|
|
41
|
+
* @interface GetResourceSession
|
|
42
|
+
*/
|
|
43
|
+
export interface GetResourceSession {
|
|
44
|
+
/**
|
|
45
|
+
*
|
|
46
|
+
* @type {string}
|
|
47
|
+
* @memberof GetResourceSession
|
|
48
|
+
*/
|
|
49
|
+
id: string;
|
|
50
|
+
/**
|
|
51
|
+
*
|
|
52
|
+
* @type {string}
|
|
53
|
+
* @memberof GetResourceSession
|
|
54
|
+
*/
|
|
55
|
+
userId: string;
|
|
56
|
+
/**
|
|
57
|
+
*
|
|
58
|
+
* @type {ResourceSessionEnvironment}
|
|
59
|
+
* @memberof GetResourceSession
|
|
60
|
+
*/
|
|
61
|
+
environment: ResourceSessionEnvironment;
|
|
62
|
+
/**
|
|
63
|
+
*
|
|
64
|
+
* @type {string}
|
|
65
|
+
* @memberof GetResourceSession
|
|
66
|
+
*/
|
|
67
|
+
courseId?: string | null;
|
|
68
|
+
/**
|
|
69
|
+
*
|
|
70
|
+
* @type {string}
|
|
71
|
+
* @memberof GetResourceSession
|
|
72
|
+
*/
|
|
73
|
+
courseVersionId?: string | null;
|
|
74
|
+
/**
|
|
75
|
+
*
|
|
76
|
+
* @type {string}
|
|
77
|
+
* @memberof GetResourceSession
|
|
78
|
+
*/
|
|
79
|
+
itemId?: string | null;
|
|
80
|
+
/**
|
|
81
|
+
*
|
|
82
|
+
* @type {string}
|
|
83
|
+
* @memberof GetResourceSession
|
|
84
|
+
*/
|
|
85
|
+
contentLibraryItemId: string;
|
|
86
|
+
/**
|
|
87
|
+
*
|
|
88
|
+
* @type {string}
|
|
89
|
+
* @memberof GetResourceSession
|
|
90
|
+
*/
|
|
91
|
+
contentLibraryVersionId: string;
|
|
92
|
+
/**
|
|
93
|
+
*
|
|
94
|
+
* @type {string}
|
|
95
|
+
* @memberof GetResourceSession
|
|
96
|
+
*/
|
|
97
|
+
resourceName: string;
|
|
98
|
+
/**
|
|
99
|
+
*
|
|
100
|
+
* @type {ResourceType}
|
|
101
|
+
* @memberof GetResourceSession
|
|
102
|
+
*/
|
|
103
|
+
resourceType: ResourceType;
|
|
104
|
+
/**
|
|
105
|
+
*
|
|
106
|
+
* @type {ContentLaunchMode}
|
|
107
|
+
* @memberof GetResourceSession
|
|
108
|
+
*/
|
|
109
|
+
launchMode?: ContentLaunchMode | null;
|
|
110
|
+
/**
|
|
111
|
+
*
|
|
112
|
+
* @type {string}
|
|
113
|
+
* @memberof GetResourceSession
|
|
114
|
+
*/
|
|
115
|
+
launchUrl?: string | null;
|
|
116
|
+
/**
|
|
117
|
+
*
|
|
118
|
+
* @type {number}
|
|
119
|
+
* @memberof GetResourceSession
|
|
120
|
+
*/
|
|
121
|
+
attemptNumber: number;
|
|
122
|
+
/**
|
|
123
|
+
*
|
|
124
|
+
* @type {boolean}
|
|
125
|
+
* @memberof GetResourceSession
|
|
126
|
+
*/
|
|
127
|
+
isCurrent: boolean;
|
|
128
|
+
/**
|
|
129
|
+
*
|
|
130
|
+
* @type {string}
|
|
131
|
+
* @memberof GetResourceSession
|
|
132
|
+
*/
|
|
133
|
+
completionStatus: string;
|
|
134
|
+
/**
|
|
135
|
+
*
|
|
136
|
+
* @type {string}
|
|
137
|
+
* @memberof GetResourceSession
|
|
138
|
+
*/
|
|
139
|
+
gradeStatus: string;
|
|
140
|
+
/**
|
|
141
|
+
*
|
|
142
|
+
* @type {number}
|
|
143
|
+
* @memberof GetResourceSession
|
|
144
|
+
*/
|
|
145
|
+
scoreRaw?: number | null;
|
|
146
|
+
/**
|
|
147
|
+
*
|
|
148
|
+
* @type {number}
|
|
149
|
+
* @memberof GetResourceSession
|
|
150
|
+
*/
|
|
151
|
+
initializedAt?: number | null;
|
|
152
|
+
/**
|
|
153
|
+
*
|
|
154
|
+
* @type {number}
|
|
155
|
+
* @memberof GetResourceSession
|
|
156
|
+
*/
|
|
157
|
+
terminatedAt?: number | null;
|
|
158
|
+
/**
|
|
159
|
+
*
|
|
160
|
+
* @type {number}
|
|
161
|
+
* @memberof GetResourceSession
|
|
162
|
+
*/
|
|
163
|
+
createdAt: number;
|
|
164
|
+
/**
|
|
165
|
+
*
|
|
166
|
+
* @type {number}
|
|
167
|
+
* @memberof GetResourceSession
|
|
168
|
+
*/
|
|
169
|
+
updatedAt: number;
|
|
170
|
+
/**
|
|
171
|
+
*
|
|
172
|
+
* @type {number}
|
|
173
|
+
* @memberof GetResourceSession
|
|
174
|
+
*/
|
|
175
|
+
completedAt?: number | null;
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
|
|
179
|
+
|
|
180
|
+
/**
|
|
181
|
+
* Check if a given object implements the GetResourceSession interface.
|
|
182
|
+
*/
|
|
183
|
+
export function instanceOfGetResourceSession(value: object): value is GetResourceSession {
|
|
184
|
+
if (!('id' in value) || value['id'] === undefined) return false;
|
|
185
|
+
if (!('userId' in value) || value['userId'] === undefined) return false;
|
|
186
|
+
if (!('environment' in value) || value['environment'] === undefined) return false;
|
|
187
|
+
if (!('contentLibraryItemId' in value) || value['contentLibraryItemId'] === undefined) return false;
|
|
188
|
+
if (!('contentLibraryVersionId' in value) || value['contentLibraryVersionId'] === undefined) return false;
|
|
189
|
+
if (!('resourceName' in value) || value['resourceName'] === undefined) return false;
|
|
190
|
+
if (!('resourceType' in value) || value['resourceType'] === undefined) return false;
|
|
191
|
+
if (!('attemptNumber' in value) || value['attemptNumber'] === undefined) return false;
|
|
192
|
+
if (!('isCurrent' in value) || value['isCurrent'] === undefined) return false;
|
|
193
|
+
if (!('completionStatus' in value) || value['completionStatus'] === undefined) return false;
|
|
194
|
+
if (!('gradeStatus' in value) || value['gradeStatus'] === undefined) return false;
|
|
195
|
+
if (!('createdAt' in value) || value['createdAt'] === undefined) return false;
|
|
196
|
+
if (!('updatedAt' in value) || value['updatedAt'] === undefined) return false;
|
|
197
|
+
return true;
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
export function GetResourceSessionFromJSON(json: any): GetResourceSession {
|
|
201
|
+
return GetResourceSessionFromJSONTyped(json, false);
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
export function GetResourceSessionFromJSONTyped(json: any, ignoreDiscriminator: boolean): GetResourceSession {
|
|
205
|
+
if (json == null) {
|
|
206
|
+
return json;
|
|
207
|
+
}
|
|
208
|
+
return {
|
|
209
|
+
|
|
210
|
+
'id': json['id'],
|
|
211
|
+
'userId': json['user_id'],
|
|
212
|
+
'environment': ResourceSessionEnvironmentFromJSON(json['environment']),
|
|
213
|
+
'courseId': json['course_id'] == null ? undefined : json['course_id'],
|
|
214
|
+
'courseVersionId': json['course_version_id'] == null ? undefined : json['course_version_id'],
|
|
215
|
+
'itemId': json['item_id'] == null ? undefined : json['item_id'],
|
|
216
|
+
'contentLibraryItemId': json['content_library_item_id'],
|
|
217
|
+
'contentLibraryVersionId': json['content_library_version_id'],
|
|
218
|
+
'resourceName': json['resource_name'],
|
|
219
|
+
'resourceType': ResourceTypeFromJSON(json['resource_type']),
|
|
220
|
+
'launchMode': json['launch_mode'] == null ? undefined : ContentLaunchModeFromJSON(json['launch_mode']),
|
|
221
|
+
'launchUrl': json['launch_url'] == null ? undefined : json['launch_url'],
|
|
222
|
+
'attemptNumber': json['attempt_number'],
|
|
223
|
+
'isCurrent': json['is_current'],
|
|
224
|
+
'completionStatus': json['completion_status'],
|
|
225
|
+
'gradeStatus': json['grade_status'],
|
|
226
|
+
'scoreRaw': json['score_raw'] == null ? undefined : json['score_raw'],
|
|
227
|
+
'initializedAt': json['initialized_at'] == null ? undefined : json['initialized_at'],
|
|
228
|
+
'terminatedAt': json['terminated_at'] == null ? undefined : json['terminated_at'],
|
|
229
|
+
'createdAt': json['created_at'],
|
|
230
|
+
'updatedAt': json['updated_at'],
|
|
231
|
+
'completedAt': json['completed_at'] == null ? undefined : json['completed_at'],
|
|
232
|
+
};
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
export function GetResourceSessionToJSON(json: any): GetResourceSession {
|
|
236
|
+
return GetResourceSessionToJSONTyped(json, false);
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
export function GetResourceSessionToJSONTyped(value?: GetResourceSession | null, ignoreDiscriminator: boolean = false): any {
|
|
240
|
+
if (value == null) {
|
|
241
|
+
return value;
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
return {
|
|
245
|
+
|
|
246
|
+
'id': value['id'],
|
|
247
|
+
'user_id': value['userId'],
|
|
248
|
+
'environment': ResourceSessionEnvironmentToJSON(value['environment']),
|
|
249
|
+
'course_id': value['courseId'],
|
|
250
|
+
'course_version_id': value['courseVersionId'],
|
|
251
|
+
'item_id': value['itemId'],
|
|
252
|
+
'content_library_item_id': value['contentLibraryItemId'],
|
|
253
|
+
'content_library_version_id': value['contentLibraryVersionId'],
|
|
254
|
+
'resource_name': value['resourceName'],
|
|
255
|
+
'resource_type': ResourceTypeToJSON(value['resourceType']),
|
|
256
|
+
'launch_mode': ContentLaunchModeToJSON(value['launchMode']),
|
|
257
|
+
'launch_url': value['launchUrl'],
|
|
258
|
+
'attempt_number': value['attemptNumber'],
|
|
259
|
+
'is_current': value['isCurrent'],
|
|
260
|
+
'completion_status': value['completionStatus'],
|
|
261
|
+
'grade_status': value['gradeStatus'],
|
|
262
|
+
'score_raw': value['scoreRaw'],
|
|
263
|
+
'initialized_at': value['initializedAt'],
|
|
264
|
+
'terminated_at': value['terminatedAt'],
|
|
265
|
+
'created_at': value['createdAt'],
|
|
266
|
+
'updated_at': value['updatedAt'],
|
|
267
|
+
'completed_at': value['completedAt'],
|
|
268
|
+
};
|
|
269
|
+
}
|
|
270
|
+
|