Browse Source

Update body size limit for server actions, refactor image file reading to use promises, and enhance error handling in project save function.

handoff-20260429-1057
shrimbly 6 months ago
parent
commit
b613527210
  1. 2
      next.config.ts
  2. 6
      src/app/api/quickstart/route.ts
  3. 5
      src/components/Header.tsx

2
next.config.ts

@ -4,7 +4,7 @@ const nextConfig: NextConfig = {
reactStrictMode: true,
experimental: {
serverActions: {
bodySizeLimit: "2gb",
bodySizeLimit: "50mb",
},
},
turbopack: {

6
src/app/api/quickstart/route.ts

@ -9,8 +9,8 @@ import {
parseJSONFromResponse,
} from "@/lib/quickstart/validation";
import { ImageInputNodeData } from "@/types";
import * as fs from "fs";
import * as path from "path";
import fs from "fs/promises";
import path from "path";
export const maxDuration = 60; // 1 minute timeout
@ -27,7 +27,7 @@ async function convertLocalImagesToBase64(workflow: WorkflowFile): Promise<Workf
try {
// Read file from public folder
const publicPath = path.join(process.cwd(), "public", data.image);
const fileBuffer = fs.readFileSync(publicPath);
const fileBuffer = await fs.readFile(publicPath);
const base64 = fileBuffer.toString("base64");
// Determine MIME type from extension

5
src/components/Header.tsx

@ -74,7 +74,10 @@ export function Header() {
setShowProjectModal(false);
// Small delay to let state update
setTimeout(() => {
saveToFile();
saveToFile().catch((error) => {
console.error("Failed to save project:", error);
alert("Failed to save project. Please try again.");
});
}, 50);
};

Loading…
Cancel
Save