feat: Matrix login flow with auth guard and client provider

This commit is contained in:
Bernd Steckmeister
2026-04-19 19:56:12 +02:00
parent 062b8b6a94
commit 883d24479b
5 changed files with 307 additions and 3 deletions
+25 -1
View File
@@ -1,8 +1,32 @@
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:pyramid/core/app.dart';
import 'package:pyramid/core/matrix_client.dart';
void main() async {
WidgetsFlutterBinding.ensureInitialized();
runApp(const ProviderScope(child: PyramidApp()));
runApp(const ProviderScope(child: PyramidBootstrap()));
}
class PyramidBootstrap extends ConsumerWidget {
const PyramidBootstrap({super.key});
@override
Widget build(BuildContext context, WidgetRef ref) {
final clientAsync = ref.watch(matrixClientProvider);
return clientAsync.when(
loading: () => const MaterialApp(
home: Scaffold(
body: Center(child: CircularProgressIndicator()),
),
),
error: (e, _) => MaterialApp(
home: Scaffold(
body: Center(child: Text('Fehler: $e')),
),
),
data: (_) => const PyramidApp(),
);
}
}