react-native-klarna-inapp-sdk 2.4.5 → 2.4.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -45,7 +45,7 @@ def supportsNamespace() {
45
45
  }
46
46
 
47
47
  plugins {
48
- id "org.jetbrains.kotlin.plugin.serialization" version "2.2.0"
48
+ id "org.jetbrains.kotlin.plugin.serialization" version "1.9.25"
49
49
  }
50
50
  apply plugin: 'com.android.library'
51
51
  apply plugin: 'kotlin-android'
@@ -112,9 +112,9 @@ dependencies {
112
112
 
113
113
  implementation "org.jetbrains.kotlin:kotlin-stdlib:${getExtOrDefault('kotlinVersion')}"
114
114
  implementation "org.jetbrains.kotlin:kotlin-reflect:${getExtOrDefault('kotlinVersion')}"
115
- implementation 'org.jetbrains.kotlinx:kotlinx-serialization-json:1.9.0'
115
+ implementation 'org.jetbrains.kotlinx:kotlinx-serialization-json:1.6.3'
116
116
 
117
- implementation 'com.klarna.mobile:sdk:2.7.1'
117
+ implementation 'com.klarna.mobile:sdk:2.8.0'
118
118
 
119
119
  testImplementation "junit:junit:4.13.2"
120
120
  testImplementation 'androidx.test:core:1.5.0'
@@ -3,6 +3,7 @@ package com.klarna.mobile.sdk.reactnative.checkout;
3
3
  import android.os.Handler;
4
4
  import android.os.Looper;
5
5
  import android.view.View;
6
+ import android.webkit.WebView;
6
7
 
7
8
  import androidx.annotation.NonNull;
8
9
  import androidx.annotation.Nullable;
@@ -57,13 +58,36 @@ public class KlarnaCheckoutViewManager extends RNKlarnaCheckoutViewSpec<ResizeOb
57
58
  if (resizeObserverWrapperView == null) {
58
59
  return;
59
60
  }
61
+
60
62
  Integer retries = setSnippetRetriesMap.getOrDefault(resizeObserverWrapperView, 0);
61
63
  if (retries == null || retries >= MAX_SET_SNIPPET_RETRIES) {
62
64
  return;
63
65
  }
66
+
64
67
  String snippet = snippetMap.get(resizeObserverWrapperView);
68
+ if (snippet == null) {
69
+ return;
70
+ }
71
+
65
72
  handler.postDelayed(() -> {
66
- if (klarnaCheckoutView != null && klarnaCheckoutView.getHeight() == 0) {
73
+ if (klarnaCheckoutView == null) {
74
+ return;
75
+ }
76
+
77
+ boolean shouldRetry = false;
78
+
79
+ if (klarnaCheckoutView.getHeight() == 0) {
80
+ shouldRetry = true;
81
+ }
82
+
83
+ if (klarnaCheckoutView.getChildAt(0) instanceof WebView) {
84
+ WebView internalWebView = (WebView) klarnaCheckoutView.getChildAt(0);
85
+ if (internalWebView != null && internalWebView.getHeight() == 0) {
86
+ shouldRetry = true;
87
+ }
88
+ }
89
+
90
+ if (shouldRetry) {
67
91
  setSnippet(resizeObserverWrapperView, snippet);
68
92
  setSnippetRetriesMap.put(resizeObserverWrapperView, retries + 1);
69
93
  }
@@ -19,9 +19,5 @@ object ParserUtil {
19
19
  return res
20
20
  }
21
21
 
22
- inline fun <reified T> toJson(
23
- src: T,
24
- ): String = json.encodeToString(src)
25
-
26
22
  fun parse(json: String): JsonElement = this.json.parseToJsonElement(json)
27
23
  }
@@ -38,21 +38,25 @@ public class KlarnaSignInModuleImpl implements KlarnaEventHandler {
38
38
  /* Module private methods */
39
39
 
40
40
  private KlarnaEnvironment environmentFrom(@NonNull String value) {
41
- return switch (value) {
42
- case "playground" -> KlarnaEnvironment.PLAYGROUND;
43
- case "staging" -> KlarnaEnvironment.STAGING;
44
- default -> KlarnaEnvironment.PRODUCTION;
45
- };
46
-
41
+ switch (value) {
42
+ case "playground":
43
+ return KlarnaEnvironment.PLAYGROUND;
44
+ case "staging":
45
+ return KlarnaEnvironment.STAGING;
46
+ default:
47
+ return KlarnaEnvironment.PRODUCTION;
48
+ }
47
49
  }
48
50
 
49
51
  private KlarnaRegion regionFrom(@NonNull String value) {
50
- return switch (value) {
51
- case "na" -> KlarnaRegion.NA;
52
- case "oc" -> KlarnaRegion.OC;
53
- default -> KlarnaRegion.EU;
54
- };
55
-
52
+ switch (value) {
53
+ case "na":
54
+ return KlarnaRegion.NA;
55
+ case "oc":
56
+ return KlarnaRegion.OC;
57
+ default:
58
+ return KlarnaRegion.EU;
59
+ }
56
60
  }
57
61
 
58
62
  private KlarnaSignInData getInstanceData(KlarnaComponent component) {
@@ -14,20 +14,6 @@ internal class ParserUtilTest {
14
14
  assertNotNull(ParserUtil.json)
15
15
  }
16
16
 
17
- @Test
18
- fun `test toJson success`() {
19
- val serialized = ParserUtil.toJson(TestData("test"))
20
- assertEquals("{\"data\":\"test\"}", serialized)
21
- }
22
-
23
- @Test
24
- fun `test toJson fail`() {
25
- val testData = NonSerializableData("")
26
- assertFailsWith(SerializationException::class, "test") {
27
- ParserUtil.toJson(testData)
28
- }
29
- }
30
-
31
17
  @Serializable
32
18
  private data class TestData(
33
19
  @SerialName("data") val data: String,
@@ -338,11 +338,13 @@
338
338
  );
339
339
  inputPaths = (
340
340
  "${PODS_ROOT}/Target Support Files/Pods-RNKlarnaMobileSDK-RNKlarnaMobileSDKTests/Pods-RNKlarnaMobileSDK-RNKlarnaMobileSDKTests-frameworks.sh",
341
+ "${PODS_XCFRAMEWORKS_BUILD_DIR}/KlarnaMobileSDK/basic/KlarnaCore.framework/KlarnaCore",
341
342
  "${PODS_XCFRAMEWORKS_BUILD_DIR}/KlarnaMobileSDK/basic/KlarnaMobileSDK.framework/KlarnaMobileSDK",
342
343
  "${PODS_XCFRAMEWORKS_BUILD_DIR}/hermes-engine/Pre-built/hermes.framework/hermes",
343
344
  );
344
345
  name = "[CP] Embed Pods Frameworks";
345
346
  outputPaths = (
347
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/KlarnaCore.framework",
346
348
  "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/KlarnaMobileSDK.framework",
347
349
  "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/hermes.framework",
348
350
  );
@@ -8,7 +8,10 @@
8
8
 
9
9
  #import <Foundation/Foundation.h>
10
10
  #import <React/RCTBridgeModule.h>
11
+ #import <KlarnaMobileSDK/KlarnaMobileSDK.h>
12
+ #ifdef RCT_NEW_ARCH_ENABLED
11
13
  #import <RNKlarnaMobileSDK/RNKlarnaMobileSDK.h>
14
+ #endif
12
15
 
13
16
  NS_ASSUME_NONNULL_BEGIN
14
17
 
@@ -9,6 +9,7 @@
9
9
  #import <XCTest/XCTest.h>
10
10
  #import <OCMock/OCMock.h>
11
11
  #import <React/RCTComponent.h>
12
+ #import <KlarnaMobileSDK/KlarnaMobileSDK.h>
12
13
  #import <KlarnaMobileSDK/KlarnaMobileSDK-Swift.h>
13
14
  #import "../Sources/KlarnaPaymentViewManager.h"
14
15
 
@@ -19,6 +19,9 @@ class KlarnaCheckoutView extends _react.Component {
19
19
  this.checkoutViewRef = /*#__PURE__*/_react.default.createRef();
20
20
  this.isCheckoutViewReady = false;
21
21
  }
22
+ componentWillUnmount() {
23
+ this.isCheckoutViewReady = false;
24
+ }
22
25
  render() {
23
26
  return /*#__PURE__*/_react.default.createElement(_KlarnaCheckoutViewNativeComponent.default, {
24
27
  ref: this.checkoutViewRef
@@ -55,7 +58,7 @@ class KlarnaCheckoutView extends _react.Component {
55
58
  onResized: event => {
56
59
  const newHeight = Number(event.nativeEvent.height);
57
60
  if (newHeight !== this.state.nativeViewHeight) {
58
- console.log('onResized', newHeight);
61
+ console.log(`onResized: new height is ${newHeight}`);
59
62
  this.setState({
60
63
  nativeViewHeight: newHeight
61
64
  });
@@ -63,7 +66,7 @@ class KlarnaCheckoutView extends _react.Component {
63
66
  },
64
67
  onCheckoutViewReady: () => {
65
68
  this.isCheckoutViewReady = true;
66
- console.log('onCheckoutViewReady');
69
+ console.log('Native checkout view is ready.');
67
70
  if (this.snippet) {
68
71
  console.log('Setting the snippet...');
69
72
  this.setSnippet(this.snippet);
@@ -77,18 +80,24 @@ class KlarnaCheckoutView extends _react.Component {
77
80
  const view = this.checkoutViewRef.current;
78
81
  if (view != null && this.isCheckoutViewReady) {
79
82
  _KlarnaCheckoutViewNativeComponent.Commands.setSnippet(view, snippet);
83
+ } else {
84
+ console.log('setSnippet: checkout view is not ready yet. Will set snippet once ready.');
80
85
  }
81
86
  };
82
87
  suspend = () => {
83
88
  const view = this.checkoutViewRef.current;
84
89
  if (view != null && this.isCheckoutViewReady) {
85
90
  _KlarnaCheckoutViewNativeComponent.Commands.suspend(view);
91
+ } else {
92
+ console.log('suspend: checkout view is not ready.');
86
93
  }
87
94
  };
88
95
  resume = () => {
89
96
  const view = this.checkoutViewRef.current;
90
97
  if (view != null && this.isCheckoutViewReady) {
91
98
  _KlarnaCheckoutViewNativeComponent.Commands.resume(view);
99
+ } else {
100
+ console.log('resume: checkout view is not ready.');
92
101
  }
93
102
  };
94
103
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_KlarnaCheckoutViewNativeComponent","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","KlarnaCheckoutView","Component","snippet","isCheckoutViewReady","constructor","props","state","nativeViewHeight","checkoutViewRef","React","createRef","render","createElement","ref","style","width","height","flexShrink","returnUrl","onEvent","event","_this$props$onEvent","_this$props","params","JSON","parse","nativeEvent","productEvent","e","console","error","action","onError","_this$props$onError","_this$props2","mobileSdkError","isFatal","message","name","onResized","newHeight","Number","log","setState","onCheckoutViewReady","setSnippet","view","current","RNKlarnaCheckoutViewCommands","suspend","resume","exports","_default"],"sourceRoot":"../../src","sources":["KlarnaCheckoutView.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAQA,IAAAC,kCAAA,GAAAF,uBAAA,CAAAC,OAAA;AAGmD,SAAAE,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAJ,wBAAAQ,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,CAAAJ,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAa5C,MAAMW,kBAAkB,SAASC,gBAAS,CAG/C;EAIQC,OAAO,GAAkB,IAAI;EAC7BC,mBAAmB,GAAG,KAAK;EAEnCC,WAAWA,CAACC,KAA8B,EAAE;IAC1C,KAAK,CAACA,KAAK,CAAC;IACZ,IAAI,CAACC,KAAK,GAAG;MACXC,gBAAgB,EAAE;IACpB,CAAC;IACD,IAAI,CAACC,eAAe,gBAAGC,cAAK,CAACC,SAAS,CAAC,CAAC;IACxC,IAAI,CAACP,mBAAmB,GAAG,KAAK;EAClC;EAEAQ,MAAMA,CAAA,EAAG;IACP,oBACErC,MAAA,CAAAW,OAAA,CAAA2B,aAAA,CAACnC,kCAAA,CAAAQ,OAAoB;MACnB4B,GAAG,EAAE,IAAI,CAACL;MACV;MACAM,KAAK,EAAE;QACLC,KAAK,EAAE,MAAM;QACbC,MAAM,EAAE,IAAI,CAACV,KAAK,CAACC,gBAAgB;QACnCU,UAAU,EAAE;MACd,CAAE;MACFC,SAAS,EAAE,IAAI,CAACb,KAAK,CAACa,SAAS,IAAI,EAAG;MACtCC,OAAO,EACLC,KAOC,IACE;QAAA,IAAAC,mBAAA,EAAAC,WAAA;QACH,IAAIC,MAAM,GAAG,CAAC,CAAC;QACf,IAAI;UACFA,MAAM,GAAGC,IAAI,CAACC,KAAK,CAACL,KAAK,CAACM,WAAW,CAACC,YAAY,CAACJ,MAAM,CAAC;QAC5D,CAAC,CAAC,OAAOK,CAAC,EAAE;UACVC,OAAO,CAACC,KAAK,CAAC,qCAAqC,EAAEF,CAAC,CAAC;QACzD;QACA,MAAMD,YAAgC,GAAG;UACvCI,MAAM,EAAEX,KAAK,CAACM,WAAW,CAACC,YAAY,CAACI,MAAM;UAC7CR,MAAM,EAAEA;QACV,CAAC;QACD,CAAAF,mBAAA,IAAAC,WAAA,OAAI,CAACjB,KAAK,EAACc,OAAO,cAAAE,mBAAA,eAAlBA,mBAAA,CAAAxB,IAAA,CAAAyB,WAAA,EAAqBK,YAAY,CAAC;MACpC,CAAE;MACFK,OAAO,EACLZ,KAQC,IACE;QAAA,IAAAa,mBAAA,EAAAC,YAAA;QACH,MAAMC,cAAoC,GAAG;UAC3CC,OAAO,EAAEhB,KAAK,CAACM,WAAW,CAACI,KAAK,CAACM,OAAO;UACxCC,OAAO,EAAEjB,KAAK,CAACM,WAAW,CAACI,KAAK,CAACO,OAAO;UACxCC,IAAI,EAAElB,KAAK,CAACM,WAAW,CAACI,KAAK,CAACQ;QAChC,CAAC;QACD,CAAAL,mBAAA,IAAAC,YAAA,OAAI,CAAC7B,KAAK,EAAC2B,OAAO,cAAAC,mBAAA,eAAlBA,mBAAA,CAAApC,IAAA,CAAAqC,YAAA,EAAqBC,cAAc,CAAC;MACtC,CAAE;MACFI,SAAS,EACPnB,KAIC,IACE;QACH,MAAMoB,SAAS,GAAGC,MAAM,CAACrB,KAAK,CAACM,WAAW,CAACV,MAAM,CAAC;QAClD,IAAIwB,SAAS,KAAK,IAAI,CAAClC,KAAK,CAACC,gBAAgB,EAAE;UAC7CsB,OAAO,CAACa,GAAG,CAAC,WAAW,EAAEF,SAAS,CAAC;UACnC,IAAI,CAACG,QAAQ,CAAC;YAAEpC,gBAAgB,EAAEiC;UAAU,CAAC,CAAC;QAChD;MACF,CAAE;MACFI,mBAAmB,EAAEA,CAAA,KAAM;QACzB,IAAI,CAACzC,mBAAmB,GAAG,IAAI;QAC/B0B,OAAO,CAACa,GAAG,CAAC,qBAAqB,CAAC;QAClC,IAAI,IAAI,CAACxC,OAAO,EAAE;UAChB2B,OAAO,CAACa,GAAG,CAAC,wBAAwB,CAAC;UACrC,IAAI,CAACG,UAAU,CAAC,IAAI,CAAC3C,OAAO,CAAC;UAC7B,IAAI,CAACA,OAAO,GAAG,IAAI;QACrB;MACF;IAAE,CACH,CAAC;EAEN;EAEA2C,UAAU,GAAI3C,OAAe,IAAK;IAChC,IAAI,CAACA,OAAO,GAAGA,OAAO;IACtB,MAAM4C,IAAI,GAAG,IAAI,CAACtC,eAAe,CAACuC,OAAO;IACzC,IAAID,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC3C,mBAAmB,EAAE;MAC5C6C,2CAA4B,CAACH,UAAU,CAACC,IAAI,EAAE5C,OAAO,CAAC;IACxD;EACF,CAAC;EAED+C,OAAO,GAAGA,CAAA,KAAM;IACd,MAAMH,IAAI,GAAG,IAAI,CAACtC,eAAe,CAACuC,OAAO;IACzC,IAAID,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC3C,mBAAmB,EAAE;MAC5C6C,2CAA4B,CAACC,OAAO,CAACH,IAAI,CAAC;IAC5C;EACF,CAAC;EAEDI,MAAM,GAAGA,CAAA,KAAM;IACb,MAAMJ,IAAI,GAAG,IAAI,CAACtC,eAAe,CAACuC,OAAO;IACzC,IAAID,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC3C,mBAAmB,EAAE;MAC5C6C,2CAA4B,CAACE,MAAM,CAACJ,IAAI,CAAC;IAC3C;EACF,CAAC;AACH;AAACK,OAAA,CAAAnD,kBAAA,GAAAA,kBAAA;AAAA,IAAAoD,QAAA,GAEcpD,kBAAkB;AAAAmD,OAAA,CAAAlE,OAAA,GAAAmE,QAAA"}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_KlarnaCheckoutViewNativeComponent","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","KlarnaCheckoutView","Component","snippet","isCheckoutViewReady","constructor","props","state","nativeViewHeight","checkoutViewRef","React","createRef","componentWillUnmount","render","createElement","ref","style","width","height","flexShrink","returnUrl","onEvent","event","_this$props$onEvent","_this$props","params","JSON","parse","nativeEvent","productEvent","e","console","error","action","onError","_this$props$onError","_this$props2","mobileSdkError","isFatal","message","name","onResized","newHeight","Number","log","setState","onCheckoutViewReady","setSnippet","view","current","RNKlarnaCheckoutViewCommands","suspend","resume","exports","_default"],"sourceRoot":"../../src","sources":["KlarnaCheckoutView.tsx"],"mappings":"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"}
@@ -11,6 +11,9 @@ export class KlarnaCheckoutView extends Component {
11
11
  this.checkoutViewRef = /*#__PURE__*/React.createRef();
12
12
  this.isCheckoutViewReady = false;
13
13
  }
14
+ componentWillUnmount() {
15
+ this.isCheckoutViewReady = false;
16
+ }
14
17
  render() {
15
18
  return /*#__PURE__*/React.createElement(RNKlarnaCheckoutView, {
16
19
  ref: this.checkoutViewRef
@@ -47,7 +50,7 @@ export class KlarnaCheckoutView extends Component {
47
50
  onResized: event => {
48
51
  const newHeight = Number(event.nativeEvent.height);
49
52
  if (newHeight !== this.state.nativeViewHeight) {
50
- console.log('onResized', newHeight);
53
+ console.log(`onResized: new height is ${newHeight}`);
51
54
  this.setState({
52
55
  nativeViewHeight: newHeight
53
56
  });
@@ -55,7 +58,7 @@ export class KlarnaCheckoutView extends Component {
55
58
  },
56
59
  onCheckoutViewReady: () => {
57
60
  this.isCheckoutViewReady = true;
58
- console.log('onCheckoutViewReady');
61
+ console.log('Native checkout view is ready.');
59
62
  if (this.snippet) {
60
63
  console.log('Setting the snippet...');
61
64
  this.setSnippet(this.snippet);
@@ -69,18 +72,24 @@ export class KlarnaCheckoutView extends Component {
69
72
  const view = this.checkoutViewRef.current;
70
73
  if (view != null && this.isCheckoutViewReady) {
71
74
  RNKlarnaCheckoutViewCommands.setSnippet(view, snippet);
75
+ } else {
76
+ console.log('setSnippet: checkout view is not ready yet. Will set snippet once ready.');
72
77
  }
73
78
  };
74
79
  suspend = () => {
75
80
  const view = this.checkoutViewRef.current;
76
81
  if (view != null && this.isCheckoutViewReady) {
77
82
  RNKlarnaCheckoutViewCommands.suspend(view);
83
+ } else {
84
+ console.log('suspend: checkout view is not ready.');
78
85
  }
79
86
  };
80
87
  resume = () => {
81
88
  const view = this.checkoutViewRef.current;
82
89
  if (view != null && this.isCheckoutViewReady) {
83
90
  RNKlarnaCheckoutViewCommands.resume(view);
91
+ } else {
92
+ console.log('resume: checkout view is not ready.');
84
93
  }
85
94
  };
86
95
  }
@@ -1 +1 @@
1
- {"version":3,"names":["React","Component","RNKlarnaCheckoutView","Commands","RNKlarnaCheckoutViewCommands","KlarnaCheckoutView","snippet","isCheckoutViewReady","constructor","props","state","nativeViewHeight","checkoutViewRef","createRef","render","createElement","ref","style","width","height","flexShrink","returnUrl","onEvent","event","_this$props$onEvent","_this$props","params","JSON","parse","nativeEvent","productEvent","e","console","error","action","call","onError","_this$props$onError","_this$props2","mobileSdkError","isFatal","message","name","onResized","newHeight","Number","log","setState","onCheckoutViewReady","setSnippet","view","current","suspend","resume"],"sourceRoot":"../../src","sources":["KlarnaCheckoutView.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["React","Component","RNKlarnaCheckoutView","Commands","RNKlarnaCheckoutViewCommands","KlarnaCheckoutView","snippet","isCheckoutViewReady","constructor","props","state","nativeViewHeight","checkoutViewRef","createRef","componentWillUnmount","render","createElement","ref","style","width","height","flexShrink","returnUrl","onEvent","event","_this$props$onEvent","_this$props","params","JSON","parse","nativeEvent","productEvent","e","console","error","action","call","onError","_this$props$onError","_this$props2","mobileSdkError","isFatal","message","name","onResized","newHeight","Number","log","setState","onCheckoutViewReady","setSnippet","view","current","suspend","resume"],"sourceRoot":"../../src","sources":["KlarnaCheckoutView.tsx"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,SAAS,QAAwB,OAAO;AAQxD,OAAOC,oBAAoB,IACzBC,QAAQ,IAAIC,4BAA4B,QAEnC,2CAA2C;AAalD,OAAO,MAAMC,kBAAkB,SAASJ,SAAS,CAG/C;EAIQK,OAAO,GAAkB,IAAI;EAC7BC,mBAAmB,GAAG,KAAK;EAEnCC,WAAWA,CAACC,KAA8B,EAAE;IAC1C,KAAK,CAACA,KAAK,CAAC;IACZ,IAAI,CAACC,KAAK,GAAG;MACXC,gBAAgB,EAAE;IACpB,CAAC;IACD,IAAI,CAACC,eAAe,gBAAGZ,KAAK,CAACa,SAAS,CAAC,CAAC;IACxC,IAAI,CAACN,mBAAmB,GAAG,KAAK;EAClC;EAEAO,oBAAoBA,CAAA,EAAG;IACrB,IAAI,CAACP,mBAAmB,GAAG,KAAK;EAClC;EAEAQ,MAAMA,CAAA,EAAG;IACP,oBACEf,KAAA,CAAAgB,aAAA,CAACd,oBAAoB;MACnBe,GAAG,EAAE,IAAI,CAACL;MACV;MACAM,KAAK,EAAE;QACLC,KAAK,EAAE,MAAM;QACbC,MAAM,EAAE,IAAI,CAACV,KAAK,CAACC,gBAAgB;QACnCU,UAAU,EAAE;MACd,CAAE;MACFC,SAAS,EAAE,IAAI,CAACb,KAAK,CAACa,SAAS,IAAI,EAAG;MACtCC,OAAO,EACLC,KAOC,IACE;QAAA,IAAAC,mBAAA,EAAAC,WAAA;QACH,IAAIC,MAAM,GAAG,CAAC,CAAC;QACf,IAAI;UACFA,MAAM,GAAGC,IAAI,CAACC,KAAK,CAACL,KAAK,CAACM,WAAW,CAACC,YAAY,CAACJ,MAAM,CAAC;QAC5D,CAAC,CAAC,OAAOK,CAAC,EAAE;UACVC,OAAO,CAACC,KAAK,CAAC,qCAAqC,EAAEF,CAAC,CAAC;QACzD;QACA,MAAMD,YAAgC,GAAG;UACvCI,MAAM,EAAEX,KAAK,CAACM,WAAW,CAACC,YAAY,CAACI,MAAM;UAC7CR,MAAM,EAAEA;QACV,CAAC;QACD,CAAAF,mBAAA,IAAAC,WAAA,OAAI,CAACjB,KAAK,EAACc,OAAO,cAAAE,mBAAA,eAAlBA,mBAAA,CAAAW,IAAA,CAAAV,WAAA,EAAqBK,YAAY,CAAC;MACpC,CAAE;MACFM,OAAO,EACLb,KAQC,IACE;QAAA,IAAAc,mBAAA,EAAAC,YAAA;QACH,MAAMC,cAAoC,GAAG;UAC3CC,OAAO,EAAEjB,KAAK,CAACM,WAAW,CAACI,KAAK,CAACO,OAAO;UACxCC,OAAO,EAAElB,KAAK,CAACM,WAAW,CAACI,KAAK,CAACQ,OAAO;UACxCC,IAAI,EAAEnB,KAAK,CAACM,WAAW,CAACI,KAAK,CAACS;QAChC,CAAC;QACD,CAAAL,mBAAA,IAAAC,YAAA,OAAI,CAAC9B,KAAK,EAAC4B,OAAO,cAAAC,mBAAA,eAAlBA,mBAAA,CAAAF,IAAA,CAAAG,YAAA,EAAqBC,cAAc,CAAC;MACtC,CAAE;MACFI,SAAS,EACPpB,KAIC,IACE;QACH,MAAMqB,SAAS,GAAGC,MAAM,CAACtB,KAAK,CAACM,WAAW,CAACV,MAAM,CAAC;QAClD,IAAIyB,SAAS,KAAK,IAAI,CAACnC,KAAK,CAACC,gBAAgB,EAAE;UAC7CsB,OAAO,CAACc,GAAG,CAAE,4BAA2BF,SAAU,EAAC,CAAC;UACpD,IAAI,CAACG,QAAQ,CAAC;YAAErC,gBAAgB,EAAEkC;UAAU,CAAC,CAAC;QAChD;MACF,CAAE;MACFI,mBAAmB,EAAEA,CAAA,KAAM;QACzB,IAAI,CAAC1C,mBAAmB,GAAG,IAAI;QAC/B0B,OAAO,CAACc,GAAG,CAAC,gCAAgC,CAAC;QAC7C,IAAI,IAAI,CAACzC,OAAO,EAAE;UAChB2B,OAAO,CAACc,GAAG,CAAC,wBAAwB,CAAC;UACrC,IAAI,CAACG,UAAU,CAAC,IAAI,CAAC5C,OAAO,CAAC;UAC7B,IAAI,CAACA,OAAO,GAAG,IAAI;QACrB;MACF;IAAE,CACH,CAAC;EAEN;EAEA4C,UAAU,GAAI5C,OAAe,IAAK;IAChC,IAAI,CAACA,OAAO,GAAGA,OAAO;IACtB,MAAM6C,IAAI,GAAG,IAAI,CAACvC,eAAe,CAACwC,OAAO;IACzC,IAAID,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC5C,mBAAmB,EAAE;MAC5CH,4BAA4B,CAAC8C,UAAU,CAACC,IAAI,EAAE7C,OAAO,CAAC;IACxD,CAAC,MAAM;MACL2B,OAAO,CAACc,GAAG,CACT,0EACF,CAAC;IACH;EACF,CAAC;EAEDM,OAAO,GAAGA,CAAA,KAAM;IACd,MAAMF,IAAI,GAAG,IAAI,CAACvC,eAAe,CAACwC,OAAO;IACzC,IAAID,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC5C,mBAAmB,EAAE;MAC5CH,4BAA4B,CAACiD,OAAO,CAACF,IAAI,CAAC;IAC5C,CAAC,MAAM;MACLlB,OAAO,CAACc,GAAG,CAAC,sCAAsC,CAAC;IACrD;EACF,CAAC;EAEDO,MAAM,GAAGA,CAAA,KAAM;IACb,MAAMH,IAAI,GAAG,IAAI,CAACvC,eAAe,CAACwC,OAAO;IACzC,IAAID,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC5C,mBAAmB,EAAE;MAC5CH,4BAA4B,CAACkD,MAAM,CAACH,IAAI,CAAC;IAC3C,CAAC,MAAM;MACLlB,OAAO,CAACc,GAAG,CAAC,qCAAqC,CAAC;IACpD;EACF,CAAC;AACH;AAEA,eAAe1C,kBAAkB"}
@@ -17,6 +17,7 @@ export declare class KlarnaCheckoutView extends Component<KlarnaCheckoutViewProp
17
17
  private snippet;
18
18
  private isCheckoutViewReady;
19
19
  constructor(props: KlarnaCheckoutViewProps);
20
+ componentWillUnmount(): void;
20
21
  render(): React.JSX.Element;
21
22
  setSnippet: (snippet: string) => void;
22
23
  suspend: () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"KlarnaCheckoutView.d.ts","sourceRoot":"","sources":["../../src/KlarnaCheckoutView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,KAAK,EACV,aAAa,EAEb,SAAS,EACV,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAChF,OAA6B,EAE3B,KAAK,yBAAyB,EAC/B,MAAM,2CAA2C,CAAC;AAEnD,MAAM,WAAW,uBAAuB;IACtC,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,kBAAkB,EAAE,kBAAkB,KAAK,IAAI,CAAC;IACpE,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,KAAK,IAAI,CAAC;CAC1D;AAED,UAAU,uBAAuB;IAC/B,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,qBAAa,kBAAmB,SAAQ,SAAS,CAC/C,uBAAuB,EACvB,uBAAuB,CACxB;IACC,eAAe,EAAE,SAAS,CACxB,SAAS,CAAC,yBAAyB,CAAC,GAAG,QAAQ,CAAC,aAAa,CAAC,CAC/D,CAAC;IACF,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,mBAAmB,CAAS;gBAExB,KAAK,EAAE,uBAAuB;IAS1C,MAAM;IA6EN,UAAU,YAAa,MAAM,UAM3B;IAEF,OAAO,aAKL;IAEF,MAAM,aAKJ;CACH;AAED,eAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"KlarnaCheckoutView.d.ts","sourceRoot":"","sources":["../../src/KlarnaCheckoutView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,KAAK,EACV,aAAa,EAEb,SAAS,EACV,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAChF,OAA6B,EAE3B,KAAK,yBAAyB,EAC/B,MAAM,2CAA2C,CAAC;AAEnD,MAAM,WAAW,uBAAuB;IACtC,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,kBAAkB,EAAE,kBAAkB,KAAK,IAAI,CAAC;IACpE,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,oBAAoB,KAAK,IAAI,CAAC;CAC1D;AAED,UAAU,uBAAuB;IAC/B,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,qBAAa,kBAAmB,SAAQ,SAAS,CAC/C,uBAAuB,EACvB,uBAAuB,CACxB;IACC,eAAe,EAAE,SAAS,CACxB,SAAS,CAAC,yBAAyB,CAAC,GAAG,QAAQ,CAAC,aAAa,CAAC,CAC/D,CAAC;IACF,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,mBAAmB,CAAS;gBAExB,KAAK,EAAE,uBAAuB;IAS1C,oBAAoB;IAIpB,MAAM;IA6EN,UAAU,YAAa,MAAM,UAU3B;IAEF,OAAO,aAOL;IAEF,MAAM,aAOJ;CACH;AAED,eAAe,kBAAkB,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "react-native-klarna-inapp-sdk",
3
3
  "title": "Klarna Mobile SDK React Native",
4
- "version": "2.4.5",
4
+ "version": "2.4.7",
5
5
  "description": "This library wraps Klarna Mobile SDK and exposes its functionality as React Native components.",
6
6
  "main": "lib/commonjs/index",
7
7
  "module": "lib/module/index",
@@ -40,7 +40,7 @@
40
40
  "clean": "del-cli android/build ios/build TestApp/android/build TestApp/android/app/build TestApp/ios/build",
41
41
  "pods": "pod-install --quiet",
42
42
  "test:android": "cd TestApp/android && ./gradlew :react-native-klarna-inapp-sdk:testDebugUnitTest && cd ../..",
43
- "test:ios": "cd ios && xcodebuild test -workspace RNKlarnaMobileSDK.xcworkspace -scheme RNKlarnaMobileSDK -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 15'",
43
+ "test:ios": "cd ios && xcodebuild test -workspace RNKlarnaMobileSDK.xcworkspace -scheme RNKlarnaMobileSDK -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 16'",
44
44
  "build:android": "cd TestApp/android && ./gradlew assembleDebug --no-daemon --console=plain -PreactNativeArchitectures=arm64-v8a",
45
45
  "build:ios": "cd TestApp/ios && xcodebuild -workspace TestApp.xcworkspace -scheme TestApp -configuration Debug -sdk iphonesimulator CC=clang CPLUSPLUS=clang++ LD=clang LDPLUSPLUS=clang++ GCC_OPTIMIZATION_LEVEL=0 GCC_PRECOMPILE_PREFIX_HEADER=YES ASSETCATALOG_COMPILER_OPTIMIZATION=time DEBUG_INFORMATION_FORMAT=dwarf COMPILER_INDEX_STORE_ENABLE=NO",
46
46
  "TestApp": "yarn --cwd TestApp"
@@ -48,5 +48,5 @@ Pod::Spec.new do |s|
48
48
  end
49
49
  end
50
50
 
51
- s.dependency 'KlarnaMobileSDK', '2.7.2'
51
+ s.dependency 'KlarnaMobileSDK', '2.8.1'
52
52
  end
@@ -41,6 +41,10 @@ export class KlarnaCheckoutView extends Component<
41
41
  this.isCheckoutViewReady = false;
42
42
  }
43
43
 
44
+ componentWillUnmount() {
45
+ this.isCheckoutViewReady = false;
46
+ }
47
+
44
48
  render() {
45
49
  return (
46
50
  <RNKlarnaCheckoutView
@@ -101,13 +105,13 @@ export class KlarnaCheckoutView extends Component<
101
105
  ) => {
102
106
  const newHeight = Number(event.nativeEvent.height);
103
107
  if (newHeight !== this.state.nativeViewHeight) {
104
- console.log('onResized', newHeight);
108
+ console.log(`onResized: new height is ${newHeight}`);
105
109
  this.setState({ nativeViewHeight: newHeight });
106
110
  }
107
111
  }}
108
112
  onCheckoutViewReady={() => {
109
113
  this.isCheckoutViewReady = true;
110
- console.log('onCheckoutViewReady');
114
+ console.log('Native checkout view is ready.');
111
115
  if (this.snippet) {
112
116
  console.log('Setting the snippet...');
113
117
  this.setSnippet(this.snippet);
@@ -123,6 +127,10 @@ export class KlarnaCheckoutView extends Component<
123
127
  const view = this.checkoutViewRef.current;
124
128
  if (view != null && this.isCheckoutViewReady) {
125
129
  RNKlarnaCheckoutViewCommands.setSnippet(view, snippet);
130
+ } else {
131
+ console.log(
132
+ 'setSnippet: checkout view is not ready yet. Will set snippet once ready.'
133
+ );
126
134
  }
127
135
  };
128
136
 
@@ -130,6 +138,8 @@ export class KlarnaCheckoutView extends Component<
130
138
  const view = this.checkoutViewRef.current;
131
139
  if (view != null && this.isCheckoutViewReady) {
132
140
  RNKlarnaCheckoutViewCommands.suspend(view);
141
+ } else {
142
+ console.log('suspend: checkout view is not ready.');
133
143
  }
134
144
  };
135
145
 
@@ -137,6 +147,8 @@ export class KlarnaCheckoutView extends Component<
137
147
  const view = this.checkoutViewRef.current;
138
148
  if (view != null && this.isCheckoutViewReady) {
139
149
  RNKlarnaCheckoutViewCommands.resume(view);
150
+ } else {
151
+ console.log('resume: checkout view is not ready.');
140
152
  }
141
153
  };
142
154
  }