import 'package:guru_app/property/app_property.dart'; import 'package:guru_utils/auth/auth_credential_manager.dart'; class AnonymousCredential extends Credential { final String secretKey; AnonymousCredential(this.secretKey); @override String get token => secretKey; @override AuthType get authType => AuthType.anonymous; String toJson() => secretKey; } class AnonymousCredentialDelegate extends AuthCredentialDelegate { const AnonymousCredentialDelegate(); @override AuthType get authType => AuthType.anonymous; @override Future login() async { final secretKey = await AppProperty.getInstance().getAnonymousSecretKey(); return AuthResult.success(AnonymousCredential(secretKey)); } @override Future logout() async {} @override Credential deserializeCredential(String data) { return AnonymousCredential(data); } }