buildSignalWidget method

Widget buildSignalWidget(
  1. BuildContext context
)

Implementation

Widget buildSignalWidget(BuildContext context) {
  final color = data?.connectionType == SubDeviceConnectionType.ism
      ? switch (data?.ismSignalStrength) {
          SignalStrength.strong => context.appColors.green,
          SignalStrength.moderate => context.appColors.yellow,
          SignalStrength.weak => context.appColors.red,
          null => null,
        }
      : null;

  if (data?.connectionType == SubDeviceConnectionType.ism) {
    switch (data?.ismSignalStrength) {
      case SignalStrength.strong:
        return Icon(Icons.sensors, color: color);

      case SignalStrength.moderate:
        return SvgPicture.asset(
          'assets/images/signal_strength_moderate.svg',
        );

      case SignalStrength.weak:
        return SvgPicture.asset(
          'assets/images/signal_strength_weak.svg',
        );

      default:
        return Icon(Icons.sensors_off, color: color);
    }
  } else if (data?.connectionType == SubDeviceConnectionType.hardwired) {
    return const Icon(Icons.cable);
  } else {
    return const Icon(Icons.sensors_off);
  }
}