// Billing — one honest home for the three surfaces that were previously three // separate "Coming soon" nav items (Plan, Entitlements, Apps). None of them // has a live endpoint yet, so none earns its own nav weight; they collapse to // this single page until Phase 5 wires them. When Plan and Entitlements go // live they become their own items under the Billing group and this becomes // the group overview. import { CreditCard, Gauge, LayoutGrid } from "lucide-react" import { AppShell } from "~/components/layout/app-shell" import { PageHeader } from "~/components/layout/page-header" import { pageTitle } from "~/lib/page-meta" import { Card, CardContent, CardDescription, CardHeader, CardTitle, } from "~/components/ui/card" export const meta = () => pageTitle("Billing") const upcoming = [ { icon: CreditCard, title: "Plan", description: "The tenant's subscription, renewal date, payment method, and invoice history.", }, { icon: Gauge, title: "Entitlements", description: "Metered allowances — included units and usage to date per meter (AI tokens, storage, and so on).", }, { icon: LayoutGrid, title: "Apps", description: "Apps this tenant publishes, and the users who've granted them access to their personal clouds.", }, ] export default function BillingRoute() { return ( Not yet available on this deployment Billing isn't wired to a payment provider here. These are the surfaces that will land under Billing — each becomes its own screen once its endpoint exists.
    {upcoming.map(({ icon: Icon, title, description }) => (
  • {title}

    {description}

  • ))}
) } export { RouteErrorBoundary as ErrorBoundary } from "~/components/route-error"