All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Fixed a critical error, affecting last 2 releases, causing a crash in certain cases with cached old SDK configurations.
- Fixed empty value in
KlarnaProductEvent
get params function when executed on Objc apps. ⚠️ This version has a critical issue: Please use a newer version of the SDK. Future releases will be cautiously checked to prevent these warnings.
- Added a fix for inline camera preview in
KlarnaStandaloneWebView
. - Added new client ID and endpoint support in On-Site Messaging (OSM).
- Optimized lifecycle for fullscreen webview instance.
- Internal fixes and improvements.
⚠️ This version has a critical issue: Please use a newer version of the SDK. Future releases will be cautiously checked to prevent these warnings.
- Added support for Single sign-on using ASWebAuthenticationSession.
- Updated UI for Sign in with Klarna button.
- Optimized remote asset loading.
- Added SIWK tokenization feature.
- Removed enforced consent prompt in Sign in with Klarna integration.
- Improved OSM text rendering process.
- Bug fixes and security improvements.
- Updated fullscreen logic to prevent unhandled errors.
- Fixed On-Site Messaging (OSM) background color not changing.
- Internal improvements.
- Added support for customizing the appearance of the On-Site Messaging (OSM) view.
- Fixed the "Learn more" text to not start from a new line in OSM view.
- Reverted enabling mergeable library due to cocoapods failures.
- Added missing key in xcprivacy manifest file.
- Mergeable library feature enabled.
- Minor internal improvements.
- Added support for Sign in with Klarna in NA and OC regions.
- Fixed memory leak in Sign in with Klarna integration.
- Fixed CheckoutView memory leak.
- Fixed build date/time format.
- Fixed SDK monitoring for SIWK when initializing.
- Privacy Manifest file included inside KlarnaMobileSDK framework.
- Environment and region values can be added through new constructor APIs.
- Internal improvements and optimizations.
- Set the default variant of the SDK to basic.
- Implemented minor internal security fixes and improvements.
- Fixed javascript code execution vulnerability.
- Added URL validations for SDK WebViews.
- Updated SDK User-Agents.
- Improved SDK monitoring.
- Fix duplicated mesage handler on webview.
- Added default value for auto finalize as null.
- Fixed navigation bar color when Internal Browser is presented.
- Added @objc flag in KlarnaResourceEndpoint.
- Xcode 15 build.
- Added progress indicator in Sign In With Klarna Button.
- Fixed style in Sign In With Klarna Button.
- Improved performance for Sign In With Klarna.
- Fix Logging level.
- Internal optimization and improvements for Sign In With Klarna.
- Fix
Pointer is missing a nullability type specifier
warning.
- Fix Umbrella header warning message.
- Fix Webview content inside Internal Browser.
- Added webview inspectable variable to
KlarnaStandaloneWebView
.
- Fix UIActivityViewController for iPad.
- Updated assets.
- Fix screen orientation in fullscreen per device size.
- Fix fullscreen dismiss on certain touch events.
- Fixed: Fullscreen being dismissed on OPF.
- Internal optimization and improvements for Sign In With Klarna.
- Fixed Sign In with Klarna POST Request.
- Added Sign in with Klarna integration.
- Added backgroundColor and isOpaque properties to
KlarnaStandaloneWebView
. - Fixed error while validating returnURL when there were multiple URLs on info.plist.
- Fixed delegate methods not being called on Post Purchase SDK Delegate.
- Xcode 14.2 build.
- Added Klarna Express Button integration.
- Post Purchase API updated to make it consistent with other SDK products.
- Updated Checkout keyboard handling behavior.
- Internal improvements for experiments decoding.
- Fixed: OSM View stacks elements when the render function is called multiple times.
- Updated SDK assets for Klarna Payments.
- Added support for Klarna Checkout in Standalone, Hybrid and WebView integrations.
- Added
KlarnaCheckoutView
extendsKlarnaSingleComponent
andKlarnaStandaloneComponent
.
- Fixed: Fullscreen did not dismiss when the app was in the background.
- Fixed: Klarna payment authorization with a non-alphanumeric app name.
- Internal improvements for fullscreens.
- Internal optimizations.
- Xcode 14 support.
- Added
KlarnaComponent
. General class that envelops any Klarna Component, regardless of integration. - Added
KlarnaMultiComponent
. Components conforming to this interface protocol may render multiple products at once. - Added
KlarnaStandaloneComponent
. For components that host and own their content. - Added
KlarnaSingleComponent
. Components conforming to this protocol render a single Klarna product at a time. - Added
KlarnaEventHandler
interface. Provides methods that will notify events happening to a product in a Klarna component. - Added
KlarnaSizingDelegate
interface. Provides a size delegate that will notify of sizing changes. - Added
KlarnaStandaloneWebView
class. - Added
KlarnaEnvironment
class. - Added
KlarnaProduct
class. - Added
KlarnaProductEvent
class. - Added
KlarnaProductOptions
class. - Renamed
KlarnaMobileSDKError
toKlarnaError
. - Renamed
KlarnaOSMRegion
toKlarnaRegion
. - Renamed
KlarnaOSMTheme
toKlarnaTheme
.
KlarnaWebView
is deprecated as a type. UseWKWebView
instead.KlarnaEventListener
is deprecated. UseKlarnaEventHandler
instead.KlarnaEvent
is deprecated. UseKlarnaProductEvent
through eventHandler instead.KlarnaMobileSDKError
is deprecated. UseKlarnaError
instead.
KlarnaHybridSDK
extendsKlarnaSingleComponent
andKlarnaStandaloneComponent
.
KlarnaHybridSDK
extendsKlarnaMultiComponent
.
deviceIdentifier
is deprecated. Should not be used.registerEventListener
is deprecated. Replaced byKlarnaEventHandler
.KlarnaHybridEventListener
is deprecated. UseKlarnaEventHandler
andKlarnaFullscreenEventListener
instead.KlarnaHybridSDKEventListener
was deleted. Was already deprecated since v1.3.0.
KlarnaOSMView
extendsKlarnaStandaloneComponent
andKlarnaSingleComponent
.
KlarnaOSMViewEventListener
is deprecated. UseKlarnaSizingDelegate
.callback
onrender(callback: @escaping RenderResult)
is no longed needed. Usefunc klarnaComponent(_ klarnaComponent: KlarnaComponent, dispatchedEvent event: KlarnaProductEvent)
on the protocolKlarnaEventHandler
.KlarnaOSMEnvironment
is deprecated. UseKlarnaEnvironment
instead.KlarnaOSMRegion
is deprecated. UseKlarnaRegion
instead.KlarnaOSMTheme
is deprecated. UseKlarnaTheme
instead.
KlarnaPostPurchaseSDK
extendsKlarnaSingleComponent
andKlarnaComponent
.
KlarnaPostPurchaseEnvironment
is deprecated. UseKlarnaEnvironment
instead.KlarnaPostPurchaseRegion
is deprecated. UseKlarnaRegion
instead.
- Fixed: OSM hostViewController presentation behavior
- Removed all references for Card Scan (Camera Usage) in Basic framework.
- Fix typo on API.
- Fix crash on OSM for iOS 16 beta2. (rdar://FB10893183)
- Added support for Post Purchase
- Internal optimizations.
- Added support for opening SFSafariViewController.
- Improved fullscreen performance for One Klarna.
- Internal browser now support universal links.
- Fixed margins when the keyboard appears in Separate Fullscreen.
- Fixed some memory leaks.
- Fixed keyboard crash introduced in 2.1.2.
- Added support for opening PDF files.
- Fix margin error when the keyboard appears in fullscreen.
- Added listener to open BankID on internal Webview.
- Fix Fullscreen timeout animation for iOS 15.
- Improved support for 3DSecure flows in new markets.
- Added "returnUrl" to the
KlarnaPaymentView
constructor parameters. - Deprecated
KlarnaHybridSDKEventListener
and added separate callbacks for events and fullscreen transitions. - Internal optimization and improvements.
- Fixed: OSM delegate available in Objective-c.
- Fixed: Space between lines in OSM.
- Version control for Carthage integration.
- Fixed: OSM will create a temp folder where it will store the resources.
- Fixed: WKWebView with contet offscreen when keyboard appears in iOS 13.3 or lower versions (https://bugs.webkit.org/show_bug.cgi?id=192564)
- Resources are stored in cache, improving the load times.
- Added Objective-C initializers with default value for alternative endpoint.
- Fix bug for OSM with alternative resource endpoint .alternative2.
- Full framework version is selected as default
- Support for alternative resources endpoint
- Support M1 chips in XCFramework.
- Update analytics events.
- Fix bug on card scanning due to ITP restriction introduced on iOS 14.
- WebRTC support.
- Log warning if methods are being called a second time before the call returned.
- Performance improvements: Removed a race condition that happens when the user has a slow network connection.
- Fix registerEventListener in hybrid integration.
- On site marketing available to Objective-C.
- Overall performance improvements.
- Overall performance improvements.
- Fix error: virtual filesystem overlay
- Support for Xcode 11.3.1.
- Fix redirections in the internal browser.
- Framework available using Swift Package Manager.
- Carthage support.
- Remove the word "basic" in subspecs for Cocoapods.
- ABI Stability.
- UIWindow for Fullscreens are hidden when it's closed.
- Fixed issue that freeze the authorize flow when KPView was being dismissed.
- Fixed issue when the fullscreen was dismissed.
- Adds support for Xcode 12 and Swift 5.3.
- Fix issue with showing fullscreen.
- Basic support for static On site marketing - beta version
- Overall performance improvements.
- Fixed an issue with keyboard for OTP input field.
- Fixed an issue related to navigation between two fullscreen views.
- Overall performance improvements.
- Full framework with card scan.
- Default/basic framework without card scan.
- Fix crash related to universal framework.
- Overall performance improvements.
- Support Xcode 11.4.1
- Overall performance improvements.
- Support Swift 5.2.
- Fix crash related to the framework when exporting the app.
- Support for dark mode.
- Remove all references and any support for UIWebView from the SDK.
- Enhanced 3DSecure card flows.
- Fixed some modal dialog presentation in iOS 13 and for iPads.