FiltersCompiler
FiltersCompiler copied to clipboard
Improve '!#safari_cb_affinity' directive — support 'advanced' value for Advanced Protection in AdGuard for iOS
Problem
Blocking of some ads requires applying both basic rule + advanced rule. The problem is that in free AdGuard for iOS only a basic rule can be applied, which breaks a site completely, because advanced rule is not applied.
Example:
||ads.com/loader.min.js$domain=example.com
example.com#%#//scriptlet('abort-on-stack-trace', 'document.getElementById', 'onerror')
Without the second rule, after applying only the first rule, the site will be broken.
Proposed solution
Add ability to apply a rule on iOS, only if advanced protection is enabled. The basic rule must be applied in specified content blocker(s).