File tree Expand file tree Collapse file tree 8 files changed +32
-1
lines changed
androidMain/kotlin/dev/gitlive/firebase/analytics
commonMain/kotlin/dev/gitlive/firebase/analytics
commonTest/kotlin/dev/gitlive/firebase/analytics
iosMain/kotlin/dev/gitlive/firebase/analytics
jsMain/kotlin/dev/gitlive/firebase/analytics
jsTest/kotlin/dev/gitlive/firebase/analytics
jvmMain/kotlin/dev/gitlive/firebase/analytics Expand file tree Collapse file tree 8 files changed +32
-1
lines changed Original file line number Diff line number Diff line change @@ -9,12 +9,16 @@ import android.util.SizeF
99import com.google.firebase.analytics.analytics
1010import com.google.firebase.analytics.setConsent
1111import dev.gitlive.firebase.Firebase
12+ import dev.gitlive.firebase.FirebaseApp
1213import kotlinx.coroutines.tasks.await
1314import java.io.Serializable
1415
1516actual val Firebase .analytics: FirebaseAnalytics
1617 get() = FirebaseAnalytics (com.google.firebase.Firebase .analytics)
1718
19+ actual fun Firebase.analytics (app : FirebaseApp ) =
20+ FirebaseAnalytics (com.google.firebase.Firebase .analytics)
21+
1822actual class FirebaseAnalytics (val android : com.google.firebase.analytics.FirebaseAnalytics ) {
1923 actual fun logEvent (name : String , parameters : Map <String , Any >? ) {
2024 android.logEvent(name, parameters?.toBundle())
Original file line number Diff line number Diff line change 11package dev.gitlive.firebase.analytics
22
33import dev.gitlive.firebase.Firebase
4+ import dev.gitlive.firebase.FirebaseApp
45
56expect val Firebase .analytics: FirebaseAnalytics
67
8+ /* * Returns the [FirebaseStorage] instance of a given [FirebaseApp]. */
9+ expect fun Firebase.analytics (app : FirebaseApp ): FirebaseAnalytics
10+
711expect class FirebaseAnalytics {
812 fun logEvent (name : String , parameters : Map <String , Any >? = null)
913 fun setUserProperty (name : String , value : String )
Original file line number Diff line number Diff line change @@ -37,7 +37,7 @@ class FirebaseAnalyticsTest {
3737 )
3838 )
3939
40- analytics = Firebase .analytics
40+ analytics = Firebase .analytics(app)
4141 }
4242
4343 @AfterTest
Original file line number Diff line number Diff line change @@ -3,6 +3,7 @@ package dev.gitlive.firebase.analytics
33import cocoapods.FirebaseAnalytics.FIRAnalytics
44import cocoapods.FirebaseAnalytics.setConsent
55import dev.gitlive.firebase.Firebase
6+ import dev.gitlive.firebase.FirebaseApp
67import dev.gitlive.firebase.FirebaseException
78import kotlinx.coroutines.CompletableDeferred
89import platform.Foundation.NSError
@@ -11,6 +12,8 @@ import platform.Foundation.NSTimeInterval
1112actual val Firebase .analytics: FirebaseAnalytics
1213 get() = FirebaseAnalytics (FIRAnalytics )
1314
15+ actual fun Firebase.analytics (app : FirebaseApp ): FirebaseAnalytics = FirebaseAnalytics (FIRAnalytics )
16+
1417actual class FirebaseAnalytics (val ios : FIRAnalytics .Companion ) {
1518 actual fun logEvent (name : String , parameters : Map <String , Any >? ) {
1619 val mappedParameters: Map <Any ?, Any >? = parameters?.map { it.key to it.value }?.toMap()
Original file line number Diff line number Diff line change 11package dev.gitlive.firebase.analytics
22
33import dev.gitlive.firebase.Firebase
4+ import dev.gitlive.firebase.FirebaseApp
45import dev.gitlive.firebase.FirebaseException
56import dev.gitlive.firebase.analytics.externals.getAnalytics
67import kotlinx.coroutines.await
78
89actual val Firebase .analytics: FirebaseAnalytics
910 get() = FirebaseAnalytics (getAnalytics())
1011
12+ actual fun Firebase.analytics (app : FirebaseApp ) =
13+ FirebaseAnalytics (getAnalytics(app.js))
14+
1115actual class FirebaseAnalytics (val js : dev.gitlive.firebase.analytics.externals.FirebaseAnalytics ) {
1216 actual fun logEvent (
1317 name : String ,
Original file line number Diff line number Diff line change 1+ @file:JsModule(" firebase/analytics" )
2+ @file:JsNonModule
3+
14package dev.gitlive.firebase.analytics.externals
25
36import dev.gitlive.firebase.externals.FirebaseApp
Original file line number Diff line number Diff line change 1+ package dev.gitlive.firebase.analytics
2+
3+ actual val emulatorHost: String = " 10.0.2.2"
4+
5+ actual val context: Any = Unit
6+
7+ @Target(AnnotationTarget .CLASS , AnnotationTarget .FUNCTION )
8+ actual annotation class IgnoreForAndroidUnitTest
Original file line number Diff line number Diff line change 11package dev.gitlive.firebase.analytics
22
33import dev.gitlive.firebase.Firebase
4+ import dev.gitlive.firebase.FirebaseApp
45import dev.gitlive.firebase.FirebaseException
56
67actual val Firebase .analytics: FirebaseAnalytics
78 get() = TODO (" Not yet implemented" )
89
10+ actual fun Firebase.analytics (app : FirebaseApp ): FirebaseAnalytics {
11+ TODO (" Not yetimplemented" )
12+ }
13+
914actual class FirebaseAnalytics {
1015 actual fun setUserProperty (name : String , value : String ) {}
1116 actual fun setUserId (id : String ) {}
You can’t perform that action at this time.
0 commit comments