@easyedu/js-lsm-api 1.77.0 → 1.79.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 +22 -0
  2. package/README.md +18 -2
  3. package/dist/apis/CourseApi.d.ts +18 -0
  4. package/dist/apis/CourseApi.js +49 -0
  5. package/dist/apis/PortalApi.d.ts +67 -0
  6. package/dist/apis/PortalApi.js +177 -0
  7. package/dist/esm/apis/CourseApi.d.ts +18 -0
  8. package/dist/esm/apis/CourseApi.js +49 -0
  9. package/dist/esm/apis/PortalApi.d.ts +67 -0
  10. package/dist/esm/apis/PortalApi.js +177 -0
  11. package/dist/esm/models/GetPortalUserFieldValues.d.ts +53 -0
  12. package/dist/esm/models/GetPortalUserFieldValues.js +58 -0
  13. package/dist/esm/models/PortalUserFieldConfig.d.ts +40 -0
  14. package/dist/esm/models/PortalUserFieldConfig.js +49 -0
  15. package/dist/esm/models/PortalUserFieldDefinition.d.ts +108 -0
  16. package/dist/esm/models/PortalUserFieldDefinition.js +90 -0
  17. package/dist/esm/models/PortalUserFieldGroup.d.ts +62 -0
  18. package/dist/esm/models/PortalUserFieldGroup.js +59 -0
  19. package/dist/esm/models/PortalUserFieldMissingRequired.d.ts +56 -0
  20. package/dist/esm/models/PortalUserFieldMissingRequired.js +55 -0
  21. package/dist/esm/models/PortalUserFieldOption.d.ts +56 -0
  22. package/dist/esm/models/PortalUserFieldOption.js +57 -0
  23. package/dist/esm/models/PortalUserFieldValueField.d.ts +96 -0
  24. package/dist/esm/models/PortalUserFieldValueField.js +86 -0
  25. package/dist/esm/models/PortalUserFieldValueGroup.d.ts +57 -0
  26. package/dist/esm/models/PortalUserFieldValueGroup.js +60 -0
  27. package/dist/esm/models/PortalUserFieldValueInput.d.ts +38 -0
  28. package/dist/esm/models/PortalUserFieldValueInput.js +47 -0
  29. package/dist/esm/models/PostCourseResume.d.ts +93 -0
  30. package/dist/esm/models/PostCourseResume.js +82 -0
  31. package/dist/esm/models/PutPortalUserFieldValues.d.ts +33 -0
  32. package/dist/esm/models/PutPortalUserFieldValues.js +44 -0
  33. package/dist/esm/models/index.d.ts +11 -0
  34. package/dist/esm/models/index.js +11 -0
  35. package/dist/models/GetPortalUserFieldValues.d.ts +53 -0
  36. package/dist/models/GetPortalUserFieldValues.js +65 -0
  37. package/dist/models/PortalUserFieldConfig.d.ts +40 -0
  38. package/dist/models/PortalUserFieldConfig.js +56 -0
  39. package/dist/models/PortalUserFieldDefinition.d.ts +108 -0
  40. package/dist/models/PortalUserFieldDefinition.js +98 -0
  41. package/dist/models/PortalUserFieldGroup.d.ts +62 -0
  42. package/dist/models/PortalUserFieldGroup.js +66 -0
  43. package/dist/models/PortalUserFieldMissingRequired.d.ts +56 -0
  44. package/dist/models/PortalUserFieldMissingRequired.js +62 -0
  45. package/dist/models/PortalUserFieldOption.d.ts +56 -0
  46. package/dist/models/PortalUserFieldOption.js +64 -0
  47. package/dist/models/PortalUserFieldValueField.d.ts +96 -0
  48. package/dist/models/PortalUserFieldValueField.js +94 -0
  49. package/dist/models/PortalUserFieldValueGroup.d.ts +57 -0
  50. package/dist/models/PortalUserFieldValueGroup.js +67 -0
  51. package/dist/models/PortalUserFieldValueInput.d.ts +38 -0
  52. package/dist/models/PortalUserFieldValueInput.js +54 -0
  53. package/dist/models/PostCourseResume.d.ts +93 -0
  54. package/dist/models/PostCourseResume.js +89 -0
  55. package/dist/models/PutPortalUserFieldValues.d.ts +33 -0
  56. package/dist/models/PutPortalUserFieldValues.js +51 -0
  57. package/dist/models/index.d.ts +11 -0
  58. package/dist/models/index.js +11 -0
  59. package/docs/CourseApi.md +72 -0
  60. package/docs/GetPortalUserFieldValues.md +40 -0
  61. package/docs/PortalApi.md +287 -0
  62. package/docs/PortalUserFieldConfig.md +36 -0
  63. package/docs/PortalUserFieldDefinition.md +54 -0
  64. package/docs/PortalUserFieldGroup.md +44 -0
  65. package/docs/PortalUserFieldMissingRequired.md +42 -0
  66. package/docs/PortalUserFieldOption.md +42 -0
  67. package/docs/PortalUserFieldValueField.md +50 -0
  68. package/docs/PortalUserFieldValueGroup.md +42 -0
  69. package/docs/PortalUserFieldValueInput.md +36 -0
  70. package/docs/PostCourseResume.md +55 -0
  71. package/docs/PutPortalUserFieldValues.md +34 -0
  72. package/package.json +1 -1
  73. package/src/apis/CourseApi.ts +63 -0
  74. package/src/apis/PortalApi.ts +251 -0
  75. package/src/models/GetPortalUserFieldValues.ts +115 -0
  76. package/src/models/PortalUserFieldConfig.ts +90 -0
  77. package/src/models/PortalUserFieldDefinition.ts +178 -0
  78. package/src/models/PortalUserFieldGroup.ts +109 -0
  79. package/src/models/PortalUserFieldMissingRequired.ts +100 -0
  80. package/src/models/PortalUserFieldOption.ts +101 -0
  81. package/src/models/PortalUserFieldValueField.ts +162 -0
  82. package/src/models/PortalUserFieldValueGroup.ts +110 -0
  83. package/src/models/PortalUserFieldValueInput.ts +75 -0
  84. package/src/models/PostCourseResume.ts +165 -0
  85. package/src/models/PutPortalUserFieldValues.ts +74 -0
  86. package/src/models/index.ts +11 -0
@@ -33,6 +33,11 @@ import {
33
33
  GetPortalLogoUploadFromJSON,
34
34
  GetPortalLogoUploadToJSON,
35
35
  } from '../models/GetPortalLogoUpload';
36
+ import {
37
+ type GetPortalUserFieldValues,
38
+ GetPortalUserFieldValuesFromJSON,
39
+ GetPortalUserFieldValuesToJSON,
40
+ } from '../models/GetPortalUserFieldValues';
36
41
  import {
37
42
  type GetPortalUserList,
38
43
  GetPortalUserListFromJSON,
@@ -43,6 +48,11 @@ import {
43
48
  GetPublicPortalBrandingFromJSON,
44
49
  GetPublicPortalBrandingToJSON,
45
50
  } from '../models/GetPublicPortalBranding';
51
+ import {
52
+ type PortalUserFieldConfig,
53
+ PortalUserFieldConfigFromJSON,
54
+ PortalUserFieldConfigToJSON,
55
+ } from '../models/PortalUserFieldConfig';
46
56
  import {
47
57
  type PostPortal,
48
58
  PostPortalFromJSON,
@@ -58,6 +68,11 @@ import {
58
68
  PutPortalBrandingFromJSON,
59
69
  PutPortalBrandingToJSON,
60
70
  } from '../models/PutPortalBranding';
71
+ import {
72
+ type PutPortalUserFieldValues,
73
+ PutPortalUserFieldValuesFromJSON,
74
+ PutPortalUserFieldValuesToJSON,
75
+ } from '../models/PutPortalUserFieldValues';
61
76
  import {
62
77
  type UpdateSelectedPortalResponse,
63
78
  UpdateSelectedPortalResponseFromJSON,
@@ -84,6 +99,15 @@ export interface GetPortalLogoAssetRequest {
84
99
  portalId: string;
85
100
  }
86
101
 
102
+ export interface GetPortalUserFieldConfigRequest {
103
+ portalId: string;
104
+ }
105
+
106
+ export interface GetPortalUserFieldValuesRequest {
107
+ portalId: string;
108
+ userId: string;
109
+ }
110
+
87
111
  export interface GetPortalUsersRequest {
88
112
  portalId: string;
89
113
  type?: GetPortalUsersTypeEnum;
@@ -117,6 +141,17 @@ export interface PutPortalBrandingRequest {
117
141
  putPortalBranding: PutPortalBranding;
118
142
  }
119
143
 
144
+ export interface PutPortalUserFieldConfigRequest {
145
+ portalId: string;
146
+ portalUserFieldConfig: PortalUserFieldConfig;
147
+ }
148
+
149
+ export interface PutPortalUserFieldValuesRequest {
150
+ portalId: string;
151
+ userId: string;
152
+ putPortalUserFieldValues: PutPortalUserFieldValues;
153
+ }
154
+
120
155
  export interface RemovePortalUserRequest {
121
156
  portalId: string;
122
157
  userId: string;
@@ -391,6 +426,104 @@ export class PortalApi extends runtime.BaseAPI {
391
426
  return await response.value();
392
427
  }
393
428
 
429
+ /**
430
+ * Creates request options for getPortalUserFieldConfig without sending the request
431
+ */
432
+ async getPortalUserFieldConfigRequestOpts(requestParameters: GetPortalUserFieldConfigRequest): Promise<runtime.RequestOpts> {
433
+ if (requestParameters['portalId'] == null) {
434
+ throw new runtime.RequiredError(
435
+ 'portalId',
436
+ 'Required parameter "portalId" was null or undefined when calling getPortalUserFieldConfig().'
437
+ );
438
+ }
439
+
440
+ const queryParameters: any = {};
441
+
442
+ const headerParameters: runtime.HTTPHeaders = {};
443
+
444
+
445
+ let urlPath = `/portals/{portalId}/user-field-config`;
446
+ urlPath = urlPath.replace('{portalId}', encodeURIComponent(String(requestParameters['portalId'])));
447
+
448
+ return {
449
+ path: urlPath,
450
+ method: 'GET',
451
+ headers: headerParameters,
452
+ query: queryParameters,
453
+ };
454
+ }
455
+
456
+ /**
457
+ * Get portal user field configuration
458
+ */
459
+ async getPortalUserFieldConfigRaw(requestParameters: GetPortalUserFieldConfigRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PortalUserFieldConfig>> {
460
+ const requestOptions = await this.getPortalUserFieldConfigRequestOpts(requestParameters);
461
+ const response = await this.request(requestOptions, initOverrides);
462
+
463
+ return new runtime.JSONApiResponse(response, (jsonValue) => PortalUserFieldConfigFromJSON(jsonValue));
464
+ }
465
+
466
+ /**
467
+ * Get portal user field configuration
468
+ */
469
+ async getPortalUserFieldConfig(requestParameters: GetPortalUserFieldConfigRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PortalUserFieldConfig> {
470
+ const response = await this.getPortalUserFieldConfigRaw(requestParameters, initOverrides);
471
+ return await response.value();
472
+ }
473
+
474
+ /**
475
+ * Creates request options for getPortalUserFieldValues without sending the request
476
+ */
477
+ async getPortalUserFieldValuesRequestOpts(requestParameters: GetPortalUserFieldValuesRequest): Promise<runtime.RequestOpts> {
478
+ if (requestParameters['portalId'] == null) {
479
+ throw new runtime.RequiredError(
480
+ 'portalId',
481
+ 'Required parameter "portalId" was null or undefined when calling getPortalUserFieldValues().'
482
+ );
483
+ }
484
+
485
+ if (requestParameters['userId'] == null) {
486
+ throw new runtime.RequiredError(
487
+ 'userId',
488
+ 'Required parameter "userId" was null or undefined when calling getPortalUserFieldValues().'
489
+ );
490
+ }
491
+
492
+ const queryParameters: any = {};
493
+
494
+ const headerParameters: runtime.HTTPHeaders = {};
495
+
496
+
497
+ let urlPath = `/portals/{portalId}/users/{userId}/user-field-values`;
498
+ urlPath = urlPath.replace('{portalId}', encodeURIComponent(String(requestParameters['portalId'])));
499
+ urlPath = urlPath.replace('{userId}', encodeURIComponent(String(requestParameters['userId'])));
500
+
501
+ return {
502
+ path: urlPath,
503
+ method: 'GET',
504
+ headers: headerParameters,
505
+ query: queryParameters,
506
+ };
507
+ }
508
+
509
+ /**
510
+ * Get a user\'s portal field values and completion status
511
+ */
512
+ async getPortalUserFieldValuesRaw(requestParameters: GetPortalUserFieldValuesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetPortalUserFieldValues>> {
513
+ const requestOptions = await this.getPortalUserFieldValuesRequestOpts(requestParameters);
514
+ const response = await this.request(requestOptions, initOverrides);
515
+
516
+ return new runtime.JSONApiResponse(response, (jsonValue) => GetPortalUserFieldValuesFromJSON(jsonValue));
517
+ }
518
+
519
+ /**
520
+ * Get a user\'s portal field values and completion status
521
+ */
522
+ async getPortalUserFieldValues(requestParameters: GetPortalUserFieldValuesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetPortalUserFieldValues> {
523
+ const response = await this.getPortalUserFieldValuesRaw(requestParameters, initOverrides);
524
+ return await response.value();
525
+ }
526
+
394
527
  /**
395
528
  * Creates request options for getPortalUsers without sending the request
396
529
  */
@@ -875,6 +1008,124 @@ export class PortalApi extends runtime.BaseAPI {
875
1008
  return await response.value();
876
1009
  }
877
1010
 
1011
+ /**
1012
+ * Creates request options for putPortalUserFieldConfig without sending the request
1013
+ */
1014
+ async putPortalUserFieldConfigRequestOpts(requestParameters: PutPortalUserFieldConfigRequest): Promise<runtime.RequestOpts> {
1015
+ if (requestParameters['portalId'] == null) {
1016
+ throw new runtime.RequiredError(
1017
+ 'portalId',
1018
+ 'Required parameter "portalId" was null or undefined when calling putPortalUserFieldConfig().'
1019
+ );
1020
+ }
1021
+
1022
+ if (requestParameters['portalUserFieldConfig'] == null) {
1023
+ throw new runtime.RequiredError(
1024
+ 'portalUserFieldConfig',
1025
+ 'Required parameter "portalUserFieldConfig" was null or undefined when calling putPortalUserFieldConfig().'
1026
+ );
1027
+ }
1028
+
1029
+ const queryParameters: any = {};
1030
+
1031
+ const headerParameters: runtime.HTTPHeaders = {};
1032
+
1033
+ headerParameters['Content-Type'] = 'application/json';
1034
+
1035
+
1036
+ let urlPath = `/portals/{portalId}/user-field-config`;
1037
+ urlPath = urlPath.replace('{portalId}', encodeURIComponent(String(requestParameters['portalId'])));
1038
+
1039
+ return {
1040
+ path: urlPath,
1041
+ method: 'PUT',
1042
+ headers: headerParameters,
1043
+ query: queryParameters,
1044
+ body: PortalUserFieldConfigToJSON(requestParameters['portalUserFieldConfig']),
1045
+ };
1046
+ }
1047
+
1048
+ /**
1049
+ * Replace portal user field configuration
1050
+ */
1051
+ async putPortalUserFieldConfigRaw(requestParameters: PutPortalUserFieldConfigRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<PortalUserFieldConfig>> {
1052
+ const requestOptions = await this.putPortalUserFieldConfigRequestOpts(requestParameters);
1053
+ const response = await this.request(requestOptions, initOverrides);
1054
+
1055
+ return new runtime.JSONApiResponse(response, (jsonValue) => PortalUserFieldConfigFromJSON(jsonValue));
1056
+ }
1057
+
1058
+ /**
1059
+ * Replace portal user field configuration
1060
+ */
1061
+ async putPortalUserFieldConfig(requestParameters: PutPortalUserFieldConfigRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PortalUserFieldConfig> {
1062
+ const response = await this.putPortalUserFieldConfigRaw(requestParameters, initOverrides);
1063
+ return await response.value();
1064
+ }
1065
+
1066
+ /**
1067
+ * Creates request options for putPortalUserFieldValues without sending the request
1068
+ */
1069
+ async putPortalUserFieldValuesRequestOpts(requestParameters: PutPortalUserFieldValuesRequest): Promise<runtime.RequestOpts> {
1070
+ if (requestParameters['portalId'] == null) {
1071
+ throw new runtime.RequiredError(
1072
+ 'portalId',
1073
+ 'Required parameter "portalId" was null or undefined when calling putPortalUserFieldValues().'
1074
+ );
1075
+ }
1076
+
1077
+ if (requestParameters['userId'] == null) {
1078
+ throw new runtime.RequiredError(
1079
+ 'userId',
1080
+ 'Required parameter "userId" was null or undefined when calling putPortalUserFieldValues().'
1081
+ );
1082
+ }
1083
+
1084
+ if (requestParameters['putPortalUserFieldValues'] == null) {
1085
+ throw new runtime.RequiredError(
1086
+ 'putPortalUserFieldValues',
1087
+ 'Required parameter "putPortalUserFieldValues" was null or undefined when calling putPortalUserFieldValues().'
1088
+ );
1089
+ }
1090
+
1091
+ const queryParameters: any = {};
1092
+
1093
+ const headerParameters: runtime.HTTPHeaders = {};
1094
+
1095
+ headerParameters['Content-Type'] = 'application/json';
1096
+
1097
+
1098
+ let urlPath = `/portals/{portalId}/users/{userId}/user-field-values`;
1099
+ urlPath = urlPath.replace('{portalId}', encodeURIComponent(String(requestParameters['portalId'])));
1100
+ urlPath = urlPath.replace('{userId}', encodeURIComponent(String(requestParameters['userId'])));
1101
+
1102
+ return {
1103
+ path: urlPath,
1104
+ method: 'PUT',
1105
+ headers: headerParameters,
1106
+ query: queryParameters,
1107
+ body: PutPortalUserFieldValuesToJSON(requestParameters['putPortalUserFieldValues']),
1108
+ };
1109
+ }
1110
+
1111
+ /**
1112
+ * Bulk upsert a user\'s portal field values
1113
+ */
1114
+ async putPortalUserFieldValuesRaw(requestParameters: PutPortalUserFieldValuesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetPortalUserFieldValues>> {
1115
+ const requestOptions = await this.putPortalUserFieldValuesRequestOpts(requestParameters);
1116
+ const response = await this.request(requestOptions, initOverrides);
1117
+
1118
+ return new runtime.JSONApiResponse(response, (jsonValue) => GetPortalUserFieldValuesFromJSON(jsonValue));
1119
+ }
1120
+
1121
+ /**
1122
+ * Bulk upsert a user\'s portal field values
1123
+ */
1124
+ async putPortalUserFieldValues(requestParameters: PutPortalUserFieldValuesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetPortalUserFieldValues> {
1125
+ const response = await this.putPortalUserFieldValuesRaw(requestParameters, initOverrides);
1126
+ return await response.value();
1127
+ }
1128
+
878
1129
  /**
879
1130
  * Creates request options for removePortalUser without sending the request
880
1131
  */
@@ -0,0 +1,115 @@
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 { PortalUserFieldValueField } from './PortalUserFieldValueField';
17
+ import {
18
+ PortalUserFieldValueFieldFromJSON,
19
+ PortalUserFieldValueFieldFromJSONTyped,
20
+ PortalUserFieldValueFieldToJSON,
21
+ PortalUserFieldValueFieldToJSONTyped,
22
+ } from './PortalUserFieldValueField';
23
+ import type { PortalUserFieldMissingRequired } from './PortalUserFieldMissingRequired';
24
+ import {
25
+ PortalUserFieldMissingRequiredFromJSON,
26
+ PortalUserFieldMissingRequiredFromJSONTyped,
27
+ PortalUserFieldMissingRequiredToJSON,
28
+ PortalUserFieldMissingRequiredToJSONTyped,
29
+ } from './PortalUserFieldMissingRequired';
30
+ import type { PortalUserFieldValueGroup } from './PortalUserFieldValueGroup';
31
+ import {
32
+ PortalUserFieldValueGroupFromJSON,
33
+ PortalUserFieldValueGroupFromJSONTyped,
34
+ PortalUserFieldValueGroupToJSON,
35
+ PortalUserFieldValueGroupToJSONTyped,
36
+ } from './PortalUserFieldValueGroup';
37
+
38
+ /**
39
+ *
40
+ * @export
41
+ * @interface GetPortalUserFieldValues
42
+ */
43
+ export interface GetPortalUserFieldValues {
44
+ /**
45
+ *
46
+ * @type {boolean}
47
+ * @memberof GetPortalUserFieldValues
48
+ */
49
+ complete: boolean;
50
+ /**
51
+ *
52
+ * @type {Array<PortalUserFieldMissingRequired>}
53
+ * @memberof GetPortalUserFieldValues
54
+ */
55
+ missingRequiredFields: Array<PortalUserFieldMissingRequired>;
56
+ /**
57
+ *
58
+ * @type {Array<PortalUserFieldValueGroup>}
59
+ * @memberof GetPortalUserFieldValues
60
+ */
61
+ groups: Array<PortalUserFieldValueGroup>;
62
+ /**
63
+ *
64
+ * @type {Array<PortalUserFieldValueField>}
65
+ * @memberof GetPortalUserFieldValues
66
+ */
67
+ ungroupedFields: Array<PortalUserFieldValueField>;
68
+ }
69
+
70
+ /**
71
+ * Check if a given object implements the GetPortalUserFieldValues interface.
72
+ */
73
+ export function instanceOfGetPortalUserFieldValues(value: object): value is GetPortalUserFieldValues {
74
+ if (!('complete' in value) || value['complete'] === undefined) return false;
75
+ if (!('missingRequiredFields' in value) || value['missingRequiredFields'] === undefined) return false;
76
+ if (!('groups' in value) || value['groups'] === undefined) return false;
77
+ if (!('ungroupedFields' in value) || value['ungroupedFields'] === undefined) return false;
78
+ return true;
79
+ }
80
+
81
+ export function GetPortalUserFieldValuesFromJSON(json: any): GetPortalUserFieldValues {
82
+ return GetPortalUserFieldValuesFromJSONTyped(json, false);
83
+ }
84
+
85
+ export function GetPortalUserFieldValuesFromJSONTyped(json: any, ignoreDiscriminator: boolean): GetPortalUserFieldValues {
86
+ if (json == null) {
87
+ return json;
88
+ }
89
+ return {
90
+
91
+ 'complete': json['complete'],
92
+ 'missingRequiredFields': ((json['missing_required_fields'] as Array<any>).map(PortalUserFieldMissingRequiredFromJSON)),
93
+ 'groups': ((json['groups'] as Array<any>).map(PortalUserFieldValueGroupFromJSON)),
94
+ 'ungroupedFields': ((json['ungrouped_fields'] as Array<any>).map(PortalUserFieldValueFieldFromJSON)),
95
+ };
96
+ }
97
+
98
+ export function GetPortalUserFieldValuesToJSON(json: any): GetPortalUserFieldValues {
99
+ return GetPortalUserFieldValuesToJSONTyped(json, false);
100
+ }
101
+
102
+ export function GetPortalUserFieldValuesToJSONTyped(value?: GetPortalUserFieldValues | null, ignoreDiscriminator: boolean = false): any {
103
+ if (value == null) {
104
+ return value;
105
+ }
106
+
107
+ return {
108
+
109
+ 'complete': value['complete'],
110
+ 'missing_required_fields': ((value['missingRequiredFields'] as Array<any>).map(PortalUserFieldMissingRequiredToJSON)),
111
+ 'groups': ((value['groups'] as Array<any>).map(PortalUserFieldValueGroupToJSON)),
112
+ 'ungrouped_fields': ((value['ungroupedFields'] as Array<any>).map(PortalUserFieldValueFieldToJSON)),
113
+ };
114
+ }
115
+
@@ -0,0 +1,90 @@
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 { PortalUserFieldDefinition } from './PortalUserFieldDefinition';
17
+ import {
18
+ PortalUserFieldDefinitionFromJSON,
19
+ PortalUserFieldDefinitionFromJSONTyped,
20
+ PortalUserFieldDefinitionToJSON,
21
+ PortalUserFieldDefinitionToJSONTyped,
22
+ } from './PortalUserFieldDefinition';
23
+ import type { PortalUserFieldGroup } from './PortalUserFieldGroup';
24
+ import {
25
+ PortalUserFieldGroupFromJSON,
26
+ PortalUserFieldGroupFromJSONTyped,
27
+ PortalUserFieldGroupToJSON,
28
+ PortalUserFieldGroupToJSONTyped,
29
+ } from './PortalUserFieldGroup';
30
+
31
+ /**
32
+ *
33
+ * @export
34
+ * @interface PortalUserFieldConfig
35
+ */
36
+ export interface PortalUserFieldConfig {
37
+ /**
38
+ *
39
+ * @type {Array<PortalUserFieldGroup>}
40
+ * @memberof PortalUserFieldConfig
41
+ */
42
+ groups: Array<PortalUserFieldGroup>;
43
+ /**
44
+ *
45
+ * @type {Array<PortalUserFieldDefinition>}
46
+ * @memberof PortalUserFieldConfig
47
+ */
48
+ fields: Array<PortalUserFieldDefinition>;
49
+ }
50
+
51
+ /**
52
+ * Check if a given object implements the PortalUserFieldConfig interface.
53
+ */
54
+ export function instanceOfPortalUserFieldConfig(value: object): value is PortalUserFieldConfig {
55
+ if (!('groups' in value) || value['groups'] === undefined) return false;
56
+ if (!('fields' in value) || value['fields'] === undefined) return false;
57
+ return true;
58
+ }
59
+
60
+ export function PortalUserFieldConfigFromJSON(json: any): PortalUserFieldConfig {
61
+ return PortalUserFieldConfigFromJSONTyped(json, false);
62
+ }
63
+
64
+ export function PortalUserFieldConfigFromJSONTyped(json: any, ignoreDiscriminator: boolean): PortalUserFieldConfig {
65
+ if (json == null) {
66
+ return json;
67
+ }
68
+ return {
69
+
70
+ 'groups': ((json['groups'] as Array<any>).map(PortalUserFieldGroupFromJSON)),
71
+ 'fields': ((json['fields'] as Array<any>).map(PortalUserFieldDefinitionFromJSON)),
72
+ };
73
+ }
74
+
75
+ export function PortalUserFieldConfigToJSON(json: any): PortalUserFieldConfig {
76
+ return PortalUserFieldConfigToJSONTyped(json, false);
77
+ }
78
+
79
+ export function PortalUserFieldConfigToJSONTyped(value?: PortalUserFieldConfig | null, ignoreDiscriminator: boolean = false): any {
80
+ if (value == null) {
81
+ return value;
82
+ }
83
+
84
+ return {
85
+
86
+ 'groups': ((value['groups'] as Array<any>).map(PortalUserFieldGroupToJSON)),
87
+ 'fields': ((value['fields'] as Array<any>).map(PortalUserFieldDefinitionToJSON)),
88
+ };
89
+ }
90
+
@@ -0,0 +1,178 @@
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 { PortalUserFieldOption } from './PortalUserFieldOption';
17
+ import {
18
+ PortalUserFieldOptionFromJSON,
19
+ PortalUserFieldOptionFromJSONTyped,
20
+ PortalUserFieldOptionToJSON,
21
+ PortalUserFieldOptionToJSONTyped,
22
+ } from './PortalUserFieldOption';
23
+
24
+ /**
25
+ *
26
+ * @export
27
+ * @interface PortalUserFieldDefinition
28
+ */
29
+ export interface PortalUserFieldDefinition {
30
+ /**
31
+ * Existing field external ID. Omit on PUT to match by key or create.
32
+ * @type {string}
33
+ * @memberof PortalUserFieldDefinition
34
+ */
35
+ id?: string | null;
36
+ /**
37
+ * External ID or key of the group this field belongs to.
38
+ * @type {string}
39
+ * @memberof PortalUserFieldDefinition
40
+ */
41
+ groupId?: string | null;
42
+ /**
43
+ *
44
+ * @type {string}
45
+ * @memberof PortalUserFieldDefinition
46
+ */
47
+ key: string;
48
+ /**
49
+ *
50
+ * @type {string}
51
+ * @memberof PortalUserFieldDefinition
52
+ */
53
+ label: string;
54
+ /**
55
+ *
56
+ * @type {string}
57
+ * @memberof PortalUserFieldDefinition
58
+ */
59
+ description?: string | null;
60
+ /**
61
+ *
62
+ * @type {PortalUserFieldDefinitionFieldTypeEnum}
63
+ * @memberof PortalUserFieldDefinition
64
+ */
65
+ fieldType: PortalUserFieldDefinitionFieldTypeEnum;
66
+ /**
67
+ *
68
+ * @type {boolean}
69
+ * @memberof PortalUserFieldDefinition
70
+ */
71
+ isRequired: boolean;
72
+ /**
73
+ *
74
+ * @type {boolean}
75
+ * @memberof PortalUserFieldDefinition
76
+ */
77
+ isActive: boolean;
78
+ /**
79
+ *
80
+ * @type {number}
81
+ * @memberof PortalUserFieldDefinition
82
+ */
83
+ displayOrder: number;
84
+ /**
85
+ *
86
+ * @type {object}
87
+ * @memberof PortalUserFieldDefinition
88
+ */
89
+ validation?: object | null;
90
+ /**
91
+ *
92
+ * @type {Array<PortalUserFieldOption>}
93
+ * @memberof PortalUserFieldDefinition
94
+ */
95
+ options: Array<PortalUserFieldOption>;
96
+ }
97
+
98
+
99
+ /**
100
+ * @export
101
+ */
102
+ export const PortalUserFieldDefinitionFieldTypeEnum = {
103
+ Text: 'text',
104
+ Textarea: 'textarea',
105
+ Email: 'email',
106
+ Phone: 'phone',
107
+ Number: 'number',
108
+ Boolean: 'boolean',
109
+ Date: 'date',
110
+ Select: 'select',
111
+ MultiSelect: 'multi_select'
112
+ } as const;
113
+ export type PortalUserFieldDefinitionFieldTypeEnum = typeof PortalUserFieldDefinitionFieldTypeEnum[keyof typeof PortalUserFieldDefinitionFieldTypeEnum];
114
+
115
+
116
+ /**
117
+ * Check if a given object implements the PortalUserFieldDefinition interface.
118
+ */
119
+ export function instanceOfPortalUserFieldDefinition(value: object): value is PortalUserFieldDefinition {
120
+ if (!('key' in value) || value['key'] === undefined) return false;
121
+ if (!('label' in value) || value['label'] === undefined) return false;
122
+ if (!('fieldType' in value) || value['fieldType'] === undefined) return false;
123
+ if (!('isRequired' in value) || value['isRequired'] === undefined) return false;
124
+ if (!('isActive' in value) || value['isActive'] === undefined) return false;
125
+ if (!('displayOrder' in value) || value['displayOrder'] === undefined) return false;
126
+ if (!('options' in value) || value['options'] === undefined) return false;
127
+ return true;
128
+ }
129
+
130
+ export function PortalUserFieldDefinitionFromJSON(json: any): PortalUserFieldDefinition {
131
+ return PortalUserFieldDefinitionFromJSONTyped(json, false);
132
+ }
133
+
134
+ export function PortalUserFieldDefinitionFromJSONTyped(json: any, ignoreDiscriminator: boolean): PortalUserFieldDefinition {
135
+ if (json == null) {
136
+ return json;
137
+ }
138
+ return {
139
+
140
+ 'id': json['id'] == null ? undefined : json['id'],
141
+ 'groupId': json['group_id'] == null ? undefined : json['group_id'],
142
+ 'key': json['key'],
143
+ 'label': json['label'],
144
+ 'description': json['description'] == null ? undefined : json['description'],
145
+ 'fieldType': json['field_type'],
146
+ 'isRequired': json['is_required'],
147
+ 'isActive': json['is_active'],
148
+ 'displayOrder': json['display_order'],
149
+ 'validation': json['validation'] == null ? undefined : json['validation'],
150
+ 'options': ((json['options'] as Array<any>).map(PortalUserFieldOptionFromJSON)),
151
+ };
152
+ }
153
+
154
+ export function PortalUserFieldDefinitionToJSON(json: any): PortalUserFieldDefinition {
155
+ return PortalUserFieldDefinitionToJSONTyped(json, false);
156
+ }
157
+
158
+ export function PortalUserFieldDefinitionToJSONTyped(value?: PortalUserFieldDefinition | null, ignoreDiscriminator: boolean = false): any {
159
+ if (value == null) {
160
+ return value;
161
+ }
162
+
163
+ return {
164
+
165
+ 'id': value['id'],
166
+ 'group_id': value['groupId'],
167
+ 'key': value['key'],
168
+ 'label': value['label'],
169
+ 'description': value['description'],
170
+ 'field_type': value['fieldType'],
171
+ 'is_required': value['isRequired'],
172
+ 'is_active': value['isActive'],
173
+ 'display_order': value['displayOrder'],
174
+ 'validation': value['validation'],
175
+ 'options': ((value['options'] as Array<any>).map(PortalUserFieldOptionToJSON)),
176
+ };
177
+ }
178
+