onAdd method

Future<void> onAdd(
  1. dynamic context,
  2. dynamic ref
)

Implementation

Future<void> onAdd(BuildContext context, WidgetRef ref) async {
  final userToAdd = await showDialog<String?>(
    context: context,
    builder: (BuildContext context) => const AddUserToBlock(),
  );
  if (userToAdd == null) return;
  if (!context.mounted) {
    EasyLoading.dismiss();
    return;
  }
  EasyLoading.show(status: L10n.of(context).blockingUserProgress);
  try {
    final account = ref.read(accountProvider);
    await account.ignoreUser(userToAdd);
    if (!context.mounted) {
      EasyLoading.dismiss();
      return;
    }
    EasyLoading.showToast(L10n.of(context).userAddedToBlockList(userToAdd));
  } catch (e, s) {
    _log.severe('Failed to block user', e, s);
    if (!context.mounted) {
      EasyLoading.dismiss();
      return;
    }
    EasyLoading.showError(
      L10n.of(context).blockingUserFailed(e),
      duration: const Duration(seconds: 3),
    );
  }
}