Basic Userdata storage

This commit is contained in:
Jakob Meier 2023-03-17 21:05:48 +01:00
parent ac32d2419d
commit 955a01d368
No known key found for this signature in database
GPG key ID: 66BDC7E6A01A6152

38
lib/backend/storage.dart Normal file
View file

@ -0,0 +1,38 @@
import 'package:localstore/localstore.dart';
import './resolve_url.dart';
class LoginDetails {
const LoginDetails(
{required this.username, required this.password, required this.server});
final String username;
final String password;
final OutbagServer server;
void toDisk() async {
final db = Localstore.instance;
await db
.collection('meta')
.doc('auth')
.set({'username': username, 'password': password});
server.toDisk();
}
static Future<LoginDetails> fromDisk() async {
final db = Localstore.instance;
final data = await db.collection('meta').doc('auth').get();
final server = await OutbagServer.fromDisk();
return LoginDetails(
username: data?['username'],
password: data?['password'],
server: server,
);
}
}
// obtain room list
Future<Map<String, dynamic>?> getRooms() async {
final db = Localstore.instance;
return await db.collection('rooms').get();
}