Skip to content

Commit e702e66

Browse files
authored
feat(webhosting): add public offers control panels list (#2559)
1 parent 7649bdf commit e702e66

File tree

2 files changed

+42
-34
lines changed

2 files changed

+42
-34
lines changed

packages_generated/webhosting/src/v1/marshalling.gen.ts

Lines changed: 19 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -371,6 +371,21 @@ const unmarshalPlatformControlPanelUrls = (
371371
} as PlatformControlPanelUrls
372372
}
373373

374+
const unmarshalControlPanel = (data: unknown): ControlPanel => {
375+
if (!isJSONObject(data)) {
376+
throw new TypeError(
377+
`Unmarshalling the type 'ControlPanel' failed as data isn't a dictionary.`,
378+
)
379+
}
380+
381+
return {
382+
available: data.available,
383+
availableLanguages: data.available_languages,
384+
logoUrl: data.logo_url,
385+
name: data.name,
386+
} as ControlPanel
387+
}
388+
374389
const unmarshalOfferOption = (data: unknown): OfferOption => {
375390
if (!isJSONObject(data)) {
376391
throw new TypeError(
@@ -429,6 +444,10 @@ const unmarshalOffer = (data: unknown): Offer => {
429444
available: data.available,
430445
billingOperationPath: data.billing_operation_path,
431446
controlPanelName: data.control_panel_name,
447+
controlPanels: unmarshalArrayOfObject(
448+
data.control_panels,
449+
unmarshalControlPanel,
450+
),
432451
endOfLife: data.end_of_life,
433452
id: data.id,
434453
name: data.name,
@@ -547,21 +566,6 @@ export const unmarshalListBackupsResponse = (
547566
} as ListBackupsResponse
548567
}
549568

550-
const unmarshalControlPanel = (data: unknown): ControlPanel => {
551-
if (!isJSONObject(data)) {
552-
throw new TypeError(
553-
`Unmarshalling the type 'ControlPanel' failed as data isn't a dictionary.`,
554-
)
555-
}
556-
557-
return {
558-
available: data.available,
559-
availableLanguages: data.available_languages,
560-
logoUrl: data.logo_url,
561-
name: data.name,
562-
} as ControlPanel
563-
}
564-
565569
export const unmarshalListControlPanelsResponse = (
566570
data: unknown,
567571
): ListControlPanelsResponse => {

packages_generated/webhosting/src/v1/types.gen.ts

Lines changed: 23 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -206,6 +206,25 @@ export interface HostingDomainCustomDomain {
206206
autoConfigDomainDns?: AutoConfigDomainDns
207207
}
208208

209+
export interface ControlPanel {
210+
/**
211+
* Control panel name.
212+
*/
213+
name: string
214+
/**
215+
* Define if the control panel type is available to order.
216+
*/
217+
available: boolean
218+
/**
219+
* URL of the control panel's logo.
220+
*/
221+
logoUrl: string
222+
/**
223+
* List of available languages for the control panel.
224+
*/
225+
availableLanguages: StdLanguageCode[]
226+
}
227+
209228
export interface OfferOption {
210229
/**
211230
* Option ID.
@@ -431,6 +450,10 @@ export interface Offer {
431450
* Defines a warning if the maximum value for an option in the offer is exceeded.
432451
*/
433452
quotaWarning: OfferOptionWarning
453+
/**
454+
* Lists available control panels for the specified offer.
455+
*/
456+
controlPanels: ControlPanel[]
434457
/**
435458
* Region where the offer is hosted.
436459
*/
@@ -498,25 +521,6 @@ export interface Backup {
498521
totalItems: number
499522
}
500523

501-
export interface ControlPanel {
502-
/**
503-
* Control panel name.
504-
*/
505-
name: string
506-
/**
507-
* Define if the control panel type is available to order.
508-
*/
509-
available: boolean
510-
/**
511-
* URL of the control panel's logo.
512-
*/
513-
logoUrl: string
514-
/**
515-
* List of available languages for the control panel.
516-
*/
517-
availableLanguages: StdLanguageCode[]
518-
}
519-
520524
export interface DatabaseUser {
521525
/**
522526
* Name of the database user.

0 commit comments

Comments
 (0)