Files
mpc/dashboard/app/layout.tsx
T
zeekay a11334d45a feat: OIDC login via Lux ID, fix ingress routing, deploy to lux-k8s
- Add OIDC token exchange endpoint (POST /api/v1/auth/oidc) that
  validates Lux ID access tokens and issues local MPC API JWTs
- Update dashboard auth callback to do 2-step exchange: get Lux ID
  token, then exchange for MPC API JWT via OIDC endpoint
- Fix IngressRoute to use path-based routing (/api/v1 → API, / → dashboard)
- Fix deploy.yml to target lux-k8s cluster (not hanzo-k8s)
- Fix wallet creation page to use api client instead of raw fetch
- Add /api and /healthz to dashboard middleware public paths
2025-12-27 10:52:34 -08:00

31 lines
868 B
TypeScript

import type { Metadata } from 'next'
import { headers } from 'next/headers'
import { GeistSans } from 'geist/font/sans'
import { GeistMono } from 'geist/font/mono'
import { getBranding } from '@/lib/branding'
import { Providers } from './providers'
import './globals.css'
export async function generateMetadata(): Promise<Metadata> {
const h = await headers()
const host = h.get('host') ?? 'mpc.lux.network'
const b = getBranding(host)
return { title: b.brand, description: b.description }
}
export default function RootLayout({
children,
}: {
children: React.ReactNode
}) {
return (
<html lang="en" className={`dark ${GeistSans.variable} ${GeistMono.variable}`}>
<body className="font-sans min-h-screen bg-background text-foreground antialiased">
<Providers>
{children}
</Providers>
</body>
</html>
)
}