@temple-wallet/extension-ads 10.0.1 → 10.1.1-dev.1580.1
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/index.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ type StringRecord<T = string> = Record<string, T>;
|
|
|
2
2
|
|
|
3
3
|
interface AdSource {
|
|
4
4
|
shouldNotUseStrictContainerLimits?: boolean;
|
|
5
|
-
providerName: 'Temple' | 'Persona' | 'HypeLab' | 'SmartyAds';
|
|
5
|
+
providerName: 'Temple' | 'Persona' | 'HypeLab' | 'SmartyAds' | 'Bitmedia';
|
|
6
6
|
native?: boolean;
|
|
7
7
|
slug: string;
|
|
8
8
|
categories?: string[];
|
|
@@ -158,7 +158,8 @@ declare enum AdsProviderTitle {
|
|
|
158
158
|
SmartyAds = "SmartyAds",
|
|
159
159
|
HypeLab = "HypeLab",
|
|
160
160
|
Persona = "Persona",
|
|
161
|
-
Temple = "Temple Wallet"
|
|
161
|
+
Temple = "Temple Wallet",
|
|
162
|
+
Bitmedia = "Bitmedia"
|
|
162
163
|
}
|
|
163
164
|
type AdsProviderName = keyof typeof AdsProviderTitle;
|
|
164
165
|
|
package/dist/index.js
CHANGED
|
@@ -12,7 +12,7 @@ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
|
12
12
|
var St__default = /*#__PURE__*/_interopDefault(St);
|
|
13
13
|
var Wt__default = /*#__PURE__*/_interopDefault(Wt);
|
|
14
14
|
|
|
15
|
-
var at=Object.defineProperty,lt=Object.defineProperties;var dt=Object.getOwnPropertyDescriptors;var le=Object.getOwnPropertySymbols;var Oe=Object.prototype.hasOwnProperty,We=Object.prototype.propertyIsEnumerable;var Be=(e,t,r)=>t in e?at(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,v=(e,t)=>{for(var r in t||(t={}))Oe.call(t,r)&&Be(e,r,t[r]);if(le)for(var r of le(t))We.call(t,r)&&Be(e,r,t[r]);return e},C=(e,t)=>lt(e,dt(t));var I=(e,t)=>{var r={};for(var s in e)Oe.call(e,s)&&t.indexOf(s)<0&&(r[s]=e[s]);if(e!=null&&le)for(var s of le(e))t.indexOf(s)<0&&We.call(e,s)&&(r[s]=e[s]);return r};var w=(e,t,r)=>new Promise((s,o)=>{var a=l=>{try{i(r.next(l));}catch(m){o(m);}},n=l=>{try{i(r.throw(l));}catch(m){o(m);}},i=l=>l.done?s(l.value):Promise.resolve(l.value).then(a,n);i((r=r.apply(e,t)).next());});process&&process.env&&process.env.NODE_ENV==="development";navigator.userAgent.includes("Macintosh");var ke=e=>!!e,ct=300,B=(e=ct)=>new Promise(t=>setTimeout(t,e));var A=class{};A.IS_MISES_BROWSER=!1,A.ADS_TW_WINDOW_URL="",A.TKEY_INPAGE_AD_URL="",A.SMALL_TKEY_INPAGE_AD_URL="",A.SWAP_TKEY_URL="",A.EXTERNAL_ADS_ACTIVITY_MESSAGE_TYPE="",A.personaIframePath="",A.getAdsStackIframeURL=()=>"",A.buildNativeAdsMeta=()=>[],A.pickNextAdMetadata=()=>{},A.bannerAdsMeta=[];var mt=e=>{let{adsTwWindowUrl:t,tkeyInpageAdUrl:r,smallTkeyInpageAdUrl:s,swapTkeyUrl:o,externalAdsActivityMessageType:a,personaIframePath:n,getAdsStackIframeURL:i,buildNativeAdsMeta:l,bannerAdsMeta:m,extVersion:d,templePassphrase:p,isMisesBrowser:c,pickNextAdMetadata:h}=e;s&&(A.SMALL_TKEY_INPAGE_AD_URL=s),A.ADS_TW_WINDOW_URL=t,A.TKEY_INPAGE_AD_URL=r,A.SWAP_TKEY_URL=o,A.EXTERNAL_ADS_ACTIVITY_MESSAGE_TYPE=a,A.personaIframePath=n,A.getAdsStackIframeURL=i,A.buildNativeAdsMeta=l,A.pickNextAdMetadata=h,A.bannerAdsMeta=m,A.EXTENSION_VERSION=d,A.TEMPLE_PASSPHRASE=p,A.IS_MISES_BROWSER=c;};var Y="twa",K="twa-native",de="twa-hidden",G="twa-sibling-replacement";var ce="adRenderStart",me="resize",se="ready",ne="error",pe="accelerometer; gyroscope",_="crypto",ue="background";var q=/[\d.]+(px)?$/,X=`[${Y}]`,Ue=`[${Y}]:not([${K}])`,Fe=`[${K}]`,j=(e,t)=>{let r=parseInt(e,10);return isNaN(r)||!q.test(e)?t:r},V=(e,t,r)=>{e.style[t]=`${Math.max(j(e.style[t],0),r)}px`;},Q=e=>e.reduce((t,r)=>t+j(r,0),0),J=e=>!!e.closest(X),Ae=e=>{var t;return !!((t=e.previousElementSibling)!=null&&t.getAttribute(G))},ie=e=>{let t=getComputedStyle(e),{x:r,right:s,width:o,height:a}=e.getBoundingClientRect(),n={width:o,height:a},i=["width","height"];for(let l of i){let m=t[l],d=e.getAttribute(l),p=Math.max(...[m,d].map(c=>j(c!=null?c:"",-1)));p!==-1&&(n[l]=p),l==="width"&&r<0?n.width+=r:l==="width"&&s>window.innerWidth&&(n.width=window.innerWidth-r);}return n},H=(e,t,r=document)=>e?t?[...r.querySelectorAll(e)]:[r.querySelector(e)].filter(s=>!!s):[],O=(e,t)=>{let r=e;for(let s=0;s<t;s++){let o=r.parentElement;if(!o)return null;r=o;}return r},Ve=(e,t,r,s,o)=>{if(e<2&&t<2)return [];if(s)return A.buildNativeAdsMeta(e,t);let a=r==="permanent"||r==="slot-replacement"?A.bannerAdsMeta.filter(({source:l})=>l.shouldNotUseStrictContainerLimits):[],n=Math.max(e,...a.map(({dimensions:l})=>l.width)),i=Math.max(t,...a.map(({dimensions:l})=>l.height));return A.bannerAdsMeta.reduce((l,{dimensions:m,source:d},p)=>{let{shouldNotUseStrictContainerLimits:c=!1,categories:h=[_]}=d;if(h.every(M=>!o.includes(M)))return l;let{minContainerWidth:u,minContainerHeight:g,width:R,maxContainerWidth:E,maxContainerHeight:P}=m,S=!1;switch(r){case"permanent":S=c||n>=R&&(i>=g||i<2);break;case"slot-replacement":S=c||n>=u&&(i>=g||i<2);break;default:S=e>=u&&t>=g&&e<=E&&t<=P;}return S&&l.push(p),l},[])},pt=e=>{let{x:t,y:r,width:s,height:o}=e.getBoundingClientRect();return t!==0||r!==0||s!==0||o!==0},Ee=e=>{let{display:t}=window.getComputedStyle(e);switch(t){case"none":return !0;case"contents":return Array.from(e.children).every(r=>Ee(r));default:return !pt(e)}};var Ye=(e,t)=>{let{shouldHide:r,cssString:s,parentDepth:o,isMultiple:a}=e;H(s,a).forEach(n=>{let i=O(n,o);if(!i)return;let l=window.getComputedStyle(i);l.display!=="none"&&l.visibility!=="hidden"&&t.push({type:r?"hide-element":"remove-element",element:i});});};var Ge=(e,t,r,s)=>w(void 0,null,function*(){let{parentSelector:o,displayWidth:a}=e,{isMultiple:n,cssString:i,parentDepth:l}=o;if(a&&!semver.satisfies(semver.coerce(window.innerWidth),a))return [];let m=H(i,n).map(d=>O(d,l)).filter(d=>!!d);return yield Promise.all(m.map(d=>w(void 0,null,function*(){yield B(0),ut(d,e,t,r,s);}))),m}),fe=(e,t)=>{var r,s;return e?{width:(r=document.querySelector(e.width))!=null?r:t,height:(s=document.querySelector(e.height))!=null?s:t}:{width:t,height:t}},ut=(e,t,r,s,o)=>{var be;let xe=t,{shouldUseDivWrapper:a,divWrapperStyle:n,wrapperStyle:i,elementStyle:l,adSelector:m,insertionIndex:d,insertBeforeSelector:p,insertAfterSelector:c,insertionsCount:h=1,elementsToMeasureSelectors:u,stylesOverrides:g,shouldHideOriginal:R=!1,isNative:E,urlRegexes:P,parentSelector:S,supportsTheming:M,enableForNonMises:L,fontSampleSelector:y,displayWidth:T}=xe,x=I(xe,["shouldUseDivWrapper","divWrapperStyle","wrapperStyle","elementStyle","adSelector","insertionIndex","insertBeforeSelector","insertAfterSelector","insertionsCount","elementsToMeasureSelectors","stylesOverrides","shouldHideOriginal","isNative","urlRegexes","parentSelector","supportsTheming","enableForNonMises","fontSampleSelector","displayWidth"]),D=x.wrapperType?i:a?n:{display:"contents"},{isMultiple:b,cssString:z,parentDepth:U}=m,W=H(E?Fe:Ue,!0,e).reduce((f,k)=>f.some($=>$.contains(k))?f:[...f.filter($=>!k.contains($)),k],[]),F=W.filter(f=>Ee(f)&&!f.hasAttribute(de)),ee=W.length-F.length,ae=h-ee;if(H(z,b,e).map(f=>O(f,U)).filter(f=>ke(f)&&!J(f)).forEach(f=>{var $;let k=window.getComputedStyle(f).display==="none";if(ae<=0)(!R||!k)&&s.push({type:R?"hide-element":"remove-element",element:f});else {let rt=fe(u,(($=f.parentElement)==null?void 0:$.children.length)===1?f.parentElement:f),_e=M&&y?document.querySelector(y):null,{fontSize:Le,lineHeight:Ce}=_e?window.getComputedStyle(_e):{},st=Le?j(Le,0):0,nt=Ce?j(Ce,0):0,He=v({themeColor:M?o:void 0,fontSize:st||void 0,lineHeight:nt||void 0,wrapperStyle:D,elementStyle:l,stylesOverrides:g},x),it=v({type:"replace-element",element:f,adCategories:[_]},He),Ne={type:"hide-element",element:f},ot=v({type:"simple-insert-ad",parent:f.parentElement,insertionIndex:Array.from(f.parentElement.children).indexOf(f),isSiblingReplacement:!0,adCategories:[_]},He),re=[],De=Ae(f);R&&De&&!k?re=[Ne]:R&&!De?re=[Ne,ot]:R||(re=[it]),re.length>0&&r(rt,"permanent",E,[_],...re)&&ae--;}}),ae<=0)return;let te=-1,Me=e,he={width:e,height:e},Ie=p||c;if(Ie){let f=e.querySelector(Ie),k=f==null?void 0:f.parentElement;f&&k&&(Me=k,te=Array.from(e.children).indexOf(f)+(p?0:1),he=fe(u,f));}else {let f=d!=null?d:0;te=f<0?Math.max(e.children.length+f,0):Math.min(f,e.children.length),he=fe(u,(be=e.children[te])!=null?be:e);}if(te!==-1){let f=v({type:"simple-insert-ad",wrapperStyle:D,elementStyle:l,parent:Me,insertionIndex:te,isSiblingReplacement:!1,stylesOverrides:g,adCategories:[_]},x);r(he,"permanent",E,[_],...Array(ae).fill(f));}};var Et=["align-items","align-self","bottom","display","flex","flex-grow","flex-shrink","float","justify-content","justify-self","left","margin","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","padding","position","right","top","vertical-align","z-index"],ft=lodash.memoize(e=>e.reduce((t,{dimensions:r})=>{let s=t.filter(({width:o,height:a})=>o<r.width||a<r.height);return (s.length===0||s.some(({width:o,height:a})=>o>r.width||a>r.height))&&s.push(r),s},[])),ze=(e,t,r,s)=>w(void 0,null,function*(){let o=ft(A.bannerAdsMeta),a=e.map(({selector:i,parentDepth:l,categories:m})=>H(i,!0).reduce((d,p)=>{var y;let c=(y=O(p,l))!=null?y:p,h=d.findIndex(({element:T})=>T.contains(c)),u=c.parentElement&&window.getComputedStyle(c.parentElement),{width:g,height:R}=ie(c),E=s.some(T=>{var x;return T.type==="replace-all-children"||T.type==="simple-insert-ad"?T.parent.contains(c)||c.contains(T.parent):((x=T.element.parentElement)==null?void 0:x.contains(c))||c.contains(T.element)}),P=(u==null?void 0:u.display)==="none"||(u==null?void 0:u.visibility)==="hidden",S=h>=0&&d[h]instanceof HTMLAnchorElement,M=o.some(({width:T,height:x})=>g>=T&&R>=x);if(E||!M||P||S)return d;let L={element:c,categories:m};return h>=0?d.splice(h,1,L):d.some(({element:T})=>T.contains(c))||d.push(L),d},[])).flat(),n=t.map(({selector:i,parentDepth:l})=>H(i,!0).map(m=>O(m,l)).filter(m=>!!m)).flat();a=a.filter(({element:i})=>!n.includes(i)),yield Promise.all(a.map(m=>w(void 0,[m],function*({element:i,categories:l}){var u,g,R,E,P,S,M,L;yield B(0);let d=i.parentElement,{width:p,height:c}=window.getComputedStyle(i),h=q.test(p)&&q.test(c)?i:(g=(u=d==null?void 0:d.closest("div, article, aside, footer, header"))!=null?u:(d==null?void 0:d.tagName.toLowerCase())==="body"?void 0:d)!=null?g:i;if(!J(i)&&!i.querySelector(X)&&!s.some(y=>y.type==="simple-insert-ad"?!1:y.type==="replace-all-children"?y.parent.contains(i):y.element===i)){let y=(R=i.getAttribute("style"))!=null?R:"",T=Object.fromEntries(y.split(";").filter(Boolean).map(F=>F.split(":").map(ee=>ee.trim())));if((E=T.width)!=null&&E.match(/^0[a-z]/)||(P=T.height)!=null&&P.match(/^0[a-z]/))return;let x=window.getComputedStyle(i),D=v(v({},Object.fromEntries(Et.map(F=>[F,x.getPropertyValue(F)]))),T),b={type:"hide-element",element:i},z={type:"simple-insert-ad",wrapperStyle:D,parent:(S=i.parentElement)!=null?S:document.body,insertionIndex:Array.from((L=(M=i.parentElement)==null?void 0:M.children)!=null?L:[]).indexOf(i),isSiblingReplacement:!0,shouldUseBlurredBackground:!0,adCategories:l},U,W=i.closest(`[${G}] + *`);W&&W!==i?U=[{type:"remove-element",element:W.previousElementSibling},b,z]:W?U=window.getComputedStyle(i).display==="none"?[]:[b]:U=[b,z],r({width:h,height:h},"provider-replacement",!1,l,...U);}})));});var $e=(e,t,r)=>w(void 0,null,function*(){let{cssString:s,isMultiple:o}=e.selector,a=H(s,o);yield Promise.all(a.map(n=>w(void 0,null,function*(){yield B(0),Rt(n,e,t,r);})));}),Rt=(e,t,r,s)=>{let{selector:{shouldUseDivWrapper:o,parentDepth:a,divWrapperStyle:n},stylesOverrides:i,shouldHideOriginal:l,isNative:m=!1}=t,d=O(e,a);if(!d||r.some(h=>h.contains(d))||J(d)||d.querySelector(X))return;let p={shouldUseDivWrapper:o,wrapperStyle:n},c;if(o&&l){let h=d.parentElement,u=window.getComputedStyle(d).display==="none",g=v({type:"simple-insert-ad",parent:h,insertionIndex:Array.from(h.children).indexOf(d),stylesOverrides:i==null?void 0:i.map(P=>{var S=P,{parentDepth:R}=S,E=I(S,["parentDepth"]);return C(v({},E),{parentDepth:R-1})}),isSiblingReplacement:!0,adCategories:[_]},p);c=[],u||c.push({type:"hide-element",element:d}),Ae(d)||c.push(g);}else if(o)c=[v({type:"replace-element",element:d,stylesOverrides:i==null?void 0:i.map(R=>{var E=R,{parentDepth:u}=E,g=I(E,["parentDepth"]);return C(v({},g),{parentDepth:u-1})}),adCategories:[_]},p)];else if(l){let h={type:"simple-insert-ad",parent:d,insertionIndex:0,stylesOverrides:i,isSiblingReplacement:!0,adCategories:[_],wrapperStyle:{display:"contents"}};c=Array.from(d.children).filter(u=>window.getComputedStyle(u).display!=="none").map(u=>({type:"hide-element",element:u})),d.querySelector(X)||c.push(h);}else c=[{type:"replace-all-children",parent:d,stylesOverrides:i,adCategories:[_],wrapperStyle:{display:"contents"}}];c.length>0&&s({width:d,height:d},"slot-replacement",m,[_],...c);};var yt=a=>w(void 0,[a],function*({providersSelectors:e,providersNegativeSelectors:t,adPlacesRules:r,permanentAdPlacesRules:s,elementsToHideOrRemoveRules:o}){let n=[],i=(d,p,c,h,...u)=>{if(u.length>0&&u.every(b=>b.type==="hide-element"||b.type==="remove-element"))return n.push(...u),!0;let{width:g}=ie(d.width),{height:R}=ie(d.height),{paddingLeft:E,paddingRight:P}=window.getComputedStyle(d.width),{paddingTop:S,paddingBottom:M}=window.getComputedStyle(d.height),L=Q([E,P]),y=L===g?g:g-L,T=Q([S,M]),x=T===R?R:R-T,D=Ve(y,x,p,c,h);return D.length?(n.push(...u.map(b=>b.type==="hide-element"||b.type==="remove-element"?b:C(v({},b),{adsMetadata:D,originalWidth:y,originalHeight:x}))),!0):!1},l=[],{backgroundColor:m}=window.getComputedStyle(document.body);return yield Promise.all(o.map(d=>w(void 0,null,function*(){yield B(0),Ye(d,n);}))),yield Promise.all(s.map(d=>w(void 0,null,function*(){yield B(0),l=l.concat(yield Ge(d,i,n,m));}))),yield Promise.all(r.map(d=>w(void 0,null,function*(){yield B(0),yield $e(d,l,i);}))),yield ze(e,t,i,n),n});var Re=(a=>(a.Optimal="Optimal",a.SmartyAds="SmartyAds",a.HypeLab="HypeLab",a.Persona="Persona",a.Temple="Temple Wallet",a))(Re||{});var ye=new Set,Ke=new Set,qe=new Set,je=e=>w(void 0,null,function*(){let t=e.id;if(!ye.has(t))return ye.add(t),new Promise((r,s)=>{let o=!1,a=n=>{var i,l;if(n.source===e.contentWindow)try{let m=typeof n.data=="string"?JSON.parse(n.data):n.data;if(m.id!==t)return;let d=e.offsetWidth-e.clientWidth,p=e.offsetHeight-e.clientHeight;switch(m.type){case se:r(m.adMetadata.source.providerName);break;case ne:window.removeEventListener("message",a),e.style.display="none",s(new Error((i=m.reason)!=null?i:"Unknown error"));break;case ce:let{dimensions:c,source:h}=m.adMetadata;o=(l=h.native)!=null?l:!1;let{width:u,height:g}=c;u>0&&g>0&&(h.native?e.style.height=`${g}px`:(V(e,"width",u),V(e,"height",g)));break;case me:let{width:R,height:E}=m;o?e.style.height=`${E+p}px`:(V(e,"width",R+d),V(e,"height",E+p));}}catch(m){console.error("Observing error:",m);}};window.addEventListener("message",a);}).then(r=>{if(Ke.has(t))return;Ke.add(t),vt(e)?Qe(t,r):Tt(e,r);}).catch(r=>{throw console.error(r),r}).finally(()=>void ye.delete(t))}),Tt=(e,t)=>{let r=new IntersectionObserver(s=>{s.some(o=>o.isIntersecting)&&(Qe(e.id,t),r.disconnect());},{threshold:.5});r.observe(e);},Qe=(e,t)=>{if(qe.has(e))return;qe.add(e);let r=window.parent.location.href;St__default.default.runtime.sendMessage({type:A.EXTERNAL_ADS_ACTIVITY_MESSAGE_TYPE,url:r,provider:Re[t]}).catch(s=>void console.error(s));},vt=e=>{let t=e.getBoundingClientRect(),r=window.visualViewport;if(!r)return !1;let s=Math.min(Math.max(0,t.x),r.width),o=Math.min(Math.max(0,t.x+t.width),r.width),a=Math.min(Math.max(0,t.y),r.height),n=Math.min(Math.max(0,t.y+t.height),r.height),i=t.width*t.height;return (o-s)*(n-a)/i>=.5};var oe=(e,t)=>{for(let r in t)e.style.setProperty(r,t[r]);};var Pt=(e,t)=>{["width","height"].forEach(s=>{var a;let o=(a=e.style[s])!=null?a:"";q.test(o)&&parseInt(o,10)<t[s]&&e.style.removeProperty(s);});},Mt=(e,t,r,s)=>w(void 0,null,function*(){let{elementStyle:o={},stylesOverrides:a=[],adsMetadata:n,wrapperType:i,originalHeight:l,originalWidth:m,shouldUseBlurredBackground:d,adCategories:p,themeColor:c,fontSize:h,lineHeight:u}=e;a.sort((y,T)=>y.parentDepth-T.parentDepth);let g,R=nanoid.nanoid(),E=document.createElement("iframe");E.loading="lazy",E.src=A.getAdsStackIframeURL({id:R,adsMetadataIds:n,origin:window.location.href,adCategories:p,themeColor:c,fontSize:h,lineHeight:u}),E.id=R,E.allow=pe;let P=n[0],{dimensions:S}=typeof P=="number"?A.bannerAdsMeta[P]:P,M={width:d?Math.max(m,S.width):S.width,height:d?Math.max(l,S.height):S.height};E.style.width=i==="tbody"?"100%":`${M.width}px`,E.style.height=`${M.height}px`,E.style.border="none";for(let y in o)E.style.setProperty(y,o[y]);switch(E.setAttribute(Y,"true"),Pt(t,M),r.appendChild(E),e.type){case"replace-all-children":g=e.parent,e.parent.innerHTML="",e.parent.appendChild(t);break;case"replace-element":g=e.element.parentElement,e.element.replaceWith(t);break;default:let y=e.parent.children[e.insertionIndex];if(e.isSiblingReplacement){t.setAttribute(G,"true");let T=new MutationObserver(x=>{x.some(b=>Array.from(b.removedNodes).includes(y))&&(t.remove(),T.disconnect());});T.observe(e.parent,{childList:!0});}g=e.parent,e.parent.insertBefore(t,y);break}if(i!=="tbody"){let{borderLeftWidth:y,borderRightWidth:T,borderTopWidth:x,borderBottomWidth:D}=window.getComputedStyle(E),{borderLeftWidth:b,borderRightWidth:z,borderTopWidth:U,borderBottomWidth:W}=window.getComputedStyle(t),F=Q([y,T,b,z]),ee=Q([x,D,U,W]);E.style.width=`${M.width-F}px`,E.style.height=`${M.height-ee}px`;}je(E).catch(s);let L=0;a.forEach(({parentDepth:y,style:T})=>{for(;y>L&&g;)g=g.parentElement,L++;g&&oe(g,T);});}),Je=e=>w(void 0,null,function*(){let{wrapperStyle:t={},adsMetadata:r,wrapperType:s="div",colsAfter:o=0,colsBefore:a=0,colspan:n=1}=e,i=r.every(p=>typeof p=="object"),l,m;if(s==="div")l=document.createElement("div"),m=l;else {l=document.createElement("tbody");let p=document.createElement("tr");l.appendChild(p);for(let h=0;h<a;h++)p.appendChild(document.createElement("td"));let c=document.createElement("td");c.colSpan=n,p.appendChild(c),m=c;for(let h=0;h<o;h++)p.appendChild(document.createElement("td"));}l.setAttribute(Y,"true"),i&&l.setAttribute(K,"true"),oe(l,t);let d=()=>{let p=document.createElement("div");p.setAttribute(Y,"true"),p.setAttribute(de,"true"),i&&p.setAttribute(K,"true"),e.type==="simple-insert-ad"&&e.isSiblingReplacement&&p.setAttribute(G,"true"),p.style.display="none",l.replaceWith(p);};yield Mt(e,l,m,p=>{console.error("Failed to render ads",p),d();}).catch(p=>{throw console.error("Inserting an ad attempt error:",p),d(),p});});var It=e=>Promise.allSettled(e.map(t=>w(void 0,null,function*(){t.type==="remove-element"?t.element.remove():t.type==="hide-element"?t.element.style.setProperty("display","none","important"):yield Je(t);})));var Se=(e,t,r=!1)=>{let s=document.createElement("div");s.style.width=`${e}px`,s.style.height=`${t}px`;let o=document.createElement("div");if(o.style.width=`${e}px`,o.style.height=`${t}px`,s.appendChild(o),r){let i=document.createElement("a");return i.href=A.SWAP_TKEY_URL,i.target="_blank",i.rel="noopener noreferrer",i.style.width=`${e}px`,i.style.height=`${t}px`,i.style.overflow="hidden",i.style.textOverflow="ellipsis",i.appendChild(document.createTextNode("TODO: Native TKEY ad")),o.appendChild(i),{element:s}}let a=document.createElement("a");a.href=A.SWAP_TKEY_URL,a.target="_blank",a.rel="noopener noreferrer",a.style.width="100%",a.style.height="100%",o.appendChild(a);let n=document.createElement("img");return n.src=e<=320?A.SMALL_TKEY_INPAGE_AD_URL:A.TKEY_INPAGE_AD_URL,n.style.width="100%",n.style.height="100%",a.appendChild(n),{element:s,creativeSet:{image:{url:n.src}}}};var Te=e=>{let{source:t,id:r,dimensions:s}=e,{width:o,height:a}=s,n=document.createElement("iframe");return n.id=r,n.src=_t(e),n.style.width=t.native?"100%":`${o}px`,n.style.height=`${a}px`,n.style.border="none",n.allow=pe,{element:n}},bt={height:"h",slug:"p",id:"id",themeColor:"tc",fontSize:"fs",lineHeight:"lh"},_t=o=>{var a=o,{source:e,origin:t,dimensions:r}=a,s=I(a,["source","origin","dimensions"]);let{width:n,height:i}=r,{providerName:l,slug:m,native:d}=e,p=new URL(A.ADS_TW_WINDOW_URL),c=(h,u)=>{p.searchParams.set(h,String(u));};return c("ap",l.toLowerCase()),d?c("vh",i):c("w",n),Object.entries(v({height:i,slug:m},s)).forEach(([h,u])=>{(u||u===0)&&c(bt[h],u);}),c("o",Lt(t)),p.toString()},Lt=e=>cryptoJs.AES.encrypt(e,A.TEMPLE_PASSPHRASE).toString();var ve=(e,t,{width:r,height:s})=>{let o=document.createElement("iframe"),a="";switch(t.providerName){case"Persona":a=A.personaIframePath;break;default:throw new Error(`Ads from ${t.providerName} are unavailable via extension iframe`)}let n=new URL(a);return n.searchParams.set("id",e),n.searchParams.set("slug",t.slug),o.src=n.toString(),o.id=e,o.style.width=`${r}px`,o.style.height=`${s}px`,o.style.border="none",{element:o}};var we=class{constructor(l){this.wasReady=!1;this.rootElement=document.getElementById("root");this.validAdsCounter=0;var m=l,{id:t,initialAdsMetadata:r,origin:s,pageHasPlacesRules:o,adCategories:a,hypelabBlacklistedCampaignsSlugs:n}=m,i=I(m,["id","initialAdsMetadata","origin","pageHasPlacesRules","adCategories","hypelabBlacklistedCampaignsSlugs"]);this.id=t,this.origin=s,this.pageHasPlacesRules=o,this.adCategories=a,this.hypelabBlacklistedCampaignsSlugs=n,this.adThemeParams=i,this.adsMetadata=r.map(d=>typeof d=="number"?A.bannerAdsMeta[d]:d);}startRendering(){if(this.adsMetadata.length===0){this.broadcastNoMoreAds();return}this.currentAdMetadata=A.pickNextAdMetadata(this.adsMetadata,this.currentAdMetadata,this.validAdsCounter,this.pageHasPlacesRules,this.adCategories);let t=this.currentAdMetadata;if(!t){this.broadcastNoMoreAds();return}this.broadcastMessage({id:this.id,type:ce,adMetadata:this.currentAdMetadata});let{element:r,creativeSet:s}=this.placeNewAd(t);r instanceof HTMLIFrameElement?this.listenToIframeMessages(r,t):this.handleValidAd({ad:{creative_set:s}});}listenToIframeMessages(t,r){let s=A.pickNextAdMetadata(this.adsMetadata,r,this.validAdsCounter,this.pageHasPlacesRules,this.adCategories);this.responseTimeout=setTimeout(()=>{console.error(`Timeout exceeded for ${this.id}, ad source: ${JSON.stringify(r.source)}`),this.handleInvalidAd();},(s?1e4:2e4)*(A.IS_MISES_BROWSER?2:1)),this.messageListener=o=>{var a;if(o.source===t.contentWindow)try{let n=typeof o.data=="string"?JSON.parse(o.data):o.data;switch(n.type){case se:if(r.source.providerName==="HypeLab"&&this.hypelabBlacklistedCampaignsSlugs.includes((a=n.ad)==null?void 0:a.campaign_slug)&&s){this.handleInvalidAd();break}this.handleValidAd(n);break;case ne:this.wasReady||this.handleInvalidAd();break;case me:let{width:i,height:l}=n;i>0&&l>0&&(r.source.native?t.style.height=`${l}px`:(V(t,"width",i),V(t,"height",l)),this.broadcastMessage(C(v({},n),{id:this.id})));}}catch(n){console.error("Message handling error:",n);}},window.addEventListener("message",this.messageListener);}handleInvalidAd(){this.removeMessageListener(),this.clearResponseTimeout(),this.startRendering(),this.validAdsCounter=0;}removeMessageListener(){this.messageListener&&(window.removeEventListener("message",this.messageListener),this.messageListener=void 0);}placeNewAd(t){document.body.style.backgroundColor=t.source.native?"transparent":"#F2F2F2";let{source:r,dimensions:s}=t,o;switch(r.providerName){case"Temple":o=Se(s.width,s.height,r.native);break;case"HypeLab":case"SmartyAds":o=Te(v({id:this.id,source:r,dimensions:s,origin:this.origin},this.adThemeParams));break;default:o=ve(this.id,r,s);}let{element:a}=o,n=document.getElementById("temple-label");return this.rootElement.replaceChildren(a),r.native?n.removeAttribute("active"):n.setAttribute("active",""),o}updateBackground(t,r={}){let s=document.getElementById(ue);if(t.native&&s&&this.rootElement.removeChild(s),!t.native){try{let{image:o,video:a}=r,n;if(o?(n=document.createElement("img"),n.src=o.url,n.alt=""):a&&(n=document.createElement("video"),n.src=a.url,n.autoplay=!0,n.preload="auto",n.playsInline=!0,n.muted=!0,n.loop=!0),!n&&s&&this.rootElement.removeChild(s),!n)return;n.id=ue,n.style.zIndex="-1",oe(n,{position:"absolute",top:"0px",left:"0px",right:"0px",bottom:"0px",width:"100%",height:"100%","object-fit":"cover",filter:"blur(12px)"}),s?this.rootElement.replaceChild(n,s):this.rootElement.prepend(n);}catch(o){console.error(o);}document.body.style.backgroundColor="transparent";}}broadcastMessage(t){window.parent.postMessage(JSON.stringify(t),"*");}broadcastNoMoreAds(){this.broadcastMessage({id:this.id,type:ne,reason:"No more ads to render"});}clearResponseTimeout(){this.responseTimeout!==void 0&&(clearTimeout(this.responseTimeout),this.responseTimeout=void 0);}handleValidAd(t){var s;let r=this.currentAdMetadata;r&&(this.wasReady||(this.wasReady=!0,this.broadcastMessage({id:this.id,type:se,adMetadata:r})),this.validAdsCounter++,this.clearResponseTimeout(),this.updateBackground(r.source,(s=t.ad)==null?void 0:s.creative_set));}},Ct=e=>{try{new we(e).startRendering();}catch(t){console.error("Error while rendering ads stack:",t);}};var Ht=(e,t)=>{let{adPlacesRulesForAllDomains:r,providersRulesForAllDomains:s,providersSelectors:o,providersNegativeSelectors:a={},providersToReplaceAtAllSites:n,permanentAdPlacesRulesForAllDomains:i,permanentNativeAdPlacesRulesForAllDomains:l={},adsReplaceUrlsBlacklist:m=[],elementsToHideOrRemoveRules:d={},providersCategories:p={},blacklistedHypelabCampaignsSlugs:c=[],timestamp:h}=t,u=typeof e=="string"?e:e.href,{hostname:g}=new URL(u);if(m.some(P=>new RegExp(P).test(u)))return {adPlacesRules:[],permanentAdPlacesRules:[],providersSelectors:[],providersNegativeSelectors:[],elementsToHideOrRemoveRules:[],blacklistedHypelabCampaignsSlugs:c,timestamp:h};let R=u.replace(/#.*$/,""),E=P=>{let S=P.source.includes("#")?u:R;return P.test(S)};return {adPlacesRules:Dt(g,E,r),permanentAdPlacesRules:Bt(g,E,i,l),providersSelectors:tt(g,E,s,o,n,p),providersNegativeSelectors:tt(g,E,s,a,n,p),elementsToHideOrRemoveRules:Nt(g,E,d),blacklistedHypelabCampaignsSlugs:c,timestamp:h}},Nt=(e,t,r)=>{var s;return ((s=r[e])!=null?s:[]).map(n=>{var i=n,{urlRegexes:o}=i,a=I(i,["urlRegexes"]);return C(v({},a),{urlRegexes:o.map(l=>new RegExp(l))})}).filter(({urlRegexes:o})=>o.some(t))},Dt=(e,t,r)=>{var a;return ((a=r[e])!=null?a:[]).map(l=>{var m=l,{urlRegexes:n}=m,i=I(m,["urlRegexes"]);return C(v({},i),{urlRegexes:n.map(d=>new RegExp(d))})}).reduce((n,d)=>{var p=d,{urlRegexes:i,selector:l}=p,m=I(p,["urlRegexes","selector"]);if(!i.some(t))return n;let g=l,{cssString:c}=g,h=I(g,["cssString"]),u=n.findIndex(P=>{var S=P,{selector:R}=S,E=I(S,["selector"]);let y=R,L=I(y,["cssString"]);return lodash.isEqual(h,L)&&lodash.isEqual(m,E)});return u===-1?n.push(v({selector:l},m)):n[u].selector.cssString+=", ".concat(c),n},[])},et=e=>a=>{var n=a,{urlRegexes:t,elementToMeasureSelector:r,elementsToMeasureSelectors:s}=n,o=I(n,["urlRegexes","elementToMeasureSelector","elementsToMeasureSelectors"]);return C(v({},o),{urlRegexes:t.map(i=>new RegExp(i)),isNative:e,elementsToMeasureSelectors:s!=null?s:r?{width:r,height:r}:void 0})},Bt=(e,t,r,s={})=>{var i,l;let o=(i=r[e])!=null?i:[],a=(l=s[e])!=null?l:[];return o.map(et(!1)).concat(a.map(et(!0))).filter(({urlRegexes:m})=>m.some(t))};function Ot(e){let t="";return e.forEach(r=>{t+=r+", ";}),t&&(t=t.slice(0,-2)),t}var tt=(e,t,r,s,o,a)=>{var p;let i=((p=r[e])!=null?p:[]).map(u=>{var g=u,{urlRegexes:c}=g,h=I(g,["urlRegexes"]);return C(v({},h),{urlRegexes:c.map(R=>new RegExp(R))})}).filter(({urlRegexes:c})=>c.some(t)),l=new Set,m={},d=c=>{var g,R;if(l.has(c))return;let h=((g=a[c])!=null?g:[_]).join("|");((R=s[c])!=null?R:[]).forEach(E=>{let{selector:P,parentDepth:S}=typeof E=="string"?{selector:E,parentDepth:0}:E;m[h]||(m[h]={});let M=m[h];M[S]||(M[S]=new Set),M[S].add(P);}),l.add(c);};return o.forEach(d),i.forEach(({providers:c})=>c.forEach(d)),Object.entries(m).map(([c,h])=>Object.entries(h).map(([u,g])=>({parentDepth:Number(u),selector:Ot(g),categories:c.split("|")}))).flat()};var N=e=>(...t)=>w(void 0,null,function*(){let{data:r}=yield e(...t);return r}),Pe=class{constructor(t){this.getAdPlacesRulesForAllDomains=N(()=>this.api.get("/slise-ad-rules/ad-places",this.getAdVersionRequestConfig()));this.getProvidersToReplaceAtAllSites=N(()=>this.api.get("/slise-ad-rules/providers/all-sites"));this.getProvidersCategories=N(()=>this.api.get("/slise-ad-rules/providers/categories"));this.getProvidersRulesForAllDomains=N(()=>this.api.get("/slise-ad-rules/providers/by-sites"));this.getSelectorsForAllProviders=N(()=>this.api.get("/slise-ad-rules/providers",this.getAdVersionRequestConfig()));this.getNegativeSelectorsForAllProviders=N(()=>this.api.get("/slise-ad-rules/providers/negative-selectors",this.getAdVersionRequestConfig()));this.getPermanentAdPlacesRulesForAllDomains=N(()=>this.api.get("/slise-ad-rules/ad-places/permanent",this.getAdVersionRequestConfig()));this.getPermanentNativeAdPlacesRulesForAllDomains=N(()=>this.api.get("/slise-ad-rules/ad-places/permanent-native",this.getAdVersionRequestConfig()));this.getAdsReplaceUrlsBlacklist=N(()=>this.api.get("/slise-ad-rules/replace-urls-blacklist",this.getAdVersionRequestConfig()));this.getElementsToHideOrRemoveRules=N(()=>this.api.get("/slise-ad-rules/elements-to-hide-or-remove",this.getAdVersionRequestConfig()));this.getBlacklistedHypelabCampaignsSlugs=N(()=>this.api.get("/temple-wallet-ads/hypelab-campaigns-blacklist"));this.getAllRules=()=>w(this,null,function*(){let[t,r,s,o,a,n,i,l,m,d,p]=yield Promise.all([this.getAdPlacesRulesForAllDomains(),this.getProvidersRulesForAllDomains(),this.getSelectorsForAllProviders(),this.getProvidersToReplaceAtAllSites(),this.getPermanentAdPlacesRulesForAllDomains(),this.getPermanentNativeAdPlacesRulesForAllDomains(),this.getAdsReplaceUrlsBlacklist(),this.getNegativeSelectorsForAllProviders(),this.getElementsToHideOrRemoveRules(),this.getProvidersCategories(),this.getBlacklistedHypelabCampaignsSlugs()]);return {adPlacesRulesForAllDomains:t,providersRulesForAllDomains:r,providersSelectors:s,providersToReplaceAtAllSites:o,permanentAdPlacesRulesForAllDomains:a,permanentNativeAdPlacesRulesForAllDomains:n,adsReplaceUrlsBlacklist:i,providersNegativeSelectors:l,elementsToHideOrRemoveRules:m,providersCategories:d,blacklistedHypelabCampaignsSlugs:p,timestamp:Date.now()}});this.api=Wt__default.default.create({baseURL:new URL("/api",t).href,adapter:"fetch"});}getAdVersionRequestConfig(){return {params:{extVersion:A.EXTENSION_VERSION,isMisesBrowser:A.IS_MISES_BROWSER}}}};
|
|
15
|
+
var at=Object.defineProperty,lt=Object.defineProperties;var dt=Object.getOwnPropertyDescriptors;var le=Object.getOwnPropertySymbols;var Oe=Object.prototype.hasOwnProperty,We=Object.prototype.propertyIsEnumerable;var Be=(e,t,r)=>t in e?at(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,v=(e,t)=>{for(var r in t||(t={}))Oe.call(t,r)&&Be(e,r,t[r]);if(le)for(var r of le(t))We.call(t,r)&&Be(e,r,t[r]);return e},C=(e,t)=>lt(e,dt(t));var I=(e,t)=>{var r={};for(var n in e)Oe.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&le)for(var n of le(e))t.indexOf(n)<0&&We.call(e,n)&&(r[n]=e[n]);return r};var w=(e,t,r)=>new Promise((n,o)=>{var d=a=>{try{i(r.next(a));}catch(m){o(m);}},s=a=>{try{i(r.throw(a));}catch(m){o(m);}},i=a=>a.done?n(a.value):Promise.resolve(a.value).then(d,s);i((r=r.apply(e,t)).next());});process&&process.env&&process.env.NODE_ENV==="development";navigator.userAgent.includes("Macintosh");var ke=e=>!!e,ct=300,B=(e=ct)=>new Promise(t=>setTimeout(t,e));var A=class{};A.IS_MISES_BROWSER=!1,A.ADS_TW_WINDOW_URL="",A.TKEY_INPAGE_AD_URL="",A.SMALL_TKEY_INPAGE_AD_URL="",A.SWAP_TKEY_URL="",A.EXTERNAL_ADS_ACTIVITY_MESSAGE_TYPE="",A.personaIframePath="",A.getAdsStackIframeURL=()=>"",A.buildNativeAdsMeta=()=>[],A.pickNextAdMetadata=()=>{},A.bannerAdsMeta=[];var mt=e=>{let{adsTwWindowUrl:t,tkeyInpageAdUrl:r,smallTkeyInpageAdUrl:n,swapTkeyUrl:o,externalAdsActivityMessageType:d,personaIframePath:s,getAdsStackIframeURL:i,buildNativeAdsMeta:a,bannerAdsMeta:m,extVersion:l,templePassphrase:p,isMisesBrowser:c,pickNextAdMetadata:h}=e;n&&(A.SMALL_TKEY_INPAGE_AD_URL=n),A.ADS_TW_WINDOW_URL=t,A.TKEY_INPAGE_AD_URL=r,A.SWAP_TKEY_URL=o,A.EXTERNAL_ADS_ACTIVITY_MESSAGE_TYPE=d,A.personaIframePath=s,A.getAdsStackIframeURL=i,A.buildNativeAdsMeta=a,A.pickNextAdMetadata=h,A.bannerAdsMeta=m,A.EXTENSION_VERSION=l,A.TEMPLE_PASSPHRASE=p,A.IS_MISES_BROWSER=c;};var Y="twa",K="twa-native",de="twa-hidden",G="twa-sibling-replacement";var ce="adRenderStart",me="resize",se="ready",ne="error",pe="accelerometer; gyroscope",_="crypto",ue="background";var q=/[\d.]+(px)?$/,X=`[${Y}]`,Ue=`[${Y}]:not([${K}])`,Fe=`[${K}]`,j=(e,t)=>{let r=parseInt(e,10);return isNaN(r)||!q.test(e)?t:r},V=(e,t,r)=>{e.style[t]=`${Math.max(j(e.style[t],0),r)}px`;},Q=e=>e.reduce((t,r)=>t+j(r,0),0),J=e=>!!e.closest(X),Ae=e=>{var t;return !!((t=e.previousElementSibling)!=null&&t.getAttribute(G))},ie=e=>{let t=getComputedStyle(e),{x:r,right:n,width:o,height:d}=e.getBoundingClientRect(),s={width:o,height:d},i=["width","height"];for(let a of i){let m=t[a],l=e.getAttribute(a),p=Math.max(...[m,l].map(c=>j(c!=null?c:"",-1)));p!==-1&&(s[a]=p),a==="width"&&r<0?s.width+=r:a==="width"&&n>window.innerWidth&&(s.width=window.innerWidth-r);}return s},H=(e,t,r=document)=>e?t?[...r.querySelectorAll(e)]:[r.querySelector(e)].filter(n=>!!n):[],O=(e,t)=>{let r=e;for(let n=0;n<t;n++){let o=r.parentElement;if(!o)return null;r=o;}return r},Ve=(e,t,r,n,o)=>{if(e<2&&t<2)return [];if(n)return A.buildNativeAdsMeta(e,t);let d=r==="permanent"||r==="slot-replacement"?A.bannerAdsMeta.filter(({source:a})=>a.shouldNotUseStrictContainerLimits):[],s=Math.max(e,...d.map(({dimensions:a})=>a.width)),i=Math.max(t,...d.map(({dimensions:a})=>a.height));return A.bannerAdsMeta.reduce((a,{dimensions:m,source:l},p)=>{let{shouldNotUseStrictContainerLimits:c=!1,categories:h=[_]}=l;if(h.every(M=>!o.includes(M)))return a;let{minContainerWidth:u,minContainerHeight:g,width:R,maxContainerWidth:E,maxContainerHeight:P}=m,S=!1;switch(r){case"permanent":S=c||s>=R&&(i>=g||i<2);break;case"slot-replacement":S=c||s>=u&&(i>=g||i<2);break;default:S=e>=u&&t>=g&&e<=E&&t<=P;}return S&&a.push(p),a},[])},pt=e=>{let{x:t,y:r,width:n,height:o}=e.getBoundingClientRect();return t!==0||r!==0||n!==0||o!==0},Ee=e=>{let{display:t}=window.getComputedStyle(e);switch(t){case"none":return !0;case"contents":return Array.from(e.children).every(r=>Ee(r));default:return !pt(e)}};var Ye=(e,t)=>{let{shouldHide:r,cssString:n,parentDepth:o,isMultiple:d}=e;H(n,d).forEach(s=>{let i=O(s,o);if(!i)return;let a=window.getComputedStyle(i);a.display!=="none"&&a.visibility!=="hidden"&&t.push({type:r?"hide-element":"remove-element",element:i});});};var Ge=(e,t,r,n)=>w(void 0,null,function*(){let{parentSelector:o,displayWidth:d}=e,{isMultiple:s,cssString:i,parentDepth:a}=o;if(d&&!semver.satisfies(semver.coerce(window.innerWidth),d))return [];let m=H(i,s).map(l=>O(l,a)).filter(l=>!!l);return yield Promise.all(m.map(l=>w(void 0,null,function*(){yield B(0),ut(l,e,t,r,n);}))),m}),fe=(e,t)=>{var r,n;return e?{width:(r=document.querySelector(e.width))!=null?r:t,height:(n=document.querySelector(e.height))!=null?n:t}:{width:t,height:t}},ut=(e,t,r,n,o)=>{var be;let xe=t,{shouldUseDivWrapper:d,divWrapperStyle:s,wrapperStyle:i,elementStyle:a,adSelector:m,insertionIndex:l,insertBeforeSelector:p,insertAfterSelector:c,insertionsCount:h=1,elementsToMeasureSelectors:u,stylesOverrides:g,shouldHideOriginal:R=!1,isNative:E,urlRegexes:P,parentSelector:S,supportsTheming:M,enableForNonMises:L,fontSampleSelector:y,displayWidth:T}=xe,x=I(xe,["shouldUseDivWrapper","divWrapperStyle","wrapperStyle","elementStyle","adSelector","insertionIndex","insertBeforeSelector","insertAfterSelector","insertionsCount","elementsToMeasureSelectors","stylesOverrides","shouldHideOriginal","isNative","urlRegexes","parentSelector","supportsTheming","enableForNonMises","fontSampleSelector","displayWidth"]),D=x.wrapperType?i:d?s:{display:"contents"},{isMultiple:b,cssString:z,parentDepth:U}=m,W=H(E?Fe:Ue,!0,e).reduce((f,k)=>f.some($=>$.contains(k))?f:[...f.filter($=>!k.contains($)),k],[]),F=W.filter(f=>Ee(f)&&!f.hasAttribute(de)),ee=W.length-F.length,ae=h-ee;if(H(z,b,e).map(f=>O(f,U)).filter(f=>ke(f)&&!J(f)).forEach(f=>{var $;let k=window.getComputedStyle(f).display==="none";if(ae<=0)(!R||!k)&&n.push({type:R?"hide-element":"remove-element",element:f});else {let rt=fe(u,(($=f.parentElement)==null?void 0:$.children.length)===1?f.parentElement:f),_e=M&&y?document.querySelector(y):null,{fontSize:Le,lineHeight:Ce}=_e?window.getComputedStyle(_e):{},st=Le?j(Le,0):0,nt=Ce?j(Ce,0):0,He=v({themeColor:M?o:void 0,fontSize:st||void 0,lineHeight:nt||void 0,wrapperStyle:D,elementStyle:a,stylesOverrides:g},x),it=v({type:"replace-element",element:f,adCategories:[_]},He),Ne={type:"hide-element",element:f},ot=v({type:"simple-insert-ad",parent:f.parentElement,insertionIndex:Array.from(f.parentElement.children).indexOf(f),isSiblingReplacement:!0,adCategories:[_]},He),re=[],De=Ae(f);R&&De&&!k?re=[Ne]:R&&!De?re=[Ne,ot]:R||(re=[it]),re.length>0&&r(rt,"permanent",E,[_],...re)&&ae--;}}),ae<=0)return;let te=-1,Me=e,he={width:e,height:e},Ie=p||c;if(Ie){let f=e.querySelector(Ie),k=f==null?void 0:f.parentElement;f&&k&&(Me=k,te=Array.from(e.children).indexOf(f)+(p?0:1),he=fe(u,f));}else {let f=l!=null?l:0;te=f<0?Math.max(e.children.length+f,0):Math.min(f,e.children.length),he=fe(u,(be=e.children[te])!=null?be:e);}if(te!==-1){let f=v({type:"simple-insert-ad",wrapperStyle:D,elementStyle:a,parent:Me,insertionIndex:te,isSiblingReplacement:!1,stylesOverrides:g,adCategories:[_]},x);r(he,"permanent",E,[_],...Array(ae).fill(f));}};var Et=["align-items","align-self","bottom","display","flex","flex-grow","flex-shrink","float","justify-content","justify-self","left","margin","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","padding","position","right","top","vertical-align","z-index"],ft=lodash.memoize(e=>e.reduce((t,{dimensions:r})=>{let n=t.filter(({width:o,height:d})=>o<r.width||d<r.height);return (n.length===0||n.some(({width:o,height:d})=>o>r.width||d>r.height))&&n.push(r),n},[])),ze=(e,t,r,n)=>w(void 0,null,function*(){let o=ft(A.bannerAdsMeta),d=e.map(({selector:i,parentDepth:a,categories:m})=>H(i,!0).reduce((l,p)=>{var y;let c=(y=O(p,a))!=null?y:p,h=l.findIndex(({element:T})=>T.contains(c)),u=c.parentElement&&window.getComputedStyle(c.parentElement),{width:g,height:R}=ie(c),E=n.some(T=>{var x;return T.type==="replace-all-children"||T.type==="simple-insert-ad"?T.parent.contains(c)||c.contains(T.parent):((x=T.element.parentElement)==null?void 0:x.contains(c))||c.contains(T.element)}),P=(u==null?void 0:u.display)==="none"||(u==null?void 0:u.visibility)==="hidden",S=h>=0&&l[h]instanceof HTMLAnchorElement,M=o.some(({width:T,height:x})=>g>=T&&R>=x);if(E||!M||P||S)return l;let L={element:c,categories:m};return h>=0?l.splice(h,1,L):l.some(({element:T})=>T.contains(c))||l.push(L),l},[])).flat(),s=t.map(({selector:i,parentDepth:a})=>H(i,!0).map(m=>O(m,a)).filter(m=>!!m)).flat();d=d.filter(({element:i})=>!s.includes(i)),yield Promise.all(d.map(m=>w(void 0,[m],function*({element:i,categories:a}){var u,g,R,E,P,S,M,L;yield B(0);let l=i.parentElement,{width:p,height:c}=window.getComputedStyle(i),h=q.test(p)&&q.test(c)?i:(g=(u=l==null?void 0:l.closest("div, article, aside, footer, header"))!=null?u:(l==null?void 0:l.tagName.toLowerCase())==="body"?void 0:l)!=null?g:i;if(!J(i)&&!i.querySelector(X)&&!n.some(y=>y.type==="simple-insert-ad"?!1:y.type==="replace-all-children"?y.parent.contains(i):y.element===i)){let y=(R=i.getAttribute("style"))!=null?R:"",T=Object.fromEntries(y.split(";").filter(Boolean).map(F=>F.split(":").map(ee=>ee.trim())));if((E=T.width)!=null&&E.match(/^0[a-z]/)||(P=T.height)!=null&&P.match(/^0[a-z]/))return;let x=window.getComputedStyle(i),D=v(v({},Object.fromEntries(Et.map(F=>[F,x.getPropertyValue(F)]))),T),b={type:"hide-element",element:i},z={type:"simple-insert-ad",wrapperStyle:D,parent:(S=i.parentElement)!=null?S:document.body,insertionIndex:Array.from((L=(M=i.parentElement)==null?void 0:M.children)!=null?L:[]).indexOf(i),isSiblingReplacement:!0,shouldUseBlurredBackground:!0,adCategories:a},U,W=i.closest(`[${G}] + *`);W&&W!==i?U=[{type:"remove-element",element:W.previousElementSibling},b,z]:W?U=window.getComputedStyle(i).display==="none"?[]:[b]:U=[b,z],r({width:h,height:h},"provider-replacement",!1,a,...U);}})));});var $e=(e,t,r)=>w(void 0,null,function*(){let{cssString:n,isMultiple:o}=e.selector,d=H(n,o);yield Promise.all(d.map(s=>w(void 0,null,function*(){yield B(0),Rt(s,e,t,r);})));}),Rt=(e,t,r,n)=>{let{selector:{shouldUseDivWrapper:o,parentDepth:d,divWrapperStyle:s},stylesOverrides:i,shouldHideOriginal:a,isNative:m=!1}=t,l=O(e,d);if(!l||r.some(h=>h.contains(l))||J(l)||l.querySelector(X))return;let p={shouldUseDivWrapper:o,wrapperStyle:s},c;if(o&&a){let h=l.parentElement,u=window.getComputedStyle(l).display==="none",g=v({type:"simple-insert-ad",parent:h,insertionIndex:Array.from(h.children).indexOf(l),stylesOverrides:i==null?void 0:i.map(P=>{var S=P,{parentDepth:R}=S,E=I(S,["parentDepth"]);return C(v({},E),{parentDepth:R-1})}),isSiblingReplacement:!0,adCategories:[_]},p);c=[],u||c.push({type:"hide-element",element:l}),Ae(l)||c.push(g);}else if(o)c=[v({type:"replace-element",element:l,stylesOverrides:i==null?void 0:i.map(R=>{var E=R,{parentDepth:u}=E,g=I(E,["parentDepth"]);return C(v({},g),{parentDepth:u-1})}),adCategories:[_]},p)];else if(a){let h={type:"simple-insert-ad",parent:l,insertionIndex:0,stylesOverrides:i,isSiblingReplacement:!0,adCategories:[_],wrapperStyle:{display:"contents"}};c=Array.from(l.children).filter(u=>window.getComputedStyle(u).display!=="none").map(u=>({type:"hide-element",element:u})),l.querySelector(X)||c.push(h);}else c=[{type:"replace-all-children",parent:l,stylesOverrides:i,adCategories:[_],wrapperStyle:{display:"contents"}}];c.length>0&&n({width:l,height:l},"slot-replacement",m,[_],...c);};var yt=d=>w(void 0,[d],function*({providersSelectors:e,providersNegativeSelectors:t,adPlacesRules:r,permanentAdPlacesRules:n,elementsToHideOrRemoveRules:o}){let s=[],i=(l,p,c,h,...u)=>{if(u.length>0&&u.every(b=>b.type==="hide-element"||b.type==="remove-element"))return s.push(...u),!0;let{width:g}=ie(l.width),{height:R}=ie(l.height),{paddingLeft:E,paddingRight:P}=window.getComputedStyle(l.width),{paddingTop:S,paddingBottom:M}=window.getComputedStyle(l.height),L=Q([E,P]),y=L===g?g:g-L,T=Q([S,M]),x=T===R?R:R-T,D=Ve(y,x,p,c,h);return D.length?(s.push(...u.map(b=>b.type==="hide-element"||b.type==="remove-element"?b:C(v({},b),{adsMetadata:D,originalWidth:y,originalHeight:x}))),!0):!1},a=[],{backgroundColor:m}=window.getComputedStyle(document.body);return yield Promise.all(o.map(l=>w(void 0,null,function*(){yield B(0),Ye(l,s);}))),yield Promise.all(n.map(l=>w(void 0,null,function*(){yield B(0),a=a.concat(yield Ge(l,i,s,m));}))),yield Promise.all(r.map(l=>w(void 0,null,function*(){yield B(0),yield $e(l,a,i);}))),yield ze(e,t,i,s),s});var Re=(s=>(s.Optimal="Optimal",s.SmartyAds="SmartyAds",s.HypeLab="HypeLab",s.Persona="Persona",s.Temple="Temple Wallet",s.Bitmedia="Bitmedia",s))(Re||{});var ye=new Set,Ke=new Set,qe=new Set,je=e=>w(void 0,null,function*(){let t=e.id;if(!ye.has(t))return ye.add(t),new Promise((r,n)=>{let o=!1,d=s=>{var i,a;if(s.source===e.contentWindow)try{let m=typeof s.data=="string"?JSON.parse(s.data):s.data;if(m.id!==t)return;let l=e.offsetWidth-e.clientWidth,p=e.offsetHeight-e.clientHeight;switch(m.type){case se:r(m.adMetadata.source.providerName);break;case ne:window.removeEventListener("message",d),e.style.display="none",n(new Error((i=m.reason)!=null?i:"Unknown error"));break;case ce:let{dimensions:c,source:h}=m.adMetadata;o=(a=h.native)!=null?a:!1;let{width:u,height:g}=c;u>0&&g>0&&(h.native?e.style.height=`${g}px`:(V(e,"width",u),V(e,"height",g)));break;case me:let{width:R,height:E}=m;o?e.style.height=`${E+p}px`:(V(e,"width",R+l),V(e,"height",E+p));}}catch(m){console.error("Observing error:",m);}};window.addEventListener("message",d);}).then(r=>{if(Ke.has(t))return;Ke.add(t),vt(e)?Qe(t,r):Tt(e,r);}).catch(r=>{throw console.error(r),r}).finally(()=>void ye.delete(t))}),Tt=(e,t)=>{let r=new IntersectionObserver(n=>{n.some(o=>o.isIntersecting)&&(Qe(e.id,t),r.disconnect());},{threshold:.5});r.observe(e);},Qe=(e,t)=>{if(qe.has(e))return;qe.add(e);let r=window.parent.location.href;St__default.default.runtime.sendMessage({type:A.EXTERNAL_ADS_ACTIVITY_MESSAGE_TYPE,url:r,provider:Re[t]}).catch(n=>void console.error(n));},vt=e=>{let t=e.getBoundingClientRect(),r=window.visualViewport;if(!r)return !1;let n=Math.min(Math.max(0,t.x),r.width),o=Math.min(Math.max(0,t.x+t.width),r.width),d=Math.min(Math.max(0,t.y),r.height),s=Math.min(Math.max(0,t.y+t.height),r.height),i=t.width*t.height;return (o-n)*(s-d)/i>=.5};var oe=(e,t)=>{for(let r in t)e.style.setProperty(r,t[r]);};var Pt=(e,t)=>{["width","height"].forEach(n=>{var d;let o=(d=e.style[n])!=null?d:"";q.test(o)&&parseInt(o,10)<t[n]&&e.style.removeProperty(n);});},Mt=(e,t,r,n)=>w(void 0,null,function*(){let{elementStyle:o={},stylesOverrides:d=[],adsMetadata:s,wrapperType:i,originalHeight:a,originalWidth:m,shouldUseBlurredBackground:l,adCategories:p,themeColor:c,fontSize:h,lineHeight:u}=e;d.sort((y,T)=>y.parentDepth-T.parentDepth);let g,R=nanoid.nanoid(),E=document.createElement("iframe");E.loading="lazy",E.src=A.getAdsStackIframeURL({id:R,adsMetadataIds:s,origin:window.location.href,adCategories:p,themeColor:c,fontSize:h,lineHeight:u}),E.id=R,E.allow=pe;let P=s[0],{dimensions:S}=typeof P=="number"?A.bannerAdsMeta[P]:P,M={width:l?Math.max(m,S.width):S.width,height:l?Math.max(a,S.height):S.height};E.style.width=i==="tbody"?"100%":`${M.width}px`,E.style.height=`${M.height}px`,E.style.border="none";for(let y in o)E.style.setProperty(y,o[y]);switch(E.setAttribute(Y,"true"),Pt(t,M),r.appendChild(E),e.type){case"replace-all-children":g=e.parent,e.parent.innerHTML="",e.parent.appendChild(t);break;case"replace-element":g=e.element.parentElement,e.element.replaceWith(t);break;default:let y=e.parent.children[e.insertionIndex];if(e.isSiblingReplacement){t.setAttribute(G,"true");let T=new MutationObserver(x=>{x.some(b=>Array.from(b.removedNodes).includes(y))&&(t.remove(),T.disconnect());});T.observe(e.parent,{childList:!0});}g=e.parent,e.parent.insertBefore(t,y);break}if(i!=="tbody"){let{borderLeftWidth:y,borderRightWidth:T,borderTopWidth:x,borderBottomWidth:D}=window.getComputedStyle(E),{borderLeftWidth:b,borderRightWidth:z,borderTopWidth:U,borderBottomWidth:W}=window.getComputedStyle(t),F=Q([y,T,b,z]),ee=Q([x,D,U,W]);E.style.width=`${M.width-F}px`,E.style.height=`${M.height-ee}px`;}je(E).catch(n);let L=0;d.forEach(({parentDepth:y,style:T})=>{for(;y>L&&g;)g=g.parentElement,L++;g&&oe(g,T);});}),Je=e=>w(void 0,null,function*(){let{wrapperStyle:t={},adsMetadata:r,wrapperType:n="div",colsAfter:o=0,colsBefore:d=0,colspan:s=1}=e,i=r.every(p=>typeof p=="object"),a,m;if(n==="div")a=document.createElement("div"),m=a;else {a=document.createElement("tbody");let p=document.createElement("tr");a.appendChild(p);for(let h=0;h<d;h++)p.appendChild(document.createElement("td"));let c=document.createElement("td");c.colSpan=s,p.appendChild(c),m=c;for(let h=0;h<o;h++)p.appendChild(document.createElement("td"));}a.setAttribute(Y,"true"),i&&a.setAttribute(K,"true"),oe(a,t);let l=()=>{let p=document.createElement("div");p.setAttribute(Y,"true"),p.setAttribute(de,"true"),i&&p.setAttribute(K,"true"),e.type==="simple-insert-ad"&&e.isSiblingReplacement&&p.setAttribute(G,"true"),p.style.display="none",a.replaceWith(p);};yield Mt(e,a,m,p=>{console.error("Failed to render ads",p),l();}).catch(p=>{throw console.error("Inserting an ad attempt error:",p),l(),p});});var It=e=>Promise.allSettled(e.map(t=>w(void 0,null,function*(){t.type==="remove-element"?t.element.remove():t.type==="hide-element"?t.element.style.setProperty("display","none","important"):yield Je(t);})));var Se=(e,t,r=!1)=>{let n=document.createElement("div");n.style.width=`${e}px`,n.style.height=`${t}px`;let o=document.createElement("div");if(o.style.width=`${e}px`,o.style.height=`${t}px`,n.appendChild(o),r){let i=document.createElement("a");return i.href=A.SWAP_TKEY_URL,i.target="_blank",i.rel="noopener noreferrer",i.style.width=`${e}px`,i.style.height=`${t}px`,i.style.overflow="hidden",i.style.textOverflow="ellipsis",i.appendChild(document.createTextNode("TODO: Native TKEY ad")),o.appendChild(i),{element:n}}let d=document.createElement("a");d.href=A.SWAP_TKEY_URL,d.target="_blank",d.rel="noopener noreferrer",d.style.width="100%",d.style.height="100%",o.appendChild(d);let s=document.createElement("img");return s.src=e<=320?A.SMALL_TKEY_INPAGE_AD_URL:A.TKEY_INPAGE_AD_URL,s.style.width="100%",s.style.height="100%",d.appendChild(s),{element:n,creativeSet:{image:{url:s.src}}}};var Te=e=>{let{source:t,id:r,dimensions:n}=e,{width:o,height:d}=n,s=document.createElement("iframe");return s.id=r,s.src=_t(e),s.style.width=t.native?"100%":`${o}px`,s.style.height=`${d}px`,s.style.border="none",s.allow=pe,{element:s}},bt={height:"h",slug:"p",id:"id",themeColor:"tc",fontSize:"fs",lineHeight:"lh"},_t=o=>{var d=o,{source:e,origin:t,dimensions:r}=d,n=I(d,["source","origin","dimensions"]);let{width:s,height:i}=r,{providerName:a,slug:m,native:l}=e,p=new URL(A.ADS_TW_WINDOW_URL),c=(h,u)=>{p.searchParams.set(h,String(u));};return c("ap",a.toLowerCase()),l?c("vh",i):c("w",s),Object.entries(v({height:i,slug:m},n)).forEach(([h,u])=>{(u||u===0)&&c(bt[h],u);}),c("o",Lt(t)),p.toString()},Lt=e=>cryptoJs.AES.encrypt(e,A.TEMPLE_PASSPHRASE).toString();var ve=(e,t,{width:r,height:n})=>{let o=document.createElement("iframe"),d="";switch(t.providerName){case"Persona":d=A.personaIframePath;break;default:throw new Error(`Ads from ${t.providerName} are unavailable via extension iframe`)}let s=new URL(d);return s.searchParams.set("id",e),s.searchParams.set("slug",t.slug),o.src=s.toString(),o.id=e,o.style.width=`${r}px`,o.style.height=`${n}px`,o.style.border="none",{element:o}};var we=class{constructor(a){this.wasReady=!1;this.rootElement=document.getElementById("root");this.validAdsCounter=0;var m=a,{id:t,initialAdsMetadata:r,origin:n,pageHasPlacesRules:o,adCategories:d,hypelabBlacklistedCampaignsSlugs:s}=m,i=I(m,["id","initialAdsMetadata","origin","pageHasPlacesRules","adCategories","hypelabBlacklistedCampaignsSlugs"]);this.id=t,this.origin=n,this.pageHasPlacesRules=o,this.adCategories=d,this.hypelabBlacklistedCampaignsSlugs=s,this.adThemeParams=i,this.adsMetadata=r.map(l=>typeof l=="number"?A.bannerAdsMeta[l]:l);}startRendering(){if(this.adsMetadata.length===0){this.broadcastNoMoreAds();return}this.currentAdMetadata=A.pickNextAdMetadata(this.adsMetadata,this.currentAdMetadata,this.validAdsCounter,this.pageHasPlacesRules,this.adCategories);let t=this.currentAdMetadata;if(!t){this.broadcastNoMoreAds();return}this.broadcastMessage({id:this.id,type:ce,adMetadata:this.currentAdMetadata});let{element:r,creativeSet:n}=this.placeNewAd(t);r instanceof HTMLIFrameElement?this.listenToIframeMessages(r,t):this.handleValidAd({ad:{creative_set:n}});}listenToIframeMessages(t,r){let n=A.pickNextAdMetadata(this.adsMetadata,r,this.validAdsCounter,this.pageHasPlacesRules,this.adCategories);this.responseTimeout=setTimeout(()=>{console.error(`Timeout exceeded for ${this.id}, ad source: ${JSON.stringify(r.source)}`),this.handleInvalidAd();},(n?1e4:2e4)*(A.IS_MISES_BROWSER?2:1)),this.messageListener=o=>{var d;if(o.source===t.contentWindow)try{let s=typeof o.data=="string"?JSON.parse(o.data):o.data;switch(s.type){case se:if(r.source.providerName==="HypeLab"&&this.hypelabBlacklistedCampaignsSlugs.includes((d=s.ad)==null?void 0:d.campaign_slug)&&n){this.handleInvalidAd();break}this.handleValidAd(s);break;case ne:this.wasReady||this.handleInvalidAd();break;case me:let{width:i,height:a}=s;i>0&&a>0&&(r.source.native?t.style.height=`${a}px`:(V(t,"width",i),V(t,"height",a)),this.broadcastMessage(C(v({},s),{id:this.id})));}}catch(s){console.error("Message handling error:",s);}},window.addEventListener("message",this.messageListener);}handleInvalidAd(){this.removeMessageListener(),this.clearResponseTimeout(),this.startRendering(),this.validAdsCounter=0;}removeMessageListener(){this.messageListener&&(window.removeEventListener("message",this.messageListener),this.messageListener=void 0);}placeNewAd(t){document.body.style.backgroundColor=t.source.native?"transparent":"#F2F2F2";let{source:r,dimensions:n}=t,o;switch(r.providerName){case"Temple":o=Se(n.width,n.height,r.native);break;case"HypeLab":case"SmartyAds":case"Bitmedia":o=Te(v({id:this.id,source:r,dimensions:n,origin:this.origin},this.adThemeParams));break;default:o=ve(this.id,r,n);}let{element:d}=o,s=document.getElementById("temple-label");return this.rootElement.replaceChildren(d),r.native?s.removeAttribute("active"):s.setAttribute("active",""),o}updateBackground(t,r={}){let n=document.getElementById(ue);if(t.native&&n&&this.rootElement.removeChild(n),!t.native){try{let{image:o,video:d}=r,s;if(o?(s=document.createElement("img"),s.src=o.url,s.alt=""):d&&(s=document.createElement("video"),s.src=d.url,s.autoplay=!0,s.preload="auto",s.playsInline=!0,s.muted=!0,s.loop=!0),!s&&n&&this.rootElement.removeChild(n),!s)return;s.id=ue,s.style.zIndex="-1",oe(s,{position:"absolute",top:"0px",left:"0px",right:"0px",bottom:"0px",width:"100%",height:"100%","object-fit":"cover",filter:"blur(12px)"}),n?this.rootElement.replaceChild(s,n):this.rootElement.prepend(s);}catch(o){console.error(o);}document.body.style.backgroundColor="transparent";}}broadcastMessage(t){window.parent.postMessage(JSON.stringify(t),"*");}broadcastNoMoreAds(){this.broadcastMessage({id:this.id,type:ne,reason:"No more ads to render"});}clearResponseTimeout(){this.responseTimeout!==void 0&&(clearTimeout(this.responseTimeout),this.responseTimeout=void 0);}handleValidAd(t){var n;let r=this.currentAdMetadata;r&&(this.wasReady||(this.wasReady=!0,this.broadcastMessage({id:this.id,type:se,adMetadata:r})),this.validAdsCounter++,this.clearResponseTimeout(),this.updateBackground(r.source,(n=t.ad)==null?void 0:n.creative_set));}},Ct=e=>{try{new we(e).startRendering();}catch(t){console.error("Error while rendering ads stack:",t);}};var Ht=(e,t)=>{let{adPlacesRulesForAllDomains:r,providersRulesForAllDomains:n,providersSelectors:o,providersNegativeSelectors:d={},providersToReplaceAtAllSites:s,permanentAdPlacesRulesForAllDomains:i,permanentNativeAdPlacesRulesForAllDomains:a={},adsReplaceUrlsBlacklist:m=[],elementsToHideOrRemoveRules:l={},providersCategories:p={},blacklistedHypelabCampaignsSlugs:c=[],timestamp:h}=t,u=typeof e=="string"?e:e.href,{hostname:g}=new URL(u);if(m.some(P=>new RegExp(P).test(u)))return {adPlacesRules:[],permanentAdPlacesRules:[],providersSelectors:[],providersNegativeSelectors:[],elementsToHideOrRemoveRules:[],blacklistedHypelabCampaignsSlugs:c,timestamp:h};let R=u.replace(/#.*$/,""),E=P=>{let S=P.source.includes("#")?u:R;return P.test(S)};return {adPlacesRules:Dt(g,E,r),permanentAdPlacesRules:Bt(g,E,i,a),providersSelectors:tt(g,E,n,o,s,p),providersNegativeSelectors:tt(g,E,n,d,s,p),elementsToHideOrRemoveRules:Nt(g,E,l),blacklistedHypelabCampaignsSlugs:c,timestamp:h}},Nt=(e,t,r)=>{var n;return ((n=r[e])!=null?n:[]).map(s=>{var i=s,{urlRegexes:o}=i,d=I(i,["urlRegexes"]);return C(v({},d),{urlRegexes:o.map(a=>new RegExp(a))})}).filter(({urlRegexes:o})=>o.some(t))},Dt=(e,t,r)=>{var d;return ((d=r[e])!=null?d:[]).map(a=>{var m=a,{urlRegexes:s}=m,i=I(m,["urlRegexes"]);return C(v({},i),{urlRegexes:s.map(l=>new RegExp(l))})}).reduce((s,l)=>{var p=l,{urlRegexes:i,selector:a}=p,m=I(p,["urlRegexes","selector"]);if(!i.some(t))return s;let g=a,{cssString:c}=g,h=I(g,["cssString"]),u=s.findIndex(P=>{var S=P,{selector:R}=S,E=I(S,["selector"]);let y=R,L=I(y,["cssString"]);return lodash.isEqual(h,L)&&lodash.isEqual(m,E)});return u===-1?s.push(v({selector:a},m)):s[u].selector.cssString+=", ".concat(c),s},[])},et=e=>d=>{var s=d,{urlRegexes:t,elementToMeasureSelector:r,elementsToMeasureSelectors:n}=s,o=I(s,["urlRegexes","elementToMeasureSelector","elementsToMeasureSelectors"]);return C(v({},o),{urlRegexes:t.map(i=>new RegExp(i)),isNative:e,elementsToMeasureSelectors:n!=null?n:r?{width:r,height:r}:void 0})},Bt=(e,t,r,n={})=>{var i,a;let o=(i=r[e])!=null?i:[],d=(a=n[e])!=null?a:[];return o.map(et(!1)).concat(d.map(et(!0))).filter(({urlRegexes:m})=>m.some(t))};function Ot(e){let t="";return e.forEach(r=>{t+=r+", ";}),t&&(t=t.slice(0,-2)),t}var tt=(e,t,r,n,o,d)=>{var p;let i=((p=r[e])!=null?p:[]).map(u=>{var g=u,{urlRegexes:c}=g,h=I(g,["urlRegexes"]);return C(v({},h),{urlRegexes:c.map(R=>new RegExp(R))})}).filter(({urlRegexes:c})=>c.some(t)),a=new Set,m={},l=c=>{var g,R;if(a.has(c))return;let h=((g=d[c])!=null?g:[_]).join("|");((R=n[c])!=null?R:[]).forEach(E=>{let{selector:P,parentDepth:S}=typeof E=="string"?{selector:E,parentDepth:0}:E;m[h]||(m[h]={});let M=m[h];M[S]||(M[S]=new Set),M[S].add(P);}),a.add(c);};return o.forEach(l),i.forEach(({providers:c})=>c.forEach(l)),Object.entries(m).map(([c,h])=>Object.entries(h).map(([u,g])=>({parentDepth:Number(u),selector:Ot(g),categories:c.split("|")}))).flat()};var N=e=>(...t)=>w(void 0,null,function*(){let{data:r}=yield e(...t);return r}),Pe=class{constructor(t){this.getAdPlacesRulesForAllDomains=N(()=>this.api.get("/slise-ad-rules/ad-places",this.getAdVersionRequestConfig()));this.getProvidersToReplaceAtAllSites=N(()=>this.api.get("/slise-ad-rules/providers/all-sites"));this.getProvidersCategories=N(()=>this.api.get("/slise-ad-rules/providers/categories"));this.getProvidersRulesForAllDomains=N(()=>this.api.get("/slise-ad-rules/providers/by-sites"));this.getSelectorsForAllProviders=N(()=>this.api.get("/slise-ad-rules/providers",this.getAdVersionRequestConfig()));this.getNegativeSelectorsForAllProviders=N(()=>this.api.get("/slise-ad-rules/providers/negative-selectors",this.getAdVersionRequestConfig()));this.getPermanentAdPlacesRulesForAllDomains=N(()=>this.api.get("/slise-ad-rules/ad-places/permanent",this.getAdVersionRequestConfig()));this.getPermanentNativeAdPlacesRulesForAllDomains=N(()=>this.api.get("/slise-ad-rules/ad-places/permanent-native",this.getAdVersionRequestConfig()));this.getAdsReplaceUrlsBlacklist=N(()=>this.api.get("/slise-ad-rules/replace-urls-blacklist",this.getAdVersionRequestConfig()));this.getElementsToHideOrRemoveRules=N(()=>this.api.get("/slise-ad-rules/elements-to-hide-or-remove",this.getAdVersionRequestConfig()));this.getBlacklistedHypelabCampaignsSlugs=N(()=>this.api.get("/temple-wallet-ads/hypelab-campaigns-blacklist"));this.getAllRules=()=>w(this,null,function*(){let[t,r,n,o,d,s,i,a,m,l,p]=yield Promise.all([this.getAdPlacesRulesForAllDomains(),this.getProvidersRulesForAllDomains(),this.getSelectorsForAllProviders(),this.getProvidersToReplaceAtAllSites(),this.getPermanentAdPlacesRulesForAllDomains(),this.getPermanentNativeAdPlacesRulesForAllDomains(),this.getAdsReplaceUrlsBlacklist(),this.getNegativeSelectorsForAllProviders(),this.getElementsToHideOrRemoveRules(),this.getProvidersCategories(),this.getBlacklistedHypelabCampaignsSlugs()]);return {adPlacesRulesForAllDomains:t,providersRulesForAllDomains:r,providersSelectors:n,providersToReplaceAtAllSites:o,permanentAdPlacesRulesForAllDomains:d,permanentNativeAdPlacesRulesForAllDomains:s,adsReplaceUrlsBlacklist:i,providersNegativeSelectors:a,elementsToHideOrRemoveRules:m,providersCategories:l,blacklistedHypelabCampaignsSlugs:p,timestamp:Date.now()}});this.api=Wt__default.default.create({baseURL:new URL("/api",t).href,adapter:"fetch"});}getAdVersionRequestConfig(){return {params:{extVersion:A.EXTENSION_VERSION,isMisesBrowser:A.IS_MISES_BROWSER}}}};
|
|
16
16
|
|
|
17
17
|
exports.TempleWalletApi = Pe;
|
|
18
18
|
exports.configureAds = mt;
|
package/package.json
CHANGED
package/src/render-ads-stack.ts
CHANGED
package/src/types/ads-meta.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export interface AdSource {
|
|
2
2
|
shouldNotUseStrictContainerLimits?: boolean;
|
|
3
|
-
providerName: 'Temple' | 'Persona' | 'HypeLab' | 'SmartyAds';
|
|
3
|
+
providerName: 'Temple' | 'Persona' | 'HypeLab' | 'SmartyAds' | 'Bitmedia';
|
|
4
4
|
native?: boolean;
|
|
5
5
|
slug: string;
|
|
6
6
|
categories?: string[];
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
export const stripDimentionsLimits = (wrapperElement: HTMLDivElement, width: number, height: number) => {
|
|
2
|
-
const predefinedStyles = wrapperElement.style;
|
|
3
|
-
// If needed in future, try `getComputedStyle(wrapperElement)` - though would have to not remove but override
|
|
4
|
-
|
|
5
|
-
stripOneDimensionLimit(predefinedStyles, width, ['width']);
|
|
6
|
-
stripOneDimensionLimit(predefinedStyles, height, ['height', 'maxHeight']);
|
|
7
|
-
};
|
|
8
|
-
|
|
9
|
-
const stripOneDimensionLimit = (
|
|
10
|
-
predefinedStyles: CSSStyleDeclaration,
|
|
11
|
-
value: number,
|
|
12
|
-
dimensionNames: ('width' | 'height' | 'maxWidth' | 'maxHeight')[]
|
|
13
|
-
) => {
|
|
14
|
-
for (const dimensionName of dimensionNames) {
|
|
15
|
-
const predefinedStyleValue = predefinedStyles[dimensionName] ?? '';
|
|
16
|
-
|
|
17
|
-
if (/^\d+(px)?$/.test(predefinedStyleValue)) {
|
|
18
|
-
const predefinedSize = parseInt(predefinedStyleValue, 10);
|
|
19
|
-
if (predefinedSize < value) {
|
|
20
|
-
predefinedStyles.removeProperty(dimensionName);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
};
|