Working Compose View in Android View XML
This commit is contained in:
@@ -27,7 +27,7 @@ def VERSION_NAME = "2.8.7"
|
||||
|
||||
|
||||
android {
|
||||
compileSdkVersion 30
|
||||
compileSdk 32
|
||||
buildToolsVersion "30.0.3"
|
||||
compileOptions {
|
||||
sourceCompatibility = 1.8
|
||||
@@ -46,7 +46,7 @@ android {
|
||||
defaultConfig {
|
||||
applicationId "com.naviapp"
|
||||
minSdkVersion 21
|
||||
targetSdkVersion 30
|
||||
targetSdk 30
|
||||
versionCode 265
|
||||
versionName VERSION_NAME
|
||||
multiDexEnabled true
|
||||
@@ -100,6 +100,7 @@ android {
|
||||
}
|
||||
buildFeatures {
|
||||
dataBinding true
|
||||
compose true
|
||||
}
|
||||
bundle {
|
||||
language {
|
||||
@@ -115,6 +116,9 @@ android {
|
||||
newrelic {
|
||||
excludeVariantInstrumentation("devDebug", "qaDebug")
|
||||
}
|
||||
composeOptions {
|
||||
kotlinCompilerExtensionVersion compose_version
|
||||
}
|
||||
flavorDimensions "app"
|
||||
productFlavors {
|
||||
qa {
|
||||
@@ -273,8 +277,7 @@ dependencies {
|
||||
implementation 'com.google.android.material:material:1.4.0'
|
||||
implementation 'com.android.support:multidex:1.0.3'
|
||||
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1'
|
||||
implementation 'com.android.support:cardview-v7:30.0.2'
|
||||
implementation 'com.android.support:design:30.0.2'
|
||||
implementation 'androidx.cardview:cardview:1.0.0'
|
||||
implementation 'android.arch.work:work-runtime-ktx:1.0.1'
|
||||
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.3.2'
|
||||
implementation glideLibs.implementation
|
||||
|
||||
@@ -60,6 +60,7 @@
|
||||
android:screenOrientation="portrait" />
|
||||
<activity
|
||||
android:name=".registration.SplashActivity"
|
||||
android:exported="true"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/SplashTheme">
|
||||
|
||||
@@ -91,11 +92,13 @@
|
||||
</activity>
|
||||
<activity
|
||||
android:name="com.naviapp.personalloan.getloan.activities.GetLoanActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle"
|
||||
android:windowSoftInputMode="adjustPan" />
|
||||
<activity
|
||||
android:name="com.naviapp.personalloan.useridentification.activities.UserIdentificationActivity"
|
||||
android:exported="true"
|
||||
android:launchMode="singleTop"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle"
|
||||
@@ -113,135 +116,167 @@
|
||||
</activity>
|
||||
<activity
|
||||
android:name=".registration.RegistrationActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/RegistrationTheme" />
|
||||
<activity
|
||||
android:name=".rewards.ui.RewardInfoActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
<activity
|
||||
android:name=".rewards.ui.RewardSummaryActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
<activity
|
||||
android:name=".permission.activities.PermissionActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
<activity
|
||||
android:name="com.naviapp.personalloan.getloan.kyc.activities.SelfieCaptureActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait" />
|
||||
<activity
|
||||
android:name="com.naviapp.personalloan.getloan.kyc.activities.KycDocumentCaptureActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait" />
|
||||
<activity
|
||||
android:name="com.naviapp.personalloan.useridentification.activities.LoanEligibilityLoaderActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
<activity
|
||||
android:name="com.naviapp.personalloan.getloan.activities.LoanDisbursementLoaderActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
<activity
|
||||
android:name="com.naviapp.personalloan.getloan.activities.LoanDisbursementProductPlacementActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
<activity
|
||||
android:name="com.naviapp.personalloan.getloan.activities.BankAccountVerificationLoaderActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
|
||||
<activity
|
||||
android:name=".home.activity.NewDashboardActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle"
|
||||
android:windowSoftInputMode="adjustNothing" />
|
||||
<activity
|
||||
android:name=".usernotification.activities.UserNotificationActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
<activity
|
||||
android:name=".errors.activities.ErrorActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
<activity
|
||||
android:name=".appupdate.activities.UpdateAppActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
<activity
|
||||
android:name=".dashboard.menu.customersupport.activities.AboutUsActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
<activity
|
||||
android:name=".dashboard.menu.customersupport.activities.CustomerSupportActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
<activity
|
||||
android:name=".payment.activities.NaviPaymentActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
|
||||
<activity
|
||||
android:name=".dashboard.loanapplicationdetails.activities.LoanApplicationDetailActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
|
||||
<!-- For Digio, Adhaar verification -->
|
||||
<activity
|
||||
android:name="in.digio.sdk.kyc.DigioMainActivity"
|
||||
android:configChanges="keyboard|keyboardHidden|orientation|screenSize" /> <!-- For Digio, Adhaar verification END -->
|
||||
android:configChanges="keyboard|keyboardHidden|orientation|screenSize"
|
||||
android:exported="false"
|
||||
tools:node="merge" /> <!-- For Digio, Adhaar verification END -->
|
||||
<!-- For Digio, e-nach -->
|
||||
<activity
|
||||
android:name="com.digio.in.esign2sdk.DigioEsignActivity"
|
||||
android:configChanges="keyboard|keyboardHidden|orientation|screenSize" /> <!-- For Digio, e-nach END -->
|
||||
android:configChanges="keyboard|keyboardHidden|orientation|screenSize"
|
||||
android:exported="false"
|
||||
tools:node="merge" /> <!-- For Digio, e-nach END -->
|
||||
|
||||
<activity
|
||||
android:name=".dashboard.rating.RatingActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle"
|
||||
android:windowSoftInputMode="adjustResize" />
|
||||
|
||||
<activity
|
||||
android:name=".dashboard.menu.notificationsettings.NotificationSettingsActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
|
||||
<activity
|
||||
android:name=".home.activity.StoryActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
|
||||
<activity
|
||||
android:name="com.naviapp.personalloan.getloan.bankdetailsautodebit.view.activities.EnachTutorialActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
|
||||
<activity
|
||||
android:name="com.naviapp.personalloan.getloan.activities.FaqsActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
|
||||
<activity
|
||||
android:name="com.naviapp.personalloan.getloan.summary.activities.LoanAgreementActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
|
||||
<activity
|
||||
android:name=".dashboard.menu.loans.activity.AllLoanDetailsActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
|
||||
<activity
|
||||
android:name=".dashboard.newloan.NewLoanConsentActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
|
||||
<activity
|
||||
android:name="com.naviapp.personalloan.insurance.activity.InsuranceDetailActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
|
||||
<activity
|
||||
android:name="com.naviapp.personalloan.insurance.activity.InsuranceAddOnActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
|
||||
@@ -303,7 +338,9 @@
|
||||
</intent-filter>
|
||||
</receiver>
|
||||
|
||||
<receiver android:name=".receiver.LocationReceiver" />
|
||||
<receiver
|
||||
android:name=".receiver.LocationReceiver"
|
||||
android:exported="false" />
|
||||
|
||||
<provider
|
||||
android:name="com.facebook.FacebookContentProvider"
|
||||
@@ -312,6 +349,7 @@
|
||||
|
||||
<activity
|
||||
android:name=".homeloandigital.eligibility.activity.HomeLoanEligibilityV2Activity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle"
|
||||
android:windowSoftInputMode="adjustPan" />
|
||||
@@ -322,43 +360,51 @@
|
||||
|
||||
<activity
|
||||
android:name=".personalloan.intermediate.activity.IntermediateActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
|
||||
<activity
|
||||
android:name=".common.activity.NaviWebViewActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
|
||||
<activity
|
||||
android:name=".email.activity.EmailActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle"
|
||||
android:windowSoftInputMode="adjustPan" />
|
||||
|
||||
<activity
|
||||
android:name=".homeloandigital.ipa.activity.HomeLoanIPAActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
|
||||
<activity
|
||||
android:name=".homeloandigital.tracker.ui.activity.HomeLoanTrackerActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
|
||||
<activity
|
||||
android:name=".homeloandigital.loandetails.activity.HomeLoanDetailsV2Activity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
|
||||
<activity
|
||||
android:name=".homeloandigital.posteligibility.activity.HomeLoanPostEligibilityV2Activity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle"
|
||||
android:windowSoftInputMode="adjustPan" />
|
||||
|
||||
<activity
|
||||
android:name=".homeloandigital.ipagenerate.ui.HomeLoanIpaLoaderActivity"
|
||||
android:exported="false"
|
||||
android:launchMode="singleTop"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle"
|
||||
@@ -366,46 +412,135 @@
|
||||
|
||||
<activity
|
||||
android:name=".homeloandigital.slgenerate.ui.HomeLoanSanctionLoaderActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle"
|
||||
tools:ignore="LockedOrientationActivity" />
|
||||
|
||||
<activity
|
||||
android:name=".homeloandigital.pennydrop.ui.HomeLoanPennyDropLoaderActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle"
|
||||
tools:ignore="LockedOrientationActivity" />
|
||||
|
||||
<activity
|
||||
android:name=".home.dashboard.ui.ClosedLoansActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle"
|
||||
android:windowSoftInputMode="adjustNothing" />
|
||||
|
||||
<activity
|
||||
android:name=".part_prepayment.PartPrePaymentActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle"
|
||||
android:windowSoftInputMode="adjustNothing" />
|
||||
<activity
|
||||
android:name=".dashboard.loanapplicationdetails.activities.TrancheDisbursalActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
|
||||
<activity
|
||||
android:name=".status_tracker.StatusTrackerActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle"
|
||||
android:windowSoftInputMode="adjustNothing"/>
|
||||
android:windowSoftInputMode="adjustNothing" />
|
||||
|
||||
<activity
|
||||
android:name=".crosssell.ui.CrossSellActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
|
||||
<service
|
||||
android:name=".services.KillAppInBackgroundService"
|
||||
android:exported="false"
|
||||
android:stopWithTask="false" />
|
||||
|
||||
<activity
|
||||
android:name="co.hyperverge.hypersnapsdk.activities.HVRetakeActivity"
|
||||
android:exported="false"
|
||||
tools:node="merge" />
|
||||
<activity
|
||||
android:name="co.hyperverge.hypersnapsdk.activities.HVDocInstructionActivity"
|
||||
android:exported="false"
|
||||
tools:node="merge" />
|
||||
<activity
|
||||
android:name="co.hyperverge.hypersnapsdk.activities.HVDocsActivity"
|
||||
android:exported="false"
|
||||
tools:node="merge" />
|
||||
<activity
|
||||
android:name="co.hyperverge.hypersnapsdk.activities.HVFaceInstructionActivity"
|
||||
android:exported="false"
|
||||
tools:node="merge" />
|
||||
<activity
|
||||
android:name="co.hyperverge.hypersnapsdk.activities.HVFaceActivity"
|
||||
android:exported="false"
|
||||
tools:node="merge" />
|
||||
<activity
|
||||
android:name="co.hyperverge.hypersnapsdk.activities.HVDocReviewActivity"
|
||||
android:exported="false"
|
||||
tools:node="merge" />
|
||||
<activity
|
||||
android:name="com.digitap.dtokyc.ui.DTOkycActivity"
|
||||
android:exported="false"
|
||||
tools:node="merge" />
|
||||
|
||||
<provider
|
||||
android:name="com.rudderstack.android.sdk.core.EventContentProvider"
|
||||
android:authorities="${applicationId}.EventContentProvider"
|
||||
android:exported="false"
|
||||
tools:node="merge" />
|
||||
|
||||
<activity
|
||||
android:name="com.google.android.gms.ads.AdActivity"
|
||||
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"
|
||||
android:exported="false"
|
||||
android:theme="@android:style/Theme.Translucent"
|
||||
tools:node="merge" />
|
||||
<activity
|
||||
android:name="com.google.android.gms.ads.purchase.InAppPurchaseActivity"
|
||||
android:exported="false"
|
||||
android:theme="@style/Theme.IAPTheme"
|
||||
tools:node="merge" />
|
||||
|
||||
<activity
|
||||
android:name="com.chuckerteam.chucker.internal.ui.MainActivity"
|
||||
android:exported="false"
|
||||
android:label="@string/chucker_name"
|
||||
android:launchMode="singleTask"
|
||||
android:taskAffinity="com.chuckerteam.chucker.task"
|
||||
android:theme="@style/Chucker.Theme"
|
||||
tools:node="merge" />
|
||||
<activity
|
||||
android:name="com.chuckerteam.chucker.internal.ui.transaction.TransactionActivity"
|
||||
android:exported="false"
|
||||
android:parentActivityName="com.chuckerteam.chucker.internal.ui.MainActivity"
|
||||
android:theme="@style/Chucker.Theme"
|
||||
tools:node="merge" />
|
||||
<activity
|
||||
android:name="com.chuckerteam.chucker.internal.ui.throwable.ThrowableActivity"
|
||||
android:exported="false"
|
||||
android:parentActivityName="com.chuckerteam.chucker.internal.ui.MainActivity"
|
||||
android:theme="@style/Chucker.Theme"
|
||||
tools:node="merge" />
|
||||
|
||||
<activity
|
||||
android:name="in.juspay.juspayppsafemode.JuspaySafeModeActivity"
|
||||
android:exported="false"
|
||||
tools:node="merge" />
|
||||
|
||||
<activity
|
||||
android:name="com.figg.sdk.android.FinoramicSignInClient"
|
||||
android:exported="false"
|
||||
tools:node="merge" />
|
||||
<activity
|
||||
android:name="com.figg.sdk.android.RequestSender"
|
||||
android:exported="false"
|
||||
tools:node="merge" />
|
||||
</application>
|
||||
</manifest>
|
||||
|
||||
@@ -8,15 +8,18 @@
|
||||
package com.naviapp.dashboard.menu.customersupport.activities
|
||||
|
||||
import android.os.Bundle
|
||||
import android.view.View
|
||||
import androidx.databinding.DataBindingUtil
|
||||
import com.navi.common.model.ModuleNameV2
|
||||
import com.navi.common.ui.activity.BaseActivity
|
||||
import com.navi.design.common.Padding
|
||||
import com.navi.design.imageview.NaviImageData
|
||||
import com.navi.design.imageview.NaviImageView
|
||||
import com.navi.design.imageview.NaviImageViewProperty
|
||||
import com.naviapp.R
|
||||
import com.naviapp.analytics.utils.NaviAnalytics
|
||||
import com.navi.common.ui.activity.BaseActivity
|
||||
import com.naviapp.databinding.ActivityAboutUsBinding
|
||||
import com.navi.common.model.ModuleNameV2
|
||||
|
||||
class AboutUsActivity : BaseActivity(), View.OnClickListener {
|
||||
class AboutUsActivity : BaseActivity() {
|
||||
private lateinit var binding: ActivityAboutUsBinding
|
||||
private val naviAnalyticsEventTracker = NaviAnalytics.naviAnalytics.AboutUs()
|
||||
|
||||
@@ -24,7 +27,20 @@ class AboutUsActivity : BaseActivity(), View.OnClickListener {
|
||||
super.onCreate(savedInstanceState)
|
||||
binding = DataBindingUtil.setContentView(this, R.layout.activity_about_us)
|
||||
super.setContentView(binding.root)
|
||||
binding.backIv.setOnClickListener(this)
|
||||
binding.backIv.setContent {
|
||||
val naviImageViewProperty = NaviImageViewProperty()
|
||||
naviImageViewProperty.padding =
|
||||
Padding(start = 30, end = 30, top = 30)
|
||||
val naviImageData = NaviImageData(iconResource = R.drawable.ic_back_arrow_svg)
|
||||
naviImageData.onCommonClick = {
|
||||
naviAnalyticsEventTracker.onBackButtonTap()
|
||||
finish()
|
||||
}
|
||||
NaviImageView(
|
||||
naviImageData = naviImageData,
|
||||
naviImageViewProperty = naviImageViewProperty
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
override val screenName: String
|
||||
@@ -36,13 +52,4 @@ class AboutUsActivity : BaseActivity(), View.OnClickListener {
|
||||
companion object {
|
||||
const val TAG = "ABOUT_US_ACTIVITY"
|
||||
}
|
||||
|
||||
override fun onClick(view: View?) {
|
||||
when (view?.id) {
|
||||
R.id.back_iv -> {
|
||||
naviAnalyticsEventTracker.onBackButtonTap()
|
||||
finish()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -116,7 +116,7 @@ class HlDocumentPickerBottomSheet : BaseBottomSheet() {
|
||||
).show()
|
||||
} else {
|
||||
documentPickerVM.setImagePickerData(
|
||||
it,
|
||||
it.toMutableList(),
|
||||
arguments?.getString(DocumentPickerBottomSheet.ARG_ID, DOCUMENT_KEY_SOMETHING)
|
||||
)
|
||||
safelyDismissDialogAfterDelay()
|
||||
|
||||
@@ -15,13 +15,10 @@
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="vertical">
|
||||
|
||||
<ImageView
|
||||
<androidx.compose.ui.platform.ComposeView
|
||||
android:id="@+id/back_iv"
|
||||
style="@style/ContainerStyle1"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/layout_dp_40"
|
||||
android:src="@drawable/ic_back_arrow_svg"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
@@ -32,7 +29,8 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/layout_dp_30"
|
||||
android:text="@string/about_us"
|
||||
app:layout_constraintStart_toStartOf="@id/back_iv"
|
||||
android:layout_marginStart="@dimen/dp_30"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/back_iv" />
|
||||
|
||||
<ScrollView
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
ext {
|
||||
|
||||
hiltVersion = "2.38.1"
|
||||
compose_version = '1.2.0-beta03'
|
||||
|
||||
hiltLibs = [
|
||||
implementation : "com.google.dagger:hilt-android:$hiltVersion",
|
||||
|
||||
@@ -20,30 +20,36 @@
|
||||
android:supportsRtl="true">
|
||||
<activity
|
||||
android:name=".ui.help_support.HelpSupportActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/HomeBaseThemeStyle" />
|
||||
|
||||
<activity
|
||||
android:name=".ui.redeem.RedemptionOrderActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
<activity
|
||||
android:name=".ui.home.HomeActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/HomeBaseThemeStyle"
|
||||
android:windowSoftInputMode="adjustResize" />
|
||||
<activity
|
||||
android:name=".ui.investment.MyInvestmentActivity"
|
||||
android:exported="false"
|
||||
android:parentActivityName=".ui.home.HomeActivity"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
<activity
|
||||
android:name=".ui.mutual_fund.MFListingActivity"
|
||||
android:exported="false"
|
||||
android:parentActivityName=".ui.home.HomeActivity"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/BaseThemeStyle" />
|
||||
<activity
|
||||
android:name=".ui.mutual_fund.MutualFundActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/HomeBaseThemeStyle" />
|
||||
</application>
|
||||
|
||||
@@ -12,7 +12,6 @@
|
||||
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
|
||||
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
|
||||
<uses-permission android:name="android.permission.VIBRATE" />
|
||||
<uses-permission android:name="android.permission.VIBRATE" />
|
||||
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
|
||||
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
|
||||
|
||||
@@ -26,6 +25,7 @@
|
||||
<service
|
||||
android:name="com.xiaomi.push.service.XMPushService"
|
||||
android:enabled="true"
|
||||
android:exported="false"
|
||||
android:process=":pushservice" />
|
||||
|
||||
<service
|
||||
@@ -42,6 +42,7 @@
|
||||
|
||||
<service
|
||||
android:name="com.xiaomi.mipush.sdk.MessageHandleService"
|
||||
android:exported="false"
|
||||
android:enabled="true" />
|
||||
|
||||
<receiver
|
||||
|
||||
@@ -22,8 +22,19 @@
|
||||
<activity
|
||||
android:name=".video.NaviYoutubeActivity"
|
||||
android:exported="false"
|
||||
tools:node="merge"
|
||||
android:screenOrientation="portrait" />
|
||||
|
||||
<activity
|
||||
android:name="com.razorpay.CheckoutActivity"
|
||||
android:exported="false"
|
||||
tools:node="merge" />
|
||||
|
||||
<receiver
|
||||
android:name="com.razorpay.RzpTokenReceiver"
|
||||
android:exported="false"
|
||||
tools:node="merge" />
|
||||
|
||||
<provider
|
||||
android:name=".utils.NaviFileProvider"
|
||||
android:authorities="${applicationId}.fileprovider"
|
||||
|
||||
@@ -6,11 +6,11 @@ plugins {
|
||||
}
|
||||
|
||||
android {
|
||||
compileSdkVersion 30
|
||||
compileSdk 31
|
||||
|
||||
defaultConfig {
|
||||
minSdkVersion 21
|
||||
targetSdkVersion 30
|
||||
targetSdk 31
|
||||
|
||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||
consumerProguardFiles "consumer-rules.pro"
|
||||
@@ -32,6 +32,10 @@ android {
|
||||
}
|
||||
buildFeatures {
|
||||
dataBinding true
|
||||
compose true
|
||||
}
|
||||
composeOptions {
|
||||
kotlinCompilerExtensionVersion compose_version
|
||||
}
|
||||
}
|
||||
|
||||
@@ -41,6 +45,24 @@ dependencies {
|
||||
implementation 'androidx.appcompat:appcompat:1.3.1'
|
||||
implementation 'com.google.android.material:material:1.4.0'
|
||||
testImplementation 'junit:junit:4.+'
|
||||
api "androidx.compose.ui:ui:$compose_version"
|
||||
api "androidx.compose.material:material:$compose_version"
|
||||
api "androidx.compose.ui:ui-tooling-preview:$compose_version"
|
||||
api "androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha02"
|
||||
debugApi "androidx.compose.ui:ui-tooling:1.1.1"
|
||||
api "androidx.compose.ui:ui-tooling-preview:1.1.1"
|
||||
androidTestApi "androidx.compose.ui:ui-test-junit4:$compose_version"
|
||||
debugApi "androidx.compose.ui:ui-tooling:$compose_version"
|
||||
debugApi "androidx.compose.ui:ui-test-manifest:$compose_version"
|
||||
implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.5.0-rc02'
|
||||
api 'androidx.activity:activity-compose:1.4.0'
|
||||
api 'androidx.core:core-ktx:1.8.0'
|
||||
api 'com.google.code.gson:gson:2.8.9'
|
||||
api 'androidx.hilt:hilt-navigation-compose:1.0.0'
|
||||
implementation 'androidx.appcompat:appcompat:1.6.0-alpha04'
|
||||
implementation 'com.google.android.material:material:1.6.1'
|
||||
api 'androidx.lifecycle:lifecycle-viewmodel-compose:2.5.1'
|
||||
implementation "com.google.accompanist:accompanist-appcompat-theme:0.25.1"
|
||||
androidTestImplementation 'androidx.test.ext:junit:1.1.3'
|
||||
androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
/*
|
||||
*
|
||||
* * Copyright © 2022 by Navi Technologies Private Limited
|
||||
* * All rights reserved. Strictly confidential
|
||||
*
|
||||
*/
|
||||
|
||||
package com.navi.design.common
|
||||
|
||||
import com.navi.design.utils.onCommonClick
|
||||
|
||||
open class CommonViewData {
|
||||
var onCommonClick: onCommonClick? = null
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
/*
|
||||
*
|
||||
* * Copyright © 2019 by Navi Technologies Private Limited
|
||||
* * All rights reserved. Strictly confidential
|
||||
*
|
||||
*/
|
||||
|
||||
package com.navi.design.common
|
||||
|
||||
/**
|
||||
* Copyright © 2021 by Navi Technologies Private Limited
|
||||
* All rights reserved. Strictly confidential
|
||||
*/
|
||||
open class CommonViewProperty(
|
||||
var layoutId: String? = null,
|
||||
var width: String? = null,
|
||||
var height: String? = null,
|
||||
var padding: Padding? = null,
|
||||
var clipData: Shape? = null
|
||||
)
|
||||
|
||||
data class Shape(
|
||||
val shapeType: String? = null,
|
||||
val size: Int? = null
|
||||
)
|
||||
|
||||
/**
|
||||
* Value in DPs
|
||||
*/
|
||||
data class Padding(
|
||||
var start: Int? = null,
|
||||
var end: Int? = null,
|
||||
var top: Int? = null,
|
||||
var bottom: Int? = null
|
||||
)
|
||||
|
||||
enum class ComposeSize {
|
||||
WRAP_CONTENT,
|
||||
MATCH_PARENT,
|
||||
FILL_TO_CONSTRAINTS
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
/*
|
||||
*
|
||||
* * Copyright © 2019 by Navi Technologies Private Limited
|
||||
* * All rights reserved. Strictly confidential
|
||||
*
|
||||
*/
|
||||
|
||||
package com.navi.design.imageview
|
||||
|
||||
import com.navi.design.common.CommonViewData
|
||||
|
||||
/**
|
||||
* Copyright © 2021 by Navi Technologies Private Limited
|
||||
* All rights reserved. Strictly confidential
|
||||
*/
|
||||
data class NaviImageData(
|
||||
val iconResource: Int? = null,
|
||||
val url: String? = null,
|
||||
val contentDescription: String? = null
|
||||
) : CommonViewData()
|
||||
@@ -0,0 +1,15 @@
|
||||
/*
|
||||
*
|
||||
* * Copyright © 2022 by Navi Technologies Private Limited
|
||||
* * All rights reserved. Strictly confidential
|
||||
*
|
||||
*/
|
||||
|
||||
package com.navi.design.imageview
|
||||
|
||||
import androidx.compose.foundation.Indication
|
||||
import com.navi.design.common.CommonViewProperty
|
||||
|
||||
class NaviImageViewProperty(
|
||||
val indicator: Indication? = null,
|
||||
) : CommonViewProperty()
|
||||
@@ -0,0 +1,45 @@
|
||||
/*
|
||||
*
|
||||
* * Copyright © 2022 by Navi Technologies Private Limited
|
||||
* * All rights reserved. Strictly confidential
|
||||
*
|
||||
*/
|
||||
|
||||
package com.navi.design.imageview
|
||||
|
||||
import androidx.compose.foundation.Image
|
||||
import androidx.compose.foundation.clickable
|
||||
import androidx.compose.foundation.interaction.MutableInteractionSource
|
||||
import androidx.compose.foundation.layout.padding
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.runtime.remember
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.layout.layoutId
|
||||
import androidx.compose.ui.res.painterResource
|
||||
import androidx.compose.ui.unit.dp
|
||||
|
||||
@Composable
|
||||
fun NaviImageView(naviImageData: NaviImageData, naviImageViewProperty: NaviImageViewProperty) {
|
||||
val interactionSource = remember { MutableInteractionSource() }
|
||||
naviImageData.iconResource?.let {
|
||||
Image(
|
||||
painter = painterResource(id = naviImageData.iconResource),
|
||||
contentDescription = naviImageData.contentDescription,
|
||||
modifier = Modifier
|
||||
.padding(
|
||||
start = naviImageViewProperty.padding?.start?.dp ?: 0.dp,
|
||||
end = naviImageViewProperty.padding?.end?.dp ?: 0.dp,
|
||||
top = naviImageViewProperty.padding?.top?.dp ?: 0.dp,
|
||||
bottom = naviImageViewProperty.padding?.bottom?.dp ?: 0.dp
|
||||
)
|
||||
.layoutId(naviImageViewProperty.layoutId.orEmpty())
|
||||
.clickable(
|
||||
interactionSource = interactionSource,
|
||||
indication = naviImageViewProperty.indicator
|
||||
) { naviImageData.onCommonClick?.invoke(naviImageData) }
|
||||
|
||||
)
|
||||
} ?: run {
|
||||
// TODO Add load image using Glide
|
||||
}
|
||||
}
|
||||
@@ -23,6 +23,7 @@ import android.widget.TextView
|
||||
import androidx.core.content.res.ResourcesCompat
|
||||
import com.navi.base.utils.isNotNull
|
||||
import com.navi.base.utils.isNotNullAndNotEmpty
|
||||
import com.navi.design.common.CommonViewData
|
||||
import com.navi.design.textview.model.SpanInterface
|
||||
import com.navi.design.utils.Constants.INPUT_TYPE_NONE
|
||||
import com.navi.design.utils.Constants.INPUT_TYPE_NUMBER
|
||||
@@ -148,3 +149,5 @@ inline fun View.ifMeasured(crossinline block: () -> Unit) {
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
typealias onCommonClick = (CommonViewData) -> Unit
|
||||
@@ -17,6 +17,8 @@
|
||||
<integer name="integer_5">5</integer>
|
||||
<integer name="integer_6">6</integer>
|
||||
<integer name="integer_1">1</integer>
|
||||
<integer name="integer_30">30</integer>
|
||||
<integer name="integer_40">40</integer>
|
||||
<integer name="integer_100">100</integer>
|
||||
<integer name="integer_200">200</integer>
|
||||
<integer name="integer_300">300</integer>
|
||||
|
||||
@@ -127,85 +127,95 @@
|
||||
android:name=".health.activity.SupportActivity"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/GiAppTheme"
|
||||
android:exported="false"
|
||||
android:windowSoftInputMode="adjustResize" />
|
||||
<activity
|
||||
android:name=".health.activity.GiAboutUsActivity"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/GiAppTheme"
|
||||
android:exported="false"
|
||||
android:windowSoftInputMode="adjustResize" />
|
||||
<activity
|
||||
android:name=".health.activity.IntroActivityV3"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/GiAppTheme"
|
||||
android:exported="false"
|
||||
android:windowSoftInputMode="adjustResize" />
|
||||
<activity
|
||||
android:name=".registration.RegisterActivity"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/GiAppTheme"
|
||||
android:exported="false"
|
||||
android:windowSoftInputMode="adjustResize" />
|
||||
<activity
|
||||
android:name=".health.activity.DashboardActivity"
|
||||
android:launchMode="singleTask"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/GiAppTheme"
|
||||
android:exported="false"
|
||||
android:windowSoftInputMode="adjustResize" />
|
||||
<activity
|
||||
android:name=".health.activity.BuyInsuranceActivity"
|
||||
android:launchMode="singleTop"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/GiAppTheme"
|
||||
android:exported="false"
|
||||
android:windowSoftInputMode="adjustResize" />
|
||||
<activity
|
||||
android:name=".health.activity.ChatActivity"
|
||||
android:launchMode="singleTop"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/GiAppTheme"
|
||||
android:exported="false"
|
||||
android:windowSoftInputMode="adjustResize" />
|
||||
<activity
|
||||
android:name=".quoteredesign.QuoteActivity"
|
||||
android:launchMode="singleTop"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/GiAppTheme"
|
||||
android:exported="false"
|
||||
android:windowSoftInputMode="adjustResize" />
|
||||
<activity
|
||||
android:name=".health.activity.PaymentActivity"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/GiAppTheme"
|
||||
android:exported="false"
|
||||
android:windowSoftInputMode="adjustResize" />
|
||||
<activity
|
||||
android:name=".health.activity.HospitalsActivity"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/GiAppTheme"
|
||||
android:exported="false"
|
||||
android:windowSoftInputMode="adjustResize" />
|
||||
<activity
|
||||
android:name=".common.activity.WebViewActivity"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/GiAppTheme"
|
||||
android:exported="false"
|
||||
android:windowSoftInputMode="adjustResize" />
|
||||
<activity
|
||||
android:name=".health.activity.FaqActivity"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/GiAppTheme"
|
||||
android:exported="false"
|
||||
android:windowSoftInputMode="adjustResize" />
|
||||
<activity
|
||||
android:name=".health_risk_score.activity.HealthRiskScoreActivity"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/GiAppTheme"
|
||||
android:exported="false"
|
||||
android:windowSoftInputMode="adjustResize" />
|
||||
<activity
|
||||
android:name=".common.activity.UpdateAppActivity"
|
||||
android:screenOrientation="portrait"
|
||||
android:theme="@style/GiAppTheme"
|
||||
android:exported="false"
|
||||
android:windowSoftInputMode="adjustResize" />
|
||||
|
||||
<!-- <activity
|
||||
android:name="com.moe.pushlibrary.activities.MoEActivity"
|
||||
android:label="Notification"
|
||||
android:parentActivityName=".registration.SplashActivity"></activity> -->
|
||||
|
||||
<activity
|
||||
android:name=".notifications.DeepLinkActivity"
|
||||
android:screenOrientation="portrait"
|
||||
android:exported="true"
|
||||
android:theme="@style/GiAppTheme">
|
||||
<intent-filter android:autoVerify="true">
|
||||
<data
|
||||
@@ -234,46 +244,6 @@
|
||||
<meta-data
|
||||
android:name="com.google.android.geo.API_KEY"
|
||||
android:value="@string/google_maps_key" />
|
||||
<!-- <meta-data
|
||||
android:name="com.truecaller.android.sdk.PartnerKey"
|
||||
android:value="@string/truecaller_key"/>-->
|
||||
|
||||
<!--<service
|
||||
android:name=".services.NaviFireBaseMessagingService"
|
||||
android:exported="false">
|
||||
<intent-filter>
|
||||
<action android:name="com.google.firebase.MESSAGING_EVENT" />
|
||||
</intent-filter>
|
||||
</service>-->
|
||||
|
||||
<!--<service android:name="com.moengage.firebase.MoEFireBaseMessagingService">
|
||||
<intent-filter>
|
||||
<action android:name="com.google.firebase.MESSAGING_EVENT" />
|
||||
</intent-filter>
|
||||
</service>-->
|
||||
|
||||
<!-- <receiver android:name=".receiver.AppUpgradeReceiver">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MY_PACKAGE_REPLACED" />
|
||||
</intent-filter>
|
||||
</receiver>-->
|
||||
|
||||
<!--<receiver
|
||||
android:name="com.appsflyer.SingleInstallBroadcastReceiver"
|
||||
android:exported="true">
|
||||
<intent-filter>
|
||||
<action android:name="com.android.vending.INSTALL_REFERRER" />
|
||||
</intent-filter>
|
||||
</receiver>-->
|
||||
|
||||
<!--<receiver
|
||||
android:name=".receiver.SMSBroadcastReceiver"
|
||||
android:exported="true"
|
||||
android:permission="com.google.android.gms.auth.api.phone.permission.SEND">
|
||||
<intent-filter>
|
||||
<action android:name="com.google.android.gms.auth.api.phone.SMS_RETRIEVED" />
|
||||
</intent-filter>
|
||||
</receiver>-->
|
||||
|
||||
</application>
|
||||
|
||||
|
||||
@@ -303,7 +303,7 @@ fun EditText.textChanges(): Flow<String> {
|
||||
return callbackFlow {
|
||||
val textWatcher = object : TextWatcher {
|
||||
override fun afterTextChanged(editable: Editable?) {
|
||||
editable?.toString()?.let { offer(it) }
|
||||
editable?.toString()?.let { trySend(it) }
|
||||
}
|
||||
|
||||
override fun beforeTextChanged(s: CharSequence?, start: Int, count: Int, after: Int) {}
|
||||
|
||||
Reference in New Issue
Block a user