@temple-wallet/extension-ads 8.1.0-dev.5 → 8.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ads-actions/helpers.d.ts +17 -0
- package/dist/ads-actions/helpers.js +96 -0
- package/dist/ads-actions/helpers.js.map +1 -0
- package/dist/ads-actions/index.d.ts +3 -0
- package/dist/ads-actions/index.js +63 -0
- package/dist/ads-actions/index.js.map +1 -0
- package/dist/ads-actions/process-elements-to-hide-or-remove-rule.d.ts +3 -0
- package/dist/ads-actions/process-elements-to-hide-or-remove-rule.js +19 -0
- package/dist/ads-actions/process-elements-to-hide-or-remove-rule.js.map +1 -0
- package/dist/ads-actions/process-permanent-rule.d.ts +3 -0
- package/dist/ads-actions/process-permanent-rule.js +143 -0
- package/dist/ads-actions/process-permanent-rule.js.map +1 -0
- package/dist/ads-actions/process-providers-ads.d.ts +3 -0
- package/dist/ads-actions/process-providers-ads.js +137 -0
- package/dist/ads-actions/process-providers-ads.js.map +1 -0
- package/dist/ads-actions/process-rule.d.ts +3 -0
- package/dist/ads-actions/process-rule.js +98 -0
- package/dist/ads-actions/process-rule.js.map +1 -0
- package/dist/ads-configuration.d.ts +31 -0
- package/dist/ads-configuration.js +30 -0
- package/dist/ads-configuration.js.map +1 -0
- package/dist/constants.d.ts +11 -0
- package/dist/constants.js +12 -0
- package/dist/constants.js.map +1 -0
- package/dist/execute-ads-actions/ads-views/index.d.ts +3 -0
- package/dist/execute-ads-actions/ads-views/index.js +4 -0
- package/dist/execute-ads-actions/ads-views/index.js.map +1 -0
- package/dist/execute-ads-actions/ads-views/make-ads-tw-view.d.ts +3 -0
- package/dist/execute-ads-actions/ads-views/make-ads-tw-view.js +40 -0
- package/dist/execute-ads-actions/ads-views/make-ads-tw-view.js.map +1 -0
- package/dist/execute-ads-actions/ads-views/make-extension-iframe-view.d.ts +3 -0
- package/dist/execute-ads-actions/ads-views/make-extension-iframe-view.js +22 -0
- package/dist/execute-ads-actions/ads-views/make-extension-iframe-view.js.map +1 -0
- package/dist/execute-ads-actions/ads-views/make-tkey-ad.d.ts +3 -0
- package/dist/execute-ads-actions/ads-views/make-tkey-ad.js +38 -0
- package/dist/execute-ads-actions/ads-views/make-tkey-ad.js.map +1 -0
- package/dist/execute-ads-actions/index.d.ts +2 -0
- package/dist/execute-ads-actions/index.js +23 -0
- package/dist/execute-ads-actions/index.js.map +1 -0
- package/dist/execute-ads-actions/observing.d.ts +1 -0
- package/dist/execute-ads-actions/observing.js +129 -0
- package/dist/execute-ads-actions/observing.js.map +1 -0
- package/dist/execute-ads-actions/override-element-styles.d.ts +2 -0
- package/dist/execute-ads-actions/override-element-styles.js +6 -0
- package/dist/execute-ads-actions/override-element-styles.js.map +1 -0
- package/dist/execute-ads-actions/process-insert-ad-action.d.ts +2 -0
- package/dist/execute-ads-actions/process-insert-ad-action.js +153 -0
- package/dist/execute-ads-actions/process-insert-ad-action.js.map +1 -0
- package/dist/index.d.ts +0 -1
- package/dist/index.js +14 -12
- package/dist/index.js.map +1 -0
- package/dist/render-ads-stack.d.ts +7 -0
- package/dist/render-ads-stack.js +156 -0
- package/dist/render-ads-stack.js.map +1 -0
- package/dist/temple-wallet-api.d.ts +23 -0
- package/dist/temple-wallet-api.js +67 -0
- package/dist/temple-wallet-api.js.map +1 -0
- package/dist/transform-raw-rules.d.ts +3 -0
- package/dist/transform-raw-rules.js +137 -0
- package/dist/transform-raw-rules.js.map +1 -0
- package/dist/types/ad-view.d.ts +7 -0
- package/dist/types/ad-view.js +2 -0
- package/dist/types/ad-view.js.map +1 -0
- package/dist/types/ads-actions.d.ts +56 -0
- package/dist/types/ads-actions.js +15 -0
- package/dist/types/ads-actions.js.map +1 -0
- package/dist/types/ads-meta.d.ts +19 -0
- package/dist/types/ads-meta.js +2 -0
- package/dist/types/ads-meta.js.map +1 -0
- package/dist/types/ads-provider.d.ts +8 -0
- package/dist/types/ads-provider.js +9 -0
- package/dist/types/ads-provider.js.map +1 -0
- package/dist/types/ads-rules.d.ts +26 -0
- package/dist/types/ads-rules.js +2 -0
- package/dist/types/ads-rules.js.map +1 -0
- package/dist/types/temple-wallet-api.d.ts +78 -0
- package/dist/types/temple-wallet-api.js +2 -0
- package/dist/types/temple-wallet-api.js.map +1 -0
- package/dist/utils.d.ts +6 -0
- package/dist/utils.js +4 -0
- package/dist/utils.js.map +1 -0
- package/package.json +3 -2
- package/src/ads-actions/helpers.ts +2 -36
- package/src/ads-actions/process-permanent-rule.ts +3 -5
- package/src/ads-actions/process-providers-ads.ts +2 -28
- package/src/execute-ads-actions/observing.ts +1 -3
- package/src/execute-ads-actions/process-insert-ad-action.ts +4 -24
- package/src/render-ads-stack.ts +2 -12
- package/src/temple-wallet-api.ts +2 -1
- package/src/types/ads-actions.ts +0 -1
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
11
|
+
var t = {};
|
|
12
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
13
|
+
t[p] = s[p];
|
|
14
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
15
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
16
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
17
|
+
t[p[i]] = s[p[i]];
|
|
18
|
+
}
|
|
19
|
+
return t;
|
|
20
|
+
};
|
|
21
|
+
import { CRYPTO_CATEGORY_NAME } from 'src/constants';
|
|
22
|
+
import { AdActionType, AdType } from 'src/types/ads-actions';
|
|
23
|
+
import { delay } from 'src/utils';
|
|
24
|
+
import { applyQuerySelector, elementIsOurAd, getParentOfDepth, prevBannerSiblingIsReplacement, ourAdQuerySelector } from './helpers';
|
|
25
|
+
export const processAdPlacesRule = (rule, permanentAdsParents, addActionsIfAdResolutionAvailable) => __awaiter(void 0, void 0, void 0, function* () {
|
|
26
|
+
const { cssString, isMultiple } = rule.selector;
|
|
27
|
+
const selectedElements = applyQuerySelector(cssString, isMultiple);
|
|
28
|
+
yield Promise.all(selectedElements.map((selectedElement) => __awaiter(void 0, void 0, void 0, function* () {
|
|
29
|
+
yield delay(0);
|
|
30
|
+
processSelectedElement(selectedElement, rule, permanentAdsParents, addActionsIfAdResolutionAvailable);
|
|
31
|
+
})));
|
|
32
|
+
});
|
|
33
|
+
const processSelectedElement = (selectedElement, rule, permanentAdsParents, addActionsIfAdResolutionAvailable) => {
|
|
34
|
+
const { selector: { shouldUseDivWrapper, parentDepth, divWrapperStyle }, stylesOverrides, shouldHideOriginal, isNative = false } = rule;
|
|
35
|
+
const banner = getParentOfDepth(selectedElement, parentDepth);
|
|
36
|
+
if (!banner ||
|
|
37
|
+
permanentAdsParents.some(parent => parent.contains(banner)) ||
|
|
38
|
+
elementIsOurAd(banner) ||
|
|
39
|
+
banner.querySelector(ourAdQuerySelector)) {
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
const actionBaseCommonProps = {
|
|
43
|
+
shouldUseDivWrapper,
|
|
44
|
+
wrapperStyle: divWrapperStyle
|
|
45
|
+
};
|
|
46
|
+
let actionsBases;
|
|
47
|
+
if (shouldUseDivWrapper && shouldHideOriginal) {
|
|
48
|
+
const parent = banner.parentElement;
|
|
49
|
+
const bannerIsHidden = window.getComputedStyle(banner).display === 'none';
|
|
50
|
+
const insertAdAction = Object.assign({ type: AdActionType.SimpleInsertAd, parent, insertionIndex: Array.from(parent.children).indexOf(banner), stylesOverrides: stylesOverrides === null || stylesOverrides === void 0 ? void 0 : stylesOverrides.map((_a) => {
|
|
51
|
+
var { parentDepth } = _a, restProps = __rest(_a, ["parentDepth"]);
|
|
52
|
+
return (Object.assign(Object.assign({}, restProps), { parentDepth: parentDepth - 1 }));
|
|
53
|
+
}), isSiblingReplacement: true }, actionBaseCommonProps);
|
|
54
|
+
actionsBases = [];
|
|
55
|
+
if (!bannerIsHidden) {
|
|
56
|
+
actionsBases.push({ type: AdActionType.HideElement, element: banner });
|
|
57
|
+
}
|
|
58
|
+
if (!prevBannerSiblingIsReplacement(banner)) {
|
|
59
|
+
actionsBases.push(insertAdAction);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
else if (shouldUseDivWrapper) {
|
|
63
|
+
const replaceElementActionBase = Object.assign({ type: AdActionType.ReplaceElement, element: banner, stylesOverrides: stylesOverrides === null || stylesOverrides === void 0 ? void 0 : stylesOverrides.map((_a) => {
|
|
64
|
+
var { parentDepth } = _a, restProps = __rest(_a, ["parentDepth"]);
|
|
65
|
+
return (Object.assign(Object.assign({}, restProps), { parentDepth: parentDepth - 1 }));
|
|
66
|
+
}) }, actionBaseCommonProps);
|
|
67
|
+
actionsBases = [replaceElementActionBase];
|
|
68
|
+
}
|
|
69
|
+
else if (shouldHideOriginal) {
|
|
70
|
+
const insertAdAction = {
|
|
71
|
+
type: AdActionType.SimpleInsertAd,
|
|
72
|
+
parent: banner,
|
|
73
|
+
insertionIndex: 0,
|
|
74
|
+
stylesOverrides,
|
|
75
|
+
isSiblingReplacement: true,
|
|
76
|
+
wrapperStyle: { display: 'contents' }
|
|
77
|
+
};
|
|
78
|
+
actionsBases = Array.from(banner.children)
|
|
79
|
+
.filter(child => window.getComputedStyle(child).display !== 'none')
|
|
80
|
+
.map((child) => ({ type: AdActionType.HideElement, element: child }));
|
|
81
|
+
if (!banner.querySelector(ourAdQuerySelector)) {
|
|
82
|
+
actionsBases.push(insertAdAction);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
const replaceAllChildrenActionBase = {
|
|
87
|
+
type: AdActionType.ReplaceAllChildren,
|
|
88
|
+
parent: banner,
|
|
89
|
+
stylesOverrides,
|
|
90
|
+
wrapperStyle: { display: 'contents' }
|
|
91
|
+
};
|
|
92
|
+
actionsBases = [replaceAllChildrenActionBase];
|
|
93
|
+
}
|
|
94
|
+
if (actionsBases.length > 0) {
|
|
95
|
+
addActionsIfAdResolutionAvailable({ width: banner, height: banner }, AdType.SlotReplacement, isNative, [CRYPTO_CATEGORY_NAME], ...actionsBases);
|
|
96
|
+
}
|
|
97
|
+
};
|
|
98
|
+
//# sourceMappingURL=process-rule.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"process-rule.js","sourceRoot":"","sources":["../../src/ads-actions/process-rule.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { AdMetadata } from './types/ads-meta';
|
|
2
|
+
interface IAdsConfiguration {
|
|
3
|
+
adsTwWindowUrl: string;
|
|
4
|
+
tkeyInpageAdUrl: string;
|
|
5
|
+
smallTkeyInpageAdUrl?: string;
|
|
6
|
+
swapTkeyUrl: string;
|
|
7
|
+
externalAdsActivityMessageType: string;
|
|
8
|
+
personaIframePath: string;
|
|
9
|
+
getAdsStackIframeURL: (id: string, adsMetadataIds: (number | AdMetadata)[], origin: string) => string;
|
|
10
|
+
buildNativeAdsMeta: (containerWidth: number, containerHeight: number) => AdMetadata[];
|
|
11
|
+
bannerAdsMeta: AdMetadata[];
|
|
12
|
+
extVersion: string;
|
|
13
|
+
templePassphrase: string;
|
|
14
|
+
isMisesBrowser: boolean;
|
|
15
|
+
}
|
|
16
|
+
export declare class AdsConfiguration {
|
|
17
|
+
static IS_MISES_BROWSER: boolean;
|
|
18
|
+
static ADS_TW_WINDOW_URL: string;
|
|
19
|
+
static TKEY_INPAGE_AD_URL: string;
|
|
20
|
+
static SMALL_TKEY_INPAGE_AD_URL: string;
|
|
21
|
+
static SWAP_TKEY_URL: string;
|
|
22
|
+
static EXTERNAL_ADS_ACTIVITY_MESSAGE_TYPE: string;
|
|
23
|
+
static personaIframePath: IAdsConfiguration['personaIframePath'];
|
|
24
|
+
static getAdsStackIframeURL: IAdsConfiguration['getAdsStackIframeURL'];
|
|
25
|
+
static buildNativeAdsMeta: IAdsConfiguration['buildNativeAdsMeta'];
|
|
26
|
+
static bannerAdsMeta: AdMetadata[];
|
|
27
|
+
static EXTENSION_VERSION: string | undefined;
|
|
28
|
+
static TEMPLE_PASSPHRASE: string;
|
|
29
|
+
}
|
|
30
|
+
export declare const configureAds: (config: IAdsConfiguration) => void;
|
|
31
|
+
export {};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
export class AdsConfiguration {
|
|
2
|
+
}
|
|
3
|
+
AdsConfiguration.IS_MISES_BROWSER = false;
|
|
4
|
+
AdsConfiguration.ADS_TW_WINDOW_URL = '';
|
|
5
|
+
AdsConfiguration.TKEY_INPAGE_AD_URL = '';
|
|
6
|
+
AdsConfiguration.SMALL_TKEY_INPAGE_AD_URL = '';
|
|
7
|
+
AdsConfiguration.SWAP_TKEY_URL = '';
|
|
8
|
+
AdsConfiguration.EXTERNAL_ADS_ACTIVITY_MESSAGE_TYPE = '';
|
|
9
|
+
AdsConfiguration.personaIframePath = '';
|
|
10
|
+
AdsConfiguration.getAdsStackIframeURL = () => '';
|
|
11
|
+
AdsConfiguration.buildNativeAdsMeta = () => [];
|
|
12
|
+
AdsConfiguration.bannerAdsMeta = [];
|
|
13
|
+
export const configureAds = (config) => {
|
|
14
|
+
const { adsTwWindowUrl, tkeyInpageAdUrl, smallTkeyInpageAdUrl, swapTkeyUrl, externalAdsActivityMessageType, personaIframePath, getAdsStackIframeURL, buildNativeAdsMeta, bannerAdsMeta, extVersion, templePassphrase, isMisesBrowser } = config;
|
|
15
|
+
if (smallTkeyInpageAdUrl) {
|
|
16
|
+
AdsConfiguration.SMALL_TKEY_INPAGE_AD_URL = smallTkeyInpageAdUrl;
|
|
17
|
+
}
|
|
18
|
+
AdsConfiguration.ADS_TW_WINDOW_URL = adsTwWindowUrl;
|
|
19
|
+
AdsConfiguration.TKEY_INPAGE_AD_URL = tkeyInpageAdUrl;
|
|
20
|
+
AdsConfiguration.SWAP_TKEY_URL = swapTkeyUrl;
|
|
21
|
+
AdsConfiguration.EXTERNAL_ADS_ACTIVITY_MESSAGE_TYPE = externalAdsActivityMessageType;
|
|
22
|
+
AdsConfiguration.personaIframePath = personaIframePath;
|
|
23
|
+
AdsConfiguration.getAdsStackIframeURL = getAdsStackIframeURL;
|
|
24
|
+
AdsConfiguration.buildNativeAdsMeta = buildNativeAdsMeta;
|
|
25
|
+
AdsConfiguration.bannerAdsMeta = bannerAdsMeta;
|
|
26
|
+
AdsConfiguration.EXTENSION_VERSION = extVersion;
|
|
27
|
+
AdsConfiguration.TEMPLE_PASSPHRASE = templePassphrase;
|
|
28
|
+
AdsConfiguration.IS_MISES_BROWSER = isMisesBrowser;
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=ads-configuration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ads-configuration.js","sourceRoot":"","sources":["../src/ads-configuration.ts"],"names":[],"mappings":"AAiBA,MAAM,OAAO,gBAAgB;;AACpB,iCAAgB,GAAG,KAAK,CAAC;AACzB,kCAAiB,GAAG,EAAE,CAAC;AACvB,mCAAkB,GAAG,EAAE,CAAC;AACxB,yCAAwB,GAAG,EAAE,CAAC;AAC9B,8BAAa,GAAG,EAAE,CAAC;AACnB,mDAAkC,GAAG,EAAE,CAAC;AACxC,kCAAiB,GAA2C,EAAE,CAAC;AAC/D,qCAAoB,GAA8C,GAAG,EAAE,CAAC,EAAE,CAAC;AAC3E,mCAAkB,GAA4C,GAAG,EAAE,CAAC,EAAE,CAAC;AACvE,8BAAa,GAAiB,EAAE,CAAC;AAK1C,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,MAAyB,EAAE,EAAE;IACxD,MAAM,EACJ,cAAc,EACd,eAAe,EACf,oBAAoB,EACpB,WAAW,EACX,8BAA8B,EAC9B,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,cAAc,EACf,GAAG,MAAM,CAAC;IAEX,IAAI,oBAAoB,EAAE,CAAC;QACzB,gBAAgB,CAAC,wBAAwB,GAAG,oBAAoB,CAAC;IACnE,CAAC;IAED,gBAAgB,CAAC,iBAAiB,GAAG,cAAc,CAAC;IACpD,gBAAgB,CAAC,kBAAkB,GAAG,eAAe,CAAC;IACtD,gBAAgB,CAAC,aAAa,GAAG,WAAW,CAAC;IAC7C,gBAAgB,CAAC,kCAAkC,GAAG,8BAA8B,CAAC;IACrF,gBAAgB,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IACvD,gBAAgB,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;IAC7D,gBAAgB,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;IACzD,gBAAgB,CAAC,aAAa,GAAG,aAAa,CAAC;IAC/C,gBAAgB,CAAC,iBAAiB,GAAG,UAAU,CAAC;IAChD,gBAAgB,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;IACtD,gBAAgB,CAAC,gBAAgB,GAAG,cAAc,CAAC;AACrD,CAAC,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export declare const TEMPLE_WALLET_AD_ATTRIBUTE_NAME = "twa";
|
|
2
|
+
export declare const TEMPLE_WALLET_NATIVE_AD_ATTRIBUTE_NAME = "twa-native";
|
|
3
|
+
export declare const SIBLING_REPLACEMENT_ATTRIBUTE_NAME = "twa-sibling-replacement";
|
|
4
|
+
export declare const AD_SEEN_THRESHOLD = 0.5;
|
|
5
|
+
export declare const AD_RENDER_START_MESSAGE_TYPE = "adRenderStart";
|
|
6
|
+
export declare const AD_RESIZE_MESSAGE_TYPE = "resize";
|
|
7
|
+
export declare const AD_READY_MESSAGE_TYPE = "ready";
|
|
8
|
+
export declare const AD_ERROR_MESSAGE_TYPE = "error";
|
|
9
|
+
export declare const IFRAME_ALLOWANCE = "accelerometer; gyroscope";
|
|
10
|
+
export declare const CRYPTO_CATEGORY_NAME = "crypto";
|
|
11
|
+
export declare const BACKGROUND_ELEMENT_ID = "background";
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export const TEMPLE_WALLET_AD_ATTRIBUTE_NAME = 'twa';
|
|
2
|
+
export const TEMPLE_WALLET_NATIVE_AD_ATTRIBUTE_NAME = 'twa-native';
|
|
3
|
+
export const SIBLING_REPLACEMENT_ATTRIBUTE_NAME = 'twa-sibling-replacement';
|
|
4
|
+
export const AD_SEEN_THRESHOLD = 0.5;
|
|
5
|
+
export const AD_RENDER_START_MESSAGE_TYPE = 'adRenderStart';
|
|
6
|
+
export const AD_RESIZE_MESSAGE_TYPE = 'resize';
|
|
7
|
+
export const AD_READY_MESSAGE_TYPE = 'ready';
|
|
8
|
+
export const AD_ERROR_MESSAGE_TYPE = 'error';
|
|
9
|
+
export const IFRAME_ALLOWANCE = 'accelerometer; gyroscope';
|
|
10
|
+
export const CRYPTO_CATEGORY_NAME = 'crypto';
|
|
11
|
+
export const BACKGROUND_ELEMENT_ID = 'background';
|
|
12
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,+BAA+B,GAAG,KAAK,CAAC;AACrD,MAAM,CAAC,MAAM,sCAAsC,GAAG,YAAY,CAAC;AACnE,MAAM,CAAC,MAAM,kCAAkC,GAAG,yBAAyB,CAAC;AAC5E,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,CAAC;AACrC,MAAM,CAAC,MAAM,4BAA4B,GAAG,eAAe,CAAC;AAC5D,MAAM,CAAC,MAAM,sBAAsB,GAAG,QAAQ,CAAC;AAC/C,MAAM,CAAC,MAAM,qBAAqB,GAAG,OAAO,CAAC;AAC7C,MAAM,CAAC,MAAM,qBAAqB,GAAG,OAAO,CAAC;AAC7C,MAAM,CAAC,MAAM,gBAAgB,GAAG,0BAA0B,CAAC;AAC3D,MAAM,CAAC,MAAM,oBAAoB,GAAG,QAAQ,CAAC;AAC7C,MAAM,CAAC,MAAM,qBAAqB,GAAG,YAAY,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/execute-ads-actions/ads-views/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { AES } from 'crypto-js';
|
|
2
|
+
import { AdsConfiguration } from 'src/ads-configuration';
|
|
3
|
+
import { IFRAME_ALLOWANCE } from 'src/constants';
|
|
4
|
+
export const makeAdsTwView = (id, source, { width, height }, origin) => {
|
|
5
|
+
const iframe = document.createElement('iframe');
|
|
6
|
+
iframe.id = id;
|
|
7
|
+
iframe.src = getAdsTwUrl(source, origin, width, height, iframe.id);
|
|
8
|
+
iframe.style.width = source.native ? '100%' : `${width}px`;
|
|
9
|
+
iframe.style.height = `${height}px`;
|
|
10
|
+
iframe.style.border = 'none';
|
|
11
|
+
iframe.allow = IFRAME_ALLOWANCE;
|
|
12
|
+
return { element: iframe };
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Returns URL for ads.templewallet.com or its preview iframe
|
|
16
|
+
* @param placementType Placement type
|
|
17
|
+
* @param origin Full URL of the page
|
|
18
|
+
* @param width Frame width
|
|
19
|
+
* @param height Frame height
|
|
20
|
+
*/
|
|
21
|
+
const getAdsTwUrl = (source, origin, width, height, id) => {
|
|
22
|
+
const { providerName, slug, native } = source;
|
|
23
|
+
const url = new URL(AdsConfiguration.ADS_TW_WINDOW_URL);
|
|
24
|
+
url.searchParams.set('ap', providerName.toLowerCase());
|
|
25
|
+
if (native) {
|
|
26
|
+
url.searchParams.set('vh', String(height));
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
url.searchParams.set('w', String(width));
|
|
30
|
+
}
|
|
31
|
+
url.searchParams.set('h', String(height));
|
|
32
|
+
url.searchParams.set('p', slug);
|
|
33
|
+
url.searchParams.set('o', encryptWithAES(origin));
|
|
34
|
+
if (id) {
|
|
35
|
+
url.searchParams.set('id', id);
|
|
36
|
+
}
|
|
37
|
+
return url.toString();
|
|
38
|
+
};
|
|
39
|
+
const encryptWithAES = (text) => AES.encrypt(text, AdsConfiguration.TEMPLE_PASSPHRASE).toString();
|
|
40
|
+
//# sourceMappingURL=make-ads-tw-view.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"make-ads-tw-view.js","sourceRoot":"","sources":["../../../src/execute-ads-actions/ads-views/make-ads-tw-view.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAEhC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAIjD,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,EAAU,EACV,MAAgB,EAChB,EAAE,KAAK,EAAE,MAAM,EAAgB,EAC/B,MAAc,EACN,EAAE;IACV,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAChD,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC;IACf,MAAM,CAAC,GAAG,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;IACnE,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,CAAC;IAC3D,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC;IACpC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;IAC7B,MAAM,CAAC,KAAK,GAAG,gBAAgB,CAAC;IAEhC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AAC7B,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,WAAW,GAAG,CAAC,MAAgB,EAAE,MAAc,EAAE,KAAa,EAAE,MAAc,EAAE,EAAU,EAAE,EAAE;IAClG,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAC9C,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;IACxD,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,YAAY,CAAC,WAAW,EAAE,CAAC,CAAC;IACvD,IAAI,MAAM,EAAE,CAAC;QACX,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAC7C,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3C,CAAC;IACD,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAC1C,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAChC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC;IAClD,IAAI,EAAE,EAAE,CAAC;QACP,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACjC,CAAC;IAED,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;AACxB,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,gBAAgB,CAAC,iBAAiB,CAAC,CAAC,QAAQ,EAAE,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { AdsConfiguration } from 'src/ads-configuration';
|
|
2
|
+
export const makeExtensionIframeView = (id, source, { width, height }) => {
|
|
3
|
+
const element = document.createElement('iframe');
|
|
4
|
+
let iframePath = '';
|
|
5
|
+
switch (source.providerName) {
|
|
6
|
+
case 'Persona':
|
|
7
|
+
iframePath = AdsConfiguration.personaIframePath;
|
|
8
|
+
break;
|
|
9
|
+
default:
|
|
10
|
+
throw new Error(`Ads from ${source.providerName} are unavailable via extension iframe`);
|
|
11
|
+
}
|
|
12
|
+
const iframeUrl = new URL(iframePath);
|
|
13
|
+
iframeUrl.searchParams.set('id', id);
|
|
14
|
+
iframeUrl.searchParams.set('slug', source.slug);
|
|
15
|
+
element.src = iframeUrl.toString();
|
|
16
|
+
element.id = id;
|
|
17
|
+
element.style.width = `${width}px`;
|
|
18
|
+
element.style.height = `${height}px`;
|
|
19
|
+
element.style.border = 'none';
|
|
20
|
+
return { element };
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=make-extension-iframe-view.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"make-extension-iframe-view.js","sourceRoot":"","sources":["../../../src/execute-ads-actions/ads-views/make-extension-iframe-view.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAIzD,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,EAAU,EAAE,MAAgB,EAAE,EAAE,KAAK,EAAE,MAAM,EAAgB,EAAU,EAAE;IAC/G,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACjD,IAAI,UAAU,GAAG,EAAE,CAAC;IACpB,QAAQ,MAAM,CAAC,YAAY,EAAE,CAAC;QAC5B,KAAK,SAAS;YACZ,UAAU,GAAG,gBAAgB,CAAC,iBAAiB,CAAC;YAChD,MAAM;QACR;YACE,MAAM,IAAI,KAAK,CAAC,YAAY,MAAM,CAAC,YAAY,uCAAuC,CAAC,CAAC;IAC5F,CAAC;IACD,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC;IACtC,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACrC,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IAChD,OAAO,CAAC,GAAG,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC;IACnC,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC;IAEhB,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,KAAK,IAAI,CAAC;IACnC,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC;IACrC,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;IAE9B,OAAO,EAAE,OAAO,EAAE,CAAC;AACrB,CAAC,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { AdsConfiguration } from 'src/ads-configuration';
|
|
2
|
+
/** Native variant and small variant should be used only for testing */
|
|
3
|
+
export const makeTKeyAdView = (width, height, isNative = false) => {
|
|
4
|
+
const element = document.createElement('div');
|
|
5
|
+
element.style.width = `${width}px`;
|
|
6
|
+
element.style.height = `${height}px`;
|
|
7
|
+
const div = document.createElement('div');
|
|
8
|
+
div.style.width = `${width}px`;
|
|
9
|
+
div.style.height = `${height}px`;
|
|
10
|
+
element.appendChild(div);
|
|
11
|
+
if (isNative) {
|
|
12
|
+
const anchor = document.createElement('a');
|
|
13
|
+
anchor.href = AdsConfiguration.SWAP_TKEY_URL;
|
|
14
|
+
anchor.target = '_blank';
|
|
15
|
+
anchor.rel = 'noopener noreferrer';
|
|
16
|
+
anchor.style.width = `${width}px`;
|
|
17
|
+
anchor.style.height = `${height}px`;
|
|
18
|
+
anchor.style.overflow = 'hidden';
|
|
19
|
+
anchor.style.textOverflow = 'ellipsis';
|
|
20
|
+
anchor.appendChild(document.createTextNode('TODO: Native TKEY ad'));
|
|
21
|
+
div.appendChild(anchor);
|
|
22
|
+
return { element };
|
|
23
|
+
}
|
|
24
|
+
const anchor = document.createElement('a');
|
|
25
|
+
anchor.href = AdsConfiguration.SWAP_TKEY_URL;
|
|
26
|
+
anchor.target = '_blank';
|
|
27
|
+
anchor.rel = 'noopener noreferrer';
|
|
28
|
+
anchor.style.width = '100%';
|
|
29
|
+
anchor.style.height = '100%';
|
|
30
|
+
div.appendChild(anchor);
|
|
31
|
+
const img = document.createElement('img');
|
|
32
|
+
img.src = width <= 320 ? AdsConfiguration.SMALL_TKEY_INPAGE_AD_URL : AdsConfiguration.TKEY_INPAGE_AD_URL;
|
|
33
|
+
img.style.width = '100%';
|
|
34
|
+
img.style.height = '100%';
|
|
35
|
+
anchor.appendChild(img);
|
|
36
|
+
return { element, creativeSet: { image: { url: img.src } } };
|
|
37
|
+
};
|
|
38
|
+
//# sourceMappingURL=make-tkey-ad.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"make-tkey-ad.js","sourceRoot":"","sources":["../../../src/execute-ads-actions/ads-views/make-tkey-ad.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAGzD,uEAAuE;AACvE,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAa,EAAE,MAAc,EAAE,QAAQ,GAAG,KAAK,EAAU,EAAE;IACxF,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC9C,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,KAAK,IAAI,CAAC;IACnC,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC;IAErC,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC1C,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,KAAK,IAAI,CAAC;IAC/B,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC;IAEjC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAEzB,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QAC3C,MAAM,CAAC,IAAI,GAAG,gBAAgB,CAAC,aAAa,CAAC;QAC7C,MAAM,CAAC,MAAM,GAAG,QAAQ,CAAC;QACzB,MAAM,CAAC,GAAG,GAAG,qBAAqB,CAAC;QACnC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,KAAK,IAAI,CAAC;QAClC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC;QACpC,MAAM,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACjC,MAAM,CAAC,KAAK,CAAC,YAAY,GAAG,UAAU,CAAC;QACvC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC,sBAAsB,CAAC,CAAC,CAAC;QACpE,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAExB,OAAO,EAAE,OAAO,EAAE,CAAC;IACrB,CAAC;IAED,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAC3C,MAAM,CAAC,IAAI,GAAG,gBAAgB,CAAC,aAAa,CAAC;IAC7C,MAAM,CAAC,MAAM,GAAG,QAAQ,CAAC;IACzB,MAAM,CAAC,GAAG,GAAG,qBAAqB,CAAC;IACnC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC;IAC5B,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;IAC7B,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAExB,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC1C,GAAG,CAAC,GAAG,GAAG,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC,gBAAgB,CAAC,wBAAwB,CAAC,CAAC,CAAC,gBAAgB,CAAC,kBAAkB,CAAC;IACzG,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC;IACzB,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;IAC1B,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAExB,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC;AAC/D,CAAC,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
import { AdActionType } from 'src/types/ads-actions';
|
|
11
|
+
import { processInsertAdAction } from './process-insert-ad-action';
|
|
12
|
+
export const executeAdsActions = (adsActions) => Promise.allSettled(adsActions.map((action) => __awaiter(void 0, void 0, void 0, function* () {
|
|
13
|
+
if (action.type === AdActionType.RemoveElement) {
|
|
14
|
+
action.element.remove();
|
|
15
|
+
}
|
|
16
|
+
else if (action.type === AdActionType.HideElement) {
|
|
17
|
+
action.element.style.setProperty('display', 'none', 'important');
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
yield processInsertAdAction(action);
|
|
21
|
+
}
|
|
22
|
+
})));
|
|
23
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/execute-ads-actions/index.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAY,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAE/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,UAAsB,EAAE,EAAE,CAC1D,OAAO,CAAC,UAAU,CAChB,UAAU,CAAC,GAAG,CAAC,CAAM,MAAM,EAAC,EAAE;IAC5B,IAAI,MAAM,CAAC,IAAI,KAAK,YAAY,CAAC,aAAa,EAAE,CAAC;QAC/C,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;IAC1B,CAAC;SAAM,IAAI,MAAM,CAAC,IAAI,KAAK,YAAY,CAAC,WAAW,EAAE,CAAC;QACpD,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IACnE,CAAC;SAAM,CAAC;QACN,MAAM,qBAAqB,CAAC,MAAM,CAAC,CAAC;IACtC,CAAC;AACH,CAAC,CAAA,CAAC,CACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const subscribeToAdsStackIframeLoadIfNecessary: (element: HTMLIFrameElement) => Promise<void>;
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
import browser from 'webextension-polyfill';
|
|
11
|
+
import { extendOrKeepDimension } from 'src/ads-actions/helpers';
|
|
12
|
+
import { AdsConfiguration } from 'src/ads-configuration';
|
|
13
|
+
import { AD_ERROR_MESSAGE_TYPE, AD_READY_MESSAGE_TYPE, AD_RENDER_START_MESSAGE_TYPE, AD_RESIZE_MESSAGE_TYPE, AD_SEEN_THRESHOLD } from 'src/constants';
|
|
14
|
+
import { AdsProviderTitle } from 'src/types/ads-provider';
|
|
15
|
+
const loadingAdsIds = new Set();
|
|
16
|
+
const loadedAdsIds = new Set();
|
|
17
|
+
const alreadySentAnalyticsAdsIds = new Set();
|
|
18
|
+
export const subscribeToAdsStackIframeLoadIfNecessary = (element) => __awaiter(void 0, void 0, void 0, function* () {
|
|
19
|
+
const adId = element.id;
|
|
20
|
+
if (loadingAdsIds.has(adId)) {
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
loadingAdsIds.add(adId);
|
|
24
|
+
return new Promise((resolve, reject) => {
|
|
25
|
+
const messageListener = (event) => {
|
|
26
|
+
var _a, _b;
|
|
27
|
+
if (event.source !== element.contentWindow)
|
|
28
|
+
return;
|
|
29
|
+
try {
|
|
30
|
+
const data = typeof event.data === 'string' ? JSON.parse(event.data) : event.data;
|
|
31
|
+
if (data.id !== adId)
|
|
32
|
+
return;
|
|
33
|
+
const horizontalBordersWidth = element.offsetWidth - element.clientWidth;
|
|
34
|
+
const verticalBordersWidth = element.offsetHeight - element.clientHeight;
|
|
35
|
+
switch (data.type) {
|
|
36
|
+
case AD_READY_MESSAGE_TYPE:
|
|
37
|
+
resolve(data.adMetadata.source.providerName);
|
|
38
|
+
break;
|
|
39
|
+
case AD_ERROR_MESSAGE_TYPE:
|
|
40
|
+
window.removeEventListener('message', messageListener);
|
|
41
|
+
element.style.display = 'none';
|
|
42
|
+
reject(new Error((_a = data.reason) !== null && _a !== void 0 ? _a : 'Unknown error'));
|
|
43
|
+
break;
|
|
44
|
+
case AD_RENDER_START_MESSAGE_TYPE:
|
|
45
|
+
const { dimensions, source } = data.adMetadata;
|
|
46
|
+
const { width, height } = dimensions;
|
|
47
|
+
if (width > 0 && height > 0) {
|
|
48
|
+
if (source.native) {
|
|
49
|
+
element.style.height = `${height}px`;
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
extendOrKeepDimension(element, 'width', width);
|
|
53
|
+
extendOrKeepDimension(element, 'height', height);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
break;
|
|
57
|
+
case AD_RESIZE_MESSAGE_TYPE:
|
|
58
|
+
const { width: newWidth, height: newHeight } = data;
|
|
59
|
+
if ((_b = element.style.width) === null || _b === void 0 ? void 0 : _b.endsWith('%')) {
|
|
60
|
+
element.style.height = `${newHeight + verticalBordersWidth}px`;
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
extendOrKeepDimension(element, 'width', newWidth + horizontalBordersWidth);
|
|
64
|
+
extendOrKeepDimension(element, 'height', newHeight + verticalBordersWidth);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
catch (error) {
|
|
69
|
+
console.error('Observing error:', error);
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
window.addEventListener('message', messageListener);
|
|
73
|
+
})
|
|
74
|
+
.then(providerName => {
|
|
75
|
+
if (loadedAdsIds.has(adId))
|
|
76
|
+
return;
|
|
77
|
+
loadedAdsIds.add(adId);
|
|
78
|
+
const adIsSeen = adRectIsSeen(element);
|
|
79
|
+
if (adIsSeen) {
|
|
80
|
+
sendExternalAdsActivity(adId, providerName);
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
observeIntersection(element, providerName);
|
|
84
|
+
}
|
|
85
|
+
})
|
|
86
|
+
.catch(e => {
|
|
87
|
+
console.error(e);
|
|
88
|
+
throw e;
|
|
89
|
+
})
|
|
90
|
+
.finally(() => void loadingAdsIds.delete(adId));
|
|
91
|
+
});
|
|
92
|
+
const observeIntersection = (element, providerName) => {
|
|
93
|
+
const observer = new IntersectionObserver(entries => {
|
|
94
|
+
if (entries.some(entry => entry.isIntersecting)) {
|
|
95
|
+
sendExternalAdsActivity(element.id, providerName);
|
|
96
|
+
observer.disconnect();
|
|
97
|
+
}
|
|
98
|
+
}, { threshold: AD_SEEN_THRESHOLD });
|
|
99
|
+
observer.observe(element);
|
|
100
|
+
};
|
|
101
|
+
const sendExternalAdsActivity = (adId, providerName) => {
|
|
102
|
+
if (alreadySentAnalyticsAdsIds.has(adId)) {
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
105
|
+
alreadySentAnalyticsAdsIds.add(adId);
|
|
106
|
+
const url = window.parent.location.href;
|
|
107
|
+
browser.runtime
|
|
108
|
+
.sendMessage({
|
|
109
|
+
type: AdsConfiguration.EXTERNAL_ADS_ACTIVITY_MESSAGE_TYPE,
|
|
110
|
+
url,
|
|
111
|
+
provider: AdsProviderTitle[providerName]
|
|
112
|
+
})
|
|
113
|
+
.catch(err => void console.error(err));
|
|
114
|
+
};
|
|
115
|
+
const adRectIsSeen = (element) => {
|
|
116
|
+
const elementRect = element.getBoundingClientRect();
|
|
117
|
+
const viewport = window.visualViewport;
|
|
118
|
+
if (!viewport) {
|
|
119
|
+
return false;
|
|
120
|
+
}
|
|
121
|
+
const intersectionX0 = Math.min(Math.max(0, elementRect.x), viewport.width);
|
|
122
|
+
const intersectionX1 = Math.min(Math.max(0, elementRect.x + elementRect.width), viewport.width);
|
|
123
|
+
const intersectionY0 = Math.min(Math.max(0, elementRect.y), viewport.height);
|
|
124
|
+
const intersectionY1 = Math.min(Math.max(0, elementRect.y + elementRect.height), viewport.height);
|
|
125
|
+
const elementArea = elementRect.width * elementRect.height;
|
|
126
|
+
const intersectionArea = (intersectionX1 - intersectionX0) * (intersectionY1 - intersectionY0);
|
|
127
|
+
return intersectionArea / elementArea >= AD_SEEN_THRESHOLD;
|
|
128
|
+
};
|
|
129
|
+
//# sourceMappingURL=observing.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"observing.js","sourceRoot":"","sources":["../../src/execute-ads-actions/observing.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"override-element-styles.js","sourceRoot":"","sources":["../../src/execute-ads-actions/override-element-styles.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,OAAoB,EAAE,SAAuB,EAAE,EAAE;IACrF,KAAK,MAAM,aAAa,IAAI,SAAS,EAAE,CAAC;QACtC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,aAAa,EAAE,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC;IACrE,CAAC;AACH,CAAC,CAAC"}
|