Skip to content

Commit

Permalink
feat(bank-sdk): Skonto screen. Bottom bar redesign (#504)
Browse files Browse the repository at this point in the history
feat(bank-sdk): Skonto screen. Bottom bar redesign

PP-648
  • Loading branch information
ndubkov-distcotech authored Jul 25, 2024
1 parent 87bfb0d commit 23db536
Show file tree
Hide file tree
Showing 26 changed files with 375 additions and 409 deletions.
221 changes: 0 additions & 221 deletions Gemfile.lock

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ class MainActivity : AppCompatActivity() {
cancellationToken?.cancel()
}

override fun onNewIntent(intent: Intent?) {
override fun onNewIntent(intent: Intent) {
super.onNewIntent(intent)
if (intent != null && isIntentActionViewOrSend(intent)) {
startGiniBankSdkForOpenWith(intent)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,6 @@ class CustomSkontoNavigationBarBottomAdapter : SkontoNavigationBarBottomAdapter

private var binding: CustomSkontoNavigationBarBinding? = null

override fun setOnHelpClickListener(onClick: () -> Unit) {
binding?.gbsHelpBtn?.setOnClickListener { onClick() }
}

override fun setOnBackClickListener(onClick: () -> Unit) {
binding?.gbsBackBtn?.setOnClickListener { onClick() }
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -69,14 +69,15 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/gc_medium"
android:padding="@dimen/gc_medium"
app:tint="?attr/colorOnBackground"
android:contentDescription="@string/gbs_digital_invoice_help_info"
android:background="@android:color/transparent"
android:contentDescription="@string/gbs_digital_invoice_help_info"
android:padding="@dimen/gc_medium"
android:visibility="invisible"
app:layout_constraintBottom_toBottomOf="@+id/gbs_pay"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="@+id/gbs_pay"
app:srcCompat="@drawable/gbs_menu_question_circle_info" />
app:srcCompat="@drawable/gbs_menu_question_circle_info"
app:tint="?attr/colorOnBackground" />

<ImageButton
android:id="@+id/gbs_back_btn"
Expand Down
1 change: 1 addition & 0 deletions bank-sdk/sdk/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -122,6 +122,7 @@ dependencies {

implementation(platform(libs.compose.bom))
implementation(libs.compose.material3)
implementation(libs.compose.activity)
implementation(libs.compose.tools.uiToolingPreview)
implementation(libs.accompanist.themeAdapter)
debugImplementation(libs.compose.tools.uiTooling)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@ import net.gini.android.bank.sdk.capture.digitalinvoice.DigitalInvoiceFragment
import net.gini.android.bank.sdk.capture.digitalinvoice.DigitalInvoiceFragmentListener
import net.gini.android.bank.sdk.capture.digitalinvoice.LineItemsValidator
import net.gini.android.bank.sdk.capture.skonto.SkontoDataExtractor
import net.gini.android.bank.sdk.capture.skonto.SkontoFragment
import net.gini.android.bank.sdk.capture.skonto.SkontoFragmentListener
import net.gini.android.bank.sdk.util.disallowScreenshots
import net.gini.android.capture.CaptureSDKResult
import net.gini.android.capture.Document
Expand All @@ -24,16 +26,15 @@ import net.gini.android.capture.GiniCaptureFragment
import net.gini.android.capture.GiniCaptureFragmentDirections
import net.gini.android.capture.GiniCaptureFragmentListener
import net.gini.android.capture.camera.CameraFragmentListener
import net.gini.android.capture.internal.util.CancelListener
import net.gini.android.capture.network.model.GiniCaptureCompoundExtraction
import net.gini.android.capture.network.model.GiniCaptureSpecificExtraction
import net.gini.android.capture.internal.util.CancelListener
import java.math.BigDecimal
import java.time.LocalDate

class CaptureFlowFragment(private val openWithDocument: Document? = null) :
Fragment(),
GiniCaptureFragmentListener,
DigitalInvoiceFragmentListener,
SkontoFragmentListener,
CancelListener {

private lateinit var navController: NavController
Expand Down Expand Up @@ -74,7 +75,7 @@ class CaptureFlowFragment(private val openWithDocument: Document? = null) :

override fun onCreate(savedInstanceState: Bundle?) {
childFragmentManager.fragmentFactory =
CaptureFlowFragmentFactory(this, openWithDocument, this, this)
CaptureFlowFragmentFactory(this, openWithDocument, this, this, this)
super.onCreate(savedInstanceState)
if (GiniCapture.hasInstance() && !GiniCapture.getInstance().allowScreenshots) {
requireActivity().window.disallowScreenshots()
Expand Down Expand Up @@ -212,6 +213,22 @@ class CaptureFlowFragment(private val openWithDocument: Document? = null) :
)
}


override fun onPayInvoiceWithSkonto(
specificExtractions: Map<String, GiniCaptureSpecificExtraction>,
compoundExtractions: Map<String, GiniCaptureCompoundExtraction>
) {
didFinishWithResult = true
captureFlowFragmentListener.onFinishedWithResult(
CaptureResult.Success(
specificExtractions,
compoundExtractions,
emptyList()
)
)
}


override fun onCancelFlow() {
val popBackStack = navController.popBackStack()
if (!popBackStack) {
Expand Down Expand Up @@ -242,6 +259,7 @@ class CaptureFlowFragmentFactory(
private val giniCaptureFragmentListener: GiniCaptureFragmentListener,
private val openWithDocument: Document? = null,
private val digitalInvoiceListener: DigitalInvoiceFragmentListener,
private val skontoListener: SkontoFragmentListener,
private val cancelCallback: CancelListener
) : FragmentFactory() {
override fun instantiate(classLoader: ClassLoader, className: String): Fragment {
Expand All @@ -258,6 +276,11 @@ class CaptureFlowFragmentFactory(
cancelListener = cancelCallback
}

SkontoFragment::class.java.name -> SkontoFragment().apply {
skontoFragmentListener = skontoListener
cancelListener = cancelCallback
}

else -> super.instantiate(classLoader, className)
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ package net.gini.android.bank.sdk.capture.digitalinvoice

import net.gini.android.capture.network.model.GiniCaptureCompoundExtraction
import net.gini.android.capture.network.model.GiniCaptureSpecificExtraction
import net.gini.android.bank.sdk.capture.digitalinvoice.onboarding.DigitalInvoiceOnboardingFragment

/**
* Created by Alpar Szotyori on 05.12.2019.
Expand All @@ -25,6 +24,8 @@ interface DigitalInvoiceFragmentListener {
* @param specificExtractions - extractions like the "amountToPay", "iban", etc.
* @param compoundExtractions - extractions like the "lineItems"
*/
fun onPayInvoice(specificExtractions: Map<String, GiniCaptureSpecificExtraction>,
compoundExtractions: Map<String, GiniCaptureCompoundExtraction>)
fun onPayInvoice(
specificExtractions: Map<String, GiniCaptureSpecificExtraction>,
compoundExtractions: Map<String, GiniCaptureCompoundExtraction>
)
}
Loading

0 comments on commit 23db536

Please sign in to comment.