@usercentrics/react-native-sdk 2.7.4 → 2.7.6

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 (33) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/android/build.gradle +1 -1
  3. package/android/src/androidTest/java/com/usercentrics/reactnativemodule/RNUsercentricsModuleTest.kt +72 -4
  4. package/android/src/androidTest/java/com/usercentrics/reactnativemodule/api/FakeUsercentricsProxy.kt +6 -5
  5. package/android/src/androidTest/java/com/usercentrics/reactnativemodule/fake/FakePromise.kt +9 -1
  6. package/android/src/main/java/com/usercentrics/reactnativeusercentrics/RNUsercentricsModule.kt +14 -5
  7. package/android/src/main/java/com/usercentrics/reactnativeusercentrics/api/UsercentricsProxy.kt +21 -6
  8. package/android/src/main/java/com/usercentrics/reactnativeusercentrics/extensions/{FirstLayerOptionsExtensions.kt → BannerSettingsExtensions.kt} +9 -4
  9. package/android/src/main/java/com/usercentrics/reactnativeusercentrics/extensions/CCPADataExtensions.kt +1 -1
  10. package/android/src/main/java/com/usercentrics/reactnativeusercentrics/extensions/ReadableMapExtensions.kt +0 -2
  11. package/android/src/main/java/com/usercentrics/reactnativeusercentrics/extensions/UsercentricsCMPDataExtensions.kt +1 -1
  12. package/ios/Extensions/BannerSettings+Dict.swift +36 -24
  13. package/ios/Manager/UsercentricsManager.swift +12 -10
  14. package/ios/RNUsercentricsModule.m +5 -0
  15. package/ios/RNUsercentricsModule.swift +13 -34
  16. package/lib/Usercentrics.d.ts +5 -3
  17. package/lib/Usercentrics.js +9 -1
  18. package/lib/Usercentrics.js.map +1 -1
  19. package/lib/models/BannerSettings.d.ts +2 -1
  20. package/lib/models/BannerSettings.js +2 -1
  21. package/lib/models/BannerSettings.js.map +1 -1
  22. package/lib/models/{FirstLayerOptions.d.ts → FirstLayerSettings.d.ts} +3 -7
  23. package/lib/models/{FirstLayerOptions.js → FirstLayerSettings.js} +3 -8
  24. package/lib/models/FirstLayerSettings.js.map +1 -0
  25. package/lib/models/{SecondLayerOptions.d.ts → SecondLayerSettings.d.ts} +1 -5
  26. package/lib/models/{SecondLayerOptions.js → SecondLayerSettings.js} +1 -6
  27. package/lib/models/SecondLayerSettings.js.map +1 -0
  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
  32. package/lib/models/FirstLayerOptions.js.map +0 -1
  33. package/lib/models/SecondLayerOptions.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -1,4 +1,26 @@
1
1
  [Release Notes](https://docs.usercentrics.com/cmp_in_app_sdk/latest/about/history/)
2
+ ### 2.7.6
3
+
4
+ ## Improvements
5
+
6
+ * Major improvements to main thread use.
7
+
8
+ ## Resolved Issues
9
+
10
+ * [Android] Resolve NPE crash happening in edge cases.
11
+ * Stability improvements.
12
+
13
+ ### 2.7.5
14
+
15
+ ## Improvements
16
+
17
+ * Major improvements to main thread use.
18
+
19
+ ## Resolved Issues
20
+
21
+ * [Android] Resolve NPE crash happening in edge cases.
22
+ * Stability improvements.
23
+
2
24
  # 2.7.4
3
25
 
4
26
  ## Features
@@ -1,4 +1,4 @@
1
- def usercentrics_version = "2.7.4"
1
+ def usercentrics_version = "2.7.6"
2
2
  version usercentrics_version
3
3
 
4
4
  buildscript {
@@ -2,10 +2,7 @@ package com.usercentrics.reactnativemodule
2
2
 
3
3
  import androidx.test.ext.junit.runners.AndroidJUnit4
4
4
  import androidx.test.platform.app.InstrumentationRegistry
5
- import com.facebook.react.bridge.JavaOnlyMap
6
- import com.facebook.react.bridge.ReactApplicationContext
7
- import com.facebook.react.bridge.WritableArray
8
- import com.facebook.react.bridge.WritableMap
5
+ import com.facebook.react.bridge.*
9
6
  import com.facebook.soloader.SoLoader
10
7
  import com.usercentrics.reactnativemodule.api.FakeUsercentricsProxy
11
8
  import com.usercentrics.reactnativemodule.fake.FakePromise
@@ -42,6 +39,26 @@ class RNUsercentricsModuleTest {
42
39
  putInt("networkMode", 1)
43
40
  }
44
41
 
42
+ private val bannerSettingsMap = mapOf(
43
+ "variant" to null,
44
+ "firstLayerStyleSettings" to mapOf(
45
+ "layout" to "POPUP_CENTER",
46
+ ),
47
+ "secondLayerStyleSettings" to mapOf(
48
+ "showCloseButton" to true,
49
+ ),
50
+ "generalStyleSettings" to null
51
+ )
52
+
53
+ private val expectedBannerSettings = BannerSettings(
54
+ firstLayerStyleSettings = FirstLayerStyleSettings(
55
+ layout = UsercentricsLayout.Popup(
56
+ PopupPosition.CENTER
57
+ )
58
+ ),
59
+ secondLayerStyleSettings = SecondLayerStyleSettings(showCloseButton = true),
60
+ )
61
+
45
62
  private val usercentricsConsentHistoryEntries = listOf(
46
63
  UsercentricsConsentHistoryEntry(
47
64
  status = false,
@@ -210,6 +227,21 @@ class RNUsercentricsModuleTest {
210
227
  assertEquals("abc", promise.resolveValue)
211
228
  }
212
229
 
230
+ @Test
231
+ fun testGetABTestingVariant() {
232
+ val usercentricsSDK = mockk<UsercentricsSDK>()
233
+ every { usercentricsSDK.getABTestingVariant() }.returns("variantA")
234
+ val usercentricsProxy = FakeUsercentricsProxy(usercentricsSDK)
235
+ val contextMock = mockk<ReactApplicationContext>(relaxed = true)
236
+ val module = RNUsercentricsModule(contextMock, usercentricsProxy)
237
+ val promise = FakePromise()
238
+
239
+ module.getABTestingVariant(promise)
240
+
241
+ verify(exactly = 1) { usercentricsSDK.getABTestingVariant() }
242
+ assertEquals("variantA", promise.resolveValue)
243
+ }
244
+
213
245
  @Test
214
246
  fun testGetConsents() {
215
247
  val usercentricsSDK = mockk<UsercentricsSDK>()
@@ -294,6 +326,20 @@ class RNUsercentricsModuleTest {
294
326
  verify(exactly = 1) { usercentricsSDK.setCMPId(123) }
295
327
  }
296
328
 
329
+ @Test
330
+ fun testSetABTestingVariant() {
331
+ val usercentricsSDK = mockk<UsercentricsSDK>()
332
+ every { usercentricsSDK.setABTestingVariant("variantA") }.returns(Unit)
333
+
334
+ val usercentricsProxy = FakeUsercentricsProxy(usercentricsSDK)
335
+ val contextMock = mockk<ReactApplicationContext>(relaxed = true)
336
+ val module = RNUsercentricsModule(contextMock, usercentricsProxy)
337
+
338
+ module.setABTestingVariant("variantA")
339
+
340
+ verify(exactly = 1) { usercentricsSDK.setABTestingVariant("variantA") }
341
+ }
342
+
297
343
  @Test
298
344
  fun testGetTCFData() {
299
345
  val usercentricsSDK = mockk<UsercentricsSDK>()
@@ -582,4 +628,26 @@ class RNUsercentricsModuleTest {
582
628
 
583
629
  assertEquals(1, usercentricsProxy.resetCount)
584
630
  }
631
+
632
+ @Test
633
+ fun testShowFirstLayer() {
634
+ val usercentricsProxy = FakeUsercentricsProxy()
635
+ val contextMock = mockk<ReactApplicationContext>(relaxed = true)
636
+ val module = RNUsercentricsModule(contextMock, usercentricsProxy)
637
+ val promise = FakePromise()
638
+ module.showFirstLayer(bannerSettingsMap.toWritableMap(), promise)
639
+ promise.await()
640
+ assertEquals(expectedBannerSettings, usercentricsProxy.showFirstLayerBannerSettings)
641
+ }
642
+
643
+ @Test
644
+ fun testShowSecondLayer() {
645
+ val usercentricsProxy = FakeUsercentricsProxy()
646
+ val contextMock = mockk<ReactApplicationContext>(relaxed = true)
647
+ val module = RNUsercentricsModule(contextMock, usercentricsProxy)
648
+ val promise = FakePromise()
649
+ module.showSecondLayer(bannerSettingsMap.toWritableMap(), promise)
650
+ promise.await()
651
+ assertEquals(expectedBannerSettings, usercentricsProxy.showSecondLayerBannerSettings)
652
+ }
585
653
  }
@@ -49,16 +49,17 @@ internal class FakeUsercentricsProxy(
49
49
  resetCount++
50
50
  }
51
51
 
52
- var showFirstLayerLayout: UsercentricsLayout? = null
53
52
  var showFirstLayerBannerSettings: BannerSettings? = null
54
- var showFirstLayerStyle: FirstLayerStyleSettings? = null
55
53
 
56
- override fun showFirstLayer(activity: Activity, layout: UsercentricsLayout, bannerSettings: BannerSettings?, promise: Promise) {
57
- this.showFirstLayerLayout = layout
54
+ override fun showFirstLayer(activity: Activity, bannerSettings: BannerSettings?, promise: Promise) {
58
55
  this.showFirstLayerBannerSettings = bannerSettings
59
- this.showFirstLayerStyle = bannerSettings?.firstLayerStyleSettings
56
+ promise.resolve(null)
60
57
  }
61
58
 
59
+ var showSecondLayerBannerSettings: BannerSettings? = null
60
+
62
61
  override fun showSecondLayer(activity: Activity, bannerSettings: BannerSettings?, promise: Promise) {
62
+ this.showSecondLayerBannerSettings = bannerSettings
63
+ promise.resolve(null)
63
64
  }
64
65
  }
@@ -2,14 +2,22 @@ package com.usercentrics.reactnativemodule.fake
2
2
 
3
3
  import com.facebook.react.bridge.Promise
4
4
  import com.facebook.react.bridge.WritableMap
5
+ import java.util.concurrent.CountDownLatch
5
6
 
6
- internal class FakePromise: Promise {
7
+ internal class FakePromise : Promise {
7
8
 
8
9
  var resolveValue: Any? = null
9
10
  var rejectThrowable: Throwable? = null
10
11
 
12
+ val lock = CountDownLatch(1)
13
+
14
+ fun await() {
15
+ lock.await()
16
+ }
17
+
11
18
  override fun resolve(value: Any?) {
12
19
  this.resolveValue = value
20
+ lock.countDown()
13
21
  }
14
22
 
15
23
  override fun reject(code: String?, message: String?) {
@@ -16,7 +16,7 @@ internal class RNUsercentricsModule(
16
16
 
17
17
  @ReactMethod
18
18
  fun configure(options: ReadableMap) {
19
- val usercentricsOptions = options.usercentricsOptionsFromMap() ?: return
19
+ val usercentricsOptions = options.usercentricsOptionsFromMap()
20
20
  usercentricsProxy.initialize(reactApplicationContext, usercentricsOptions)
21
21
  }
22
22
 
@@ -35,9 +35,8 @@ internal class RNUsercentricsModule(
35
35
  try {
36
36
  val assetManager = currentActivity!!.assets
37
37
 
38
- val layout = options.getString("layout")!!.usercentricsLayoutFromEnumString()
39
- val bannerSettings = options.getMap("bannerSettings")?.bannerSettingsFromMap(assetManager)
40
- usercentricsProxy.showFirstLayer(currentActivity!!, layout, bannerSettings, promise)
38
+ val bannerSettings = options.bannerSettingsFromMap(assetManager)
39
+ usercentricsProxy.showFirstLayer(currentActivity!!, bannerSettings, promise)
41
40
 
42
41
  } catch (e: Exception) {
43
42
  promise.reject(e)
@@ -51,7 +50,7 @@ internal class RNUsercentricsModule(
51
50
  try {
52
51
  val assetManager = currentActivity!!.assets
53
52
 
54
- val bannerSettings = options.getMap("bannerSettings")?.bannerSettingsFromMap(assetManager)
53
+ val bannerSettings = options.bannerSettingsFromMap(assetManager)
55
54
  usercentricsProxy.showSecondLayer(currentActivity!!, bannerSettings, promise)
56
55
  } catch (e: Exception) {
57
56
  promise.reject(e)
@@ -73,6 +72,11 @@ internal class RNUsercentricsModule(
73
72
  promise.resolve(usercentricsProxy.instance.getControllerId())
74
73
  }
75
74
 
75
+ @ReactMethod
76
+ fun getABTestingVariant(promise: Promise) {
77
+ promise.resolve(usercentricsProxy.instance.getABTestingVariant())
78
+ }
79
+
76
80
  @ReactMethod
77
81
  fun getConsents(promise: Promise) {
78
82
  promise.resolve(usercentricsProxy.instance.getConsents().toWritableArray())
@@ -88,6 +92,11 @@ internal class RNUsercentricsModule(
88
92
  usercentricsProxy.instance.setCMPId(id)
89
93
  }
90
94
 
95
+ @ReactMethod
96
+ fun setABTestingVariant(variant: String) {
97
+ usercentricsProxy.instance.setABTestingVariant(variant)
98
+ }
99
+
91
100
  @ReactMethod
92
101
  fun getTCFData(promise: Promise) {
93
102
  usercentricsProxy.instance.getTCFData {
@@ -12,8 +12,12 @@ interface UsercentricsProxy {
12
12
  val instance: UsercentricsSDK
13
13
 
14
14
  fun initialize(context: Context, options: UsercentricsOptions)
15
- fun isReady(onSuccess: (UsercentricsReadyStatus) -> Unit, onFailure: (UsercentricsError) -> Unit)
16
- fun showFirstLayer(activity: Activity, layout: UsercentricsLayout, bannerSettings: BannerSettings?, promise: Promise)
15
+ fun isReady(
16
+ onSuccess: (UsercentricsReadyStatus) -> Unit,
17
+ onFailure: (UsercentricsError) -> Unit
18
+ )
19
+
20
+ fun showFirstLayer(activity: Activity, bannerSettings: BannerSettings?, promise: Promise)
17
21
  fun showSecondLayer(activity: Activity, bannerSettings: BannerSettings?, promise: Promise)
18
22
  fun reset()
19
23
  }
@@ -31,15 +35,26 @@ internal class UsercentricsProxyImpl : UsercentricsProxy {
31
35
  }
32
36
  }
33
37
 
34
- override fun isReady(onSuccess: (UsercentricsReadyStatus) -> Unit, onFailure: (UsercentricsError) -> Unit) = Usercentrics.isReady(onSuccess, onFailure)
38
+ override fun isReady(
39
+ onSuccess: (UsercentricsReadyStatus) -> Unit,
40
+ onFailure: (UsercentricsError) -> Unit
41
+ ) = Usercentrics.isReady(onSuccess, onFailure)
35
42
 
36
- override fun showFirstLayer(activity: Activity, layout: UsercentricsLayout, bannerSettings: BannerSettings?, promise: Promise) {
37
- UsercentricsBanner(activity, bannerSettings).showFirstLayer(layout) {
43
+ override fun showFirstLayer(
44
+ activity: Activity,
45
+ bannerSettings: BannerSettings?,
46
+ promise: Promise,
47
+ ) {
48
+ UsercentricsBanner(activity, bannerSettings).showFirstLayer {
38
49
  promise.resolve(it?.toWritableMap())
39
50
  }
40
51
  }
41
52
 
42
- override fun showSecondLayer(activity: Activity, bannerSettings: BannerSettings?, promise: Promise) {
53
+ override fun showSecondLayer(
54
+ activity: Activity,
55
+ bannerSettings: BannerSettings?,
56
+ promise: Promise,
57
+ ) {
43
58
  UsercentricsBanner(activity, bannerSettings).showSecondLayer {
44
59
  promise.resolve(it?.toWritableMap())
45
60
  }
@@ -6,13 +6,13 @@ import androidx.annotation.ColorInt
6
6
  import com.facebook.react.bridge.ReadableMap
7
7
  import com.usercentrics.sdk.*
8
8
 
9
- internal fun String.usercentricsLayoutFromEnumString(): UsercentricsLayout {
9
+ internal fun String.usercentricsLayoutFromEnumString(): UsercentricsLayout? {
10
10
  return when (this) {
11
11
  "FULL" -> UsercentricsLayout.Full
12
12
  "SHEET" -> UsercentricsLayout.Sheet
13
13
  "POPUP_BOTTOM" -> UsercentricsLayout.Popup(PopupPosition.BOTTOM)
14
14
  "POPUP_CENTER" -> UsercentricsLayout.Popup(PopupPosition.CENTER)
15
- else -> throw IllegalArgumentException("Invalid layout: $this")
15
+ else -> null
16
16
  }
17
17
  }
18
18
 
@@ -22,8 +22,12 @@ internal fun ReadableMap.bannerSettingsFromMap(assetManager: AssetManager): Bann
22
22
  val rawGeneralStyleSettings = getMap("generalStyleSettings")
23
23
 
24
24
  return BannerSettings(
25
- firstLayerStyleSettings = rawFirstLayerStyleSettings?.firstLayerStyleSettingsFromMap(assetManager),
26
- secondLayerStyleSettings = rawSecondLayerStyleSettings?.secondLayerStyleSettingsFromMap(assetManager),
25
+ firstLayerStyleSettings = rawFirstLayerStyleSettings?.firstLayerStyleSettingsFromMap(
26
+ assetManager
27
+ ),
28
+ secondLayerStyleSettings = rawSecondLayerStyleSettings?.secondLayerStyleSettingsFromMap(
29
+ assetManager
30
+ ),
27
31
  generalStyleSettings = rawGeneralStyleSettings?.generalStyleSettingsFromMap(assetManager),
28
32
  )
29
33
  }
@@ -35,6 +39,7 @@ internal fun ReadableMap.bannerLogoFromMap(): UsercentricsImage? {
35
39
 
36
40
  internal fun ReadableMap.firstLayerStyleSettingsFromMap(assetManager: AssetManager): FirstLayerStyleSettings {
37
41
  return FirstLayerStyleSettings(
42
+ layout = getString("layout")?.usercentricsLayoutFromEnumString(),
38
43
  headerImage = getMap("headerImage")?.headerImageFromMap(),
39
44
  title = getMap("title")?.titleFromMap(assetManager),
40
45
  message = getMap("message")?.messageFromMap(assetManager),
@@ -5,7 +5,7 @@ import com.usercentrics.ccpa.CCPAData
5
5
 
6
6
  internal fun CCPAData.serialize(): WritableMap {
7
7
  return mapOf(
8
- "uspString" to toUSPString(),
8
+ "uspString" to uspString,
9
9
  "version" to version,
10
10
  "noticeGiven" to noticeGiven,
11
11
  "optedOut" to optedOut,
@@ -4,8 +4,6 @@ import com.facebook.react.bridge.Arguments
4
4
  import com.facebook.react.bridge.ReadableMap
5
5
  import com.facebook.react.bridge.WritableArray
6
6
  import com.facebook.react.bridge.WritableMap
7
- import com.usercentrics.sdk.UsercentricsOptions
8
- import com.usercentrics.sdk.models.common.UsercentricsLoggerLevel
9
7
 
10
8
  internal fun ReadableMap.getIntOrNull(key: String): Int? {
11
9
  return if (hasKey(key) && !isNull(key)) {
@@ -24,7 +24,7 @@ private fun UsercentricsSettings.serialize(): WritableMap {
24
24
  "displayOnlyForEU" to displayOnlyForEU,
25
25
  "urlConsentInfo" to urlConsentInfo,
26
26
  "updatedAt" to updatedAt,
27
- "secondLayer" to secondLayer?.serialize(),
27
+ "secondLayer" to secondLayer.serialize(),
28
28
  "cookiePolicyUrl" to cookiePolicyUrl,
29
29
  "tcf2" to tcf2?.serialize(),
30
30
  "ccpa" to ccpa?.serialize(),
@@ -5,9 +5,9 @@ extension BannerSettings {
5
5
  init?(from dictionary: NSDictionary?) {
6
6
  guard let dictionary = dictionary else { return nil }
7
7
 
8
- let generalStyleSettingsDict = dictionary["generalStyleSettings"] as? NSDictionary ?? [:]
9
-
10
- let bannerFontHolder = BannerFontHolder(from: generalStyleSettingsDict["font"] as? NSDictionary)
8
+ let generalStyleSettingsDict = dictionary["generalStyleSettings"] as? NSDictionary
9
+ let bannerFontHolder = BannerFontHolder(from: generalStyleSettingsDict?["font"] as? NSDictionary)
10
+ let generalStyleSettings = GeneralStyleSettings(from: generalStyleSettingsDict, bannerFontHolder: bannerFontHolder)
11
11
 
12
12
  let firstLayerStyleSettingsDict = dictionary["firstLayerStyleSettings"] as? NSDictionary
13
13
  let firstLayerSettings = FirstLayerStyleSettings(from: firstLayerStyleSettingsDict, bannerFontHolder: bannerFontHolder)
@@ -15,27 +15,34 @@ extension BannerSettings {
15
15
  let secondLayerStyleSettingsDict = dictionary["secondLayerStyleSettings"] as? NSDictionary
16
16
  let secondLayerSettings = SecondLayerStyleSettings(from: secondLayerStyleSettingsDict, bannerFontHolder: bannerFontHolder)
17
17
 
18
- let toggleStyleSettingsDict = generalStyleSettingsDict["toggleStyleSettings"] as? NSDictionary
18
+ self.init(generalStyleSettings: generalStyleSettings,
19
+ firstLayerStyleSettings: firstLayerSettings,
20
+ secondLayerStyleSettings: secondLayerSettings)
21
+ }
22
+ }
23
+
24
+
25
+ extension GeneralStyleSettings {
26
+ init?(from dictionary: NSDictionary?, bannerFontHolder: BannerFontHolder?) {
27
+ guard let dictionary = dictionary else { return nil }
28
+
29
+ let toggleStyleSettingsDict = dictionary["toggleStyleSettings"] as? NSDictionary
19
30
  let toggleStyleSettings = ToggleStyleSettings(from: toggleStyleSettingsDict)
20
31
 
21
- let links = LegalLinksSettings.from(enumString: generalStyleSettingsDict["links"] as? String)
32
+ let links = LegalLinksSettings.from(enumString: dictionary["links"] as? String)
22
33
  let font = bannerFontHolder?.font
23
- let logo = UIImage(from: generalStyleSettingsDict["logo"] as? NSDictionary)
24
-
25
- let generalStyleSettings = GeneralStyleSettings(font: font,
26
- logo: logo,
27
- links: links,
28
- textColor: UIColor(unsafeHex: generalStyleSettingsDict["textColorHex"] as? String),
29
- layerBackgroundColor: UIColor(unsafeHex: generalStyleSettingsDict["layerBackgroundColorHex"] as? String),
30
- layerBackgroundSecondaryColor: UIColor(unsafeHex: generalStyleSettingsDict["layerBackgroundSecondaryColorHex"] as? String),
31
- linkColor: UIColor(unsafeHex: generalStyleSettingsDict["linkColorHex"] as? String),
32
- tabColor: UIColor(unsafeHex: generalStyleSettingsDict["tabColorHex"] as? String),
33
- bordersColor: UIColor(unsafeHex: generalStyleSettingsDict["bordersColorHex"] as? String),
34
- toggleStyleSettings: toggleStyleSettings)
34
+ let logo = UIImage(from: dictionary["logo"] as? NSDictionary)
35
35
 
36
- self.init(generalStyleSettings: generalStyleSettings,
37
- firstLayerStyleSettings: firstLayerSettings,
38
- secondLayerStyleSettings: secondLayerSettings)
36
+ self.init(font: font,
37
+ logo: logo,
38
+ links: links,
39
+ textColor: UIColor(unsafeHex: dictionary["textColorHex"] as? String),
40
+ layerBackgroundColor: UIColor(unsafeHex: dictionary["layerBackgroundColorHex"] as? String),
41
+ layerBackgroundSecondaryColor: UIColor(unsafeHex: dictionary["layerBackgroundSecondaryColorHex"] as? String),
42
+ linkColor: UIColor(unsafeHex: dictionary["linkColorHex"] as? String),
43
+ tabColor: UIColor(unsafeHex: dictionary["tabColorHex"] as? String),
44
+ bordersColor: UIColor(unsafeHex: dictionary["bordersColorHex"] as? String),
45
+ toggleStyleSettings: toggleStyleSettings)
39
46
  }
40
47
  }
41
48
 
@@ -87,7 +94,8 @@ extension FirstLayerStyleSettings {
87
94
  buttonLayout: ButtonLayout.from(dictionary: dictionary["buttonLayout"] as? NSDictionary, fallbackFont: bannerFontHolder?.boldFont),
88
95
  backgroundColor: UIColor(unsafeHex: dictionary["backgroundColorHex"] as? String),
89
96
  cornerRadius: dictionary["cornerRadius"] as? CGFloat,
90
- overlayColor: UIColor(unsafeHex: dictionary["overlayColorHex"] as? String))
97
+ overlayColor: UIColor(unsafeHex: dictionary["overlayColorHex"] as? String),
98
+ layout: UsercentricsLayout.from(enumString: dictionary["layout"] as? String))
91
99
  }
92
100
  }
93
101
 
@@ -95,8 +103,10 @@ extension SecondLayerStyleSettings {
95
103
  init?(from dictionary: NSDictionary?, bannerFontHolder: BannerFontHolder?) {
96
104
  guard let dictionary = dictionary else { return nil }
97
105
 
98
- self.init(buttonLayout: ButtonLayout.from(dictionary: dictionary["buttonLayout"] as? NSDictionary, fallbackFont: bannerFontHolder?.boldFont),
99
- showCloseButton: dictionary["showCloseButton"] as? Bool)
106
+ let buttonLayout = ButtonLayout.from(dictionary: dictionary["buttonLayout"] as? NSDictionary, fallbackFont: bannerFontHolder?.boldFont)
107
+ let showCloseButton = dictionary["showCloseButton"] as? Bool
108
+ self.init(buttonLayout: buttonLayout,
109
+ showCloseButton: showCloseButton)
100
110
  }
101
111
  }
102
112
 
@@ -213,7 +223,9 @@ extension ButtonType {
213
223
  }
214
224
 
215
225
  extension UsercentricsLayout {
216
- static func from(enumString: String) -> UsercentricsLayout? {
226
+ static func from(enumString: String?) -> UsercentricsLayout? {
227
+ guard let enumString = enumString else { return nil }
228
+
217
229
  switch enumString {
218
230
  case "FULL":
219
231
  return .full
@@ -9,12 +9,9 @@ public protocol UsercentricsManager {
9
9
  func restoreUserSession(controllerId: String, onSuccess: @escaping ((UsercentricsReadyStatus) -> Void), onFailure: @escaping ((Error) -> Void))
10
10
 
11
11
  func showFirstLayer(bannerSettings: BannerSettings?,
12
- hostView: UIViewController,
13
- layout: UsercentricsLayout,
14
12
  dismissViewHandler: @escaping (UsercentricsConsentUserResponse) -> Void)
15
13
 
16
14
  func showSecondLayer(bannerSettings: BannerSettings?,
17
- hostView: UIViewController,
18
15
  dismissViewHandler: @escaping (UsercentricsConsentUserResponse) -> Void)
19
16
 
20
17
  func getControllerId() -> String
@@ -23,6 +20,7 @@ public protocol UsercentricsManager {
23
20
  func getUserSessionData() -> String
24
21
  func getUSPData() -> CCPAData
25
22
  func getTCFData(callback: @escaping (TCFData) -> Void)
23
+ func getABTestingVariant() -> String?
26
24
 
27
25
  func changeLanguage(language: String, onSuccess: @escaping (() -> Void), onFailure: @escaping ((Error) -> Void))
28
26
 
@@ -39,6 +37,7 @@ public protocol UsercentricsManager {
39
37
  func saveDecisions(decisions: [UserDecision], consentType: UsercentricsConsentType) -> [UsercentricsServiceConsent]
40
38
  func saveOptOutForCCPA(isOptedOut: Bool, consentType: UsercentricsConsentType) -> [UsercentricsServiceConsent]
41
39
  func setCMPId(id: Int32)
40
+ func setABTestingVariant(variant: String)
42
41
 
43
42
  func reset()
44
43
  }
@@ -58,18 +57,13 @@ final class UsercentricsManagerImplementation: UsercentricsManager {
58
57
  }
59
58
 
60
59
  func showFirstLayer(bannerSettings: BannerSettings?,
61
- hostView: UIViewController,
62
- layout: UsercentricsLayout,
63
60
  dismissViewHandler: @escaping (UsercentricsConsentUserResponse) -> Void) {
64
- UsercentricsBanner(bannerSettings: bannerSettings).showFirstLayer(hostView: hostView,
65
- layout: layout,
66
- completionHandler: dismissViewHandler)
61
+ UsercentricsBanner(bannerSettings: bannerSettings).showFirstLayer(completionHandler: dismissViewHandler)
67
62
  }
68
63
 
69
64
  func showSecondLayer(bannerSettings: BannerSettings?,
70
- hostView: UIViewController,
71
65
  dismissViewHandler: @escaping (UsercentricsConsentUserResponse) -> Void) {
72
- UsercentricsBanner(bannerSettings: bannerSettings).showSecondLayer(hostView: hostView, completionHandler: dismissViewHandler)
66
+ UsercentricsBanner(bannerSettings: bannerSettings).showSecondLayer(completionHandler: dismissViewHandler)
73
67
  }
74
68
 
75
69
  func restoreUserSession(controllerId: String, onSuccess: @escaping ((UsercentricsReadyStatus) -> Void), onFailure: @escaping ((Error) -> Void)) {
@@ -80,6 +74,10 @@ final class UsercentricsManagerImplementation: UsercentricsManager {
80
74
  return UsercentricsCore.shared.getControllerId()
81
75
  }
82
76
 
77
+ func getABTestingVariant() -> String? {
78
+ return UsercentricsCore.shared.getABTestingVariant()
79
+ }
80
+
83
81
  func getConsents() -> [UsercentricsServiceConsent] {
84
82
  return UsercentricsCore.shared.getConsents()
85
83
  }
@@ -135,4 +133,8 @@ final class UsercentricsManagerImplementation: UsercentricsManager {
135
133
  func setCMPId(id: Int32) {
136
134
  UsercentricsCore.shared.setCMPId(id: id)
137
135
  }
136
+
137
+ func setABTestingVariant(variant: String) {
138
+ UsercentricsCore.shared.setABTestingVariant(variant: variant)
139
+ }
138
140
  }
@@ -35,6 +35,9 @@ RCT_EXTERN_METHOD(getTCFString:(RCTPromiseResolveBlock)resolve
35
35
  RCT_EXTERN_METHOD(getControllerId:(RCTPromiseResolveBlock)resolve
36
36
  reject:(RCTPromiseRejectBlock)reject)
37
37
 
38
+ RCT_EXTERN_METHOD(getABTestingVariant:(RCTPromiseResolveBlock)resolve
39
+ reject:(RCTPromiseRejectBlock)reject)
40
+
38
41
  RCT_EXTERN_METHOD(getConsents:(RCTPromiseResolveBlock)resolve
39
42
  reject:(RCTPromiseRejectBlock)reject)
40
43
 
@@ -91,5 +94,7 @@ RCT_EXTERN_METHOD(saveOptOutForCCPA:(BOOL *)isOptedOut
91
94
 
92
95
  RCT_EXTERN_METHOD(setCMPId:(NSInteger *)id)
93
96
 
97
+ RCT_EXTERN_METHOD(setABTestingVariant:(NSString *)variant)
98
+
94
99
  RCT_EXTERN_METHOD(reset)
95
100
  @end
@@ -43,19 +43,13 @@ class RNUsercentricsModule: NSObject, RCTBridgeModule {
43
43
  @objc func showFirstLayer(_ dict: NSDictionary, resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) {
44
44
  queue.async { [weak self] in
45
45
  guard
46
- let self = self,
47
- let rootVC = self.getPresentationViewController(),
48
- let layoutString = dict["layout"] as? String,
49
- let layout = UsercentricsLayout.from(enumString: layoutString)
46
+ let self = self
50
47
  else {
51
48
  reject("usercentrics_reactNative_showFirstLayer_error", RNUsercentricsModuleError.invalidData.localizedDescription, RNUsercentricsModuleError.invalidData)
52
49
  return
53
50
  }
54
51
 
55
- let bannerSettingsDict = dict["bannerSettings"] as? NSDictionary
56
- self.usercentricsManager.showFirstLayer(bannerSettings: BannerSettings(from: bannerSettingsDict),
57
- hostView: rootVC as! UIViewController,
58
- layout: layout) { response in
52
+ self.usercentricsManager.showFirstLayer(bannerSettings: BannerSettings(from: dict)) { response in
59
53
  resolve(response.toDictionary())
60
54
  }
61
55
  }
@@ -64,17 +58,13 @@ class RNUsercentricsModule: NSObject, RCTBridgeModule {
64
58
  @objc func showSecondLayer(_ dict: NSDictionary, resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) {
65
59
  queue.async { [weak self] in
66
60
  guard
67
- let self = self,
68
- let rootVC = self.getPresentationViewController()
61
+ let self = self
69
62
  else {
70
63
  reject("usercentrics_reactNative_showFirstLayer_error", RNUsercentricsModuleError.invalidData.localizedDescription, RNUsercentricsModuleError.invalidData)
71
64
  return
72
65
  }
73
66
 
74
- let bannerSettingsDict = dict["bannerSettings"] as? NSDictionary
75
- self.usercentricsManager.showSecondLayer(bannerSettings: BannerSettings(from: bannerSettingsDict),
76
- hostView: rootVC as! UIViewController) { response in
77
- rootVC.dismiss(animated: true)
67
+ self.usercentricsManager.showSecondLayer(bannerSettings: BannerSettings(from: dict)) { response in
78
68
  resolve(response.toDictionary())
79
69
  }
80
70
  }
@@ -83,7 +73,11 @@ class RNUsercentricsModule: NSObject, RCTBridgeModule {
83
73
  @objc func setCMPId(_ id: Int) -> Void {
84
74
  usercentricsManager.setCMPId(id: Int32(id))
85
75
  }
86
-
76
+
77
+ @objc func setABTestingVariant(_ variant: String) -> Void {
78
+ usercentricsManager.setABTestingVariant(variant: String(variant))
79
+ }
80
+
87
81
  @objc func restoreUserSession(_ controllerId: String, resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) -> Void {
88
82
  usercentricsManager.restoreUserSession(controllerId: controllerId) { status in
89
83
  resolve(status.toDictionary())
@@ -117,6 +111,10 @@ class RNUsercentricsModule: NSObject, RCTBridgeModule {
117
111
  @objc func getUSPData(_ resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) -> Void {
118
112
  resolve(usercentricsManager.getUSPData().toDictionary())
119
113
  }
114
+
115
+ @objc func getABTestingVariant(_ resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) -> Void {
116
+ resolve(usercentricsManager.getABTestingVariant())
117
+ }
120
118
 
121
119
  @objc func changeLanguage(_ language: String, resolve: @escaping RCTPromiseResolveBlock, reject: @escaping RCTPromiseRejectBlock) -> Void {
122
120
  usercentricsManager.changeLanguage(language: language) {
@@ -192,23 +190,4 @@ class RNUsercentricsModule: NSObject, RCTBridgeModule {
192
190
  @objc func reset() -> Void {
193
191
  usercentricsManager.reset()
194
192
  }
195
-
196
- func getPresentationViewController() -> PresentationViewController? {
197
- var window: UIWindow?
198
- if #available(iOS 13.0, *) {
199
- window = UIApplication
200
- .shared
201
- .connectedScenes
202
- .compactMap { $0 as? UIWindowScene }
203
- .flatMap { $0.windows }
204
- .first { $0.isKeyWindow }
205
- } else {
206
- window = UIApplication.shared.windows.first { $0.isKeyWindow }
207
- }
208
- var viewController = window?.rootViewController
209
- while viewController?.presentedViewController != nil {
210
- viewController = viewController?.presentedViewController
211
- }
212
- return viewController
213
- }
214
193
  }
@@ -1,11 +1,12 @@
1
- import { CCPAData, FirstLayerOptions, SecondLayerOptions, TCFData, TCFDecisionUILayer, TCFUserDecisions, UsercentricsCMPData, UsercentricsConsentType, UsercentricsConsentUserResponse, UsercentricsOptions, UsercentricsReadyStatus, UsercentricsServiceConsent, UserDecision } from './models';
1
+ import { BannerSettings, CCPAData, TCFData, TCFDecisionUILayer, TCFUserDecisions, UsercentricsCMPData, UsercentricsConsentType, UsercentricsConsentUserResponse, UsercentricsOptions, UsercentricsReadyStatus, UsercentricsServiceConsent, UserDecision } from './models';
2
2
  export declare const Usercentrics: {
3
3
  configure: (options: UsercentricsOptions) => void;
4
4
  status: () => Promise<UsercentricsReadyStatus>;
5
- showFirstLayer: (options: FirstLayerOptions) => Promise<UsercentricsConsentUserResponse>;
6
- showSecondLayer: (options: SecondLayerOptions) => Promise<UsercentricsConsentUserResponse>;
5
+ showFirstLayer: (options: BannerSettings) => Promise<UsercentricsConsentUserResponse>;
6
+ showSecondLayer: (options: BannerSettings) => Promise<UsercentricsConsentUserResponse>;
7
7
  restoreUserSession: (controllerId: string) => Promise<UsercentricsReadyStatus>;
8
8
  getControllerId: () => Promise<string>;
9
+ getABTestingVariant: () => Promise<string | null>;
9
10
  getConsents: () => Promise<[UsercentricsServiceConsent]>;
10
11
  getCMPData: () => Promise<UsercentricsCMPData>;
11
12
  getUserSessionData: () => Promise<string>;
@@ -20,5 +21,6 @@ export declare const Usercentrics: {
20
21
  saveDecisionsForTCF: (tcfDecisions: TCFUserDecisions, fromLayer: TCFDecisionUILayer, decisions: [UserDecision], consentType: UsercentricsConsentType) => Promise<[UsercentricsServiceConsent]>;
21
22
  saveOptOutForCCPA: (isOptedOut: boolean, consentType: UsercentricsConsentType) => Promise<[UsercentricsServiceConsent]>;
22
23
  setCMPId: (id: number) => void;
24
+ setABTestingVariant: (variant: string) => void;
23
25
  reset: () => void;
24
26
  };
@@ -23,6 +23,10 @@ export const Usercentrics = {
23
23
  await RNUsercentricsModule.isReady();
24
24
  return RNUsercentricsModule.getControllerId();
25
25
  },
26
+ getABTestingVariant: async () => {
27
+ await RNUsercentricsModule.isReady();
28
+ return RNUsercentricsModule.getABTestingVariant();
29
+ },
26
30
  getConsents: async () => {
27
31
  await RNUsercentricsModule.isReady();
28
32
  return RNUsercentricsModule.getConsents();
@@ -31,7 +35,8 @@ export const Usercentrics = {
31
35
  await RNUsercentricsModule.isReady();
32
36
  return RNUsercentricsModule.getCMPData();
33
37
  },
34
- getUserSessionData: () => {
38
+ getUserSessionData: async () => {
39
+ await RNUsercentricsModule.isReady();
35
40
  return RNUsercentricsModule.getUserSessionData();
36
41
  },
37
42
  getCCPAData: async () => {
@@ -77,6 +82,9 @@ export const Usercentrics = {
77
82
  setCMPId: (id) => {
78
83
  RNUsercentricsModule.setCMPId(id);
79
84
  },
85
+ setABTestingVariant: (variant) => {
86
+ RNUsercentricsModule.setABTestingVariant(variant);
87
+ },
80
88
  reset: () => {
81
89
  RNUsercentricsModule.reset();
82
90
  }
@@ -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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"}
@@ -44,5 +44,6 @@ export declare class BannerSettings {
44
44
  firstLayerStyleSettings?: FirstLayerStyleSettings;
45
45
  secondLayerStyleSettings?: SecondLayerStyleSettings;
46
46
  generalStyleSettings?: GeneralStyleSettings;
47
- constructor(firstLayerStyleSettings?: FirstLayerStyleSettings, secondLayerStyleSettings?: SecondLayerStyleSettings, generalStyleSettings?: GeneralStyleSettings);
47
+ variant?: String;
48
+ constructor(firstLayerStyleSettings?: FirstLayerStyleSettings, secondLayerStyleSettings?: SecondLayerStyleSettings, generalStyleSettings?: GeneralStyleSettings, variant?: String);
48
49
  }
@@ -44,10 +44,11 @@ export class GeneralStyleSettings {
44
44
  }
45
45
  }
46
46
  export class BannerSettings {
47
- constructor(firstLayerStyleSettings, secondLayerStyleSettings, generalStyleSettings) {
47
+ constructor(firstLayerStyleSettings, secondLayerStyleSettings, generalStyleSettings, variant) {
48
48
  this.firstLayerStyleSettings = firstLayerStyleSettings;
49
49
  this.secondLayerStyleSettings = secondLayerStyleSettings;
50
50
  this.generalStyleSettings = generalStyleSettings;
51
+ this.variant = variant;
51
52
  }
52
53
  }
53
54
  //# sourceMappingURL=BannerSettings.js.map
@@ -1 +1 @@
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,mBAAmB;IAQ5B,YACI,wBAAiC,EACjC,0BAAmC,EACnC,0BAAmC,EACnC,mBAA4B,EAC5B,qBAA8B,EAC9B,qBAA8B;QAE9B,IAAI,CAAC,wBAAwB,GAAG,wBAAwB,CAAC;QACzD,IAAI,CAAC,0BAA0B,GAAG,0BAA0B,CAAC;QAC7D,IAAI,CAAC,0BAA0B,GAAG,0BAA0B,CAAC;QAC7D,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;QAC/C,IAAI,CAAC,qBAAqB,GAAG,qBAAqB,CAAC;QACnD,IAAI,CAAC,qBAAqB,GAAG,qBAAqB,CAAC;IACvD,CAAC;CACJ;AAED,MAAM,OAAO,oBAAoB;IAY7B,YAAY,IAAiB,EACzB,IAAiB,EACjB,KAA0B,EAC1B,YAAqB,EACrB,uBAAgC,EAChC,gCAAyC,EACzC,YAAqB,EACrB,WAAoB,EACpB,eAAwB,EACxB,mBAAyC;QAEzC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,uBAAuB,GAAG,uBAAuB,CAAC;QACvD,IAAI,CAAC,gCAAgC,GAAG,gCAAgC,CAAC;QACzE,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;IACnD,CAAC;CACJ;AAED,MAAM,OAAO,cAAc;IAKvB,YAAY,uBAAiD,EAAE,wBAAmD,EAAE,oBAA2C;QAC3J,IAAI,CAAC,uBAAuB,GAAG,uBAAuB,CAAC;QACvD,IAAI,CAAC,wBAAwB,GAAG,wBAAwB,CAAC;QACzD,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;IACrD,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,mBAAmB;IAQ5B,YACI,wBAAiC,EACjC,0BAAmC,EACnC,0BAAmC,EACnC,mBAA4B,EAC5B,qBAA8B,EAC9B,qBAA8B;QAE9B,IAAI,CAAC,wBAAwB,GAAG,wBAAwB,CAAC;QACzD,IAAI,CAAC,0BAA0B,GAAG,0BAA0B,CAAC;QAC7D,IAAI,CAAC,0BAA0B,GAAG,0BAA0B,CAAC;QAC7D,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;QAC/C,IAAI,CAAC,qBAAqB,GAAG,qBAAqB,CAAC;QACnD,IAAI,CAAC,qBAAqB,GAAG,qBAAqB,CAAC;IACvD,CAAC;CACJ;AAED,MAAM,OAAO,oBAAoB;IAY7B,YAAY,IAAiB,EACzB,IAAiB,EACjB,KAA0B,EAC1B,YAAqB,EACrB,uBAAgC,EAChC,gCAAyC,EACzC,YAAqB,EACrB,WAAoB,EACpB,eAAwB,EACxB,mBAAyC;QAEzC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,uBAAuB,GAAG,uBAAuB,CAAC;QACvD,IAAI,CAAC,gCAAgC,GAAG,gCAAgC,CAAC;QACzE,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;IACnD,CAAC;CACJ;AAED,MAAM,OAAO,cAAc;IAMvB,YAAY,uBAAiD,EAAE,wBAAmD,EAAE,oBAA2C,EAAE,OAAgB;QAC7K,IAAI,CAAC,uBAAuB,GAAG,uBAAuB,CAAC;QACvD,IAAI,CAAC,wBAAwB,GAAG,wBAAwB,CAAC;QACzD,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;QACjD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IAC1B,CAAC;CACJ"}
@@ -1,10 +1,6 @@
1
- import { BannerLogo, BannerSettings } from ".";
2
- export declare class FirstLayerOptions {
3
- layout: UsercentricsLayout;
4
- bannerSettings?: BannerSettings;
5
- constructor(layout: UsercentricsLayout, bannerSettings?: BannerSettings);
6
- }
1
+ import { BannerLogo } from ".";
7
2
  export declare class FirstLayerStyleSettings {
3
+ layout?: UsercentricsLayout;
8
4
  headerImage?: HeaderImageSettings;
9
5
  title?: TitleSettings;
10
6
  message?: MessageSettings;
@@ -12,7 +8,7 @@ export declare class FirstLayerStyleSettings {
12
8
  backgroundColorHex?: String;
13
9
  cornerRadius?: Number;
14
10
  overlayColorHex?: String;
15
- constructor(headerImage?: HeaderImageSettings, title?: TitleSettings, message?: MessageSettings, buttonLayout?: ButtonLayout, backgroundColorHex?: String, cornerRadius?: Number, overlayColorHex?: String);
11
+ constructor(layout?: UsercentricsLayout, headerImage?: HeaderImageSettings, title?: TitleSettings, message?: MessageSettings, buttonLayout?: ButtonLayout, backgroundColorHex?: String, cornerRadius?: Number, overlayColorHex?: String);
16
12
  }
17
13
  export declare class HeaderImageSettings {
18
14
  isExtended: Boolean;
@@ -1,11 +1,6 @@
1
- export class FirstLayerOptions {
2
- constructor(layout, bannerSettings) {
3
- this.layout = layout;
4
- this.bannerSettings = bannerSettings;
5
- }
6
- }
7
1
  export class FirstLayerStyleSettings {
8
- constructor(headerImage, title, message, buttonLayout, backgroundColorHex, cornerRadius, overlayColorHex) {
2
+ constructor(layout, headerImage, title, message, buttonLayout, backgroundColorHex, cornerRadius, overlayColorHex) {
3
+ this.layout = layout;
9
4
  this.headerImage = headerImage;
10
5
  this.title = title;
11
6
  this.message = message;
@@ -103,4 +98,4 @@ export var UsercentricsLayout;
103
98
  UsercentricsLayout["popupCenter"] = "POPUP_CENTER";
104
99
  UsercentricsLayout["popupBottom"] = "POPUP_BOTTOM";
105
100
  })(UsercentricsLayout || (UsercentricsLayout = {}));
106
- //# sourceMappingURL=FirstLayerOptions.js.map
101
+ //# sourceMappingURL=FirstLayerSettings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FirstLayerSettings.js","sourceRoot":"","sources":["../../src/models/FirstLayerSettings.tsx"],"names":[],"mappings":"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"}
@@ -1,8 +1,4 @@
1
- import { BannerSettings, ButtonLayout } from ".";
2
- export declare class SecondLayerOptions {
3
- bannerSettings?: BannerSettings;
4
- constructor(bannerSettings?: BannerSettings);
5
- }
1
+ import { ButtonLayout } from ".";
6
2
  export declare class SecondLayerStyleSettings {
7
3
  buttonLayout?: ButtonLayout;
8
4
  showCloseButton?: Boolean;
@@ -1,12 +1,7 @@
1
- export class SecondLayerOptions {
2
- constructor(bannerSettings) {
3
- this.bannerSettings = bannerSettings;
4
- }
5
- }
6
1
  export class SecondLayerStyleSettings {
7
2
  constructor(buttonLayout, showCloseButton) {
8
3
  this.buttonLayout = buttonLayout;
9
4
  this.showCloseButton = showCloseButton;
10
5
  }
11
6
  }
12
- //# sourceMappingURL=SecondLayerOptions.js.map
7
+ //# sourceMappingURL=SecondLayerSettings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SecondLayerSettings.js","sourceRoot":"","sources":["../../src/models/SecondLayerSettings.tsx"],"names":[],"mappings":"AAEA,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"}
@@ -1,8 +1,8 @@
1
1
  export { BannerFont, BannerLogo, BannerSettings, LegalLinksSettings } from "./BannerSettings";
2
2
  export { CCPAData } from './CCPAData';
3
- export { ButtonLayout, ButtonSettings, ButtonType, FirstLayerOptions, FirstLayerStyleSettings, HeaderImageSettings, MessageSettings, SectionAlignment, TitleSettings, UsercentricsLayout } from './FirstLayerOptions';
3
+ export { ButtonLayout, ButtonSettings, ButtonType, FirstLayerStyleSettings, HeaderImageSettings, MessageSettings, SectionAlignment, TitleSettings, UsercentricsLayout } from './FirstLayerSettings';
4
4
  export { NetworkMode } from "./NetworkMode";
5
- export { SecondLayerOptions, SecondLayerStyleSettings } from './SecondLayerOptions';
5
+ export { SecondLayerStyleSettings } from './SecondLayerSettings';
6
6
  export { TCFData } from './TCFData';
7
7
  export { TCFDecisionUILayer } from './TCFDecisionUILayer';
8
8
  export { TCFUserDecisionOnPurpose, TCFUserDecisionOnSpecialFeature, TCFUserDecisionOnVendor, TCFUserDecisions } from './TCFUserDecisions';
@@ -1,8 +1,8 @@
1
1
  export { BannerFont, BannerLogo, BannerSettings, LegalLinksSettings } from "./BannerSettings";
2
2
  export { CCPAData } from './CCPAData';
3
- export { ButtonLayout, ButtonSettings, ButtonType, FirstLayerOptions, FirstLayerStyleSettings, HeaderImageSettings, MessageSettings, SectionAlignment, TitleSettings, UsercentricsLayout } from './FirstLayerOptions';
3
+ export { ButtonLayout, ButtonSettings, ButtonType, FirstLayerStyleSettings, HeaderImageSettings, MessageSettings, SectionAlignment, TitleSettings, UsercentricsLayout } from './FirstLayerSettings';
4
4
  export { NetworkMode } from "./NetworkMode";
5
- export { SecondLayerOptions, SecondLayerStyleSettings } from './SecondLayerOptions';
5
+ export { SecondLayerStyleSettings } from './SecondLayerSettings';
6
6
  export { TCFData } from './TCFData';
7
7
  export { TCFDecisionUILayer } from './TCFDecisionUILayer';
8
8
  export { TCFUserDecisionOnPurpose, TCFUserDecisionOnSpecialFeature, TCFUserDecisionOnVendor, TCFUserDecisions } from './TCFUserDecisions';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/models/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC9F,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EACH,YAAY,EAAE,cAAc,EAAE,UAAU,EAAE,iBAAiB,EAC3D,uBAAuB,EACvB,mBAAmB,EAAE,eAAe,EAAE,gBAAgB,EAAE,aAAa,EAAE,kBAAkB,EAC5F,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AACpF,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,wBAAwB,EAAE,+BAA+B,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC1I,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,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,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,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/models/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC9F,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EACH,YAAY,EAAE,cAAc,EAAE,UAAU,EACxC,uBAAuB,EACvB,mBAAmB,EAAE,eAAe,EAAE,gBAAgB,EAAE,aAAa,EAAE,kBAAkB,EAC5F,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,wBAAwB,EAAE,+BAA+B,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC1I,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,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,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,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"}
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "@usercentrics/react-native-sdk",
3
- "version": "2.7.4",
3
+ "version": "2.7.6",
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.7.4",
10
+ "iosPackageVersion": "2.7.6",
11
11
  "license": "SEE LICENSE IN LICENSE",
12
12
  "files": [
13
13
  "android",
@@ -1 +0,0 @@
1
- {"version":3,"file":"FirstLayerOptions.js","sourceRoot":"","sources":["../../src/models/FirstLayerOptions.tsx"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
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"}