Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
shunchaki
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
JIRA
JIRA
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Shohboz Qoraboev
shunchaki
Commits
71518399
Commit
71518399
authored
Dec 09, 2021
by
shohboz
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[UPD]
MUS-107
Feature, updated package name to com.mobiuz.app
parent
7654afcf
Changes
55
Show whitespace changes
Inline
Side-by-side
Showing
55 changed files
with
2821 additions
and
24 deletions
+2821
-24
ExampleInstrumentedTest.kt
...ndroidTest/java/com/mobiuz/app/ExampleInstrumentedTest.kt
+24
-0
AndroidManifest.xml
app/src/main/AndroidManifest.xml
+6
-6
LanguageActivity.kt
app/src/main/java/com/mobiuz/app/LanguageActivity.kt
+51
-0
MotionFragment.kt
app/src/main/java/com/mobiuz/app/MotionFragment.kt
+14
-0
PinActivity.kt
app/src/main/java/com/mobiuz/app/PinActivity.kt
+76
-0
SplashActivity.kt
app/src/main/java/com/mobiuz/app/SplashActivity.kt
+55
-0
App.kt
app/src/main/java/com/mobiuz/app/app/App.kt
+7
-0
DatabaseModule.kt
app/src/main/java/com/mobiuz/app/di/DatabaseModule.kt
+21
-0
RepositoryModule.kt
app/src/main/java/com/mobiuz/app/di/RepositoryModule.kt
+20
-0
PinData.kt
app/src/main/java/com/mobiuz/app/model/PinData.kt
+5
-0
UserAuth.kt
app/src/main/java/com/mobiuz/app/model/UserAuth.kt
+7
-0
ApiService.kt
app/src/main/java/com/mobiuz/app/network/api/ApiService.kt
+48
-0
Action.kt
app/src/main/java/com/mobiuz/app/network/model/Action.kt
+5
-0
Customer.kt
app/src/main/java/com/mobiuz/app/network/model/Customer.kt
+32
-0
Errors.kt
app/src/main/java/com/mobiuz/app/network/model/Errors.kt
+6
-0
GenerateToken.kt
...c/main/java/com/mobiuz/app/network/model/GenerateToken.kt
+5
-0
ResponseList.kt
...rc/main/java/com/mobiuz/app/network/model/ResponseList.kt
+10
-0
ResponseObject.kt
.../main/java/com/mobiuz/app/network/model/ResponseObject.kt
+10
-0
Status.kt
app/src/main/java/com/mobiuz/app/network/model/Status.kt
+7
-0
UiStateList.kt
...src/main/java/com/mobiuz/app/network/model/UiStateList.kt
+10
-0
UiStateObject.kt
...c/main/java/com/mobiuz/app/network/model/UiStateObject.kt
+9
-0
AuthRepository.kt
.../java/com/mobiuz/app/network/repository/AuthRepository.kt
+165
-0
MainRepository.kt
.../java/com/mobiuz/app/network/repository/MainRepository.kt
+10
-0
AuthViewModel.kt
app/src/main/java/com/mobiuz/app/ui/auth/AuthViewModel.kt
+82
-0
BiometricFragment.kt
...ava/com/mobiuz/app/ui/auth/biometric/BiometricFragment.kt
+92
-0
CheckPhoneFragment.kt
...n/java/com/mobiuz/app/ui/auth/check/CheckPhoneFragment.kt
+120
-0
LoginFragment.kt
...c/main/java/com/mobiuz/app/ui/auth/login/LoginFragment.kt
+174
-0
ConfirmPinFragment.kt
...ain/java/com/mobiuz/app/ui/auth/pin/ConfirmPinFragment.kt
+124
-0
PinAdapter.kt
app/src/main/java/com/mobiuz/app/ui/auth/pin/PinAdapter.kt
+99
-0
PinFragment.kt
app/src/main/java/com/mobiuz/app/ui/auth/pin/PinFragment.kt
+95
-0
RegisterFragment.kt
.../java/com/mobiuz/app/ui/auth/register/RegisterFragment.kt
+195
-0
VerificationFragment.kt
...m/mobiuz/app/ui/auth/verification/VerificationFragment.kt
+197
-0
BaseFragment.kt
app/src/main/java/com/mobiuz/app/ui/base/BaseFragment.kt
+34
-0
ButtonClick.kt
app/src/main/java/com/mobiuz/app/ui/global/ButtonClick.kt
+21
-0
CONSTANTS.kt
app/src/main/java/com/mobiuz/app/ui/global/CONSTANTS.kt
+19
-0
ExitDialog.kt
app/src/main/java/com/mobiuz/app/ui/global/ExitDialog.kt
+55
-0
FullScreenDialog.kt
...rc/main/java/com/mobiuz/app/ui/global/FullScreenDialog.kt
+105
-0
ProgressDialog.kt
app/src/main/java/com/mobiuz/app/ui/global/ProgressDialog.kt
+15
-0
SenderDialog.kt
app/src/main/java/com/mobiuz/app/ui/global/SenderDialog.kt
+62
-0
TextWatcherWrapper.kt
.../main/java/com/mobiuz/app/ui/global/TextWatcherWrapper.kt
+17
-0
HomeFragment.kt
app/src/main/java/com/mobiuz/app/ui/home/HomeFragment.kt
+128
-0
HomeViewModel.kt
app/src/main/java/com/mobiuz/app/ui/home/HomeViewModel.kt
+27
-0
SoftKeyboard.kt
app/src/main/java/com/mobiuz/app/utils/SoftKeyboard.kt
+21
-0
Utils.kt
app/src/main/java/com/mobiuz/app/utils/Utils.kt
+49
-0
MoneyExt.kt
...src/main/java/com/mobiuz/app/utils/extensions/MoneyExt.kt
+32
-0
NavigationExtensions.kt
...a/com/mobiuz/app/utils/extensions/NavigationExtensions.kt
+262
-0
PermissionExtensions.kt
...a/com/mobiuz/app/utils/extensions/PermissionExtensions.kt
+73
-0
StringExtension.kt
...n/java/com/mobiuz/app/utils/extensions/StringExtension.kt
+91
-0
Errors.kt
app/src/main/java/uz/ssd/mobiuz/network/model/Errors.kt
+0
-6
nav_graph_auth.xml
app/src/main/res/navigation/nav_graph_auth.xml
+7
-7
nav_graph_home.xml
app/src/main/res/navigation/nav_graph_home.xml
+1
-1
nav_graph_main.xml
app/src/main/res/navigation/nav_graph_main.xml
+1
-1
nav_graph_profile.xml
app/src/main/res/navigation/nav_graph_profile.xml
+1
-1
nav_graph_red.xml
app/src/main/res/navigation/nav_graph_red.xml
+2
-2
ExampleUnitTest.kt
app/src/test/java/com/mobiuz/app/ExampleUnitTest.kt
+17
-0
No files found.
app/src/androidTest/java/
uz/ssd/mobiuz
/ExampleInstrumentedTest.kt
→
app/src/androidTest/java/
com/mobiuz/app
/ExampleInstrumentedTest.kt
View file @
71518399
package
uz.ssd.mobiuz
package
com.mobiuz.app
import
androidx.test.platform.app.InstrumentationRegistry
import
androidx.test.platform.app.InstrumentationRegistry
import
androidx.test.ext.junit.runners.AndroidJUnit4
import
androidx.test.ext.junit.runners.AndroidJUnit4
...
...
app/src/main/AndroidManifest.xml
View file @
71518399
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<manifest
xmlns:android=
"http://schemas.android.com/apk/res/android"
<manifest
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:tools=
"http://schemas.android.com/tools"
xmlns:tools=
"http://schemas.android.com/tools"
package=
"
uz.ssd.mobiuz
"
>
package=
"
com.mobiuz.app
"
>
<uses-permission
android:name=
"android.permission.INTERNET"
/>
<uses-permission
android:name=
"android.permission.INTERNET"
/>
<uses-permission
android:name=
"android.permission.CALL_PHONE"
/>
<uses-permission
android:name=
"android.permission.CALL_PHONE"
/>
...
@@ -9,7 +9,7 @@
...
@@ -9,7 +9,7 @@
<uses-permission
android:name=
"android.permission.USE_FINGERPRINT"
/>
<uses-permission
android:name=
"android.permission.USE_FINGERPRINT"
/>
<application
<application
android:name=
".app.App"
android:name=
"
com.mobiuz.app
.app.App"
android:allowBackup=
"true"
android:allowBackup=
"true"
android:icon=
"@mipmap/ic_launcher"
android:icon=
"@mipmap/ic_launcher"
android:label=
"@string/app_name"
android:label=
"@string/app_name"
...
@@ -20,25 +20,25 @@
...
@@ -20,25 +20,25 @@
android:usesCleartextTraffic=
"true"
android:usesCleartextTraffic=
"true"
tools:targetApi=
"m"
>
tools:targetApi=
"m"
>
<activity
<activity
android:name=
".LanguageActivity"
android:name=
"
com.mobiuz.app
.LanguageActivity"
android:screenOrientation=
"portrait"
android:screenOrientation=
"portrait"
android:configChanges=
"orientation"
android:configChanges=
"orientation"
android:windowSoftInputMode=
"adjustResize"
android:windowSoftInputMode=
"adjustResize"
android:exported=
"false"
/>
android:exported=
"false"
/>
<activity
<activity
android:name=
".MainActivity"
android:name=
"
com.mobiuz.app
.MainActivity"
android:screenOrientation=
"portrait"
android:screenOrientation=
"portrait"
android:configChanges=
"orientation"
android:configChanges=
"orientation"
android:windowSoftInputMode=
"adjustResize"
android:windowSoftInputMode=
"adjustResize"
android:exported=
"false"
/>
android:exported=
"false"
/>
<activity
<activity
android:name=
".AuthActivity"
android:name=
"
com.mobiuz.app
.AuthActivity"
android:screenOrientation=
"portrait"
android:screenOrientation=
"portrait"
android:configChanges=
"orientation"
android:configChanges=
"orientation"
android:windowSoftInputMode=
"adjustResize"
android:windowSoftInputMode=
"adjustResize"
android:exported=
"false"
/>
android:exported=
"false"
/>
<activity
<activity
android:name=
".SplashActivity"
android:name=
"
com.mobiuz.app
.SplashActivity"
android:configChanges=
"orientation"
android:configChanges=
"orientation"
android:exported=
"true"
android:exported=
"true"
android:windowSoftInputMode=
"adjustResize"
android:windowSoftInputMode=
"adjustResize"
...
...
app/src/main/java/
uz/ssd/mobiuz
/LanguageActivity.kt
→
app/src/main/java/
com/mobiuz/app
/LanguageActivity.kt
View file @
71518399
package
uz.ssd.mobiuz
package
com.mobiuz.app
import
android.content.Intent
import
android.content.Intent
import
android.os.Bundle
import
android.os.Bundle
import
android.view.View
import
android.view.View
import
androidx.appcompat.app.AppCompatActivity
import
androidx.appcompat.app.AppCompatActivity
import
dagger.hilt.android.AndroidEntryPoint
import
dagger.hilt.android.AndroidEntryPoint
import
uz.ssd.mobiuz
.databinding.ActivityLanguageBinding
import
com.mobiuz.app
.databinding.ActivityLanguageBinding
import
uz.ssd.mobiuz
.model.SharedPref
import
com.mobiuz.app
.model.SharedPref
import
uz.ssd.mobiuz
.ui.global.CONSTANTS
import
com.mobiuz.app
.ui.global.CONSTANTS
import
javax.inject.Inject
import
javax.inject.Inject
@AndroidEntryPoint
@AndroidEntryPoint
...
...
app/src/main/java/
uz/ssd/mobiuz
/MotionFragment.kt
→
app/src/main/java/
com/mobiuz/app
/MotionFragment.kt
View file @
71518399
package
uz.ssd.mobiuz
package
com.mobiuz.app
import
uz.ssd.mobiuz
.ui.base.BaseFragment
import
com.mobiuz.app
.ui.base.BaseFragment
class
MotionFragment
:
BaseFragment
(
R
.
layout
.
home_motion
)
{
class
MotionFragment
:
BaseFragment
(
R
.
layout
.
home_motion
)
{
override
fun
setUpUI
()
{
override
fun
setUpUI
()
{
...
...
app/src/main/java/
uz/ssd/mobiuz
/PinActivity.kt
→
app/src/main/java/
com/mobiuz/app
/PinActivity.kt
View file @
71518399
package
uz.ssd.mobiuz
package
com.mobiuz.app
import
androidx.appcompat.app.AppCompatActivity
import
android.os.Bundle
import
android.os.Bundle
import
android.widget.Toast
import
android.widget.Toast
import
androidx.appcompat.app.AppCompatActivity
import
androidx.biometric.BiometricPrompt
import
androidx.biometric.BiometricPrompt
import
androidx.core.content.ContextCompat
import
androidx.core.content.ContextCompat
import
dagger.hilt.android.AndroidEntryPoint
import
dagger.hilt.android.AndroidEntryPoint
import
uz.ssd.mobiuz.databinding.ActivityMainBinding
import
com.mobiuz.app.databinding.ActivityPinBinding
import
uz.ssd.mobiuz.databinding.ActivityPinBinding
import
java.util.concurrent.Executor
import
java.util.concurrent.Executor
@AndroidEntryPoint
@AndroidEntryPoint
...
@@ -28,26 +27,35 @@ class PinActivity : AppCompatActivity() {
...
@@ -28,26 +27,35 @@ class PinActivity : AppCompatActivity() {
executor
=
ContextCompat
.
getMainExecutor
(
this
)
executor
=
ContextCompat
.
getMainExecutor
(
this
)
biometricPrompt
=
BiometricPrompt
(
this
,
executor
,
biometricPrompt
=
BiometricPrompt
(
this
,
executor
,
object
:
BiometricPrompt
.
AuthenticationCallback
()
{
object
:
BiometricPrompt
.
AuthenticationCallback
()
{
override
fun
onAuthenticationError
(
errorCode
:
Int
,
override
fun
onAuthenticationError
(
errString
:
CharSequence
)
{
errorCode
:
Int
,
errString
:
CharSequence
)
{
super
.
onAuthenticationError
(
errorCode
,
errString
)
super
.
onAuthenticationError
(
errorCode
,
errString
)
Toast
.
makeText
(
applicationContext
,
Toast
.
makeText
(
"Authentication error: $errString"
,
Toast
.
LENGTH_SHORT
)
applicationContext
,
"Authentication error: $errString"
,
Toast
.
LENGTH_SHORT
)
.
show
()
.
show
()
}
}
override
fun
onAuthenticationSucceeded
(
override
fun
onAuthenticationSucceeded
(
result
:
BiometricPrompt
.
AuthenticationResult
)
{
result
:
BiometricPrompt
.
AuthenticationResult
)
{
super
.
onAuthenticationSucceeded
(
result
)
super
.
onAuthenticationSucceeded
(
result
)
Toast
.
makeText
(
applicationContext
,
Toast
.
makeText
(
"Authentication succeeded!"
,
Toast
.
LENGTH_SHORT
)
applicationContext
,
"Authentication succeeded!"
,
Toast
.
LENGTH_SHORT
)
.
show
()
.
show
()
}
}
override
fun
onAuthenticationFailed
()
{
override
fun
onAuthenticationFailed
()
{
super
.
onAuthenticationFailed
()
super
.
onAuthenticationFailed
()
Toast
.
makeText
(
applicationContext
,
"Authentication failed"
,
Toast
.
makeText
(
Toast
.
LENGTH_SHORT
)
applicationContext
,
"Authentication failed"
,
Toast
.
LENGTH_SHORT
)
.
show
()
.
show
()
}
}
})
})
...
@@ -60,6 +68,7 @@ class PinActivity : AppCompatActivity() {
...
@@ -60,6 +68,7 @@ class PinActivity : AppCompatActivity() {
biometricPrompt
.
authenticate
(
promptInfo
)
biometricPrompt
.
authenticate
(
promptInfo
)
}
}
override
fun
onDestroy
()
{
override
fun
onDestroy
()
{
_bn
=
null
_bn
=
null
super
.
onDestroy
()
super
.
onDestroy
()
...
...
app/src/main/java/
uz/ssd/mobiuz
/SplashActivity.kt
→
app/src/main/java/
com/mobiuz/app
/SplashActivity.kt
View file @
71518399
package
uz.ssd.mobiuz
package
com.mobiuz.app
import
android.content.Intent
import
android.content.Intent
import
android.os.Bundle
import
android.os.Bundle
...
@@ -6,9 +6,9 @@ import androidx.appcompat.app.AppCompatActivity
...
@@ -6,9 +6,9 @@ import androidx.appcompat.app.AppCompatActivity
import
androidx.lifecycle.lifecycleScope
import
androidx.lifecycle.lifecycleScope
import
dagger.hilt.android.AndroidEntryPoint
import
dagger.hilt.android.AndroidEntryPoint
import
kotlinx.coroutines.delay
import
kotlinx.coroutines.delay
import
uz.ssd.mobiuz
.databinding.ActivitySplashBinding
import
com.mobiuz.app
.databinding.ActivitySplashBinding
import
uz.ssd.mobiuz
.model.SharedPref
import
com.mobiuz.app
.model.SharedPref
import
uz.ssd.mobiuz
.ui.global.CONSTANTS
import
com.mobiuz.app
.ui.global.CONSTANTS
import
javax.inject.Inject
import
javax.inject.Inject
@AndroidEntryPoint
@AndroidEntryPoint
...
...
app/src/main/java/
uz/ssd/mobiuz
/app/App.kt
→
app/src/main/java/
com/mobiuz/app
/app/App.kt
View file @
71518399
package
uz.ssd.mobiuz
.app
package
com.mobiuz.app
.app
import
android.app.Application
import
android.app.Application
import
dagger.hilt.android.HiltAndroidApp
import
dagger.hilt.android.HiltAndroidApp
...
...
app/src/main/java/
uz/ssd/mobiuz
/di/DatabaseModule.kt
→
app/src/main/java/
com/mobiuz/app
/di/DatabaseModule.kt
View file @
71518399
package
uz.ssd.mobiuz
.di
package
com.mobiuz.app
.di
import
dagger.Module
import
dagger.Module
import
dagger.hilt.InstallIn
import
dagger.hilt.InstallIn
...
...
app/src/main/java/
uz/ssd/mobiuz
/di/RepositoryModule.kt
→
app/src/main/java/
com/mobiuz/app
/di/RepositoryModule.kt
View file @
71518399
package
uz.ssd.mobiuz
.di
package
com.mobiuz.app
.di
import
dagger.Module
import
dagger.Module
import
dagger.hilt.InstallIn
import
dagger.hilt.InstallIn
...
...
app/src/main/java/
uz/ssd/mobiuz
/model/PinData.kt
→
app/src/main/java/
com/mobiuz/app
/model/PinData.kt
View file @
71518399
package
uz.ssd.mobiuz
.model
package
com.mobiuz.app
.model
data class
PinData
(
data class
PinData
(
var
count
:
Int
=
-
1
var
count
:
Int
=
-
1
...
...
app/src/main/java/
uz/ssd/mobiuz
/model/UserAuth.kt
→
app/src/main/java/
com/mobiuz/app
/model/UserAuth.kt
View file @
71518399
package
uz.ssd.mobiuz
.model
package
com.mobiuz.app
.model
data class
UserAuth
(
data class
UserAuth
(
val
phone
:
String
,
val
phone
:
String
,
...
...
app/src/main/java/
uz/ssd/mobiuz
/network/api/ApiService.kt
→
app/src/main/java/
com/mobiuz/app
/network/api/ApiService.kt
View file @
71518399
package
uz.ssd.mobiuz
.network.api
package
com.mobiuz.app
.network.api
import
retrofit2.http.Body
import
retrofit2.http.Body
import
retrofit2.http.POST
import
retrofit2.http.POST
import
uz.ssd.mobiuz
.model.UserAuth
import
com.mobiuz.app
.model.UserAuth
import
uz.ssd.mobiuz
.network.model.*
import
com.mobiuz.app
.network.model.*
interface
ApiService
{
interface
ApiService
{
...
...
app/src/main/java/
uz/ssd/mobiuz
/network/model/Action.kt
→
app/src/main/java/
com/mobiuz/app
/network/model/Action.kt
View file @
71518399
package
uz.ssd.mobiuz
.network.model
package
com.mobiuz.app
.network.model
data class
Action
(
data class
Action
(
var
action
:
String
=
""
var
action
:
String
=
""
...
...
app/src/main/java/
uz/ssd/mobiuz
/network/model/Customer.kt
→
app/src/main/java/
com/mobiuz/app
/network/model/Customer.kt
View file @
71518399
package
uz.ssd.mobiuz
.network.model
package
com.mobiuz.app
.network.model
data class
Customer
(
data class
Customer
(
var
customer
:
CustomerData
?
var
customer
:
CustomerData
?
...
...
app/src/main/java/com/mobiuz/app/network/model/Errors.kt
0 → 100644
View file @
71518399
package
com.mobiuz.app.network.model
data class
Errors
(
var
key
:
String
,
var
message
:
String
)
\ No newline at end of file
app/src/main/java/
uz/ssd/mobiuz
/network/model/GenerateToken.kt
→
app/src/main/java/
com/mobiuz/app
/network/model/GenerateToken.kt
View file @
71518399
package
uz.ssd.mobiuz
.network.model
package
com.mobiuz.app
.network.model
data class
GenerateToken
(
data class
GenerateToken
(
var
token
:
String
var
token
:
String
...
...
app/src/main/java/
uz/ssd/mobiuz
/network/model/ResponseList.kt
→
app/src/main/java/
com/mobiuz/app
/network/model/ResponseList.kt
View file @
71518399
package
uz.ssd.mobiuz
.network.model
package
com.mobiuz.app
.network.model
class
ResponseList
<
T
>(
class
ResponseList
<
T
>(
...
...
app/src/main/java/
uz/ssd/mobiuz
/network/model/ResponseObject.kt
→
app/src/main/java/
com/mobiuz/app
/network/model/ResponseObject.kt
View file @
71518399
package
uz.ssd.mobiuz
.network.model
package
com.mobiuz.app
.network.model
class
ResponseObject
<
T
>(
class
ResponseObject
<
T
>(
...
...
app/src/main/java/
uz/ssd/mobiuz
/network/model/Status.kt
→
app/src/main/java/
com/mobiuz/app
/network/model/Status.kt
View file @
71518399
package
uz.ssd.mobiuz
.network.model
package
com.mobiuz.app
.network.model
data class
Status
(
data class
Status
(
...
...
app/src/main/java/
uz/ssd/mobiuz
/network/model/UiStateList.kt
→
app/src/main/java/
com/mobiuz/app
/network/model/UiStateList.kt
View file @
71518399
package
uz.ssd.mobiuz
.network.model
package
com.mobiuz.app
.network.model
sealed
class
UiStateList
<
out
T
>
{
sealed
class
UiStateList
<
out
T
>
{
...
...
app/src/main/java/
uz/ssd/mobiuz
/network/model/UiStateObject.kt
→
app/src/main/java/
com/mobiuz/app
/network/model/UiStateObject.kt
View file @
71518399
package
uz.ssd.mobiuz
.network.model
package
com.mobiuz.app
.network.model
sealed
class
UiStateObject
<
out
T
>
{
sealed
class
UiStateObject
<
out
T
>
{
data class
SUCCESS
<
out
T
>(
val
data
:
T
)
:
UiStateObject
<
T
>()
data class
SUCCESS
<
out
T
>(
val
data
:
T
)
:
UiStateObject
<
T
>()
data class
ERROR
(
val
message
:
String
,
var
fromServer
:
Boolean
=
false
)
:
UiStateObject
<
Nothing
>()
data class
ERROR
(
val
message
:
String
,
var
fromServer
:
Boolean
=
false
)
:
UiStateObject
<
Nothing
>()
data class
ERRORS
(
val
errors
:
List
<
Errors
>)
:
UiStateObject
<
Nothing
>()
data class
ERRORS
(
val
errors
:
List
<
Errors
>)
:
UiStateObject
<
Nothing
>()
object
LOADING
:
UiStateObject
<
Nothing
>()
object
LOADING
:
UiStateObject
<
Nothing
>()
object
EMPTY
:
UiStateObject
<
Nothing
>()
object
EMPTY
:
UiStateObject
<
Nothing
>()
...
...
app/src/main/java/
uz/ssd/mobiuz
/network/repository/AuthRepository.kt
→
app/src/main/java/
com/mobiuz/app
/network/repository/AuthRepository.kt
View file @
71518399
package
uz.ssd.mobiuz
.network.repository
package
com.mobiuz.app
.network.repository
import
android.content.Context
import
android.content.Context
import
dagger.hilt.android.qualifiers.ApplicationContext
import
dagger.hilt.android.qualifiers.ApplicationContext
import
uz.ssd.mobiuz.model.SharedPref
import
com.mobiuz.app.model.SharedPref
import
uz.ssd.mobiuz.model.UserAuth
import
com.mobiuz.app.model.UserAuth
import
uz.ssd.mobiuz.network.api.ApiService
import
com.mobiuz.app.network.api.ApiService
import
uz.ssd.mobiuz.network.model.Action
import
com.mobiuz.app.network.model.Action
import
uz.ssd.mobiuz.network.model.Customer
import
com.mobiuz.app.network.model.Customer
import
uz.ssd.mobiuz.network.model.GenerateToken
import
com.mobiuz.app.network.model.UiStateObject
import
uz.ssd.mobiuz.network.model.UiStateObject
import
com.mobiuz.app.utils.extensions.userMessage
import
uz.ssd.mobiuz.utils.extensions.userMessage
import
javax.inject.Inject
import
javax.inject.Inject
import
javax.inject.Singleton
import
javax.inject.Singleton
...
...
app/src/main/java/
uz/ssd/mobiuz
/network/repository/MainRepository.kt
→
app/src/main/java/
com/mobiuz/app
/network/repository/MainRepository.kt
View file @
71518399
package
uz.ssd.mobiuz
.network.repository
package
com.mobiuz.app
.network.repository
import
uz.ssd.mobiuz
.network.api.ApiService
import
com.mobiuz.app
.network.api.ApiService
import
javax.inject.Inject
import
javax.inject.Inject
import
javax.inject.Singleton
import
javax.inject.Singleton
@Singleton
@Singleton
class
MainRepository
@Inject
constructor
(
class
MainRepository
@Inject
constructor
(
private
val
apiService
:
ApiService
private
val
apiService
:
ApiService
)
{
)
\ No newline at end of file
}
\ No newline at end of file
app/src/main/java/
uz/ssd/mobiuz
/ui/auth/AuthViewModel.kt
→
app/src/main/java/
com/mobiuz/app
/ui/auth/AuthViewModel.kt
View file @
71518399
package
uz.ssd.mobiuz
.ui.auth
package
com.mobiuz.app
.ui.auth
import
androidx.lifecycle.ViewModel
import
androidx.lifecycle.ViewModel
import
androidx.lifecycle.viewModelScope
import
androidx.lifecycle.viewModelScope
...
@@ -6,10 +6,10 @@ import dagger.hilt.android.lifecycle.HiltViewModel
...
@@ -6,10 +6,10 @@ import dagger.hilt.android.lifecycle.HiltViewModel
import
kotlinx.coroutines.flow.MutableStateFlow
import
kotlinx.coroutines.flow.MutableStateFlow
import
kotlinx.coroutines.flow.StateFlow
import
kotlinx.coroutines.flow.StateFlow
import
kotlinx.coroutines.launch
import
kotlinx.coroutines.launch
import
uz.ssd.mobiuz
.model.UserAuth
import
com.mobiuz.app
.model.UserAuth
import
uz.ssd.mobiuz
.network.model.Action
import
com.mobiuz.app
.network.model.Action
import
uz.ssd.mobiuz
.network.model.UiStateObject
import
com.mobiuz.app
.network.model.UiStateObject
import
uz.ssd.mobiuz
.network.repository.AuthRepository
import
com.mobiuz.app
.network.repository.AuthRepository
import
javax.inject.Inject
import
javax.inject.Inject
@HiltViewModel
@HiltViewModel
...
...
app/src/main/java/
uz/ssd/mobiuz
/ui/auth/biometric/BiometricFragment.kt
→
app/src/main/java/
com/mobiuz/app
/ui/auth/biometric/BiometricFragment.kt
View file @
71518399
package
uz.ssd.mobiuz
.ui.auth.biometric
package
com.mobiuz.app
.ui.auth.biometric
import
android.Manifest
import
android.Manifest
import
android.content.Intent
import
android.content.Intent
...
@@ -11,13 +11,13 @@ import androidx.core.content.ContextCompat
...
@@ -11,13 +11,13 @@ import androidx.core.content.ContextCompat
import
androidx.navigation.NavController
import
androidx.navigation.NavController
import
androidx.navigation.fragment.NavHostFragment
import
androidx.navigation.fragment.NavHostFragment
import
dagger.hilt.android.AndroidEntryPoint
import
dagger.hilt.android.AndroidEntryPoint
import
uz.ssd.mobiuz
.BuildConfig
import
com.mobiuz.app
.BuildConfig
import
uz.ssd.mobiuz
.MainActivity
import
com.mobiuz.app
.MainActivity
import
uz.ssd.mobiuz
.R
import
com.mobiuz.app
.R
import
uz.ssd.mobiuz
.databinding.FragmentBiometricBinding
import
com.mobiuz.app
.databinding.FragmentBiometricBinding
import
uz.ssd.mobiuz
.ui.base.BaseFragment
import
com.mobiuz.app
.ui.base.BaseFragment
import
uz.ssd.mobiuz
.ui.global.ButtonClick
import
com.mobiuz.app
.ui.global.ButtonClick
import
uz.ssd.mobiuz
.ui.global.CONSTANTS
import
com.mobiuz.app
.ui.global.CONSTANTS
@AndroidEntryPoint
@AndroidEntryPoint
class
BiometricFragment
:
BaseFragment
(
R
.
layout
.
fragment_biometric
)
{
class
BiometricFragment
:
BaseFragment
(
R
.
layout
.
fragment_biometric
)
{
...
@@ -31,8 +31,8 @@ class BiometricFragment : BaseFragment(R.layout.fragment_biometric) {
...
@@ -31,8 +31,8 @@ class BiometricFragment : BaseFragment(R.layout.fragment_biometric) {
super
.
onCreate
(
savedInstanceState
)
super
.
onCreate
(
savedInstanceState
)
if
(
BuildConfig
.
VERSION_CODE
>=
Build
.
VERSION_CODES
.
P
)
{
if
(
BuildConfig
.
VERSION_CODE
>=
Build
.
VERSION_CODES
.
P
)
{
if
(
ContextCompat
.
checkSelfPermission
(
requireContext
(),
Manifest
.
permission
.
USE_BIOMETRIC
)
!=
PackageManager
.
PERMISSION_GRANTED
)
{
if
(
ContextCompat
.
checkSelfPermission
(
requireContext
(),
Manifest
.
permission
.
USE_BIOMETRIC
)
!=
PackageManager
.
PERMISSION_GRANTED
)
{
requestPermissions
(
requireActivity
(),
arrayOf
(
Manifest
.
permission
.
ACCESS_FINE_LOCATION
),
101
)
requestPermissions
(
requireActivity
(),
arrayOf
(
Manifest
.
permission
.
ACCESS_FINE_LOCATION
),
101
)
}
}
}
}
...
...
app/src/main/java/
uz/ssd/mobiuz
/ui/auth/check/CheckPhoneFragment.kt
→
app/src/main/java/
com/mobiuz/app
/ui/auth/check/CheckPhoneFragment.kt
View file @
71518399
package
uz.ssd.mobiuz
.ui.auth.check
package
com.mobiuz.app
.ui.auth.check
import
android.os.Bundle
import
android.os.Bundle
import
android.view.View
import
android.view.View
import
android.view.animation.AnimationUtils
import
android.view.animation.AnimationUtils
import
androidx.core.os.bundleOf
import
androidx.core.os.bundleOf
import
androidx.core.view.isVisible
import
androidx.fragment.app.viewModels
import
androidx.fragment.app.viewModels
import
androidx.lifecycle.lifecycleScope
import
androidx.lifecycle.lifecycleScope
import
androidx.navigation.NavController
import
androidx.navigation.NavController
import
androidx.navigation.fragment.NavHostFragment
import
androidx.navigation.fragment.NavHostFragment
import
dagger.hilt.android.AndroidEntryPoint
import
dagger.hilt.android.AndroidEntryPoint
import
kotlinx.coroutines.flow.collect
import
kotlinx.coroutines.flow.collect
import
uz.ssd.mobiuz
.R
import
com.mobiuz.app
.R
import
uz.ssd.mobiuz
.databinding.FragmentCheckPhoneBinding
import
com.mobiuz.app
.databinding.FragmentCheckPhoneBinding
import
uz.ssd.mobiuz
.model.UserAuth
import
com.mobiuz.app
.model.UserAuth
import
uz.ssd.mobiuz
.network.model.UiStateObject
import
com.mobiuz.app
.network.model.UiStateObject
import
uz.ssd.mobiuz
.ui.auth.AuthViewModel
import
com.mobiuz.app
.ui.auth.AuthViewModel
import
uz.ssd.mobiuz
.ui.base.BaseFragment
import
com.mobiuz.app
.ui.base.BaseFragment
import
uz.ssd.mobiuz.ui.global.TextWatcherWrapper
import
com.mobiuz.app.ui.global.ButtonClick
import
uz.ssd.mobiuz.ui.global.ButtonClick
import
com.mobiuz.app.ui.global.CONSTANTS
import
uz.ssd.mobiuz.ui.global.CONSTANTS
import
com.mobiuz.app.ui.global.TextWatcherWrapper
import
uz.ssd.mobiuz
.utils.Utils
import
com.mobiuz.app
.utils.Utils
import
uz.ssd.mobiuz
.utils.extensions.customLog
import
com.mobiuz.app
.utils.extensions.customLog
import
uz.ssd.mobiuz
.utils.extensions.showCustomDialog
import
com.mobiuz.app
.utils.extensions.showCustomDialog
@AndroidEntryPoint
@AndroidEntryPoint
class
CheckPhoneFragment
:
BaseFragment
(
R
.
layout
.
fragment_check_phone
)
{
class
CheckPhoneFragment
:
BaseFragment
(
R
.
layout
.
fragment_check_phone
)
{
...
@@ -63,7 +62,7 @@ class CheckPhoneFragment : BaseFragment(R.layout.fragment_check_phone) {
...
@@ -63,7 +62,7 @@ class CheckPhoneFragment : BaseFragment(R.layout.fragment_check_phone) {
phone
.
length
<
13
->
{
phone
.
length
<
13
->
{
inputPhone
.
startAnimation
(
AnimationUtils
.
loadAnimation
(
requireContext
(),
R
.
anim
.
shake
))
inputPhone
.
startAnimation
(
AnimationUtils
.
loadAnimation
(
requireContext
(),
R
.
anim
.
shake
))
}
}
else
->
viewModel
.
checkPhone
(
UserAuth
(
phone
.
replace
(
"+"
,
""
),
null
))
else
->
viewModel
.
checkPhone
(
UserAuth
(
phone
.
replace
(
"+"
,
""
),
null
))
}
}
}
}
...
@@ -90,13 +89,13 @@ class CheckPhoneFragment : BaseFragment(R.layout.fragment_check_phone) {
...
@@ -90,13 +89,13 @@ class CheckPhoneFragment : BaseFragment(R.layout.fragment_check_phone) {
is
UiStateObject
.
ERROR
->
{
is
UiStateObject
.
ERROR
->
{
bn
.
helperPhone
.
isVisible
=
false
bn
.
helperPhone
.
isVisible
=
false
showProgressDialog
(
false
)
showProgressDialog
(
false
)
showCustomDialog
(
it
.
message
,
false
)
{}
showCustomDialog
(
it
.
message
,
false
)
{}
}
}
is
UiStateObject
.
ERRORS
->
{
is
UiStateObject
.
ERRORS
->
{
it
.
errors
.
forEach
{
it
.
errors
.
forEach
{
if
(
it
.
key
==
"phone"
)
{
if
(
it
.
key
==
"phone"
)
{
bn
.
layoutInput
.
startAnimation
(
AnimationUtils
.
loadAnimation
(
requireContext
(),
R
.
anim
.
shake
))
bn
.
layoutInput
.
startAnimation
(
AnimationUtils
.
loadAnimation
(
requireContext
(),
R
.
anim
.
shake
))
bn
.
helperPhone
.
isVisible
=
true
bn
.
helperPhone
.
isVisible
=
true
bn
.
helperPhone
.
text
=
it
.
message
bn
.
helperPhone
.
text
=
it
.
message
}
}
...
...
app/src/main/java/
uz/ssd/mobiuz
/ui/auth/login/LoginFragment.kt
→
app/src/main/java/
com/mobiuz/app
/ui/auth/login/LoginFragment.kt
View file @
71518399
package
uz.ssd.mobiuz
.ui.auth.login
package
com.mobiuz.app
.ui.auth.login
import
android.os.Bundle
import
android.os.Bundle
import
android.view.View
import
android.view.View
...
@@ -10,17 +10,17 @@ import androidx.navigation.NavController
...
@@ -10,17 +10,17 @@ import androidx.navigation.NavController
import
androidx.navigation.fragment.NavHostFragment
import
androidx.navigation.fragment.NavHostFragment
import
dagger.hilt.android.AndroidEntryPoint
import
dagger.hilt.android.AndroidEntryPoint
import
kotlinx.coroutines.flow.collect
import
kotlinx.coroutines.flow.collect
import
uz.ssd.mobiuz
.R
import
com.mobiuz.app
.R
import
uz.ssd.mobiuz
.databinding.FragmentLoginBinding
import
com.mobiuz.app
.databinding.FragmentLoginBinding
import
uz.ssd.mobiuz
.model.UserAuth
import
com.mobiuz.app
.model.UserAuth
import
uz.ssd.mobiuz
.network.model.UiStateObject
import
com.mobiuz.app
.network.model.UiStateObject
import
uz.ssd.mobiuz
.ui.auth.AuthViewModel
import
com.mobiuz.app
.ui.auth.AuthViewModel
import
uz.ssd.mobiuz
.ui.base.BaseFragment
import
com.mobiuz.app
.ui.base.BaseFragment
import
uz.ssd.mobiuz.ui.global.TextWatcherWrapper
import
com.mobiuz.app.ui.global.ButtonClick
import
uz.ssd.mobiuz.ui.global.ButtonClick
import
com.mobiuz.app.ui.global.CONSTANTS
import
uz.ssd.mobiuz.ui.global.CONSTANTS
import
com.mobiuz.app.ui.global.TextWatcherWrapper
import
uz.ssd.mobiuz
.utils.Utils
import
com.mobiuz.app
.utils.Utils
import
uz.ssd.mobiuz
.utils.extensions.showCustomDialog
import
com.mobiuz.app
.utils.extensions.showCustomDialog
@AndroidEntryPoint
@AndroidEntryPoint
class
LoginFragment
:
BaseFragment
(
R
.
layout
.
fragment_login
)
{
class
LoginFragment
:
BaseFragment
(
R
.
layout
.
fragment_login
)
{
...
@@ -105,7 +105,7 @@ class LoginFragment : BaseFragment(R.layout.fragment_login) {
...
@@ -105,7 +105,7 @@ class LoginFragment : BaseFragment(R.layout.fragment_login) {
}
}
is
UiStateObject
.
ERROR
->
{
is
UiStateObject
.
ERROR
->
{
showProgressDialog
(
false
)
showProgressDialog
(
false
)
showCustomDialog
(
it
.
message
,
false
)
{}
showCustomDialog
(
it
.
message
,
false
)
{}
bn
.
helperPassword
.
isVisible
=
false
bn
.
helperPassword
.
isVisible
=
false
bn
.
helperPhone
.
isVisible
=
false
bn
.
helperPhone
.
isVisible
=
false
}
}
...
@@ -141,16 +141,18 @@ class LoginFragment : BaseFragment(R.layout.fragment_login) {
...
@@ -141,16 +141,18 @@ class LoginFragment : BaseFragment(R.layout.fragment_login) {
when
(
it
)
{
when
(
it
)
{
is
UiStateObject
.
SUCCESS
->
{
is
UiStateObject
.
SUCCESS
->
{
showProgressDialog
(
false
)
showProgressDialog
(
false
)
navController
.
navigate
(
R
.
id
.
verificationFragment
,
navController
.
navigate
(
R
.
id
.
verificationFragment
,
bundleOf
(
bundleOf
(
CONSTANTS
.
PHONE
to
phone
,
CONSTANTS
.
PHONE
to
phone
,
CONSTANTS
.
TYPE_VERIFICATION
to
CONSTANTS
.
TYPE_FORGET
CONSTANTS
.
TYPE_VERIFICATION
to
CONSTANTS
.
TYPE_FORGET
),
),
Utils
.
navOptions
())
Utils
.
navOptions
()
)
}
}
is
UiStateObject
.
ERROR
->
{
is
UiStateObject
.
ERROR
->
{
showProgressDialog
(
false
)
showProgressDialog
(
false
)
showCustomDialog
(
it
.
message
,
false
)
{}
showCustomDialog
(
it
.
message
,
false
)
{}
}
}
is
UiStateObject
.
ERRORS
->
{
is
UiStateObject
.
ERRORS
->
{
...
...
app/src/main/java/
uz/ssd/mobiuz
/ui/auth/pin/ConfirmPinFragment.kt
→
app/src/main/java/
com/mobiuz/app
/ui/auth/pin/ConfirmPinFragment.kt
View file @
71518399
package
uz.ssd.mobiuz
.ui.auth.pin
package
com.mobiuz.app
.ui.auth.pin
import
android.content.Intent
import
android.content.Intent
import
android.os.Bundle
import
android.os.Bundle
...
@@ -6,21 +6,20 @@ import android.view.View
...
@@ -6,21 +6,20 @@ import android.view.View
import
android.view.animation.AnimationUtils
import
android.view.animation.AnimationUtils
import
android.widget.TextView
import
android.widget.TextView
import
androidx.core.hardware.fingerprint.FingerprintManagerCompat
import
androidx.core.hardware.fingerprint.FingerprintManagerCompat
import
androidx.core.view.isVisible
import
androidx.lifecycle.lifecycleScope
import
androidx.lifecycle.lifecycleScope
import
androidx.navigation.NavController
import
androidx.navigation.NavController
import
androidx.navigation.fragment.NavHostFragment
import
androidx.navigation.fragment.NavHostFragment
import
androidx.recyclerview.widget.LinearLayoutManager
import
androidx.recyclerview.widget.LinearLayoutManager
import
dagger.hilt.android.AndroidEntryPoint
import
dagger.hilt.android.AndroidEntryPoint
import
kotlinx.coroutines.delay
import
kotlinx.coroutines.delay
import
uz.ssd.mobiuz
.MainActivity
import
com.mobiuz.app
.MainActivity
import
uz.ssd.mobiuz
.R
import
com.mobiuz.app
.R
import
uz.ssd.mobiuz
.databinding.FragmentPinBinding
import
com.mobiuz.app
.databinding.FragmentPinBinding
import
uz.ssd.mobiuz
.model.PinData
import
com.mobiuz.app
.model.PinData
import
uz.ssd.mobiuz
.model.SharedPref
import
com.mobiuz.app
.model.SharedPref
import
uz.ssd.mobiuz
.ui.base.BaseFragment
import
com.mobiuz.app
.ui.base.BaseFragment
import
uz.ssd.mobiuz
.ui.global.CONSTANTS
import
com.mobiuz.app
.ui.global.CONSTANTS
import
uz.ssd.mobiuz
.utils.Utils
import
com.mobiuz.app
.utils.Utils
import
javax.inject.Inject
import
javax.inject.Inject
@AndroidEntryPoint
@AndroidEntryPoint
...
@@ -68,7 +67,7 @@ class ConfirmPinFragment : BaseFragment(R.layout.fragment_pin) {
...
@@ -68,7 +67,7 @@ class ConfirmPinFragment : BaseFragment(R.layout.fragment_pin) {
txtNotPin
.
isVisible
=
false
txtNotPin
.
isVisible
=
false
navigate
()
navigate
()
}
else
{
}
else
{
cardPin
.
startAnimation
(
AnimationUtils
.
loadAnimation
(
requireContext
(),
R
.
anim
.
shake
))
cardPin
.
startAnimation
(
AnimationUtils
.
loadAnimation
(
requireContext
(),
R
.
anim
.
shake
))
txtNotPin
.
isVisible
=
true
txtNotPin
.
isVisible
=
true
}
}
}
}
...
...
app/src/main/java/
uz/ssd/mobiuz
/ui/auth/pin/PinAdapter.kt
→
app/src/main/java/
com/mobiuz/app
/ui/auth/pin/PinAdapter.kt
View file @
71518399
package
uz.ssd.mobiuz
.ui.auth.pin
package
com.mobiuz.app
.ui.auth.pin
import
android.view.LayoutInflater
import
android.view.LayoutInflater
import
android.view.ViewGroup
import
android.view.ViewGroup
import
androidx.recyclerview.widget.RecyclerView
import
androidx.recyclerview.widget.RecyclerView
import
uz.ssd.mobiuz
.R
import
com.mobiuz.app
.R
import
uz.ssd.mobiuz
.databinding.ItemPinBinding
import
com.mobiuz.app
.databinding.ItemPinBinding
import
uz.ssd.mobiuz
.model.PinData
import
com.mobiuz.app
.model.PinData
import
uz.ssd.mobiuz
.utils.extensions.SingleBlock
import
com.mobiuz.app
.utils.extensions.SingleBlock
class
PinAdapter
:
RecyclerView
.
Adapter
<
PinAdapter
.
VHolder
>()
{
class
PinAdapter
:
RecyclerView
.
Adapter
<
PinAdapter
.
VHolder
>()
{
private
val
list
:
ArrayList
<
PinData
>
by
lazy
{
ArrayList
()
}
private
val
list
:
ArrayList
<
PinData
>
by
lazy
{
ArrayList
()
}
private
var
listener
:
SingleBlock
<
String
>?
=
null
private
var
listener
:
SingleBlock
<
String
>?
=
null
override
fun
onCreateViewHolder
(
parent
:
ViewGroup
,
viewType
:
Int
):
VHolder
{
override
fun
onCreateViewHolder
(
parent
:
ViewGroup
,
viewType
:
Int
):
VHolder
{
...
@@ -39,7 +39,7 @@ class PinAdapter : RecyclerView.Adapter<PinAdapter.VHolder>() {
...
@@ -39,7 +39,7 @@ class PinAdapter : RecyclerView.Adapter<PinAdapter.VHolder>() {
list
[
index
].
count
=
id
list
[
index
].
count
=
id
notifyItemChanged
(
index
)
notifyItemChanged
(
index
)
if
(
index
==
3
)
checkDone
()
if
(
index
==
3
)
checkDone
()
}
else
{
}
else
{
list
.
forEach
{
list
.
forEach
{
it
.
count
=
-
1
it
.
count
=
-
1
}
}
...
...
app/src/main/java/
uz/ssd/mobiuz
/ui/auth/pin/PinFragment.kt
→
app/src/main/java/
com/mobiuz/app
/ui/auth/pin/PinFragment.kt
View file @
71518399
package
uz.ssd.mobiuz
.ui.auth.pin
package
com.mobiuz.app
.ui.auth.pin
import
android.os.Bundle
import
android.os.Bundle
import
android.view.View
import
android.view.View
import
android.widget.TextView
import
android.widget.TextView
import
androidx.core.os.bundleOf
import
androidx.core.os.bundleOf
import
androidx.core.view.isVisible
import
androidx.fragment.app.viewModels
import
androidx.lifecycle.lifecycleScope
import
androidx.lifecycle.lifecycleScope
import
androidx.navigation.NavController
import
androidx.navigation.NavController
import
androidx.navigation.fragment.NavHostFragment
import
androidx.navigation.fragment.NavHostFragment
import
androidx.recyclerview.widget.LinearLayoutManager
import
androidx.recyclerview.widget.LinearLayoutManager
import
dagger.hilt.android.AndroidEntryPoint
import
dagger.hilt.android.AndroidEntryPoint
import
kotlinx.coroutines.delay
import
kotlinx.coroutines.delay
import
uz.ssd.mobiuz.R
import
com.mobiuz.app.R
import
uz.ssd.mobiuz.databinding.FragmentPinBinding
import
com.mobiuz.app.databinding.FragmentPinBinding
import
uz.ssd.mobiuz.model.PinData
import
com.mobiuz.app.model.PinData
import
uz.ssd.mobiuz.model.SharedPref
import
com.mobiuz.app.model.SharedPref
import
uz.ssd.mobiuz.ui.auth.AuthViewModel
import
com.mobiuz.app.ui.base.BaseFragment
import
uz.ssd.mobiuz.ui.base.BaseFragment
import
com.mobiuz.app.utils.Utils
import
uz.ssd.mobiuz.utils.Utils
import
javax.inject.Inject
import
javax.inject.Inject
@AndroidEntryPoint
@AndroidEntryPoint
...
@@ -33,7 +30,6 @@ class PinFragment : BaseFragment(R.layout.fragment_pin) {
...
@@ -33,7 +30,6 @@ class PinFragment : BaseFragment(R.layout.fragment_pin) {
private
val
pinAdapter
=
PinAdapter
()
private
val
pinAdapter
=
PinAdapter
()
override
fun
onViewCreated
(
view
:
View
,
savedInstanceState
:
Bundle
?)
{
override
fun
onViewCreated
(
view
:
View
,
savedInstanceState
:
Bundle
?)
{
_bn
=
FragmentPinBinding
.
bind
(
view
)
_bn
=
FragmentPinBinding
.
bind
(
view
)
...
...
app/src/main/java/
uz/ssd/mobiuz
/ui/auth/register/RegisterFragment.kt
→
app/src/main/java/
com/mobiuz/app
/ui/auth/register/RegisterFragment.kt
View file @
71518399
package
uz.ssd.mobiuz
.ui.auth.register
package
com.mobiuz.app
.ui.auth.register
import
android.os.Bundle
import
android.os.Bundle
import
android.view.View
import
android.view.View
import
androidx.core.os.bundleOf
import
androidx.core.os.bundleOf
import
androidx.core.view.isVisible
import
androidx.fragment.app.viewModels
import
androidx.fragment.app.viewModels
import
androidx.lifecycle.lifecycleScope
import
androidx.lifecycle.lifecycleScope
import
androidx.navigation.NavController
import
androidx.navigation.NavController
import
androidx.navigation.fragment.NavHostFragment
import
androidx.navigation.fragment.NavHostFragment
import
dagger.hilt.android.AndroidEntryPoint
import
dagger.hilt.android.AndroidEntryPoint
import
kotlinx.coroutines.flow.collect
import
kotlinx.coroutines.flow.collect
import
uz.ssd.mobiuz
.R
import
com.mobiuz.app
.R
import
uz.ssd.mobiuz
.databinding.FragmentRegisterBinding
import
com.mobiuz.app
.databinding.FragmentRegisterBinding
import
uz.ssd.mobiuz
.model.UserAuth
import
com.mobiuz.app
.model.UserAuth
import
uz.ssd.mobiuz
.network.model.UiStateObject
import
com.mobiuz.app
.network.model.UiStateObject
import
uz.ssd.mobiuz
.ui.auth.AuthViewModel
import
com.mobiuz.app
.ui.auth.AuthViewModel
import
uz.ssd.mobiuz
.ui.base.BaseFragment
import
com.mobiuz.app
.ui.base.BaseFragment
import
uz.ssd.mobiuz
.ui.global.ButtonClick
import
com.mobiuz.app
.ui.global.ButtonClick
import
uz.ssd.mobiuz
.ui.global.CONSTANTS
import
com.mobiuz.app
.ui.global.CONSTANTS
import
uz.ssd.mobiuz
.ui.global.TextWatcherWrapper
import
com.mobiuz.app
.ui.global.TextWatcherWrapper
import
uz.ssd.mobiuz
.utils.Utils
import
com.mobiuz.app
.utils.Utils
import
uz.ssd.mobiuz
.utils.extensions.showCustomDialog
import
com.mobiuz.app
.utils.extensions.showCustomDialog
@AndroidEntryPoint
@AndroidEntryPoint
class
RegisterFragment
:
BaseFragment
(
R
.
layout
.
fragment_register
)
{
class
RegisterFragment
:
BaseFragment
(
R
.
layout
.
fragment_register
)
{
...
@@ -109,7 +108,7 @@ class RegisterFragment : BaseFragment(R.layout.fragment_register) {
...
@@ -109,7 +108,7 @@ class RegisterFragment : BaseFragment(R.layout.fragment_register) {
}
}
else
->
{
else
->
{
if
(
type
==
CONSTANTS
.
TYPE_FORGET
)
{
if
(
type
==
CONSTANTS
.
TYPE_FORGET
)
{
viewModel
.
resetPassword
(
UserAuth
(
phone
.
replace
(
" "
,
""
).
replace
(
"+"
,
""
),
password
,
code
))
viewModel
.
resetPassword
(
UserAuth
(
phone
.
replace
(
" "
,
""
).
replace
(
"+"
,
""
),
password
,
code
))
}
else
{
}
else
{
viewModel
.
register
(
UserAuth
(
phone
.
replace
(
" "
,
""
).
replace
(
"+"
,
""
),
password
))
viewModel
.
register
(
UserAuth
(
phone
.
replace
(
" "
,
""
).
replace
(
"+"
,
""
),
password
))
}
}
...
@@ -162,7 +161,7 @@ class RegisterFragment : BaseFragment(R.layout.fragment_register) {
...
@@ -162,7 +161,7 @@ class RegisterFragment : BaseFragment(R.layout.fragment_register) {
showProgressDialog
(
false
)
showProgressDialog
(
false
)
showCustomDialog
(
"Password successfully updated"
,
true
)
{
showCustomDialog
(
"Password successfully updated"
,
true
)
{
navController
.
popBackStack
()
navController
.
popBackStack
()
navController
.
navigate
(
R
.
id
.
pinFragment
,
null
,
Utils
.
navOptions
())
navController
.
navigate
(
R
.
id
.
pinFragment
,
null
,
Utils
.
navOptions
())
}
}
}
}
...
...
app/src/main/java/
uz/ssd/mobiuz
/ui/auth/verification/VerificationFragment.kt
→
app/src/main/java/
com/mobiuz/app
/ui/auth/verification/VerificationFragment.kt
View file @
71518399
package
uz.ssd.mobiuz
.ui.auth.verification
package
com.mobiuz.app
.ui.auth.verification
import
android.os.Bundle
import
android.os.Bundle
import
android.view.View
import
android.view.View
import
android.view.animation.AnimationUtils
import
android.view.animation.AnimationUtils
import
androidx.core.os.bundleOf
import
androidx.core.os.bundleOf
import
androidx.core.view.isVisible
import
androidx.fragment.app.viewModels
import
androidx.fragment.app.viewModels
import
androidx.lifecycle.lifecycleScope
import
androidx.lifecycle.lifecycleScope
import
androidx.navigation.NavController
import
androidx.navigation.NavController
import
androidx.navigation.fragment.NavHostFragment
import
androidx.navigation.fragment.NavHostFragment
import
dagger.hilt.android.AndroidEntryPoint
import
dagger.hilt.android.AndroidEntryPoint
import
kotlinx.coroutines.flow.collect
import
kotlinx.coroutines.flow.collect
import
uz.ssd.mobiuz
.R
import
com.mobiuz.app
.R
import
uz.ssd.mobiuz
.databinding.FragmentVerificationBinding
import
com.mobiuz.app
.databinding.FragmentVerificationBinding
import
uz.ssd.mobiuz
.model.SharedPref
import
com.mobiuz.app
.model.SharedPref
import
uz.ssd.mobiuz
.model.UserAuth
import
com.mobiuz.app
.model.UserAuth
import
uz.ssd.mobiuz
.network.model.UiStateObject
import
com.mobiuz.app
.network.model.UiStateObject
import
uz.ssd.mobiuz
.ui.auth.AuthViewModel
import
com.mobiuz.app
.ui.auth.AuthViewModel
import
uz.ssd.mobiuz
.ui.base.BaseFragment
import
com.mobiuz.app
.ui.base.BaseFragment
import
uz.ssd.mobiuz.ui.global.TextWatcherWrapper
import
com.mobiuz.app.ui.global.ButtonClick
import
uz.ssd.mobiuz.ui.global.ButtonClick
import
com.mobiuz.app.ui.global.CONSTANTS
import
uz.ssd.mobiuz.ui.global.CONSTANTS
import
com.mobiuz.app.ui.global.TextWatcherWrapper
import
uz.ssd.mobiuz
.utils.Utils
import
com.mobiuz.app
.utils.Utils
import
uz.ssd.mobiuz.utils.hideKeyboard
import
com.mobiuz.app.utils.extensions.showCustomDialog
import
uz.ssd.mobiuz.utils.extensions.showCustomDialog
import
com.mobiuz.app.utils.hideKeyboard
import
javax.inject.Inject
import
javax.inject.Inject
@AndroidEntryPoint
@AndroidEntryPoint
...
@@ -82,9 +81,9 @@ class VerificationFragment : BaseFragment(R.layout.fragment_verification) {
...
@@ -82,9 +81,9 @@ class VerificationFragment : BaseFragment(R.layout.fragment_verification) {
override
fun
onSingleClick
(
v
:
View
?)
{
override
fun
onSingleClick
(
v
:
View
?)
{
getLinePinCodes
()
getLinePinCodes
()
val
auth
=
UserAuth
(
phone
.
replace
(
"+"
,
""
).
replace
(
" "
,
""
),
null
,
code
)
val
auth
=
UserAuth
(
phone
.
replace
(
"+"
,
""
).
replace
(
" "
,
""
),
null
,
code
)
if
(
type
==
CONSTANTS
.
TYPE_FORGET
)
{
if
(
type
==
CONSTANTS
.
TYPE_FORGET
)
{
viewModel
.
checkResetCode
(
auth
)
viewModel
.
checkResetCode
(
auth
)
}
else
{
}
else
{
viewModel
.
verification
(
auth
)
viewModel
.
verification
(
auth
)
}
}
...
@@ -118,7 +117,7 @@ class VerificationFragment : BaseFragment(R.layout.fragment_verification) {
...
@@ -118,7 +117,7 @@ class VerificationFragment : BaseFragment(R.layout.fragment_verification) {
showProgressDialog
(
false
)
showProgressDialog
(
false
)
bn
.
lineField
.
startAnimation
(
AnimationUtils
.
loadAnimation
(
requireContext
(),
R
.
anim
.
shake
))
bn
.
lineField
.
startAnimation
(
AnimationUtils
.
loadAnimation
(
requireContext
(),
R
.
anim
.
shake
))
bn
.
helperLineField
.
isVisible
=
false
bn
.
helperLineField
.
isVisible
=
false
showCustomDialog
(
it
.
message
,
false
)
{}
showCustomDialog
(
it
.
message
,
false
)
{}
}
}
is
UiStateObject
.
ERRORS
->
{
is
UiStateObject
.
ERRORS
->
{
showProgressDialog
(
false
)
showProgressDialog
(
false
)
...
@@ -145,19 +144,21 @@ class VerificationFragment : BaseFragment(R.layout.fragment_verification) {
...
@@ -145,19 +144,21 @@ class VerificationFragment : BaseFragment(R.layout.fragment_verification) {
showProgressDialog
(
false
)
showProgressDialog
(
false
)
bn
.
helperLineField
.
isVisible
=
false
bn
.
helperLineField
.
isVisible
=
false
pref
.
userPhone
=
phone
pref
.
userPhone
=
phone
navController
.
navigate
(
R
.
id
.
registerFragment
,
navController
.
navigate
(
R
.
id
.
registerFragment
,
bundleOf
(
bundleOf
(
CONSTANTS
.
PHONE
to
phone
,
CONSTANTS
.
PHONE
to
phone
,
CONSTANTS
.
TYPE_VERIFICATION
to
CONSTANTS
.
TYPE_FORGET
,
CONSTANTS
.
TYPE_VERIFICATION
to
CONSTANTS
.
TYPE_FORGET
,
CONSTANTS
.
PIN_CODE
to
code
,
CONSTANTS
.
PIN_CODE
to
code
,
),
),
Utils
.
navOptions
())
Utils
.
navOptions
()
)
}
}
is
UiStateObject
.
ERROR
->
{
is
UiStateObject
.
ERROR
->
{
showProgressDialog
(
false
)
showProgressDialog
(
false
)
bn
.
lineField
.
startAnimation
(
AnimationUtils
.
loadAnimation
(
requireContext
(),
R
.
anim
.
shake
))
bn
.
lineField
.
startAnimation
(
AnimationUtils
.
loadAnimation
(
requireContext
(),
R
.
anim
.
shake
))
bn
.
helperLineField
.
isVisible
=
false
bn
.
helperLineField
.
isVisible
=
false
showCustomDialog
(
it
.
message
,
false
)
{}
showCustomDialog
(
it
.
message
,
false
)
{}
}
}
is
UiStateObject
.
ERRORS
->
{
is
UiStateObject
.
ERRORS
->
{
showProgressDialog
(
false
)
showProgressDialog
(
false
)
...
...
app/src/main/java/
uz/ssd/mobiuz
/ui/base/BaseFragment.kt
→
app/src/main/java/
com/mobiuz/app
/ui/base/BaseFragment.kt
View file @
71518399
package
uz.ssd.mobiuz
.ui.base
package
com.mobiuz.app
.ui.base
import
android.os.Bundle
import
android.os.Bundle
import
android.view.LayoutInflater
import
android.view.LayoutInflater
import
android.view.View
import
android.view.View
import
android.view.ViewGroup
import
android.view.ViewGroup
import
androidx.fragment.app.Fragment
import
androidx.fragment.app.Fragment
import
uz.ssd.mobiuz
.ui.global.ProgressDialog
import
com.mobiuz.app
.ui.global.ProgressDialog
abstract
class
BaseFragment
(
private
val
layoutId
:
Int
)
:
Fragment
()
{
abstract
class
BaseFragment
(
private
val
layoutId
:
Int
)
:
Fragment
()
{
...
...
app/src/main/java/
uz/ssd/mobiuz
/ui/global/ButtonClick.kt
→
app/src/main/java/
com/mobiuz/app
/ui/global/ButtonClick.kt
View file @
71518399
package
uz.ssd.mobiuz
.ui.global
package
com.mobiuz.app
.ui.global
import
android.os.SystemClock
import
android.os.SystemClock
import
android.view.View
import
android.view.View
...
...
app/src/main/java/
uz/ssd/mobiuz
/ui/global/CONSTANTS.kt
→
app/src/main/java/
com/mobiuz/app
/ui/global/CONSTANTS.kt
View file @
71518399
package
uz.ssd.mobiuz
.ui.global
package
com.mobiuz.app
.ui.global
object
CONSTANTS
{
object
CONSTANTS
{
const
val
BASE_URL
=
"http://10.160.45.60/api/v1/"
const
val
BASE_URL
=
"http://10.160.45.60/api/v1/"
...
...
app/src/main/java/
uz/ssd/mobiuz
/ui/global/ExitDialog.kt
→
app/src/main/java/
com/mobiuz/app
/ui/global/ExitDialog.kt
View file @
71518399
package
uz.ssd.mobiuz
.ui.global
package
com.mobiuz.app
.ui.global
import
android.os.Bundle
import
android.os.Bundle
import
android.view.LayoutInflater
import
android.view.LayoutInflater
import
android.view.View
import
android.view.View
import
android.view.ViewGroup
import
android.view.ViewGroup
import
androidx.fragment.app.DialogFragment
import
androidx.fragment.app.DialogFragment
import
uz.ssd.mobiuz
.R
import
com.mobiuz.app
.R
import
uz.ssd.mobiuz
.databinding.LayoutExitBinding
import
com.mobiuz.app
.databinding.LayoutExitBinding
import
uz.ssd.mobiuz
.utils.extensions.SingleBlock
import
com.mobiuz.app
.utils.extensions.SingleBlock
class
ExitDialog
:
DialogFragment
()
{
class
ExitDialog
:
DialogFragment
()
{
...
...
app/src/main/java/
uz/ssd/mobiuz
/ui/global/FullScreenDialog.kt
→
app/src/main/java/
com/mobiuz/app
/ui/global/FullScreenDialog.kt
View file @
71518399
package
uz.ssd.mobiuz
.ui.global
package
com.mobiuz.app
.ui.global
import
android.os.Bundle
import
android.os.Bundle
import
android.view.View
import
android.view.View
import
android.view.animation.AnimationUtils
import
android.view.animation.AnimationUtils
import
android.widget.TextView
import
android.widget.TextView
import
androidx.core.view.isVisible
import
androidx.fragment.app.DialogFragment
import
androidx.fragment.app.DialogFragment
import
androidx.lifecycle.lifecycleScope
import
androidx.lifecycle.lifecycleScope
import
androidx.recyclerview.widget.LinearLayoutManager
import
androidx.recyclerview.widget.LinearLayoutManager
import
dagger.hilt.android.AndroidEntryPoint
import
dagger.hilt.android.AndroidEntryPoint
import
kotlinx.coroutines.delay
import
kotlinx.coroutines.delay
import
uz.ssd.mobiuz
.R
import
com.mobiuz.app
.R
import
uz.ssd.mobiuz
.databinding.FragmentPinDialogBinding
import
com.mobiuz.app
.databinding.FragmentPinDialogBinding
import
uz.ssd.mobiuz
.model.PinData
import
com.mobiuz.app
.model.PinData
import
uz.ssd.mobiuz
.model.SharedPref
import
com.mobiuz.app
.model.SharedPref
import
uz.ssd.mobiuz
.ui.auth.pin.PinAdapter
import
com.mobiuz.app
.ui.auth.pin.PinAdapter
import
uz.ssd.mobiuz
.utils.extensions.SingleBlock
import
com.mobiuz.app
.utils.extensions.SingleBlock
import
javax.inject.Inject
import
javax.inject.Inject
...
@@ -32,7 +31,7 @@ class FullScreenDialog : DialogFragment(R.layout.fragment_pin_dialog) {
...
@@ -32,7 +31,7 @@ class FullScreenDialog : DialogFragment(R.layout.fragment_pin_dialog) {
override
fun
onCreate
(
savedInstanceState
:
Bundle
?)
{
override
fun
onCreate
(
savedInstanceState
:
Bundle
?)
{
super
.
onCreate
(
savedInstanceState
)
super
.
onCreate
(
savedInstanceState
)
setStyle
(
STYLE_NO_TITLE
,
R
.
style
.
FullScreenDialog
)
setStyle
(
STYLE_NO_TITLE
,
R
.
style
.
FullScreenDialog
)
}
}
override
fun
onViewCreated
(
view
:
View
,
savedInstanceState
:
Bundle
?)
{
override
fun
onViewCreated
(
view
:
View
,
savedInstanceState
:
Bundle
?)
{
...
@@ -48,7 +47,7 @@ class FullScreenDialog : DialogFragment(R.layout.fragment_pin_dialog) {
...
@@ -48,7 +47,7 @@ class FullScreenDialog : DialogFragment(R.layout.fragment_pin_dialog) {
loadData
()
loadData
()
rvPin
.
layoutManager
=
LinearLayoutManager
(
requireContext
(),
LinearLayoutManager
.
HORIZONTAL
,
false
)
rvPin
.
layoutManager
=
LinearLayoutManager
(
requireContext
(),
LinearLayoutManager
.
HORIZONTAL
,
false
)
withPassword
.
setOnClickListener
(
object
:
ButtonClick
(){
withPassword
.
setOnClickListener
(
object
:
ButtonClick
()
{
override
fun
onSingleClick
(
v
:
View
?)
{
override
fun
onSingleClick
(
v
:
View
?)
{
listener
?.
invoke
(
Unit
)
listener
?.
invoke
(
Unit
)
}
}
...
...
app/src/main/java/
uz/ssd/mobiuz
/ui/global/ProgressDialog.kt
→
app/src/main/java/
com/mobiuz/app
/ui/global/ProgressDialog.kt
View file @
71518399
package
uz.ssd.mobiuz
.ui.global
package
com.mobiuz.app
.ui.global
import
android.os.Bundle
import
android.os.Bundle
import
androidx.fragment.app.DialogFragment
import
androidx.fragment.app.DialogFragment
import
uz.ssd.mobiuz
.R
import
com.mobiuz.app
.R
class
ProgressDialog
:
DialogFragment
(
R
.
layout
.
fragment_progress
)
{
class
ProgressDialog
:
DialogFragment
(
R
.
layout
.
fragment_progress
)
{
...
...
app/src/main/java/
uz/ssd/mobiuz
/ui/global/SenderDialog.kt
→
app/src/main/java/
com/mobiuz/app
/ui/global/SenderDialog.kt
View file @
71518399
package
uz.ssd.mobiuz
.ui.global
package
com.mobiuz.app
.ui.global
import
android.graphics.Color
import
android.graphics.Color
import
android.os.Bundle
import
android.os.Bundle
...
@@ -6,9 +6,9 @@ import android.view.LayoutInflater
...
@@ -6,9 +6,9 @@ import android.view.LayoutInflater
import
android.view.View
import
android.view.View
import
android.view.ViewGroup
import
android.view.ViewGroup
import
androidx.fragment.app.DialogFragment
import
androidx.fragment.app.DialogFragment
import
uz.ssd.mobiuz
.R
import
com.mobiuz.app
.R
import
uz.ssd.mobiuz
.databinding.LayoutSenderBinding
import
com.mobiuz.app
.databinding.LayoutSenderBinding
import
uz.ssd.mobiuz
.utils.extensions.SingleBlock
import
com.mobiuz.app
.utils.extensions.SingleBlock
class
SenderDialog
(
class
SenderDialog
(
private
val
txtDescription
:
String
,
private
val
txtDescription
:
String
,
...
...
app/src/main/java/
uz/ssd/mobiuz
/ui/global/TextWatcherWrapper.kt
→
app/src/main/java/
com/mobiuz/app
/ui/global/TextWatcherWrapper.kt
View file @
71518399
package
uz.ssd.mobiuz
.ui.global
package
com.mobiuz.app
.ui.global
import
android.text.Editable
import
android.text.Editable
import
android.text.TextWatcher
import
android.text.TextWatcher
...
...
app/src/main/java/
uz/ssd/mobiuz
/ui/home/HomeFragment.kt
→
app/src/main/java/
com/mobiuz/app
/ui/home/HomeFragment.kt
View file @
71518399
package
uz.ssd.mobiuz
.ui.home
package
com.mobiuz.app
.ui.home
import
android.annotation.SuppressLint
import
android.annotation.SuppressLint
import
android.content.Intent
import
android.content.Intent
...
@@ -8,15 +8,15 @@ import androidx.fragment.app.viewModels
...
@@ -8,15 +8,15 @@ import androidx.fragment.app.viewModels
import
androidx.lifecycle.lifecycleScope
import
androidx.lifecycle.lifecycleScope
import
dagger.hilt.android.AndroidEntryPoint
import
dagger.hilt.android.AndroidEntryPoint
import
kotlinx.coroutines.flow.collect
import
kotlinx.coroutines.flow.collect
import
uz.ssd.mobiuz
.AuthActivity
import
com.mobiuz.app
.AuthActivity
import
uz.ssd.mobiuz
.R
import
com.mobiuz.app
.R
import
uz.ssd.mobiuz
.databinding.FragmentHomeBinding
import
com.mobiuz.app
.databinding.FragmentHomeBinding
import
uz.ssd.mobiuz
.model.SharedPref
import
com.mobiuz.app
.model.SharedPref
import
uz.ssd.mobiuz
.network.model.Customer
import
com.mobiuz.app
.network.model.Customer
import
uz.ssd.mobiuz
.network.model.UiStateObject
import
com.mobiuz.app
.network.model.UiStateObject
import
uz.ssd.mobiuz
.ui.base.BaseFragment
import
com.mobiuz.app
.ui.base.BaseFragment
import
uz.ssd.mobiuz
.ui.global.ButtonClick
import
com.mobiuz.app
.ui.global.ButtonClick
import
uz.ssd.mobiuz
.utils.extensions.*
import
com.mobiuz.app
.utils.extensions.*
import
javax.inject.Inject
import
javax.inject.Inject
...
@@ -28,7 +28,7 @@ class HomeFragment : BaseFragment(R.layout.fragment_home) {
...
@@ -28,7 +28,7 @@ class HomeFragment : BaseFragment(R.layout.fragment_home) {
private
var
_bn
:
FragmentHomeBinding
?
=
null
private
var
_bn
:
FragmentHomeBinding
?
=
null
private
val
bn
get
()
=
_bn
?:
throw
NullPointerException
(
"cannot inflate"
)
private
val
bn
get
()
=
_bn
?:
throw
NullPointerException
(
"cannot inflate"
)
private
val
viewModel
:
HomeViewModel
by
viewModels
()
private
val
viewModel
:
HomeViewModel
by
viewModels
()
private
var
customer
:
Customer
?
=
null
private
var
customer
:
Customer
?
=
null
...
@@ -114,8 +114,8 @@ class HomeFragment : BaseFragment(R.layout.fragment_home) {
...
@@ -114,8 +114,8 @@ class HomeFragment : BaseFragment(R.layout.fragment_home) {
txtMyNumber
.
text
=
pref
.
userPhone
txtMyNumber
.
text
=
pref
.
userPhone
}
}
}
}
}
catch
(
e
:
Exception
)
{
}
catch
(
e
:
Exception
)
{
showCustomDialog
(
e
.
userMessage
(
requireContext
()),
false
)
{}
showCustomDialog
(
e
.
userMessage
(
requireContext
()),
false
)
{}
}
}
...
...
app/src/main/java/
uz/ssd/mobiuz
/ui/home/HomeViewModel.kt
→
app/src/main/java/
com/mobiuz/app
/ui/home/HomeViewModel.kt
View file @
71518399
package
uz.ssd.mobiuz
.ui.home
package
com.mobiuz.app
.ui.home
import
androidx.lifecycle.ViewModel
import
androidx.lifecycle.ViewModel
import
androidx.lifecycle.viewModelScope
import
androidx.lifecycle.viewModelScope
...
@@ -6,11 +6,9 @@ import dagger.hilt.android.lifecycle.HiltViewModel
...
@@ -6,11 +6,9 @@ import dagger.hilt.android.lifecycle.HiltViewModel
import
kotlinx.coroutines.flow.MutableStateFlow
import
kotlinx.coroutines.flow.MutableStateFlow
import
kotlinx.coroutines.flow.StateFlow
import
kotlinx.coroutines.flow.StateFlow
import
kotlinx.coroutines.launch
import
kotlinx.coroutines.launch
import
uz.ssd.mobiuz.model.UserAuth
import
com.mobiuz.app.network.model.Customer
import
uz.ssd.mobiuz.network.model.Action
import
com.mobiuz.app.network.model.UiStateObject
import
uz.ssd.mobiuz.network.model.Customer
import
com.mobiuz.app.network.repository.AuthRepository
import
uz.ssd.mobiuz.network.model.UiStateObject
import
uz.ssd.mobiuz.network.repository.AuthRepository
import
javax.inject.Inject
import
javax.inject.Inject
@HiltViewModel
@HiltViewModel
...
...
app/src/main/java/
uz/ssd/mobiuz
/utils/SoftKeyboard.kt
→
app/src/main/java/
com/mobiuz/app
/utils/SoftKeyboard.kt
View file @
71518399
package
uz.ssd.mobiuz
.utils
package
com.mobiuz.app
.utils
import
android.content.Context
import
android.content.Context
import
android.view.View
import
android.view.View
...
...
app/src/main/java/
uz/ssd/mobiuz
/utils/Utils.kt
→
app/src/main/java/
com/mobiuz/app
/utils/Utils.kt
View file @
71518399
package
uz.ssd.mobiuz
.utils
package
com.mobiuz.app
.utils
import
android.os.Build
import
android.os.Build
import
android.text.TextUtils
import
android.text.TextUtils
import
androidx.navigation.NavOptions
import
androidx.navigation.NavOptions
import
uz.ssd.mobiuz.R
import
com.mobiuz.app.R
import
java.util.*
object
Utils
{
object
Utils
{
...
@@ -19,7 +20,7 @@ object Utils {
...
@@ -19,7 +20,7 @@ object Utils {
fun
getDeviceName
():
String
{
fun
getDeviceName
():
String
{
val
manufacturer
=
Build
.
MANUFACTURER
val
manufacturer
=
Build
.
MANUFACTURER
val
model
=
Build
.
MODEL
val
model
=
Build
.
MODEL
return
if
(
model
.
toLowerCase
().
startsWith
(
manufacturer
.
toLowerCase
(
)))
{
return
if
(
model
.
lowercase
(
Locale
.
getDefault
()).
startsWith
(
manufacturer
.
lowercase
(
Locale
.
getDefault
()
)))
{
capitalize
(
model
)
capitalize
(
model
)
}
else
{
}
else
{
capitalize
(
manufacturer
)
+
" "
+
model
capitalize
(
manufacturer
)
+
" "
+
model
...
...
app/src/main/java/
uz/ssd/mobiuz
/utils/extensions/MoneyExt.kt
→
app/src/main/java/
com/mobiuz/app
/utils/extensions/MoneyExt.kt
View file @
71518399
package
uz.ssd.mobiuz
.utils.extensions
package
com.mobiuz.app
.utils.extensions
import
java.text.DecimalFormat
import
java.text.DecimalFormat
import
java.text.DecimalFormatSymbols
import
java.text.DecimalFormatSymbols
...
@@ -22,8 +22,8 @@ fun String.toMoneyFormat(): String {
...
@@ -22,8 +22,8 @@ fun String.toMoneyFormat(): String {
}
}
}
}
fun
String
.
currencyFormat
():
String
{
fun
String
.
currencyFormat
():
String
{
val
format
=
this
.
replace
(
","
,
""
)
val
format
=
this
.
replace
(
","
,
""
)
return
DecimalFormat
(
"###,###,###"
).
format
(
format
.
toDouble
())
return
DecimalFormat
(
"###,###,###"
).
format
(
format
.
toDouble
())
}
}
...
...
app/src/main/java/
uz/ssd/mobiuz
/utils/extensions/NavigationExtensions.kt
→
app/src/main/java/
com/mobiuz/app
/utils/extensions/NavigationExtensions.kt
View file @
71518399
...
@@ -14,7 +14,7 @@
...
@@ -14,7 +14,7 @@
* limitations under the License.
* limitations under the License.
*/
*/
package
uz.ssd.mobiuz
.utils.extensions
package
com.mobiuz.app
.utils.extensions
import
android.content.Intent
import
android.content.Intent
import
android.util.SparseArray
import
android.util.SparseArray
...
@@ -25,7 +25,7 @@ import androidx.lifecycle.MutableLiveData
...
@@ -25,7 +25,7 @@ import androidx.lifecycle.MutableLiveData
import
androidx.navigation.NavController
import
androidx.navigation.NavController
import
androidx.navigation.fragment.NavHostFragment
import
androidx.navigation.fragment.NavHostFragment
import
com.google.android.material.bottomnavigation.BottomNavigationView
import
com.google.android.material.bottomnavigation.BottomNavigationView
import
uz.ssd.mobiuz
.R
import
com.mobiuz.app
.R
/**
/**
* Manages the various graphs needed for a [BottomNavigationView].
* Manages the various graphs needed for a [BottomNavigationView].
...
...
app/src/main/java/
uz/ssd/mobiuz
/utils/extensions/PermissionExtensions.kt
→
app/src/main/java/
com/mobiuz/app
/utils/extensions/PermissionExtensions.kt
View file @
71518399
package
uz.ssd.mobiuz
.utils
package
com.mobiuz.app
.utils
import
androidx.fragment.app.Fragment
import
androidx.fragment.app.Fragment
import
androidx.fragment.app.FragmentActivity
import
androidx.fragment.app.FragmentActivity
...
@@ -53,6 +53,7 @@ fun Fragment.checkPermissions(permissions: Array<String>, granted: () -> Unit) {
...
@@ -53,6 +53,7 @@ fun Fragment.checkPermissions(permissions: Array<String>, granted: () -> Unit) {
}
}
})
})
}
}
fun
FragmentActivity
.
checkPermissions
(
permissions
:
Array
<
String
>,
granted
:
()
->
Unit
)
{
fun
FragmentActivity
.
checkPermissions
(
permissions
:
Array
<
String
>,
granted
:
()
->
Unit
)
{
val
mContext
=
this
val
mContext
=
this
val
options
=
Permissions
.
Options
()
val
options
=
Permissions
.
Options
()
...
...
app/src/main/java/
uz/ssd/mobiuz
/utils/extensions/StringExtension.kt
→
app/src/main/java/
com/mobiuz/app
/utils/extensions/StringExtension.kt
View file @
71518399
package
uz.ssd.mobiuz
.utils.extensions
package
com.mobiuz.app
.utils.extensions
import
android.app.Activity
import
android.app.Activity
import
android.content.Context
import
android.content.Context
...
@@ -9,9 +9,9 @@ import androidx.fragment.app.FragmentActivity
...
@@ -9,9 +9,9 @@ import androidx.fragment.app.FragmentActivity
import
androidx.recyclerview.widget.RecyclerView
import
androidx.recyclerview.widget.RecyclerView
import
com.google.gson.JsonSyntaxException
import
com.google.gson.JsonSyntaxException
import
retrofit2.HttpException
import
retrofit2.HttpException
import
uz.ssd.mobiuz
.R
import
com.mobiuz.app
.R
import
uz.ssd.mobiuz
.ui.global.ExitDialog
import
com.mobiuz.app
.ui.global.ExitDialog
import
uz.ssd.mobiuz
.ui.global.SenderDialog
import
com.mobiuz.app
.ui.global.SenderDialog
import
java.io.IOException
import
java.io.IOException
import
java.net.ConnectException
import
java.net.ConnectException
...
...
app/src/main/java/uz/ssd/mobiuz/network/model/Errors.kt
deleted
100644 → 0
View file @
7654afcf
package
uz.ssd.mobiuz.network.model
data class
Errors
(
var
key
:
String
,
var
message
:
String
)
\ No newline at end of file
app/src/main/res/navigation/nav_graph_auth.xml
View file @
71518399
...
@@ -7,40 +7,40 @@
...
@@ -7,40 +7,40 @@
<fragment
<fragment
android:id=
"@+id/checkPhoneFragment"
android:id=
"@+id/checkPhoneFragment"
android:name=
"
uz.ssd.mobiuz
.ui.auth.check.CheckPhoneFragment"
android:name=
"
com.mobiuz.app
.ui.auth.check.CheckPhoneFragment"
android:label=
"fragment_login"
android:label=
"fragment_login"
tools:layout=
"@layout/fragment_check_phone"
/>
tools:layout=
"@layout/fragment_check_phone"
/>
<fragment
<fragment
android:id=
"@+id/verificationFragment"
android:id=
"@+id/verificationFragment"
android:name=
"
uz.ssd.mobiuz
.ui.auth.verification.VerificationFragment"
android:name=
"
com.mobiuz.app
.ui.auth.verification.VerificationFragment"
android:label=
"fragment_verification"
android:label=
"fragment_verification"
tools:layout=
"@layout/fragment_verification"
/>
tools:layout=
"@layout/fragment_verification"
/>
<fragment
<fragment
android:id=
"@+id/registerFragment"
android:id=
"@+id/registerFragment"
android:name=
"
uz.ssd.mobiuz
.ui.auth.register.RegisterFragment"
android:name=
"
com.mobiuz.app
.ui.auth.register.RegisterFragment"
android:label=
"EnterPasswordFragment"
android:label=
"EnterPasswordFragment"
tools:layout=
"@layout/fragment_register"
/>
tools:layout=
"@layout/fragment_register"
/>
<fragment
<fragment
android:id=
"@+id/loginFragment"
android:id=
"@+id/loginFragment"
android:name=
"
uz.ssd.mobiuz
.ui.auth.login.LoginFragment"
android:name=
"
com.mobiuz.app
.ui.auth.login.LoginFragment"
android:label=
"fragment_password"
android:label=
"fragment_password"
tools:layout=
"@layout/fragment_login"
/>
tools:layout=
"@layout/fragment_login"
/>
<fragment
<fragment
android:id=
"@+id/pinFragment"
android:id=
"@+id/pinFragment"
android:name=
"
uz.ssd.mobiuz
.ui.auth.pin.PinFragment"
android:name=
"
com.mobiuz.app
.ui.auth.pin.PinFragment"
android:label=
"PinFragment"
android:label=
"PinFragment"
tools:layout=
"@layout/fragment_pin"
/>
tools:layout=
"@layout/fragment_pin"
/>
<fragment
<fragment
android:id=
"@+id/biometricFragment"
android:id=
"@+id/biometricFragment"
android:name=
"
uz.ssd.mobiuz
.ui.auth.biometric.BiometricFragment"
android:name=
"
com.mobiuz.app
.ui.auth.biometric.BiometricFragment"
android:label=
"fragment_biometric"
android:label=
"fragment_biometric"
tools:layout=
"@layout/fragment_biometric"
/>
tools:layout=
"@layout/fragment_biometric"
/>
<fragment
<fragment
android:id=
"@+id/confirmPinFragment"
android:id=
"@+id/confirmPinFragment"
android:name=
"
uz.ssd.mobiuz
.ui.auth.pin.ConfirmPinFragment"
android:name=
"
com.mobiuz.app
.ui.auth.pin.ConfirmPinFragment"
android:label=
"ConfirmPinFragment"
android:label=
"ConfirmPinFragment"
tools:layout=
"@layout/fragment_pin"
/>
tools:layout=
"@layout/fragment_pin"
/>
</navigation>
</navigation>
\ No newline at end of file
app/src/main/res/navigation/nav_graph_home.xml
View file @
71518399
...
@@ -7,7 +7,7 @@
...
@@ -7,7 +7,7 @@
<fragment
<fragment
android:id=
"@+id/homeFragment"
android:id=
"@+id/homeFragment"
android:name=
"
uz.ssd.mobiuz
.ui.home.HomeFragment"
android:name=
"
com.mobiuz.app
.ui.home.HomeFragment"
android:label=
"fragment_home"
android:label=
"fragment_home"
tools:layout=
"@layout/fragment_home"
/>
tools:layout=
"@layout/fragment_home"
/>
...
...
app/src/main/res/navigation/nav_graph_main.xml
View file @
71518399
...
@@ -7,7 +7,7 @@
...
@@ -7,7 +7,7 @@
<fragment
<fragment
android:id=
"@+id/homeFragment"
android:id=
"@+id/homeFragment"
android:name=
"
uz.ssd.mobiuz
.ui.home.HomeFragment"
android:name=
"
com.mobiuz.app
.ui.home.HomeFragment"
android:label=
"fragment_home"
android:label=
"fragment_home"
tools:layout=
"@layout/fragment_home"
/>
tools:layout=
"@layout/fragment_home"
/>
...
...
app/src/main/res/navigation/nav_graph_profile.xml
View file @
71518399
...
@@ -8,7 +8,7 @@
...
@@ -8,7 +8,7 @@
<fragment
<fragment
android:id=
"@+id/motionFragment"
android:id=
"@+id/motionFragment"
tools:layout=
"@layout/home_motion"
tools:layout=
"@layout/home_motion"
android:name=
"
uz.ssd.mobiuz
.MotionFragment"
android:name=
"
com.mobiuz.app
.MotionFragment"
android:label=
"MotionFragment"
/>
android:label=
"MotionFragment"
/>
</navigation>
</navigation>
\ No newline at end of file
app/src/main/res/navigation/nav_graph_red.xml
View file @
71518399
...
@@ -8,12 +8,12 @@
...
@@ -8,12 +8,12 @@
<fragment
<fragment
android:id=
"@+id/homeFragment"
android:id=
"@+id/homeFragment"
android:name=
"
uz.ssd.mobiuz
.ui.home.HomeFragment"
android:name=
"
com.mobiuz.app
.ui.home.HomeFragment"
android:label=
"fragment_home"
android:label=
"fragment_home"
tools:layout=
"@layout/fragment_home"
/>
tools:layout=
"@layout/fragment_home"
/>
<fragment
<fragment
android:id=
"@+id/blankFragment"
android:id=
"@+id/blankFragment"
android:name=
"
uz.ssd.mobiuz
.BlankFragment"
android:name=
"
com.mobiuz.app
.BlankFragment"
android:label=
"fragment_blank"
android:label=
"fragment_blank"
tools:layout=
"@layout/fragment_blank"
/>
tools:layout=
"@layout/fragment_blank"
/>
...
...
app/src/test/java/
uz/ssd/mobiuz
/ExampleUnitTest.kt
→
app/src/test/java/
com/mobiuz/app
/ExampleUnitTest.kt
View file @
71518399
package
uz.ssd.mobiuz
package
com.mobiuz.app
import
org.junit.Test
import
org.junit.Test
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment