Files
IdP/apps/frontend/next.config.ts
2026-06-29 20:37:58 +03:00

44 lines
1.1 KiB
TypeScript

import type { NextConfig } from 'next';
function resolveInternalApiUrl(fallback = 'http://localhost:3000') {
const explicit = process.env.INTERNAL_API_URL?.trim();
if (explicit) {
return explicit.replace(/\/+$/, '');
}
return fallback.replace(/\/+$/, '');
}
const internalApiUrl = resolveInternalApiUrl('http://localhost:3000');
const internalWsUrl = (process.env.INTERNAL_WS_URL ?? 'http://media-ws:8085').replace(/\/$/, '');
const nextConfig: NextConfig = {
typedRoutes: false,
async rewrites() {
return [
{
source: '/idp-api/ws',
destination: `${internalWsUrl}/ws`
},
{
source: '/idp-api/:path*',
destination: `${internalApiUrl}/:path*`
},
{
source: '/oauth/:path*',
destination: `${internalApiUrl}/oauth/:path*`
},
{
source: '/fedcm/:path*',
destination: `${internalApiUrl}/fedcm/:path*`
},
{
source: '/.well-known/:path*',
destination: `${internalApiUrl}/.well-known/:path*`
}
];
}
};
export default nextConfig;