From 9193c6e31e2dedb82c2308a7c7411c6388d40f5e Mon Sep 17 00:00:00 2001 From: Taras Smakula <tarassmakula@gmail.com> Date: Wed, 28 Feb 2024 12:55:47 +0200 Subject: [PATCH] Remove signup fragment and stages mode arguments --- app/proguard-rules.pro | 2 - .../auth/feature/sign_up/SignUpFragment.kt | 103 ------------------ .../auth/feature/sign_up/SignUpViewModel.kt | 17 --- .../sign_up/password/PasswordFragment.kt | 1 - .../flow/SignUpStagesDataSource.kt} | 0 .../circles/auth/model/PasswordModeArg.kt | 12 -- .../futo/circles/auth/model/TermsModeArg.kt | 4 - auth/src/main/res/layout/fragment_sign_up.xml | 42 ------- .../main/res/navigation/nav_graph_auth.xml | 12 +- auth/src/main/res/values/strings.xml | 1 - 10 files changed, 1 insertion(+), 193 deletions(-) delete mode 100644 auth/src/main/java/org/futo/circles/auth/feature/sign_up/SignUpFragment.kt delete mode 100644 auth/src/main/java/org/futo/circles/auth/feature/sign_up/SignUpViewModel.kt rename auth/src/main/java/org/futo/circles/auth/feature/{sign_up/SignUpDataSource.kt => uia/flow/SignUpStagesDataSource.kt} (100%) delete mode 100644 auth/src/main/java/org/futo/circles/auth/model/PasswordModeArg.kt delete mode 100644 auth/src/main/java/org/futo/circles/auth/model/TermsModeArg.kt delete mode 100644 auth/src/main/res/layout/fragment_sign_up.xml diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro index 07ebfa45e..85c804c45 100644 --- a/app/proguard-rules.pro +++ b/app/proguard-rules.pro @@ -70,8 +70,6 @@ native <methods>; -keep class org.futo.circles.core.model.CircleRoomTypeArg -keep class org.futo.circles.core.model.InviteTypeArg --keep class org.futo.circles.auth.model.PasswordModeArg --keep class org.futo.circles.auth.model.TermsModeArg -keep class org.futo.circles.core.model.ShareUrlTypeArg -keep class org.futo.circles.model.PeopleCategoryTypeArg diff --git a/auth/src/main/java/org/futo/circles/auth/feature/sign_up/SignUpFragment.kt b/auth/src/main/java/org/futo/circles/auth/feature/sign_up/SignUpFragment.kt deleted file mode 100644 index 109d41325..000000000 --- a/auth/src/main/java/org/futo/circles/auth/feature/sign_up/SignUpFragment.kt +++ /dev/null @@ -1,103 +0,0 @@ -package org.futo.circles.auth.feature.sign_up - -import android.os.Bundle -import android.view.View -import androidx.activity.OnBackPressedCallback -import androidx.fragment.app.Fragment -import androidx.fragment.app.viewModels -import androidx.navigation.findNavController -import androidx.navigation.fragment.NavHostFragment -import androidx.navigation.fragment.findNavController -import by.kirich1409.viewbindingdelegate.viewBinding -import dagger.hilt.android.AndroidEntryPoint -import org.futo.circles.auth.R -import org.futo.circles.auth.databinding.FragmentSignUpBinding -import org.futo.circles.core.base.NetworkObserver -import org.futo.circles.core.extensions.navigateSafe -import org.futo.circles.core.extensions.observeData -import org.futo.circles.core.extensions.observeResponse -import org.futo.circles.core.extensions.onBackPressed -import org.futo.circles.core.extensions.setEnabledViews -import org.futo.circles.core.extensions.showDialog -import org.futo.circles.core.extensions.showError -import org.futo.circles.core.base.fragment.BackPressOwner -import org.futo.circles.core.view.LoadingDialog - -@AndroidEntryPoint -class SignUpFragment : Fragment(R.layout.fragment_sign_up), - BackPressOwner { - - private val viewModel by viewModels<SignUpViewModel>() - private val binding by viewBinding(FragmentSignUpBinding::bind) - private val loadingDialog by lazy { LoadingDialog(requireContext()) } - - private val childNavHostFragment by lazy { - childFragmentManager.findFragmentById(R.id.nav_host_fragment) as NavHostFragment - } - - override fun onViewCreated(view: View, savedInstanceState: Bundle?) { - super.onViewCreated(view, savedInstanceState) - binding.toolbar.setNavigationOnClickListener { onBackPressed() } - setupObservers() - } - - private fun setupObservers() { - NetworkObserver.observe(this){ setEnabledViews(it) } - viewModel.subtitleLiveData.observeData(this) { - binding.toolbar.subtitle = it - } - viewModel.navigationLiveData.observeData(this) { - handleNavigation(it) - } - viewModel.finishRegistrationLiveData.observeResponse(this, - success = { navigateToConfigureWorkspace() }, - error = { message -> - showError(message) - loadingDialog.dismiss() - } - ) - viewModel.passPhraseLoadingLiveData.observeData(this) { - loadingDialog.handleLoading(it) - } - } - - - private fun handleNavigation(event: SignUpNavigationEvents) { - val directionId = when (event) { - SignUpNavigationEvents.TokenValidation -> R.id.to_validateToken - SignUpNavigationEvents.Subscription -> R.id.to_subscriptions - SignUpNavigationEvents.AcceptTerm -> R.id.to_acceptTerms - SignUpNavigationEvents.ValidateEmail -> R.id.to_validateEmail - SignUpNavigationEvents.Password -> R.id.to_password - SignUpNavigationEvents.BSspeke -> R.id.to_bsspeke - SignUpNavigationEvents.Username -> R.id.to_username - } - binding.navHostFragment.findNavController().navigateSafe(directionId) - } - - private fun showDiscardDialog() { - showDialog( - titleResIdRes = R.string.discard_current_registration_progress, - negativeButtonVisible = true, - positiveAction = { - childNavHostFragment.navController.popBackStack( - R.id.selectSignUpTypeFragment, false - ) - }) - } - - override fun onChildBackPress(callback: OnBackPressedCallback) { - val includedFragmentsManager = childNavHostFragment.childFragmentManager - if (includedFragmentsManager.backStackEntryCount == 1) { - callback.remove() - onBackPressed() - } else { - showDiscardDialog() - } - } - - private fun navigateToConfigureWorkspace() { - findNavController().navigateSafe(SignUpFragmentDirections.toConfigureWorkspace()) - } - -} \ No newline at end of file diff --git a/auth/src/main/java/org/futo/circles/auth/feature/sign_up/SignUpViewModel.kt b/auth/src/main/java/org/futo/circles/auth/feature/sign_up/SignUpViewModel.kt deleted file mode 100644 index 039bc2140..000000000 --- a/auth/src/main/java/org/futo/circles/auth/feature/sign_up/SignUpViewModel.kt +++ /dev/null @@ -1,17 +0,0 @@ -package org.futo.circles.auth.feature.sign_up - -import androidx.lifecycle.ViewModel -import dagger.hilt.android.lifecycle.HiltViewModel -import javax.inject.Inject - -@HiltViewModel -class SignUpViewModel @Inject constructor( - datasource: SignUpDataSource -) : ViewModel() { - - val subtitleLiveData = datasource.subtitleLiveData - val passPhraseLoadingLiveData = datasource.passPhraseLoadingLiveData - val finishRegistrationLiveData = datasource.finishRegistrationLiveData - val navigationLiveData = datasource.navigationLiveData - -} \ No newline at end of file diff --git a/auth/src/main/java/org/futo/circles/auth/feature/sign_up/password/PasswordFragment.kt b/auth/src/main/java/org/futo/circles/auth/feature/sign_up/password/PasswordFragment.kt index 58b8ad261..b17fc1308 100644 --- a/auth/src/main/java/org/futo/circles/auth/feature/sign_up/password/PasswordFragment.kt +++ b/auth/src/main/java/org/futo/circles/auth/feature/sign_up/password/PasswordFragment.kt @@ -12,7 +12,6 @@ import dagger.hilt.android.AndroidEntryPoint import org.futo.circles.auth.R import org.futo.circles.auth.databinding.FragmentPasswordBinding import org.futo.circles.auth.feature.sign_up.password.confirmation.SetupPasswordWarningDialog -import org.futo.circles.auth.model.PasswordModeArg import org.futo.circles.core.base.fragment.HasLoadingState import org.futo.circles.core.base.fragment.ParentBackPressOwnerFragment import org.futo.circles.core.extensions.getText diff --git a/auth/src/main/java/org/futo/circles/auth/feature/sign_up/SignUpDataSource.kt b/auth/src/main/java/org/futo/circles/auth/feature/uia/flow/SignUpStagesDataSource.kt similarity index 100% rename from auth/src/main/java/org/futo/circles/auth/feature/sign_up/SignUpDataSource.kt rename to auth/src/main/java/org/futo/circles/auth/feature/uia/flow/SignUpStagesDataSource.kt diff --git a/auth/src/main/java/org/futo/circles/auth/model/PasswordModeArg.kt b/auth/src/main/java/org/futo/circles/auth/model/PasswordModeArg.kt deleted file mode 100644 index b3c401020..000000000 --- a/auth/src/main/java/org/futo/circles/auth/model/PasswordModeArg.kt +++ /dev/null @@ -1,12 +0,0 @@ -package org.futo.circles.auth.model - -enum class PasswordModeArg { - LoginPasswordStage, - LoginDirect, - LoginBsSpekeStage, - ReAuthPassword, - ReAuthBsSpekeLogin, - ReAuthBsSpekeSignup, - SignupPasswordStage, - SignupBsSpekeStage -} \ No newline at end of file diff --git a/auth/src/main/java/org/futo/circles/auth/model/TermsModeArg.kt b/auth/src/main/java/org/futo/circles/auth/model/TermsModeArg.kt deleted file mode 100644 index 40b08bb4f..000000000 --- a/auth/src/main/java/org/futo/circles/auth/model/TermsModeArg.kt +++ /dev/null @@ -1,4 +0,0 @@ -package org.futo.circles.auth.model - - -enum class TermsModeArg { Login, Signup, ReAuth } \ No newline at end of file diff --git a/auth/src/main/res/layout/fragment_sign_up.xml b/auth/src/main/res/layout/fragment_sign_up.xml deleted file mode 100644 index 22f65cecc..000000000 --- a/auth/src/main/res/layout/fragment_sign_up.xml +++ /dev/null @@ -1,42 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" - xmlns:app="http://schemas.android.com/apk/res-auto" - android:layout_width="match_parent" - android:layout_height="match_parent"> - - <com.google.android.material.appbar.MaterialToolbar - android:id="@+id/toolbar" - android:layout_width="0dp" - android:layout_height="?attr/actionBarSize" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toTopOf="parent" - app:navigationContentDescription="@string/back" - app:navigationIcon="?attr/homeAsUpIndicator" - app:subtitleCentered="true" - app:title="@string/sign_up" - app:titleCentered="true" /> - - <View - android:id="@+id/toolbarDivider" - android:layout_width="0dp" - android:layout_height="@dimen/divider_height" - android:background="@color/divider_color" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@id/toolbar" /> - - <androidx.fragment.app.FragmentContainerView - android:id="@+id/nav_host_fragment" - android:name="androidx.navigation.fragment.NavHostFragment" - android:layout_width="0dp" - android:layout_height="0dp" - app:defaultNavHost="true" - app:layout_constraintBottom_toBottomOf="parent" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toBottomOf="@id/toolbarDivider" - app:navGraph="@navigation/sign_up_nav_graph" /> - - -</androidx.constraintlayout.widget.ConstraintLayout> \ No newline at end of file diff --git a/auth/src/main/res/navigation/nav_graph_auth.xml b/auth/src/main/res/navigation/nav_graph_auth.xml index 7bded3301..3843488d6 100644 --- a/auth/src/main/res/navigation/nav_graph_auth.xml +++ b/auth/src/main/res/navigation/nav_graph_auth.xml @@ -10,9 +10,6 @@ android:name="org.futo.circles.auth.feature.log_in.LogInFragment" android:label="Log In" tools:layout="@layout/fragment_log_in"> - <action - android:id="@+id/to_signUpFragment" - app:destination="@id/signUpFragment" /> <action android:id="@+id/to_uiaFragment" app:destination="@id/uiaFragment" /> @@ -33,20 +30,13 @@ app:destination="@id/homeFragment" app:popUpTo="@id/logInFragment" app:popUpToInclusive="true" /> - </dialog> - - <fragment - android:id="@+id/signUpFragment" - android:name="org.futo.circles.auth.feature.sign_up.SignUpFragment" - android:label="Sign up" - tools:layout="@layout/fragment_sign_up"> <action android:id="@+id/to_ConfigureWorkspace" app:destination="@id/configureWorkspaceFragment" app:popUpTo="@id/logInFragment" app:popUpToInclusive="true" /> - </fragment> + </dialog> <fragment android:id="@+id/setupProfileFragment" android:name="org.futo.circles.auth.feature.profile.setup.SetupProfileFragment" diff --git a/auth/src/main/res/values/strings.xml b/auth/src/main/res/values/strings.xml index b3f8982a9..08d911989 100644 --- a/auth/src/main/res/values/strings.xml +++ b/auth/src/main/res/values/strings.xml @@ -49,7 +49,6 @@ <string name="importing_keys">Importing keys.</string> <string name="decrypting_key">Decrypting key.</string> <string name="failed_to_get_restore_keys_version">Failed to get latest restore keys version.</string> - <string name="discard_current_registration_progress">Discard current registration progress?</string> <string name="domain">Domain</string> <string name="accept_terms_to_continue">Accept terms to continue</string> <string name="username">username</string> -- GitLab