'use client' import { useEffect, useState } from 'react' import Link from 'next/link' import { listAdminOrgs, type AdminOrgSummary } from '@/lib/api/admin' import { Button, LoadingOverlay } from '@ciphera-net/ui' function formatDate(d: Date) { return d.toLocaleDateString('en-US', { month: 'short', day: 'numeric', year: 'numeric' }) } export default function AdminOrgsPage() { const [orgs, setOrgs] = useState([]) const [loading, setLoading] = useState(true) useEffect(() => { listAdminOrgs() .then(setOrgs) .finally(() => setLoading(false)) }, []) if (loading) { return } return (

Organizations

All Organizations

{orgs.map((org) => ( ))}
Business Name Org ID Plan Status Limit Updated Actions
{org.business_name || 'N/A'} {org.organization_id.substring(0, 8)}... {org.plan_id} {org.subscription_status || '-'} {new Intl.NumberFormat().format(org.pageview_limit)} {formatDate(new Date(org.updated_at))}
) }