import 'package:localstore/localstore.dart'; import './resolve_url.dart'; class User { const User( {required this.username, required this.password, required this.server}); final String username; final String password; final OutbagServer server; Future toDisk() async { final db = Localstore.instance; await db .collection('meta') .doc('auth') .set({'username': username, 'password': password}); await server.toDisk(); } static Future fromDisk() async { final db = Localstore.instance; final data = await db.collection('meta').doc('auth').get(); final server = await OutbagServer.fromDisk(); return User( username: data?['username'], password: data?['password'], server: server, ); } static listen(Function(Map) cb) async { final db = Localstore.instance; final stream = db.collection('meta').stream; stream.listen(cb); } }