Skip to content

Commit d144a65

Browse files
Remove helpers.hideAd() (#1925)
* move hideAd to startAd.js * Update src/lib/startAd.js * Update src/components/settingsPage.js * format * format * Update src/lib/removeAds.js * fix: imports * fix: imports * revert version chnages * explicit import * format
1 parent 8da3049 commit d144a65

File tree

16 files changed

+48
-34
lines changed

16 files changed

+48
-34
lines changed

package-lock.json

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/components/settingsPage.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import select from "dialogs/select";
55
import Ref from "html-tag-js/ref";
66
import actionStack from "lib/actionStack";
77
import appSettings from "lib/settings";
8+
import { hideAd } from "lib/startAd";
89
import FileBrowser from "pages/fileBrowser";
910
import { isValidColor } from "utils/color/regex";
1011
import helpers from "utils/helpers";
@@ -70,7 +71,7 @@ export default function settingsPage(
7071
/** DISCLAIMER: do not assign hideSearchBar directly because it can change */
7172
$page.ondisconnect = () => hideSearchBar();
7273
$page.onhide = () => {
73-
helpers.hideAd();
74+
hideAd();
7475
actionStack.remove(title);
7576
};
7677

src/lib/removeAds.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import purchaseListener from "handlers/purchase";
2-
import helpers from "utils/helpers";
2+
import { hideAd } from "./startAd.js";
33

44
/**
55
* Remove ads after purchase
@@ -25,7 +25,7 @@ export default function removeAds() {
2525

2626
function onpurchase() {
2727
resolve(null);
28-
helpers.hideAd(true);
28+
hideAd(true);
2929
localStorage.setItem("acode_pro", "true");
3030
window.IS_FREE_VERSION = false;
3131
toast(strings["thank you :)"]);

src/lib/startAd.js

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
import tag from "html-tag-js";
2+
13
let adUnitIdBanner = "ca-app-pub-5911839694379275/9157899592"; // Production
24
let adUnitIdInterstitial = "ca-app-pub-5911839694379275/9570937608"; // Production
35
let adUnitIdRewarded = "ca-app-pub-5911839694379275/1633667633"; // Production
@@ -57,3 +59,20 @@ export default async function startAd() {
5759
window.iad = interstitial;
5860
window.adRewardedUnitId = adUnitIdRewarded;
5961
}
62+
63+
/**
64+
* Hides the ad
65+
* @param {Boolean} [force=false]
66+
*/
67+
export function hideAd(force = false) {
68+
const { ad } = window;
69+
if (ad?.active) {
70+
const $pages = tag.getAll(".page-replacement");
71+
const hide = $pages.length === 1;
72+
73+
if (force || hide) {
74+
ad.active = false;
75+
ad.hide();
76+
}
77+
}
78+
}

src/pages/about/about.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ import Page from "components/page";
44
import Reactive from "html-tag-js/reactive";
55
import actionStack from "lib/actionStack";
66
import constants from "lib/constants";
7+
import { hideAd } from "lib/startAd";
78
import helpers from "utils/helpers";
8-
99
export default function AboutInclude() {
1010
const $page = Page(strings.about.capitalize());
1111
const webviewVersionName = Reactive("N/A");
@@ -115,7 +115,7 @@ export default function AboutInclude() {
115115

116116
$page.onhide = function () {
117117
actionStack.remove("about");
118-
helpers.hideAd();
118+
hideAd();
119119
};
120120

121121
app.append($page);

src/pages/adRewards/index.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import loader from "dialogs/loader";
55
import actionStack from "lib/actionStack";
66
import adRewards from "lib/adRewards";
77
import removeAds from "lib/removeAds";
8+
import { hideAd } from "lib/startAd";
89
import helpers from "utils/helpers";
910

1011
let $rewardPage = null;
@@ -179,7 +180,7 @@ export default function openAdRewardsPage() {
179180
action: $page.hide,
180181
});
181182

182-
helpers.hideAd(true);
183+
hideAd(true);
183184
render();
184185
app.append($page);
185186
$rewardPage = $page;

src/pages/changelog/changelog.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import toast from "components/toast";
66
import DOMPurify from "dompurify";
77
import Ref from "html-tag-js/ref";
88
import actionStack from "lib/actionStack";
9+
import { hideAd } from "lib/startAd";
910
import markdownIt from "markdown-it";
1011
import markdownItFootnote from "markdown-it-footnote";
1112
import markdownItTaskLists from "markdown-it-task-lists";
@@ -73,7 +74,7 @@ export default async function Changelog() {
7374

7475
$page.onhide = function () {
7576
actionStack.remove("changelog");
76-
helpers.hideAd();
77+
hideAd();
7778
};
7879

7980
actionStack.push({

src/pages/customTheme/customTheme.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import confirm from "dialogs/confirm";
66
import select from "dialogs/select";
77
import actionStack from "lib/actionStack";
88
import settings from "lib/settings";
9+
import { hideAd } from "lib/startAd";
910
import ThemeBuilder from "theme/builder";
1011
import themes from "theme/list";
1112
import { isValidColor } from "utils/color/regex";
@@ -34,7 +35,7 @@ export default function CustomThemeInclude() {
3435

3536
$page.onhide = () => {
3637
actionStack.remove("custom-theme");
37-
helpers.hideAd();
38+
hideAd();
3839
};
3940

4041
$page.addEventListener("click", handleClick);

src/pages/fileBrowser/fileBrowser.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ import projects from "lib/projects";
2020
import recents from "lib/recents";
2121
import remoteStorage from "lib/remoteStorage";
2222
import appSettings from "lib/settings";
23+
import { hideAd } from "lib/startAd";
2324
import mimeTypes from "mime-types";
2425
import mustache from "mustache";
2526
import filesSettings from "settings/filesSettings";
@@ -511,7 +512,7 @@ function FileBrowserInclude(mode, info, doesOpenLast = true) {
511512

512513
$page.onhide = function () {
513514
hideSearchBar();
514-
helpers.hideAd();
515+
hideAd();
515516
actionStack.clearFromMark();
516517
actionStack.remove("filebrowser");
517518
$content.removeEventListener("click", handleClick);

src/pages/fontManager/fontManager.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import Ref from "html-tag-js/ref";
1212
import actionStack from "lib/actionStack";
1313
import fonts from "lib/fonts";
1414
import appSettings from "lib/settings";
15+
import { hideAd } from "lib/startAd";
1516
import FileBrowser from "pages/fileBrowser";
1617
import helpers from "utils/helpers";
1718
import Url from "utils/Url";
@@ -33,7 +34,7 @@ export default function fontManager() {
3334
});
3435

3536
$page.onhide = () => {
36-
helpers.hideAd();
37+
hideAd();
3738
actionStack.remove("fontManager");
3839
};
3940

0 commit comments

Comments
 (0)