summaryrefslogtreecommitdiffstats
path: root/browser/extensions/webcompat/shims/google-ads.js
blob: a432186f43be9e5539714ec4dd35dfd78336d342 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
/* 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";

/**
 * Bug 1713726 - Shim Ads by Google
 *
 * Sites relying on window.adsbygoogle may encounter breakage if it is blocked.
 * This shim provides a stub for that API to mitigate that breakage.
 */

if (window.adsbygoogle?.loaded === undefined) {
  window.adsbygoogle = {
    loaded: true,
    push() {},
  };
}

if (window.gapi?._pl === undefined) {
  const stub = {
    go() {},
    render: () => "",
  };
  window.gapi = {
    _pl: true,
    additnow: stub,
    autocomplete: stub,
    backdrop: stub,
    blogger: stub,
    commentcount: stub,
    comments: stub,
    community: stub,
    donation: stub,
    family_creation: stub,
    follow: stub,
    hangout: stub,
    health: stub,
    interactivepost: stub,
    load() {},
    logutil: {
      enableDebugLogging() {},
    },
    page: stub,
    partnersbadge: stub,
    person: stub,
    platform: {
      go() {},
    },
    playemm: stub,
    playreview: stub,
    plus: stub,
    plusone: stub,
    post: stub,
    profile: stub,
    ratingbadge: stub,
    recobar: stub,
    savetoandroidpay: stub,
    savetodrive: stub,
    savetowallet: stub,
    share: stub,
    sharetoclassroom: stub,
    shortlists: stub,
    signin: stub,
    signin2: stub,
    surveyoptin: stub,
    visibility: stub,
    youtube: stub,
    ytsubscribe: stub,
    zoomableimage: stub,
  };
}

for (const e of document.querySelectorAll("ins.adsbygoogle")) {
  e.style.maxWidth = "0px";
}