yassinekolsi commited on
Commit
a3ea1a9
·
1 Parent(s): 54470b5

Fix Next.js 16 build: disable cacheComponents, add force-dynamic to all API routes and pages with server fetches

Browse files
ui/app/api/agents/generate/route.ts CHANGED
@@ -2,6 +2,8 @@ import { NextResponse } from 'next/server';
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
 
 
5
  export async function POST(request: Request) {
6
  const body = await request.json().catch(() => ({}));
7
 
 
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
5
+ export const dynamic = 'force-dynamic';
6
+
7
  export async function POST(request: Request) {
8
  const body = await request.json().catch(() => ({}));
9
 
ui/app/api/agents/rank/route.ts CHANGED
@@ -2,6 +2,8 @@ import { NextResponse } from 'next/server';
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
 
 
5
  export async function POST(request: Request) {
6
  const body = await request.json().catch(() => ({}));
7
 
 
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
5
+ export const dynamic = 'force-dynamic';
6
+
7
  export async function POST(request: Request) {
8
  const body = await request.json().catch(() => ({}));
9
 
ui/app/api/agents/validate/route.ts CHANGED
@@ -2,6 +2,8 @@ import { NextResponse } from 'next/server';
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
 
 
5
  export async function POST(request: Request) {
6
  const body = await request.json().catch(() => ({}));
7
 
 
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
5
+ export const dynamic = 'force-dynamic';
6
+
7
  export async function POST(request: Request) {
8
  const body = await request.json().catch(() => ({}));
9
 
ui/app/api/agents/workflow/route.ts CHANGED
@@ -2,6 +2,8 @@ import { NextResponse } from 'next/server';
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
 
 
5
  function generateMockWorkflowResult(numCandidates: number) {
6
  const candidates = [];
7
  for (let i = 0; i < numCandidates; i++) {
 
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
5
+ export const dynamic = 'force-dynamic';
6
+
7
  function generateMockWorkflowResult(numCandidates: number) {
8
  const candidates = [];
9
  for (let i = 0; i < numCandidates; i++) {
ui/app/api/data/route.ts CHANGED
@@ -2,6 +2,8 @@ import { NextResponse } from 'next/server';
2
 
3
  import { getStats } from '@/lib/api';
4
 
 
 
5
  export async function GET() {
6
  try {
7
  const data = await getStats();
 
2
 
3
  import { getStats } from '@/lib/api';
4
 
5
+ export const dynamic = 'force-dynamic';
6
+
7
  export async function GET() {
8
  try {
9
  const data = await getStats();
ui/app/api/discovery/route.ts CHANGED
@@ -2,6 +2,8 @@ import { NextResponse } from 'next/server';
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
 
 
5
  export async function POST(request: Request) {
6
  const body = await request.json();
7
  const {
 
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
5
+ export const dynamic = 'force-dynamic';
6
+
7
  export async function POST(request: Request) {
8
  const body = await request.json();
9
  const {
ui/app/api/encode/route.ts CHANGED
@@ -2,6 +2,8 @@ import { NextResponse } from 'next/server';
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
 
 
5
  export async function POST(request: Request) {
6
  try {
7
  const body = await request.json();
 
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
5
+ export const dynamic = 'force-dynamic';
6
+
7
  export async function POST(request: Request) {
8
  try {
9
  const body = await request.json();
ui/app/api/explorer/embeddings/route.ts CHANGED
@@ -2,6 +2,8 @@ import { NextResponse } from 'next/server';
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
 
 
5
  export async function GET(request: Request) {
6
  const url = new URL(request.url);
7
  const params = url.searchParams.toString();
 
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
5
+ export const dynamic = 'force-dynamic';
6
+
7
  export async function GET(request: Request) {
8
  const url = new URL(request.url);
9
  const params = url.searchParams.toString();
ui/app/api/explorer/route.ts CHANGED
@@ -2,6 +2,8 @@ import { NextResponse } from 'next/server';
2
 
3
  import { getExplorerPoints } from '@/lib/api';
4
 
 
 
5
  export async function GET(request: Request) {
6
  const { searchParams } = new URL(request.url);
7
 
 
2
 
3
  import { getExplorerPoints } from '@/lib/api';
4
 
5
+ export const dynamic = 'force-dynamic';
6
+
7
  export async function GET(request: Request) {
8
  const { searchParams } = new URL(request.url);
9
 
ui/app/api/ingest/all/route.ts CHANGED
@@ -2,6 +2,8 @@ import { NextResponse } from 'next/server';
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
 
 
5
  export async function POST(request: Request) {
6
  const body = await request.json().catch(() => ({}));
7
  try {
 
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
5
+ export const dynamic = 'force-dynamic';
6
+
7
  export async function POST(request: Request) {
8
  const body = await request.json().catch(() => ({}));
9
  try {
ui/app/api/ingest/batch/route.ts CHANGED
@@ -2,6 +2,8 @@ import { NextResponse } from 'next/server';
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
 
 
5
  export async function POST(request: Request) {
6
  const body = await request.json().catch(() => ({}));
7
  try {
 
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
5
+ export const dynamic = 'force-dynamic';
6
+
7
  export async function POST(request: Request) {
8
  const body = await request.json().catch(() => ({}));
9
  try {
ui/app/api/ingest/chembl/route.ts CHANGED
@@ -2,6 +2,8 @@ import { NextResponse } from 'next/server';
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
 
 
5
  export async function POST(request: Request) {
6
  const body = await request.json().catch(() => ({}));
7
  try {
 
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
5
+ export const dynamic = 'force-dynamic';
6
+
7
  export async function POST(request: Request) {
8
  const body = await request.json().catch(() => ({}));
9
  try {
ui/app/api/ingest/jobs/[id]/route.ts CHANGED
@@ -2,6 +2,8 @@ import { NextResponse } from 'next/server';
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
 
 
5
  export async function GET(
6
  _request: Request,
7
  { params }: { params: Promise<{ id: string }> },
 
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
5
+ export const dynamic = 'force-dynamic';
6
+
7
  export async function GET(
8
  _request: Request,
9
  { params }: { params: Promise<{ id: string }> },
ui/app/api/ingest/pubmed/route.ts CHANGED
@@ -2,6 +2,8 @@ import { NextResponse } from 'next/server';
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
 
 
5
  export async function POST(request: Request) {
6
  const body = await request.json().catch(() => ({}));
7
  try {
 
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
5
+ export const dynamic = 'force-dynamic';
6
+
7
  export async function POST(request: Request) {
8
  const body = await request.json().catch(() => ({}));
9
  try {
ui/app/api/ingest/route.ts CHANGED
@@ -2,6 +2,8 @@ import { NextResponse } from 'next/server';
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
 
 
5
  export async function POST(request: Request) {
6
  try {
7
  const body = await request.json();
 
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
5
+ export const dynamic = 'force-dynamic';
6
+
7
  export async function POST(request: Request) {
8
  try {
9
  const body = await request.json();
ui/app/api/ingest/uniprot/route.ts CHANGED
@@ -2,6 +2,8 @@ import { NextResponse } from 'next/server';
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
 
 
5
  export async function POST(request: Request) {
6
  const body = await request.json().catch(() => ({}));
7
  try {
 
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
5
+ export const dynamic = 'force-dynamic';
6
+
7
  export async function POST(request: Request) {
8
  const body = await request.json().catch(() => ({}));
9
  try {
ui/app/api/molecules/[id]/route.ts CHANGED
@@ -2,6 +2,8 @@ import { NextResponse } from 'next/server';
2
 
3
  import { getMolecule } from '@/lib/api';
4
 
 
 
5
  export async function GET(
6
  _request: Request,
7
  { params }: { params: Promise<{ id: string }> },
 
2
 
3
  import { getMolecule } from '@/lib/api';
4
 
5
+ export const dynamic = 'force-dynamic';
6
+
7
  export async function GET(
8
  _request: Request,
9
  { params }: { params: Promise<{ id: string }> },
ui/app/api/molecules/[id]/sdf/route.ts CHANGED
@@ -2,6 +2,8 @@ import { NextResponse } from 'next/server';
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
 
 
5
  // Mock PubChem CIDs for common molecules when backend is unavailable
6
  const MOCK_PUBCHEM_CIDS: Record<string, number> = {
7
  caffeine: 2519,
 
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
5
+ export const dynamic = 'force-dynamic';
6
+
7
  // Mock PubChem CIDs for common molecules when backend is unavailable
8
  const MOCK_PUBCHEM_CIDS: Record<string, number> = {
9
  caffeine: 2519,
ui/app/api/molecules/route.ts CHANGED
@@ -2,6 +2,8 @@ import { NextResponse } from 'next/server';
2
 
3
  import { getMolecules } from '@/lib/api';
4
 
 
 
5
  export async function GET() {
6
  try {
7
  const result = await getMolecules();
 
2
 
3
  import { getMolecules } from '@/lib/api';
4
 
5
+ export const dynamic = 'force-dynamic';
6
+
7
  export async function GET() {
8
  try {
9
  const result = await getMolecules();
ui/app/api/predict/route.ts CHANGED
@@ -2,6 +2,8 @@ import { NextResponse } from 'next/server';
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
 
 
5
  export async function POST(request: Request) {
6
  const body = await request.json().catch(() => ({}));
7
  try {
 
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
5
+ export const dynamic = 'force-dynamic';
6
+
7
  export async function POST(request: Request) {
8
  const body = await request.json().catch(() => ({}));
9
  try {
ui/app/api/proteins/[id]/pdb/route.ts CHANGED
@@ -2,6 +2,8 @@ import { NextResponse } from 'next/server';
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
 
 
5
  export async function GET(
6
  _request: Request,
7
  { params }: { params: Promise<{ id: string }> },
 
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
5
+ export const dynamic = 'force-dynamic';
6
+
7
  export async function GET(
8
  _request: Request,
9
  { params }: { params: Promise<{ id: string }> },
ui/app/api/proteins/[id]/route.ts CHANGED
@@ -2,6 +2,8 @@ import { NextResponse } from 'next/server';
2
 
3
  import { getProtein } from '@/lib/api';
4
 
 
 
5
  export async function GET(
6
  _request: Request,
7
  { params }: { params: Promise<{ id: string }> },
 
2
 
3
  import { getProtein } from '@/lib/api';
4
 
5
+ export const dynamic = 'force-dynamic';
6
+
7
  export async function GET(
8
  _request: Request,
9
  { params }: { params: Promise<{ id: string }> },
ui/app/api/proteins/route.ts CHANGED
@@ -2,6 +2,8 @@ import { NextResponse } from 'next/server';
2
 
3
  import { getProteins } from '@/lib/api';
4
 
 
 
5
  export async function GET() {
6
  try {
7
  const result = await getProteins();
 
2
 
3
  import { getProteins } from '@/lib/api';
4
 
5
+ export const dynamic = 'force-dynamic';
6
+
7
  export async function GET() {
8
  try {
9
  const result = await getProteins();
ui/app/api/search/hybrid/route.ts CHANGED
@@ -2,6 +2,8 @@ import { NextResponse } from 'next/server';
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
 
 
5
  export async function POST(request: Request) {
6
  const body = await request.json().catch(() => ({}));
7
 
 
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
5
+ export const dynamic = 'force-dynamic';
6
+
7
  export async function POST(request: Request) {
8
  const body = await request.json().catch(() => ({}));
9
 
ui/app/api/search/route.ts CHANGED
@@ -2,6 +2,8 @@ import { NextResponse } from 'next/server';
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
 
 
5
  export async function POST(request: Request) {
6
  const body = await request.json().catch(() => ({}));
7
 
 
2
 
3
  import { API_CONFIG } from '@/config/api.config';
4
 
5
+ export const dynamic = 'force-dynamic';
6
+
7
  export async function POST(request: Request) {
8
  const body = await request.json().catch(() => ({}));
9
 
ui/app/dashboard/data/page.tsx CHANGED
@@ -6,6 +6,8 @@ import { getStats } from '@/lib/api';
6
 
7
  import { DataView } from './data-view';
8
 
 
 
9
  export default async function DataPage() {
10
  const { datasets, stats } = await getStats();
11
 
 
6
 
7
  import { DataView } from './data-view';
8
 
9
+ export const dynamic = 'force-dynamic';
10
+
11
  export default async function DataPage() {
12
  const { datasets, stats } = await getStats();
13
 
ui/app/dashboard/explorer/page.tsx CHANGED
@@ -9,6 +9,8 @@ import { ExplorerChart } from './chart';
9
  import { ExplorerControls } from './components';
10
  import { ExplorerPredictions } from './predictions';
11
 
 
 
12
  interface ExplorerPageProps {
13
  searchParams: Promise<{ [key: string]: string | string[] | undefined }>;
14
  }
 
9
  import { ExplorerControls } from './components';
10
  import { ExplorerPredictions } from './predictions';
11
 
12
+ export const dynamic = 'force-dynamic';
13
+
14
  interface ExplorerPageProps {
15
  searchParams: Promise<{ [key: string]: string | string[] | undefined }>;
16
  }
ui/app/data/page.tsx CHANGED
@@ -6,6 +6,8 @@ import { getData } from "@/lib/data-service"
6
 
7
  import { DataView } from "./data-view"
8
 
 
 
9
  export default async function DataPage() {
10
  const { datasets, stats } = await getData()
11
 
 
6
 
7
  import { DataView } from "./data-view"
8
 
9
+ export const dynamic = 'force-dynamic';
10
+
11
  export default async function DataPage() {
12
  const { datasets, stats } = await getData()
13
 
ui/app/explorer/page.tsx CHANGED
@@ -6,6 +6,8 @@ import { getExplorerPoints } from "@/lib/explorer-service"
6
  import { ExplorerChart } from "./chart"
7
  import { ExplorerControls } from "./components"
8
 
 
 
9
  interface ExplorerPageProps {
10
  searchParams: Promise<{ [key: string]: string | string[] | undefined }>
11
  }
 
6
  import { ExplorerChart } from "./chart"
7
  import { ExplorerControls } from "./components"
8
 
9
+ export const dynamic = 'force-dynamic';
10
+
11
  interface ExplorerPageProps {
12
  searchParams: Promise<{ [key: string]: string | string[] | undefined }>
13
  }
ui/next.config.ts CHANGED
@@ -5,7 +5,6 @@ const nextConfig: NextConfig = {
5
  poweredByHeader: false,
6
  productionBrowserSourceMaps: false,
7
  compress: true,
8
- cacheComponents: true,
9
  turbopack: {},
10
  experimental: {
11
  turbopackFileSystemCacheForDev: true,
 
5
  poweredByHeader: false,
6
  productionBrowserSourceMaps: false,
7
  compress: true,
 
8
  turbopack: {},
9
  experimental: {
10
  turbopackFileSystemCacheForDev: true,