Skip to content

Commit 2e0b97a

Browse files
committed
fix: enforce a single edge entrypoint for next edge handler
1 parent cc81992 commit 2e0b97a

File tree

1 file changed

+12
-18
lines changed

1 file changed

+12
-18
lines changed

src/build/functions/edge.ts

+12-18
Original file line numberDiff line numberDiff line change
@@ -159,22 +159,19 @@ const getHandlerName = ({ name }: Pick<NextDefinition, 'name'>): string =>
159159

160160
const buildHandlerDefinition = (
161161
ctx: PluginContext,
162-
{ name, matchers, page }: NextDefinition,
163-
): Array<ManifestFunction> => {
164-
const fun = getHandlerName({ name })
165-
const funName = name.endsWith('middleware')
166-
? 'Next.js Middleware Handler'
167-
: `Next.js Edge Handler: ${page}`
162+
{ name, matchers }: NextDefinition,
163+
): ManifestFunction => {
168164
const cache = name.endsWith('middleware') ? undefined : ('manual' as const)
169-
const generator = `${ctx.pluginName}@${ctx.pluginVersion}`
170-
171-
return augmentMatchers(matchers, ctx).map((matcher) => ({
172-
function: fun,
173-
name: funName,
174-
pattern: matcher.regexp,
165+
const i18nAugmentedMatchers = augmentMatchers(matchers, ctx)
166+
const combinedEdgeHandlerRegex = i18nAugmentedMatchers
167+
.map((matcher) => `(${matcher.regexp})`)
168+
.join('|')
169+
170+
return {
171+
function: getHandlerName({ name }),
172+
pattern: combinedEdgeHandlerRegex,
175173
cache,
176-
generator,
177-
}))
174+
}
178175
}
179176

180177
export const clearStaleEdgeHandlers = async (ctx: PluginContext) => {
@@ -183,10 +180,7 @@ export const clearStaleEdgeHandlers = async (ctx: PluginContext) => {
183180

184181
export const createEdgeHandlers = async (ctx: PluginContext) => {
185182
const nextManifest = await ctx.getMiddlewareManifest()
186-
const nextDefinitions = [
187-
...Object.values(nextManifest.middleware),
188-
// ...Object.values(nextManifest.functions)
189-
]
183+
const nextDefinitions = [...Object.values(nextManifest.middleware)]
190184
await Promise.all(nextDefinitions.map((def) => createEdgeHandler(ctx, def)))
191185

192186
const netlifyDefinitions = nextDefinitions.flatMap((def) => buildHandlerDefinition(ctx, def))

0 commit comments

Comments
 (0)