@jugarhoy/api 1.1.28 → 1.1.29
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/apis/AdminServiceTypesApi.ts +259 -0
- package/apis/ClubApi.ts +230 -0
- package/apis/index.ts +1 -0
- package/models/AppLocationHourItem.ts +84 -0
- package/models/AppLocationItem.ts +164 -0
- package/models/ClubProfileDtoProfile.ts +94 -0
- package/models/ClubProfileDtoProfileLocationHoursInner.ts +81 -0
- package/models/Customer.ts +31 -0
- package/models/CustomerDto.ts +32 -0
- package/models/Location.ts +15 -0
- package/models/LocationDto.ts +15 -0
- package/models/LocationDtoLocationHoursInner.ts +84 -0
- package/models/LocationHour.ts +102 -0
- package/models/MyClubDto.ts +16 -0
- package/models/RegisterClubParams.ts +15 -0
- package/models/RegisterClubParamsLocationHoursInner.ts +84 -0
- package/models/ServiceType.ts +70 -22
- package/models/ServiceTypeDto.ts +92 -0
- package/models/UpdateAppLocationParams.ts +137 -0
- package/models/UpdateClubSettingsParams.ts +176 -0
- package/models/UpdateClubSettingsResponse.ts +100 -0
- package/models/UpdateClubSettingsServiceTypeItem.ts +83 -0
- package/models/index.ts +11 -0
- package/package.json +1 -1
- package/runtime.ts +1 -1
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* Jugar Hoy - API
|
|
5
|
+
* API documentation for Jugar Hoy application
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: 1.5.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 { Sport } from './Sport';
|
|
17
|
+
import {
|
|
18
|
+
SportFromJSON,
|
|
19
|
+
SportFromJSONTyped,
|
|
20
|
+
SportToJSON,
|
|
21
|
+
SportToJSONTyped,
|
|
22
|
+
} from './Sport';
|
|
23
|
+
import type { UpdateClubSettingsServiceTypeItem } from './UpdateClubSettingsServiceTypeItem';
|
|
24
|
+
import {
|
|
25
|
+
UpdateClubSettingsServiceTypeItemFromJSON,
|
|
26
|
+
UpdateClubSettingsServiceTypeItemFromJSONTyped,
|
|
27
|
+
UpdateClubSettingsServiceTypeItemToJSON,
|
|
28
|
+
UpdateClubSettingsServiceTypeItemToJSONTyped,
|
|
29
|
+
} from './UpdateClubSettingsServiceTypeItem';
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
*
|
|
33
|
+
* @export
|
|
34
|
+
* @interface UpdateClubSettingsParams
|
|
35
|
+
*/
|
|
36
|
+
export interface UpdateClubSettingsParams {
|
|
37
|
+
/**
|
|
38
|
+
*
|
|
39
|
+
* @type {string}
|
|
40
|
+
* @memberof UpdateClubSettingsParams
|
|
41
|
+
*/
|
|
42
|
+
name?: string;
|
|
43
|
+
/**
|
|
44
|
+
*
|
|
45
|
+
* @type {string}
|
|
46
|
+
* @memberof UpdateClubSettingsParams
|
|
47
|
+
*/
|
|
48
|
+
phone?: string | null;
|
|
49
|
+
/**
|
|
50
|
+
*
|
|
51
|
+
* @type {string}
|
|
52
|
+
* @memberof UpdateClubSettingsParams
|
|
53
|
+
*/
|
|
54
|
+
website?: string | null;
|
|
55
|
+
/**
|
|
56
|
+
*
|
|
57
|
+
* @type {Array<Sport>}
|
|
58
|
+
* @memberof UpdateClubSettingsParams
|
|
59
|
+
*/
|
|
60
|
+
sports?: Array<Sport>;
|
|
61
|
+
/**
|
|
62
|
+
*
|
|
63
|
+
* @type {string}
|
|
64
|
+
* @memberof UpdateClubSettingsParams
|
|
65
|
+
*/
|
|
66
|
+
instagramHandle?: string | null;
|
|
67
|
+
/**
|
|
68
|
+
*
|
|
69
|
+
* @type {string}
|
|
70
|
+
* @memberof UpdateClubSettingsParams
|
|
71
|
+
*/
|
|
72
|
+
facebookHandle?: string | null;
|
|
73
|
+
/**
|
|
74
|
+
*
|
|
75
|
+
* @type {string}
|
|
76
|
+
* @memberof UpdateClubSettingsParams
|
|
77
|
+
*/
|
|
78
|
+
twitterHandle?: string | null;
|
|
79
|
+
/**
|
|
80
|
+
*
|
|
81
|
+
* @type {string}
|
|
82
|
+
* @memberof UpdateClubSettingsParams
|
|
83
|
+
*/
|
|
84
|
+
youtubeHandle?: string | null;
|
|
85
|
+
/**
|
|
86
|
+
* Base64 encoded avatar image (data:image/jpeg;base64,...)
|
|
87
|
+
* @type {string}
|
|
88
|
+
* @memberof UpdateClubSettingsParams
|
|
89
|
+
*/
|
|
90
|
+
avatarBase64?: string | null;
|
|
91
|
+
/**
|
|
92
|
+
* Base64 encoded banner image (data:image/jpeg;base64,...)
|
|
93
|
+
* @type {string}
|
|
94
|
+
* @memberof UpdateClubSettingsParams
|
|
95
|
+
*/
|
|
96
|
+
headerBase64?: string | null;
|
|
97
|
+
/**
|
|
98
|
+
* Background color for the club header (hex, e.g. "#FF8C32")
|
|
99
|
+
* @type {string}
|
|
100
|
+
* @memberof UpdateClubSettingsParams
|
|
101
|
+
*/
|
|
102
|
+
bgColor?: string | null;
|
|
103
|
+
/**
|
|
104
|
+
* Foreground/text color for the club header (hex, e.g. "#FFFFFF")
|
|
105
|
+
* @type {string}
|
|
106
|
+
* @memberof UpdateClubSettingsParams
|
|
107
|
+
*/
|
|
108
|
+
fgColor?: string | null;
|
|
109
|
+
/**
|
|
110
|
+
* When provided, replaces all service types for this club
|
|
111
|
+
* @type {Array<UpdateClubSettingsServiceTypeItem>}
|
|
112
|
+
* @memberof UpdateClubSettingsParams
|
|
113
|
+
*/
|
|
114
|
+
serviceTypes?: Array<UpdateClubSettingsServiceTypeItem> | null;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
/**
|
|
118
|
+
* Check if a given object implements the UpdateClubSettingsParams interface.
|
|
119
|
+
*/
|
|
120
|
+
export function instanceOfUpdateClubSettingsParams(value: object): value is UpdateClubSettingsParams {
|
|
121
|
+
return true;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
export function UpdateClubSettingsParamsFromJSON(json: any): UpdateClubSettingsParams {
|
|
125
|
+
return UpdateClubSettingsParamsFromJSONTyped(json, false);
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
export function UpdateClubSettingsParamsFromJSONTyped(json: any, ignoreDiscriminator: boolean): UpdateClubSettingsParams {
|
|
129
|
+
if (json == null) {
|
|
130
|
+
return json;
|
|
131
|
+
}
|
|
132
|
+
return {
|
|
133
|
+
|
|
134
|
+
'name': json['name'] == null ? undefined : json['name'],
|
|
135
|
+
'phone': json['phone'] == null ? undefined : json['phone'],
|
|
136
|
+
'website': json['website'] == null ? undefined : json['website'],
|
|
137
|
+
'sports': json['sports'] == null ? undefined : ((json['sports'] as Array<any>).map(SportFromJSON)),
|
|
138
|
+
'instagramHandle': json['instagramHandle'] == null ? undefined : json['instagramHandle'],
|
|
139
|
+
'facebookHandle': json['facebookHandle'] == null ? undefined : json['facebookHandle'],
|
|
140
|
+
'twitterHandle': json['twitterHandle'] == null ? undefined : json['twitterHandle'],
|
|
141
|
+
'youtubeHandle': json['youtubeHandle'] == null ? undefined : json['youtubeHandle'],
|
|
142
|
+
'avatarBase64': json['avatarBase64'] == null ? undefined : json['avatarBase64'],
|
|
143
|
+
'headerBase64': json['headerBase64'] == null ? undefined : json['headerBase64'],
|
|
144
|
+
'bgColor': json['bgColor'] == null ? undefined : json['bgColor'],
|
|
145
|
+
'fgColor': json['fgColor'] == null ? undefined : json['fgColor'],
|
|
146
|
+
'serviceTypes': json['serviceTypes'] == null ? undefined : ((json['serviceTypes'] as Array<any>).map(UpdateClubSettingsServiceTypeItemFromJSON)),
|
|
147
|
+
};
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
export function UpdateClubSettingsParamsToJSON(json: any): UpdateClubSettingsParams {
|
|
151
|
+
return UpdateClubSettingsParamsToJSONTyped(json, false);
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
export function UpdateClubSettingsParamsToJSONTyped(value?: UpdateClubSettingsParams | null, ignoreDiscriminator: boolean = false): any {
|
|
155
|
+
if (value == null) {
|
|
156
|
+
return value;
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
return {
|
|
160
|
+
|
|
161
|
+
'name': value['name'],
|
|
162
|
+
'phone': value['phone'],
|
|
163
|
+
'website': value['website'],
|
|
164
|
+
'sports': value['sports'] == null ? undefined : ((value['sports'] as Array<any>).map(SportToJSON)),
|
|
165
|
+
'instagramHandle': value['instagramHandle'],
|
|
166
|
+
'facebookHandle': value['facebookHandle'],
|
|
167
|
+
'twitterHandle': value['twitterHandle'],
|
|
168
|
+
'youtubeHandle': value['youtubeHandle'],
|
|
169
|
+
'avatarBase64': value['avatarBase64'],
|
|
170
|
+
'headerBase64': value['headerBase64'],
|
|
171
|
+
'bgColor': value['bgColor'],
|
|
172
|
+
'fgColor': value['fgColor'],
|
|
173
|
+
'serviceTypes': value['serviceTypes'] == null ? undefined : ((value['serviceTypes'] as Array<any>).map(UpdateClubSettingsServiceTypeItemToJSON)),
|
|
174
|
+
};
|
|
175
|
+
}
|
|
176
|
+
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* Jugar Hoy - API
|
|
5
|
+
* API documentation for Jugar Hoy application
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: 1.5.0
|
|
8
|
+
*
|
|
9
|
+
*
|
|
10
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
11
|
+
* https://openapi-generator.tech
|
|
12
|
+
* Do not edit the class manually.
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
import { mapValues } from '../runtime';
|
|
16
|
+
/**
|
|
17
|
+
*
|
|
18
|
+
* @export
|
|
19
|
+
* @interface UpdateClubSettingsResponse
|
|
20
|
+
*/
|
|
21
|
+
export interface UpdateClubSettingsResponse {
|
|
22
|
+
/**
|
|
23
|
+
*
|
|
24
|
+
* @type {string}
|
|
25
|
+
* @memberof UpdateClubSettingsResponse
|
|
26
|
+
*/
|
|
27
|
+
customerId: string;
|
|
28
|
+
/**
|
|
29
|
+
*
|
|
30
|
+
* @type {string}
|
|
31
|
+
* @memberof UpdateClubSettingsResponse
|
|
32
|
+
*/
|
|
33
|
+
customerCode: string;
|
|
34
|
+
/**
|
|
35
|
+
*
|
|
36
|
+
* @type {string}
|
|
37
|
+
* @memberof UpdateClubSettingsResponse
|
|
38
|
+
*/
|
|
39
|
+
customerName: string;
|
|
40
|
+
/**
|
|
41
|
+
*
|
|
42
|
+
* @type {string}
|
|
43
|
+
* @memberof UpdateClubSettingsResponse
|
|
44
|
+
*/
|
|
45
|
+
avatarUrl?: string | null;
|
|
46
|
+
/**
|
|
47
|
+
*
|
|
48
|
+
* @type {string}
|
|
49
|
+
* @memberof UpdateClubSettingsResponse
|
|
50
|
+
*/
|
|
51
|
+
headerUrl?: string | null;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
/**
|
|
55
|
+
* Check if a given object implements the UpdateClubSettingsResponse interface.
|
|
56
|
+
*/
|
|
57
|
+
export function instanceOfUpdateClubSettingsResponse(value: object): value is UpdateClubSettingsResponse {
|
|
58
|
+
if (!('customerId' in value) || value['customerId'] === undefined) return false;
|
|
59
|
+
if (!('customerCode' in value) || value['customerCode'] === undefined) return false;
|
|
60
|
+
if (!('customerName' in value) || value['customerName'] === undefined) return false;
|
|
61
|
+
return true;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
export function UpdateClubSettingsResponseFromJSON(json: any): UpdateClubSettingsResponse {
|
|
65
|
+
return UpdateClubSettingsResponseFromJSONTyped(json, false);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
export function UpdateClubSettingsResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): UpdateClubSettingsResponse {
|
|
69
|
+
if (json == null) {
|
|
70
|
+
return json;
|
|
71
|
+
}
|
|
72
|
+
return {
|
|
73
|
+
|
|
74
|
+
'customerId': json['customerId'],
|
|
75
|
+
'customerCode': json['customerCode'],
|
|
76
|
+
'customerName': json['customerName'],
|
|
77
|
+
'avatarUrl': json['avatarUrl'] == null ? undefined : json['avatarUrl'],
|
|
78
|
+
'headerUrl': json['headerUrl'] == null ? undefined : json['headerUrl'],
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
export function UpdateClubSettingsResponseToJSON(json: any): UpdateClubSettingsResponse {
|
|
83
|
+
return UpdateClubSettingsResponseToJSONTyped(json, false);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
export function UpdateClubSettingsResponseToJSONTyped(value?: UpdateClubSettingsResponse | null, ignoreDiscriminator: boolean = false): any {
|
|
87
|
+
if (value == null) {
|
|
88
|
+
return value;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
return {
|
|
92
|
+
|
|
93
|
+
'customerId': value['customerId'],
|
|
94
|
+
'customerCode': value['customerCode'],
|
|
95
|
+
'customerName': value['customerName'],
|
|
96
|
+
'avatarUrl': value['avatarUrl'],
|
|
97
|
+
'headerUrl': value['headerUrl'],
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* Jugar Hoy - API
|
|
5
|
+
* API documentation for Jugar Hoy application
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: 1.5.0
|
|
8
|
+
*
|
|
9
|
+
*
|
|
10
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
11
|
+
* https://openapi-generator.tech
|
|
12
|
+
* Do not edit the class manually.
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
import { mapValues } from '../runtime';
|
|
16
|
+
/**
|
|
17
|
+
*
|
|
18
|
+
* @export
|
|
19
|
+
* @interface UpdateClubSettingsServiceTypeItem
|
|
20
|
+
*/
|
|
21
|
+
export interface UpdateClubSettingsServiceTypeItem {
|
|
22
|
+
/**
|
|
23
|
+
* Display name of the service
|
|
24
|
+
* @type {string}
|
|
25
|
+
* @memberof UpdateClubSettingsServiceTypeItem
|
|
26
|
+
*/
|
|
27
|
+
name: string;
|
|
28
|
+
/**
|
|
29
|
+
* Material Icons name (e.g. "wifi", "fitness_center")
|
|
30
|
+
* @type {string}
|
|
31
|
+
* @memberof UpdateClubSettingsServiceTypeItem
|
|
32
|
+
*/
|
|
33
|
+
icon: string;
|
|
34
|
+
/**
|
|
35
|
+
* Optional short description
|
|
36
|
+
* @type {string}
|
|
37
|
+
* @memberof UpdateClubSettingsServiceTypeItem
|
|
38
|
+
*/
|
|
39
|
+
description?: string | null;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* Check if a given object implements the UpdateClubSettingsServiceTypeItem interface.
|
|
44
|
+
*/
|
|
45
|
+
export function instanceOfUpdateClubSettingsServiceTypeItem(value: object): value is UpdateClubSettingsServiceTypeItem {
|
|
46
|
+
if (!('name' in value) || value['name'] === undefined) return false;
|
|
47
|
+
if (!('icon' in value) || value['icon'] === undefined) return false;
|
|
48
|
+
return true;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export function UpdateClubSettingsServiceTypeItemFromJSON(json: any): UpdateClubSettingsServiceTypeItem {
|
|
52
|
+
return UpdateClubSettingsServiceTypeItemFromJSONTyped(json, false);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
export function UpdateClubSettingsServiceTypeItemFromJSONTyped(json: any, ignoreDiscriminator: boolean): UpdateClubSettingsServiceTypeItem {
|
|
56
|
+
if (json == null) {
|
|
57
|
+
return json;
|
|
58
|
+
}
|
|
59
|
+
return {
|
|
60
|
+
|
|
61
|
+
'name': json['name'],
|
|
62
|
+
'icon': json['icon'],
|
|
63
|
+
'description': json['description'] == null ? undefined : json['description'],
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
export function UpdateClubSettingsServiceTypeItemToJSON(json: any): UpdateClubSettingsServiceTypeItem {
|
|
68
|
+
return UpdateClubSettingsServiceTypeItemToJSONTyped(json, false);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
export function UpdateClubSettingsServiceTypeItemToJSONTyped(value?: UpdateClubSettingsServiceTypeItem | null, ignoreDiscriminator: boolean = false): any {
|
|
72
|
+
if (value == null) {
|
|
73
|
+
return value;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
return {
|
|
77
|
+
|
|
78
|
+
'name': value['name'],
|
|
79
|
+
'icon': value['icon'],
|
|
80
|
+
'description': value['description'],
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
|
package/models/index.ts
CHANGED
|
@@ -11,6 +11,8 @@ export * from './ApiAdminPlayPricesIdPutRequest';
|
|
|
11
11
|
export * from './ApiAdminPlayPricesPostRequest';
|
|
12
12
|
export * from './ApiAppFalta1NotificationsSendNewPost200Response';
|
|
13
13
|
export * from './ApiAppFalta1NotificationsSendNewPost200ResponseStatsInner';
|
|
14
|
+
export * from './AppLocationHourItem';
|
|
15
|
+
export * from './AppLocationItem';
|
|
14
16
|
export * from './ApproveClubResponse';
|
|
15
17
|
export * from './ApproveClubResponseResult';
|
|
16
18
|
export * from './AssignPositionsRequest';
|
|
@@ -42,6 +44,7 @@ export * from './ClubPlace';
|
|
|
42
44
|
export * from './ClubPlaceRegistrationStatus';
|
|
43
45
|
export * from './ClubProfileDto';
|
|
44
46
|
export * from './ClubProfileDtoProfile';
|
|
47
|
+
export * from './ClubProfileDtoProfileLocationHoursInner';
|
|
45
48
|
export * from './ClubProfileNextMatchDto';
|
|
46
49
|
export * from './ClubSearchParams';
|
|
47
50
|
export * from './ClubSearchParamsGeo';
|
|
@@ -151,6 +154,8 @@ export * from './ListAllClubsResponseResult';
|
|
|
151
154
|
export * from './ListPlaySearchesByRecurringGame200Response';
|
|
152
155
|
export * from './Location';
|
|
153
156
|
export * from './LocationDto';
|
|
157
|
+
export * from './LocationDtoLocationHoursInner';
|
|
158
|
+
export * from './LocationHour';
|
|
154
159
|
export * from './ManageLightSwitch200Response';
|
|
155
160
|
export * from './ManageLightSwitch500Response';
|
|
156
161
|
export * from './MarkBillAsPaidRequest';
|
|
@@ -227,6 +232,7 @@ export * from './RegisterClub400Response';
|
|
|
227
232
|
export * from './RegisterClub401Response';
|
|
228
233
|
export * from './RegisterClub500Response';
|
|
229
234
|
export * from './RegisterClubParams';
|
|
235
|
+
export * from './RegisterClubParamsLocationHoursInner';
|
|
230
236
|
export * from './RegisterClubResponse';
|
|
231
237
|
export * from './RegisterClubResponseResult';
|
|
232
238
|
export * from './RegisterForPlaySearchRequest';
|
|
@@ -256,6 +262,7 @@ export * from './SearchClubs500Response';
|
|
|
256
262
|
export * from './SendEmailVerification500Response';
|
|
257
263
|
export * from './SendEmailVerificationRequest';
|
|
258
264
|
export * from './ServiceType';
|
|
265
|
+
export * from './ServiceTypeDto';
|
|
259
266
|
export * from './SetAuthCodeDto';
|
|
260
267
|
export * from './Shift';
|
|
261
268
|
export * from './Sport';
|
|
@@ -293,7 +300,11 @@ export * from './TrainerFeedDtoStats';
|
|
|
293
300
|
export * from './TriggerDeviceAction200Response';
|
|
294
301
|
export * from './TriggerDeviceActionRequest';
|
|
295
302
|
export * from './UnreadCountResponseDto';
|
|
303
|
+
export * from './UpdateAppLocationParams';
|
|
296
304
|
export * from './UpdateBillRequest';
|
|
305
|
+
export * from './UpdateClubSettingsParams';
|
|
306
|
+
export * from './UpdateClubSettingsResponse';
|
|
307
|
+
export * from './UpdateClubSettingsServiceTypeItem';
|
|
297
308
|
export * from './UpdateCoachPriceDto';
|
|
298
309
|
export * from './UpdateFeatureRequest';
|
|
299
310
|
export * from './UpdateFeedItemReactionsRequest';
|
package/package.json
CHANGED
package/runtime.ts
CHANGED