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

[FCLite] Make FC Lite available in MPE #4712

Merged
merged 5 commits into from
Mar 28, 2025

Conversation

mats-stripe
Copy link
Collaborator

@mats-stripe mats-stripe commented Mar 25, 2025

Summary

This integrates FC Lite into MPE. The main idea here is we first check if the full SDK is available, use that if so, and otherwise fallback on FC Lite.

Important

This PR does not release FC Lite. There is a guardrail in place (fcLiteFeatureEnabled) that prevents it from being accessed, and this is only currently enabled by our example apps.

Motivation

Testing

Manual testing done! Here's the Payment Sheet example app:

Screen.Recording.2025-03-27.at.1.12.51.PM.mov

And the Financial Connections example app:

Screen.Recording.2025-03-27.at.1.15.08.PM.mov

Changelog

N/a

@mats-stripe mats-stripe force-pushed the mats/fc_lite_availability_in_mpe branch from e30c967 to fcbfefc Compare March 27, 2025 14:29
@mats-stripe mats-stripe marked this pull request as ready for review March 27, 2025 17:27
@mats-stripe mats-stripe requested review from a team as code owners March 27, 2025 17:27
@mats-stripe mats-stripe force-pushed the mats/fc_lite_availability_in_mpe branch from ee0a191 to f793248 Compare March 27, 2025 19:27
@@ -884,7 +888,7 @@ extension PlaygroundController {
else {
if let data = data,
(response as? HTTPURLResponse)?.statusCode == 400 {
let errorMessage = String(data: data, encoding: .utf8)!
let errorMessage = String(decoding: data, as: UTF8.self)
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Drive-by fix. Our linter was yelling about this line

@mats-stripe mats-stripe force-pushed the mats/fc_lite_availability_in_mpe branch from 58d8ed9 to 14d244d Compare March 28, 2025 15:49
Copy link

⚠️ Public API changes detected:

StripePaymentSheet

- public var link: StripePaymentSheet.PaymentSheet.LinkConfiguration
- public struct LinkConfiguration {
- public var display: StripePaymentSheet.PaymentSheet.LinkConfiguration.Display
- public enum Display : Swift.String {
- case automatic
- case never
- public init?(rawValue: Swift.String)
- public typealias RawValue = Swift.String
- public var rawValue: Swift.String {
- get
- }
- }
- public init(display: StripePaymentSheet.PaymentSheet.LinkConfiguration.Display = .automatic)
- }

If you are adding a new public API consider the following:

  • Do these APIs need to be public or can they be protected with @_spi(STP)?
  • If these APIs need to be public, assess whether they require an API review.

If you are modifying or removing a public API:

  • Does this require a breaking version change?
  • Do these changes require API review?

If you confirm these APIs need to be added/updated and have undergone necessary review, add the label modifies public API to this PR to acknowledge and bypass this check.

ℹ️ If this comment appears to be left in error, make sure your branch is up-to-date with master.

@mats-stripe mats-stripe merged commit 68c8eb7 into master Mar 28, 2025
6 checks passed
@mats-stripe mats-stripe deleted the mats/fc_lite_availability_in_mpe branch March 28, 2025 17:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants