scaleOptionalTextStyle function

TextStyle? scaleOptionalTextStyle(
  1. TextStyle? style,
  2. double factor,
  3. double defaultFontSize
)

Like scaleTextStyle but preserves null: if style is null, returns null without materializing a TextStyle from defaultFontSize. Used for opt-in styles such as ChildNodeTheme.selectedTextStyle and NodeTooltipTheme.textStyle.

Implementation

TextStyle? scaleOptionalTextStyle(
  TextStyle? style,
  double factor,
  double defaultFontSize,
) {
  if (style == null) return null;
  return style.copyWith(
    fontSize: style.fontSize != null ? style.fontSize! * factor : null,
    letterSpacing:
        style.letterSpacing != null ? style.letterSpacing! * factor : null,
  );
}