diff --git a/ui/src/pages/tenant/TenantDashboardPage.tsx b/ui/src/pages/tenant/TenantDashboardPage.tsx index 04b40bc..42f5591 100644 --- a/ui/src/pages/tenant/TenantDashboardPage.tsx +++ b/ui/src/pages/tenant/TenantDashboardPage.tsx @@ -13,7 +13,6 @@ import { useTenantDashboard, useRestartServer, useUpgradeServer } from '../../ap import { errorMessage } from '../../api/client'; import { ServerStatusBadge } from '../../components/ServerStatusBadge'; import { UsageIndicator } from '../../components/UsageIndicator'; -import { tierColor } from '../../utils/tier'; import styles from '../../styles/platform.module.css'; function statusColor(status: string): 'success' | 'error' | 'warning' | 'auto' { @@ -64,7 +63,6 @@ export function TenantDashboardPage() { {/* Header */}

{data.name}

-
@@ -78,7 +76,6 @@ export function TenantDashboardPage() { {/* KPI strip */} 0 ? `${daysRemaining}d remaining` : 'Expired' }, diff --git a/ui/src/pages/tenant/TenantLicensePage.tsx b/ui/src/pages/tenant/TenantLicensePage.tsx index 92bb3de..29faaa7 100644 --- a/ui/src/pages/tenant/TenantLicensePage.tsx +++ b/ui/src/pages/tenant/TenantLicensePage.tsx @@ -10,7 +10,6 @@ import { import { Copy, Eye, EyeOff } from 'lucide-react'; import { useTenantLicense } from '../../api/tenant-hooks'; import { UsageIndicator } from '../../components/UsageIndicator'; -import { tierColor } from '../../utils/tier'; import styles from '../../styles/platform.module.css'; const LIMIT_LABELS: Record = { @@ -92,10 +91,7 @@ export function TenantLicensePage() { return (
-
-

License

- -
+

License

diff --git a/ui/src/pages/vendor/TenantDetailPage.tsx b/ui/src/pages/vendor/TenantDetailPage.tsx index ca2057e..88c01e0 100644 --- a/ui/src/pages/vendor/TenantDetailPage.tsx +++ b/ui/src/pages/vendor/TenantDetailPage.tsx @@ -9,7 +9,7 @@ import { Spinner, useToast, } from '@cameleer/design-system'; -import { ArrowLeft, ArrowUpCircle, Check, Clipboard, RefreshCw, Send, Trash2 } from 'lucide-react'; +import { ArrowLeft, ArrowUpCircle, Check, Clipboard, Eye, RefreshCw, Send, Trash2 } from 'lucide-react'; import { useVendorTenant, useSuspendTenant, @@ -114,6 +114,7 @@ export function TenantDetailPage() { const { data: presets } = useLicensePresets(); const [deleteOpen, setDeleteOpen] = useState(false); + const [inspectOpen, setInspectOpen] = useState(false); const [mintOpen, setMintOpen] = useState(false); const [selectedTier, setSelectedTier] = useState(''); const [limits, setLimits] = useState>({}); @@ -325,7 +326,14 @@ export function TenantDetailPage() { Grace period {license.gracePeriodDays}d
-
+
+
+ {inspectOpen && ( +
+
All Limits
+
+ {LIMIT_KEYS.map(key => ( +
+ {LIMIT_LABELS[key]} + + {(license.limits[key] ?? 0).toLocaleString()} + +
+ ))} +
+
+ )}
) : (