cdn-resolve
Version:
Resolves import paths to their CDN equivalents
37 lines (34 loc) • 1.16 kB
JavaScript
import { buildESMUrl } from './chunk-XQSDQYUL.mjs';
export { buildESMUrl, resolveESMTypes } from './chunk-XQSDQYUL.mjs';
import { buildJSDelivrUrl } from './chunk-DLDDQUYW.mjs';
export { buildJSDelivrUrl } from './chunk-DLDDQUYW.mjs';
import { buildSkypackUrl } from './chunk-GCH7GORA.mjs';
export { buildSkypackUrl, resolveSkypackHeaders } from './chunk-GCH7GORA.mjs';
import { buildUnpkgUrl } from './chunk-MTHHSJKQ.mjs';
export { buildUnpkgUrl } from './chunk-MTHHSJKQ.mjs';
export { parsePackage } from './chunk-L4VXHJAT.mjs';
// src/index.ts
var CDN_URLS = {
skypack: "https://cdn.skypack.dev",
esm: "https://esm.sh",
unpkg: "https://unpkg.com",
jsdelivr: "https://cdn.jsdelivr.net/npm"
};
function normalizeCdnUrl(cdn, module) {
return `${CDN_URLS[cdn]}/${module.replace(/^\//, "")}`;
}
function buildCDNUrl(cdn) {
switch (cdn) {
case "skypack":
return buildSkypackUrl;
case "esm":
return buildESMUrl;
case "unpkg":
return buildUnpkgUrl;
case "jsdelivr":
return buildJSDelivrUrl;
default:
throw new Error(`Unknown CDN: ${cdn}`);
}
}
export { CDN_URLS, buildCDNUrl, normalizeCdnUrl };