forked from mirrors/gecko-dev
242 lines
6.7 KiB
JavaScript
242 lines
6.7 KiB
JavaScript
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
"use strict";
|
|
|
|
/* globals module, require */
|
|
|
|
const AVAILABLE_SHIMS = [
|
|
{
|
|
id: "LiveTestShim",
|
|
platform: "all",
|
|
name: "Live test shim",
|
|
bug: "livetest",
|
|
file: "live-test-shim.js",
|
|
matches: ["*://webcompat-addon-testbed.herokuapp.com/shims_test.js"],
|
|
needsShimHelpers: ["getOptions", "optIn"],
|
|
},
|
|
{
|
|
id: "MochitestShim",
|
|
platform: "all",
|
|
name: "Test shim for Mochitests",
|
|
bug: "mochitest",
|
|
file: "mochitest-shim-1.js",
|
|
matches: [
|
|
"*://example.com/browser/browser/extensions/webcompat/tests/browser/shims_test.js",
|
|
],
|
|
needsShimHelpers: ["getOptions", "optIn"],
|
|
options: {
|
|
simpleOption: true,
|
|
complexOption: { a: 1, b: "test" },
|
|
branchValue: { value: true, branches: [] },
|
|
platformValue: { value: true, platform: "neverUsed" },
|
|
},
|
|
unblocksOnOptIn: ["*://trackertest.org/*"],
|
|
},
|
|
{
|
|
disabled: true,
|
|
id: "MochitestShim2",
|
|
platform: "all",
|
|
name: "Test shim for Mochitests (disabled by default)",
|
|
bug: "mochitest",
|
|
file: "mochitest-shim-2.js",
|
|
matches: [
|
|
"*://example.com/browser/browser/extensions/webcompat/tests/browser/shims_test_2.js",
|
|
],
|
|
needsShimHelpers: ["getOptions", "optIn"],
|
|
options: {
|
|
simpleOption: true,
|
|
complexOption: { a: 1, b: "test" },
|
|
branchValue: { value: true, branches: [] },
|
|
platformValue: { value: true, platform: "neverUsed" },
|
|
},
|
|
unblocksOnOptIn: ["*://trackertest.org/*"],
|
|
},
|
|
{
|
|
id: "MochitestShim3",
|
|
platform: "all",
|
|
name: "Test shim for Mochitests (host)",
|
|
bug: "mochitest",
|
|
file: "mochitest-shim-3.js",
|
|
notHosts: ["example.com"],
|
|
matches: [
|
|
"*://example.com/browser/browser/extensions/webcompat/tests/browser/shims_test_3.js",
|
|
],
|
|
},
|
|
{
|
|
id: "MochitestShim4",
|
|
platform: "all",
|
|
name: "Test shim for Mochitests (notHost)",
|
|
bug: "mochitest",
|
|
file: "mochitest-shim-3.js",
|
|
hosts: ["example.net"],
|
|
matches: [
|
|
"*://example.com/browser/browser/extensions/webcompat/tests/browser/shims_test_3.js",
|
|
],
|
|
},
|
|
{
|
|
id: "MochitestShim5",
|
|
platform: "all",
|
|
name: "Test shim for Mochitests (branch)",
|
|
bug: "mochitest",
|
|
file: "mochitest-shim-3.js",
|
|
branches: ["never matches"],
|
|
matches: [
|
|
"*://example.com/browser/browser/extensions/webcompat/tests/browser/shims_test_3.js",
|
|
],
|
|
},
|
|
{
|
|
id: "MochitestShim6",
|
|
platform: "never matches",
|
|
name: "Test shim for Mochitests (platform)",
|
|
bug: "mochitest",
|
|
file: "mochitest-shim-3.js",
|
|
matches: [
|
|
"*://example.com/browser/browser/extensions/webcompat/tests/browser/shims_test_3.js",
|
|
],
|
|
},
|
|
{
|
|
id: "AdSafeProtectedGoogleIMAAdapter",
|
|
platform: "all",
|
|
branches: ["nightly"],
|
|
name: "Ad Safe Protected Google IMA Adapter",
|
|
bug: "1508639",
|
|
file: "adsafeprotected-ima.js",
|
|
matches: ["*://static.adsafeprotected.com/vans-adapter-google-ima.js"],
|
|
needsShimHelpers: ["optIn"],
|
|
onlyIfBlockedByETP: true,
|
|
unblocksOnOptIn: ["*://pubads.g.doubleclick.net/gampad/ads"],
|
|
},
|
|
{
|
|
id: "AdsByGoogle",
|
|
platform: "all",
|
|
name: "Ads by Google",
|
|
bug: "1629644",
|
|
file: "empty-script.js",
|
|
matches: ["*://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"],
|
|
onlyIfBlockedByETP: true,
|
|
},
|
|
{
|
|
id: "BmAuth",
|
|
platform: "all",
|
|
name: "BmAuth by 9c9media",
|
|
bug: "1486337",
|
|
file: "bmauth.js",
|
|
matches: ["*://auth.9c9media.ca/auth/main.js"],
|
|
onlyIfBlockedByETP: true,
|
|
},
|
|
{
|
|
id: "Eluminate",
|
|
platform: "all",
|
|
name: "Eluminate",
|
|
bug: "1503211",
|
|
file: "eluminate.js",
|
|
matches: ["*://libs.coremetrics.com/eluminate.js"],
|
|
onlyIfBlockedByETP: true,
|
|
},
|
|
{
|
|
id: "FacebookSDK",
|
|
platform: "all",
|
|
branches: ["nightly"],
|
|
name: "Facebook SDK",
|
|
bug: "1226498",
|
|
file: "facebook-sdk.js",
|
|
matches: [
|
|
"*://connect.facebook.net/*/sdk.js*",
|
|
"*://connect.facebook.net/*/all.js*",
|
|
],
|
|
needsShimHelpers: ["optIn"],
|
|
onlyIfBlockedByETP: true,
|
|
unblocksOnOptIn: [
|
|
"*://*.xx.fbcdn.net/*", // covers:
|
|
// "*://scontent-.*-\d.xx.fbcdn.net/*",
|
|
// "*://static.xx.fbcdn.net/rsrc.php/*",
|
|
|
|
"*://www.facebook.com/plugins/comments.php*",
|
|
"*://www.facebook.com/plugins/comments/async/*",
|
|
"*://www.facebook.com/plugins/feedback.php*",
|
|
"*://www.facebook.com/plugins/like_box.php*",
|
|
],
|
|
},
|
|
{
|
|
id: "GoogleAnalytics",
|
|
platform: "all",
|
|
name: "Google Analytics",
|
|
bug: "1493602",
|
|
file: "google-analytics.js",
|
|
matches: ["*://www.google-analytics.com/analytics.js"],
|
|
onlyIfBlockedByETP: true,
|
|
},
|
|
{
|
|
id: "GoogleAnalyticsECommercePlugin",
|
|
platform: "all",
|
|
name: "Google Analytics E-Commerce Plugin",
|
|
bug: "1620533",
|
|
file: "google-analytics-ecommerce-plugin.js",
|
|
matches: ["*://www.google-analytics.com/plugins/ua/ec.js"],
|
|
onlyIfBlockedByETP: true,
|
|
},
|
|
{
|
|
id: "GoogleAnalyticsTagManager",
|
|
platform: "all",
|
|
name: "Google Analytics Tag Manager",
|
|
bug: "1478593",
|
|
file: "google-analytics-tag-manager.js",
|
|
matches: ["*://www.google-analytics.com/gtm/js"],
|
|
onlyIfBlockedByETP: true,
|
|
},
|
|
{
|
|
id: "GoogleAnalyticsLegacy",
|
|
platform: "all",
|
|
name: "Legacy Google Analytics",
|
|
bug: "1487072",
|
|
file: "google-analytics-legacy.js",
|
|
matches: ["*://ssl.google-analytics.com/ga.js"],
|
|
onlyIfBlockedByETP: true,
|
|
},
|
|
{
|
|
id: "GooglePublisherTags",
|
|
platform: "all",
|
|
name: "Google Publisher Tags",
|
|
bug: "1600538",
|
|
file: "google-publisher-tags.js",
|
|
matches: [
|
|
"*://www.googletagservices.com/tag/js/gpt.js",
|
|
"*://securepubads.g.doubleclick.net/tag/js/gpt.js",
|
|
"*://securepubads.g.doubleclick.net/gpt/pubads_impl_*.js",
|
|
],
|
|
onlyIfBlockedByETP: true,
|
|
unblocksOnOptIn: ["*://pubads.g.doubleclick.net/ssai/event/*/streams"],
|
|
},
|
|
{
|
|
id: "IMA3",
|
|
platform: "all",
|
|
name: "IMA3",
|
|
bug: "1487373",
|
|
file: "empty-script.js",
|
|
onlyIfBlockedByETP: true,
|
|
matches: ["*://s0.2mdn.net/instream/html5/ima3.js"],
|
|
},
|
|
{
|
|
id: "Rambler",
|
|
platform: "all",
|
|
name: "Rambler Authenticator",
|
|
bug: "1606428",
|
|
file: "rambler-authenticator.js",
|
|
matches: ["*://id.rambler.ru/rambler-id-helper/auth_events.js"],
|
|
needsShimHelpers: ["optIn"],
|
|
onlyIfBlockedByETP: true,
|
|
},
|
|
{
|
|
id: "RichRelevance",
|
|
platform: "all",
|
|
name: "Rich Relevance",
|
|
bug: "1449347",
|
|
file: "rich-relevance.js",
|
|
matches: ["*://media.richrelevance.com/rrserver/js/1.2/p13n.js"],
|
|
onlyIfBlockedByETP: true,
|
|
},
|
|
];
|
|
|
|
module.exports = AVAILABLE_SHIMS;
|