Repository URL to install this package:
|
Version:
1.4.0 ▾
|
import { Request, Resolver } from './typings'
export function getInnerRequest(resolver: Resolver, request: Request) {
if (
typeof request.__innerRequest === 'string' &&
request.__innerRequest_request === request.request &&
request.__innerRequest_relativePath === request.relativePath
) {
return request.__innerRequest
}
let innerRequest
if (request.request) {
innerRequest = request.request
// @todo could match it if it had [Symbol]
if (/^\.\.?\//.test(innerRequest + '') && request.relativePath) {
innerRequest = resolver.join(request.relativePath, innerRequest)
}
} else {
innerRequest = request.relativePath
}
request.__innerRequest_request = request.request
request.__innerRequest_relativePath = request.relativePath
return (request.__innerRequest = innerRequest)
}