@easyedu/js-lsm-api 1.130.0 → 1.132.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 (158) hide show
  1. package/.openapi-generator/FILES +46 -0
  2. package/README.md +29 -2
  3. package/dist/apis/ReportingApi.d.ts +52 -0
  4. package/dist/apis/ReportingApi.js +131 -0
  5. package/dist/apis/SystemApi.d.ts +16 -0
  6. package/dist/apis/SystemApi.js +40 -0
  7. package/dist/esm/apis/ReportingApi.d.ts +52 -0
  8. package/dist/esm/apis/ReportingApi.js +131 -0
  9. package/dist/esm/apis/SystemApi.d.ts +16 -0
  10. package/dist/esm/apis/SystemApi.js +40 -0
  11. package/dist/esm/models/GetReportCatalog.d.ts +40 -0
  12. package/dist/esm/models/GetReportCatalog.js +49 -0
  13. package/dist/esm/models/GetReportQueryResult.d.ts +84 -0
  14. package/dist/esm/models/GetReportQueryResult.js +77 -0
  15. package/dist/esm/models/GetSystemPortalOverview.d.ts +121 -0
  16. package/dist/esm/models/GetSystemPortalOverview.js +106 -0
  17. package/dist/esm/models/PostReportExport.d.ts +54 -0
  18. package/dist/esm/models/PostReportExport.js +56 -0
  19. package/dist/esm/models/PostReportQuery.d.ts +52 -0
  20. package/dist/esm/models/PostReportQuery.js +49 -0
  21. package/dist/esm/models/ReportCategory.d.ts +50 -0
  22. package/dist/esm/models/ReportCategory.js +58 -0
  23. package/dist/esm/models/ReportColumn.d.ts +59 -0
  24. package/dist/esm/models/ReportColumn.js +64 -0
  25. package/dist/esm/models/ReportDefinition.d.ts +89 -0
  26. package/dist/esm/models/ReportDefinition.js +85 -0
  27. package/dist/esm/models/ReportFilterDefinition.d.ts +94 -0
  28. package/dist/esm/models/ReportFilterDefinition.js +91 -0
  29. package/dist/esm/models/ReportFilterOption.d.ts +38 -0
  30. package/dist/esm/models/ReportFilterOption.js +47 -0
  31. package/dist/esm/models/ReportFilters.d.ts +105 -0
  32. package/dist/esm/models/ReportFilters.js +65 -0
  33. package/dist/esm/models/ReportSort.d.ts +46 -0
  34. package/dist/esm/models/ReportSort.js +54 -0
  35. package/dist/esm/models/SystemPortalActivityStats.d.ts +56 -0
  36. package/dist/esm/models/SystemPortalActivityStats.js +57 -0
  37. package/dist/esm/models/SystemPortalCertificateStats.d.ts +50 -0
  38. package/dist/esm/models/SystemPortalCertificateStats.js +55 -0
  39. package/dist/esm/models/SystemPortalContentStats.d.ts +56 -0
  40. package/dist/esm/models/SystemPortalContentStats.js +59 -0
  41. package/dist/esm/models/SystemPortalCourseStats.d.ts +62 -0
  42. package/dist/esm/models/SystemPortalCourseStats.js +63 -0
  43. package/dist/esm/models/SystemPortalEnrollmentStats.d.ts +56 -0
  44. package/dist/esm/models/SystemPortalEnrollmentStats.js +59 -0
  45. package/dist/esm/models/SystemPortalHierarchy.d.ts +44 -0
  46. package/dist/esm/models/SystemPortalHierarchy.js +47 -0
  47. package/dist/esm/models/SystemPortalLicense.d.ts +65 -0
  48. package/dist/esm/models/SystemPortalLicense.js +61 -0
  49. package/dist/esm/models/SystemPortalRoleCount.d.ts +51 -0
  50. package/dist/esm/models/SystemPortalRoleCount.js +59 -0
  51. package/dist/esm/models/SystemPortalStorageUsage.d.ts +74 -0
  52. package/dist/esm/models/SystemPortalStorageUsage.js +71 -0
  53. package/dist/esm/models/SystemPortalSupportStats.d.ts +50 -0
  54. package/dist/esm/models/SystemPortalSupportStats.js +55 -0
  55. package/dist/esm/models/SystemPortalUserStats.d.ts +81 -0
  56. package/dist/esm/models/SystemPortalUserStats.js +74 -0
  57. package/dist/esm/models/index.d.ts +23 -0
  58. package/dist/esm/models/index.js +23 -0
  59. package/dist/models/GetReportCatalog.d.ts +40 -0
  60. package/dist/models/GetReportCatalog.js +56 -0
  61. package/dist/models/GetReportQueryResult.d.ts +84 -0
  62. package/dist/models/GetReportQueryResult.js +84 -0
  63. package/dist/models/GetSystemPortalOverview.d.ts +121 -0
  64. package/dist/models/GetSystemPortalOverview.js +113 -0
  65. package/dist/models/PostReportExport.d.ts +54 -0
  66. package/dist/models/PostReportExport.js +64 -0
  67. package/dist/models/PostReportQuery.d.ts +52 -0
  68. package/dist/models/PostReportQuery.js +56 -0
  69. package/dist/models/ReportCategory.d.ts +50 -0
  70. package/dist/models/ReportCategory.js +66 -0
  71. package/dist/models/ReportColumn.d.ts +59 -0
  72. package/dist/models/ReportColumn.js +72 -0
  73. package/dist/models/ReportDefinition.d.ts +89 -0
  74. package/dist/models/ReportDefinition.js +93 -0
  75. package/dist/models/ReportFilterDefinition.d.ts +94 -0
  76. package/dist/models/ReportFilterDefinition.js +99 -0
  77. package/dist/models/ReportFilterOption.d.ts +38 -0
  78. package/dist/models/ReportFilterOption.js +54 -0
  79. package/dist/models/ReportFilters.d.ts +105 -0
  80. package/dist/models/ReportFilters.js +72 -0
  81. package/dist/models/ReportSort.d.ts +46 -0
  82. package/dist/models/ReportSort.js +62 -0
  83. package/dist/models/SystemPortalActivityStats.d.ts +56 -0
  84. package/dist/models/SystemPortalActivityStats.js +64 -0
  85. package/dist/models/SystemPortalCertificateStats.d.ts +50 -0
  86. package/dist/models/SystemPortalCertificateStats.js +62 -0
  87. package/dist/models/SystemPortalContentStats.d.ts +56 -0
  88. package/dist/models/SystemPortalContentStats.js +66 -0
  89. package/dist/models/SystemPortalCourseStats.d.ts +62 -0
  90. package/dist/models/SystemPortalCourseStats.js +70 -0
  91. package/dist/models/SystemPortalEnrollmentStats.d.ts +56 -0
  92. package/dist/models/SystemPortalEnrollmentStats.js +66 -0
  93. package/dist/models/SystemPortalHierarchy.d.ts +44 -0
  94. package/dist/models/SystemPortalHierarchy.js +54 -0
  95. package/dist/models/SystemPortalLicense.d.ts +65 -0
  96. package/dist/models/SystemPortalLicense.js +69 -0
  97. package/dist/models/SystemPortalRoleCount.d.ts +51 -0
  98. package/dist/models/SystemPortalRoleCount.js +67 -0
  99. package/dist/models/SystemPortalStorageUsage.d.ts +74 -0
  100. package/dist/models/SystemPortalStorageUsage.js +78 -0
  101. package/dist/models/SystemPortalSupportStats.d.ts +50 -0
  102. package/dist/models/SystemPortalSupportStats.js +62 -0
  103. package/dist/models/SystemPortalUserStats.d.ts +81 -0
  104. package/dist/models/SystemPortalUserStats.js +81 -0
  105. package/dist/models/index.d.ts +23 -0
  106. package/dist/models/index.js +23 -0
  107. package/docs/GetReportCatalog.md +37 -0
  108. package/docs/GetReportQueryResult.md +50 -0
  109. package/docs/GetSystemPortalOverview.md +61 -0
  110. package/docs/PostReportExport.md +38 -0
  111. package/docs/PostReportQuery.md +40 -0
  112. package/docs/ReportCategory.md +36 -0
  113. package/docs/ReportColumn.md +39 -0
  114. package/docs/ReportDefinition.md +48 -0
  115. package/docs/ReportFilterDefinition.md +45 -0
  116. package/docs/ReportFilterOption.md +36 -0
  117. package/docs/ReportFilters.md +59 -0
  118. package/docs/ReportSort.md +36 -0
  119. package/docs/ReportingApi.md +207 -0
  120. package/docs/SystemApi.md +68 -0
  121. package/docs/SystemPortalActivityStats.md +42 -0
  122. package/docs/SystemPortalCertificateStats.md +40 -0
  123. package/docs/SystemPortalContentStats.md +43 -0
  124. package/docs/SystemPortalCourseStats.md +44 -0
  125. package/docs/SystemPortalEnrollmentStats.md +43 -0
  126. package/docs/SystemPortalHierarchy.md +38 -0
  127. package/docs/SystemPortalLicense.md +42 -0
  128. package/docs/SystemPortalRoleCount.md +36 -0
  129. package/docs/SystemPortalStorageUsage.md +49 -0
  130. package/docs/SystemPortalSupportStats.md +40 -0
  131. package/docs/SystemPortalUserStats.md +50 -0
  132. package/package.json +1 -1
  133. package/src/apis/ReportingApi.ts +181 -0
  134. package/src/apis/SystemApi.ts +54 -0
  135. package/src/models/GetReportCatalog.ts +90 -0
  136. package/src/models/GetReportQueryResult.ts +153 -0
  137. package/src/models/GetSystemPortalOverview.ts +261 -0
  138. package/src/models/PostReportExport.ts +108 -0
  139. package/src/models/PostReportQuery.ts +104 -0
  140. package/src/models/ReportCategory.ts +90 -0
  141. package/src/models/ReportColumn.ts +102 -0
  142. package/src/models/ReportDefinition.ts +166 -0
  143. package/src/models/ReportFilterDefinition.ts +154 -0
  144. package/src/models/ReportFilterOption.ts +75 -0
  145. package/src/models/ReportFilters.ts +162 -0
  146. package/src/models/ReportSort.ts +86 -0
  147. package/src/models/SystemPortalActivityStats.ts +101 -0
  148. package/src/models/SystemPortalCertificateStats.ts +93 -0
  149. package/src/models/SystemPortalContentStats.ts +102 -0
  150. package/src/models/SystemPortalCourseStats.ts +111 -0
  151. package/src/models/SystemPortalEnrollmentStats.ts +102 -0
  152. package/src/models/SystemPortalHierarchy.ts +82 -0
  153. package/src/models/SystemPortalLicense.ts +111 -0
  154. package/src/models/SystemPortalRoleCount.ts +91 -0
  155. package/src/models/SystemPortalStorageUsage.ts +129 -0
  156. package/src/models/SystemPortalSupportStats.ts +93 -0
  157. package/src/models/SystemPortalUserStats.ts +145 -0
  158. package/src/models/index.ts +23 -0
@@ -0,0 +1,40 @@
1
+
2
+ # SystemPortalSupportStats
3
+
4
+
5
+ ## Properties
6
+
7
+ Name | Type
8
+ ------------ | -------------
9
+ `open` | number
10
+ `inProgress` | number
11
+ `closed` | number
12
+ `total` | number
13
+
14
+ ## Example
15
+
16
+ ```typescript
17
+ import type { SystemPortalSupportStats } from '@easyedu/js-lsm-api'
18
+
19
+ // TODO: Update the object below with actual values
20
+ const example = {
21
+ "open": null,
22
+ "inProgress": null,
23
+ "closed": null,
24
+ "total": null,
25
+ } satisfies SystemPortalSupportStats
26
+
27
+ console.log(example)
28
+
29
+ // Convert the instance to a JSON string
30
+ const exampleJSON: string = JSON.stringify(example)
31
+ console.log(exampleJSON)
32
+
33
+ // Parse the JSON string back to an object
34
+ const exampleParsed = JSON.parse(exampleJSON) as SystemPortalSupportStats
35
+ console.log(exampleParsed)
36
+ ```
37
+
38
+ [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
39
+
40
+
@@ -0,0 +1,50 @@
1
+
2
+ # SystemPortalUserStats
3
+
4
+
5
+ ## Properties
6
+
7
+ Name | Type
8
+ ------------ | -------------
9
+ `total` | number
10
+ `enabled` | number
11
+ `disabled` | number
12
+ `newLast30Days` | number
13
+ `activeLast7Days` | number
14
+ `activeLast30Days` | number
15
+ `pendingInvitations` | number
16
+ `lastLoginAt` | number
17
+ `byRole` | [Array<SystemPortalRoleCount>](SystemPortalRoleCount.md)
18
+
19
+ ## Example
20
+
21
+ ```typescript
22
+ import type { SystemPortalUserStats } from '@easyedu/js-lsm-api'
23
+
24
+ // TODO: Update the object below with actual values
25
+ const example = {
26
+ "total": null,
27
+ "enabled": null,
28
+ "disabled": null,
29
+ "newLast30Days": null,
30
+ "activeLast7Days": null,
31
+ "activeLast30Days": null,
32
+ "pendingInvitations": null,
33
+ "lastLoginAt": null,
34
+ "byRole": null,
35
+ } satisfies SystemPortalUserStats
36
+
37
+ console.log(example)
38
+
39
+ // Convert the instance to a JSON string
40
+ const exampleJSON: string = JSON.stringify(example)
41
+ console.log(exampleJSON)
42
+
43
+ // Parse the JSON string back to an object
44
+ const exampleParsed = JSON.parse(exampleJSON) as SystemPortalUserStats
45
+ console.log(exampleParsed)
46
+ ```
47
+
48
+ [[Back to top]](#) [[Back to API list]](../README.md#api-endpoints) [[Back to Model list]](../README.md#models) [[Back to README]](../README.md)
49
+
50
+
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@easyedu/js-lsm-api",
3
- "version": "1.130.0",
3
+ "version": "1.132.0",
4
4
  "description": "OpenAPI client for @easyedu/js-lsm-api",
5
5
  "author": "OpenAPI-Generator",
6
6
  "repository": {
@@ -28,6 +28,31 @@ import {
28
28
  GetPortalManagementDashboardFromJSON,
29
29
  GetPortalManagementDashboardToJSON,
30
30
  } from '../models/GetPortalManagementDashboard';
31
+ import {
32
+ type GetReportCatalog,
33
+ GetReportCatalogFromJSON,
34
+ GetReportCatalogToJSON,
35
+ } from '../models/GetReportCatalog';
36
+ import {
37
+ type GetReportQueryResult,
38
+ GetReportQueryResultFromJSON,
39
+ GetReportQueryResultToJSON,
40
+ } from '../models/GetReportQueryResult';
41
+ import {
42
+ type PostReportExport,
43
+ PostReportExportFromJSON,
44
+ PostReportExportToJSON,
45
+ } from '../models/PostReportExport';
46
+ import {
47
+ type PostReportQuery,
48
+ PostReportQueryFromJSON,
49
+ PostReportQueryToJSON,
50
+ } from '../models/PostReportQuery';
51
+
52
+ export interface ExportReportRequest {
53
+ reportKey: string;
54
+ postReportExport: PostReportExport;
55
+ }
31
56
 
32
57
  export interface GetCourseVersionReportingRequest {
33
58
  courseId: string;
@@ -44,11 +69,71 @@ export interface GetPortalManagementDashboardRequest {
44
69
  days?: number;
45
70
  }
46
71
 
72
+ export interface QueryReportRequest {
73
+ reportKey: string;
74
+ postReportQuery: PostReportQuery;
75
+ }
76
+
47
77
  /**
48
78
  *
49
79
  */
50
80
  export class ReportingApi extends runtime.BaseAPI {
51
81
 
82
+ /**
83
+ * Creates request options for exportReport without sending the request
84
+ */
85
+ async exportReportRequestOpts(requestParameters: ExportReportRequest): Promise<runtime.RequestOpts> {
86
+ if (requestParameters['reportKey'] == null) {
87
+ throw new runtime.RequiredError(
88
+ 'reportKey',
89
+ 'Required parameter "reportKey" was null or undefined when calling exportReport().'
90
+ );
91
+ }
92
+
93
+ if (requestParameters['postReportExport'] == null) {
94
+ throw new runtime.RequiredError(
95
+ 'postReportExport',
96
+ 'Required parameter "postReportExport" was null or undefined when calling exportReport().'
97
+ );
98
+ }
99
+
100
+ const queryParameters: any = {};
101
+
102
+ const headerParameters: runtime.HTTPHeaders = {};
103
+
104
+ headerParameters['Content-Type'] = 'application/json';
105
+
106
+
107
+ let urlPath = `/reporting/reports/{reportKey}/export`;
108
+ urlPath = urlPath.replace('{reportKey}', encodeURIComponent(String(requestParameters['reportKey'])));
109
+
110
+ return {
111
+ path: urlPath,
112
+ method: 'POST',
113
+ headers: headerParameters,
114
+ query: queryParameters,
115
+ body: PostReportExportToJSON(requestParameters['postReportExport']),
116
+ };
117
+ }
118
+
119
+ /**
120
+ * Export all rows of a report as CSV or XLSX
121
+ */
122
+ async exportReportRaw(requestParameters: ExportReportRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Blob>> {
123
+ const requestOptions = await this.exportReportRequestOpts(requestParameters);
124
+ const response = await this.request(requestOptions, initOverrides);
125
+
126
+ return new runtime.BlobApiResponse(response);
127
+ }
128
+
129
+ /**
130
+ * Export all rows of a report as CSV or XLSX
131
+ */
132
+ async exportReport(requestParameters: ExportReportRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Blob> {
133
+ const response = await this.exportReportRaw(requestParameters, initOverrides);
134
+ return await response.value();
135
+ }
136
+
52
137
  /**
53
138
  * Creates request options for getCourseVersionReporting without sending the request
54
139
  */
@@ -204,4 +289,100 @@ export class ReportingApi extends runtime.BaseAPI {
204
289
  return await response.value();
205
290
  }
206
291
 
292
+ /**
293
+ * Creates request options for getReportCatalog without sending the request
294
+ */
295
+ async getReportCatalogRequestOpts(): Promise<runtime.RequestOpts> {
296
+ const queryParameters: any = {};
297
+
298
+ const headerParameters: runtime.HTTPHeaders = {};
299
+
300
+
301
+ let urlPath = `/reporting/reports`;
302
+
303
+ return {
304
+ path: urlPath,
305
+ method: 'GET',
306
+ headers: headerParameters,
307
+ query: queryParameters,
308
+ };
309
+ }
310
+
311
+ /**
312
+ * Returns report definitions with columns, supported filters, select options resolved for the selected portal, and default sort. Reports whose permission the caller lacks are omitted.
313
+ * List the reports the caller can run in the selected portal
314
+ */
315
+ async getReportCatalogRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetReportCatalog>> {
316
+ const requestOptions = await this.getReportCatalogRequestOpts();
317
+ const response = await this.request(requestOptions, initOverrides);
318
+
319
+ return new runtime.JSONApiResponse(response, (jsonValue) => GetReportCatalogFromJSON(jsonValue));
320
+ }
321
+
322
+ /**
323
+ * Returns report definitions with columns, supported filters, select options resolved for the selected portal, and default sort. Reports whose permission the caller lacks are omitted.
324
+ * List the reports the caller can run in the selected portal
325
+ */
326
+ async getReportCatalog(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetReportCatalog> {
327
+ const response = await this.getReportCatalogRaw(initOverrides);
328
+ return await response.value();
329
+ }
330
+
331
+ /**
332
+ * Creates request options for queryReport without sending the request
333
+ */
334
+ async queryReportRequestOpts(requestParameters: QueryReportRequest): Promise<runtime.RequestOpts> {
335
+ if (requestParameters['reportKey'] == null) {
336
+ throw new runtime.RequiredError(
337
+ 'reportKey',
338
+ 'Required parameter "reportKey" was null or undefined when calling queryReport().'
339
+ );
340
+ }
341
+
342
+ if (requestParameters['postReportQuery'] == null) {
343
+ throw new runtime.RequiredError(
344
+ 'postReportQuery',
345
+ 'Required parameter "postReportQuery" was null or undefined when calling queryReport().'
346
+ );
347
+ }
348
+
349
+ const queryParameters: any = {};
350
+
351
+ const headerParameters: runtime.HTTPHeaders = {};
352
+
353
+ headerParameters['Content-Type'] = 'application/json';
354
+
355
+
356
+ let urlPath = `/reporting/reports/{reportKey}/query`;
357
+ urlPath = urlPath.replace('{reportKey}', encodeURIComponent(String(requestParameters['reportKey'])));
358
+
359
+ return {
360
+ path: urlPath,
361
+ method: 'POST',
362
+ headers: headerParameters,
363
+ query: queryParameters,
364
+ body: PostReportQueryToJSON(requestParameters['postReportQuery']),
365
+ };
366
+ }
367
+
368
+ /**
369
+ * Read-only. POST is used because filters vary per report. Results are scoped to the selected portal and its team portals.
370
+ * Run a report and return one page of rows
371
+ */
372
+ async queryReportRaw(requestParameters: QueryReportRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetReportQueryResult>> {
373
+ const requestOptions = await this.queryReportRequestOpts(requestParameters);
374
+ const response = await this.request(requestOptions, initOverrides);
375
+
376
+ return new runtime.JSONApiResponse(response, (jsonValue) => GetReportQueryResultFromJSON(jsonValue));
377
+ }
378
+
379
+ /**
380
+ * Read-only. POST is used because filters vary per report. Results are scoped to the selected portal and its team portals.
381
+ * Run a report and return one page of rows
382
+ */
383
+ async queryReport(requestParameters: QueryReportRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetReportQueryResult> {
384
+ const response = await this.queryReportRaw(requestParameters, initOverrides);
385
+ return await response.value();
386
+ }
387
+
207
388
  }
@@ -38,6 +38,11 @@ import {
38
38
  GetSystemMetricsFromJSON,
39
39
  GetSystemMetricsToJSON,
40
40
  } from '../models/GetSystemMetrics';
41
+ import {
42
+ type GetSystemPortalOverview,
43
+ GetSystemPortalOverviewFromJSON,
44
+ GetSystemPortalOverviewToJSON,
45
+ } from '../models/GetSystemPortalOverview';
41
46
 
42
47
  export interface GetSystemBillingRequest {
43
48
  page?: number;
@@ -48,6 +53,10 @@ export interface GetSystemPortalRequest {
48
53
  portalId: string;
49
54
  }
50
55
 
56
+ export interface GetSystemPortalOverviewRequest {
57
+ portalId: string;
58
+ }
59
+
51
60
  export interface GetSystemPortalsRequest {
52
61
  page?: number;
53
62
  pageSize?: number;
@@ -190,6 +199,51 @@ export class SystemApi extends runtime.BaseAPI {
190
199
  return await response.value();
191
200
  }
192
201
 
202
+ /**
203
+ * Creates request options for getSystemPortalOverview without sending the request
204
+ */
205
+ async getSystemPortalOverviewRequestOpts(requestParameters: GetSystemPortalOverviewRequest): Promise<runtime.RequestOpts> {
206
+ if (requestParameters['portalId'] == null) {
207
+ throw new runtime.RequiredError(
208
+ 'portalId',
209
+ 'Required parameter "portalId" was null or undefined when calling getSystemPortalOverview().'
210
+ );
211
+ }
212
+
213
+ const queryParameters: any = {};
214
+
215
+ const headerParameters: runtime.HTTPHeaders = {};
216
+
217
+
218
+ let urlPath = `/system/portals/{portalId}/overview`;
219
+ urlPath = urlPath.replace('{portalId}', encodeURIComponent(String(requestParameters['portalId'])));
220
+
221
+ return {
222
+ path: urlPath,
223
+ method: 'GET',
224
+ headers: headerParameters,
225
+ query: queryParameters,
226
+ };
227
+ }
228
+
229
+ /**
230
+ * Get detailed platform portal overview and usage statistics
231
+ */
232
+ async getSystemPortalOverviewRaw(requestParameters: GetSystemPortalOverviewRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetSystemPortalOverview>> {
233
+ const requestOptions = await this.getSystemPortalOverviewRequestOpts(requestParameters);
234
+ const response = await this.request(requestOptions, initOverrides);
235
+
236
+ return new runtime.JSONApiResponse(response, (jsonValue) => GetSystemPortalOverviewFromJSON(jsonValue));
237
+ }
238
+
239
+ /**
240
+ * Get detailed platform portal overview and usage statistics
241
+ */
242
+ async getSystemPortalOverview(requestParameters: GetSystemPortalOverviewRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetSystemPortalOverview> {
243
+ const response = await this.getSystemPortalOverviewRaw(requestParameters, initOverrides);
244
+ return await response.value();
245
+ }
246
+
193
247
  /**
194
248
  * Creates request options for getSystemPortals without sending the request
195
249
  */
@@ -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 { ReportCategory } from './ReportCategory';
17
+ import {
18
+ ReportCategoryFromJSON,
19
+ ReportCategoryFromJSONTyped,
20
+ ReportCategoryToJSON,
21
+ ReportCategoryToJSONTyped,
22
+ } from './ReportCategory';
23
+ import type { ReportDefinition } from './ReportDefinition';
24
+ import {
25
+ ReportDefinitionFromJSON,
26
+ ReportDefinitionFromJSONTyped,
27
+ ReportDefinitionToJSON,
28
+ ReportDefinitionToJSONTyped,
29
+ } from './ReportDefinition';
30
+
31
+ /**
32
+ * Reports the caller may run in the selected portal.
33
+ * @export
34
+ * @interface GetReportCatalog
35
+ */
36
+ export interface GetReportCatalog {
37
+ /**
38
+ *
39
+ * @type {Array<ReportCategory>}
40
+ * @memberof GetReportCatalog
41
+ */
42
+ categories: Array<ReportCategory>;
43
+ /**
44
+ *
45
+ * @type {Array<ReportDefinition>}
46
+ * @memberof GetReportCatalog
47
+ */
48
+ reports: Array<ReportDefinition>;
49
+ }
50
+
51
+ /**
52
+ * Check if a given object implements the GetReportCatalog interface.
53
+ */
54
+ export function instanceOfGetReportCatalog(value: object): value is GetReportCatalog {
55
+ if (!('categories' in value) || value['categories'] === undefined) return false;
56
+ if (!('reports' in value) || value['reports'] === undefined) return false;
57
+ return true;
58
+ }
59
+
60
+ export function GetReportCatalogFromJSON(json: any): GetReportCatalog {
61
+ return GetReportCatalogFromJSONTyped(json, false);
62
+ }
63
+
64
+ export function GetReportCatalogFromJSONTyped(json: any, ignoreDiscriminator: boolean): GetReportCatalog {
65
+ if (json == null) {
66
+ return json;
67
+ }
68
+ return {
69
+
70
+ 'categories': ((json['categories'] as Array<any>).map(ReportCategoryFromJSON)),
71
+ 'reports': ((json['reports'] as Array<any>).map(ReportDefinitionFromJSON)),
72
+ };
73
+ }
74
+
75
+ export function GetReportCatalogToJSON(json: any): GetReportCatalog {
76
+ return GetReportCatalogToJSONTyped(json, false);
77
+ }
78
+
79
+ export function GetReportCatalogToJSONTyped(value?: GetReportCatalog | null, ignoreDiscriminator: boolean = false): any {
80
+ if (value == null) {
81
+ return value;
82
+ }
83
+
84
+ return {
85
+
86
+ 'categories': ((value['categories'] as Array<any>).map(ReportCategoryToJSON)),
87
+ 'reports': ((value['reports'] as Array<any>).map(ReportDefinitionToJSON)),
88
+ };
89
+ }
90
+
@@ -0,0 +1,153 @@
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 { ReportColumn } from './ReportColumn';
17
+ import {
18
+ ReportColumnFromJSON,
19
+ ReportColumnFromJSONTyped,
20
+ ReportColumnToJSON,
21
+ ReportColumnToJSONTyped,
22
+ } from './ReportColumn';
23
+ import type { ReportSort } from './ReportSort';
24
+ import {
25
+ ReportSortFromJSON,
26
+ ReportSortFromJSONTyped,
27
+ ReportSortToJSON,
28
+ ReportSortToJSONTyped,
29
+ } from './ReportSort';
30
+
31
+ /**
32
+ *
33
+ * @export
34
+ * @interface GetReportQueryResult
35
+ */
36
+ export interface GetReportQueryResult {
37
+ /**
38
+ *
39
+ * @type {string}
40
+ * @memberof GetReportQueryResult
41
+ */
42
+ reportKey: string;
43
+ /**
44
+ *
45
+ * @type {Array<ReportColumn>}
46
+ * @memberof GetReportQueryResult
47
+ */
48
+ columns: Array<ReportColumn>;
49
+ /**
50
+ * One object per row, keyed by column key.
51
+ * @type {Array<{ [key: string]: any; }>}
52
+ * @memberof GetReportQueryResult
53
+ */
54
+ rows: Array<{ [key: string]: any; }>;
55
+ /**
56
+ *
57
+ * @type {ReportSort}
58
+ * @memberof GetReportQueryResult
59
+ */
60
+ sort: ReportSort;
61
+ /**
62
+ *
63
+ * @type {number}
64
+ * @memberof GetReportQueryResult
65
+ */
66
+ page: number;
67
+ /**
68
+ *
69
+ * @type {number}
70
+ * @memberof GetReportQueryResult
71
+ */
72
+ pageSize: number;
73
+ /**
74
+ *
75
+ * @type {number}
76
+ * @memberof GetReportQueryResult
77
+ */
78
+ totalItems: number;
79
+ /**
80
+ *
81
+ * @type {number}
82
+ * @memberof GetReportQueryResult
83
+ */
84
+ totalPages: number;
85
+ /**
86
+ * Unix timestamp in seconds.
87
+ * @type {number}
88
+ * @memberof GetReportQueryResult
89
+ */
90
+ generatedAt: number;
91
+ }
92
+
93
+ /**
94
+ * Check if a given object implements the GetReportQueryResult interface.
95
+ */
96
+ export function instanceOfGetReportQueryResult(value: object): value is GetReportQueryResult {
97
+ if (!('reportKey' in value) || value['reportKey'] === undefined) return false;
98
+ if (!('columns' in value) || value['columns'] === undefined) return false;
99
+ if (!('rows' in value) || value['rows'] === undefined) return false;
100
+ if (!('sort' in value) || value['sort'] === undefined) return false;
101
+ if (!('page' in value) || value['page'] === undefined) return false;
102
+ if (!('pageSize' in value) || value['pageSize'] === undefined) return false;
103
+ if (!('totalItems' in value) || value['totalItems'] === undefined) return false;
104
+ if (!('totalPages' in value) || value['totalPages'] === undefined) return false;
105
+ if (!('generatedAt' in value) || value['generatedAt'] === undefined) return false;
106
+ return true;
107
+ }
108
+
109
+ export function GetReportQueryResultFromJSON(json: any): GetReportQueryResult {
110
+ return GetReportQueryResultFromJSONTyped(json, false);
111
+ }
112
+
113
+ export function GetReportQueryResultFromJSONTyped(json: any, ignoreDiscriminator: boolean): GetReportQueryResult {
114
+ if (json == null) {
115
+ return json;
116
+ }
117
+ return {
118
+
119
+ 'reportKey': json['report_key'],
120
+ 'columns': ((json['columns'] as Array<any>).map(ReportColumnFromJSON)),
121
+ 'rows': json['rows'],
122
+ 'sort': ReportSortFromJSON(json['sort']),
123
+ 'page': json['page'],
124
+ 'pageSize': json['page_size'],
125
+ 'totalItems': json['total_items'],
126
+ 'totalPages': json['total_pages'],
127
+ 'generatedAt': json['generated_at'],
128
+ };
129
+ }
130
+
131
+ export function GetReportQueryResultToJSON(json: any): GetReportQueryResult {
132
+ return GetReportQueryResultToJSONTyped(json, false);
133
+ }
134
+
135
+ export function GetReportQueryResultToJSONTyped(value?: GetReportQueryResult | null, ignoreDiscriminator: boolean = false): any {
136
+ if (value == null) {
137
+ return value;
138
+ }
139
+
140
+ return {
141
+
142
+ 'report_key': value['reportKey'],
143
+ 'columns': ((value['columns'] as Array<any>).map(ReportColumnToJSON)),
144
+ 'rows': value['rows'],
145
+ 'sort': ReportSortToJSON(value['sort']),
146
+ 'page': value['page'],
147
+ 'page_size': value['pageSize'],
148
+ 'total_items': value['totalItems'],
149
+ 'total_pages': value['totalPages'],
150
+ 'generated_at': value['generatedAt'],
151
+ };
152
+ }
153
+