customScaleValue method

double customScaleValue(
  1. num size
)

Implementation

double customScaleValue(num size) {
  assert(
    _customScale != null,
    'customScale is not configured in SizingBuilder.',
  );
  final fn = _customScale;
  if (fn == null) return powerScale(size);

  final multiplier = fn(_shortRatio, _factor);
  assert(
    multiplier > 0 && !multiplier.isNaN && !multiplier.isInfinite,
    'customScale returned an invalid value ($multiplier).',
  );
  if (multiplier <= 0 || multiplier.isNaN || multiplier.isInfinite) {
    return powerScale(size);
  }
  return size * multiplier * _effectiveTextScaleFactor;
}