@usercentrics/react-native-sdk 2.15.1 → 2.15.3

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,26 @@
1
1
  [Release Notes](https://docs.usercentrics.com/cmp_in_app_sdk/latest/about/history/)
2
2
 
3
+ ### 2.15.3 - June 24, 2024
4
+
5
+ ## React Native Bug Fix
6
+
7
+ **[Fix]** Services categories description was returning a stringify object instead of the actual description
8
+
9
+ ### 2.15.2 - June 12, 2024
10
+
11
+ ## Improvements
12
+
13
+ * Firebase Consent Mediation: Improved integration with its flags
14
+
15
+ ## Android Bug Fix
16
+
17
+ * Fixed issues related to displaying banners in inactive activities
18
+
19
+ ## Other Fixes
20
+
21
+ * Addressed sporadic crashes during TCF banner initializations on iOS.
22
+ * Enhanced code efficiency for smoother consent banner displays.
23
+
3
24
  ### 2.15.1 - May 29, 2024
4
25
 
5
26
  ## Improvements
@@ -1,4 +1,4 @@
1
- def usercentrics_version = "2.15.1"
1
+ def usercentrics_version = "2.15.2"
2
2
  version usercentrics_version
3
3
 
4
4
  buildscript {
@@ -20,6 +20,8 @@ import com.usercentrics.sdk.models.settings.UsercentricsConsentType
20
20
  import com.usercentrics.sdk.services.tcf.TCFDecisionUILayer
21
21
  import com.usercentrics.sdk.services.tcf.interfaces.TCFData
22
22
  import com.usercentrics.sdk.v2.location.data.UsercentricsLocation
23
+ import com.usercentrics.sdk.v2.translation.data.LegalBasisLocalization
24
+ import io.mockk.InternalPlatformDsl.toArray
23
25
  import io.mockk.every
24
26
  import io.mockk.mockk
25
27
  import io.mockk.verify
@@ -83,7 +85,10 @@ class RNUsercentricsModuleTest {
83
85
  history = usercentricsConsentHistoryEntries
84
86
  )
85
87
  ),
86
- geolocationRuleset = GeolocationRuleset(activeSettingsId = "settingsId", bannerRequiredAtLocation = true),
88
+ geolocationRuleset = GeolocationRuleset(
89
+ activeSettingsId = "settingsId",
90
+ bannerRequiredAtLocation = true
91
+ ),
87
92
  location = UsercentricsLocation(countryCode = "PT", regionCode = "PT11")
88
93
  )
89
94
  }
@@ -98,7 +103,8 @@ class RNUsercentricsModuleTest {
98
103
  @Test
99
104
  fun testModuleName() {
100
105
  assertEquals(
101
- "RNUsercentricsModule", RNUsercentricsModule(mockk(relaxed = true), mockk(), ReactContextProviderMock()).name
106
+ "RNUsercentricsModule",
107
+ RNUsercentricsModule(mockk(relaxed = true), mockk(), ReactContextProviderMock()).name
102
108
  )
103
109
  }
104
110
 
@@ -106,7 +112,8 @@ class RNUsercentricsModuleTest {
106
112
  fun testConfigure() {
107
113
  val usercentricsProxy = FakeUsercentricsProxy()
108
114
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
109
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
115
+ val module =
116
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
110
117
 
111
118
  module.configure(usercentricsOptions)
112
119
 
@@ -125,7 +132,8 @@ class RNUsercentricsModuleTest {
125
132
  fun testConfigureWithWrongValues() {
126
133
  val usercentricsProxy = FakeUsercentricsProxy()
127
134
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
128
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
135
+ val module =
136
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
129
137
 
130
138
  module.configure(JavaOnlyMap())
131
139
  assertEquals(UsercentricsOptions(), usercentricsProxy.initializeOptionsArgument)
@@ -135,7 +143,8 @@ class RNUsercentricsModuleTest {
135
143
  fun testIsReady() {
136
144
  val usercentricsProxy = FakeUsercentricsProxy(isReadyAnswer = usercentricsReadyStatus)
137
145
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
138
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
146
+ val module =
147
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
139
148
 
140
149
  val promise = FakePromise()
141
150
  module.isReady(promise)
@@ -146,8 +155,14 @@ class RNUsercentricsModuleTest {
146
155
  assertEquals(1, usercentricsProxy.isReadyCount)
147
156
  assertEquals(false, result.getBoolean("shouldCollectConsent"))
148
157
 
149
- assertEquals("settingsId", result.getMap("geolocationRuleset")?.getString("activeSettingsId"))
150
- assertEquals(true, result.getMap("geolocationRuleset")?.getBoolean("bannerRequiredAtLocation"))
158
+ assertEquals(
159
+ "settingsId",
160
+ result.getMap("geolocationRuleset")?.getString("activeSettingsId")
161
+ )
162
+ assertEquals(
163
+ true,
164
+ result.getMap("geolocationRuleset")?.getBoolean("bannerRequiredAtLocation")
165
+ )
151
166
 
152
167
  assertEquals("PT", result.getMap("location")?.getString("countryCode"))
153
168
  assertEquals("PT11", result.getMap("location")?.getString("regionCode"))
@@ -165,7 +180,8 @@ class RNUsercentricsModuleTest {
165
180
 
166
181
  val usercentricsProxy = FakeUsercentricsProxy(isReadyAnswer = error)
167
182
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
168
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
183
+ val module =
184
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
169
185
 
170
186
  val promise = FakePromise()
171
187
  module.isReady(promise)
@@ -183,7 +199,8 @@ class RNUsercentricsModuleTest {
183
199
 
184
200
  val usercentricsProxy = FakeUsercentricsProxy(instanceAnswer = usercentricsSDK)
185
201
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
186
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
202
+ val module =
203
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
187
204
 
188
205
  val promise = FakePromise()
189
206
  module.restoreUserSession("abc", promise)
@@ -210,7 +227,8 @@ class RNUsercentricsModuleTest {
210
227
  }
211
228
  val usercentricsProxy = FakeUsercentricsProxy(usercentricsSDK)
212
229
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
213
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
230
+ val module =
231
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
214
232
 
215
233
  val promise = FakePromise()
216
234
  module.restoreUserSession("abc", promise)
@@ -225,7 +243,8 @@ class RNUsercentricsModuleTest {
225
243
  every { usercentricsSDK.getControllerId() }.returns("abc")
226
244
  val usercentricsProxy = FakeUsercentricsProxy(usercentricsSDK)
227
245
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
228
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
246
+ val module =
247
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
229
248
  val promise = FakePromise()
230
249
 
231
250
  module.getControllerId(promise)
@@ -240,7 +259,8 @@ class RNUsercentricsModuleTest {
240
259
  every { usercentricsSDK.getABTestingVariant() }.returns("variantA")
241
260
  val usercentricsProxy = FakeUsercentricsProxy(usercentricsSDK)
242
261
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
243
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
262
+ val module =
263
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
244
264
  val promise = FakePromise()
245
265
 
246
266
  module.getABTestingVariant(promise)
@@ -256,7 +276,8 @@ class RNUsercentricsModuleTest {
256
276
 
257
277
  val usercentricsProxy = FakeUsercentricsProxy(usercentricsSDK)
258
278
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
259
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
279
+ val module =
280
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
260
281
 
261
282
  val promise = FakePromise()
262
283
 
@@ -276,12 +297,17 @@ class RNUsercentricsModuleTest {
276
297
 
277
298
  @Test
278
299
  fun testGetCMPData() {
300
+ val legalBasisLocalization = mockk<LegalBasisLocalization>()
301
+ every { legalBasisLocalization.data }.returns(GetCMPDataMock.fakeData)
302
+ every { legalBasisLocalization.labelsAria }.returns(GetCMPDataMock.fakeLabelsAria)
303
+
279
304
  val cmpData = mockk<UsercentricsCMPData>()
280
305
  every { cmpData.activeVariant }.returns(UsercentricsVariant.TCF)
281
306
  every { cmpData.settings }.returns(GetCMPDataMock.fakeSettings)
282
307
  every { cmpData.categories }.returns(GetCMPDataMock.fakeCategories)
283
308
  every { cmpData.services }.returns(GetCMPDataMock.fakeServices)
284
309
  every { cmpData.userLocation }.returns(GetCMPDataMock.fakeUserLocation)
310
+ every { cmpData.legalBasis }.returns(legalBasisLocalization)
285
311
 
286
312
  val usercentricsSDK = mockk<UsercentricsSDK>()
287
313
  every { usercentricsSDK.getCMPData() }.returns(cmpData)
@@ -298,22 +324,30 @@ class RNUsercentricsModuleTest {
298
324
 
299
325
  val resultMap = (promise.resolveValue as WritableMap)
300
326
 
301
- assertEquals(5, resultMap.toHashMap().size)
302
- assertEquals(2, resultMap.getInt("activeVariant"))
327
+ assertEquals(6, resultMap.toHashMap().size)
303
328
 
304
329
  assertEquals(
305
330
  GetCMPDataMock.expectedSettings.toWritableMap(), resultMap.getMap("settings")
306
331
  )
307
332
 
308
333
  assertEquals(
309
- GetCMPDataMock.expectedCategories.serialize(), resultMap.getArray("categories")
334
+ GetCMPDataMock.expectedServices.serialize(), resultMap.getArray("services")
335
+ )
336
+
337
+ assertEquals(
338
+ GetCMPDataMock.expectedLegalBasisLocalization.toWritableMap(),
339
+ resultMap.getMap("legalBasis")
310
340
  )
311
341
 
342
+ assertEquals(2, resultMap.getInt("activeVariant"))
343
+
312
344
  assertEquals(
313
345
  GetCMPDataMock.expectedUserLocation.toWritableMap(), resultMap.getMap("userLocation")
314
346
  )
315
347
 
316
- assertEquals(GetCMPDataMock.expectedServices.serialize(), resultMap.getArray("services")!!)
348
+ assertEquals(
349
+ GetCMPDataMock.expectedCategories.serialize(), resultMap.getArray("categories")
350
+ )
317
351
  }
318
352
 
319
353
  @Test
@@ -323,7 +357,8 @@ class RNUsercentricsModuleTest {
323
357
 
324
358
  val usercentricsProxy = FakeUsercentricsProxy(usercentricsSDK)
325
359
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
326
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
360
+ val module =
361
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
327
362
 
328
363
  module.setCMPId(123)
329
364
 
@@ -337,7 +372,8 @@ class RNUsercentricsModuleTest {
337
372
 
338
373
  val usercentricsProxy = FakeUsercentricsProxy(usercentricsSDK)
339
374
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
340
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
375
+ val module =
376
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
341
377
 
342
378
  module.setABTestingVariant("variantA")
343
379
 
@@ -353,7 +389,8 @@ class RNUsercentricsModuleTest {
353
389
 
354
390
  val usercentricsProxy = FakeUsercentricsProxy(usercentricsSDK)
355
391
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
356
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
392
+ val module =
393
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
357
394
  val promise = FakePromise()
358
395
 
359
396
  module.getTCFData(promise)
@@ -370,7 +407,8 @@ class RNUsercentricsModuleTest {
370
407
  every { usercentricsSDK.getUserSessionData() }.returns(GetUserSessionDataMock.fake)
371
408
  val usercentricsProxy = FakeUsercentricsProxy(usercentricsSDK)
372
409
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
373
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
410
+ val module =
411
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
374
412
  val promise = FakePromise()
375
413
 
376
414
  module.getUserSessionData(promise)
@@ -385,7 +423,8 @@ class RNUsercentricsModuleTest {
385
423
 
386
424
  val usercentricsProxy = FakeUsercentricsProxy(usercentricsSDK)
387
425
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
388
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
426
+ val module =
427
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
389
428
  val promise = FakePromise()
390
429
 
391
430
  module.getUSPData(promise)
@@ -403,7 +442,8 @@ class RNUsercentricsModuleTest {
403
442
  }
404
443
  val usercentricsProxy = FakeUsercentricsProxy(usercentricsSDK)
405
444
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
406
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
445
+ val module =
446
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
407
447
  val promise = FakePromise()
408
448
 
409
449
  module.changeLanguage("abc", promise)
@@ -427,7 +467,8 @@ class RNUsercentricsModuleTest {
427
467
 
428
468
  val usercentricsProxy = FakeUsercentricsProxy(usercentricsSDK)
429
469
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
430
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
470
+ val module =
471
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
431
472
  val promise = FakePromise()
432
473
 
433
474
  module.changeLanguage("abc", promise)
@@ -452,7 +493,8 @@ class RNUsercentricsModuleTest {
452
493
 
453
494
  val usercentricsProxy = FakeUsercentricsProxy(usercentricsSDK)
454
495
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
455
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
496
+ val module =
497
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
456
498
 
457
499
  val promise = FakePromise()
458
500
  module.acceptAllForTCF(0, 0, promise)
@@ -479,7 +521,8 @@ class RNUsercentricsModuleTest {
479
521
 
480
522
  val usercentricsProxy = FakeUsercentricsProxy(usercentricsSDK)
481
523
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
482
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
524
+ val module =
525
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
483
526
 
484
527
  val promise = FakePromise()
485
528
  module.denyAllForTCF(0, 0, promise)
@@ -506,7 +549,8 @@ class RNUsercentricsModuleTest {
506
549
 
507
550
  val usercentricsProxy = FakeUsercentricsProxy(usercentricsSDK)
508
551
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
509
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
552
+ val module =
553
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
510
554
 
511
555
  val promise = FakePromise()
512
556
  module.acceptAll(0, promise)
@@ -527,7 +571,8 @@ class RNUsercentricsModuleTest {
527
571
 
528
572
  val usercentricsProxy = FakeUsercentricsProxy(usercentricsSDK)
529
573
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
530
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
574
+ val module =
575
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
531
576
 
532
577
  val promise = FakePromise()
533
578
  module.denyAll(0, promise)
@@ -548,7 +593,8 @@ class RNUsercentricsModuleTest {
548
593
 
549
594
  val usercentricsProxy = FakeUsercentricsProxy(usercentricsSDK)
550
595
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
551
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
596
+ val module =
597
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
552
598
 
553
599
  val promise = FakePromise()
554
600
  module.saveDecisions(SaveDecisionsMock.callDecisions.serialize(), 0, promise)
@@ -567,7 +613,8 @@ class RNUsercentricsModuleTest {
567
613
 
568
614
  val usercentricsProxy = FakeUsercentricsProxy(usercentricsSDK)
569
615
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
570
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
616
+ val module =
617
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
571
618
 
572
619
  val promise = FakePromise()
573
620
  module.saveDecisionsForTCF(
@@ -593,7 +640,8 @@ class RNUsercentricsModuleTest {
593
640
 
594
641
  val usercentricsProxy = FakeUsercentricsProxy(usercentricsSDK)
595
642
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
596
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
643
+ val module =
644
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
597
645
 
598
646
  val promise = FakePromise()
599
647
  module.saveOptOutForCCPA(
@@ -616,7 +664,8 @@ class RNUsercentricsModuleTest {
616
664
 
617
665
  val usercentricsProxy = FakeUsercentricsProxy(usercentricsSdk)
618
666
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
619
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
667
+ val module =
668
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
620
669
 
621
670
  module.track(UsercentricsAnalyticsEventType.ACCEPT_ALL_FIRST_LAYER.ordinal)
622
671
 
@@ -628,7 +677,8 @@ class RNUsercentricsModuleTest {
628
677
  fun testShowFirstLayer() {
629
678
  val usercentricsProxy = FakeUsercentricsProxy()
630
679
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
631
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
680
+ val module =
681
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
632
682
  val promise = FakePromise()
633
683
  module.showFirstLayer(bannerSettingsMap.toWritableMap(), promise)
634
684
  promise.await()
@@ -639,7 +689,8 @@ class RNUsercentricsModuleTest {
639
689
  fun testShowSecondLayer() {
640
690
  val usercentricsProxy = FakeUsercentricsProxy()
641
691
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
642
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
692
+ val module =
693
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
643
694
  val promise = FakePromise()
644
695
  module.showSecondLayer(bannerSettingsMap.toWritableMap(), promise)
645
696
  promise.await()
@@ -681,13 +732,16 @@ class RNUsercentricsModuleTest {
681
732
  module.showFirstLayer(bannerSettingsMap.toWritableMap(), promise)
682
733
  promise.await()
683
734
 
684
- val someLocalImageDrawableId = context.resources.getIdentifier("some_local_image", "drawable", context.packageName)
735
+ val someLocalImageDrawableId =
736
+ context.resources.getIdentifier("some_local_image", "drawable", context.packageName)
685
737
  val expectedBannerSettings = BannerSettings(
686
738
  firstLayerStyleSettings = FirstLayerStyleSettings(
687
739
  layout = UsercentricsLayout.Popup(
688
740
  PopupPosition.CENTER
689
741
  )
690
- ), secondLayerStyleSettings = SecondLayerStyleSettings(showCloseButton = true), generalStyleSettings = GeneralStyleSettings(
742
+ ),
743
+ secondLayerStyleSettings = SecondLayerStyleSettings(showCloseButton = true),
744
+ generalStyleSettings = GeneralStyleSettings(
691
745
  logo = UsercentricsImage.ImageDrawableId(someLocalImageDrawableId)
692
746
  )
693
747
  )
@@ -698,7 +752,8 @@ class RNUsercentricsModuleTest {
698
752
  fun testShowFirstLayerWhenShowCloseButtonIsNull() {
699
753
  val usercentricsProxy = FakeUsercentricsProxy()
700
754
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
701
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
755
+ val module =
756
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
702
757
  val bannerSettingsMap = mapOf(
703
758
  "secondLayerStyleSettings" to mapOf(
704
759
  "showCloseButton" to null
@@ -726,7 +781,8 @@ class RNUsercentricsModuleTest {
726
781
 
727
782
  val usercentricsProxy = FakeUsercentricsProxy(usercentricsSDK)
728
783
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
729
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
784
+ val module =
785
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
730
786
  val promise = FakePromise()
731
787
 
732
788
  module.getAdditionalConsentModeData(promise)
@@ -748,7 +804,8 @@ class RNUsercentricsModuleTest {
748
804
 
749
805
  val usercentricsProxy = FakeUsercentricsProxy(instanceAnswer = usercentricsSDK)
750
806
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
751
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
807
+ val module =
808
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
752
809
 
753
810
  val promise = FakePromise()
754
811
  module.clearUserSession(promise)
@@ -775,7 +832,8 @@ class RNUsercentricsModuleTest {
775
832
  }
776
833
  val usercentricsProxy = FakeUsercentricsProxy(usercentricsSDK)
777
834
  val contextMock = mockk<ReactApplicationContext>(relaxed = true)
778
- val module = RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
835
+ val module =
836
+ RNUsercentricsModule(contextMock, usercentricsProxy, ReactContextProviderMock())
779
837
 
780
838
  val promise = FakePromise()
781
839
  module.clearUserSession(promise)
@@ -25,6 +25,7 @@ import com.usercentrics.sdk.v2.settings.data.UsercentricsLabels
25
25
  import com.usercentrics.sdk.v2.settings.data.UsercentricsService
26
26
  import com.usercentrics.sdk.v2.settings.data.UsercentricsSettings
27
27
  import com.usercentrics.sdk.v2.settings.data.VariantsSettings
28
+ import com.usercentrics.sdk.v2.translation.data.TranslationAriaLabels
28
29
 
29
30
  internal object GetCMPDataMock {
30
31
 
@@ -662,4 +663,79 @@ internal object GetCMPDataMock {
662
663
  ),
663
664
  )
664
665
  )
666
+
667
+ val fakeData = mapOf(
668
+ "KeyA" to "ValueA",
669
+ "KeyB" to "ValueB",
670
+ )
671
+
672
+ private val expectedData = hashMapOf(
673
+ "KeyA" to "ValueA",
674
+ "KeyB" to "ValueB",
675
+ )
676
+
677
+ val fakeLabelsAria = TranslationAriaLabels(
678
+ acceptAllButton = "acceptAllButton",
679
+ ccpaButton = "ccpaButton",
680
+ ccpaMoreInformation = "ccpaMoreInformation",
681
+ closeButton = "closeButton",
682
+ collapse = "collapse",
683
+ cookiePolicyButton = "cookiePolicyButton",
684
+ copyControllerId = "copyControllerId",
685
+ denyAllButton = "denyAllButton",
686
+ expand = "expand",
687
+ fullscreenButton = "fullscreenButton",
688
+ imprintButton = "imprintButton",
689
+ languageSelector = "languageSelector",
690
+ privacyButton = "privacyButton",
691
+ privacyPolicyButton = "privacyPolicyButton",
692
+ saveButton = "saveButton",
693
+ serviceInCategoryDetails = "serviceInCategoryDetails",
694
+ servicesInCategory = "servicesInCategory",
695
+ tabButton = "tabButton",
696
+ usercentricsCMPButtons = "usercentricsCMPButtons",
697
+ usercentricsCMPContent = "usercentricsCMPContent",
698
+ usercentricsCMPHeader = "usercentricsCMPHeader",
699
+ usercentricsCMPUI = "usercentricsCMPUI",
700
+ usercentricsCard = "usercentricsCard",
701
+ usercentricsList = "usercentricsList",
702
+ vendorConsentToggle = "vendorConsentToggle",
703
+ vendorDetailedStorageInformation = "vendorDetailedStorageInformation",
704
+ vendorLegIntToggle = "vendorLegIntToggle"
705
+ )
706
+
707
+ val expectedTranslationAriaLabels = hashMapOf(
708
+ "acceptAllButton" to "acceptAllButton",
709
+ "ccpaButton" to "ccpaButton",
710
+ "ccpaMoreInformation" to "ccpaMoreInformation",
711
+ "closeButton" to "closeButton",
712
+ "collapse" to "collapse",
713
+ "cookiePolicyButton" to "cookiePolicyButton",
714
+ "copyControllerId" to "copyControllerId",
715
+ "denyAllButton" to "denyAllButton",
716
+ "expand" to "expand",
717
+ "fullscreenButton" to "fullscreenButton",
718
+ "imprintButton" to "imprintButton",
719
+ "languageSelector" to "languageSelector",
720
+ "privacyButton" to "privacyButton",
721
+ "privacyPolicyButton" to "privacyPolicyButton",
722
+ "saveButton" to "saveButton",
723
+ "serviceInCategoryDetails" to "serviceInCategoryDetails",
724
+ "servicesInCategory" to "servicesInCategory",
725
+ "tabButton" to "tabButton",
726
+ "usercentricsCMPButtons" to "usercentricsCMPButtons",
727
+ "usercentricsCMPContent" to "usercentricsCMPContent",
728
+ "usercentricsCMPHeader" to "usercentricsCMPHeader",
729
+ "usercentricsCMPUI" to "usercentricsCMPUI",
730
+ "usercentricsCard" to "usercentricsCard",
731
+ "usercentricsList" to "usercentricsList",
732
+ "vendorConsentToggle" to "vendorConsentToggle",
733
+ "vendorDetailedStorageInformation" to "vendorDetailedStorageInformation",
734
+ "vendorLegIntToggle" to "vendorLegIntToggle"
735
+ )
736
+
737
+ val expectedLegalBasisLocalization = hashMapOf(
738
+ "labelsAria" to expectedTranslationAriaLabels,
739
+ "data" to expectedData,
740
+ )
665
741
  }
@@ -20,6 +20,8 @@ import com.usercentrics.sdk.v2.settings.data.UsercentricsLabels
20
20
  import com.usercentrics.sdk.v2.settings.data.UsercentricsService
21
21
  import com.usercentrics.sdk.v2.settings.data.UsercentricsSettings
22
22
  import com.usercentrics.sdk.v2.settings.data.VariantsSettings
23
+ import com.usercentrics.sdk.v2.translation.data.LegalBasisLocalization
24
+ import com.usercentrics.sdk.v2.translation.data.TranslationAriaLabels
23
25
 
24
26
  internal fun UsercentricsCMPData.serialize(): WritableMap {
25
27
  return Arguments.createMap().apply {
@@ -28,6 +30,7 @@ internal fun UsercentricsCMPData.serialize(): WritableMap {
28
30
  putArray("categories", categories.map { it.serialize() }.serialize())
29
31
  putInt("activeVariant", activeVariant.ordinal)
30
32
  putMap("userLocation", userLocation.serialize())
33
+ putMap("legalBasis", legalBasis.serialize())
31
34
  }
32
35
  }
33
36
 
@@ -390,3 +393,42 @@ private fun AdTechProvider.serialize(): WritableMap {
390
393
  "privacyPolicyUrl" to privacyPolicyUrl,
391
394
  ).toWritableMap()
392
395
  }
396
+
397
+ private fun LegalBasisLocalization.serialize(): WritableMap {
398
+ return mapOf(
399
+ "labelsAria" to labelsAria?.serialize(),
400
+ "data" to data
401
+ ).toWritableMap()
402
+ }
403
+
404
+ private fun TranslationAriaLabels.serialize(): WritableMap {
405
+ return mapOf(
406
+ "acceptAllButton" to acceptAllButton,
407
+ "ccpaButton" to ccpaButton,
408
+ "ccpaMoreInformation" to ccpaMoreInformation,
409
+ "closeButton" to closeButton,
410
+ "collapse" to collapse,
411
+ "cookiePolicyButton" to cookiePolicyButton,
412
+ "copyControllerId" to copyControllerId,
413
+ "denyAllButton" to denyAllButton,
414
+ "expand" to expand,
415
+ "fullscreenButton" to fullscreenButton,
416
+ "imprintButton" to imprintButton,
417
+ "languageSelector" to languageSelector,
418
+ "privacyButton" to privacyButton,
419
+ "privacyPolicyButton" to privacyPolicyButton,
420
+ "saveButton" to saveButton,
421
+ "serviceInCategoryDetails" to serviceInCategoryDetails,
422
+ "servicesInCategory" to servicesInCategory,
423
+ "tabButton" to tabButton,
424
+ "usercentricsCMPButtons" to usercentricsCMPButtons,
425
+ "usercentricsCMPContent" to usercentricsCMPContent,
426
+ "usercentricsCMPHeader" to usercentricsCMPHeader,
427
+ "usercentricsCMPUI" to usercentricsCMPUI,
428
+ "usercentricsCard" to usercentricsCard,
429
+ "usercentricsList" to usercentricsList,
430
+ "vendorConsentToggle" to vendorConsentToggle,
431
+ "vendorDetailedStorageInformation" to vendorDetailedStorageInformation,
432
+ "vendorLegIntToggle" to vendorLegIntToggle,
433
+ ).toWritableMap()
434
+ }
@@ -329,7 +329,7 @@ extension UsercentricsService {
329
329
  "locationOfProcessing" : self.locationOfProcessing,
330
330
  "dataCollectedDescription" : self.dataCollectedDescription as Any,
331
331
  "thirdCountryTransfer" : self.thirdCountryTransfer,
332
- "description" : self.description,
332
+ "description" : self.description_ as Any,
333
333
  "cookieMaxAgeSeconds" : self.cookieMaxAgeSeconds as Any,
334
334
  "usesNonCookieAccess" : usesNonCookieAccess?.boolValue as Any,
335
335
  "deviceStorageDisclosureUrl" : self.deviceStorageDisclosureUrl as Any,
@@ -358,18 +358,18 @@ extension ConsentDisclosure {
358
358
  "cookieRefresh": self.cookieRefresh,
359
359
  "purposes": self.purposes,
360
360
  "domain": self.domain ?? "",
361
- "description": self.description,
361
+ "description": self.description_ as Any,
362
362
  ]
363
363
  }
364
364
  }
365
365
 
366
366
 
367
367
  extension UsercentricsCategory {
368
- func toDictionary() -> Any? {
368
+ func toDictionary() -> NSDictionary? {
369
369
  return [
370
370
  "categorySlug" : self.categorySlug,
371
371
  "label" : self.label as Any,
372
- "description" : self.description,
372
+ "description" : self.description_ as Any,
373
373
  "isEssential" : self.isEssential
374
374
  ]
375
375
  }
@@ -0,0 +1,35 @@
1
+ export declare class LegalBasisLocalization {
2
+ labelsAria?: TranslationAriaLabels;
3
+ data: Map<string, string>;
4
+ constructor(data: Map<string, string>, labelsAria?: TranslationAriaLabels);
5
+ }
6
+ export declare class TranslationAriaLabels {
7
+ acceptAllButton?: string;
8
+ ccpaButton?: string;
9
+ ccpaMoreInformation?: string;
10
+ closeButton?: string;
11
+ collapse?: string;
12
+ cookiePolicyButton?: string;
13
+ copyControllerId?: string;
14
+ denyAllButton?: string;
15
+ expand?: string;
16
+ fullscreenButton?: string;
17
+ imprintButton?: string;
18
+ languageSelector?: string;
19
+ privacyButton?: string;
20
+ privacyPolicyButton?: string;
21
+ saveButton?: string;
22
+ serviceInCategoryDetails?: string;
23
+ servicesInCategory?: string;
24
+ tabButton?: string;
25
+ usercentricsCMPButtons?: string;
26
+ usercentricsCMPContent?: string;
27
+ usercentricsCMPHeader?: string;
28
+ usercentricsCMPUI?: string;
29
+ usercentricsCard?: string;
30
+ usercentricsList?: string;
31
+ vendorConsentToggle?: string;
32
+ vendorDetailedStorageInformation?: string;
33
+ vendorLegIntToggle?: string;
34
+ constructor(acceptAllButton?: string, ccpaButton?: string, ccpaMoreInformation?: string, closeButton?: string, collapse?: string, cookiePolicyButton?: string, copyControllerId?: string, denyAllButton?: string, expand?: string, fullscreenButton?: string, imprintButton?: string, languageSelector?: string, privacyButton?: string, privacyPolicyButton?: string, saveButton?: string, serviceInCategoryDetails?: string, servicesInCategory?: string, tabButton?: string, usercentricsCMPButtons?: string, usercentricsCMPContent?: string, usercentricsCMPHeader?: string, usercentricsCMPUI?: string, usercentricsCard?: string, usercentricsList?: string, vendorConsentToggle?: string, vendorDetailedStorageInformation?: string, vendorLegIntToggle?: string);
35
+ }
@@ -0,0 +1,38 @@
1
+ export class LegalBasisLocalization {
2
+ constructor(data, labelsAria) {
3
+ this.data = data;
4
+ this.labelsAria = labelsAria;
5
+ }
6
+ }
7
+ export class TranslationAriaLabels {
8
+ constructor(acceptAllButton, ccpaButton, ccpaMoreInformation, closeButton, collapse, cookiePolicyButton, copyControllerId, denyAllButton, expand, fullscreenButton, imprintButton, languageSelector, privacyButton, privacyPolicyButton, saveButton, serviceInCategoryDetails, servicesInCategory, tabButton, usercentricsCMPButtons, usercentricsCMPContent, usercentricsCMPHeader, usercentricsCMPUI, usercentricsCard, usercentricsList, vendorConsentToggle, vendorDetailedStorageInformation, vendorLegIntToggle) {
9
+ this.acceptAllButton = acceptAllButton;
10
+ this.ccpaButton = ccpaButton;
11
+ this.ccpaMoreInformation = ccpaMoreInformation;
12
+ this.closeButton = closeButton;
13
+ this.collapse = collapse;
14
+ this.cookiePolicyButton = cookiePolicyButton;
15
+ this.copyControllerId = copyControllerId;
16
+ this.denyAllButton = denyAllButton;
17
+ this.expand = expand;
18
+ this.fullscreenButton = fullscreenButton;
19
+ this.imprintButton = imprintButton;
20
+ this.languageSelector = languageSelector;
21
+ this.privacyButton = privacyButton;
22
+ this.privacyPolicyButton = privacyPolicyButton;
23
+ this.saveButton = saveButton;
24
+ this.serviceInCategoryDetails = serviceInCategoryDetails;
25
+ this.servicesInCategory = servicesInCategory;
26
+ this.tabButton = tabButton;
27
+ this.usercentricsCMPButtons = usercentricsCMPButtons;
28
+ this.usercentricsCMPContent = usercentricsCMPContent;
29
+ this.usercentricsCMPHeader = usercentricsCMPHeader;
30
+ this.usercentricsCMPUI = usercentricsCMPUI;
31
+ this.usercentricsCard = usercentricsCard;
32
+ this.usercentricsList = usercentricsList;
33
+ this.vendorConsentToggle = vendorConsentToggle;
34
+ this.vendorDetailedStorageInformation = vendorDetailedStorageInformation;
35
+ this.vendorLegIntToggle = vendorLegIntToggle;
36
+ }
37
+ }
38
+ //# sourceMappingURL=LegalBasisLocalization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LegalBasisLocalization.js","sourceRoot":"","sources":["../../src/models/LegalBasisLocalization.tsx"],"names":[],"mappings":"AAAA,MAAM,OAAO,sBAAsB;IAI/B,YACI,IAAyB,EACzB,UAAkC;QAElC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;IAChC,CAAC;CACJ;AAED,MAAM,OAAO,qBAAqB;IA6B9B,YACI,eAAwB,EACxB,UAAmB,EACnB,mBAA4B,EAC5B,WAAoB,EACpB,QAAiB,EACjB,kBAA2B,EAC3B,gBAAyB,EACzB,aAAsB,EACtB,MAAe,EACf,gBAAyB,EACzB,aAAsB,EACtB,gBAAyB,EACzB,aAAsB,EACtB,mBAA4B,EAC5B,UAAmB,EACnB,wBAAiC,EACjC,kBAA2B,EAC3B,SAAkB,EAClB,sBAA+B,EAC/B,sBAA+B,EAC/B,qBAA8B,EAC9B,iBAA0B,EAC1B,gBAAyB,EACzB,gBAAyB,EACzB,mBAA4B,EAC5B,gCAAyC,EACzC,kBAA2B;QAE3B,IAAI,CAAC,eAAe,GAAG,eAAe,CAAA;QACtC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;QAC/C,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAA;QAC5C,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;QACxC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;QAClC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;QACxC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;QAClC,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;QACxC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;QAClC,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAA;QAC9C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,wBAAwB,GAAG,wBAAwB,CAAA;QACxD,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAA;QAC5C,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,sBAAsB,GAAG,sBAAsB,CAAA;QACpD,IAAI,CAAC,sBAAsB,GAAG,sBAAsB,CAAA;QACpD,IAAI,CAAC,qBAAqB,GAAG,qBAAqB,CAAA;QAClD,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAA;QAC1C,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;QACxC,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;QACxC,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAA;QAC9C,IAAI,CAAC,gCAAgC,GAAG,gCAAgC,CAAA;QACxE,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAA;IAChD,CAAC;CACJ"}
@@ -52,13 +52,13 @@ export declare class TCF2Settings {
52
52
  examplesLabel: string;
53
53
  firstLayerMobileVariant?: FirstLayerMobileVariant;
54
54
  showDataSharedOutsideEUText: boolean;
55
- dataSharedOutsideEUText?: String;
55
+ dataSharedOutsideEUText?: string;
56
56
  vendorIdsOutsideEUList: [number];
57
57
  scope: TCF2Scope;
58
58
  changedPurposes: TCF2ChangedPurposes;
59
59
  acmV2Enabled: boolean;
60
60
  selectedATPIds: number[];
61
- constructor(firstLayerTitle: string, secondLayerTitle: string, tabsPurposeLabel: string, tabsVendorsLabel: string, labelsFeatures: string, labelsIabVendors: string, labelsNonIabPurposes: string, labelsNonIabVendors: string, labelsPurposes: string, vendorFeatures: string, vendorLegitimateInterestPurposes: string, vendorPurpose: string, vendorSpecialFeatures: string, vendorSpecialPurposes: string, togglesConsentToggleLabel: string, togglesLegIntToggleLabel: string, buttonsAcceptAllLabel: string, buttonsDenyAllLabel: string, buttonsSaveLabel: string, linksManageSettingsLabel: string, linksVendorListLinkLabel: string, cmpId: number, cmpVersion: number, firstLayerHideToggles: boolean, secondLayerHideToggles: boolean, hideLegitimateInterestToggles: boolean, secondLayerHideButtonDeny: boolean, publisherCountryCode: string, purposeOneTreatment: boolean, selectedVendorIds: [number], gdprApplies: boolean, selectedStacks: [number], disabledSpecialFeatures: [number], firstLayerShowDescriptions: boolean, hideNonIabOnFirstLayer: boolean, resurfacePeriodEnded: boolean, resurfacePurposeChanged: boolean, resurfaceVendorAdded: boolean, firstLayerDescription: string, firstLayerAdditionalInfo: string, secondLayerDescription: string, togglesSpecialFeaturesToggleOn: string, togglesSpecialFeaturesToggleOff: string, appLayerNoteResurface: string, firstLayerNoteResurface: string, categoriesOfDataLabel: string, dataRetentionPeriodLabel: string, legitimateInterestLabel: string, version: string, examplesLabel: string, showDataSharedOutsideEUText: boolean, vendorIdsOutsideEUList: [number], scope: TCF2Scope, changedPurposes: TCF2ChangedPurposes, acmV2Enabled: boolean, selectedATPIds: number[], firstLayerHideButtonDeny?: boolean, firstLayerMobileVariant?: FirstLayerMobileVariant, dataSharedOutsideEUText?: String);
61
+ constructor(firstLayerTitle: string, secondLayerTitle: string, tabsPurposeLabel: string, tabsVendorsLabel: string, labelsFeatures: string, labelsIabVendors: string, labelsNonIabPurposes: string, labelsNonIabVendors: string, labelsPurposes: string, vendorFeatures: string, vendorLegitimateInterestPurposes: string, vendorPurpose: string, vendorSpecialFeatures: string, vendorSpecialPurposes: string, togglesConsentToggleLabel: string, togglesLegIntToggleLabel: string, buttonsAcceptAllLabel: string, buttonsDenyAllLabel: string, buttonsSaveLabel: string, linksManageSettingsLabel: string, linksVendorListLinkLabel: string, cmpId: number, cmpVersion: number, firstLayerHideToggles: boolean, secondLayerHideToggles: boolean, hideLegitimateInterestToggles: boolean, secondLayerHideButtonDeny: boolean, publisherCountryCode: string, purposeOneTreatment: boolean, selectedVendorIds: [number], gdprApplies: boolean, selectedStacks: [number], disabledSpecialFeatures: [number], firstLayerShowDescriptions: boolean, hideNonIabOnFirstLayer: boolean, resurfacePeriodEnded: boolean, resurfacePurposeChanged: boolean, resurfaceVendorAdded: boolean, firstLayerDescription: string, firstLayerAdditionalInfo: string, secondLayerDescription: string, togglesSpecialFeaturesToggleOn: string, togglesSpecialFeaturesToggleOff: string, appLayerNoteResurface: string, firstLayerNoteResurface: string, categoriesOfDataLabel: string, dataRetentionPeriodLabel: string, legitimateInterestLabel: string, version: string, examplesLabel: string, showDataSharedOutsideEUText: boolean, vendorIdsOutsideEUList: [number], scope: TCF2Scope, changedPurposes: TCF2ChangedPurposes, acmV2Enabled: boolean, selectedATPIds: number[], firstLayerHideButtonDeny?: boolean, firstLayerMobileVariant?: FirstLayerMobileVariant, dataSharedOutsideEUText?: string);
62
62
  }
63
63
  export declare enum FirstLayerMobileVariant {
64
64
  sheet = 0,
@@ -3,11 +3,13 @@ import { UsercentricsLocation } from "./UsercentricsLocation";
3
3
  import { UsercentricsService } from "./UsercentricsService";
4
4
  import { UsercentricsSettings } from "./UsercentricsSettings";
5
5
  import { UsercentricsVariant } from "./UsercentricsVariant";
6
+ import { LegalBasisLocalization } from "./LegalBasisLocalization";
6
7
  export declare class UsercentricsCMPData {
7
8
  settings: UsercentricsSettings;
8
9
  services: [UsercentricsService];
9
10
  categories: [UsercentricsCategory];
10
11
  activeVariant: UsercentricsVariant;
11
12
  userLocation: UsercentricsLocation;
12
- constructor(settings: UsercentricsSettings, services: [UsercentricsService], categories: [UsercentricsCategory], activeVariant: UsercentricsVariant, userLocation: UsercentricsLocation);
13
+ legalBasis: LegalBasisLocalization;
14
+ constructor(settings: UsercentricsSettings, services: [UsercentricsService], categories: [UsercentricsCategory], activeVariant: UsercentricsVariant, userLocation: UsercentricsLocation, legalBasis: LegalBasisLocalization);
13
15
  }
@@ -1,10 +1,11 @@
1
1
  export class UsercentricsCMPData {
2
- constructor(settings, services, categories, activeVariant, userLocation) {
2
+ constructor(settings, services, categories, activeVariant, userLocation, legalBasis) {
3
3
  this.settings = settings;
4
4
  this.services = services;
5
5
  this.categories = categories;
6
6
  this.activeVariant = activeVariant;
7
7
  this.userLocation = userLocation;
8
+ this.legalBasis = legalBasis;
8
9
  }
9
10
  }
10
11
  //# sourceMappingURL=UsercentricsCMPData.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UsercentricsCMPData.js","sourceRoot":"","sources":["../../src/models/UsercentricsCMPData.tsx"],"names":[],"mappings":"AAMA,MAAM,OAAO,mBAAmB;IAa5B,YACI,QAA8B,EAC9B,QAA+B,EAC/B,UAAkC,EAClC,aAAkC,EAClC,YAAkC;QAElC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;QAClC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;IACpC,CAAC;CACJ"}
1
+ {"version":3,"file":"UsercentricsCMPData.js","sourceRoot":"","sources":["../../src/models/UsercentricsCMPData.tsx"],"names":[],"mappings":"AAOA,MAAM,OAAO,mBAAmB;IAe5B,YACI,QAA8B,EAC9B,QAA+B,EAC/B,UAAkC,EAClC,aAAkC,EAClC,YAAkC,EAClC,UAAkC;QAElC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;QAClC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;QAChC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;IAChC,CAAC;CACJ"}
@@ -26,3 +26,4 @@ export * from './UsercentricsLabels';
26
26
  export * from './UsercentricsLocation';
27
27
  export * from './UsercentricsSettings';
28
28
  export * from './GeolocationRuleset';
29
+ export * from './LegalBasisLocalization';
@@ -26,4 +26,5 @@ export * from './UsercentricsLabels';
26
26
  export * from './UsercentricsLocation';
27
27
  export * from './UsercentricsSettings';
28
28
  export * from './GeolocationRuleset';
29
+ export * from './LegalBasisLocalization';
29
30
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/models/index.tsx"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,sBAAsB,CAAC;AACrC,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,WAAW,CAAC;AAC1B,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mCAAmC,CAAC;AAClD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kCAAkC,CAAC;AACjD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/models/index.tsx"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,sBAAsB,CAAC;AACrC,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,WAAW,CAAC;AAC1B,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mCAAmC,CAAC;AAClD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kCAAkC,CAAC;AACjD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAA"}
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "@usercentrics/react-native-sdk",
3
- "version": "2.15.1",
3
+ "version": "2.15.3",
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.15.1",
10
+ "iosPackageVersion": "2.15.2",
11
11
  "license": "SEE LICENSE IN LICENSE",
12
12
  "files": [
13
13
  "android",