ImpactCalculatorService
Component Detail
Service Layer
medium complexity
frontend
0
Dependencies
0
Dependents
0
Entities
0
Integrations
Description
A pure client-side service that encapsulates all calculation logic for the impact calculator. It takes user-supplied parameters and applies estimation formulas to produce quantified projections of time saved and reporting efficiency improvements. All computation runs entirely in the browser with no network calls or backend dependencies.
impact-calculator-service
Sources & reasoning
Line 218 explicitly lists the benefit/impact calculator as a core Sales Website capability alongside demo booking. The Sales Website is described as MVP scope (lines 333-338) with no phased deferral of the calculator. Blueprint marks this feature [MVP]. Static + no-login constraint comes directly from line 218.
-
docs/source/likeperson.md · line 218Benefit / impact calculator (static calculation, no login)
-
docs/source/likeperson.md · line 500| sales-calculator | Benefit Calculator | Impact Calculator, Cost Comparison |
Responsibilities
- Accept input parameters (peer mentor count, average monthly activities, reporting overhead hours) and validate ranges
- Apply estimation formulas to calculate projected time savings per month and per year
- Compute reporting efficiency gain as a percentage reduction in manual overhead
- Return a structured results object consumed by ImpactCalculatorPage for display
- Expose default parameter values used to pre-populate the calculator on page load
Interfaces
calculate(params: CalculatorParams): ImpactResults
getDefaultParams(): CalculatorParams
validateParams(params: CalculatorParams): ValidationResult