Skip to content

Commit d80a467

Browse files
authored
Merge pull request GitLiveApp#572 from griffinsorrentino/master
Added support for deleting FCM token
2 parents e175fc0 + 219bd60 commit d80a467

File tree

8 files changed

+25
-0
lines changed

8 files changed

+25
-0
lines changed

firebase-messaging/api/android/firebase-messaging.api

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
public final class dev/gitlive/firebase/messaging/FirebaseMessaging {
22
public fun <init> (Lcom/google/firebase/messaging/FirebaseMessaging;)V
3+
public final fun deleteToken (Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
34
public final fun getAndroid ()Lcom/google/firebase/messaging/FirebaseMessaging;
45
public final fun getToken (Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
56
public final fun subscribeToTopic (Ljava/lang/String;)V

firebase-messaging/api/jvm/firebase-messaging.api

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
public final class dev/gitlive/firebase/messaging/FirebaseMessaging {
22
public fun <init> ()V
3+
public final fun deleteToken (Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
34
public final fun getToken (Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
45
public final fun subscribeToTopic (Ljava/lang/String;)V
56
public final fun unsubscribeFromTopic (Ljava/lang/String;)V

firebase-messaging/src/androidMain/kotlin/dev/gitlive/firebase/messaging/messaging.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,4 +18,8 @@ public actual class FirebaseMessaging(public val android: com.google.firebase.me
1818
}
1919

2020
public actual suspend fun getToken(): String = android.token.await()
21+
22+
public actual suspend fun deleteToken() {
23+
android.deleteToken().await()
24+
}
2125
}

firebase-messaging/src/commonMain/kotlin/dev/gitlive/firebase/messaging/messaging.kt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,4 +28,9 @@ public expect class FirebaseMessaging {
2828
* @return [String] FCM token
2929
*/
3030
public suspend fun getToken(): String
31+
32+
/**
33+
* Delete FCM token for client
34+
*/
35+
public suspend fun deleteToken()
3136
}

firebase-messaging/src/iosMain/kotlin/dev/gitlive/firebase/messaging/messaging.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,10 @@ public actual class FirebaseMessaging(public val ios: FIRMessaging) {
1818
}
1919

2020
public actual suspend fun getToken(): String = awaitResult { ios.tokenWithCompletion(it) }
21+
22+
public actual suspend fun deleteToken() {
23+
await { ios.deleteTokenWithCompletion(it) }
24+
}
2125
}
2226

2327
public suspend inline fun <T> T.await(function: T.(callback: (NSError?) -> Unit) -> Unit) {

firebase-messaging/src/jsMain/kotlin/dev/gitlive/firebase/messaging/externals/messaging.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,6 @@ public external fun getMessaging(
99

1010
public external fun getToken(messaging: Messaging = definedExternally, options: dynamic = definedExternally): Promise<String>
1111

12+
public external fun deleteToken(messaging: Messaging = definedExternally): Promise<Boolean>
13+
1214
public external interface Messaging

firebase-messaging/src/jsMain/kotlin/dev/gitlive/firebase/messaging/messaging.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,4 +22,8 @@ public actual class FirebaseMessaging(public val js: Messaging) {
2222
}
2323

2424
public actual suspend fun getToken(): String = dev.gitlive.firebase.messaging.externals.getToken(js).await()
25+
26+
public actual suspend fun deleteToken() {
27+
dev.gitlive.firebase.messaging.externals.deleteToken(js).await()
28+
}
2529
}

firebase-messaging/src/jvmMain/kotlin/dev/gitlive/firebase/messaging/messaging.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,4 +19,8 @@ public actual class FirebaseMessaging {
1919
public actual suspend fun getToken(): String {
2020
TODO("Not yet implemented")
2121
}
22+
23+
public actual suspend fun deleteToken() {
24+
TODO("Not yet implemented")
25+
}
2226
}

0 commit comments

Comments
 (0)