@temple-wallet/extension-ads 8.1.0-dev.2 → 8.1.0-dev.3

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.js CHANGED
@@ -5,16 +5,14 @@ var nanoid = require('nanoid');
5
5
  var it = require('webextension-polyfill');
6
6
  var cryptoJs = require('crypto-js');
7
7
  var lodash = require('lodash');
8
- var yt = require('@vespaiach/axios-fetch-adapter');
9
- var St = require('axios');
8
+ var yt = require('axios');
10
9
 
11
10
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
12
11
 
13
12
  var it__default = /*#__PURE__*/_interopDefault(it);
14
13
  var yt__default = /*#__PURE__*/_interopDefault(yt);
15
- var St__default = /*#__PURE__*/_interopDefault(St);
16
14
 
17
- var Xe=Object.defineProperty,Qe=Object.defineProperties;var je=Object.getOwnPropertyDescriptors;var ie=Object.getOwnPropertySymbols;var Ie=Object.prototype.hasOwnProperty,xe=Object.prototype.propertyIsEnumerable;var Pe=(e,t,r)=>t in e?Xe(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,P=(e,t)=>{for(var r in t||(t={}))Ie.call(t,r)&&Pe(e,r,t[r]);if(ie)for(var r of ie(t))xe.call(t,r)&&Pe(e,r,t[r]);return e},b=(e,t)=>Qe(e,je(t));var M=(e,t)=>{var r={};for(var s in e)Ie.call(e,s)&&t.indexOf(s)<0&&(r[s]=e[s]);if(e!=null&&ie)for(var s of ie(e))t.indexOf(s)<0&&xe.call(e,s)&&(r[s]=e[s]);return r};var w=(e,t,r)=>new Promise((s,a)=>{var d=i=>{try{o(r.next(i));}catch(l){a(l);}},n=i=>{try{o(r.throw(i));}catch(l){a(l);}},o=i=>i.done?s(i.value):Promise.resolve(i.value).then(d,n);o((r=r.apply(e,t)).next());});var Me=e=>!!e;var H=(e=300)=>new Promise(t=>setTimeout(t,e));var R=class{};R.IS_MISES_BROWSER=!1,R.ADS_TW_WINDOW_URL="",R.TKEY_INPAGE_AD_URL="",R.SMALL_TKEY_INPAGE_AD_URL="",R.SWAP_TKEY_URL="",R.EXTERNAL_ADS_ACTIVITY_MESSAGE_TYPE="",R.personaIframePath="",R.getAdsStackIframeURL=()=>"",R.buildNativeAdsMeta=()=>[],R.bannerAdsMeta=[];var Je=e=>{let{adsTwWindowUrl:t,tkeyInpageAdUrl:r,smallTkeyInpageAdUrl:s,swapTkeyUrl:a,externalAdsActivityMessageType:d,personaIframePath:n,getAdsStackIframeURL:o,buildNativeAdsMeta:i,bannerAdsMeta:l,extVersion:p,templePassphrase:A,isMisesBrowser:c}=e;s&&(R.SMALL_TKEY_INPAGE_AD_URL=s),R.ADS_TW_WINDOW_URL=t,R.TKEY_INPAGE_AD_URL=r,R.SWAP_TKEY_URL=a,R.EXTERNAL_ADS_ACTIVITY_MESSAGE_TYPE=d,R.personaIframePath=n,R.getAdsStackIframeURL=o,R.buildNativeAdsMeta=i,R.bannerAdsMeta=l,R.EXTENSION_VERSION=p,R.TEMPLE_PASSPHRASE=A,R.IS_MISES_BROWSER=c;};var V="twa",G="twa-native",Y="twa-sibling-replacement";var oe="adRenderStart",le="resize",$="ready",te="error",ae="accelerometer; gyroscope",B="crypto",ce="background";var K=/[\d.]+(px)?$/,z=`[${V}]`,_e=`[${V}]:not([${G}])`,be=`[${G}]`,pe=(e,t)=>{let r=parseInt(e,10);return isNaN(r)||!K.test(e)?t:r},k=(e,t,r)=>{e.style[t]=`${Math.max(pe(e.style[t],0),r)}px`;},q=e=>e.reduce((t,r)=>t+pe(r,0),0),X=e=>!!e.closest(z),de=e=>{var t;return !!((t=e.previousElementSibling)!=null&&t.getAttribute(Y))},re=e=>{let t=getComputedStyle(e),{x:r,right:s,width:a,height:d}=e.getBoundingClientRect(),n={width:a,height:d},o=["width","height"];for(let i of o){let l=t[i],p=e.getAttribute(i),A=Math.max(...[l,p].map(c=>pe(c!=null?c:"",-1)));A!==-1&&(n[i]=A),i==="width"&&r<0?n.width+=r:i==="width"&&s>window.innerWidth&&(n.width=window.innerWidth-r);}return n},L=(e,t,r=document)=>e?t?[...r.querySelectorAll(e)]:[r.querySelector(e)].filter(s=>!!s):[],N=(e,t)=>{let r=e;for(let s=0;s<t;s++){let a=r.parentElement;if(!a)return null;r=a;}return r},Le=(e,t,r,s,a)=>{if(e<2&&t<2)return [];if(s)return R.buildNativeAdsMeta(e,t);let d=r==="permanent"||r==="slot-replacement"?R.bannerAdsMeta.filter(({source:i})=>i.shouldNotUseStrictContainerLimits):[],n=Math.max(e,...d.map(({dimensions:i})=>i.width)),o=Math.max(t,...d.map(({dimensions:i})=>i.height));return R.bannerAdsMeta.reduce((i,{dimensions:l,source:p},A)=>{let{shouldNotUseStrictContainerLimits:c=!1,categories:m=[B]}=p;if(m.every(v=>!a.includes(v)))return i;let{minContainerWidth:E,minContainerHeight:h,width:f,maxContainerWidth:u,maxContainerHeight:T}=l,S=!1;switch(r){case"permanent":S=c||n>=f&&(o>=h||o<2);break;case"slot-replacement":S=c||n>=E&&(o>=h||o<2);break;default:S=e>=E&&t>=h&&e<=u&&t<=T;}return S&&i.push(A),i},[])};var De=(e,t)=>{let{shouldHide:r,cssString:s,parentDepth:a,isMultiple:d}=e;L(s,d).forEach(n=>{let o=N(n,a);if(!o)return;let i=window.getComputedStyle(o);i.display!=="none"&&i.visibility!=="hidden"&&t.push({type:r?"hide-element":"remove-element",element:o});});};var He=(e,t,r)=>w(void 0,null,function*(){let{parentSelector:s,displayWidth:a}=e,{isMultiple:d,cssString:n,parentDepth:o}=s;if(a&&!semver.satisfies(semver.coerce(window.innerWidth),a))return [];let i=L(n,d).map(l=>N(l,o)).filter(l=>!!l);return yield Promise.all(i.map(l=>w(void 0,null,function*(){yield H(0),tt(l,e,t,r);}))),i}),Ae=(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}},tt=(e,t,r,s)=>{var Te;let Se=t,{shouldUseDivWrapper:a,divWrapperStyle:d,wrapperStyle:n,elementStyle:o,adSelector:i,insertionIndex:l,insertBeforeSelector:p,insertAfterSelector:A,insertionsCount:c=1,elementsToMeasureSelectors:m,stylesOverrides:E,shouldHideOriginal:h=!1,isNative:f,urlRegexes:u,parentSelector:T}=Se,S=M(Se,["shouldUseDivWrapper","divWrapperStyle","wrapperStyle","elementStyle","adSelector","insertionIndex","insertBeforeSelector","insertAfterSelector","insertionsCount","elementsToMeasureSelectors","stylesOverrides","shouldHideOriginal","isNative","urlRegexes","parentSelector"]),v=S.wrapperType?n:a?d:{display:"contents"},{isMultiple:g,cssString:I,parentDepth:_}=i,x=L(f?be:_e,!0,e).reduce((y,W)=>y.some(Z=>Z.contains(W)||W.contains(Z))?y:[...y,W],[]).length,C=c-x;if(L(I,g,e).map(y=>N(y,_)).filter(y=>Me(y)&&!X(y)).forEach(y=>{var Z;let W=window.getComputedStyle(y).display==="none";if(C<=0)(!h||!W)&&s.push({type:h?"hide-element":"remove-element",element:y});else {let Ke=Ae(m,((Z=y.parentElement)==null?void 0:Z.children.length)===1?y.parentElement:y),ze=P({type:"replace-element",element:y,wrapperStyle:v,elementStyle:o,stylesOverrides:E},S),we={type:"hide-element",element:y},qe=P({type:"simple-insert-ad",wrapperStyle:v,elementStyle:o,parent:y.parentElement,insertionIndex:Array.from(y.parentElement.children).indexOf(y),isSiblingReplacement:!0,stylesOverrides:E},S),ee=[],ve=de(y);h&&ve&&!W?ee=[we]:h&&!ve?ee=[we,qe]:h||(ee=[ze]),ee.length>0&&r(Ke,"permanent",f,[B],...ee)&&C--;}}),C<=0)return;let D=-1,F=e,J={width:e,height:e},ye=p||A;if(ye){let y=e.querySelector(ye),W=y==null?void 0:y.parentElement;y&&W&&(F=W,D=Array.from(e.children).indexOf(y)+(p?0:1),J=Ae(m,y));}else {let y=l!=null?l:0;D=y<0?Math.max(e.children.length+y,0):Math.min(y,e.children.length),J=Ae(m,(Te=e.children[D])!=null?Te:e);}if(D!==-1){let y=P({type:"simple-insert-ad",wrapperStyle:v,elementStyle:o,parent:F,insertionIndex:D,isSiblingReplacement:!1,stylesOverrides:E},S);r(J,"permanent",f,[B],...Array(C).fill(y));}};var rt=["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"],Ne=(e,t,r,s)=>w(void 0,null,function*(){let a=e.map(({selector:n,parentDepth:o,categories:i})=>L(n,!0).reduce((l,p)=>{var v;let A=(v=N(p,o))!=null?v:p,c=l.findIndex(({element:g})=>g.contains(A)),m=A.parentElement&&window.getComputedStyle(A.parentElement),{width:E,height:h}=re(A),f=s.some(g=>{var I;return g.type==="replace-all-children"||g.type==="simple-insert-ad"?g.parent.contains(A)||A.contains(g.parent):((I=g.element.parentElement)==null?void 0:I.contains(A))||A.contains(g.element)}),u=(m==null?void 0:m.display)==="none"||(m==null?void 0:m.visibility)==="hidden",T=c>=0&&l[c]instanceof HTMLAnchorElement;if(f||E===0||h===0||u||T)return l;let S={element:A,categories:i};return c>=0?l.splice(c,1,S):l.some(({element:g})=>g.contains(A))||l.push(S),l},[])).flat(),d=t.map(({selector:n,parentDepth:o})=>L(n,!0).map(i=>N(i,o)).filter(i=>!!i)).flat();a=a.filter(({element:n})=>!d.includes(n)),yield Promise.all(a.map(i=>w(void 0,[i],function*({element:n,categories:o}){var m,E,h,f,u,T,S,v;yield H(0);let l=n.parentElement,{width:p,height:A}=window.getComputedStyle(n),c=K.test(p)&&K.test(A)?n:(E=(m=l==null?void 0:l.closest("div, article, aside, footer, header"))!=null?m:(l==null?void 0:l.tagName.toLowerCase())==="body"?void 0:l)!=null?E:n;if(!X(n)&&!n.querySelector(z)&&!s.some(g=>g.type==="simple-insert-ad"?!1:g.type==="replace-all-children"?g.parent.contains(n):g.element===n)){let g=(h=n.getAttribute("style"))!=null?h:"",I=Object.fromEntries(g.split(";").filter(Boolean).map(F=>F.split(":").map(J=>J.trim())));if((f=I.width)!=null&&f.match(/^0[a-z]/)||(u=I.height)!=null&&u.match(/^0[a-z]/))return;let _=window.getComputedStyle(n),U=P(P({},Object.fromEntries(rt.map(F=>[F,_.getPropertyValue(F)]))),I),x={type:"hide-element",element:n},C={type:"simple-insert-ad",wrapperStyle:U,parent:(T=n.parentElement)!=null?T:document.body,insertionIndex:Array.from((v=(S=n.parentElement)==null?void 0:S.children)!=null?v:[]).indexOf(n),isSiblingReplacement:!0},j,D=n.closest(`[${Y}] + *`);D&&D!==n?j=[{type:"remove-element",element:D.previousElementSibling},x,C]:D?j=window.getComputedStyle(n).display==="none"?[]:[x]:j=[x,C],r({width:c,height:c},"provider-replacement",!1,o,...j);}})));});var Oe=(e,t,r)=>w(void 0,null,function*(){let{cssString:s,isMultiple:a}=e.selector,d=L(s,a);yield Promise.all(d.map(n=>w(void 0,null,function*(){yield H(0),nt(n,e,t,r);})));}),nt=(e,t,r,s)=>{let{selector:{shouldUseDivWrapper:a,parentDepth:d,divWrapperStyle:n},stylesOverrides:o,shouldHideOriginal:i,isNative:l=!1}=t,p=N(e,d);if(!p||r.some(m=>m.contains(p))||X(p)||p.querySelector(z))return;let A={shouldUseDivWrapper:a,wrapperStyle:n},c;if(a&&i){let m=p.parentElement,E=window.getComputedStyle(p).display==="none",h=P({type:"simple-insert-ad",parent:m,insertionIndex:Array.from(m.children).indexOf(p),stylesOverrides:o==null?void 0:o.map(T=>{var S=T,{parentDepth:f}=S,u=M(S,["parentDepth"]);return b(P({},u),{parentDepth:f-1})}),isSiblingReplacement:!0},A);c=[],E||c.push({type:"hide-element",element:p}),de(p)||c.push(h);}else if(a)c=[P({type:"replace-element",element:p,stylesOverrides:o==null?void 0:o.map(f=>{var u=f,{parentDepth:E}=u,h=M(u,["parentDepth"]);return b(P({},h),{parentDepth:E-1})})},A)];else if(i){let m={type:"simple-insert-ad",parent:p,insertionIndex:0,stylesOverrides:o,isSiblingReplacement:!0,wrapperStyle:{display:"contents"}};c=Array.from(p.children).filter(E=>window.getComputedStyle(E).display!=="none").map(E=>({type:"hide-element",element:E})),p.querySelector(z)||c.push(m);}else c=[{type:"replace-all-children",parent:p,stylesOverrides:o,wrapperStyle:{display:"contents"}}];c.length>0&&s({width:p,height:p},"slot-replacement",l,[B],...c);};var st=d=>w(void 0,[d],function*({providersSelectors:e,providersNegativeSelectors:t,adPlacesRules:r,permanentAdPlacesRules:s,elementsToHideOrRemoveRules:a}){let n=[],o=(l,p,A,c,...m)=>{if(m.length>0&&m.every(x=>x.type==="hide-element"||x.type==="remove-element"))return n.push(...m),!0;let{width:E}=re(l.width),{height:h}=re(l.height),{paddingLeft:f,paddingRight:u}=window.getComputedStyle(l.width),{paddingTop:T,paddingBottom:S}=window.getComputedStyle(l.height),v=q([f,u]),g=v===E?E:E-v,I=q([T,S]),_=I===h?h:h-I,U=Le(g,_,p,A,c);return U.length?(n.push(...m.map(x=>x.type==="hide-element"||x.type==="remove-element"?x:b(P({},x),{adsMetadata:U,originalWidth:g,originalHeight:_}))),!0):!1},i=[];return yield Promise.all(a.map(l=>w(void 0,null,function*(){yield H(0),De(l,n);}))),yield Promise.all(s.map(l=>w(void 0,null,function*(){yield H(0),i=i.concat(yield He(l,o,n));}))),yield Promise.all(r.map(l=>w(void 0,null,function*(){yield H(0),yield Oe(l,i,o);}))),yield Ne(e,t,o,n),n});var ue=(d=>(d.Optimal="Optimal",d.SmartyAds="SmartyAds",d.HypeLab="HypeLab",d.Persona="Persona",d.Temple="Temple Wallet",d))(ue||{});var he=new Set,Ce=new Set,We=new Set,ke=e=>w(void 0,null,function*(){let t=e.id;if(!he.has(t))return he.add(t),new Promise((r,s)=>{let a=!1,d=n=>{var o,i;if(n.source===e.contentWindow)try{let l=typeof n.data=="string"?JSON.parse(n.data):n.data;if(l.id!==t)return;let p=e.offsetWidth-e.clientWidth,A=e.offsetHeight-e.clientHeight;switch(l.type){case $:r(l.adMetadata.source.providerName);break;case te:window.removeEventListener("message",d),e.style.display="none",s(new Error((o=l.reason)!=null?o:"Unknown error"));break;case oe:let{dimensions:c,source:m}=l.adMetadata;a=(i=m.native)!=null?i:!1;let{width:E,height:h}=c;E>0&&h>0&&(m.native?e.style.height=`${h}px`:(k(e,"width",E),k(e,"height",h)));break;case le:let{width:f,height:u}=l;a?e.style.height=`${u+A}px`:(k(e,"width",f+p),k(e,"height",u+A));}}catch(l){console.error("Observing error:",l);}};window.addEventListener("message",d);}).then(r=>{if(Ce.has(t))return;Ce.add(t),lt(e)?Ue(t,r):ot(e,r);}).catch(r=>{throw console.error(r),r}).finally(()=>void he.delete(t))}),ot=(e,t)=>{let r=new IntersectionObserver(s=>{s.some(a=>a.isIntersecting)&&(Ue(e.id,t),r.disconnect());},{threshold:.5});r.observe(e);},Ue=(e,t)=>{if(We.has(e))return;We.add(e);let r=window.parent.location.href;it__default.default.runtime.sendMessage({type:R.EXTERNAL_ADS_ACTIVITY_MESSAGE_TYPE,url:r,provider:ue[t]}).catch(s=>void console.error(s));},lt=e=>{let t=e.getBoundingClientRect(),r=window.visualViewport;if(!r)return !1;let s=Math.min(Math.max(0,t.x),r.width),a=Math.min(Math.max(0,t.x+t.width),r.width),d=Math.min(Math.max(0,t.y),r.height),n=Math.min(Math.max(0,t.y+t.height),r.height),o=t.width*t.height;return (a-s)*(n-d)/o>=.5};var ne=(e,t)=>{for(let r in t)e.style.setProperty(r,t[r]);};var dt=(e,t)=>{["width","height"].forEach(s=>{var d;let a=(d=e.style[s])!=null?d:"";K.test(a)&&parseInt(a,10)<t[s]&&e.style.removeProperty(s);});},ct=(e,t,r,s)=>w(void 0,null,function*(){let{elementStyle:a={},stylesOverrides:d=[],adsMetadata:n,wrapperType:o,originalHeight:i,originalWidth:l}=e;d.sort((u,T)=>u.parentDepth-T.parentDepth);let p,A=nanoid.nanoid(),c=document.createElement("iframe");c.loading="lazy",c.src=R.getAdsStackIframeURL(A,n,window.location.href),c.id=A,c.allow=ae;let m=n[0],{dimensions:E}=typeof m=="number"?R.bannerAdsMeta[m]:m,h={width:Math.max(l,E.width),height:Math.max(i,E.height)};c.style.width=o==="tbody"?"100%":`${h.width}px`,c.style.height=`${h.height}px`,c.style.border="none";for(let u in a)c.style.setProperty(u,a[u]);switch(c.setAttribute(V,"true"),dt(t,h),r.appendChild(c),e.type){case"replace-all-children":p=e.parent,e.parent.innerHTML="",e.parent.appendChild(t);break;case"replace-element":p=e.element.parentElement,e.element.replaceWith(t);break;default:e.isSiblingReplacement&&t.setAttribute(Y,"true"),p=e.parent,e.parent.insertBefore(t,e.parent.children[e.insertionIndex]);break}if(o!=="tbody"){let{borderLeftWidth:u,borderRightWidth:T,borderTopWidth:S,borderBottomWidth:v}=window.getComputedStyle(c),{borderLeftWidth:g,borderRightWidth:I,borderTopWidth:_,borderBottomWidth:U}=window.getComputedStyle(t),x=q([u,T,g,I]),C=q([S,v,_,U]);c.style.width=`${h.width-x}px`,c.style.height=`${h.height-C}px`;}ke(c).catch(s);let f=0;d.forEach(({parentDepth:u,style:T})=>{for(;u>f&&p;)p=p.parentElement,f++;p&&ne(p,T);});}),Fe=e=>w(void 0,null,function*(){let{wrapperStyle:t={},adsMetadata:r,wrapperType:s="div",colsAfter:a=0,colsBefore:d=0,colspan:n=1}=e,o=r.every(A=>typeof A=="object"),i,l;if(s==="div")i=document.createElement("div"),l=i;else {i=document.createElement("tbody");let A=document.createElement("tr");i.appendChild(A);for(let m=0;m<d;m++)A.appendChild(document.createElement("td"));let c=document.createElement("td");c.colSpan=n,A.appendChild(c),l=c;for(let m=0;m<a;m++)A.appendChild(document.createElement("td"));}i.setAttribute(V,"true"),o&&i.setAttribute(G,"true"),ne(i,t);let p=()=>{let A=document.createElement("div");A.setAttribute(V,"true"),o&&A.setAttribute(G,"true"),e.type==="simple-insert-ad"&&e.isSiblingReplacement&&A.setAttribute(Y,"true"),A.style.display="none",i.replaceWith(A);};yield ct(e,i,l,A=>{console.error("Failed to render ads",A),p();}).catch(A=>{throw console.error("Inserting an ad attempt error:",A),p(),A});});var mt=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 Fe(t);})));var Ee=(e,t,r=!1)=>{let s=document.createElement("div");s.style.width=`${e}px`,s.style.height=`${t}px`;let a=document.createElement("div");if(a.style.width=`${e}px`,a.style.height=`${t}px`,s.appendChild(a),r){let o=document.createElement("a");return o.href=R.SWAP_TKEY_URL,o.target="_blank",o.rel="noopener noreferrer",o.style.width=`${e}px`,o.style.height=`${t}px`,o.style.overflow="hidden",o.style.textOverflow="ellipsis",o.appendChild(document.createTextNode("TODO: Native TKEY ad")),a.appendChild(o),{element:s}}let d=document.createElement("a");d.href=R.SWAP_TKEY_URL,d.target="_blank",d.rel="noopener noreferrer",d.style.width="100%",d.style.height="100%",a.appendChild(d);let n=document.createElement("img");return n.src=e<=320?R.SMALL_TKEY_INPAGE_AD_URL:R.TKEY_INPAGE_AD_URL,n.style.width="100%",n.style.height="100%",d.appendChild(n),{element:s,creativeSet:{image:{url:n.src}}}};var Re=(e,t,{width:r,height:s},a)=>{let d=document.createElement("iframe");return d.id=e,d.src=At(t,a,r,s,d.id),d.style.width=t.native?"100%":`${r}px`,d.style.height=`${s}px`,d.style.border="none",d.allow=ae,{element:d}},At=(e,t,r,s,a)=>{let{providerName:d,slug:n,native:o}=e,i=new URL(R.ADS_TW_WINDOW_URL);return i.searchParams.set("ap",d.toLowerCase()),o?i.searchParams.set("vh",String(s)):i.searchParams.set("w",String(r)),i.searchParams.set("h",String(s)),i.searchParams.set("p",n),i.searchParams.set("o",ut(t)),a&&i.searchParams.set("id",a),i.toString()},ut=e=>cryptoJs.AES.encrypt(e,R.TEMPLE_PASSPHRASE).toString();var fe=(e,t,{width:r,height:s})=>{let a=document.createElement("iframe"),d="";switch(t.providerName){case"Persona":d=R.personaIframePath;break;default:throw new Error(`Ads from ${t.providerName} are unavailable via extension iframe`)}let n=new URL(d);return n.searchParams.set("id",e),n.searchParams.set("slug",t.slug),a.src=n.toString(),a.id=e,a.style.width=`${r}px`,a.style.height=`${s}px`,a.style.border="none",{element:a}};var se=e=>window.parent.postMessage(JSON.stringify(e),"*"),Ve=(e,t,r)=>w(void 0,null,function*(){if(t.length===0){se({id:e,type:te,reason:"No more ads to render"});return}let[s,...a]=t,d=typeof s=="number"?R.bannerAdsMeta[s]:s;se({id:e,type:oe,adMetadata:d});let{source:n,dimensions:o}=d,i;switch(n.providerName){case"Temple":i=Ee(o.width,o.height,n.native);break;case"HypeLab":case"SmartyAds":i=Re(e,n,o,r);break;default:i=fe(e,n,o);}let{element:l}=i,p=document.getElementById("root"),A=document.getElementById("temple-label");p.replaceChildren(l),n.native?A.removeAttribute("active"):A.setAttribute("active","");let c=(m={})=>{let E=document.getElementById(ce);if(n.native&&E&&p.removeChild(E),!n.native)try{let{image:h,video:f}=m,u;if(h?(u=document.createElement("img"),u.src=h.url,u.alt=""):f&&(u=document.createElement("video"),u.src=f.url,u.autoplay=!0,u.preload="auto",u.playsInline=!0,u.muted=!0,u.loop=!0),!u&&E&&p.removeChild(E),!u)return;u.id=ce,u.style.zIndex="-1",ne(u,{position:"absolute",top:"0px",left:"0px",right:"0px",bottom:"0px",width:"100%",height:"100%","object-fit":"cover",filter:"blur(12px)"}),E?p.replaceChild(u,E):p.appendChild(u);}catch(h){console.error(h);}};if(l instanceof HTMLIFrameElement)return new Promise((m,E)=>{let h=setTimeout(()=>{window.removeEventListener("message",u),E(new Error(`Timeout exceeded for ${e}, ad source: ${JSON.stringify(n)}`));},(a.length===0?2e4:1e4)*(R.IS_MISES_BROWSER?2:1)),f=!1,u=T=>{var S,v;if(T.source===l.contentWindow)try{let g=typeof T.data=="string"?JSON.parse(T.data):T.data;switch(g.type){case $:f||(f=!0,se({id:e,type:$,adMetadata:d}),clearTimeout(h),m()),c((S=g.ad)==null?void 0:S.creative_set);break;case te:f||(window.removeEventListener("message",u),clearTimeout(h),E(new Error((v=g.reason)!=null?v:"Unknown error")));break;case le:let{width:I,height:_}=g;I>0&&_>0&&(d.source.native?l.style.height=`${_}px`:(k(l,"width",I),k(l,"height",_)),se(b(P({},g),{id:e})));}}catch(g){console.error("Observing error:",g);}};window.addEventListener("message",u);}).catch(m=>(console.error(m),Ve(e,a,r)));c(i.creativeSet),se({id:e,type:$,adMetadata:d});});var ht=(e,t)=>{let{adPlacesRulesForAllDomains:r,providersRulesForAllDomains:s,providersSelectors:a,providersNegativeSelectors:d={},providersToReplaceAtAllSites:n,permanentAdPlacesRulesForAllDomains:o,permanentNativeAdPlacesRulesForAllDomains:i={},adsReplaceUrlsBlacklist:l=[],elementsToHideOrRemoveRules:p={},providersCategories:A={},timestamp:c}=t,{hostname:m,href:E}=e;if(l.some(u=>new RegExp(u).test(E)))return {adPlacesRules:[],permanentAdPlacesRules:[],providersSelectors:[],providersNegativeSelectors:[],elementsToHideOrRemoveRules:[],timestamp:c};let h=E.replace(/#.*$/,""),f=u=>{let T=u.source.includes("#")?E:h;return u.test(T)};return {adPlacesRules:Rt(m,f,r),permanentAdPlacesRules:ft(m,f,o,i),providersSelectors:$e(m,f,s,a,n,A),providersNegativeSelectors:$e(m,f,s,d,n,A),elementsToHideOrRemoveRules:Et(m,f,p),timestamp:c}},Et=(e,t,r)=>{var s;return ((s=r[e])!=null?s:[]).map(n=>{var o=n,{urlRegexes:a}=o,d=M(o,["urlRegexes"]);return b(P({},d),{urlRegexes:a.map(i=>new RegExp(i))})}).filter(({urlRegexes:a})=>a.some(t))},Rt=(e,t,r)=>{var d;return ((d=r[e])!=null?d:[]).map(i=>{var l=i,{urlRegexes:n}=l,o=M(l,["urlRegexes"]);return b(P({},o),{urlRegexes:n.map(p=>new RegExp(p))})}).reduce((n,p)=>{var A=p,{urlRegexes:o,selector:i}=A,l=M(A,["urlRegexes","selector"]);if(!o.some(t))return n;let h=i,{cssString:c}=h,m=M(h,["cssString"]),E=n.findIndex(T=>{var S=T,{selector:f}=S,u=M(S,["selector"]);let I=f,g=M(I,["cssString"]);return lodash.isEqual(m,g)&&lodash.isEqual(l,u)});return E===-1?n.push(P({selector:i},l)):n[E].selector.cssString+=", ".concat(c),n},[])},Ge=e=>d=>{var n=d,{urlRegexes:t,elementToMeasureSelector:r,elementsToMeasureSelectors:s}=n,a=M(n,["urlRegexes","elementToMeasureSelector","elementsToMeasureSelectors"]);return b(P({},a),{urlRegexes:t.map(o=>new RegExp(o)),isNative:e,elementsToMeasureSelectors:s!=null?s:r?{width:r,height:r}:void 0})},ft=(e,t,r,s={})=>{var o,i;let a=(o=r[e])!=null?o:[],d=(i=s[e])!=null?i:[];return a.map(Ge(!1)).concat(d.map(Ge(!0))).filter(({urlRegexes:l})=>l.some(t))};function gt(e){let t="";return e.forEach(r=>{t+=r+", ";}),t&&(t=t.slice(0,-2)),t}var $e=(e,t,r,s,a,d)=>{var A;let o=((A=r[e])!=null?A:[]).map(E=>{var h=E,{urlRegexes:c}=h,m=M(h,["urlRegexes"]);return b(P({},m),{urlRegexes:c.map(f=>new RegExp(f))})}).filter(({urlRegexes:c})=>c.some(t)),i=new Set,l={},p=c=>{var h,f;if(i.has(c))return;let m=((h=d[c])!=null?h:[B]).join("|");((f=s[c])!=null?f:[]).forEach(u=>{let{selector:T,parentDepth:S}=typeof u=="string"?{selector:u,parentDepth:0}:u;l[m]||(l[m]={});let v=l[m];v[S]||(v[S]=new Set),v[S].add(T);}),i.add(c);};return a.forEach(p),o.forEach(({providers:c})=>c.forEach(p)),Object.entries(l).map(([c,m])=>Object.entries(m).map(([E,h])=>({parentDepth:Number(E),selector:gt(h),categories:c.split("|")}))).flat()};var O=e=>(...t)=>w(void 0,null,function*(){let{data:r}=yield e(...t);return r}),ge=class{constructor(t){this.getAdPlacesRulesForAllDomains=O(()=>this.api.get("/slise-ad-rules/ad-places",this.getAdVersionRequestConfig()));this.getProvidersToReplaceAtAllSites=O(()=>this.api.get("/slise-ad-rules/providers/all-sites"));this.getProvidersCategories=O(()=>this.api.get("/slise-ad-rules/providers/categories"));this.getProvidersRulesForAllDomains=O(()=>this.api.get("/slise-ad-rules/providers/by-sites"));this.getSelectorsForAllProviders=O(()=>this.api.get("/slise-ad-rules/providers",this.getAdVersionRequestConfig()));this.getNegativeSelectorsForAllProviders=O(()=>this.api.get("/slise-ad-rules/providers/negative-selectors",this.getAdVersionRequestConfig()));this.getPermanentAdPlacesRulesForAllDomains=O(()=>this.api.get("/slise-ad-rules/ad-places/permanent",this.getAdVersionRequestConfig()));this.getPermanentNativeAdPlacesRulesForAllDomains=O(()=>this.api.get("/slise-ad-rules/ad-places/permanent-native",this.getAdVersionRequestConfig()));this.getAdsReplaceUrlsBlacklist=O(()=>this.api.get("/slise-ad-rules/replace-urls-blacklist",this.getAdVersionRequestConfig()));this.getElementsToHideOrRemoveRules=O(()=>this.api.get("/slise-ad-rules/elements-to-hide-or-remove",this.getAdVersionRequestConfig()));this.getAllRules=()=>w(this,null,function*(){let[t,r,s,a,d,n,o,i,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()]);return {adPlacesRulesForAllDomains:t,providersRulesForAllDomains:r,providersSelectors:s,providersToReplaceAtAllSites:a,permanentAdPlacesRulesForAllDomains:d,permanentNativeAdPlacesRulesForAllDomains:n,adsReplaceUrlsBlacklist:o,providersNegativeSelectors:i,elementsToHideOrRemoveRules:l,providersCategories:p,timestamp:Date.now()}});this.api=St__default.default.create({baseURL:new URL("/api",t).href,adapter:yt__default.default});}getAdVersionRequestConfig(){return {params:{extVersion:R.EXTENSION_VERSION,isMisesBrowser:R.IS_MISES_BROWSER}}}};
15
+ var Xe=Object.defineProperty,Qe=Object.defineProperties;var je=Object.getOwnPropertyDescriptors;var ie=Object.getOwnPropertySymbols;var Ie=Object.prototype.hasOwnProperty,xe=Object.prototype.propertyIsEnumerable;var Pe=(e,t,r)=>t in e?Xe(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,P=(e,t)=>{for(var r in t||(t={}))Ie.call(t,r)&&Pe(e,r,t[r]);if(ie)for(var r of ie(t))xe.call(t,r)&&Pe(e,r,t[r]);return e},b=(e,t)=>Qe(e,je(t));var M=(e,t)=>{var r={};for(var s in e)Ie.call(e,s)&&t.indexOf(s)<0&&(r[s]=e[s]);if(e!=null&&ie)for(var s of ie(e))t.indexOf(s)<0&&xe.call(e,s)&&(r[s]=e[s]);return r};var w=(e,t,r)=>new Promise((s,a)=>{var d=i=>{try{o(r.next(i));}catch(l){a(l);}},n=i=>{try{o(r.throw(i));}catch(l){a(l);}},o=i=>i.done?s(i.value):Promise.resolve(i.value).then(d,n);o((r=r.apply(e,t)).next());});var Me=e=>!!e;var H=(e=300)=>new Promise(t=>setTimeout(t,e));var R=class{};R.IS_MISES_BROWSER=!1,R.ADS_TW_WINDOW_URL="",R.TKEY_INPAGE_AD_URL="",R.SMALL_TKEY_INPAGE_AD_URL="",R.SWAP_TKEY_URL="",R.EXTERNAL_ADS_ACTIVITY_MESSAGE_TYPE="",R.personaIframePath="",R.getAdsStackIframeURL=()=>"",R.buildNativeAdsMeta=()=>[],R.bannerAdsMeta=[];var Je=e=>{let{adsTwWindowUrl:t,tkeyInpageAdUrl:r,smallTkeyInpageAdUrl:s,swapTkeyUrl:a,externalAdsActivityMessageType:d,personaIframePath:n,getAdsStackIframeURL:o,buildNativeAdsMeta:i,bannerAdsMeta:l,extVersion:p,templePassphrase:A,isMisesBrowser:c}=e;s&&(R.SMALL_TKEY_INPAGE_AD_URL=s),R.ADS_TW_WINDOW_URL=t,R.TKEY_INPAGE_AD_URL=r,R.SWAP_TKEY_URL=a,R.EXTERNAL_ADS_ACTIVITY_MESSAGE_TYPE=d,R.personaIframePath=n,R.getAdsStackIframeURL=o,R.buildNativeAdsMeta=i,R.bannerAdsMeta=l,R.EXTENSION_VERSION=p,R.TEMPLE_PASSPHRASE=A,R.IS_MISES_BROWSER=c;};var V="twa",G="twa-native",Y="twa-sibling-replacement";var oe="adRenderStart",le="resize",$="ready",te="error",ae="accelerometer; gyroscope",B="crypto",ce="background";var K=/[\d.]+(px)?$/,z=`[${V}]`,_e=`[${V}]:not([${G}])`,be=`[${G}]`,pe=(e,t)=>{let r=parseInt(e,10);return isNaN(r)||!K.test(e)?t:r},k=(e,t,r)=>{e.style[t]=`${Math.max(pe(e.style[t],0),r)}px`;},q=e=>e.reduce((t,r)=>t+pe(r,0),0),X=e=>!!e.closest(z),de=e=>{var t;return !!((t=e.previousElementSibling)!=null&&t.getAttribute(Y))},re=e=>{let t=getComputedStyle(e),{x:r,right:s,width:a,height:d}=e.getBoundingClientRect(),n={width:a,height:d},o=["width","height"];for(let i of o){let l=t[i],p=e.getAttribute(i),A=Math.max(...[l,p].map(c=>pe(c!=null?c:"",-1)));A!==-1&&(n[i]=A),i==="width"&&r<0?n.width+=r:i==="width"&&s>window.innerWidth&&(n.width=window.innerWidth-r);}return n},L=(e,t,r=document)=>e?t?[...r.querySelectorAll(e)]:[r.querySelector(e)].filter(s=>!!s):[],N=(e,t)=>{let r=e;for(let s=0;s<t;s++){let a=r.parentElement;if(!a)return null;r=a;}return r},Le=(e,t,r,s,a)=>{if(e<2&&t<2)return [];if(s)return R.buildNativeAdsMeta(e,t);let d=r==="permanent"||r==="slot-replacement"?R.bannerAdsMeta.filter(({source:i})=>i.shouldNotUseStrictContainerLimits):[],n=Math.max(e,...d.map(({dimensions:i})=>i.width)),o=Math.max(t,...d.map(({dimensions:i})=>i.height));return R.bannerAdsMeta.reduce((i,{dimensions:l,source:p},A)=>{let{shouldNotUseStrictContainerLimits:c=!1,categories:m=[B]}=p;if(m.every(v=>!a.includes(v)))return i;let{minContainerWidth:E,minContainerHeight:h,width:f,maxContainerWidth:u,maxContainerHeight:T}=l,S=!1;switch(r){case"permanent":S=c||n>=f&&(o>=h||o<2);break;case"slot-replacement":S=c||n>=E&&(o>=h||o<2);break;default:S=e>=E&&t>=h&&e<=u&&t<=T;}return S&&i.push(A),i},[])};var De=(e,t)=>{let{shouldHide:r,cssString:s,parentDepth:a,isMultiple:d}=e;L(s,d).forEach(n=>{let o=N(n,a);if(!o)return;let i=window.getComputedStyle(o);i.display!=="none"&&i.visibility!=="hidden"&&t.push({type:r?"hide-element":"remove-element",element:o});});};var He=(e,t,r)=>w(void 0,null,function*(){let{parentSelector:s,displayWidth:a}=e,{isMultiple:d,cssString:n,parentDepth:o}=s;if(a&&!semver.satisfies(semver.coerce(window.innerWidth),a))return [];let i=L(n,d).map(l=>N(l,o)).filter(l=>!!l);return yield Promise.all(i.map(l=>w(void 0,null,function*(){yield H(0),tt(l,e,t,r);}))),i}),Ae=(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}},tt=(e,t,r,s)=>{var Te;let Se=t,{shouldUseDivWrapper:a,divWrapperStyle:d,wrapperStyle:n,elementStyle:o,adSelector:i,insertionIndex:l,insertBeforeSelector:p,insertAfterSelector:A,insertionsCount:c=1,elementsToMeasureSelectors:m,stylesOverrides:E,shouldHideOriginal:h=!1,isNative:f,urlRegexes:u,parentSelector:T}=Se,S=M(Se,["shouldUseDivWrapper","divWrapperStyle","wrapperStyle","elementStyle","adSelector","insertionIndex","insertBeforeSelector","insertAfterSelector","insertionsCount","elementsToMeasureSelectors","stylesOverrides","shouldHideOriginal","isNative","urlRegexes","parentSelector"]),v=S.wrapperType?n:a?d:{display:"contents"},{isMultiple:g,cssString:I,parentDepth:_}=i,x=L(f?be:_e,!0,e).reduce((y,W)=>y.some(Z=>Z.contains(W)||W.contains(Z))?y:[...y,W],[]).length,C=c-x;if(L(I,g,e).map(y=>N(y,_)).filter(y=>Me(y)&&!X(y)).forEach(y=>{var Z;let W=window.getComputedStyle(y).display==="none";if(C<=0)(!h||!W)&&s.push({type:h?"hide-element":"remove-element",element:y});else {let Ke=Ae(m,((Z=y.parentElement)==null?void 0:Z.children.length)===1?y.parentElement:y),ze=P({type:"replace-element",element:y,wrapperStyle:v,elementStyle:o,stylesOverrides:E},S),we={type:"hide-element",element:y},qe=P({type:"simple-insert-ad",wrapperStyle:v,elementStyle:o,parent:y.parentElement,insertionIndex:Array.from(y.parentElement.children).indexOf(y),isSiblingReplacement:!0,stylesOverrides:E},S),ee=[],ve=de(y);h&&ve&&!W?ee=[we]:h&&!ve?ee=[we,qe]:h||(ee=[ze]),ee.length>0&&r(Ke,"permanent",f,[B],...ee)&&C--;}}),C<=0)return;let D=-1,F=e,J={width:e,height:e},ye=p||A;if(ye){let y=e.querySelector(ye),W=y==null?void 0:y.parentElement;y&&W&&(F=W,D=Array.from(e.children).indexOf(y)+(p?0:1),J=Ae(m,y));}else {let y=l!=null?l:0;D=y<0?Math.max(e.children.length+y,0):Math.min(y,e.children.length),J=Ae(m,(Te=e.children[D])!=null?Te:e);}if(D!==-1){let y=P({type:"simple-insert-ad",wrapperStyle:v,elementStyle:o,parent:F,insertionIndex:D,isSiblingReplacement:!1,stylesOverrides:E},S);r(J,"permanent",f,[B],...Array(C).fill(y));}};var rt=["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"],Ne=(e,t,r,s)=>w(void 0,null,function*(){let a=e.map(({selector:n,parentDepth:o,categories:i})=>L(n,!0).reduce((l,p)=>{var v;let A=(v=N(p,o))!=null?v:p,c=l.findIndex(({element:g})=>g.contains(A)),m=A.parentElement&&window.getComputedStyle(A.parentElement),{width:E,height:h}=re(A),f=s.some(g=>{var I;return g.type==="replace-all-children"||g.type==="simple-insert-ad"?g.parent.contains(A)||A.contains(g.parent):((I=g.element.parentElement)==null?void 0:I.contains(A))||A.contains(g.element)}),u=(m==null?void 0:m.display)==="none"||(m==null?void 0:m.visibility)==="hidden",T=c>=0&&l[c]instanceof HTMLAnchorElement;if(f||E===0||h===0||u||T)return l;let S={element:A,categories:i};return c>=0?l.splice(c,1,S):l.some(({element:g})=>g.contains(A))||l.push(S),l},[])).flat(),d=t.map(({selector:n,parentDepth:o})=>L(n,!0).map(i=>N(i,o)).filter(i=>!!i)).flat();a=a.filter(({element:n})=>!d.includes(n)),yield Promise.all(a.map(i=>w(void 0,[i],function*({element:n,categories:o}){var m,E,h,f,u,T,S,v;yield H(0);let l=n.parentElement,{width:p,height:A}=window.getComputedStyle(n),c=K.test(p)&&K.test(A)?n:(E=(m=l==null?void 0:l.closest("div, article, aside, footer, header"))!=null?m:(l==null?void 0:l.tagName.toLowerCase())==="body"?void 0:l)!=null?E:n;if(!X(n)&&!n.querySelector(z)&&!s.some(g=>g.type==="simple-insert-ad"?!1:g.type==="replace-all-children"?g.parent.contains(n):g.element===n)){let g=(h=n.getAttribute("style"))!=null?h:"",I=Object.fromEntries(g.split(";").filter(Boolean).map(F=>F.split(":").map(J=>J.trim())));if((f=I.width)!=null&&f.match(/^0[a-z]/)||(u=I.height)!=null&&u.match(/^0[a-z]/))return;let _=window.getComputedStyle(n),U=P(P({},Object.fromEntries(rt.map(F=>[F,_.getPropertyValue(F)]))),I),x={type:"hide-element",element:n},C={type:"simple-insert-ad",wrapperStyle:U,parent:(T=n.parentElement)!=null?T:document.body,insertionIndex:Array.from((v=(S=n.parentElement)==null?void 0:S.children)!=null?v:[]).indexOf(n),isSiblingReplacement:!0},j,D=n.closest(`[${Y}] + *`);D&&D!==n?j=[{type:"remove-element",element:D.previousElementSibling},x,C]:D?j=window.getComputedStyle(n).display==="none"?[]:[x]:j=[x,C],r({width:c,height:c},"provider-replacement",!1,o,...j);}})));});var Oe=(e,t,r)=>w(void 0,null,function*(){let{cssString:s,isMultiple:a}=e.selector,d=L(s,a);yield Promise.all(d.map(n=>w(void 0,null,function*(){yield H(0),nt(n,e,t,r);})));}),nt=(e,t,r,s)=>{let{selector:{shouldUseDivWrapper:a,parentDepth:d,divWrapperStyle:n},stylesOverrides:o,shouldHideOriginal:i,isNative:l=!1}=t,p=N(e,d);if(!p||r.some(m=>m.contains(p))||X(p)||p.querySelector(z))return;let A={shouldUseDivWrapper:a,wrapperStyle:n},c;if(a&&i){let m=p.parentElement,E=window.getComputedStyle(p).display==="none",h=P({type:"simple-insert-ad",parent:m,insertionIndex:Array.from(m.children).indexOf(p),stylesOverrides:o==null?void 0:o.map(T=>{var S=T,{parentDepth:f}=S,u=M(S,["parentDepth"]);return b(P({},u),{parentDepth:f-1})}),isSiblingReplacement:!0},A);c=[],E||c.push({type:"hide-element",element:p}),de(p)||c.push(h);}else if(a)c=[P({type:"replace-element",element:p,stylesOverrides:o==null?void 0:o.map(f=>{var u=f,{parentDepth:E}=u,h=M(u,["parentDepth"]);return b(P({},h),{parentDepth:E-1})})},A)];else if(i){let m={type:"simple-insert-ad",parent:p,insertionIndex:0,stylesOverrides:o,isSiblingReplacement:!0,wrapperStyle:{display:"contents"}};c=Array.from(p.children).filter(E=>window.getComputedStyle(E).display!=="none").map(E=>({type:"hide-element",element:E})),p.querySelector(z)||c.push(m);}else c=[{type:"replace-all-children",parent:p,stylesOverrides:o,wrapperStyle:{display:"contents"}}];c.length>0&&s({width:p,height:p},"slot-replacement",l,[B],...c);};var st=d=>w(void 0,[d],function*({providersSelectors:e,providersNegativeSelectors:t,adPlacesRules:r,permanentAdPlacesRules:s,elementsToHideOrRemoveRules:a}){let n=[],o=(l,p,A,c,...m)=>{if(m.length>0&&m.every(x=>x.type==="hide-element"||x.type==="remove-element"))return n.push(...m),!0;let{width:E}=re(l.width),{height:h}=re(l.height),{paddingLeft:f,paddingRight:u}=window.getComputedStyle(l.width),{paddingTop:T,paddingBottom:S}=window.getComputedStyle(l.height),v=q([f,u]),g=v===E?E:E-v,I=q([T,S]),_=I===h?h:h-I,U=Le(g,_,p,A,c);return U.length?(n.push(...m.map(x=>x.type==="hide-element"||x.type==="remove-element"?x:b(P({},x),{adsMetadata:U,originalWidth:g,originalHeight:_}))),!0):!1},i=[];return yield Promise.all(a.map(l=>w(void 0,null,function*(){yield H(0),De(l,n);}))),yield Promise.all(s.map(l=>w(void 0,null,function*(){yield H(0),i=i.concat(yield He(l,o,n));}))),yield Promise.all(r.map(l=>w(void 0,null,function*(){yield H(0),yield Oe(l,i,o);}))),yield Ne(e,t,o,n),n});var ue=(d=>(d.Optimal="Optimal",d.SmartyAds="SmartyAds",d.HypeLab="HypeLab",d.Persona="Persona",d.Temple="Temple Wallet",d))(ue||{});var he=new Set,Ce=new Set,We=new Set,ke=e=>w(void 0,null,function*(){let t=e.id;if(!he.has(t))return he.add(t),new Promise((r,s)=>{let a=!1,d=n=>{var o,i;if(n.source===e.contentWindow)try{let l=typeof n.data=="string"?JSON.parse(n.data):n.data;if(l.id!==t)return;let p=e.offsetWidth-e.clientWidth,A=e.offsetHeight-e.clientHeight;switch(l.type){case $:r(l.adMetadata.source.providerName);break;case te:window.removeEventListener("message",d),e.style.display="none",s(new Error((o=l.reason)!=null?o:"Unknown error"));break;case oe:let{dimensions:c,source:m}=l.adMetadata;a=(i=m.native)!=null?i:!1;let{width:E,height:h}=c;E>0&&h>0&&(m.native?e.style.height=`${h}px`:(k(e,"width",E),k(e,"height",h)));break;case le:let{width:f,height:u}=l;a?e.style.height=`${u+A}px`:(k(e,"width",f+p),k(e,"height",u+A));}}catch(l){console.error("Observing error:",l);}};window.addEventListener("message",d);}).then(r=>{if(Ce.has(t))return;Ce.add(t),lt(e)?Ue(t,r):ot(e,r);}).catch(r=>{throw console.error(r),r}).finally(()=>void he.delete(t))}),ot=(e,t)=>{let r=new IntersectionObserver(s=>{s.some(a=>a.isIntersecting)&&(Ue(e.id,t),r.disconnect());},{threshold:.5});r.observe(e);},Ue=(e,t)=>{if(We.has(e))return;We.add(e);let r=window.parent.location.href;it__default.default.runtime.sendMessage({type:R.EXTERNAL_ADS_ACTIVITY_MESSAGE_TYPE,url:r,provider:ue[t]}).catch(s=>void console.error(s));},lt=e=>{let t=e.getBoundingClientRect(),r=window.visualViewport;if(!r)return !1;let s=Math.min(Math.max(0,t.x),r.width),a=Math.min(Math.max(0,t.x+t.width),r.width),d=Math.min(Math.max(0,t.y),r.height),n=Math.min(Math.max(0,t.y+t.height),r.height),o=t.width*t.height;return (a-s)*(n-d)/o>=.5};var ne=(e,t)=>{for(let r in t)e.style.setProperty(r,t[r]);};var dt=(e,t)=>{["width","height"].forEach(s=>{var d;let a=(d=e.style[s])!=null?d:"";K.test(a)&&parseInt(a,10)<t[s]&&e.style.removeProperty(s);});},ct=(e,t,r,s)=>w(void 0,null,function*(){let{elementStyle:a={},stylesOverrides:d=[],adsMetadata:n,wrapperType:o,originalHeight:i,originalWidth:l}=e;d.sort((u,T)=>u.parentDepth-T.parentDepth);let p,A=nanoid.nanoid(),c=document.createElement("iframe");c.loading="lazy",c.src=R.getAdsStackIframeURL(A,n,window.location.href),c.id=A,c.allow=ae;let m=n[0],{dimensions:E}=typeof m=="number"?R.bannerAdsMeta[m]:m,h={width:Math.max(l,E.width),height:Math.max(i,E.height)};c.style.width=o==="tbody"?"100%":`${h.width}px`,c.style.height=`${h.height}px`,c.style.border="none";for(let u in a)c.style.setProperty(u,a[u]);switch(c.setAttribute(V,"true"),dt(t,h),r.appendChild(c),e.type){case"replace-all-children":p=e.parent,e.parent.innerHTML="",e.parent.appendChild(t);break;case"replace-element":p=e.element.parentElement,e.element.replaceWith(t);break;default:e.isSiblingReplacement&&t.setAttribute(Y,"true"),p=e.parent,e.parent.insertBefore(t,e.parent.children[e.insertionIndex]);break}if(o!=="tbody"){let{borderLeftWidth:u,borderRightWidth:T,borderTopWidth:S,borderBottomWidth:v}=window.getComputedStyle(c),{borderLeftWidth:g,borderRightWidth:I,borderTopWidth:_,borderBottomWidth:U}=window.getComputedStyle(t),x=q([u,T,g,I]),C=q([S,v,_,U]);c.style.width=`${h.width-x}px`,c.style.height=`${h.height-C}px`;}ke(c).catch(s);let f=0;d.forEach(({parentDepth:u,style:T})=>{for(;u>f&&p;)p=p.parentElement,f++;p&&ne(p,T);});}),Fe=e=>w(void 0,null,function*(){let{wrapperStyle:t={},adsMetadata:r,wrapperType:s="div",colsAfter:a=0,colsBefore:d=0,colspan:n=1}=e,o=r.every(A=>typeof A=="object"),i,l;if(s==="div")i=document.createElement("div"),l=i;else {i=document.createElement("tbody");let A=document.createElement("tr");i.appendChild(A);for(let m=0;m<d;m++)A.appendChild(document.createElement("td"));let c=document.createElement("td");c.colSpan=n,A.appendChild(c),l=c;for(let m=0;m<a;m++)A.appendChild(document.createElement("td"));}i.setAttribute(V,"true"),o&&i.setAttribute(G,"true"),ne(i,t);let p=()=>{let A=document.createElement("div");A.setAttribute(V,"true"),o&&A.setAttribute(G,"true"),e.type==="simple-insert-ad"&&e.isSiblingReplacement&&A.setAttribute(Y,"true"),A.style.display="none",i.replaceWith(A);};yield ct(e,i,l,A=>{console.error("Failed to render ads",A),p();}).catch(A=>{throw console.error("Inserting an ad attempt error:",A),p(),A});});var mt=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 Fe(t);})));var Ee=(e,t,r=!1)=>{let s=document.createElement("div");s.style.width=`${e}px`,s.style.height=`${t}px`;let a=document.createElement("div");if(a.style.width=`${e}px`,a.style.height=`${t}px`,s.appendChild(a),r){let o=document.createElement("a");return o.href=R.SWAP_TKEY_URL,o.target="_blank",o.rel="noopener noreferrer",o.style.width=`${e}px`,o.style.height=`${t}px`,o.style.overflow="hidden",o.style.textOverflow="ellipsis",o.appendChild(document.createTextNode("TODO: Native TKEY ad")),a.appendChild(o),{element:s}}let d=document.createElement("a");d.href=R.SWAP_TKEY_URL,d.target="_blank",d.rel="noopener noreferrer",d.style.width="100%",d.style.height="100%",a.appendChild(d);let n=document.createElement("img");return n.src=e<=320?R.SMALL_TKEY_INPAGE_AD_URL:R.TKEY_INPAGE_AD_URL,n.style.width="100%",n.style.height="100%",d.appendChild(n),{element:s,creativeSet:{image:{url:n.src}}}};var Re=(e,t,{width:r,height:s},a)=>{let d=document.createElement("iframe");return d.id=e,d.src=At(t,a,r,s,d.id),d.style.width=t.native?"100%":`${r}px`,d.style.height=`${s}px`,d.style.border="none",d.allow=ae,{element:d}},At=(e,t,r,s,a)=>{let{providerName:d,slug:n,native:o}=e,i=new URL(R.ADS_TW_WINDOW_URL);return i.searchParams.set("ap",d.toLowerCase()),o?i.searchParams.set("vh",String(s)):i.searchParams.set("w",String(r)),i.searchParams.set("h",String(s)),i.searchParams.set("p",n),i.searchParams.set("o",ut(t)),a&&i.searchParams.set("id",a),i.toString()},ut=e=>cryptoJs.AES.encrypt(e,R.TEMPLE_PASSPHRASE).toString();var fe=(e,t,{width:r,height:s})=>{let a=document.createElement("iframe"),d="";switch(t.providerName){case"Persona":d=R.personaIframePath;break;default:throw new Error(`Ads from ${t.providerName} are unavailable via extension iframe`)}let n=new URL(d);return n.searchParams.set("id",e),n.searchParams.set("slug",t.slug),a.src=n.toString(),a.id=e,a.style.width=`${r}px`,a.style.height=`${s}px`,a.style.border="none",{element:a}};var se=e=>window.parent.postMessage(JSON.stringify(e),"*"),Ve=(e,t,r)=>w(void 0,null,function*(){if(t.length===0){se({id:e,type:te,reason:"No more ads to render"});return}let[s,...a]=t,d=typeof s=="number"?R.bannerAdsMeta[s]:s;se({id:e,type:oe,adMetadata:d});let{source:n,dimensions:o}=d,i;switch(n.providerName){case"Temple":i=Ee(o.width,o.height,n.native);break;case"HypeLab":case"SmartyAds":i=Re(e,n,o,r);break;default:i=fe(e,n,o);}let{element:l}=i,p=document.getElementById("root"),A=document.getElementById("temple-label");p.replaceChildren(l),n.native?A.removeAttribute("active"):A.setAttribute("active","");let c=(m={})=>{let E=document.getElementById(ce);if(n.native&&E&&p.removeChild(E),!n.native)try{let{image:h,video:f}=m,u;if(h?(u=document.createElement("img"),u.src=h.url,u.alt=""):f&&(u=document.createElement("video"),u.src=f.url,u.autoplay=!0,u.preload="auto",u.playsInline=!0,u.muted=!0,u.loop=!0),!u&&E&&p.removeChild(E),!u)return;u.id=ce,u.style.zIndex="-1",ne(u,{position:"absolute",top:"0px",left:"0px",right:"0px",bottom:"0px",width:"100%",height:"100%","object-fit":"cover",filter:"blur(12px)"}),E?p.replaceChild(u,E):p.appendChild(u);}catch(h){console.error(h);}};if(l instanceof HTMLIFrameElement)return new Promise((m,E)=>{let h=setTimeout(()=>{window.removeEventListener("message",u),E(new Error(`Timeout exceeded for ${e}, ad source: ${JSON.stringify(n)}`));},(a.length===0?2e4:1e4)*(R.IS_MISES_BROWSER?2:1)),f=!1,u=T=>{var S,v;if(T.source===l.contentWindow)try{let g=typeof T.data=="string"?JSON.parse(T.data):T.data;switch(g.type){case $:f||(f=!0,se({id:e,type:$,adMetadata:d}),clearTimeout(h),m()),c((S=g.ad)==null?void 0:S.creative_set);break;case te:f||(window.removeEventListener("message",u),clearTimeout(h),E(new Error((v=g.reason)!=null?v:"Unknown error")));break;case le:let{width:I,height:_}=g;I>0&&_>0&&(d.source.native?l.style.height=`${_}px`:(k(l,"width",I),k(l,"height",_)),se(b(P({},g),{id:e})));}}catch(g){console.error("Observing error:",g);}};window.addEventListener("message",u);}).catch(m=>(console.error(m),Ve(e,a,r)));c(i.creativeSet),se({id:e,type:$,adMetadata:d});});var ht=(e,t)=>{let{adPlacesRulesForAllDomains:r,providersRulesForAllDomains:s,providersSelectors:a,providersNegativeSelectors:d={},providersToReplaceAtAllSites:n,permanentAdPlacesRulesForAllDomains:o,permanentNativeAdPlacesRulesForAllDomains:i={},adsReplaceUrlsBlacklist:l=[],elementsToHideOrRemoveRules:p={},providersCategories:A={},timestamp:c}=t,{hostname:m,href:E}=e;if(l.some(u=>new RegExp(u).test(E)))return {adPlacesRules:[],permanentAdPlacesRules:[],providersSelectors:[],providersNegativeSelectors:[],elementsToHideOrRemoveRules:[],timestamp:c};let h=E.replace(/#.*$/,""),f=u=>{let T=u.source.includes("#")?E:h;return u.test(T)};return {adPlacesRules:Rt(m,f,r),permanentAdPlacesRules:ft(m,f,o,i),providersSelectors:$e(m,f,s,a,n,A),providersNegativeSelectors:$e(m,f,s,d,n,A),elementsToHideOrRemoveRules:Et(m,f,p),timestamp:c}},Et=(e,t,r)=>{var s;return ((s=r[e])!=null?s:[]).map(n=>{var o=n,{urlRegexes:a}=o,d=M(o,["urlRegexes"]);return b(P({},d),{urlRegexes:a.map(i=>new RegExp(i))})}).filter(({urlRegexes:a})=>a.some(t))},Rt=(e,t,r)=>{var d;return ((d=r[e])!=null?d:[]).map(i=>{var l=i,{urlRegexes:n}=l,o=M(l,["urlRegexes"]);return b(P({},o),{urlRegexes:n.map(p=>new RegExp(p))})}).reduce((n,p)=>{var A=p,{urlRegexes:o,selector:i}=A,l=M(A,["urlRegexes","selector"]);if(!o.some(t))return n;let h=i,{cssString:c}=h,m=M(h,["cssString"]),E=n.findIndex(T=>{var S=T,{selector:f}=S,u=M(S,["selector"]);let I=f,g=M(I,["cssString"]);return lodash.isEqual(m,g)&&lodash.isEqual(l,u)});return E===-1?n.push(P({selector:i},l)):n[E].selector.cssString+=", ".concat(c),n},[])},Ge=e=>d=>{var n=d,{urlRegexes:t,elementToMeasureSelector:r,elementsToMeasureSelectors:s}=n,a=M(n,["urlRegexes","elementToMeasureSelector","elementsToMeasureSelectors"]);return b(P({},a),{urlRegexes:t.map(o=>new RegExp(o)),isNative:e,elementsToMeasureSelectors:s!=null?s:r?{width:r,height:r}:void 0})},ft=(e,t,r,s={})=>{var o,i;let a=(o=r[e])!=null?o:[],d=(i=s[e])!=null?i:[];return a.map(Ge(!1)).concat(d.map(Ge(!0))).filter(({urlRegexes:l})=>l.some(t))};function gt(e){let t="";return e.forEach(r=>{t+=r+", ";}),t&&(t=t.slice(0,-2)),t}var $e=(e,t,r,s,a,d)=>{var A;let o=((A=r[e])!=null?A:[]).map(E=>{var h=E,{urlRegexes:c}=h,m=M(h,["urlRegexes"]);return b(P({},m),{urlRegexes:c.map(f=>new RegExp(f))})}).filter(({urlRegexes:c})=>c.some(t)),i=new Set,l={},p=c=>{var h,f;if(i.has(c))return;let m=((h=d[c])!=null?h:[B]).join("|");((f=s[c])!=null?f:[]).forEach(u=>{let{selector:T,parentDepth:S}=typeof u=="string"?{selector:u,parentDepth:0}:u;l[m]||(l[m]={});let v=l[m];v[S]||(v[S]=new Set),v[S].add(T);}),i.add(c);};return a.forEach(p),o.forEach(({providers:c})=>c.forEach(p)),Object.entries(l).map(([c,m])=>Object.entries(m).map(([E,h])=>({parentDepth:Number(E),selector:gt(h),categories:c.split("|")}))).flat()};var O=e=>(...t)=>w(void 0,null,function*(){let{data:r}=yield e(...t);return r}),ge=class{constructor(t){this.getAdPlacesRulesForAllDomains=O(()=>this.api.get("/slise-ad-rules/ad-places",this.getAdVersionRequestConfig()));this.getProvidersToReplaceAtAllSites=O(()=>this.api.get("/slise-ad-rules/providers/all-sites"));this.getProvidersCategories=O(()=>this.api.get("/slise-ad-rules/providers/categories"));this.getProvidersRulesForAllDomains=O(()=>this.api.get("/slise-ad-rules/providers/by-sites"));this.getSelectorsForAllProviders=O(()=>this.api.get("/slise-ad-rules/providers",this.getAdVersionRequestConfig()));this.getNegativeSelectorsForAllProviders=O(()=>this.api.get("/slise-ad-rules/providers/negative-selectors",this.getAdVersionRequestConfig()));this.getPermanentAdPlacesRulesForAllDomains=O(()=>this.api.get("/slise-ad-rules/ad-places/permanent",this.getAdVersionRequestConfig()));this.getPermanentNativeAdPlacesRulesForAllDomains=O(()=>this.api.get("/slise-ad-rules/ad-places/permanent-native",this.getAdVersionRequestConfig()));this.getAdsReplaceUrlsBlacklist=O(()=>this.api.get("/slise-ad-rules/replace-urls-blacklist",this.getAdVersionRequestConfig()));this.getElementsToHideOrRemoveRules=O(()=>this.api.get("/slise-ad-rules/elements-to-hide-or-remove",this.getAdVersionRequestConfig()));this.getAllRules=()=>w(this,null,function*(){let[t,r,s,a,d,n,o,i,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()]);return {adPlacesRulesForAllDomains:t,providersRulesForAllDomains:r,providersSelectors:s,providersToReplaceAtAllSites:a,permanentAdPlacesRulesForAllDomains:d,permanentNativeAdPlacesRulesForAllDomains:n,adsReplaceUrlsBlacklist:o,providersNegativeSelectors:i,elementsToHideOrRemoveRules:l,providersCategories:p,timestamp:Date.now()}});this.api=yt__default.default.create({baseURL:new URL("/api",t).href,adapter:"fetch"});}getAdVersionRequestConfig(){return {params:{extVersion:R.EXTENSION_VERSION,isMisesBrowser:R.IS_MISES_BROWSER}}}};
18
16
 
19
17
  exports.TempleWalletApi = ge;
20
18
  exports.configureAds = Je;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@temple-wallet/extension-ads",
3
- "version": "8.1.0-dev.2",
3
+ "version": "8.1.0-dev.3",
4
4
  "main": "dist/index.js",
5
5
  "repository": {
6
6
  "type": "git",
@@ -36,8 +36,7 @@
36
36
  },
37
37
  "packageManager": "yarn@4.1.1",
38
38
  "dependencies": {
39
- "@vespaiach/axios-fetch-adapter": "^0.3.1",
40
- "axios": "^1.6.7",
39
+ "axios": "^1.7.4",
41
40
  "crypto-js": "^4.2.0",
42
41
  "lodash": "^4.17.21",
43
42
  "nanoid": "^5.0.6",
@@ -1,4 +1,3 @@
1
- import axiosFetchAdapter from '@vespaiach/axios-fetch-adapter';
2
1
  import axios, { AxiosInstance, AxiosResponse } from 'axios';
3
2
 
4
3
  import {
@@ -25,7 +24,7 @@ export class TempleWalletApi {
25
24
  constructor(baseUrl: string) {
26
25
  this.api = axios.create({
27
26
  baseURL: new URL('/api', baseUrl).href,
28
- adapter: axiosFetchAdapter
27
+ adapter: 'fetch'
29
28
  });
30
29
  }
31
30