Initial commit
This commit is contained in:
40
node_modules/astro/dist/assets/fonts/infra/build-url-resolver.js
generated
vendored
Normal file
40
node_modules/astro/dist/assets/fonts/infra/build-url-resolver.js
generated
vendored
Normal file
@@ -0,0 +1,40 @@
|
||||
import { fileExtension, joinPaths, prependForwardSlash } from "../../../core/path.js";
|
||||
import { getAssetsPrefix } from "../../utils/getAssetsPrefix.js";
|
||||
import { createPlaceholderURL, stringifyPlaceholderURL } from "../../utils/url.js";
|
||||
class BuildUrlResolver {
|
||||
#resources = /* @__PURE__ */ new Set();
|
||||
#base;
|
||||
#assetsPrefix;
|
||||
#searchParams;
|
||||
constructor({
|
||||
base,
|
||||
assetsPrefix,
|
||||
searchParams
|
||||
}) {
|
||||
this.#base = base;
|
||||
this.#assetsPrefix = assetsPrefix;
|
||||
this.#searchParams = searchParams;
|
||||
}
|
||||
resolve(id) {
|
||||
const prefix = this.#assetsPrefix ? getAssetsPrefix(fileExtension(id), this.#assetsPrefix) : void 0;
|
||||
let urlPath;
|
||||
if (prefix) {
|
||||
this.#resources.add(prefix);
|
||||
urlPath = joinPaths(prefix, this.#base, id);
|
||||
} else {
|
||||
this.#resources.add("'self'");
|
||||
urlPath = prependForwardSlash(joinPaths(this.#base, id));
|
||||
}
|
||||
const url = createPlaceholderURL(urlPath);
|
||||
this.#searchParams.forEach((value, key) => {
|
||||
url.searchParams.set(key, value);
|
||||
});
|
||||
return stringifyPlaceholderURL(url);
|
||||
}
|
||||
get cspResources() {
|
||||
return Array.from(this.#resources);
|
||||
}
|
||||
}
|
||||
export {
|
||||
BuildUrlResolver
|
||||
};
|
||||
Reference in New Issue
Block a user