validateTextScaleFactor function

double validateTextScaleFactor(
  1. double? scaleFactor, {
  2. double defaultValue = 1.0,
  3. bool? enableSecurity,
})

Validates text scale factor within configured bounds.

Implementation

double validateTextScaleFactor(
  double? scaleFactor, {
  double defaultValue = 1.0,
  bool? enableSecurity,
}) {
  final shouldValidate = enableSecurity ?? TextSecurityConfig.enforceValidation;

  if (scaleFactor == null) return defaultValue;
  if (!shouldValidate) return scaleFactor;

  if (scaleFactor > TextSecurityConfig.maxTextScaleFactor) {
    if (TextSecurityConfig.enableSecurityLogging) {
      debugPrint(
        '[SAC Text Security] Text scale factor $scaleFactor above max ${TextSecurityConfig.maxTextScaleFactor}',
      );
    }
    return TextSecurityConfig.maxTextScaleFactor;
  }

  if (scaleFactor < TextSecurityConfig.minTextScaleFactor) {
    if (TextSecurityConfig.enableSecurityLogging) {
      debugPrint(
        '[SAC Text Security] Text scale factor $scaleFactor below min ${TextSecurityConfig.minTextScaleFactor}',
      );
    }
    return TextSecurityConfig.minTextScaleFactor;
  }

  return scaleFactor;
}