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
553 B
TypeScript
17 lines
553 B
TypeScript
import { parsePath } from './parse-path'
|
|
|
|
/**
|
|
* Checks if a given path starts with a given prefix. It ensures it matches
|
|
* exactly without containing extra chars. e.g. prefix /docs should replace
|
|
* for /docs, /docs/, /docs/a but not /docsss
|
|
* @param path The path to check.
|
|
* @param prefix The prefix to check against.
|
|
*/
|
|
export function pathHasPrefix(path: string, prefix: string) {
|
|
if (typeof path !== 'string') {
|
|
return false
|
|
}
|
|
|
|
const { pathname } = parsePath(path)
|
|
return pathname === prefix || pathname.startsWith(prefix + '/')
|
|
}
|