Fair AdBlocker

Fair AdBlocker

Block annoying ads, popups, malware and tracking (even on Facebook & Youtube), browse faster, and protect your privacy.

Merlin
Additional files are visible only to premium users

manifest.json


{
  "name": "__MSG_appName__",
  "description": "__MSG_appDesc__",
  "version": "2.0.9",
  "manifest_version": 2,
  "browser_action": {
    "default_icon": {
      "19": "icons/19.png",
      "38": "icons/38.png"
    },
    "default_popup": "index.html",
    "default_title": "Fair AdBlocker"
  },
  "background": {
    "persistent": true,
    "scripts": [
      "platform/browser-info.js",
      "platform/platform-info.js",
      "platform/manifest.js",
      "constants/api-urls.js",
      "constants/block-types.js",
      "constants/blocking-responses.js",
      "constants/context-menu-ids.js",
      "constants/custom-events.js",
      "constants/icon-badge-periods.js",
      "constants/icon-badge-types.js",
      "constants/log-event-types.js",
      "constants/message-types.js",
      "constants/notification-types.js",
      "constants/resources.js",
      "constants/trail-types.js",
      "platform/window.js",
      "platform/messages.js",
      "platform/browser-actions.js",
      "platform/local-storage-service.js",
      "platform/tabs.js",
      "platform/notifications.js",
      "platform/context-menu.js",
      "platform/localization.js",
      "platform/other-adblockers.js",
      "platform/permissions.js",
      "common/helpers.js",
      "common/api.js",
      "common/date-helpers.js",
      "common/stndz.js",
      "browser-events-handlers/on-before-navigate.js",
      "browser-events-handlers/on-before-redirect.js",
      "browser-events-handlers/on-before-request.js",
      "browser-events-handlers/on-committed.js",
      "browser-events-handlers/on-connect-external.js",
      "browser-events-handlers/on-connect.js",
      "browser-events-handlers/on-created-navigation-target.js",
      "browser-events-handlers/on-headers-received.js",
      "browser-events-handlers/on-installed.js",
      "browser-events-handlers/on-message-external.js",
      "browser-events-handlers/on-message.js",
      "browser-events-handlers/on-request-error.js",
      "browser-events-handlers/on-tab-activated.js",
      "browser-events-handlers/on-tab-created.js",
      "browser-events-handlers/on-tab-removed.js",
      "browser-events-handlers/on-tab-replaced.js",
      "browser-events-handlers/on-tab-updated.js",
      "browser-events-handlers/on-window-focus-changed.js",
      "background/job-runner.js",
      "background/component.js",
      "background/variable-container.js",
      "background/data-updater-from-server.js",
      "background/debug.js",
      "background/listeners.js",
      "background/chrome.js",
      "background/email.js",
      "background/logger.js",
      "background/st.js",
      "background/blocking-rules-service.js",
      "background/popup-rules-component.js",
      "background/custom-css-rules-service.js",
      "background/popup-sites-component.js",
      "background/deactivated-sites-service.js",
      "background/lists.js",
      "background/dashboard-component.js",
      "background/icon-component.js",
      "background/machine-id-component.js",
      "background/notifications-component.js",
      "background/page-data-component.js",
      "background/time-component.js",
      "background/statistics-component.js",
      "background/settings-component.js",
      "background/user.js",
      "background/trail.js",
      "background/get-frame-hosts.js",
      "background/get-css-rules-for-tab.js",
      "background/report-sample.js",
      "background/fill-detection-sample.js",
      "block/block-elements-on-page.js",
      "block/count-blocked-elements-on-page.js",
      "block/exit-block-elements-on-page.js",
      "block/unblock-elements-on-page.js",
      "block/block-elements-function.js",
      "block/count-blocked-elements-function.js",
      "block/exit-block-elements-function.js",
      "block/unblock-elements-function.js",
      "context-menus/action-context-menus.js",
      "context-menus/page-context-menus.js",
      "context-menus/create-context-menus.js",
      "context-menus/update-context-menus.js",
      "notifications/check-and-show-notification.js",
      "notifications/notification-buttons.js",
      "notifications/notification-details.js",
      "notifications/notification-messages.js",
      "notifications/notification-options.js",
      "notifications/notification-titles.js",
      "notifications/on-notification-button-click.js",
      "notifications/on-notification-click.js",
      "notifications/on-notification-closed.js",
      "notifications/show-notification.js",
      "notifications/show-periodic-notifications.js",
      "messages/from-background/ad-impression.js",
      "messages/from-background/ad-options-clicked.js",
      "messages/from-background/block-element.js",
      "messages/from-background/can-inject-placeholder.js",
      "messages/from-background/count-blocked-elements.js",
      "messages/from-background/deactivated-sites-request.js",
      "messages/from-background/disable-ad-blockers.js",
      "messages/from-background/edit-block-element.js",
      "messages/from-background/execute-script-on-current-tab.js",
      "messages/from-background/exit-block-element.js",
      "messages/from-background/external-page-data.js",
      "messages/from-background/get-ad-blocker.js",
      "messages/from-background/get-app-data.js",
      "messages/from-background/get-blocking-data.js",
      "messages/from-background/get-dashboard-data.js",
      "messages/from-background/get-page-data-for-content.js",
      "messages/from-background/get-page-load-time.js",
      "messages/from-background/get-user-data.js",
      "messages/from-background/get-user-settings.js",
      "messages/from-background/handle-ad-block-wall.js",
      "messages/from-background/handle-possible-ad-frame.js",
      "messages/from-background/popup-blocked.js",
      "messages/from-background/popup-sites-request.js",
      "messages/from-background/popup-user-action.js",
      "messages/from-background/refresh-current-tab.js",
      "messages/from-background/refresh-user-data.js",
      "messages/from-background/report-ad.js",
      "messages/from-background/report-anonymous-data.js",
      "messages/from-background/report-issue.js",
      "messages/from-background/send-extensions-for-analysis.js",
      "messages/from-background/set-dashboard-data.js",
      "messages/from-background/stands-popup-opened.js",
      "messages/from-background/undo-blocked-elements.js",
      "messages/from-background/update-user-attributes.js",
      "messages/from-background/update-user-request.js",
      "messages/from-background/update-user-settings.js",
      "background/core.js",
      "background/start.js"
    ]
  },
  "icons": {
    "16": "icons/128.png",
    "48": "icons/128.png",
    "128": "icons/128.png"
  },
  "content_security_policy": "script-src 'self' https://www.googletagmanager.com https://www.google-analytics.com; object-src 'self';",
  "default_locale": "en",
  "permissions": [
    "webNavigation",
    "tabs",
    "webRequest",
    "webRequestBlocking",
    "<all_urls>",
    "notifications",
    "storage",
    "contextMenus",
    "unlimitedStorage"
  ],
  "optional_permissions": [
    "management"
  ],
  "content_scripts": [
    {
      "all_frames": true,
      "js": [
        "platform/browser-info.js",
        "platform/platform-info.js",
        "platform/manifest.js",
        "constants/block-types.js",
        "constants/custom-events.js",
        "constants/icon-badge-periods.js",
        "constants/icon-badge-types.js",
        "constants/log-event-types.js",
        "constants/message-types.js",
        "constants/trail-types.js",
        "platform/local-storage-service.js",
        "platform/messages.js",
        "common/helpers.js",
        "common/api.js",
        "common/stndz.js",
        "messages/from-content/edit-block-element.js",
        "messages/from-content/exit-block-element.js",
        "messages/from-content/get-page-load-time.js",
        "messages/from-content/popup-user-action-message.js",
        "messages/from-content/popup-blocked-message.js",
        "messages/from-content/ad-block-wall-message.js",
        "messages/from-content/possible-ad-frame-message.js",
        "content/messaging.js",
        "content/shadow-dom.js",
        "content/doc-helpers.js",
        "content/common-content.js",
        "content/popup-blocking.js",
        "content/rule-parser.js",
        "content/rule-applier.js",
        "content/doc-popup-helpers.js",
        "content/doc-start.js"
      ],
      "match_about_blank": false,
      "matches": [
        "<all_urls>"
      ],
      "run_at": "document_start"
    },
    {
      "all_frames": false,
      "js": [
        "content/site-custom-scripts/fb.js"
      ],
      "matches": [
        "https://*.facebook.com/*"
      ],
      "run_at": "document_start"
    },
    {
      "all_frames": true,
      "js": [
        "content/site-custom-scripts/yt.js"
      ],
      "matches": [
        "https://*.youtube.com/*"
      ],
      "run_at": "document_end"
    },
    {
      "all_frames": true,
      "js": [
        "content/doc-end.js"
      ],
      "match_about_blank": false,
      "matches": [
        "<all_urls>"
      ],
      "run_at": "document_end"
    },
    {
      "all_frames": true,
      "js": [
        "content/site-custom-scripts/stands-cdn.js"
      ],
      "matches": [
        "https://new-prod.standsapp.org/*"
      ],
      "run_at": "document_start"
    },
    {
      "all_frames": true,
      "js": [
        "content/site-custom-scripts/adblock-tester.js"
      ],
      "matches": [
        "https://adblock-tester.com/*"
      ],
      "run_at": "document_end"
    }
  ],
  "homepage_url": "https://www.standsapp.org",
  "web_accessible_resources": [
    "views/web_accessible/*"
  ],
  "update_url": "https://edge.microsoft.com/extensionwebstorebase/v1/crx"
}