# Preserve line numbers for Google Play crash reports
-keepattributes SourceFile,LineNumberTable
-renamesourcefileattribute SourceFile

# Data models serialization (Firestore & Moshi reflection)
-keep class com.aistudio.bonjuteri.jwlry.model.** { *; }

# Firebase Firestore and Auth model mapping
-keepattributes *Annotation*
-keepclassmembers class * {
    @com.google.firebase.firestore.DocumentId *;
    @com.google.firebase.firestore.ServerTimestamp *;
    @com.google.firebase.firestore.PropertyName *;
}

# Moshi and Retrofit serialization
-keep class com.squareup.moshi.** { *; }
-keepclassmembers class * {
    @com.squareup.moshi.Json *;
}
-keepattributes Signature
-keepattributes InnerClasses
-keepattributes EnclosingMethod

# Room Database
-keep class * extends androidx.room.RoomDatabase
-dontwarn androidx.room.paging.**

