validateDebounceDuration function
Validates debounce duration within configured bounds.
Implementation
int validateDebounceDuration(
int? duration, {
int defaultValue = 300,
bool? enableSecurity,
}) {
final shouldValidate =
enableSecurity ?? SearchBarSecurityConfig.enforceValidation;
if (duration == null) return defaultValue;
if (!shouldValidate) return duration;
if (duration > SearchBarSecurityConfig.maxDebounceDuration) {
if (SearchBarSecurityConfig.enableSecurityLogging) {
debugPrint(
'[SAC SearchBar Security] Debounce $duration above max ${SearchBarSecurityConfig.maxDebounceDuration}',
);
}
return SearchBarSecurityConfig.maxDebounceDuration;
}
if (duration < SearchBarSecurityConfig.minDebounceDuration) {
if (SearchBarSecurityConfig.enableSecurityLogging) {
debugPrint(
'[SAC SearchBar Security] Debounce $duration below min ${SearchBarSecurityConfig.minDebounceDuration}',
);
}
return SearchBarSecurityConfig.minDebounceDuration;
}
return duration;
}