|
|
- import { MODULE_NAME, premiumModuleSelector } from "./consts.js";
-
- // Should return true for anything premium
- export function isPremiumApplication(app, html, data, appName) {
- if (app.constructor.name.startsWith("SWPF")) {
- console.debug(`${MODULE_NAME} | ${appName} starts with 'SWPF' => add .premium`);
- html[0].classList.add("premium");
- html.closest(".app").find(".journal-entry-content").addClass(".premium");
- return true;
- }
- for (var key in app.document?.flags) {
- //prettier-ignore
- const sigilPremium = new RegExp(/^pf2e-ap\d{3}-/);
- if (sigilPremium.test(key)) {
- console.debug(`${MODULE_NAME} | ${appName} contains key matching '^pf2e-ap{3}-' => add .premium`);
- html[0].classList.add("premium");
- html.closest(".app").find(".journal-entry-content").addClass("premium");
-
- return true;
- }
- }
- for (var key in app.document?.flags) {
- //prettier-ignore
- const fvttPremium = new RegExp(/^pf2e-(beginner-box|abomination-vaults|kingmaker|km|mercenary-marketplace-vol1|pfs)/);
- if (fvttPremium.test(key)) {
- console.debug(
- `${MODULE_NAME} | ${appName} contains key matching '^pf2e-(beginner-box|abomination-vaults|kingmaker|km|mercenary-marketplace-vol1|pfs)' => add .premium`
- );
- html[0].classList.add("premium");
- html.closest(".app").find(".journal-entry-content").addClass("premium");
- return true;
- }
- }
- const isKingmaker = "pf2e-kingmaker.KingmakerJournalSheet" === app.document?.flags?.["core"]?.sheetClass;
- if (isKingmaker) {
- console.debug(`${MODULE_NAME} | ${appName} contains core flags for kingmaker => add .premium`);
- html[0].classList.add("premium");
- html.closest(".app").find(".journal-entry-content").addClass("premium");
- return true;
- }
- if (html[0].matches(premiumModuleSelector)) {
- console.debug(
- `${MODULE_NAME} | render${app.constructor.name} | matches premiumModuleSelector => do not add .dorako-ui`
- );
- html[0].classList.add("premium");
- return true;
- }
- return false;
- }
-
- Hooks.on("renderKingmakerJournalSheet", (app, html, data) => {
- console.debug(`${MODULE_NAME} | renderKingmakerJournalSheet' => add .premium`);
- html[0].classList.add("premium");
- html.closest(".app").find(".journal-entry-content").addClass(".premium");
- });
-
- Hooks.on("renderJournalSheet", (app, html, data) => {
- isPremiumApplication(app, html, data, "JournalSheet");
- });
-
- Hooks.on("renderJournalPageSheet", (app, html, data) => {
- isPremiumApplication(app, html, data, "JournalPageSheet");
- });
-
- Hooks.on("renderJournalTextPageSheet", (app, html, data) => {
- isPremiumApplication(app, html, data, "JournalTextPageSheet");
- });
-
- Hooks.on("renderSWPFCompendiumTOC", (app, html, appName) => {
- console.debug(`${MODULE_NAME} | ${appName} starts with 'SWPF' => add .premium`);
- html[0].classList.add("premium");
- // html.closest(".app").find(".journal-entry-content").addClass(".premium");
- });
|