Skip to content

Commit 666fe5a

Browse files
authored
fix: handle cases of chunked middleware (#2574)
* test: make middleware fixture produce chunked middleware * fix: handle cases of chunked middleware
1 parent b352918 commit 666fe5a

File tree

2 files changed

+8
-1
lines changed

2 files changed

+8
-1
lines changed

src/build/functions/edge.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ const copyHandlerDependencies = async (
125125
const entrypoint = await readFile(join(srcDir, file), 'utf8')
126126
parts.push(`;// Concatenated file: ${file} \n`, entrypoint)
127127
}
128-
const exports = `export default _ENTRIES["middleware_${name}"].default;`
128+
const exports = `const middlewareEntryKey = Object.keys(_ENTRIES).find(entryKey => entryKey.startsWith("middleware_${name}")); export default _ENTRIES[middlewareEntryKey].default;`
129129
await mkdir(dirname(join(destDir, `server/${name}.js`)), { recursive: true })
130130

131131
await writeFile(join(destDir, `server/${name}.js`), [...parts, exports].join('\n'))

tests/fixtures/middleware/next.config.js

+7
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,13 @@ const nextConfig = {
44
eslint: {
55
ignoreDuringBuilds: true,
66
},
7+
webpack: (config) => {
8+
// this is a trigger to generate multiple `.next/server/middleware-[hash].js` files instead of
9+
// single `.next/server/middleware.js` file
10+
config.optimization.splitChunks.maxSize = 100_000
11+
12+
return config
13+
},
714
}
815

916
module.exports = nextConfig

0 commit comments

Comments
 (0)