# Uncomment this to preserve the line number information for debugging stack traces.
-keepattributes SourceFile,LineNumberTable

# If you keep the line number information, uncomment this to hide the original source file name.
-renamesourcefileattribute SourceFile

# For stacktrace debugging purposes as library is already minified and obfuscated when published.
-keep class com.underdog_tech.pinwheel_android.** {
    *;
}

-keepclassmembers class ** {
  @android.webkit.JavascriptInterface public *;
}

-keep class com.underdog_tech.pinwheel_android.PinwheelFragment {
    public *;
    public static *;
}

-keep class com.underdog_tech.pinwheel_android.PinwheelFragment$Companion {
    *;
}

-keep public class com.underdog_tech.pinwheel_android.PinwheelEventListener {
    public *;
}

-keep class com.underdog_tech.pinwheel_android.PinwheelViewGroupManager {
    public *;
    public static *;
}

-keep class com.underdog_tech.pinwheel_android.PinwheelFrameLayout {
    public *;
    public static *;
}

-keep public class com.underdog_tech.pinwheel_android.model.** {
    *;
}

-keepclassmembers class com.underdog_tech.pinwheel_android.internal.model.** {
    *;
}
-keepclasseswithmembers class com.underdog_tech.pinwheel_android.internal.model.** {
    *;
}
-keeppackagenames com.underdog_tech.pinwheel_android.internal.model

-keep public class com.underdog_tech.pinwheel_android.PinwheelEventListener$DefaultImpls {
    public *;
}

# Subscription manager rules
-keepattributes Signature
-keep class kotlin.Metadata { *; }
-keep class org.kodein.di.** { *; }
-keep class org.kodein.type.** { *; }
-keepattributes *Annotation*
-keep class com.google.gson.annotations.SerializedName
-dontwarn com.google.gson.**
-keep class io.scribeup.** { *; }
-dontwarn com.datadog.**
