2021-02-07 17:18:38 +01:00
|
|
|
import 'package:famedlysdk/famedlysdk.dart';
|
|
|
|
import 'package:famedlysdk/encryption.dart';
|
|
|
|
import 'platform_infos.dart';
|
|
|
|
import 'famedlysdk_store.dart';
|
|
|
|
|
|
|
|
class FluffyClient extends Client {
|
|
|
|
static final FluffyClient _instance = FluffyClient._internal();
|
|
|
|
|
|
|
|
/// The ID of the currently active room, if there is one. May be null or emtpy
|
|
|
|
String activeRoomId;
|
|
|
|
|
|
|
|
factory FluffyClient() {
|
|
|
|
return _instance;
|
|
|
|
}
|
|
|
|
|
|
|
|
FluffyClient._internal()
|
|
|
|
: super(
|
|
|
|
PlatformInfos.clientName,
|
|
|
|
enableE2eeRecovery: true,
|
|
|
|
verificationMethods: {
|
|
|
|
KeyVerificationMethod.numbers,
|
|
|
|
if (PlatformInfos.isMobile || PlatformInfos.isLinux)
|
|
|
|
KeyVerificationMethod.emoji,
|
|
|
|
},
|
|
|
|
importantStateEvents: <String>{
|
|
|
|
'im.ponies.room_emotes', // we want emotes to work properly
|
|
|
|
},
|
|
|
|
databaseBuilder: getDatabase,
|
|
|
|
supportedLoginTypes: {
|
|
|
|
AuthenticationTypes.password,
|
2021-02-24 09:49:12 +01:00
|
|
|
if (PlatformInfos.isMobile || PlatformInfos.isWeb)
|
|
|
|
AuthenticationTypes.sso
|
2021-02-07 17:18:38 +01:00
|
|
|
},
|
|
|
|
);
|
|
|
|
}
|