-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathspongeapi.min.js
1 lines (1 loc) · 5.39 KB
/
spongeapi.min.js
1
var iframeId,iid,handleSetupResponse,testData,spongeapi=spongeapi||{},spongecell=spongecell||{};iid=window.location.search.slice(1),spongeapi.initComplete=!1,spongeapi.onHover=function(e,a,n){var i,s=null;e||(s=a,e=document);var t=350,o=8,p=null,g=null,l=function(e){p=e.pageX,g=e.pageY},r=null,c=null,u=null,d=function(){"undefined"!=typeof p&&null!==p&&"undefined"!=typeof g&&null!==g&&"undefined"!=typeof c&&null!==c&&"undefined"!=typeof u&&null!==u&&Math.abs(p-c)+Math.abs(g-u)<o?(s&&(s(),s=null),e.removeEventListener("mousemove",l),a!==s&&a(),i&&(r=setTimeout(d,i))):(c=p,u=g,r=setTimeout(d,t))},m=function(){var e=this.globalToLocal(stage.mouseX,stage.mouseY),a=this.nominalBounds.width,n=this.nominalBounds.height;p=e.x>0&&e.x<a?e.x:null,g=e.y>0&&e.y<n?e.y:null};n?(canvas.addEventListener("mouseover",function(){var e=this.globalToLocal(stage.mouseX,stage.mouseY);c=e.x,u=e.y,canvas.addEventListener("mousemove",m.bind(this),!1),r=setTimeout(d,t)}.bind(e),!1),canvas.addEventListener("mouseout",function(){canvas.removeEventListener("mousemove",l),p=g=null,clearTimeout(r)})):(e.addEventListener("mouseenter",function(a){c=a.pageX,u=a.pageY,e.addEventListener("mousemove",l),r=setTimeout(d,t)}),e.addEventListener("mouseleave",function(){e.removeEventListener("mousemove",l),p=g=null,clearTimeout(r)}))};var engageCallback=function(){parent.postMessage(JSON.stringify({iid:iid,topic:"nav",type:"api",engagement:!0}),"*")};spongeapi.init=function(e,a,n,i){iid=window.location.search.slice(1),window.spongecell=window.spongecell||{},e.hasOwnProperty("type")?(spongeapi.type=e.type,spongeapi.initObj=e.initObj,spongeapi.isDynamic=e.isDynamic,spongeapi.onReady=e.onReady):(spongeapi.type=e,spongeapi.initObj=a,spongeapi.isDynamic=n,spongeapi.onReady=i),window==parent.top?(spongcell={},handleSetupResponse()):parent.postMessage(JSON.stringify({type:"api",topic:"setup",iid:iid,callback:"handleSetupResponse"}),"*")},spongeapi.openScreen=function(e,a){window!=parent.top?a&&a.engagement?parent.postMessage(JSON.stringify({iid:iid,topic:"nav",type:"api",engage:!0,screen:e}),"*"):parent.postMessage(JSON.stringify({iid:iid,topic:"nav",type:"api",engage:!1,screen:e}),"*"):console.log("openScreen("+e+","+a+")")},spongeapi.openLanding=function(e,a){a=a||"",window!=parent.top?(window.open(spongecell.apiData.landingPages[e].url+a,"_blank"),parent.postMessage(JSON.stringify({iid:iid,topic:"nav",type:"api",landingPage:spongecell.apiData.landingPages[e]}),"*")):console.log("openLanding("+e+"): "+spongecell.apiData.landingPages[e].url)},spongeapi.getDynamicText=function(e){return spongecell.hasOwnProperty("apiData")?spongecell.apiData.properties[e].text:e},spongeapi.getDynamicImage=function(e){return spongecell.hasOwnProperty("apiData")?spongecell.apiData.assets[e].src:e},spongeapi.parseEdge=function(){for(var e in spongecell.apiData.properties){var a=spongeapi.initObj.$(e);a&&a.text(spongecell.apiData.properties[e].text)}for(var e in spongecell.apiData.assets){var a=spongeapi.initObj.$(e);a&&a.css({"background-image":"url("+spongecell.apiData.assets[e].src+")"})}},spongeapi.parseDynamicCanvasImages=function(){for(var e,a=0;e=lib.properties.manifest[a];a++)spongecell.apiData.assets.hasOwnProperty(e.id)&&(e.crossOrigin="Anonymous",e.src=spongeapi.getDynamicImage(e.id))},spongeapi.parseDynamicCanvasText=function(){for(var e in spongecell.apiData.properties)exportRoot[e]&&(exportRoot[e].txt.text=spongeapi.getDynamicText(e))},spongeapi.parseDynamicClasses=function(){var e;for(var a in spongecell.apiData.properties)if(e=document.getElementsByClassName(a),e.length>0)for(var n=0;n<e.length;n++)e[n].innerHTML=spongeapi.getDynamicText(a);else(e=document.getElementById(a))&&(e.innerHTML=spongeapi.getDynamicText(a));for(var a in spongecell.apiData.assets)if(e=document.getElementsByClassName(a),e.length>0)for(var n=0;n<e.length;n++)e[n].src=spongeapi.getDynamicImage(a),e[n].setAttribute("source",spongeapi.getDynamicImage(a));else(e=document.getElementById(a))&&(e.src=spongeapi.getDynamicImage(a),e.setAttribute("source",spongeapi.getDynamicImage(a)))},handleSetupResponse=function(e){if(!spongeapi.initComplete){switch(spongeapi.onHover(document,engageCallback),window.spongecell.apiData=e||{},!spongecell.apiData.assets&&testData&&(spongecell.apiData=testData),spongeapi.type){case"canvas":spongeapi.isDynamic&&spongecell.apiData.assets&&spongeapi.parseDynamicCanvasImages(),spongeapi.initObj.loadManifest(lib.properties.manifest);var a=navigator.userAgent.toLowerCase().indexOf("firefox")>-1;a&&createjs&&(createjs.DisplayObject.prototype.setTransform=function(e,a,n,i,s,t,o,p,g){if(this.x=e||0,this.y=a||0,this.scaleX=null==n?1:n,this.scaleY=null==i?1:i,this.rotation=s||0,this.skewX=t||0,this.skewY=o||0,this.regX=p||0,this.regY=g||0,this.text&&this.getMeasuredLineHeight){var l=this.getMeasuredLineHeight();this.textBaseline="top",l=l>12&&50>l?.3*this.getMeasuredLineHeight():l>49?.2*this.getMeasuredLineHeight():.2*this.getMeasuredLineHeight(),this.y=Math.ceil(this.y+l)}return this});break;case"gwd":spongeapi.initObj.initAd(),spongeapi.isDynamic&&spongecell.apiData.properties&&spongeapi.parseDynamicClasses();break;case"edge":spongeapi.isDynamic&&spongecell.apiData.properties&&spongeapi.parseEdge();break;case"custom":spongeapi.isDynamic&&spongecell.apiData.properties&&spongeapi.parseDynamicClasses()}spongeapi.onReady&&spongeapi.onReady()}spongeapi.initComplete=!0},window.addEventListener("message",function(event){var message=event.data;message&&eval(message.callback)(message.data)});