@usercentrics/react-native-sdk 2.3.0 → 2.4.0

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.
Files changed (31) hide show
  1. package/CHANGELOG.md +17 -1
  2. package/android/build.gradle +1 -1
  3. package/android/src/androidTest/java/com/usercentrics/reactnativemodule/RNUsercentricsModuleTest.kt +10 -5
  4. package/android/src/androidTest/java/com/usercentrics/reactnativemodule/api/FakeUsercentricsProxy.kt +4 -11
  5. package/android/src/androidTest/java/com/usercentrics/reactnativemodule/mock/GetTCFDataMock.kt +3 -1
  6. package/android/src/main/java/com/usercentrics/reactnativeusercentrics/RNUsercentricsModule.kt +12 -26
  7. package/android/src/main/java/com/usercentrics/reactnativeusercentrics/api/UsercentricsProxy.kt +12 -42
  8. package/android/src/main/java/com/usercentrics/reactnativeusercentrics/extensions/FirstLayerOptionsExtensions.kt +26 -2
  9. package/android/src/main/java/com/usercentrics/reactnativeusercentrics/extensions/TCFDataExtensions.kt +2 -1
  10. package/ios/Extensions/BannerSettings+Dict.swift +42 -2
  11. package/ios/Manager/UsercentricsManager.swift +8 -14
  12. package/ios/RNUsercentricsModule.swift +20 -20
  13. package/lib/Usercentrics.d.ts +3 -0
  14. package/lib/Usercentrics.js +3 -0
  15. package/lib/Usercentrics.js.map +1 -1
  16. package/lib/models/BannerSettings.d.ts +11 -1
  17. package/lib/models/BannerSettings.js +11 -1
  18. package/lib/models/BannerSettings.js.map +1 -1
  19. package/lib/models/FirstLayerOptions.d.ts +1 -2
  20. package/lib/models/FirstLayerOptions.js +1 -2
  21. package/lib/models/FirstLayerOptions.js.map +1 -1
  22. package/lib/models/SecondLayerOptions.d.ts +7 -3
  23. package/lib/models/SecondLayerOptions.js +6 -1
  24. package/lib/models/SecondLayerOptions.js.map +1 -1
  25. package/lib/models/TCFData.d.ts +2 -1
  26. package/lib/models/TCFData.js +2 -1
  27. package/lib/models/TCFData.js.map +1 -1
  28. package/lib/models/index.d.ts +2 -2
  29. package/lib/models/index.js +2 -2
  30. package/lib/models/index.js.map +1 -1
  31. package/package.json +2 -2
package/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  [Release Notes](https://docs.usercentrics.com/cmp_in_app_sdk/latest/about/history/)
2
2
 
3
+ # 2.4.0
4
+
5
+ ## Features
6
+
7
+ - **[Customization]** You now have full control over the appearance of the First & Second Layer via our Admin Interface Style options and our Programmatic API. We have updated and extended our Programmatic API to simplify banner customization.
8
+ - **[UI]** Legal links are now added to our the First Layer, and can be hidden or shown as desired via programmatic API.
9
+ - **[CCPA]** Consent button can now be customized via the Admin Interface.
10
+
11
+ ## Improvements
12
+
13
+ - Improve initialization flow for stability and avoid edge case crashes.
14
+
15
+ ## Resolved Issues
16
+
17
+ - Solve stability issues and bug fixes.
18
+
3
19
  # 2.3.0
4
20
 
5
21
  ## Features
@@ -55,4 +71,4 @@
55
71
 
56
72
  # 2.0.1
57
73
 
58
- - Initial version of the library.
74
+ - Initial version of the library.
@@ -1,4 +1,4 @@
1
- def usercentrics_version = "2.3.0"
1
+ def usercentrics_version = "2.4.0"
2
2
  version usercentrics_version
3
3
 
4
4
  buildscript {
@@ -19,6 +19,7 @@ import com.usercentrics.sdk.models.common.UsercentricsLoggerLevel
19
19
  import com.usercentrics.sdk.models.common.UsercentricsVariant
20
20
  import com.usercentrics.sdk.models.settings.UsercentricsConsentType
21
21
  import com.usercentrics.sdk.services.tcf.TCFDecisionUILayer
22
+ import com.usercentrics.sdk.services.tcf.interfaces.TCFData
22
23
  import io.mockk.every
23
24
  import io.mockk.mockk
24
25
  import io.mockk.verify
@@ -207,7 +208,9 @@ class RNUsercentricsModuleTest {
207
208
  @Test
208
209
  fun testGetTCString() {
209
210
  val usercentricsSDK = mockk<UsercentricsSDK>()
210
- every { usercentricsSDK.getTCString() }.returns("abc")
211
+ every { usercentricsSDK.getTCString(any()) }.answers {
212
+ firstArg<(String) -> Unit>().invoke("abc")
213
+ }
211
214
  val usercentricsProxy = FakeUsercentricsProxy(usercentricsSDK)
212
215
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
213
216
  val module = RNUsercentricsModule(contextMock, usercentricsProxy)
@@ -215,7 +218,7 @@ class RNUsercentricsModuleTest {
215
218
 
216
219
  module.getTCFString(promise)
217
220
 
218
- verify(exactly = 1) { usercentricsSDK.getTCString() }
221
+ verify(exactly = 1) { usercentricsSDK.getTCString(any()) }
219
222
  assertEquals("abc", promise.resolveValue)
220
223
  }
221
224
 
@@ -306,7 +309,9 @@ class RNUsercentricsModuleTest {
306
309
  @Test
307
310
  fun testGetTCFData() {
308
311
  val usercentricsSDK = mockk<UsercentricsSDK>()
309
- every { usercentricsSDK.getTCFData() }.returns(GetTCFDataMock.fake)
312
+ every { usercentricsSDK.getTCFData(any()) }.answers {
313
+ firstArg<(TCFData) -> Unit>().invoke(GetTCFDataMock.fake)
314
+ }
310
315
 
311
316
  val usercentricsProxy = FakeUsercentricsProxy(usercentricsSDK)
312
317
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
@@ -317,7 +322,7 @@ class RNUsercentricsModuleTest {
317
322
 
318
323
  val result = promise.resolveValue
319
324
 
320
- verify(exactly = 1) { usercentricsSDK.getTCFData() }
325
+ verify(exactly = 1) { usercentricsSDK.getTCFData(any()) }
321
326
  assertEquals(GetTCFDataMock.expected.toWritableMap(), result)
322
327
  }
323
328
 
@@ -590,4 +595,4 @@ class RNUsercentricsModuleTest {
590
595
 
591
596
  assertEquals(1, usercentricsProxy.resetCount)
592
597
  }
593
- }
598
+ }
@@ -53,19 +53,12 @@ internal class FakeUsercentricsProxy(
53
53
  var showFirstLayerBannerSettings: BannerSettings? = null
54
54
  var showFirstLayerStyle: FirstLayerStyleSettings? = null
55
55
 
56
- override fun showFirstLayer(
57
- activity: Activity,
58
- layout: UsercentricsLayout,
59
- bannerSettings: BannerSettings?,
60
- firstLayerStyleSettings: FirstLayerStyleSettings?,
61
- promise: Promise
62
- ) {
56
+ override fun showFirstLayer(activity: Activity, layout: UsercentricsLayout, bannerSettings: BannerSettings?, promise: Promise) {
63
57
  this.showFirstLayerLayout = layout
64
58
  this.showFirstLayerBannerSettings = bannerSettings
65
- this.showFirstLayerStyle = firstLayerStyleSettings
59
+ this.showFirstLayerStyle = bannerSettings?.firstLayerSettings
66
60
  }
67
61
 
68
- override fun showSecondLayer() {
69
-
62
+ override fun showSecondLayer(activity: Activity, bannerSettings: BannerSettings?, promise: Promise) {
70
63
  }
71
- }
64
+ }
@@ -95,6 +95,7 @@ internal class GetTCFDataMock {
95
95
  dataSharedOutsideEU = false
96
96
  )
97
97
  ),
98
+ tcString = "abc"
98
99
  )
99
100
 
100
101
  // From the debugger
@@ -186,6 +187,7 @@ internal class GetTCFDataMock {
186
187
  "dataSharedOutsideEU" to false
187
188
  ),
188
189
  ),
190
+ "tcString" to "abc"
189
191
  )
190
192
  }
191
- }
193
+ }
@@ -46,18 +46,8 @@ internal class RNUsercentricsModule(
46
46
  val assetManager = currentActivity!!.assets
47
47
 
48
48
  val layout = options.getString("layout")!!.usercentricsLayoutFromEnumString()
49
- val bannerSettings =
50
- options.getMap("bannerSettings")?.bannerSettingsFromMap(assetManager)
51
- val styleSettings =
52
- options.getMap("styleSettings")?.firstLayerStyleSettingsFromMap(assetManager)
53
-
54
- usercentricsProxy.showFirstLayer(
55
- currentActivity!!,
56
- layout,
57
- bannerSettings,
58
- styleSettings,
59
- promise
60
- )
49
+ val bannerSettings = options.getMap("bannerSettings")?.bannerSettingsFromMap(assetManager)
50
+ usercentricsProxy.showFirstLayer(currentActivity!!, layout, bannerSettings, promise)
61
51
 
62
52
  } catch (e: Exception) {
63
53
  promise.reject(e)
@@ -71,17 +61,8 @@ internal class RNUsercentricsModule(
71
61
  try {
72
62
  val assetManager = currentActivity!!.assets
73
63
 
74
- val bannerSettings =
75
- options.getMap("bannerSettings")?.bannerSettingsFromMap(assetManager)
76
- val showCloseButton = options.getBoolean("showCloseButton")
77
-
78
-
79
- UsercentricsBanner(currentActivity!!, bannerSettings).showSecondLayer(
80
- showCloseButton
81
- ) {
82
- promise.resolve(it?.toWritableMap())
83
- }
84
-
64
+ val bannerSettings = options.getMap("bannerSettings")?.bannerSettingsFromMap(assetManager)
65
+ usercentricsProxy.showSecondLayer(currentActivity!!, bannerSettings, promise)
85
66
  } catch (e: Exception) {
86
67
  promise.reject(e)
87
68
  }
@@ -98,8 +79,11 @@ internal class RNUsercentricsModule(
98
79
  }
99
80
 
100
81
  @ReactMethod
82
+ @Deprecated("Please, call getTCFData() to get the 'tcString' from that model")
101
83
  fun getTCFString(promise: Promise) {
102
- promise.resolve(usercentricsProxy.instance.getTCString())
84
+ usercentricsProxy.instance.getTCString {
85
+ promise.resolve(it)
86
+ }
103
87
  }
104
88
 
105
89
  @ReactMethod
@@ -124,7 +108,9 @@ internal class RNUsercentricsModule(
124
108
 
125
109
  @ReactMethod
126
110
  fun getTCFData(promise: Promise) {
127
- promise.resolve(usercentricsProxy.instance.getTCFData().serialize())
111
+ usercentricsProxy.instance.getTCFData {
112
+ promise.resolve(it.serialize())
113
+ }
128
114
  }
129
115
 
130
116
  @ReactMethod
@@ -226,4 +212,4 @@ internal class RNUsercentricsModule(
226
212
  fun reset() {
227
213
  usercentricsProxy.reset()
228
214
  }
229
- }
215
+ }
@@ -2,38 +2,19 @@ package com.usercentrics.reactnativeusercentrics.api
2
2
 
3
3
  import android.app.Activity
4
4
  import android.content.Context
5
- import android.content.Intent
6
- import android.util.Log
7
5
  import com.facebook.react.bridge.Promise
8
- import com.facebook.react.bridge.ReadableMap
9
- import com.usercentrics.reactnativeusercentrics.extensions.bannerSettingsFromMap
10
- import com.usercentrics.reactnativeusercentrics.extensions.firstLayerStyleSettingsFromMap
11
6
  import com.usercentrics.reactnativeusercentrics.extensions.toWritableMap
12
- import com.usercentrics.reactnativeusercentrics.extensions.usercentricsLayoutFromEnumString
13
7
  import com.usercentrics.sdk.*
14
8
  import com.usercentrics.sdk.errors.UsercentricsError
15
- import java.lang.Exception
16
9
 
17
10
  interface UsercentricsProxy {
11
+
18
12
  val instance: UsercentricsSDK
19
13
 
20
14
  fun initialize(context: Context, options: UsercentricsOptions)
21
-
22
- fun isReady(
23
- onSuccess: (UsercentricsReadyStatus) -> Unit,
24
- onFailure: (UsercentricsError) -> Unit
25
- )
26
-
27
- fun showFirstLayer(
28
- activity: Activity,
29
- layout: UsercentricsLayout,
30
- bannerSettings: BannerSettings?,
31
- firstLayerStyleSettings: FirstLayerStyleSettings?,
32
- promise: Promise
33
- )
34
-
35
- fun showSecondLayer()
36
-
15
+ fun isReady(onSuccess: (UsercentricsReadyStatus) -> Unit, onFailure: (UsercentricsError) -> Unit)
16
+ fun showFirstLayer(activity: Activity, layout: UsercentricsLayout, bannerSettings: BannerSettings?, promise: Promise)
17
+ fun showSecondLayer(activity: Activity, bannerSettings: BannerSettings?, promise: Promise)
37
18
  fun reset()
38
19
  }
39
20
 
@@ -50,30 +31,19 @@ internal class UsercentricsProxyImpl : UsercentricsProxy {
50
31
  }
51
32
  }
52
33
 
53
- override fun isReady(
54
- onSuccess: (UsercentricsReadyStatus) -> Unit,
55
- onFailure: (UsercentricsError) -> Unit
56
- ) = Usercentrics.isReady(onSuccess, onFailure)
34
+ override fun isReady(onSuccess: (UsercentricsReadyStatus) -> Unit, onFailure: (UsercentricsError) -> Unit) = Usercentrics.isReady(onSuccess, onFailure)
57
35
 
58
- override fun showFirstLayer(
59
- activity: Activity,
60
- layout: UsercentricsLayout,
61
- bannerSettings: BannerSettings?,
62
- firstLayerStyleSettings: FirstLayerStyleSettings?,
63
- promise: Promise
64
- ) {
65
- UsercentricsBanner(activity, bannerSettings).showFirstLayer(
66
- layout,
67
- firstLayerStyleSettings
68
- ) {
36
+ override fun showFirstLayer(activity: Activity, layout: UsercentricsLayout, bannerSettings: BannerSettings?, promise: Promise) {
37
+ UsercentricsBanner(activity, bannerSettings).showFirstLayer(layout) {
69
38
  promise.resolve(it?.toWritableMap())
70
39
  }
71
40
  }
72
41
 
73
- override fun showSecondLayer() {
74
-
42
+ override fun showSecondLayer(activity: Activity, bannerSettings: BannerSettings?, promise: Promise) {
43
+ UsercentricsBanner(activity, bannerSettings).showSecondLayer {
44
+ promise.resolve(it?.toWritableMap())
45
+ }
75
46
  }
76
47
 
77
48
  override fun reset() = Usercentrics.reset()
78
-
79
- }
49
+ }
@@ -20,9 +20,16 @@ internal fun ReadableMap.bannerSettingsFromMap(assetManager: AssetManager): Bann
20
20
  val customFont = getMap("font")
21
21
  val customLogo = getMap("logo")
22
22
 
23
+ val rawFirstLayerStyleSettings = getMap("firstLayerSettings")
24
+ val rawSecondLayerStyleSettings = getMap("secondLayerSettings")
25
+ val rawLegalLinkSettings = getString("links")
26
+
23
27
  return BannerSettings(
24
- customFont?.bannerFontFromMap(assetManager),
25
- customLogo?.bannerLogoFromMap()
28
+ font = customFont?.bannerFontFromMap(assetManager),
29
+ logo = customLogo?.bannerLogoFromMap(),
30
+ firstLayerSettings = rawFirstLayerStyleSettings?.firstLayerStyleSettingsFromMap(assetManager),
31
+ secondLayerSettings = rawSecondLayerStyleSettings?.secondLayerStyleSettingsFromMap(assetManager),
32
+ links = rawLegalLinkSettings?.legalLinksFromEnumString()
26
33
  )
27
34
  }
28
35
 
@@ -146,6 +153,23 @@ internal fun String.deserializeButtonType(): ButtonType {
146
153
  return ButtonType.valueOf(this)
147
154
  }
148
155
 
156
+ internal fun ReadableMap.secondLayerStyleSettingsFromMap(assetManager: AssetManager): SecondLayerStyleSettings {
157
+ return SecondLayerStyleSettings(
158
+ buttonLayout = getMap("buttonLayout")?.buttonLayoutFromMap(assetManager),
159
+ showCloseButton = getBoolean("showCloseButton"),
160
+ )
161
+ }
162
+
163
+ internal fun String?.legalLinksFromEnumString(): LegalLinksSettings? {
164
+ return when (this) {
165
+ "BOTH" -> LegalLinksSettings.BOTH
166
+ "NONE" -> LegalLinksSettings.NONE
167
+ "FIRST_LAYER_ONLY" -> LegalLinksSettings.FIRST_LAYER_ONLY
168
+ "SECOND_LAYER_ONLY" -> LegalLinksSettings.SECOND_LAYER_ONLY
169
+ else -> null
170
+ }
171
+ }
172
+
149
173
  @ColorInt
150
174
  internal fun String.deserializeColor(): Int? {
151
175
  val colorString: String =
@@ -10,7 +10,8 @@ internal fun TCFData.serialize(): WritableMap {
10
10
  "specialFeatures" to specialFeatures.map { it.serialize() },
11
11
  "specialPurposes" to specialPurposes.map { it.serialize() },
12
12
  "stacks" to stacks.map { it.serialize() },
13
- "vendors" to vendors.map { it.serialize() }
13
+ "vendors" to vendors.map { it.serialize() },
14
+ "tcString" to tcString
14
15
  ).toWritableMap()
15
16
  }
16
17
 
@@ -5,8 +5,21 @@ extension BannerSettings {
5
5
  init?(from dictionary: NSDictionary?) {
6
6
  guard let dictionary = dictionary else { return nil }
7
7
 
8
- self.init(font: BannerFontHolder(from: dictionary["font"] as? NSDictionary)?.font,
9
- logo: UIImage(from: dictionary["logo"] as? NSDictionary))
8
+ let bannerFontHolder = BannerFontHolder(from: dictionary["font"] as? NSDictionary)
9
+
10
+ let firstLayerStyleSettingsDict = dictionary["firstLayerSettings"] as? NSDictionary
11
+ let firstLayerSettings = FirstLayerStyleSettings(from: firstLayerStyleSettingsDict, bannerFontHolder: bannerFontHolder)
12
+
13
+ let secondLayerStyleSettingsDict = dictionary["secondLayerSettings"] as? NSDictionary
14
+ let secondLayerSettings = SecondLayerStyleSettings(from: secondLayerStyleSettingsDict, bannerFontHolder: bannerFontHolder)
15
+
16
+ let links = LegalLinksSettings.from(enumString: dictionary["links"] as? String)
17
+
18
+ self.init(font: bannerFontHolder?.font,
19
+ logo: UIImage(from: dictionary["logo"] as? NSDictionary),
20
+ links: links,
21
+ firstLayerSettings: firstLayerSettings,
22
+ secondLayerSettings: secondLayerSettings)
10
23
  }
11
24
  }
12
25
 
@@ -62,6 +75,14 @@ extension FirstLayerStyleSettings {
62
75
  }
63
76
  }
64
77
 
78
+ extension SecondLayerStyleSettings {
79
+ init?(from dictionary: NSDictionary?, bannerFontHolder: BannerFontHolder?) {
80
+ guard let dictionary = dictionary else { return nil }
81
+
82
+ self.init(buttonLayout: ButtonLayout.from(dictionary: dictionary["buttonLayout"] as? NSDictionary, fallbackFont: bannerFontHolder?.boldFont),
83
+ showCloseButton: dictionary["showCloseButton"] as? Bool)
84
+ }
85
+ }
65
86
 
66
87
  extension HeaderImageSettings {
67
88
  static func from(dictionary: NSDictionary?) -> HeaderImageSettings? {
@@ -225,3 +246,22 @@ extension NSTextAlignment {
225
246
  }
226
247
  }
227
248
  }
249
+
250
+ extension LegalLinksSettings {
251
+ static func from(enumString: String?) -> LegalLinksSettings? {
252
+ guard let enumString = enumString else { return nil }
253
+
254
+ switch enumString {
255
+ case "BOTH":
256
+ return .both
257
+ case "FIRST_LAYER_ONLY":
258
+ return .firstLayerOnly
259
+ case "NONE":
260
+ return LegalLinksSettings.none
261
+ case "SECOND_LAYER_ONLY":
262
+ return .secondLayerOnly
263
+ default:
264
+ return nil
265
+ }
266
+ }
267
+ }
@@ -11,21 +11,19 @@ public protocol UsercentricsManager {
11
11
  func showFirstLayer(bannerSettings: BannerSettings?,
12
12
  hostView: UIViewController,
13
13
  layout: UsercentricsLayout,
14
- settings: FirstLayerStyleSettings?,
15
14
  dismissViewHandler: @escaping (UsercentricsConsentUserResponse) -> Void)
16
15
 
17
16
  func showSecondLayer(bannerSettings: BannerSettings?,
18
17
  hostView: UIViewController,
19
- showCloseButton: Bool,
20
18
  dismissViewHandler: @escaping (UsercentricsConsentUserResponse) -> Void)
21
19
 
22
- func getTCString() -> String
20
+ func getTCString(callback: @escaping (String) -> Void)
23
21
  func getControllerId() -> String
24
22
  func getConsents() -> [UsercentricsServiceConsent]
25
23
  func getCMPData() -> UsercentricsCMPData
26
24
  func getUserSessionData() -> String
27
25
  func getUSPData() -> CCPAData
28
- func getTCFData() -> TCFData
26
+ func getTCFData(callback: @escaping (TCFData) -> Void)
29
27
 
30
28
  func changeLanguage(language: String, onSuccess: @escaping (() -> Void), onFailure: @escaping ((Error) -> Void))
31
29
 
@@ -72,29 +70,25 @@ final class UsercentricsManagerImplementation: UsercentricsManager {
72
70
  func showFirstLayer(bannerSettings: BannerSettings?,
73
71
  hostView: UIViewController,
74
72
  layout: UsercentricsLayout,
75
- settings: FirstLayerStyleSettings?,
76
73
  dismissViewHandler: @escaping (UsercentricsConsentUserResponse) -> Void) {
77
74
  UsercentricsBanner(bannerSettings: bannerSettings).showFirstLayer(hostView: hostView,
78
75
  layout: layout,
79
- settings: settings,
80
76
  completionHandler: dismissViewHandler)
81
77
  }
82
78
 
83
79
  func showSecondLayer(bannerSettings: BannerSettings?,
84
80
  hostView: UIViewController,
85
- showCloseButton: Bool,
86
81
  dismissViewHandler: @escaping (UsercentricsConsentUserResponse) -> Void) {
87
- UsercentricsBanner(bannerSettings: bannerSettings).showSecondLayer(hostView: hostView,
88
- showCloseButton: showCloseButton,
89
- completionHandler: dismissViewHandler)
82
+ UsercentricsBanner(bannerSettings: bannerSettings).showSecondLayer(hostView: hostView, completionHandler: dismissViewHandler)
90
83
  }
91
84
 
92
85
  func restoreUserSession(controllerId: String, onSuccess: @escaping ((UsercentricsReadyStatus) -> Void), onFailure: @escaping ((Error) -> Void)) {
93
86
  UsercentricsCore.shared.restoreUserSession(controllerId: controllerId, onSuccess: onSuccess, onFailure: onFailure)
94
87
  }
95
88
 
96
- func getTCString() -> String {
97
- return UsercentricsCore.shared.getTCString()
89
+ @available(*, deprecated, message: "Please, call getTCFData() to get the 'tcString' from that model")
90
+ func getTCString(callback: @escaping (String) -> Void) {
91
+ UsercentricsCore.shared.getTCString(callback: callback)
98
92
  }
99
93
 
100
94
  func getControllerId() -> String {
@@ -117,8 +111,8 @@ final class UsercentricsManagerImplementation: UsercentricsManager {
117
111
  return UsercentricsCore.shared.getUSPData()
118
112
  }
119
113
 
120
- func getTCFData() -> TCFData {
121
- return UsercentricsCore.shared.getTCFData()
114
+ func getTCFData(callback: @escaping (TCFData) -> Void) {
115
+ UsercentricsCore.shared.getTCFData(callback: callback)
122
116
  }
123
117
 
124
118
  func changeLanguage(language: String, onSuccess: @escaping (() -> Void), onFailure: @escaping ((Error) -> Void)) {
@@ -24,16 +24,20 @@ class RNUsercentricsModule: NSObject, RCTBridgeModule {
24
24
  let self = self,
25
25
  let userOptions = UsercentricsOptions(from: dict)
26
26
  else { return }
27
-
27
+
28
28
  self.usercentricsManager.configure(options: userOptions)
29
29
  }
30
30
  }
31
-
31
+
32
32
  @objc func isReady(_ resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) -> Void {
33
- usercentricsManager.isReady { status in
34
- resolve(status.toDictionary())
35
- } onFailure: { error in
36
- reject("usercentrics_reactNative_isReady_error", error.localizedDescription, error)
33
+ queue.async { [weak self] in
34
+ guard let self = self else { return }
35
+
36
+ self.usercentricsManager.isReady { status in
37
+ resolve(status.toDictionary())
38
+ } onFailure: { error in
39
+ reject("usercentrics_reactNative_isReady_error", error.localizedDescription, error)
40
+ }
37
41
  }
38
42
  }
39
43
 
@@ -50,15 +54,9 @@ class RNUsercentricsModule: NSObject, RCTBridgeModule {
50
54
  }
51
55
 
52
56
  let bannerSettingsDict = dict["bannerSettings"] as? NSDictionary
53
- let styleSettingsDict = dict["styleSettings"] as? NSDictionary
54
-
55
- let bannerSettings = BannerSettings(from: bannerSettingsDict)
56
- let bannerFont = BannerFontHolder(from: bannerSettingsDict?["font"] as? NSDictionary)
57
-
58
- self.usercentricsManager.showFirstLayer(bannerSettings: bannerSettings,
57
+ self.usercentricsManager.showFirstLayer(bannerSettings: BannerSettings(from: bannerSettingsDict),
59
58
  hostView: rootVC as! UIViewController,
60
- layout: layout,
61
- settings: FirstLayerStyleSettings(from: styleSettingsDict, bannerFontHolder: bannerFont)) { response in
59
+ layout: layout) { response in
62
60
  resolve(response.toDictionary())
63
61
  }
64
62
  }
@@ -73,12 +71,10 @@ class RNUsercentricsModule: NSObject, RCTBridgeModule {
73
71
  reject("usercentrics_reactNative_showFirstLayer_error", RNUsercentricsModuleError.invalidData.localizedDescription, RNUsercentricsModuleError.invalidData)
74
72
  return
75
73
  }
76
- let bannerSettingsDict = dict["bannerSettings"] as? NSDictionary
77
- let showCloseButton = (dict["showCloseButton"] as? Bool) ?? false
78
74
 
75
+ let bannerSettingsDict = dict["bannerSettings"] as? NSDictionary
79
76
  self.usercentricsManager.showSecondLayer(bannerSettings: BannerSettings(from: bannerSettingsDict),
80
- hostView: rootVC as! UIViewController,
81
- showCloseButton: showCloseButton) { response in
77
+ hostView: rootVC as! UIViewController) { response in
82
78
  rootVC.dismiss(animated: true)
83
79
  resolve(response.toDictionary())
84
80
  }
@@ -98,7 +94,9 @@ class RNUsercentricsModule: NSObject, RCTBridgeModule {
98
94
  }
99
95
 
100
96
  @objc func getTCFString(_ resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) -> Void {
101
- resolve(usercentricsManager.getTCString())
97
+ usercentricsManager.getTCString { tcString in
98
+ resolve(tcString)
99
+ }
102
100
  }
103
101
 
104
102
  @objc func getControllerId(_ resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) -> Void {
@@ -114,7 +112,9 @@ class RNUsercentricsModule: NSObject, RCTBridgeModule {
114
112
  }
115
113
 
116
114
  @objc func getTCFData(_ resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) -> Void {
117
- resolve(usercentricsManager.getTCFData().toDictionary())
115
+ usercentricsManager.getTCFData { tcfData in
116
+ resolve(tcfData.toDictionary())
117
+ }
118
118
  }
119
119
 
120
120
  @objc func getUserSessionData(_ resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) -> Void {
@@ -6,6 +6,9 @@ export declare const Usercentrics: {
6
6
  showSecondLayer: (options: SecondLayerOptions) => Promise<UsercentricsConsentUserResponse>;
7
7
  restoreUserSession: (controllerId: string) => Promise<UsercentricsReadyStatus>;
8
8
  getControllerId: () => Promise<string>;
9
+ /**
10
+ * @deprecated Please, call getTCFData() to get the 'tcString' from that model
11
+ */
9
12
  getTCFString: () => Promise<string>;
10
13
  getConsents: () => Promise<[UsercentricsServiceConsent]>;
11
14
  getCMPData: () => Promise<UsercentricsCMPData>;
@@ -23,6 +23,9 @@ export const Usercentrics = {
23
23
  await RNUsercentricsModule.isReady();
24
24
  return RNUsercentricsModule.getControllerId();
25
25
  },
26
+ /**
27
+ * @deprecated Please, call getTCFData() to get the 'tcString' from that model
28
+ */
26
29
  getTCFString: async () => {
27
30
  await RNUsercentricsModule.isReady();
28
31
  return RNUsercentricsModule.getTCFString();
@@ -1 +1 @@
1
- {"version":3,"file":"Usercentrics.js","sourceRoot":"","sources":["../src/Usercentrics.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Usercentrics.js","sourceRoot":"","sources":["../src/Usercentrics.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { ImageResolvedAssetSource } from "react-native";
2
+ import { FirstLayerStyleSettings, SecondLayerStyleSettings } from ".";
2
3
  export declare class BannerLogo {
3
4
  logoName: string;
4
5
  logoPath: string;
@@ -11,8 +12,17 @@ export declare class BannerFont {
11
12
  fontSize: number;
12
13
  constructor(regularFont: string, boldFont: string, fontSize: number);
13
14
  }
15
+ export declare enum LegalLinksSettings {
16
+ firstLayerOnly = "FIRST_LAYER_ONLY",
17
+ secondLayerOnly = "SECOND_LAYER_ONLY",
18
+ both = "BOTH",
19
+ none = "NONE"
20
+ }
14
21
  export declare class BannerSettings {
15
22
  logo?: BannerLogo;
16
23
  font?: BannerFont;
17
- constructor(logo?: BannerLogo, font?: BannerFont);
24
+ links?: LegalLinksSettings;
25
+ firstLayerSettings?: FirstLayerStyleSettings;
26
+ secondLayerSettings?: SecondLayerStyleSettings;
27
+ constructor(logo?: BannerLogo, font?: BannerFont, links?: LegalLinksSettings, firstLayerSettings?: FirstLayerStyleSettings, secondLayerSettings?: SecondLayerStyleSettings);
18
28
  }
@@ -12,10 +12,20 @@ export class BannerFont {
12
12
  this.fontSize = fontSize;
13
13
  }
14
14
  }
15
+ export var LegalLinksSettings;
16
+ (function (LegalLinksSettings) {
17
+ LegalLinksSettings["firstLayerOnly"] = "FIRST_LAYER_ONLY";
18
+ LegalLinksSettings["secondLayerOnly"] = "SECOND_LAYER_ONLY";
19
+ LegalLinksSettings["both"] = "BOTH";
20
+ LegalLinksSettings["none"] = "NONE";
21
+ })(LegalLinksSettings || (LegalLinksSettings = {}));
15
22
  export class BannerSettings {
16
- constructor(logo, font) {
23
+ constructor(logo, font, links, firstLayerSettings, secondLayerSettings) {
17
24
  this.logo = logo;
18
25
  this.font = font;
26
+ this.links = links;
27
+ this.firstLayerSettings = firstLayerSettings;
28
+ this.secondLayerSettings = secondLayerSettings;
19
29
  }
20
30
  }
21
31
  //# sourceMappingURL=BannerSettings.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BannerSettings.js","sourceRoot":"","sources":["../../src/models/BannerSettings.tsx"],"names":[],"mappings":"AAEA,MAAM,OAAO,UAAU;IAKnB,YAAY,QAAgB,EAAE,QAAkC,EAAE,OAAgB;QAC9E,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;CACJ;AAED,MAAM,OAAO,UAAU;IAKnB,YAAY,WAAmB,EAAE,QAAgB,EAAE,QAAgB;QAC/D,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC7B,CAAC;CACJ;AAED,MAAM,OAAO,cAAc;IAIvB,YAAY,IAAiB,EAAE,IAAiB;QAC5C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;CACJ"}
1
+ {"version":3,"file":"BannerSettings.js","sourceRoot":"","sources":["../../src/models/BannerSettings.tsx"],"names":[],"mappings":"AAGA,MAAM,OAAO,UAAU;IAKnB,YAAY,QAAgB,EAAE,QAAkC,EAAE,OAAgB;QAC9E,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;CACJ;AAED,MAAM,OAAO,UAAU;IAKnB,YAAY,WAAmB,EAAE,QAAgB,EAAE,QAAgB;QAC/D,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC7B,CAAC;CACJ;AAED,MAAM,CAAN,IAAY,kBAKX;AALD,WAAY,kBAAkB;IAC1B,yDAAmC,CAAA;IACnC,2DAAqC,CAAA;IACrC,mCAAa,CAAA;IACb,mCAAa,CAAA;AACjB,CAAC,EALW,kBAAkB,KAAlB,kBAAkB,QAK7B;AAED,MAAM,OAAO,cAAc;IAOvB,YAAY,IAAiB,EAAE,IAAiB,EAAE,KAA0B,EAChE,kBAA4C,EAAE,mBAA8C;QACpG,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;IACnD,CAAC;CACJ"}
@@ -2,8 +2,7 @@ import { BannerLogo, BannerSettings } from ".";
2
2
  export declare class FirstLayerOptions {
3
3
  layout: UsercentricsLayout;
4
4
  bannerSettings?: BannerSettings;
5
- styleSettings?: FirstLayerStyleSettings;
6
- constructor(layout: UsercentricsLayout, bannerSettings?: BannerSettings, styleSettings?: FirstLayerStyleSettings);
5
+ constructor(layout: UsercentricsLayout, bannerSettings?: BannerSettings);
7
6
  }
8
7
  export declare class FirstLayerStyleSettings {
9
8
  headerImage?: HeaderImageSettings;
@@ -1,8 +1,7 @@
1
1
  export class FirstLayerOptions {
2
- constructor(layout, bannerSettings, styleSettings) {
2
+ constructor(layout, bannerSettings) {
3
3
  this.layout = layout;
4
4
  this.bannerSettings = bannerSettings;
5
- this.styleSettings = styleSettings;
6
5
  }
7
6
  }
8
7
  export class FirstLayerStyleSettings {
@@ -1 +1 @@
1
- {"version":3,"file":"FirstLayerOptions.js","sourceRoot":"","sources":["../../src/models/FirstLayerOptions.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FirstLayerOptions.js","sourceRoot":"","sources":["../../src/models/FirstLayerOptions.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,10 @@
1
- import { BannerSettings } from ".";
1
+ import { BannerSettings, ButtonLayout } from ".";
2
2
  export declare class SecondLayerOptions {
3
3
  bannerSettings?: BannerSettings;
4
- showCloseButton: Boolean;
5
- constructor(showCloseButton: Boolean, bannerSettings?: BannerSettings);
4
+ constructor(bannerSettings?: BannerSettings);
5
+ }
6
+ export declare class SecondLayerStyleSettings {
7
+ buttonLayout?: ButtonLayout;
8
+ showCloseButton?: Boolean;
9
+ constructor(buttonLayout?: ButtonLayout, showCloseButton?: Boolean);
6
10
  }
@@ -1,6 +1,11 @@
1
1
  export class SecondLayerOptions {
2
- constructor(showCloseButton, bannerSettings) {
2
+ constructor(bannerSettings) {
3
3
  this.bannerSettings = bannerSettings;
4
+ }
5
+ }
6
+ export class SecondLayerStyleSettings {
7
+ constructor(buttonLayout, showCloseButton) {
8
+ this.buttonLayout = buttonLayout;
4
9
  this.showCloseButton = showCloseButton;
5
10
  }
6
11
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SecondLayerOptions.js","sourceRoot":"","sources":["../../src/models/SecondLayerOptions.tsx"],"names":[],"mappings":"AAEA,MAAM,OAAO,kBAAkB;IAI3B,YAAY,eAAwB,EAAE,cAA+B;QACjE,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;IAC3C,CAAC;CACJ"}
1
+ {"version":3,"file":"SecondLayerOptions.js","sourceRoot":"","sources":["../../src/models/SecondLayerOptions.tsx"],"names":[],"mappings":"AAEA,MAAM,OAAO,kBAAkB;IAG3B,YAAY,cAA+B;QACvC,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACzC,CAAC;CACJ;AAED,MAAM,OAAO,wBAAwB;IAIjC,YAAY,YAA2B,EAAE,eAAyB;QAC9D,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;IAC3C,CAAC;CACJ"}
@@ -5,7 +5,8 @@ export declare class TCFData {
5
5
  specialPurposes: TCFSpecialPurpose[];
6
6
  stacks: TCFStack[];
7
7
  vendors: TCFVendor[];
8
- constructor(features: TCFFeature[], purposes: TCFPurpose[], specialFeatures: TCFSpecialFeature[], specialPurposes: TCFSpecialPurpose[], stacks: TCFStack[], vendors: TCFVendor[]);
8
+ tcString: String;
9
+ constructor(features: TCFFeature[], purposes: TCFPurpose[], specialFeatures: TCFSpecialFeature[], specialPurposes: TCFSpecialPurpose[], stacks: TCFStack[], vendors: TCFVendor[], tcString: String);
9
10
  }
10
11
  export declare class TCFFeature {
11
12
  purposeDescription: string;
@@ -1,11 +1,12 @@
1
1
  export class TCFData {
2
- constructor(features, purposes, specialFeatures, specialPurposes, stacks, vendors) {
2
+ constructor(features, purposes, specialFeatures, specialPurposes, stacks, vendors, tcString) {
3
3
  this.features = features;
4
4
  this.purposes = purposes;
5
5
  this.specialFeatures = specialFeatures;
6
6
  this.specialPurposes = specialPurposes;
7
7
  this.stacks = stacks;
8
8
  this.vendors = vendors;
9
+ this.tcString = tcString;
9
10
  }
10
11
  }
11
12
  export class TCFFeature {
@@ -1 +1 @@
1
- {"version":3,"file":"TCFData.js","sourceRoot":"","sources":["../../src/models/TCFData.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TCFData.js","sourceRoot":"","sources":["../../src/models/TCFData.tsx"],"names":[],"mappings":"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"}
@@ -13,5 +13,5 @@ export { TCFDecisionUILayer } from './TCFDecisionUILayer';
13
13
  export { UserDecision } from './UserDecision';
14
14
  export { TCFUserDecisions, TCFUserDecisionOnPurpose, TCFUserDecisionOnSpecialFeature, TCFUserDecisionOnVendor } from './TCFUserDecisions';
15
15
  export { FirstLayerOptions, FirstLayerStyleSettings, HeaderImageSettings, TitleSettings, SectionAlignment, MessageSettings, UsercentricsLayout, ButtonLayout, ButtonType, ButtonSettings } from './FirstLayerOptions';
16
- export { SecondLayerOptions } from './SecondLayerOptions';
17
- export { BannerSettings, BannerFont, BannerLogo } from "./BannerSettings";
16
+ export { SecondLayerOptions, SecondLayerStyleSettings } from './SecondLayerOptions';
17
+ export { BannerSettings, BannerFont, BannerLogo, LegalLinksSettings } from "./BannerSettings";
@@ -13,6 +13,6 @@ export { TCFDecisionUILayer } from './TCFDecisionUILayer';
13
13
  export { UserDecision } from './UserDecision';
14
14
  export { TCFUserDecisions, TCFUserDecisionOnPurpose, TCFUserDecisionOnSpecialFeature, TCFUserDecisionOnVendor } from './TCFUserDecisions';
15
15
  export { FirstLayerOptions, FirstLayerStyleSettings, HeaderImageSettings, TitleSettings, SectionAlignment, MessageSettings, UsercentricsLayout, ButtonLayout, ButtonType, ButtonSettings } from './FirstLayerOptions';
16
- export { SecondLayerOptions } from './SecondLayerOptions';
17
- export { BannerSettings, BannerFont, BannerLogo } from "./BannerSettings";
16
+ export { SecondLayerOptions, SecondLayerStyleSettings } from './SecondLayerOptions';
17
+ export { BannerSettings, BannerFont, BannerLogo, LegalLinksSettings } from "./BannerSettings";
18
18
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/models/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC;AACpF,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,+BAA+B,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC1I,OAAO,EACH,iBAAiB,EACjB,uBAAuB,EACvB,mBAAmB,EACnB,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,UAAU,EACV,cAAc,EACjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/models/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC;AACpF,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,+BAA+B,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC1I,OAAO,EACH,iBAAiB,EACjB,uBAAuB,EACvB,mBAAmB,EACnB,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,UAAU,EACV,cAAc,EACjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AACpF,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC"}
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "@usercentrics/react-native-sdk",
3
- "version": "2.3.0",
3
+ "version": "2.4.0",
4
4
  "description": "Usercentrics SDK",
5
5
  "homepage": "https://usercentrics.com",
6
6
  "main": "lib/index.js",
7
7
  "types": "lib/index.d.ts",
8
8
  "author": "Usercentrics <developer@usercentrics.com>",
9
9
  "iosPackageName": "react-native-usercentrics",
10
- "iosPackageVersion": "2.3.0",
10
+ "iosPackageVersion": "2.4.0",
11
11
  "license": "SEE LICENSE IN LICENSE",
12
12
  "files": [
13
13
  "android",