import { NextRequest } from 'next/server'
import { defaultLocale, locales } from '@repo/constants/internationalization'
import { authkit } from '@workos-inc/authkit-nextjs'
import createNextIntlMiddleware from 'next-intl/middleware'
const i18nMiddleware = createNextIntlMiddleware({
locales,
defaultLocale
})
export async function middleware(request: NextRequest) {
// Run the i18n middleware first
const intlResponse = i18nMiddleware(request)
// Run AuthKit middleware
const { headers: authkitHeaders } = await authkit(request)
for (const [key, value] of authkitHeaders) {
if (key.toLowerCase() === 'set-cookie') {
intlResponse.headers.append(key, value)
} else {
intlResponse.headers.set(key, value)
}
}
return intlResponse
}
import { NextRequest } from 'next/server'
import { defaultLocale, locales } from '@repo/constants/internationalization'
import { authkit } from '@workos-inc/authkit-nextjs'
import createNextIntlMiddleware from 'next-intl/middleware'
const i18nMiddleware = createNextIntlMiddleware({
locales,
defaultLocale
})
export async function middleware(request: NextRequest) {
// Run the i18n middleware first
const intlResponse = i18nMiddleware(request)
// Run AuthKit middleware
const { headers: authkitHeaders } = await authkit(request)
for (const [key, value] of authkitHeaders) {
if (key.toLowerCase() === 'set-cookie') {
intlResponse.headers.append(key, value)
} else {
intlResponse.headers.set(key, value)
}
}
return intlResponse
}