-dontwarn org.slf4j.impl.StaticLoggerBinder

# Protect Page.goto from being renamed due to Java keyword conflict
-keepclassmembers class financial.atomic.muppet.inter.Page {
    *** goto(...);
}
-keepclassmembers class financial.atomic.muppet.impl.Page {
    *** goto(...);
}
-keepclassmembers class financial.atomic.muppet.bridge.Page {
    *** goto(...);
}

# AtomicWebView (a Browser wrapped in a navigation toolbar UI). These rules apply during the
# consumer's R8 pass — keep the public entry point and the internal Layout / Page subclasses so
# members like setUrlDenyList, attachPage, onClose, outerView, etc. don't get renamed across
# the muppet/consumer boundary or removed by aggressive minification settings.
-keep class financial.atomic.muppet.AtomicWebView { *; }
-keep class financial.atomic.muppet.AtomicWebViewLayout { *; }
-keep class financial.atomic.muppet.AtomicWebViewPage { *; }
# AtomicWebView's internal helpers (BackButton*, BackInvokedCallbackBinder) — referenced by the
# kept Layout above, but R8 with aggressive settings has been observed to strip lambda-captured
# fields. Keeping the whole subpackage is cheap and avoids that class of regression.
-keep class financial.atomic.muppet.internal.** { *; }
