feat(frontend): lifecycle status, wallet balance, admin billing UI
- Wallet balance display in dashboard header - Lifecycle status badges (color-coded) in apps list - Plan expiry countdown column - Admin apps: suspended/pending-deletion summary cards - Admin billing: lifecycle settings management - Updated TypeScript types for lifecycle and billing
This commit is contained in:
@@ -39,6 +39,13 @@ export interface Application {
|
||||
latestImageTag?: string;
|
||||
subdomain?: string;
|
||||
deployments?: Deployment[];
|
||||
// Billing & Lifecycle
|
||||
planId?: string;
|
||||
billingCycle?: BillingCycle;
|
||||
lifecycleStatus?: AppLifecycleStatus;
|
||||
planExpiresAt?: string;
|
||||
suspendedAt?: string;
|
||||
scheduledDeletionAt?: string;
|
||||
createdAt: string;
|
||||
updatedAt: string;
|
||||
}
|
||||
@@ -67,6 +74,8 @@ export type DeploymentStatus =
|
||||
| 'stopped'
|
||||
| 'deleting';
|
||||
|
||||
export type AppLifecycleStatus = 'active' | 'suspended' | 'pending_deletion' | 'deleted';
|
||||
|
||||
export interface Cluster {
|
||||
id: string;
|
||||
name: string;
|
||||
@@ -325,3 +334,17 @@ export interface K8sRevisionData {
|
||||
revisions: K8sRevision[];
|
||||
currentRevision: number;
|
||||
}
|
||||
|
||||
// ─── Lifecycle Settings ─────────────────────────────
|
||||
|
||||
export interface LifecycleCycleSettings {
|
||||
deleteAfterMs: number;
|
||||
deleteAfterHours?: number;
|
||||
deleteAfterDays?: number;
|
||||
}
|
||||
|
||||
export interface LifecycleSettings {
|
||||
hourly: LifecycleCycleSettings;
|
||||
monthly: LifecycleCycleSettings;
|
||||
yearly: LifecycleCycleSettings;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user