@usercentrics/react-native-sdk 2.24.3 → 2.25.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- def usercentrics_version = "2.24.3"
1
+ def usercentrics_version = "2.25.0"
2
2
  version usercentrics_version
3
3
 
4
4
  buildscript {
@@ -1,4 +1,4 @@
1
- val usercentricsVersion = "2.24.3"
1
+ val usercentricsVersion = "2.25.0"
2
2
  val reactNativeVersion = "+"
3
3
 
4
4
  fun BooleanProperty(name: String): Boolean {
@@ -11,6 +11,7 @@ val isHermesEnabled = BooleanProperty("hermesEnabled")
11
11
  plugins {
12
12
  id("com.android.library")
13
13
  id("kotlin-android")
14
+ id("org.jetbrains.kotlinx.kover") version "0.9.1"
14
15
  }
15
16
 
16
17
  if (isNewArchitectureEnabled) {
@@ -37,6 +38,11 @@ android {
37
38
 
38
39
  }
39
40
 
41
+ buildTypes {
42
+ getByName("debug") {
43
+ }
44
+ }
45
+
40
46
  compileOptions {
41
47
  sourceCompatibility = JavaVersion.VERSION_17
42
48
  targetCompatibility = JavaVersion.VERSION_17
@@ -88,7 +88,8 @@ internal object GetCMPDataMock {
88
88
  domain = "domain",
89
89
  description = "description",
90
90
  )
91
- )
91
+ ),
92
+ sdks = listOf()
92
93
  ),
93
94
  isHidden = false,
94
95
  )
@@ -628,17 +629,20 @@ internal object GetCMPDataMock {
628
629
  "isDeactivated" to false,
629
630
  "disableLegalBasis" to false,
630
631
  "technologyUsed" to listOf("Cookies", "Pixel Tags"),
631
- "deviceStorage" to listOf(
632
- mapOf(
633
- "identifier" to "identifier",
634
- "type" to 2,
635
- "name" to "name",
636
- "maxAgeSeconds" to 123123L,
637
- "cookieRefresh" to true,
638
- "purposes" to listOf(1, 2, 3),
639
- "domain" to "domain",
640
- "description" to "description",
641
- )
632
+ "deviceStorage" to mapOf(
633
+ "disclosures" to listOf(
634
+ mapOf(
635
+ "identifier" to "identifier",
636
+ "type" to 2,
637
+ "name" to "name",
638
+ "maxAgeSeconds" to 123123L,
639
+ "cookieRefresh" to true,
640
+ "purposes" to listOf(1, 2, 3),
641
+ "domain" to "domain",
642
+ "description" to "description",
643
+ )
644
+ ),
645
+ "sdks" to emptyList<Map<String, Any>>()
642
646
  ),
643
647
  "isHidden" to false,
644
648
  )
@@ -95,8 +95,8 @@ internal class RNUsercentricsModule(
95
95
  }
96
96
 
97
97
  @ReactMethod
98
- override fun setCMPId(id: Int) {
99
- usercentricsProxy.instance.setCMPId(id)
98
+ override fun setCMPId(id: Double) {
99
+ usercentricsProxy.instance.setCMPId(id.toInt())
100
100
  }
101
101
 
102
102
  @ReactMethod
@@ -131,37 +131,37 @@ internal class RNUsercentricsModule(
131
131
  }
132
132
 
133
133
  @ReactMethod
134
- override fun acceptAllForTCF(fromLayer: Int, consentType: Int, promise: Promise) {
134
+ override fun acceptAllForTCF(fromLayer: Double, consentType: Double, promise: Promise) {
135
135
  promise.resolve(
136
136
  usercentricsProxy.instance.acceptAllForTCF(
137
- TCFDecisionUILayer.values()[fromLayer], UsercentricsConsentType.values()[consentType]
137
+ TCFDecisionUILayer.values()[fromLayer.toInt()], UsercentricsConsentType.values()[consentType.toInt()]
138
138
  ).toWritableArray()
139
139
  )
140
140
  }
141
141
 
142
142
  @ReactMethod
143
- override fun acceptAll(consentType: Int, promise: Promise) {
143
+ override fun acceptAll(consentType: Double, promise: Promise) {
144
144
  promise.resolve(
145
145
  usercentricsProxy.instance.acceptAll(
146
- UsercentricsConsentType.values()[consentType]
146
+ UsercentricsConsentType.values()[consentType.toInt()]
147
147
  ).toWritableArray()
148
148
  )
149
149
  }
150
150
 
151
151
  @ReactMethod
152
- override fun denyAllForTCF(fromLayer: Int, consentType: Int, unsavedPurposeLIDecisions: ReadableArray, promise: Promise) {
152
+ override fun denyAllForTCF(fromLayer: Double, consentType: Double, unsavedPurposeLIDecisions: ReadableArray, promise: Promise) {
153
153
  promise.resolve(
154
154
  usercentricsProxy.instance.denyAllForTCF(
155
- TCFDecisionUILayer.values()[fromLayer], UsercentricsConsentType.values()[consentType], unsavedPurposeLIDecisions.deserializePurposeLIDecisionsMap()
155
+ TCFDecisionUILayer.values()[fromLayer.toInt()], UsercentricsConsentType.values()[consentType.toInt()], unsavedPurposeLIDecisions.deserializePurposeLIDecisionsMap()
156
156
  ).toWritableArray()
157
157
  )
158
158
  }
159
159
 
160
160
  @ReactMethod
161
- override fun denyAll(consentType: Int, promise: Promise) {
161
+ override fun denyAll(consentType: Double, promise: Promise) {
162
162
  promise.resolve(
163
163
  usercentricsProxy.instance.denyAll(
164
- UsercentricsConsentType.values()[consentType]
164
+ UsercentricsConsentType.values()[consentType.toInt()]
165
165
  ).toWritableArray()
166
166
  )
167
167
  }
@@ -169,42 +169,42 @@ internal class RNUsercentricsModule(
169
169
  @ReactMethod
170
170
  override fun saveDecisionsForTCF(
171
171
  tcfDecisions: ReadableMap,
172
- fromLayer: Int,
172
+ fromLayer: Double,
173
173
  saveDecisions: ReadableArray,
174
- consentType: Int,
174
+ consentType: Double,
175
175
  promise: Promise
176
176
  ) {
177
177
  promise.resolve(
178
178
  usercentricsProxy.instance.saveDecisionsForTCF(
179
179
  tcfDecisions.deserializeTCFUserDecisions(),
180
- TCFDecisionUILayer.values()[fromLayer],
180
+ TCFDecisionUILayer.values()[fromLayer.toInt()],
181
181
  saveDecisions.deserializeUserDecision(),
182
- UsercentricsConsentType.values()[consentType]
182
+ UsercentricsConsentType.values()[consentType.toInt()]
183
183
  ).toWritableArray()
184
184
  )
185
185
  }
186
186
 
187
187
  @ReactMethod
188
- override fun saveDecisions(decisions: ReadableArray, consentType: Int, promise: Promise) {
188
+ override fun saveDecisions(decisions: ReadableArray, consentType: Double, promise: Promise) {
189
189
  promise.resolve(
190
190
  usercentricsProxy.instance.saveDecisions(
191
- decisions.deserializeUserDecision(), UsercentricsConsentType.values()[consentType]
191
+ decisions.deserializeUserDecision(), UsercentricsConsentType.values()[consentType.toInt()]
192
192
  ).toWritableArray()
193
193
  )
194
194
  }
195
195
 
196
196
  @ReactMethod
197
- override fun saveOptOutForCCPA(isOptedOut: Boolean, consentType: Int, promise: Promise) {
197
+ override fun saveOptOutForCCPA(isOptedOut: Boolean, consentType: Double, promise: Promise) {
198
198
  promise.resolve(
199
199
  usercentricsProxy.instance.saveOptOutForCCPA(
200
- isOptedOut, UsercentricsConsentType.values()[consentType]
200
+ isOptedOut, UsercentricsConsentType.values()[consentType.toInt()]
201
201
  ).toWritableArray()
202
202
  )
203
203
  }
204
204
 
205
205
  @ReactMethod
206
- override fun track(event: Int) {
207
- usercentricsProxy.instance.track(UsercentricsAnalyticsEventType.values()[event])
206
+ override fun track(event: Double) {
207
+ usercentricsProxy.instance.track(UsercentricsAnalyticsEventType.values()[event.toInt()])
208
208
  }
209
209
 
210
210
  @ReactMethod
@@ -55,7 +55,7 @@ abstract class RNUsercentricsModuleSpec internal constructor(context: ReactAppli
55
55
  abstract fun getABTestingVariant(promise: Promise)
56
56
 
57
57
  @ReactMethod
58
- abstract fun setCMPId(id: Int)
58
+ abstract fun setCMPId(id: Double)
59
59
 
60
60
  @ReactMethod
61
61
  abstract fun setABTestingVariant(variant: String)
@@ -64,34 +64,34 @@ abstract class RNUsercentricsModuleSpec internal constructor(context: ReactAppli
64
64
  abstract fun changeLanguage(language: String, promise: Promise)
65
65
 
66
66
  @ReactMethod
67
- abstract fun acceptAll(consentType: Int, promise: Promise)
67
+ abstract fun acceptAll(consentType: Double, promise: Promise)
68
68
 
69
69
  @ReactMethod
70
- abstract fun acceptAllForTCF(fromLayer: Int, consentType: Int, promise: Promise)
70
+ abstract fun acceptAllForTCF(fromLayer: Double, consentType: Double, promise: Promise)
71
71
 
72
72
  @ReactMethod
73
- abstract fun denyAll(consentType: Int, promise: Promise)
73
+ abstract fun denyAll(consentType: Double, promise: Promise)
74
74
 
75
75
  @ReactMethod
76
- abstract fun denyAllForTCF(fromLayer: Int, consentType: Int, unsavedPurposeLIDecisions: ReadableArray, promise: Promise)
76
+ abstract fun denyAllForTCF(fromLayer: Double, consentType: Double, unsavedPurposeLIDecisions: ReadableArray, promise: Promise)
77
77
 
78
78
  @ReactMethod
79
- abstract fun saveDecisions(decisions: ReadableArray, consentType: Int, promise: Promise)
79
+ abstract fun saveDecisions(decisions: ReadableArray, consentType: Double, promise: Promise)
80
80
 
81
81
  @ReactMethod
82
82
  abstract fun saveDecisionsForTCF(
83
83
  tcfDecisions: ReadableMap,
84
- fromLayer: Int,
84
+ fromLayer: Double,
85
85
  saveDecisions: ReadableArray,
86
- consentType: Int,
86
+ consentType: Double,
87
87
  promise: Promise
88
88
  )
89
89
 
90
90
  @ReactMethod
91
- abstract fun saveOptOutForCCPA(isOptedOut: Boolean, consentType: Int, promise: Promise)
91
+ abstract fun saveOptOutForCCPA(isOptedOut: Boolean, consentType: Double, promise: Promise)
92
92
 
93
93
  @ReactMethod
94
- abstract fun track(event: Int)
94
+ abstract fun track(event: Double)
95
95
 
96
96
  companion object {
97
97
  const val NAME = "RNUsercentricsModule"
@@ -2,12 +2,23 @@ package com.usercentrics.reactnative.extensions
2
2
 
3
3
  import com.usercentrics.sdk.v2.settings.data.ConsentDisclosure
4
4
  import com.usercentrics.sdk.v2.settings.data.ConsentDisclosureObject
5
+ import com.usercentrics.sdk.v2.settings.data.ConsentDisclosureSDK
5
6
 
6
7
  internal fun ConsentDisclosureObject?.serialize(): Any? {
7
8
  if (this == null) {
8
9
  return null
9
10
  }
10
- return disclosures.map { it.serialize() }
11
+ return mapOf(
12
+ "disclosures" to disclosures.map { it.serialize() },
13
+ "sdks" to sdks.map { it.serialize() }
14
+ )
15
+ }
16
+
17
+ private fun ConsentDisclosureSDK.serialize(): Map<String, Any> {
18
+ return mapOf(
19
+ "name" to name,
20
+ "use" to use
21
+ )
11
22
  }
12
23
 
13
24
  internal fun ConsentDisclosure.serialize(): Any {
@@ -20,17 +20,17 @@ internal class FakePromise : Promise {
20
20
  lock.countDown()
21
21
  }
22
22
 
23
- override fun reject(code: String, message: String?) {
23
+ override fun reject(code: String?, message: String?) {
24
24
  rejectThrowable = RuntimeException("$code: $message")
25
25
  lock.countDown()
26
26
  }
27
27
 
28
- override fun reject(code: String, throwable: Throwable?) {
28
+ override fun reject(code: String?, throwable: Throwable?) {
29
29
  rejectThrowable = throwable ?: RuntimeException(code)
30
30
  lock.countDown()
31
31
  }
32
32
 
33
- override fun reject(code: String, message: String?, throwable: Throwable?) {
33
+ override fun reject(code: String?, message: String?, throwable: Throwable?) {
34
34
  rejectThrowable = throwable ?: RuntimeException("$code: $message")
35
35
  lock.countDown()
36
36
  }
@@ -45,17 +45,17 @@ internal class FakePromise : Promise {
45
45
  lock.countDown()
46
46
  }
47
47
 
48
- override fun reject(code: String, userInfo: WritableMap) {
48
+ override fun reject(code: String?, userInfo: WritableMap) {
49
49
  rejectThrowable = RuntimeException("$code: $userInfo")
50
50
  lock.countDown()
51
51
  }
52
52
 
53
- override fun reject(code: String, throwable: Throwable?, userInfo: WritableMap) {
53
+ override fun reject(code: String?, throwable: Throwable?, userInfo: WritableMap) {
54
54
  rejectThrowable = throwable
55
55
  lock.countDown()
56
56
  }
57
57
 
58
- override fun reject(code: String, message: String?, userInfo: WritableMap) {
58
+ override fun reject(code: String?, message: String?, userInfo: WritableMap) {
59
59
  rejectThrowable = RuntimeException("$code: $message")
60
60
  lock.countDown()
61
61
  }
@@ -364,7 +364,10 @@ extension UsercentricsService {
364
364
 
365
365
  extension ConsentDisclosureObject {
366
366
  func toDictionary() -> Any {
367
- return self.disclosures.map { $0.toDictionary() }
367
+ return [
368
+ "disclosures": self.disclosures.map { $0.toDictionary() },
369
+ "sdks": self.sdks.map { ["name": $0.name, "use": $0.use] }
370
+ ]
368
371
  }
369
372
  }
370
373
 
@@ -60,47 +60,47 @@ RCT_EXTERN_METHOD(changeLanguage:(NSString *)language
60
60
  resolve:(RCTPromiseResolveBlock)resolve
61
61
  reject:(RCTPromiseRejectBlock)reject)
62
62
 
63
- RCT_EXTERN_METHOD(acceptAllForTCF:(NSInteger *)fromLayer
64
- consentType:(NSInteger)consentType
63
+ RCT_EXTERN_METHOD(acceptAllForTCF:(double)fromLayer
64
+ consentType:(double)consentType
65
65
  resolve:(RCTPromiseResolveBlock)resolve
66
66
  reject:(RCTPromiseRejectBlock)reject)
67
67
 
68
- RCT_EXTERN_METHOD(acceptAll:(NSInteger *)consentType
68
+ RCT_EXTERN_METHOD(acceptAll:(double)consentType
69
69
  resolve:(RCTPromiseResolveBlock)resolve
70
70
  reject:(RCTPromiseRejectBlock)reject)
71
71
 
72
- RCT_EXTERN_METHOD(denyAllForTCF:(NSInteger *)fromLayer
73
- consentType:(NSInteger)consentType
72
+ RCT_EXTERN_METHOD(denyAllForTCF:(double)fromLayer
73
+ consentType:(double)consentType
74
74
  unsavedPurposeLIDecisions:(NSArray)unsavedPurposeLIDecisions
75
75
  resolve:(RCTPromiseResolveBlock)resolve
76
76
  reject:(RCTPromiseRejectBlock)reject)
77
77
 
78
- RCT_EXTERN_METHOD(denyAll:(NSInteger *)consentType
78
+ RCT_EXTERN_METHOD(denyAll:(double)consentType
79
79
  resolve:(RCTPromiseResolveBlock)resolve
80
80
  reject:(RCTPromiseRejectBlock)reject)
81
81
 
82
82
  RCT_EXTERN_METHOD(saveDecisionsForTCF:(NSDictionary *)tcfDecisions
83
- fromLayer:(NSInteger)fromLayer
83
+ fromLayer:(double)fromLayer
84
84
  serviceDecisions:(NSArray)serviceDecisions
85
- consentType:(NSInteger)consentType
85
+ consentType:(double)consentType
86
86
  resolve:(RCTPromiseResolveBlock)resolve
87
87
  reject:(RCTPromiseRejectBlock)reject)
88
88
 
89
89
  RCT_EXTERN_METHOD(saveDecisions:(NSArray)serviceDecisions
90
- consentType:(NSInteger)consentType
90
+ consentType:(double)consentType
91
91
  resolve:(RCTPromiseResolveBlock)resolve
92
92
  reject:(RCTPromiseRejectBlock)reject)
93
93
 
94
94
  RCT_EXTERN_METHOD(saveOptOutForCCPA:(BOOL *)isOptedOut
95
- consentType:(NSInteger)consentType
95
+ consentType:(double)consentType
96
96
  resolve:(RCTPromiseResolveBlock)resolve
97
97
  reject:(RCTPromiseRejectBlock)reject)
98
98
 
99
- RCT_EXTERN_METHOD(setCMPId:(NSInteger *)id)
99
+ RCT_EXTERN_METHOD(setCMPId:(double)id)
100
100
 
101
101
  RCT_EXTERN_METHOD(setABTestingVariant:(NSString *)variant)
102
102
 
103
- RCT_EXTERN_METHOD(track:(NSInteger *)event)
103
+ RCT_EXTERN_METHOD(track:(double)event)
104
104
 
105
105
  RCT_EXTERN_METHOD(clearUserSession:(RCTPromiseResolveBlock)resolve
106
106
  reject:(RCTPromiseRejectBlock)reject)
@@ -81,7 +81,7 @@ class RNUsercentricsModule: NSObject {
81
81
  }
82
82
  }
83
83
 
84
- @objc func setCMPId(_ id: Int) -> Void {
84
+ @objc func setCMPId(_ id: Double) -> Void {
85
85
  usercentricsManager.setCMPId(id: Int32(id))
86
86
  }
87
87
 
@@ -139,24 +139,24 @@ class RNUsercentricsModule: NSObject {
139
139
  }
140
140
  }
141
141
 
142
- @objc func acceptAllForTCF(_ fromLayer: Int,
143
- consentType: Int,
142
+ @objc func acceptAllForTCF(_ fromLayer: Double,
143
+ consentType: Double,
144
144
  resolve: @escaping RCTPromiseResolveBlock,
145
145
  reject: @escaping RCTPromiseRejectBlock) -> Void {
146
- let services = usercentricsManager.acceptAllForTCF(fromLayer: TCFDecisionUILayer.initialize(from: fromLayer),
147
- consentType: UsercentricsConsentType.initialize(from: consentType))
146
+ let services = usercentricsManager.acceptAllForTCF(fromLayer: TCFDecisionUILayer.initialize(from: Int(fromLayer)),
147
+ consentType: UsercentricsConsentType.initialize(from: Int(consentType)))
148
148
  resolve(services.toListOfDictionary())
149
149
  }
150
150
 
151
- @objc func acceptAll(_ consentType: Int,
151
+ @objc func acceptAll(_ consentType: Double,
152
152
  resolve: @escaping RCTPromiseResolveBlock,
153
153
  reject: @escaping RCTPromiseRejectBlock) -> Void {
154
- let services = usercentricsManager.acceptAll(consentType: UsercentricsConsentType.initialize(from: consentType))
154
+ let services = usercentricsManager.acceptAll(consentType: UsercentricsConsentType.initialize(from: Int(consentType)))
155
155
  resolve(services.toListOfDictionary())
156
156
  }
157
157
 
158
- @objc func denyAllForTCF(_ fromLayer: Int,
159
- consentType: Int,
158
+ @objc func denyAllForTCF(_ fromLayer: Double,
159
+ consentType: Double,
160
160
  unsavedPurposeLIDecisions: [NSDictionary],
161
161
  resolve: @escaping RCTPromiseResolveBlock,
162
162
  reject: @escaping RCTPromiseRejectBlock) -> Void {
@@ -170,51 +170,51 @@ class RNUsercentricsModule: NSObject {
170
170
  }
171
171
  }
172
172
  }
173
- let services = usercentricsManager.denyAllForTCF(fromLayer: .initialize(from: fromLayer), consentType: .initialize(from: consentType), unsavedPurposeLIDecisions: decisions)
173
+ let services = usercentricsManager.denyAllForTCF(fromLayer: .initialize(from: Int(fromLayer)), consentType: .initialize(from: Int(consentType)), unsavedPurposeLIDecisions: decisions)
174
174
  resolve(services.toListOfDictionary())
175
175
  }
176
176
 
177
- @objc func denyAll(_ consentType: Int,
177
+ @objc func denyAll(_ consentType: Double,
178
178
  resolve: @escaping RCTPromiseResolveBlock,
179
179
  reject: @escaping RCTPromiseRejectBlock) -> Void {
180
- let services = usercentricsManager.denyAll(consentType: .initialize(from: consentType))
180
+ let services = usercentricsManager.denyAll(consentType: .initialize(from: Int(consentType)))
181
181
  resolve(services.toListOfDictionary())
182
182
  }
183
183
 
184
184
  @objc func saveDecisionsForTCF(_ tcfDecisions: NSDictionary,
185
- fromLayer: Int,
185
+ fromLayer: Double,
186
186
  serviceDecisions: [NSDictionary],
187
- consentType: Int,
187
+ consentType: Double,
188
188
  resolve: @escaping RCTPromiseResolveBlock,
189
189
  reject: @escaping RCTPromiseRejectBlock) -> Void {
190
190
 
191
191
  let services = usercentricsManager.saveDecisionsForTCF(
192
192
  tcfDecisions: TCFUserDecisions(from: tcfDecisions),
193
- fromLayer: .initialize(from: fromLayer),
193
+ fromLayer: .initialize(from: Int(fromLayer)),
194
194
  serviceDecisions: serviceDecisions.compactMap { UserDecision(from: $0) },
195
- consentType: .initialize(from: consentType))
195
+ consentType: .initialize(from: Int(consentType)))
196
196
  resolve(services.toListOfDictionary())
197
197
 
198
198
  }
199
199
 
200
200
  @objc func saveDecisions(_ decisions: [NSDictionary],
201
- consentType: Int,
201
+ consentType: Double,
202
202
  resolve: @escaping RCTPromiseResolveBlock,
203
203
  reject: @escaping RCTPromiseRejectBlock) -> Void {
204
- let services = usercentricsManager.saveDecisions(decisions: decisions.compactMap { UserDecision.init(from: $0) }, consentType: .initialize(from: consentType))
204
+ let services = usercentricsManager.saveDecisions(decisions: decisions.compactMap { UserDecision.init(from: $0) }, consentType: .initialize(from: Int(consentType)))
205
205
  resolve(services.toListOfDictionary())
206
206
  }
207
207
 
208
208
  @objc func saveOptOutForCCPA(_ isOptedOut: Bool,
209
- consentType: Int,
209
+ consentType: Double,
210
210
  resolve: @escaping RCTPromiseResolveBlock,
211
211
  reject: @escaping RCTPromiseRejectBlock) -> Void {
212
- let services = usercentricsManager.saveOptOutForCCPA(isOptedOut: isOptedOut, consentType: .initialize(from: consentType))
212
+ let services = usercentricsManager.saveOptOutForCCPA(isOptedOut: isOptedOut, consentType: .initialize(from: Int(consentType)))
213
213
  resolve(services.toListOfDictionary())
214
214
  }
215
215
 
216
- @objc func track(_ event: Int) -> Void {
217
- guard let usercentricsAnalyticsEventType = UsercentricsAnalyticsEventType.initialize(from: event) else { return }
216
+ @objc func track(_ event: Double) -> Void {
217
+ guard let usercentricsAnalyticsEventType = UsercentricsAnalyticsEventType.initialize(from: Int(event)) else { return }
218
218
  usercentricsManager.track(event: usercentricsAnalyticsEventType)
219
219
  }
220
220
 
@@ -52,51 +52,51 @@ NS_ASSUME_NONNULL_BEGIN
52
52
  reject:(RCTPromiseRejectBlock)reject;
53
53
 
54
54
  // Configuration Setters
55
- - (void)setCMPId:(NSInteger)cmpId;
55
+ - (void)setCMPId:(double)cmpId;
56
56
  - (void)setABTestingVariant:(NSString *)variant;
57
57
  - (void)changeLanguage:(NSString *)language
58
58
  resolve:(RCTPromiseResolveBlock)resolve
59
59
  reject:(RCTPromiseRejectBlock)reject;
60
60
 
61
61
  // Consent Actions
62
- - (void)acceptAll:(NSInteger)consentType
62
+ - (void)acceptAll:(double)consentType
63
63
  resolve:(RCTPromiseResolveBlock)resolve
64
64
  reject:(RCTPromiseRejectBlock)reject;
65
65
 
66
- - (void)acceptAllForTCF:(NSInteger)fromLayer
67
- consentType:(NSInteger)consentType
66
+ - (void)acceptAllForTCF:(double)fromLayer
67
+ consentType:(double)consentType
68
68
  resolve:(RCTPromiseResolveBlock)resolve
69
69
  reject:(RCTPromiseRejectBlock)reject;
70
70
 
71
- - (void)denyAll:(NSInteger)consentType
71
+ - (void)denyAll:(double)consentType
72
72
  resolve:(RCTPromiseResolveBlock)resolve
73
73
  reject:(RCTPromiseRejectBlock)reject;
74
74
 
75
- - (void)denyAllForTCF:(NSInteger)fromLayer
76
- consentType:(NSInteger)consentType
75
+ - (void)denyAllForTCF:(double)fromLayer
76
+ consentType:(double)consentType
77
77
  unsavedPurposeLIDecisions:(NSArray<NSDictionary *> *)unsavedPurposeLIDecisions
78
78
  resolve:(RCTPromiseResolveBlock)resolve
79
79
  reject:(RCTPromiseRejectBlock)reject;
80
80
 
81
81
  - (void)saveDecisions:(NSArray<NSDictionary *> *)decisions
82
- consentType:(NSInteger)consentType
82
+ consentType:(double)consentType
83
83
  resolve:(RCTPromiseResolveBlock)resolve
84
84
  reject:(RCTPromiseRejectBlock)reject;
85
85
 
86
86
  - (void)saveDecisionsForTCF:(NSDictionary *)tcfDecisions
87
- fromLayer:(NSInteger)fromLayer
87
+ fromLayer:(double)fromLayer
88
88
  saveDecisions:(NSArray<NSDictionary *> *)saveDecisions
89
- consentType:(NSInteger)consentType
89
+ consentType:(double)consentType
90
90
  resolve:(RCTPromiseResolveBlock)resolve
91
91
  reject:(RCTPromiseRejectBlock)reject;
92
92
 
93
93
  - (void)saveOptOutForCCPA:(BOOL)isOptedOut
94
- consentType:(NSInteger)consentType
94
+ consentType:(double)consentType
95
95
  resolve:(RCTPromiseResolveBlock)resolve
96
96
  reject:(RCTPromiseRejectBlock)reject;
97
97
 
98
98
  // Analytics
99
- - (void)track:(NSInteger)event;
99
+ - (void)track:(double)event;
100
100
 
101
101
  @end
102
102
 
@@ -1,6 +1,12 @@
1
+ export declare class ConsentDisclosureSDK {
2
+ name: string;
3
+ use: string;
4
+ constructor(name: string, use: string);
5
+ }
1
6
  export declare class ConsentDisclosureObject {
2
7
  disclosures: [ConsentDisclosure];
3
- constructor(disclosures: [ConsentDisclosure]);
8
+ sdks: ConsentDisclosureSDK[];
9
+ constructor(disclosures: [ConsentDisclosure], sdks?: ConsentDisclosureSDK[]);
4
10
  }
5
11
  export declare class ConsentDisclosure {
6
12
  identifier?: string;
@@ -1,6 +1,13 @@
1
+ export class ConsentDisclosureSDK {
2
+ constructor(name, use) {
3
+ this.name = name;
4
+ this.use = use;
5
+ }
6
+ }
1
7
  export class ConsentDisclosureObject {
2
- constructor(disclosures) {
8
+ constructor(disclosures, sdks) {
3
9
  this.disclosures = disclosures;
10
+ this.sdks = sdks !== null && sdks !== void 0 ? sdks : [];
4
11
  }
5
12
  }
6
13
  export class ConsentDisclosure {
@@ -1 +1 @@
1
- {"version":3,"file":"ConsentDisclosureObject.js","sourceRoot":"","sources":["../../src/models/ConsentDisclosureObject.tsx"],"names":[],"mappings":"AAAA,MAAM,OAAO,uBAAuB;IAIhC,YAAY,WAAgC;QACxC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;IAClC,CAAC;CACJ;AAED,MAAM,OAAO,iBAAiB;IAW1B,YACI,aAAsB,EACtB,QAAkB,EAClB,UAAmB,EACnB,IAA4B,EAC5B,IAAa,EACb,aAAsB,EACtB,MAAe,EACf,WAAoB;QAEpB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;QAClC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;QAClC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;IAClC,CAAC;CACJ;AAED,MAAM,CAAN,IAAY,qBAKX;AALD,WAAY,qBAAqB;IAE7B,qEAAU,CAAA;IACV,+DAAO,CAAA;IACP,+DAAO,CAAA;AACX,CAAC,EALW,qBAAqB,KAArB,qBAAqB,QAKhC"}
1
+ {"version":3,"file":"ConsentDisclosureObject.js","sourceRoot":"","sources":["../../src/models/ConsentDisclosureObject.tsx"],"names":[],"mappings":"AAAA,MAAM,OAAO,oBAAoB;IAI7B,YAAY,IAAY,EAAE,GAAW;QACjC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;IAClB,CAAC;CACJ;AAED,MAAM,OAAO,uBAAuB;IAKhC,YAAY,WAAgC,EAAE,IAA6B;QACvE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,IAAI,GAAG,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAAA;IAC1B,CAAC;CACJ;AAED,MAAM,OAAO,iBAAiB;IAW1B,YACI,aAAsB,EACtB,QAAkB,EAClB,UAAmB,EACnB,IAA4B,EAC5B,IAAa,EACb,aAAsB,EACtB,MAAe,EACf,WAAoB;QAEpB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;QAClC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;QAClC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;IAClC,CAAC;CACJ;AAED,MAAM,CAAN,IAAY,qBAKX;AALD,WAAY,qBAAqB;IAE7B,qEAAU,CAAA;IACV,+DAAO,CAAA;IACP,+DAAO,CAAA;AACX,CAAC,EALW,qBAAqB,KAArB,qBAAqB,QAKhC"}
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "@usercentrics/react-native-sdk",
3
- "version": "2.24.3",
3
+ "version": "2.25.0",
4
4
  "description": "Usercentrics SDK",
5
5
  "homepage": "https://usercentrics.com",
6
6
  "main": "lib/index.js",
7
7
  "types": "lib/index.d.ts",
8
8
  "author": "Usercentrics <developer@usercentrics.com>",
9
9
  "iosPackageName": "react-native-usercentrics",
10
- "iosPackageVersion": "2.24.3",
10
+ "iosPackageVersion": "2.25.0",
11
11
  "license": "SEE LICENSE IN LICENSE",
12
12
  "files": [
13
13
  "android",
@@ -78,6 +78,16 @@
78
78
  "jsx",
79
79
  "json",
80
80
  "node"
81
+ ],
82
+ "collectCoverage": true,
83
+ "collectCoverageFrom": [
84
+ "src/**/*.{ts,tsx}",
85
+ "!src/**/*.d.ts"
86
+ ],
87
+ "coverageDirectory": "coverage",
88
+ "coverageReporters": [
89
+ "text",
90
+ "lcov"
81
91
  ]
82
92
  },
83
93
  "directories": {
@@ -268,7 +268,8 @@ const disclosure: ConsentDisclosure = {
268
268
  }
269
269
 
270
270
  const consentDisclosureObject: ConsentDisclosureObject = {
271
- disclosures: [disclosure]
271
+ disclosures: [disclosure],
272
+ sdks: [],
272
273
  }
273
274
 
274
275
  const ucService: UsercentricsService = {
@@ -1,9 +1,21 @@
1
+ export class ConsentDisclosureSDK {
2
+ name: string
3
+ use: string
4
+
5
+ constructor(name: string, use: string) {
6
+ this.name = name
7
+ this.use = use
8
+ }
9
+ }
10
+
1
11
  export class ConsentDisclosureObject {
2
12
 
3
13
  disclosures: [ConsentDisclosure]
14
+ sdks: ConsentDisclosureSDK[]
4
15
 
5
- constructor(disclosures: [ConsentDisclosure]) {
16
+ constructor(disclosures: [ConsentDisclosure], sdks?: ConsentDisclosureSDK[]) {
6
17
  this.disclosures = disclosures
18
+ this.sdks = sdks ?? []
7
19
  }
8
20
  }
9
21