import { formatTimestampToDate } from '@/lib/format' import type { StatusBadgeProps } from '@/components/status-badge' import type { TopupStatus } from '../types' // ============================================================================ // Billing Utility Functions // ============================================================================ interface StatusConfig { variant: StatusBadgeProps['variant'] label: string } /** * Status badge configuration */ export const STATUS_CONFIG: Record = { success: { variant: 'success', label: 'Success', }, pending: { variant: 'warning', label: 'Pending', }, expired: { variant: 'danger', label: 'Expired', }, } /** * Get status badge configuration */ export function getStatusConfig(status: TopupStatus): StatusConfig { return STATUS_CONFIG[status] || STATUS_CONFIG.pending } /** * Payment method display names */ export const PAYMENT_METHOD_NAMES: Record = { stripe: 'Stripe', alipay: 'Alipay', wxpay: 'WeChat Pay', waffo: 'Waffo', } /** * Get payment method display name */ export function getPaymentMethodName(method: string): string { return PAYMENT_METHOD_NAMES[method] || method } /** * Format timestamp to readable date string */ export function formatTimestamp(timestamp: number): string { return formatTimestampToDate(timestamp) }