UNPKG

vike

Version:

The Framework *You* Control - Next.js & Nuxt alternative for unprecedented flexibility and dependability.

37 lines (36 loc) 1.22 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.sortPageAssetsForEarlyHintsHeader = sortPageAssetsForEarlyHintsHeader; const utils_js_1 = require("../../utils.js"); async function sortPageAssetsForEarlyHintsHeader(pageAssets, isProduction) { pageAssets.sort((0, utils_js_1.higherFirst)(({ assetType }) => { // In dev, we load scripts first in order to parallelize I/O and CPU if (!isProduction && assetType === 'script') { return 1; } let priority = 0; // CSS has highest priority if (assetType === 'style') return priority; priority--; // Visual assets have high priority if (assetType === 'font') return priority; priority--; if (assetType === 'image') return priority; priority--; if (assetType === 'video') return priority; priority--; if (assetType === 'audio') return priority; priority--; // Others if (assetType !== 'script') return priority; priority--; // JavaScript has lowest priority return priority; })); }