@easyedu/js-lsm-api 1.105.0 → 1.107.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 (86) hide show
  1. package/.openapi-generator/FILES +6 -0
  2. package/README.md +9 -5
  3. package/dist/apis/CourseApi.d.ts +30 -2
  4. package/dist/apis/CourseApi.js +59 -3
  5. package/dist/apis/CourseShareApi.d.ts +21 -7
  6. package/dist/apis/CourseShareApi.js +24 -11
  7. package/dist/apis/PortalApi.d.ts +2 -2
  8. package/dist/apis/PortalApi.js +2 -2
  9. package/dist/esm/apis/CourseApi.d.ts +30 -2
  10. package/dist/esm/apis/CourseApi.js +58 -2
  11. package/dist/esm/apis/CourseShareApi.d.ts +21 -7
  12. package/dist/esm/apis/CourseShareApi.js +23 -10
  13. package/dist/esm/apis/PortalApi.d.ts +2 -2
  14. package/dist/esm/apis/PortalApi.js +2 -2
  15. package/dist/esm/models/CourseShare.d.ts +57 -9
  16. package/dist/esm/models/CourseShare.js +32 -0
  17. package/dist/esm/models/GetCourseExport.d.ts +6 -0
  18. package/dist/esm/models/GetCourseExport.js +4 -0
  19. package/dist/esm/models/GetPortal.d.ts +11 -2
  20. package/dist/esm/models/GetPortal.js +5 -0
  21. package/dist/esm/models/GetPublicPortalBranding.d.ts +11 -2
  22. package/dist/esm/models/GetPublicPortalBranding.js +5 -0
  23. package/dist/esm/models/PortalBrandColorsV1.d.ts +194 -0
  24. package/dist/esm/models/PortalBrandColorsV1.js +151 -0
  25. package/dist/esm/models/PortalBrandThemeV1.d.ts +53 -0
  26. package/dist/esm/models/PortalBrandThemeV1.js +59 -0
  27. package/dist/esm/models/PortalBrandTypographyV1.d.ts +80 -0
  28. package/dist/esm/models/PortalBrandTypographyV1.js +78 -0
  29. package/dist/esm/models/PostOfferCatalog.d.ts +1 -1
  30. package/dist/esm/models/PostOfferCourse.d.ts +1 -1
  31. package/dist/esm/models/PostPortal.d.ts +9 -0
  32. package/dist/esm/models/PostPortal.js +3 -0
  33. package/dist/esm/models/PutPortalBranding.d.ts +9 -0
  34. package/dist/esm/models/PutPortalBranding.js +3 -0
  35. package/dist/esm/models/index.d.ts +3 -0
  36. package/dist/esm/models/index.js +3 -0
  37. package/dist/models/CourseShare.d.ts +57 -9
  38. package/dist/models/CourseShare.js +32 -0
  39. package/dist/models/GetCourseExport.d.ts +6 -0
  40. package/dist/models/GetCourseExport.js +4 -0
  41. package/dist/models/GetPortal.d.ts +11 -2
  42. package/dist/models/GetPortal.js +5 -0
  43. package/dist/models/GetPublicPortalBranding.d.ts +11 -2
  44. package/dist/models/GetPublicPortalBranding.js +5 -0
  45. package/dist/models/PortalBrandColorsV1.d.ts +194 -0
  46. package/dist/models/PortalBrandColorsV1.js +158 -0
  47. package/dist/models/PortalBrandThemeV1.d.ts +53 -0
  48. package/dist/models/PortalBrandThemeV1.js +67 -0
  49. package/dist/models/PortalBrandTypographyV1.d.ts +80 -0
  50. package/dist/models/PortalBrandTypographyV1.js +86 -0
  51. package/dist/models/PostOfferCatalog.d.ts +1 -1
  52. package/dist/models/PostOfferCourse.d.ts +1 -1
  53. package/dist/models/PostPortal.d.ts +9 -0
  54. package/dist/models/PostPortal.js +3 -0
  55. package/dist/models/PutPortalBranding.d.ts +9 -0
  56. package/dist/models/PutPortalBranding.js +3 -0
  57. package/dist/models/index.d.ts +3 -0
  58. package/dist/models/index.js +3 -0
  59. package/docs/CourseApi.md +79 -1
  60. package/docs/CourseShare.md +19 -3
  61. package/docs/CourseShareApi.md +20 -9
  62. package/docs/GetCourseExport.md +2 -0
  63. package/docs/GetPortal.md +2 -0
  64. package/docs/GetPublicPortalBranding.md +2 -0
  65. package/docs/PortalApi.md +2 -2
  66. package/docs/PortalBrandColorsV1.md +89 -0
  67. package/docs/PortalBrandThemeV1.md +39 -0
  68. package/docs/PortalBrandTypographyV1.md +47 -0
  69. package/docs/PostPortal.md +2 -0
  70. package/docs/PutPortalBranding.md +2 -0
  71. package/package.json +1 -1
  72. package/src/apis/CourseApi.ts +72 -2
  73. package/src/apis/CourseShareApi.ts +28 -9
  74. package/src/apis/PortalApi.ts +2 -2
  75. package/src/models/CourseShare.ts +81 -9
  76. package/src/models/GetCourseExport.ts +9 -0
  77. package/src/models/GetPortal.ts +21 -2
  78. package/src/models/GetPublicPortalBranding.ts +21 -2
  79. package/src/models/PortalBrandColorsV1.ts +309 -0
  80. package/src/models/PortalBrandThemeV1.ts +109 -0
  81. package/src/models/PortalBrandTypographyV1.ts +135 -0
  82. package/src/models/PostOfferCatalog.ts +1 -1
  83. package/src/models/PostOfferCourse.ts +1 -1
  84. package/src/models/PostPortal.ts +18 -0
  85. package/src/models/PutPortalBranding.ts +18 -0
  86. package/src/models/index.ts +3 -0
@@ -18,6 +18,9 @@ import { type PostOfferCourseResponse } from '../models/PostOfferCourseResponse'
18
18
  export interface DeleteCourseShareRequest {
19
19
  shareId: string;
20
20
  }
21
+ export interface GetCourseSharesOfferedByMeRequest {
22
+ state?: GetCourseSharesOfferedByMeStateEnum;
23
+ }
21
24
  export interface GetCourseSharesOfferedToMeRequest {
22
25
  state?: GetCourseSharesOfferedToMeStateEnum;
23
26
  }
@@ -62,15 +65,15 @@ export declare class CourseShareApi extends runtime.BaseAPI {
62
65
  /**
63
66
  * Creates request options for getCourseSharesOfferedByMe without sending the request
64
67
  */
65
- getCourseSharesOfferedByMeRequestOpts(): Promise<runtime.RequestOpts>;
68
+ getCourseSharesOfferedByMeRequestOpts(requestParameters: GetCourseSharesOfferedByMeRequest): Promise<runtime.RequestOpts>;
66
69
  /**
67
70
  * List shares the current portal has offered out
68
71
  */
69
- getCourseSharesOfferedByMeRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<CourseShare>>>;
72
+ getCourseSharesOfferedByMeRaw(requestParameters: GetCourseSharesOfferedByMeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<CourseShare>>>;
70
73
  /**
71
74
  * List shares the current portal has offered out
72
75
  */
73
- getCourseSharesOfferedByMe(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<CourseShare>>;
76
+ getCourseSharesOfferedByMe(requestParameters?: GetCourseSharesOfferedByMeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<CourseShare>>;
74
77
  /**
75
78
  * Creates request options for getCourseSharesOfferedToMe without sending the request
76
79
  */
@@ -91,12 +94,12 @@ export declare class CourseShareApi extends runtime.BaseAPI {
91
94
  postOfferCatalogRequestOpts(requestParameters: PostOfferCatalogRequest): Promise<runtime.RequestOpts>;
92
95
  /**
93
96
  * Fans out one `course_share` per catalog member. Duplicates are silently skipped. The catalog link is preserved on each generated share via `origin_catalog_id`.
94
- * Offer every course in a catalog to a descendant portal
97
+ * Offer every course in a catalog to another portal
95
98
  */
96
99
  postOfferCatalogRaw(requestParameters: PostOfferCatalogRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PostOfferCatalogResponse>>;
97
100
  /**
98
101
  * Fans out one `course_share` per catalog member. Duplicates are silently skipped. The catalog link is preserved on each generated share via `origin_catalog_id`.
99
- * Offer every course in a catalog to a descendant portal
102
+ * Offer every course in a catalog to another portal
100
103
  */
101
104
  postOfferCatalog(requestParameters: PostOfferCatalogRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PostOfferCatalogResponse>;
102
105
  /**
@@ -104,11 +107,11 @@ export declare class CourseShareApi extends runtime.BaseAPI {
104
107
  */
105
108
  postOfferCourseRequestOpts(requestParameters: PostOfferCourseRequest): Promise<runtime.RequestOpts>;
106
109
  /**
107
- * Offer a single course to a descendant portal
110
+ * Offer a single course to another portal
108
111
  */
109
112
  postOfferCourseRaw(requestParameters: PostOfferCourseRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PostOfferCourseResponse>>;
110
113
  /**
111
- * Offer a single course to a descendant portal
114
+ * Offer a single course to another portal
112
115
  */
113
116
  postOfferCourse(requestParameters: PostOfferCourseRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PostOfferCourseResponse>;
114
117
  /**
@@ -160,6 +163,17 @@ export declare class CourseShareApi extends runtime.BaseAPI {
160
163
  */
161
164
  putDeclineShare(requestParameters: PutDeclineShareRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void>;
162
165
  }
166
+ /**
167
+ * @export
168
+ */
169
+ export declare const GetCourseSharesOfferedByMeStateEnum: {
170
+ readonly Offered: "offered";
171
+ readonly AcceptedMirror: "accepted_mirror";
172
+ readonly AcceptedClone: "accepted_clone";
173
+ readonly Declined: "declined";
174
+ readonly Revoked: "revoked";
175
+ };
176
+ export type GetCourseSharesOfferedByMeStateEnum = typeof GetCourseSharesOfferedByMeStateEnum[keyof typeof GetCourseSharesOfferedByMeStateEnum];
163
177
  /**
164
178
  * @export
165
179
  */
@@ -73,9 +73,12 @@ export class CourseShareApi extends runtime.BaseAPI {
73
73
  /**
74
74
  * Creates request options for getCourseSharesOfferedByMe without sending the request
75
75
  */
76
- getCourseSharesOfferedByMeRequestOpts() {
76
+ getCourseSharesOfferedByMeRequestOpts(requestParameters) {
77
77
  return __awaiter(this, void 0, void 0, function* () {
78
78
  const queryParameters = {};
79
+ if (requestParameters['state'] != null) {
80
+ queryParameters['state'] = requestParameters['state'];
81
+ }
79
82
  const headerParameters = {};
80
83
  let urlPath = `/course-shares/offered-by-me`;
81
84
  return {
@@ -89,9 +92,9 @@ export class CourseShareApi extends runtime.BaseAPI {
89
92
  /**
90
93
  * List shares the current portal has offered out
91
94
  */
92
- getCourseSharesOfferedByMeRaw(initOverrides) {
95
+ getCourseSharesOfferedByMeRaw(requestParameters, initOverrides) {
93
96
  return __awaiter(this, void 0, void 0, function* () {
94
- const requestOptions = yield this.getCourseSharesOfferedByMeRequestOpts();
97
+ const requestOptions = yield this.getCourseSharesOfferedByMeRequestOpts(requestParameters);
95
98
  const response = yield this.request(requestOptions, initOverrides);
96
99
  return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(CourseShareFromJSON));
97
100
  });
@@ -99,9 +102,9 @@ export class CourseShareApi extends runtime.BaseAPI {
99
102
  /**
100
103
  * List shares the current portal has offered out
101
104
  */
102
- getCourseSharesOfferedByMe(initOverrides) {
103
- return __awaiter(this, void 0, void 0, function* () {
104
- const response = yield this.getCourseSharesOfferedByMeRaw(initOverrides);
105
+ getCourseSharesOfferedByMe() {
106
+ return __awaiter(this, arguments, void 0, function* (requestParameters = {}, initOverrides) {
107
+ const response = yield this.getCourseSharesOfferedByMeRaw(requestParameters, initOverrides);
105
108
  return yield response.value();
106
109
  });
107
110
  }
@@ -172,7 +175,7 @@ export class CourseShareApi extends runtime.BaseAPI {
172
175
  }
173
176
  /**
174
177
  * Fans out one `course_share` per catalog member. Duplicates are silently skipped. The catalog link is preserved on each generated share via `origin_catalog_id`.
175
- * Offer every course in a catalog to a descendant portal
178
+ * Offer every course in a catalog to another portal
176
179
  */
177
180
  postOfferCatalogRaw(requestParameters, initOverrides) {
178
181
  return __awaiter(this, void 0, void 0, function* () {
@@ -183,7 +186,7 @@ export class CourseShareApi extends runtime.BaseAPI {
183
186
  }
184
187
  /**
185
188
  * Fans out one `course_share` per catalog member. Duplicates are silently skipped. The catalog link is preserved on each generated share via `origin_catalog_id`.
186
- * Offer every course in a catalog to a descendant portal
189
+ * Offer every course in a catalog to another portal
187
190
  */
188
191
  postOfferCatalog(requestParameters, initOverrides) {
189
192
  return __awaiter(this, void 0, void 0, function* () {
@@ -217,7 +220,7 @@ export class CourseShareApi extends runtime.BaseAPI {
217
220
  });
218
221
  }
219
222
  /**
220
- * Offer a single course to a descendant portal
223
+ * Offer a single course to another portal
221
224
  */
222
225
  postOfferCourseRaw(requestParameters, initOverrides) {
223
226
  return __awaiter(this, void 0, void 0, function* () {
@@ -227,7 +230,7 @@ export class CourseShareApi extends runtime.BaseAPI {
227
230
  });
228
231
  }
229
232
  /**
230
- * Offer a single course to a descendant portal
233
+ * Offer a single course to another portal
231
234
  */
232
235
  postOfferCourse(requestParameters, initOverrides) {
233
236
  return __awaiter(this, void 0, void 0, function* () {
@@ -388,6 +391,16 @@ export class CourseShareApi extends runtime.BaseAPI {
388
391
  });
389
392
  }
390
393
  }
394
+ /**
395
+ * @export
396
+ */
397
+ export const GetCourseSharesOfferedByMeStateEnum = {
398
+ Offered: 'offered',
399
+ AcceptedMirror: 'accepted_mirror',
400
+ AcceptedClone: 'accepted_clone',
401
+ Declined: 'declined',
402
+ Revoked: 'revoked'
403
+ };
391
404
  /**
392
405
  * @export
393
406
  */
@@ -295,11 +295,11 @@ export declare class PortalApi extends runtime.BaseAPI {
295
295
  */
296
296
  putPortalBrandingRequestOpts(requestParameters: PutPortalBrandingRequest): Promise<runtime.RequestOpts>;
297
297
  /**
298
- * Update portal branding (name, background color, text color)
298
+ * Update portal branding and complete application theme
299
299
  */
300
300
  putPortalBrandingRaw(requestParameters: PutPortalBrandingRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetPortal>>;
301
301
  /**
302
- * Update portal branding (name, background color, text color)
302
+ * Update portal branding and complete application theme
303
303
  */
304
304
  putPortalBranding(requestParameters: PutPortalBrandingRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetPortal>;
305
305
  /**
@@ -744,7 +744,7 @@ export class PortalApi extends runtime.BaseAPI {
744
744
  });
745
745
  }
746
746
  /**
747
- * Update portal branding (name, background color, text color)
747
+ * Update portal branding and complete application theme
748
748
  */
749
749
  putPortalBrandingRaw(requestParameters, initOverrides) {
750
750
  return __awaiter(this, void 0, void 0, function* () {
@@ -754,7 +754,7 @@ export class PortalApi extends runtime.BaseAPI {
754
754
  });
755
755
  }
756
756
  /**
757
- * Update portal branding (name, background color, text color)
757
+ * Update portal branding and complete application theme
758
758
  */
759
759
  putPortalBranding(requestParameters, initOverrides) {
760
760
  return __awaiter(this, void 0, void 0, function* () {
@@ -10,9 +10,9 @@
10
10
  * Do not edit the class manually.
11
11
  */
12
12
  /**
13
- * Shape returned by `GET /course-shares/offered-to-me`. Includes joined source
14
- * portal name and course name so the child portal can render an inbox without
15
- * follow-up requests.
13
+ * Shared shape returned by the incoming and outgoing course-share lists. All
14
+ * resource identifiers are public external IDs so clients can link to the
15
+ * related course, portal, and catalog without exposing database keys.
16
16
  *
17
17
  * @export
18
18
  * @interface CourseShare
@@ -25,11 +25,11 @@ export interface CourseShare {
25
25
  */
26
26
  id: string;
27
27
  /**
28
- * Internal ID of the offering portal
29
- * @type {number}
28
+ * External ID of the offering portal
29
+ * @type {string}
30
30
  * @memberof CourseShare
31
31
  */
32
- sourcePortalId: number;
32
+ sourcePortalId: string;
33
33
  /**
34
34
  * Display name of the offering portal
35
35
  * @type {string}
@@ -37,11 +37,23 @@ export interface CourseShare {
37
37
  */
38
38
  sourcePortalName: string;
39
39
  /**
40
- * Internal ID of the offered course
41
- * @type {number}
40
+ * External ID of the receiving portal
41
+ * @type {string}
42
+ * @memberof CourseShare
43
+ */
44
+ targetPortalId: string;
45
+ /**
46
+ * Display name of the receiving portal
47
+ * @type {string}
48
+ * @memberof CourseShare
49
+ */
50
+ targetPortalName: string;
51
+ /**
52
+ * External ID of the offered course
53
+ * @type {string}
42
54
  * @memberof CourseShare
43
55
  */
44
- courseId: number;
56
+ courseId: string;
45
57
  /**
46
58
  * Display name of the offered course
47
59
  * @type {string}
@@ -66,6 +78,42 @@ export interface CourseShare {
66
78
  * @memberof CourseShare
67
79
  */
68
80
  allowResharing: boolean;
81
+ /**
82
+ * Per-share seat cap; null means unlimited
83
+ * @type {number}
84
+ * @memberof CourseShare
85
+ */
86
+ seatLimit: number | null;
87
+ /**
88
+ * External ID of the catalog that produced the offer, when applicable
89
+ * @type {string}
90
+ * @memberof CourseShare
91
+ */
92
+ originCatalogId: string | null;
93
+ /**
94
+ * Display name of the catalog that produced the offer, when applicable
95
+ * @type {string}
96
+ * @memberof CourseShare
97
+ */
98
+ originCatalogName: string | null;
99
+ /**
100
+ *
101
+ * @type {Date}
102
+ * @memberof CourseShare
103
+ */
104
+ offeredAt: Date;
105
+ /**
106
+ *
107
+ * @type {Date}
108
+ * @memberof CourseShare
109
+ */
110
+ respondedAt: Date | null;
111
+ /**
112
+ *
113
+ * @type {Date}
114
+ * @memberof CourseShare
115
+ */
116
+ revokedAt: Date | null;
69
117
  }
70
118
  /**
71
119
  * @export
@@ -39,6 +39,10 @@ export function instanceOfCourseShare(value) {
39
39
  return false;
40
40
  if (!('sourcePortalName' in value) || value['sourcePortalName'] === undefined)
41
41
  return false;
42
+ if (!('targetPortalId' in value) || value['targetPortalId'] === undefined)
43
+ return false;
44
+ if (!('targetPortalName' in value) || value['targetPortalName'] === undefined)
45
+ return false;
42
46
  if (!('courseId' in value) || value['courseId'] === undefined)
43
47
  return false;
44
48
  if (!('courseName' in value) || value['courseName'] === undefined)
@@ -49,6 +53,18 @@ export function instanceOfCourseShare(value) {
49
53
  return false;
50
54
  if (!('allowResharing' in value) || value['allowResharing'] === undefined)
51
55
  return false;
56
+ if (!('seatLimit' in value) || value['seatLimit'] === undefined)
57
+ return false;
58
+ if (!('originCatalogId' in value) || value['originCatalogId'] === undefined)
59
+ return false;
60
+ if (!('originCatalogName' in value) || value['originCatalogName'] === undefined)
61
+ return false;
62
+ if (!('offeredAt' in value) || value['offeredAt'] === undefined)
63
+ return false;
64
+ if (!('respondedAt' in value) || value['respondedAt'] === undefined)
65
+ return false;
66
+ if (!('revokedAt' in value) || value['revokedAt'] === undefined)
67
+ return false;
52
68
  return true;
53
69
  }
54
70
  export function CourseShareFromJSON(json) {
@@ -62,11 +78,19 @@ export function CourseShareFromJSONTyped(json, ignoreDiscriminator) {
62
78
  'id': json['id'],
63
79
  'sourcePortalId': json['source_portal_id'],
64
80
  'sourcePortalName': json['source_portal_name'],
81
+ 'targetPortalId': json['target_portal_id'],
82
+ 'targetPortalName': json['target_portal_name'],
65
83
  'courseId': json['course_id'],
66
84
  'courseName': json['course_name'],
67
85
  'allowedMode': json['allowed_mode'],
68
86
  'state': json['state'],
69
87
  'allowResharing': json['allow_resharing'],
88
+ 'seatLimit': json['seat_limit'],
89
+ 'originCatalogId': json['origin_catalog_id'],
90
+ 'originCatalogName': json['origin_catalog_name'],
91
+ 'offeredAt': (new Date(json['offered_at'])),
92
+ 'respondedAt': (json['responded_at'] == null ? null : new Date(json['responded_at'])),
93
+ 'revokedAt': (json['revoked_at'] == null ? null : new Date(json['revoked_at'])),
70
94
  };
71
95
  }
72
96
  export function CourseShareToJSON(json) {
@@ -80,10 +104,18 @@ export function CourseShareToJSONTyped(value, ignoreDiscriminator = false) {
80
104
  'id': value['id'],
81
105
  'source_portal_id': value['sourcePortalId'],
82
106
  'source_portal_name': value['sourcePortalName'],
107
+ 'target_portal_id': value['targetPortalId'],
108
+ 'target_portal_name': value['targetPortalName'],
83
109
  'course_id': value['courseId'],
84
110
  'course_name': value['courseName'],
85
111
  'allowed_mode': value['allowedMode'],
86
112
  'state': value['state'],
87
113
  'allow_resharing': value['allowResharing'],
114
+ 'seat_limit': value['seatLimit'],
115
+ 'origin_catalog_id': value['originCatalogId'],
116
+ 'origin_catalog_name': value['originCatalogName'],
117
+ 'offered_at': value['offeredAt'].toISOString(),
118
+ 'responded_at': value['respondedAt'] == null ? value['respondedAt'] : value['respondedAt'].toISOString(),
119
+ 'revoked_at': value['revokedAt'] == null ? value['revokedAt'] : value['revokedAt'].toISOString(),
88
120
  };
89
121
  }
@@ -27,6 +27,12 @@ export interface GetCourseExport {
27
27
  * @memberof GetCourseExport
28
28
  */
29
29
  courseId: string;
30
+ /**
31
+ * Display name of the course being exported
32
+ * @type {string}
33
+ * @memberof GetCourseExport
34
+ */
35
+ courseName: string;
30
36
  /**
31
37
  * Immutable version used by the export; null only for historical records.
32
38
  * @type {string}
@@ -36,6 +36,8 @@ export function instanceOfGetCourseExport(value) {
36
36
  return false;
37
37
  if (!('courseId' in value) || value['courseId'] === undefined)
38
38
  return false;
39
+ if (!('courseName' in value) || value['courseName'] === undefined)
40
+ return false;
39
41
  if (!('exportType' in value) || value['exportType'] === undefined)
40
42
  return false;
41
43
  if (!('sectionIds' in value) || value['sectionIds'] === undefined)
@@ -58,6 +60,7 @@ export function GetCourseExportFromJSONTyped(json, ignoreDiscriminator) {
58
60
  return {
59
61
  'id': json['id'],
60
62
  'courseId': json['course_id'],
63
+ 'courseName': json['course_name'],
61
64
  'courseVersionId': json['course_version_id'] == null ? undefined : json['course_version_id'],
62
65
  'exportType': json['export_type'],
63
66
  'sectionIds': json['section_ids'],
@@ -79,6 +82,7 @@ export function GetCourseExportToJSONTyped(value, ignoreDiscriminator = false) {
79
82
  return {
80
83
  'id': value['id'],
81
84
  'course_id': value['courseId'],
85
+ 'course_name': value['courseName'],
82
86
  'course_version_id': value['courseVersionId'],
83
87
  'export_type': value['exportType'],
84
88
  'section_ids': value['sectionIds'],
@@ -9,6 +9,7 @@
9
9
  * https://openapi-generator.tech
10
10
  * Do not edit the class manually.
11
11
  */
12
+ import type { PortalBrandThemeV1 } from './PortalBrandThemeV1';
12
13
  /**
13
14
  *
14
15
  * @export
@@ -58,17 +59,25 @@ export interface GetPortal {
58
59
  */
59
60
  faviconUrl?: string | null;
60
61
  /**
61
- *
62
+ * Deprecated compatibility alias for branding_theme.colors.header_background.
62
63
  * @type {string}
63
64
  * @memberof GetPortal
65
+ * @deprecated
64
66
  */
65
67
  headerBackgroundColor: string;
66
68
  /**
67
- *
69
+ * Deprecated compatibility alias for branding_theme.colors.header_foreground.
68
70
  * @type {string}
69
71
  * @memberof GetPortal
72
+ * @deprecated
70
73
  */
71
74
  headerTextColor: string;
75
+ /**
76
+ *
77
+ * @type {PortalBrandThemeV1}
78
+ * @memberof GetPortal
79
+ */
80
+ brandingTheme: PortalBrandThemeV1;
72
81
  /**
73
82
  * The user's highest-privilege role base type for this portal
74
83
  * @type {GetPortalBaseTypeEnum}
@@ -11,6 +11,7 @@
11
11
  * https://openapi-generator.tech
12
12
  * Do not edit the class manually.
13
13
  */
14
+ import { PortalBrandThemeV1FromJSON, PortalBrandThemeV1ToJSON, } from './PortalBrandThemeV1';
14
15
  /**
15
16
  * @export
16
17
  */
@@ -35,6 +36,8 @@ export function instanceOfGetPortal(value) {
35
36
  return false;
36
37
  if (!('headerTextColor' in value) || value['headerTextColor'] === undefined)
37
38
  return false;
39
+ if (!('brandingTheme' in value) || value['brandingTheme'] === undefined)
40
+ return false;
38
41
  return true;
39
42
  }
40
43
  export function GetPortalFromJSON(json) {
@@ -54,6 +57,7 @@ export function GetPortalFromJSONTyped(json, ignoreDiscriminator) {
54
57
  'faviconUrl': json['favicon_url'] == null ? undefined : json['favicon_url'],
55
58
  'headerBackgroundColor': json['header_background_color'],
56
59
  'headerTextColor': json['header_text_color'],
60
+ 'brandingTheme': PortalBrandThemeV1FromJSON(json['branding_theme']),
57
61
  'baseType': json['base_type'] == null ? undefined : json['base_type'],
58
62
  };
59
63
  }
@@ -74,6 +78,7 @@ export function GetPortalToJSONTyped(value, ignoreDiscriminator = false) {
74
78
  'favicon_url': value['faviconUrl'],
75
79
  'header_background_color': value['headerBackgroundColor'],
76
80
  'header_text_color': value['headerTextColor'],
81
+ 'branding_theme': PortalBrandThemeV1ToJSON(value['brandingTheme']),
77
82
  'base_type': value['baseType'],
78
83
  };
79
84
  }
@@ -9,6 +9,7 @@
9
9
  * https://openapi-generator.tech
10
10
  * Do not edit the class manually.
11
11
  */
12
+ import type { PortalBrandThemeV1 } from './PortalBrandThemeV1';
12
13
  /**
13
14
  * Public portal branding resolved from the browser host.
14
15
  * @export
@@ -46,17 +47,25 @@ export interface GetPublicPortalBranding {
46
47
  */
47
48
  faviconUrl: string | null;
48
49
  /**
49
- *
50
+ * Deprecated compatibility alias for branding_theme.colors.header_background.
50
51
  * @type {string}
51
52
  * @memberof GetPublicPortalBranding
53
+ * @deprecated
52
54
  */
53
55
  headerBackgroundColor: string;
54
56
  /**
55
- *
57
+ * Deprecated compatibility alias for branding_theme.colors.header_foreground.
56
58
  * @type {string}
57
59
  * @memberof GetPublicPortalBranding
60
+ * @deprecated
58
61
  */
59
62
  headerTextColor: string;
63
+ /**
64
+ *
65
+ * @type {PortalBrandThemeV1}
66
+ * @memberof GetPublicPortalBranding
67
+ */
68
+ brandingTheme: PortalBrandThemeV1;
60
69
  }
61
70
  /**
62
71
  * Check if a given object implements the GetPublicPortalBranding interface.
@@ -11,6 +11,7 @@
11
11
  * https://openapi-generator.tech
12
12
  * Do not edit the class manually.
13
13
  */
14
+ import { PortalBrandThemeV1FromJSON, PortalBrandThemeV1ToJSON, } from './PortalBrandThemeV1';
14
15
  /**
15
16
  * Check if a given object implements the GetPublicPortalBranding interface.
16
17
  */
@@ -29,6 +30,8 @@ export function instanceOfGetPublicPortalBranding(value) {
29
30
  return false;
30
31
  if (!('headerTextColor' in value) || value['headerTextColor'] === undefined)
31
32
  return false;
33
+ if (!('brandingTheme' in value) || value['brandingTheme'] === undefined)
34
+ return false;
32
35
  return true;
33
36
  }
34
37
  export function GetPublicPortalBrandingFromJSON(json) {
@@ -46,6 +49,7 @@ export function GetPublicPortalBrandingFromJSONTyped(json, ignoreDiscriminator)
46
49
  'faviconUrl': json['favicon_url'],
47
50
  'headerBackgroundColor': json['header_background_color'],
48
51
  'headerTextColor': json['header_text_color'],
52
+ 'brandingTheme': PortalBrandThemeV1FromJSON(json['branding_theme']),
49
53
  };
50
54
  }
51
55
  export function GetPublicPortalBrandingToJSON(json) {
@@ -63,5 +67,6 @@ export function GetPublicPortalBrandingToJSONTyped(value, ignoreDiscriminator =
63
67
  'favicon_url': value['faviconUrl'],
64
68
  'header_background_color': value['headerBackgroundColor'],
65
69
  'header_text_color': value['headerTextColor'],
70
+ 'branding_theme': PortalBrandThemeV1ToJSON(value['brandingTheme']),
66
71
  };
67
72
  }