release: WRNexusJS 0.7.0

This commit is contained in:
2026-08-01 10:04:42 +05:30
parent c54144f2e4
commit 87507edf59
207 changed files with 12607 additions and 679 deletions
+30
View File
@@ -5,6 +5,20 @@ export interface PerformanceBudgets {
imageBytes?: number;
hydrationMs?: number;
serverRenderMs?: number;
/** Largest Contentful Paint in milliseconds. Recommended <= 2500. */
lcpMs?: number;
/** Interaction to Next Paint in milliseconds. Recommended <= 200. */
inpMs?: number;
/** Cumulative Layout Shift score. Recommended <= 0.1. */
cls?: number;
/** Time to First Byte in milliseconds. */
ttfbMs?: number;
/** Longest main-thread task in milliseconds. Recommended <= 50. */
longTaskMs?: number;
/** Number of client hydration boundaries on the route. */
hydratedComponents?: number;
/** Total request count for the initial navigation. */
requests?: number;
}
export interface PerformanceMeasurement {
@@ -14,6 +28,13 @@ export interface PerformanceMeasurement {
imageBytes?: number;
hydrationMs?: number;
serverRenderMs?: number;
lcpMs?: number;
inpMs?: number;
cls?: number;
ttfbMs?: number;
longTaskMs?: number;
hydratedComponents?: number;
requests?: number;
}
export interface BudgetViolation {
@@ -23,6 +44,15 @@ export interface BudgetViolation {
overBy: number;
}
export const recommendedWebBudgets: Readonly<PerformanceBudgets> = Object.freeze({
lcpMs: 2500,
inpMs: 200,
cls: 0.1,
longTaskMs: 50,
routeJsBytes: 50 * 1024,
routeCssBytes: 25 * 1024,
});
export function checkPerformanceBudgets(
budgets: PerformanceBudgets,
measurement: PerformanceMeasurement,