import 'dart:io'; import 'package:flutter/material.dart'; import 'package:localization/localization.dart'; import '../../business_logic/settings.dart' as settings; class AccountSettings extends StatelessWidget { const AccountSettings({Key? key}) : super(key: key); @override Widget build(BuildContext context) { return Row( children: const [LogoutButton()], ); } } class LogoutButton extends StatelessWidget { const LogoutButton({Key? key}) : super(key: key); @override Widget build(BuildContext context) { return Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ FutureBuilder( future: settings.loadInstanceUrl(), builder: (context, snapshot) { if (snapshot.hasData) { return Text(snapshot.data ?? "no-instance".i18n()); } else { return const CircularProgressIndicator(); } }, ), TextButton.icon( onPressed: () { logout(); }, icon: const Icon(Icons.logout), label: Text("logout".i18n())) ], ); } } void logout() async { await settings.saveAuthCode(""); exit(0); }