do to formatters
This commit is contained in:
33
apps/website/lib/formatters/ActivityLevelFormatter.ts
Normal file
33
apps/website/lib/formatters/ActivityLevelFormatter.ts
Normal file
@@ -0,0 +1,33 @@
|
||||
/**
|
||||
* ActivityLevelDisplay
|
||||
*
|
||||
* Deterministic mapping of engagement rates to activity level labels.
|
||||
*/
|
||||
|
||||
export class ActivityLevelFormatter {
|
||||
/**
|
||||
* Maps engagement rate to activity level label.
|
||||
*/
|
||||
static levelLabel(engagementRate: number): string {
|
||||
if (engagementRate < 20) {
|
||||
return 'Low';
|
||||
} else if (engagementRate < 50) {
|
||||
return 'Medium';
|
||||
} else {
|
||||
return 'High';
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Maps engagement rate to activity level value.
|
||||
*/
|
||||
static levelValue(engagementRate: number): 'low' | 'medium' | 'high' {
|
||||
if (engagementRate < 20) {
|
||||
return 'low';
|
||||
} else if (engagementRate < 50) {
|
||||
return 'medium';
|
||||
} else {
|
||||
return 'high';
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user