build method

  1. @override
dynamic build(
  1. dynamic context,
  2. dynamic ref
)

Implementation

@override
Widget build(BuildContext context, WidgetRef ref) {
  final taskLoader =
      ref.watch(taskItemProvider((taskListId: taskListId, taskId: taskId)));
  return taskLoader.when(
    data: (task) => ListTile(
      onTap: () {
        context.pushNamed(
          Routes.taskItemDetails.name,
          pathParameters: {
            'taskId': taskId,
            'taskListId': taskListId,
          },
        );
      },
      horizontalTitleGap: 0,
      minVerticalPadding: 0,
      contentPadding: const EdgeInsets.all(3),
      visualDensity: const VisualDensity(horizontal: 0, vertical: -4),
      minLeadingWidth: 35,
      leading: leadingWidget(task),
      title: takeItemTitle(context, task),
      subtitle: takeItemSubTitle(ref, context, task),
      trailing: trailing(ref, task),
    ),
    error: (e, s) {
      _log.severe('Failed to load task', e, s);
      return ListTile(
        title: Text(L10n.of(context).loadingFailed(e)),
      );
    },
    loading: () => ListTile(
      title: Text(L10n.of(context).loading),
    ),
  );
}