@easyedu/js-lsm-api 1.40.0 → 1.41.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.
@@ -68,6 +68,7 @@ docs/GetPortalBasicReporting.md
68
68
  docs/GetPortalBasicReportingCertificates.md
69
69
  docs/GetPortalBasicReportingPortalInfo.md
70
70
  docs/GetPortalList.md
71
+ docs/GetPortalLogoUpload.md
71
72
  docs/GetPortalStudentReporting.md
72
73
  docs/GetPortalStudentReportingCertificates.md
73
74
  docs/GetPortalStudentReportingPortalInfo.md
@@ -306,6 +307,7 @@ src/models/GetPortalBasicReporting.ts
306
307
  src/models/GetPortalBasicReportingCertificates.ts
307
308
  src/models/GetPortalBasicReportingPortalInfo.ts
308
309
  src/models/GetPortalList.ts
310
+ src/models/GetPortalLogoUpload.ts
309
311
  src/models/GetPortalStudentReporting.ts
310
312
  src/models/GetPortalStudentReportingCertificates.ts
311
313
  src/models/GetPortalStudentReportingPortalInfo.ts
package/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # @easyedu/js-lsm-api@1.40.0
1
+ # @easyedu/js-lsm-api@1.41.0
2
2
 
3
3
  A TypeScript SDK client for the sbzw93t49b.execute-api.us-east-2.amazonaws.com API.
4
4
 
@@ -94,11 +94,13 @@ All URIs are relative to *https://sbzw93t49b.execute-api.us-east-2.amazonaws.com
94
94
  *ModuleApi* | [**postModule**](docs/ModuleApi.md#postmodule) | **POST** /courses/{courseId}/modules | Post a new module
95
95
  *ModuleApi* | [**putModule**](docs/ModuleApi.md#putmodule) | **PUT** /courses/{courseId}/modules/{moduleId} | Update a module by id
96
96
  *OtherApi* | [**getHealth**](docs/OtherApi.md#gethealth) | **GET** /healthcheck | Health check endpoint
97
+ *PortalApi* | [**deletePortalLogo**](docs/PortalApi.md#deleteportallogo) | **DELETE** /portals/{portalId}/branding/logo | Remove the portal logo
97
98
  *PortalApi* | [**getPortalById**](docs/PortalApi.md#getportalbyid) | **GET** /portals/{portalId} | Get a portal by id (can use \'current\' to get the current users selected portal)
98
99
  *PortalApi* | [**getPortalList**](docs/PortalApi.md#getportallist) | **GET** /portals | Get all portals a user has access to
99
100
  *PortalApi* | [**getPortalUsers**](docs/PortalApi.md#getportalusers) | **GET** /portals/{portalId}/users | Get all users for a portal with optional role filtering
100
101
  *PortalApi* | [**inviteUserToPortal**](docs/PortalApi.md#inviteusertoportal) | **POST** /portals/{portalId}/invite | Invite a new user to a portal
101
102
  *PortalApi* | [**postPortal**](docs/PortalApi.md#postportal) | **POST** /portals | Create a new portal as a child of the current selected portal
103
+ *PortalApi* | [**postPortalLogoUpload**](docs/PortalApi.md#postportallogoupload) | **POST** /portals/{portalId}/branding/logo | Upload a logo image for portal branding
102
104
  *PortalApi* | [**putPortalBranding**](docs/PortalApi.md#putportalbranding) | **PUT** /portals/{portalId} | Update portal branding (name, background color, text color)
103
105
  *PortalApi* | [**updateSelectedPortal**](docs/PortalApi.md#updateselectedportal) | **PUT** /portals/{portalId}/selected | Update the users current selected portal. Returns new JWT with updated roles.
104
106
  *QuestionApi* | [**deleteQuestion**](docs/QuestionApi.md#deletequestion) | **DELETE** /questions/{questionId} | Delete a question by ID
@@ -226,6 +228,7 @@ All URIs are relative to *https://sbzw93t49b.execute-api.us-east-2.amazonaws.com
226
228
  - [GetPortalBasicReportingCertificates](docs/GetPortalBasicReportingCertificates.md)
227
229
  - [GetPortalBasicReportingPortalInfo](docs/GetPortalBasicReportingPortalInfo.md)
228
230
  - [GetPortalList](docs/GetPortalList.md)
231
+ - [GetPortalLogoUpload](docs/GetPortalLogoUpload.md)
229
232
  - [GetPortalStudentReporting](docs/GetPortalStudentReporting.md)
230
233
  - [GetPortalStudentReportingCertificates](docs/GetPortalStudentReportingCertificates.md)
231
234
  - [GetPortalStudentReportingPortalInfo](docs/GetPortalStudentReportingPortalInfo.md)
@@ -392,7 +395,7 @@ and is automatically generated by the
392
395
  [OpenAPI Generator](https://openapi-generator.tech) project:
393
396
 
394
397
  - API version: `1.0.0`
395
- - Package version: `1.40.0`
398
+ - Package version: `1.41.0`
396
399
  - Generator version: `7.21.0`
397
400
  - Build package: `org.openapitools.codegen.languages.TypeScriptFetchClientCodegen`
398
401
 
@@ -10,7 +10,10 @@
10
10
  * Do not edit the class manually.
11
11
  */
12
12
  import * as runtime from '../runtime';
13
- import type { GetPortal, GetPortalList, GetPortalUserList, PostPortal, PostPortalInvite, PutPortalBranding } from '../models/index';
13
+ import type { GetPortal, GetPortalList, GetPortalLogoUpload, GetPortalUserList, PostPortal, PostPortalInvite, PutPortalBranding } from '../models/index';
14
+ export interface DeletePortalLogoRequest {
15
+ portalId: string;
16
+ }
14
17
  export interface GetPortalByIdRequest {
15
18
  portalId: string;
16
19
  }
@@ -29,6 +32,10 @@ export interface InviteUserToPortalRequest {
29
32
  export interface PostPortalRequest {
30
33
  postPortal: PostPortal;
31
34
  }
35
+ export interface PostPortalLogoUploadRequest {
36
+ portalId: string;
37
+ file: Blob;
38
+ }
32
39
  export interface PutPortalBrandingRequest {
33
40
  portalId: string;
34
41
  putPortalBranding: PutPortalBranding;
@@ -40,6 +47,18 @@ export interface UpdateSelectedPortalRequest {
40
47
  *
41
48
  */
42
49
  export declare class PortalApi extends runtime.BaseAPI {
50
+ /**
51
+ * Creates request options for deletePortalLogo without sending the request
52
+ */
53
+ deletePortalLogoRequestOpts(requestParameters: DeletePortalLogoRequest): Promise<runtime.RequestOpts>;
54
+ /**
55
+ * Remove the portal logo
56
+ */
57
+ deletePortalLogoRaw(requestParameters: DeletePortalLogoRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>>;
58
+ /**
59
+ * Remove the portal logo
60
+ */
61
+ deletePortalLogo(requestParameters: DeletePortalLogoRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void>;
43
62
  /**
44
63
  * Creates request options for getPortalById without sending the request
45
64
  */
@@ -100,6 +119,18 @@ export declare class PortalApi extends runtime.BaseAPI {
100
119
  * Create a new portal as a child of the current selected portal
101
120
  */
102
121
  postPortal(requestParameters: PostPortalRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetPortal>;
122
+ /**
123
+ * Creates request options for postPortalLogoUpload without sending the request
124
+ */
125
+ postPortalLogoUploadRequestOpts(requestParameters: PostPortalLogoUploadRequest): Promise<runtime.RequestOpts>;
126
+ /**
127
+ * Upload a logo image for portal branding
128
+ */
129
+ postPortalLogoUploadRaw(requestParameters: PostPortalLogoUploadRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetPortalLogoUpload>>;
130
+ /**
131
+ * Upload a logo image for portal branding
132
+ */
133
+ postPortalLogoUpload(requestParameters: PostPortalLogoUploadRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetPortalLogoUpload>;
103
134
  /**
104
135
  * Creates request options for putPortalBranding without sending the request
105
136
  */
@@ -29,6 +29,44 @@ const index_1 = require("../models/index");
29
29
  *
30
30
  */
31
31
  class PortalApi extends runtime.BaseAPI {
32
+ /**
33
+ * Creates request options for deletePortalLogo without sending the request
34
+ */
35
+ deletePortalLogoRequestOpts(requestParameters) {
36
+ return __awaiter(this, void 0, void 0, function* () {
37
+ if (requestParameters['portalId'] == null) {
38
+ throw new runtime.RequiredError('portalId', 'Required parameter "portalId" was null or undefined when calling deletePortalLogo().');
39
+ }
40
+ const queryParameters = {};
41
+ const headerParameters = {};
42
+ let urlPath = `/portals/{portalId}/branding/logo`;
43
+ urlPath = urlPath.replace(`{${"portalId"}}`, encodeURIComponent(String(requestParameters['portalId'])));
44
+ return {
45
+ path: urlPath,
46
+ method: 'DELETE',
47
+ headers: headerParameters,
48
+ query: queryParameters,
49
+ };
50
+ });
51
+ }
52
+ /**
53
+ * Remove the portal logo
54
+ */
55
+ deletePortalLogoRaw(requestParameters, initOverrides) {
56
+ return __awaiter(this, void 0, void 0, function* () {
57
+ const requestOptions = yield this.deletePortalLogoRequestOpts(requestParameters);
58
+ const response = yield this.request(requestOptions, initOverrides);
59
+ return new runtime.VoidApiResponse(response);
60
+ });
61
+ }
62
+ /**
63
+ * Remove the portal logo
64
+ */
65
+ deletePortalLogo(requestParameters, initOverrides) {
66
+ return __awaiter(this, void 0, void 0, function* () {
67
+ yield this.deletePortalLogoRaw(requestParameters, initOverrides);
68
+ });
69
+ }
32
70
  /**
33
71
  * Creates request options for getPortalById without sending the request
34
72
  */
@@ -240,6 +278,67 @@ class PortalApi extends runtime.BaseAPI {
240
278
  return yield response.value();
241
279
  });
242
280
  }
281
+ /**
282
+ * Creates request options for postPortalLogoUpload without sending the request
283
+ */
284
+ postPortalLogoUploadRequestOpts(requestParameters) {
285
+ return __awaiter(this, void 0, void 0, function* () {
286
+ if (requestParameters['portalId'] == null) {
287
+ throw new runtime.RequiredError('portalId', 'Required parameter "portalId" was null or undefined when calling postPortalLogoUpload().');
288
+ }
289
+ if (requestParameters['file'] == null) {
290
+ throw new runtime.RequiredError('file', 'Required parameter "file" was null or undefined when calling postPortalLogoUpload().');
291
+ }
292
+ const queryParameters = {};
293
+ const headerParameters = {};
294
+ const consumes = [
295
+ { contentType: 'multipart/form-data' },
296
+ ];
297
+ // @ts-ignore: canConsumeForm may be unused
298
+ const canConsumeForm = runtime.canConsumeForm(consumes);
299
+ let formParams;
300
+ let useForm = false;
301
+ // use FormData to transmit files using content-type "multipart/form-data"
302
+ useForm = canConsumeForm;
303
+ if (useForm) {
304
+ formParams = new FormData();
305
+ }
306
+ else {
307
+ formParams = new URLSearchParams();
308
+ }
309
+ if (requestParameters['file'] != null) {
310
+ formParams.append('file', requestParameters['file']);
311
+ }
312
+ let urlPath = `/portals/{portalId}/branding/logo`;
313
+ urlPath = urlPath.replace(`{${"portalId"}}`, encodeURIComponent(String(requestParameters['portalId'])));
314
+ return {
315
+ path: urlPath,
316
+ method: 'POST',
317
+ headers: headerParameters,
318
+ query: queryParameters,
319
+ body: formParams,
320
+ };
321
+ });
322
+ }
323
+ /**
324
+ * Upload a logo image for portal branding
325
+ */
326
+ postPortalLogoUploadRaw(requestParameters, initOverrides) {
327
+ return __awaiter(this, void 0, void 0, function* () {
328
+ const requestOptions = yield this.postPortalLogoUploadRequestOpts(requestParameters);
329
+ const response = yield this.request(requestOptions, initOverrides);
330
+ return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.GetPortalLogoUploadFromJSON)(jsonValue));
331
+ });
332
+ }
333
+ /**
334
+ * Upload a logo image for portal branding
335
+ */
336
+ postPortalLogoUpload(requestParameters, initOverrides) {
337
+ return __awaiter(this, void 0, void 0, function* () {
338
+ const response = yield this.postPortalLogoUploadRaw(requestParameters, initOverrides);
339
+ return yield response.value();
340
+ });
341
+ }
243
342
  /**
244
343
  * Creates request options for putPortalBranding without sending the request
245
344
  */
@@ -10,7 +10,10 @@
10
10
  * Do not edit the class manually.
11
11
  */
12
12
  import * as runtime from '../runtime';
13
- import type { GetPortal, GetPortalList, GetPortalUserList, PostPortal, PostPortalInvite, PutPortalBranding } from '../models/index';
13
+ import type { GetPortal, GetPortalList, GetPortalLogoUpload, GetPortalUserList, PostPortal, PostPortalInvite, PutPortalBranding } from '../models/index';
14
+ export interface DeletePortalLogoRequest {
15
+ portalId: string;
16
+ }
14
17
  export interface GetPortalByIdRequest {
15
18
  portalId: string;
16
19
  }
@@ -29,6 +32,10 @@ export interface InviteUserToPortalRequest {
29
32
  export interface PostPortalRequest {
30
33
  postPortal: PostPortal;
31
34
  }
35
+ export interface PostPortalLogoUploadRequest {
36
+ portalId: string;
37
+ file: Blob;
38
+ }
32
39
  export interface PutPortalBrandingRequest {
33
40
  portalId: string;
34
41
  putPortalBranding: PutPortalBranding;
@@ -40,6 +47,18 @@ export interface UpdateSelectedPortalRequest {
40
47
  *
41
48
  */
42
49
  export declare class PortalApi extends runtime.BaseAPI {
50
+ /**
51
+ * Creates request options for deletePortalLogo without sending the request
52
+ */
53
+ deletePortalLogoRequestOpts(requestParameters: DeletePortalLogoRequest): Promise<runtime.RequestOpts>;
54
+ /**
55
+ * Remove the portal logo
56
+ */
57
+ deletePortalLogoRaw(requestParameters: DeletePortalLogoRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>>;
58
+ /**
59
+ * Remove the portal logo
60
+ */
61
+ deletePortalLogo(requestParameters: DeletePortalLogoRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void>;
43
62
  /**
44
63
  * Creates request options for getPortalById without sending the request
45
64
  */
@@ -100,6 +119,18 @@ export declare class PortalApi extends runtime.BaseAPI {
100
119
  * Create a new portal as a child of the current selected portal
101
120
  */
102
121
  postPortal(requestParameters: PostPortalRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetPortal>;
122
+ /**
123
+ * Creates request options for postPortalLogoUpload without sending the request
124
+ */
125
+ postPortalLogoUploadRequestOpts(requestParameters: PostPortalLogoUploadRequest): Promise<runtime.RequestOpts>;
126
+ /**
127
+ * Upload a logo image for portal branding
128
+ */
129
+ postPortalLogoUploadRaw(requestParameters: PostPortalLogoUploadRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetPortalLogoUpload>>;
130
+ /**
131
+ * Upload a logo image for portal branding
132
+ */
133
+ postPortalLogoUpload(requestParameters: PostPortalLogoUploadRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetPortalLogoUpload>;
103
134
  /**
104
135
  * Creates request options for putPortalBranding without sending the request
105
136
  */
@@ -21,11 +21,49 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
21
21
  });
22
22
  };
23
23
  import * as runtime from '../runtime';
24
- import { GetPortalFromJSON, GetPortalListFromJSON, GetPortalUserListFromJSON, PostPortalToJSON, PostPortalInviteToJSON, PutPortalBrandingToJSON, } from '../models/index';
24
+ import { GetPortalFromJSON, GetPortalListFromJSON, GetPortalLogoUploadFromJSON, GetPortalUserListFromJSON, PostPortalToJSON, PostPortalInviteToJSON, PutPortalBrandingToJSON, } from '../models/index';
25
25
  /**
26
26
  *
27
27
  */
28
28
  export class PortalApi extends runtime.BaseAPI {
29
+ /**
30
+ * Creates request options for deletePortalLogo without sending the request
31
+ */
32
+ deletePortalLogoRequestOpts(requestParameters) {
33
+ return __awaiter(this, void 0, void 0, function* () {
34
+ if (requestParameters['portalId'] == null) {
35
+ throw new runtime.RequiredError('portalId', 'Required parameter "portalId" was null or undefined when calling deletePortalLogo().');
36
+ }
37
+ const queryParameters = {};
38
+ const headerParameters = {};
39
+ let urlPath = `/portals/{portalId}/branding/logo`;
40
+ urlPath = urlPath.replace(`{${"portalId"}}`, encodeURIComponent(String(requestParameters['portalId'])));
41
+ return {
42
+ path: urlPath,
43
+ method: 'DELETE',
44
+ headers: headerParameters,
45
+ query: queryParameters,
46
+ };
47
+ });
48
+ }
49
+ /**
50
+ * Remove the portal logo
51
+ */
52
+ deletePortalLogoRaw(requestParameters, initOverrides) {
53
+ return __awaiter(this, void 0, void 0, function* () {
54
+ const requestOptions = yield this.deletePortalLogoRequestOpts(requestParameters);
55
+ const response = yield this.request(requestOptions, initOverrides);
56
+ return new runtime.VoidApiResponse(response);
57
+ });
58
+ }
59
+ /**
60
+ * Remove the portal logo
61
+ */
62
+ deletePortalLogo(requestParameters, initOverrides) {
63
+ return __awaiter(this, void 0, void 0, function* () {
64
+ yield this.deletePortalLogoRaw(requestParameters, initOverrides);
65
+ });
66
+ }
29
67
  /**
30
68
  * Creates request options for getPortalById without sending the request
31
69
  */
@@ -237,6 +275,67 @@ export class PortalApi extends runtime.BaseAPI {
237
275
  return yield response.value();
238
276
  });
239
277
  }
278
+ /**
279
+ * Creates request options for postPortalLogoUpload without sending the request
280
+ */
281
+ postPortalLogoUploadRequestOpts(requestParameters) {
282
+ return __awaiter(this, void 0, void 0, function* () {
283
+ if (requestParameters['portalId'] == null) {
284
+ throw new runtime.RequiredError('portalId', 'Required parameter "portalId" was null or undefined when calling postPortalLogoUpload().');
285
+ }
286
+ if (requestParameters['file'] == null) {
287
+ throw new runtime.RequiredError('file', 'Required parameter "file" was null or undefined when calling postPortalLogoUpload().');
288
+ }
289
+ const queryParameters = {};
290
+ const headerParameters = {};
291
+ const consumes = [
292
+ { contentType: 'multipart/form-data' },
293
+ ];
294
+ // @ts-ignore: canConsumeForm may be unused
295
+ const canConsumeForm = runtime.canConsumeForm(consumes);
296
+ let formParams;
297
+ let useForm = false;
298
+ // use FormData to transmit files using content-type "multipart/form-data"
299
+ useForm = canConsumeForm;
300
+ if (useForm) {
301
+ formParams = new FormData();
302
+ }
303
+ else {
304
+ formParams = new URLSearchParams();
305
+ }
306
+ if (requestParameters['file'] != null) {
307
+ formParams.append('file', requestParameters['file']);
308
+ }
309
+ let urlPath = `/portals/{portalId}/branding/logo`;
310
+ urlPath = urlPath.replace(`{${"portalId"}}`, encodeURIComponent(String(requestParameters['portalId'])));
311
+ return {
312
+ path: urlPath,
313
+ method: 'POST',
314
+ headers: headerParameters,
315
+ query: queryParameters,
316
+ body: formParams,
317
+ };
318
+ });
319
+ }
320
+ /**
321
+ * Upload a logo image for portal branding
322
+ */
323
+ postPortalLogoUploadRaw(requestParameters, initOverrides) {
324
+ return __awaiter(this, void 0, void 0, function* () {
325
+ const requestOptions = yield this.postPortalLogoUploadRequestOpts(requestParameters);
326
+ const response = yield this.request(requestOptions, initOverrides);
327
+ return new runtime.JSONApiResponse(response, (jsonValue) => GetPortalLogoUploadFromJSON(jsonValue));
328
+ });
329
+ }
330
+ /**
331
+ * Upload a logo image for portal branding
332
+ */
333
+ postPortalLogoUpload(requestParameters, initOverrides) {
334
+ return __awaiter(this, void 0, void 0, function* () {
335
+ const response = yield this.postPortalLogoUploadRaw(requestParameters, initOverrides);
336
+ return yield response.value();
337
+ });
338
+ }
240
339
  /**
241
340
  * Creates request options for putPortalBranding without sending the request
242
341
  */
@@ -38,7 +38,7 @@ export interface GetPortal {
38
38
  * @type {string}
39
39
  * @memberof GetPortal
40
40
  */
41
- logoUrl: string;
41
+ logoUrl?: string | null;
42
42
  /**
43
43
  *
44
44
  * @type {string}
@@ -31,8 +31,6 @@ export function instanceOfGetPortal(value) {
31
31
  return false;
32
32
  if (!('name' in value) || value['name'] === undefined)
33
33
  return false;
34
- if (!('logoUrl' in value) || value['logoUrl'] === undefined)
35
- return false;
36
34
  if (!('headerBackgroundColor' in value) || value['headerBackgroundColor'] === undefined)
37
35
  return false;
38
36
  if (!('headerTextColor' in value) || value['headerTextColor'] === undefined)
@@ -50,7 +48,7 @@ export function GetPortalFromJSONTyped(json, ignoreDiscriminator) {
50
48
  'id': json['id'],
51
49
  'name': json['name'],
52
50
  'parentPortalId': json['parent_portal_id'] == null ? undefined : json['parent_portal_id'],
53
- 'logoUrl': json['logo_url'],
51
+ 'logoUrl': json['logo_url'] == null ? undefined : json['logo_url'],
54
52
  'headerBackgroundColor': json['header_background_color'],
55
53
  'headerTextColor': json['header_text_color'],
56
54
  'baseType': json['base_type'] == null ? undefined : json['base_type'],
@@ -0,0 +1,32 @@
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
+ *
14
+ * @export
15
+ * @interface GetPortalLogoUpload
16
+ */
17
+ export interface GetPortalLogoUpload {
18
+ /**
19
+ * Presigned URL for the uploaded logo image
20
+ * @type {string}
21
+ * @memberof GetPortalLogoUpload
22
+ */
23
+ logoUrl: string;
24
+ }
25
+ /**
26
+ * Check if a given object implements the GetPortalLogoUpload interface.
27
+ */
28
+ export declare function instanceOfGetPortalLogoUpload(value: object): value is GetPortalLogoUpload;
29
+ export declare function GetPortalLogoUploadFromJSON(json: any): GetPortalLogoUpload;
30
+ export declare function GetPortalLogoUploadFromJSONTyped(json: any, ignoreDiscriminator: boolean): GetPortalLogoUpload;
31
+ export declare function GetPortalLogoUploadToJSON(json: any): GetPortalLogoUpload;
32
+ export declare function GetPortalLogoUploadToJSONTyped(value?: GetPortalLogoUpload | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,43 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * LMS API
5
+ * LMS API
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ /**
15
+ * Check if a given object implements the GetPortalLogoUpload interface.
16
+ */
17
+ export function instanceOfGetPortalLogoUpload(value) {
18
+ if (!('logoUrl' in value) || value['logoUrl'] === undefined)
19
+ return false;
20
+ return true;
21
+ }
22
+ export function GetPortalLogoUploadFromJSON(json) {
23
+ return GetPortalLogoUploadFromJSONTyped(json, false);
24
+ }
25
+ export function GetPortalLogoUploadFromJSONTyped(json, ignoreDiscriminator) {
26
+ if (json == null) {
27
+ return json;
28
+ }
29
+ return {
30
+ 'logoUrl': json['logo_url'],
31
+ };
32
+ }
33
+ export function GetPortalLogoUploadToJSON(json) {
34
+ return GetPortalLogoUploadToJSONTyped(json, false);
35
+ }
36
+ export function GetPortalLogoUploadToJSONTyped(value, ignoreDiscriminator = false) {
37
+ if (value == null) {
38
+ return value;
39
+ }
40
+ return {
41
+ 'logo_url': value['logoUrl'],
42
+ };
43
+ }
@@ -61,6 +61,7 @@ export * from './GetPortalBasicReporting';
61
61
  export * from './GetPortalBasicReportingCertificates';
62
62
  export * from './GetPortalBasicReportingPortalInfo';
63
63
  export * from './GetPortalList';
64
+ export * from './GetPortalLogoUpload';
64
65
  export * from './GetPortalStudentReporting';
65
66
  export * from './GetPortalStudentReportingCertificates';
66
67
  export * from './GetPortalStudentReportingPortalInfo';
@@ -63,6 +63,7 @@ export * from './GetPortalBasicReporting';
63
63
  export * from './GetPortalBasicReportingCertificates';
64
64
  export * from './GetPortalBasicReportingPortalInfo';
65
65
  export * from './GetPortalList';
66
+ export * from './GetPortalLogoUpload';
66
67
  export * from './GetPortalStudentReporting';
67
68
  export * from './GetPortalStudentReportingCertificates';
68
69
  export * from './GetPortalStudentReportingPortalInfo';
@@ -38,7 +38,7 @@ export interface GetPortal {
38
38
  * @type {string}
39
39
  * @memberof GetPortal
40
40
  */
41
- logoUrl: string;
41
+ logoUrl?: string | null;
42
42
  /**
43
43
  *
44
44
  * @type {string}
@@ -39,8 +39,6 @@ function instanceOfGetPortal(value) {
39
39
  return false;
40
40
  if (!('name' in value) || value['name'] === undefined)
41
41
  return false;
42
- if (!('logoUrl' in value) || value['logoUrl'] === undefined)
43
- return false;
44
42
  if (!('headerBackgroundColor' in value) || value['headerBackgroundColor'] === undefined)
45
43
  return false;
46
44
  if (!('headerTextColor' in value) || value['headerTextColor'] === undefined)
@@ -58,7 +56,7 @@ function GetPortalFromJSONTyped(json, ignoreDiscriminator) {
58
56
  'id': json['id'],
59
57
  'name': json['name'],
60
58
  'parentPortalId': json['parent_portal_id'] == null ? undefined : json['parent_portal_id'],
61
- 'logoUrl': json['logo_url'],
59
+ 'logoUrl': json['logo_url'] == null ? undefined : json['logo_url'],
62
60
  'headerBackgroundColor': json['header_background_color'],
63
61
  'headerTextColor': json['header_text_color'],
64
62
  'baseType': json['base_type'] == null ? undefined : json['base_type'],
@@ -0,0 +1,32 @@
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
+ *
14
+ * @export
15
+ * @interface GetPortalLogoUpload
16
+ */
17
+ export interface GetPortalLogoUpload {
18
+ /**
19
+ * Presigned URL for the uploaded logo image
20
+ * @type {string}
21
+ * @memberof GetPortalLogoUpload
22
+ */
23
+ logoUrl: string;
24
+ }
25
+ /**
26
+ * Check if a given object implements the GetPortalLogoUpload interface.
27
+ */
28
+ export declare function instanceOfGetPortalLogoUpload(value: object): value is GetPortalLogoUpload;
29
+ export declare function GetPortalLogoUploadFromJSON(json: any): GetPortalLogoUpload;
30
+ export declare function GetPortalLogoUploadFromJSONTyped(json: any, ignoreDiscriminator: boolean): GetPortalLogoUpload;
31
+ export declare function GetPortalLogoUploadToJSON(json: any): GetPortalLogoUpload;
32
+ export declare function GetPortalLogoUploadToJSONTyped(value?: GetPortalLogoUpload | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * LMS API
6
+ * LMS API
7
+ *
8
+ * The version of the OpenAPI document: 1.0.0
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.instanceOfGetPortalLogoUpload = instanceOfGetPortalLogoUpload;
17
+ exports.GetPortalLogoUploadFromJSON = GetPortalLogoUploadFromJSON;
18
+ exports.GetPortalLogoUploadFromJSONTyped = GetPortalLogoUploadFromJSONTyped;
19
+ exports.GetPortalLogoUploadToJSON = GetPortalLogoUploadToJSON;
20
+ exports.GetPortalLogoUploadToJSONTyped = GetPortalLogoUploadToJSONTyped;
21
+ /**
22
+ * Check if a given object implements the GetPortalLogoUpload interface.
23
+ */
24
+ function instanceOfGetPortalLogoUpload(value) {
25
+ if (!('logoUrl' in value) || value['logoUrl'] === undefined)
26
+ return false;
27
+ return true;
28
+ }
29
+ function GetPortalLogoUploadFromJSON(json) {
30
+ return GetPortalLogoUploadFromJSONTyped(json, false);
31
+ }
32
+ function GetPortalLogoUploadFromJSONTyped(json, ignoreDiscriminator) {
33
+ if (json == null) {
34
+ return json;
35
+ }
36
+ return {
37
+ 'logoUrl': json['logo_url'],
38
+ };
39
+ }
40
+ function GetPortalLogoUploadToJSON(json) {
41
+ return GetPortalLogoUploadToJSONTyped(json, false);
42
+ }
43
+ function GetPortalLogoUploadToJSONTyped(value, ignoreDiscriminator = false) {
44
+ if (value == null) {
45
+ return value;
46
+ }
47
+ return {
48
+ 'logo_url': value['logoUrl'],
49
+ };
50
+ }
@@ -61,6 +61,7 @@ export * from './GetPortalBasicReporting';
61
61
  export * from './GetPortalBasicReportingCertificates';
62
62
  export * from './GetPortalBasicReportingPortalInfo';
63
63
  export * from './GetPortalList';
64
+ export * from './GetPortalLogoUpload';
64
65
  export * from './GetPortalStudentReporting';
65
66
  export * from './GetPortalStudentReportingCertificates';
66
67
  export * from './GetPortalStudentReportingPortalInfo';
@@ -79,6 +79,7 @@ __exportStar(require("./GetPortalBasicReporting"), exports);
79
79
  __exportStar(require("./GetPortalBasicReportingCertificates"), exports);
80
80
  __exportStar(require("./GetPortalBasicReportingPortalInfo"), exports);
81
81
  __exportStar(require("./GetPortalList"), exports);
82
+ __exportStar(require("./GetPortalLogoUpload"), exports);
82
83
  __exportStar(require("./GetPortalStudentReporting"), exports);
83
84
  __exportStar(require("./GetPortalStudentReportingCertificates"), exports);
84
85
  __exportStar(require("./GetPortalStudentReportingPortalInfo"), exports);
@@ -0,0 +1,34 @@
1
+
2
+ # GetPortalLogoUpload
3
+
4
+
5
+ ## Properties
6
+
7
+ Name | Type
8
+ ------------ | -------------
9
+ `logoUrl` | string
10
+
11
+ ## Example
12
+
13
+ ```typescript
14
+ import type { GetPortalLogoUpload } from '@easyedu/js-lsm-api'
15
+
16
+ // TODO: Update the object below with actual values
17
+ const example = {
18
+ "logoUrl": null,
19
+ } satisfies GetPortalLogoUpload
20
+
21
+ console.log(example)
22
+
23
+ // Convert the instance to a JSON string
24
+ const exampleJSON: string = JSON.stringify(example)
25
+ console.log(exampleJSON)
26
+
27
+ // Parse the JSON string back to an object
28
+ const exampleParsed = JSON.parse(exampleJSON) as GetPortalLogoUpload
29
+ console.log(exampleParsed)
30
+ ```
31
+
32
+ [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
33
+
34
+
package/docs/PortalApi.md CHANGED
@@ -4,16 +4,84 @@ All URIs are relative to *https://sbzw93t49b.execute-api.us-east-2.amazonaws.com
4
4
 
5
5
  | Method | HTTP request | Description |
6
6
  |------------- | ------------- | -------------|
7
+ | [**deletePortalLogo**](PortalApi.md#deleteportallogo) | **DELETE** /portals/{portalId}/branding/logo | Remove the portal logo |
7
8
  | [**getPortalById**](PortalApi.md#getportalbyid) | **GET** /portals/{portalId} | Get a portal by id (can use \&#39;current\&#39; to get the current users selected portal) |
8
9
  | [**getPortalList**](PortalApi.md#getportallist) | **GET** /portals | Get all portals a user has access to |
9
10
  | [**getPortalUsers**](PortalApi.md#getportalusers) | **GET** /portals/{portalId}/users | Get all users for a portal with optional role filtering |
10
11
  | [**inviteUserToPortal**](PortalApi.md#inviteusertoportal) | **POST** /portals/{portalId}/invite | Invite a new user to a portal |
11
12
  | [**postPortal**](PortalApi.md#postportal) | **POST** /portals | Create a new portal as a child of the current selected portal |
13
+ | [**postPortalLogoUpload**](PortalApi.md#postportallogoupload) | **POST** /portals/{portalId}/branding/logo | Upload a logo image for portal branding |
12
14
  | [**putPortalBranding**](PortalApi.md#putportalbranding) | **PUT** /portals/{portalId} | Update portal branding (name, background color, text color) |
13
15
  | [**updateSelectedPortal**](PortalApi.md#updateselectedportal) | **PUT** /portals/{portalId}/selected | Update the users current selected portal. Returns new JWT with updated roles. |
14
16
 
15
17
 
16
18
 
19
+ ## deletePortalLogo
20
+
21
+ > deletePortalLogo(portalId)
22
+
23
+ Remove the portal logo
24
+
25
+ ### Example
26
+
27
+ ```ts
28
+ import {
29
+ Configuration,
30
+ PortalApi,
31
+ } from '@easyedu/js-lsm-api';
32
+ import type { DeletePortalLogoRequest } from '@easyedu/js-lsm-api';
33
+
34
+ async function example() {
35
+ console.log("🚀 Testing @easyedu/js-lsm-api SDK...");
36
+ const api = new PortalApi();
37
+
38
+ const body = {
39
+ // string
40
+ portalId: portalId_example,
41
+ } satisfies DeletePortalLogoRequest;
42
+
43
+ try {
44
+ const data = await api.deletePortalLogo(body);
45
+ console.log(data);
46
+ } catch (error) {
47
+ console.error(error);
48
+ }
49
+ }
50
+
51
+ // Run the test
52
+ example().catch(console.error);
53
+ ```
54
+
55
+ ### Parameters
56
+
57
+
58
+ | Name | Type | Description | Notes |
59
+ |------------- | ------------- | ------------- | -------------|
60
+ | **portalId** | `string` | | [Defaults to `undefined`] |
61
+
62
+ ### Return type
63
+
64
+ `void` (Empty response body)
65
+
66
+ ### Authorization
67
+
68
+ No authorization required
69
+
70
+ ### HTTP request headers
71
+
72
+ - **Content-Type**: Not defined
73
+ - **Accept**: Not defined
74
+
75
+
76
+ ### HTTP response details
77
+ | Status code | Description | Response headers |
78
+ |-------------|-------------|------------------|
79
+ | **204** | Logo removed successfully | - |
80
+ | **404** | Portal not found | - |
81
+
82
+ [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
83
+
84
+
17
85
  ## getPortalById
18
86
 
19
87
  > GetPortal getPortalById(portalId)
@@ -353,6 +421,76 @@ No authorization required
353
421
  [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
354
422
 
355
423
 
424
+ ## postPortalLogoUpload
425
+
426
+ > GetPortalLogoUpload postPortalLogoUpload(portalId, file)
427
+
428
+ Upload a logo image for portal branding
429
+
430
+ ### Example
431
+
432
+ ```ts
433
+ import {
434
+ Configuration,
435
+ PortalApi,
436
+ } from '@easyedu/js-lsm-api';
437
+ import type { PostPortalLogoUploadRequest } from '@easyedu/js-lsm-api';
438
+
439
+ async function example() {
440
+ console.log("🚀 Testing @easyedu/js-lsm-api SDK...");
441
+ const api = new PortalApi();
442
+
443
+ const body = {
444
+ // string
445
+ portalId: portalId_example,
446
+ // Blob | Logo image file (PNG, JPEG, or SVG). Max 5MB.
447
+ file: BINARY_DATA_HERE,
448
+ } satisfies PostPortalLogoUploadRequest;
449
+
450
+ try {
451
+ const data = await api.postPortalLogoUpload(body);
452
+ console.log(data);
453
+ } catch (error) {
454
+ console.error(error);
455
+ }
456
+ }
457
+
458
+ // Run the test
459
+ example().catch(console.error);
460
+ ```
461
+
462
+ ### Parameters
463
+
464
+
465
+ | Name | Type | Description | Notes |
466
+ |------------- | ------------- | ------------- | -------------|
467
+ | **portalId** | `string` | | [Defaults to `undefined`] |
468
+ | **file** | `Blob` | Logo image file (PNG, JPEG, or SVG). Max 5MB. | [Defaults to `undefined`] |
469
+
470
+ ### Return type
471
+
472
+ [**GetPortalLogoUpload**](GetPortalLogoUpload.md)
473
+
474
+ ### Authorization
475
+
476
+ No authorization required
477
+
478
+ ### HTTP request headers
479
+
480
+ - **Content-Type**: `multipart/form-data`
481
+ - **Accept**: `application/json`
482
+
483
+
484
+ ### HTTP response details
485
+ | Status code | Description | Response headers |
486
+ |-------------|-------------|------------------|
487
+ | **200** | Logo uploaded successfully | - |
488
+ | **400** | Invalid file type or file too large | - |
489
+ | **404** | Portal not found | - |
490
+
491
+ [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
492
+
493
+
356
494
  ## putPortalBranding
357
495
 
358
496
  > GetPortal putPortalBranding(portalId, putPortalBranding)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@easyedu/js-lsm-api",
3
- "version": "1.40.0",
3
+ "version": "1.41.0",
4
4
  "description": "OpenAPI client for @easyedu/js-lsm-api",
5
5
  "author": "OpenAPI-Generator",
6
6
  "repository": {
@@ -17,6 +17,7 @@ import * as runtime from '../runtime';
17
17
  import type {
18
18
  GetPortal,
19
19
  GetPortalList,
20
+ GetPortalLogoUpload,
20
21
  GetPortalUserList,
21
22
  PostPortal,
22
23
  PostPortalInvite,
@@ -27,6 +28,8 @@ import {
27
28
  GetPortalToJSON,
28
29
  GetPortalListFromJSON,
29
30
  GetPortalListToJSON,
31
+ GetPortalLogoUploadFromJSON,
32
+ GetPortalLogoUploadToJSON,
30
33
  GetPortalUserListFromJSON,
31
34
  GetPortalUserListToJSON,
32
35
  PostPortalFromJSON,
@@ -37,6 +40,10 @@ import {
37
40
  PutPortalBrandingToJSON,
38
41
  } from '../models/index';
39
42
 
43
+ export interface DeletePortalLogoRequest {
44
+ portalId: string;
45
+ }
46
+
40
47
  export interface GetPortalByIdRequest {
41
48
  portalId: string;
42
49
  }
@@ -59,6 +66,11 @@ export interface PostPortalRequest {
59
66
  postPortal: PostPortal;
60
67
  }
61
68
 
69
+ export interface PostPortalLogoUploadRequest {
70
+ portalId: string;
71
+ file: Blob;
72
+ }
73
+
62
74
  export interface PutPortalBrandingRequest {
63
75
  portalId: string;
64
76
  putPortalBranding: PutPortalBranding;
@@ -73,6 +85,50 @@ export interface UpdateSelectedPortalRequest {
73
85
  */
74
86
  export class PortalApi extends runtime.BaseAPI {
75
87
 
88
+ /**
89
+ * Creates request options for deletePortalLogo without sending the request
90
+ */
91
+ async deletePortalLogoRequestOpts(requestParameters: DeletePortalLogoRequest): Promise<runtime.RequestOpts> {
92
+ if (requestParameters['portalId'] == null) {
93
+ throw new runtime.RequiredError(
94
+ 'portalId',
95
+ 'Required parameter "portalId" was null or undefined when calling deletePortalLogo().'
96
+ );
97
+ }
98
+
99
+ const queryParameters: any = {};
100
+
101
+ const headerParameters: runtime.HTTPHeaders = {};
102
+
103
+
104
+ let urlPath = `/portals/{portalId}/branding/logo`;
105
+ urlPath = urlPath.replace(`{${"portalId"}}`, encodeURIComponent(String(requestParameters['portalId'])));
106
+
107
+ return {
108
+ path: urlPath,
109
+ method: 'DELETE',
110
+ headers: headerParameters,
111
+ query: queryParameters,
112
+ };
113
+ }
114
+
115
+ /**
116
+ * Remove the portal logo
117
+ */
118
+ async deletePortalLogoRaw(requestParameters: DeletePortalLogoRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
119
+ const requestOptions = await this.deletePortalLogoRequestOpts(requestParameters);
120
+ const response = await this.request(requestOptions, initOverrides);
121
+
122
+ return new runtime.VoidApiResponse(response);
123
+ }
124
+
125
+ /**
126
+ * Remove the portal logo
127
+ */
128
+ async deletePortalLogo(requestParameters: DeletePortalLogoRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
129
+ await this.deletePortalLogoRaw(requestParameters, initOverrides);
130
+ }
131
+
76
132
  /**
77
133
  * Creates request options for getPortalById without sending the request
78
134
  */
@@ -321,6 +377,79 @@ export class PortalApi extends runtime.BaseAPI {
321
377
  return await response.value();
322
378
  }
323
379
 
380
+ /**
381
+ * Creates request options for postPortalLogoUpload without sending the request
382
+ */
383
+ async postPortalLogoUploadRequestOpts(requestParameters: PostPortalLogoUploadRequest): Promise<runtime.RequestOpts> {
384
+ if (requestParameters['portalId'] == null) {
385
+ throw new runtime.RequiredError(
386
+ 'portalId',
387
+ 'Required parameter "portalId" was null or undefined when calling postPortalLogoUpload().'
388
+ );
389
+ }
390
+
391
+ if (requestParameters['file'] == null) {
392
+ throw new runtime.RequiredError(
393
+ 'file',
394
+ 'Required parameter "file" was null or undefined when calling postPortalLogoUpload().'
395
+ );
396
+ }
397
+
398
+ const queryParameters: any = {};
399
+
400
+ const headerParameters: runtime.HTTPHeaders = {};
401
+
402
+ const consumes: runtime.Consume[] = [
403
+ { contentType: 'multipart/form-data' },
404
+ ];
405
+ // @ts-ignore: canConsumeForm may be unused
406
+ const canConsumeForm = runtime.canConsumeForm(consumes);
407
+
408
+ let formParams: { append(param: string, value: any): any };
409
+ let useForm = false;
410
+ // use FormData to transmit files using content-type "multipart/form-data"
411
+ useForm = canConsumeForm;
412
+ if (useForm) {
413
+ formParams = new FormData();
414
+ } else {
415
+ formParams = new URLSearchParams();
416
+ }
417
+
418
+ if (requestParameters['file'] != null) {
419
+ formParams.append('file', requestParameters['file'] as any);
420
+ }
421
+
422
+
423
+ let urlPath = `/portals/{portalId}/branding/logo`;
424
+ urlPath = urlPath.replace(`{${"portalId"}}`, encodeURIComponent(String(requestParameters['portalId'])));
425
+
426
+ return {
427
+ path: urlPath,
428
+ method: 'POST',
429
+ headers: headerParameters,
430
+ query: queryParameters,
431
+ body: formParams,
432
+ };
433
+ }
434
+
435
+ /**
436
+ * Upload a logo image for portal branding
437
+ */
438
+ async postPortalLogoUploadRaw(requestParameters: PostPortalLogoUploadRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetPortalLogoUpload>> {
439
+ const requestOptions = await this.postPortalLogoUploadRequestOpts(requestParameters);
440
+ const response = await this.request(requestOptions, initOverrides);
441
+
442
+ return new runtime.JSONApiResponse(response, (jsonValue) => GetPortalLogoUploadFromJSON(jsonValue));
443
+ }
444
+
445
+ /**
446
+ * Upload a logo image for portal branding
447
+ */
448
+ async postPortalLogoUpload(requestParameters: PostPortalLogoUploadRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetPortalLogoUpload> {
449
+ const response = await this.postPortalLogoUploadRaw(requestParameters, initOverrides);
450
+ return await response.value();
451
+ }
452
+
324
453
  /**
325
454
  * Creates request options for putPortalBranding without sending the request
326
455
  */
@@ -42,7 +42,7 @@ export interface GetPortal {
42
42
  * @type {string}
43
43
  * @memberof GetPortal
44
44
  */
45
- logoUrl: string;
45
+ logoUrl?: string | null;
46
46
  /**
47
47
  *
48
48
  * @type {string}
@@ -85,7 +85,6 @@ export type GetPortalBaseTypeEnum = typeof GetPortalBaseTypeEnum[keyof typeof Ge
85
85
  export function instanceOfGetPortal(value: object): value is GetPortal {
86
86
  if (!('id' in value) || value['id'] === undefined) return false;
87
87
  if (!('name' in value) || value['name'] === undefined) return false;
88
- if (!('logoUrl' in value) || value['logoUrl'] === undefined) return false;
89
88
  if (!('headerBackgroundColor' in value) || value['headerBackgroundColor'] === undefined) return false;
90
89
  if (!('headerTextColor' in value) || value['headerTextColor'] === undefined) return false;
91
90
  return true;
@@ -104,7 +103,7 @@ export function GetPortalFromJSONTyped(json: any, ignoreDiscriminator: boolean):
104
103
  'id': json['id'],
105
104
  'name': json['name'],
106
105
  'parentPortalId': json['parent_portal_id'] == null ? undefined : json['parent_portal_id'],
107
- 'logoUrl': json['logo_url'],
106
+ 'logoUrl': json['logo_url'] == null ? undefined : json['logo_url'],
108
107
  'headerBackgroundColor': json['header_background_color'],
109
108
  'headerTextColor': json['header_text_color'],
110
109
  'baseType': json['base_type'] == null ? undefined : json['base_type'],
@@ -0,0 +1,66 @@
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 GetPortalLogoUpload
20
+ */
21
+ export interface GetPortalLogoUpload {
22
+ /**
23
+ * Presigned URL for the uploaded logo image
24
+ * @type {string}
25
+ * @memberof GetPortalLogoUpload
26
+ */
27
+ logoUrl: string;
28
+ }
29
+
30
+ /**
31
+ * Check if a given object implements the GetPortalLogoUpload interface.
32
+ */
33
+ export function instanceOfGetPortalLogoUpload(value: object): value is GetPortalLogoUpload {
34
+ if (!('logoUrl' in value) || value['logoUrl'] === undefined) return false;
35
+ return true;
36
+ }
37
+
38
+ export function GetPortalLogoUploadFromJSON(json: any): GetPortalLogoUpload {
39
+ return GetPortalLogoUploadFromJSONTyped(json, false);
40
+ }
41
+
42
+ export function GetPortalLogoUploadFromJSONTyped(json: any, ignoreDiscriminator: boolean): GetPortalLogoUpload {
43
+ if (json == null) {
44
+ return json;
45
+ }
46
+ return {
47
+
48
+ 'logoUrl': json['logo_url'],
49
+ };
50
+ }
51
+
52
+ export function GetPortalLogoUploadToJSON(json: any): GetPortalLogoUpload {
53
+ return GetPortalLogoUploadToJSONTyped(json, false);
54
+ }
55
+
56
+ export function GetPortalLogoUploadToJSONTyped(value?: GetPortalLogoUpload | null, ignoreDiscriminator: boolean = false): any {
57
+ if (value == null) {
58
+ return value;
59
+ }
60
+
61
+ return {
62
+
63
+ 'logo_url': value['logoUrl'],
64
+ };
65
+ }
66
+
@@ -63,6 +63,7 @@ export * from './GetPortalBasicReporting';
63
63
  export * from './GetPortalBasicReportingCertificates';
64
64
  export * from './GetPortalBasicReportingPortalInfo';
65
65
  export * from './GetPortalList';
66
+ export * from './GetPortalLogoUpload';
66
67
  export * from './GetPortalStudentReporting';
67
68
  export * from './GetPortalStudentReportingCertificates';
68
69
  export * from './GetPortalStudentReportingPortalInfo';