@@ -8,10 +8,13 @@ import com.urbanairship.PendingResult
8
8
import com.urbanairship.actions.ActionResult
9
9
import com.urbanairship.actions.ActionValue
10
10
import com.urbanairship.android.framework.proxy.EventType
11
+ import com.urbanairship.android.framework.proxy.NotificationConfig
11
12
import com.urbanairship.android.framework.proxy.ProxyLogger
12
13
import com.urbanairship.android.framework.proxy.events.EventEmitter
13
14
import com.urbanairship.android.framework.proxy.proxies.AirshipProxy
15
+ import com.urbanairship.android.framework.proxy.proxies.EnableUserNotificationsArgs
14
16
import com.urbanairship.android.framework.proxy.proxies.FeatureFlagProxy
17
+ import com.urbanairship.android.framework.proxy.proxies.LiveUpdateRequest
15
18
import com.urbanairship.android.framework.proxy.proxies.SuspendingPredicate
16
19
import com.urbanairship.json.JsonMap
17
20
import com.urbanairship.json.JsonSerializable
@@ -238,9 +241,12 @@ class AirshipModule internal constructor(val context: ReactApplicationContext) :
238
241
}
239
242
240
243
@ReactMethod
241
- override fun pushEnableUserNotifications (promise : Promise ) {
244
+ override fun pushEnableUserNotifications (options : ReadableMap ? , promise : Promise ) {
242
245
promise.resolveSuspending(scope) {
243
- proxy.push.enableUserPushNotifications()
246
+ val args = options?.let {
247
+ EnableUserNotificationsArgs .fromJson(Utils .convertMap(it).toJsonValue())
248
+ }
249
+ proxy.push.enableUserPushNotifications(args = args)
244
250
}
245
251
}
246
252
@@ -693,6 +699,12 @@ class AirshipModule internal constructor(val context: ReactApplicationContext) :
693
699
}
694
700
}
695
701
702
+ override fun liveActivityListAll (promise : Promise ) {
703
+ promise.resolveResult {
704
+ throw IllegalStateException (" Not supported on Android" )
705
+ }
706
+ }
707
+
696
708
override fun liveActivityList (request : ReadableMap ? , promise : Promise ) {
697
709
promise.resolveResult {
698
710
throw IllegalStateException (" Not supported on Android" )
@@ -717,6 +729,48 @@ class AirshipModule internal constructor(val context: ReactApplicationContext) :
717
729
}
718
730
}
719
731
732
+ override fun liveUpdateListAll (promise : Promise ) {
733
+ promise.resolveSuspending(scope) {
734
+ proxy.liveUpdateManager.listAll().let {
735
+ JsonValue .wrapOpt(it)
736
+ }
737
+ }
738
+ }
739
+
740
+ override fun liveUpdateList (request : ReadableMap ? , promise : Promise ) {
741
+ promise.resolveSuspending(scope) {
742
+ proxy.liveUpdateManager.list(
743
+ LiveUpdateRequest .List .fromJson(Utils .convertMap(requireNotNull(request)).toJsonValue())
744
+ ).let {
745
+ JsonValue .wrapOpt(it)
746
+ }
747
+ }
748
+ }
749
+
750
+ override fun liveUpdateCreate (request : ReadableMap ? , promise : Promise ) {
751
+ promise.resolveSuspending(scope) {
752
+ proxy.liveUpdateManager.create(
753
+ LiveUpdateRequest .Create .fromJson(Utils .convertMap(requireNotNull(request)).toJsonValue())
754
+ )
755
+ }
756
+ }
757
+
758
+ override fun liveUpdateUpdate (request : ReadableMap ? , promise : Promise ) {
759
+ promise.resolveSuspending(scope) {
760
+ proxy.liveUpdateManager.update(
761
+ LiveUpdateRequest .Update .fromJson(Utils .convertMap(requireNotNull(request)).toJsonValue())
762
+ )
763
+ }
764
+ }
765
+
766
+ override fun liveUpdateEnd (request : ReadableMap ? , promise : Promise ) {
767
+ promise.resolveSuspending(scope) {
768
+ proxy.liveUpdateManager.end(
769
+ LiveUpdateRequest .End .fromJson(Utils .convertMap(requireNotNull(request)).toJsonValue())
770
+ )
771
+ }
772
+ }
773
+
720
774
private fun notifyPending () {
721
775
if (context.hasActiveReactInstance()) {
722
776
val appEventEmitter = context.getJSModule(RCTNativeAppEventEmitter ::class .java)
0 commit comments