Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 5.5.0 #1670

Merged
merged 106 commits into from
Jun 21, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
106 commits
Select commit Hold shift + click to select a range
c6071f4
Merge pull request #1644 from Adyen/main
OscarSpruit May 30, 2024
401386f
Update dependency androidx.annotation:annotation to v1.8.0
renovate[bot] Jun 1, 2024
96f509c
Merge pull request #1649 from Adyen/renovate/annotation_version
OscarSpruit Jun 3, 2024
b4b4816
Update dependency org.robolectric:robolectric to v4.12.2
renovate[bot] Jun 3, 2024
2a14372
Merge pull request #1650 from Adyen/renovate/robolectric_version
OscarSpruit Jun 4, 2024
5e58aa1
Update JamesIves/github-pages-deploy-action action to v4.6.1
renovate[bot] Jun 4, 2024
cee31a7
Merge pull request #1654 from Adyen/renovate/jamesives-github-pages-d…
OscarSpruit Jun 4, 2024
15fdaff
Update dependency com.google.android.material:material to v1.12.0
renovate[bot] Jun 5, 2024
8b77d49
Merge pull request #1655 from Adyen/renovate/material_version
jreij Jun 5, 2024
f76ebc8
Update dependency androidx.lifecycle:lifecycle-viewmodel-compose to v…
renovate[bot] Jun 5, 2024
87dbea2
Merge pull request #1653 from Adyen/renovate/compose_viewmodel_version
jreij Jun 5, 2024
f5b9cd3
Update dependency androidx.compose:compose-bom to v2024.05.00
renovate[bot] Jun 5, 2024
53e67b8
Merge pull request #1651 from Adyen/renovate/compose_bom_version
jreij Jun 5, 2024
377949e
Create DropInBottomSheetToolbarView which supports different modes fo…
araratthehero Apr 9, 2024
037f008
Make bottom sheets expanded by default
araratthehero Apr 12, 2024
9b8a929
Add top bar support for BaseComponentDialogFragment
araratthehero Apr 15, 2024
13b2948
Add top bar support for CardComponentDialogFragment
araratthehero Apr 15, 2024
fdd70a4
Add top bar support for BacsDirectDebitDialogFragment
araratthehero Apr 15, 2024
fec8de2
Add top bar support for GenericComponentDialogFragment
araratthehero Apr 15, 2024
6429e98
Add top bar support for GiftCardComponentDialogFragment
araratthehero Apr 15, 2024
3ded835
Add top bar support for GiftCardPaymentConfirmationDialogFragment
araratthehero Apr 15, 2024
f33666f
Add top bar support for ActionComponentDialogFragment
araratthehero Apr 15, 2024
9fce432
Add top bar support for PaymentMethodListDialogFragment
araratthehero Apr 15, 2024
ad1dc47
Add top bar support for PreselectedStoredPaymentMethodFragment
araratthehero Apr 15, 2024
897fa90
Remove bottom sheet indicator
araratthehero Apr 16, 2024
d2332af
Remove rounded corners for the bottom sheet
araratthehero Apr 17, 2024
8db72dd
Always close Drop-in when cancelling action
araratthehero Apr 17, 2024
2bbff15
Add release notes
araratthehero Apr 17, 2024
c75a7ef
Fix the bug when the bottom sheet would collapse because of an oversc…
araratthehero Apr 23, 2024
991da0b
Adjust release notes
araratthehero Jun 6, 2024
494d2d8
Merge pull request #1560 from Adyen/feature/top_bar_navigation
araratthehero Jun 6, 2024
ab80265
Update AndroidX Lifecycle to 2.8.2
OscarSpruit Jun 13, 2024
55f9e37
Merge pull request #1661 from Adyen/update-lifecycle
OscarSpruit Jun 13, 2024
64f6367
Improve address lookup examples
ozgur00 Jun 11, 2024
90b2048
Merge pull request #1660 from Adyen/feature/address-lookup-example
ozgur00 Jun 13, 2024
97d30e2
Add binary compatibility validator dependency
OscarSpruit Jun 13, 2024
82d411d
Define files and packages to exclude
OscarSpruit Jun 13, 2024
bf3e2a5
Generate public api files
OscarSpruit Jun 13, 2024
a98b460
Extract api validation gradle code into a file
OscarSpruit Jun 14, 2024
56d58e3
Add workflow to validate the public api
OscarSpruit Jun 14, 2024
02bf8cb
Add script to generate api changes
OscarSpruit Jun 17, 2024
6911156
Comment api changes on PR
OscarSpruit Jun 17, 2024
53eaba1
Improve shell script
OscarSpruit Jun 17, 2024
e82e68e
Test: change public API
OscarSpruit Jun 17, 2024
e8c021c
Ignore gradle failures
OscarSpruit Jun 17, 2024
2428fb2
Revert "Test: change public API"
OscarSpruit Jun 17, 2024
2b1a7fb
Revert "Revert "Test: change public API""
OscarSpruit Jun 17, 2024
625516e
Fail workflow if there are API changes
OscarSpruit Jun 17, 2024
37cdb13
Optimize formatting of PR comment
OscarSpruit Jun 17, 2024
98cc31e
Revert "Revert "Revert "Test: change public API"""
OscarSpruit Jun 17, 2024
7024157
Test: change public api
OscarSpruit Jun 17, 2024
c872484
Revert "Test: change public api"
OscarSpruit Jun 18, 2024
4458a6e
Merge pull request #1665 from Adyen/public-api-validation
OscarSpruit Jun 18, 2024
365ef01
Dump diff output in one code block
OscarSpruit Jun 19, 2024
d97d4cc
Merge pull request #1668 from Adyen/api_change_formatting
OscarSpruit Jun 19, 2024
4bc80e7
Create UPIAppsAdapter which supports a list of upi apps
araratthehero May 2, 2024
7da9ee6
Add new Collect option in UPIView
araratthehero May 2, 2024
a48c5b6
Add UPI modes generation logic by using the apps list retrieved from …
araratthehero May 2, 2024
03b0e71
Generate a component state based on selected upi modes
araratthehero May 3, 2024
7d8d2e0
Implement validation triggering
araratthehero May 3, 2024
c71860f
Update UI when data changed and add recycler view to show the apps
araratthehero May 3, 2024
9dd67d9
Add release notes
araratthehero May 3, 2024
782ad21
Use UpiPaymentMethod serializer for PaymentMethodTypes.UPI_INTENT
ozgur00 May 14, 2024
0e5d930
Display only one upi item in payment methods list
ozgur00 May 14, 2024
64893fe
Support upi_intent in UPIComponent
ozgur00 May 14, 2024
9397521
Rename UpiCollect to UpiIntent
ozgur00 May 15, 2024
195d3ca
Update mode selection disclaimer translations
ozgur00 May 15, 2024
530b7e6
Move item selection state to delegate and select no items by default
araratthehero May 23, 2024
cff68a2
Remove mock data and change generic app logo
araratthehero May 27, 2024
57a0692
Add tests for UPIAppIdUtils and UPISelectedMode
araratthehero May 27, 2024
bde5bfa
Add tests for DefaultUPIDelegateTest
araratthehero May 27, 2024
980cf43
Add redirect in await action and do the redirect if `url` is not null
araratthehero May 28, 2024
2b86397
Fix detect
araratthehero May 29, 2024
cb81a7e
Update translations
araratthehero May 31, 2024
128258f
Fix button not tweaking its enabled state
araratthehero Jun 4, 2024
16b96fb
Implement a flow where submit button can be disabled when there is no…
araratthehero Jun 4, 2024
b043a7f
Fix UPIIntentItem areItemsTheSame/areContentsTheSame methods and use …
araratthehero Jun 4, 2024
e57575d
Change App to AppData
araratthehero Jun 11, 2024
084497f
Move selected state to UPIIntentItem
araratthehero Jun 11, 2024
2866091
Move onClickListener to the bind function
araratthehero Jun 11, 2024
22f5ac4
Clean up code
araratthehero Jun 11, 2024
e81135d
Optimise validation logic
araratthehero Jun 12, 2024
b1b33ac
Fix UI alignment
araratthehero Jun 13, 2024
ab083e6
Do not translate tab titles
araratthehero Jun 13, 2024
4c31a3e
Make await-redirect flow more explicit
OscarSpruit Jun 19, 2024
53d534f
Move new fields to bottom of existing data classes
OscarSpruit Jun 19, 2024
426ab95
Update api change formatting to split it in sections
OscarSpruit Jun 19, 2024
d6b39c7
Run apiDump
OscarSpruit Jun 19, 2024
eb696b4
Merge pull request #1615 from Adyen/feature/upi_intent_integration
OscarSpruit Jun 19, 2024
0c91add
Implement Ideal 2.0 flow
OscarSpruit May 27, 2024
79b844e
Deprecate unused configurations for ideal
OscarSpruit May 27, 2024
40085e1
Add release note
OscarSpruit May 27, 2024
d71109f
Extend ButtonComponent to keep IdealComponent backwards compatible
OscarSpruit Jun 18, 2024
46c3187
Update public api specs
OscarSpruit Jun 18, 2024
2e0b76f
Merge pull request #1636 from Adyen/feature/ideal2.0
OscarSpruit Jun 19, 2024
1082019
Add AndroidX Autofill library
OscarSpruit Jun 3, 2024
78985a9
Add autofill hints for gift cards inputs
OscarSpruit Jun 3, 2024
9376b44
Improve hints for address input
OscarSpruit Jun 4, 2024
aa7da66
Add autofill hint for UPI VPA
OscarSpruit Jun 4, 2024
38f2d2b
Add release notes
OscarSpruit Jun 4, 2024
8cf1b20
Remove autofill hint for house number
OscarSpruit Jun 13, 2024
a8d1de2
Add autofill hint to new UPI flow
OscarSpruit Jun 19, 2024
f4cce6b
Merge pull request #1658 from Adyen/feature/extended-autofill-support
OscarSpruit Jun 19, 2024
6f3ffab
Update version to 5.5.0
jreij Jun 19, 2024
369f550
Update release notes
jreij Jun 19, 2024
76011ec
Merge pull request #1669 from Adyen/release/5.5.0
jreij Jun 21, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 7 additions & 3 deletions .github/workflows/check_pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,10 @@ jobs:
uses: ./.github/workflows/run_tests.yml
needs: assemble
sonar_cloud:
name: SonarCloud
uses: ./.github/workflows/sonar_cloud.yml
secrets: inherit
name: SonarCloud
uses: ./.github/workflows/sonar_cloud.yml
secrets: inherit
validate_public_api:
name: Validate public API
uses: ./.github/workflows/validate_public_api.yml
secrets: inherit
2 changes: 1 addition & 1 deletion .github/workflows/publish_docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ jobs:

# Deploy to GitHub Pages
- name: Deploy GitHub Pages
uses: JamesIves/github-pages-deploy-action@v4.6.0
uses: JamesIves/github-pages-deploy-action@v4.6.1
with:
BRANCH: gh-pages
FOLDER: build/docs/
43 changes: 43 additions & 0 deletions .github/workflows/validate_public_api.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
name: Validate public API

on:
workflow_call

jobs:
validate_public_api:
name: Validate public API
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4

- name: Set up JDK
uses: actions/setup-java@v4
with:
distribution: 'zulu'
java-version: 17

- name: Gradle cache
uses: gradle/actions/setup-gradle@v3
with:
cache-read-only: true

- name: Check public API
run: |
( ./gradlew apiCheck --continue 2> "${{ github.workspace }}/api_changes.txt" ) || true
bash ./scripts/process_api_changes.sh

- name: Comment on PR
uses: thollander/actions-comment-pull-request@v2
with:
filePath: "${{ github.workspace }}/api_changes.md"
comment_tag: api_changes
mode: recreate

- name: Check if successful
run : |
if [ -s api_changes.txt ]
then
# Fail workflow if there are API changes
exit 1
fi
127 changes: 127 additions & 0 deletions 3ds2/api/3ds2.api
Original file line number Diff line number Diff line change
@@ -0,0 +1,127 @@
public final class com/adyen/checkout/adyen3ds2/Adyen3DS2Component : androidx/lifecycle/ViewModel, com/adyen/checkout/components/core/RedirectableActionComponent, com/adyen/checkout/components/core/internal/ActionComponent, com/adyen/checkout/components/core/internal/IntentHandlingComponent, com/adyen/checkout/ui/core/internal/ui/ViewableComponent {
public static final field Companion Lcom/adyen/checkout/adyen3ds2/Adyen3DS2Component$Companion;
public static final field PROVIDER Lcom/adyen/checkout/components/core/internal/provider/ActionComponentProvider;
public fun canHandleAction (Lcom/adyen/checkout/components/core/action/Action;)Z
public fun getDelegate ()Lcom/adyen/checkout/adyen3ds2/internal/ui/Adyen3DS2Delegate;
public synthetic fun getDelegate ()Lcom/adyen/checkout/components/core/internal/ui/ComponentDelegate;
public fun getViewFlow ()Lkotlinx/coroutines/flow/Flow;
public fun handleAction (Lcom/adyen/checkout/components/core/action/Action;Landroid/app/Activity;)V
public fun handleIntent (Landroid/content/Intent;)V
public fun setOnRedirectListener (Lkotlin/jvm/functions/Function0;)V
}

public final class com/adyen/checkout/adyen3ds2/Adyen3DS2Component$Companion {
}

public final class com/adyen/checkout/adyen3ds2/Adyen3DS2Configuration : com/adyen/checkout/components/core/internal/Configuration {
public static final field CREATOR Landroid/os/Parcelable$Creator;
public synthetic fun <init> (Ljava/util/Locale;Lcom/adyen/checkout/core/Environment;Ljava/lang/String;Lcom/adyen/checkout/components/core/AnalyticsConfiguration;Lcom/adyen/checkout/components/core/Amount;Lcom/adyen/threeds2/customization/UiCustomization;Ljava/lang/String;Lkotlin/jvm/internal/DefaultConstructorMarker;)V
public fun describeContents ()I
public fun getAmount ()Lcom/adyen/checkout/components/core/Amount;
public fun getAnalyticsConfiguration ()Lcom/adyen/checkout/components/core/AnalyticsConfiguration;
public fun getClientKey ()Ljava/lang/String;
public fun getEnvironment ()Lcom/adyen/checkout/core/Environment;
public fun getShopperLocale ()Ljava/util/Locale;
public final fun getThreeDSRequestorAppURL ()Ljava/lang/String;
public final fun getUiCustomization ()Lcom/adyen/threeds2/customization/UiCustomization;
public fun writeToParcel (Landroid/os/Parcel;I)V
}

public final class com/adyen/checkout/adyen3ds2/Adyen3DS2Configuration$Builder : com/adyen/checkout/components/core/internal/BaseConfigurationBuilder {
public fun <init> (Landroid/content/Context;Lcom/adyen/checkout/core/Environment;Ljava/lang/String;)V
public fun <init> (Lcom/adyen/checkout/core/Environment;Ljava/lang/String;)V
public fun <init> (Ljava/util/Locale;Lcom/adyen/checkout/core/Environment;Ljava/lang/String;)V
public synthetic fun buildInternal ()Lcom/adyen/checkout/components/core/internal/Configuration;
public final fun setThreeDSRequestorAppURL (Ljava/lang/String;)Lcom/adyen/checkout/adyen3ds2/Adyen3DS2Configuration$Builder;
public final fun setUiCustomization (Lcom/adyen/threeds2/customization/UiCustomization;)Lcom/adyen/checkout/adyen3ds2/Adyen3DS2Configuration$Builder;
}

public final class com/adyen/checkout/adyen3ds2/Adyen3DS2Configuration$Creator : android/os/Parcelable$Creator {
public fun <init> ()V
public final fun createFromParcel (Landroid/os/Parcel;)Lcom/adyen/checkout/adyen3ds2/Adyen3DS2Configuration;
public synthetic fun createFromParcel (Landroid/os/Parcel;)Ljava/lang/Object;
public final fun newArray (I)[Lcom/adyen/checkout/adyen3ds2/Adyen3DS2Configuration;
public synthetic fun newArray (I)[Ljava/lang/Object;
}

public final class com/adyen/checkout/adyen3ds2/Adyen3DS2ConfigurationKt {
public static final fun adyen3DS2 (Lcom/adyen/checkout/components/core/CheckoutConfiguration;Lkotlin/jvm/functions/Function1;)Lcom/adyen/checkout/components/core/CheckoutConfiguration;
public static synthetic fun adyen3DS2$default (Lcom/adyen/checkout/components/core/CheckoutConfiguration;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Lcom/adyen/checkout/components/core/CheckoutConfiguration;
}

public final class com/adyen/checkout/adyen3ds2/Authentication3DS2Exception : com/adyen/checkout/core/exception/ComponentException {
public static final field Companion Lcom/adyen/checkout/adyen3ds2/Authentication3DS2Exception$Companion;
public fun <init> (Ljava/lang/String;)V
}

public final class com/adyen/checkout/adyen3ds2/Authentication3DS2Exception$Companion {
}

public final class com/adyen/checkout/adyen3ds2/BuildConfig {
public static final field BUILD_TYPE Ljava/lang/String;
public static final field CHECKOUT_VERSION Ljava/lang/String;
public static final field DEBUG Z
public static final field LIBRARY_PACKAGE_NAME Ljava/lang/String;
public fun <init> ()V
}

public final class com/adyen/checkout/adyen3ds2/Cancelled3DS2Exception : com/adyen/checkout/core/exception/ComponentException {
public static final field Companion Lcom/adyen/checkout/adyen3ds2/Cancelled3DS2Exception$Companion;
public fun <init> (Ljava/lang/String;)V
}

public final class com/adyen/checkout/adyen3ds2/Cancelled3DS2Exception$Companion {
}

public final class com/adyen/checkout/adyen3ds2/internal/data/model/ChallengeToken$Creator : android/os/Parcelable$Creator {
public fun <init> ()V
public final fun createFromParcel (Landroid/os/Parcel;)Lcom/adyen/checkout/adyen3ds2/internal/data/model/ChallengeToken;
public synthetic fun createFromParcel (Landroid/os/Parcel;)Ljava/lang/Object;
public final fun newArray (I)[Lcom/adyen/checkout/adyen3ds2/internal/data/model/ChallengeToken;
public synthetic fun newArray (I)[Ljava/lang/Object;
}

public final class com/adyen/checkout/adyen3ds2/internal/data/model/FingerprintToken$Creator : android/os/Parcelable$Creator {
public fun <init> ()V
public final fun createFromParcel (Landroid/os/Parcel;)Lcom/adyen/checkout/adyen3ds2/internal/data/model/FingerprintToken;
public synthetic fun createFromParcel (Landroid/os/Parcel;)Ljava/lang/Object;
public final fun newArray (I)[Lcom/adyen/checkout/adyen3ds2/internal/data/model/FingerprintToken;
public synthetic fun newArray (I)[Ljava/lang/Object;
}

public final class com/adyen/checkout/adyen3ds2/internal/data/model/SubmitFingerprintRequest$Creator : android/os/Parcelable$Creator {
public fun <init> ()V
public final fun createFromParcel (Landroid/os/Parcel;)Lcom/adyen/checkout/adyen3ds2/internal/data/model/SubmitFingerprintRequest;
public synthetic fun createFromParcel (Landroid/os/Parcel;)Ljava/lang/Object;
public final fun newArray (I)[Lcom/adyen/checkout/adyen3ds2/internal/data/model/SubmitFingerprintRequest;
public synthetic fun newArray (I)[Ljava/lang/Object;
}

public final class com/adyen/checkout/adyen3ds2/internal/data/model/SubmitFingerprintResponse$Creator : android/os/Parcelable$Creator {
public fun <init> ()V
public final fun createFromParcel (Landroid/os/Parcel;)Lcom/adyen/checkout/adyen3ds2/internal/data/model/SubmitFingerprintResponse;
public synthetic fun createFromParcel (Landroid/os/Parcel;)Ljava/lang/Object;
public final fun newArray (I)[Lcom/adyen/checkout/adyen3ds2/internal/data/model/SubmitFingerprintResponse;
public synthetic fun newArray (I)[Ljava/lang/Object;
}

public final class com/adyen/checkout/adyen3ds2/internal/provider/Adyen3DS2ComponentProvider : com/adyen/checkout/components/core/internal/provider/ActionComponentProvider {
public fun canHandleAction (Lcom/adyen/checkout/components/core/action/Action;)Z
public fun get (Landroidx/activity/ComponentActivity;Lcom/adyen/checkout/adyen3ds2/Adyen3DS2Configuration;Lcom/adyen/checkout/components/core/ActionComponentCallback;Ljava/lang/String;)Lcom/adyen/checkout/adyen3ds2/Adyen3DS2Component;
public fun get (Landroidx/activity/ComponentActivity;Lcom/adyen/checkout/components/core/CheckoutConfiguration;Lcom/adyen/checkout/components/core/ActionComponentCallback;Ljava/lang/String;)Lcom/adyen/checkout/adyen3ds2/Adyen3DS2Component;
public synthetic fun get (Landroidx/activity/ComponentActivity;Lcom/adyen/checkout/components/core/CheckoutConfiguration;Lcom/adyen/checkout/components/core/ActionComponentCallback;Ljava/lang/String;)Lcom/adyen/checkout/components/core/internal/ActionComponent;
public synthetic fun get (Landroidx/activity/ComponentActivity;Lcom/adyen/checkout/components/core/internal/Configuration;Lcom/adyen/checkout/components/core/ActionComponentCallback;Ljava/lang/String;)Lcom/adyen/checkout/components/core/internal/ActionComponent;
public fun get (Landroidx/fragment/app/Fragment;Lcom/adyen/checkout/adyen3ds2/Adyen3DS2Configuration;Lcom/adyen/checkout/components/core/ActionComponentCallback;Ljava/lang/String;)Lcom/adyen/checkout/adyen3ds2/Adyen3DS2Component;
public fun get (Landroidx/fragment/app/Fragment;Lcom/adyen/checkout/components/core/CheckoutConfiguration;Lcom/adyen/checkout/components/core/ActionComponentCallback;Ljava/lang/String;)Lcom/adyen/checkout/adyen3ds2/Adyen3DS2Component;
public synthetic fun get (Landroidx/fragment/app/Fragment;Lcom/adyen/checkout/components/core/CheckoutConfiguration;Lcom/adyen/checkout/components/core/ActionComponentCallback;Ljava/lang/String;)Lcom/adyen/checkout/components/core/internal/ActionComponent;
public synthetic fun get (Landroidx/fragment/app/Fragment;Lcom/adyen/checkout/components/core/internal/Configuration;Lcom/adyen/checkout/components/core/ActionComponentCallback;Ljava/lang/String;)Lcom/adyen/checkout/components/core/internal/ActionComponent;
public fun get (Landroidx/savedstate/SavedStateRegistryOwner;Landroidx/lifecycle/ViewModelStoreOwner;Landroidx/lifecycle/LifecycleOwner;Landroid/app/Application;Lcom/adyen/checkout/adyen3ds2/Adyen3DS2Configuration;Lcom/adyen/checkout/components/core/ActionComponentCallback;Ljava/lang/String;)Lcom/adyen/checkout/adyen3ds2/Adyen3DS2Component;
public fun get (Landroidx/savedstate/SavedStateRegistryOwner;Landroidx/lifecycle/ViewModelStoreOwner;Landroidx/lifecycle/LifecycleOwner;Landroid/app/Application;Lcom/adyen/checkout/components/core/CheckoutConfiguration;Lcom/adyen/checkout/components/core/ActionComponentCallback;Ljava/lang/String;)Lcom/adyen/checkout/adyen3ds2/Adyen3DS2Component;
public synthetic fun get (Landroidx/savedstate/SavedStateRegistryOwner;Landroidx/lifecycle/ViewModelStoreOwner;Landroidx/lifecycle/LifecycleOwner;Landroid/app/Application;Lcom/adyen/checkout/components/core/CheckoutConfiguration;Lcom/adyen/checkout/components/core/ActionComponentCallback;Ljava/lang/String;)Lcom/adyen/checkout/components/core/internal/ActionComponent;
public synthetic fun get (Landroidx/savedstate/SavedStateRegistryOwner;Landroidx/lifecycle/ViewModelStoreOwner;Landroidx/lifecycle/LifecycleOwner;Landroid/app/Application;Lcom/adyen/checkout/components/core/internal/Configuration;Lcom/adyen/checkout/components/core/ActionComponentCallback;Ljava/lang/String;)Lcom/adyen/checkout/components/core/internal/ActionComponent;
public fun getDelegate (Lcom/adyen/checkout/components/core/CheckoutConfiguration;Landroidx/lifecycle/SavedStateHandle;Landroid/app/Application;)Lcom/adyen/checkout/adyen3ds2/internal/ui/Adyen3DS2Delegate;
public synthetic fun getDelegate (Lcom/adyen/checkout/components/core/CheckoutConfiguration;Landroidx/lifecycle/SavedStateHandle;Landroid/app/Application;)Lcom/adyen/checkout/components/core/internal/ui/ActionDelegate;
public fun getSupportedActionTypes ()Ljava/util/List;
public fun providesDetails (Lcom/adyen/checkout/components/core/action/Action;)Z
}

10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,23 +31,23 @@ Import the corresponding module in your `build.gradle` file.

For Drop-in:
```groovy
implementation "com.adyen.checkout:drop-in-compose:5.4.0"
implementation "com.adyen.checkout:drop-in-compose:5.5.0"
```
For the Credit Card component:
```groovy
implementation "com.adyen.checkout:card:5.4.0"
implementation "com.adyen.checkout:components-compose:5.4.0"
implementation "com.adyen.checkout:card:5.5.0"
implementation "com.adyen.checkout:components-compose:5.5.0"
```

### Without Jetpack Compose

For Drop-in:
```groovy
implementation "com.adyen.checkout:drop-in:5.4.0"
implementation "com.adyen.checkout:drop-in:5.5.0"
```
For the Credit Card component:
```groovy
implementation "com.adyen.checkout:card:5.4.0"
implementation "com.adyen.checkout:card:5.5.0"
```

The library is available on [Maven Central][mavenRepo].
Expand Down
60 changes: 25 additions & 35 deletions RELEASE_NOTES.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,44 +9,34 @@
[//]: # ( - Configurations public constructor are deprecated, please use each Configuration's builder to make a Configuration object)

## New
- For external redirects, you can now [customize the colors of the toolbar and navigation bar](docs/UI_CUSTOMIZATION.md#styling-custom-tabs) displayed in [Custom Tabs](https://developer.chrome.com/docs/android/custom-tabs).
- TWINT is now supported with a native flow, and you no longer need to redirect shoppers through the browser. To use the redirect flow, set the following configuration:
```kotlin
CheckoutConfiguration(
environment = environment,
clientKey = clientKey,
..
) {
// Optionally pass the payment method type to only configure it for the specific payment method.
instantPayment(PaymentMethodTypes.TWINT) {
setActionHandlingMethod(ActionHandlingMethod.PREFER_WEB)
}
}
```
- Support for the UPI Intent flow, where the shopper can choose a UPI app to pay through. They are redirected to and complete the payment on the selected app.
- The new iDEAL payment flow where the shopper is redirected to the iDEAL payment page to select their bank and authorize the payment.

## Fixed
- Fixed some memory leaks.
- In case of a debug build, Drop-in no longer overrides the log level.
- For cards, when a shopper does not select an address, the address lookup function now displays a validation error.
- Actions no longer crash when your app uses obfuscation.
- When handling a 3D Secure 2 challenge using Checkout API v66 or earlier, Drop-in no longer throws an error.
- If the app process unexpectedly terminates when handling actions, the state is now restored and you can proceed with the payment flow.
- For `/sessions`, fixed an issue where the `setEnableRemovingStoredPaymentMethods` flag in the [Drop-in configuration](https://docs.adyen.com/online-payments/build-your-integration/sessions-flow/?platform=Android&integration=Drop-in#3-optional-add-a-configuration-object) was ignored.
## Improved
- Drop-in navigation:
- Added the top navigation bar.
- Disabled the dragging gesture that caused Drop-in to be dismissed.
- When the shopper navigates back from an additional action screen (for example Await), Drop-in is dismissed.

- Autofill support for the following:
- For gift cards, the gift card number and PIN fields.
- For UPI Virtual Payments, the address field.
- For payment methods that use them, the address input fields.

## Changed
- The phone number input field in the payment form now shows ISO codes instead of flags.
- The UI elements that were previously labelled **Country** are now **Country/Region**.
- Dependency versions:
| Name | Version |
|--------------------------------------------------------------------------------------------------------------|-------------------------------|
| [Adyen 3DS2](https://github.com/Adyen/adyen-3ds2-android/releases/tag/2.2.18) | **2.2.18** |
| [Android Gradle plugin](https://developer.android.com/build/releases/gradle-plugin) | **8.3.2** |
| [AndroidX Browser](https://developer.android.com/jetpack/androidx/releases/browser#1.8.0) | **1.8.0** |
| [AndroidX Compose Activity](https://developer.android.com/jetpack/androidx/releases/activity#1.9.0) | **1.9.0** |
| [AndroidX Compose BoM](https://developer.android.com/develop/ui/compose/bom/bom-mapping) | **2024.04.01** |
| [AndroidX Compose Compiler](https://developer.android.com/jetpack/androidx/releases/compose-compiler#1.5.12) | **1.5.12** |
| [AndroidX Lifecycle](https://developer.android.com/jetpack/androidx/releases/lifecycle#2.7.0) | **2.7.0** |
| [Google Pay](https://developers.google.com/pay/api/android/support/release-notes#feb-24) | **19.3.0** |
| [Google Pay Compose Button](https://github.com/google-pay/compose-pay-button/releases/tag/v1.0.0) | **1.0.0** |
| [Kotlin](https://github.com/JetBrains/kotlin/releases/tag/v1.9.24) | **1.9.24** |
| [Kotlin coroutines](https://github.com/Kotlin/kotlinx.coroutines/releases/tag/1.8.0) | **1.8.0** |
| [AndroidX Compose BoM](https://developer.android.com/develop/ui/compose/bom/bom-mapping) | **2024.05.00** |
| [AndroidX Lifecycle](https://developer.android.com/jetpack/androidx/releases/lifecycle#2.8.2) | **2.8.2** |
| [Material Design](https://github.com/material-components/material-components-android/releases/tag/1.12.0/) | **1.12.0** |

## Deprecated
We recommend that you remove the following from your integration.
- For `IdealComponent`:
- `isConfirmationRequired()`
- `submit()`
- For iDEAL configuration:
- `setViewType()`
- `setHideIssuerLogos()`
- `setSubmitButtonVisible()`
Loading