UNPKG

preload-links-by-lighthouse

Version:

Generate html with embedded preload links using lighthouse

26 lines 922 B
export const DEFAULT_HREF_MAPPER = (networkRecord) => networkRecord.url; export const DEFAULT_AS_MAPPER = (networkRecord) => { if (networkRecord.resourceType === 'Script') return 'script'; return undefined; }; export function generatePreloadLinks(args) { const hrefMapper = args.hrefMapper ?? DEFAULT_HREF_MAPPER; const asMapper = args.asMapper ?? DEFAULT_AS_MAPPER; return args.networkRecords .map((networkRecord) => { const href = hrefMapper(networkRecord); const as = asMapper(networkRecord); if (href.startsWith('data')) { console.log(networkRecord); } let preloadLink = `<link rel="preload"`; preloadLink += ` href="${href}"`; if (as) preloadLink += ` as="${as}"`; preloadLink += `>`; return preloadLink; }) .join('\n'); } //# sourceMappingURL=preload-link-generator.js.map