@jspm/generator
Version:
Package Import Map Generation Tool
56 lines (54 loc) • 1.65 kB
JavaScript
import * as deno from "./deno.js";
import * as jspm from "./jspm.js";
import * as skypack from "./skypack.js";
import * as jsdelivr from "./jsdelivr.js";
import * as unpkg from "./unpkg.js";
import * as node from "./node.js";
import * as esmsh from "./esmsh.js";
import { JspmError } from "../common/err.js";
export const defaultProviders = {
deno,
jsdelivr,
node,
skypack,
unpkg,
"esm.sh": esmsh,
"jspm.io": jspm
};
export function getProvider(name, providers) {
const provider = providers[name];
if (provider) return provider;
throw new JspmError(`No provider named "${name}" has been defined.`);
}
// Apply provider configurations
export function configureProviders(providerConfig, providers) {
for (const [providerName, provider] of Object.entries(providers)){
if (provider.configure) {
provider.configure(providerConfig[providerName] || {});
}
}
}
export function getDefaultProviderStrings() {
let res = [];
for (const [name, provider] of Object.entries(defaultProviders)){
var _provider_supportedLayers;
for (const layer of (_provider_supportedLayers = provider.supportedLayers) !== null && _provider_supportedLayers !== void 0 ? _provider_supportedLayers : [
"default"
])res.push(`${name}${layer === "default" ? "" : `#${layer}`}`);
}
return res;
}
export const registryProviders = {
"denoland:": "deno",
"deno:": "deno"
};
export const mappableSchemes = new Set([
"npm",
"deno",
"node"
]);
export const builtinSchemes = new Set([
"node",
"deno"
]);
//# sourceMappingURL=index.js.map