523704b83f
* Do not exclude internal _next request in middleware * Allow for `NextURL` to parse prefetch requests * Add test for middleware data prefetch * Refactor `hasBasePath` and `replaceBasePath` * Refactor `removeTrailingSlash` * Refactor parsed next url to use `getNextPathnameInfo` * Allow to configure `NextURL` * Ensure middleware rewrites with always with a locale Co-authored-by: JJ Kasper <jj@jjsweb.site>
17 lines
528 B
TypeScript
17 lines
528 B
TypeScript
import { removeTrailingSlash } from '../shared/lib/router/utils/remove-trailing-slash'
|
|
|
|
/**
|
|
* Normalizes the trailing slash of a path according to the `trailingSlash` option
|
|
* in `next.config.js`.
|
|
*/
|
|
export const normalizePathTrailingSlash = process.env.__NEXT_TRAILING_SLASH
|
|
? (path: string): string => {
|
|
if (/\.[^/]+\/?$/.test(path)) {
|
|
return removeTrailingSlash(path)
|
|
} else if (path.endsWith('/')) {
|
|
return path
|
|
} else {
|
|
return path + '/'
|
|
}
|
|
}
|
|
: removeTrailingSlash
|