Commit 359433da authored by shohboz's avatar shohboz

[UPD] MUS-107 Feature, updated again package name and firebase add success

parent 71518399
......@@ -5,6 +5,7 @@ plugins {
id 'dagger.hilt.android.plugin'
id 'androidx.navigation.safeargs.kotlin'
id 'com.google.firebase.crashlytics'
id 'com.google.gms.google-services'
}
android {
......@@ -55,6 +56,7 @@ dependencies {
implementation 'com.google.firebase:firebase-crashlytics-ktx:18.2.5'
implementation 'com.google.firebase:firebase-analytics-ktx:20.0.0'
implementation 'com.google.firebase:firebase-messaging-ktx:23.0.0'
implementation 'com.google.firebase:firebase-core:20.0.0'
// Navigation
......@@ -70,7 +72,7 @@ dependencies {
implementation 'com.makeramen:roundedimageview:2.3.0'
implementation("io.coil-kt:coil:1.4.0")
implementation 'com.airbnb.android:lottie:3.4.0'
implementation 'com.airbnb.android:lottie:4.2.2'
debugImplementation "com.readystatesoftware.chuck:library:$chuck_version"
releaseImplementation "com.readystatesoftware.chuck:library-no-op:$chuck_version"
......
......@@ -9,7 +9,7 @@
<uses-permission android:name="android.permission.USE_FINGERPRINT" />
<application
android:name="com.mobiuz.app.app.App"
android:name="com.mobiuz.app.dev.app.App"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
......@@ -20,25 +20,25 @@
android:usesCleartextTraffic="true"
tools:targetApi="m">
<activity
android:name="com.mobiuz.app.LanguageActivity"
android:name="com.mobiuz.app.dev.LanguageActivity"
android:screenOrientation="portrait"
android:configChanges="orientation"
android:windowSoftInputMode="adjustResize"
android:exported="false" />
<activity
android:name="com.mobiuz.app.MainActivity"
android:name="com.mobiuz.app.dev.MainActivity"
android:screenOrientation="portrait"
android:configChanges="orientation"
android:windowSoftInputMode="adjustResize"
android:exported="false" />
<activity
android:name="com.mobiuz.app.AuthActivity"
android:name="com.mobiuz.app.dev.AuthActivity"
android:screenOrientation="portrait"
android:configChanges="orientation"
android:windowSoftInputMode="adjustResize"
android:exported="false" />
<activity
android:name="com.mobiuz.app.SplashActivity"
android:name="com.mobiuz.app.dev.SplashActivity"
android:configChanges="orientation"
android:exported="true"
android:windowSoftInputMode="adjustResize"
......
package com.mobiuz.app
package com.mobiuz.app.dev
import android.os.Bundle
import android.util.Log
import android.view.View
import androidx.appcompat.app.AppCompatActivity
import androidx.navigation.NavController
import androidx.navigation.fragment.NavHostFragment
import com.google.firebase.FirebaseApp
import com.google.firebase.analytics.FirebaseAnalytics
import com.google.firebase.ktx.Firebase
import com.google.firebase.messaging.FirebaseMessaging
import com.google.firebase.messaging.ktx.messaging
import dagger.hilt.android.AndroidEntryPoint
import com.mobiuz.app.R
import com.mobiuz.app.databinding.ActivityAuthBinding
import com.mobiuz.app.model.SharedPref
import com.mobiuz.app.ui.global.CONSTANTS
import com.mobiuz.app.utils.Utils
import com.mobiuz.app.dev.model.SharedPref
import com.mobiuz.app.dev.ui.global.CONSTANTS
import com.mobiuz.app.dev.utils.Utils
import dagger.hilt.android.AndroidEntryPoint
import javax.inject.Inject
@AndroidEntryPoint
......@@ -34,6 +33,7 @@ class AuthActivity : AppCompatActivity() {
setContentView(bn.root)
val fragment = supportFragmentManager.findFragmentById(R.id.auth_container) as NavHostFragment
navController = NavHostFragment.findNavController(fragment)
FirebaseApp.initializeApp(this)
mFirebaseAnalytics = FirebaseAnalytics.getInstance(this)
......@@ -42,7 +42,7 @@ class AuthActivity : AppCompatActivity() {
// }
FirebaseMessaging.getInstance().token.addOnCompleteListener {
if(it.isSuccessful) pref.setDeviceToken(it.result.toString())
if (it.isSuccessful) pref.setDeviceToken(it.result.toString())
}
window.decorView.systemUiVisibility = window.decorView.systemUiVisibility or View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR
......
package com.mobiuz.app
package com.mobiuz.app.dev
import android.content.Intent
import android.os.Bundle
import android.view.View
import androidx.appcompat.app.AppCompatActivity
import dagger.hilt.android.AndroidEntryPoint
import com.mobiuz.app.databinding.ActivityLanguageBinding
import com.mobiuz.app.model.SharedPref
import com.mobiuz.app.ui.global.CONSTANTS
import com.mobiuz.app.dev.model.SharedPref
import com.mobiuz.app.dev.ui.global.CONSTANTS
import dagger.hilt.android.AndroidEntryPoint
import javax.inject.Inject
@AndroidEntryPoint
......
package com.mobiuz.app
package com.mobiuz.app.dev
import android.content.Intent
import android.graphics.Color
import android.os.Bundle
import android.util.Log
import androidx.appcompat.app.AppCompatActivity
import androidx.lifecycle.LiveData
import androidx.navigation.NavController
import com.google.android.material.bottomnavigation.BottomNavigationView
import com.google.firebase.FirebaseApp
import com.google.firebase.analytics.FirebaseAnalytics
import com.google.firebase.ktx.Firebase
import com.google.firebase.messaging.FirebaseMessaging
import com.google.firebase.messaging.ktx.messaging
import dagger.hilt.android.AndroidEntryPoint
import com.mobiuz.app.R
import com.mobiuz.app.databinding.ActivityMainBinding
import com.mobiuz.app.model.SharedPref
import com.mobiuz.app.ui.global.CONSTANTS
import com.mobiuz.app.ui.global.FullScreenDialog
import com.mobiuz.app.utils.extensions.customLog
import com.mobiuz.app.utils.extensions.setupWithNavController
import com.mobiuz.app.dev.model.SharedPref
import com.mobiuz.app.dev.ui.global.CONSTANTS
import com.mobiuz.app.dev.ui.global.FullScreenDialog
import com.mobiuz.app.dev.utils.extensions.customLog
import com.mobiuz.app.dev.utils.extensions.setupWithNavController
import dagger.hilt.android.AndroidEntryPoint
import javax.inject.Inject
......@@ -42,13 +41,14 @@ class MainActivity : AppCompatActivity() {
setContentView(bn.root)
window.statusBarColor = Color.TRANSPARENT
FirebaseApp.initializeApp(this)
mFirebaseAnalytics = FirebaseAnalytics.getInstance(this)
// Firebase.messaging.subscribeToTopic("just").addOnCompleteListener { task ->
// Log.e("AAA", "subscribe: ${task.isSuccessful}")
// }
FirebaseMessaging.getInstance().token.addOnCompleteListener {
if(it.isSuccessful) pref.setDeviceToken(it.result.toString())
if (it.isSuccessful) pref.setDeviceToken(it.result.toString())
}
if (savedInstanceState == null) {
setupBottomNavigationBar()
......
package com.mobiuz.app
package com.mobiuz.app.dev
import com.mobiuz.app.ui.base.BaseFragment
import com.mobiuz.app.R
import com.mobiuz.app.dev.ui.base.BaseFragment
class MotionFragment : BaseFragment(R.layout.home_motion) {
......
package com.mobiuz.app
package com.mobiuz.app.dev
import android.os.Bundle
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity
import androidx.biometric.BiometricPrompt
import androidx.core.content.ContextCompat
import dagger.hilt.android.AndroidEntryPoint
import com.mobiuz.app.databinding.ActivityPinBinding
import dagger.hilt.android.AndroidEntryPoint
import java.util.concurrent.Executor
@AndroidEntryPoint
......
package com.mobiuz.app
package com.mobiuz.app.dev
import android.content.Intent
import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import androidx.lifecycle.lifecycleScope
import com.mobiuz.app.databinding.ActivitySplashBinding
import com.mobiuz.app.dev.model.SharedPref
import com.mobiuz.app.dev.ui.global.CONSTANTS
import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.delay
import com.mobiuz.app.databinding.ActivitySplashBinding
import com.mobiuz.app.model.SharedPref
import com.mobiuz.app.ui.global.CONSTANTS
import javax.inject.Inject
@AndroidEntryPoint
......
package com.mobiuz.app.app
package com.mobiuz.app.dev.app
import android.app.Application
import dagger.hilt.android.HiltAndroidApp
......
package com.mobiuz.app.di
package com.mobiuz.app.dev.di
import dagger.Module
import dagger.hilt.InstallIn
......
package com.mobiuz.app.di
package com.mobiuz.app.dev.di
import dagger.Module
import dagger.hilt.InstallIn
......
package com.mobiuz.app.di
package com.mobiuz.app.dev.di
import android.content.Context
import com.mobiuz.app.dev.model.SharedPref
import com.mobiuz.app.dev.network.api.ApiService
import com.mobiuz.app.dev.ui.global.CONSTANTS
import com.mobiuz.app.dev.utils.Utils
import com.readystatesoftware.chuck.ChuckInterceptor
import dagger.Module
import dagger.Provides
......@@ -13,10 +17,6 @@ import okhttp3.logging.HttpLoggingInterceptor
import retrofit2.Retrofit
import retrofit2.adapter.rxjava3.RxJava3CallAdapterFactory
import retrofit2.converter.gson.GsonConverterFactory
import com.mobiuz.app.model.SharedPref
import com.mobiuz.app.network.api.ApiService
import com.mobiuz.app.ui.global.CONSTANTS
import com.mobiuz.app.utils.Utils
import javax.inject.Singleton
@Module
......
package com.mobiuz.app.model
package com.mobiuz.app.dev.model
data class PinData(
var count: Int = -1
......
package com.mobiuz.app.model
package com.mobiuz.app.dev.model
import android.content.Context
import android.content.SharedPreferences
......
package com.mobiuz.app.model
package com.mobiuz.app.dev.model
data class UserAuth(
val phone: String,
......
package com.mobiuz.app.network.api
package com.mobiuz.app.dev.network.api
import com.mobiuz.app.dev.model.UserAuth
import com.mobiuz.app.dev.network.model.*
import retrofit2.http.Body
import retrofit2.http.POST
import com.mobiuz.app.model.UserAuth
import com.mobiuz.app.network.model.*
interface ApiService {
......
package com.mobiuz.app.network.model
package com.mobiuz.app.dev.network.model
data class Action(
var action: String = ""
......
package com.mobiuz.app.network.model
package com.mobiuz.app.dev.network.model
data class Customer(
var customer: CustomerData?
......
package com.mobiuz.app.network.model
package com.mobiuz.app.dev.network.model
data class Errors(
var key: String,
......
package com.mobiuz.app.network.model
package com.mobiuz.app.dev.network.model
data class GenerateToken(
var token: String
......
package com.mobiuz.app.network.model
package com.mobiuz.app.dev.network.model
class ResponseList<T>(
......
package com.mobiuz.app.network.model
package com.mobiuz.app.dev.network.model
class ResponseObject<T>(
......
package com.mobiuz.app.network.model
package com.mobiuz.app.dev.network.model
data class Status(
......
package com.mobiuz.app.network.model
package com.mobiuz.app.dev.network.model
sealed class UiStateList<out T> {
......
package com.mobiuz.app.network.model
package com.mobiuz.app.dev.network.model
sealed class UiStateObject<out T> {
data class SUCCESS<out T>(val data: T) : UiStateObject<T>()
......
package com.mobiuz.app.network.repository
package com.mobiuz.app.dev.network.repository
import android.content.Context
import com.mobiuz.app.dev.model.SharedPref
import com.mobiuz.app.dev.model.UserAuth
import com.mobiuz.app.dev.network.api.ApiService
import com.mobiuz.app.dev.network.model.Action
import com.mobiuz.app.dev.network.model.Customer
import com.mobiuz.app.dev.network.model.UiStateObject
import com.mobiuz.app.dev.utils.extensions.userMessage
import dagger.hilt.android.qualifiers.ApplicationContext
import com.mobiuz.app.model.SharedPref
import com.mobiuz.app.model.UserAuth
import com.mobiuz.app.network.api.ApiService
import com.mobiuz.app.network.model.Action
import com.mobiuz.app.network.model.Customer
import com.mobiuz.app.network.model.UiStateObject
import com.mobiuz.app.utils.extensions.userMessage
import javax.inject.Inject
import javax.inject.Singleton
......
package com.mobiuz.app.network.repository
package com.mobiuz.app.dev.network.repository
import com.mobiuz.app.network.api.ApiService
import com.mobiuz.app.dev.network.api.ApiService
import javax.inject.Inject
import javax.inject.Singleton
......
package com.mobiuz.app.ui.auth
package com.mobiuz.app.dev.ui.auth
import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope
import com.mobiuz.app.dev.model.UserAuth
import com.mobiuz.app.dev.network.model.Action
import com.mobiuz.app.dev.network.model.UiStateObject
import com.mobiuz.app.dev.network.repository.AuthRepository
import dagger.hilt.android.lifecycle.HiltViewModel
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.StateFlow
import kotlinx.coroutines.launch
import com.mobiuz.app.model.UserAuth
import com.mobiuz.app.network.model.Action
import com.mobiuz.app.network.model.UiStateObject
import com.mobiuz.app.network.repository.AuthRepository
import javax.inject.Inject
@HiltViewModel
......
package com.mobiuz.app.ui.auth.biometric
package com.mobiuz.app.dev.ui.auth.biometric
import android.Manifest
import android.content.Intent
......@@ -10,14 +10,14 @@ import androidx.core.app.ActivityCompat.requestPermissions
import androidx.core.content.ContextCompat
import androidx.navigation.NavController
import androidx.navigation.fragment.NavHostFragment
import dagger.hilt.android.AndroidEntryPoint
import com.mobiuz.app.BuildConfig
import com.mobiuz.app.MainActivity
import com.mobiuz.app.R
import com.mobiuz.app.databinding.FragmentBiometricBinding
import com.mobiuz.app.ui.base.BaseFragment
import com.mobiuz.app.ui.global.ButtonClick
import com.mobiuz.app.ui.global.CONSTANTS
import com.mobiuz.app.dev.MainActivity
import com.mobiuz.app.dev.ui.base.BaseFragment
import com.mobiuz.app.dev.ui.global.ButtonClick
import com.mobiuz.app.dev.ui.global.CONSTANTS
import dagger.hilt.android.AndroidEntryPoint
@AndroidEntryPoint
class BiometricFragment : BaseFragment(R.layout.fragment_biometric) {
......
package com.mobiuz.app.ui.auth.check
package com.mobiuz.app.dev.ui.auth.check
import android.os.Bundle
import android.view.View
import android.view.animation.AnimationUtils
import androidx.core.os.bundleOf
import androidx.core.view.isVisible
import androidx.fragment.app.viewModels
import androidx.lifecycle.lifecycleScope
import androidx.navigation.NavController
import androidx.navigation.fragment.NavHostFragment
import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.flow.collect
import com.mobiuz.app.R
import com.mobiuz.app.databinding.FragmentCheckPhoneBinding
import com.mobiuz.app.model.UserAuth
import com.mobiuz.app.network.model.UiStateObject
import com.mobiuz.app.ui.auth.AuthViewModel
import com.mobiuz.app.ui.base.BaseFragment
import com.mobiuz.app.ui.global.ButtonClick
import com.mobiuz.app.ui.global.CONSTANTS
import com.mobiuz.app.ui.global.TextWatcherWrapper
import com.mobiuz.app.utils.Utils
import com.mobiuz.app.utils.extensions.customLog
import com.mobiuz.app.utils.extensions.showCustomDialog
import com.mobiuz.app.dev.model.UserAuth
import com.mobiuz.app.dev.network.model.UiStateObject
import com.mobiuz.app.dev.ui.auth.AuthViewModel
import com.mobiuz.app.dev.ui.base.BaseFragment
import com.mobiuz.app.dev.ui.global.ButtonClick
import com.mobiuz.app.dev.ui.global.CONSTANTS
import com.mobiuz.app.dev.ui.global.TextWatcherWrapper
import com.mobiuz.app.dev.utils.Utils
import com.mobiuz.app.dev.utils.extensions.customLog
import com.mobiuz.app.dev.utils.extensions.showCustomDialog
import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.flow.collect
@AndroidEntryPoint
class CheckPhoneFragment : BaseFragment(R.layout.fragment_check_phone) {
......@@ -62,7 +63,7 @@ class CheckPhoneFragment : BaseFragment(R.layout.fragment_check_phone) {
phone.length < 13 -> {
inputPhone.startAnimation(AnimationUtils.loadAnimation(requireContext(), R.anim.shake))
}
else -> viewModel.checkPhone(UserAuth(phone.replace("+", ""), null))
else -> viewModel.checkPhone(UserAuth(phone.replace("+", "")))
}
}
......
package com.mobiuz.app.ui.auth.login
package com.mobiuz.app.dev.ui.auth.login
import android.os.Bundle
import android.view.View
......@@ -8,19 +8,19 @@ import androidx.fragment.app.viewModels
import androidx.lifecycle.lifecycleScope
import androidx.navigation.NavController
import androidx.navigation.fragment.NavHostFragment
import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.flow.collect
import com.mobiuz.app.R
import com.mobiuz.app.databinding.FragmentLoginBinding
import com.mobiuz.app.model.UserAuth
import com.mobiuz.app.network.model.UiStateObject
import com.mobiuz.app.ui.auth.AuthViewModel
import com.mobiuz.app.ui.base.BaseFragment
import com.mobiuz.app.ui.global.ButtonClick
import com.mobiuz.app.ui.global.CONSTANTS
import com.mobiuz.app.ui.global.TextWatcherWrapper
import com.mobiuz.app.utils.Utils
import com.mobiuz.app.utils.extensions.showCustomDialog
import com.mobiuz.app.dev.model.UserAuth
import com.mobiuz.app.dev.network.model.UiStateObject
import com.mobiuz.app.dev.ui.auth.AuthViewModel
import com.mobiuz.app.dev.ui.base.BaseFragment
import com.mobiuz.app.dev.ui.global.ButtonClick
import com.mobiuz.app.dev.ui.global.CONSTANTS
import com.mobiuz.app.dev.ui.global.TextWatcherWrapper
import com.mobiuz.app.dev.utils.Utils
import com.mobiuz.app.dev.utils.extensions.showCustomDialog
import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.flow.collect
@AndroidEntryPoint
class LoginFragment : BaseFragment(R.layout.fragment_login) {
......
package com.mobiuz.app.ui.auth.pin
package com.mobiuz.app.dev.ui.auth.pin
import android.content.Intent
import android.os.Bundle
......@@ -6,20 +6,21 @@ import android.view.View
import android.view.animation.AnimationUtils
import android.widget.TextView
import androidx.core.hardware.fingerprint.FingerprintManagerCompat
import androidx.core.view.isVisible
import androidx.lifecycle.lifecycleScope
import androidx.navigation.NavController
import androidx.navigation.fragment.NavHostFragment
import androidx.recyclerview.widget.LinearLayoutManager
import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.delay
import com.mobiuz.app.MainActivity
import com.mobiuz.app.R
import com.mobiuz.app.databinding.FragmentPinBinding
import com.mobiuz.app.model.PinData
import com.mobiuz.app.model.SharedPref
import com.mobiuz.app.ui.base.BaseFragment
import com.mobiuz.app.ui.global.CONSTANTS
import com.mobiuz.app.utils.Utils
import com.mobiuz.app.dev.MainActivity
import com.mobiuz.app.dev.model.PinData
import com.mobiuz.app.dev.model.SharedPref
import com.mobiuz.app.dev.ui.base.BaseFragment
import com.mobiuz.app.dev.ui.global.CONSTANTS
import com.mobiuz.app.dev.utils.Utils
import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.delay
import javax.inject.Inject
@AndroidEntryPoint
......@@ -61,7 +62,7 @@ class ConfirmPinFragment : BaseFragment(R.layout.fragment_pin) {
txtNotPin.isVisible = false
pinAdapter.setOnDoneListener {
lifecycleScope.launchWhenCreated {
delay(200)
delay(50)
if (pinCode == it) {
pref.pin_code = pinCode
txtNotPin.isVisible = false
......
package com.mobiuz.app.ui.auth.pin
package com.mobiuz.app.dev.ui.auth.pin
import android.view.LayoutInflater
import android.view.ViewGroup
import androidx.recyclerview.widget.RecyclerView
import com.mobiuz.app.R
import com.mobiuz.app.databinding.ItemPinBinding
import com.mobiuz.app.model.PinData
import com.mobiuz.app.utils.extensions.SingleBlock
import com.mobiuz.app.dev.model.PinData
import com.mobiuz.app.dev.utils.extensions.SingleBlock
class PinAdapter : RecyclerView.Adapter<PinAdapter.VHolder>() {
......@@ -44,8 +44,6 @@ class PinAdapter : RecyclerView.Adapter<PinAdapter.VHolder>() {
it.count = -1
}
notifyDataSetChanged()
list[0].count = id
notifyItemChanged(0)
}
}
......
package com.mobiuz.app.ui.auth.pin
package com.mobiuz.app.dev.ui.auth.pin
import android.os.Bundle
import android.view.View
import android.widget.TextView
import androidx.core.os.bundleOf
import androidx.core.view.isVisible
import androidx.lifecycle.lifecycleScope
import androidx.navigation.NavController
import androidx.navigation.fragment.NavHostFragment
import androidx.recyclerview.widget.LinearLayoutManager
import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.delay
import com.mobiuz.app.R
import com.mobiuz.app.databinding.FragmentPinBinding
import com.mobiuz.app.model.PinData
import com.mobiuz.app.model.SharedPref
import com.mobiuz.app.ui.base.BaseFragment
import com.mobiuz.app.utils.Utils
import com.mobiuz.app.dev.model.PinData
import com.mobiuz.app.dev.model.SharedPref
import com.mobiuz.app.dev.ui.base.BaseFragment
import com.mobiuz.app.dev.utils.Utils
import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.delay
import javax.inject.Inject
@AndroidEntryPoint
......@@ -54,7 +55,7 @@ class PinFragment : BaseFragment(R.layout.fragment_pin) {
pinAdapter.setOnDoneListener {
lifecycleScope.launchWhenCreated {
delay(100)
delay(50)
navController.navigate(R.id.confirmPinFragment, bundleOf("pinCode" to it), Utils.navOptions())
}
}
......
package com.mobiuz.app.ui.auth.register
package com.mobiuz.app.dev.ui.auth.register
import android.os.Bundle
import android.view.View
import androidx.core.os.bundleOf
import androidx.core.view.isVisible
import androidx.fragment.app.viewModels
import androidx.lifecycle.lifecycleScope
import androidx.navigation.NavController
import androidx.navigation.fragment.NavHostFragment
import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.flow.collect
import com.mobiuz.app.R
import com.mobiuz.app.databinding.FragmentRegisterBinding
import com.mobiuz.app.model.UserAuth
import com.mobiuz.app.network.model.UiStateObject
import com.mobiuz.app.ui.auth.AuthViewModel
import com.mobiuz.app.ui.base.BaseFragment
import com.mobiuz.app.ui.global.ButtonClick
import com.mobiuz.app.ui.global.CONSTANTS
import com.mobiuz.app.ui.global.TextWatcherWrapper
import com.mobiuz.app.utils.Utils
import com.mobiuz.app.utils.extensions.showCustomDialog
import com.mobiuz.app.dev.model.UserAuth
import com.mobiuz.app.dev.network.model.UiStateObject
import com.mobiuz.app.dev.ui.auth.AuthViewModel
import com.mobiuz.app.dev.ui.base.BaseFragment
import com.mobiuz.app.dev.ui.global.ButtonClick
import com.mobiuz.app.dev.ui.global.CONSTANTS
import com.mobiuz.app.dev.ui.global.TextWatcherWrapper
import com.mobiuz.app.dev.utils.Utils
import com.mobiuz.app.dev.utils.extensions.showCustomDialog
import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.flow.collect
@AndroidEntryPoint
class RegisterFragment : BaseFragment(R.layout.fragment_register) {
......
package com.mobiuz.app.ui.auth.verification
package com.mobiuz.app.dev.ui.auth.verification
import android.os.Bundle
import android.view.View
import android.view.animation.AnimationUtils
import androidx.core.os.bundleOf
import androidx.core.view.isVisible
import androidx.fragment.app.viewModels
import androidx.lifecycle.lifecycleScope
import androidx.navigation.NavController
import androidx.navigation.fragment.NavHostFragment
import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.flow.collect
import com.mobiuz.app.R
import com.mobiuz.app.databinding.FragmentVerificationBinding
import com.mobiuz.app.model.SharedPref
import com.mobiuz.app.model.UserAuth
import com.mobiuz.app.network.model.UiStateObject
import com.mobiuz.app.ui.auth.AuthViewModel
import com.mobiuz.app.ui.base.BaseFragment
import com.mobiuz.app.ui.global.ButtonClick
import com.mobiuz.app.ui.global.CONSTANTS
import com.mobiuz.app.ui.global.TextWatcherWrapper
import com.mobiuz.app.utils.Utils
import com.mobiuz.app.utils.extensions.showCustomDialog
import com.mobiuz.app.utils.hideKeyboard
import com.mobiuz.app.dev.model.SharedPref
import com.mobiuz.app.dev.model.UserAuth
import com.mobiuz.app.dev.network.model.UiStateObject
import com.mobiuz.app.dev.ui.auth.AuthViewModel
import com.mobiuz.app.dev.ui.base.BaseFragment
import com.mobiuz.app.dev.ui.global.ButtonClick
import com.mobiuz.app.dev.ui.global.CONSTANTS
import com.mobiuz.app.dev.ui.global.TextWatcherWrapper
import com.mobiuz.app.dev.utils.Utils
import com.mobiuz.app.dev.utils.extensions.showCustomDialog
import com.mobiuz.app.dev.utils.hideKeyboard
import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.flow.collect
import javax.inject.Inject
@AndroidEntryPoint
......
package com.mobiuz.app.ui.base
package com.mobiuz.app.dev.ui.base
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.fragment.app.Fragment
import com.mobiuz.app.ui.global.ProgressDialog
import com.mobiuz.app.dev.ui.global.ProgressDialog
abstract class BaseFragment(private val layoutId: Int) : Fragment() {
......
package com.mobiuz.app.ui.global
package com.mobiuz.app.dev.ui.global
import android.os.SystemClock
import android.view.View
......
package com.mobiuz.app.ui.global
package com.mobiuz.app.dev.ui.global
object CONSTANTS {
const val BASE_URL = "http://10.160.45.60/api/v1/"
......
package com.mobiuz.app.ui.global
package com.mobiuz.app.dev.ui.global
import android.os.Bundle
import android.view.LayoutInflater
......@@ -7,7 +7,7 @@ import android.view.ViewGroup
import androidx.fragment.app.DialogFragment
import com.mobiuz.app.R
import com.mobiuz.app.databinding.LayoutExitBinding
import com.mobiuz.app.utils.extensions.SingleBlock
import com.mobiuz.app.dev.utils.extensions.SingleBlock
class ExitDialog : DialogFragment() {
......
package com.mobiuz.app.ui.global
package com.mobiuz.app.dev.ui.global
import android.os.Bundle
import android.view.View
import android.view.animation.AnimationUtils
import android.widget.TextView
import androidx.core.view.isVisible
import androidx.fragment.app.DialogFragment
import androidx.lifecycle.lifecycleScope
import androidx.recyclerview.widget.LinearLayoutManager
import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.delay
import com.mobiuz.app.R
import com.mobiuz.app.databinding.FragmentPinDialogBinding
import com.mobiuz.app.model.PinData
import com.mobiuz.app.model.SharedPref
import com.mobiuz.app.ui.auth.pin.PinAdapter
import com.mobiuz.app.utils.extensions.SingleBlock
import com.mobiuz.app.dev.model.PinData
import com.mobiuz.app.dev.model.SharedPref
import com.mobiuz.app.dev.ui.auth.pin.PinAdapter
import com.mobiuz.app.dev.utils.extensions.SingleBlock
import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.delay
import javax.inject.Inject
......@@ -56,7 +57,7 @@ class FullScreenDialog : DialogFragment(R.layout.fragment_pin_dialog) {
txtNotPin.isVisible = false
pinAdapter.setOnDoneListener {
lifecycleScope.launchWhenCreated {
delay(200)
delay(50)
if (pref.pin_code == it) {
txtNotPin.isVisible = false
dismiss()
......
package com.mobiuz.app.ui.global
package com.mobiuz.app.dev.ui.global
import android.os.Bundle
import androidx.fragment.app.DialogFragment
......
package com.mobiuz.app.ui.global
package com.mobiuz.app.dev.ui.global
import android.graphics.Color
import android.os.Bundle
......@@ -8,7 +8,7 @@ import android.view.ViewGroup
import androidx.fragment.app.DialogFragment
import com.mobiuz.app.R
import com.mobiuz.app.databinding.LayoutSenderBinding
import com.mobiuz.app.utils.extensions.SingleBlock
import com.mobiuz.app.dev.utils.extensions.SingleBlock
class SenderDialog(
private val txtDescription: String,
......
package com.mobiuz.app.ui.global
package com.mobiuz.app.dev.ui.global
import android.text.Editable
import android.text.TextWatcher
......
package com.mobiuz.app.ui.home
package com.mobiuz.app.dev.ui.home
import android.annotation.SuppressLint
import android.content.Intent
......@@ -6,17 +6,17 @@ import android.os.Bundle
import android.view.View
import androidx.fragment.app.viewModels
import androidx.lifecycle.lifecycleScope
import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.flow.collect
import com.mobiuz.app.AuthActivity
import com.mobiuz.app.R
import com.mobiuz.app.databinding.FragmentHomeBinding
import com.mobiuz.app.model.SharedPref
import com.mobiuz.app.network.model.Customer
import com.mobiuz.app.network.model.UiStateObject
import com.mobiuz.app.ui.base.BaseFragment
import com.mobiuz.app.ui.global.ButtonClick
import com.mobiuz.app.utils.extensions.*
import com.mobiuz.app.dev.AuthActivity
import com.mobiuz.app.dev.model.SharedPref
import com.mobiuz.app.dev.network.model.Customer
import com.mobiuz.app.dev.network.model.UiStateObject
import com.mobiuz.app.dev.ui.base.BaseFragment
import com.mobiuz.app.dev.ui.global.ButtonClick
import com.mobiuz.app.dev.utils.extensions.*
import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.flow.collect
import javax.inject.Inject
......
package com.mobiuz.app.ui.home
package com.mobiuz.app.dev.ui.home
import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope
import com.mobiuz.app.dev.network.model.Customer
import com.mobiuz.app.dev.network.model.UiStateObject
import com.mobiuz.app.dev.network.repository.AuthRepository
import dagger.hilt.android.lifecycle.HiltViewModel
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.StateFlow
import kotlinx.coroutines.launch
import com.mobiuz.app.network.model.Customer
import com.mobiuz.app.network.model.UiStateObject
import com.mobiuz.app.network.repository.AuthRepository
import javax.inject.Inject
@HiltViewModel
......
package com.mobiuz.app.utils
package com.mobiuz.app.dev.utils
import android.content.Context
import android.view.View
......
package com.mobiuz.app.utils
package com.mobiuz.app.dev.utils
import android.os.Build
import android.text.TextUtils
......
package com.mobiuz.app.utils.extensions
package com.mobiuz.app.dev.utils.extensions
import java.text.DecimalFormat
import java.text.DecimalFormatSymbols
......
......@@ -14,7 +14,7 @@
* limitations under the License.
*/
package com.mobiuz.app.utils.extensions
package com.mobiuz.app.dev.utils.extensions
import android.content.Intent
import android.util.SparseArray
......
package com.mobiuz.app.utils.extensions
package com.mobiuz.app.dev.utils.extensions
import android.app.Activity
import android.content.Context
......@@ -8,10 +8,10 @@ import androidx.fragment.app.Fragment
import androidx.fragment.app.FragmentActivity
import androidx.recyclerview.widget.RecyclerView
import com.google.gson.JsonSyntaxException
import retrofit2.HttpException
import com.mobiuz.app.R
import com.mobiuz.app.ui.global.ExitDialog
import com.mobiuz.app.ui.global.SenderDialog
import com.mobiuz.app.dev.ui.global.ExitDialog
import com.mobiuz.app.dev.ui.global.SenderDialog
import retrofit2.HttpException
import java.io.IOException
import java.net.ConnectException
......
......@@ -13,6 +13,6 @@
android:layout_height="match_parent"
app:defaultNavHost="true"
app:navGraph="@navigation/nav_graph_auth"
tools:context=".AuthActivity"/>
tools:context=".dev.AuthActivity"/>
</LinearLayout>
......@@ -4,7 +4,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".LanguageActivity">
tools:context=".dev.LanguageActivity">
<ImageView
android:layout_width="match_parent"
......
......@@ -5,7 +5,7 @@
android:layout_width="match_parent"
android:gravity="center"
android:layout_height="match_parent"
tools:context=".PinActivity">
tools:context=".dev.PinActivity">
<com.chaos.view.PinView
android:id="@+id/firstPinView"
......
......@@ -7,7 +7,7 @@
android:background="@drawable/bgn_splash"
android:gravity="center"
android:fitsSystemWindows="false"
tools:context=".SplashActivity">
tools:context=".dev.SplashActivity">
<ImageView
android:layout_width="wrap_content"
......
......@@ -3,7 +3,7 @@
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".ui.base.BaseFragment">
tools:context=".dev.ui.base.BaseFragment">
<!-- TODO: Update blank fragment layout -->
<TextView
......
......@@ -6,7 +6,7 @@
android:layout_height="match_parent"
android:background="@drawable/gradient"
android:orientation="vertical"
tools:context=".ui.auth.biometric.BiometricFragment">
tools:context=".dev.ui.auth.biometric.BiometricFragment">
<FrameLayout
android:layout_width="match_parent"
......
......@@ -7,40 +7,40 @@
<fragment
android:id="@+id/checkPhoneFragment"
android:name="com.mobiuz.app.ui.auth.check.CheckPhoneFragment"
android:name="com.mobiuz.app.dev.ui.auth.check.CheckPhoneFragment"
android:label="fragment_login"
tools:layout="@layout/fragment_check_phone" />
<fragment
android:id="@+id/verificationFragment"
android:name="com.mobiuz.app.ui.auth.verification.VerificationFragment"
android:name="com.mobiuz.app.dev.ui.auth.verification.VerificationFragment"
android:label="fragment_verification"
tools:layout="@layout/fragment_verification" />
<fragment
android:id="@+id/registerFragment"
android:name="com.mobiuz.app.ui.auth.register.RegisterFragment"
android:name="com.mobiuz.app.dev.ui.auth.register.RegisterFragment"
android:label="EnterPasswordFragment"
tools:layout="@layout/fragment_register" />
<fragment
android:id="@+id/loginFragment"
android:name="com.mobiuz.app.ui.auth.login.LoginFragment"
android:name="com.mobiuz.app.dev.ui.auth.login.LoginFragment"
android:label="fragment_password"
tools:layout="@layout/fragment_login" />
<fragment
android:id="@+id/pinFragment"
android:name="com.mobiuz.app.ui.auth.pin.PinFragment"
android:name="com.mobiuz.app.dev.ui.auth.pin.PinFragment"
android:label="PinFragment"
tools:layout="@layout/fragment_pin" />
<fragment
android:id="@+id/biometricFragment"
android:name="com.mobiuz.app.ui.auth.biometric.BiometricFragment"
android:name="com.mobiuz.app.dev.ui.auth.biometric.BiometricFragment"
android:label="fragment_biometric"
tools:layout="@layout/fragment_biometric" />
<fragment
android:id="@+id/confirmPinFragment"
android:name="com.mobiuz.app.ui.auth.pin.ConfirmPinFragment"
android:name="com.mobiuz.app.dev.ui.auth.pin.ConfirmPinFragment"
android:label="ConfirmPinFragment"
tools:layout="@layout/fragment_pin" />
</navigation>
\ No newline at end of file
......@@ -7,7 +7,7 @@
<fragment
android:id="@+id/homeFragment"
android:name="com.mobiuz.app.ui.home.HomeFragment"
android:name="com.mobiuz.app.dev.ui.home.HomeFragment"
android:label="fragment_home"
tools:layout="@layout/fragment_home" />
......
......@@ -7,7 +7,7 @@
<fragment
android:id="@+id/homeFragment"
android:name="com.mobiuz.app.ui.home.HomeFragment"
android:name="com.mobiuz.app.dev.ui.home.HomeFragment"
android:label="fragment_home"
tools:layout="@layout/fragment_home" />
......
......@@ -8,7 +8,7 @@
<fragment
android:id="@+id/motionFragment"
tools:layout="@layout/home_motion"
android:name="com.mobiuz.app.MotionFragment"
android:name="com.mobiuz.app.dev.MotionFragment"
android:label="MotionFragment" />
</navigation>
\ No newline at end of file
......@@ -8,7 +8,7 @@
<fragment
android:id="@+id/homeFragment"
android:name="com.mobiuz.app.ui.home.HomeFragment"
android:name="com.mobiuz.app.dev.ui.home.HomeFragment"
android:label="fragment_home"
tools:layout="@layout/fragment_home" />
<fragment
......
......@@ -21,6 +21,7 @@ buildscript {
classpath "com.google.dagger:hilt-android-gradle-plugin:$hilt_version"
classpath "androidx.navigation:navigation-safe-args-gradle-plugin:2.4.0-beta02"
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.8.1'
classpath 'com.google.gms:google-services:4.3.10'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment