Make billing catalog dynamic for all runtimes and bill optional service resources.

Derive admin tabs and addon rows from enums, and add Redis/RabbitMQ/ES CPU/RAM/disk to deploy cost using the app runtime unit rates.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
keyhan
2026-05-15 18:22:35 +03:30
parent 35235fe0fc
commit bb27c90ae4
6 changed files with 292 additions and 109 deletions
+14 -1
View File
@@ -383,9 +383,22 @@ export interface PricingRateRow {
isActive?: boolean;
}
export interface CatalogRuntimeOption {
value: string;
label: string;
}
export interface CatalogOptionalServiceOption {
value: string;
label: string;
resourceType: PricingResourceType;
}
export interface PricingCatalog {
runtimes: Record<'nodejs' | 'laravel' | 'wordpress', PricingRateRow[]>;
runtimes: Record<string, PricingRateRow[]>;
addons: PricingRateRow[];
runtimeOptions: CatalogRuntimeOption[];
optionalServiceOptions: CatalogOptionalServiceOption[];
}
export interface WalletBalance {