@@ -157,18 +157,24 @@ export function loadSizeData(filePath: string): SizeData | null {
157157
158158export function calculateDiff ( current : number , baseline : number ) : { value : string ; emoji : string } {
159159 if ( ! baseline || baseline === 0 || isNaN ( baseline ) ) {
160- return { value : 'N/A ' , emoji : '❓' } ;
160+ return { value : '0 ' , emoji : '❓' } ;
161161 }
162162
163163 if ( isNaN ( current ) ) {
164- return { value : 'N/A ' , emoji : '❓' } ;
164+ return { value : '0 ' , emoji : '❓' } ;
165165 }
166166
167167 const diff = current - baseline ;
168+
169+ // If diff is 0, just return "0"
170+ if ( diff === 0 ) {
171+ return { value : '0' , emoji : '' } ;
172+ }
173+
168174 const percent = ( diff / baseline ) * 100 ;
169175
170176 if ( Math . abs ( percent ) < 1 ) {
171- return { value : `${ formatBytes ( diff ) } (${ percent . toFixed ( 1 ) } %)` , emoji : '➡️' } ;
177+ return { value : `${ formatBytes ( diff ) } (${ percent . toFixed ( 1 ) } %)` , emoji : '' } ;
172178 } else if ( diff > 0 ) {
173179 return { value : `+${ formatBytes ( diff ) } (+${ percent . toFixed ( 1 ) } %)` , emoji : '📈' } ;
174180 } else {
@@ -256,31 +262,31 @@ export async function generateBundleAnalysisReport(
256262 { data : '📊 Total Size' , header : false } ,
257263 { data : formatBytes ( current . totalSize ) , header : false } ,
258264 { data : baseline ? formatBytes ( baseline . totalSize ) : formatBytes ( current . totalSize ) , header : false } ,
259- { data : baseline ? calculateDiff ( current . totalSize , baseline . totalSize ) . value : 'N/A ' , header : false }
265+ { data : baseline ? calculateDiff ( current . totalSize , baseline . totalSize ) . value : '0 ' , header : false }
260266 ] ,
261267 [
262268 { data : '📄 JavaScript' , header : false } ,
263269 { data : formatBytes ( current . jsSize ) , header : false } ,
264270 { data : baseline ? formatBytes ( baseline . jsSize ) : formatBytes ( current . jsSize ) , header : false } ,
265- { data : baseline ? calculateDiff ( current . jsSize , baseline . jsSize ) . value : 'N/A ' , header : false }
271+ { data : baseline ? calculateDiff ( current . jsSize , baseline . jsSize ) . value : '0 ' , header : false }
266272 ] ,
267273 [
268274 { data : '🎨 CSS' , header : false } ,
269275 { data : formatBytes ( current . cssSize ) , header : false } ,
270276 { data : baseline ? formatBytes ( baseline . cssSize ) : formatBytes ( current . cssSize ) , header : false } ,
271- { data : baseline ? calculateDiff ( current . cssSize , baseline . cssSize ) . value : 'N/A ' , header : false }
277+ { data : baseline ? calculateDiff ( current . cssSize , baseline . cssSize ) . value : '0 ' , header : false }
272278 ] ,
273279 [
274280 { data : '🌐 HTML' , header : false } ,
275281 { data : formatBytes ( current . htmlSize ) , header : false } ,
276282 { data : baseline ? formatBytes ( baseline . htmlSize ) : formatBytes ( current . htmlSize ) , header : false } ,
277- { data : baseline ? calculateDiff ( current . htmlSize , baseline . htmlSize ) . value : 'N/A ' , header : false }
283+ { data : baseline ? calculateDiff ( current . htmlSize , baseline . htmlSize ) . value : '0 ' , header : false }
278284 ] ,
279285 [
280286 { data : '📁 Other Assets' , header : false } ,
281287 { data : formatBytes ( current . otherSize ) , header : false } ,
282288 { data : baseline ? formatBytes ( baseline . otherSize ) : formatBytes ( current . otherSize ) , header : false } ,
283- { data : baseline ? calculateDiff ( current . otherSize , baseline . otherSize ) . value : 'N/A ' , header : false }
289+ { data : baseline ? calculateDiff ( current . otherSize , baseline . otherSize ) . value : '0 ' , header : false }
284290 ]
285291 ] ;
286292
@@ -310,7 +316,7 @@ export async function generateSizeReport(current: SizeData, baseline?: SizeData)
310316 [
311317 { data : '📊 Total Size' , header : false } ,
312318 { data : formatBytes ( current . totalSize ) , header : false } ,
313- { data : baseline ? formatBytes ( baseline . totalSize ) : 'N/A ' , header : false }
319+ { data : baseline ? formatBytes ( baseline . totalSize ) : '0 ' , header : false }
314320 ]
315321 ] ;
316322
0 commit comments