Source code

Revision control

Copy as Markdown

Other Tools

/* 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 1728114 - Shim Adobe EverestJS
*
* Sites assuming EverestJS will load can break if it is blocked.
* This shim mitigates that breakage.
*/
if (!window.__ql) {
window.__ql = {};
}
if (!window.EF) {
const AdCloudLocalStorage = {
get: (_, cb) => cb(),
isInitDone: true,
isInitSuccess: true,
};
const emptyObj = {};
const nullSrc = {
getHosts: () => [undefined],
getProtocols: () => [undefined],
hash: {},
hashParamsOrder: [],
host: undefined,
path: [],
port: undefined,
query: {},
queryDelimiter: "&",
queryParamsOrder: [],
queryPrefix: "?",
queryWithoutEncode: {},
respectEmptyQueryParamValue: undefined,
scheme: undefined,
text: "//",
userInfo: undefined,
};
const pixelDetailsEvent = {
addToDom() {},
canAddToDom: () => false,
fire() {},
getDomElement() {},
initializeUri() {},
pixelDetailsReceiver() {},
scheme: "https:",
uri: nullSrc,
userid: 0,
};
window.EF = {
AdCloudLocalStorage,
accessTopUrl: 0,
acquireCookieMatchingSlot() {},
addListener() {},
addPixelDetailsReadyListener() {},
addToDom() {},
allow3rdPartyPixels: 1,
appData: "",
appendDictionary() {},
checkGlobalSid() {},
checkUrlParams() {},
cmHost: "cm.everesttech.net",
context: {
isFbApp: () => 0,
isPageview: () => false,
isSegmentation: () => false,
isTransaction: () => false,
},
conversionData: "",
cookieMatchingSlots: 1,
debug: 0,
deserializeUrlParams: () => emptyObj,
doCookieMatching() {},
ef_itp_ls: false,
eventType: "",
executeAfterLoad() {},
executeOnloadCallbacks() {},
expectedTrackingParams: ["ev_cl", "ev_sid"],
fbIsApp: 0,
fbsCM: 0,
fbsPixelId: 0,
filterList: () => [],
getArrayIndex: -1,
getConversionData: () => "",
getConversionDataFromLocalStorage: cb => cb(),
getDisplayClickUri: () => "",
getEpochFromEfUniq: () => 0,
getFirstLevelObjectCopy: () => emptyObj,
getInvisibleIframeElement() {},
getInvisibleImageElement() {},
getMacroSubstitutedText: () => "",
getPixelDetails: cb => cb({}),
getScriptElement() {},
getScriptSrc: () => "",
getServerParams: () => emptyObj,
getSortedAttributes: () => [],
getTrackingParams: () => emptyObj,
getTransactionParams: () => emptyObj,
handleConversionData() {},
impressionProperties: "",
impressionTypes: ["impression", "impression_served"],
inFloodlight: 0,
init(config) {
try {
const { userId } = config;
window.EF.userId = userId;
pixelDetailsEvent.userId = userId;
} catch (_) {}
},
initializeEFVariables() {},
isArray: a => Array.isArray(a),
isEmptyDictionary: () => true,
isITPEnabled: () => false,
isPermanentCookieSet: () => false,
isSearchClick: () => 0,
isXSSReady() {},
jsHost: "www.everestjs.net",
jsTagAdded: 0,
location: nullSrc,
locationHref: nullSrc,
locationSkipBang: nullSrc,
log() {},
main() {},
main2() {},
newCookieMatchingEvent: () => emptyObj,
newFbsCookieMatching: () => emptyObj,
newImpression: () => emptyObj,
newPageview: () => emptyObj,
newPixelDetails: () => emptyObj,
newPixelEvent: () => emptyObj,
newPixelServerDisplayClickRedirectUri: () => emptyObj,
newPixelServerGenericRedirectUri: () => emptyObj,
newPixelServerUri: () => emptyObj,
newProductSegment: () => emptyObj,
newSegmentJavascript: () => emptyObj,
newTransaction: () => emptyObj,
newUri: () => emptyObj,
onloadCallbacks: [],
pageViewProperties: "",
pageviewProperties: "",
pixelDetails: {},
pixelDetailsAdded: 1,
pixelDetailsEvent,
pixelDetailsParams: [],
pixelDetailsReadyCallbackFns: [],
pixelDetailsRecieverCalled: 1,
pixelHost: "pixel.everesttech.net",
protocol: document?.location?.protocol || "",
referrer: nullSrc,
removeListener() {},
searchSegment: "",
segment: "",
serverParamsListener() {},
sid: 0,
sku: "",
throttleCookie: "",
trackingJavascriptSrc: nullSrc,
transactionObjectList: [],
transactionProperties: "",
userServerParams: {},
userid: 0,
};
}