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
1762fbce
Commit
1762fbce
authored
Nov 29, 2021
by
shohboz
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[ADD]
MUS-103
Feature, add auth screens
parent
3c0dea8b
Changes
92
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
92 changed files
with
2954 additions
and
74 deletions
+2954
-74
deploymentTargetDropDown.xml
.idea/deploymentTargetDropDown.xml
+17
-0
misc.xml
.idea/misc.xml
+29
-0
build.gradle
app/build.gradle
+12
-0
AndroidManifest.xml
app/src/main/AndroidManifest.xml
+12
-1
AuthActivity.kt
app/src/main/java/uz/ssd/mobiuz/AuthActivity.kt
+16
-2
BlankFragment.kt
app/src/main/java/uz/ssd/mobiuz/BlankFragment.kt
+39
-0
MainActivity.kt
app/src/main/java/uz/ssd/mobiuz/MainActivity.kt
+40
-8
PinActivity.kt
app/src/main/java/uz/ssd/mobiuz/PinActivity.kt
+69
-0
PinLockFragment.kt
app/src/main/java/uz/ssd/mobiuz/PinLockFragment.kt
+43
-0
SplashActivity.kt
app/src/main/java/uz/ssd/mobiuz/SplashActivity.kt
+43
-0
UserAuth.kt
app/src/main/java/uz/ssd/mobiuz/model/UserAuth.kt
+6
-0
ApiService.kt
app/src/main/java/uz/ssd/mobiuz/network/api/ApiService.kt
+10
-0
AuthRepository.kt
...n/java/uz/ssd/mobiuz/network/repository/AuthRepository.kt
+33
-0
MainRepository.kt
...n/java/uz/ssd/mobiuz/network/repository/MainRepository.kt
+12
-0
AuthViewModel.kt
app/src/main/java/uz/ssd/mobiuz/ui/auth/AuthViewModel.kt
+29
-0
EnterPasswordFragment.kt
.../main/java/uz/ssd/mobiuz/ui/auth/EnterPasswordFragment.kt
+105
-0
ForgetPasswordFragment.kt
...main/java/uz/ssd/mobiuz/ui/auth/ForgetPasswordFragment.kt
+40
-0
LoginFragment.kt
app/src/main/java/uz/ssd/mobiuz/ui/auth/LoginFragment.kt
+79
-6
PasswordFragment.kt
app/src/main/java/uz/ssd/mobiuz/ui/auth/PasswordFragment.kt
+104
-0
VerificationFragment.kt
...c/main/java/uz/ssd/mobiuz/ui/auth/VerificationFragment.kt
+75
-0
BaseFragment.kt
app/src/main/java/uz/ssd/mobiuz/ui/base/BaseFragment.kt
+20
-0
ProgressDialog.kt
app/src/main/java/uz/ssd/mobiuz/ui/global/ProgressDialog.kt
+15
-0
TextWatcherWrapper.kt
...c/main/java/uz/ssd/mobiuz/ui/global/TextWatcherWrapper.kt
+17
-0
HomeFragment.kt
app/src/main/java/uz/ssd/mobiuz/ui/home/HomeFragment.kt
+13
-4
ButtonClick.kt
app/src/main/java/uz/ssd/mobiuz/utils/ButtonClick.kt
+21
-0
CONSTANTS.kt
app/src/main/java/uz/ssd/mobiuz/utils/CONSTANTS.kt
+2
-1
StringExtension.kt
...in/java/uz/ssd/mobiuz/utils/extensions/StringExtension.kt
+64
-0
nav_item_background_tint.xml
app/src/main/res/color/nav_item_background_tint.xml
+6
-0
nav_item_tint.xml
app/src/main/res/color/nav_item_tint.xml
+5
-0
background.png
app/src/main/res/drawable/background.png
+0
-0
banner.png
app/src/main/res/drawable/banner.png
+0
-0
bgn_home.png
app/src/main/res/drawable/bgn_home.png
+0
-0
bgn_lang.xml
app/src/main/res/drawable/bgn_lang.xml
+17
-0
button_default_bg.xml
app/src/main/res/drawable/button_default_bg.xml
+5
-0
button_false_bg.xml
app/src/main/res/drawable/button_false_bg.xml
+5
-0
button_selector.xml
app/src/main/res/drawable/button_selector.xml
+15
-0
nav_item_background_tint.xml
app/src/main/res/drawable/color/nav_item_background_tint.xml
+6
-0
nav_item_tint.xml
app/src/main/res/drawable/color/nav_item_tint.xml
+5
-0
frame_54.png
app/src/main/res/drawable/frame_54.png
+0
-0
frame_7.png
app/src/main/res/drawable/frame_7.png
+0
-0
header.png
app/src/main/res/drawable/header.png
+0
-0
ic_background.xml
app/src/main/res/drawable/ic_background.xml
+94
-0
ic_baseline_account_box.xml
app/src/main/res/drawable/ic_baseline_account_box.xml
+10
-0
ic_baseline_arrow_back.xml
app/src/main/res/drawable/ic_baseline_arrow_back.xml
+11
-0
ic_baseline_ballot.xml
app/src/main/res/drawable/ic_baseline_ballot.xml
+11
-0
ic_baseline_check_circle.xml
app/src/main/res/drawable/ic_baseline_check_circle.xml
+10
-0
ic_baseline_home.xml
app/src/main/res/drawable/ic_baseline_home.xml
+10
-0
ic_baseline_keyboard_arrow_right.xml
...rc/main/res/drawable/ic_baseline_keyboard_arrow_right.xml
+10
-0
ic_group_12.xml
app/src/main/res/drawable/ic_group_12.xml
+33
-0
ic_menu.xml
app/src/main/res/drawable/ic_menu.xml
+9
-0
ic_message.xml
app/src/main/res/drawable/ic_message.xml
+9
-0
ic_mobiuz_logo.xml
app/src/main/res/drawable/ic_mobiuz_logo.xml
+27
-0
ic_phone.xml
app/src/main/res/drawable/ic_phone.xml
+9
-0
ic_photo.xml
app/src/main/res/drawable/ic_photo.xml
+13
-0
ic_plus.xml
app/src/main/res/drawable/ic_plus.xml
+12
-0
ic_russia.xml
app/src/main/res/drawable/ic_russia.xml
+22
-0
ic_united_kingdom.xml
app/src/main/res/drawable/ic_united_kingdom.xml
+25
-0
ic_uzbekistan.xml
app/src/main/res/drawable/ic_uzbekistan.xml
+22
-0
ic_vector.xml
app/src/main/res/drawable/ic_vector.xml
+9
-0
ic_vector_error.xml
app/src/main/res/drawable/ic_vector_error.xml
+9
-0
ic_wi_fi.xml
app/src/main/res/drawable/ic_wi_fi.xml
+9
-0
user_girl.png
app/src/main/res/drawable/user_girl.png
+0
-0
activity_auth.xml
app/src/main/res/layout/activity_auth.xml
+18
-10
activity_main.xml
app/src/main/res/layout/activity_main.xml
+27
-10
activity_pin.xml
app/src/main/res/layout/activity_pin.xml
+34
-0
activity_splash.xml
app/src/main/res/layout/activity_splash.xml
+19
-0
fragment_blank.xml
app/src/main/res/layout/fragment_blank.xml
+14
-0
fragment_enter_password.xml
app/src/main/res/layout/fragment_enter_password.xml
+149
-0
fragment_forget_password.xml
app/src/main/res/layout/fragment_forget_password.xml
+76
-0
fragment_home.xml
app/src/main/res/layout/fragment_home.xml
+292
-8
fragment_login.xml
app/src/main/res/layout/fragment_login.xml
+77
-7
fragment_password.xml
app/src/main/res/layout/fragment_password.xml
+144
-0
fragment_pin_lock.xml
app/src/main/res/layout/fragment_pin_lock.xml
+14
-0
fragment_progress.xml
app/src/main/res/layout/fragment_progress.xml
+21
-0
fragment_verification.xml
app/src/main/res/layout/fragment_verification.xml
+110
-7
fragment_verification2.xml
app/src/main/res/layout/fragment_verification2.xml
+14
-0
item_home.xml
app/src/main/res/layout/item_home.xml
+58
-0
bottom_nav_menu.xml
app/src/main/res/menu/bottom_nav_menu.xml
+11
-0
nav_graph_auth.xml
app/src/main/res/navigation/nav_graph_auth.xml
+18
-7
nav_graph_home.xml
app/src/main/res/navigation/nav_graph_home.xml
+14
-0
nav_graph_main.xml
app/src/main/res/navigation/nav_graph_main.xml
+1
-1
nav_graph_profile.xml
app/src/main/res/navigation/nav_graph_profile.xml
+14
-0
nav_graph_red.xml
app/src/main/res/navigation/nav_graph_red.xml
+20
-0
circle_loading.json
app/src/main/res/raw/circle_loading.json
+1
-0
error_lottie.json
app/src/main/res/raw/error_lottie.json
+1
-0
lottie_progresss.json
app/src/main/res/raw/lottie_progresss.json
+1
-0
rifki_loading.json
app/src/main/res/raw/rifki_loading.json
+316
-0
success_lottie.json
app/src/main/res/raw/success_lottie.json
+1
-0
colors.xml
app/src/main/res/values/colors.xml
+9
-0
strings.xml
app/src/main/res/values/strings.xml
+39
-0
themes.xml
app/src/main/res/values/themes.xml
+45
-2
build.gradle
build.gradle
+3
-0
No files found.
.idea/deploymentTargetDropDown.xml
0 → 100644
View file @
1762fbce
<?xml version="1.0" encoding="UTF-8"?>
<project
version=
"4"
>
<component
name=
"deploymentTargetDropDown"
>
<targetSelectedWithDropDown>
<Target>
<type
value=
"QUICK_BOOT_TARGET"
/>
<deviceKey>
<Key>
<type
value=
"VIRTUAL_DEVICE_PATH"
/>
<value
value=
"$USER_HOME$/.android/avd/Pixel_3_API_30.avd"
/>
</Key>
</deviceKey>
</Target>
</targetSelectedWithDropDown>
<timeTargetWasSelectedWithDropDown
value=
"2021-11-29T09:58:34.680451Z"
/>
</component>
</project>
\ No newline at end of file
.idea/misc.xml
View file @
1762fbce
...
...
@@ -3,8 +3,37 @@
<component
name=
"DesignSurface"
>
<option
name=
"filePathToZoomLevelMap"
>
<map>
<entry
key=
"app/src/main/res/drawable/bgn_lang.xml"
value=
"0.2796296296296296"
/>
<entry
key=
"app/src/main/res/drawable/button_default_bg.xml"
value=
"0.30092592592592593"
/>
<entry
key=
"app/src/main/res/drawable/button_false_bg.xml"
value=
"0.30092592592592593"
/>
<entry
key=
"app/src/main/res/drawable/button_selector.xml"
value=
"0.30092592592592593"
/>
<entry
key=
"app/src/main/res/drawable/ic_background.xml"
value=
"0.2759259259259259"
/>
<entry
key=
"app/src/main/res/drawable/ic_baseline_account_box.xml"
value=
"0.2796296296296296"
/>
<entry
key=
"app/src/main/res/drawable/ic_baseline_arrow_back.xml"
value=
"0.2759259259259259"
/>
<entry
key=
"app/src/main/res/drawable/ic_baseline_ballot.xml"
value=
"0.2796296296296296"
/>
<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_keyboard_arrow_right.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_russia.xml"
value=
"0.2796296296296296"
/>
<entry
key=
"app/src/main/res/drawable/ic_vector_error.xml"
value=
"0.20694444444444443"
/>
<entry
key=
"app/src/main/res/layout/activity_auth.xml"
value=
"0.3416666666666667"
/>
<entry
key=
"app/src/main/res/layout/activity_language.xml"
value=
"0.25"
/>
<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_splash.xml"
value=
"0.29936594202898553"
/>
<entry
key=
"app/src/main/res/layout/button_selector.xml"
value=
"0.33242753623188404"
/>
<entry
key=
"app/src/main/res/layout/fragment_blank.xml"
value=
"0.18385416666666668"
/>
<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_home.xml"
value=
"0.18385416666666668"
/>
<entry
key=
"app/src/main/res/layout/fragment_login.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_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_verification.xml"
value=
"0.2"
/>
<entry
key=
"app/src/main/res/layout/item_home.xml"
value=
"0.29936594202898553"
/>
<entry
key=
"app/src/main/res/menu/bottom_nav_menu.xml"
value=
"0.3416666666666667"
/>
</map>
</option>
</component>
...
...
app/build.gradle
View file @
1762fbce
...
...
@@ -83,4 +83,16 @@ dependencies {
implementation
'androidx.lifecycle:lifecycle-extensions:2.2.0'
implementation
'com.nabinbhandari.android:permissions:3.8'
implementation
'com.intuit.sdp:sdp-android:1.0.6'
implementation
"androidx.biometric:biometric:1.1.0"
implementation
'io.github.chaosleung:pinview:1.4.4'
implementation
'com.github.pinball83:masked-edittext:1.0.4'
// pin view
implementation
"com.github.iwgang:countdownview:2.1.6"
}
\ No newline at end of file
app/src/main/AndroidManifest.xml
View file @
1762fbce
...
...
@@ -3,6 +3,7 @@
package=
"uz.ssd.mobiuz"
>
<uses-permission
android:name=
"android.permission.CALL_PHONE"
/>
<uses-permission
android:name=
"android.permission.USE_BIOMETRIC"
/>
<application
android:name=
".app.App"
...
...
@@ -14,12 +15,22 @@
android:theme=
"@style/Theme.MobiUzAndroid"
android:usesCleartextTraffic=
"true"
>
<activity
android:name=
".AuthActivity"
android:name=
".LanguageActivity"
android:windowSoftInputMode=
"adjustResize"
android:exported=
"false"
/>
<activity
android:name=
".MainActivity"
android:windowSoftInputMode=
"adjustResize"
android:exported=
"false"
/>
<activity
android:name=
".AuthActivity"
android:windowSoftInputMode=
"adjustResize"
android:exported=
"false"
/>
<activity
android:name=
".SplashActivity"
android:configChanges=
"orientation"
android:exported=
"true"
android:windowSoftInputMode=
"adjustResize"
android:screenOrientation=
"portrait"
>
<intent-filter>
<action
android:name=
"android.intent.action.MAIN"
/>
...
...
app/src/main/java/uz/ssd/mobiuz/AuthActivity.kt
View file @
1762fbce
package
uz.ssd.mobiuz
import
androidx.appcompat.app.AppCompatActivity
import
android.os.Bundle
import
android.view.View
import
androidx.appcompat.app.AppCompatActivity
import
dagger.hilt.android.AndroidEntryPoint
import
uz.ssd.mobiuz.databinding.ActivityAuthBinding
@AndroidEntryPoint
class
AuthActivity
:
AppCompatActivity
()
{
private
var
_bn
:
ActivityAuthBinding
?
=
null
private
val
bn
get
()
=
_bn
?:
throw
NullPointerException
(
"cannot inflate"
)
override
fun
onCreate
(
savedInstanceState
:
Bundle
?)
{
super
.
onCreate
(
savedInstanceState
)
setContentView
(
R
.
layout
.
activity_auth
)
_bn
=
ActivityAuthBinding
.
inflate
(
layoutInflater
)
setContentView
(
bn
.
root
)
window
.
decorView
.
systemUiVisibility
=
window
.
decorView
.
systemUiVisibility
or
View
.
SYSTEM_UI_FLAG_LIGHT_STATUS_BAR
}
override
fun
onDestroy
()
{
_bn
=
null
super
.
onDestroy
()
}
}
\ No newline at end of file
app/src/main/java/uz/ssd/mobiuz/
ui/auth/Register
Fragment.kt
→
app/src/main/java/uz/ssd/mobiuz/
Blank
Fragment.kt
View file @
1762fbce
package
uz.ssd.mobiuz
.ui.auth
package
uz.ssd.mobiuz
import
android.os.Bundle
import
android.view.View
import
androidx.fragment.app.
Fragment
import
androidx.fragment.app.
viewModels
import
dagger.hilt.android.AndroidEntryPoint
import
uz.ssd.mobiuz.
R
import
uz.ssd.mobiuz.
databinding.FragmentVerificationBinding
import
uz.ssd.mobiuz.
databinding.FragmentBlankBinding
import
uz.ssd.mobiuz.
ui.auth.AuthViewModel
import
uz.ssd.mobiuz.ui.base.BaseFragment
import
java.lang.NullPointerException
@AndroidEntryPoint
class
RegisterFragment
:
BaseFragment
(
R
.
layout
.
fragment_register
)
{
private
var
_bn
:
FragmentVerificationBinding
?
=
null
class
BlankFragment
:
BaseFragment
(
R
.
layout
.
fragment_blank
)
{
private
var
_bn
:
FragmentBlankBinding
?
=
null
private
val
bn
get
()
=
_bn
?:
throw
NullPointerException
(
"cannot inflate"
)
private
val
viewModel
:
AuthViewModel
by
viewModels
()
override
fun
onViewCreated
(
view
:
View
,
savedInstanceState
:
Bundle
?)
{
_bn
=
Fragment
Verification
Binding
.
bind
(
view
)
_bn
=
Fragment
Blank
Binding
.
bind
(
view
)
setUpUI
()
collects
()
...
...
@@ -33,4 +35,5 @@ class RegisterFragment : BaseFragment(R.layout.fragment_register) {
_bn
=
null
super
.
onDestroy
()
}
}
\ No newline at end of file
app/src/main/java/uz/ssd/mobiuz/MainActivity.kt
View file @
1762fbce
package
uz.ssd.mobiuz
import
android.content.Intent
import
android.net.Uri
import
androidx.appcompat.app.AppCompatActivity
import
android.graphics.Color
import
android.os.Bundle
import
android.view.View
import
androidx.appcompat.app.AppCompatActivity
import
androidx.lifecycle.LiveData
import
androidx.navigation.NavController
import
com.google.android.material.bottomnavigation.BottomNavigationView
import
dagger.hilt.android.AndroidEntryPoint
import
uz.ssd.mobiuz.databinding.ActivityMainBinding
import
java.lang.NullPointerException
import
uz.ssd.mobiuz.utils.extensions.setupWithNavController
@AndroidEntryPoint
class
MainActivity
:
AppCompatActivity
()
{
private
var
_bn
:
ActivityMainBinding
?
=
null
private
val
bn
get
()
=
_bn
?:
throw
NullPointerException
(
"cannot inflate"
)
private
lateinit
var
bottomNavigationView
:
BottomNavigationView
private
var
currentNavController
:
LiveData
<
NavController
>?
=
null
override
fun
onCreate
(
savedInstanceState
:
Bundle
?)
{
super
.
onCreate
(
savedInstanceState
)
_bn
=
ActivityMainBinding
.
inflate
(
layoutInflater
)
setContentView
(
bn
.
root
)
bn
.
button
.
setOnClickListener
{
val
intent
=
Intent
(
Intent
.
ACTION_CALL
)
// intent.data = Uri.parse(Uri.parse("tel:" + "211") Uri.encode("#"))
startActivity
(
intent
)
window
.
statusBarColor
=
Color
.
TRANSPARENT
if
(
savedInstanceState
==
null
)
{
setupBottomNavigationBar
()
}
}
private
fun
setupBottomNavigationBar
()
{
try
{
bottomNavigationView
=
findViewById
(
R
.
id
.
bottom_nav_view
)
val
navGraphIds
=
listOf
(
R
.
navigation
.
nav_graph_home
,
R
.
navigation
.
nav_graph_profile
)
val
controller
=
bottomNavigationView
.
setupWithNavController
(
navGraphIds
=
navGraphIds
,
fragmentManager
=
supportFragmentManager
,
containerId
=
R
.
id
.
nav_host_fragment
,
intent
=
intent
)
currentNavController
=
controller
}
catch
(
e
:
Exception
)
{
e
.
printStackTrace
()
}
}
override
fun
onSupportNavigateUp
():
Boolean
{
return
currentNavController
?.
value
?.
navigateUp
()
?:
false
}
override
fun
onDestroy
()
{
...
...
app/src/main/java/uz/ssd/mobiuz/PinActivity.kt
0 → 100644
View file @
1762fbce
package
uz.ssd.mobiuz
import
androidx.appcompat.app.AppCompatActivity
import
android.os.Bundle
import
android.widget.Toast
import
androidx.biometric.BiometricPrompt
import
androidx.core.content.ContextCompat
import
dagger.hilt.android.AndroidEntryPoint
import
uz.ssd.mobiuz.databinding.ActivityMainBinding
import
uz.ssd.mobiuz.databinding.ActivityPinBinding
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/uz/ssd/mobiuz/PinLockFragment.kt
0 → 100644
View file @
1762fbce
package
uz.ssd.mobiuz
import
android.os.Bundle
import
android.view.View
import
androidx.fragment.app.viewModels
import
androidx.navigation.NavController
import
androidx.navigation.fragment.NavHostFragment
import
dagger.hilt.android.AndroidEntryPoint
import
uz.ssd.mobiuz.databinding.FragmentPinLockBinding
import
uz.ssd.mobiuz.ui.auth.AuthViewModel
import
uz.ssd.mobiuz.ui.base.BaseFragment
@AndroidEntryPoint
class
PinLockFragment
:
BaseFragment
(
R
.
layout
.
fragment_pin_lock
)
{
private
var
_bn
:
FragmentPinLockBinding
?
=
null
private
val
bn
get
()
=
_bn
?:
throw
NullPointerException
(
"cannot inflate"
)
private
val
viewModel
:
AuthViewModel
by
viewModels
()
private
val
navController
:
NavController
by
lazy
(
LazyThreadSafetyMode
.
NONE
)
{
NavHostFragment
.
findNavController
(
this
)
}
override
fun
onViewCreated
(
view
:
View
,
savedInstanceState
:
Bundle
?)
{
_bn
=
FragmentPinLockBinding
.
bind
(
view
)
//200281 svet h shuhrat 50
// 0700268 100 gaz shuhrat
setUpUI
()
collects
()
}
override
fun
setUpUI
()
{
}
override
fun
collects
()
{
}
override
fun
onDestroy
()
{
_bn
=
null
super
.
onDestroy
()
}
}
\ No newline at end of file
app/src/main/java/uz/ssd/mobiuz/SplashActivity.kt
0 → 100644
View file @
1762fbce
package
uz.ssd.mobiuz
import
android.content.Intent
import
android.os.Bundle
import
android.view.WindowManager
import
androidx.appcompat.app.AppCompatActivity
import
androidx.lifecycle.lifecycleScope
import
dagger.hilt.android.AndroidEntryPoint
import
kotlinx.coroutines.delay
import
uz.ssd.mobiuz.databinding.ActivitySplashBinding
import
uz.ssd.mobiuz.model.SharedPref
import
javax.inject.Inject
@AndroidEntryPoint
class
SplashActivity
:
AppCompatActivity
()
{
private
var
_bn
:
ActivitySplashBinding
?
=
null
private
val
bn
get
()
=
_bn
?:
throw
NullPointerException
(
"cannot inflate"
)
@Inject
lateinit
var
pref
:
SharedPref
override
fun
onCreate
(
savedInstanceState
:
Bundle
?)
{
super
.
onCreate
(
savedInstanceState
)
_bn
=
ActivitySplashBinding
.
inflate
(
layoutInflater
)
setContentView
(
bn
.
root
)
lifecycleScope
.
launchWhenCreated
{
delay
(
1000
)
if
(
pref
.
language
.
isEmpty
())
{
startActivity
(
Intent
(
this
@SplashActivity
,
LanguageActivity
::
class
.
java
))
}
else
{
startActivity
(
Intent
(
this
@SplashActivity
,
LanguageActivity
::
class
.
java
))
}
finish
()
}
}
override
fun
onDestroy
()
{
_bn
=
null
super
.
onDestroy
()
}
}
\ No newline at end of file
app/src/main/java/uz/ssd/mobiuz/model/UserAuth.kt
0 → 100644
View file @
1762fbce
package
uz.ssd.mobiuz.model
data class
UserAuth
(
val
phoneNumber
:
String
,
val
password
:
String
)
\ No newline at end of file
app/src/main/java/uz/ssd/mobiuz/network/api/ApiService.kt
View file @
1762fbce
package
uz.ssd.mobiuz.network.api
import
retrofit2.http.Body
import
retrofit2.http.POST
import
uz.ssd.mobiuz.model.UserAuth
import
uz.ssd.mobiuz.network.model.ResponseObject
interface
ApiService
{
@POST
(
"auth/login"
)
suspend
fun
login
(
@Body
req
:
UserAuth
):
ResponseObject
<
String
>
}
\ No newline at end of file
app/src/main/java/uz/ssd/mobiuz/network/repository/AuthRepository.kt
0 → 100644
View file @
1762fbce
package
uz.ssd.mobiuz.network.repository
import
android.content.Context
import
dagger.hilt.android.qualifiers.ApplicationContext
import
uz.ssd.mobiuz.model.UserAuth
import
uz.ssd.mobiuz.network.api.ApiService
import
uz.ssd.mobiuz.network.model.UiStateObject
import
javax.inject.Inject
import
javax.inject.Singleton
@Singleton
class
AuthRepository
@Inject
constructor
(
private
val
apiService
:
ApiService
,
@ApplicationContext
val
context
:
Context
)
{
suspend
fun
loginUser
(
data
:
UserAuth
):
UiStateObject
<
String
>
{
return
try
{
val
res
=
apiService
.
login
(
data
)
when
(
res
.
status
.
code
)
{
200
->
{
UiStateObject
.
SUCCESS
(
res
.
status
.
message
)
}
else
->
UiStateObject
.
SUCCESS
(
res
.
status
.
message
)
}
}
catch
(
e
:
Exception
)
{
UiStateObject
.
SUCCESS
(
"res.message"
)
}
}
}
\ No newline at end of file
app/src/main/java/uz/ssd/mobiuz/network/repository/MainRepository.kt
0 → 100644
View file @
1762fbce
package
uz.ssd.mobiuz.network.repository
import
uz.ssd.mobiuz.network.api.ApiService
import
javax.inject.Inject
import
javax.inject.Singleton
@Singleton
class
MainRepository
@Inject
constructor
(
private
val
apiService
:
ApiService
)
{
}
\ No newline at end of file
app/src/main/java/uz/ssd/mobiuz/ui/auth/AuthViewModel.kt
0 → 100644
View file @
1762fbce
package
uz.ssd.mobiuz.ui.auth
import
androidx.lifecycle.ViewModel
import
androidx.lifecycle.viewModelScope
import
dagger.hilt.android.lifecycle.HiltViewModel
import
kotlinx.coroutines.delay
import
kotlinx.coroutines.flow.MutableStateFlow
import
kotlinx.coroutines.flow.StateFlow
import
kotlinx.coroutines.launch
import
uz.ssd.mobiuz.model.UserAuth
import
uz.ssd.mobiuz.network.model.UiStateObject
import
uz.ssd.mobiuz.network.repository.AuthRepository
import
javax.inject.Inject
@HiltViewModel
class
AuthViewModel
@Inject
constructor
(
private
val
repository
:
AuthRepository
)
:
ViewModel
()
{
private
val
_loginUiState
=
MutableStateFlow
<
UiStateObject
<
String
>>(
UiStateObject
.
EMPTY
)
val
loginUiState
:
StateFlow
<
UiStateObject
<
String
>>
=
_loginUiState
fun
login
(
data
:
UserAuth
)
=
viewModelScope
.
launch
{
_loginUiState
.
value
=
UiStateObject
.
LOADING
delay
(
1000
)
_loginUiState
.
value
=
repository
.
loginUser
(
data
)
_loginUiState
.
value
=
UiStateObject
.
EMPTY
}
}
\ No newline at end of file
app/src/main/java/uz/ssd/mobiuz/ui/auth/EnterPasswordFragment.kt
0 → 100644
View file @
1762fbce
package
uz.ssd.mobiuz.ui.auth
import
android.os.Bundle
import
android.view.View
import
androidx.core.view.isVisible
import
androidx.fragment.app.viewModels
import
androidx.lifecycle.lifecycleScope
import
androidx.navigation.NavController
import
androidx.navigation.fragment.NavHostFragment
import
dagger.hilt.android.AndroidEntryPoint
import
kotlinx.coroutines.flow.collect
import
uz.ssd.mobiuz.R
import
uz.ssd.mobiuz.databinding.FragmentEnterPasswordBinding
import
uz.ssd.mobiuz.model.UserAuth
import
uz.ssd.mobiuz.network.model.UiStateObject
import
uz.ssd.mobiuz.ui.base.BaseFragment
import
uz.ssd.mobiuz.ui.global.TextWatcherWrapper
import
uz.ssd.mobiuz.utils.ButtonClick
import
uz.ssd.mobiuz.utils.Utils
import
uz.ssd.mobiuz.utils.extensions.showMessage
@AndroidEntryPoint
class
EnterPasswordFragment
:
BaseFragment
(
R
.
layout
.
fragment_enter_password
)
{
private
var
_bn
:
FragmentEnterPasswordBinding
?
=
null
private
val
bn
get
()
=
_bn
?:
throw
NullPointerException
(
"cannot inflate"
)
private
val
navController
:
NavController
by
lazy
(
LazyThreadSafetyMode
.
NONE
)
{
NavHostFragment
.
findNavController
(
this
)
}
private
val
viewModel
:
AuthViewModel
by
viewModels
()
override
fun
onViewCreated
(
view
:
View
,
savedInstanceState
:
Bundle
?)
{
_bn
=
FragmentEnterPasswordBinding
.
bind
(
view
)
setUpUI
()
collects
()
}
override
fun
setUpUI
()
{
bn
.
apply
{
inputPassword
.
addTextChangedListener
(
object
:
TextWatcherWrapper
()
{
override
fun
onTextChanged
(
s
:
CharSequence
?,
start
:
Int
,
before
:
Int
,
count
:
Int
)
{
super
.
onTextChanged
(
s
,
start
,
before
,
count
)
txtCheckPassword
.
isVisible
=
(
s
.
toString
().
length
<
5
)
}
})
inputConfirm
.
addTextChangedListener
(
object
:
TextWatcherWrapper
()
{
override
fun
onTextChanged
(
s
:
CharSequence
?,
start
:
Int
,
before
:
Int
,
count
:
Int
)
{
super
.
onTextChanged
(
s
,
start
,
before
,
count
)
if
(
s
.
toString
().
length
>
5
&&
s
.
toString
()
==
inputPassword
.
text
.
toString
().
trim
())
{
imageCheck
.
setImageResource
(
R
.
drawable
.
ic_baseline_check_circle
)
txtCheckConfirm
.
text
=
"Пароли совпали"
txtCheckConfirm
.
setTextColor
(
requireActivity
().
resources
.
getColor
(
R
.
color
.
green
))
btnLogin
.
isEnabled
=
true
}
else
{
imageCheck
.
setImageResource
(
R
.
drawable
.
ic_vector_error
)
txtCheckConfirm
.
text
=
"Пароли не совпали"
btnLogin
.
isEnabled
=
true
txtCheckConfirm
.
setTextColor
(
requireActivity
().
resources
.
getColor
(
R
.
color
.
red
))
}
imageCheck
.
isVisible
=
true
txtCheckConfirm
.
isVisible
=
true
}
})
btnLogin
.
setOnClickListener
(
object
:
ButtonClick
()
{
override
fun
onSingleClick
(
v
:
View
?)
{
val
phone
=
inputPassword
.
text
.
toString
().
trim
()
viewModel
.
login
(
UserAuth
(
phone
,
"password"
))
}
})
toolbar
.
setNavigationOnClickListener
{
navController
.
navigateUp
()
}
}
}
override
fun
collects
()
{
viewLifecycleOwner
.
lifecycleScope
.
launchWhenStarted
{
viewModel
.
loginUiState
.
collect
{
when
(
it
)
{
is
UiStateObject
.
SUCCESS
->
{
showProgressDialog
(
false
)
navController
.
navigate
(
R
.
id
.
verificationFragment
,
null
,
Utils
.
navOptions
())
}
is
UiStateObject
.
ERROR
->
{
showProgressDialog
(
false
)
showMessage
(
it
.
message
)
}
is
UiStateObject
.
LOADING
->
{
showProgressDialog
(
true
)
}
else
->
Unit
}
}
}
}
override
fun
onDestroy
()
{
_bn
=
null
super
.
onDestroy
()
}
}
\ No newline at end of file
app/src/main/java/uz/ssd/mobiuz/ui/auth/ForgetPasswordFragment.kt
0 → 100644
View file @
1762fbce
package
uz.ssd.mobiuz.ui.auth
import
android.os.Bundle
import
android.view.View
import
androidx.fragment.app.viewModels
import
androidx.navigation.NavController
import
androidx.navigation.fragment.NavHostFragment
import
dagger.hilt.android.AndroidEntryPoint
import
uz.ssd.mobiuz.R
import
uz.ssd.mobiuz.databinding.FragmentForgetPasswordBinding
import
uz.ssd.mobiuz.ui.base.BaseFragment
@AndroidEntryPoint
class
ForgetPasswordFragment
:
BaseFragment
(
R
.
layout
.
fragment_forget_password
)
{
private
var
_bn
:
FragmentForgetPasswordBinding
?
=
null
private
val
bn
get
()
=
_bn
?:
throw
NullPointerException
(
"cannot inflate"
)
private
val
viewModel
:
AuthViewModel
by
viewModels
()
private
val
navController
:
NavController
by
lazy
(
LazyThreadSafetyMode
.
NONE
)
{
NavHostFragment
.
findNavController
(
this
)
}
override
fun
onViewCreated
(
view
:
View
,
savedInstanceState
:
Bundle
?)
{
_bn
=
FragmentForgetPasswordBinding
.
bind
(
view
)
setUpUI
()
collects
()
}
override
fun
setUpUI
()
{
}
override
fun
collects
()
{
}
override
fun
onDestroy
()
{
_bn
=
null
super
.
onDestroy
()
}
}
\ No newline at end of file
app/src/main/java/uz/ssd/mobiuz/ui/auth/LoginFragment.kt
View file @
1762fbce
...
...
@@ -2,32 +2,92 @@ package uz.ssd.mobiuz.ui.auth
import
android.os.Bundle
import
android.view.View
import
androidx.fragment.app.Fragment
import
androidx.core.os.bundleOf
import
androidx.fragment.app.viewModels
import
androidx.lifecycle.lifecycleScope
import
androidx.navigation.NavController
import
androidx.navigation.fragment.NavHostFragment
import
dagger.hilt.android.AndroidEntryPoint
import
kotlinx.coroutines.flow.collect
import
uz.ssd.mobiuz.R
import
uz.ssd.mobiuz.databinding.FragmentVerificationBinding
import
uz.ssd.mobiuz.databinding.FragmentLoginBinding
import
uz.ssd.mobiuz.model.UserAuth
import
uz.ssd.mobiuz.network.model.UiStateObject
import
uz.ssd.mobiuz.ui.base.BaseFragment
import
java.lang.NullPointerException
import
uz.ssd.mobiuz.ui.global.TextWatcherWrapper
import
uz.ssd.mobiuz.utils.ButtonClick
import
uz.ssd.mobiuz.utils.CONSTANTS
import
uz.ssd.mobiuz.utils.Utils
import
uz.ssd.mobiuz.utils.extensions.customLog
import
uz.ssd.mobiuz.utils.extensions.showMessage
@AndroidEntryPoint
class
LoginFragment
:
BaseFragment
(
R
.
layout
.
fragment_login
)
{
private
var
_bn
:
Fragment
Verificatio
nBinding
?
=
null
private
var
_bn
:
Fragment
Logi
nBinding
?
=
null
private
val
bn
get
()
=
_bn
?:
throw
NullPointerException
(
"cannot inflate"
)
private
val
navController
:
NavController
by
lazy
(
LazyThreadSafetyMode
.
NONE
)
{
NavHostFragment
.
findNavController
(
this
)
}
var
phone
=
""
var
phoneRaw
=
""
private
val
viewModel
:
AuthViewModel
by
viewModels
()
override
fun
onViewCreated
(
view
:
View
,
savedInstanceState
:
Bundle
?)
{
_bn
=
Fragment
Verificatio
nBinding
.
bind
(
view
)
_bn
=
Fragment
Logi
nBinding
.
bind
(
view
)
setUpUI
()
collects
()
}
override
fun
setUpUI
()
{
bn
.
apply
{
inputPhone
.
addTextChangedListener
(
object
:
TextWatcherWrapper
(){
override
fun
onTextChanged
(
s
:
CharSequence
?,
start
:
Int
,
before
:
Int
,
count
:
Int
)
{
super
.
onTextChanged
(
s
,
start
,
before
,
count
)
customLog
(
"s=${s?.toString()?.length}"
)
btnLogin
.
isEnabled
=
inputPhone
.
text
.
toString
().
trim
().
length
==
17
}
})
btnLogin
.
setOnClickListener
(
object
:
ButtonClick
()
{
override
fun
onSingleClick
(
v
:
View
?)
{
phone
=
"+998"
+
inputPhone
.
unmaskedText
.
toString
().
trim
()
phoneRaw
=
inputPhone
.
text
.
toString
().
trim
()
viewModel
.
login
(
UserAuth
(
phone
,
"password"
))
}
})
toolbar
.
setNavigationOnClickListener
{
navController
.
navigateUp
()
}
}
}
override
fun
collects
()
{
viewLifecycleOwner
.
lifecycleScope
.
launchWhenStarted
{
viewModel
.
loginUiState
.
collect
{
when
(
it
)
{
is
UiStateObject
.
SUCCESS
->
{
showProgressDialog
(
false
)
if
(
phone
!=
"+998949125150"
)
{
navController
.
navigate
(
R
.
id
.
enterPasswordFragment
,
null
,
Utils
.
navOptions
())
}
else
{
navController
.
navigate
(
R
.
id
.
passwordFragment
,
bundleOf
(
CONSTANTS
.
PHONE
to
phoneRaw
),
Utils
.
navOptions
())
}
}
is
UiStateObject
.
ERROR
->
{
showProgressDialog
(
false
)
showMessage
(
it
.
message
)
}
is
UiStateObject
.
LOADING
->
{
showProgressDialog
(
true
)
}
else
->
Unit
}
}
}
}
override
fun
onDestroy
()
{
...
...
@@ -35,3 +95,16 @@ class LoginFragment : BaseFragment(R.layout.fragment_login) {
super
.
onDestroy
()
}
}
//fun main(){
// var ss = -421
// if(ss.toString().startsWith("-")){
// ss = ss.toString().replace("-","").toInt()
// val dd = (ss.toString().reversed().toInt()) * -1
// print(dd)
// }else{
// val dd = ss.toString().reversed().toInt()
// print(dd)
// }
//
//}
\ No newline at end of file
app/src/main/java/uz/ssd/mobiuz/ui/auth/PasswordFragment.kt
0 → 100644
View file @
1762fbce
package
uz.ssd.mobiuz.ui.auth
import
android.os.Bundle
import
android.view.View
import
androidx.fragment.app.viewModels
import
androidx.lifecycle.lifecycleScope
import
androidx.navigation.NavController
import
androidx.navigation.fragment.NavHostFragment
import
dagger.hilt.android.AndroidEntryPoint
import
kotlinx.coroutines.flow.collect
import
uz.ssd.mobiuz.R
import
uz.ssd.mobiuz.databinding.FragmentPasswordBinding
import
uz.ssd.mobiuz.model.UserAuth
import
uz.ssd.mobiuz.network.model.UiStateObject
import
uz.ssd.mobiuz.ui.base.BaseFragment
import
uz.ssd.mobiuz.ui.global.TextWatcherWrapper
import
uz.ssd.mobiuz.utils.ButtonClick
import
uz.ssd.mobiuz.utils.CONSTANTS
import
uz.ssd.mobiuz.utils.Utils
import
uz.ssd.mobiuz.utils.extensions.showMessage
@AndroidEntryPoint
class
PasswordFragment
:
BaseFragment
(
R
.
layout
.
fragment_password
)
{
private
var
_bn
:
FragmentPasswordBinding
?
=
null
private
val
bn
get
()
=
_bn
?:
throw
NullPointerException
(
"cannot inflate"
)
private
val
navController
:
NavController
by
lazy
(
LazyThreadSafetyMode
.
NONE
)
{
NavHostFragment
.
findNavController
(
this
)
}
private
var
phone
=
""
private
val
viewModel
:
AuthViewModel
by
viewModels
()
override
fun
onCreate
(
savedInstanceState
:
Bundle
?)
{
super
.
onCreate
(
savedInstanceState
)
arguments
?.
let
{
phone
=
it
.
getString
(
CONSTANTS
.
PHONE
,
""
)
}
}
override
fun
onViewCreated
(
view
:
View
,
savedInstanceState
:
Bundle
?)
{
_bn
=
FragmentPasswordBinding
.
bind
(
view
)
setUpUI
()
collects
()
}
override
fun
setUpUI
()
{
bn
.
apply
{
inputPhone
.
setText
(
phone
)
txtForgetPassword
.
setOnClickListener
(
object
:
ButtonClick
()
{
override
fun
onSingleClick
(
v
:
View
?)
{
navController
.
navigate
(
R
.
id
.
forgetPasswordFragment
,
null
,
Utils
.
navOptions
())
}
})
inputPassword
.
addTextChangedListener
(
object
:
TextWatcherWrapper
()
{
override
fun
onTextChanged
(
s
:
CharSequence
?,
start
:
Int
,
before
:
Int
,
count
:
Int
)
{
super
.
onTextChanged
(
s
,
start
,
before
,
count
)
btnLogin
.
isEnabled
=
(
s
.
toString
().
length
>
5
)
}
})
btnLogin
.
setOnClickListener
(
object
:
ButtonClick
()
{
override
fun
onSingleClick
(
v
:
View
?)
{
val
phone
=
inputPassword
.
text
.
toString
().
trim
()
viewModel
.
login
(
UserAuth
(
phone
,
"password"
))
}
})
toolbar
.
setNavigationOnClickListener
{
navController
.
navigateUp
()
}
}
}
override
fun
collects
()
{
viewLifecycleOwner
.
lifecycleScope
.
launchWhenStarted
{
viewModel
.
loginUiState
.
collect
{
when
(
it
)
{
is
UiStateObject
.
SUCCESS
->
{
showProgressDialog
(
false
)
navController
.
navigate
(
R
.
id
.
verificationFragment
,
null
,
Utils
.
navOptions
())
}
is
UiStateObject
.
ERROR
->
{
showProgressDialog
(
false
)
showMessage
(
it
.
message
)
}
is
UiStateObject
.
LOADING
->
{
showProgressDialog
(
true
)
}
else
->
Unit
}
}
}
}
override
fun
onDestroy
()
{
_bn
=
null
super
.
onDestroy
()
}
}
\ No newline at end of file
app/src/main/java/uz/ssd/mobiuz/ui/auth/VerificationFragment.kt
View file @
1762fbce
package
uz.ssd.mobiuz.ui.auth
import
android.content.Intent
import
android.graphics.Color
import
android.os.Bundle
import
android.view.View
import
androidx.core.view.isVisible
import
androidx.fragment.app.Fragment
import
androidx.fragment.app.viewModels
import
androidx.lifecycle.lifecycleScope
import
androidx.navigation.NavController
import
androidx.navigation.fragment.NavHostFragment
import
dagger.hilt.android.AndroidEntryPoint
import
kotlinx.coroutines.flow.collect
import
uz.ssd.mobiuz.MainActivity
import
uz.ssd.mobiuz.R
import
uz.ssd.mobiuz.databinding.FragmentVerificationBinding
import
uz.ssd.mobiuz.model.UserAuth
import
uz.ssd.mobiuz.network.model.UiStateObject
import
uz.ssd.mobiuz.ui.base.BaseFragment
import
uz.ssd.mobiuz.ui.global.TextWatcherWrapper
import
uz.ssd.mobiuz.utils.ButtonClick
import
uz.ssd.mobiuz.utils.Utils
import
uz.ssd.mobiuz.utils.extensions.showMessage
import
java.lang.NullPointerException
@AndroidEntryPoint
...
...
@@ -14,19 +29,79 @@ class VerificationFragment : BaseFragment(R.layout.fragment_verification) {
private
var
_bn
:
FragmentVerificationBinding
?
=
null
private
val
bn
get
()
=
_bn
?:
throw
NullPointerException
(
"cannot inflate"
)
private
val
viewModel
:
AuthViewModel
by
viewModels
()
private
val
navController
:
NavController
by
lazy
(
LazyThreadSafetyMode
.
NONE
)
{
NavHostFragment
.
findNavController
(
this
)
}
override
fun
onViewCreated
(
view
:
View
,
savedInstanceState
:
Bundle
?)
{
_bn
=
FragmentVerificationBinding
.
bind
(
view
)
setUpUI
()
count
(
true
)
collects
()
}
override
fun
setUpUI
()
{
bn
.
apply
{
toolbar
.
setNavigationOnClickListener
{
navController
.
navigateUp
()
}
pinView
.
addTextChangedListener
(
object
:
TextWatcherWrapper
(){
override
fun
onTextChanged
(
s
:
CharSequence
?,
start
:
Int
,
before
:
Int
,
count
:
Int
)
{
super
.
onTextChanged
(
s
,
start
,
before
,
count
)
btnLogin
.
isEnabled
=
s
.
toString
().
length
>
5
}
})
btnLogin
.
setOnClickListener
(
object
:
ButtonClick
(){
override
fun
onSingleClick
(
v
:
View
?)
{
viewModel
.
login
(
UserAuth
(
"phone"
,
"password"
))
}
})
countWaitText
.
setTextColor
(
Color
.
parseColor
(
"#97ADB6"
))
sentCodeAgain
.
setTextColor
(
Color
.
parseColor
(
"#FF9500"
))
sentCodeAgain
.
setOnClickListener
{
viewModel
.
login
(
UserAuth
(
""
,
""
))
count
(
true
)
}
coutdownView
.
setOnCountdownEndListener
{
count
(
false
)
}
}
}
override
fun
collects
()
{
viewLifecycleOwner
.
lifecycleScope
.
launchWhenStarted
{
viewModel
.
loginUiState
.
collect
{
when
(
it
)
{
is
UiStateObject
.
SUCCESS
->
{
showProgressDialog
(
false
)
requireActivity
().
finish
()
startActivity
(
Intent
(
requireContext
(),
MainActivity
::
class
.
java
))
}
is
UiStateObject
.
ERROR
->
{
showProgressDialog
(
false
)
showMessage
(
it
.
message
)
}
is
UiStateObject
.
LOADING
->
{
showProgressDialog
(
true
)
}
else
->
Unit
}
}
}
}
fun
count
(
status
:
Boolean
)
{
bn
.
apply
{
sentCodeAgain
.
isVisible
=
!
status
countWaitText
.
isVisible
=
status
coutdownView
.
isVisible
=
status
if
(
status
)
coutdownView
.
start
(
120000
)
}
}
override
fun
onDestroy
()
{
...
...
app/src/main/java/uz/ssd/mobiuz/ui/base/BaseFragment.kt
View file @
1762fbce
package
uz.ssd.mobiuz.ui.base
import
android.graphics.Color
import
android.os.Bundle
import
android.text.SpannableStringBuilder
import
android.text.Spanned
import
android.text.style.ForegroundColorSpan
import
androidx.fragment.app.Fragment
import
android.view.LayoutInflater
import
android.view.View
import
android.view.ViewGroup
import
com.google.android.material.snackbar.Snackbar
import
uz.ssd.mobiuz.R
import
uz.ssd.mobiuz.ui.global.ProgressDialog
abstract
class
BaseFragment
(
private
val
layoutId
:
Int
)
:
Fragment
()
{
...
...
@@ -17,4 +23,18 @@ abstract class BaseFragment(private val layoutId:Int) : Fragment() {
protected
abstract
fun
setUpUI
()
protected
abstract
fun
collects
()
protected
fun
showProgressDialog
(
progress
:
Boolean
)
{
if
(!
isAdded
)
return
val
fragment
=
childFragmentManager
.
findFragmentByTag
(
"bf_progress"
)
if
(
fragment
!=
null
&&
!
progress
)
{
(
fragment
as
ProgressDialog
).
dismissAllowingStateLoss
()
childFragmentManager
.
executePendingTransactions
()
}
else
if
(
fragment
==
null
&&
progress
)
{
ProgressDialog
().
show
(
childFragmentManager
,
"bf_progress"
)
childFragmentManager
.
executePendingTransactions
()
}
}
}
\ No newline at end of file
app/src/main/java/uz/ssd/mobiuz/ui/global/ProgressDialog.kt
0 → 100644
View file @
1762fbce
package
uz.ssd.mobiuz.ui.global
import
android.os.Bundle
import
androidx.fragment.app.DialogFragment
import
uz.ssd.mobiuz.R
class
ProgressDialog
:
DialogFragment
(
R
.
layout
.
fragment_progress
)
{
override
fun
onCreate
(
savedInstanceState
:
Bundle
?)
{
super
.
onCreate
(
savedInstanceState
)
setStyle
(
STYLE_NO_FRAME
,
R
.
style
.
ProgressDialogTheme
)
isCancelable
=
false
}
}
\ No newline at end of file
app/src/main/java/uz/ssd/mobiuz/ui/global/TextWatcherWrapper.kt
0 → 100644
View file @
1762fbce
package
uz.ssd.mobiuz.ui.global
import
android.text.Editable
import
android.text.TextWatcher
/**
* Created by mr-shoxruxbek on 20/08/2021.
*/
open
class
TextWatcherWrapper
:
TextWatcher
{
override
fun
beforeTextChanged
(
s
:
CharSequence
?,
start
:
Int
,
count
:
Int
,
after
:
Int
)
{}
override
fun
onTextChanged
(
s
:
CharSequence
?,
start
:
Int
,
before
:
Int
,
count
:
Int
)
{}
override
fun
afterTextChanged
(
s
:
Editable
)
{}
}
\ No newline at end of file
app/src/main/java/uz/ssd/mobiuz/ui/home/HomeFragment.kt
View file @
1762fbce
...
...
@@ -2,13 +2,11 @@ package uz.ssd.mobiuz.ui.home
import
android.os.Bundle
import
android.view.View
import
androidx.fragment.app.Fragment
import
dagger.hilt.android.AndroidEntryPoint
import
uz.ssd.mobiuz.R
import
uz.ssd.mobiuz.databinding.FragmentHomeBinding
import
uz.ssd.mobiuz.databinding.FragmentVerificationBinding
import
uz.ssd.mobiuz.ui.base.BaseFragment
import
java.lang.NullPointerException
import
uz.ssd.mobiuz.utils.ButtonClick
@AndroidEntryPoint
...
...
@@ -26,8 +24,19 @@ class HomeFragment : BaseFragment(R.layout.fragment_home) {
}
override
fun
setUpUI
()
{
bn
.
apply
{
btnMenu
.
setOnClickListener
(
object
:
ButtonClick
()
{
override
fun
onSingleClick
(
v
:
View
?)
{
}
})
btnAddSum
.
setOnClickListener
(
object
:
ButtonClick
()
{
override
fun
onSingleClick
(
v
:
View
?)
{
}
})
}
}
override
fun
collects
()
{
...
...
app/src/main/java/uz/ssd/mobiuz/utils/ButtonClick.kt
0 → 100644
View file @
1762fbce
package
uz.ssd.mobiuz.utils
import
android.os.SystemClock
import
android.view.View
abstract
class
ButtonClick
:
View
.
OnClickListener
{
private
var
mLastClickTime
:
Long
=
0L
abstract
fun
onSingleClick
(
v
:
View
?)
override
fun
onClick
(
v
:
View
?)
{
if
(
SystemClock
.
elapsedRealtime
()
-
mLastClickTime
<
1500
)
return
mLastClickTime
=
SystemClock
.
elapsedRealtime
()
onSingleClick
(
v
)
}
}
app/src/main/java/uz/ssd/mobiuz/utils/CONSTANTS.kt
View file @
1762fbce
...
...
@@ -8,8 +8,9 @@ object CONSTANTS {
const
val
ROOM
=
"room"
const
val
RU
=
"ru"
const
val
UZ
=
"uz"
const
val
UZ_RU
=
"kv
"
const
val
EN
=
"en
"
const
val
DES_POINT
=
"des_point"
const
val
PHONE
=
"phone"
const
val
TYPE_REPORT
=
"type_report"
const
val
TYPE_CREATE_SELF
=
"type_create_self"
const
val
TYPE_REPORT_102
=
"type_report_102"
...
...
app/src/main/java/uz/ssd/mobiuz/utils/extensions/StringExtension.kt
0 → 100644
View file @
1762fbce
package
uz.ssd.mobiuz.utils.extensions
import
android.app.Activity
import
android.content.Context
import
android.util.Log
import
android.widget.Toast
import
androidx.fragment.app.Fragment
import
androidx.recyclerview.widget.RecyclerView
import
com.google.gson.JsonSyntaxException
import
retrofit2.HttpException
import
uz.ssd.mobiuz.R
import
java.io.IOException
import
java.net.ConnectException
fun
Fragment
.
showMessage
(
message
:
String
)
{
Toast
.
makeText
(
requireContext
(),
message
,
Toast
.
LENGTH_SHORT
).
show
()
}
fun
Activity
.
showMessage
(
message
:
String
)
{
Toast
.
makeText
(
this
,
message
,
Toast
.
LENGTH_SHORT
).
show
()
}
fun
Fragment
.
customLog
(
message
:
Any
)
{
Log
.
e
(
"AAA"
,
message
.
toString
())
}
fun
Activity
.
customLog
(
message
:
Any
)
{
Log
.
e
(
"AAA"
,
message
.
toString
())
}
fun
RecyclerView
.
customLog
(
message
:
Any
)
{
Log
.
e
(
"AAA"
,
message
.
toString
())
}
fun
Throwable
.
userMessage
(
context
:
Context
)
=
when
(
this
)
{
is
HttpException
->
when
(
this
.
code
())
{
304
->
context
.
getString
(
R
.
string
.
ex304
)
400
->
context
.
getString
(
R
.
string
.
ex400
)
401
->
context
.
getString
(
R
.
string
.
ex401
)
403
->
context
.
getString
(
R
.
string
.
ex403
)
404
->
context
.
getString
(
R
.
string
.
ex404
)
405
->
context
.
getString
(
R
.
string
.
ex405
)
406
->
context
.
getString
(
R
.
string
.
ex406
)
408
->
context
.
getString
(
R
.
string
.
ex408
)
409
->
context
.
getString
(
R
.
string
.
ex409
)
413
->
context
.
getString
(
R
.
string
.
ex413
)
422
->
context
.
getString
(
R
.
string
.
ex422
)
429
->
context
.
getString
(
R
.
string
.
ex429
)
500
->
context
.
getString
(
R
.
string
.
ex500
)
502
->
context
.
getString
(
R
.
string
.
ex502
)
else
->
context
.
getString
(
R
.
string
.
exelse
)
}
is
IOException
->
context
.
getString
(
R
.
string
.
ioexception
)
is
JsonSyntaxException
->
context
.
getString
(
R
.
string
.
jsonsyntaxexception
)
is
ConnectException
->
context
.
getString
(
R
.
string
.
connect_exception
)
else
->
context
.
getString
(
R
.
string
.
ex_nothing
)
}
typealias
SingleBlock
<
T
>
=
(
T
)
->
Unit
typealias
MultiBlock
<
T
,
K
>
=
(
T
,
K
)
->
Unit
typealias
ThreeBlock
<
T
,
K
,
M
>
=
(
T
,
K
,
M
)
->
Unit
app/src/main/res/color/nav_item_background_tint.xml
0 → 100644
View file @
1762fbce
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<item
android:color=
"?attr/colorSecondary"
android:alpha=
"0.12"
android:state_checked=
"true"
/>
<item
android:alpha=
"0.12"
android:color=
"@android:color/white"
android:state_pressed=
"true"
/>
<item
android:color=
"@android:color/transparent"
/>
</selector>
app/src/main/res/color/nav_item_tint.xml
0 → 100644
View file @
1762fbce
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<item
android:color=
"@color/red_dark"
android:state_checked=
"true"
/>
<item
android:color=
"?colorControlNormal"
/>
</selector>
app/src/main/res/drawable/background.png
0 → 100644
View file @
1762fbce
134 KB
app/src/main/res/drawable/banner.png
0 → 100644
View file @
1762fbce
56.6 KB
app/src/main/res/drawable/bgn_home.png
0 → 100644
View file @
1762fbce
121 KB
app/src/main/res/drawable/bgn_lang.xml
0 → 100644
View file @
1762fbce
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<item
android:state_pressed=
"true"
>
<shape>
<solid
android:color=
"@color/lang_bgn_dark"
/>
<corners
android:radius=
"@dimen/_6sdp"
/>
</shape>
</item>
<item
android:state_pressed=
"false"
>
<shape>
<solid
android:color=
"@color/lang_bgn"
/>
<corners
android:radius=
"@dimen/_6sdp"
/>
</shape>
</item>
</selector>
\ No newline at end of file
app/src/main/res/drawable/button_default_bg.xml
0 → 100644
View file @
1762fbce
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<corners
android:radius=
"10dp"
/>
<solid
android:color=
"@color/red"
/>
</shape>
\ No newline at end of file
app/src/main/res/drawable/button_false_bg.xml
0 → 100644
View file @
1762fbce
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<corners
android:radius=
"10dp"
/>
<solid
android:color=
"@color/red_disabled"
/>
</shape>
\ No newline at end of file
app/src/main/res/drawable/button_selector.xml
0 → 100644
View file @
1762fbce
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<item
android:state_pressed=
"true"
>
<shape>
<corners
android:radius=
"10dp"
/>
<solid
android:color=
"@color/red_dark"
/>
</shape>
</item>
<item
android:drawable=
"@drawable/button_default_bg"
android:state_enabled=
"true"
/>
<item
android:drawable=
"@drawable/button_false_bg"
android:state_enabled=
"false"
/>
</selector>
\ No newline at end of file
app/src/main/res/drawable/color/nav_item_background_tint.xml
0 → 100644
View file @
1762fbce
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<item
android:color=
"?attr/colorSecondary"
android:alpha=
"0.12"
android:state_checked=
"true"
/>
<item
android:alpha=
"0.12"
android:color=
"@android:color/white"
android:state_pressed=
"true"
/>
<item
android:color=
"@android:color/transparent"
/>
</selector>
app/src/main/res/drawable/color/nav_item_tint.xml
0 → 100644
View file @
1762fbce
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<item
android:color=
"@color/primary"
android:state_checked=
"true"
/>
<item
android:color=
"?colorControlNormal"
/>
</selector>
app/src/main/res/drawable/frame_54.png
0 → 100644
View file @
1762fbce
31.3 KB
app/src/main/res/drawable/frame_7.png
0 → 100644
View file @
1762fbce
78.7 KB
app/src/main/res/drawable/header.png
0 → 100644
View file @
1762fbce
143 KB
app/src/main/res/drawable/ic_background.xml
0 → 100644
View file @
1762fbce
This diff is collapsed.
Click to expand it.
app/src/main/res/drawable/ic_baseline_account_box.xml
0 → 100644
View file @
1762fbce
<vector
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:width=
"24dp"
android:height=
"24dp"
android:viewportWidth=
"24"
android:viewportHeight=
"24"
android:tint=
"?attr/colorControlNormal"
>
<path
android:fillColor=
"@android:color/white"
android:pathData=
"M3,5v14c0,1.1 0.89,2 2,2h14c1.1,0 2,-0.9 2,-2L21,5c0,-1.1 -0.9,-2 -2,-2L5,3c-1.11,0 -2,0.9 -2,2zM15,9c0,1.66 -1.34,3 -3,3s-3,-1.34 -3,-3 1.34,-3 3,-3 3,1.34 3,3zM6,17c0,-2 4,-3.1 6,-3.1s6,1.1 6,3.1v1L6,18v-1z"
/>
</vector>
app/src/main/res/drawable/ic_baseline_arrow_back.xml
0 → 100644
View file @
1762fbce
<vector
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:width=
"24dp"
android:height=
"24dp"
android:viewportWidth=
"24"
android:viewportHeight=
"24"
android:tint=
"@color/red"
android:autoMirrored=
"true"
>
<path
android:fillColor=
"@android:color/white"
android:pathData=
"M20,11H7.83l5.59,-5.59L12,4l-8,8 8,8 1.41,-1.41L7.83,13H20v-2z"
/>
</vector>
app/src/main/res/drawable/ic_baseline_ballot.xml
0 → 100644
View file @
1762fbce
<vector
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:width=
"24dp"
android:height=
"24dp"
android:viewportWidth=
"24"
android:viewportHeight=
"24"
android:tint=
"?attr/colorControlNormal"
>
<path
android:fillColor=
"@android:color/white"
android:pathData=
"M13,9.5h5v-2h-5V9.5zM13,16.5h5v-2h-5V16.5zM19,21H5c-1.1,0 -2,-0.9 -2,-2V5c0,-1.1 0.9,-2 2,-2h14c1.1,0 2,0.9 2,2v14C21,20.1 20.1,21 19,21zM6,11h5V6H6V11zM7,7h3v3H7V7zM6,18h5v-5H6V18zM7,14h3v3H7V14z"
android:fillType=
"evenOdd"
/>
</vector>
app/src/main/res/drawable/ic_baseline_check_circle.xml
0 → 100644
View file @
1762fbce
<vector
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:width=
"16dp"
android:height=
"16dp"
android:viewportWidth=
"24"
android:viewportHeight=
"24"
android:tint=
"@color/green"
>
<path
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"
/>
</vector>
app/src/main/res/drawable/ic_baseline_home.xml
0 → 100644
View file @
1762fbce
<vector
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:width=
"24dp"
android:height=
"24dp"
android:viewportWidth=
"24"
android:viewportHeight=
"24"
android:tint=
"?attr/colorControlNormal"
>
<path
android:fillColor=
"@android:color/white"
android:pathData=
"M10,20v-6h4v6h5v-8h3L12,3 2,12h3v8z"
/>
</vector>
app/src/main/res/drawable/ic_baseline_keyboard_arrow_right.xml
0 → 100644
View file @
1762fbce
<vector
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:width=
"16dp"
android:height=
"16dp"
android:viewportWidth=
"24"
android:viewportHeight=
"24"
android:tint=
"@color/red_dark"
>
<path
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"
/>
</vector>
app/src/main/res/drawable/ic_group_12.xml
0 → 100644
View file @
1762fbce
<vector
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:width=
"55dp"
android:height=
"10dp"
android:viewportWidth=
"55"
android:viewportHeight=
"10"
>
<path
android:pathData=
"M5,5m-5,0a5,5 0,1 1,10 0a5,5 0,1 1,-10 0"
android:fillColor=
"#E72B32"
/>
<path
android:strokeWidth=
"1"
android:pathData=
"M5,5m-4.5,0a4.5,4.5 0,1 1,9 0a4.5,4.5 0,1 1,-9 0"
android:strokeAlpha=
"0.06"
android:fillColor=
"#00000000"
android:strokeColor=
"#000000"
/>
<path
android:strokeWidth=
"1"
android:pathData=
"M20,5m-4.5,0a4.5,4.5 0,1 1,9 0a4.5,4.5 0,1 1,-9 0"
android:strokeAlpha=
"0.06"
android:fillColor=
"#00000000"
android:strokeColor=
"#000000"
/>
<path
android:strokeWidth=
"1"
android:pathData=
"M35,5m-4.5,0a4.5,4.5 0,1 1,9 0a4.5,4.5 0,1 1,-9 0"
android:strokeAlpha=
"0.06"
android:fillColor=
"#00000000"
android:strokeColor=
"#000000"
/>
<path
android:strokeWidth=
"1"
android:pathData=
"M50,5m-4.5,0a4.5,4.5 0,1 1,9 0a4.5,4.5 0,1 1,-9 0"
android:strokeAlpha=
"0.06"
android:fillColor=
"#00000000"
android:strokeColor=
"#000000"
/>
</vector>
app/src/main/res/drawable/ic_menu.xml
0 → 100644
View file @
1762fbce
<vector
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:width=
"18dp"
android:height=
"12dp"
android:viewportWidth=
"18"
android:viewportHeight=
"12"
>
<path
android:pathData=
"M12,12H0V10H12V12ZM18,7H0V5H18V7ZM18,2H0V0H18V2Z"
android:fillColor=
"#ffffff"
/>
</vector>
app/src/main/res/drawable/ic_message.xml
0 → 100644
View file @
1762fbce
<vector
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:width=
"15dp"
android:height=
"15dp"
android:viewportWidth=
"15"
android:viewportHeight=
"15"
>
<path
android:pathData=
"M12.75,0.333H2.25C1.6533,0.333 1.081,0.5687 0.659,0.9882C0.2371,1.4076 0,1.9766 0,2.5698V13.7541C0.0002,13.8862 0.0358,14.0159 0.103,14.1298C0.1702,14.2438 0.2666,14.338 0.3825,14.4027C0.4946,14.4659 0.6212,14.4993 0.75,14.4997C0.8846,14.4996 1.0167,14.4636 1.1325,14.3953L4.5,12.3672C4.6245,12.2935 4.7677,12.2573 4.9125,12.2628H12.75C13.3467,12.2628 13.919,12.0272 14.341,11.6077C14.7629,11.1882 15,10.6192 15,10.026V2.5698C15,1.9766 14.7629,1.4076 14.341,0.9882C13.919,0.5687 13.3467,0.333 12.75,0.333ZM4.5,7.0435C4.3517,7.0435 4.2067,6.9998 4.0833,6.9179C3.96,6.8359 3.8639,6.7195 3.8071,6.5833C3.7503,6.447 3.7355,6.2971 3.7644,6.1525C3.7933,6.0078 3.8648,5.875 3.9697,5.7707C4.0746,5.6664 4.2082,5.5954 4.3537,5.5666C4.4992,5.5379 4.65,5.5526 4.787,5.6091C4.9241,5.6655 5.0412,5.7611 5.1236,5.8837C5.206,6.0063 5.25,6.1505 5.25,6.2979C5.25,6.4957 5.171,6.6853 5.0303,6.8252C4.8897,6.965 4.6989,7.0435 4.5,7.0435ZM7.5,7.0435C7.3517,7.0435 7.2067,6.9998 7.0833,6.9179C6.96,6.8359 6.8639,6.7195 6.8071,6.5833C6.7503,6.447 6.7355,6.2971 6.7644,6.1525C6.7934,6.0078 6.8648,5.875 6.9697,5.7707C7.0746,5.6664 7.2082,5.5954 7.3537,5.5666C7.4992,5.5379 7.65,5.5526 7.787,5.6091C7.9241,5.6655 8.0412,5.7611 8.1236,5.8837C8.206,6.0063 8.25,6.1505 8.25,6.2979C8.25,6.4957 8.171,6.6853 8.0303,6.8252C7.8897,6.965 7.6989,7.0435 7.5,7.0435ZM10.5,7.0435C10.3517,7.0435 10.2067,6.9998 10.0833,6.9179C9.96,6.8359 9.8639,6.7195 9.8071,6.5833C9.7503,6.447 9.7355,6.2971 9.7644,6.1525C9.7934,6.0078 9.8648,5.875 9.9697,5.7707C10.0746,5.6664 10.2082,5.5954 10.3537,5.5666C10.4992,5.5379 10.65,5.5526 10.787,5.6091C10.9241,5.6655 11.0412,5.7611 11.1236,5.8837C11.206,6.0063 11.25,6.1505 11.25,6.2979C11.25,6.4957 11.171,6.6853 11.0303,6.8252C10.8897,6.965 10.6989,7.0435 10.5,7.0435Z"
android:fillColor=
"#E62229"
/>
</vector>
app/src/main/res/drawable/ic_mobiuz_logo.xml
0 → 100644
View file @
1762fbce
<vector
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:width=
"161dp"
android:height=
"32dp"
android:viewportWidth=
"161"
android:viewportHeight=
"32"
>
<path
android:pathData=
"M0,9.575H6.463L6.695,11.979C7.382,11.146 8.258,10.453 9.319,9.898C10.38,9.344 11.627,9.066 13.065,9.066C13.939,9.066 14.72,9.158 15.406,9.344C16.092,9.528 16.694,9.768 17.208,10.059C17.724,10.354 18.176,10.677 18.567,11.031C18.957,11.386 19.277,11.732 19.525,12.072C20.432,11.115 21.531,10.376 22.827,9.852C24.124,9.328 25.475,9.066 26.878,9.066C29.689,9.066 31.834,9.852 33.317,11.424C34.8,12.997 35.541,15.14 35.541,17.851V31.26H28.799V18.915C28.799,17.621 28.509,16.619 27.932,15.91C27.355,15.2 26.486,14.846 25.333,14.846C24.022,14.846 22.976,15.294 22.195,16.186C21.416,17.081 21.026,18.222 21.026,19.608V31.26H14.516V18.915C14.516,17.621 14.228,16.619 13.65,15.91C13.072,15.2 12.207,14.846 11.051,14.846C9.77,14.846 8.734,15.294 7.937,16.186C7.14,17.081 6.743,18.222 6.743,19.608V31.26H0V9.575Z"
android:fillColor=
"#ffffff"
/>
<path
android:pathData=
"M53.146,26.22C53.989,26.22 54.74,26.058 55.393,25.734C56.05,25.41 56.603,24.971 57.057,24.417C57.508,23.861 57.844,23.238 58.062,22.544C58.281,21.85 58.391,21.134 58.391,20.393C58.391,19.655 58.281,18.937 58.062,18.244C57.844,17.55 57.508,16.934 57.057,16.395C56.603,15.855 56.05,15.423 55.393,15.1C54.74,14.776 53.989,14.615 53.146,14.615C52.303,14.615 51.547,14.776 50.875,15.1C50.204,15.423 49.649,15.855 49.213,16.395C48.776,16.934 48.442,17.55 48.206,18.244C47.971,18.937 47.855,19.655 47.855,20.393C47.855,21.134 47.971,21.85 48.206,22.544C48.442,23.238 48.776,23.861 49.213,24.417C49.649,24.971 50.204,25.41 50.875,25.734C51.547,26.058 52.303,26.22 53.146,26.22ZM41.346,20.393C41.346,18.791 41.634,17.288 42.212,15.885C42.789,14.483 43.594,13.258 44.623,12.209C45.654,11.162 46.894,10.336 48.347,9.735C49.799,9.134 51.398,8.834 53.146,8.834C54.895,8.834 56.486,9.134 57.924,9.735C59.359,10.336 60.593,11.162 61.622,12.209C62.653,13.258 63.456,14.483 64.033,15.885C64.611,17.288 64.9,18.791 64.9,20.393C64.9,21.997 64.611,23.5 64.033,24.902C63.456,26.305 62.653,27.532 61.622,28.577C60.593,29.628 59.359,30.459 57.924,31.075C56.486,31.692 54.895,32 53.146,32C51.398,32 49.799,31.692 48.347,31.075C46.894,30.459 45.654,29.628 44.623,28.577C43.594,27.532 42.789,26.305 42.212,24.902C41.634,23.5 41.346,21.997 41.346,20.393Z"
android:fillColor=
"#ffffff"
/>
<path
android:pathData=
"M77.59,25.569C77.965,25.725 78.377,25.84 78.831,25.917C79.283,25.993 79.915,26.032 80.728,26.032C82.507,26.032 83.888,25.462 84.872,24.322C85.854,23.181 86.346,21.686 86.346,19.836C86.346,19.159 86.26,18.495 86.09,17.849C85.918,17.2 85.66,16.622 85.317,16.115C84.973,15.606 84.528,15.19 83.982,14.865C83.436,14.542 82.772,14.381 81.992,14.381C80.494,14.381 79.385,14.789 78.666,15.606C77.948,16.422 77.59,17.51 77.59,18.864V25.569ZM70.848,0H77.59V10.773C78.216,10.126 79.065,9.617 80.143,9.248C81.22,8.878 82.289,8.692 83.35,8.692C84.911,8.692 86.299,8.985 87.517,9.571C88.736,10.157 89.757,10.951 90.585,11.953C91.412,12.955 92.043,14.11 92.481,15.42C92.918,16.731 93.137,18.125 93.137,19.606C93.137,21.362 92.848,22.98 92.27,24.46C91.692,25.939 90.858,27.204 89.767,28.251C88.673,29.3 87.33,30.118 85.738,30.703C84.147,31.287 82.335,31.58 80.307,31.58C78.434,31.58 76.662,31.41 74.991,31.073C73.322,30.733 71.94,30.378 70.848,30.009V0Z"
android:fillColor=
"#ffffff"
/>
<path
android:pathData=
"M99.27,9.574H106.013V31.261H99.27V9.574Z"
android:fillColor=
"#ffffff"
/>
<path
android:pathData=
"M112.992,9.574H119.736V22.058C119.736,23.292 120.04,24.264 120.648,24.97C121.257,25.681 122.155,26.035 123.342,26.035C124.028,26.035 124.637,25.905 125.168,25.642C125.697,25.381 126.151,25.033 126.525,24.601C126.9,24.17 127.182,23.661 127.368,23.076C127.554,22.491 127.648,21.89 127.648,21.272V9.574H134.345V31.26H127.884L127.697,28.948C126.978,29.779 126.033,30.467 124.863,31.006C123.692,31.544 122.467,31.815 121.187,31.815C118.659,31.815 116.66,31.075 115.194,29.596C113.726,28.116 112.992,25.927 112.992,23.03V9.574Z"
android:fillColor=
"#ffffff"
/>
<path
android:pathData=
"M140.664,26.775L151.434,14.939H141.133V9.574H159.955V14.153L149.14,26.035H160.004V31.261H140.664V26.775Z"
android:fillColor=
"#ffffff"
/>
<path
android:pathData=
"M102.518,6.118L98.914,0H106.124L102.518,6.118Z"
android:fillColor=
"#ffffff"
/>
</vector>
app/src/main/res/drawable/ic_phone.xml
0 → 100644
View file @
1762fbce
<vector
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:width=
"15dp"
android:height=
"16dp"
android:viewportWidth=
"15"
android:viewportHeight=
"16"
>
<path
android:pathData=
"M0.5449,1.221L3.5917,0.5179C3.9228,0.4417 4.2626,0.6146 4.3974,0.9251L5.8036,4.2063C5.9266,4.4934 5.8446,4.8303 5.6014,5.0266L3.8261,6.4797C4.8808,8.7267 6.7235,10.5958 9.0174,11.671L10.4705,9.8956C10.6697,9.6525 11.0037,9.5704 11.2908,9.6935L14.572,11.0997C14.8854,11.2374 15.0583,11.5772 14.9821,11.9083L14.279,14.9551C14.2058,15.2715 13.9245,15.5 13.5935,15.5C6.0907,15.5 0,9.421 0,1.9065C0,1.5784 0.2256,1.2943 0.5449,1.221Z"
android:fillColor=
"#E62229"
/>
</vector>
app/src/main/res/drawable/ic_photo.xml
0 → 100644
View file @
1762fbce
<vector
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:width=
"32dp"
android:height=
"32dp"
android:viewportWidth=
"32"
android:viewportHeight=
"32"
>
<path
android:pathData=
"M2,0L30,0A2,2 0,0 1,32 2L32,30A2,2 0,0 1,30 32L2,32A2,2 0,0 1,0 30L0,2A2,2 0,0 1,2 0z"
android:fillColor=
"#ffffff"
/>
<path
android:pathData=
"M15.4438,7.0104C14.4641,7.1147 13.8582,7.3611 13.3371,7.8668C12.6434,8.5401 12.3698,9.3661 12.3111,10.965C12.2707,12.0661 12.4242,12.8643 12.8284,13.6552C13.716,15.392 15.444,16.1814 17.0834,15.599C18.2634,15.1798 19.2259,14.0141 19.5594,12.6001C19.6823,12.0794 19.7163,11.6582 19.6909,10.9708C19.6316,9.3649 19.3591,8.5405 18.6649,7.8668C18.2228,7.4377 17.7253,7.1983 17.0174,7.0743C16.708,7.02 15.7271,6.9802 15.4438,7.0104ZM13.4305,16.2403C11.6965,16.606 10.794,16.998 10.144,17.6677C9.7,18.125 9.4266,18.6838 9.2575,19.4789C9.1296,20.0808 9.0681,20.7119 9.0239,21.8786C8.9781,23.0855 8.9592,22.9978 9.3429,23.3559C10.3169,24.2651 12.2275,24.8272 14.8146,24.9657C18.382,25.1568 21.3915,24.5392 22.6592,23.3559C23.0397,23.0006 23.0209,23.087 22.9776,21.8957C22.9409,20.8851 22.9017,20.3606 22.8282,19.9C22.4745,17.6816 21.4471,16.8145 18.4693,16.221L18.0408,16.1356L17.8984,16.2615C17.5965,16.5285 17.2138,16.7077 16.7021,16.8217C16.367,16.8963 15.635,16.8963 15.3,16.8217C14.7862,16.7072 14.2986,16.4727 14.0624,16.2264C13.9592,16.1189 14.0115,16.1177 13.4305,16.2403Z"
android:fillColor=
"#E62229"
android:fillType=
"evenOdd"
/>
</vector>
app/src/main/res/drawable/ic_plus.xml
0 → 100644
View file @
1762fbce
<vector
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:width=
"48dp"
android:height=
"48dp"
android:viewportWidth=
"48"
android:viewportHeight=
"48"
>
<path
android:pathData=
"M24,48C37.2548,48 48,37.2548 48,24C48,10.7452 37.2548,-0 24,-0C10.7452,-0 0,10.7452 0,24L0,46C0,47.1046 0.8954,48 2,48L24,48Z"
android:fillColor=
"#ffffff"
/>
<path
android:pathData=
"M25.5,15.5L22.5,15.5L22.5,22.5L15.5,22.5L15.5,25.5H22.5L22.5,32.5H25.5L25.5,25.5L32.5,25.5V22.5L25.5,22.5L25.5,15.5Z"
android:fillColor=
"#E62229"
/>
</vector>
app/src/main/res/drawable/ic_russia.xml
0 → 100644
View file @
1762fbce
<vector
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:width=
"25dp"
android:height=
"24dp"
android:viewportWidth=
"25"
android:viewportHeight=
"24"
>
<group>
<clip-path
android:pathData=
"M12.5,0L12.5,0A12,12 0,0 1,24.5 12L24.5,12A12,12 0,0 1,12.5 24L12.5,24A12,12 0,0 1,0.5 12L0.5,12A12,12 0,0 1,12.5 0z"
/>
<path
android:pathData=
"M0.5,0H32.5V24H0.5V0Z"
android:fillColor=
"#F9F9F9"
android:fillType=
"evenOdd"
/>
<path
android:pathData=
"M0.5,8H32.5V24H0.5V8Z"
android:fillColor=
"#0039A6"
android:fillType=
"evenOdd"
/>
<path
android:pathData=
"M0.5,16H32.5V24H0.5V16Z"
android:fillColor=
"#EC4336"
android:fillType=
"evenOdd"
/>
</group>
</vector>
app/src/main/res/drawable/ic_united_kingdom.xml
0 → 100644
View file @
1762fbce
<vector
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:width=
"25dp"
android:height=
"24dp"
android:viewportWidth=
"25"
android:viewportHeight=
"24"
>
<group>
<clip-path
android:pathData=
"M12.5,0L12.5,0A12,12 0,0 1,24.5 12L24.5,12A12,12 0,0 1,12.5 24L12.5,24A12,12 0,0 1,0.5 12L0.5,12A12,12 0,0 1,12.5 0z"
/>
<path
android:pathData=
"M-3.5,0H28.5V24H-3.5V0Z"
android:fillColor=
"#012169"
/>
<path
android:pathData=
"M0.25,0L12.45,9.05L24.6,0H28.5V3.1L16.5,12.05L28.5,20.95V24H24.5L12.5,15.05L0.55,24H-3.5V21L8.45,12.1L-3.5,3.2V0H0.25Z"
android:fillColor=
"#ffffff"
/>
<path
android:pathData=
"M17.7,14.05L28.5,22V24L14.95,14.05H17.7ZM8.5,15.05L8.8,16.8L-0.8,24H-3.5L8.5,15.05ZM28.5,0V0.15L16.05,9.55L16.15,7.35L26,0H28.5ZM-3.5,0L8.45,8.8H5.45L-3.5,2.1V0Z"
android:fillColor=
"#C8102E"
/>
<path
android:pathData=
"M8.55,0V24H16.55V0H8.55ZM-3.5,8V16H28.5V8H-3.5Z"
android:fillColor=
"#ffffff"
/>
<path
android:pathData=
"M-3.5,9.65V14.45H28.5V9.65H-3.5ZM10.15,0V24H14.95V0H10.15Z"
android:fillColor=
"#C8102E"
/>
</group>
</vector>
app/src/main/res/drawable/ic_uzbekistan.xml
0 → 100644
View file @
1762fbce
<vector
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:width=
"25dp"
android:height=
"24dp"
android:viewportWidth=
"25"
android:viewportHeight=
"24"
>
<group>
<clip-path
android:pathData=
"M12.5,0L12.5,0A12,12 0,0 1,24.5 12L24.5,12A12,12 0,0 1,12.5 24L12.5,24A12,12 0,0 1,0.5 12L0.5,12A12,12 0,0 1,12.5 0z"
/>
<path
android:pathData=
"M0.5,16H32.5V24H0.5V16Z"
android:fillColor=
"#1EB53A"
/>
<path
android:pathData=
"M0.5,0H32.5V8H0.5V0Z"
android:fillColor=
"#0099B5"
/>
<path
android:pathData=
"M0.5,7.6807H32.5V16.3207H0.5V7.6807Z"
android:fillColor=
"#CE1126"
/>
<path
android:pathData=
"M0.5,8.1602H32.5V15.8402H0.5V8.1602Z"
android:fillColor=
"#F9F9F9"
/>
</group>
</vector>
app/src/main/res/drawable/ic_vector.xml
0 → 100644
View file @
1762fbce
<vector
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:width=
"22dp"
android:height=
"19dp"
android:viewportWidth=
"22"
android:viewportHeight=
"19"
>
<path
android:pathData=
"M10.7495,18.4279L0.3984,0.8574H21.1048L10.7495,18.4279Z"
android:fillColor=
"#E62229"
/>
</vector>
app/src/main/res/drawable/ic_vector_error.xml
0 → 100644
View file @
1762fbce
<vector
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:width=
"16dp"
android:height=
"16dp"
android:viewportWidth=
"14"
android:viewportHeight=
"13"
>
<path
android:pathData=
"M7.5887,0.6883C7.358,0.2523 6.6406,0.2523 6.41,0.6883L0.41,12.0217C0.356,12.1232 0.3292,12.2371 0.3323,12.3521C0.3353,12.4671 0.3681,12.5793 0.4275,12.6779C0.4868,12.7765 0.5707,12.858 0.6709,12.9145C0.7711,12.971 0.8843,13.0006 0.9993,13.0003H12.9993C13.1143,13.0006 13.2274,12.971 13.3275,12.9145C13.4276,12.8581 13.5114,12.7766 13.5707,12.6781C13.63,12.5796 13.6628,12.4674 13.6658,12.3525C13.6688,12.2376 13.642,12.1238 13.588,12.0223L7.5887,0.6883ZM7.666,11.0003H6.3327V9.667H7.666V11.0003ZM6.3327,8.3337V5.0003H7.666L7.6666,8.3337H6.3327Z"
android:fillColor=
"#D31F28"
/>
</vector>
app/src/main/res/drawable/ic_wi_fi.xml
0 → 100644
View file @
1762fbce
<vector
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:width=
"19dp"
android:height=
"14dp"
android:viewportWidth=
"19"
android:viewportHeight=
"14"
>
<path
android:pathData=
"M10.6791,13.1768C10.8342,13.0224 10.9572,12.8389 11.0412,12.6368C11.1251,12.4348 11.1684,12.2181 11.1684,11.9993C11.1684,11.7805 11.1251,11.5638 11.0412,11.3617C10.9572,11.1597 10.8342,10.9762 10.6791,10.8218C10.5248,10.6664 10.3413,10.543 10.1392,10.4587C9.937,10.3745 9.7202,10.331 9.5012,10.3309C9.2821,10.3307 9.0653,10.3739 8.863,10.4578C8.6607,10.5418 8.477,10.6649 8.3225,10.8201C8.1633,10.9739 8.0363,11.1578 7.949,11.3611C7.8616,11.5644 7.8156,11.7831 7.8137,12.0044C7.8118,12.2257 7.854,12.4452 7.9378,12.65C8.0216,12.8549 8.1453,13.041 8.3018,13.1974C8.4583,13.3539 8.6444,13.4777 8.8492,13.5615C9.054,13.6453 9.2735,13.6875 9.4948,13.6855C9.7161,13.6836 9.9348,13.6376 10.1381,13.5503C10.3415,13.4629 10.5254,13.336 10.6791,13.1768ZM16.5716,6.596C16.3527,6.5964 16.1359,6.5534 15.9336,6.4696C15.7314,6.3858 15.5478,6.2628 15.3933,6.1076C12.1441,2.8584 6.8575,2.8593 3.6075,6.1076C3.2949,6.4202 2.8708,6.5959 2.4287,6.5959C1.9866,6.5959 1.5626,6.4202 1.25,6.1076C0.9373,5.795 0.7617,5.371 0.7617,4.9289C0.7617,4.4868 0.9373,4.0627 1.25,3.7501C5.7991,-0.7982 13.2008,-0.7982 17.7491,3.7501C17.9824,3.9831 18.1413,4.28 18.2058,4.6034C18.2702,4.9267 18.2374,5.2619 18.1113,5.5665C17.9853,5.8711 17.7717,6.1315 17.4976,6.3148C17.2236,6.498 16.9013,6.5959 16.5716,6.596ZM5.965,10.131C5.6354,10.1309 5.3132,10.0331 5.0392,9.8499C4.7652,9.6668 4.5516,9.4065 4.4255,9.102C4.2994,8.7975 4.2664,8.4625 4.3307,8.1392C4.3949,7.816 4.5536,7.519 4.7866,7.286C7.385,4.6868 11.615,4.6868 14.2141,7.286C14.5268,7.5986 14.7024,8.0226 14.7024,8.4647C14.7024,8.9068 14.5268,9.3308 14.2141,9.6434C13.9015,9.9561 13.4775,10.1317 13.0354,10.1317C12.5933,10.1317 12.1693,9.9561 11.8566,9.6434C11.231,9.0193 10.3833,8.6688 9.4996,8.6688C8.6158,8.6688 7.7681,9.0193 7.1425,9.6434C6.988,9.7984 6.8045,9.9212 6.6024,10.0048C6.4003,10.0885 6.1837,10.1314 5.965,10.131Z"
android:fillColor=
"#E62229"
/>
</vector>
app/src/main/res/drawable/user_girl.png
0 → 100644
View file @
1762fbce
2.39 KB
app/src/main/res/layout/activity_auth.xml
View file @
1762fbce
<?xml version="1.0" encoding="utf-8"?>
<androidx.fragment.app.FragmentContainerView
xmlns:android=
"http://schemas.android.com/apk/res/android"
<LinearLayout
android:layout_width=
"match_parent"
android:fitsSystemWindows=
"true"
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:tools=
"http://schemas.android.com/tools"
android:layout_height=
"match_parent"
>
<androidx.fragment.app.FragmentContainerView
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
...
...
@@ -9,4 +15,6 @@
app:defaultNavHost=
"true"
android:name=
"androidx.navigation.fragment.NavHostFragment"
tools:context=
".AuthActivity"
>
</androidx.fragment.app.FragmentContainerView>
\ No newline at end of file
</androidx.fragment.app.FragmentContainerView>
</LinearLayout>
app/src/main/res/layout/activity_main.xml
View file @
1762fbce
<?xml version="1.0" encoding="utf-8"?>
<androidx.fragment.app.FragmentContainerView
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:id=
"@+id/main_container"
android:name=
"androidx.navigation.fragment.NavHostFragment"
android:layout_width=
"match_parent"
<LinearLayout
android:layout_width=
"match_parent"
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:layout_height=
"match_parent"
app:defaultNavHost=
"true"
app:navGraph=
"@navigation/nav_graph_main"
tools:context=
".MainActivity"
>
android:orientation=
"vertical"
android:fitsSystemWindows=
"false"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
>
<androidx.fragment.app.FragmentContainerView
android:id=
"@+id/nav_host_fragment"
android:layout_width=
"match_parent"
android:layout_height=
"0dp"
android:layout_weight=
"1"
/>
<com.google.android.material.bottomnavigation.BottomNavigationView
android:id=
"@+id/bottom_nav_view"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:background=
"@color/white"
app:itemIconSize=
"24dp"
app:elevation=
"4dp"
app:itemIconTint=
"@color/nav_item_tint"
app:itemTextColor=
"@color/nav_item_tint"
app:labelVisibilityMode=
"labeled"
app:menu=
"@menu/bottom_nav_menu"
/>
</androidx.fragment.app.FragmentContainerView>
\ No newline at end of file
</LinearLayout>
\ No newline at end of file
app/src/main/res/layout/activity_pin.xml
0 → 100644
View file @
1762fbce
<?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=
".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=
"00000"
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/activity_splash.xml
0 → 100644
View file @
1762fbce
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:tools=
"http://schemas.android.com/tools"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:layout_gravity=
"center"
android:background=
"@color/red_dark"
android:gravity=
"center"
android:fitsSystemWindows=
"false"
tools:context=
".SplashActivity"
>
<ImageView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:src=
"@drawable/ic_mobiuz_logo"
android:layout_marginBottom=
"@dimen/_58sdp"
android:textStyle=
"bold"
/>
</LinearLayout>
\ No newline at end of file
app/src/main/res/layout/fragment_blank.xml
0 → 100644
View file @
1762fbce
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:tools=
"http://schemas.android.com/tools"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
tools:context=
".BlankFragment"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center"
android:text=
"@string/hello_blank_fragment"
/>
</FrameLayout>
\ No newline at end of file
app/src/main/res/layout/fragment_enter_password.xml
0 → 100644
View file @
1762fbce
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:orientation=
"vertical"
>
<com.google.android.material.appbar.MaterialToolbar
android:id=
"@+id/toolbar"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
app:layout_constraintTop_toTopOf=
"parent"
app:navigationIcon=
"@drawable/ic_baseline_arrow_back"
/>
<TextView
android:id=
"@+id/txt_enter_phone"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginTop=
"@dimen/_14sdp"
android:text=
"@string/think_password"
android:textSize=
"@dimen/_16sdp"
android:textStyle=
"bold"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintBottom_toTopOf=
"@id/txt_hint_password"
app:layout_constraintTop_toBottomOf=
"@id/toolbar"
/>
<TextView
android:id=
"@+id/txt_hint_password"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginTop=
"@dimen/_14sdp"
android:layout_marginBottom=
"@dimen/_4sdp"
android:text=
"Введите пароль:"
android:textColor=
"@color/black"
android:textStyle=
"bold"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintBottom_toTopOf=
"@id/layout_input_password"
app:layout_constraintTop_toBottomOf=
"@id/txt_enter_phone"
/>
<com.google.android.material.textfield.TextInputLayout
android:id=
"@+id/layout_input_password"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginEnd=
"@dimen/_12sdp"
android:layout_marginBottom=
"@dimen/_140sdp"
app:endIconMode=
"password_toggle"
app:layout_constraintBottom_toTopOf=
"@id/txt_hint_confirm"
app:layout_constraintTop_toBottomOf=
"@id/txt_hint_password"
>
<com.google.android.material.textfield.TextInputEditText
android:id=
"@+id/input_password"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:background=
"@drawable/bgn_lang"
android:imeOptions=
"actionNext"
android:textSize=
"@dimen/_12sdp"
android:inputType=
"textPassword"
android:paddingVertical=
"@dimen/_12sdp"
android:paddingStart=
"@dimen/_12sdp"
/>
</com.google.android.material.textfield.TextInputLayout>
<TextView
android:id=
"@+id/txt_check_password"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/_6sdp"
android:visibility=
"invisible"
android:text=
"Должно быть не менее 6 символов"
android:textColor=
"@color/light"
android:textStyle=
"bold"
app:layout_constraintStart_toStartOf=
"@id/layout_input_confirm"
app:layout_constraintTop_toBottomOf=
"@id/layout_input_password"
/>
<TextView
android:id=
"@+id/txt_hint_confirm"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/_34sdp"
android:layout_marginBottom=
"@dimen/_4sdp"
android:text=
"Введите пароль повторно:"
android:textColor=
"@color/black"
android:textStyle=
"bold"
app:layout_constraintStart_toStartOf=
"@id/layout_input_confirm"
app:layout_constraintTop_toBottomOf=
"@id/layout_input_password"
/>
<com.google.android.material.textfield.TextInputLayout
android:id=
"@+id/layout_input_confirm"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginEnd=
"@dimen/_12sdp"
app:endIconMode=
"password_toggle"
app:layout_constraintTop_toBottomOf=
"@id/txt_hint_confirm"
>
<com.google.android.material.textfield.TextInputEditText
android:id=
"@+id/input_confirm"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:background=
"@drawable/bgn_lang"
android:imeOptions=
"actionDone"
android:textSize=
"@dimen/_12sdp"
android:inputType=
"textPassword"
android:paddingVertical=
"@dimen/_12sdp"
android:paddingStart=
"@dimen/_12sdp"
/>
</com.google.android.material.textfield.TextInputLayout>
<ImageView
android:id=
"@+id/image_check"
android:layout_width=
"wrap_content"
app:layout_constraintStart_toStartOf=
"@id/layout_input_confirm"
app:layout_constraintTop_toTopOf=
"@id/txt_check_confirm"
android:visibility=
"invisible"
app:layout_constraintBottom_toBottomOf=
"@id/txt_check_confirm"
android:src=
"@drawable/ic_vector_error"
android:layout_height=
"wrap_content"
/>
<TextView
android:id=
"@+id/txt_check_confirm"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/_10sdp"
android:text=
"Пароли должны совпадать"
android:textColor=
"@color/light"
android:textStyle=
"bold"
android:visibility=
"invisible"
android:layout_marginStart=
"@dimen/_6sdp"
app:layout_constraintStart_toEndOf=
"@id/image_check"
app:layout_constraintTop_toBottomOf=
"@id/layout_input_confirm"
/>
<Button
android:id=
"@+id/btn_login"
android:layout_width=
"match_parent"
android:enabled=
"false"
android:layout_height=
"wrap_content"
android:layout_gravity=
"bottom"
android:textSize=
"@dimen/_12sdp"
android:layout_marginHorizontal=
"@dimen/_12sdp"
android:layout_marginTop=
"@dimen/_34sdp"
android:text=
"@string/continuoue_task"
app:layout_constraintTop_toBottomOf=
"@id/layout_input_confirm"
app:layout_constraintBottom_toBottomOf=
"parent"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
app/src/main/res/layout/fragment_forget_password.xml
0 → 100644
View file @
1762fbce
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:orientation=
"vertical"
>
<com.google.android.material.appbar.MaterialToolbar
android:id=
"@+id/toolbar"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
app:layout_constraintTop_toTopOf=
"parent"
app:navigationIcon=
"@drawable/ic_baseline_arrow_back"
/>
<TextView
android:id=
"@+id/txt_enter_phone"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginTop=
"@dimen/_14sdp"
android:text=
"@string/enter_number"
android:textSize=
"@dimen/_16sdp"
android:textStyle=
"bold"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@id/toolbar"
/>
<TextView
android:id=
"@+id/hint_phone"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"@string/phone"
android:textColor=
"@color/light"
android:textStyle=
"bold"
app:layout_constraintBottom_toTopOf=
"@id/layout_input"
app:layout_constraintStart_toStartOf=
"@id/layout_input"
/>
<com.google.android.material.textfield.TextInputLayout
android:id=
"@+id/layout_input"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginEnd=
"@dimen/_12sdp"
app:layout_constraintBottom_toTopOf=
"@id/btn_login"
app:layout_constraintTop_toBottomOf=
"@id/toolbar"
>
<com.github.pinball83.maskededittext.MaskedEditText
android:layout_width=
"match_parent"
android:id=
"@+id/input_phone"
android:inputType=
"phone"
android:imeOptions=
"actionDone"
app:mask=
"+998 ** *** ** **"
app:notMaskedSymbol=
"*"
android:textSize=
"@dimen/_12sdp"
android:padding=
"@dimen/_14sdp"
android:background=
"@drawable/bgn_lang"
android:layout_height=
"match_parent"
/>
</com.google.android.material.textfield.TextInputLayout>
<Button
android:id=
"@+id/btn_login"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_gravity=
"bottom"
android:enabled=
"false"
android:textSize=
"@dimen/_12sdp"
android:layout_marginHorizontal=
"@dimen/_12sdp"
android:layout_marginTop=
"@dimen/_24sdp"
android:text=
"@string/continuoue_task"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@id/layout_input"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
app/src/main/res/layout/fragment_home.xml
View file @
1762fbce
This diff is collapsed.
Click to expand it.
app/src/main/res/layout/fragment_login.xml
View file @
1762fbce
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:tools=
"http://schemas.android.com/tools"
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
tools:context=
".LoginFragment
"
>
android:orientation=
"vertical
"
>
<!-- TODO: Update blank fragment layout -->
<com.google.android.material.appbar.MaterialToolbar
android:id=
"@+id/toolbar"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
app:navigationIcon=
"@drawable/ic_baseline_arrow_back"
/>
<TextView
android:id=
"@+id/txt_enter_phone"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginTop=
"@dimen/_14sdp"
android:text=
"@string/enter_number"
android:textSize=
"@dimen/_16sdp"
android:textStyle=
"bold"
/>
<LinearLayout
android:layout_width=
"match_parent"
android:orientation=
"vertical"
android:gravity=
"center"
android:layout_height=
"0dp"
android:layout_weight=
"1"
>
<TextView
android:id=
"@+id/hint_phone"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"@string/phone"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_gravity=
"start"
android:textColor=
"@color/light"
android:textStyle=
"bold"
/>
<com.google.android.material.textfield.TextInputLayout
android:id=
"@+id/layout_input"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:text=
"@string/hello_blank_fragment"
/>
android:layout_height=
"wrap_content"
android:layout_gravity=
"center"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginEnd=
"@dimen/_12sdp"
>
<com.github.pinball83.maskededittext.MaskedEditText
android:layout_width=
"match_parent"
android:id=
"@+id/input_phone"
android:inputType=
"phone"
android:imeOptions=
"actionDone"
app:mask=
"+998 ** *** ** **"
app:notMaskedSymbol=
"*"
android:textSize=
"@dimen/_12sdp"
android:padding=
"@dimen/_14sdp"
android:background=
"@drawable/bgn_lang"
android:layout_height=
"match_parent"
/>
</com.google.android.material.textfield.TextInputLayout>
</LinearLayout>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"0dp"
android:layout_weight=
"1"
>
<Button
android:id=
"@+id/btn_login"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center"
android:enabled=
"false"
android:textSize=
"@dimen/_12sdp"
android:layout_marginHorizontal=
"@dimen/_12sdp"
android:layout_marginTop=
"@dimen/_24sdp"
android:text=
"@string/continuoue_task"
/>
</FrameLayout>
\ No newline at end of file
</LinearLayout>
</LinearLayout>
\ No newline at end of file
app/src/main/res/layout/fragment_password.xml
0 → 100644
View file @
1762fbce
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:orientation=
"vertical"
>
<com.google.android.material.appbar.MaterialToolbar
android:id=
"@+id/toolbar"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
app:layout_constraintTop_toTopOf=
"parent"
app:navigationIcon=
"@drawable/ic_baseline_arrow_back"
/>
<TextView
android:id=
"@+id/txt_enter_phone"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginTop=
"@dimen/_14sdp"
android:text=
"@string/enter"
android:textSize=
"@dimen/_16sdp"
android:textStyle=
"bold"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintBottom_toTopOf=
"@id/txt_hint_password"
app:layout_constraintTop_toBottomOf=
"@id/toolbar"
/>
<TextView
android:id=
"@+id/txt_hint_password"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginTop=
"@dimen/_14sdp"
android:layout_marginBottom=
"@dimen/_4sdp"
android:text=
"Телефон:"
android:textColor=
"@color/black"
android:textStyle=
"bold"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintBottom_toTopOf=
"@id/layout_input_password"
app:layout_constraintTop_toBottomOf=
"@id/txt_enter_phone"
/>
<com.google.android.material.textfield.TextInputLayout
android:id=
"@+id/layout_input_password"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginEnd=
"@dimen/_12sdp"
android:layout_marginBottom=
"@dimen/_140sdp"
app:layout_constraintBottom_toTopOf=
"@id/txt_hint_password"
app:layout_constraintTop_toBottomOf=
"@id/txt_hint_password"
>
<com.google.android.material.textfield.TextInputEditText
android:id=
"@+id/input_phone"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:clickable=
"false"
android:focusable=
"false"
android:textSize=
"@dimen/_12sdp"
android:background=
"@drawable/bgn_lang"
android:imeOptions=
"actionNext"
android:inputType=
"phone"
android:paddingVertical=
"@dimen/_12sdp"
android:paddingStart=
"@dimen/_12sdp"
/>
</com.google.android.material.textfield.TextInputLayout>
<TextView
android:id=
"@+id/txt_check_password"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/_6sdp"
android:visibility=
"invisible"
android:text=
"Должно быть не менее 6 символов"
android:textColor=
"@color/light"
android:textStyle=
"bold"
app:layout_constraintStart_toStartOf=
"@id/layout_input_confirm"
app:layout_constraintTop_toBottomOf=
"@id/layout_input_password"
/>
<TextView
android:id=
"@+id/txt_hint_confirm"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/_34sdp"
android:layout_marginBottom=
"@dimen/_4sdp"
android:text=
"Пароль:"
android:textColor=
"@color/black"
android:textStyle=
"bold"
app:layout_constraintStart_toStartOf=
"@id/layout_input_confirm"
app:layout_constraintTop_toBottomOf=
"@id/layout_input_password"
/>
<com.google.android.material.textfield.TextInputLayout
android:id=
"@+id/layout_input_confirm"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginEnd=
"@dimen/_12sdp"
app:endIconMode=
"password_toggle"
app:layout_constraintTop_toBottomOf=
"@id/txt_hint_confirm"
>
<com.google.android.material.textfield.TextInputEditText
android:id=
"@+id/input_password"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:background=
"@drawable/bgn_lang"
android:imeOptions=
"actionDone"
android:inputType=
"textPassword"
android:textSize=
"@dimen/_12sdp"
android:paddingVertical=
"@dimen/_12sdp"
android:paddingStart=
"@dimen/_12sdp"
/>
</com.google.android.material.textfield.TextInputLayout>
<TextView
android:id=
"@+id/txt_forget_password"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:padding=
"@dimen/_6sdp"
android:text=
"Забыли пароль?"
android:background=
"?android:selectableItemBackground"
android:textColor=
"@color/light_dark"
android:textStyle=
"bold"
android:layout_marginTop=
"@dimen/_10sdp"
android:layout_marginEnd=
"@dimen/_10sdp"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@id/layout_input_confirm"
/>
<Button
android:id=
"@+id/btn_login"
android:layout_width=
"match_parent"
android:enabled=
"false"
android:textSize=
"@dimen/_12sdp"
android:layout_height=
"wrap_content"
android:layout_gravity=
"bottom"
android:layout_marginHorizontal=
"@dimen/_12sdp"
android:layout_marginTop=
"@dimen/_34sdp"
android:text=
"@string/enter"
app:layout_constraintTop_toBottomOf=
"@id/layout_input_confirm"
app:layout_constraintBottom_toBottomOf=
"parent"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
app/src/main/res/layout/fragment_
register
.xml
→
app/src/main/res/layout/fragment_
pin_lock
.xml
View file @
1762fbce
...
...
@@ -3,7 +3,7 @@
xmlns:tools=
"http://schemas.android.com/tools"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
tools:context=
".
Register
Fragment"
>
tools:context=
".
PinLock
Fragment"
>
<!-- TODO: Update blank fragment layout -->
<TextView
...
...
app/src/main/res/layout/fragment_progress.xml
0 → 100644
View file @
1762fbce
<?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=
"wrap_content"
android:layout_height=
"wrap_content"
android:padding=
"18dp"
>
<com.airbnb.lottie.LottieAnimationView
android:layout_width=
"@dimen/_70sdp"
android:layout_height=
"@dimen/_70sdp"
android:adjustViewBounds=
"true"
app:lottie_autoPlay=
"true"
app:lottie_loop=
"true"
app:lottie_rawRes=
"@raw/rifki_loading"
app:lottie_speed=
"1"
tools:ignore=
"ContentDescription"
/>
</LinearLayout>
app/src/main/res/layout/fragment_verification.xml
View file @
1762fbce
<?xml version="1.0" encoding="utf-8"?>
<
Frame
Layout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:
tools=
"http://schemas.android.com/tools
"
<
androidx.constraintlayout.widget.Constraint
Layout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:
app=
"http://schemas.android.com/apk/res-auto
"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
tools:context=
".VerificationFragment"
>
android:orientation=
"vertical"
>
<com.google.android.material.appbar.MaterialToolbar
android:id=
"@+id/toolbar"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
app:layout_constraintTop_toTopOf=
"parent"
app:navigationIcon=
"@drawable/ic_baseline_arrow_back"
/>
<com.google.android.material.textfield.TextInputEditText
android:layout_width=
"match_parent"
android:id=
"@+id/pin_view"
app:layout_constraintTop_toTopOf=
"parent"
android:background=
"@drawable/bgn_lang"
android:padding=
"@dimen/_14sdp"
android:layout_marginHorizontal=
"@dimen/_12sdp"
android:gravity=
"center"
android:textSize=
"@dimen/_12sdp"
android:inputType=
"number"
android:imeOptions=
"actionDone"
app:layout_constraintBottom_toBottomOf=
"parent"
android:layout_height=
"wrap_content"
/>
<TextView
android:id=
"@+id/txt_enter_phone"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginTop=
"@dimen/_14sdp"
android:text=
"@string/enter_verification"
android:textSize=
"@dimen/_16sdp"
android:textStyle=
"bold"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@id/toolbar"
/>
<!-- TODO: Update blank fragment layout -->
<TextView
android:id=
"@+id/countWaitText"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_centerHorizontal=
"true"
android:layout_marginTop=
"38dp"
android:text=
"@string/sent_code_again"
android:textSize=
"16sp"
app:layout_constraintEnd_toStartOf=
"@id/coutdown_view"
app:layout_constraintHorizontal_chainStyle=
"packed"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@+id/pin_view"
/>
<TextView
android:id=
"@+id/sent_code_again"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_centerHorizontal=
"true"
android:layout_marginTop=
"38dp"
android:background=
"?selectableItemBackground"
android:text=
"@string/sent_code_again"
android:textSize=
"14sp"
android:visibility=
"gone"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintHorizontal_chainStyle=
"packed"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@+id/pin_view"
/>
<cn.iwgang.countdownview.CountdownView
android:id=
"@+id/coutdown_view"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"@dimen/_12sdp"
android:layout_marginTop=
"4dp"
android:visibility=
"visible"
app:isHideTimeBackground=
"false"
app:isShowDay=
"false"
app:isShowHour=
"false"
app:isShowMillisecond=
"false"
app:isShowMinute=
"true"
app:isShowSecond=
"true"
app:isShowTimeBgBorder=
"false"
app:isShowTimeBgDivisionLine=
"false"
app:isTimeTextBold=
"true"
app:layout_constraintBottom_toBottomOf=
"@id/countWaitText"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toEndOf=
"@id/countWaitText"
app:layout_constraintTop_toTopOf=
"@id/countWaitText"
app:suffixDay=
"days"
app:suffixGravity=
"center"
app:suffixHour=
":"
app:suffixMillisecond=
"ss"
app:suffixMinute=
":"
app:suffixSecond=
""
app:suffixTextSize=
"12sp"
app:timeBgColor=
"#00FF5000"
app:timeBgRadius=
"3dp"
app:timeBgSize=
"14dp"
app:timeTextSize=
"14dp"
/>
<Button
android:id=
"@+id/btn_login"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:text=
"@string/hello_blank_fragment"
/>
android:layout_height=
"wrap_content"
android:layout_gravity=
"bottom"
android:layout_marginHorizontal=
"@dimen/_12sdp"
android:layout_marginTop=
"@dimen/_24sdp"
android:text=
"@string/continuoue_task"
android:textSize=
"@dimen/_12sdp"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@id/pin_view"
/>
</FrameLayout>
\ No newline at end of file
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
app/src/main/res/layout/fragment_verification2.xml
0 → 100644
View file @
1762fbce
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:tools=
"http://schemas.android.com/tools"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
tools:context=
".VerificationFragment"
>
<!-- TODO: Update blank fragment layout -->
<TextView
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:text=
"@string/hello_blank_fragment"
/>
</FrameLayout>
\ No newline at end of file
app/src/main/res/layout/item_home.xml
0 → 100644
View file @
1762fbce
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:layout_width=
"match_parent"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
android:orientation=
"vertical"
android:paddingVertical=
"@dimen/_16sdp"
android:paddingHorizontal=
"12dp"
android:background=
"@drawable/banner"
android:layout_height=
"@dimen/_140sdp"
>
<TextView
android:layout_width=
"wrap_content"
android:textColor=
"@color/red"
android:text=
"mobiuz"
android:textStyle=
"bold"
android:textSize=
"24sp"
android:layout_height=
"wrap_content"
/>
<TextView
android:layout_width=
"wrap_content"
android:textColor=
"@color/black_80"
android:maxWidth=
"@dimen/_150sdp"
android:layout_marginTop=
"6dp"
android:text=
"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Dui, risus"
android:textStyle=
"bold"
android:textSize=
"14sp"
android:layout_marginBottom=
"8dp"
android:layout_height=
"wrap_content"
/>
<com.google.android.material.card.MaterialCardView
android:layout_width=
"wrap_content"
app:cardCornerRadius=
"4dp"
android:layout_marginTop=
"6dp"
android:layout_height=
"wrap_content"
>
<LinearLayout
android:layout_width=
"wrap_content"
android:paddingHorizontal=
"12dp"
android:paddingVertical=
"10dp"
android:layout_height=
"wrap_content"
>
<TextView
android:layout_width=
"wrap_content"
android:textColor=
"@color/red"
android:text=
"Узнать больше"
android:textStyle=
"bold"
android:layout_height=
"wrap_content"
/>
<ImageView
android:layout_width=
"wrap_content"
android:layout_marginStart=
"4dp"
android:src=
"@drawable/ic_baseline_keyboard_arrow_right"
android:layout_height=
"wrap_content"
/>
</LinearLayout>
</com.google.android.material.card.MaterialCardView>
</LinearLayout>
\ No newline at end of file
app/src/main/res/menu/bottom_nav_menu.xml
0 → 100644
View file @
1762fbce
<?xml version="1.0" encoding="utf-8"?>
<menu
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<item
android:id=
"@+id/nav_graph_home"
android:title=
"My MOBI"
android:icon=
"@drawable/ic_vector"
/>
<item
android:id=
"@+id/nav_graph_profile"
android:title=
"Profile"
android:icon=
"@drawable/ic_baseline_account_box"
/>
</menu>
\ No newline at end of file
app/src/main/res/navigation/nav_graph_auth.xml
View file @
1762fbce
...
...
@@ -7,17 +7,28 @@
<fragment
android:id=
"@+id/loginFragment"
android:name=
"uz.ssd.mobiuz.LoginFragment"
android:name=
"uz.ssd.mobiuz.
ui.auth.
LoginFragment"
android:label=
"fragment_login"
tools:layout=
"@layout/fragment_login"
/>
<fragment
android:id=
"@+id/registerFragment"
android:name=
"uz.ssd.mobiuz.RegisterFragment"
android:label=
"fragment_register"
tools:layout=
"@layout/fragment_register"
/>
<fragment
android:id=
"@+id/verificationFragment"
android:name=
"uz.ssd.mobiuz.VerificationFragment"
android:name=
"uz.ssd.mobiuz.
ui.auth.
VerificationFragment"
android:label=
"fragment_verification"
tools:layout=
"@layout/fragment_verification"
/>
<fragment
android:id=
"@+id/enterPasswordFragment"
tools:layout=
"@layout/fragment_enter_password"
android:name=
"uz.ssd.mobiuz.ui.auth.EnterPasswordFragment"
android:label=
"EnterPasswordFragment"
/>
<fragment
android:id=
"@+id/passwordFragment"
android:name=
"uz.ssd.mobiuz.ui.auth.PasswordFragment"
android:label=
"fragment_password"
tools:layout=
"@layout/fragment_password"
/>
<fragment
android:id=
"@+id/forgetPasswordFragment"
tools:layout=
"@layout/fragment_forget_password"
android:name=
"uz.ssd.mobiuz.ui.auth.ForgetPasswordFragment"
android:label=
"ForgetPasswordFragment"
/>
</navigation>
\ No newline at end of file
app/src/main/res/navigation/nav_graph_home.xml
0 → 100644
View file @
1762fbce
<?xml version="1.0" encoding="utf-8"?>
<navigation
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"
app:startDestination=
"@id/homeFragment"
android:id=
"@+id/nav_graph_home"
>
<fragment
android:id=
"@+id/homeFragment"
android:name=
"uz.ssd.mobiuz.ui.home.HomeFragment"
android:label=
"fragment_home"
tools:layout=
"@layout/fragment_home"
/>
</navigation>
\ No newline at end of file
app/src/main/res/navigation/nav_graph_main.xml
View file @
1762fbce
...
...
@@ -7,7 +7,7 @@
<fragment
android:id=
"@+id/homeFragment"
android:name=
"uz.ssd.mobiuz.HomeFragment"
android:name=
"uz.ssd.mobiuz.
ui.home.
HomeFragment"
android:label=
"fragment_home"
tools:layout=
"@layout/fragment_home"
/>
</navigation>
\ No newline at end of file
app/src/main/res/navigation/nav_graph_profile.xml
0 → 100644
View file @
1762fbce
<?xml version="1.0" encoding="utf-8"?>
<navigation
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"
app:startDestination=
"@id/homeFragment"
android:id=
"@+id/nav_graph_profile"
>
<fragment
android:id=
"@+id/homeFragment"
android:name=
"uz.ssd.mobiuz.ui.home.HomeFragment"
android:label=
"fragment_home"
tools:layout=
"@layout/fragment_home"
/>
</navigation>
\ No newline at end of file
app/src/main/res/navigation/nav_graph_red.xml
0 → 100644
View file @
1762fbce
<?xml version="1.0" encoding="utf-8"?>
<navigation
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"
app:startDestination=
"@id/blankFragment"
android:id=
"@+id/nav_graph_red"
>
<fragment
android:id=
"@+id/homeFragment"
android:name=
"uz.ssd.mobiuz.ui.home.HomeFragment"
android:label=
"fragment_home"
tools:layout=
"@layout/fragment_home"
/>
<fragment
android:id=
"@+id/blankFragment"
android:name=
"uz.ssd.mobiuz.BlankFragment"
android:label=
"fragment_blank"
tools:layout=
"@layout/fragment_blank"
/>
</navigation>
\ No newline at end of file
app/src/main/res/raw/circle_loading.json
0 → 100644
View file @
1762fbce
{
"v"
:
"5.5.8"
,
"fr"
:
29.9700012207031
,
"ip"
:
0
,
"op"
:
45.0000018328876
,
"w"
:
200
,
"h"
:
200
,
"nm"
:
"Comp 1"
,
"ddd"
:
0
,
"assets"
:[],
"layers"
:[{
"ddd"
:
0
,
"ind"
:
1
,
"ty"
:
4
,
"nm"
:
"circle_group"
,
"sr"
:
1
,
"ks"
:{
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
11
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
10
},
"p"
:{
"a"
:
0
,
"k"
:[
100
,
100
,
0
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:[
0.833
,
0.833
,
0.833
],
"y"
:[
0.833
,
0.833
,
0.833
]},
"o"
:{
"x"
:[
0.167
,
0.167
,
0.167
],
"y"
:[
0.167
,
0.167
,
0.167
]},
"t"
:
0
,
"s"
:[
100
,
100
,
100
]},{
"i"
:{
"x"
:[
0.833
,
0.833
,
0.833
],
"y"
:[
0.833
,
0.833
,
0.833
]},
"o"
:{
"x"
:[
0.167
,
0.167
,
0.167
],
"y"
:[
0.167
,
0.167
,
0.167
]},
"t"
:
15
,
"s"
:[
100
,
100
,
100
]},{
"i"
:{
"x"
:[
0.833
,
0.833
,
0.833
],
"y"
:[
0.833
,
0.833
,
0.833
]},
"o"
:{
"x"
:[
0.167
,
0.167
,
0.167
],
"y"
:[
0.167
,
0.167
,
0.167
]},
"t"
:
23
,
"s"
:[
50
,
50
,
100
]},{
"i"
:{
"x"
:[
0.833
,
0.833
,
0.833
],
"y"
:[
0.833
,
0.833
,
0.833
]},
"o"
:{
"x"
:[
0.167
,
0.167
,
0.167
],
"y"
:[
0.167
,
0.167
,
0.167
]},
"t"
:
30
,
"s"
:[
100
,
100
,
100
]},{
"t"
:
45.0000018328876
,
"s"
:[
100
,
100
,
100
]}],
"ix"
:
6
}},
"ao"
:
0
,
"shapes"
:[{
"ty"
:
"gr"
,
"it"
:[{
"d"
:
1
,
"ty"
:
"el"
,
"s"
:{
"a"
:
0
,
"k"
:[
0.57
,
0.926
],
"ix"
:
2
},
"p"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
3
},
"nm"
:
"Ellipse Path 1"
,
"mn"
:
"ADBE Vector Shape - Ellipse"
,
"hd"
:
false
},{
"ty"
:
"st"
,
"c"
:{
"a"
:
0
,
"k"
:[
1
,
1
,
1
,
1
],
"ix"
:
3
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
4
},
"w"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"lc"
:
1
,
"lj"
:
1
,
"ml"
:
4
,
"bm"
:
0
,
"nm"
:
"Stroke 1"
,
"mn"
:
"ADBE Vector Graphic - Stroke"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
0
,
"k"
:[
1
,
1
,
1
,
1
],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"Fill 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
-277.715
,
-177.537
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"Transform"
}],
"nm"
:
"Ellipse 1"
,
"np"
:
3
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
1
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
},{
"ty"
:
"gr"
,
"it"
:[{
"d"
:
1
,
"ty"
:
"el"
,
"s"
:{
"a"
:
0
,
"k"
:[
72
,
72
],
"ix"
:
2
},
"p"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
3
},
"nm"
:
"Ellipse Path 1"
,
"mn"
:
"ADBE Vector Shape - Ellipse"
,
"hd"
:
false
},{
"ty"
:
"st"
,
"c"
:{
"a"
:
0
,
"k"
:[
1
,
1
,
1
,
1
],
"ix"
:
3
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
4
},
"w"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"lc"
:
1
,
"lj"
:
1
,
"ml"
:
4
,
"bm"
:
0
,
"nm"
:
"Stroke 1"
,
"mn"
:
"ADBE Vector Graphic - Stroke"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:[
0.667
],
"y"
:[
1
]},
"o"
:{
"x"
:[
0.333
],
"y"
:[
0
]},
"t"
:
0
,
"s"
:[
0.196078434587
,
0.556862771511
,
0.960784316063
,
1
]},{
"i"
:{
"x"
:[
0.667
],
"y"
:[
1
]},
"o"
:{
"x"
:[
0.333
],
"y"
:[
0
]},
"t"
:
23
,
"s"
:[
0.239215686917
,
0.784313738346
,
1
,
1
]},{
"t"
:
45.0000018328876
,
"s"
:[
0.196078434587
,
0.556862771511
,
0.960784316063
,
1
]}],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"Fill 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:
0.667
,
"y"
:
1
},
"o"
:{
"x"
:
0.333
,
"y"
:
0
},
"t"
:
0
,
"s"
:[
0
,
-50
],
"to"
:[
-9.167
,
16.667
],
"ti"
:[
-9.167
,
-16.667
]},{
"i"
:{
"x"
:
0.667
,
"y"
:
1
},
"o"
:{
"x"
:
0.333
,
"y"
:
0
},
"t"
:
15
,
"s"
:[
-55
,
50
],
"to"
:[
9.167
,
16.667
],
"ti"
:[
-9.167
,
16.667
]},{
"i"
:{
"x"
:
0.667
,
"y"
:
1
},
"o"
:{
"x"
:
0.333
,
"y"
:
0
},
"t"
:
30
,
"s"
:[
55
,
50
],
"to"
:[
9.167
,
-16.667
],
"ti"
:[
9.167
,
16.667
]},{
"t"
:
45.0000018328876
,
"s"
:[
0
,
-50
]}],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"Transform"
}],
"nm"
:
"circle_A"
,
"np"
:
3
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
2
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
},{
"ty"
:
"gr"
,
"it"
:[{
"d"
:
1
,
"ty"
:
"el"
,
"s"
:{
"a"
:
0
,
"k"
:[
72
,
72
],
"ix"
:
2
},
"p"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
3
},
"nm"
:
"Ellipse Path 1"
,
"mn"
:
"ADBE Vector Shape - Ellipse"
,
"hd"
:
false
},{
"ty"
:
"st"
,
"c"
:{
"a"
:
0
,
"k"
:[
1
,
1
,
1
,
1
],
"ix"
:
3
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
4
},
"w"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"lc"
:
1
,
"lj"
:
1
,
"ml"
:
4
,
"bm"
:
0
,
"nm"
:
"Stroke 1"
,
"mn"
:
"ADBE Vector Graphic - Stroke"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:[
0.667
],
"y"
:[
1
]},
"o"
:{
"x"
:[
0.333
],
"y"
:[
0
]},
"t"
:
0
,
"s"
:[
0.196078434587
,
0.556862771511
,
0.960784316063
,
1
]},{
"i"
:{
"x"
:[
0.667
],
"y"
:[
1
]},
"o"
:{
"x"
:[
0.333
],
"y"
:[
0
]},
"t"
:
23
,
"s"
:[
0.239215686917
,
0.784313738346
,
1
,
1
]},{
"t"
:
45.0000018328876
,
"s"
:[
0.196078434587
,
0.556862771511
,
0.960784316063
,
1
]}],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"Fill 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:
0.667
,
"y"
:
1
},
"o"
:{
"x"
:
0.333
,
"y"
:
0
},
"t"
:
0
,
"s"
:[
-55
,
50
],
"to"
:[
18.333
,
0
],
"ti"
:[
-9.167
,
16.667
]},{
"i"
:{
"x"
:
0.667
,
"y"
:
1
},
"o"
:{
"x"
:
0.333
,
"y"
:
0
},
"t"
:
15
,
"s"
:[
55
,
50
],
"to"
:[
9.167
,
-16.667
],
"ti"
:[
18.333
,
0
]},{
"i"
:{
"x"
:
0.667
,
"y"
:
1
},
"o"
:{
"x"
:
0.333
,
"y"
:
0
},
"t"
:
30
,
"s"
:[
0
,
-50
],
"to"
:[
-18.333
,
0
],
"ti"
:[
9.167
,
-16.667
]},{
"t"
:
45.0000018328876
,
"s"
:[
-55
,
50
]}],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"Transform"
}],
"nm"
:
"circle_B"
,
"np"
:
3
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
3
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
},{
"ty"
:
"gr"
,
"it"
:[{
"d"
:
1
,
"ty"
:
"el"
,
"s"
:{
"a"
:
0
,
"k"
:[
72
,
72
],
"ix"
:
2
},
"p"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
3
},
"nm"
:
"Ellipse Path 1"
,
"mn"
:
"ADBE Vector Shape - Ellipse"
,
"hd"
:
false
},{
"ty"
:
"st"
,
"c"
:{
"a"
:
0
,
"k"
:[
1
,
1
,
1
,
1
],
"ix"
:
3
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
4
},
"w"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"lc"
:
1
,
"lj"
:
1
,
"ml"
:
4
,
"bm"
:
0
,
"nm"
:
"Stroke 1"
,
"mn"
:
"ADBE Vector Graphic - Stroke"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:[
0.667
],
"y"
:[
1
]},
"o"
:{
"x"
:[
0.333
],
"y"
:[
0
]},
"t"
:
0
,
"s"
:[
0.196078434587
,
0.556862771511
,
0.960784316063
,
1
]},{
"i"
:{
"x"
:[
0.667
],
"y"
:[
1
]},
"o"
:{
"x"
:[
0.333
],
"y"
:[
0
]},
"t"
:
23
,
"s"
:[
0.239215686917
,
0.784313738346
,
1
,
1
]},{
"t"
:
45.0000018328876
,
"s"
:[
0.196078434587
,
0.556862771511
,
0.960784316063
,
1
]}],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"Fill 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:
0.667
,
"y"
:
1
},
"o"
:{
"x"
:
0.333
,
"y"
:
0
},
"t"
:
0
,
"s"
:[
55
,
50
],
"to"
:[
-9.167
,
-16.667
],
"ti"
:[
18.333
,
0
]},{
"i"
:{
"x"
:
0.667
,
"y"
:
1
},
"o"
:{
"x"
:
0.333
,
"y"
:
0
},
"t"
:
15
,
"s"
:[
0
,
-50
],
"to"
:[
-18.333
,
0
],
"ti"
:[
-9.167
,
-16.667
]},{
"i"
:{
"x"
:
0.667
,
"y"
:
1
},
"o"
:{
"x"
:
0.333
,
"y"
:
0
},
"t"
:
30
,
"s"
:[
-55
,
50
],
"to"
:[
9.167
,
16.667
],
"ti"
:[
-18.333
,
0
]},{
"t"
:
45.0000018328876
,
"s"
:[
55
,
50
]}],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"Transform"
}],
"nm"
:
"circle_C"
,
"np"
:
3
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
4
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
}],
"ip"
:
0
,
"op"
:
900.000036657751
,
"st"
:
0
,
"bm"
:
0
}],
"markers"
:[]}
\ No newline at end of file
app/src/main/res/raw/error_lottie.json
0 → 100644
View file @
1762fbce
{
"v"
:
"5.5.7"
,
"meta"
:{
"g"
:
"LottieFiles AE 0.1.20"
,
"a"
:
""
,
"k"
:
""
,
"d"
:
""
,
"tc"
:
""
},
"fr"
:
30
,
"ip"
:
0
,
"op"
:
80
,
"w"
:
500
,
"h"
:
500
,
"nm"
:
"exclamação animation"
,
"ddd"
:
0
,
"assets"
:[],
"layers"
:[{
"ddd"
:
0
,
"ind"
:
1
,
"ty"
:
4
,
"nm"
:
"exclamation"
,
"sr"
:
1
,
"ks"
:{
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
11
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
10
},
"p"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:
0.667
,
"y"
:
1
},
"o"
:{
"x"
:
0.333
,
"y"
:
0
},
"t"
:
7
,
"s"
:[
258.4
,
231.36
,
0
],
"to"
:[
0
,
-1.06
,
0
],
"ti"
:[
0
,
0
,
0
]},{
"i"
:{
"x"
:
0.667
,
"y"
:
1
},
"o"
:{
"x"
:
0.333
,
"y"
:
0
},
"t"
:
10
,
"s"
:[
258.4
,
225
,
0
],
"to"
:[
0
,
0
,
0
],
"ti"
:[
0
,
-1.06
,
0
]},{
"i"
:{
"x"
:
0.833
,
"y"
:
1
},
"o"
:{
"x"
:
0.167
,
"y"
:
0
},
"t"
:
13
,
"s"
:[
258.4
,
231.36
,
0
],
"to"
:[
0
,
1.06
,
0
],
"ti"
:[
0
,
1.06
,
0
]},{
"i"
:{
"x"
:
0.667
,
"y"
:
1
},
"o"
:{
"x"
:
0.333
,
"y"
:
0
},
"t"
:
41
,
"s"
:[
258.4
,
231.36
,
0
],
"to"
:[
0
,
-1.06
,
0
],
"ti"
:[
0
,
0
,
0
]},{
"i"
:{
"x"
:
0.667
,
"y"
:
1
},
"o"
:{
"x"
:
0.333
,
"y"
:
0
},
"t"
:
44
,
"s"
:[
258.4
,
225
,
0
],
"to"
:[
0
,
0
,
0
],
"ti"
:[
0
,
-1.06
,
0
]},{
"t"
:
47
,
"s"
:[
258.4
,
231.36
,
0
]}],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
16.613
,
83.692
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:[
0.667
,
0.667
,
0.667
],
"y"
:[
1
,
1
,
1
]},
"o"
:{
"x"
:[
0.333
,
0.333
,
0.333
],
"y"
:[
0
,
0
,
0
]},
"t"
:
7
,
"s"
:[
90
,
90
,
100
]},{
"i"
:{
"x"
:[
0.667
,
0.667
,
0.667
],
"y"
:[
1
,
1
,
1
]},
"o"
:{
"x"
:[
0.333
,
0.333
,
0.333
],
"y"
:[
0
,
0
,
0
]},
"t"
:
10
,
"s"
:[
93
,
93
,
100
]},{
"i"
:{
"x"
:[
0.833
,
0.833
,
0.833
],
"y"
:[
1
,
1
,
1
]},
"o"
:{
"x"
:[
0.167
,
0.167
,
0.167
],
"y"
:[
0
,
0
,
0
]},
"t"
:
13
,
"s"
:[
90
,
90
,
100
]},{
"i"
:{
"x"
:[
0.667
,
0.667
,
0.667
],
"y"
:[
1
,
1
,
1
]},
"o"
:{
"x"
:[
0.333
,
0.333
,
0.333
],
"y"
:[
0
,
0
,
0
]},
"t"
:
41
,
"s"
:[
90
,
90
,
100
]},{
"i"
:{
"x"
:[
0.667
,
0.667
,
0.667
],
"y"
:[
1
,
1
,
1
]},
"o"
:{
"x"
:[
0.333
,
0.333
,
0.333
],
"y"
:[
0
,
0
,
0
]},
"t"
:
44
,
"s"
:[
93
,
93
,
100
]},{
"t"
:
47
,
"s"
:[
90
,
90
,
100
]}],
"ix"
:
6
}},
"ao"
:
0
,
"shapes"
:[{
"ty"
:
"gr"
,
"it"
:[{
"ind"
:
0
,
"ty"
:
"sh"
,
"ix"
:
1
,
"ks"
:{
"a"
:
0
,
"k"
:{
"i"
:[[
9.037
,
0
],[
0
,
0
],[
0
,
9.038
],[
-9.037
,
0
],[
0
,
-9.037
]],
"o"
:[[
0
,
0
],[
-9.037
,
0
],[
0
,
-9.037
],[
9.037
,
0
],[
0
,
9.038
]],
"v"
:[[
0
,
16.363
],[
0
,
16.363
],[
-16.363
,
0
],[
0
,
-16.363
],[
16.363
,
0
]],
"c"
:
true
},
"ix"
:
2
},
"nm"
:
"Path 1"
,
"mn"
:
"ADBE Vector Shape - Group"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
0
,
"k"
:[
1
,
1
,
1
,
1
],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"Fill 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
16.613
,
150.771
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"Transform"
}],
"nm"
:
"Group 1"
,
"np"
:
2
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
1
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
},{
"ty"
:
"gr"
,
"it"
:[{
"ind"
:
0
,
"ty"
:
"sh"
,
"ix"
:
1
,
"ks"
:{
"a"
:
0
,
"k"
:{
"i"
:[[
8.134
,
0
],[
0
,
0
],[
0
,
8.134
],[
0
,
0
],[
-8.133
,
0
],[
0
,
-8.134
],[
0
,
0
]],
"o"
:[[
0
,
0
],[
-8.133
,
0
],[
0
,
0
],[
0
,
-8.134
],[
8.134
,
0
],[
0
,
0
],[
0
,
8.134
]],
"v"
:[[
0
,
59.999
],[
0
,
59.999
],[
-14.727
,
45.271
],[
-14.727
,
-45.271
],[
0
,
-59.999
],[
14.727
,
-45.271
],[
14.727
,
45.271
]],
"c"
:
true
},
"ix"
:
2
},
"nm"
:
"Path 1"
,
"mn"
:
"ADBE Vector Shape - Group"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
0
,
"k"
:[
1
,
1
,
1
,
1
],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"Fill 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
16.613
,
60.249
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"Transform"
}],
"nm"
:
"Group 2"
,
"np"
:
2
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
2
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
}],
"ip"
:
0
,
"op"
:
80
,
"st"
:
0
,
"bm"
:
0
},{
"ddd"
:
0
,
"ind"
:
2
,
"ty"
:
4
,
"nm"
:
"stroke circle"
,
"sr"
:
1
,
"ks"
:{
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
11
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
10
},
"p"
:{
"a"
:
0
,
"k"
:[
258.4
,
231.36
,
0
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
146
,
146
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
,
100
],
"ix"
:
6
}},
"ao"
:
0
,
"shapes"
:[{
"ty"
:
"gr"
,
"it"
:[{
"ind"
:
0
,
"ty"
:
"sh"
,
"ix"
:
1
,
"ks"
:{
"a"
:
0
,
"k"
:{
"i"
:[[
-77.872
,
0
],[
0
,
-77.872
],[
77.872
,
0
],[
0
,
77.872
]],
"o"
:[[
77.872
,
0
],[
0
,
77.872
],[
-77.872
,
0
],[
0
,
-77.872
]],
"v"
:[[
0
,
-141
],[
141
,
0
],[
0
,
141
],[
-141
,
0
]],
"c"
:
true
},
"ix"
:
2
},
"nm"
:
"Path 1"
,
"mn"
:
"ADBE Vector Shape - Group"
,
"hd"
:
false
},{
"ty"
:
"st"
,
"c"
:{
"a"
:
0
,
"k"
:[
0.952999997606
,
0.340999977261
,
0.301999978458
,
1
],
"ix"
:
3
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
4
},
"w"
:{
"a"
:
0
,
"k"
:
3
,
"ix"
:
5
},
"lc"
:
1
,
"lj"
:
1
,
"ml"
:
10
,
"bm"
:
0
,
"nm"
:
"Stroke 1"
,
"mn"
:
"ADBE Vector Graphic - Stroke"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
146
,
146
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:[
0.667
,
0.667
],
"y"
:[
1
,
1
]},
"o"
:{
"x"
:[
0.333
,
0.333
],
"y"
:[
0
,
0
]},
"t"
:
30
,
"s"
:[
90
,
90
]},{
"t"
:
78
,
"s"
:[
120
,
120
]}],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:[
0.667
],
"y"
:[
1
]},
"o"
:{
"x"
:[
0.333
],
"y"
:[
0
]},
"t"
:
30
,
"s"
:[
90
]},{
"t"
:
79
,
"s"
:[
0
]}],
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"Transform"
}],
"nm"
:
"Group 1"
,
"np"
:
2
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
1
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
}],
"ip"
:
0
,
"op"
:
90
,
"st"
:
0
,
"bm"
:
0
},{
"ddd"
:
0
,
"ind"
:
3
,
"ty"
:
4
,
"nm"
:
"stroke circle 2"
,
"sr"
:
1
,
"ks"
:{
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
11
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
10
},
"p"
:{
"a"
:
0
,
"k"
:[
258.4
,
231.36
,
0
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
146
,
146
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
,
100
],
"ix"
:
6
}},
"ao"
:
0
,
"shapes"
:[{
"ty"
:
"gr"
,
"it"
:[{
"ind"
:
0
,
"ty"
:
"sh"
,
"ix"
:
1
,
"ks"
:{
"a"
:
0
,
"k"
:{
"i"
:[[
-77.872
,
0
],[
0
,
-77.872
],[
77.872
,
0
],[
0
,
77.872
]],
"o"
:[[
77.872
,
0
],[
0
,
77.872
],[
-77.872
,
0
],[
0
,
-77.872
]],
"v"
:[[
0
,
-141
],[
141
,
0
],[
0
,
141
],[
-141
,
0
]],
"c"
:
true
},
"ix"
:
2
},
"nm"
:
"Path 1"
,
"mn"
:
"ADBE Vector Shape - Group"
,
"hd"
:
false
},{
"ty"
:
"st"
,
"c"
:{
"a"
:
0
,
"k"
:[
0.952999997606
,
0.340999977261
,
0.301999978458
,
1
],
"ix"
:
3
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
4
},
"w"
:{
"a"
:
0
,
"k"
:
3
,
"ix"
:
5
},
"lc"
:
1
,
"lj"
:
1
,
"ml"
:
10
,
"bm"
:
0
,
"nm"
:
"Stroke 1"
,
"mn"
:
"ADBE Vector Graphic - Stroke"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
146
,
146
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:[
0.667
,
0.667
],
"y"
:[
1
,
1
]},
"o"
:{
"x"
:[
0.333
,
0.333
],
"y"
:[
0
,
0
]},
"t"
:
0
,
"s"
:[
90
,
90
]},{
"t"
:
48
,
"s"
:[
120
,
120
]}],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:[
0.667
],
"y"
:[
1
]},
"o"
:{
"x"
:[
0.333
],
"y"
:[
0
]},
"t"
:
0
,
"s"
:[
90
]},{
"t"
:
49
,
"s"
:[
0
]}],
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"Transform"
}],
"nm"
:
"Group 1"
,
"np"
:
2
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
1
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
}],
"ip"
:
0
,
"op"
:
90
,
"st"
:
0
,
"bm"
:
0
},{
"ddd"
:
0
,
"ind"
:
4
,
"ty"
:
4
,
"nm"
:
"circle"
,
"sr"
:
1
,
"ks"
:{
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
11
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
10
},
"p"
:{
"a"
:
0
,
"k"
:[
258.4
,
231.36
,
0
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
130.82
,
130.82
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
,
100
],
"ix"
:
6
}},
"ao"
:
0
,
"shapes"
:[{
"ty"
:
"gr"
,
"it"
:[{
"ind"
:
0
,
"ty"
:
"sh"
,
"ix"
:
1
,
"ks"
:{
"a"
:
0
,
"k"
:{
"i"
:[[
-72.112
,
0
],[
0
,
-72.112
],[
72.111
,
0
],[
0
,
72.111
]],
"o"
:[[
72.111
,
0
],[
0
,
72.111
],[
-72.112
,
0
],[
0
,
-72.112
]],
"v"
:[[
0
,
-130.57
],[
130.57
,
0
],[
0
,
130.57
],[
-130.57
,
0
]],
"c"
:
true
},
"ix"
:
2
},
"nm"
:
"Path 1"
,
"mn"
:
"ADBE Vector Shape - Group"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
0
,
"k"
:[
0.952999997606
,
0.340999977261
,
0.301999978458
,
1
],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"Fill 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
130.82
,
130.82
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"Transform"
}],
"nm"
:
"Group 1"
,
"np"
:
2
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
1
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
}],
"ip"
:
0
,
"op"
:
90
,
"st"
:
0
,
"bm"
:
0
}],
"markers"
:[]}
\ No newline at end of file
app/src/main/res/raw/lottie_progresss.json
0 → 100644
View file @
1762fbce
{
"v"
:
"5.5.8"
,
"fr"
:
60
,
"ip"
:
0
,
"op"
:
50
,
"w"
:
352
,
"h"
:
328
,
"nm"
:
"loading"
,
"ddd"
:
0
,
"assets"
:[],
"layers"
:[{
"ddd"
:
0
,
"ind"
:
1
,
"ty"
:
4
,
"nm"
:
"Layer 5 Outlines"
,
"sr"
:
1
,
"ks"
:{
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
11
},
"r"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:[
0.833
],
"y"
:[
0.833
]},
"o"
:{
"x"
:[
0.167
],
"y"
:[
0.167
]},
"t"
:
10
,
"s"
:[
0
]},{
"t"
:
20
,
"s"
:[
90
]}],
"ix"
:
10
},
"p"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:
0.833
,
"y"
:
0.833
},
"o"
:{
"x"
:
0.167
,
"y"
:
0.167
},
"t"
:
0
,
"s"
:[
273.692
,
264.004
,
0
],
"to"
:[
0
,
0
,
0
],
"ti"
:[
0
,
0
,
0
]},{
"i"
:{
"x"
:
0.833
,
"y"
:
0.833
},
"o"
:{
"x"
:
0.167
,
"y"
:
0.167
},
"t"
:
10
,
"s"
:[
249.692
,
238.504
,
0
],
"to"
:[
0
,
0
,
0
],
"ti"
:[
0
,
0
,
0
]},{
"i"
:{
"x"
:
0.833
,
"y"
:
0.833
},
"o"
:{
"x"
:
0.167
,
"y"
:
0.167
},
"t"
:
20
,
"s"
:[
102.152
,
237.514
,
0
],
"to"
:[
0
,
0
,
0
],
"ti"
:[
0
,
0
,
0
]},{
"t"
:
35
,
"s"
:[
75.986
,
264.652
,
0
]}],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
39.639
,
39.363
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
,
100
],
"ix"
:
6
}},
"ao"
:
0
,
"shapes"
:[{
"ty"
:
"gr"
,
"it"
:[{
"ind"
:
0
,
"ty"
:
"sh"
,
"ix"
:
1
,
"ks"
:{
"a"
:
0
,
"k"
:{
"i"
:[[
-0.002
,
8.87
],[
0.307
,
9.885
],[
-7.001
,
-0.101
],[
-20.127
,
0.246
],[
-0.027
,
-5.58
],[
0.213
,
-19.786
],[
7.326
,
0.11
],[
18.424
,
-0.127
],[
-0.751
,
8.993
]],
"o"
:[[
0.001
,
-9.896
],[
-0.195
,
-6.285
],[
20.126
,
0.289
],[
6.265
,
-0.078
],[
0.095
,
19.788
],[
-0.074
,
6.933
],[
-18.42
,
-0.276
],[
-8.522
,
0.057
],[
0.736
,
-8.81
]],
"v"
:[[
-38.476
,
0.024
],[
-38.556
,
-29.658
],[
-29.966
,
-39.012
],[
30.422
,
-39.001
],[
39.284
,
-30.48
],[
39.176
,
28.883
],[
28.115
,
39.003
],[
-27.157
,
38.947
],[
-38.638
,
26.624
]],
"c"
:
true
},
"ix"
:
2
},
"nm"
:
"Path 1"
,
"mn"
:
"ADBE Vector Shape - Group"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
0
,
"k"
:[
0.373285779766
,
0.419364121381
,
0.629613420075
,
1
],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"Fill 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
39.639
,
39.363
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"Transform"
}],
"nm"
:
"Group 1"
,
"np"
:
2
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
1
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
}],
"ip"
:
0
,
"op"
:
50
,
"st"
:
0
,
"bm"
:
0
},{
"ddd"
:
0
,
"ind"
:
2
,
"ty"
:
4
,
"nm"
:
"cube 2 Outlines"
,
"sr"
:
1
,
"ks"
:{
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
11
},
"r"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:[
0.833
],
"y"
:[
0.833
]},
"o"
:{
"x"
:[
0.167
],
"y"
:[
0.167
]},
"t"
:
10
,
"s"
:[
0
]},{
"t"
:
20
,
"s"
:[
90
]}],
"ix"
:
10
},
"p"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:
0.833
,
"y"
:
0.833
},
"o"
:{
"x"
:
0.167
,
"y"
:
0.167
},
"t"
:
0
,
"s"
:[
76.311
,
265.093
,
0
],
"to"
:[
-6.578
,
5.854
,
0
],
"ti"
:[
0
,
0
,
0
]},{
"i"
:{
"x"
:
0.833
,
"y"
:
0.833
},
"o"
:{
"x"
:
0.167
,
"y"
:
0.167
},
"t"
:
10
,
"s"
:[
103.061
,
237.593
,
0
],
"to"
:[
0
,
0
,
0
],
"ti"
:[
0
,
0
,
0
]},{
"i"
:{
"x"
:
0.833
,
"y"
:
0.833
},
"o"
:{
"x"
:
0.167
,
"y"
:
0.167
},
"t"
:
20
,
"s"
:[
102.601
,
90.397
,
0
],
"to"
:[
0
,
0
,
0
],
"ti"
:[
0
,
0
,
0
]},{
"t"
:
35
,
"s"
:[
76.101
,
65.093
,
0
]}],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
39.628
,
39.611
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
,
100
],
"ix"
:
6
}},
"ao"
:
0
,
"shapes"
:[{
"ty"
:
"gr"
,
"it"
:[{
"ind"
:
0
,
"ty"
:
"sh"
,
"ix"
:
1
,
"ks"
:{
"a"
:
0
,
"k"
:{
"i"
:[[
-0.001
,
-9.556
],[
-0.41
,
-9.879
],[
6.697
,
-0.013
],[
18.429
,
0.122
],[
-0.298
,
9.885
],[
0.053
,
17.064
],[
-10.503
,
-0.497
],[
-18.425
,
0.287
],[
0.288
,
-7.214
]],
"o"
:[[
0.001
,
9.897
],[
0.294
,
7.073
],[
-18.43
,
0.035
],[
-8.916
,
-0.058
],[
0.515
,
-17.049
],[
-0.027
,
-8.788
],[
18.388
,
0.87
],[
6.954
,
-0.107
],[
-0.381
,
9.541
]],
"v"
:[[
38.98
,
-0.574
],[
39.083
,
29.113
],[
29.581
,
39.262
],[
-25.707
,
39.24
],[
-39.079
,
25.488
],[
-38.949
,
-25.701
],[
-25.917
,
-38.865
],[
29.359
,
-38.717
],[
39.072
,
-29.238
]],
"c"
:
true
},
"ix"
:
2
},
"nm"
:
"Path 1"
,
"mn"
:
"ADBE Vector Shape - Group"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
0
,
"k"
:[
0.636960018382
,
0.710408169616
,
0.82662969851
,
1
],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"Fill 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
39.627
,
39.611
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"Transform"
}],
"nm"
:
"Group 1"
,
"np"
:
2
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
1
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
}],
"ip"
:
0
,
"op"
:
50
,
"st"
:
0
,
"bm"
:
0
},{
"ddd"
:
0
,
"ind"
:
3
,
"ty"
:
4
,
"nm"
:
"cube 3 Outlines"
,
"sr"
:
1
,
"ks"
:{
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
11
},
"r"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:[
0.833
],
"y"
:[
0.833
]},
"o"
:{
"x"
:[
0.167
],
"y"
:[
0.167
]},
"t"
:
10
,
"s"
:[
0
]},{
"t"
:
20
,
"s"
:[
90
]}],
"ix"
:
10
},
"p"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:
0.833
,
"y"
:
0.833
},
"o"
:{
"x"
:
0.167
,
"y"
:
0.167
},
"t"
:
0
,
"s"
:[
275.125
,
64.031
,
0
],
"to"
:[
0
,
0
,
0
],
"ti"
:[
0
,
0
,
0
]},{
"i"
:{
"x"
:
0.833
,
"y"
:
0.833
},
"o"
:{
"x"
:
0.167
,
"y"
:
0.167
},
"t"
:
10
,
"s"
:[
249.625
,
91.031
,
0
],
"to"
:[
0
,
0
,
0
],
"ti"
:[
0
,
0
,
0
]},{
"i"
:{
"x"
:
0.833
,
"y"
:
0.833
},
"o"
:{
"x"
:
0.167
,
"y"
:
0.167
},
"t"
:
20
,
"s"
:[
249.625
,
237.553
,
0
],
"to"
:[
0
,
0
,
0
],
"ti"
:[
0
,
0
,
0
]},{
"t"
:
35
,
"s"
:[
274.969
,
265.125
,
0
]}],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
39.465
,
39.399
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
,
100
],
"ix"
:
6
}},
"ao"
:
0
,
"shapes"
:[{
"ty"
:
"gr"
,
"it"
:[{
"ind"
:
0
,
"ty"
:
"sh"
,
"ix"
:
1
,
"ks"
:{
"a"
:
0
,
"k"
:{
"i"
:[[
8.873
,
0.002
],[
9.548
,
-0.285
],[
-0.078
,
6.772
],[
0.279
,
19.791
],[
-6.186
,
0.033
],[
-19.107
,
-0.282
],[
0.206
,
-8.717
],[
0.169
,
-17.063
],[
12.029
,
-0.025
]],
"o"
:[[
-9.557
,
-0.003
],[
-6.413
,
0.192
],[
0.227
,
-19.792
],[
-0.093
,
-6.557
],[
19.111
,
-0.103
],[
8.092
,
0.12
],[
-0.403
,
17.055
],[
-0.124
,
12.438
],[
-8.873
,
0.019
]],
"v"
:[[
-1.143
,
38.887
],[
-29.809
,
38.958
],[
-39.1
,
30.12
],[
-39.122
,
-29.26
],[
-30.236
,
-38.949
],[
27.097
,
-38.867
],[
39.01
,
-25.832
],[
38.85
,
25.357
],[
25.476
,
38.886
]],
"c"
:
true
},
"ix"
:
2
},
"nm"
:
"Path 1"
,
"mn"
:
"ADBE Vector Shape - Group"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
0
,
"k"
:[
0.636960018382
,
0.710408169616
,
0.82662969851
,
1
],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"Fill 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
39.465
,
39.4
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"Transform"
}],
"nm"
:
"Group 1"
,
"np"
:
2
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
1
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
}],
"ip"
:
0
,
"op"
:
50
,
"st"
:
0
,
"bm"
:
0
},{
"ddd"
:
0
,
"ind"
:
4
,
"ty"
:
4
,
"nm"
:
"cube 4 Outlines"
,
"sr"
:
1
,
"ks"
:{
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
11
},
"r"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:[
0.833
],
"y"
:[
0.833
]},
"o"
:{
"x"
:[
0.167
],
"y"
:[
0.167
]},
"t"
:
10
,
"s"
:[
0
]},{
"t"
:
20
,
"s"
:[
90
]}],
"ix"
:
10
},
"p"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:
0.833
,
"y"
:
0.833
},
"o"
:{
"x"
:
0.167
,
"y"
:
0.167
},
"t"
:
0
,
"s"
:[
76.267
,
63.981
,
0
],
"to"
:[
-0.73
,
-0.912
,
0
],
"ti"
:[
0
,
0
,
0
]},{
"i"
:{
"x"
:
0.833
,
"y"
:
0.833
},
"o"
:{
"x"
:
0.167
,
"y"
:
0.167
},
"t"
:
10
,
"s"
:[
99.767
,
91.006
,
0
],
"to"
:[
0
,
0
,
0
],
"ti"
:[
0
,
0
,
0
]},{
"i"
:{
"x"
:
0.833
,
"y"
:
0.833
},
"o"
:{
"x"
:
0.167
,
"y"
:
0.167
},
"t"
:
20
,
"s"
:[
249.396
,
91.006
,
0
],
"to"
:[
0
,
0
,
0
],
"ti"
:[
0
,
0
,
0
]},{
"t"
:
35
,
"s"
:[
274.89
,
65.082
,
0
]}],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
39.634
,
39.346
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
,
100
],
"ix"
:
6
}},
"ao"
:
0
,
"shapes"
:[{
"ty"
:
"gr"
,
"it"
:[{
"ind"
:
0
,
"ty"
:
"sh"
,
"ix"
:
1
,
"ks"
:{
"a"
:
0
,
"k"
:{
"i"
:[[
0.003
,
-9.212
],[
-0.288
,
-9.886
],[
6.112
,
0.064
],[
20.127
,
-0.256
],[
0.031
,
5.612
],[
-0.209
,
19.786
],[
-7.384
,
-0.112
],[
-18.423
,
0.131
],[
0.741
,
-9.077
]],
"o"
:[[
-0.003
,
9.895
],[
0.181
,
6.219
],[
-20.127
,
-0.208
],[
-6.228
,
0.079
],[
-0.108
,
-19.788
],[
0.072
,
-6.877
],[
18.42
,
0.278
],[
8.459
,
-0.06
],[
-0.747
,
9.151
]],
"v"
:[[
38.477
,
0.925
],[
38.551
,
30.607
],[
30.062
,
38.999
],[
-30.327
,
39.018
],[
-39.268
,
30.579
],[
-39.176
,
-28.784
],[
-28.195
,
-38.984
],[
27.076
,
-38.931
],[
38.644
,
-26.697
]],
"c"
:
true
},
"ix"
:
2
},
"nm"
:
"Path 1"
,
"mn"
:
"ADBE Vector Shape - Group"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
0
,
"k"
:[
0.373285779766
,
0.419364121381
,
0.629613420075
,
1
],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"Fill 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
39.895
,
39.223
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"Transform"
}],
"nm"
:
"Group 1"
,
"np"
:
2
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
1
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
}],
"ip"
:
0
,
"op"
:
50
,
"st"
:
0
,
"bm"
:
0
},{
"ddd"
:
0
,
"ind"
:
5
,
"ty"
:
4
,
"nm"
:
"bg Outlines"
,
"sr"
:
1
,
"ks"
:{
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
11
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
10
},
"p"
:{
"a"
:
0
,
"k"
:[
175.544
,
163.841
,
0
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
175.794
,
164.091
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
,
100
],
"ix"
:
6
}},
"ao"
:
0
,
"shapes"
:[{
"ty"
:
"gr"
,
"it"
:[{
"ind"
:
0
,
"ty"
:
"sh"
,
"ix"
:
1
,
"ks"
:{
"a"
:
0
,
"k"
:{
"i"
:[[
0
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"o"
:[[
0
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"v"
:[[
-175.544
,
163.841
],[
175.544
,
163.841
],[
175.544
,
-163.841
],[
-175.544
,
-163.841
]],
"c"
:
true
},
"ix"
:
2
},
"nm"
:
"Path 1"
,
"mn"
:
"ADBE Vector Shape - Group"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
0
,
"k"
:[
0.999999940162
,
0.999999940162
,
1
,
1
],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"Fill 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
175.794
,
164.091
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"Transform"
}],
"nm"
:
"Group 1"
,
"np"
:
2
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
1
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
}],
"ip"
:
0
,
"op"
:
50
,
"st"
:
0
,
"bm"
:
0
}],
"markers"
:[]}
\ No newline at end of file
app/src/main/res/raw/rifki_loading.json
0 → 100644
View file @
1762fbce
{
"v"
:
"5.7.11"
,
"fr"
:
25
,
"ip"
:
0
,
"op"
:
110
,
"w"
:
800
,
"h"
:
800
,
"nm"
:
"Comp 2"
,
"ddd"
:
0
,
"assets"
:
[],
"layers"
:
[
{
"ddd"
:
0
,
"ind"
:
1
,
"ty"
:
4
,
"nm"
:
"Shape Layer 1"
,
"sr"
:
1
,
"ks"
:
{
"o"
:
{
"a"
:
0
,
"k"
:
100
,
"ix"
:
11
},
"r"
:
{
"a"
:
1
,
"k"
:
[
{
"t"
:
0
,
"s"
:
[
0
],
"h"
:
1
},
{
"t"
:
1
,
"s"
:
[
36
],
"h"
:
1
},
{
"t"
:
2
,
"s"
:
[
72
],
"h"
:
1
},
{
"t"
:
3
,
"s"
:
[
108
],
"h"
:
1
},
{
"t"
:
4
,
"s"
:
[
144
],
"h"
:
1
},
{
"t"
:
5
,
"s"
:
[
180
],
"h"
:
1
},
{
"t"
:
6
,
"s"
:
[
216
],
"h"
:
1
},
{
"t"
:
7
,
"s"
:
[
252
],
"h"
:
1
},
{
"t"
:
8
,
"s"
:
[
288
],
"h"
:
1
},
{
"t"
:
9
,
"s"
:
[
324
],
"h"
:
1
},
{
"t"
:
10
,
"s"
:
[
360
],
"h"
:
1
}
],
"ix"
:
10
,
"x"
:
"var $bm_rt;
\n
$bm_rt = loopOut();"
},
"p"
:
{
"a"
:
0
,
"k"
:
[
400
,
400
,
0
],
"ix"
:
2
,
"l"
:
2
},
"a"
:
{
"a"
:
0
,
"k"
:
[
0
,
0
,
0
],
"ix"
:
1
,
"l"
:
2
},
"s"
:
{
"a"
:
0
,
"k"
:
[
100
,
100
,
100
],
"ix"
:
6
,
"l"
:
2
}
},
"ao"
:
0
,
"shapes"
:
[
{
"ty"
:
"gr"
,
"it"
:
[
{
"d"
:
1
,
"ty"
:
"el"
,
"s"
:
{
"a"
:
0
,
"k"
:
[
800
,
800
],
"ix"
:
2
},
"p"
:
{
"a"
:
0
,
"k"
:
[
0
,
0
],
"ix"
:
3
},
"nm"
:
"Ellipse Path 1"
,
"mn"
:
"ADBE Vector Shape - Ellipse"
,
"hd"
:
false
},
{
"ty"
:
"fl"
,
"c"
:
{
"a"
:
0
,
"k"
:
[
0.781960880055
,
0.1576186685
,
0.1576186685
,
1
],
"ix"
:
4
},
"o"
:
{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"Fill 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},
{
"ty"
:
"tr"
,
"p"
:
{
"a"
:
0
,
"k"
:
[
0
,
-130
],
"ix"
:
2
},
"a"
:
{
"a"
:
0
,
"k"
:
[
0
,
0
],
"ix"
:
1
},
"s"
:
{
"a"
:
0
,
"k"
:
[
7
,
7
],
"ix"
:
3
},
"r"
:
{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:
{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:
{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:
{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"Transform"
}
],
"nm"
:
"Ellipse 1"
,
"np"
:
3
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
1
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
},
{
"ty"
:
"rp"
,
"c"
:
{
"a"
:
0
,
"k"
:
10
,
"ix"
:
1
},
"o"
:
{
"a"
:
0
,
"k"
:
0
,
"ix"
:
2
},
"m"
:
1
,
"ix"
:
2
,
"tr"
:
{
"ty"
:
"tr"
,
"p"
:
{
"a"
:
0
,
"k"
:
[
0
,
0
],
"ix"
:
2
},
"a"
:
{
"a"
:
0
,
"k"
:
[
0
,
0
],
"ix"
:
1
},
"s"
:
{
"a"
:
0
,
"k"
:
[
100
,
100
],
"ix"
:
3
},
"r"
:
{
"a"
:
0
,
"k"
:
36
,
"ix"
:
4
},
"so"
:
{
"a"
:
0
,
"k"
:
5
,
"ix"
:
5
},
"eo"
:
{
"a"
:
0
,
"k"
:
100
,
"ix"
:
6
},
"nm"
:
"Transform"
},
"nm"
:
"Repeater 1"
,
"mn"
:
"ADBE Vector Filter - Repeater"
,
"hd"
:
false
}
],
"ip"
:
0
,
"op"
:
110
,
"st"
:
0
,
"bm"
:
0
}
],
"markers"
:
[]
}
\ No newline at end of file
app/src/main/res/raw/success_lottie.json
0 → 100644
View file @
1762fbce
{
"v"
:
"5.5.7"
,
"meta"
:{
"g"
:
"LottieFiles AE 0.1.20"
,
"a"
:
"Inktwin"
,
"k"
:
"Successful animation, check, success, congrats, cangratulation"
,
"d"
:
"Successful animation"
,
"tc"
:
"dark"
},
"fr"
:
24
,
"ip"
:
0
,
"op"
:
48
,
"w"
:
200
,
"h"
:
200
,
"nm"
:
"Success"
,
"ddd"
:
0
,
"assets"
:[],
"layers"
:[{
"ddd"
:
0
,
"ind"
:
1
,
"ty"
:
4
,
"nm"
:
"Shape Layer 4"
,
"parent"
:
4
,
"sr"
:
1
,
"ks"
:{
"o"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:[
0
],
"y"
:[
1
]},
"o"
:{
"x"
:[
0.333
],
"y"
:[
0
]},
"t"
:
60
,
"s"
:[
100
]},{
"t"
:
70
,
"s"
:[
0
]}],
"ix"
:
11
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
10
},
"p"
:{
"a"
:
0
,
"k"
:[
-5.051
,
60.949
,
0
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
77
,
2
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
55.682
,
55.682
,
100
],
"ix"
:
6
}},
"ao"
:
0
,
"shapes"
:[{
"ty"
:
"gr"
,
"it"
:[{
"ind"
:
0
,
"ty"
:
"sh"
,
"ix"
:
1
,
"ks"
:{
"a"
:
0
,
"k"
:{
"i"
:[[
0
,
0
]],
"o"
:[[
0
,
0
]],
"v"
:[[
955.194
,
251.637
]],
"c"
:
false
},
"ix"
:
2
},
"nm"
:
"Path 1"
,
"mn"
:
"ADBE Vector Shape - Group"
,
"hd"
:
false
},{
"ty"
:
"st"
,
"c"
:{
"a"
:
0
,
"k"
:[
1
,
1
,
1
,
1
],
"ix"
:
3
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
4
},
"w"
:{
"a"
:
0
,
"k"
:
64
,
"ix"
:
5
},
"lc"
:
1
,
"lj"
:
1
,
"ml"
:
4
,
"bm"
:
0
,
"nm"
:
"Stroke 1"
,
"mn"
:
"ADBE Vector Graphic - Stroke"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"Transform"
}],
"nm"
:
"Shape 2"
,
"np"
:
3
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
1
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
},{
"ty"
:
"gr"
,
"it"
:[{
"ind"
:
0
,
"ty"
:
"sh"
,
"ix"
:
1
,
"ks"
:{
"a"
:
0
,
"k"
:{
"i"
:[[
-236
,
0
],[
0
,
169.697
],[
223.622
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"o"
:[[
232.172
,
0
],[
0
,
-178.341
],[
-228.293
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"v"
:[[
54.299
,
326.269
],[
430.045
,
-2.319
],[
81.56
,
-379.819
],[
-238.557
,
-171.999
],[
-56
,
6
],[
30
,
92
],[
210
,
-88
]],
"c"
:
false
},
"ix"
:
2
},
"nm"
:
"Path 1"
,
"mn"
:
"ADBE Vector Shape - Group"
,
"hd"
:
false
},{
"ty"
:
"st"
,
"c"
:{
"a"
:
0
,
"k"
:[
1
,
1
,
1
,
1
],
"ix"
:
3
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
4
},
"w"
:{
"a"
:
0
,
"k"
:
64
,
"ix"
:
5
},
"lc"
:
2
,
"lj"
:
2
,
"bm"
:
0
,
"nm"
:
"Stroke 1"
,
"mn"
:
"ADBE Vector Graphic - Stroke"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"Transform"
}],
"nm"
:
"Shape 1"
,
"np"
:
3
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
2
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
},{
"ty"
:
"tm"
,
"s"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:[
0
],
"y"
:[
1
]},
"o"
:{
"x"
:[
0.851
],
"y"
:[
0
]},
"t"
:
48
,
"s"
:[
83
]},{
"t"
:
69
,
"s"
:[
0
]}],
"ix"
:
1
},
"e"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:[
0
],
"y"
:[
1
]},
"o"
:{
"x"
:[
0.851
],
"y"
:[
0
]},
"t"
:
49
,
"s"
:[
100
]},{
"t"
:
70
,
"s"
:[
0
]}],
"ix"
:
2
},
"o"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
3
},
"m"
:
1
,
"ix"
:
3
,
"nm"
:
"Trim Paths 1"
,
"mn"
:
"ADBE Vector Filter - Trim"
,
"hd"
:
false
}],
"ip"
:
48
,
"op"
:
973
,
"st"
:
13
,
"bm"
:
0
},{
"ddd"
:
0
,
"ind"
:
2
,
"ty"
:
4
,
"nm"
:
"Shape Layer 2"
,
"parent"
:
4
,
"sr"
:
1
,
"ks"
:{
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
11
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
10
},
"p"
:{
"a"
:
0
,
"k"
:[
-5.051
,
60.949
,
0
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
77
,
2
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
55.682
,
55.682
,
100
],
"ix"
:
6
}},
"ao"
:
0
,
"shapes"
:[{
"ty"
:
"gr"
,
"it"
:[{
"ind"
:
0
,
"ty"
:
"sh"
,
"ix"
:
1
,
"ks"
:{
"a"
:
0
,
"k"
:{
"i"
:[[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"o"
:[[
0
,
0
],[
0
,
0
],[
0
,
0
]],
"v"
:[[
-56
,
6
],[
30
,
92
],[
210
,
-88
]],
"c"
:
false
},
"ix"
:
2
},
"nm"
:
"Path 1"
,
"mn"
:
"ADBE Vector Shape - Group"
,
"hd"
:
false
},{
"ty"
:
"st"
,
"c"
:{
"a"
:
0
,
"k"
:[
1
,
1
,
1
,
1
],
"ix"
:
3
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
4
},
"w"
:{
"a"
:
0
,
"k"
:
64
,
"ix"
:
5
},
"lc"
:
2
,
"lj"
:
2
,
"bm"
:
0
,
"nm"
:
"Stroke 1"
,
"mn"
:
"ADBE Vector Graphic - Stroke"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
0
,
"k"
:[
0.2196078431372549
,
0.7568627450980392
,
0.4470588235294118
,
1
],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"Fill 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"Transform"
}],
"nm"
:
"Shape 1"
,
"np"
:
3
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
1
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
},{
"ty"
:
"tm"
,
"s"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
1
},
"e"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:[
0
],
"y"
:[
1
]},
"o"
:{
"x"
:[
0.333
],
"y"
:[
0
]},
"t"
:
12
,
"s"
:[
0
]},{
"t"
:
24
,
"s"
:[
100
]}],
"ix"
:
2
},
"o"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
3
},
"m"
:
1
,
"ix"
:
2
,
"nm"
:
"Trim Paths 1"
,
"mn"
:
"ADBE Vector Filter - Trim"
,
"hd"
:
false
}],
"ip"
:
0
,
"op"
:
49
,
"st"
:
0
,
"bm"
:
0
},{
"ddd"
:
0
,
"ind"
:
3
,
"ty"
:
4
,
"nm"
:
"Shape Layer 3"
,
"sr"
:
1
,
"ks"
:{
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
11
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
10
},
"p"
:{
"a"
:
0
,
"k"
:[
101.49999999999999
,
92.5
,
0
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
25
,
25
,
100
],
"ix"
:
6
}},
"ao"
:
0
,
"shapes"
:[{
"ty"
:
"gr"
,
"it"
:[{
"ind"
:
0
,
"ty"
:
"sh"
,
"ix"
:
1
,
"ks"
:{
"a"
:
0
,
"k"
:{
"i"
:[[
0
,
0
],[
0
,
0
]],
"o"
:[[
0
,
0
],[
0
,
0
]],
"v"
:[[
-8
,
-78
],[
-8
,
-254
]],
"c"
:
false
},
"ix"
:
2
},
"nm"
:
"Path 1"
,
"mn"
:
"ADBE Vector Shape - Group"
,
"hd"
:
false
},{
"ty"
:
"st"
,
"c"
:{
"a"
:
0
,
"k"
:[
1
,
1
,
1
,
1
],
"ix"
:
3
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
4
},
"w"
:{
"a"
:
0
,
"k"
:
20
,
"ix"
:
5
},
"lc"
:
2
,
"lj"
:
2
,
"bm"
:
0
,
"nm"
:
"Stroke 1"
,
"mn"
:
"ADBE Vector Graphic - Stroke"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
0
,
"k"
:[
0.2196078431372549
,
0.7568627450980392
,
0.4470588235294118
,
1
],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"Fill 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"Transform"
}],
"nm"
:
"Shape 1"
,
"np"
:
3
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
1
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
},{
"ty"
:
"tm"
,
"s"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:[
0
],
"y"
:[
1
]},
"o"
:{
"x"
:[
0.333
],
"y"
:[
0
]},
"t"
:
11
,
"s"
:[
0
]},{
"t"
:
23
,
"s"
:[
100
]}],
"ix"
:
1
},
"e"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:[
0
],
"y"
:[
1
]},
"o"
:{
"x"
:[
0.333
],
"y"
:[
0
]},
"t"
:
9
,
"s"
:[
0
]},{
"t"
:
21
,
"s"
:[
100
]}],
"ix"
:
2
},
"o"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
3
},
"m"
:
1
,
"ix"
:
2
,
"nm"
:
"Trim Paths 1"
,
"mn"
:
"ADBE Vector Filter - Trim"
,
"hd"
:
false
},{
"ty"
:
"rp"
,
"c"
:{
"a"
:
0
,
"k"
:
10
,
"ix"
:
1
},
"o"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
2
},
"m"
:
1
,
"ix"
:
3
,
"tr"
:{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
-9
,
17
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
36
,
"ix"
:
4
},
"so"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"eo"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
6
},
"nm"
:
"Transform"
},
"nm"
:
"Repeater 1"
,
"mn"
:
"ADBE Vector Filter - Repeater"
,
"hd"
:
false
}],
"ip"
:
-3
,
"op"
:
957
,
"st"
:
-3
,
"bm"
:
0
},{
"ddd"
:
0
,
"ind"
:
4
,
"ty"
:
4
,
"nm"
:
"Shape Layer 1"
,
"sr"
:
1
,
"ks"
:{
"o"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:[
0
],
"y"
:[
1
]},
"o"
:{
"x"
:[
0.333
],
"y"
:[
0
]},
"t"
:
56
,
"s"
:[
100
]},{
"t"
:
64
,
"s"
:[
0
]}],
"ix"
:
11
},
"r"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:[
0.833
],
"y"
:[
0.833
]},
"o"
:{
"x"
:[
0.333
],
"y"
:[
0
]},
"t"
:
0
,
"s"
:[
45
]},{
"t"
:
12
,
"s"
:[
0
]}],
"ix"
:
10
,
"x"
:
"var $bm_rt;
\n
var amp, freq, decay, n, n, t, t, v;
\n
amp = 0.06;
\n
freq = 2;
\n
decay = 4;
\n
$bm_rt = n = 0;
\n
if (numKeys > 0) {
\n
$bm_rt = n = nearestKey(time).index;
\n
if (key(n).time > time) {
\n
n--;
\n
}
\n
}
\n
if (n == 0) {
\n
$bm_rt = t = 0;
\n
} else {
\n
$bm_rt = t = $bm_sub(time, key(n).time);
\n
}
\n
if (n > 0) {
\n
v = velocityAtTime($bm_sub(key(n).time, $bm_div(thisComp.frameDuration, 10)));
\n
$bm_rt = $bm_sum(value, $bm_div($bm_mul($bm_mul(v, amp), Math.sin($bm_mul($bm_mul($bm_mul(freq, t), 2), Math.PI))), Math.exp($bm_mul(decay, t))));
\n
} else {
\n
$bm_rt = value;
\n
}"
},
"p"
:{
"a"
:
0
,
"k"
:[
100
,
100
,
0
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
-5.051
,
60.949
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
1
,
"k"
:[{
"i"
:{
"x"
:[
0.833
,
0.833
,
0.833
],
"y"
:[
0.833
,
0.833
,
-15.667
]},
"o"
:{
"x"
:[
0.333
,
0.333
,
0.333
],
"y"
:[
0
,
0
,
0
]},
"t"
:
0
,
"s"
:[
0
,
0
,
100
]},{
"t"
:
12
,
"s"
:[
25
,
25
,
100
]}],
"ix"
:
6
,
"x"
:
"var $bm_rt;
\n
var amp, freq, decay, n, n, t, t, v;
\n
amp = 0.06;
\n
freq = 2;
\n
decay = 4;
\n
$bm_rt = n = 0;
\n
if (numKeys > 0) {
\n
$bm_rt = n = nearestKey(time).index;
\n
if (key(n).time > time) {
\n
n--;
\n
}
\n
}
\n
if (n == 0) {
\n
$bm_rt = t = 0;
\n
} else {
\n
$bm_rt = t = $bm_sub(time, key(n).time);
\n
}
\n
if (n > 0) {
\n
v = velocityAtTime($bm_sub(key(n).time, $bm_div(thisComp.frameDuration, 10)));
\n
$bm_rt = $bm_sum(value, $bm_div($bm_mul($bm_mul(v, amp), Math.sin($bm_mul($bm_mul($bm_mul(freq, t), 2), Math.PI))), Math.exp($bm_mul(decay, t))));
\n
} else {
\n
$bm_rt = value;
\n
}"
}},
"ao"
:
0
,
"shapes"
:[{
"ty"
:
"gr"
,
"it"
:[{
"ty"
:
"st"
,
"c"
:{
"a"
:
0
,
"k"
:[
0.2196078431372549
,
0.7568627450980392
,
0.4470588235294118
,
1
],
"ix"
:
3
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
4
},
"w"
:{
"a"
:
0
,
"k"
:
8
,
"ix"
:
5
},
"lc"
:
1
,
"lj"
:
1
,
"ml"
:
4
,
"bm"
:
0
,
"nm"
:
"Stroke 1"
,
"mn"
:
"ADBE Vector Graphic - Stroke"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
0
,
"k"
:[
0.2196078431372549
,
0.7568627450980392
,
0.4470588235294118
,
1
],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"Fill 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"Transform"
}],
"nm"
:
"Shape 1"
,
"np"
:
2
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
1
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
},{
"ty"
:
"gr"
,
"it"
:[{
"d"
:
1
,
"ty"
:
"el"
,
"s"
:{
"a"
:
0
,
"k"
:[
393.898
,
393.898
],
"ix"
:
2
},
"p"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
3
},
"nm"
:
"Ellipse Path 1"
,
"mn"
:
"ADBE Vector Shape - Ellipse"
,
"hd"
:
false
},{
"ty"
:
"st"
,
"c"
:{
"a"
:
0
,
"k"
:[
0.2196078431372549
,
0.7568627450980392
,
0.4470588235294118
,
1
],
"ix"
:
3
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
4
},
"w"
:{
"a"
:
0
,
"k"
:
8
,
"ix"
:
5
},
"lc"
:
1
,
"lj"
:
1
,
"ml"
:
4
,
"bm"
:
0
,
"nm"
:
"Stroke 1"
,
"mn"
:
"ADBE Vector Graphic - Stroke"
,
"hd"
:
false
},{
"ty"
:
"fl"
,
"c"
:{
"a"
:
0
,
"k"
:[
0.2196078431372549
,
0.7568627450980392
,
0.4470588235294118
,
1
],
"ix"
:
4
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
5
},
"r"
:
1
,
"bm"
:
0
,
"nm"
:
"Fill 1"
,
"mn"
:
"ADBE Vector Graphic - Fill"
,
"hd"
:
false
},{
"ty"
:
"tr"
,
"p"
:{
"a"
:
0
,
"k"
:[
-5.051
,
44.949
],
"ix"
:
2
},
"a"
:{
"a"
:
0
,
"k"
:[
0
,
0
],
"ix"
:
1
},
"s"
:{
"a"
:
0
,
"k"
:[
100
,
100
],
"ix"
:
3
},
"r"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
6
},
"o"
:{
"a"
:
0
,
"k"
:
100
,
"ix"
:
7
},
"sk"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
4
},
"sa"
:{
"a"
:
0
,
"k"
:
0
,
"ix"
:
5
},
"nm"
:
"Transform"
}],
"nm"
:
"Ellipse 1"
,
"np"
:
3
,
"cix"
:
2
,
"bm"
:
0
,
"ix"
:
2
,
"mn"
:
"ADBE Vector Group"
,
"hd"
:
false
}],
"ip"
:
0
,
"op"
:
960
,
"st"
:
0
,
"bm"
:
0
}],
"markers"
:[]}
\ No newline at end of file
app/src/main/res/values/colors.xml
View file @
1762fbce
...
...
@@ -7,4 +7,13 @@
<color
name=
"teal_700"
>
#FF018786
</color>
<color
name=
"black"
>
#FF000000
</color>
<color
name=
"white"
>
#FFFFFFFF
</color>
<color
name=
"red_dark"
>
#981419
</color>
<color
name=
"red"
>
#E62229
</color>
<color
name=
"green"
>
#23B91B
</color>
<color
name=
"red_disabled"
>
#F4CDCE
</color>
<color
name=
"lang_bgn"
>
#F1F1F1
</color>
<color
name=
"lang_bgn_dark"
>
#B6B4B4
</color>
<color
name=
"light"
>
#B6B6B6
</color>
<color
name=
"light_dark"
>
#1C1C1E
</color>
<color
name=
"black_80"
>
#CC000000
</color>
</resources>
\ No newline at end of file
app/src/main/res/values/strings.xml
View file @
1762fbce
...
...
@@ -2,4 +2,43 @@
<string
name=
"app_name"
>
MobiUz-Android
</string>
<!-- TODO: Remove or change this placeholder text -->
<string
name=
"hello_blank_fragment"
>
Hello blank fragment
</string>
<string
name=
"login"
>
Login
</string>
<string
name=
"phone_number"
>
Phone Number
</string>
<string
name=
"ex304"
>
Не исправимая ошибка
</string>
<string
name=
"ex400"
>
неверный запрос
</string>
<string
name=
"ex401"
>
Пользователь не зарегистрирован
</string>
<string
name=
"ex403"
>
Запрещено
</string>
<string
name=
"ex404"
>
Не Найдено
</string>
<string
name=
"ex405"
>
Метод запрещен
</string>
<string
name=
"ex406"
>
Неприемлемо
</string>
<string
name=
"ex408"
>
Тайм-аут запроса
</string>
<string
name=
"ex409"
>
Конфликт
</string>
<string
name=
"ex413"
>
Тайм-аут запроса
</string>
<string
name=
"ex422"
>
Необработанный
</string>
<string
name=
"ex429"
>
Необработанный
</string>
<string
name=
"ex500"
>
Ошибка сервера
</string>
<string
name=
"ex502"
>
Неверный шлюз
</string>
<string
name=
"exelse"
>
Непредвиденная ошибка, повторите попытку позже
</string>
<string
name=
"ioexception"
>
Ошибка сетевого подключения
</string>
<string
name=
"jsonsyntaxexception"
>
Ma\'lumot olishda xatolik
</string>
<string
name=
"connect_exception"
>
Internet yo\'q
</string>
<string
name=
"ex_nothing"
>
Неизвестная ошибка
</string>
<string
name=
"home_fragment"
>
This is home page
</string>
<string
name=
"register"
>
Registration
</string>
<string
name=
"password"
>
Password
</string>
<string
name=
"choose_lang"
>
Tilni tanlang
</string>
<string
name=
"uzbek"
>
O\'zbek
</string>
<string
name=
"english"
>
English
</string>
<string
name=
"russian"
>
Russian
</string>
<string
name=
"back"
>
Back
</string>
<string
name=
"enter_number"
>
Введите номер
</string>
<string
name=
"continuoue"
>
Далее
</string>
<string
name=
"phone"
>
Телефон:
</string>
<string
name=
"continuoue_task"
>
Далее
</string>
<string
name=
"think_password"
>
Придумайте пароль
</string>
<string
name=
"enter"
>
Войти
</string>
<string
name=
"enter_verification"
>
Ведите код подтверждения
</string>
<string
name=
"sent_code_again"
>
Sent code again
</string>
</resources>
\ No newline at end of file
app/src/main/res/values/themes.xml
View file @
1762fbce
<resources
xmlns:tools=
"http://schemas.android.com/tools"
>
<!-- Base application theme. -->
<style
name=
"Theme.MobiUzAndroid"
parent=
"Theme.MaterialComponents.DayNight.
DarkActionBar
"
>
<style
name=
"Theme.MobiUzAndroid"
parent=
"Theme.MaterialComponents.DayNight.
NoActionBar.Bridge
"
>
<!-- Primary brand color. -->
<item
name=
"colorPrimary"
>
@color/purple_500
</item>
<item
name=
"colorPrimaryVariant"
>
@color/purple_700
</item>
<item
name=
"colorOnPrimary"
>
@color/white
</item>
<!-- <item name="windowActionBar">false</item>-->
<!-- <item name="windowNoTitle">false</item>-->
<item
name=
"android:fitsSystemWindows"
>
false
</item>
<item
name=
"colorPrimaryDark"
>
@android:color/transparent
</item>
<!-- <item name="android:windowDrawsSystemBarBackgrounds">true</item>-->
<item
name=
"android:statusBarColor"
>
@android:color/transparent
</item>
<item
name=
"android:windowTranslucentStatus"
>
true
</item>
<!-- Secondary brand color. -->
<item
name=
"colorSecondary"
>
@color/teal_200
</item>
<item
name=
"colorSecondaryVariant"
>
@color/teal_700
</item>
<item
name=
"colorOnSecondary"
>
@color/black
</item>
<!-- Status bar color. -->
<item
name=
"android:statusBarColor"
tools:targetApi=
"l"
>
?attr/colorPrimaryVariant
</item>
<item
name=
"android:textSize"
>
13sp
</item>
<item
name=
"android:textColor"
>
@color/black
</item>
<item
name=
"buttonStyle"
>
@style/ButtonPrimary
</item>
<!-- Customize your theme here. -->
</style>
<style
name=
"ProgressDialogTheme"
parent=
"ThemeOverlay.AppCompat.Dialog"
>
<item
name=
"android:windowBackground"
>
@android:color/transparent
</item>
</style>
<style
name=
"FullScreenDialog"
parent=
"Theme.AppCompat.Light.Dialog"
>
<item
name=
"android:backgroundDimEnabled"
>
false
</item>
<item
name=
"android:windowNoTitle"
>
true
</item>
<item
name=
"android:padding"
>
0dp
</item>
<item
name=
"android:windowIsFloating"
>
false
</item>
<item
name=
"android:windowBackground"
>
@android:color/transparent
</item>
<item
name=
"android:windowCloseOnTouchOutside"
>
false
</item>
</style>
<style
name=
"ButtonPrimary"
parent=
"Widget.AppCompat.Button"
>
<item
name=
"android:textColor"
tools:ignore=
"DuplicateDefinition"
>
@color/white
</item>
<item
name=
"android:background"
>
@drawable/button_selector
</item>
<item
name=
"textAllCaps"
>
false
</item>
</style>
<style
name =
"DialogThemeLight"
parent=
"Theme.AppCompat.Light.Dialog.MinWidth"
>
<item
name=
"colorAccent"
>
@color/chuck_colorAccent
</item>
<item
name=
"android:colorAccent"
>
@color/chuck_colorAccent
</item>
<item
name=
"android:background"
>
@color/chuck_colorPrimary
</item>
<item
name=
"android:textColorPrimary"
>
@color/chuck_colorPrimary
</item>
<item
name=
"android:textColorSecondary"
>
@color/chuck_colorPrimary
</item>
</style>
</resources>
\ No newline at end of file
build.gradle
View file @
1762fbce
...
...
@@ -11,7 +11,10 @@ buildscript {
repositories
{
google
()
mavenCentral
()
maven
{
url
"https://jitpack.io"
}
}
dependencies
{
classpath
"com.android.tools.build:gradle:7.0.3"
classpath
"org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.20"
...
...
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