@didomi/react-native 1.6.0 → 1.10.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.
@@ -132,5 +132,5 @@ dependencies {
132
132
  api "com.facebook.react:react-native:+"
133
133
  implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
134
134
 
135
- implementation "io.didomi.sdk:android:1.58.0"
135
+ implementation "io.didomi.sdk:android:1.66.0"
136
136
  }
@@ -1,4 +1,4 @@
1
- Didomi_kotlinVersion=1.4.32
1
+ Didomi_kotlinVersion=1.5.31
2
2
  Didomi_compileSdkVersion=29
3
3
  Didomi_buildToolsVersion=29.0.2
4
4
  Didomi_targetSdkVersion=29
@@ -176,6 +176,16 @@ class DidomiModule(reactContext: ReactApplicationContext) : ReactContextBaseJava
176
176
  * Sync error
177
177
  */
178
178
  override fun syncError(event: SyncErrorEvent) = prepareEvent(EventTypes.SYNC_ERROR.event, event.error)
179
+
180
+ /**
181
+ * Language updated
182
+ */
183
+ override fun languageUpdated(event: LanguageUpdatedEvent) = prepareEvent(EventTypes.LANGUAGE_UPDATED.event, event.languageCode)
184
+
185
+ /**
186
+ * Language update failed
187
+ */
188
+ override fun languageUpdateFailed(event: LanguageUpdateFailedEvent) = prepareEvent(EventTypes.LANGUAGE_UPDATE_FAILED.event, event.reason)
179
189
  }
180
190
 
181
191
  override fun getName() = "Didomi"
@@ -254,6 +264,8 @@ class DidomiModule(reactContext: ReactApplicationContext) : ReactContextBaseJava
254
264
  disableDidomiRemoteConfig: Boolean,
255
265
  languageCode: String?,
256
266
  noticeId: String?,
267
+ androidTvNoticeId: String?,
268
+ androidTvEnabled: Boolean,
257
269
  promise: Promise) {
258
270
  try {
259
271
  Didomi.getInstance().addEventListener(eventListener)
@@ -267,10 +279,13 @@ class DidomiModule(reactContext: ReactApplicationContext) : ReactContextBaseJava
267
279
  providerId,
268
280
  disableDidomiRemoteConfig,
269
281
  languageCode,
270
- noticeId
282
+ noticeId,
283
+ androidTvNoticeId,
284
+ androidTvEnabled
271
285
  )
272
286
 
273
- Didomi.getInstance().initialize(currentActivity?.application, parameters)
287
+ val application = currentActivity?.application ?: throw IllegalStateException("No activity present")
288
+ Didomi.getInstance().initialize(application, parameters)
274
289
 
275
290
  Didomi.getInstance().onReady { prepareEvent(EventTypes.READY_CALLBACK.event, null) }
276
291
  Didomi.getInstance().onError { prepareEvent(EventTypes.ERROR_CALLBACK.event, null) }
@@ -278,7 +293,7 @@ class DidomiModule(reactContext: ReactApplicationContext) : ReactContextBaseJava
278
293
  promise.resolve(0)
279
294
 
280
295
  } catch (e: Exception) {
281
- Log.e("initialize", "Error while initializing the Didomi SDK", e);
296
+ Log.e("initialize", "Error while initializing the Didomi SDK", e)
282
297
  promise.reject(e)
283
298
  }
284
299
  }
@@ -287,7 +302,7 @@ class DidomiModule(reactContext: ReactApplicationContext) : ReactContextBaseJava
287
302
  fun setupUI(promise: Promise) {
288
303
  try {
289
304
  runOnUiThread {
290
- Didomi.getInstance().setupUI(currentActivity as FragmentActivity)
305
+ Didomi.getInstance().setupUI(currentActivity as? FragmentActivity)
291
306
  }
292
307
  promise.resolve(0)
293
308
  } catch (e: Exception) {
@@ -531,7 +546,7 @@ class DidomiModule(reactContext: ReactApplicationContext) : ReactContextBaseJava
531
546
  @ReactMethod
532
547
  fun getUserStatus(promise: Promise) {
533
548
  try {
534
- promise.resolve(objectToWritableMap(Didomi.getInstance().getUserStatus()))
549
+ promise.resolve(objectToWritableMap(Didomi.getInstance().userStatus))
535
550
  } catch (e: DidomiNotReadyException) {
536
551
  promise.reject(e)
537
552
  }
@@ -596,7 +611,7 @@ class DidomiModule(reactContext: ReactApplicationContext) : ReactContextBaseJava
596
611
  @ReactMethod
597
612
  fun isNoticeVisible(promise: Promise) {
598
613
  try {
599
- promise.resolve(Didomi.getInstance().isNoticeVisible)
614
+ promise.resolve(Didomi.getInstance().isNoticeVisible())
600
615
  } catch (e: DidomiNotReadyException) {
601
616
  promise.reject(e)
602
617
  }
@@ -605,7 +620,7 @@ class DidomiModule(reactContext: ReactApplicationContext) : ReactContextBaseJava
605
620
  @ReactMethod
606
621
  fun isPreferencesVisible(promise: Promise) {
607
622
  try {
608
- promise.resolve(Didomi.getInstance().isPreferencesVisible)
623
+ promise.resolve(Didomi.getInstance().isPreferencesVisible())
609
624
  } catch (e: DidomiNotReadyException) {
610
625
  promise.reject(e)
611
626
  }
@@ -621,6 +636,12 @@ class DidomiModule(reactContext: ReactApplicationContext) : ReactContextBaseJava
621
636
  promise.resolve(Didomi.getInstance().isReady)
622
637
  }
623
638
 
639
+ @ReactMethod
640
+ fun clearUser(promise: Promise) {
641
+ Didomi.getInstance().clearUser()
642
+ promise.resolve(0)
643
+ }
644
+
624
645
  @ReactMethod
625
646
  fun setUser(organizationUserId: String,
626
647
  organizationUserIdAuthAlgorithm: String?,
@@ -646,6 +667,12 @@ class DidomiModule(reactContext: ReactApplicationContext) : ReactContextBaseJava
646
667
  promise.resolve(0)
647
668
  }
648
669
 
670
+ @ReactMethod
671
+ fun setUserAndSetupUI(organizationUserId: String, promise: Promise) {
672
+ Didomi.getInstance().setUser(organizationUserId, currentActivity as? FragmentActivity)
673
+ promise.resolve(0)
674
+ }
675
+
649
676
  @ReactMethod
650
677
  fun setUserWithHashAuth(organizationUserId: String,
651
678
  algorithm: String,
@@ -653,13 +680,35 @@ class DidomiModule(reactContext: ReactApplicationContext) : ReactContextBaseJava
653
680
  digest: String,
654
681
  salt: String?,
655
682
  promise: Promise) {
656
- Didomi.getInstance().setUser(UserAuthWithHashParams(
657
- organizationUserId,
658
- algorithm,
659
- secretId,
660
- digest,
661
- salt
662
- ))
683
+ Didomi.getInstance().setUser(
684
+ UserAuthWithHashParams(
685
+ organizationUserId,
686
+ algorithm,
687
+ secretId,
688
+ digest,
689
+ salt
690
+ )
691
+ )
692
+ promise.resolve(0)
693
+ }
694
+
695
+ @ReactMethod
696
+ fun setUserWithHashAuthAndSetupUI(organizationUserId: String,
697
+ algorithm: String,
698
+ secretId: String,
699
+ digest: String,
700
+ salt: String?,
701
+ promise: Promise) {
702
+ Didomi.getInstance().setUser(
703
+ UserAuthWithHashParams(
704
+ organizationUserId,
705
+ algorithm,
706
+ secretId,
707
+ digest,
708
+ salt
709
+ ),
710
+ currentActivity as? FragmentActivity
711
+ )
663
712
  promise.resolve(0)
664
713
  }
665
714
 
@@ -671,14 +720,38 @@ class DidomiModule(reactContext: ReactApplicationContext) : ReactContextBaseJava
671
720
  salt: String?,
672
721
  expiration: Int,
673
722
  promise: Promise) {
674
- Didomi.getInstance().setUser(UserAuthWithHashParams(
675
- organizationUserId,
676
- algorithm,
677
- secretId,
678
- digest,
679
- salt,
680
- expiration.toLong()
681
- ))
723
+ Didomi.getInstance().setUser(
724
+ UserAuthWithHashParams(
725
+ organizationUserId,
726
+ algorithm,
727
+ secretId,
728
+ digest,
729
+ salt,
730
+ expiration.toLong()
731
+ )
732
+ )
733
+ promise.resolve(0)
734
+ }
735
+
736
+ @ReactMethod
737
+ fun setUserWithHashAuthWithExpirationAndSetupUI(organizationUserId: String,
738
+ algorithm: String,
739
+ secretId: String,
740
+ digest: String,
741
+ salt: String?,
742
+ expiration: Int,
743
+ promise: Promise) {
744
+ Didomi.getInstance().setUser(
745
+ UserAuthWithHashParams(
746
+ organizationUserId,
747
+ algorithm,
748
+ secretId,
749
+ digest,
750
+ salt,
751
+ expiration.toLong()
752
+ ),
753
+ currentActivity as? FragmentActivity
754
+ )
682
755
  promise.resolve(0)
683
756
  }
684
757
 
@@ -688,12 +761,32 @@ class DidomiModule(reactContext: ReactApplicationContext) : ReactContextBaseJava
688
761
  secretId: String,
689
762
  initializationVector: String,
690
763
  promise: Promise) {
691
- Didomi.getInstance().setUser(UserAuthWithEncryptionParams(
692
- organizationUserId,
693
- algorithm,
694
- secretId,
695
- initializationVector
696
- ))
764
+ Didomi.getInstance().setUser(
765
+ UserAuthWithEncryptionParams(
766
+ organizationUserId,
767
+ algorithm,
768
+ secretId,
769
+ initializationVector
770
+ )
771
+ )
772
+ promise.resolve(0)
773
+ }
774
+
775
+ @ReactMethod
776
+ fun setUserWithEncryptionAuthAndSetupUI(organizationUserId: String,
777
+ algorithm: String,
778
+ secretId: String,
779
+ initializationVector: String,
780
+ promise: Promise) {
781
+ Didomi.getInstance().setUser(
782
+ UserAuthWithEncryptionParams(
783
+ organizationUserId,
784
+ algorithm,
785
+ secretId,
786
+ initializationVector
787
+ ),
788
+ currentActivity as? FragmentActivity
789
+ )
697
790
  promise.resolve(0)
698
791
  }
699
792
 
@@ -704,13 +797,35 @@ class DidomiModule(reactContext: ReactApplicationContext) : ReactContextBaseJava
704
797
  initializationVector: String,
705
798
  expiration: Int,
706
799
  promise: Promise) {
707
- Didomi.getInstance().setUser(UserAuthWithEncryptionParams(
708
- organizationUserId,
709
- algorithm,
710
- secretId,
711
- initializationVector,
712
- expiration.toLong()
713
- ))
800
+ Didomi.getInstance().setUser(
801
+ UserAuthWithEncryptionParams(
802
+ organizationUserId,
803
+ algorithm,
804
+ secretId,
805
+ initializationVector,
806
+ expiration.toLong()
807
+ )
808
+ )
809
+ promise.resolve(0)
810
+ }
811
+
812
+ @ReactMethod
813
+ fun setUserWithEncryptionAuthWithExpirationAndSetupUI(organizationUserId: String,
814
+ algorithm: String,
815
+ secretId: String,
816
+ initializationVector: String,
817
+ expiration: Int,
818
+ promise: Promise) {
819
+ Didomi.getInstance().setUser(
820
+ UserAuthWithEncryptionParams(
821
+ organizationUserId,
822
+ algorithm,
823
+ secretId,
824
+ initializationVector,
825
+ expiration.toLong()
826
+ ),
827
+ currentActivity as? FragmentActivity
828
+ )
714
829
  promise.resolve(0)
715
830
  }
716
831
 
@@ -718,7 +833,7 @@ class DidomiModule(reactContext: ReactApplicationContext) : ReactContextBaseJava
718
833
  fun showNotice(promise: Promise) {
719
834
  try {
720
835
  runOnUiThread {
721
- Didomi.getInstance().showNotice(currentActivity as FragmentActivity)
836
+ Didomi.getInstance().showNotice(currentActivity as? FragmentActivity)
722
837
  }
723
838
  promise.resolve(0)
724
839
  } catch (e: Exception) {
@@ -732,8 +847,8 @@ class DidomiModule(reactContext: ReactApplicationContext) : ReactContextBaseJava
732
847
  try {
733
848
  runOnUiThread {
734
849
  view?.also {
735
- Didomi.getInstance().showPreferences(currentActivity as FragmentActivity, view)
736
- } ?: Didomi.getInstance().showPreferences(currentActivity as FragmentActivity)
850
+ Didomi.getInstance().showPreferences(currentActivity as? FragmentActivity, view)
851
+ } ?: Didomi.getInstance().showPreferences(currentActivity as? FragmentActivity)
737
852
  }
738
853
  promise.resolve(0)
739
854
  } catch (e: Exception) {
@@ -33,5 +33,7 @@ enum class EventTypes(val event: String) {
33
33
  PREFERENCES_CLICK_DISAGREE_TO_ALL_PURPOSES("on_preferences_click_disagree_to_all_purposes"),
34
34
  PREFERENCES_CLICK_RESET_ALL_PURPOSES("on_preferences_click_reset_all_purposes"),
35
35
  SYNC_DONE("on_sync_done"),
36
- SYNC_ERROR("on_sync_error");
36
+ SYNC_ERROR("on_sync_error"),
37
+ LANGUAGE_UPDATED("on_language_updated"),
38
+ LANGUAGE_UPDATE_FAILED("on_language_update_failed");
37
39
  }
package/ios/Didomi.m CHANGED
@@ -3,10 +3,6 @@
3
3
 
4
4
  @interface RCT_EXTERN_MODULE(Didomi, RCTEventEmitter)
5
5
 
6
- RCT_EXTERN_METHOD(multiply:(float)a withB:(float)b
7
- withResolver:(RCTPromiseResolveBlock)resolve
8
- withRejecter:(RCTPromiseRejectBlock)reject)
9
-
10
6
  RCT_EXTERN_METHOD(initialize:(NSString *)userAgentName
11
7
  userAgentVersion:(NSString *)userAgentVersion
12
8
  apiKey:(NSString *)apiKey
@@ -15,7 +11,11 @@ RCT_EXTERN_METHOD(initialize:(NSString *)userAgentName
15
11
  providerId:(nullable NSString *)providerId
16
12
  disableDidomiRemoteConfig:(BOOL)disableDidomiRemoteConfig
17
13
  languageCode:(nullable NSString *)languageCode
18
- noticeId:(nullable NSString *)noticeId)
14
+ noticeId:(nullable NSString *)noticeId
15
+ androidTvNoticeId:(nullable NSString *)androidTvNoticeId
16
+ androidTvEnabled:(BOOL)androidTvEnabled
17
+ resolve:(RCTPromiseResolveBlock)resolve
18
+ reject:(RCTPromiseRejectBlock)reject)
19
19
 
20
20
  RCT_EXTERN_METHOD(onReady)
21
21
 
@@ -102,7 +102,8 @@ RCT_EXTERN_METHOD(setUserDisagreeToAll:(RCTPromiseResolveBlock)resolve
102
102
  // Didomi.shared.onError(callback: callback)
103
103
  // }
104
104
 
105
- RCT_EXTERN_METHOD(reset)
105
+ RCT_EXTERN_METHOD(reset:(RCTPromiseResolveBlock)resolve
106
+ reject:(RCTPromiseRejectBlock)reject)
106
107
 
107
108
  RCT_EXTERN_METHOD(getRequiredPurposeIds:(RCTPromiseResolveBlock)resolve
108
109
  reject:(RCTPromiseRejectBlock)reject)
@@ -157,7 +158,9 @@ RCT_EXTERN_METHOD(getJavaScriptForWebView:(NSString *)extra
157
158
  resolve:(RCTPromiseResolveBlock)resolve
158
159
  reject:(RCTPromiseRejectBlock)reject)
159
160
 
160
- RCT_EXTERN_METHOD(updateSelectedLanguage:(NSString *)languageCode)
161
+ RCT_EXTERN_METHOD(updateSelectedLanguage:(NSString *)languageCode
162
+ resolve:(RCTPromiseResolveBlock)resolve
163
+ reject:(RCTPromiseRejectBlock)reject)
161
164
 
162
165
 
163
166
  // MARK: ViewProviderDelegate
@@ -172,13 +175,17 @@ RCT_EXTERN_METHOD(getPreferencesViewController:(RCTPromiseResolveBlock)resolve
172
175
 
173
176
  // MARK: Didomi extension
174
177
 
175
- RCT_EXTERN_METHOD(setupUI)
178
+ RCT_EXTERN_METHOD(setupUI:(RCTPromiseResolveBlock)resolve
179
+ reject:(RCTPromiseRejectBlock)reject)
176
180
 
177
- RCT_EXTERN_METHOD(forceShowNotice)
181
+ RCT_EXTERN_METHOD(forceShowNotice:(RCTPromiseResolveBlock)resolve
182
+ reject:(RCTPromiseRejectBlock)reject)
178
183
 
179
- RCT_EXTERN_METHOD(showNotice)
184
+ RCT_EXTERN_METHOD(showNotice:(RCTPromiseResolveBlock)resolve
185
+ reject:(RCTPromiseRejectBlock)reject)
180
186
 
181
- RCT_EXTERN_METHOD(hideNotice)
187
+ RCT_EXTERN_METHOD(hideNotice:(RCTPromiseResolveBlock)resolve
188
+ reject:(RCTPromiseRejectBlock)reject)
182
189
 
183
190
  RCT_EXTERN_METHOD(isNoticeVisible:(RCTPromiseResolveBlock)resolve
184
191
  reject:(RCTPromiseRejectBlock)reject)
@@ -186,9 +193,12 @@ RCT_EXTERN_METHOD(isNoticeVisible:(RCTPromiseResolveBlock)resolve
186
193
  RCT_EXTERN_METHOD(shouldConsentBeCollected:(RCTPromiseResolveBlock)resolve
187
194
  reject:(RCTPromiseRejectBlock)reject)
188
195
 
189
- RCT_EXTERN_METHOD(showPreferences:(nullable NSString *)view)
196
+ RCT_EXTERN_METHOD(showPreferences:(nullable NSString *)view
197
+ resolve:(RCTPromiseResolveBlock)resolve
198
+ reject:(RCTPromiseRejectBlock)reject)
190
199
 
191
- RCT_EXTERN_METHOD(hidePreferences)
200
+ RCT_EXTERN_METHOD(hidePreferences:(RCTPromiseResolveBlock)resolve
201
+ reject:(RCTPromiseRejectBlock)reject)
192
202
 
193
203
  RCT_EXTERN_METHOD(isPreferencesVisible:(RCTPromiseResolveBlock)resolve
194
204
  reject:(RCTPromiseRejectBlock)reject)
@@ -201,37 +211,88 @@ RCT_EXTERN_METHOD(getText:(NSString *)key
201
211
  resolve:(RCTPromiseResolveBlock)resolve
202
212
  reject:(RCTPromiseRejectBlock)reject)
203
213
 
204
- RCT_EXTERN_METHOD(setLogLevel:(int)minLevel)
214
+ RCT_EXTERN_METHOD(setLogLevel:(int)minLevel
215
+ resolve:(RCTPromiseResolveBlock)resolve
216
+ reject:(RCTPromiseRejectBlock)reject)
217
+
218
+ RCT_EXTERN_METHOD(clearUser:(RCTPromiseResolveBlock)resolve
219
+ reject:(RCTPromiseRejectBlock)reject)
205
220
 
206
221
  RCT_EXTERN_METHOD(setUser:(NSString *)id
207
222
  algorithm:(nullable NSString *)algorithm
208
223
  secretId:(nullable NSString *)secretId
209
224
  salt:(nullable NSString *)salt
210
- digest:(nullable NSString *)digest)
225
+ digest:(nullable NSString *)digest
226
+ resolve:(RCTPromiseResolveBlock)resolve
227
+ reject:(RCTPromiseRejectBlock)reject)
228
+
229
+ RCT_EXTERN_METHOD(setUserAndSetupUI:(NSString *)id
230
+ resolve:(RCTPromiseResolveBlock)resolve
231
+ reject:(RCTPromiseRejectBlock)reject)
211
232
 
212
233
  RCT_EXTERN_METHOD(setUserWithHashAuth:(NSString *)id
213
234
  algorithm:(NSString *)algorithm
214
235
  secretId:(NSString *)secretId
215
236
  digest:(NSString *)digest
216
- salt:(nullable NSString *)salt)
237
+ salt:(nullable NSString *)salt
238
+ resolve:(RCTPromiseResolveBlock)resolve
239
+ reject:(RCTPromiseRejectBlock)reject)
240
+
241
+ RCT_EXTERN_METHOD(setUserWithHashAuthAndSetupUI:(NSString *)id
242
+ algorithm:(NSString *)algorithm
243
+ secretId:(NSString *)secretId
244
+ digest:(NSString *)digest
245
+ salt:(nullable NSString *)salt
246
+ resolve:(RCTPromiseResolveBlock)resolve
247
+ reject:(RCTPromiseRejectBlock)reject)
217
248
 
218
249
  RCT_EXTERN_METHOD(setUserWithHashAuthWithExpiration:(NSString *)id
219
250
  algorithm:(NSString *)algorithm
220
251
  secretId:(NSString *)secretId
221
252
  digest:(NSString *)digest
222
253
  salt:(nullable NSString *)salt
223
- expiration: (double)expiration)
254
+ expiration: (double)expiration
255
+ resolve:(RCTPromiseResolveBlock)resolve
256
+ reject:(RCTPromiseRejectBlock)reject)
257
+
258
+ RCT_EXTERN_METHOD(setUserWithHashAuthWithExpirationAndSetupUI:(NSString *)id
259
+ algorithm:(NSString *)algorithm
260
+ secretId:(NSString *)secretId
261
+ digest:(NSString *)digest
262
+ salt:(nullable NSString *)salt
263
+ expiration: (double)expiration
264
+ resolve:(RCTPromiseResolveBlock)resolve
265
+ reject:(RCTPromiseRejectBlock)reject)
224
266
 
225
267
  RCT_EXTERN_METHOD(setUserWithEncryptionAuth:(NSString *)id
226
268
  algorithm:(NSString *)algorithm
227
269
  secretId:(NSString *)secretId
228
- initializationVector:(NSString *)initializationVector)
270
+ initializationVector:(NSString *)initializationVector
271
+ resolve:(RCTPromiseResolveBlock)resolve
272
+ reject:(RCTPromiseRejectBlock)reject)
273
+
274
+ RCT_EXTERN_METHOD(setUserWithEncryptionAuthAndSetupUI:(NSString *)id
275
+ algorithm:(NSString *)algorithm
276
+ secretId:(NSString *)secretId
277
+ initializationVector:(NSString *)initializationVector
278
+ resolve:(RCTPromiseResolveBlock)resolve
279
+ reject:(RCTPromiseRejectBlock)reject)
229
280
 
230
281
  RCT_EXTERN_METHOD(setUserWithEncryptionAuthWithExpiration:(NSString *)id
231
282
  algorithm:(NSString *)algorithm
232
283
  secretId:(NSString *)secretId
233
284
  initializationVector:(NSString *)initializationVector
234
- expiration: (double)expiration)
285
+ expiration: (double)expiration
286
+ resolve:(RCTPromiseResolveBlock)resolve
287
+ reject:(RCTPromiseRejectBlock)reject)
288
+
289
+ RCT_EXTERN_METHOD(setUserWithEncryptionAuthWithExpirationAndSetupUI:(NSString *)id
290
+ algorithm:(NSString *)algorithm
291
+ secretId:(NSString *)secretId
292
+ initializationVector:(NSString *)initializationVector
293
+ expiration: (double)expiration
294
+ resolve:(RCTPromiseResolveBlock)resolve
295
+ reject:(RCTPromiseRejectBlock)reject)
235
296
 
236
297
  RCT_EXTERN_METHOD(supportedEvents)
237
298