This commit is contained in:
2023-09-26 13:49:30 +05:30
parent d9ee1f2ec5
commit 7c4c2c54a7
18 changed files with 2289 additions and 53 deletions

View File

@@ -10,6 +10,9 @@ import android.os.Bundle;
import android.provider.Settings;
import android.text.TextUtils;
import android.util.Log;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.TextView;
import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.widget.SwitchCompat;
@@ -33,6 +36,8 @@ public class FUAActivity extends AppCompatActivity {
MySharedPref mySharedPref;
List<AppList> whiteList;
LinearLayout no_fua;
List<AppList> installed_app_list;
@Override
@@ -44,6 +49,7 @@ public class FUAActivity extends AppCompatActivity {
rvApps = (RecyclerView) findViewById(R.id.rvApps);
rvWhiteApps = (RecyclerView) findViewById(R.id.rv_white_apps);
mySharedPref = new MySharedPref(FUAActivity.this);
no_fua = findViewById(R.id.no_fua);
if (!isAccessibilityAppBlockingEnabled()) {
openAccessibilityDialog();
@@ -55,6 +61,14 @@ public class FUAActivity extends AppCompatActivity {
whiteList = getWhiteListApps();
Collections.sort(whiteList, (o1, o2) -> o1.getName().compareToIgnoreCase(o2.getName()));
if (whiteList.size() > 0) {
no_fua.setVisibility(View.GONE);
rvWhiteApps.setVisibility(View.VISIBLE);
} else {
no_fua.setVisibility(View.VISIBLE);
rvWhiteApps.setVisibility(View.GONE);
}
adapter = new MyAppsAdapter(FUAActivity.this, getInstalledApps(), false, appList -> {
if (!isContainsWhiteList(appList)) {
whiteList.add(appList);
@@ -63,6 +77,14 @@ public class FUAActivity extends AppCompatActivity {
whiteList.remove(getPosition(appList));
}
if (whiteList.size() > 0) {
no_fua.setVisibility(View.GONE);
rvWhiteApps.setVisibility(View.VISIBLE);
} else {
no_fua.setVisibility(View.VISIBLE);
rvWhiteApps.setVisibility(View.GONE);
}
whiteListAdapter.notifyDataSetChanged();
});

View File

@@ -12,6 +12,7 @@ import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.inputmethod.InputMethodManager;
import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.annotation.RawRes;
@@ -20,6 +21,7 @@ import com.bumptech.glide.Glide;
import com.google.android.material.bottomsheet.BottomSheetDialog;
import com.ssb.simplitend.R;
import com.ssb.simplitend.appblocking.MySharedPref;
import com.ssb.simplitend.databinding.BottomSheetAlertBinding;
import com.ssb.simplitend.databinding.DecisionBottomsheetBinding;
import com.ssb.simplitend.databinding.DoneBottomsheetBinding;
@@ -38,6 +40,8 @@ public abstract class AppUtil {
public static final String IMAGE_BASE_URL = "https://simplitend.betadelivery.com/storage/upload/";
private static final String TAG = "AppUtil";
public static final String NOTIFICATION_ACTION = "com.simplitend.NOTIFICATION_ACTION";
// fields
public static final String PATIENT_DETAILS = "user_details";
public static final String CAREGIVER_DETAILS = "caregiver_details";
@@ -285,16 +289,97 @@ public abstract class AppUtil {
setWantSecurityFlag(context, NOT_ASKED_CG_SECURITY);
}
public static void dialPhone(Activity activity, String phone_number) {
public static void dialPhone(Context activity, String phone_number) {
Intent intent = new Intent(Intent.ACTION_DIAL, Uri.fromParts("tel",
phone_number, null));
if (activity != null) activity.startActivity(intent);
}
public static void messageNumber(Activity activity, String phone_number){
public static void messageNumber(Context activity, String phone_number){
Uri uri = Uri.parse("smsto:" + phone_number);
Intent intent = new Intent(Intent.ACTION_SENDTO, uri);
// intent.putExtra("sms_body", "The SMS text");
if (activity != null) activity.startActivity(intent);
}
public static void showBottomAlert(Context context, String content_type, Intent intent) throws Exception {
BottomSheetDialog bsd = new BottomSheetDialog(context, R.style.BottomSheetDialog);
BottomSheetAlertBinding binding = BottomSheetAlertBinding.inflate(LayoutInflater.from(context));
bsd.setContentView(binding.getRoot());
String title = intent.getStringExtra(NotificationService.NOTIFICATION_TITLE_KEY);
String body = intent.getStringExtra(NotificationService.NOTIFICATION_BODY_KEY);
switch (content_type){
case Constants.PATIENT_OUT_OF_GEOFENCE:
setupBottomSheet(binding,
R.drawable.img_medication_time,
title, "Current location of patient",
"Unknown", "Call patient",
v -> {
CaregiverDataCache.getCaregiverData(context,(careGiverData -> {
if (careGiverData == null || careGiverData.patientDetails == null){
Toast.makeText(context, "Couldn't load data", Toast.LENGTH_SHORT).show();
return;
}
AppUtil.dialPhone(context, careGiverData.patientDetails.phone_number);
}), true);
});
bsd.show();
break;
case Constants.ACTIVITY_TIME:
setupBottomSheet(binding,
R.drawable.img_activity_time,
title, body,
null, "Text patient",
v -> {
CaregiverDataCache.getCaregiverData(context,(careGiverData -> {
if (careGiverData == null || careGiverData.patientDetails == null){
Toast.makeText(context, "Couldn't load data", Toast.LENGTH_SHORT).show();
return;
}
AppUtil.messageNumber(context, careGiverData.patientDetails.phone_number);
}), true);
});
bsd.show();
break;
case Constants.MEDICINE_TIME:
setupBottomSheet(binding,
R.drawable.img_medication_time,
title, body,
null, "Text patient",
v -> {
CaregiverDataCache.getCaregiverData(context,(careGiverData -> {
if (careGiverData == null || careGiverData.patientDetails == null){
Toast.makeText(context, "Couldn't load data", Toast.LENGTH_SHORT).show();
return;
}
AppUtil.messageNumber(context, careGiverData.patientDetails.phone_number);
}), true);
});
bsd.show();
break;
}
}
private static void setupBottomSheet(BottomSheetAlertBinding binding,
int img_res,
String title, String description_title,
String description, String btn_text,
View.OnClickListener btn_clickListener) {
binding.image.setImageResource(img_res);
binding.title.setText(title);
binding.descriptionTitle.setText(description_title);
binding.description.setText(description);
binding.btn.setText(btn_text);
binding.btn.setOnClickListener(btn_clickListener);
}
}

View File

@@ -0,0 +1,10 @@
package com.ssb.simplitend.apputils;
public abstract class Constants {
public static final String NEW_SUBSCRIPTION = "new_subscription";
public static final String ACTIVITY_TIME = "activity_time";
public static final String MEDICINE_TIME = "medicine_time";
public static final String GEOFENCING_RADIUS_UPDATED = "geofencing_radius_updated";
public static final String HOME_LOCATION_UPDATED = "home_location_updated";
public static final String PATIENT_OUT_OF_GEOFENCE = "patient_outof_geofence";
}

View File

@@ -0,0 +1,38 @@
package com.ssb.simplitend.apputils;
import android.content.Intent;
import androidx.annotation.NonNull;
import com.onesignal.notifications.INotificationReceivedEvent;
import com.onesignal.notifications.INotificationServiceExtension;
import org.json.JSONException;
import org.json.JSONObject;
public class NotificationService implements INotificationServiceExtension {
public static final String CONTENT_TYPE_KEY = "content_type_key";
public static final String NOTIFICATION_BODY_KEY = "notification_body_key";
public static final String NOTIFICATION_TITLE_KEY = "notification_title_key";
@Override
public void onNotificationReceived(@NonNull INotificationReceivedEvent iNotificationReceivedEvent) {
JSONObject extras = iNotificationReceivedEvent.getNotification().getAdditionalData();
String content_type = null;
if (extras != null){
try {
content_type = extras.getString("content_type");
} catch (JSONException e) {
// do nothing
}
}
Intent intent = new Intent(AppUtil.NOTIFICATION_ACTION);
intent.putExtra(CONTENT_TYPE_KEY, content_type);
intent.putExtra(NOTIFICATION_BODY_KEY, iNotificationReceivedEvent.getNotification().getBody());
intent.putExtra(NOTIFICATION_TITLE_KEY, iNotificationReceivedEvent.getNotification().getTitle());
iNotificationReceivedEvent.getContext().sendBroadcast(intent);
}
}

View File

@@ -17,11 +17,5 @@ public class SimpliTendApp extends Application {
// OneSignal Initialization
OneSignal.initWithContext(this, getString(R.string.ONE_SIGNAL_APP_ID));
// handling notification when app is in foreground.
// OneSignal.getNotifications().addForegroundLifecycleListener(iNotificationWillDisplayEvent -> {
// Toast.makeText(this, "Notifies : " + iNotificationWillDisplayEvent.getNotification().getBody(), Toast.LENGTH_SHORT).show();
// });
}
}

View File

@@ -1,10 +1,17 @@
package com.ssb.simplitend.caregiverdashboard.activities;
import static com.ssb.simplitend.apputils.NotificationService.CONTENT_TYPE_KEY;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.Build;
import android.os.Bundle;
import android.view.View;
import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.content.res.AppCompatResources;
import androidx.fragment.app.Fragment;
@@ -13,9 +20,12 @@ import androidx.lifecycle.ViewModelProvider;
import com.bumptech.glide.Glide;
import com.onesignal.Continue;
import com.onesignal.OneSignal;
import com.onesignal.notifications.INotificationLifecycleListener;
import com.onesignal.notifications.INotificationWillDisplayEvent;
import com.ssb.simplitend.R;
import com.ssb.simplitend.apputils.AppUtil;
import com.ssb.simplitend.apputils.CaregiverDataCache;
import com.ssb.simplitend.apputils.Constants;
import com.ssb.simplitend.articles.ArticlesActivity;
import com.ssb.simplitend.caregiverdashboard.fragments.CgDashBoardFragment;
import com.ssb.simplitend.caregiverdashboard.fragments.MyPatientFragment;
@@ -31,6 +41,9 @@ import com.ssb.simplitend.welcome.welcomecg.mvvm.CareGiverData;
import com.yarolegovich.slidingrootnav.SlidingRootNavBuilder;
import com.yarolegovich.slidingrootnav.callback.DragStateListener;
import org.json.JSONException;
import org.json.JSONObject;
public class CaregiverDashActivity extends AppCompatActivity implements
DragStateListener,
HomeBottomNav.OnBottomNavItemSelectListener {
@@ -38,11 +51,11 @@ public class CaregiverDashActivity extends AppCompatActivity implements
// view binding
protected CaregiverDashboardActivityBinding binding;
private CaregiverDashboardMenuBinding menuBinding;
protected CaregiverMainViewModel viewModel;
private CareGiverData careGiverData;
private BroadcastReceiver notification_receiver;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@@ -59,6 +72,19 @@ public class CaregiverDashActivity extends AppCompatActivity implements
watchSubscription();
}, true);
// NOTIFICATION RECEIVER
notification_receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String content_type = intent.getStringExtra(CONTENT_TYPE_KEY);
try {
AppUtil.showBottomAlert(CaregiverDashActivity.this, content_type, intent);
}catch (Exception e){
// do nothing
}
}
};
registerReceiver(notification_receiver, new IntentFilter(AppUtil.NOTIFICATION_ACTION));
}
@Override
@@ -74,18 +100,24 @@ public class CaregiverDashActivity extends AppCompatActivity implements
@Override
public void onBackPressed() {
Fragment fragment = getSupportFragmentManager().findFragmentByTag("chat");
if (fragment != null){
if (fragment instanceof ChatFragment){
if (fragment != null) {
if (fragment instanceof ChatFragment) {
binding.bottomNav.selectMenuItem(MenuItem.DASHBOARD);
onBottomNavItemSelected(MenuItem.DASHBOARD);
}else{
} else {
super.onBackPressed();
}
}else{
} else {
super.onBackPressed();
}
}
@Override
protected void onDestroy() {
super.onDestroy();
unregisterReceiver(notification_receiver);
}
private void initViews() {
// viewmodel
@@ -105,21 +137,21 @@ public class CaregiverDashActivity extends AppCompatActivity implements
.inject();
binding.bottomNav.setItemSelectListener(this);
}
private void clickEvents() {
// menu click events
menuBinding.close.setOnClickListener(v -> {
if (viewModel.slidingRootNav.isMenuOpened()){
if (viewModel.slidingRootNav.isMenuOpened()) {
viewModel.slidingRootNav.closeMenu(true);
}
});
// content click events
binding.tint.setOnClickListener(v -> {
if (viewModel.slidingRootNav.isMenuOpened()){
if (viewModel.slidingRootNav.isMenuOpened()) {
viewModel.slidingRootNav.closeMenu(true);
binding.tint.setVisibility(View.GONE);
}
@@ -152,9 +184,9 @@ public class CaregiverDashActivity extends AppCompatActivity implements
}
private void watchSubscription(){
if (careGiverData != null){
if (careGiverData.isCaregiverTakeSubscription != 1){
private void watchSubscription() {
if (careGiverData != null) {
if (careGiverData.isCaregiverTakeSubscription != 1) {
// user has not subscribed yet
Intent intent = new Intent(this, CgSubscriptionActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
@@ -167,14 +199,13 @@ public class CaregiverDashActivity extends AppCompatActivity implements
// initializing dashboard fragment
replaceFragment(new CgDashBoardFragment(), "dashboard");
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU){
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
// requestPermission will show the native Android notification permission prompt.
OneSignal.getNotifications().requestPermission(true, Continue.with(r -> {
if (r.isSuccess()) {
if (r.getData() != null) {
// `requestPermission` completed successfully and the user has accepted permission
}
else {
} else {
// `requestPermission` completed successfully but the user has rejected permission
}
}
@@ -183,12 +214,12 @@ public class CaregiverDashActivity extends AppCompatActivity implements
}
private void setLayoutDetails() {
if (careGiverData == null || careGiverData.patientDetails == null){
if (careGiverData == null || careGiverData.patientDetails == null) {
return;
}
menuBinding.name.setText(careGiverData.first_name);
if (careGiverData.profile_photo != null){
if (careGiverData.profile_photo != null) {
Glide.with(this)
.load(AppUtil.IMAGE_BASE_URL + careGiverData.profile_photo)
.placeholder(android.R.color.darker_gray)
@@ -202,9 +233,9 @@ public class CaregiverDashActivity extends AppCompatActivity implements
if (fragment instanceof CgDashBoardFragment) {
String first_name = "";
if (careGiverData != null && careGiverData.first_name != null){
if (careGiverData != null && careGiverData.first_name != null) {
String[] name = careGiverData.first_name.split(" ");
if (name.length > 0){
if (name.length > 0) {
first_name = name[0];
}
}
@@ -215,7 +246,7 @@ public class CaregiverDashActivity extends AppCompatActivity implements
}
private void replaceFragment(Fragment fragment, String tag){
private void replaceFragment(Fragment fragment, String tag) {
getSupportFragmentManager().beginTransaction()
.replace(R.id.fcv_cg_home, fragment, tag)
.commitAllowingStateLoss();
@@ -229,10 +260,10 @@ public class CaregiverDashActivity extends AppCompatActivity implements
@Override
public void onDragEnd(boolean isMenuOpened) {
if (isMenuOpened){
if (isMenuOpened) {
binding.getRoot().setRadius(30);
binding.tint.setVisibility(View.VISIBLE);
}else{
} else {
binding.getRoot().setRadius(0);
binding.tint.setVisibility(View.GONE);
}
@@ -240,7 +271,7 @@ public class CaregiverDashActivity extends AppCompatActivity implements
@Override
public void onBottomNavItemSelected(MenuItem selectedItem) {
if (selectedItem == MenuItem.DASHBOARD){
if (selectedItem == MenuItem.DASHBOARD) {
replaceFragment(new CgDashBoardFragment(), "dashboard");
// setting up toolbar accordingly
@@ -251,16 +282,16 @@ public class CaregiverDashActivity extends AppCompatActivity implements
binding.toolbar.setNavigationIconTint(getResources().getColor(R.color.black));
String first_name = "";
if (careGiverData != null && careGiverData.first_name != null){
if (careGiverData != null && careGiverData.first_name != null) {
String[] name = careGiverData.first_name.split(" ");
if (name.length > 0){
if (name.length > 0) {
first_name = name[0];
}
}
binding.toolbar.setTitle("Welcome " + first_name);
}else if (selectedItem == MenuItem.MY_PATIENT){
} else if (selectedItem == MenuItem.MY_PATIENT) {
replaceFragment(new MyPatientFragment(), "my_patient");
// setting up toolbar accordingly
@@ -270,7 +301,7 @@ public class CaregiverDashActivity extends AppCompatActivity implements
binding.toolbar.setTitle(null);
binding.toolbar.setNavigationIcon(AppCompatResources.getDrawable(this, R.drawable.ic_menu));
binding.toolbar.setNavigationIconTint(getResources().getColor(R.color.white));
}else if (selectedItem == MenuItem.CHATS){
} else if (selectedItem == MenuItem.CHATS) {
replaceFragment(new ChatFragment(), "chat");
binding.toolbar.setVisibility(View.GONE);

View File

@@ -1,11 +1,15 @@
package com.ssb.simplitend.caregiverdashboard.fragments;
import static com.ssb.simplitend.apputils.NotificationService.CONTENT_TYPE_KEY;
import static com.ssb.simplitend.articles.ArticleShowerActivity.ARTICLE_TITLE;
import static com.ssb.simplitend.articles.ArticleShowerActivity.ARTICLE_URL_KEY;
import static com.ssb.simplitend.cg_geofencing.CgGeoFencingActivity.GEOFENCE_DETAILS_KEY;
import android.app.ProgressDialog;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
@@ -69,6 +73,8 @@ public class CgDashBoardFragment extends Fragment implements
private PatientData patientData;
private ProgressDialog progressDialog;
private GoogleMap mGoogleMap;
private BroadcastReceiver notification_receiver;
public CgDashBoardFragment(){
// required empty
@@ -84,11 +90,27 @@ public class CgDashBoardFragment extends Fragment implements
progressDialog = new ProgressDialog(requireContext());
notification_receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String content_type = intent.getStringExtra(CONTENT_TYPE_KEY);
loadReminders();
loadActivities();
// if (Constants.ACTIVITY_TIME.equals(content_type)){
// loadArticles();
// }else if (Constants.MEDICINE_TIME.equals(content_type)){
// loadReminders();
// }
}
};
CaregiverDataCache.getCaregiverData(requireActivity(), (careGiverData1 -> {
this.careGiverData = careGiverData1;
loadReminders();
loadActivities();
requireContext().registerReceiver(notification_receiver, new IntentFilter(AppUtil.NOTIFICATION_ACTION));
}), true);
initViews();
@@ -112,6 +134,12 @@ public class CgDashBoardFragment extends Fragment implements
}), true);
}
@Override
public void onDestroyView() {
super.onDestroyView();
requireContext().unregisterReceiver(notification_receiver);
}
private void loadActivities() {
if (careGiverData == null) return;
@@ -181,6 +209,24 @@ public class CgDashBoardFragment extends Fragment implements
Intent intent = new Intent(requireActivity(), ArticlesActivity.class);
startActivity(intent);
});
binding.refreshBtn.setOnClickListener(v -> {
binding.refreshBtn.setVisibility(View.GONE);
binding.refreshProgress.setVisibility(View.VISIBLE);
viewModel.ongoingActivityText = getString(R.string.loading);
viewModel.upcomingActivityText = getString(R.string.loading);
viewModel.upcomingReminderText = getString(R.string.loading);
viewModel.dailyReminderText = getString(R.string.loading);
binding.upcomingActivity.setText(viewModel.upcomingActivityText);
binding.onGoingActivity.setText(viewModel.ongoingActivityText);
binding.nearestReminder.setText(viewModel.upcomingReminderText);
binding.dailyReminder.setText(viewModel.dailyReminderText);
loadReminders();
loadActivities();
});
}
public void setArticleDetails(ArticleResult articleResult){
@@ -341,6 +387,9 @@ public class CgDashBoardFragment extends Fragment implements
@Override
public void onFetchRemindersListFailed(Throwable t, String message) {
binding.refreshProgress.setVisibility(View.GONE);
binding.refreshBtn.setVisibility(View.VISIBLE);
binding.nearestReminder.setText(R.string.couldnt_load_data);
binding.dailyReminder.setText(R.string.couldnt_load_data);
@@ -352,6 +401,9 @@ public class CgDashBoardFragment extends Fragment implements
public void nearestReminder(NearestReminder nearestReminder) {
Log.d("aditya", "nearestReminder: " + nearestReminder);
binding.refreshProgress.setVisibility(View.GONE);
binding.refreshBtn.setVisibility(View.VISIBLE);
try {
// daily routine setting
String daily_r_txt;
@@ -442,6 +494,9 @@ public class CgDashBoardFragment extends Fragment implements
@Override
public void onRoutinesFetchedFailed(Throwable t, String message) {
binding.refreshProgress.setVisibility(View.GONE);
binding.refreshBtn.setVisibility(View.VISIBLE);
binding.upcomingActivity.setText(R.string.couldnt_load_data);
binding.onGoingActivity.setText(R.string.couldnt_load_data);
@@ -451,6 +506,9 @@ public class CgDashBoardFragment extends Fragment implements
@Override
public void nearestActivity(NearestActivity nearestActivity) {
binding.refreshProgress.setVisibility(View.GONE);
binding.refreshBtn.setVisibility(View.VISIBLE);
if (nearestActivity.ongoing_activity_name != null){
binding.onGoingActivity.setText(nearestActivity.ongoing_activity_name);
}else{

View File

@@ -21,6 +21,7 @@ import androidx.recyclerview.widget.GridLayoutManager;
import com.google.android.material.bottomsheet.BottomSheetDialog;
import com.ssb.simplitend.R;
import com.ssb.simplitend.apputils.AppUtil;
import com.ssb.simplitend.apputils.PatientDataCache;
import com.ssb.simplitend.databinding.AddContactFragmentBinding;
import com.ssb.simplitend.databinding.DoneBottomsheetBinding;
import com.ssb.simplitend.welcome.welcomepatient.fragments.contacts.mvvm.AddContactAdapter;
@@ -127,6 +128,8 @@ public class AddContactFragment extends Fragment implements WelcomeContracts.Con
contactList.add(response.contact_data);
}
PatientDataCache.setContactList(new ArrayList<>(contactList));
for (int i = contactList.size(); i<10; i++){
contactList.add(new ContactData(-1));
}

View File

@@ -7,10 +7,8 @@ import static com.ssb.simplitend.welcome.welcomepatient.fragments.register.ReAct
import static com.ssb.simplitend.welcome.welcomepatient.fragments.register.ReActivateFragment.TOKEN_KEY;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@@ -24,9 +22,9 @@ import androidx.navigation.Navigation;
import com.ssb.simplitend.R;
import com.ssb.simplitend.apputils.AppUtil;
import com.ssb.simplitend.apputils.CaregiverDataCache;
import com.ssb.simplitend.apputils.PatientDataCache;
import com.ssb.simplitend.apputils.RetrofitHelper;
import com.ssb.simplitend.apputils.CaregiverDataCache;
import com.ssb.simplitend.caregiverdashboard.activities.CaregiverDashActivity;
import com.ssb.simplitend.caregiverdashboard.activities.deactivateacc.AccountPresenter;
import com.ssb.simplitend.databinding.SplashFragmentBinding;