From 21674fa75abf17df32f254b39a2185f7359496cf Mon Sep 17 00:00:00 2001
From: thucpn <thucsh2@gmail.com>
Date: Fri, 21 Mar 2025 13:25:20 +0700
Subject: [PATCH] fix: not bundle next

---
 packages/server/next/next.config.ts |  1 -
 packages/server/package.json        | 12 +++++++-----
 packages/server/src/server.ts       |  5 +++--
 3 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/packages/server/next/next.config.ts b/packages/server/next/next.config.ts
index 0ef124ff4..65c102b92 100644
--- a/packages/server/next/next.config.ts
+++ b/packages/server/next/next.config.ts
@@ -1,7 +1,6 @@
 import type { NextConfig } from "next";
 
 const nextConfig: NextConfig = {
-  distDir: "../static",
   output: "export",
 };
 
diff --git a/packages/server/package.json b/packages/server/package.json
index c77e0249d..b187217be 100644
--- a/packages/server/package.json
+++ b/packages/server/package.json
@@ -18,9 +18,7 @@
     }
   },
   "files": [
-    "dist",
-    "static",
-    ".next"
+    "dist"
   ],
   "repository": {
     "type": "git",
@@ -28,9 +26,13 @@
     "directory": "packages/server"
   },
   "scripts": {
-    "dev:next": "cd ./next && next dev",
-    "prebuild": "cd ./next && next build && cp -r .next ../",
+    "clean": "rm -rf ./dist next/.next next/out",
+    "prebuild": "pnpm clean",
     "build": "bunchee",
+    "postbuild": "pnpm copy:next-src && pnpm build:static && pnpm copy:static",
+    "copy:next-src": "cp -r ./next ./dist/next",
+    "build:static": "cd ./next && next build",
+    "copy:static": "cp -r ./next/out ./dist/static",
     "dev": "bunchee --watch"
   },
   "devDependencies": {
diff --git a/packages/server/src/server.ts b/packages/server/src/server.ts
index 4b18c771b..2737aaa80 100644
--- a/packages/server/src/server.ts
+++ b/packages/server/src/server.ts
@@ -11,8 +11,9 @@ export class LlamaIndexServer {
   workflowFactory: () => Promise<ServerWorkflow> | ServerWorkflow;
 
   constructor({ workflow, ...nextAppOptions }: LlamaIndexServerOptions) {
-    const nextDir = path.join(__dirname, ".."); // location of the .next after build next app
-    this.app = next({ ...nextAppOptions, dir: nextDir });
+    const nextDir = path.join(__dirname, "./next");
+    const dev = process.env.NODE_ENV !== "production";
+    this.app = next({ ...nextAppOptions, dev, dir: nextDir });
     this.port = nextAppOptions.port ?? 3000;
     this.workflowFactory = workflow;
   }
-- 
GitLab