@iblai/iblai-api 3.35.3-core → 3.35.4-core
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs.js +13134 -3071
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +13128 -3072
- package/dist/index.esm.js.map +1 -1
- package/dist/index.umd.js +13134 -3071
- package/dist/index.umd.js.map +1 -1
- package/dist/types/index.d.ts +80 -1
- package/dist/types/models/AWSTenantLaunchRequest.d.ts +20 -0
- package/dist/types/models/ActivateUserFreeTrial.d.ts +11 -0
- package/dist/types/models/App.d.ts +10 -0
- package/dist/types/models/AppleSubscriptionStatusRequest.d.ts +3 -0
- package/dist/types/models/AppleSubscriptionStatusView.d.ts +3 -0
- package/dist/types/models/AppleVerifyTransactionId.d.ts +3 -0
- package/dist/types/models/AssociateAccountResponse.d.ts +5 -0
- package/dist/types/models/AssociateAppleAccount.d.ts +3 -0
- package/dist/types/models/AuthToken.d.ts +10 -0
- package/dist/types/models/BaseErrorResponse.d.ts +5 -0
- package/dist/types/models/BaseResponse.d.ts +5 -0
- package/dist/types/models/CeleryHeartbeat.d.ts +5 -0
- package/dist/types/models/CeleryHeartbeatFail.d.ts +5 -0
- package/dist/types/models/CeleryHeartbeatFailStatusEnum.d.ts +8 -0
- package/dist/types/models/CeleryHeartbeatStatusEnum.d.ts +8 -0
- package/dist/types/models/DesiredRole.d.ts +4 -0
- package/dist/types/models/EdxSignalReceiverRequest.d.ts +4 -0
- package/dist/types/models/GCPTenantLaunchRequest.d.ts +24 -0
- package/dist/types/models/GooglePayAccountResponse.d.ts +15 -0
- package/dist/types/models/GooglePayAccountResponseStatusEnum.d.ts +8 -0
- package/dist/types/models/GooglePayVerifyToken.d.ts +6 -0
- package/dist/types/models/ItemTypeEnum.d.ts +18 -0
- package/dist/types/models/LauncherViewPostRequest.d.ts +9 -0
- package/dist/types/models/ManagerAuthToken.d.ts +13 -0
- package/dist/types/models/MediaResource.d.ts +71 -0
- package/dist/types/models/MediaTypeEnum.d.ts +14 -0
- package/dist/types/models/ModeEnum.d.ts +10 -0
- package/dist/types/models/Notification.d.ts +2 -2
- package/dist/types/models/{StatusEnum.d.ts → NotificationStatusEnum.d.ts} +1 -1
- package/dist/types/models/OnboardingStatusUpdate.d.ts +7 -0
- package/dist/types/models/PaginatedUserAppList.d.ts +7 -0
- package/dist/types/models/PatchedMediaResource.d.ts +71 -0
- package/dist/types/models/PatchedNotification.d.ts +2 -2
- package/dist/types/models/Platform.d.ts +29 -0
- package/dist/types/models/PlatformApiKey.d.ts +30 -0
- package/dist/types/models/PlatformList.d.ts +29 -0
- package/dist/types/models/PlatformListStatusEnum.d.ts +22 -0
- package/dist/types/models/PlatformUpdatePostRequest.d.ts +9 -0
- package/dist/types/models/ReportedRole.d.ts +4 -0
- package/dist/types/models/Resource.d.ts +22 -0
- package/dist/types/models/ResourceCreateUpdate.d.ts +42 -0
- package/dist/types/models/Role.d.ts +7 -0
- package/dist/types/models/StripeCheckoutSessionRequest.d.ts +54 -0
- package/dist/types/models/StripeCheckoutSessionResponse.d.ts +6 -0
- package/dist/types/models/StripeCustomerPortalRequest.d.ts +3 -0
- package/dist/types/models/StripeCustomerPortalResponse.d.ts +3 -0
- package/dist/types/models/StripeLocalProduct.d.ts +8 -0
- package/dist/types/models/StripeSubscriptionRenewalRequest.d.ts +4 -0
- package/dist/types/models/StripeSubscriptionRenewalResponse.d.ts +3 -0
- package/dist/types/models/TenantLaunchError.d.ts +10 -0
- package/dist/types/models/TenantLaunchFailed.d.ts +15 -0
- package/dist/types/models/TenantLaunchRequest.d.ts +16 -0
- package/dist/types/models/TenantLaunchResponse.d.ts +15 -0
- package/dist/types/models/TokenProxyInput.d.ts +21 -0
- package/dist/types/models/TokenProxyOutput.d.ts +7 -0
- package/dist/types/models/TokenProxyOutputSerializerData.d.ts +20 -0
- package/dist/types/models/TokenProxyUser.d.ts +25 -0
- package/dist/types/models/UserApp.d.ts +27 -0
- package/dist/types/models/UserDeleteAPIError.d.ts +3 -0
- package/dist/types/models/UserDeleteAPIRequest.d.ts +3 -0
- package/dist/types/models/UserDeleteAPIResponse.d.ts +3 -0
- package/dist/types/models/UserPlatformLink.d.ts +17 -0
- package/dist/types/models/UserPlatformManagementListViewGetResponse.d.ts +6 -0
- package/dist/types/models/UserPlatformViewPostRequest.d.ts +8 -0
- package/dist/types/models/UserProxyBulkRequest.d.ts +3 -0
- package/dist/types/models/UserProxyGetResponse.d.ts +8 -0
- package/dist/types/models/UserProxyPostRequest.d.ts +7 -0
- package/dist/types/models/UserProxyPostResponse.d.ts +8 -0
- package/dist/types/models/UserSearchViewGetResponse.d.ts +6 -0
- package/dist/types/models/VerifyGCPMarketPlaceFailedResponse.d.ts +11 -0
- package/dist/types/models/VerifyGCPMarketPlaceRequest.d.ts +3 -0
- package/dist/types/models/VerifyGCPMarketPlaceResponse.d.ts +11 -0
- package/dist/types/models/WatchedVideosPerCourse.d.ts +8 -0
- package/dist/types/models/WatchedVideosPerCourseData.d.ts +18 -0
- package/dist/types/models/WhitelistedDomain.d.ts +4 -0
- package/dist/types/services/CatalogService.d.ts +6904 -0
- package/dist/types/services/CoreService.d.ts +442 -0
- package/dist/types/services/FeaturesService.d.ts +75 -0
- package/dist/types/services/MediaResourcesService.d.ts +112 -0
- package/dist/types/services/PlatformService.d.ts +314 -0
- package/dist/types/services/ProvidersService.d.ts +142 -0
- package/dist/types/services/ProvisionService.d.ts +14 -0
- package/dist/types/services/RolesService.d.ts +57 -0
- package/dist/types/services/ServiceService.d.ts +170 -0
- package/package.json +1 -1
- package/src/core/OpenAPI.ts +1 -1
- package/src/index.ts +80 -1
- package/src/models/AWSTenantLaunchRequest.ts +25 -0
- package/src/models/ActivateUserFreeTrial.ts +16 -0
- package/src/models/App.ts +15 -0
- package/src/models/AppleSubscriptionStatusRequest.ts +8 -0
- package/src/models/AppleSubscriptionStatusView.ts +8 -0
- package/src/models/AppleVerifyTransactionId.ts +8 -0
- package/src/models/AssociateAccountResponse.ts +10 -0
- package/src/models/AssociateAppleAccount.ts +8 -0
- package/src/models/AuthToken.ts +15 -0
- package/src/models/BaseErrorResponse.ts +10 -0
- package/src/models/BaseResponse.ts +10 -0
- package/src/models/CeleryHeartbeat.ts +10 -0
- package/src/models/CeleryHeartbeatFail.ts +10 -0
- package/src/models/CeleryHeartbeatFailStatusEnum.ts +12 -0
- package/src/models/CeleryHeartbeatStatusEnum.ts +12 -0
- package/src/models/DesiredRole.ts +9 -0
- package/src/models/EdxSignalReceiverRequest.ts +9 -0
- package/src/models/GCPTenantLaunchRequest.ts +29 -0
- package/src/models/GooglePayAccountResponse.ts +20 -0
- package/src/models/GooglePayAccountResponseStatusEnum.ts +12 -0
- package/src/models/GooglePayVerifyToken.ts +11 -0
- package/src/models/ItemTypeEnum.ts +22 -0
- package/src/models/LauncherViewPostRequest.ts +14 -0
- package/src/models/ManagerAuthToken.ts +18 -0
- package/src/models/MediaResource.ts +76 -0
- package/src/models/MediaTypeEnum.ts +18 -0
- package/src/models/ModeEnum.ts +14 -0
- package/src/models/Notification.ts +2 -2
- package/src/models/{StatusEnum.ts → NotificationStatusEnum.ts} +1 -1
- package/src/models/OnboardingStatusUpdate.ts +12 -0
- package/src/models/PaginatedUserAppList.ts +12 -0
- package/src/models/PatchedMediaResource.ts +76 -0
- package/src/models/PatchedNotification.ts +2 -2
- package/src/models/Platform.ts +34 -0
- package/src/models/PlatformApiKey.ts +35 -0
- package/src/models/PlatformList.ts +34 -0
- package/src/models/PlatformListStatusEnum.ts +26 -0
- package/src/models/PlatformUpdatePostRequest.ts +14 -0
- package/src/models/ReportedRole.ts +9 -0
- package/src/models/Resource.ts +27 -0
- package/src/models/ResourceCreateUpdate.ts +47 -0
- package/src/models/Role.ts +12 -0
- package/src/models/StripeCheckoutSessionRequest.ts +59 -0
- package/src/models/StripeCheckoutSessionResponse.ts +11 -0
- package/src/models/StripeCustomerPortalRequest.ts +8 -0
- package/src/models/StripeCustomerPortalResponse.ts +8 -0
- package/src/models/StripeLocalProduct.ts +13 -0
- package/src/models/StripeSubscriptionRenewalRequest.ts +9 -0
- package/src/models/StripeSubscriptionRenewalResponse.ts +8 -0
- package/src/models/TenantLaunchError.ts +15 -0
- package/src/models/TenantLaunchFailed.ts +20 -0
- package/src/models/TenantLaunchRequest.ts +21 -0
- package/src/models/TenantLaunchResponse.ts +20 -0
- package/src/models/TokenProxyInput.ts +26 -0
- package/src/models/TokenProxyOutput.ts +12 -0
- package/src/models/TokenProxyOutputSerializerData.ts +25 -0
- package/src/models/TokenProxyUser.ts +30 -0
- package/src/models/UserApp.ts +32 -0
- package/src/models/UserDeleteAPIError.ts +8 -0
- package/src/models/UserDeleteAPIRequest.ts +8 -0
- package/src/models/UserDeleteAPIResponse.ts +8 -0
- package/src/models/UserPlatformLink.ts +22 -0
- package/src/models/UserPlatformManagementListViewGetResponse.ts +11 -0
- package/src/models/UserPlatformViewPostRequest.ts +13 -0
- package/src/models/UserProxyBulkRequest.ts +8 -0
- package/src/models/UserProxyGetResponse.ts +13 -0
- package/src/models/UserProxyPostRequest.ts +12 -0
- package/src/models/UserProxyPostResponse.ts +13 -0
- package/src/models/UserSearchViewGetResponse.ts +11 -0
- package/src/models/VerifyGCPMarketPlaceFailedResponse.ts +16 -0
- package/src/models/VerifyGCPMarketPlaceRequest.ts +8 -0
- package/src/models/VerifyGCPMarketPlaceResponse.ts +16 -0
- package/src/models/WatchedVideosPerCourse.ts +13 -0
- package/src/models/WatchedVideosPerCourseData.ts +23 -0
- package/src/models/WhitelistedDomain.ts +9 -0
- package/src/services/CatalogService.ts +7769 -0
- package/src/services/CoreService.ts +792 -1
- package/src/services/FeaturesService.ts +126 -0
- package/src/services/MediaResourcesService.ts +319 -0
- package/src/services/PlatformService.ts +582 -0
- package/src/services/ProvidersService.ts +271 -0
- package/src/services/ProvisionService.ts +30 -0
- package/src/services/RolesService.ts +87 -0
- package/src/services/ServiceService.ts +320 -0
|
@@ -1,12 +1,167 @@
|
|
|
1
|
+
import type { CeleryHeartbeat } from '../models/CeleryHeartbeat';
|
|
2
|
+
import type { EdxSignalReceiverRequest } from '../models/EdxSignalReceiverRequest';
|
|
1
3
|
import type { ImageUpload } from '../models/ImageUpload';
|
|
4
|
+
import type { LauncherViewPostRequest } from '../models/LauncherViewPostRequest';
|
|
2
5
|
import type { LtiKey } from '../models/LtiKey';
|
|
3
6
|
import type { LtiTool } from '../models/LtiTool';
|
|
4
7
|
import type { PatchedPlatformPublicMetadata } from '../models/PatchedPlatformPublicMetadata';
|
|
8
|
+
import type { PlatformApiKey } from '../models/PlatformApiKey';
|
|
9
|
+
import type { PlatformList } from '../models/PlatformList';
|
|
5
10
|
import type { PlatformPublicMetadata } from '../models/PlatformPublicMetadata';
|
|
11
|
+
import type { PlatformUpdatePostRequest } from '../models/PlatformUpdatePostRequest';
|
|
6
12
|
import type { RedirectTokenRequest } from '../models/RedirectTokenRequest';
|
|
7
13
|
import type { RedirectTokenResponse } from '../models/RedirectTokenResponse';
|
|
14
|
+
import type { TokenProxyInput } from '../models/TokenProxyInput';
|
|
15
|
+
import type { TokenProxyOutput } from '../models/TokenProxyOutput';
|
|
16
|
+
import type { UserDeleteAPIRequest } from '../models/UserDeleteAPIRequest';
|
|
17
|
+
import type { UserDeleteAPIResponse } from '../models/UserDeleteAPIResponse';
|
|
18
|
+
import type { UserPlatformLink } from '../models/UserPlatformLink';
|
|
19
|
+
import type { UserPlatformManagementListViewGetResponse } from '../models/UserPlatformManagementListViewGetResponse';
|
|
20
|
+
import type { UserPlatformViewPostRequest } from '../models/UserPlatformViewPostRequest';
|
|
21
|
+
import type { UserProxyBulkRequest } from '../models/UserProxyBulkRequest';
|
|
22
|
+
import type { UserProxyGetResponse } from '../models/UserProxyGetResponse';
|
|
23
|
+
import type { UserProxyPostRequest } from '../models/UserProxyPostRequest';
|
|
24
|
+
import type { UserProxyPostResponse } from '../models/UserProxyPostResponse';
|
|
25
|
+
import type { UserSearchViewGetResponse } from '../models/UserSearchViewGetResponse';
|
|
26
|
+
import type { WhitelistedDomain } from '../models/WhitelistedDomain';
|
|
8
27
|
import type { CancelablePromise } from '../core/CancelablePromise';
|
|
9
28
|
export declare class CoreService {
|
|
29
|
+
/**
|
|
30
|
+
* Create DM and AXD Tokens for user and platform_key
|
|
31
|
+
*
|
|
32
|
+
* Params:
|
|
33
|
+
* - Any of user_id, username, or email (choose one only, required)
|
|
34
|
+
* - platform_key: str (required)
|
|
35
|
+
* @param requestBody
|
|
36
|
+
* @returns TokenProxyOutput
|
|
37
|
+
* @throws ApiError
|
|
38
|
+
*/
|
|
39
|
+
static coreConsolidatedTokenProxyCreate(requestBody: TokenProxyInput): CancelablePromise<TokenProxyOutput>;
|
|
40
|
+
/**
|
|
41
|
+
* Show (active) departments associated with a platform
|
|
42
|
+
* @returns any No response body
|
|
43
|
+
* @throws ApiError
|
|
44
|
+
*/
|
|
45
|
+
static coreDepartmentsRetrieve(): CancelablePromise<any>;
|
|
46
|
+
/**
|
|
47
|
+
* Create/update a department
|
|
48
|
+
* @returns any No response body
|
|
49
|
+
* @throws ApiError
|
|
50
|
+
*/
|
|
51
|
+
static coreDepartmentsCreate(): CancelablePromise<any>;
|
|
52
|
+
/**
|
|
53
|
+
* Delete department
|
|
54
|
+
* @returns void
|
|
55
|
+
* @throws ApiError
|
|
56
|
+
*/
|
|
57
|
+
static coreDepartmentsDestroy(): CancelablePromise<void>;
|
|
58
|
+
/**
|
|
59
|
+
* Show active users in department (paginated)
|
|
60
|
+
* @returns any No response body
|
|
61
|
+
* @throws ApiError
|
|
62
|
+
*/
|
|
63
|
+
static coreDepartmentsMembersRetrieve(): CancelablePromise<any>;
|
|
64
|
+
/**
|
|
65
|
+
* Add single user to department, or update status
|
|
66
|
+
* @returns any No response body
|
|
67
|
+
* @throws ApiError
|
|
68
|
+
*/
|
|
69
|
+
static coreDepartmentsMembersCreate(): CancelablePromise<any>;
|
|
70
|
+
/**
|
|
71
|
+
* Delete department member
|
|
72
|
+
* @returns void
|
|
73
|
+
* @throws ApiError
|
|
74
|
+
*/
|
|
75
|
+
static coreDepartmentsMembersDestroy(): CancelablePromise<void>;
|
|
76
|
+
/**
|
|
77
|
+
* Add users to department, or update status
|
|
78
|
+
* @returns any No response body
|
|
79
|
+
* @throws ApiError
|
|
80
|
+
*/
|
|
81
|
+
static coreDepartmentsMembersBulkCreate(): CancelablePromise<any>;
|
|
82
|
+
/**
|
|
83
|
+
* Get department member admin info of requesting user
|
|
84
|
+
* @returns any No response body
|
|
85
|
+
* @throws ApiError
|
|
86
|
+
*/
|
|
87
|
+
static coreDepartmentsMembersCheckRetrieve(): CancelablePromise<any>;
|
|
88
|
+
/**
|
|
89
|
+
* Check if a domain is whitelisted
|
|
90
|
+
* @param url
|
|
91
|
+
* @param isActive
|
|
92
|
+
* @returns any No response body
|
|
93
|
+
* @throws ApiError
|
|
94
|
+
*/
|
|
95
|
+
static coreDomainsWhitelistRetrieve(url: string, isActive?: boolean): CancelablePromise<any>;
|
|
96
|
+
/**
|
|
97
|
+
* Add a new domain to whitelist
|
|
98
|
+
* @param requestBody
|
|
99
|
+
* @returns WhitelistedDomain
|
|
100
|
+
* @throws ApiError
|
|
101
|
+
*/
|
|
102
|
+
static coreDomainsWhitelistCreate(requestBody: WhitelistedDomain): CancelablePromise<WhitelistedDomain>;
|
|
103
|
+
/**
|
|
104
|
+
* **Use Case**
|
|
105
|
+
*
|
|
106
|
+
* Celery heartbeat endpoint.
|
|
107
|
+
*
|
|
108
|
+
* **Example Request**
|
|
109
|
+
*
|
|
110
|
+
* GET /api/core/heartbeat/celery/
|
|
111
|
+
*
|
|
112
|
+
* **Response Values**
|
|
113
|
+
*
|
|
114
|
+
* * 200 on success.
|
|
115
|
+
* * 500 on failure.
|
|
116
|
+
* @returns any No response body
|
|
117
|
+
* @throws ApiError
|
|
118
|
+
*/
|
|
119
|
+
static coreHeartbeatCeleryRetrieve(): CancelablePromise<any>;
|
|
120
|
+
/**
|
|
121
|
+
* **Use Case**
|
|
122
|
+
*
|
|
123
|
+
* Celery Beat heartbeat endpoint.
|
|
124
|
+
*
|
|
125
|
+
* **Example Request**
|
|
126
|
+
*
|
|
127
|
+
* GET /api/core/heartbeat/celery-beat/
|
|
128
|
+
*
|
|
129
|
+
* **Response Values**
|
|
130
|
+
*
|
|
131
|
+
* * 200 on success.
|
|
132
|
+
* * 500 on failure.
|
|
133
|
+
* @returns CeleryHeartbeat
|
|
134
|
+
* @throws ApiError
|
|
135
|
+
*/
|
|
136
|
+
static coreHeartbeatCeleryBeatRetrieve(): CancelablePromise<CeleryHeartbeat>;
|
|
137
|
+
/**
|
|
138
|
+
* GET Launch status
|
|
139
|
+
*
|
|
140
|
+
* Params:
|
|
141
|
+
* key
|
|
142
|
+
* user_id: Optional
|
|
143
|
+
* @param key
|
|
144
|
+
* @param userId
|
|
145
|
+
* @returns PlatformList
|
|
146
|
+
* @throws ApiError
|
|
147
|
+
*/
|
|
148
|
+
static coreLauncherRetrieve(key: string, userId?: number): CancelablePromise<PlatformList>;
|
|
149
|
+
/**
|
|
150
|
+
* POST: Launch a new edX platform
|
|
151
|
+
*
|
|
152
|
+
* Params:
|
|
153
|
+
* user_id: The ID of the requesting user (required)
|
|
154
|
+
* key: The Deep LMS subdomain (required)
|
|
155
|
+
* name: The edX platform name ("optional")
|
|
156
|
+
* org: The edX organization ("optional")
|
|
157
|
+
* lms_url: LMS URL ("optional")
|
|
158
|
+
* cms_url: CMS URL ("optional")
|
|
159
|
+
* portal_url: Portal URL ("optional")
|
|
160
|
+
* @param requestBody
|
|
161
|
+
* @returns PlatformList
|
|
162
|
+
* @throws ApiError
|
|
163
|
+
*/
|
|
164
|
+
static coreLauncherCreate(requestBody: LauncherViewPostRequest): CancelablePromise<PlatformList>;
|
|
10
165
|
/**
|
|
11
166
|
* List your LTI Provider Key's
|
|
12
167
|
* @param platformKey Platform Key
|
|
@@ -193,4 +348,291 @@ export declare class CoreService {
|
|
|
193
348
|
* @throws ApiError
|
|
194
349
|
*/
|
|
195
350
|
static coreOrgsThumbnailCreateCreate(org: string, requestBody: ImageUpload): CancelablePromise<ImageUpload>;
|
|
351
|
+
/**
|
|
352
|
+
* GET /api/core/platform/
|
|
353
|
+
* Get main platform info.
|
|
354
|
+
*
|
|
355
|
+
* POST /api/core/platform/
|
|
356
|
+
* Save main platform settings.
|
|
357
|
+
*
|
|
358
|
+
* Params:
|
|
359
|
+
* user_id (optional)
|
|
360
|
+
* key
|
|
361
|
+
* field_key (POST)
|
|
362
|
+
* value (POST)
|
|
363
|
+
* @param key
|
|
364
|
+
* @param userId
|
|
365
|
+
* @returns PlatformList
|
|
366
|
+
* @throws ApiError
|
|
367
|
+
*/
|
|
368
|
+
static corePlatformRetrieve(key: string, userId?: number): CancelablePromise<PlatformList>;
|
|
369
|
+
/**
|
|
370
|
+
* Update platform object
|
|
371
|
+
*
|
|
372
|
+
* Params:
|
|
373
|
+
* user_id
|
|
374
|
+
*
|
|
375
|
+
* key
|
|
376
|
+
* new_key (If changing platform key)
|
|
377
|
+
* name
|
|
378
|
+
*
|
|
379
|
+
* Advanced Params (Don't expose these to users)
|
|
380
|
+
* lms_url
|
|
381
|
+
* cms_url
|
|
382
|
+
* portal_url
|
|
383
|
+
* @param requestBody
|
|
384
|
+
* @returns PlatformList
|
|
385
|
+
* @throws ApiError
|
|
386
|
+
*/
|
|
387
|
+
static corePlatformCreate(requestBody: PlatformUpdatePostRequest): CancelablePromise<PlatformList>;
|
|
388
|
+
/**
|
|
389
|
+
* List Platform API Key's belonging to the target platform
|
|
390
|
+
* @param platformKey Platform key of target platform
|
|
391
|
+
* @returns PlatformApiKey
|
|
392
|
+
* @throws ApiError
|
|
393
|
+
*/
|
|
394
|
+
static corePlatformApiTokensList(platformKey: string): CancelablePromise<Array<PlatformApiKey>>;
|
|
395
|
+
/**
|
|
396
|
+
* Create a new Platform Api Key for the target platform
|
|
397
|
+
* @param requestBody
|
|
398
|
+
* @returns PlatformApiKey
|
|
399
|
+
* @throws ApiError
|
|
400
|
+
*/
|
|
401
|
+
static corePlatformApiTokensCreate(requestBody: PlatformApiKey): CancelablePromise<PlatformApiKey>;
|
|
402
|
+
/**
|
|
403
|
+
* Delete Platform Api Key by name in the target platform
|
|
404
|
+
* @param name
|
|
405
|
+
* @param platformKey Platform key of target platform
|
|
406
|
+
* @returns void
|
|
407
|
+
* @throws ApiError
|
|
408
|
+
*/
|
|
409
|
+
static corePlatformApiTokensDestroy(name: string, platformKey: string): CancelablePromise<void>;
|
|
410
|
+
/**
|
|
411
|
+
* GET /site
|
|
412
|
+
* Get site settings.
|
|
413
|
+
*
|
|
414
|
+
* POST /site
|
|
415
|
+
* Save site settings.
|
|
416
|
+
*
|
|
417
|
+
* Params:
|
|
418
|
+
* user_id
|
|
419
|
+
* key
|
|
420
|
+
* field_key (POST)
|
|
421
|
+
* value (POST)
|
|
422
|
+
* @param key
|
|
423
|
+
* @param userId
|
|
424
|
+
* @returns any
|
|
425
|
+
* @throws ApiError
|
|
426
|
+
*/
|
|
427
|
+
static corePlatformConfigSiteRetrieve(key: string, userId?: number): CancelablePromise<Record<string, any>>;
|
|
428
|
+
/**
|
|
429
|
+
* GET /site
|
|
430
|
+
* Get site settings.
|
|
431
|
+
*
|
|
432
|
+
* POST /site
|
|
433
|
+
* Save site settings.
|
|
434
|
+
*
|
|
435
|
+
* Params:
|
|
436
|
+
* user_id
|
|
437
|
+
* key
|
|
438
|
+
* field_key (POST)
|
|
439
|
+
* value (POST)
|
|
440
|
+
* @param requestBody
|
|
441
|
+
* @returns any
|
|
442
|
+
* @throws ApiError
|
|
443
|
+
*/
|
|
444
|
+
static corePlatformConfigSiteCreate(requestBody?: Record<string, any>): CancelablePromise<Record<string, any>>;
|
|
445
|
+
/**
|
|
446
|
+
* Retrieve users associated with platform
|
|
447
|
+
*
|
|
448
|
+
* Params:
|
|
449
|
+
* platform_key
|
|
450
|
+
* platform_org
|
|
451
|
+
*
|
|
452
|
+
* query
|
|
453
|
+
* sort
|
|
454
|
+
*
|
|
455
|
+
* is_admin: Return tenant admin users
|
|
456
|
+
* @param page
|
|
457
|
+
* @param pageSize
|
|
458
|
+
* @param platformKey
|
|
459
|
+
* @param platformOrg
|
|
460
|
+
* @param query
|
|
461
|
+
* @param sort
|
|
462
|
+
* @returns UserPlatformManagementListViewGetResponse
|
|
463
|
+
* @throws ApiError
|
|
464
|
+
*/
|
|
465
|
+
static corePlatformUsersRetrieve(page?: number, pageSize?: number, platformKey?: string, platformOrg?: string, query?: string, sort?: string): CancelablePromise<UserPlatformManagementListViewGetResponse>;
|
|
466
|
+
/**
|
|
467
|
+
* Invalidate all tokens for the authenticated user
|
|
468
|
+
* @returns any No response body
|
|
469
|
+
* @throws ApiError
|
|
470
|
+
*/
|
|
471
|
+
static coreSessionLogoutCreate(): CancelablePromise<any>;
|
|
472
|
+
/**
|
|
473
|
+
* POST signals/edx/
|
|
474
|
+
* @param requestBody
|
|
475
|
+
* @returns any No response body
|
|
476
|
+
* @throws ApiError
|
|
477
|
+
*/
|
|
478
|
+
static coreSignalsEdxCreate(requestBody: EdxSignalReceiverRequest): CancelablePromise<any>;
|
|
479
|
+
/**
|
|
480
|
+
* Param:
|
|
481
|
+
* Any of user_id/username/email
|
|
482
|
+
* @returns any No response body
|
|
483
|
+
* @throws ApiError
|
|
484
|
+
*/
|
|
485
|
+
static coreTokenProxyCreate(): CancelablePromise<any>;
|
|
486
|
+
/**
|
|
487
|
+
* Check token user
|
|
488
|
+
* @returns any No response body
|
|
489
|
+
* @throws ApiError
|
|
490
|
+
*/
|
|
491
|
+
static coreTokenVerifyRetrieve(): CancelablePromise<any>;
|
|
492
|
+
/**
|
|
493
|
+
* Show (active) user groups associated with a platform
|
|
494
|
+
* @returns any No response body
|
|
495
|
+
* @throws ApiError
|
|
496
|
+
*/
|
|
497
|
+
static coreUserGroupsRetrieve(): CancelablePromise<any>;
|
|
498
|
+
/**
|
|
499
|
+
* Create/update a user group
|
|
500
|
+
* @returns any No response body
|
|
501
|
+
* @throws ApiError
|
|
502
|
+
*/
|
|
503
|
+
static coreUserGroupsCreate(): CancelablePromise<any>;
|
|
504
|
+
/**
|
|
505
|
+
* Delete user group
|
|
506
|
+
* @returns void
|
|
507
|
+
* @throws ApiError
|
|
508
|
+
*/
|
|
509
|
+
static coreUserGroupsDestroy(): CancelablePromise<void>;
|
|
510
|
+
/**
|
|
511
|
+
* Show active users in user group (paginated)
|
|
512
|
+
*
|
|
513
|
+
* group_id is numeric ID of group
|
|
514
|
+
* @returns any No response body
|
|
515
|
+
* @throws ApiError
|
|
516
|
+
*/
|
|
517
|
+
static coreUserGroupsLinkRetrieve(): CancelablePromise<any>;
|
|
518
|
+
/**
|
|
519
|
+
* Add single user to user group, or update status
|
|
520
|
+
* @returns any No response body
|
|
521
|
+
* @throws ApiError
|
|
522
|
+
*/
|
|
523
|
+
static coreUserGroupsLinkCreate(): CancelablePromise<any>;
|
|
524
|
+
/**
|
|
525
|
+
* Delete user group link
|
|
526
|
+
* @returns void
|
|
527
|
+
* @throws ApiError
|
|
528
|
+
*/
|
|
529
|
+
static coreUserGroupsLinkDestroy(): CancelablePromise<void>;
|
|
530
|
+
/**
|
|
531
|
+
* Add users to user group, or update status
|
|
532
|
+
* @returns any No response body
|
|
533
|
+
* @throws ApiError
|
|
534
|
+
*/
|
|
535
|
+
static coreUserGroupsLinkBulkCreate(): CancelablePromise<any>;
|
|
536
|
+
/**
|
|
537
|
+
* Initiates the account deletion process for the authenticated user or specified username.
|
|
538
|
+
* @param requestBody
|
|
539
|
+
* @returns UserDeleteAPIResponse
|
|
540
|
+
* @throws ApiError
|
|
541
|
+
*/
|
|
542
|
+
static coreUsersDeleteCreate(requestBody?: UserDeleteAPIRequest): CancelablePromise<UserDeleteAPIResponse>;
|
|
543
|
+
/**
|
|
544
|
+
* Get detailed user information.
|
|
545
|
+
*
|
|
546
|
+
* Make permission check for platform admins here,
|
|
547
|
+
* then proxy request to edx.
|
|
548
|
+
* @param email
|
|
549
|
+
* @param userId
|
|
550
|
+
* @param username
|
|
551
|
+
* @returns any No response body
|
|
552
|
+
* @throws ApiError
|
|
553
|
+
*/
|
|
554
|
+
static coreUsersMetadataProxyRetrieve(email?: string, userId?: number, username?: string): CancelablePromise<any>;
|
|
555
|
+
/**
|
|
556
|
+
* Retrieve platforms associated with user_id
|
|
557
|
+
*
|
|
558
|
+
* Params:
|
|
559
|
+
* user_id
|
|
560
|
+
* username
|
|
561
|
+
* email
|
|
562
|
+
* @param email
|
|
563
|
+
* @param userId
|
|
564
|
+
* @param username
|
|
565
|
+
* @returns UserPlatformLink
|
|
566
|
+
* @throws ApiError
|
|
567
|
+
*/
|
|
568
|
+
static coreUsersPlatformsList(email?: string, userId?: number, username?: string): CancelablePromise<Array<UserPlatformLink>>;
|
|
569
|
+
/**
|
|
570
|
+
* Explicitly link platform to user_id
|
|
571
|
+
*
|
|
572
|
+
* Params:
|
|
573
|
+
* user_id
|
|
574
|
+
* platform_key
|
|
575
|
+
* added_on (optional)
|
|
576
|
+
* expired_on (optional)
|
|
577
|
+
* is_admin (optional)
|
|
578
|
+
* active (optional)
|
|
579
|
+
* @param requestBody
|
|
580
|
+
* @returns any No response body
|
|
581
|
+
* @throws ApiError
|
|
582
|
+
*/
|
|
583
|
+
static coreUsersPlatformsCreate(requestBody: UserPlatformViewPostRequest): CancelablePromise<any>;
|
|
584
|
+
/**
|
|
585
|
+
* Retrieve proxy user information by user_id
|
|
586
|
+
* @param email
|
|
587
|
+
* @param userId
|
|
588
|
+
* @param username
|
|
589
|
+
* @returns UserProxyGetResponse
|
|
590
|
+
* @throws ApiError
|
|
591
|
+
*/
|
|
592
|
+
static coreUsersProxyRetrieve(email?: string, userId?: number, username?: string): CancelablePromise<UserProxyGetResponse>;
|
|
593
|
+
/**
|
|
594
|
+
* Add proxy user
|
|
595
|
+
*
|
|
596
|
+
* Params:
|
|
597
|
+
* user_id
|
|
598
|
+
* username
|
|
599
|
+
* email
|
|
600
|
+
* edx_data
|
|
601
|
+
* data
|
|
602
|
+
* @param requestBody
|
|
603
|
+
* @returns UserProxyPostResponse
|
|
604
|
+
* @throws ApiError
|
|
605
|
+
*/
|
|
606
|
+
static coreUsersProxyCreate(requestBody: UserProxyPostRequest): CancelablePromise<UserProxyPostResponse>;
|
|
607
|
+
/**
|
|
608
|
+
* Add proxy users by bulk
|
|
609
|
+
*
|
|
610
|
+
* Params:
|
|
611
|
+
* users: list of user objects
|
|
612
|
+
* ```
|
|
613
|
+
* [
|
|
614
|
+
* {"user_id": 1, ...},
|
|
615
|
+
* {"user_id": 2, ...}
|
|
616
|
+
* ]
|
|
617
|
+
* ```
|
|
618
|
+
* @param requestBody
|
|
619
|
+
* @returns string
|
|
620
|
+
* @throws ApiError
|
|
621
|
+
*/
|
|
622
|
+
static coreUsersProxyBulkCreate(requestBody: UserProxyBulkRequest): CancelablePromise<Array<Record<string, string>>>;
|
|
623
|
+
/**
|
|
624
|
+
* Retrieve users based on query
|
|
625
|
+
* Not intended for public use with multitenant platforms
|
|
626
|
+
*
|
|
627
|
+
* Params:
|
|
628
|
+
* query
|
|
629
|
+
* sort
|
|
630
|
+
* @param page
|
|
631
|
+
* @param pageSize
|
|
632
|
+
* @param query
|
|
633
|
+
* @param sort
|
|
634
|
+
* @returns UserSearchViewGetResponse
|
|
635
|
+
* @throws ApiError
|
|
636
|
+
*/
|
|
637
|
+
static coreUsersSearchRetrieve(page?: number, pageSize?: number, query?: string, sort?: string): CancelablePromise<UserSearchViewGetResponse>;
|
|
196
638
|
}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import type { ActivateUserFreeTrial } from '../models/ActivateUserFreeTrial';
|
|
2
|
+
import type { OnboardingStatusUpdate } from '../models/OnboardingStatusUpdate';
|
|
3
|
+
import type { PaginatedUserAppList } from '../models/PaginatedUserAppList';
|
|
4
|
+
import type { CancelablePromise } from '../core/CancelablePromise';
|
|
5
|
+
export declare class FeaturesService {
|
|
6
|
+
/**
|
|
7
|
+
* Returns a list of the apps that the user has access to.
|
|
8
|
+
* @param page A page number within the paginated result set.
|
|
9
|
+
* @param pageSize Number of results to return per page.
|
|
10
|
+
* @returns PaginatedUserAppList
|
|
11
|
+
* @throws ApiError
|
|
12
|
+
*/
|
|
13
|
+
static featuresAppsList(page?: number, pageSize?: number): CancelablePromise<PaginatedUserAppList>;
|
|
14
|
+
/**
|
|
15
|
+
* Updates the user onboarding completed status
|
|
16
|
+
* @param requestBody
|
|
17
|
+
* @returns OnboardingStatusUpdate
|
|
18
|
+
* @throws ApiError
|
|
19
|
+
*/
|
|
20
|
+
static featuresAppsUpdateCreate(requestBody: OnboardingStatusUpdate): CancelablePromise<OnboardingStatusUpdate>;
|
|
21
|
+
/**
|
|
22
|
+
* Activates free trial for the user
|
|
23
|
+
*
|
|
24
|
+
* Set free_trial_started to True| false for the user app
|
|
25
|
+
*
|
|
26
|
+
* App URL or ID is required as well as the platform key
|
|
27
|
+
* @param requestBody
|
|
28
|
+
* @returns ActivateUserFreeTrial
|
|
29
|
+
* @throws ApiError
|
|
30
|
+
*/
|
|
31
|
+
static featuresAppsUpdateTrialStatusCreate(requestBody: ActivateUserFreeTrial): CancelablePromise<ActivateUserFreeTrial>;
|
|
32
|
+
/**
|
|
33
|
+
* POST
|
|
34
|
+
* Bulk update user feature config
|
|
35
|
+
*
|
|
36
|
+
* NOTE: Will not create user feature configs
|
|
37
|
+
*
|
|
38
|
+
* Params:
|
|
39
|
+
* platform_key
|
|
40
|
+
*
|
|
41
|
+
* config
|
|
42
|
+
* (OR)
|
|
43
|
+
* feature
|
|
44
|
+
* values
|
|
45
|
+
* @returns any No response body
|
|
46
|
+
* @throws ApiError
|
|
47
|
+
*/
|
|
48
|
+
static featuresBulkConfigCreate(): CancelablePromise<any>;
|
|
49
|
+
/**
|
|
50
|
+
* Query user feature config
|
|
51
|
+
*
|
|
52
|
+
* Params:
|
|
53
|
+
* user_id/username/email
|
|
54
|
+
* platform_key
|
|
55
|
+
* @returns any No response body
|
|
56
|
+
* @throws ApiError
|
|
57
|
+
*/
|
|
58
|
+
static featuresConfigRetrieve(): CancelablePromise<any>;
|
|
59
|
+
/**
|
|
60
|
+
* POST
|
|
61
|
+
* Update user feature config
|
|
62
|
+
*
|
|
63
|
+
* Params:
|
|
64
|
+
* user_id/username/email
|
|
65
|
+
* platform_key
|
|
66
|
+
*
|
|
67
|
+
* config
|
|
68
|
+
* (OR)
|
|
69
|
+
* feature
|
|
70
|
+
* values
|
|
71
|
+
* @returns any No response body
|
|
72
|
+
* @throws ApiError
|
|
73
|
+
*/
|
|
74
|
+
static featuresConfigCreate(): CancelablePromise<any>;
|
|
75
|
+
}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import type { MediaResource } from '../models/MediaResource';
|
|
2
|
+
import type { PatchedMediaResource } from '../models/PatchedMediaResource';
|
|
3
|
+
import type { CancelablePromise } from '../core/CancelablePromise';
|
|
4
|
+
export declare class MediaResourcesService {
|
|
5
|
+
/**
|
|
6
|
+
* List and filter media resources. Supports filtering by course_id, unit_id, item_id and searching across multiple fields.
|
|
7
|
+
* @param org Organization identifier
|
|
8
|
+
* @param userId User identifier
|
|
9
|
+
* @param courseId Filter by course ID (e.g., course-v1:main+NB101+2025-T1)
|
|
10
|
+
* @param itemId Filter by item ID
|
|
11
|
+
* @param page A page number within the paginated result set.
|
|
12
|
+
* @param pageSize Number of results to return per page.
|
|
13
|
+
* @param search Search across title, description, course_id, unit_id, item_id, and file_url
|
|
14
|
+
* @param unitId Filter by unit ID (e.g., block-v1:main+NB101+2025-T1+type@vertical+block@12345)
|
|
15
|
+
* @returns any Successfully retrieved media resources
|
|
16
|
+
* @throws ApiError
|
|
17
|
+
*/
|
|
18
|
+
static mediaOrgsUsersMediaMediaResourcesList(org: string, userId: string, courseId?: string, itemId?: string, page?: number, pageSize?: number, search?: string, unitId?: string): CancelablePromise<any>;
|
|
19
|
+
/**
|
|
20
|
+
* List and filter media resources. Supports filtering by course_id, unit_id, item_id and searching across multiple fields.
|
|
21
|
+
* @param org Organization identifier
|
|
22
|
+
* @param userId User identifier
|
|
23
|
+
* @param requestBody
|
|
24
|
+
* @param courseId Filter by course ID (e.g., course-v1:main+NB101+2025-T1)
|
|
25
|
+
* @param itemId Filter by item ID
|
|
26
|
+
* @param search Search across title, description, course_id, unit_id, item_id, and file_url
|
|
27
|
+
* @param unitId Filter by unit ID (e.g., block-v1:main+NB101+2025-T1+type@vertical+block@12345)
|
|
28
|
+
* @returns any Successfully retrieved media resources
|
|
29
|
+
* @throws ApiError
|
|
30
|
+
*/
|
|
31
|
+
static mediaOrgsUsersMediaMediaResourcesCreate(org: string, userId: string, requestBody: MediaResource, courseId?: string, itemId?: string, search?: string, unitId?: string): CancelablePromise<any>;
|
|
32
|
+
/**
|
|
33
|
+
* List and filter media resources. Supports filtering by course_id, unit_id, item_id and searching across multiple fields.
|
|
34
|
+
* @param id A unique integer value identifying this Media Resource.
|
|
35
|
+
* @param org Organization identifier
|
|
36
|
+
* @param userId User identifier
|
|
37
|
+
* @param courseId Filter by course ID (e.g., course-v1:main+NB101+2025-T1)
|
|
38
|
+
* @param itemId Filter by item ID
|
|
39
|
+
* @param search Search across title, description, course_id, unit_id, item_id, and file_url
|
|
40
|
+
* @param unitId Filter by unit ID (e.g., block-v1:main+NB101+2025-T1+type@vertical+block@12345)
|
|
41
|
+
* @returns any Successfully retrieved media resources
|
|
42
|
+
* @throws ApiError
|
|
43
|
+
*/
|
|
44
|
+
static mediaOrgsUsersMediaMediaResourcesRetrieve(id: number, org: string, userId: string, courseId?: string, itemId?: string, search?: string, unitId?: string): CancelablePromise<any>;
|
|
45
|
+
/**
|
|
46
|
+
* List and filter media resources. Supports filtering by course_id, unit_id, item_id and searching across multiple fields.
|
|
47
|
+
* @param id A unique integer value identifying this Media Resource.
|
|
48
|
+
* @param org Organization identifier
|
|
49
|
+
* @param userId User identifier
|
|
50
|
+
* @param requestBody
|
|
51
|
+
* @param courseId Filter by course ID (e.g., course-v1:main+NB101+2025-T1)
|
|
52
|
+
* @param itemId Filter by item ID
|
|
53
|
+
* @param search Search across title, description, course_id, unit_id, item_id, and file_url
|
|
54
|
+
* @param unitId Filter by unit ID (e.g., block-v1:main+NB101+2025-T1+type@vertical+block@12345)
|
|
55
|
+
* @returns any Successfully retrieved media resources
|
|
56
|
+
* @throws ApiError
|
|
57
|
+
*/
|
|
58
|
+
static mediaOrgsUsersMediaMediaResourcesUpdate(id: number, org: string, userId: string, requestBody: MediaResource, courseId?: string, itemId?: string, search?: string, unitId?: string): CancelablePromise<any>;
|
|
59
|
+
/**
|
|
60
|
+
* List and filter media resources. Supports filtering by course_id, unit_id, item_id and searching across multiple fields.
|
|
61
|
+
* @param id A unique integer value identifying this Media Resource.
|
|
62
|
+
* @param org Organization identifier
|
|
63
|
+
* @param userId User identifier
|
|
64
|
+
* @param courseId Filter by course ID (e.g., course-v1:main+NB101+2025-T1)
|
|
65
|
+
* @param itemId Filter by item ID
|
|
66
|
+
* @param search Search across title, description, course_id, unit_id, item_id, and file_url
|
|
67
|
+
* @param unitId Filter by unit ID (e.g., block-v1:main+NB101+2025-T1+type@vertical+block@12345)
|
|
68
|
+
* @param requestBody
|
|
69
|
+
* @returns any Successfully retrieved media resources
|
|
70
|
+
* @throws ApiError
|
|
71
|
+
*/
|
|
72
|
+
static mediaOrgsUsersMediaMediaResourcesPartialUpdate(id: number, org: string, userId: string, courseId?: string, itemId?: string, search?: string, unitId?: string, requestBody?: PatchedMediaResource): CancelablePromise<any>;
|
|
73
|
+
/**
|
|
74
|
+
* List and filter media resources. Supports filtering by course_id, unit_id, item_id and searching across multiple fields.
|
|
75
|
+
* @param id A unique integer value identifying this Media Resource.
|
|
76
|
+
* @param org Organization identifier
|
|
77
|
+
* @param userId User identifier
|
|
78
|
+
* @param courseId Filter by course ID (e.g., course-v1:main+NB101+2025-T1)
|
|
79
|
+
* @param itemId Filter by item ID
|
|
80
|
+
* @param search Search across title, description, course_id, unit_id, item_id, and file_url
|
|
81
|
+
* @param unitId Filter by unit ID (e.g., block-v1:main+NB101+2025-T1+type@vertical+block@12345)
|
|
82
|
+
* @returns any Successfully retrieved media resources
|
|
83
|
+
* @throws ApiError
|
|
84
|
+
*/
|
|
85
|
+
static mediaOrgsUsersMediaMediaResourcesDestroy(id: number, org: string, userId: string, courseId?: string, itemId?: string, search?: string, unitId?: string): CancelablePromise<any>;
|
|
86
|
+
/**
|
|
87
|
+
* Get media resources for a specific item. The item_type determines which resources are returned based on the provided item_id.
|
|
88
|
+
* @param itemId ID of the item
|
|
89
|
+
* @param itemType Type of item. Valid values: course, unit, resource, course_unit, course_resource, unit_resource, all
|
|
90
|
+
* @param org Organization identifier
|
|
91
|
+
* @param userId User identifier
|
|
92
|
+
* @param courseId Filter by course ID (e.g., course-v1:main+NB101+2025-T1)
|
|
93
|
+
* @param search Search across title, description, course_id, unit_id, item_id, and file_url
|
|
94
|
+
* @param unitId Filter by unit ID (e.g., block-v1:main+NB101+2025-T1+type@vertical+block@12345)
|
|
95
|
+
* @returns any Successfully retrieved media resources for item
|
|
96
|
+
* @throws ApiError
|
|
97
|
+
*/
|
|
98
|
+
static mediaOrgsUsersMediaMediaResourcesByItemRetrieve(itemId: string, itemType: 'all' | 'course' | 'course_resource' | 'course_unit' | 'resource' | 'unit' | 'unit_resource', org: string, userId: string, courseId?: string, search?: string, unitId?: string): CancelablePromise<any>;
|
|
99
|
+
/**
|
|
100
|
+
* Search media resources by title, description, or IDs. Supports filtering results by course_id, unit_id, and item_id.
|
|
101
|
+
* @param org Organization identifier
|
|
102
|
+
* @param q Search query string
|
|
103
|
+
* @param userId User identifier
|
|
104
|
+
* @param courseId Filter results by course ID
|
|
105
|
+
* @param itemId Filter results by item ID
|
|
106
|
+
* @param search Search across title, description, course_id, unit_id, item_id, and file_url
|
|
107
|
+
* @param unitId Filter results by unit ID
|
|
108
|
+
* @returns any Successfully searched media resources
|
|
109
|
+
* @throws ApiError
|
|
110
|
+
*/
|
|
111
|
+
static mediaOrgsUsersMediaMediaResourcesSearchRetrieve(org: string, q: string, userId: string, courseId?: string, itemId?: string, search?: string, unitId?: string): CancelablePromise<any>;
|
|
112
|
+
}
|