@@ -1,4 +1,5 @@
|
||||
import 'package:flutter_secure_storage/flutter_secure_storage.dart';
|
||||
import 'package:shared_preferences/shared_preferences.dart';
|
||||
|
||||
class SecureStorageService {
|
||||
final FlutterSecureStorage _storage = const FlutterSecureStorage(
|
||||
@@ -19,3 +20,21 @@ class SecureStorageService {
|
||||
await _storage.delete(key: key);
|
||||
}
|
||||
}
|
||||
|
||||
class SharedPreferenceLocalData {
|
||||
Future<void> write(String key, String value) async {
|
||||
final SharedPreferences prefs = await SharedPreferences.getInstance();
|
||||
|
||||
await prefs.setString(key, value);
|
||||
}
|
||||
|
||||
Future<String?> read(String key) async {
|
||||
final SharedPreferences prefs = await SharedPreferences.getInstance();
|
||||
|
||||
return prefs.getString(key);
|
||||
}
|
||||
|
||||
// Future<void> delete(String key) async {
|
||||
// await _storage.delete(key: key);
|
||||
// }
|
||||
}
|
||||
|
||||
@@ -13,7 +13,7 @@ import 'biometric_state.dart';
|
||||
|
||||
class BiometricBloc extends Bloc<BiometricEvent, BiometricState> {
|
||||
final LocalAuthentication localAuthentication;
|
||||
final SecureStorageService secureStorageService;
|
||||
final SharedPreferenceLocalData secureStorageService;
|
||||
|
||||
BiometricBloc(this.localAuthentication, this.secureStorageService)
|
||||
: super(BiometricInitial()) {
|
||||
|
||||
@@ -19,7 +19,8 @@ class BiometricLayout extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
final SecureStorageService secureStorageService = SecureStorageService();
|
||||
final SharedPreferenceLocalData secureStorageService =
|
||||
SharedPreferenceLocalData();
|
||||
String biometricImage = "";
|
||||
if (Platform.isIOS) {
|
||||
biometricImage = AppImages.biometricFace;
|
||||
|
||||
@@ -31,8 +31,8 @@ class ChangePasswordBloc
|
||||
emit(ChangePasswordLoading());
|
||||
try {
|
||||
Map<String, dynamic> dataForm = {
|
||||
"oldPassword": event.currentPassword,
|
||||
"newPassword": event.password,
|
||||
"oldPassword": event.password,
|
||||
"newPassword": event.currentPassword,
|
||||
"confirmNewPassword": event.repeatPassword,
|
||||
};
|
||||
ResponseData response =
|
||||
|
||||
@@ -11,7 +11,7 @@ import 'restore_password_phone_verification_state.dart';
|
||||
class RestorePasswordPhoneVerificationBloc extends Bloc<
|
||||
RestorePasswordPhoneVerificationEvent,
|
||||
RestorePasswordPhoneVerificationState> {
|
||||
final SecureStorageService secureStorageService;
|
||||
final SharedPreferenceLocalData secureStorageService;
|
||||
String isdcode = "";
|
||||
|
||||
String countryId = "";
|
||||
@@ -33,16 +33,16 @@ class RestorePasswordPhoneVerificationBloc extends Bloc<
|
||||
emit(RestorePasswordPhoneVerificationLoading());
|
||||
try {
|
||||
Map<String, dynamic> dataForm = {
|
||||
"countryId": event.id,
|
||||
"phoneNumber": event.phoneNumber
|
||||
"ISDcode": event.countryISDCode,
|
||||
"mobileNumber": event.phoneNumber
|
||||
};
|
||||
ResponseData response =
|
||||
await ForgotPasswordApi().forgotPasswordApi(dataForm);
|
||||
|
||||
if (response.status == ResponseStatus.SUCCESS) {
|
||||
var data = response.data["data"];
|
||||
await secureStorageService.write('temp_token', data["token"]);
|
||||
Globalconst.token = data["token"];
|
||||
await secureStorageService.write('temp_token', data);
|
||||
Globalconst.token = data;
|
||||
emit(RestorePasswordPhoneVerificationSuccess());
|
||||
} else {
|
||||
emit(RestorePasswordPhoneVerificationFailure(response.message));
|
||||
|
||||
@@ -12,11 +12,13 @@ class RestorePasswordPhoneVerificationSubmitted
|
||||
final String phoneNumber;
|
||||
final String countryResidence;
|
||||
final String id;
|
||||
final String countryISDCode;
|
||||
|
||||
const RestorePasswordPhoneVerificationSubmitted(
|
||||
this.phoneNumber,
|
||||
this.countryResidence,
|
||||
this.id,
|
||||
this.countryISDCode,
|
||||
);
|
||||
|
||||
@override
|
||||
|
||||
@@ -12,7 +12,8 @@ class RestorePasswordPhoneVerificationScreen extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
final SecureStorageService secureStorageService = SecureStorageService();
|
||||
final SharedPreferenceLocalData secureStorageService =
|
||||
SharedPreferenceLocalData();
|
||||
final radioBloc = context.read<RadioBloc>();
|
||||
return WillPopScope(
|
||||
onWillPop: () async {
|
||||
|
||||
@@ -80,7 +80,8 @@ class RestorePasswordPhoneVerificationBottomSection extends StatelessWidget {
|
||||
.phoneNumberTextField
|
||||
.text,
|
||||
"",
|
||||
restorePasswordBloc.countryId),
|
||||
restorePasswordBloc.countryId,
|
||||
restorePasswordBloc.isdcode),
|
||||
)
|
||||
: null;
|
||||
},
|
||||
|
||||
@@ -22,7 +22,8 @@ import '../bloc/text_bloc/text_event.dart';
|
||||
Widget bottomSection(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
final radioBloc = context.read<ChooseLanguageBloc>();
|
||||
SecureStorageService secureStorageService = SecureStorageService();
|
||||
final SharedPreferenceLocalData secureStorageService =
|
||||
SharedPreferenceLocalData();
|
||||
return Column(
|
||||
mainAxisSize: MainAxisSize.min,
|
||||
children: [
|
||||
|
||||
@@ -14,7 +14,8 @@ class CountrySelectionList extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
SecureStorageService secureStorageService = SecureStorageService();
|
||||
final SharedPreferenceLocalData secureStorageService =
|
||||
SharedPreferenceLocalData();
|
||||
|
||||
final radioBloc = context.read<ChooseLanguageBloc>();
|
||||
_initializeLanguageSelection(radioBloc, secureStorageService);
|
||||
@@ -51,9 +52,9 @@ class CountrySelectionList extends StatelessWidget {
|
||||
}
|
||||
|
||||
void _initializeLanguageSelection(ChooseLanguageBloc radioBloc,
|
||||
SecureStorageService secureStorageService) async {
|
||||
SharedPreferenceLocalData secureStorageService) async {
|
||||
String languageSelected =
|
||||
(await secureStorageService.read("languageSelected")) ?? "";
|
||||
await (secureStorageService.read("languageSelected")) ?? "";
|
||||
|
||||
if (languageSelected.isEmpty) {
|
||||
radioBloc.add(const ChooseLanguageSelected(0));
|
||||
|
||||
@@ -9,7 +9,7 @@ import 'login_event.dart';
|
||||
import 'login_state.dart';
|
||||
|
||||
class LoginBloc extends Bloc<LoginEvent, LoginState> {
|
||||
final SecureStorageService secureStorageService;
|
||||
final SharedPreferenceLocalData secureStorageService;
|
||||
final GlobalKey<FormState> formKey = GlobalKey<FormState>();
|
||||
final TextEditingController countrySelectionTextField =
|
||||
TextEditingController();
|
||||
|
||||
@@ -14,7 +14,8 @@ class LoginScreen extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
final SecureStorageService secureStorageService = SecureStorageService();
|
||||
final SharedPreferenceLocalData secureStorageService =
|
||||
SharedPreferenceLocalData();
|
||||
final radioBloc = context.read<RadioBloc>();
|
||||
|
||||
return WillPopScope(
|
||||
|
||||
@@ -28,7 +28,8 @@ class BottomSection extends StatelessWidget {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
SecureStorageService secureStorageService = SecureStorageService();
|
||||
final SharedPreferenceLocalData secureStorageService =
|
||||
SharedPreferenceLocalData();
|
||||
final radioBloc = context.read<RadioBloc>();
|
||||
var loginbloc = context.read<LoginBloc>();
|
||||
return Column(
|
||||
|
||||
@@ -10,7 +10,7 @@ import 'otp_event.dart';
|
||||
import 'otp_state.dart';
|
||||
|
||||
class OtpBloc extends Bloc<OtpEvent, OtpState> {
|
||||
final SecureStorageService secureStorageService;
|
||||
final SharedPreferenceLocalData secureStorageService;
|
||||
final TextEditingController otpController = TextEditingController();
|
||||
OtpBloc({required this.secureStorageService}) : super(OtpInitial()) {
|
||||
on<StartListeningForOtp>(_onStartListeningForOtp);
|
||||
|
||||
@@ -20,7 +20,8 @@ class OtpScreen extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
final SecureStorageService secureStorageService = SecureStorageService();
|
||||
final SharedPreferenceLocalData secureStorageService =
|
||||
SharedPreferenceLocalData();
|
||||
return Scaffold(
|
||||
backgroundColor: AppColor.plainWhite,
|
||||
resizeToAvoidBottomInset: true,
|
||||
|
||||
@@ -24,7 +24,8 @@ class ResendOtpSection extends StatelessWidget {
|
||||
Widget build(BuildContext context) {
|
||||
String token = "";
|
||||
getToken() async {
|
||||
final SecureStorageService secureStorageService = SecureStorageService();
|
||||
final SharedPreferenceLocalData secureStorageService =
|
||||
SharedPreferenceLocalData();
|
||||
token = await secureStorageService.read('temp_token') ?? "";
|
||||
}
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@ import 'register_event.dart';
|
||||
import 'register_state.dart';
|
||||
|
||||
class RegisterBloc extends Bloc<RegisterEvent, RegisterState> {
|
||||
final SecureStorageService secureStorageService;
|
||||
final SharedPreferenceLocalData secureStorageService;
|
||||
final GlobalKey<FormState> formKey = GlobalKey<FormState>();
|
||||
final TextEditingController countrySelectionTextField =
|
||||
TextEditingController();
|
||||
|
||||
@@ -8,7 +8,7 @@ import 'register_user_event.dart';
|
||||
import 'register_user_state.dart';
|
||||
|
||||
class RegisterUserBloc extends Bloc<RegisterUserEvent, RegisterUserState> {
|
||||
final SecureStorageService secureStorageService;
|
||||
final SharedPreferenceLocalData secureStorageService;
|
||||
final GlobalKey<FormState> formKey = GlobalKey<FormState>();
|
||||
final TextEditingController firstNameTextField = TextEditingController();
|
||||
final TextEditingController lastNameTextField = TextEditingController();
|
||||
@@ -47,7 +47,7 @@ class RegisterUserBloc extends Bloc<RegisterUserEvent, RegisterUserState> {
|
||||
await RegisterAPIService().RegisterRequest(registerdata);
|
||||
if (response.status == ResponseStatus.SUCCESS) {
|
||||
var data = response.data["data"];
|
||||
secureStorageService.write("temp_token", data["token"].toString());
|
||||
secureStorageService.write("temp_token", data.toString());
|
||||
emit(RegisterUserSuccess());
|
||||
} else {
|
||||
emit(RegisterUserFailure(response.message));
|
||||
|
||||
@@ -12,7 +12,8 @@ class RegisterScreen extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
final SecureStorageService secureStorageService = SecureStorageService();
|
||||
final SharedPreferenceLocalData secureStorageService =
|
||||
SharedPreferenceLocalData();
|
||||
final radioBloc = context.read<RadioBloc>();
|
||||
return WillPopScope(
|
||||
onWillPop: () async {
|
||||
|
||||
@@ -14,7 +14,8 @@ class RegisterUserDetailsScreen extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
final SecureStorageService secureStorageService = SecureStorageService();
|
||||
final SharedPreferenceLocalData secureStorageService =
|
||||
SharedPreferenceLocalData();
|
||||
return Scaffold(
|
||||
backgroundColor: AppColor.plainWhite,
|
||||
resizeToAvoidBottomInset: true,
|
||||
|
||||
@@ -33,7 +33,8 @@ class RegisterUserBottomSection extends StatelessWidget {
|
||||
Widget build(BuildContext context) {
|
||||
String token = "";
|
||||
getToken() async {
|
||||
final SecureStorageService secureStorageService = SecureStorageService();
|
||||
final SharedPreferenceLocalData secureStorageService =
|
||||
SharedPreferenceLocalData();
|
||||
token = await secureStorageService.read("temp_token") ?? "";
|
||||
}
|
||||
|
||||
|
||||
@@ -11,8 +11,7 @@ part 'pin_event.dart';
|
||||
part 'pin_state.dart';
|
||||
|
||||
class PinBloc extends Bloc<PinEvent, PinState> {
|
||||
final SecureStorageService secureStorageService;
|
||||
|
||||
final SharedPreferenceLocalData secureStorageService;
|
||||
PinBloc({required this.secureStorageService})
|
||||
: super(const PinState(
|
||||
pin: '',
|
||||
|
||||
@@ -15,7 +15,8 @@ class ConfirmPinScreen extends StatelessWidget {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
final secureStorageService = SecureStorageService();
|
||||
final SharedPreferenceLocalData secureStorageService =
|
||||
SharedPreferenceLocalData();
|
||||
return Scaffold(
|
||||
backgroundColor: AppColor.plainWhite,
|
||||
appBar: AppBarWidget(
|
||||
|
||||
@@ -17,7 +17,8 @@ class PinScreen extends StatelessWidget {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
final secureStorageService = SecureStorageService();
|
||||
final SharedPreferenceLocalData secureStorageService =
|
||||
SharedPreferenceLocalData();
|
||||
return WillPopScope(
|
||||
onWillPop: () async {
|
||||
if (fromScreen == "login" ||
|
||||
|
||||
@@ -19,7 +19,8 @@ class ConfirmPinKey extends StatelessWidget {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
final SecureStorageService secureStorageService = SecureStorageService();
|
||||
final SharedPreferenceLocalData secureStorageService =
|
||||
SharedPreferenceLocalData();
|
||||
return Column(
|
||||
children: [
|
||||
const Gap(20),
|
||||
|
||||
@@ -20,7 +20,8 @@ class SplashScreen extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
SecureStorageService secureStorageService = SecureStorageService();
|
||||
final SharedPreferenceLocalData secureStorageService =
|
||||
SharedPreferenceLocalData();
|
||||
|
||||
return Scaffold(
|
||||
backgroundColor: AppColor.plainWhite,
|
||||
|
||||
@@ -63,7 +63,8 @@ class MyApp extends StatefulWidget {
|
||||
}
|
||||
|
||||
class _MyAppState extends State<MyApp> with WidgetsBindingObserver {
|
||||
SecureStorageService secureStorageService = SecureStorageService();
|
||||
final SharedPreferenceLocalData secureStorageService =
|
||||
SharedPreferenceLocalData();
|
||||
final NetworkConnectivity _networkConnectivity =
|
||||
NetworkConnectivity(onStatusChange: (_) {});
|
||||
String languageSelected = "";
|
||||
|
||||
@@ -9,7 +9,8 @@ import '../../Api_Helper/base_manager.dart';
|
||||
import '../../core/utils/secure/secure_storage_service.dart';
|
||||
|
||||
class NetworkApiService {
|
||||
final SecureStorageService secureStorageService = SecureStorageService();
|
||||
final SharedPreferenceLocalData secureStorageService =
|
||||
SharedPreferenceLocalData();
|
||||
|
||||
final Dio _dio = Dio(BaseOptions(
|
||||
validateStatus: (status) {
|
||||
|
||||
@@ -13,7 +13,8 @@ import 'toggle_state.dart';
|
||||
class ToggleBloc extends Bloc<ToggleEvent, ToggleState> {
|
||||
final String type;
|
||||
|
||||
final SecureStorageService secureStorageService = SecureStorageService();
|
||||
final SharedPreferenceLocalData secureStorageService =
|
||||
SharedPreferenceLocalData();
|
||||
|
||||
ToggleBloc(this.type) : super(ToggleInitial()) {
|
||||
on<ToggleSwitch>(_onToggleSwitch);
|
||||
|
||||
@@ -19,7 +19,8 @@ deviceLockedDialog(
|
||||
context,
|
||||
) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
final SecureStorageService secureStorageService = SecureStorageService();
|
||||
final SharedPreferenceLocalData secureStorageService =
|
||||
SharedPreferenceLocalData();
|
||||
return showDialog(
|
||||
barrierDismissible: false,
|
||||
context: context,
|
||||
|
||||
@@ -15,7 +15,8 @@ import 'text_widget.dart';
|
||||
|
||||
forgotPasswordlogoutdialog(context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
SecureStorageService secureStorageService = SecureStorageService();
|
||||
final SharedPreferenceLocalData secureStorageService =
|
||||
SharedPreferenceLocalData();
|
||||
return showDialog(
|
||||
context: context,
|
||||
builder: (context) => Column(
|
||||
|
||||
@@ -13,7 +13,8 @@ import 'bloc/language/lng_bloc.dart';
|
||||
import 'bloc/language/lng_event.dart';
|
||||
|
||||
void showLanguageBottomSheet(BuildContext context) {
|
||||
final SecureStorageService secureStorageService = SecureStorageService();
|
||||
final SharedPreferenceLocalData secureStorageService =
|
||||
SharedPreferenceLocalData();
|
||||
showModalBottomSheet(
|
||||
backgroundColor: Colors.transparent,
|
||||
context: context,
|
||||
|
||||
@@ -15,7 +15,8 @@ import 'text_widget.dart';
|
||||
|
||||
buildprofilelogoutdialog(context) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
SecureStorageService secureStorageService = SecureStorageService();
|
||||
final SharedPreferenceLocalData secureStorageService =
|
||||
SharedPreferenceLocalData();
|
||||
return showDialog(
|
||||
context: context,
|
||||
builder: (context) => Column(
|
||||
|
||||
@@ -21,8 +21,8 @@ permissionDialog(
|
||||
context,
|
||||
) {
|
||||
var localizations = AppLocalizations.of(context);
|
||||
final SecureStorageService secureStorageService = SecureStorageService();
|
||||
|
||||
final SharedPreferenceLocalData secureStorageService =
|
||||
SharedPreferenceLocalData();
|
||||
return showDialog(
|
||||
barrierDismissible: true,
|
||||
context: context,
|
||||
|
||||
Reference in New Issue
Block a user