adblocker
adblocker copied to clipboard
Efficient embeddable adblocker library
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 22.7.8 to 22.7.9. Commits See full diff in compare view [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter...
fixes https://github.com/ghostery/adblocker/issues/4058 This PR adds: - `public resolveScriptlet` to expose `private scriptletsByName` and the scriptlet objects (we need another method since `public getScriptlet` returns fully compiled scriptlet) in resources -...
While testing `FiltersEngine.merge` we've noticed that engines are able to keep duplicated filters. Steps to reproduce: ```js const engineBlob = fs.readFileSync(pathToEngine); const engine = FiltersEngine.deserialise(engineBlob); const emptyEngine = FiltersEngine.empty(engine.config); const...
> **⚠️ Warning** This doesn't mean that we decided to implement `$document` or `$content` as entire page exceptions. Currently, the adblocker library is following uBlock Origin's static filtering and cosmetic...
Does adding multiple puppeteer blockers on single puppeteer [page](https://pptr.dev/api/puppeteer.page/) object work Example both ```javascript await PuppeteerBlocker.fromLists(fetch, [ 'https://secure.fanboy.co.nz/fanboy-annoyance.txt' ]).then(async (blocker) => { await blocker.enableBlockingInPage(page); }); await PuppeteerBlocker.fromPrebuiltAdsOnly(fetch).then(async (blocker) => {...
ads are showed with last version
The `:has` pseudo class support is now available on major browsers. The removal or additional flag to disable `:has` from `adblocker-extended-selectors` will be better in performance-wise. - https://caniuse.com/css-has