copyWith method 
    
    
    
  Implementation
  T copyWith({
  double? size,
  Color? color,
  String? semanticLabel,
  TextDirection? textDirection,
}) =>
    (this is _StyledAnimatedIconContainer
        ? _StyledAnimatedIconContainer(
            this.icon,
            color: color ?? this.color,
            size: size ?? this.size,
            semanticLabel: semanticLabel ?? this.semanticLabel,
            textDirection: textDirection ?? this.textDirection,
          )
        : Icon(
            this.icon,
            color: color ?? this.color,
            size: size ?? this.size,
            semanticLabel: semanticLabel ?? this.semanticLabel,
            textDirection: textDirection ?? this.textDirection,
          )) as T;