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
267301d2
Commit
267301d2
authored
Dec 11, 2021
by
shohboz
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[UPD]
MUS-123
Feature, updated screens
parent
a4a65342
Changes
60
Show whitespace changes
Inline
Side-by-side
Showing
60 changed files
with
680 additions
and
484 deletions
+680
-484
misc.xml
.idea/misc.xml
+11
-1
build.gradle
app/build.gradle
+1
-2
AndroidManifest.xml
app/src/main/AndroidManifest.xml
+23
-24
LanguageActivity.kt
app/src/main/java/com/mobiuz/app/dev/LanguageActivity.kt
+0
-1
PinActivity.kt
app/src/main/java/com/mobiuz/app/dev/PinActivity.kt
+0
-76
SplashActivity.kt
app/src/main/java/com/mobiuz/app/dev/SplashActivity.kt
+1
-0
SharedPref.kt
app/src/main/java/com/mobiuz/app/dev/model/SharedPref.kt
+12
-0
Customer.kt
...rc/main/java/com/mobiuz/app/dev/network/model/Customer.kt
+6
-0
UiStateList.kt
...main/java/com/mobiuz/app/dev/network/model/UiStateList.kt
+1
-1
UiStateObject.kt
...in/java/com/mobiuz/app/dev/network/model/UiStateObject.kt
+1
-1
AuthRepository.kt
...a/com/mobiuz/app/dev/network/repository/AuthRepository.kt
+35
-25
BiometricFragment.kt
...com/mobiuz/app/dev/ui/auth/biometric/BiometricFragment.kt
+11
-20
CheckPhoneFragment.kt
...va/com/mobiuz/app/dev/ui/auth/check/CheckPhoneFragment.kt
+1
-16
LoginFragment.kt
...in/java/com/mobiuz/app/dev/ui/auth/login/LoginFragment.kt
+18
-25
PinAdapter.kt
...rc/main/java/com/mobiuz/app/dev/ui/auth/pin/PinAdapter.kt
+1
-1
SquareImageView.kt
...in/java/com/mobiuz/app/dev/ui/auth/pin/SquareImageView.kt
+15
-0
RegisterFragment.kt
...a/com/mobiuz/app/dev/ui/auth/register/RegisterFragment.kt
+41
-32
BaseFragment.kt
app/src/main/java/com/mobiuz/app/dev/ui/base/BaseFragment.kt
+17
-0
FullScreenDialog.kt
...ain/java/com/mobiuz/app/dev/ui/global/FullScreenDialog.kt
+48
-13
nav_item_tint.xml
app/src/main/res/color/nav_item_tint.xml
+1
-1
bgn_pin_btn.xml
app/src/main/res/drawable/bgn_pin_btn.xml
+2
-2
bgn_pin_checked.xml
app/src/main/res/drawable/bgn_pin_checked.xml
+1
-1
bgn_ver_checked.xml
app/src/main/res/drawable/bgn_ver_checked.xml
+1
-1
bgn_ver_unchecked.xml
app/src/main/res/drawable/bgn_ver_unchecked.xml
+1
-1
button_default_bg.xml
app/src/main/res/drawable/button_default_bg.xml
+2
-2
button_false_bg.xml
app/src/main/res/drawable/button_false_bg.xml
+2
-2
button_selector.xml
app/src/main/res/drawable/button_selector.xml
+2
-2
edit_text_checked.xml
app/src/main/res/drawable/edit_text_checked.xml
+1
-1
edit_text_unchecked.xml
app/src/main/res/drawable/edit_text_unchecked.xml
+1
-1
ic_baseline_arrow_back.xml
app/src/main/res/drawable/ic_baseline_arrow_back.xml
+1
-1
ic_baseline_check_circle.xml
app/src/main/res/drawable/ic_baseline_check_circle.xml
+1
-1
ic_baseline_keyboard_arrow_right.xml
...rc/main/res/drawable/ic_baseline_keyboard_arrow_right.xml
+1
-1
ic_finger_print.xml
app/src/main/res/drawable/ic_finger_print.xml
+28
-0
ic_image_language.xml
app/src/main/res/drawable/ic_image_language.xml
+10
-0
ic_image_support.xml
app/src/main/res/drawable/ic_image_support.xml
+10
-0
ic_log_out.xml
app/src/main/res/drawable/ic_log_out.xml
+12
-0
ic_pin_checked.xml
app/src/main/res/drawable/ic_pin_checked.xml
+12
-0
ic_pin_unchecked.xml
app/src/main/res/drawable/ic_pin_unchecked.xml
+9
-0
ic_safety.xml
app/src/main/res/drawable/ic_safety.xml
+10
-0
ic_user.png
app/src/main/res/drawable/ic_user.png
+0
-0
activity_pin.xml
app/src/main/res/layout/activity_pin.xml
+0
-34
fragment_biometric.xml
app/src/main/res/layout/fragment_biometric.xml
+10
-10
fragment_check_phone.xml
app/src/main/res/layout/fragment_check_phone.xml
+6
-17
fragment_forget_password.xml
app/src/main/res/layout/fragment_forget_password.xml
+5
-4
fragment_login.xml
app/src/main/res/layout/fragment_login.xml
+17
-17
fragment_pin.xml
app/src/main/res/layout/fragment_pin.xml
+32
-27
fragment_pin_dialog.xml
app/src/main/res/layout/fragment_pin_dialog.xml
+46
-23
fragment_register.xml
app/src/main/res/layout/fragment_register.xml
+57
-46
item_home.xml
app/src/main/res/layout/item_home.xml
+7
-7
item_pin.xml
app/src/main/res/layout/item_pin.xml
+2
-2
layout_exit.xml
app/src/main/res/layout/layout_exit.xml
+2
-2
layout_home_header.xml
app/src/main/res/layout/layout_home_header.xml
+39
-0
motion_layout.xml
app/src/main/res/layout/motion_layout.xml
+0
-8
nav_graph_auth.xml
app/src/main/res/navigation/nav_graph_auth.xml
+5
-6
strings.xml
app/src/main/res/values-en/strings.xml
+20
-1
strings.xml
app/src/main/res/values-ru/strings.xml
+20
-1
strings.xml
app/src/main/res/values-uz/strings.xml
+20
-1
colors.xml
app/src/main/res/values/colors.xml
+21
-10
strings.xml
app/src/main/res/values/strings.xml
+13
-3
themes.xml
app/src/main/res/values/themes.xml
+7
-10
No files found.
.idea/misc.xml
View file @
267301d2
...
@@ -3,6 +3,7 @@
...
@@ -3,6 +3,7 @@
<component
name=
"DesignSurface"
>
<component
name=
"DesignSurface"
>
<option
name=
"filePathToZoomLevelMap"
>
<option
name=
"filePathToZoomLevelMap"
>
<map>
<map>
<entry
key=
"../../../../layout/custom_preview.xml"
value=
"0.3527777777777778"
/>
<entry
key=
"app/src/main/res/drawable/bgn_lang.xml"
value=
"0.2796296296296296"
/>
<entry
key=
"app/src/main/res/drawable/bgn_lang.xml"
value=
"0.2796296296296296"
/>
<entry
key=
"app/src/main/res/drawable/bgn_pin_btn.xml"
value=
"0.26525096525096525"
/>
<entry
key=
"app/src/main/res/drawable/bgn_pin_btn.xml"
value=
"0.26525096525096525"
/>
<entry
key=
"app/src/main/res/drawable/bgn_pin_checked.xml"
value=
"0.26525096525096525"
/>
<entry
key=
"app/src/main/res/drawable/bgn_pin_checked.xml"
value=
"0.26525096525096525"
/>
...
@@ -21,9 +22,14 @@
...
@@ -21,9 +22,14 @@
<entry
key=
"app/src/main/res/drawable/ic_baseline_check_circle.xml"
value=
"0.20694444444444443"
/>
<entry
key=
"app/src/main/res/drawable/ic_baseline_check_circle.xml"
value=
"0.20694444444444443"
/>
<entry
key=
"app/src/main/res/drawable/ic_baseline_home.xml"
value=
"0.2796296296296296"
/>
<entry
key=
"app/src/main/res/drawable/ic_baseline_home.xml"
value=
"0.2796296296296296"
/>
<entry
key=
"app/src/main/res/drawable/ic_baseline_keyboard_arrow_right.xml"
value=
"0.2796296296296296"
/>
<entry
key=
"app/src/main/res/drawable/ic_baseline_keyboard_arrow_right.xml"
value=
"0.2796296296296296"
/>
<entry
key=
"app/src/main/res/drawable/ic_bg.xml"
value=
"0.2590277777777778"
/>
<entry
key=
"app/src/main/res/drawable/ic_finger_print.xml"
value=
"0.2590277777777778"
/>
<entry
key=
"app/src/main/res/drawable/ic_fingerprint.xml"
value=
"0.26525096525096525"
/>
<entry
key=
"app/src/main/res/drawable/ic_fingerprint.xml"
value=
"0.26525096525096525"
/>
<entry
key=
"app/src/main/res/drawable/ic_group_12.xml"
value=
"0.2796296296296296"
/>
<entry
key=
"app/src/main/res/drawable/ic_group_12.xml"
value=
"0.2796296296296296"
/>
<entry
key=
"app/src/main/res/drawable/ic_mobiuz_logo.xml"
value=
"0.26180555555555557"
/>
<entry
key=
"app/src/main/res/drawable/ic_pinger_print.xml"
value=
"0.2590277777777778"
/>
<entry
key=
"app/src/main/res/drawable/ic_russia.xml"
value=
"0.2796296296296296"
/>
<entry
key=
"app/src/main/res/drawable/ic_russia.xml"
value=
"0.2796296296296296"
/>
<entry
key=
"app/src/main/res/drawable/ic_safety.xml"
value=
"0.2590277777777778"
/>
<entry
key=
"app/src/main/res/drawable/ic_vector_error.xml"
value=
"0.20694444444444443"
/>
<entry
key=
"app/src/main/res/drawable/ic_vector_error.xml"
value=
"0.20694444444444443"
/>
<entry
key=
"app/src/main/res/drawable/text_handle.xml"
value=
"1.4214285714285715"
/>
<entry
key=
"app/src/main/res/drawable/text_handle.xml"
value=
"1.4214285714285715"
/>
<entry
key=
"app/src/main/res/layout/activity_auth.xml"
value=
"0.3416666666666667"
/>
<entry
key=
"app/src/main/res/layout/activity_auth.xml"
value=
"0.3416666666666667"
/>
...
@@ -31,6 +37,7 @@
...
@@ -31,6 +37,7 @@
<entry
key=
"app/src/main/res/layout/activity_main.xml"
value=
"0.22"
/>
<entry
key=
"app/src/main/res/layout/activity_main.xml"
value=
"0.22"
/>
<entry
key=
"app/src/main/res/layout/activity_pin.xml"
value=
"0.3052536231884058"
/>
<entry
key=
"app/src/main/res/layout/activity_pin.xml"
value=
"0.3052536231884058"
/>
<entry
key=
"app/src/main/res/layout/activity_splash.xml"
value=
"0.29936594202898553"
/>
<entry
key=
"app/src/main/res/layout/activity_splash.xml"
value=
"0.29936594202898553"
/>
<entry
key=
"app/src/main/res/layout/activity_splash2.xml"
value=
"0.25625"
/>
<entry
key=
"app/src/main/res/layout/button_selector.xml"
value=
"0.33242753623188404"
/>
<entry
key=
"app/src/main/res/layout/button_selector.xml"
value=
"0.33242753623188404"
/>
<entry
key=
"app/src/main/res/layout/fragment_base.xml"
value=
"0.23497267759562843"
/>
<entry
key=
"app/src/main/res/layout/fragment_base.xml"
value=
"0.23497267759562843"
/>
<entry
key=
"app/src/main/res/layout/fragment_biometric.xml"
value=
"0.23497267759562843"
/>
<entry
key=
"app/src/main/res/layout/fragment_biometric.xml"
value=
"0.23497267759562843"
/>
...
@@ -39,13 +46,15 @@
...
@@ -39,13 +46,15 @@
<entry
key=
"app/src/main/res/layout/fragment_enter_password.xml"
value=
"0.22"
/>
<entry
key=
"app/src/main/res/layout/fragment_enter_password.xml"
value=
"0.22"
/>
<entry
key=
"app/src/main/res/layout/fragment_forget_password.xml"
value=
"0.21174863387978143"
/>
<entry
key=
"app/src/main/res/layout/fragment_forget_password.xml"
value=
"0.21174863387978143"
/>
<entry
key=
"app/src/main/res/layout/fragment_home.xml"
value=
"0.18385416666666668"
/>
<entry
key=
"app/src/main/res/layout/fragment_home.xml"
value=
"0.18385416666666668"
/>
<entry
key=
"app/src/main/res/layout/fragment_home_content.xml"
value=
"0.266796875"
/>
<entry
key=
"app/src/main/res/layout/fragment_login.xml"
value=
"0.2"
/>
<entry
key=
"app/src/main/res/layout/fragment_login.xml"
value=
"0.2"
/>
<entry
key=
"app/src/main/res/layout/fragment_my_verification.xml"
value=
"0.1265625"
/>
<entry
key=
"app/src/main/res/layout/fragment_password.xml"
value=
"0.2"
/>
<entry
key=
"app/src/main/res/layout/fragment_password.xml"
value=
"0.2"
/>
<entry
key=
"app/src/main/res/layout/fragment_pin.xml"
value=
"0.23497267759562843"
/>
<entry
key=
"app/src/main/res/layout/fragment_pin.xml"
value=
"0.23497267759562843"
/>
<entry
key=
"app/src/main/res/layout/fragment_pin_dialog.xml"
value=
"0.25625"
/>
<entry
key=
"app/src/main/res/layout/fragment_pin_dialog.xml"
value=
"0.25625"
/>
<entry
key=
"app/src/main/res/layout/fragment_pin_lock.xml"
value=
"0.23497267759562843"
/>
<entry
key=
"app/src/main/res/layout/fragment_pin_lock.xml"
value=
"0.23497267759562843"
/>
<entry
key=
"app/src/main/res/layout/fragment_progress.xml"
value=
"0.33242753623188404"
/>
<entry
key=
"app/src/main/res/layout/fragment_progress.xml"
value=
"0.33242753623188404"
/>
<entry
key=
"app/src/main/res/layout/fragment_register.xml"
value=
"0.
33242753623188404
"
/>
<entry
key=
"app/src/main/res/layout/fragment_register.xml"
value=
"0.
25
"
/>
<entry
key=
"app/src/main/res/layout/fragment_verification.xml"
value=
"0.2"
/>
<entry
key=
"app/src/main/res/layout/fragment_verification.xml"
value=
"0.2"
/>
<entry
key=
"app/src/main/res/layout/home_home.xml"
value=
"0.25625"
/>
<entry
key=
"app/src/main/res/layout/home_home.xml"
value=
"0.25625"
/>
<entry
key=
"app/src/main/res/layout/home_motion.xml"
value=
"0.10951008645533142"
/>
<entry
key=
"app/src/main/res/layout/home_motion.xml"
value=
"0.10951008645533142"
/>
...
@@ -54,6 +63,7 @@
...
@@ -54,6 +63,7 @@
<entry
key=
"app/src/main/res/layout/item_pin.xml"
value=
"0.23497267759562843"
/>
<entry
key=
"app/src/main/res/layout/item_pin.xml"
value=
"0.23497267759562843"
/>
<entry
key=
"app/src/main/res/layout/layout_ask_create_task.xml"
value=
"0.22643442622950818"
/>
<entry
key=
"app/src/main/res/layout/layout_ask_create_task.xml"
value=
"0.22643442622950818"
/>
<entry
key=
"app/src/main/res/layout/layout_exit.xml"
value=
"0.25625"
/>
<entry
key=
"app/src/main/res/layout/layout_exit.xml"
value=
"0.25625"
/>
<entry
key=
"app/src/main/res/layout/layout_home_header.xml"
value=
"0.25625"
/>
<entry
key=
"app/src/main/res/layout/layout_sender.xml"
value=
"0.25625"
/>
<entry
key=
"app/src/main/res/layout/layout_sender.xml"
value=
"0.25625"
/>
<entry
key=
"app/src/main/res/layout/motion_layout.xml"
value=
"0.266796875"
/>
<entry
key=
"app/src/main/res/layout/motion_layout.xml"
value=
"0.266796875"
/>
<entry
key=
"app/src/main/res/menu/bottom_nav_menu.xml"
value=
"0.3416666666666667"
/>
<entry
key=
"app/src/main/res/menu/bottom_nav_menu.xml"
value=
"0.3416666666666667"
/>
...
...
app/build.gradle
View file @
267301d2
...
@@ -99,11 +99,10 @@ dependencies {
...
@@ -99,11 +99,10 @@ dependencies {
implementation
'io.github.chaosleung:pinview:1.4.4'
implementation
'io.github.chaosleung:pinview:1.4.4'
implementation
'com.github.pinball83:masked-edittext:1.0.4'
implementation
'com.github.pinball83:masked-edittext:1.0.4'
// pin view
implementation
"com.github.iwgang:countdownview:2.1.6"
implementation
"com.github.iwgang:countdownview:2.1.6"
implementation
'com.poovam:pin-edittext-field:1.2.3'
implementation
'com.poovam:pin-edittext-field:1.2.3'
implementation
'co.infinum:goldfinger:2.0.1'
...
...
app/src/main/AndroidManifest.xml
View file @
267301d2
...
@@ -6,49 +6,48 @@
...
@@ -6,49 +6,48 @@
<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"
/>
<uses-permission
android:name=
"android.permission.USE_BIOMETRIC"
/>
<uses-permission
android:name=
"android.permission.USE_BIOMETRIC"
/>
<uses-permission
android:name=
"android.permission.USE_FINGERPRINT"
/>
<application
<application
android:name=
"
com.mobiuz.app
.dev.app.App"
android:name=
".dev.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"
android:networkSecurityConfig=
"@xml/network_security_config"
android:roundIcon=
"@mipmap/ic_launcher_round"
android:roundIcon=
"@mipmap/ic_launcher_round"
android:supportsRtl=
"true"
android:supportsRtl=
"true"
android:networkSecurityConfig=
"@xml/network_security_config"
android:theme=
"@style/Theme.MobiUzAndroid"
android:theme=
"@style/Theme.MobiUzAndroid"
android:usesCleartextTraffic=
"true"
android:usesCleartextTraffic=
"true"
tools:targetApi=
"m"
>
tools:targetApi=
"m"
>
<activity
<activity
android:name=
"com.mobiuz.app.dev.LanguageActivity"
android:name=
".dev.SplashActivity"
android:screenOrientation=
"portrait"
android:configChanges=
"orientation"
android:windowSoftInputMode=
"adjustResize"
android:exported=
"false"
/>
<activity
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.dev.AuthActivity"
android:screenOrientation=
"portrait"
android:configChanges=
"orientation"
android:windowSoftInputMode=
"adjustResize"
android:exported=
"false"
/>
<activity
android:name=
"com.mobiuz.app.dev.SplashActivity"
android:configChanges=
"orientation"
android:configChanges=
"orientation"
android:exported=
"true"
android:exported=
"true"
android:
windowSoftInputMode=
"adjustResize
"
android:
screenOrientation=
"portrait
"
android:
screenOrientation=
"portrait
"
>
android:
windowSoftInputMode=
"adjustResize
"
>
<intent-filter>
<intent-filter>
<action
android:name=
"android.intent.action.MAIN"
/>
<action
android:name=
"android.intent.action.MAIN"
/>
<category
android:name=
"android.intent.category.LAUNCHER"
/>
<category
android:name=
"android.intent.category.LAUNCHER"
/>
</intent-filter>
</intent-filter>
</activity>
</activity>
<activity
android:name=
".dev.LanguageActivity"
android:configChanges=
"orientation"
android:exported=
"false"
android:screenOrientation=
"portrait"
android:windowSoftInputMode=
"adjustResize"
/>
<activity
android:name=
".dev.MainActivity"
android:configChanges=
"orientation"
android:exported=
"false"
android:screenOrientation=
"portrait"
android:windowSoftInputMode=
"adjustResize"
/>
<activity
android:name=
".dev.AuthActivity"
android:configChanges=
"orientation"
android:exported=
"false"
android:screenOrientation=
"portrait"
android:windowSoftInputMode=
"adjustResize"
/>
</application>
</application>
</manifest>
</manifest>
\ No newline at end of file
app/src/main/java/com/mobiuz/app/dev/LanguageActivity.kt
View file @
267301d2
...
@@ -41,7 +41,6 @@ class LanguageActivity : AppCompatActivity() {
...
@@ -41,7 +41,6 @@ class LanguageActivity : AppCompatActivity() {
private
fun
setLangAndNavigate
(
lang
:
String
)
{
private
fun
setLangAndNavigate
(
lang
:
String
)
{
pref
.
language
=
lang
pref
.
language
=
lang
startActivity
(
Intent
(
this
@LanguageActivity
,
AuthActivity
::
class
.
java
))
startActivity
(
Intent
(
this
@LanguageActivity
,
AuthActivity
::
class
.
java
))
finish
()
}
}
override
fun
onDestroy
()
{
override
fun
onDestroy
()
{
...
...
app/src/main/java/com/mobiuz/app/dev/PinActivity.kt
deleted
100644 → 0
View file @
a4a65342
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
com.mobiuz.app.databinding.ActivityPinBinding
import
dagger.hilt.android.AndroidEntryPoint
import
java.util.concurrent.Executor
@AndroidEntryPoint
class
PinActivity
:
AppCompatActivity
()
{
private
var
_bn
:
ActivityPinBinding
?
=
null
private
val
bn
get
()
=
_bn
?:
throw
NullPointerException
(
"cannot inflate"
)
private
lateinit
var
executor
:
Executor
private
lateinit
var
biometricPrompt
:
BiometricPrompt
private
lateinit
var
promptInfo
:
BiometricPrompt
.
PromptInfo
override
fun
onCreate
(
savedInstanceState
:
Bundle
?)
{
super
.
onCreate
(
savedInstanceState
)
_bn
=
ActivityPinBinding
.
inflate
(
layoutInflater
)
setContentView
(
bn
.
root
)
executor
=
ContextCompat
.
getMainExecutor
(
this
)
biometricPrompt
=
BiometricPrompt
(
this
,
executor
,
object
:
BiometricPrompt
.
AuthenticationCallback
()
{
override
fun
onAuthenticationError
(
errorCode
:
Int
,
errString
:
CharSequence
)
{
super
.
onAuthenticationError
(
errorCode
,
errString
)
Toast
.
makeText
(
applicationContext
,
"Authentication error: $errString"
,
Toast
.
LENGTH_SHORT
)
.
show
()
}
override
fun
onAuthenticationSucceeded
(
result
:
BiometricPrompt
.
AuthenticationResult
)
{
super
.
onAuthenticationSucceeded
(
result
)
Toast
.
makeText
(
applicationContext
,
"Authentication succeeded!"
,
Toast
.
LENGTH_SHORT
)
.
show
()
}
override
fun
onAuthenticationFailed
()
{
super
.
onAuthenticationFailed
()
Toast
.
makeText
(
applicationContext
,
"Authentication failed"
,
Toast
.
LENGTH_SHORT
)
.
show
()
}
})
promptInfo
=
BiometricPrompt
.
PromptInfo
.
Builder
()
.
setTitle
(
"Biometric login for my app"
)
.
setSubtitle
(
"Log in using your biometric credential"
)
.
setNegativeButtonText
(
"Use account password"
)
.
build
()
biometricPrompt
.
authenticate
(
promptInfo
)
}
override
fun
onDestroy
()
{
_bn
=
null
super
.
onDestroy
()
}
}
\ No newline at end of file
app/src/main/java/com/mobiuz/app/dev/SplashActivity.kt
View file @
267301d2
...
@@ -11,6 +11,7 @@ import dagger.hilt.android.AndroidEntryPoint
...
@@ -11,6 +11,7 @@ import dagger.hilt.android.AndroidEntryPoint
import
kotlinx.coroutines.delay
import
kotlinx.coroutines.delay
import
javax.inject.Inject
import
javax.inject.Inject
@AndroidEntryPoint
@AndroidEntryPoint
class
SplashActivity
:
AppCompatActivity
()
{
class
SplashActivity
:
AppCompatActivity
()
{
...
...
app/src/main/java/com/mobiuz/app/dev/model/SharedPref.kt
View file @
267301d2
...
@@ -9,6 +9,12 @@ class SharedPref @Inject constructor(@ApplicationContext context: Context) {
...
@@ -9,6 +9,12 @@ class SharedPref @Inject constructor(@ApplicationContext context: Context) {
private
var
mySharedPref
:
SharedPreferences
=
context
.
getSharedPreferences
(
"mobiuz"
,
Context
.
MODE_PRIVATE
)
private
var
mySharedPref
:
SharedPreferences
=
context
.
getSharedPreferences
(
"mobiuz"
,
Context
.
MODE_PRIVATE
)
fun
clearUserData
(){
isRegistered
=
false
pin_code
=
""
setUserToken
(
""
)
}
fun
setDeviceToken
(
token
:
String
)
{
fun
setDeviceToken
(
token
:
String
)
{
mySharedPref
.
edit
().
putString
(
"device_token"
,
token
).
apply
()
mySharedPref
.
edit
().
putString
(
"device_token"
,
token
).
apply
()
}
}
...
@@ -43,6 +49,12 @@ class SharedPref @Inject constructor(@ApplicationContext context: Context) {
...
@@ -43,6 +49,12 @@ class SharedPref @Inject constructor(@ApplicationContext context: Context) {
mySharedPref
.
edit
().
putBoolean
(
::
isRegistered
.
name
,
value
).
apply
()
mySharedPref
.
edit
().
putBoolean
(
::
isRegistered
.
name
,
value
).
apply
()
}
}
var
isUseFingerPrint
:
Boolean
get
()
=
mySharedPref
.
getBoolean
(
::
isUseFingerPrint
.
name
,
false
)
set
(
value
)
{
mySharedPref
.
edit
().
putBoolean
(
::
isUseFingerPrint
.
name
,
value
).
apply
()
}
var
userPhone
:
String
var
userPhone
:
String
get
()
=
mySharedPref
.
getString
(
::
userPhone
.
name
,
""
)
?:
""
get
()
=
mySharedPref
.
getString
(
::
userPhone
.
name
,
""
)
?:
""
set
(
value
)
{
set
(
value
)
{
...
...
app/src/main/java/com/mobiuz/app/dev/network/model/Customer.kt
View file @
267301d2
...
@@ -6,6 +6,12 @@ data class Customer(
...
@@ -6,6 +6,12 @@ data class Customer(
data class
CustomerData
(
data class
CustomerData
(
var
info
:
CustomerInfo
?,
var
info
:
CustomerInfo
?,
var
name
:
String
,
val
tarifi
:
TarifCodeName
?
)
data class
TarifCodeName
(
var
code
:
String
,
var
name
:
String
var
name
:
String
)
)
...
...
app/src/main/java/com/mobiuz/app/dev/network/model/UiStateList.kt
View file @
267301d2
...
@@ -4,7 +4,7 @@ package com.mobiuz.app.dev.network.model
...
@@ -4,7 +4,7 @@ package com.mobiuz.app.dev.network.model
sealed
class
UiStateList
<
out
T
>
{
sealed
class
UiStateList
<
out
T
>
{
data class
SUCCESS
<
out
T
>(
val
data
:
List
<
T
>)
:
UiStateList
<
T
>()
data class
SUCCESS
<
out
T
>(
val
data
:
List
<
T
>)
:
UiStateList
<
T
>()
data class
ERROR
(
val
message
:
String
,
var
fromServer
:
Boolean
=
false
)
:
UiStateList
<
Nothing
>()
data class
ERROR
(
val
message
:
String
,
var
fromServer
:
Boolean
=
false
)
:
UiStateList
<
Nothing
>()
data class
ERRORS
(
val
errors
:
List
<
Errors
>)
:
UiStateObject
<
Nothing
>()
//
data class ERRORS(val errors: List<Errors>) : UiStateObject<Nothing>()
object
LOADING
:
UiStateList
<
Nothing
>()
object
LOADING
:
UiStateList
<
Nothing
>()
object
EMPTY
:
UiStateList
<
Nothing
>()
object
EMPTY
:
UiStateList
<
Nothing
>()
}
}
\ No newline at end of file
app/src/main/java/com/mobiuz/app/dev/network/model/UiStateObject.kt
View file @
267301d2
...
@@ -3,7 +3,7 @@ package com.mobiuz.app.dev.network.model
...
@@ -3,7 +3,7 @@ package com.mobiuz.app.dev.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
>()
}
}
\ No newline at end of file
app/src/main/java/com/mobiuz/app/dev/network/repository/AuthRepository.kt
View file @
267301d2
...
@@ -25,7 +25,11 @@ class AuthRepository @Inject constructor(
...
@@ -25,7 +25,11 @@ class AuthRepository @Inject constructor(
when
{
when
{
res
.
status
->
UiStateObject
.
SUCCESS
(
res
.
data
?:
Action
())
res
.
status
->
UiStateObject
.
SUCCESS
(
res
.
data
?:
Action
())
res
.
errors
.
isNotEmpty
()
->
{
res
.
errors
.
isNotEmpty
()
->
{
UiStateObject
.
ERRORS
(
res
.
errors
)
var
message
=
""
res
.
errors
.
forEach
{
message
+=
"${it.message}\n"
}
UiStateObject
.
ERROR
(
message
)
}
}
else
->
UiStateObject
.
ERROR
(
res
.
message
)
else
->
UiStateObject
.
ERROR
(
res
.
message
)
}
}
...
@@ -41,7 +45,11 @@ class AuthRepository @Inject constructor(
...
@@ -41,7 +45,11 @@ class AuthRepository @Inject constructor(
when
{
when
{
res
.
status
->
UiStateObject
.
SUCCESS
(
res
.
message
)
res
.
status
->
UiStateObject
.
SUCCESS
(
res
.
message
)
res
.
errors
.
isNotEmpty
()
->
{
res
.
errors
.
isNotEmpty
()
->
{
UiStateObject
.
ERRORS
(
res
.
errors
)
var
message
=
""
res
.
errors
.
forEach
{
message
+=
"${it.message}\n"
}
UiStateObject
.
ERROR
(
message
)
}
}
else
->
UiStateObject
.
ERROR
(
res
.
message
)
else
->
UiStateObject
.
ERROR
(
res
.
message
)
}
}
...
@@ -62,7 +70,11 @@ class AuthRepository @Inject constructor(
...
@@ -62,7 +70,11 @@ class AuthRepository @Inject constructor(
UiStateObject
.
SUCCESS
(
res
.
message
)
UiStateObject
.
SUCCESS
(
res
.
message
)
}
}
res
.
errors
.
isNotEmpty
()
->
{
res
.
errors
.
isNotEmpty
()
->
{
UiStateObject
.
ERRORS
(
res
.
errors
)
var
message
=
""
res
.
errors
.
forEach
{
message
+=
"${it.message}\n"
}
UiStateObject
.
ERROR
(
message
)
}
}
else
->
UiStateObject
.
ERROR
(
res
.
message
)
else
->
UiStateObject
.
ERROR
(
res
.
message
)
}
}
...
@@ -80,25 +92,11 @@ class AuthRepository @Inject constructor(
...
@@ -80,25 +92,11 @@ class AuthRepository @Inject constructor(
UiStateObject
.
SUCCESS
(
res
.
message
)
UiStateObject
.
SUCCESS
(
res
.
message
)
}
}
res
.
errors
.
isNotEmpty
()
->
{
res
.
errors
.
isNotEmpty
()
->
{
UiStateObject
.
ERRORS
(
res
.
errors
)
var
message
=
""
}
res
.
errors
.
forEach
{
else
->
UiStateObject
.
ERROR
(
res
.
message
)
message
+=
"${it.message}\n"
}
}
catch
(
e
:
Exception
)
{
UiStateObject
.
ERROR
(
e
.
userMessage
(
context
))
}
}
}
UiStateObject
.
ERROR
(
message
)
suspend
fun
mainIndex
():
UiStateObject
<
Customer
>
{
return
try
{
val
res
=
apiService
.
mainIndex
()
when
{
res
.
status
&&
res
.
data
!=
null
->
{
UiStateObject
.
SUCCESS
(
res
.
data
!!
)
}
res
.
errors
.
isNotEmpty
()
->
{
UiStateObject
.
ERRORS
(
res
.
errors
)
}
}
else
->
UiStateObject
.
ERROR
(
res
.
message
)
else
->
UiStateObject
.
ERROR
(
res
.
message
)
}
}
...
@@ -116,7 +114,11 @@ class AuthRepository @Inject constructor(
...
@@ -116,7 +114,11 @@ class AuthRepository @Inject constructor(
UiStateObject
.
SUCCESS
(
res
.
message
)
UiStateObject
.
SUCCESS
(
res
.
message
)
}
}
res
.
errors
.
isNotEmpty
()
->
{
res
.
errors
.
isNotEmpty
()
->
{
UiStateObject
.
ERRORS
(
res
.
errors
)
var
message
=
""
res
.
errors
.
forEach
{
message
+=
"${it.message}\n"
}
UiStateObject
.
ERROR
(
message
)
}
}
else
->
UiStateObject
.
ERROR
(
res
.
message
)
else
->
UiStateObject
.
ERROR
(
res
.
message
)
}
}
...
@@ -135,7 +137,11 @@ class AuthRepository @Inject constructor(
...
@@ -135,7 +137,11 @@ class AuthRepository @Inject constructor(
UiStateObject
.
SUCCESS
(
res
.
message
)
UiStateObject
.
SUCCESS
(
res
.
message
)
}
}
res
.
errors
.
isNotEmpty
()
->
{
res
.
errors
.
isNotEmpty
()
->
{
UiStateObject
.
ERRORS
(
res
.
errors
)
var
message
=
""
res
.
errors
.
forEach
{
message
+=
"${it.message}\n"
}
UiStateObject
.
ERROR
(
message
)
}
}
else
->
UiStateObject
.
ERROR
(
res
.
message
)
else
->
UiStateObject
.
ERROR
(
res
.
message
)
}
}
...
@@ -153,7 +159,11 @@ class AuthRepository @Inject constructor(
...
@@ -153,7 +159,11 @@ class AuthRepository @Inject constructor(
UiStateObject
.
SUCCESS
(
res
.
message
)
UiStateObject
.
SUCCESS
(
res
.
message
)
}
}
res
.
errors
.
isNotEmpty
()
->
{
res
.
errors
.
isNotEmpty
()
->
{
UiStateObject
.
ERRORS
(
res
.
errors
)
var
message
=
""
res
.
errors
.
forEach
{
message
+=
"${it.message}\n"
}
UiStateObject
.
ERROR
(
message
)
}
}
else
->
UiStateObject
.
ERROR
(
res
.
message
)
else
->
UiStateObject
.
ERROR
(
res
.
message
)
}
}
...
...
app/src/main/java/com/mobiuz/app/dev/ui/auth/biometric/BiometricFragment.kt
View file @
267301d2
package
com.mobiuz.app.dev.ui.auth.biometric
package
com.mobiuz.app.dev.ui.auth.biometric
import
android.Manifest
import
android.content.Intent
import
android.content.Intent
import
android.content.pm.PackageManager
import
android.os.Build
import
android.os.Bundle
import
android.os.Bundle
import
android.view.View
import
android.view.View
import
androidx.core.app.ActivityCompat.requestPermissions
import
androidx.core.content.ContextCompat
import
androidx.navigation.NavController
import
androidx.navigation.NavController
import
androidx.navigation.fragment.NavHostFragment
import
androidx.navigation.fragment.NavHostFragment
import
com.mobiuz.app.BuildConfig
import
com.mobiuz.app.R
import
com.mobiuz.app.R
import
com.mobiuz.app.databinding.FragmentBiometricBinding
import
com.mobiuz.app.databinding.FragmentBiometricBinding
import
com.mobiuz.app.dev.MainActivity
import
com.mobiuz.app.dev.MainActivity
import
com.mobiuz.app.dev.model.SharedPref
import
com.mobiuz.app.dev.ui.base.BaseFragment
import
com.mobiuz.app.dev.ui.base.BaseFragment
import
com.mobiuz.app.dev.ui.global.ButtonClick
import
com.mobiuz.app.dev.ui.global.ButtonClick
import
com.mobiuz.app.dev.ui.global.CONSTANTS
import
com.mobiuz.app.dev.ui.global.CONSTANTS
import
com.mobiuz.app.dev.utils.extensions.showMessage
import
dagger.hilt.android.AndroidEntryPoint
import
dagger.hilt.android.AndroidEntryPoint
import
javax.inject.Inject
@AndroidEntryPoint
@AndroidEntryPoint
class
BiometricFragment
:
BaseFragment
(
R
.
layout
.
fragment_biometric
)
{
class
BiometricFragment
:
BaseFragment
(
R
.
layout
.
fragment_biometric
)
{
@Inject
lateinit
var
pref
:
SharedPref
private
var
_bn
:
FragmentBiometricBinding
?
=
null
private
var
_bn
:
FragmentBiometricBinding
?
=
null
private
val
bn
get
()
=
_bn
?:
throw
NullPointerException
(
"cannot inflate"
)
private
val
bn
get
()
=
_bn
?:
throw
NullPointerException
(
"cannot inflate"
)
private
val
navController
:
NavController
by
lazy
(
LazyThreadSafetyMode
.
NONE
)
{
NavHostFragment
.
findNavController
(
this
)
}
private
val
navController
:
NavController
by
lazy
(
LazyThreadSafetyMode
.
NONE
)
{
NavHostFragment
.
findNavController
(
this
)
}
var
phone
=
""
var
phone
=
""
override
fun
onCreate
(
savedInstanceState
:
Bundle
?)
{
super
.
onCreate
(
savedInstanceState
)
if
(
BuildConfig
.
VERSION_CODE
>=
Build
.
VERSION_CODES
.
P
)
{
if
(
ContextCompat
.
checkSelfPermission
(
requireContext
(),
Manifest
.
permission
.
USE_BIOMETRIC
)
!=
PackageManager
.
PERMISSION_GRANTED
)
{
requestPermissions
(
requireActivity
(),
arrayOf
(
Manifest
.
permission
.
ACCESS_FINE_LOCATION
),
101
)
}
}
}
override
fun
onViewCreated
(
view
:
View
,
savedInstanceState
:
Bundle
?)
{
override
fun
onViewCreated
(
view
:
View
,
savedInstanceState
:
Bundle
?)
{
_bn
=
FragmentBiometricBinding
.
bind
(
view
)
_bn
=
FragmentBiometricBinding
.
bind
(
view
)
...
@@ -57,6 +47,7 @@ class BiometricFragment : BaseFragment(R.layout.fragment_biometric) {
...
@@ -57,6 +47,7 @@ class BiometricFragment : BaseFragment(R.layout.fragment_biometric) {
txtSkip
.
setOnClickListener
(
object
:
ButtonClick
()
{
txtSkip
.
setOnClickListener
(
object
:
ButtonClick
()
{
override
fun
onSingleClick
(
v
:
View
?)
{
override
fun
onSingleClick
(
v
:
View
?)
{
pref
.
isUseFingerPrint
=
false
navigate
()
navigate
()
}
}
})
})
...
@@ -67,11 +58,11 @@ class BiometricFragment : BaseFragment(R.layout.fragment_biometric) {
...
@@ -67,11 +58,11 @@ class BiometricFragment : BaseFragment(R.layout.fragment_biometric) {
}
}
})
})
btnSwitch
.
setOnCheckedChangeListener
{
buttonView
,
isChecked
->
btnSwitch
.
setOnCheckedChangeListener
{
_
,
isChecked
->
val
message
=
if
(
isChecked
)
"Biometric enabled"
else
"Biometric disabled"
showSnackMessage
(
message
)
pref
.
isUseFingerPrint
=
isChecked
}
}
}
}
}
}
...
...
app/src/main/java/com/mobiuz/app/dev/ui/auth/check/CheckPhoneFragment.kt
View file @
267301d2
...
@@ -50,7 +50,6 @@ class CheckPhoneFragment : BaseFragment(R.layout.fragment_check_phone) {
...
@@ -50,7 +50,6 @@ class CheckPhoneFragment : BaseFragment(R.layout.fragment_check_phone) {
override
fun
onTextChanged
(
s
:
CharSequence
?,
start
:
Int
,
before
:
Int
,
count
:
Int
)
{
override
fun
onTextChanged
(
s
:
CharSequence
?,
start
:
Int
,
before
:
Int
,
count
:
Int
)
{
super
.
onTextChanged
(
s
,
start
,
before
,
count
)
super
.
onTextChanged
(
s
,
start
,
before
,
count
)
customLog
(
"s=${s?.toString()?.length}"
)
customLog
(
"s=${s?.toString()?.length}"
)
bn
.
helperPhone
.
isVisible
=
false
btnLogin
.
isEnabled
=
inputPhone
.
text
.
toString
().
trim
().
length
==
17
btnLogin
.
isEnabled
=
inputPhone
.
text
.
toString
().
trim
().
length
==
17
}
}
})
})
...
@@ -80,7 +79,6 @@ class CheckPhoneFragment : BaseFragment(R.layout.fragment_check_phone) {
...
@@ -80,7 +79,6 @@ class CheckPhoneFragment : BaseFragment(R.layout.fragment_check_phone) {
when
(
it
)
{
when
(
it
)
{
is
UiStateObject
.
SUCCESS
->
{
is
UiStateObject
.
SUCCESS
->
{
showProgressDialog
(
false
)
showProgressDialog
(
false
)
bn
.
helperPhone
.
isVisible
=
false
if
(
it
.
data
.
action
==
"login"
)
{
if
(
it
.
data
.
action
==
"login"
)
{
navController
.
navigate
(
R
.
id
.
loginFragment
,
bundleOf
(
CONSTANTS
.
PHONE
to
phoneRaw
),
Utils
.
navOptions
())
navController
.
navigate
(
R
.
id
.
loginFragment
,
bundleOf
(
CONSTANTS
.
PHONE
to
phoneRaw
),
Utils
.
navOptions
())
}
else
if
(
it
.
data
.
action
==
"register"
)
{
}
else
if
(
it
.
data
.
action
==
"register"
)
{
...
@@ -88,24 +86,11 @@ class CheckPhoneFragment : BaseFragment(R.layout.fragment_check_phone) {
...
@@ -88,24 +86,11 @@ class CheckPhoneFragment : BaseFragment(R.layout.fragment_check_phone) {
}
}
}
}
is
UiStateObject
.
ERROR
->
{
is
UiStateObject
.
ERROR
->
{
bn
.
helperPhone
.
isVisible
=
false
showProgressDialog
(
false
)
showProgressDialog
(
false
)
show
CustomDialog
(
it
.
message
,
false
)
{}
show
SnackMessage
(
it
.
message
)
}
}
is
UiStateObject
.
ERRORS
->
{
it
.
errors
.
forEach
{
if
(
it
.
key
==
"phone"
)
{
bn
.
layoutInput
.
startAnimation
(
AnimationUtils
.
loadAnimation
(
requireContext
(),
R
.
anim
.
shake
))
bn
.
helperPhone
.
isVisible
=
true
bn
.
helperPhone
.
text
=
it
.
message
}
}
showProgressDialog
(
false
)
}
is
UiStateObject
.
LOADING
->
{
is
UiStateObject
.
LOADING
->
{
bn
.
helperPhone
.
isVisible
=
false
showProgressDialog
(
true
)
showProgressDialog
(
true
)
}
}
else
->
Unit
else
->
Unit
...
...
app/src/main/java/com/mobiuz/app/dev/ui/auth/login/LoginFragment.kt
View file @
267301d2
package
com.mobiuz.app.dev.ui.auth.login
package
com.mobiuz.app.dev.ui.auth.login
import
android.content.Intent
import
android.graphics.Color
import
android.net.Uri
import
android.os.Bundle
import
android.os.Bundle
import
android.text.Spannable
import
android.text.SpannableString
import
android.text.style.ForegroundColorSpan
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.core.view.isVisible
...
@@ -18,6 +24,7 @@ import com.mobiuz.app.dev.ui.global.ButtonClick
...
@@ -18,6 +24,7 @@ import com.mobiuz.app.dev.ui.global.ButtonClick
import
com.mobiuz.app.dev.ui.global.CONSTANTS
import
com.mobiuz.app.dev.ui.global.CONSTANTS
import
com.mobiuz.app.dev.ui.global.TextWatcherWrapper
import
com.mobiuz.app.dev.ui.global.TextWatcherWrapper
import
com.mobiuz.app.dev.utils.Utils
import
com.mobiuz.app.dev.utils.Utils
import
com.mobiuz.app.dev.utils.extensions.makeLinks
import
com.mobiuz.app.dev.utils.extensions.showCustomDialog
import
com.mobiuz.app.dev.utils.extensions.showCustomDialog
import
dagger.hilt.android.AndroidEntryPoint
import
dagger.hilt.android.AndroidEntryPoint
import
kotlinx.coroutines.flow.collect
import
kotlinx.coroutines.flow.collect
...
@@ -49,6 +56,12 @@ class LoginFragment : BaseFragment(R.layout.fragment_login) {
...
@@ -49,6 +56,12 @@ class LoginFragment : BaseFragment(R.layout.fragment_login) {
override
fun
setUpUI
()
{
override
fun
setUpUI
()
{
bn
.
apply
{
bn
.
apply
{
txtHelperMobiuz
.
makeLinks
(
Pair
(
"www.mobi.uz"
,
View
.
OnClickListener
{
val
uri
=
Uri
.
parse
(
"https://www.mobi.uz/"
)
val
intent
=
Intent
(
Intent
.
ACTION_VIEW
)
intent
.
data
=
uri
startActivity
(
intent
)
}))
inputPhone
.
setText
(
phone
)
inputPhone
.
setText
(
phone
)
txtForgetPassword
.
setOnClickListener
(
object
:
ButtonClick
()
{
txtForgetPassword
.
setOnClickListener
(
object
:
ButtonClick
()
{
...
@@ -61,7 +74,7 @@ class LoginFragment : BaseFragment(R.layout.fragment_login) {
...
@@ -61,7 +74,7 @@ class LoginFragment : BaseFragment(R.layout.fragment_login) {
override
fun
onTextChanged
(
s
:
CharSequence
?,
start
:
Int
,
before
:
Int
,
count
:
Int
)
{
override
fun
onTextChanged
(
s
:
CharSequence
?,
start
:
Int
,
before
:
Int
,
count
:
Int
)
{
super
.
onTextChanged
(
s
,
start
,
before
,
count
)
super
.
onTextChanged
(
s
,
start
,
before
,
count
)
bn
.
helperPassword
.
isVisible
=
false
bn
.
helperPassword
.
isVisible
=
false
btnLogin
.
isEnabled
=
(
s
.
toString
().
length
>
5
)
btnLogin
.
isEnabled
=
(
s
.
toString
().
length
>
3
)
}
}
})
})
...
@@ -101,32 +114,15 @@ class LoginFragment : BaseFragment(R.layout.fragment_login) {
...
@@ -101,32 +114,15 @@ class LoginFragment : BaseFragment(R.layout.fragment_login) {
showProgressDialog
(
false
)
showProgressDialog
(
false
)
bn
.
helperPassword
.
isVisible
=
false
bn
.
helperPassword
.
isVisible
=
false
bn
.
helperPhone
.
isVisible
=
false
bn
.
helperPhone
.
isVisible
=
false
navController
.
navigate
(
R
.
id
.
v
erificationFragment
,
bundleOf
(
CONSTANTS
.
PHONE
to
phone
),
Utils
.
navOptions
())
navController
.
navigate
(
R
.
id
.
myV
erificationFragment
,
bundleOf
(
CONSTANTS
.
PHONE
to
phone
),
Utils
.
navOptions
())
}
}
is
UiStateObject
.
ERROR
->
{
is
UiStateObject
.
ERROR
->
{
showProgressDialog
(
false
)
showProgressDialog
(
false
)
show
CustomDialog
(
it
.
message
,
false
)
{}
show
SnackMessage
(
it
.
message
)
bn
.
helperPassword
.
isVisible
=
false
bn
.
helperPassword
.
isVisible
=
false
bn
.
helperPhone
.
isVisible
=
false
bn
.
helperPhone
.
isVisible
=
false
}
}
is
UiStateObject
.
ERRORS
->
{
showProgressDialog
(
false
)
it
.
errors
.
forEach
{
if
(
it
.
key
==
"phone"
)
{
bn
.
helperPhone
.
isVisible
=
true
bn
.
helperPhone
.
text
=
it
.
message
}
else
{
bn
.
helperPhone
.
isVisible
=
false
}
if
(
it
.
key
==
"password"
)
{
bn
.
helperPassword
.
isVisible
=
true
bn
.
helperPassword
.
text
=
it
.
message
}
else
{
bn
.
helperPassword
.
isVisible
=
false
}
}
}
is
UiStateObject
.
LOADING
->
{
is
UiStateObject
.
LOADING
->
{
bn
.
helperPassword
.
isVisible
=
false
bn
.
helperPassword
.
isVisible
=
false
bn
.
helperPhone
.
isVisible
=
false
bn
.
helperPhone
.
isVisible
=
false
...
@@ -142,7 +138,7 @@ class LoginFragment : BaseFragment(R.layout.fragment_login) {
...
@@ -142,7 +138,7 @@ class LoginFragment : BaseFragment(R.layout.fragment_login) {
is
UiStateObject
.
SUCCESS
->
{
is
UiStateObject
.
SUCCESS
->
{
showProgressDialog
(
false
)
showProgressDialog
(
false
)
navController
.
navigate
(
navController
.
navigate
(
R
.
id
.
v
erificationFragment
,
R
.
id
.
myV
erificationFragment
,
bundleOf
(
bundleOf
(
CONSTANTS
.
PHONE
to
phone
,
CONSTANTS
.
PHONE
to
phone
,
CONSTANTS
.
TYPE_VERIFICATION
to
CONSTANTS
.
TYPE_FORGET
CONSTANTS
.
TYPE_VERIFICATION
to
CONSTANTS
.
TYPE_FORGET
...
@@ -152,12 +148,9 @@ class LoginFragment : BaseFragment(R.layout.fragment_login) {
...
@@ -152,12 +148,9 @@ class LoginFragment : BaseFragment(R.layout.fragment_login) {
}
}
is
UiStateObject
.
ERROR
->
{
is
UiStateObject
.
ERROR
->
{
showProgressDialog
(
false
)
showProgressDialog
(
false
)
show
CustomDialog
(
it
.
message
,
false
)
{}
show
SnackMessage
(
it
.
message
)
}
}
is
UiStateObject
.
ERRORS
->
{
showProgressDialog
(
false
)
}
is
UiStateObject
.
LOADING
->
{
is
UiStateObject
.
LOADING
->
{
showProgressDialog
(
true
)
showProgressDialog
(
true
)
}
}
...
...
app/src/main/java/com/mobiuz/app/dev/ui/auth/pin/PinAdapter.kt
View file @
267301d2
...
@@ -23,7 +23,7 @@ class PinAdapter : RecyclerView.Adapter<PinAdapter.VHolder>() {
...
@@ -23,7 +23,7 @@ class PinAdapter : RecyclerView.Adapter<PinAdapter.VHolder>() {
inner
class
VHolder
(
private
val
binding
:
ItemPinBinding
)
:
RecyclerView
.
ViewHolder
(
binding
.
root
)
{
inner
class
VHolder
(
private
val
binding
:
ItemPinBinding
)
:
RecyclerView
.
ViewHolder
(
binding
.
root
)
{
fun
bind
(
position
:
Int
)
{
fun
bind
(
position
:
Int
)
{
val
d
=
list
[
position
]
val
d
=
list
[
position
]
binding
.
imagePin
.
setImageResource
(
if
(
d
.
count
==
-
1
)
R
.
drawable
.
bgn_pin_btn
else
R
.
drawable
.
bgn
_pin_checked
)
binding
.
imagePin
.
setImageResource
(
if
(
d
.
count
==
-
1
)
R
.
drawable
.
ic_pin_unchecked
else
R
.
drawable
.
ic
_pin_checked
)
}
}
}
}
...
...
app/src/main/java/com/mobiuz/app/dev/ui/auth/pin/SquareImageView.kt
0 → 100644
View file @
267301d2
package
com.mobiuz.app.dev.ui.auth.pin
import
android.content.Context
import
android.util.AttributeSet
import
android.widget.ImageView
import
com.makeramen.roundedimageview.RoundedImageView
class
SquareImageView
(
context
:
Context
,
atr
:
AttributeSet
)
:
RoundedImageView
(
context
,
atr
)
{
override
fun
onMeasure
(
widthMeasureSpec
:
Int
,
heightMeasureSpec
:
Int
)
{
super
.
onMeasure
(
widthMeasureSpec
,
heightMeasureSpec
)
val
width
=
measuredWidth
setMeasuredDimension
(
width
,
(
width
.
toFloat
()
*
1.316489362
).
toInt
())
}
}
\ No newline at end of file
app/src/main/java/com/mobiuz/app/dev/ui/auth/register/RegisterFragment.kt
View file @
267301d2
package
com.mobiuz.app.dev.ui.auth.register
package
com.mobiuz.app.dev.ui.auth.register
import
android.content.Intent
import
android.net.Uri
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
...
@@ -18,7 +20,7 @@ import com.mobiuz.app.dev.ui.global.ButtonClick
...
@@ -18,7 +20,7 @@ import com.mobiuz.app.dev.ui.global.ButtonClick
import
com.mobiuz.app.dev.ui.global.CONSTANTS
import
com.mobiuz.app.dev.ui.global.CONSTANTS
import
com.mobiuz.app.dev.ui.global.TextWatcherWrapper
import
com.mobiuz.app.dev.ui.global.TextWatcherWrapper
import
com.mobiuz.app.dev.utils.Utils
import
com.mobiuz.app.dev.utils.Utils
import
com.mobiuz.app.dev.utils.extensions.
showCustomDialog
import
com.mobiuz.app.dev.utils.extensions.
makeLinks
import
dagger.hilt.android.AndroidEntryPoint
import
dagger.hilt.android.AndroidEntryPoint
import
kotlinx.coroutines.flow.collect
import
kotlinx.coroutines.flow.collect
...
@@ -52,22 +54,48 @@ class RegisterFragment : BaseFragment(R.layout.fragment_register) {
...
@@ -52,22 +54,48 @@ class RegisterFragment : BaseFragment(R.layout.fragment_register) {
override
fun
setUpUI
()
{
override
fun
setUpUI
()
{
bn
.
apply
{
bn
.
apply
{
txtHelperMobiuz
.
makeLinks
(
Pair
(
"www.mobi.uz"
,
View
.
OnClickListener
{
val
uri
=
Uri
.
parse
(
"https://www.mobi.uz/"
)
val
intent
=
Intent
(
Intent
.
ACTION_VIEW
)
intent
.
data
=
uri
startActivity
(
intent
)
}))
txtAgree
.
makeLinks
(
Pair
(
"Terms of Use"
,
View
.
OnClickListener
{
val
uri
=
Uri
.
parse
(
"https://www.mobi.uz/"
)
val
intent
=
Intent
(
Intent
.
ACTION_VIEW
)
intent
.
data
=
uri
startActivity
(
intent
)
}),
Pair
(
"Privacy Policy"
,
View
.
OnClickListener
{
val
uri
=
Uri
.
parse
(
"https://www.mobi.uz/"
)
val
intent
=
Intent
(
Intent
.
ACTION_VIEW
)
intent
.
data
=
uri
startActivity
(
intent
)
}),
)
txtEnterPhone
.
text
=
if
(
type
==
CONSTANTS
.
TYPE_FORGET
)
getString
(
R
.
string
.
think_password
)
else
getString
(
R
.
string
.
register
)
inputPassword
.
addTextChangedListener
(
object
:
TextWatcherWrapper
()
{
inputPassword
.
addTextChangedListener
(
object
:
TextWatcherWrapper
()
{
override
fun
onTextChanged
(
s
:
CharSequence
?,
start
:
Int
,
before
:
Int
,
count
:
Int
)
{
override
fun
onTextChanged
(
s
:
CharSequence
?,
start
:
Int
,
before
:
Int
,
count
:
Int
)
{
super
.
onTextChanged
(
s
,
start
,
before
,
count
)
super
.
onTextChanged
(
s
,
start
,
before
,
count
)
txtCheckPassword
.
isVisible
=
(
s
.
toString
().
length
<
5
)
txtCheckPassword
.
isVisible
=
(
s
.
toString
().
length
<
4
)
val
confirmText
=
inputConfirm
.
text
.
toString
().
trim
()
val
confirmText
=
inputConfirm
.
text
.
toString
().
trim
()
if
(
confirmText
.
isNotEmpty
())
{
if
(
confirmText
.
isNotEmpty
())
{
if
(
s
.
toString
()
==
confirmText
)
{
if
(
s
.
toString
()
==
confirmText
)
{
imageCheck
.
setImageResource
(
R
.
drawable
.
ic_baseline_check_circle
)
imageCheck
.
setImageResource
(
R
.
drawable
.
ic_baseline_check_circle
)
txtCheckConfirm
.
text
=
getString
(
R
.
string
.
password_same
)
txtCheckConfirm
.
text
=
getString
(
R
.
string
.
password_same
)
txtCheckConfirm
.
setTextColor
(
requireActivity
().
resources
.
getColor
(
R
.
color
.
green
))
txtCheckConfirm
.
setTextColor
(
requireActivity
().
resources
.
getColor
(
R
.
color
.
green
100
))
btnLogin
.
isEnabled
=
true
btnLogin
.
isEnabled
=
true
}
else
{
}
else
{
imageCheck
.
setImageResource
(
R
.
drawable
.
ic_vector_error
)
imageCheck
.
setImageResource
(
R
.
drawable
.
ic_vector_error
)
txtCheckConfirm
.
text
=
getString
(
R
.
string
.
password_not_same
)
txtCheckConfirm
.
text
=
getString
(
R
.
string
.
password_not_same
)
btnLogin
.
isEnabled
=
false
btnLogin
.
isEnabled
=
false
txtCheckConfirm
.
setTextColor
(
requireActivity
().
resources
.
getColor
(
R
.
color
.
red
))
txtCheckConfirm
.
setTextColor
(
requireActivity
().
resources
.
getColor
(
R
.
color
.
primary100
))
}
}
imageCheck
.
isVisible
=
true
imageCheck
.
isVisible
=
true
txtCheckConfirm
.
isVisible
=
true
txtCheckConfirm
.
isVisible
=
true
...
@@ -85,13 +113,13 @@ class RegisterFragment : BaseFragment(R.layout.fragment_register) {
...
@@ -85,13 +113,13 @@ class RegisterFragment : BaseFragment(R.layout.fragment_register) {
if
(
s
.
toString
()
==
inputPassword
.
text
.
toString
().
trim
())
{
if
(
s
.
toString
()
==
inputPassword
.
text
.
toString
().
trim
())
{
imageCheck
.
setImageResource
(
R
.
drawable
.
ic_baseline_check_circle
)
imageCheck
.
setImageResource
(
R
.
drawable
.
ic_baseline_check_circle
)
txtCheckConfirm
.
text
=
getString
(
R
.
string
.
password_same
)
txtCheckConfirm
.
text
=
getString
(
R
.
string
.
password_same
)
txtCheckConfirm
.
setTextColor
(
requireActivity
().
resources
.
getColor
(
R
.
color
.
green
))
txtCheckConfirm
.
setTextColor
(
requireActivity
().
resources
.
getColor
(
R
.
color
.
green
100
))
btnLogin
.
isEnabled
=
true
btnLogin
.
isEnabled
=
true
}
else
{
}
else
{
imageCheck
.
setImageResource
(
R
.
drawable
.
ic_vector_error
)
imageCheck
.
setImageResource
(
R
.
drawable
.
ic_vector_error
)
txtCheckConfirm
.
text
=
getString
(
R
.
string
.
password_not_same
)
txtCheckConfirm
.
text
=
getString
(
R
.
string
.
password_not_same
)
btnLogin
.
isEnabled
=
false
btnLogin
.
isEnabled
=
false
txtCheckConfirm
.
setTextColor
(
requireActivity
().
resources
.
getColor
(
R
.
color
.
red
))
txtCheckConfirm
.
setTextColor
(
requireActivity
().
resources
.
getColor
(
R
.
color
.
primary100
))
}
}
imageCheck
.
isVisible
=
true
imageCheck
.
isVisible
=
true
txtCheckConfirm
.
isVisible
=
true
txtCheckConfirm
.
isVisible
=
true
...
@@ -104,7 +132,7 @@ class RegisterFragment : BaseFragment(R.layout.fragment_register) {
...
@@ -104,7 +132,7 @@ class RegisterFragment : BaseFragment(R.layout.fragment_register) {
val
password
=
inputPassword
.
text
.
toString
().
trim
()
val
password
=
inputPassword
.
text
.
toString
().
trim
()
val
confirm
=
inputConfirm
.
text
.
toString
().
trim
()
val
confirm
=
inputConfirm
.
text
.
toString
().
trim
()
when
{
when
{
password
.
length
<
5
||
password
!=
confirm
->
{
password
.
length
<
4
||
password
!=
confirm
->
{
}
}
else
->
{
else
->
{
...
@@ -132,22 +160,13 @@ class RegisterFragment : BaseFragment(R.layout.fragment_register) {
...
@@ -132,22 +160,13 @@ class RegisterFragment : BaseFragment(R.layout.fragment_register) {
when
(
it
)
{
when
(
it
)
{
is
UiStateObject
.
SUCCESS
->
{
is
UiStateObject
.
SUCCESS
->
{
showProgressDialog
(
false
)
showProgressDialog
(
false
)
navController
.
navigate
(
R
.
id
.
v
erificationFragment
,
bundleOf
(
CONSTANTS
.
PHONE
to
phone
),
Utils
.
navOptions
())
navController
.
navigate
(
R
.
id
.
myV
erificationFragment
,
bundleOf
(
CONSTANTS
.
PHONE
to
phone
),
Utils
.
navOptions
())
}
}
is
UiStateObject
.
ERROR
->
{
is
UiStateObject
.
ERROR
->
{
showProgressDialog
(
false
)
showProgressDialog
(
false
)
show
CustomDialog
(
it
.
message
,
false
)
{}
show
SnackMessage
(
it
.
message
)
}
}
is
UiStateObject
.
ERRORS
->
{
showProgressDialog
(
false
)
var
message
=
""
it
.
errors
.
forEach
{
message
+=
it
.
message
}
// 97 756 5078
showCustomDialog
(
message
,
false
)
{}
}
is
UiStateObject
.
LOADING
->
{
is
UiStateObject
.
LOADING
->
{
showProgressDialog
(
true
)
showProgressDialog
(
true
)
}
}
...
@@ -160,26 +179,16 @@ class RegisterFragment : BaseFragment(R.layout.fragment_register) {
...
@@ -160,26 +179,16 @@ class RegisterFragment : BaseFragment(R.layout.fragment_register) {
when
(
it
)
{
when
(
it
)
{
is
UiStateObject
.
SUCCESS
->
{
is
UiStateObject
.
SUCCESS
->
{
showProgressDialog
(
false
)
showProgressDialog
(
false
)
show
CustomDialog
(
"Password successfully updated"
,
true
)
{
show
SnackMessage
(
getString
(
R
.
string
.
password_successfully_updated
))
navController
.
popBackStack
(
)
navController
.
popBackStack
(
R
.
id
.
loginFragment
,
false
)
navController
.
navigate
(
R
.
id
.
pinFragment
,
null
,
Utils
.
navOptions
())
navController
.
navigate
(
R
.
id
.
pinFragment
,
null
,
Utils
.
navOptions
())
}
}
}
is
UiStateObject
.
ERROR
->
{
is
UiStateObject
.
ERROR
->
{
showProgressDialog
(
false
)
showProgressDialog
(
false
)
show
CustomDialog
(
it
.
message
,
false
)
{}
show
SnackMessage
(
it
.
message
)
}
}
is
UiStateObject
.
ERRORS
->
{
showProgressDialog
(
false
)
var
message
=
""
it
.
errors
.
forEach
{
message
+=
it
.
message
}
// 97 756 5078
showCustomDialog
(
message
,
false
)
{}
}
is
UiStateObject
.
LOADING
->
{
is
UiStateObject
.
LOADING
->
{
showProgressDialog
(
true
)
showProgressDialog
(
true
)
}
}
...
...
app/src/main/java/com/mobiuz/app/dev/ui/base/BaseFragment.kt
View file @
267301d2
package
com.mobiuz.app.dev.ui.base
package
com.mobiuz.app.dev.ui.base
import
android.graphics.Color
import
android.os.Bundle
import
android.os.Bundle
import
android.text.SpannableStringBuilder
import
android.text.Spanned
import
android.text.style.ForegroundColorSpan
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
com.google.android.material.snackbar.Snackbar
import
com.mobiuz.app.dev.ui.global.ProgressDialog
import
com.mobiuz.app.dev.ui.global.ProgressDialog
...
@@ -31,4 +36,16 @@ abstract class BaseFragment(private val layoutId: Int) : Fragment() {
...
@@ -31,4 +36,16 @@ abstract class BaseFragment(private val layoutId: Int) : Fragment() {
}
}
}
}
protected
fun
showSnackMessage
(
message
:
String
){
val
ssb
=
SpannableStringBuilder
().
apply
{
append
(
message
)
setSpan
(
ForegroundColorSpan
(
Color
.
WHITE
),
0
,
message
.
length
,
Spanned
.
SPAN_EXCLUSIVE_EXCLUSIVE
)
}
view
?.
let
{
Snackbar
.
make
(
it
,
ssb
,
Snackbar
.
LENGTH_LONG
).
show
()
}
}
}
}
\ No newline at end of file
app/src/main/java/com/mobiuz/app/dev/ui/global/FullScreenDialog.kt
View file @
267301d2
...
@@ -8,14 +8,17 @@ import androidx.core.view.isVisible
...
@@ -8,14 +8,17 @@ 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
co.infinum.goldfinger.Goldfinger
import
com.mobiuz.app.R
import
com.mobiuz.app.R
import
com.mobiuz.app.databinding.FragmentPinDialogBinding
import
com.mobiuz.app.databinding.FragmentPinDialogBinding
import
com.mobiuz.app.dev.model.PinData
import
com.mobiuz.app.dev.model.PinData
import
com.mobiuz.app.dev.model.SharedPref
import
com.mobiuz.app.dev.model.SharedPref
import
com.mobiuz.app.dev.ui.auth.pin.PinAdapter
import
com.mobiuz.app.dev.ui.auth.pin.PinAdapter
import
com.mobiuz.app.dev.utils.extensions.SingleBlock
import
com.mobiuz.app.dev.utils.extensions.SingleBlock
import
com.mobiuz.app.dev.utils.extensions.customLog
import
dagger.hilt.android.AndroidEntryPoint
import
dagger.hilt.android.AndroidEntryPoint
import
kotlinx.coroutines.delay
import
kotlinx.coroutines.delay
import
java.lang.Exception
import
javax.inject.Inject
import
javax.inject.Inject
...
@@ -28,7 +31,7 @@ class FullScreenDialog : DialogFragment(R.layout.fragment_pin_dialog) {
...
@@ -28,7 +31,7 @@ class FullScreenDialog : DialogFragment(R.layout.fragment_pin_dialog) {
private
val
bn
get
()
=
_bn
?:
throw
NullPointerException
(
"cannot inflate"
)
private
val
bn
get
()
=
_bn
?:
throw
NullPointerException
(
"cannot inflate"
)
private
val
data
=
ArrayList
<
PinData
>()
private
val
data
=
ArrayList
<
PinData
>()
private
val
pinAdapter
=
PinAdapter
()
private
val
pinAdapter
=
PinAdapter
()
private
var
listener
:
SingleBlock
<
Unit
>?
=
null
private
var
listener
:
SingleBlock
<
Boolean
>?
=
null
override
fun
onCreate
(
savedInstanceState
:
Bundle
?)
{
override
fun
onCreate
(
savedInstanceState
:
Bundle
?)
{
super
.
onCreate
(
savedInstanceState
)
super
.
onCreate
(
savedInstanceState
)
...
@@ -41,6 +44,33 @@ class FullScreenDialog : DialogFragment(R.layout.fragment_pin_dialog) {
...
@@ -41,6 +44,33 @@ class FullScreenDialog : DialogFragment(R.layout.fragment_pin_dialog) {
isCancelable
=
false
isCancelable
=
false
setUpUI
()
setUpUI
()
loadFingerPrint
()
}
private
fun
loadFingerPrint
()
{
if
(
pref
.
isUseFingerPrint
)
{
val
golfing
=
Goldfinger
.
Builder
(
requireContext
()).
build
()
if
(
golfing
.
canAuthenticate
())
{
val
params
=
Goldfinger
.
PromptParams
.
Builder
(
this
)
.
title
(
getString
(
R
.
string
.
enter_from_finger_or_face
))
.
negativeButtonText
(
getString
(
R
.
string
.
cancel
))
.
build
()
golfing
.
authenticate
(
params
,
object
:
Goldfinger
.
Callback
{
override
fun
onResult
(
result
:
Goldfinger
.
Result
)
{
if
(
result
.
type
()
==
Goldfinger
.
Type
.
SUCCESS
){
dismiss
()
}
customLog
(
"onResult:${result.type()}, ${result.reason()}"
)
}
override
fun
onError
(
e
:
Exception
)
{
customLog
(
"onError"
)
}
})
}
}
}
}
fun
setUpUI
()
{
fun
setUpUI
()
{
...
@@ -48,11 +78,6 @@ class FullScreenDialog : DialogFragment(R.layout.fragment_pin_dialog) {
...
@@ -48,11 +78,6 @@ 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
()
{
override
fun
onSingleClick
(
v
:
View
?)
{
listener
?.
invoke
(
Unit
)
}
})
rvPin
.
adapter
=
pinAdapter
rvPin
.
adapter
=
pinAdapter
txtNotPin
.
isVisible
=
false
txtNotPin
.
isVisible
=
false
pinAdapter
.
setOnDoneListener
{
pinAdapter
.
setOnDoneListener
{
...
@@ -72,15 +97,25 @@ class FullScreenDialog : DialogFragment(R.layout.fragment_pin_dialog) {
...
@@ -72,15 +97,25 @@ class FullScreenDialog : DialogFragment(R.layout.fragment_pin_dialog) {
for
(
i
in
0
until
btnViewGroup
.
childCount
)
{
for
(
i
in
0
until
btnViewGroup
.
childCount
)
{
btnViewGroup
.
getChildAt
(
i
).
setOnClickListener
{
btnViewGroup
.
getChildAt
(
i
).
setOnClickListener
{
if
(
it
.
id
==
R
.
id
.
btn_remove
)
{
when
(
it
.
id
)
{
R
.
id
.
btn_remove
->
{
pinAdapter
.
removeItem
()
pinAdapter
.
removeItem
()
txtNotPin
.
isVisible
=
false
txtNotPin
.
isVisible
=
false
}
else
{
}
R
.
id
.
with_password
->
{
dismiss
()
listener
?.
invoke
(
true
)
}
R
.
id
.
btn_finger_print
->
{
loadFingerPrint
()
}
else
->
{
val
text
=
it
as
TextView
val
text
=
it
as
TextView
pinAdapter
.
addItem
(
text
.
text
.
toString
().
toInt
())
pinAdapter
.
addItem
(
text
.
text
.
toString
().
toInt
())
}
}
}
}
}
}
}
}
}
}
}
...
@@ -94,7 +129,7 @@ class FullScreenDialog : DialogFragment(R.layout.fragment_pin_dialog) {
...
@@ -94,7 +129,7 @@ class FullScreenDialog : DialogFragment(R.layout.fragment_pin_dialog) {
pinAdapter
.
submitList
(
data
)
pinAdapter
.
submitList
(
data
)
}
}
fun
setOnPinDoneListener
(
block
:
SingleBlock
<
Unit
>)
{
fun
setOnPinDoneListener
(
block
:
SingleBlock
<
Boolean
>)
{
listener
=
block
listener
=
block
}
}
...
...
app/src/main/res/color/nav_item_tint.xml
View file @
267301d2
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<selector
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<item
android:color=
"@color/
red_dark
"
android:state_checked=
"true"
/>
<item
android:color=
"@color/
primary110
"
android:state_checked=
"true"
/>
<item
android:color=
"?colorControlNormal"
/>
<item
android:color=
"?colorControlNormal"
/>
</selector>
</selector>
app/src/main/res/drawable/bgn_pin_btn.xml
View file @
267301d2
...
@@ -2,13 +2,13 @@
...
@@ -2,13 +2,13 @@
<selector
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<selector
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<item
android:state_pressed=
"true"
>
<item
android:state_pressed=
"true"
>
<shape
android:shape=
"oval"
>
<shape
android:shape=
"oval"
>
<solid
android:color=
"@color/
lang_bgn_dark
"
/>
<solid
android:color=
"@color/
grey80
"
/>
</shape>
</shape>
</item>
</item>
<item
android:state_pressed=
"false"
>
<item
android:state_pressed=
"false"
>
<shape
android:shape=
"oval"
>
<shape
android:shape=
"oval"
>
<solid
android:color=
"@color/
lang_bgn
"
/>
<solid
android:color=
"@color/
grey20
"
/>
</shape>
</shape>
</item>
</item>
</selector>
</selector>
\ No newline at end of file
app/src/main/res/drawable/bgn_pin_checked.xml
View file @
267301d2
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
<selector
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<selector
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<item>
<item>
<shape
android:shape=
"oval"
>
<shape
android:shape=
"oval"
>
<solid
android:color=
"@color/
red
"
/>
<solid
android:color=
"@color/
primary100
"
/>
</shape>
</shape>
</item>
</item>
</selector>
</selector>
\ No newline at end of file
app/src/main/res/drawable/bgn_ver_checked.xml
View file @
267301d2
...
@@ -4,7 +4,7 @@
...
@@ -4,7 +4,7 @@
<shape>
<shape>
<solid
android:color=
"@color/white"
/>
<solid
android:color=
"@color/white"
/>
<corners
android:radius=
"4dp"
/>
<corners
android:radius=
"4dp"
/>
<stroke
android:color=
"@color/
red
"
android:width=
"1dp"
/>
<stroke
android:color=
"@color/
primary100
"
android:width=
"1dp"
/>
</shape>
</shape>
</item>
</item>
</selector>
</selector>
\ No newline at end of file
app/src/main/res/drawable/bgn_ver_unchecked.xml
View file @
267301d2
...
@@ -4,7 +4,7 @@
...
@@ -4,7 +4,7 @@
<shape>
<shape>
<solid
android:color=
"@color/white"
/>
<solid
android:color=
"@color/white"
/>
<corners
android:radius=
"2dp"
/>
<corners
android:radius=
"2dp"
/>
<stroke
android:color=
"@color/
light
"
android:width=
"1dp"
/>
<stroke
android:color=
"@color/
grey80
"
android:width=
"1dp"
/>
</shape>
</shape>
</item>
</item>
</selector>
</selector>
\ No newline at end of file
app/src/main/res/drawable/button_default_bg.xml
View file @
267301d2
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<corners
android:radius=
"
10
dp"
/>
<corners
android:radius=
"
6
dp"
/>
<solid
android:color=
"@color/
red
"
/>
<solid
android:color=
"@color/
primary100
"
/>
</shape>
</shape>
\ No newline at end of file
app/src/main/res/drawable/button_false_bg.xml
View file @
267301d2
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<corners
android:radius=
"
10
dp"
/>
<corners
android:radius=
"
6
dp"
/>
<solid
android:color=
"@color/
red_disabled
"
/>
<solid
android:color=
"@color/
primary30
"
/>
</shape>
</shape>
\ No newline at end of file
app/src/main/res/drawable/button_selector.xml
View file @
267301d2
...
@@ -2,8 +2,8 @@
...
@@ -2,8 +2,8 @@
<selector
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<selector
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<item
android:state_pressed=
"true"
>
<item
android:state_pressed=
"true"
>
<shape>
<shape>
<corners
android:radius=
"
10
dp"
/>
<corners
android:radius=
"
6
dp"
/>
<solid
android:color=
"@color/
red_dark
"
/>
<solid
android:color=
"@color/
primary110
"
/>
</shape>
</shape>
</item>
</item>
...
...
app/src/main/res/drawable/edit_text_checked.xml
View file @
267301d2
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<stroke
<stroke
android:width=
"1.5dp"
android:width=
"1.5dp"
android:color=
"@color/
red
"
/>
android:color=
"@color/
primary100
"
/>
<corners
<corners
android:radius=
"6dp"
/>
android:radius=
"6dp"
/>
...
...
app/src/main/res/drawable/edit_text_unchecked.xml
View file @
267301d2
...
@@ -2,5 +2,5 @@
...
@@ -2,5 +2,5 @@
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<corners
<corners
android:radius=
"6dp"
/>
android:radius=
"6dp"
/>
<solid
android:color=
"@color/
lang_bgn
"
/>
<solid
android:color=
"@color/
grey20
"
/>
</shape>
</shape>
\ No newline at end of file
app/src/main/res/drawable/ic_baseline_arrow_back.xml
View file @
267301d2
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
android:height=
"24dp"
android:height=
"24dp"
android:viewportWidth=
"24"
android:viewportWidth=
"24"
android:viewportHeight=
"24"
android:viewportHeight=
"24"
android:tint=
"@color/
red
"
android:tint=
"@color/
primary100
"
android:autoMirrored=
"true"
>
android:autoMirrored=
"true"
>
<path
<path
android:fillColor=
"@android:color/white"
android:fillColor=
"@android:color/white"
...
...
app/src/main/res/drawable/ic_baseline_check_circle.xml
View file @
267301d2
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
android:height=
"16dp"
android:height=
"16dp"
android:viewportWidth=
"24"
android:viewportWidth=
"24"
android:viewportHeight=
"24"
android:viewportHeight=
"24"
android:tint=
"@color/green"
>
android:tint=
"@color/green
100
"
>
<path
<path
android:fillColor=
"@android:color/white"
android:fillColor=
"@android:color/white"
android:pathData=
"M12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM10,17l-5,-5 1.41,-1.41L10,14.17l7.59,-7.59L19,8l-9,9z"
/>
android:pathData=
"M12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM10,17l-5,-5 1.41,-1.41L10,14.17l7.59,-7.59L19,8l-9,9z"
/>
...
...
app/src/main/res/drawable/ic_baseline_keyboard_arrow_right.xml
View file @
267301d2
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
android:height=
"16dp"
android:height=
"16dp"
android:viewportWidth=
"24"
android:viewportWidth=
"24"
android:viewportHeight=
"24"
android:viewportHeight=
"24"
android:tint=
"@color/
red_dark
"
>
android:tint=
"@color/
primary110
"
>
<path
<path
android:fillColor=
"@android:color/holo_red_dark"
android:fillColor=
"@android:color/holo_red_dark"
android:pathData=
"M8.59,16.59L13.17,12 8.59,7.41 10,6l6,6 -6,6 -1.41,-1.41z"
/>
android:pathData=
"M8.59,16.59L13.17,12 8.59,7.41 10,6l6,6 -6,6 -1.41,-1.41z"
/>
...
...
app/src/main/res/drawable/ic_finger_print.xml
0 → 100644
View file @
267301d2
<vector
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:width=
"56dp"
android:height=
"56dp"
android:viewportWidth=
"56"
android:viewportHeight=
"56"
>
<path
android:pathData=
"M31,42.1018C31.2246,42.3531 31.4592,42.6018 31.706,42.8481C32.1775,43.3217 32.5454,43.6659 32.9256,43.9774C33.2588,44.25 33.5995,44.4963 34.0266,44.7827C35.1202,45.5163 36.2953,46 36.984,46C37.3173,46 37.7863,45.7475 37.9493,45.4774C38.1468,45.1508 38.1418,44.5729 37.9394,44.2701C37.7296,43.9624 37.4778,43.8242 36.9667,43.7413C35.53,43.5088 32.9428,41.3154 31.4271,39.0466C31.2888,38.8393 31.1432,38.5969 31,38.3406V42.1018Z"
android:fillColor=
"#969A97"
/>
<path
android:pathData=
"M31,31.033V28.2265C31.3678,28.0381 31.7628,27.8886 32.18,27.778C32.8614,27.5984 34.0266,27.577 34.7474,27.7328C35.8707,27.9753 36.9692,28.6084 37.7937,29.4903C39.0034,30.7868 39.5416,32.288 39.5416,34.3583C39.5416,35.1874 39.6798,35.798 40.0007,36.3306C40.1316,36.5467 40.292,36.7489 40.487,36.9487C41.1067,37.5806 41.7387,37.8469 42.62,37.8469C44.0419,37.8469 45.2121,36.8834 45.5898,35.3997C45.7873,34.6271 45.6786,32.7402 45.3478,31.1988C45.1232,30.1549 44.78,29.2001 44.2073,28.0255C41.6646,22.8234 36.3496,20.13 31,21.3284V19.032C31.5159,18.9365 32.0467,18.8662 32.5948,18.8209C34.2043,18.689 36.32,18.9667 37.8876,19.5157C43.3902,21.4453 47.2759,26.665 47.8362,32.8797C47.9424,34.0631 47.93,34.9412 47.7819,35.7138C47.7227,36.0178 47.6412,36.3067 47.54,36.5907C47.2709,37.3444 46.9525,37.8268 46.2464,38.5466C45.6811,39.1245 45.4984,39.264 44.9331,39.5429C44.5727,39.7225 44.0666,39.921 43.8074,39.9838C43.363,40.0931 42.7039,40.1245 42.1164,40.0805C41.8251,40.0579 41.551,40.0177 41.3289,39.9587C39.8946,39.5805 38.6504,38.5667 37.9616,37.2125C37.4926,36.2892 37.3938,35.8557 37.3272,34.3922C37.2901,33.5493 37.2284,32.9551 37.1544,32.7038C36.7693,31.3998 35.683,30.3044 34.4314,29.9614C33.95,29.8308 33.007,29.8584 32.5083,30.0179C31.9529,30.1976 31.432,30.5544 31,31.033Z"
android:fillColor=
"#969A97"
/>
<path
android:pathData=
"M31,16.8423C31.6863,16.7217 32.0714,16.7016 33.5279,16.7016C34.2265,16.7016 34.6783,16.7054 35.0338,16.723C35.4609,16.7444 35.7522,16.7858 36.1669,16.8624C38.9812,17.3762 41.6276,18.6212 43.7481,20.4252C44.627,21.1726 45.8514,22.493 46.5476,23.4402C46.8833,23.8975 47.2561,24.3334 47.3771,24.4075C48.0164,24.8057 48.9052,24.3309 48.9916,23.5445C49.036,23.1563 48.92,22.9113 48.2757,22.0344C45.1775,17.8122 40.6352,15.1175 35.6016,14.5158C34.5524,14.3914 32.3997,14.3926 31.3654,14.5208C31.2444,14.5359 31.121,14.5522 31,14.5698V16.8423Z"
android:fillColor=
"#969A97"
/>
<path
android:pathData=
"M31,12.4266C31.0592,12.4166 31.1185,12.4065 31.1777,12.3977C32.2936,12.2218 34.7622,12.2231 35.9126,12.4002C39.228,12.9103 42.183,14.2645 44.7504,16.4479C45.6046,17.174 45.8786,17.2984 46.3279,17.1614C46.8759,16.9943 47.2191,16.4228 47.1154,15.8449C47.0537,15.4956 46.439,14.8801 45.2491,13.9768C42.6002,11.9656 39.5885,10.6892 36.3274,10.193C35.3893,10.0498 32.8638,9.9505 32.0763,10.0259C31.7134,10.0611 31.3555,10.1038 31,10.1553V12.4266Z"
android:fillColor=
"#969A97"
/>
<path
android:pathData=
"M31,23.5382C31.4419,23.4176 31.9035,23.3234 32.3874,23.2505C32.5009,23.2329 33.123,23.2291 33.7698,23.243C34.7227,23.2618 35.0832,23.3007 35.6707,23.4414C36.7964,23.7128 37.737,24.0846 38.6059,24.6211C39.2922,25.0444 39.9316,25.5708 40.5833,26.2316C42.5138,28.1851 43.563,30.5682 43.6617,33.2314C43.6963,34.1435 43.6889,34.2339 43.5581,34.4462C43.1162,35.1522 42.0793,35.1309 41.6621,34.406C41.5634,34.2339 41.514,33.9575 41.472,33.3432C41.3807,32.0129 41.1289,31.0744 40.5562,29.93C39.2354,27.2894 36.7298,25.6123 33.9031,25.4778C32.8935,25.4301 31.9134,25.5758 31,25.8949V23.5382Z"
android:fillColor=
"#969A97"
/>
<path
android:pathData=
"M32.3775,32.8257C32.4392,32.5744 32.7552,32.2114 33.007,32.0995C33.1033,32.0568 33.1971,32.0292 33.2934,32.0166C33.5007,31.989 33.7081,32.0367 33.9451,32.1586C34.4043,32.396 34.5104,32.6435 34.5771,33.6121C34.6487,34.7138 34.9276,35.8017 35.3942,36.8231C35.6979,37.4889 36.0805,38.1258 36.5347,38.7188C37.8086,40.377 39.386,41.3908 40.924,41.5378C41.2894,41.573 41.5115,41.6207 41.6868,41.7237C41.7979,41.7878 41.8892,41.8732 41.9855,41.99C42.3336,42.4121 42.2916,43.0503 41.8868,43.4624C41.5807,43.7727 41.2351,43.8468 40.5265,43.7513C38.2282,43.4398 35.9176,41.8029 34.2808,39.3243C33.4563,38.0806 32.9058,36.7979 32.5873,35.3784C32.417,34.6271 32.296,33.1561 32.3775,32.8257Z"
android:fillColor=
"#969A97"
/>
<path
android:pathData=
"M27.966,35.5503C26.8783,36.6741 25.2987,37.2024 23.7838,36.8954C22.4883,36.6329 21.4758,35.9384 20.7124,34.7885C20.2858,34.1461 19.6335,33.8733 18.9627,34.0569C18.558,34.1676 18.0568,34.6939 17.9494,35.121C17.8036,35.6996 17.9632,36.1515 18.6108,36.9946C20.7755,39.813 24.616,40.7646 27.8309,39.2793C27.8759,39.2584 27.921,39.237 27.966,39.2149V35.5503ZM7.9008,12.4604C8.4751,11.313 9.6799,10.3714 10.9095,10.1088C11.2613,10.0336 12.1516,10.0099 14.7797,10.0056L18.1929,10L18.5629,10.1844C19.4295,10.6162 19.6537,11.7115 19.0257,12.4451C18.9259,12.5617 18.8529,12.6531 18.7641,12.725C18.4293,12.9965 17.8704,12.9916 14.8049,13.0228L11.3541,13.058L11.0791,13.2502C10.9278,13.3558 10.7249,13.5591 10.6283,13.7018L10.4525,13.9613L10.4172,17.4112C10.3918,19.877 10.3577,20.9152 10.2972,21.0508C10.2508,21.155 10.0971,21.3684 9.9557,21.5249C9.277,22.2762 8.0392,22.0922 7.5806,21.1718L7.3945,20.7983L7.3957,17.4203C7.3971,13.5884 7.4127,13.4358 7.9008,12.4604ZM15.0506,19.8566C15.2193,19.5286 15.5126,19.2479 15.8304,19.1103C16.5373,18.804 17.3997,19.151 17.7357,19.8769C17.9271,20.2904 17.9271,22.2051 17.7357,22.6186C17.2017,23.7722 15.6396,23.784 15.0506,22.639C14.935,22.4142 14.9165,22.2221 14.9165,21.2478C14.9165,20.2734 14.935,20.0814 15.0506,19.8566ZM24.0666,19.8066C24.2258,19.519 24.5329,19.2383 24.8286,19.1103C25.5355,18.804 26.3979,19.151 26.7339,19.8769C26.856,20.1407 26.8642,20.4192 26.8646,24.376C26.865,27.9139 26.8478,28.6676 26.7578,29.0509C26.3783,30.6659 24.9547,32.0475 23.3171,32.3901C22.6187,32.5362 20.6978,32.5338 20.3448,32.3863C19.7849,32.1525 19.4156,31.6094 19.4156,31.0198C19.4156,30.3984 19.6841,29.9473 20.224,29.6618C20.4682,29.5326 20.6639,29.5081 21.712,29.4754C22.9169,29.4376 22.9193,29.4372 23.2234,29.2235C23.391,29.1058 23.6071,28.8685 23.7038,28.6963L23.8795,28.3831L23.9147,24.2003C23.946,20.4762 23.9626,19.9944 24.0666,19.8066ZM7.5789,34.8244C7.7761,34.4287 8.1334,34.1361 8.5359,34.0406C8.8799,33.959 8.9544,33.9624 9.3423,34.0777C9.7151,34.1884 10.1279,34.562 10.2972,34.942C10.3577,35.0776 10.3918,36.116 10.4172,38.5825L10.4525,42.0333L10.6447,42.3083C10.7504,42.4596 10.9537,42.6624 11.0964,42.7591L11.3559,42.9348L14.8057,42.97C17.8705,43.0012 18.4293,42.9963 18.7641,43.2678C18.8529,43.3397 18.9259,43.4311 19.0257,43.5477C19.6585,44.2869 19.4281,45.3841 18.5499,45.8138L18.1692,46L14.592,45.9772C11.1228,45.9552 11.0011,45.9498 10.558,45.7998C9.4214,45.415 8.4134,44.5547 7.9012,43.5324C7.4127,42.5574 7.3971,42.4049 7.3957,38.5725L7.3945,35.1945L7.5789,34.8244Z"
android:fillColor=
"#969A97"
android:fillType=
"evenOdd"
/>
</vector>
app/src/main/res/drawable/ic_image_language.xml
0 → 100644
View file @
267301d2
<vector
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:width=
"22dp"
android:height=
"22dp"
android:viewportWidth=
"22"
android:viewportHeight=
"22"
>
<path
android:pathData=
"M1.9822,0.5402C1.2782,0.6785 0.6797,1.2895 0.5433,2.0093C0.4856,2.3138 0.4856,15.9494 0.5433,16.2539C0.683,16.9907 1.2778,17.5857 2.0143,17.7255C2.1502,17.7513 3.2548,17.7673 4.8874,17.7673H7.5397L7.6336,18.5776C7.7936,19.9573 7.8273,20.138 7.9856,20.4604C8.1418,20.7785 8.4957,21.1476 8.7874,21.2965C9.1917,21.5028 9.0926,21.4993 14.6136,21.5C17.9486,21.5004 19.8428,21.4858 19.9857,21.4587C20.7222,21.319 21.317,20.724 21.4567,19.9872C21.5144,19.6827 21.5144,6.0471 21.4567,5.7426C21.3352,5.1016 20.9122,4.6016 20.2726,4.3427L20.0427,4.2496L15.4095,4.2291L10.7763,4.2086L10.6438,3.142C10.5709,2.5553 10.4912,1.9946 10.4667,1.8959C10.357,1.4544 9.965,0.9434 9.5713,0.7291C9.1445,0.4967 9.1451,0.4967 5.5047,0.5009C3.6664,0.5031 2.0813,0.5208 1.9822,0.5402ZM9.0219,1.8427C9.0955,1.8952 9.1849,1.9946 9.2206,2.0635C9.2656,2.1506 9.5536,4.349 10.1621,9.2499C10.6444,13.1335 11.0481,16.3617 11.0594,16.4238L11.08,16.5366H6.6503C2.2917,16.5366 2.218,16.5353 2.0587,16.454C1.9545,16.4008 1.8674,16.3137 1.8143,16.2095C1.7325,16.0491 1.7317,15.982 1.7317,9.1316C1.7317,2.284 1.7326,2.214 1.8142,2.0539C1.8644,1.9554 1.9566,1.8604 2.05,1.8108C2.1997,1.7314 2.2826,1.7297 5.5457,1.7383L8.888,1.7471L9.0219,1.8427ZM5.2176,4.9087C4.919,5.0334 4.9325,4.9848 4.2482,8.402C3.9017,10.1324 3.6182,11.5914 3.6182,11.6441C3.6182,11.927 3.9359,12.229 4.2333,12.229C4.4334,12.229 4.6734,12.0838 4.7597,11.9105C4.8016,11.8262 4.9244,11.3095 5.0325,10.7623L5.2291,9.7675H6.0788H6.9285L7.1251,10.7623C7.2332,11.3095 7.356,11.8262 7.3979,11.9105C7.4842,12.0838 7.7242,12.229 7.9243,12.229C8.2217,12.229 8.5394,11.927 8.5394,11.6441C8.5394,11.5914 8.2559,10.1324 7.9094,8.402C7.2215,4.9672 7.2396,5.0314 6.9289,4.9066C6.7129,4.8198 5.4266,4.8214 5.2176,4.9087ZM19.9412,5.5425C20.0455,5.5956 20.1326,5.6828 20.1857,5.787C20.2675,5.9474 20.2683,6.0145 20.2683,12.8649C20.2683,19.7153 20.2675,19.7824 20.1857,19.9427C20.1325,20.0471 20.0455,20.1341 19.941,20.1874C19.7806,20.2692 19.7226,20.2701 14.8418,20.2598L9.9049,20.2493L11.1093,18.8554C11.9223,17.9144 12.3263,17.4157 12.3525,17.3207C12.3828,17.211 12.2333,15.9062 11.6756,11.4122C11.282,8.24 10.953,5.6029 10.9446,5.5522L10.9293,5.4599H15.3544C19.7084,5.4599 19.782,5.4612 19.9412,5.5425ZM6.4358,7.306L6.6817,8.5367H6.0788H5.4759L5.7218,7.306L5.9678,6.0753H6.0788H6.1898L6.4358,7.306ZM15.6243,8.6213C15.3886,8.7458 15.3061,8.9469 15.3061,9.3966V9.7675H14.3202C13.413,9.7675 13.3214,9.7741 13.1725,9.8501C12.9905,9.943 12.8455,10.1793 12.8455,10.3829C12.8455,10.6991 13.1488,10.9982 13.4696,10.9982C13.5995,10.9982 13.6087,11.0091 13.7031,11.2752C13.9682,12.0221 14.3873,12.8035 14.8418,13.3982L15.0613,13.6854L14.8658,13.8634C14.7583,13.9613 14.4288,14.2345 14.1337,14.4705C13.7817,14.7519 13.5735,14.9488 13.5288,15.0426C13.2831,15.558 13.8336,16.1122 14.3341,15.8533C14.4747,15.7806 14.9876,15.3797 15.5503,14.9025C15.7411,14.7408 15.908,14.6084 15.9212,14.6084C15.9344,14.6084 16.1013,14.7408 16.2921,14.9025C16.8548,15.3797 17.3677,15.7806 17.5083,15.8533C17.8877,16.0496 18.3818,15.7416 18.3818,15.3089C18.3818,15.0626 18.2607,14.9118 17.7087,14.4705C17.4136,14.2345 17.0841,13.9613 16.9766,13.8634L16.7811,13.6854L17.0006,13.3982C17.4551,12.8035 17.8742,12.0221 18.1393,11.2752C18.2337,11.0091 18.2429,10.9982 18.3728,10.9982C18.6936,10.9982 18.997,10.6991 18.997,10.3829C18.997,10.1793 18.8519,9.943 18.6699,9.8501C18.521,9.7741 18.4294,9.7675 17.5222,9.7675H16.5364V9.3966C16.5364,8.9396 16.4542,8.7443 16.2093,8.6193C16.0073,8.5162 15.8222,8.5168 15.6243,8.6213ZM16.9049,11.0495C16.9027,11.239 16.0278,12.7623 15.9212,12.7623C15.8146,12.7623 14.9397,11.239 14.9375,11.0495C14.9371,11.0099 15.1608,10.9982 15.9212,10.9982C16.6816,10.9982 16.9053,11.0099 16.9049,11.0495ZM9.7388,18.5604C9.3611,18.9966 9.0336,19.3572 9.011,19.3618C8.9765,19.3687 8.798,18.1641 8.7884,17.8596L8.7855,17.7673H9.6055H10.4256L9.7388,18.5604Z"
android:fillColor=
"#B6B6B6"
android:fillType=
"evenOdd"
/>
</vector>
app/src/main/res/drawable/ic_image_support.xml
0 → 100644
View file @
267301d2
<vector
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:width=
"18dp"
android:height=
"22dp"
android:viewportWidth=
"18"
android:viewportHeight=
"22"
>
<path
android:pathData=
"M8.1414,0.5286C5.1502,0.893 2.7447,2.7432 1.6854,5.4944C1.6203,5.6638 1.5062,5.9039 1.4319,6.0281C1.1685,6.4689 1.1625,6.5132 1.1457,8.155C1.1359,9.1167 1.1466,9.7495 1.1758,9.9382C1.2891,10.67 1.7953,11.2674 2.4983,11.4987C2.7227,11.5725 2.8874,11.5852 3.8333,11.6014L4.9124,11.62L5.2877,11.9976C5.4941,12.2053 5.7892,12.4649 5.9436,12.5744L6.2242,12.7736L5.8412,12.9092C5.0072,13.2045 3.9078,13.8251 3.207,14.3963C1.8049,15.5391 0.6781,17.28 0.1533,19.1144C-0.0058,19.6703 -0.0301,19.8802 0.0304,20.1735C0.1653,20.8278 0.646,21.3317 1.2589,21.4615C1.4267,21.497 3.436,21.5059 9.1247,21.4965L16.765,21.4838L17.0005,21.3886C17.5088,21.1829 17.9352,20.612 17.9944,20.0578C18.0441,19.5932 17.7585,18.6255 17.2705,17.6045C16.9308,16.894 16.7205,16.5445 16.27,15.9419C15.6431,15.1036 15.0261,14.5125 14.1808,13.9404C13.4725,13.4611 12.8548,13.1499 12.0473,12.8657L11.7951,12.7768L12.1227,12.5343C12.3028,12.4009 12.5949,12.1386 12.7718,11.9514L13.0933,11.611L14.0074,11.6102C15.0738,11.6093 15.4002,11.5711 15.7527,11.4061C16.275,11.1615 16.7213,10.5833 16.8265,10.0147C16.8842,9.7034 16.8797,6.9107 16.8212,6.6356C16.7749,6.4181 16.6571,6.1343 16.5008,5.8639C16.4552,5.7849 16.324,5.4955 16.2093,5.2209C15.7479,4.1164 14.9896,3.0807 14.0859,2.3209C13.0222,1.4267 11.7829,0.855 10.3681,0.6061C9.8146,0.5086 8.6407,0.4678 8.1414,0.5286ZM10.3308,1.8373C11.6944,2.1191 12.8321,2.7469 13.7804,3.7411C14.1119,4.0886 14.7372,4.9408 14.7372,5.045C14.7372,5.0682 14.4081,5.0839 13.9238,5.0839H13.1104L12.8624,4.8043C12.172,4.0259 11.1834,3.4619 10.1079,3.2328C9.5899,3.1225 8.5928,3.1013 8.1005,3.1901C6.936,3.4003 5.8427,4.0092 5.1262,4.8468L4.9255,5.0814L4.0915,5.0827C3.4071,5.0837 3.2614,5.0739 3.2788,5.0284C3.2905,4.9979 3.3817,4.8454 3.4815,4.6897C4.4848,3.1233 6.0894,2.0929 8.0156,1.778C8.5297,1.6939 9.7935,1.7263 10.3308,1.8373ZM10.0401,4.4629C12.0427,4.999 13.3643,7.1744 12.9115,9.189C12.8785,9.3358 12.8316,9.5055 12.8072,9.5662L12.7629,9.6765L11.4661,9.6893C10.2484,9.7014 10.1607,9.7073 10.0274,9.7857C9.6267,10.0216 9.6267,10.6143 10.0274,10.8502C10.1564,10.9261 10.2522,10.9349 11.0808,10.9474C11.5822,10.9549 11.9924,10.9764 11.9924,10.9952C11.9924,11.0473 11.5092,11.4767 11.2549,11.6507C10.4957,12.1703 9.6174,12.3931 8.6763,12.3048C8.1776,12.258 7.7632,12.1427 7.2943,11.9204C6.8225,11.6968 6.6089,11.5497 6.2243,11.1836C5.714,10.6979 5.3802,10.1517 5.1631,9.4472C5.0594,9.1107 5.052,9.0367 5.053,8.3475C5.0539,7.6638 5.0622,7.5816 5.1641,7.2478C5.6185,5.7597 6.7891,4.6926 8.2848,4.403C8.7071,4.3212 9.6285,4.3526 10.0401,4.4629ZM4.1676,6.3336C4.1676,6.3436 4.113,6.515 4.0464,6.7145C3.7142,7.7079 3.7154,8.9572 4.0494,9.983C4.1144,10.1825 4.1676,10.3551 4.1676,10.3664C4.1676,10.3777 3.8865,10.3804 3.5429,10.3725C2.8209,10.3559 2.6739,10.309 2.4945,10.0375L2.3855,9.8725L2.3729,8.446C2.3596,6.9524 2.3739,6.789 2.5361,6.5825C2.7061,6.3659 2.8936,6.3173 3.5633,6.3163C3.8957,6.3159 4.1676,6.3236 4.1676,6.3336ZM15.1994,6.372C15.3588,6.4403 15.5356,6.6227 15.5949,6.7799C15.6227,6.8538 15.6381,7.417 15.6375,8.3399C15.6365,9.9936 15.6304,10.0287 15.3067,10.2434C15.137,10.3559 15.1151,10.3594 14.4841,10.3736C14.1276,10.3816 13.8359,10.3802 13.8359,10.3705C13.8359,10.3608 13.8825,10.2157 13.9396,10.048C14.3237,8.9188 14.3162,7.6022 13.9198,6.5571C13.8737,6.4355 13.8359,6.3313 13.8359,6.3257C13.8359,6.3201 14.113,6.3155 14.4517,6.3155C14.8835,6.3155 15.1069,6.3323 15.1994,6.372ZM10.0955,13.6858C10.6973,13.7645 11.3215,13.915 11.8285,14.1036C14.2337,14.9983 15.9565,16.9041 16.6675,19.4565C16.7771,19.8498 16.7868,19.9242 16.7427,20.0309C16.6357,20.2898 17.1792,20.2728 9.0017,20.2728C0.8286,20.2728 1.3677,20.2896 1.2613,20.0323C1.2184,19.9285 1.2269,19.8533 1.3206,19.507C2.015,16.9428 3.7588,15.008 6.183,14.1122C7.3579,13.678 8.8188,13.5188 10.0955,13.6858Z"
android:fillColor=
"#B6B6B6"
android:fillType=
"evenOdd"
/>
</vector>
app/src/main/res/drawable/ic_log_out.xml
0 → 100644
View file @
267301d2
<vector
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:width=
"24dp"
android:height=
"24dp"
android:viewportWidth=
"24"
android:viewportHeight=
"24"
>
<path
android:pathData=
"M6,2H15C15.5304,2 16.0391,2.2107 16.4142,2.5858C16.7893,2.9609 17,3.4696 17,4V6H15V4H6V20H15V18H17V20C17,20.5304 16.7893,21.0391 16.4142,21.4142C16.0391,21.7893 15.5304,22 15,22H6C5.4696,22 4.9609,21.7893 4.5858,21.4142C4.2107,21.0391 4,20.5304 4,20V4C4,3.4696 4.2107,2.9609 4.5858,2.5858C4.9609,2.2107 5.4696,2 6,2Z"
android:fillColor=
"#E62229"
/>
<path
android:pathData=
"M16.09,15.59L17.5,17L22.5,12L17.5,7L16.09,8.41L18.67,11H9V13H18.67L16.09,15.59Z"
android:fillColor=
"#E62229"
/>
</vector>
app/src/main/res/drawable/ic_pin_checked.xml
0 → 100644
View file @
267301d2
<vector
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:width=
"16dp"
android:height=
"16dp"
android:viewportWidth=
"16"
android:viewportHeight=
"16"
>
<path
android:pathData=
"M8,0L8,0A8,8 0,0 1,16 8L16,8A8,8 0,0 1,8 16L8,16A8,8 0,0 1,0 8L0,8A8,8 0,0 1,8 0z"
android:fillColor=
"#E7E1DD"
/>
<path
android:pathData=
"M8,8m-6,0a6,6 0,1 1,12 0a6,6 0,1 1,-12 0"
android:fillColor=
"#E62229"
/>
</vector>
app/src/main/res/drawable/ic_pin_unchecked.xml
0 → 100644
View file @
267301d2
<vector
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:width=
"16dp"
android:height=
"16dp"
android:viewportWidth=
"16"
android:viewportHeight=
"16"
>
<path
android:pathData=
"M8,0L8,0A8,8 0,0 1,16 8L16,8A8,8 0,0 1,8 16L8,16A8,8 0,0 1,0 8L0,8A8,8 0,0 1,8 0z"
android:fillColor=
"#E7E1DD"
/>
</vector>
app/src/main/res/drawable/ic_safety.xml
0 → 100644
View file @
267301d2
<vector
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:width=
"20dp"
android:height=
"22dp"
android:viewportWidth=
"20"
android:viewportHeight=
"22"
>
<path
android:pathData=
"M9.7409,0.029C9.6817,0.0495 7.7157,0.8635 5.3719,1.8376C2.037,3.2238 1.0803,3.6382 0.9712,3.7439C0.6862,4.02 0.6929,3.9343 0.7139,7.031C0.7334,9.9215 0.749,10.2106 0.9398,11.2236C1.4831,14.1083 2.8709,16.7443 4.9307,18.8044C6.1696,20.0435 7.5436,20.9944 9.2028,21.7613C9.6619,21.9735 9.7505,22 9.9991,22C10.2476,22 10.3384,21.9728 10.8103,21.757C15.6517,19.5435 18.8393,14.9751 19.2534,9.657C19.2772,9.3517 19.2962,7.9958 19.2957,6.6439C19.2948,4.3432 19.2896,4.1749 19.215,4.0138C19.1712,3.9191 19.0786,3.7884 19.0094,3.7235C18.9225,3.6419 17.5531,3.0521 14.5812,1.8164C10.1871,-0.0109 10.0262,-0.0703 9.7409,0.029ZM13.8085,3.3603L17.5533,4.9191L17.5511,7.3288C17.5491,9.6077 17.5437,9.7725 17.4521,10.3627C17.3989,10.706 17.3086,11.1903 17.2516,11.4388C16.3919,15.1849 13.884,18.3439 10.4348,20.0255L9.9946,20.2401L9.4266,19.9529C5.9415,18.1906 3.4565,14.9547 2.6837,11.1721C2.4638,10.0954 2.4457,9.8011 2.4453,7.2865L2.4449,4.9206L6.1897,3.3619C8.2494,2.5046 9.9636,1.8029 9.9991,1.8025C10.0346,1.802 11.7489,2.5031 13.8085,3.3603ZM13.0122,7.6331C12.918,7.6736 12.1484,8.41 10.9576,9.5993L9.0536,11.5006L8.0952,10.5506C7.3169,9.7791 7.0984,9.5862 6.9326,9.524C6.2798,9.2791 5.6396,9.888 5.8235,10.5788C5.8692,10.75 6.0206,10.9181 7.173,12.0762C7.8869,12.7938 8.5388,13.423 8.6216,13.4745C8.8146,13.5946 9.2196,13.6041 9.4409,13.4937C9.5246,13.452 10.6113,12.3964 11.856,11.1478C13.9462,9.0511 14.1231,8.8622 14.1733,8.6749C14.3639,7.964 13.6765,7.3472 13.0122,7.6331Z"
android:fillColor=
"#B6B6B6"
android:fillType=
"evenOdd"
/>
</vector>
app/src/main/res/drawable/ic_user.png
0 → 100644
View file @
267301d2
18.6 KB
app/src/main/res/layout/activity_pin.xml
deleted
100644 → 0
View file @
a4a65342
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:tools=
"http://schemas.android.com/tools"
android:layout_width=
"match_parent"
android:gravity=
"center"
android:layout_height=
"match_parent"
tools:context=
".dev.PinActivity"
>
<com.chaos.view.PinView
android:id=
"@+id/firstPinView"
style=
"@style/PinWidget.PinView"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:cursorVisible=
"true"
android:hint=
"*****"
android:inputType=
"text"
android:padding=
"@dimen/_1sdp"
android:textColor=
"@color/black"
android:textSize=
"18sp"
android:textStyle=
"bold"
app:cursorColor=
"@color/teal_200"
app:cursorWidth=
"2dp"
app:hideLineWhenFilled=
"true"
app:itemCount=
"5"
app:itemHeight=
"48dp"
app:itemRadius=
"4dp"
app:itemSpacing=
"0dp"
app:itemWidth=
"48dp"
app:lineColor=
"@color/teal_700"
app:lineWidth=
"2dp"
app:viewType=
"rectangle"
/>
</LinearLayout>
\ No newline at end of file
app/src/main/res/layout/fragment_biometric.xml
View file @
267301d2
...
@@ -30,9 +30,8 @@
...
@@ -30,9 +30,8 @@
android:background=
"?android:selectableItemBackground"
android:background=
"?android:selectableItemBackground"
android:padding=
"@dimen/_4sdp"
android:padding=
"@dimen/_4sdp"
android:text=
"@string/skip"
android:text=
"@string/skip"
android:textColor=
"@color/red_dark"
android:textColor=
"@color/primary100"
android:textSize=
"16sp"
android:textSize=
"16sp"
/>
android:textStyle=
"bold"
/>
</FrameLayout>
</FrameLayout>
...
@@ -55,7 +54,7 @@
...
@@ -55,7 +54,7 @@
android:layout_marginHorizontal=
"@dimen/_12sdp"
android:layout_marginHorizontal=
"@dimen/_12sdp"
android:layout_marginTop=
"@dimen/_12sdp"
android:layout_marginTop=
"@dimen/_12sdp"
android:text=
"@string/biometric_enter"
android:text=
"@string/biometric_enter"
android:textSize=
"
@dimen/_20sd
p"
android:textSize=
"
29s
p"
android:textStyle=
"bold"
/>
android:textStyle=
"bold"
/>
<TextView
<TextView
...
@@ -65,8 +64,8 @@
...
@@ -65,8 +64,8 @@
android:layout_marginHorizontal=
"@dimen/_12sdp"
android:layout_marginHorizontal=
"@dimen/_12sdp"
android:layout_marginTop=
"@dimen/_12sdp"
android:layout_marginTop=
"@dimen/_12sdp"
android:text=
"@string/subtitle_biometric"
android:text=
"@string/subtitle_biometric"
android:textColor=
"@color/
text_color_77
"
android:textColor=
"@color/
grey100
"
android:textSize=
"
@dimen/_14sd
p"
/>
android:textSize=
"
18s
p"
/>
<LinearLayout
<LinearLayout
...
@@ -81,12 +80,13 @@
...
@@ -81,12 +80,13 @@
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_weight=
"1"
android:layout_weight=
"1"
android:textSize=
"17sp"
android:textSize=
"17sp"
android:text
=
"@string/avtorization
"
android:text
Color=
"@color/black100
"
android:text
Style=
"bold
"
/>
android:text
=
"@string/avtorization
"
/>
<Switch
<Switch
android:id=
"@+id/btn_switch"
android:id=
"@+id/btn_switch"
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:checked=
"true"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
tools:ignore=
"UseSwitchCompatOrMaterialXml"
/>
tools:ignore=
"UseSwitchCompatOrMaterialXml"
/>
</LinearLayout>
</LinearLayout>
...
@@ -100,7 +100,7 @@
...
@@ -100,7 +100,7 @@
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center"
android:layout_gravity=
"center"
android:textSize=
"1
5
sp"
android:textSize=
"1
4
sp"
android:layout_marginHorizontal=
"@dimen/_12sdp"
android:layout_marginHorizontal=
"@dimen/_12sdp"
android:text=
"@string/change_all_time"
android:text=
"@string/change_all_time"
/>
/>
...
@@ -125,7 +125,7 @@
...
@@ -125,7 +125,7 @@
android:textSize=
"16sp"
android:textSize=
"16sp"
android:text=
"@string/continuoue"
android:text=
"@string/continuoue"
android:textAllCaps=
"false"
android:textAllCaps=
"false"
android:textColor=
"@color/
red
"
android:textColor=
"@color/
primary100
"
app:backgroundTint=
"@color/white"
/>
app:backgroundTint=
"@color/white"
/>
</LinearLayout>
</LinearLayout>
...
...
app/src/main/res/layout/fragment_check_phone.xml
View file @
267301d2
...
@@ -21,7 +21,7 @@
...
@@ -21,7 +21,7 @@
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginTop=
"@dimen/_14sdp"
android:layout_marginTop=
"@dimen/_14sdp"
android:text=
"@string/enter_number"
android:text=
"@string/enter_number"
android:textSize=
"
@dimen/_18sd
p"
android:textSize=
"
29s
p"
android:textStyle=
"bold"
/>
android:textStyle=
"bold"
/>
<LinearLayout
<LinearLayout
...
@@ -35,10 +35,10 @@
...
@@ -35,10 +35,10 @@
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"@string/phone"
android:text=
"@string/phone"
android:textSize=
"15sp"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_gravity=
"start"
android:layout_gravity=
"start"
android:textColor=
"@color/light"
android:textColor=
"@color/black75"
android:textStyle=
"bold"
/>
/>
<com.google.android.material.textfield.TextInputLayout
<com.google.android.material.textfield.TextInputLayout
...
@@ -53,27 +53,16 @@
...
@@ -53,27 +53,16 @@
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:id=
"@+id/input_phone"
android:id=
"@+id/input_phone"
android:inputType=
"phone"
android:inputType=
"phone"
android:textStyle=
"bold"
android:imeOptions=
"actionDone"
android:imeOptions=
"actionDone"
app:mask=
"+998 ** *** ** **"
app:mask=
"+998 ** *** ** **"
app:notMaskedSymbol=
"*"
app:notMaskedSymbol=
"*"
android:textSize=
"
@dimen/_12sd
p"
android:textSize=
"
17s
p"
android:padding=
"@dimen/_14sdp"
android:padding=
"@dimen/_14sdp"
android:background=
"@drawable/edit_text_
bgn
"
android:background=
"@drawable/edit_text_
unchecked
"
android:layout_height=
"match_parent"
/>
android:layout_height=
"match_parent"
/>
</com.google.android.material.textfield.TextInputLayout>
</com.google.android.material.textfield.TextInputLayout>
<TextView
android:id=
"@+id/helper_phone"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"@string/phone"
android:visibility=
"gone"
android:textStyle=
"bold"
android:layout_marginTop=
"@dimen/_4sdp"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_gravity=
"start"
android:textColor=
"@color/red"
/>
</LinearLayout>
</LinearLayout>
<LinearLayout
<LinearLayout
...
...
app/src/main/res/layout/fragment_forget_password.xml
View file @
267301d2
...
@@ -21,7 +21,7 @@
...
@@ -21,7 +21,7 @@
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginTop=
"@dimen/_14sdp"
android:layout_marginTop=
"@dimen/_14sdp"
android:text=
"@string/enter_number"
android:text=
"@string/enter_number"
android:textSize=
"
@dimen/_16sd
p"
android:textSize=
"
29s
p"
android:textStyle=
"bold"
android:textStyle=
"bold"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@id/toolbar"
/>
app:layout_constraintTop_toBottomOf=
"@id/toolbar"
/>
...
@@ -31,7 +31,7 @@
...
@@ -31,7 +31,7 @@
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"@string/phone"
android:text=
"@string/phone"
android:textColor=
"@color/
light
"
android:textColor=
"@color/
black75
"
android:textStyle=
"bold"
android:textStyle=
"bold"
app:layout_constraintBottom_toTopOf=
"@id/layout_input"
app:layout_constraintBottom_toTopOf=
"@id/layout_input"
app:layout_constraintStart_toStartOf=
"@id/layout_input"
/>
app:layout_constraintStart_toStartOf=
"@id/layout_input"
/>
...
@@ -52,10 +52,11 @@
...
@@ -52,10 +52,11 @@
android:inputType=
"phone"
android:inputType=
"phone"
android:imeOptions=
"actionDone"
android:imeOptions=
"actionDone"
app:mask=
"+998 ** *** ** **"
app:mask=
"+998 ** *** ** **"
android:textColor=
"@color/black"
app:notMaskedSymbol=
"*"
app:notMaskedSymbol=
"*"
android:textSize=
"
@dimen/_12sd
p"
android:textSize=
"
17s
p"
android:padding=
"@dimen/_14sdp"
android:padding=
"@dimen/_14sdp"
android:background=
"@drawable/edit_text_
bgn
"
android:background=
"@drawable/edit_text_
unchecked
"
android:layout_height=
"match_parent"
/>
android:layout_height=
"match_parent"
/>
</com.google.android.material.textfield.TextInputLayout>
</com.google.android.material.textfield.TextInputLayout>
...
...
app/src/main/res/layout/fragment_login.xml
View file @
267301d2
...
@@ -22,7 +22,7 @@
...
@@ -22,7 +22,7 @@
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginTop=
"@dimen/_14sdp"
android:layout_marginTop=
"@dimen/_14sdp"
android:text=
"@string/enter"
android:text=
"@string/enter"
android:textSize=
"
@dimen/_18sd
p"
android:textSize=
"
29s
p"
android:textStyle=
"bold"
android:textStyle=
"bold"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintBottom_toTopOf=
"@id/txt_hint_password"
app:layout_constraintBottom_toTopOf=
"@id/txt_hint_password"
...
@@ -33,11 +33,10 @@
...
@@ -33,11 +33,10 @@
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginTop=
"@dimen/_14sdp"
android:layout_marginTop=
"24dp"
android:layout_marginBottom=
"@dimen/_4sdp"
android:text=
"@string/phone"
android:text=
"@string/phone"
android:text
Color=
"@color/black
"
android:text
Size=
"14sp
"
android:text
Style=
"bold
"
android:text
Color=
"@color/black75
"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintBottom_toTopOf=
"@id/layout_input_password"
app:layout_constraintBottom_toTopOf=
"@id/layout_input_password"
app:layout_constraintTop_toBottomOf=
"@id/txt_enter_phone"
/>
app:layout_constraintTop_toBottomOf=
"@id/txt_enter_phone"
/>
...
@@ -49,7 +48,6 @@
...
@@ -49,7 +48,6 @@
android:layout_gravity=
"center"
android:layout_gravity=
"center"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginEnd=
"@dimen/_12sdp"
android:layout_marginEnd=
"@dimen/_12sdp"
android:layout_marginBottom=
"@dimen/_140sdp"
app:layout_constraintBottom_toTopOf=
"@id/txt_hint_password"
app:layout_constraintBottom_toTopOf=
"@id/txt_hint_password"
app:layout_constraintTop_toBottomOf=
"@id/txt_hint_password"
>
app:layout_constraintTop_toBottomOf=
"@id/txt_hint_password"
>
...
@@ -60,7 +58,8 @@
...
@@ -60,7 +58,8 @@
android:clickable=
"false"
android:clickable=
"false"
android:focusable=
"false"
android:focusable=
"false"
android:textSize=
"@dimen/_12sdp"
android:textSize=
"@dimen/_12sdp"
android:background=
"@drawable/edit_text_bgn"
android:textStyle=
"bold"
android:background=
"@drawable/edit_text_unchecked"
android:imeOptions=
"actionNext"
android:imeOptions=
"actionNext"
android:inputType=
"phone"
android:inputType=
"phone"
android:paddingVertical=
"@dimen/_12sdp"
android:paddingVertical=
"@dimen/_12sdp"
...
@@ -79,7 +78,7 @@
...
@@ -79,7 +78,7 @@
android:layout_marginTop=
"@dimen/_4sdp"
android:layout_marginTop=
"@dimen/_4sdp"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_gravity=
"start"
android:layout_gravity=
"start"
android:textColor=
"@color/
red
"
android:textColor=
"@color/
primary100
"
/>
/>
...
@@ -87,11 +86,10 @@
...
@@ -87,11 +86,10 @@
android:id=
"@+id/txt_hint_confirm"
android:id=
"@+id/txt_hint_confirm"
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/_34sdp"
android:layout_marginTop=
"20dp"
android:layout_marginBottom=
"@dimen/_4sdp"
android:text=
"@string/password"
android:text=
"@string/password"
android:text
Color=
"@color/black
"
android:text
Size=
"14sp
"
android:text
Style=
"bold
"
android:text
Color=
"@color/black75
"
app:layout_constraintStart_toStartOf=
"@id/layout_input_confirm"
app:layout_constraintStart_toStartOf=
"@id/layout_input_confirm"
app:layout_constraintTop_toBottomOf=
"@id/layout_input_password"
/>
app:layout_constraintTop_toBottomOf=
"@id/layout_input_password"
/>
...
@@ -109,7 +107,7 @@
...
@@ -109,7 +107,7 @@
android:id=
"@+id/input_password"
android:id=
"@+id/input_password"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:layout_height=
"match_parent"
android:background=
"@drawable/edit_text_
bgn
"
android:background=
"@drawable/edit_text_
unchecked
"
android:imeOptions=
"actionDone"
android:imeOptions=
"actionDone"
android:inputType=
"numberPassword"
android:inputType=
"numberPassword"
android:maxLength=
"7"
android:maxLength=
"7"
...
@@ -130,7 +128,7 @@
...
@@ -130,7 +128,7 @@
android:layout_marginTop=
"@dimen/_4sdp"
android:layout_marginTop=
"@dimen/_4sdp"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_gravity=
"start"
android:layout_gravity=
"start"
android:textColor=
"@color/
red
"
android:textColor=
"@color/
primary100
"
/>
/>
<TextView
<TextView
...
@@ -138,9 +136,10 @@
...
@@ -138,9 +136,10 @@
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:padding=
"@dimen/_6sdp"
android:padding=
"@dimen/_6sdp"
android:textSize=
"16sp"
android:text=
"@string/forget_password"
android:text=
"@string/forget_password"
android:background=
"?android:selectableItemBackground"
android:background=
"?android:selectableItemBackground"
android:textColor=
"@color/
light_dark
"
android:textColor=
"@color/
grey110
"
android:textStyle=
"bold"
android:textStyle=
"bold"
android:layout_marginTop=
"@dimen/_10sdp"
android:layout_marginTop=
"@dimen/_10sdp"
android:layout_marginEnd=
"@dimen/_10sdp"
android:layout_marginEnd=
"@dimen/_10sdp"
...
@@ -152,10 +151,11 @@
...
@@ -152,10 +151,11 @@
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:padding=
"@dimen/_6sdp"
android:padding=
"@dimen/_6sdp"
android:textSize=
"13sp"
android:text=
"@string/helper_mobiuz"
android:text=
"@string/helper_mobiuz"
android:background=
"?android:selectableItemBackground"
android:textColor=
"@color/black100"
android:textColor=
"@color/light_dark"
android:textStyle=
"bold"
android:textStyle=
"bold"
android:textColorLink=
"@color/primary100"
android:layout_marginTop=
"@dimen/_6sdp"
android:layout_marginTop=
"@dimen/_6sdp"
android:layout_marginHorizontal=
"@dimen/_10sdp"
android:layout_marginHorizontal=
"@dimen/_10sdp"
app:layout_constraintStart_toStartOf=
"@id/layout_input_password"
app:layout_constraintStart_toStartOf=
"@id/layout_input_password"
...
...
app/src/main/res/layout/fragment_pin.xml
View file @
267301d2
...
@@ -21,7 +21,7 @@
...
@@ -21,7 +21,7 @@
android:layout_marginStart=
"@dimen/_14sdp"
android:layout_marginStart=
"@dimen/_14sdp"
android:layout_marginTop=
"@dimen/_14sdp"
android:layout_marginTop=
"@dimen/_14sdp"
android:text=
"@string/install_pin"
android:text=
"@string/install_pin"
android:textSize=
"
@dimen/_16sd
p"
android:textSize=
"
29s
p"
android:textStyle=
"bold"
/>
android:textStyle=
"bold"
/>
<FrameLayout
<FrameLayout
...
@@ -38,28 +38,41 @@
...
@@ -38,28 +38,41 @@
android:layout_marginTop=
"@dimen/_20sdp"
android:layout_marginTop=
"@dimen/_20sdp"
android:layout_marginBottom=
"@dimen/_20sdp"
android:layout_marginBottom=
"@dimen/_20sdp"
android:text=
"@string/pin_not_same"
android:text=
"@string/pin_not_same"
android:textColor=
"@color/
red
"
android:textColor=
"@color/
primary100
"
android:textSize=
"@dimen/_10sdp"
android:textSize=
"@dimen/_10sdp"
android:textStyle=
"bold"
android:textStyle=
"bold"
android:visibility=
"gone"
/>
android:visibility=
"gone"
/>
<LinearLayout
android:layout_width=
"wrap_content"
android:layout_gravity=
"center"
android:orientation=
"vertical"
android:layout_height=
"wrap_content"
>
<com.google.android.material.card.MaterialCardView
<com.google.android.material.card.MaterialCardView
android:id=
"@+id/card_pin"
android:id=
"@+id/card_pin"
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center"
>
app:cardCornerRadius=
"0dp"
android:minWidth=
"@dimen/_120sdp"
android:minHeight=
"@dimen/_32sdp"
>
<androidx.recyclerview.widget.RecyclerView
<androidx.recyclerview.widget.RecyclerView
android:id=
"@+id/rv_pin"
android:id=
"@+id/rv_pin"
android:layout_width=
"wrap_content"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_height=
"match_parent"
android:layout_gravity=
"center"
android:orientation=
"horizontal"
android:orientation=
"horizontal"
android:paddingHorizontal=
"@dimen/_6sdp"
android:paddingHorizontal=
"18dp"
android:paddingVertical=
"@dimen/_8sdp"
app:layoutManager=
"androidx.recyclerview.widget.LinearLayoutManager"
app:layoutManager=
"androidx.recyclerview.widget.LinearLayoutManager"
tools:itemCount=
"4"
tools:itemCount=
"4"
tools:listitem=
"@layout/item_pin"
/>
tools:listitem=
"@layout/item_pin"
/>
</com.google.android.material.card.MaterialCardView>
</com.google.android.material.card.MaterialCardView>
<View
android:layout_width=
"@dimen/_120sdp"
android:background=
"@color/grey30"
android:layout_height=
"2dp"
/>
</LinearLayout>
</FrameLayout>
</FrameLayout>
...
@@ -68,21 +81,20 @@
...
@@ -68,21 +81,20 @@
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"0dp"
android:layout_height=
"0dp"
android:layout_weight=
"3"
android:layout_weight=
"3"
android:paddingHorizontal=
"@dimen/_48sdp"
>
android:paddingStart=
"@dimen/_44sdp"
android:paddingEnd=
"@dimen/_44sdp"
>
<TextView
<TextView
android:id=
"@+id/btn_1"
android:id=
"@+id/btn_1"
style=
"@style/BtnStyle"
style=
"@style/BtnStyle"
android:background=
"@drawable/bgn_pin_btn"
android:background=
"@drawable/bgn_pin_btn"
android:text=
"@string/_1"
android:text=
"@string/_1"
app:layout_constraintEnd_toStartOf=
"@id/btn_2"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
/>
app:layout_constraintTop_toTopOf=
"parent"
/>
<TextView
<TextView
android:id=
"@+id/btn_2"
android:id=
"@+id/btn_2"
style=
"@style/BtnStyle"
style=
"@style/BtnStyle"
android:layout_marginHorizontal=
"@dimen/_10sdp"
android:background=
"@drawable/bgn_pin_btn"
android:background=
"@drawable/bgn_pin_btn"
android:text=
"@string/_2"
android:text=
"@string/_2"
app:layout_constraintEnd_toStartOf=
"@id/btn_3"
app:layout_constraintEnd_toStartOf=
"@id/btn_3"
...
@@ -95,7 +107,6 @@
...
@@ -95,7 +107,6 @@
android:background=
"@drawable/bgn_pin_btn"
android:background=
"@drawable/bgn_pin_btn"
android:text=
"@string/_3"
android:text=
"@string/_3"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toEndOf=
"@id/btn_2"
app:layout_constraintTop_toTopOf=
"parent"
/>
app:layout_constraintTop_toTopOf=
"parent"
/>
<TextView
<TextView
...
@@ -104,14 +115,12 @@
...
@@ -104,14 +115,12 @@
android:layout_marginTop=
"@dimen/_16sdp"
android:layout_marginTop=
"@dimen/_16sdp"
android:background=
"@drawable/bgn_pin_btn"
android:background=
"@drawable/bgn_pin_btn"
android:text=
"@string/_4"
android:text=
"@string/_4"
app:layout_constraintEnd_toStartOf=
"@id/btn_5"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@id/btn_1"
/>
app:layout_constraintTop_toBottomOf=
"@id/btn_1"
/>
<TextView
<TextView
android:id=
"@+id/btn_5"
android:id=
"@+id/btn_5"
style=
"@style/BtnStyle"
style=
"@style/BtnStyle"
android:layout_marginHorizontal=
"@dimen/_10sdp"
android:background=
"@drawable/bgn_pin_btn"
android:background=
"@drawable/bgn_pin_btn"
android:text=
"@string/_5"
android:text=
"@string/_5"
app:layout_constraintEnd_toStartOf=
"@id/btn_6"
app:layout_constraintEnd_toStartOf=
"@id/btn_6"
...
@@ -124,7 +133,6 @@
...
@@ -124,7 +133,6 @@
android:background=
"@drawable/bgn_pin_btn"
android:background=
"@drawable/bgn_pin_btn"
android:text=
"@string/_6"
android:text=
"@string/_6"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toEndOf=
"@id/btn_5"
app:layout_constraintTop_toTopOf=
"@id/btn_4"
/>
app:layout_constraintTop_toTopOf=
"@id/btn_4"
/>
<TextView
<TextView
...
@@ -134,17 +142,15 @@
...
@@ -134,17 +142,15 @@
android:background=
"@drawable/bgn_pin_btn"
android:background=
"@drawable/bgn_pin_btn"
android:text=
"@string/_7"
android:text=
"@string/_7"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintEnd_toStartOf=
"@id/btn_8"
app:layout_constraintTop_toBottomOf=
"@id/btn_4"
/>
app:layout_constraintTop_toBottomOf=
"@id/btn_4"
/>
<TextView
<TextView
android:id=
"@+id/btn_8"
android:id=
"@+id/btn_8"
style=
"@style/BtnStyle"
style=
"@style/BtnStyle"
android:layout_marginHorizontal=
"@dimen/_10sdp"
android:background=
"@drawable/bgn_pin_btn"
android:background=
"@drawable/bgn_pin_btn"
android:text=
"@string/_8"
android:text=
"@string/_8"
app:layout_constraintStart_toEndOf=
"@id/btn_7"
app:layout_constraintEnd_toStartOf=
"@id/btn_9"
app:layout_constraintEnd_toStartOf=
"@id/btn_9"
app:layout_constraintStart_toEndOf=
"@id/btn_7"
app:layout_constraintTop_toTopOf=
"@id/btn_7"
/>
app:layout_constraintTop_toTopOf=
"@id/btn_7"
/>
<TextView
<TextView
...
@@ -153,7 +159,6 @@
...
@@ -153,7 +159,6 @@
android:background=
"@drawable/bgn_pin_btn"
android:background=
"@drawable/bgn_pin_btn"
android:text=
"@string/_9"
android:text=
"@string/_9"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toEndOf=
"@id/btn_8"
app:layout_constraintTop_toTopOf=
"@id/btn_7"
/>
app:layout_constraintTop_toTopOf=
"@id/btn_7"
/>
...
...
app/src/main/res/layout/fragment_pin_dialog.xml
View file @
267301d2
...
@@ -14,7 +14,7 @@
...
@@ -14,7 +14,7 @@
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"@dimen/_14sdp"
android:layout_marginStart=
"@dimen/_14sdp"
android:layout_marginTop=
"@dimen/_
4
4sdp"
android:layout_marginTop=
"@dimen/_
3
4sdp"
android:text=
"@string/enter_pin_code"
android:text=
"@string/enter_pin_code"
android:textSize=
"@dimen/_16sdp"
android:textSize=
"@dimen/_16sdp"
android:textStyle=
"bold"
/>
android:textStyle=
"bold"
/>
...
@@ -22,7 +22,7 @@
...
@@ -22,7 +22,7 @@
<FrameLayout
<FrameLayout
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"0dp"
android:layout_height=
"0dp"
android:layout_weight=
"
1
"
>
android:layout_weight=
"
0.9
"
>
<TextView
<TextView
android:id=
"@+id/txt_not_pin"
android:id=
"@+id/txt_not_pin"
...
@@ -32,31 +32,43 @@
...
@@ -32,31 +32,43 @@
android:layout_marginTop=
"@dimen/_20sdp"
android:layout_marginTop=
"@dimen/_20sdp"
android:layout_marginBottom=
"@dimen/_20sdp"
android:layout_marginBottom=
"@dimen/_20sdp"
android:text=
"@string/pin_not_same"
android:text=
"@string/pin_not_same"
android:textColor=
"@color/
red
"
android:textColor=
"@color/
primary100
"
android:textSize=
"@dimen/_10sdp"
android:textSize=
"@dimen/_10sdp"
android:textStyle=
"bold"
android:textStyle=
"bold"
android:visibility=
"gone"
/>
android:visibility=
"gone"
/>
<LinearLayout
android:layout_width=
"wrap_content"
android:layout_gravity=
"center"
android:orientation=
"vertical"
android:layout_height=
"wrap_content"
>
<com.google.android.material.card.MaterialCardView
<com.google.android.material.card.MaterialCardView
android:id=
"@+id/card_pin"
android:id=
"@+id/card_pin"
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center
"
app:cardCornerRadius=
"0dp
"
android:minWidth=
"@dimen/_8
0sdp"
android:minWidth=
"@dimen/_12
0sdp"
android:minHeight=
"@dimen/_25
sdp"
>
android:minHeight=
"@dimen/_32
sdp"
>
<androidx.recyclerview.widget.RecyclerView
<androidx.recyclerview.widget.RecyclerView
android:id=
"@+id/rv_pin"
android:id=
"@+id/rv_pin"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:layout_height=
"match_parent"
android:layout_gravity=
"center"
android:layout_gravity=
"center"
android:layout_marginTop=
"2dp"
android:orientation=
"horizontal"
android:orientation=
"horizontal"
android:paddingHorizontal=
"18dp"
android:paddingHorizontal=
"18dp"
app:layoutManager=
"androidx.recyclerview.widget.LinearLayoutManager"
app:layoutManager=
"androidx.recyclerview.widget.LinearLayoutManager"
tools:itemCount=
"4"
tools:itemCount=
"4"
tools:listitem=
"@layout/item_pin"
/>
tools:listitem=
"@layout/item_pin"
/>
</com.google.android.material.card.MaterialCardView>
</com.google.android.material.card.MaterialCardView>
<View
android:layout_width=
"@dimen/_120sdp"
android:background=
"@color/grey30"
android:layout_height=
"2dp"
/>
</LinearLayout>
</FrameLayout>
</FrameLayout>
...
@@ -167,6 +179,17 @@
...
@@ -167,6 +179,17 @@
app:layout_constraintStart_toEndOf=
"@id/btn_8"
app:layout_constraintStart_toEndOf=
"@id/btn_8"
app:layout_constraintTop_toTopOf=
"@id/btn_7"
/>
app:layout_constraintTop_toTopOf=
"@id/btn_7"
/>
<ImageView
android:id=
"@+id/btn_finger_print"
android:layout_width=
"@dimen/_52sdp"
android:layout_height=
"@dimen/_52sdp"
android:background=
"?selectableItemBackgroundBorderless"
android:contentDescription=
"@string/remove"
android:src=
"@drawable/ic_finger_print"
app:layout_constraintBottom_toBottomOf=
"@id/btn_0"
app:layout_constraintStart_toStartOf=
"@id/btn_7"
app:layout_constraintTop_toTopOf=
"@id/btn_0"
/>
<TextView
<TextView
android:id=
"@+id/btn_0"
android:id=
"@+id/btn_0"
...
@@ -200,8 +223,8 @@
...
@@ -200,8 +223,8 @@
android:layout_marginTop=
"@dimen/_30sdp"
android:layout_marginTop=
"@dimen/_30sdp"
android:background=
"?android:selectableItemBackground"
android:background=
"?android:selectableItemBackground"
android:text=
"Войти по паролю"
android:text=
"Войти по паролю"
android:textColor=
"@color/
red
"
android:textColor=
"@color/
primary100
"
android:textSize=
"
@dimen/_12sd
p"
android:textSize=
"
14s
p"
android:textStyle=
"bold"
android:textStyle=
"bold"
android:paddingHorizontal=
"@dimen/_20sdp"
android:paddingHorizontal=
"@dimen/_20sdp"
android:paddingVertical=
"@dimen/_10sdp"
android:paddingVertical=
"@dimen/_10sdp"
...
...
app/src/main/res/layout/fragment_register.xml
View file @
267301d2
...
@@ -3,6 +3,7 @@
...
@@ -3,6 +3,7 @@
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:layout_height=
"match_parent"
xmlns:tools=
"http://schemas.android.com/tools"
android:orientation=
"vertical"
>
android:orientation=
"vertical"
>
<com.google.android.material.appbar.MaterialToolbar
<com.google.android.material.appbar.MaterialToolbar
...
@@ -10,8 +11,7 @@
...
@@ -10,8 +11,7 @@
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
app:layout_constraintTop_toTopOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
app:navigationIcon=
"@drawable/ic_baseline_arrow_back"
app:navigationIcon=
"@drawable/ic_baseline_arrow_back"
/>
/>
<TextView
<TextView
...
@@ -20,11 +20,11 @@
...
@@ -20,11 +20,11 @@
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginTop=
"@dimen/_14sdp"
android:layout_marginTop=
"@dimen/_14sdp"
android:text=
"@string/
think_password
"
android:text=
"@string/
register
"
android:textSize=
"
@dimen/_18sd
p"
android:textSize=
"
30s
p"
android:textStyle=
"bold"
android:textStyle=
"bold"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintBottom_toTopOf=
"@id/txt_hint_password"
app:layout_constraintBottom_toTopOf=
"@id/txt_hint_password"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@id/toolbar"
/>
app:layout_constraintTop_toBottomOf=
"@id/toolbar"
/>
<TextView
<TextView
...
@@ -32,13 +32,12 @@
...
@@ -32,13 +32,12 @@
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginTop=
"@dimen/_16sdp"
android:layout_marginTop=
"24dp"
android:layout_marginBottom=
"@dimen/_4sdp"
android:text=
"@string/enter_parol"
android:text=
"@string/enter_parol"
android:textColor=
"@color/black"
android:textColor=
"@color/black75"
android:textStyle=
"bold"
android:textSize=
"15sp"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintBottom_toTopOf=
"@id/layout_input_password"
app:layout_constraintBottom_toTopOf=
"@id/layout_input_password"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@id/txt_enter_phone"
/>
app:layout_constraintTop_toBottomOf=
"@id/txt_enter_phone"
/>
<com.google.android.material.textfield.TextInputLayout
<com.google.android.material.textfield.TextInputLayout
...
@@ -47,7 +46,6 @@
...
@@ -47,7 +46,6 @@
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginEnd=
"@dimen/_12sdp"
android:layout_marginEnd=
"@dimen/_12sdp"
android:layout_marginBottom=
"@dimen/_140sdp"
app:endIconMode=
"password_toggle"
app:endIconMode=
"password_toggle"
app:layout_constraintBottom_toTopOf=
"@id/txt_hint_confirm"
app:layout_constraintBottom_toTopOf=
"@id/txt_hint_confirm"
app:layout_constraintTop_toBottomOf=
"@id/txt_hint_password"
>
app:layout_constraintTop_toBottomOf=
"@id/txt_hint_password"
>
...
@@ -56,24 +54,24 @@
...
@@ -56,24 +54,24 @@
android:id=
"@+id/input_password"
android:id=
"@+id/input_password"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:layout_height=
"match_parent"
android:background=
"@drawable/edit_text_
bgn
"
android:background=
"@drawable/edit_text_
unchecked
"
android:imeOptions=
"actionNext"
android:imeOptions=
"actionNext"
android:textSize=
"@dimen/_12sdp"
android:inputType=
"numberPassword"
android:inputType=
"numberPassword"
android:maxLength=
"7"
android:maxLength=
"7"
android:paddingVertical=
"@dimen/_12sdp"
android:paddingVertical=
"@dimen/_12sdp"
android:paddingStart=
"@dimen/_12sdp"
/>
android:paddingStart=
"@dimen/_12sdp"
android:textSize=
"@dimen/_12sdp"
/>
</com.google.android.material.textfield.TextInputLayout>
</com.google.android.material.textfield.TextInputLayout>
<TextView
<TextView
android:id=
"@+id/txt_check_password"
android:id=
"@+id/txt_check_password"
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/_6sdp"
android:layout_marginTop=
"6dp"
android:visibility=
"invisible"
android:text=
"@string/min_6"
android:text=
"@string/min_6"
android:textColor=
"@color/light"
android:textColor=
"@color/grey110"
android:textStyle=
"bold"
android:textSize=
"14sp"
android:visibility=
"visible"
app:layout_constraintStart_toStartOf=
"@id/layout_input_confirm"
app:layout_constraintStart_toStartOf=
"@id/layout_input_confirm"
app:layout_constraintTop_toBottomOf=
"@id/layout_input_password"
/>
app:layout_constraintTop_toBottomOf=
"@id/layout_input_password"
/>
...
@@ -81,11 +79,10 @@
...
@@ -81,11 +79,10 @@
android:id=
"@+id/txt_hint_confirm"
android:id=
"@+id/txt_hint_confirm"
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/_34sdp"
android:layout_marginTop=
"46dp"
android:layout_marginBottom=
"@dimen/_4sdp"
android:text=
"@string/confirm_parol"
android:text=
"@string/confirm_parol"
android:textColor=
"@color/black"
android:textColor=
"@color/black
75
"
android:textS
tyle=
"bold
"
android:textS
ize=
"16sp
"
app:layout_constraintStart_toStartOf=
"@id/layout_input_confirm"
app:layout_constraintStart_toStartOf=
"@id/layout_input_confirm"
app:layout_constraintTop_toBottomOf=
"@id/layout_input_password"
/>
app:layout_constraintTop_toBottomOf=
"@id/layout_input_password"
/>
...
@@ -102,36 +99,35 @@
...
@@ -102,36 +99,35 @@
android:id=
"@+id/input_confirm"
android:id=
"@+id/input_confirm"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:layout_height=
"match_parent"
android:background=
"@drawable/edit_text_
bgn
"
android:background=
"@drawable/edit_text_
unchecked
"
android:imeOptions=
"actionDone"
android:imeOptions=
"actionDone"
android:textSize=
"@dimen/_12sdp"
android:inputType=
"numberPassword"
android:inputType=
"numberPassword"
android:maxLength=
"7"
android:maxLength=
"7"
android:paddingVertical=
"@dimen/_12sdp"
android:paddingVertical=
"@dimen/_12sdp"
android:paddingStart=
"@dimen/_12sdp"
android:paddingStart=
"@dimen/_12sdp"
/>
android:textSize=
"@dimen/_12sdp"
/>
</com.google.android.material.textfield.TextInputLayout>
</com.google.android.material.textfield.TextInputLayout>
<ImageView
<ImageView
android:id=
"@+id/image_check"
android:id=
"@+id/image_check"
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
app:layout_constraintStart_toStartOf=
"@id/layout_input_confirm"
android:layout_height=
"wrap_content"
app:layout_constraintTop_toTopOf=
"@id/txt_check_confirm"
android:layout_marginEnd=
"@dimen/_6sdp"
android:visibility=
"invisible"
app:layout_constraintBottom_toBottomOf=
"@id/txt_check_confirm"
android:src=
"@drawable/ic_vector_error"
android:src=
"@drawable/ic_vector_error"
android:layout_height=
"wrap_content"
/>
android:visibility=
"gone"
app:layout_constraintBottom_toBottomOf=
"@id/txt_check_confirm"
app:layout_constraintStart_toStartOf=
"@id/layout_input_confirm"
app:layout_constraintTop_toTopOf=
"@id/txt_check_confirm"
/>
<TextView
<TextView
android:id=
"@+id/txt_check_confirm"
android:id=
"@+id/txt_check_confirm"
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/_
10
sdp"
android:layout_marginTop=
"@dimen/_
6
sdp"
android:text=
"@string/must_same"
android:text=
"@string/must_same"
android:textColor=
"@color/light"
android:textColor=
"@color/grey110"
android:textStyle=
"bold"
android:visibility=
"visible"
android:visibility=
"invisible"
android:textSize=
"14sp"
android:layout_marginStart=
"@dimen/_6sdp"
app:layout_constraintStart_toEndOf=
"@id/image_check"
app:layout_constraintStart_toEndOf=
"@id/image_check"
app:layout_constraintTop_toBottomOf=
"@id/layout_input_confirm"
/>
app:layout_constraintTop_toBottomOf=
"@id/layout_input_confirm"
/>
...
@@ -139,27 +135,42 @@
...
@@ -139,27 +135,42 @@
android:id=
"@+id/txt_helper_mobiuz"
android:id=
"@+id/txt_helper_mobiuz"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:padding=
"@dimen/_6sdp"
android:layout_marginHorizontal=
"@dimen/_10sdp"
android:layout_marginTop=
"24dp"
android:textSize=
"14sp"
android:textColorLink=
"@color/primary100"
android:text=
"@string/helper_mobiuz"
android:text=
"@string/helper_mobiuz"
android:background=
"?android:selectableItemBackground"
android:textColor=
"@color/black100"
android:textColor=
"@color/light_dark"
android:textStyle=
"bold"
android:textStyle=
"bold"
android:layout_marginTop=
"@dimen/_6sdp"
android:layout_marginHorizontal=
"@dimen/_10sdp"
app:layout_constraintStart_toStartOf=
"@id/layout_input_password"
app:layout_constraintStart_toStartOf=
"@id/layout_input_password"
app:layout_constraintTop_toBottomOf=
"@id/txt_check_confirm"
/>
app:layout_constraintTop_toBottomOf=
"@id/txt_check_confirm"
/>
<Button
<Button
android:id=
"@+id/btn_login"
android:id=
"@+id/btn_login"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:enabled=
"false"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"bottom"
android:layout_gravity=
"bottom"
android:textSize=
"@dimen/_12sdp"
android:layout_marginTop=
"30dp"
android:layout_marginBottom=
"@dimen/_20sdp"
android:layout_marginHorizontal=
"@dimen/_12sdp"
android:layout_marginHorizontal=
"@dimen/_12sdp"
android:
layout_marginTop=
"@dimen/_34sdp
"
android:
enabled=
"false
"
android:text=
"@string/continuoue"
android:text=
"@string/continuoue"
app:layout_constraintTop_toBottomOf=
"@id/layout_input_confirm"
android:textSize=
"@dimen/_12sdp"
app:layout_constraintBottom_toBottomOf=
"parent"
/>
app:layout_constraintTop_toBottomOf=
"@id/txt_helper_mobiuz"
/>
<TextView
android:id=
"@+id/txt_agree"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginHorizontal=
"@dimen/_10sdp"
android:layout_marginTop=
"29dp"
android:textSize=
"13sp"
android:textColorLink=
"@color/primary100"
android:text=
"By signing up, you're agree to our
\nTerms of Use and Privacy Policy"
android:textColor=
"@color/grey80"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@id/btn_login"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
app/src/main/res/layout/item_home.xml
View file @
267301d2
...
@@ -10,7 +10,7 @@
...
@@ -10,7 +10,7 @@
<TextView
<TextView
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:textColor=
"@color/
red
"
android:textColor=
"@color/
primary100
"
android:text=
"mobiuz"
android:text=
"mobiuz"
android:textStyle=
"bold"
android:textStyle=
"bold"
android:textSize=
"24sp"
android:textSize=
"24sp"
...
@@ -18,12 +18,11 @@
...
@@ -18,12 +18,11 @@
<TextView
<TextView
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:textColor=
"@color/black
_
80"
android:textColor=
"@color/black80"
android:maxWidth=
"@dimen/_150sdp"
android:maxWidth=
"@dimen/_150sdp"
android:layout_marginTop=
"6dp"
android:layout_marginTop=
"6dp"
android:text=
"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Dui, risus"
android:text=
"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Dui, risus"
android:textStyle=
"bold"
android:textSize=
"10sp"
android:textSize=
"14sp"
android:layout_marginBottom=
"8dp"
android:layout_marginBottom=
"8dp"
android:layout_height=
"wrap_content"
/>
android:layout_height=
"wrap_content"
/>
...
@@ -35,15 +34,16 @@
...
@@ -35,15 +34,16 @@
<LinearLayout
<LinearLayout
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:paddingHorizontal=
"1
2
dp"
android:paddingHorizontal=
"1
6
dp"
android:paddingVertical=
"
10
dp"
android:paddingVertical=
"
8
dp"
android:layout_height=
"wrap_content"
>
android:layout_height=
"wrap_content"
>
<TextView
<TextView
android:layout_width=
"wrap_content"
android:layout_width=
"wrap_content"
android:textColor=
"@color/
red
"
android:textColor=
"@color/
primary100
"
android:text=
"Узнать больше"
android:text=
"Узнать больше"
android:textStyle=
"bold"
android:textStyle=
"bold"
android:textSize=
"12sp"
android:layout_height=
"wrap_content"
/>
android:layout_height=
"wrap_content"
/>
<ImageView
<ImageView
...
...
app/src/main/res/layout/item_pin.xml
View file @
267301d2
...
@@ -4,10 +4,10 @@
...
@@ -4,10 +4,10 @@
android:layout_height=
"wrap_content"
>
android:layout_height=
"wrap_content"
>
<ImageView
<ImageView
android:layout_width=
"@dimen/_
8
sdp"
android:layout_width=
"@dimen/_
12
sdp"
android:id=
"@+id/image_pin"
android:id=
"@+id/image_pin"
android:layout_marginHorizontal=
"@dimen/_4sdp"
android:layout_marginHorizontal=
"@dimen/_4sdp"
android:background=
"@drawable/bgn_pin_btn"
android:background=
"@drawable/bgn_pin_btn"
android:layout_height=
"@dimen/_
8
sdp"
/>
android:layout_height=
"@dimen/_
12
sdp"
/>
</FrameLayout>
</FrameLayout>
\ No newline at end of file
app/src/main/res/layout/layout_exit.xml
View file @
267301d2
...
@@ -37,7 +37,7 @@
...
@@ -37,7 +37,7 @@
<View
<View
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_marginTop=
"32dp"
android:layout_marginTop=
"32dp"
android:background=
"@color/
light
"
android:background=
"@color/
grey20
"
android:layout_height=
"1dp"
/>
android:layout_height=
"1dp"
/>
<LinearLayout
<LinearLayout
...
@@ -62,7 +62,7 @@
...
@@ -62,7 +62,7 @@
app:cornerRadius=
"24dp"
/>
app:cornerRadius=
"24dp"
/>
<View
<View
android:layout_width=
"1dp"
android:layout_width=
"1dp"
android:background=
"@color/
light
"
android:background=
"@color/
grey20
"
android:layout_height=
"match_parent"
/>
android:layout_height=
"match_parent"
/>
<TextView
<TextView
...
...
app/src/main/res/layout/layout_home_header.xml
0 → 100644
View file @
267301d2
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:layout_width=
"match_parent"
android:orientation=
"vertical"
android:paddingHorizontal=
"@dimen/_12sdp"
android:layout_height=
"match_parent"
>
<ImageView
android:layout_width=
"84dp"
android:src=
"@drawable/ic_user"
android:layout_marginTop=
"@dimen/_24sdp"
android:layout_height=
"84dp"
/>
<TextView
android:layout_width=
"wrap_content"
android:id=
"@+id/txt_user_name"
android:textStyle=
"bold"
android:textSize=
"20sp"
android:layout_marginTop=
"12dp"
android:text=
"Юлия Шевченко "
android:layout_height=
"wrap_content"
/>
<TextView
android:layout_width=
"wrap_content"
android:id=
"@+id/txt_user_phone"
android:textSize=
"14sp"
android:layout_marginTop=
"4dp"
android:text=
"+998 97 999-99-99"
android:layout_height=
"wrap_content"
/>
<TextView
android:layout_width=
"wrap_content"
android:id=
"@+id/txt_profile"
android:text=
"Профиль"
android:layout_marginTop=
"8dp"
android:textSize=
"14sp"
android:textColor=
"@color/primary100"
android:layout_height=
"wrap_content"
/>
</LinearLayout>
\ No newline at end of file
app/src/main/res/layout/motion_layout.xml
deleted
100644 → 0
View file @
a4a65342
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.motion.widget.MotionLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:layout_width=
"match_parent"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
app:layoutDescription=
"@xml/home_motion_scene"
android:layout_height=
"match_parent"
>
</androidx.constraintlayout.motion.widget.MotionLayout>
\ No newline at end of file
app/src/main/res/navigation/nav_graph_auth.xml
View file @
267301d2
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:tools=
"http://schemas.android.com/tools"
xmlns:tools=
"http://schemas.android.com/tools"
android:id=
"@+id/nav_graph_auth"
android:id=
"@+id/nav_graph_auth"
app:startDestination=
"@id/
checkPhone
Fragment"
>
app:startDestination=
"@id/
myVerification
Fragment"
>
<fragment
<fragment
android:id=
"@+id/checkPhoneFragment"
android:id=
"@+id/checkPhoneFragment"
...
@@ -12,11 +12,6 @@
...
@@ -12,11 +12,6 @@
tools:layout=
"@layout/fragment_check_phone"
/>
tools:layout=
"@layout/fragment_check_phone"
/>
<fragment
<fragment
android:id=
"@+id/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:id=
"@+id/registerFragment"
android:name=
"com.mobiuz.app.dev.ui.auth.register.RegisterFragment"
android:name=
"com.mobiuz.app.dev.ui.auth.register.RegisterFragment"
android:label=
"EnterPasswordFragment"
android:label=
"EnterPasswordFragment"
...
@@ -43,4 +38,8 @@
...
@@ -43,4 +38,8 @@
android:name=
"com.mobiuz.app.dev.ui.auth.pin.ConfirmPinFragment"
android:name=
"com.mobiuz.app.dev.ui.auth.pin.ConfirmPinFragment"
android:label=
"ConfirmPinFragment"
android:label=
"ConfirmPinFragment"
tools:layout=
"@layout/fragment_pin"
/>
tools:layout=
"@layout/fragment_pin"
/>
<fragment
android:id=
"@+id/myVerificationFragment"
android:name=
"com.mobiuz.app.dev.ui.auth.verification.MyVerificationFragment"
android:label=
"MyVerificationFragment"
/>
</navigation>
</navigation>
\ No newline at end of file
app/src/main/res/values-en/strings.xml
View file @
267301d2
...
@@ -30,7 +30,7 @@
...
@@ -30,7 +30,7 @@
<string
name=
"continuoue"
>
Далее
</string>
<string
name=
"continuoue"
>
Далее
</string>
<string
name=
"think_password"
>
Придумайте пароль
</string>
<string
name=
"think_password"
>
Придумайте пароль
</string>
<string
name=
"enter"
>
Войти
</string>
<string
name=
"enter"
>
Войти
</string>
<string
name=
"enter_verification"
>
"Ведите код "
</string>
<string
name=
"enter_verification"
>
Ведите код \nподтверждения
</string>
<string
name=
"sent_code_again"
>
Sent code again
</string>
<string
name=
"sent_code_again"
>
Sent code again
</string>
<string
name=
"install_pin"
>
Установите PIN-код
</string>
<string
name=
"install_pin"
>
Установите PIN-код
</string>
<string
name=
"confirm_pin"
>
Повторите этот PIN-код
</string>
<string
name=
"confirm_pin"
>
Повторите этот PIN-код
</string>
...
@@ -52,4 +52,23 @@
...
@@ -52,4 +52,23 @@
<string
name=
"remove"
>
remove
</string>
<string
name=
"remove"
>
remove
</string>
<string
name=
"password_same"
>
Пароли совпали
</string>
<string
name=
"password_same"
>
Пароли совпали
</string>
<string
name=
"password_not_same"
>
Пароли не совпали
</string>
<string
name=
"password_not_same"
>
Пароли не совпали
</string>
<string
name=
"enter_pin_code"
>
Введите PIN-код
</string>
<string
name=
"exit"
>
Exit
</string>
<string
name=
"are_you_sure"
>
Do you want to exit?
</string>
<string
name=
"no"
>
No
</string>
<string
name=
"yes"
>
Yes
</string>
<string
name=
"successfully"
>
Successfully
</string>
<string
name=
"ok"
>
Ok
</string>
<string
name=
"helper_mobiuz"
>
Для входа вы можете использовать пароль от интернет-помощника www.mobi.uz
</string>
<string
name=
"error_data"
>
Error
</string>
<string
name=
"password_successfully_updated"
>
Password successfully updated
</string>
<string
name=
"enter_from_finger_or_face"
>
Вход в приложение по отпечатку пальца или лицу
</string>
<string
name=
"cancel"
>
Cancel
</string>
<string
name=
"my_tarif"
>
My tarif
</string>
<string
name=
"bezopasnost"
>
Безопасность
</string>
<string
name=
"language_app"
>
Язык приложени
</string>
<string
name=
"support"
>
Служба поддержки
</string>
<string
name=
"tx1"
>
Согласие на обработку данных
</string>
<string
name=
"tx2"
>
Публичная оферта
</string>
<string
name=
"tx3"
>
Политика конфиденциальности
</string>
</resources>
</resources>
\ No newline at end of file
app/src/main/res/values-ru/strings.xml
View file @
267301d2
...
@@ -30,7 +30,7 @@
...
@@ -30,7 +30,7 @@
<string
name=
"phone"
>
Телефон:
</string>
<string
name=
"phone"
>
Телефон:
</string>
<string
name=
"think_password"
>
Придумайте пароль
</string>
<string
name=
"think_password"
>
Придумайте пароль
</string>
<string
name=
"enter"
>
Войти
</string>
<string
name=
"enter"
>
Войти
</string>
<string
name=
"enter_verification"
>
"Ведите код "
</string>
<string
name=
"enter_verification"
>
Ведите код \nподтверждения
</string>
<string
name=
"sent_code_again"
>
Sent code again
</string>
<string
name=
"sent_code_again"
>
Sent code again
</string>
<string
name=
"install_pin"
>
Установите PIN-код
</string>
<string
name=
"install_pin"
>
Установите PIN-код
</string>
<string
name=
"confirm_pin"
>
Повторите этот PIN-код
</string>
<string
name=
"confirm_pin"
>
Повторите этот PIN-код
</string>
...
@@ -52,4 +52,23 @@
...
@@ -52,4 +52,23 @@
<string
name=
"remove"
>
remove
</string>
<string
name=
"remove"
>
remove
</string>
<string
name=
"password_same"
>
Пароли совпали
</string>
<string
name=
"password_same"
>
Пароли совпали
</string>
<string
name=
"password_not_same"
>
Пароли не совпали
</string>
<string
name=
"password_not_same"
>
Пароли не совпали
</string>
<string
name=
"enter_pin_code"
>
Введите PIN-код
</string>
<string
name=
"exit"
>
Exit
</string>
<string
name=
"are_you_sure"
>
Do you want to exit?
</string>
<string
name=
"no"
>
No
</string>
<string
name=
"yes"
>
Yes
</string>
<string
name=
"successfully"
>
Successfully
</string>
<string
name=
"ok"
>
Ok
</string>
<string
name=
"helper_mobiuz"
>
Для входа вы можете использовать пароль от интернет-помощника www.mobi.uz
</string>
<string
name=
"error_data"
>
Error
</string>
<string
name=
"password_successfully_updated"
>
Password successfully updated
</string>
<string
name=
"enter_from_finger_or_face"
>
Вход в приложение по отпечатку пальца или лицу
</string>
<string
name=
"cancel"
>
Cancel
</string>
<string
name=
"my_tarif"
>
My tarif
</string>
<string
name=
"bezopasnost"
>
Безопасность
</string>
<string
name=
"language_app"
>
Язык приложени
</string>
<string
name=
"support"
>
Служба поддержки
</string>
<string
name=
"tx1"
>
Согласие на обработку данных
</string>
<string
name=
"tx2"
>
Публичная оферта
</string>
<string
name=
"tx3"
>
Политика конфиденциальности
</string>
</resources>
</resources>
\ No newline at end of file
app/src/main/res/values-uz/strings.xml
View file @
267301d2
...
@@ -30,7 +30,7 @@
...
@@ -30,7 +30,7 @@
<string
name=
"phone"
>
Телефон:
</string>
<string
name=
"phone"
>
Телефон:
</string>
<string
name=
"think_password"
>
Придумайте пароль
</string>
<string
name=
"think_password"
>
Придумайте пароль
</string>
<string
name=
"enter"
>
Войти
</string>
<string
name=
"enter"
>
Войти
</string>
<string
name=
"enter_verification"
>
"Ведите код "
</string>
<string
name=
"enter_verification"
>
Ведите код \nподтверждения
</string>
<string
name=
"sent_code_again"
>
Sent code again
</string>
<string
name=
"sent_code_again"
>
Sent code again
</string>
<string
name=
"install_pin"
>
Установите PIN-код
</string>
<string
name=
"install_pin"
>
Установите PIN-код
</string>
<string
name=
"confirm_pin"
>
Повторите этот PIN-код
</string>
<string
name=
"confirm_pin"
>
Повторите этот PIN-код
</string>
...
@@ -52,4 +52,23 @@
...
@@ -52,4 +52,23 @@
<string
name=
"remove"
>
remove
</string>
<string
name=
"remove"
>
remove
</string>
<string
name=
"password_same"
>
Пароли совпали
</string>
<string
name=
"password_same"
>
Пароли совпали
</string>
<string
name=
"password_not_same"
>
Пароли не совпали
</string>
<string
name=
"password_not_same"
>
Пароли не совпали
</string>
<string
name=
"enter_pin_code"
>
Введите PIN-код
</string>
<string
name=
"exit"
>
Exit
</string>
<string
name=
"are_you_sure"
>
Do you want to exit?
</string>
<string
name=
"no"
>
No
</string>
<string
name=
"yes"
>
Yes
</string>
<string
name=
"successfully"
>
Successfully
</string>
<string
name=
"ok"
>
Ok
</string>
<string
name=
"helper_mobiuz"
>
Для входа вы можете использовать пароль от интернет-помощника www.mobi.uz
</string>
<string
name=
"error_data"
>
Error
</string>
<string
name=
"password_successfully_updated"
>
Password successfully updated
</string>
<string
name=
"enter_from_finger_or_face"
>
Вход в приложение по отпечатку пальца или лицу
</string>
<string
name=
"cancel"
>
Cancel
</string>
<string
name=
"my_tarif"
>
My tarif
</string>
<string
name=
"bezopasnost"
>
Безопасность
</string>
<string
name=
"language_app"
>
Язык приложени
</string>
<string
name=
"support"
>
Служба поддержки
</string>
<string
name=
"tx1"
>
Согласие на обработку данных
</string>
<string
name=
"tx2"
>
Публичная оферта
</string>
<string
name=
"tx3"
>
Политика конфиденциальности
</string>
</resources>
</resources>
\ No newline at end of file
app/src/main/res/values/colors.xml
View file @
267301d2
...
@@ -7,14 +7,25 @@
...
@@ -7,14 +7,25 @@
<color
name=
"teal_700"
>
#FF018786
</color>
<color
name=
"teal_700"
>
#FF018786
</color>
<color
name=
"black"
>
#FF000000
</color>
<color
name=
"black"
>
#FF000000
</color>
<color
name=
"white"
>
#FFFFFFFF
</color>
<color
name=
"white"
>
#FFFFFFFF
</color>
<color
name=
"red_dark"
>
#981419
</color>
<color
name=
"red"
>
#E62229
</color>
<color
name=
"green100"
>
#23B91B
</color>
<color
name=
"green"
>
#23B91B
</color>
<color
name=
"white100"
>
#FFFFFF
</color>
<color
name=
"red_disabled"
>
#F4CDCE
</color>
<color
name=
"lang_bgn"
>
#F1F1F1
</color>
<color
name=
"black100"
>
#202020
</color>
<color
name=
"lang_bgn_dark"
>
#B6B4B4
</color>
<color
name=
"black80"
>
#363636
</color>
<color
name=
"light"
>
#B6B6B6
</color>
<color
name=
"black75"
>
#404040
</color>
<color
name=
"light_dark"
>
#1C1C1E
</color>
<color
name=
"text_color_77"
>
#777777
</color>
<color
name=
"grey100"
>
#969A97
</color>
<color
name=
"black_80"
>
#CC000000
</color>
<color
name=
"grey110"
>
#717472
</color>
<color
name=
"grey80"
>
#B6B6B6
</color>
<color
name=
"grey70"
>
#C6BFBA
</color>
<color
name=
"grey30"
>
#E7E1DD
</color>
<color
name=
"grey20"
>
#F1F1F1
</color>
<color
name=
"primary100"
>
#E62229
</color>
<color
name=
"primary110"
>
#D0151C
</color>
<color
name=
"primary70"
>
#F15D63
</color>
<color
name=
"primary30"
>
#F4CDCE
</color>
<color
name=
"primary25"
>
#FDE9EA
</color>
</resources>
</resources>
\ No newline at end of file
app/src/main/res/values/strings.xml
View file @
267301d2
...
@@ -24,7 +24,7 @@
...
@@ -24,7 +24,7 @@
<string
name=
"connect_exception"
>
Internet yo\'q
</string>
<string
name=
"connect_exception"
>
Internet yo\'q
</string>
<string
name=
"ex_nothing"
>
Неизвестная ошибка
</string>
<string
name=
"ex_nothing"
>
Неизвестная ошибка
</string>
<string
name=
"home_fragment"
translatable=
"false"
>
This is home page
</string>
<string
name=
"home_fragment"
translatable=
"false"
>
This is home page
</string>
<string
name=
"register"
>
Registration
</string>
<string
name=
"register"
>
Регистрация
</string>
<string
name=
"password"
>
Password
</string>
<string
name=
"password"
>
Password
</string>
<string
name=
"choose_lang"
>
Tilni tanlang
</string>
<string
name=
"choose_lang"
>
Tilni tanlang
</string>
<string
name=
"uzbek"
translatable=
"false"
>
O\'zbek
</string>
<string
name=
"uzbek"
translatable=
"false"
>
O\'zbek
</string>
...
@@ -46,7 +46,7 @@
...
@@ -46,7 +46,7 @@
<string
name=
"change_all_time"
>
Измените это в любое время в настройках
</string>
<string
name=
"change_all_time"
>
Измените это в любое время в настройках
</string>
<string
name=
"skip"
>
Пропустить
</string>
<string
name=
"skip"
>
Пропустить
</string>
<string
name=
"enter_parol"
>
Введите пароль:
</string>
<string
name=
"enter_parol"
>
Введите пароль:
</string>
<string
name=
"min_6"
>
Должно быть не менее
6
символов
</string>
<string
name=
"min_6"
>
Должно быть не менее
4
символов
</string>
<string
name=
"confirm_parol"
>
Введите пароль повторно:
</string>
<string
name=
"confirm_parol"
>
Введите пароль повторно:
</string>
<string
name=
"must_same"
>
Пароли должны совпадать
</string>
<string
name=
"must_same"
>
Пароли должны совпадать
</string>
<string
name=
"my_number"
>
Мой номер
</string>
<string
name=
"my_number"
>
Мой номер
</string>
...
@@ -68,7 +68,7 @@
...
@@ -68,7 +68,7 @@
<string
name=
"remove"
>
remove
</string>
<string
name=
"remove"
>
remove
</string>
<string
name=
"password_same"
>
Пароли совпали
</string>
<string
name=
"password_same"
>
Пароли совпали
</string>
<string
name=
"password_not_same"
>
Пароли не совпали
</string>
<string
name=
"password_not_same"
>
Пароли не совпали
</string>
<string
name=
"enter_pin_code"
>
Enter pin code
</string>
<string
name=
"enter_pin_code"
>
Введите PIN-код
</string>
<string
name=
"exit"
>
Exit
</string>
<string
name=
"exit"
>
Exit
</string>
<string
name=
"are_you_sure"
>
Do you want to exit?
</string>
<string
name=
"are_you_sure"
>
Do you want to exit?
</string>
<string
name=
"no"
>
No
</string>
<string
name=
"no"
>
No
</string>
...
@@ -77,5 +77,15 @@
...
@@ -77,5 +77,15 @@
<string
name=
"ok"
>
Ok
</string>
<string
name=
"ok"
>
Ok
</string>
<string
name=
"error_data"
>
Error
</string>
<string
name=
"error_data"
>
Error
</string>
<string
name=
"helper_mobiuz"
>
Для входа вы можете использовать пароль от интернет-помощника www.mobi.uz
</string>
<string
name=
"helper_mobiuz"
>
Для входа вы можете использовать пароль от интернет-помощника www.mobi.uz
</string>
<string
name=
"password_successfully_updated"
>
Password successfully updated
</string>
<string
name=
"enter_from_finger_or_face"
>
Вход в приложение по отпечатку пальца или лицу
</string>
<string
name=
"cancel"
>
Cancel
</string>
<string
name=
"my_tarif"
>
My tarif
</string>
<string
name=
"bezopasnost"
>
Безопасность
</string>
<string
name=
"language_app"
>
Язык приложени
</string>
<string
name=
"support"
>
Служба поддержки
</string>
<string
name=
"tx1"
>
Согласие на обработку данных
</string>
<string
name=
"tx2"
>
Публичная оферта
</string>
<string
name=
"tx3"
>
Политика конфиденциальности
</string>
</resources>
</resources>
\ No newline at end of file
app/src/main/res/values/themes.xml
View file @
267301d2
<resources
xmlns:tools=
"http://schemas.android.com/tools"
>
<resources
xmlns:tools=
"http://schemas.android.com/tools"
>
<!-- Base application theme. -->
<!-- Base application theme. -->
<style
name=
"Theme.MobiUzAndroid"
parent=
"Theme.MaterialComponents.
DayN
ight.NoActionBar.Bridge"
>
<style
name=
"Theme.MobiUzAndroid"
parent=
"Theme.MaterialComponents.
L
ight.NoActionBar.Bridge"
>
<!-- Primary brand color. -->
<!-- Primary brand color. -->
<item
name=
"colorPrimary"
>
@color/purple_500
</item>
<item
name=
"colorPrimary"
>
@color/purple_500
</item>
<item
name=
"colorPrimaryVariant"
>
@color/purple_700
</item>
<item
name=
"colorPrimaryVariant"
>
@color/purple_700
</item>
...
@@ -42,7 +42,8 @@
...
@@ -42,7 +42,8 @@
</style>
</style>
<style
name=
"ButtonPrimary"
parent=
"Widget.AppCompat.Button"
>
<style
name=
"ButtonPrimary"
parent=
"Widget.AppCompat.Button"
>
<item
name=
"android:textColor"
tools:ignore=
"DuplicateDefinition"
>
@color/white
</item>
<item
name=
"android:textColor"
>
@color/white
</item>
<item
name=
"android:textSize"
>
17sp
</item>
<item
name=
"android:background"
>
@drawable/button_selector
</item>
<item
name=
"android:background"
>
@drawable/button_selector
</item>
<item
name=
"textAllCaps"
>
false
</item>
<item
name=
"textAllCaps"
>
false
</item>
...
@@ -57,18 +58,14 @@
...
@@ -57,18 +58,14 @@
</style>
</style>
<style
name=
"BtnStyle"
>
<style
name=
"BtnStyle"
>
<item
name=
"android:layout_height"
>
wrap_content
</item>
<item
name=
"android:layout_height"
>
@dimen/_54sdp
</item>
<item
name=
"android:layout_width"
>
wrap_content
</item>
<item
name=
"android:layout_width"
>
@dimen/_54sdp
</item>
<item
name=
"background"
>
@drawable/bgn_pin_btn
</item>
<item
name=
"background"
>
@drawable/bgn_pin_btn
</item>
<item
name=
"android:paddingTop"
>
@dimen/_14sdp
</item>
<item
name=
"android:paddingBottom"
>
@dimen/_14sdp
</item>
<item
name=
"android:paddingStart"
>
@dimen/_20sdp
</item>
<item
name=
"android:paddingEnd"
>
@dimen/_20sdp
</item>
<item
name=
"android:clickable"
>
true
</item>
<item
name=
"android:clickable"
>
true
</item>
<item
name=
"android:focusable"
>
true
</item>
<item
name=
"android:focusable"
>
true
</item>
<item
name=
"android:gravity"
>
center
</item>
<item
name=
"android:gravity"
>
center
</item>
<item
name=
"android:textStyle"
>
bold
</item>
<item
name=
"android:textStyle"
>
bold
</item>
<item
name=
"android:textSize"
>
2
0
sp
</item>
<item
name=
"android:textSize"
>
2
4
sp
</item>
</style>
</style>
<style
name=
"PinStyle"
>
<style
name=
"PinStyle"
>
...
@@ -84,7 +81,7 @@
...
@@ -84,7 +81,7 @@
<item
name=
"android:textColorHint"
>
@color/black
</item>
<item
name=
"android:textColorHint"
>
@color/black
</item>
<item
name=
"android:gravity"
>
center
</item>
<item
name=
"android:gravity"
>
center
</item>
<item
name=
"android:textStyle"
>
bold
</item>
<item
name=
"android:textStyle"
>
bold
</item>
<item
name=
"android:textSize"
>
18
sp
</item>
<item
name=
"android:textSize"
>
20
sp
</item>
<item
name=
"android:maxLength"
>
1
</item>
<item
name=
"android:maxLength"
>
1
</item>
</style>
</style>
...
...
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