Widget stageIconForBrightness()

in dashboard/lib/widgets/task_icon.dart [28:85]


  Widget stageIconForBrightness(Brightness brightness) {
    // Pass this as the `color` for Image's that are black and white icons.
    // This only works in the CanvasKit implementation currently, not in DOM. If
    // this needs to run in the DOM implementation, it will need to include
    // different assets.
    final Color blendFilter = brightness == Brightness.dark ? Colors.white : null;

    if (qualifiedTask.task == null || !qualifiedTask.isLuci) {
      return Icon(
        Icons.help,
        color: blendFilter,
      );
    }

    if (qualifiedTask.task.toLowerCase().contains('_fuchsia')) {
      return Image.asset(
        'assets/fuchsia.png',
        color: blendFilter,
      );
    } else if (qualifiedTask.task.toLowerCase().contains('_web')) {
      return Image.asset(
        'assets/chromium.png',
        color: blendFilter,
      );
    } else if (qualifiedTask.task.toLowerCase().contains('_android')) {
      return Icon(
        Icons.android,
        color: blendFilter,
      );
    } else if (qualifiedTask.task.toLowerCase().startsWith('linux')) {
      return Image.asset(
        'assets/linux.png',
        color: blendFilter,
      );
    } else if (qualifiedTask.task.toLowerCase().startsWith('mac')) {
      if (qualifiedTask.task.toLowerCase().contains('_ios')) {
        return Icon(
          Icons.phone_iphone,
          color: blendFilter,
        );
      } else {
        return Image.asset(
          'assets/apple.png',
          color: blendFilter,
        );
      }
    } else if (qualifiedTask.task.toLowerCase().startsWith('win')) {
      return Image.asset(
        'assets/windows.png',
        color: blendFilter,
      );
    }

    return Icon(
      Icons.help,
      color: blendFilter,
    );
  }