Skip to content

Commit

Permalink
fix(compiler-sfc): allow full hostnames in asset url base (#12732)
Browse files Browse the repository at this point in the history
fix #12731
  • Loading branch information
jonaskuske committed Aug 15, 2022
1 parent 00458cd commit 5c742eb
Showing 1 changed file with 8 additions and 3 deletions.
11 changes: 8 additions & 3 deletions packages/compiler-sfc/src/templateCompilerModules/utils.ts
Expand Up @@ -24,10 +24,15 @@ export function urlToRequire(
// does not apply to absolute urls or urls that start with `@`
// since they are aliases
if (firstChar === '.' || firstChar === '~') {
// Allow for full hostnames provided in options.base
const base = parseUriParts(transformAssetUrlsOption.base)
const protocol = base.protocol || ''
const host = base.host ? protocol + '//' + base.host : ''
const basePath = base.path || '/'
// when packaged in the browser, path will be using the posix-
// only version provided by rollup-plugin-node-builtins.
return `"${(path.posix || path).join(
transformAssetUrlsOption.base,
return `"${host}${(path.posix || path).join(
basePath,
uriParts.path + (uriParts.hash || '')
)}"`
}
Expand Down Expand Up @@ -64,7 +69,7 @@ function parseUriParts(urlString: string): UrlWithStringQuery {
// @see https://nodejs.org/api/url.html#url_url_parse_urlstring_parsequerystring_slashesdenotehost
if ('string' === typeof urlString) {
// check is an uri
return uriParse(urlString) // take apart the uri
return uriParse(urlString, false, true) // take apart the uri
}
}
return returnValue
Expand Down

0 comments on commit 5c742eb

Please sign in to comment.