Variable GLIDEPATH_ERROR_MESSAGESConst
Readonly
GLIDEPATH_ERROR_MESSAGES: {
AGES: {
NEGATIVE_START_AGE: "startAge must be positive";
NEGATIVE_END_AGE: "endAge must be positive";
START_AGE_TOO_HIGH: "startAge must be less than endAge";
AGE_DIFFERENCE_TOO_SMALL: "Age difference (endAge - startAge) must be at least 1 year";
AGE_OUT_OF_BOUNDS: "Ages must be between 0.1 and 150 years";
};
FINANCIAL: {
NEGATIVE_BALANCE: "initialBalance must be non-negative";
NEGATIVE_CONTRIBUTION: "monthlyContribution must be non-negative";
BALANCE_TOO_LARGE: "initialBalance exceeds maximum safe calculation limit";
};
RETURNS: {
RETURN_TOO_LOW: "Return rates must be greater than -0.99 (cannot lose more than 99%)";
RETURN_TOO_HIGH: "Return rates above 100% annual return are not supported";
HIGH_RETURN_WARNING: "Return rates above 25% should be used with caution";
};
ALLOCATIONS: {
WEIGHT_BELOW_ZERO: "Allocation weights must be between 0.0 and 1.0 inclusive";
WEIGHT_ABOVE_ONE: "Allocation weights must be between 0.0 and 1.0 inclusive";
};
MODES: {
INVALID_MODE: "Invalid glidepath mode specified";
MISSING_REQUIRED_FIELDS: "Required fields are missing for the specified glidepath mode";
};
WAYPOINTS: {
EMPTY_WAYPOINTS: "Waypoints array must contain at least one waypoint";
INVALID_WAYPOINT_AGE: "Waypoint ages must be positive";
INVALID_WAYPOINT_VALUE: "Waypoint values must be valid for the specified value type";
TOO_MANY_WAYPOINTS: "Too many waypoints may impact performance";
MISSING_EQUITY_RETURN: "equityReturn is required when valueType is \"equityWeight\"";
MISSING_BOND_RETURN: "bondReturn is required when valueType is \"equityWeight\"";
};
GENERAL: {
INVALID_CONTRIBUTION_TIMING: "contributionTiming must be \"start\" or \"end\"";
CONFIGURATION_MISMATCH: "Glidepath configuration does not match the specified mode";
};
} = ...
Type declaration
Readonly
AGES: {
NEGATIVE_START_AGE: "startAge must be positive";
NEGATIVE_END_AGE: "endAge must be positive";
START_AGE_TOO_HIGH: "startAge must be less than endAge";
AGE_DIFFERENCE_TOO_SMALL: "Age difference (endAge - startAge) must be at least 1 year";
AGE_OUT_OF_BOUNDS: "Ages must be between 0.1 and 150 years";
}
Readonly
NEGATIVE_START_AGE: "startAge must be positive"
Readonly
NEGATIVE_END_AGE: "endAge must be positive"
Readonly
START_AGE_TOO_HIGH: "startAge must be less than endAge"
Readonly
AGE_DIFFERENCE_TOO_SMALL: "Age difference (endAge - startAge) must be at least 1 year"
Readonly
AGE_OUT_OF_BOUNDS: "Ages must be between 0.1 and 150 years"
Readonly
FINANCIAL: {
NEGATIVE_BALANCE: "initialBalance must be non-negative";
NEGATIVE_CONTRIBUTION: "monthlyContribution must be non-negative";
BALANCE_TOO_LARGE: "initialBalance exceeds maximum safe calculation limit";
}
Readonly
NEGATIVE_BALANCE: "initialBalance must be non-negative"
Readonly
NEGATIVE_CONTRIBUTION: "monthlyContribution must be non-negative"
Readonly
BALANCE_TOO_LARGE: "initialBalance exceeds maximum safe calculation limit"
Readonly
RETURNS: {
RETURN_TOO_LOW: "Return rates must be greater than -0.99 (cannot lose more than 99%)";
RETURN_TOO_HIGH: "Return rates above 100% annual return are not supported";
HIGH_RETURN_WARNING: "Return rates above 25% should be used with caution";
}
Readonly
RETURN_TOO_LOW: "Return rates must be greater than -0.99 (cannot lose more than 99%)"
Readonly
RETURN_TOO_HIGH: "Return rates above 100% annual return are not supported"
Readonly
HIGH_RETURN_WARNING: "Return rates above 25% should be used with caution"
Readonly
ALLOCATIONS: {
WEIGHT_BELOW_ZERO: "Allocation weights must be between 0.0 and 1.0 inclusive";
WEIGHT_ABOVE_ONE: "Allocation weights must be between 0.0 and 1.0 inclusive";
}
Readonly
WEIGHT_BELOW_ZERO: "Allocation weights must be between 0.0 and 1.0 inclusive"
Readonly
WEIGHT_ABOVE_ONE: "Allocation weights must be between 0.0 and 1.0 inclusive"
Readonly
MODES: {
INVALID_MODE: "Invalid glidepath mode specified";
MISSING_REQUIRED_FIELDS: "Required fields are missing for the specified glidepath mode";
}
Readonly
INVALID_MODE: "Invalid glidepath mode specified"
Readonly
MISSING_REQUIRED_FIELDS: "Required fields are missing for the specified glidepath mode"
Readonly
WAYPOINTS: {
EMPTY_WAYPOINTS: "Waypoints array must contain at least one waypoint";
INVALID_WAYPOINT_AGE: "Waypoint ages must be positive";
INVALID_WAYPOINT_VALUE: "Waypoint values must be valid for the specified value type";
TOO_MANY_WAYPOINTS: "Too many waypoints may impact performance";
MISSING_EQUITY_RETURN: "equityReturn is required when valueType is \"equityWeight\"";
MISSING_BOND_RETURN: "bondReturn is required when valueType is \"equityWeight\"";
}
Readonly
EMPTY_WAYPOINTS: "Waypoints array must contain at least one waypoint"
Readonly
INVALID_WAYPOINT_AGE: "Waypoint ages must be positive"
Readonly
INVALID_WAYPOINT_VALUE: "Waypoint values must be valid for the specified value type"
Readonly
TOO_MANY_WAYPOINTS: "Too many waypoints may impact performance"
Readonly
MISSING_EQUITY_RETURN: "equityReturn is required when valueType is \"equityWeight\""
Readonly
MISSING_BOND_RETURN: "bondReturn is required when valueType is \"equityWeight\""
Readonly
GENERAL: {
INVALID_CONTRIBUTION_TIMING: "contributionTiming must be \"start\" or \"end\"";
CONFIGURATION_MISMATCH: "Glidepath configuration does not match the specified mode";
}
Readonly
INVALID_CONTRIBUTION_TIMING: "contributionTiming must be \"start\" or \"end\""
Readonly
CONFIGURATION_MISMATCH: "Glidepath configuration does not match the specified mode"
Error messages for dynamic glidepath validation failures. These provide clear, actionable feedback to developers and users.