# proguard-rules.pro
-dontoptimize
-dontobfuscate
-dontshrink

# We're excluding Material 2 from the project as we're using Material 3
-dontwarn androidx.compose.material.**

# Kotlinx coroutines rules seems to be outdated with the latest version of Kotlin and Proguard
-keep class kotlinx.coroutines.** { *; }

# OkHttp comming from COIL.
-dontwarn okhttp3.internal.platform.**
-keep class coil3.** { *; }

# Serialization
-keep class io.ktor.serialization.kotlinx.json.** { *; }
-keep class com.pixelized.shared.lwa.model.** { *; }
-keep class com.pixelized.shared.lwa.protocol.rest.** { *; }
-keep class com.pixelized.desktop.lwa.repository.settings.model.** { *; }
-keep @kotlinx.serialization.Serializable class * { *; }

# For enumeration classes, see http://proguard.sourceforge.net/manual/examples.html#enumerations
-keepclassmembers enum * {
    public static **[] values();
    public static ** valueOf(java.lang.String);
}