iframe-resizer 4.3.2 → 4.3.4

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.
@@ -1,10 +1,9 @@
1
- /*! iFrame Resizer (iframeSizer.contentWindow.min.js) - v4.3.2 - 2021-04-26
1
+ /*! iFrame Resizer (iframeSizer.contentWindow.min.js) - v4.3.4 - 2023-02-18
2
2
  * Desc: Include this file in any page being loaded into an iframe
3
3
  * to force the iframe to resize to the content size.
4
4
  * Requires: iframeResizer.min.js on host page.
5
- * Copyright: (c) 2021 David J. Bradshaw - dave@bradshaw.net
5
+ * Copyright: (c) 2023 David J. Bradshaw - dave@bradshaw.net
6
6
  * License: MIT
7
7
  */
8
-
9
- !function(c){if("undefined"!=typeof window){var i=!0,o=10,r="",a=0,u="",s=null,d="",l=!1,f={resize:1,click:1},m=128,h=!0,g=1,n="bodyOffset",p=n,v=!0,y="",w={},b=32,T=null,E=!1,O=!1,S="[iFrameSizer]",M=S.length,I="",N={max:1,min:1,bodyScroll:1,documentElementScroll:1},A="child",C=!0,z=window.parent,k="*",R=0,x=!1,e=null,L=16,F=1,t="scroll",P=t,D=window,j=function(){re("onMessage function not defined")},q=function(){},H=function(){},W={height:function(){return re("Custom height calculation function not defined"),document.documentElement.offsetHeight},width:function(){return re("Custom width calculation function not defined"),document.body.scrollWidth}},B={},J=!1;try{var U=Object.create({},{passive:{get:function(){J=!0}}});window.addEventListener("test",ee,U),window.removeEventListener("test",ee,U)}catch(e){}var V,X,Y,K,Q,G,Z={bodyOffset:function(){return document.body.offsetHeight+pe("marginTop")+pe("marginBottom")},offset:function(){return Z.bodyOffset()},bodyScroll:function(){return document.body.scrollHeight},custom:function(){return W.height()},documentElementOffset:function(){return document.documentElement.offsetHeight},documentElementScroll:function(){return document.documentElement.scrollHeight},max:function(){return Math.max.apply(null,ye(Z))},min:function(){return Math.min.apply(null,ye(Z))},grow:function(){return Z.max()},lowestElement:function(){return Math.max(Z.bodyOffset()||Z.documentElementOffset(),ve("bottom",be()))},taggedElement:function(){return we("bottom","data-iframe-height")}},$={bodyScroll:function(){return document.body.scrollWidth},bodyOffset:function(){return document.body.offsetWidth},custom:function(){return W.width()},documentElementScroll:function(){return document.documentElement.scrollWidth},documentElementOffset:function(){return document.documentElement.offsetWidth},scroll:function(){return Math.max($.bodyScroll(),$.documentElementScroll())},max:function(){return Math.max.apply(null,ye($))},min:function(){return Math.min.apply(null,ye($))},rightMostElement:function(){return ve("right",be())},taggedElement:function(){return we("right","data-iframe-width")}},_=(V=Te,Q=null,G=0,function(){var e=Date.now(),t=L-(e-(G=G||e));return X=this,Y=arguments,t<=0||L<t?(Q&&(clearTimeout(Q),Q=null),G=e,K=V.apply(X,Y),Q||(X=Y=null)):Q=Q||setTimeout(Ee,t),K});te(window,"message",function(t){var n={init:function(){y=t.data,z=t.source,ae(),h=!1,setTimeout(function(){v=!1},m)},reset:function(){v?ie("Page reset ignored by init"):(ie("Page size reset by host page"),Me("resetPage"))},resize:function(){Oe("resizeParent","Parent window requested size check")},moveToAnchor:function(){w.findTarget(i())},inPageLink:function(){this.moveToAnchor()},pageInfo:function(){var e=i();ie("PageInfoFromParent called from parent: "+e),H(JSON.parse(e)),ie(" --")},message:function(){var e=i();ie("onMessage called from parent: "+e),j(JSON.parse(e)),ie(" --")}};function o(){return t.data.split("]")[1].split(":")[0]}function i(){return t.data.substr(t.data.indexOf(":")+1)}function r(){return t.data.split(":")[2]in{true:1,false:1}}function e(){var e=o();e in n?n[e]():("undefined"==typeof module||!module.exports)&&"iFrameResize"in window||"jQuery"in window&&"iFrameResize"in window.jQuery.prototype||r()||re("Unexpected message ("+t.data+")")}S===(""+t.data).substr(0,M)&&(!1===h?e():r()?n.init():ie('Ignored message of type "'+o()+'". Received before initialization.'))}),te(window,"readystatechange",Ae),Ae()}function ee(){}function te(e,t,n,o){e.addEventListener(t,n,!!J&&(o||{}))}function ne(e){return e.charAt(0).toUpperCase()+e.slice(1)}function oe(e){return S+"["+I+"] "+e}function ie(e){E&&"object"==typeof window.console&&console.log(oe(e))}function re(e){"object"==typeof window.console&&console.warn(oe(e))}function ae(){function e(e){return"true"===e}var t;function n(e){Ne(0,0,e.type,e.screenY+":"+e.screenX)}function o(e,t){ie("Add event listener: "+t),te(window.document,e,n)}t=y.substr(M).split(":"),I=t[0],a=c!==t[1]?Number(t[1]):a,l=c!==t[2]?e(t[2]):l,E=c!==t[3]?e(t[3]):E,b=c!==t[4]?Number(t[4]):b,i=c!==t[6]?e(t[6]):i,u=t[7],p=c!==t[8]?t[8]:p,r=t[9],d=t[10],R=c!==t[11]?Number(t[11]):R,w.enable=c!==t[12]&&e(t[12]),A=c!==t[13]?t[13]:A,P=c!==t[14]?t[14]:P,O=c!==t[15]?Boolean(t[15]):O,ie("Initialising iFrame ("+window.location.href+")"),function(){function e(e,t){return"function"==typeof e&&(ie("Setup custom "+t+"CalcMethod"),W[t]=e,e="custom"),e}"iFrameResizer"in window&&Object===window.iFrameResizer.constructor&&(function(){var e=window.iFrameResizer;ie("Reading data from page: "+JSON.stringify(e)),Object.keys(e).forEach(ue,e),j="onMessage"in e?e.onMessage:j,q="onReady"in e?e.onReady:q,k="targetOrigin"in e?e.targetOrigin:k,p="heightCalculationMethod"in e?e.heightCalculationMethod:p,P="widthCalculationMethod"in e?e.widthCalculationMethod:P}(),p=e(p,"height"),P=e(P,"width"));ie("TargetOrigin for parent set to: "+k)}(),function(){c===u&&(u=a+"px");ce("margin",function(e,t){-1!==t.indexOf("-")&&(re("Negative CSS value ignored for "+e),t="");return t}("margin",u))}(),ce("background",r),ce("padding",d),(t=document.createElement("div")).style.clear="both",t.style.display="block",t.style.height="0",document.body.appendChild(t),fe(),me(),document.documentElement.style.height="",document.body.style.height="",ie('HTML & body height set to "auto"'),ie("Enable public methods"),D.parentIFrame={autoResize:function(e){return!0===e&&!1===i?(i=!0,he()):!1===e&&!0===i&&(i=!1,de("remove"),null!==s&&s.disconnect(),clearInterval(T)),Ne(0,0,"autoResize",JSON.stringify(i)),i},close:function(){Ne(0,0,"close")},getId:function(){return I},getPageInfo:function(e){"function"==typeof e?(H=e,Ne(0,0,"pageInfo")):(H=function(){},Ne(0,0,"pageInfoStop"))},moveToAnchor:function(e){w.findTarget(e)},reset:function(){Ie("parentIFrame.reset")},scrollTo:function(e,t){Ne(t,e,"scrollTo")},scrollToOffset:function(e,t){Ne(t,e,"scrollToOffset")},sendMessage:function(e,t){Ne(0,0,"message",JSON.stringify(e),t)},setHeightCalculationMethod:function(e){p=e,fe()},setWidthCalculationMethod:function(e){P=e,me()},setTargetOrigin:function(e){ie("Set targetOrigin: "+e),k=e},size:function(e,t){Oe("size","parentIFrame.size("+((e||"")+(t?","+t:""))+")",e,t)}},!0===O&&(o("mouseenter","Mouse Enter"),o("mouseleave","Mouse Leave")),he(),w=function(){function i(e){var t=e.getBoundingClientRect(),e={x:window.pageXOffset!==c?window.pageXOffset:document.documentElement.scrollLeft,y:window.pageYOffset!==c?window.pageYOffset:document.documentElement.scrollTop};return{x:parseInt(t.left,10)+parseInt(e.x,10),y:parseInt(t.top,10)+parseInt(e.y,10)}}function n(e){var t,n=e.split("#")[1]||e,e=decodeURIComponent(n),o=document.getElementById(e)||document.getElementsByName(e)[0];c!==o?(t=i(t=o),ie("Moving to in page link (#"+n+") at x: "+t.x+" y: "+t.y),Ne(t.y,t.x,"scrollToOffset")):(ie("In page link (#"+n+") not found in iFrame, so sending to parent"),Ne(0,0,"inPageLink","#"+n))}function e(){var e=window.location.hash,t=window.location.href;""!==e&&"#"!==e&&n(t)}function t(){Array.prototype.forEach.call(document.querySelectorAll('a[href^="#"]'),function(e){"#"!==e.getAttribute("href")&&te(e,"click",function(e){e.preventDefault(),n(this.getAttribute("href"))})})}function o(){Array.prototype.forEach&&document.querySelectorAll?(ie("Setting up location.hash handlers"),t(),te(window,"hashchange",e),setTimeout(e,m)):re("In page linking not fully supported in this browser! (See README.md for IE8 workaround)")}w.enable?o():ie("In page linking not enabled");return{findTarget:n}}(),Oe("init","Init message from host page"),q()}function ue(e){var t=e.split("Callback");2===t.length&&(this[t="on"+t[0].charAt(0).toUpperCase()+t[0].slice(1)]=this[e],delete this[e],re("Deprecated: '"+e+"' has been renamed '"+t+"'. The old method will be removed in the next major version."))}function ce(e,t){c!==t&&""!==t&&"null"!==t&&ie("Body "+e+' set to "'+(document.body.style[e]=t)+'"')}function se(n){var e={add:function(e){function t(){Oe(n.eventName,n.eventType)}B[e]=t,te(window,e,t,{passive:!0})},remove:function(e){var t,n=B[e];delete B[e],t=window,e=e,n=n,t.removeEventListener(e,n,!1)}};n.eventNames&&Array.prototype.map?(n.eventName=n.eventNames[0],n.eventNames.map(e[n.method])):e[n.method](n.eventName),ie(ne(n.method)+" event listener: "+n.eventType)}function de(e){se({method:e,eventType:"Animation Start",eventNames:["animationstart","webkitAnimationStart"]}),se({method:e,eventType:"Animation Iteration",eventNames:["animationiteration","webkitAnimationIteration"]}),se({method:e,eventType:"Animation End",eventNames:["animationend","webkitAnimationEnd"]}),se({method:e,eventType:"Input",eventName:"input"}),se({method:e,eventType:"Mouse Up",eventName:"mouseup"}),se({method:e,eventType:"Mouse Down",eventName:"mousedown"}),se({method:e,eventType:"Orientation Change",eventName:"orientationchange"}),se({method:e,eventType:"Print",eventName:["afterprint","beforeprint"]}),se({method:e,eventType:"Ready State Change",eventName:"readystatechange"}),se({method:e,eventType:"Touch Start",eventName:"touchstart"}),se({method:e,eventType:"Touch End",eventName:"touchend"}),se({method:e,eventType:"Touch Cancel",eventName:"touchcancel"}),se({method:e,eventType:"Transition Start",eventNames:["transitionstart","webkitTransitionStart","MSTransitionStart","oTransitionStart","otransitionstart"]}),se({method:e,eventType:"Transition Iteration",eventNames:["transitioniteration","webkitTransitionIteration","MSTransitionIteration","oTransitionIteration","otransitioniteration"]}),se({method:e,eventType:"Transition End",eventNames:["transitionend","webkitTransitionEnd","MSTransitionEnd","oTransitionEnd","otransitionend"]}),"child"===A&&se({method:e,eventType:"IFrame Resized",eventName:"resize"})}function le(e,t,n,o){return t!==e&&(e in n||(re(e+" is not a valid option for "+o+"CalculationMethod."),e=t),ie(o+' calculation method set to "'+e+'"')),e}function fe(){p=le(p,n,Z,"height")}function me(){P=le(P,t,$,"width")}function he(){var e;!0===i?(de("add"),e=b<0,window.MutationObserver||window.WebKitMutationObserver?e?ge():s=function(){function t(e){function t(e){!1===e.complete&&(ie("Attach listeners to "+e.src),e.addEventListener("load",i,!1),e.addEventListener("error",r,!1),u.push(e))}"attributes"===e.type&&"src"===e.attributeName?t(e.target):"childList"===e.type&&Array.prototype.forEach.call(e.target.querySelectorAll("img"),t)}function o(e){ie("Remove listeners from "+e.src),e.removeEventListener("load",i,!1),e.removeEventListener("error",r,!1),e=e,u.splice(u.indexOf(e),1)}function n(e,t,n){o(e.target),Oe(t,n+": "+e.target.src)}function i(e){n(e,"imageLoad","Image loaded")}function r(e){n(e,"imageLoadFailed","Image load failed")}function a(e){Oe("mutationObserver","mutationObserver: "+e[0].target+" "+e[0].type),e.forEach(t)}var u=[],c=window.MutationObserver||window.WebKitMutationObserver,s=function(){var e=document.querySelector("body");return s=new c(a),ie("Create body MutationObserver"),s.observe(e,{attributes:!0,attributeOldValue:!1,characterData:!0,characterDataOldValue:!1,childList:!0,subtree:!0}),s}();return{disconnect:function(){"disconnect"in s&&(ie("Disconnect body MutationObserver"),s.disconnect(),u.forEach(o))}}}():(ie("MutationObserver not supported in this browser!"),ge())):ie("Auto Resize disabled")}function ge(){0!==b&&(ie("setInterval: "+b+"ms"),T=setInterval(function(){Oe("interval","setInterval: "+b)},Math.abs(b)))}function pe(e,t){var n=0;return t=t||document.body,n=null!==(n=document.defaultView.getComputedStyle(t,null))?n[e]:0,parseInt(n,o)}function ve(e,t){for(var n,o=t.length,i=0,r=ne(e),a=Date.now(),u=0;u<o;u++)i<(n=t[u].getBoundingClientRect()[e]+pe("margin"+r,t[u]))&&(i=n);return a=Date.now()-a,ie("Parsed "+o+" HTML elements"),ie("Element position calculated in "+a+"ms"),L/2<(a=a)&&ie("Event throttle increased to "+(L=2*a)+"ms"),i}function ye(e){return[e.bodyOffset(),e.bodyScroll(),e.documentElementOffset(),e.documentElementScroll()]}function we(e,t){var n=document.querySelectorAll("["+t+"]");return 0===n.length&&(re("No tagged elements ("+t+") found on page"),document.querySelectorAll("body *")),ve(e,n)}function be(){return document.querySelectorAll("body *")}function Te(e,t,n,o){function i(){e in{init:1,interval:1,size:1}||!(p in N||l&&P in N)?e in{interval:1}||ie("No change in size detected"):Ie(t)}var r,a;function u(e,t){return!(Math.abs(e-t)<=R)}r=c!==n?n:Z[p](),a=c!==o?o:$[P](),u(g,r)||l&&u(F,a)||"init"===e?(Se(),Ne(g=r,F=a,e)):i()}function Ee(){G=Date.now(),Q=null,K=V.apply(X,Y),Q||(X=Y=null)}function Oe(e,t,n,o){x&&e in f?ie("Trigger event cancelled: "+e):(e in{reset:1,resetPage:1,init:1}||ie("Trigger event: "+t),("init"===e?Te:_)(e,t,n,o))}function Se(){x||(x=!0,ie("Trigger event lock on")),clearTimeout(e),e=setTimeout(function(){x=!1,ie("Trigger event lock off"),ie("--")},m)}function Me(e){g=Z[p](),F=$[P](),Ne(g,F,e)}function Ie(e){var t=p;p=n,ie("Reset trigger event: "+e),Se(),Me("reset"),p=t}function Ne(e,t,n,o,i){var r;!0===C&&(c===i?i=k:ie("Message targetOrigin: "+i),ie("Sending message to host page ("+(r=I+":"+(e+":"+t)+":"+n+(c!==o?":"+o:""))+")"),z.postMessage(S+r,i))}function Ae(){"loading"!==document.readyState&&window.parent.postMessage("[iFrameResizerChild]Ready","*")}}();
8
+ !function(a){if("undefined"!=typeof window){var r=!0,P="",u=0,c="",s=null,D="",d=!1,j={resize:1,click:1},l=128,q=!0,f=1,n="bodyOffset",m=n,H=!0,W="",h={},g=32,B=null,p=!1,v=!1,y="[iFrameSizer]",J=y.length,w="",U={max:1,min:1,bodyScroll:1,documentElementScroll:1},b="child",V=!0,X=window.parent,T="*",E=0,i=!1,Y=null,O=16,S=1,K="scroll",M=K,Q=window,G=function(){x("onMessage function not defined")},Z=function(){},$=function(){},_={height:function(){return x("Custom height calculation function not defined"),document.documentElement.offsetHeight},width:function(){return x("Custom width calculation function not defined"),document.body.scrollWidth}},ee={},te=!1;try{var ne=Object.create({},{passive:{get:function(){te=!0}}});window.addEventListener("test",ae,ne),window.removeEventListener("test",ae,ne)}catch(e){}var oe,o,I,ie,N,A,C={bodyOffset:function(){return document.body.offsetHeight+ye("marginTop")+ye("marginBottom")},offset:function(){return C.bodyOffset()},bodyScroll:function(){return document.body.scrollHeight},custom:function(){return _.height()},documentElementOffset:function(){return document.documentElement.offsetHeight},documentElementScroll:function(){return document.documentElement.scrollHeight},max:function(){return Math.max.apply(null,e(C))},min:function(){return Math.min.apply(null,e(C))},grow:function(){return C.max()},lowestElement:function(){return Math.max(C.bodyOffset()||C.documentElementOffset(),we("bottom",Te()))},taggedElement:function(){return be("bottom","data-iframe-height")}},z={bodyScroll:function(){return document.body.scrollWidth},bodyOffset:function(){return document.body.offsetWidth},custom:function(){return _.width()},documentElementScroll:function(){return document.documentElement.scrollWidth},documentElementOffset:function(){return document.documentElement.offsetWidth},scroll:function(){return Math.max(z.bodyScroll(),z.documentElementScroll())},max:function(){return Math.max.apply(null,e(z))},min:function(){return Math.min.apply(null,e(z))},rightMostElement:function(){return we("right",Te())},taggedElement:function(){return be("right","data-iframe-width")}},re=(oe=Ee,N=null,A=0,function(){var e=Date.now(),t=O-(e-(A=A||e));return o=this,I=arguments,t<=0||O<t?(N&&(clearTimeout(N),N=null),A=e,ie=oe.apply(o,I),N||(o=I=null)):N=N||setTimeout(Oe,t),ie});k(window,"message",function(t){var n={init:function(){W=t.data,X=t.source,se(),q=!1,setTimeout(function(){H=!1},l)},reset:function(){H?R("Page reset ignored by init"):(R("Page size reset by host page"),Me("resetPage"))},resize:function(){L("resizeParent","Parent window requested size check")},moveToAnchor:function(){h.findTarget(i())},inPageLink:function(){this.moveToAnchor()},pageInfo:function(){var e=i();R("PageInfoFromParent called from parent: "+e),$(JSON.parse(e)),R(" --")},message:function(){var e=i();R("onMessage called from parent: "+e),G(JSON.parse(e)),R(" --")}};function o(){return t.data.split("]")[1].split(":")[0]}function i(){return t.data.slice(t.data.indexOf(":")+1)}function r(){return t.data.split(":")[2]in{true:1,false:1}}function e(){var e=o();e in n?n[e]():("undefined"==typeof module||!module.exports)&&"iFrameResize"in window||window.jQuery!==a&&"iFrameResize"in window.jQuery.prototype||r()||x("Unexpected message ("+t.data+")")}y===(""+t.data).slice(0,J)&&(!1===q?e():r()?n.init():R('Ignored message of type "'+o()+'". Received before initialization.'))}),k(window,"readystatechange",Ne),Ne()}function ae(){}function k(e,t,n,o){e.addEventListener(t,n,!!te&&(o||{}))}function ue(e){return e.charAt(0).toUpperCase()+e.slice(1)}function ce(e){return y+"["+w+"] "+e}function R(e){p&&"object"==typeof window.console&&console.log(ce(e))}function x(e){"object"==typeof window.console&&console.warn(ce(e))}function se(){function e(e){return"true"===e}function t(e,t){return"function"==typeof e&&(R("Setup custom "+t+"CalcMethod"),_[t]=e,e="custom"),e}{var n;n=W.slice(J).split(":"),w=n[0],u=a===n[1]?u:Number(n[1]),d=a===n[2]?d:e(n[2]),p=a===n[3]?p:e(n[3]),g=a===n[4]?g:Number(n[4]),r=a===n[6]?r:e(n[6]),c=n[7],m=a===n[8]?m:n[8],P=n[9],D=n[10],E=a===n[11]?E:Number(n[11]),h.enable=a!==n[12]&&e(n[12]),b=a===n[13]?b:n[13],M=a===n[14]?M:n[14],v=a===n[15]?v:e(n[15]),R("Initialising iFrame ("+window.location.href+")"),"iFrameResizer"in window&&Object===window.iFrameResizer.constructor&&(n=window.iFrameResizer,R("Reading data from page: "+JSON.stringify(n)),Object.keys(n).forEach(de,n),G="onMessage"in n?n.onMessage:G,Z="onReady"in n?n.onReady:Z,T="targetOrigin"in n?n.targetOrigin:T,m="heightCalculationMethod"in n?n.heightCalculationMethod:m,M="widthCalculationMethod"in n?n.widthCalculationMethod:M,m=t(m,"height"),M=t(M,"width"))}function o(e){F(0,0,e.type,e.screenY+":"+e.screenX)}function i(e,t){R("Add event listener: "+t),k(window.document,e,o)}R("TargetOrigin for parent set to: "+T),le("margin",function(e,t){-1!==t.indexOf("-")&&(x("Negative CSS value ignored for "+e),t="");return t}("margin",c=a===c?u+"px":c)),le("background",P),le("padding",D),(n=document.createElement("div")).style.clear="both",n.style.display="block",n.style.height="0",document.body.appendChild(n),he(),ge(),document.documentElement.style.height="",document.body.style.height="",R('HTML & body height set to "auto"'),R("Enable public methods"),Q.parentIFrame={autoResize:function(e){return!0===e&&!1===r?(r=!0,pe()):!1===e&&!0===r&&(r=!1,fe("remove"),null!==s&&s.disconnect(),clearInterval(B)),F(0,0,"autoResize",JSON.stringify(r)),r},close:function(){F(0,0,"close")},getId:function(){return w},getPageInfo:function(e){"function"==typeof e?($=e,F(0,0,"pageInfo")):($=function(){},F(0,0,"pageInfoStop"))},moveToAnchor:function(e){h.findTarget(e)},reset:function(){Ie("parentIFrame.reset")},scrollTo:function(e,t){F(t,e,"scrollTo")},scrollToOffset:function(e,t){F(t,e,"scrollToOffset")},sendMessage:function(e,t){F(0,0,"message",JSON.stringify(e),t)},setHeightCalculationMethod:function(e){m=e,he()},setWidthCalculationMethod:function(e){M=e,ge()},setTargetOrigin:function(e){R("Set targetOrigin: "+e),T=e},size:function(e,t){L("size","parentIFrame.size("+((e||"")+(t?","+t:""))+")",e,t)}},!0===v&&(i("mouseenter","Mouse Enter"),i("mouseleave","Mouse Leave")),pe(),h=function(){function n(e){var e=e.getBoundingClientRect(),t={x:window.pageXOffset===a?document.documentElement.scrollLeft:window.pageXOffset,y:window.pageYOffset===a?document.documentElement.scrollTop:window.pageYOffset};return{x:parseInt(e.left,10)+parseInt(t.x,10),y:parseInt(e.top,10)+parseInt(t.y,10)}}function o(e){var e=e.split("#")[1]||e,t=decodeURIComponent(e),t=document.getElementById(t)||document.getElementsByName(t)[0];a===t?(R("In page link (#"+e+") not found in iFrame, so sending to parent"),F(0,0,"inPageLink","#"+e)):(t=n(t=t),R("Moving to in page link (#"+e+") at x: "+t.x+" y: "+t.y),F(t.y,t.x,"scrollToOffset"))}function e(){var e=window.location.hash,t=window.location.href;""!==e&&"#"!==e&&o(t)}function t(){Array.prototype.forEach.call(document.querySelectorAll('a[href^="#"]'),function(e){"#"!==e.getAttribute("href")&&k(e,"click",function(e){e.preventDefault(),o(this.getAttribute("href"))})})}function i(){Array.prototype.forEach&&document.querySelectorAll?(R("Setting up location.hash handlers"),t(),k(window,"hashchange",e),setTimeout(e,l)):x("In page linking not fully supported in this browser! (See README.md for IE8 workaround)")}h.enable?i():R("In page linking not enabled");return{findTarget:o}}(),L("init","Init message from host page"),Z()}function de(e){var t=e.split("Callback");2===t.length&&(this[t="on"+t[0].charAt(0).toUpperCase()+t[0].slice(1)]=this[e],delete this[e],x("Deprecated: '"+e+"' has been renamed '"+t+"'. The old method will be removed in the next major version."))}function le(e,t){a!==t&&""!==t&&"null"!==t&&R("Body "+e+' set to "'+(document.body.style[e]=t)+'"')}function t(n){var e={add:function(e){function t(){L(n.eventName,n.eventType)}ee[e]=t,k(window,e,t,{passive:!0})},remove:function(e){var t=ee[e];delete ee[e],window.removeEventListener(e,t,!1)}};n.eventNames&&Array.prototype.map?(n.eventName=n.eventNames[0],n.eventNames.map(e[n.method])):e[n.method](n.eventName),R(ue(n.method)+" event listener: "+n.eventType)}function fe(e){t({method:e,eventType:"Animation Start",eventNames:["animationstart","webkitAnimationStart"]}),t({method:e,eventType:"Animation Iteration",eventNames:["animationiteration","webkitAnimationIteration"]}),t({method:e,eventType:"Animation End",eventNames:["animationend","webkitAnimationEnd"]}),t({method:e,eventType:"Input",eventName:"input"}),t({method:e,eventType:"Mouse Up",eventName:"mouseup"}),t({method:e,eventType:"Mouse Down",eventName:"mousedown"}),t({method:e,eventType:"Orientation Change",eventName:"orientationchange"}),t({method:e,eventType:"Print",eventNames:["afterprint","beforeprint"]}),t({method:e,eventType:"Ready State Change",eventName:"readystatechange"}),t({method:e,eventType:"Touch Start",eventName:"touchstart"}),t({method:e,eventType:"Touch End",eventName:"touchend"}),t({method:e,eventType:"Touch Cancel",eventName:"touchcancel"}),t({method:e,eventType:"Transition Start",eventNames:["transitionstart","webkitTransitionStart","MSTransitionStart","oTransitionStart","otransitionstart"]}),t({method:e,eventType:"Transition Iteration",eventNames:["transitioniteration","webkitTransitionIteration","MSTransitionIteration","oTransitionIteration","otransitioniteration"]}),t({method:e,eventType:"Transition End",eventNames:["transitionend","webkitTransitionEnd","MSTransitionEnd","oTransitionEnd","otransitionend"]}),"child"===b&&t({method:e,eventType:"IFrame Resized",eventName:"resize"})}function me(e,t,n,o){return t!==e&&(e in n||(x(e+" is not a valid option for "+o+"CalculationMethod."),e=t),R(o+' calculation method set to "'+e+'"')),e}function he(){m=me(m,n,C,"height")}function ge(){M=me(M,K,z,"width")}function pe(){var e;!0===r?(fe("add"),e=g<0,window.MutationObserver||window.WebKitMutationObserver?e?ve():s=function(){function t(e){function t(e){!1===e.complete&&(R("Attach listeners to "+e.src),e.addEventListener("load",i,!1),e.addEventListener("error",r,!1),u.push(e))}"attributes"===e.type&&"src"===e.attributeName?t(e.target):"childList"===e.type&&Array.prototype.forEach.call(e.target.querySelectorAll("img"),t)}function o(e){R("Remove listeners from "+e.src),e.removeEventListener("load",i,!1),e.removeEventListener("error",r,!1),u.splice(u.indexOf(e),1)}function n(e,t,n){o(e.target),L(t,n+": "+e.target.src)}function i(e){n(e,"imageLoad","Image loaded")}function r(e){n(e,"imageLoadFailed","Image load failed")}function a(e){L("mutationObserver","mutationObserver: "+e[0].target+" "+e[0].type),e.forEach(t)}var u=[],c=window.MutationObserver||window.WebKitMutationObserver,s=function(){var e=document.querySelector("body");return s=new c(a),R("Create body MutationObserver"),s.observe(e,{attributes:!0,attributeOldValue:!1,characterData:!0,characterDataOldValue:!1,childList:!0,subtree:!0}),s}();return{disconnect:function(){"disconnect"in s&&(R("Disconnect body MutationObserver"),s.disconnect(),u.forEach(o))}}}():(R("MutationObserver not supported in this browser!"),ve())):R("Auto Resize disabled")}function ve(){0!==g&&(R("setInterval: "+g+"ms"),B=setInterval(function(){L("interval","setInterval: "+g)},Math.abs(g)))}function ye(e,t){return t=t||document.body,t=null===(t=document.defaultView.getComputedStyle(t,null))?0:t[e],parseInt(t,10)}function we(e,t){for(var n,o=t.length,i=0,r=ue(e),a=Date.now(),u=0;u<o;u++)i<(n=t[u].getBoundingClientRect()[e]+ye("margin"+r,t[u]))&&(i=n);return a=Date.now()-a,R("Parsed "+o+" HTML elements"),R("Element position calculated in "+a+"ms"),O/2<(a=a)&&R("Event throttle increased to "+(O=2*a)+"ms"),i}function e(e){return[e.bodyOffset(),e.bodyScroll(),e.documentElementOffset(),e.documentElementScroll()]}function be(e,t){var n=document.querySelectorAll("["+t+"]");return 0===n.length&&(x("No tagged elements ("+t+") found on page"),document.querySelectorAll("body *")),we(e,n)}function Te(){return document.querySelectorAll("body *")}function Ee(e,t,n,o){function i(){e in{init:1,interval:1,size:1}||!(m in U||d&&M in U)?e in{interval:1}||R("No change in size detected"):Ie(t)}function r(e,t){return!(Math.abs(e-t)<=E)}n=a===n?C[m]():n,o=a===o?z[M]():o,r(f,n)||d&&r(S,o)||"init"===e?(Se(),F(f=n,S=o,e)):i()}function Oe(){A=Date.now(),N=null,ie=oe.apply(o,I),N||(o=I=null)}function L(e,t,n,o){i&&e in j?R("Trigger event cancelled: "+e):(e in{reset:1,resetPage:1,init:1}||R("Trigger event: "+t),("init"===e?Ee:re)(e,t,n,o))}function Se(){i||(i=!0,R("Trigger event lock on")),clearTimeout(Y),Y=setTimeout(function(){i=!1,R("Trigger event lock off"),R("--")},l)}function Me(e){f=C[m](),S=z[M](),F(f,S,e)}function Ie(e){var t=m;m=n,R("Reset trigger event: "+e),Se(),Me("reset"),m=t}function F(e,t,n,o,i){!0===V&&(a===i?i=T:R("Message targetOrigin: "+i),R("Sending message to host page ("+(e=w+":"+(e+":"+t)+":"+n+(a===o?"":":"+o))+")"),X.postMessage(y+e,i))}function Ne(){"loading"!==document.readyState&&window.parent.postMessage("[iFrameResizerChild]Ready","*")}}();
10
9
  //# sourceMappingURL=iframeResizer.contentWindow.map
@@ -21,15 +21,15 @@
21
21
  msgIdLen = msgId.length,
22
22
  pagePosition = null,
23
23
  requestAnimationFrame = window.requestAnimationFrame,
24
- resetRequiredMethods = {
24
+ resetRequiredMethods = Object.freeze({
25
25
  max: 1,
26
26
  scroll: 1,
27
27
  bodyScroll: 1,
28
28
  documentElementScroll: 1
29
- },
29
+ }),
30
30
  settings = {},
31
31
  timer = null,
32
- defaults = {
32
+ defaults = Object.freeze({
33
33
  autoResize: true,
34
34
  bodyBackground: null,
35
35
  bodyMargin: null,
@@ -68,7 +68,7 @@
68
68
  onScroll: function () {
69
69
  return true
70
70
  }
71
- }
71
+ })
72
72
 
73
73
  function getMutationObserver() {
74
74
  return (
@@ -95,13 +95,13 @@
95
95
  requestAnimationFrame = window[vendors[x] + 'RequestAnimationFrame']
96
96
  }
97
97
 
98
- if (!requestAnimationFrame) {
99
- log('setup', 'RequestAnimationFrame not supported')
100
- } else {
98
+ if (requestAnimationFrame) {
101
99
  // Firefox extension content-scripts have a globalThis object that is not the same as window.
102
100
  // Binding `requestAnimationFrame` to window allows the function to work and prevents errors
103
101
  // being thrown when run in that context, and should be a no-op in every other context.
104
102
  requestAnimationFrame = requestAnimationFrame.bind(window)
103
+ } else {
104
+ log('setup', 'RequestAnimationFrame not supported')
105
105
  }
106
106
  }
107
107
 
@@ -160,7 +160,7 @@
160
160
  }
161
161
 
162
162
  function processMsg() {
163
- var data = msg.substr(msgIdLen).split(':')
163
+ var data = msg.slice(msgIdLen).split(':')
164
164
  var height = data[1] ? parseInt(data[1], 10) : 0
165
165
  var iframe = settings[data[0]] && settings[data[0]].iframe
166
166
  var compStyle = getComputedStyle(iframe)
@@ -269,14 +269,14 @@
269
269
 
270
270
  function isMessageForUs() {
271
271
  return (
272
- msgId === ('' + msg).substr(0, msgIdLen) &&
273
- msg.substr(msgIdLen).split(':')[0] in settings
272
+ msgId === ('' + msg).slice(0, msgIdLen) &&
273
+ msg.slice(msgIdLen).split(':')[0] in settings
274
274
  ) // ''+Protects against non-string msg
275
275
  }
276
276
 
277
277
  function isMessageFromMetaParent() {
278
278
  // Test if this message is from a parent above us. This is an ugly test, however, updating
279
- // the message format would break backwards compatibity.
279
+ // the message format would break backwards compatibility.
280
280
  var retCode = messageData.type in { true: 1, false: 1, undefined: 1 }
281
281
 
282
282
  if (retCode) {
@@ -287,7 +287,7 @@
287
287
  }
288
288
 
289
289
  function getMsgBody(offset) {
290
- return msg.substr(msg.indexOf(':') + msgHeaderLen + offset)
290
+ return msg.slice(msg.indexOf(':') + msgHeaderLen + offset)
291
291
  }
292
292
 
293
293
  function forwardMsgFromIFrame(msgBody) {
@@ -445,18 +445,18 @@
445
445
  ')'
446
446
  )
447
447
 
448
- if (window.top !== window.self) {
449
- scrollParent()
450
- } else {
448
+ if (window.top === window.self) {
451
449
  reposition()
450
+ } else {
451
+ scrollParent()
452
452
  }
453
453
  }
454
454
 
455
455
  function scrollTo() {
456
- if (false !== on('onScroll', pagePosition)) {
457
- setPagePosition(iframeId)
458
- } else {
456
+ if (false === on('onScroll', pagePosition)) {
459
457
  unsetPagePosition()
458
+ } else {
459
+ setPagePosition(iframeId)
460
460
  }
461
461
  }
462
462
 
@@ -503,10 +503,10 @@
503
503
 
504
504
  if (target) {
505
505
  jumpToTarget()
506
- } else if (window.top !== window.self) {
507
- jumpToParent()
508
- } else {
506
+ } else if (window.top === window.self) {
509
507
  log(iframeId, 'In page link #' + hash + ' not found')
508
+ } else {
509
+ jumpToParent()
510
510
  }
511
511
  }
512
512
 
@@ -542,60 +542,72 @@
542
542
  if (settings[iframeId] && settings[iframeId].firstRun) firstRun()
543
543
 
544
544
  switch (messageData.type) {
545
- case 'close':
545
+ case 'close': {
546
546
  closeIFrame(messageData.iframe)
547
547
  break
548
+ }
548
549
 
549
- case 'message':
550
+ case 'message': {
550
551
  forwardMsgFromIFrame(getMsgBody(6))
551
552
  break
553
+ }
552
554
 
553
- case 'mouseenter':
555
+ case 'mouseenter': {
554
556
  onMouse('onMouseEnter')
555
557
  break
558
+ }
556
559
 
557
- case 'mouseleave':
560
+ case 'mouseleave': {
558
561
  onMouse('onMouseLeave')
559
562
  break
563
+ }
560
564
 
561
- case 'autoResize':
565
+ case 'autoResize': {
562
566
  settings[iframeId].autoResize = JSON.parse(getMsgBody(9))
563
567
  break
568
+ }
564
569
 
565
- case 'scrollTo':
570
+ case 'scrollTo': {
566
571
  scrollRequestFromChild(false)
567
572
  break
573
+ }
568
574
 
569
- case 'scrollToOffset':
575
+ case 'scrollToOffset': {
570
576
  scrollRequestFromChild(true)
571
577
  break
578
+ }
572
579
 
573
- case 'pageInfo':
580
+ case 'pageInfo': {
574
581
  sendPageInfoToIframe(
575
582
  settings[iframeId] && settings[iframeId].iframe,
576
583
  iframeId
577
584
  )
578
585
  startPageInfoMonitor()
579
586
  break
587
+ }
580
588
 
581
- case 'pageInfoStop':
589
+ case 'pageInfoStop': {
582
590
  stopPageInfoMonitor()
583
591
  break
592
+ }
584
593
 
585
- case 'inPageLink':
594
+ case 'inPageLink': {
586
595
  findTarget(getMsgBody(9))
587
596
  break
597
+ }
588
598
 
589
- case 'reset':
599
+ case 'reset': {
590
600
  resetIFrame(messageData)
591
601
  break
602
+ }
592
603
 
593
- case 'init':
604
+ case 'init': {
594
605
  resizeIFrame()
595
606
  on('onInit', messageData.iframe)
596
607
  break
608
+ }
597
609
 
598
- default:
610
+ default: {
599
611
  if (
600
612
  Number(messageData.width) === 0 &&
601
613
  Number(messageData.height) === 0
@@ -609,6 +621,7 @@
609
621
  } else {
610
622
  resizeIFrame()
611
623
  }
624
+ }
612
625
  }
613
626
  }
614
627
 
@@ -722,13 +735,13 @@
722
735
  if (null === pagePosition) {
723
736
  pagePosition = {
724
737
  x:
725
- window.pageXOffset !== undefined
726
- ? window.pageXOffset
727
- : document.documentElement.scrollLeft,
738
+ window.pageXOffset === undefined
739
+ ? document.documentElement.scrollLeft
740
+ : window.pageXOffset,
728
741
  y:
729
- window.pageYOffset !== undefined
730
- ? window.pageYOffset
731
- : document.documentElement.scrollTop
742
+ window.pageYOffset === undefined
743
+ ? document.documentElement.scrollTop
744
+ : window.pageYOffset
732
745
  }
733
746
  log(
734
747
  iframeId,
@@ -984,6 +997,10 @@
984
997
  }
985
998
 
986
999
  function ensureHasId(iframeId) {
1000
+ if (typeof iframeId !== 'string') {
1001
+ throw new TypeError('Invaild id for iFrame. Expected String')
1002
+ }
1003
+
987
1004
  if ('' === iframeId) {
988
1005
  // eslint-disable-next-line no-multi-assign
989
1006
  iframe.id = iframeId = newId()
@@ -1012,21 +1029,25 @@
1012
1029
  ? 'hidden'
1013
1030
  : 'auto'
1014
1031
  switch (settings[iframeId] && settings[iframeId].scrolling) {
1015
- case 'omit':
1032
+ case 'omit': {
1016
1033
  break
1034
+ }
1017
1035
 
1018
- case true:
1036
+ case true: {
1019
1037
  iframe.scrolling = 'yes'
1020
1038
  break
1039
+ }
1021
1040
 
1022
- case false:
1041
+ case false: {
1023
1042
  iframe.scrolling = 'no'
1024
1043
  break
1044
+ }
1025
1045
 
1026
- default:
1046
+ default: {
1027
1047
  iframe.scrolling = settings[iframeId]
1028
1048
  ? settings[iframeId].scrolling
1029
1049
  : 'no'
1050
+ }
1030
1051
  }
1031
1052
  }
1032
1053
 
@@ -1184,11 +1205,11 @@
1184
1205
 
1185
1206
  function processOptions(options) {
1186
1207
  options = options || {}
1187
- settings[iframeId] = {
1188
- firstRun: true,
1189
- iframe: iframe,
1190
- remoteHost: iframe.src && iframe.src.split('/').slice(0, 3).join('/')
1191
- }
1208
+
1209
+ settings[iframeId] = Object.create(null) // Protect against prototype attacks
1210
+ settings[iframeId].iframe = iframe
1211
+ settings[iframeId].firstRun = true
1212
+ settings[iframeId].remoteHost = iframe.src && iframe.src.split('/').slice(0, 3).join('/')
1192
1213
 
1193
1214
  checkOptions(options)
1194
1215
  Object.keys(options).forEach(depricate, options)
@@ -1208,15 +1229,15 @@
1208
1229
 
1209
1230
  var iframeId = ensureHasId(iframe.id)
1210
1231
 
1211
- if (!beenHere()) {
1232
+ if (beenHere()) {
1233
+ warn(iframeId, 'Ignored iFrame, already setup.')
1234
+ } else {
1212
1235
  processOptions(options)
1213
1236
  setScrolling()
1214
1237
  setLimits()
1215
1238
  setupBodyMarginValues()
1216
1239
  init(createOutgoingMsg(iframeId))
1217
1240
  setupIFrameObject()
1218
- } else {
1219
- warn(iframeId, 'Ignored iFrame, already setup.')
1220
1241
  }
1221
1242
  }
1222
1243
 
@@ -1317,11 +1338,11 @@
1317
1338
  /* istanbul ignore next */
1318
1339
  function tabVisible() {
1319
1340
  function resize() {
1320
- sendTriggerMsg('Tab Visable', 'resize')
1341
+ sendTriggerMsg('Tab Visible', 'resize')
1321
1342
  }
1322
1343
 
1323
1344
  if ('hidden' !== document.visibilityState) {
1324
- log('document', 'Trigger event: Visiblity change')
1345
+ log('document', 'Trigger event: Visibility change')
1325
1346
  debouce(resize, 16)
1326
1347
  }
1327
1348
  }
@@ -1394,19 +1415,22 @@
1394
1415
 
1395
1416
  switch (typeof target) {
1396
1417
  case 'undefined':
1397
- case 'string':
1418
+ case 'string': {
1398
1419
  Array.prototype.forEach.call(
1399
1420
  document.querySelectorAll(target || 'iframe'),
1400
1421
  init.bind(undefined, options)
1401
1422
  )
1402
1423
  break
1424
+ }
1403
1425
 
1404
- case 'object':
1426
+ case 'object': {
1405
1427
  init(options, target)
1406
1428
  break
1429
+ }
1407
1430
 
1408
- default:
1431
+ default: {
1409
1432
  throw new TypeError('Unexpected data type (' + typeof target + ')')
1433
+ }
1410
1434
  }
1411
1435
 
1412
1436
  return iFrames
@@ -1427,7 +1451,7 @@
1427
1451
  }
1428
1452
  }
1429
1453
 
1430
- if (window.jQuery) {
1454
+ if (window.jQuery !== undefined) {
1431
1455
  createJQueryPublicMethod(window.jQuery)
1432
1456
  }
1433
1457
 
@@ -1 +1 @@
1
- {"version":3,"file":"iframeResizer.min.js","sources":["iframeResizer.js"],"names":["undefined","count","logEnabled","hiddenCheckEnabled","msgHeaderLen","msgId","msgIdLen","pagePosition","requestAnimationFrame","resetRequiredMethods","settings","timer","defaults","frameTimer","getMutationObserver","window","MutationObserver","WebKitMutationObserver","MozMutationObserver","addEventListener","el","evt","func","removeEventListener","formatLogHeader","iframeId","retStr","top","self","parentIFrame","getId","isLogEnabled","log","msg","output","info","warn","type","enabled","console","iFrameListener","event","resizeIFrame","ensureInRange","syncResize","setSize","messageData","setPagePosition","on","processMsg","data","substr","split","height","parseInt","iframe","compStyle","getComputedStyle","id","boxSizing","paddingTop","bot","paddingBottom","getPaddingEnds","borderTopWidth","borderBottomWidth","getBorderEnds","width","Dimension","max","Number","min","dimension","toLowerCase","size","isMessageFromIFrame","checkAllowedOrigin","checkOrigin","constructor","Array","i","retCode","length","origin","checkList","remoteHost","Error","getMsgBody","offset","indexOf","sendPageInfoToIframe","fn","time","frameId","bodyPosition","iFramePosition","trigger","document","body","getBoundingClientRect","JSON","stringify","iframeHeight","iframeWidth","clientHeight","Math","documentElement","innerHeight","clientWidth","innerWidth","offsetTop","offsetLeft","left","scrollTop","pageYOffset","scrollLeft","pageXOffset","documentHeight","documentWidth","windowHeight","windowWidth","setTimeout","getElementPosition","target","getPagePosition","x","floor","y","scrollRequestFromChild","addOffset","newPosition","scrollTo","unsetPagePosition","findTarget","location","jumpPosition","hash","hashData","decodeURIComponent","getElementById","getElementsByName","moveToAnchor","onMouse","mousePos","screenX","screenY","funcName","val","chkEvent","actionMsg","firstRun","closeIFrame","msgBody","message","parse","autoResize","setListener","stopPageInfo","stop","resetIFrame","sendPageInfo","forEach","retBool","createOutgoingMsg","iFrameReadyMsgReceived","loaded","true","false","retVal","TypeError","removeIframeListeners","parentNode","removeChild","error","chkZero","checkIFrames","Object","keys","key","chkDimension","settingId","style","offsetParent","mutationObserved","mutations","debouce","querySelector","observe","attributes","attributeOldValue","characterData","characterDataOldValue","childList","subtree","createMutationObserver","processDimension","sizeHeight","sizeWidth","doNotSync","jasmine","calleeMsg","noResponseWarning","chkAndSend","contentWindow","targetOrigin","postMessage","warnOnNoResponse","warningTimeout","msgTimeout","errorShown","bodyMarginV1","interval","enablePublicMethods","bodyMargin","heightCalculationMethod","bodyBackground","bodyPadding","tolerance","inPageLinks","resizeFrom","widthCalculationMethod","mouseEvents","setupIFrame","options","init","mutation","prototype","slice","call","removedNodes","removedNode","resetRequertMethod","depricate","splitName","this","name","charAt","toUpperCase","processOptions","src","join","checkOptions","option","hasOwnProperty","copyOptions","match","addStyle","styleValue","Infinity","chkMinMax","scrolling","overflow","setScrolling","iFrameResizer","close","bind","removeListeners","resize","anchor","sendMessage","tabVisible","visibilityState","sendTriggerMsg","eventName","setupEventListeners","factory","element","tagName","chkType","iFrames","push","vendors","setupRequestAnimationFrame","querySelectorAll","createJQueryPublicMethod","$","iFrameResize","filter","each","index","end","scroll","bodyScroll","documentElementScroll","maxHeight","maxWidth","minHeight","minWidth","onClose","onClosed","onInit","onMessage","onMouseEnter","onMouseLeave","onResized","onScroll","jQuery","define","amd","module","exports"],"mappings":"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"}
1
+ {"version":3,"file":"iframeResizer.min.js","sources":["iframeResizer.js"],"names":["undefined","count","logEnabled","hiddenCheckEnabled","msgHeaderLen","msgId","msgIdLen","pagePosition","requestAnimationFrame","resetRequiredMethods","settings","timer","defaults","frameTimer","getMutationObserver","window","MutationObserver","WebKitMutationObserver","MozMutationObserver","addEventListener","el","evt","func","removeEventListener","formatLogHeader","iframeId","retStr","top","self","parentIFrame","getId","isLogEnabled","log","msg","output","info","warn","type","enabled","console","iFrameListener","event","resizeIFrame","ensureInRange","syncResize","setSize","messageData","setPagePosition","on","processMsg","data","slice","split","height","parseInt","iframe","compStyle","getComputedStyle","id","boxSizing","paddingTop","bot","paddingBottom","borderTopWidth","borderBottomWidth","width","Dimension","max","Number","min","dimension","toLowerCase","size","isMessageFromIFrame","origin","checkOrigin","constructor","Array","checkSingle","remoteHost","i","retCode","length","Error","getMsgBody","offset","indexOf","sendPageInfoToIframe","fn","time","frameId","bodyPosition","iFramePosition","trigger","document","body","getBoundingClientRect","JSON","stringify","iframeHeight","iframeWidth","clientHeight","Math","documentElement","innerHeight","clientWidth","innerWidth","offsetTop","offsetLeft","left","scrollTop","pageYOffset","scrollLeft","pageXOffset","documentHeight","documentWidth","windowHeight","windowWidth","setTimeout","getElementPosition","target","getPagePosition","x","floor","y","scrollRequestFromChild","addOffset","newPosition","scrollTo","unsetPagePosition","findTarget","location","hash","hashData","decodeURIComponent","getElementById","getElementsByName","jumpPosition","moveToAnchor","onMouse","mousePos","screenX","screenY","funcName","val","chkEvent","actionMsg","firstRun","closeIFrame","msgBody","message","parse","autoResize","setListener","stopPageInfo","stop","resetIFrame","sendPageInfo","forEach","createOutgoingMsg","loaded","true","false","retBool","retVal","TypeError","removeIframeListeners","parentNode","removeChild","error","chkZero","checkIFrames","Object","keys","key","chkDimension","settingId","style","offsetParent","mutationObserved","mutations","debouce","querySelector","observe","attributes","attributeOldValue","characterData","characterDataOldValue","childList","subtree","processDimension","sizeHeight","sizeWidth","doNotSync","jasmine","calleeMsg","noResponseWarning","chkAndSend","contentWindow","targetOrigin","postMessage","warnOnNoResponse","warningTimeout","msgTimeout","errorShown","bodyMarginV1","interval","enablePublicMethods","bodyMargin","heightCalculationMethod","bodyBackground","bodyPadding","tolerance","inPageLinks","resizeFrom","widthCalculationMethod","mouseEvents","setupIFrame","options","init","mutation","prototype","call","removedNodes","removedNode","resetRequertMethod","depricate","splitName","this","name","charAt","toUpperCase","processOptions","create","src","join","copyOptions","option","hasOwnProperty","match","scrolling","overflow","chkMinMax","addStyle","iFrameResizer","close","bind","removeListeners","resize","anchor","sendMessage","styleValue","Infinity","tabVisible","visibilityState","sendTriggerMsg","eventName","setupEventListeners","factory","element","tagName","iFrames","push","vendors","querySelectorAll","createJQueryPublicMethod","$","iFrameResize","filter","each","index","end","freeze","scroll","bodyScroll","documentElementScroll","maxHeight","maxWidth","minHeight","minWidth","onClose","onClosed","onInit","onMessage","onMouseEnter","onMouseLeave","onResized","onScroll","jQuery","define","amd","module","exports"],"mappings":"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"}
@@ -1,9 +1,8 @@
1
- /*! iFrame Resizer (iframeSizer.min.js ) - v4.3.2 - 2021-04-26
1
+ /*! iFrame Resizer (iframeSizer.min.js ) - v4.3.4 - 2023-02-18
2
2
  * Desc: Force cross domain iframes to size to content.
3
3
  * Requires: iframeResizer.contentWindow.min.js to be loaded into the target frame.
4
- * Copyright: (c) 2021 David J. Bradshaw - dave@bradshaw.net
4
+ * Copyright: (c) 2023 David J. Bradshaw - dave@bradshaw.net
5
5
  * License: MIT
6
6
  */
7
-
8
- !function(u){var f,l,a,x,M,I,k,r,m,F,t,g,z;function h(){return window.MutationObserver||window.WebKitMutationObserver||window.MozMutationObserver}function O(e,n,t){e.addEventListener(n,t,!1)}function R(e,n,t){e.removeEventListener(n,t,!1)}function o(e){return M+"["+(e="Host page: "+(n=e),e=window.top!==window.self?window.parentIFrame&&window.parentIFrame.getId?window.parentIFrame.getId()+": "+n:"Nested host page: "+n:e)+"]";var n}function i(e){return F[e]?F[e].log:l}function T(e,n){s("log",e,n,i(e))}function E(e,n){s("info",e,n,i(e))}function N(e,n){s("warn",e,n,!0)}function s(e,n,t,i){!0===i&&"object"==typeof window.console&&console[e](o(n),t)}function e(n){function t(){i("Height"),i("Width"),L(function(){A(y),H(v),l("onResized",y)},y,"init")}function e(){var e=b.substr(I).split(":"),n=e[1]?parseInt(e[1],10):0,t=F[e[0]]&&F[e[0]].iframe,i=getComputedStyle(t);return{iframe:t,id:e[0],height:n+function(e){if("border-box"!==e.boxSizing)return 0;var n=e.paddingTop?parseInt(e.paddingTop,10):0,e=e.paddingBottom?parseInt(e.paddingBottom,10):0;return n+e}(i)+function(e){if("border-box"!==e.boxSizing)return 0;var n=e.borderTopWidth?parseInt(e.borderTopWidth,10):0,e=e.borderBottomWidth?parseInt(e.borderBottomWidth,10):0;return n+e}(i),width:e[2],type:e[3]}}function i(e){var n=Number(F[v]["max"+e]),t=Number(F[v]["min"+e]),i=e.toLowerCase(),e=Number(y[i]);T(v,"Checking "+i+" is in range "+t+"-"+n),e<t&&(e=t,T(v,"Set "+i+" to min value")),n<e&&(e=n,T(v,"Set "+i+" to max value")),y[i]=""+e}function o(){function e(){return i.constructor===Array?function(){var e=0,n=!1;for(T(v,"Checking connection is from allowed list of origins: "+i);e<i.length;e++)if(i[e]===t){n=!0;break}return n}():(e=F[v]&&F[v].remoteHost,T(v,"Checking connection is from: "+e),t===e);var e}var t=n.origin,i=F[v]&&F[v].checkOrigin;if(i&&""+t!="null"&&!e())throw new Error("Unexpected message received from: "+t+" for "+y.iframe.id+". Message was: "+n.data+". This error can be disabled by setting the checkOrigin: false option or by providing of array of trusted domains.");return 1}function a(e){return b.substr(b.indexOf(":")+x+e)}function s(t,i){var e,n,o;e=function(){var e,n;B("Send Page Info","pageInfo:"+(e=document.body.getBoundingClientRect(),n=y.iframe.getBoundingClientRect(),JSON.stringify({iframeHeight:n.height,iframeWidth:n.width,clientHeight:Math.max(document.documentElement.clientHeight,window.innerHeight||0),clientWidth:Math.max(document.documentElement.clientWidth,window.innerWidth||0),offsetTop:parseInt(n.top-e.top,10),offsetLeft:parseInt(n.left-e.left,10),scrollTop:window.pageYOffset,scrollLeft:window.pageXOffset,documentHeight:document.documentElement.clientHeight,documentWidth:document.documentElement.clientWidth,windowHeight:window.innerHeight,windowWidth:window.innerWidth})),t,i)},n=32,z[o=i]||(z[o]=setTimeout(function(){z[o]=null,e()},n))}function r(e){e=e.getBoundingClientRect();return S(v),{x:Math.floor(Number(e.left)+Number(k.x)),y:Math.floor(Number(e.top)+Number(k.y))}}function d(e){var n=e?r(y.iframe):{x:0,y:0},t={x:Number(y.width)+n.x,y:Number(y.height)+n.y};T(v,"Reposition requested from iFrame (offset x:"+n.x+" y:"+n.y+")"),window.top!==window.self?window.parentIFrame?window.parentIFrame["scrollTo"+(e?"Offset":"")](t.x,t.y):N(v,"Unable to scroll to requested position, window.parentIFrame not found"):(k=t,c(),T(v,"--"))}function c(){!1!==l("onScroll",k)?H(v):j()}function u(e){var n,t=e.split("#")[1]||"",e=decodeURIComponent(t),i=document.getElementById(e)||document.getElementsByName(e)[0];i?(n=r(i),T(v,"Moving to in page link (#"+t+") at x: "+n.x+" y: "+n.y),k={x:n.x,y:n.y},c(),T(v,"--")):window.top!==window.self?window.parentIFrame?window.parentIFrame.moveToAnchor(t):T(v,"In page link #"+t+" not found and window.parentIFrame not found"):T(v,"In page link #"+t+" not found")}function f(e){var n,t={};t=0===Number(y.width)&&0===Number(y.height)?{x:(n=a(9).split(":"))[1],y:n[0]}:{x:y.width,y:y.height},l(e,{iframe:y.iframe,screenX:Number(t.x),screenY:Number(t.y),type:y.type})}function l(e,n){return W(v,e,n)}function m(){switch(F[v]&&F[v].firstRun&&F[v]&&(F[v].firstRun=!1),y.type){case"close":C(y.iframe);break;case"message":n=a(6),T(v,"onMessage passed: {iframe: "+y.iframe.id+", message: "+n+"}"),l("onMessage",{iframe:y.iframe,message:JSON.parse(n)}),T(v,"--");break;case"mouseenter":f("onMouseEnter");break;case"mouseleave":f("onMouseLeave");break;case"autoResize":F[v].autoResize=JSON.parse(a(9));break;case"scrollTo":d(!1);break;case"scrollToOffset":d(!0);break;case"pageInfo":s(F[v]&&F[v].iframe,v),r=v,e("Add ",O),F[r]&&(F[r].stopPageInfo=o);break;case"pageInfoStop":F[v]&&F[v].stopPageInfo&&(F[v].stopPageInfo(),delete F[v].stopPageInfo);break;case"inPageLink":u(a(9));break;case"reset":P(y);break;case"init":t(),l("onInit",y.iframe);break;default:0===Number(y.width)&&0===Number(y.height)?N("Unsupported message received ("+y.type+"), this is likely due to the iframe containing a later version of iframe-resizer than the parent page"):t()}function e(n,t){function i(){F[r]?s(F[r].iframe,r):o()}["scroll","resize"].forEach(function(e){T(r,n+e+" listener for sendPageInfo"),t(window,e,i)})}function o(){e("Remove ",R)}var r,n}var g,h,p,w,b=n.data,y={},v=null;"[iFrameResizerChild]Ready"===b?function(){for(var e in F)B("iFrame requested init",q(e),F[e].iframe,e)}():M===(""+b).substr(0,I)&&b.substr(I).split(":")[0]in F?(y=e(),v=y.id,F[v]&&(F[v].loaded=!0),(w=y.type in{true:1,false:1,undefined:1})&&T(v,"Ignoring init message from meta parent page"),!w&&(p=!0,F[h=v]||(p=!1,N(y.type+" No settings for "+h+". Message was: "+b)),p)&&(T(v,"Received: "+b),g=!0,null===y.iframe&&(N(v,"IFrame ("+y.id+") not found"),g=!1),g&&o()&&m())):E(v,"Ignored: "+b)}function W(e,n,t){var i=null,o=null;if(F[e]){if("function"!=typeof(i=F[e][n]))throw new TypeError(n+" on iFrame["+e+"] is not a function");o=i(t)}return o}function p(e){e=e.id;delete F[e]}function C(e){var n=e.id;if(!1!==W(n,"onClose",n)){T(n,"Removing iFrame: "+n);try{e.parentNode&&e.parentNode.removeChild(e)}catch(e){N(e)}W(n,"onClosed",n),T(n,"--"),p(e)}else T(n,"Close iframe cancelled by onClose event")}function S(e){null===k&&T(e,"Get page position: "+(k={x:window.pageXOffset!==u?window.pageXOffset:document.documentElement.scrollLeft,y:window.pageYOffset!==u?window.pageYOffset:document.documentElement.scrollTop}).x+","+k.y)}function H(e){null!==k&&(window.scrollTo(k.x,k.y),T(e,"Set page position: "+k.x+","+k.y),j())}function j(){k=null}function P(e){T(e.id,"Size reset requested by "+("init"===e.type?"host page":"iFrame")),S(e.id),L(function(){A(e),B("reset","reset",e.iframe,e.id)},e,"reset")}function A(o){function t(e){function n(){Object.keys(F).forEach(function(e){function n(e){return"0px"===(F[t]&&F[t].iframe.style[e])}var t;F[t=e]&&null!==F[t].iframe.offsetParent&&(n("height")||n("width"))&&B("Visibility change","resize",F[t].iframe,t)})}function t(e){T("window","Mutation observed: "+e[0].target+" "+e[0].type),c(n,16)}var i;a||"0"!==o[e]||(a=!0,T(r,"Hidden iFrame detected, creating visibility listener"),(i=h())&&function(){var e=document.querySelector("body");new i(t).observe(e,{attributes:!0,attributeOldValue:!1,characterData:!0,characterDataOldValue:!1,childList:!0,subtree:!0})}())}function e(e){var n;n=e,o.id?(o.iframe.style[n]=o[n]+"px",T(o.id,"IFrame ("+r+") "+n+" set to "+o[n]+"px")):T("undefined","messageData id not set"),t(e)}var r=o.iframe.id;F[r]&&(F[r].sizeHeight&&e("height"),F[r].sizeWidth&&e("width"))}function L(e,n,t){t!==n.type&&r&&!window.jasmine?(T(n.id,"Requesting animation frame"),r(e)):e()}function B(n,t,i,o,e){function r(){var e;i&&"contentWindow"in i&&null!==i.contentWindow?(e=F[o]&&F[o].targetOrigin,T(o,"["+n+"] Sending msg to iframe["+o+"] ("+t+") targetOrigin: "+e),i.contentWindow.postMessage(M+t,e)):N(o,"["+n+"] IFrame("+o+") not found")}function a(){e&&F[o]&&F[o].warningTimeout&&(F[o].msgTimeout=setTimeout(function(){!F[o]||F[o].loaded||s||(s=!0,N(o,"IFrame has not responded within "+F[o].warningTimeout/1e3+" seconds. Check iFrameResizer.contentWindow.js has been loaded in iFrame. This message can be ignored if everything is working, or you can set the warningTimeout option to a higher value or zero to suppress this warning."))},F[o].warningTimeout))}var s=!1;o=o||i.id,F[o]&&(r(),a())}function q(e){return e+":"+F[e].bodyMarginV1+":"+F[e].sizeWidth+":"+F[e].log+":"+F[e].interval+":"+F[e].enablePublicMethods+":"+F[e].autoResize+":"+F[e].bodyMargin+":"+F[e].heightCalculationMethod+":"+F[e].bodyBackground+":"+F[e].bodyPadding+":"+F[e].tolerance+":"+F[e].inPageLinks+":"+F[e].resizeFrom+":"+F[e].widthCalculationMethod+":"+F[e].mouseEvents}function d(i,e){function n(t){var e,n=h();n&&(e=n,i.parentNode&&new e(function(e){e.forEach(function(e){Array.prototype.slice.call(e.removedNodes).forEach(function(e){e===i&&C(i)})})}).observe(i.parentNode,{childList:!0})),O(i,"load",function(){var e,n;B("iFrame.onload",t,i,u,!0),e=F[s]&&F[s].firstRun,n=F[s]&&F[s].heightCalculationMethod in m,!e&&n&&P({iframe:i,height:0,width:0,type:"init"})}),B("init",t,i,u,!0)}function t(e){var n=e.split("Callback");2===n.length&&(this[n="on"+n[0].charAt(0).toUpperCase()+n[0].slice(1)]=this[e],delete this[e],N(s,"Deprecated: '"+e+"' has been renamed '"+n+"'. The old method will be removed in the next major version."))}function o(e){e=e||{},F[s]={firstRun:!0,iframe:i,remoteHost:i.src&&i.src.split("/").slice(0,3).join("/")},function(e){if("object"!=typeof e)throw new TypeError("Options is not an object")}(e),Object.keys(e).forEach(t,e),function(e){for(var n in g)Object.prototype.hasOwnProperty.call(g,n)&&(F[s][n]=(Object.prototype.hasOwnProperty.call(e,n)?e:g)[n])}(e),F[s]&&(F[s].targetOrigin=!0===F[s].checkOrigin?""===(e=F[s].remoteHost)||null!==e.match(/^(about:blank|javascript:|file:\/\/)/)?"*":e:"*")}var r,a,s=(""===(r=i.id)&&(i.id=(a=e&&e.id||g.id+f++,null!==document.getElementById(a)&&(a+=f++),r=a),l=(e||{}).log,T(r,"Added missing iframe ID: "+r+" ("+i.src+")")),r);function d(e){var n=F[s][e];1/0!==n&&0!==n&&(i.style[e]="number"==typeof n?n+"px":n,T(s,"Set "+e+" = "+i.style[e]))}function c(e){if(F[s]["min"+e]>F[s]["max"+e])throw new Error("Value for min"+e+" can not be greater than max"+e)}s in F&&"iFrameResizer"in i?N(s,"Ignored iFrame, already setup."):(o(e),function(){switch(T(s,"IFrame scrolling "+(F[s]&&F[s].scrolling?"enabled":"disabled")+" for "+s),i.style.overflow=!1===(F[s]&&F[s].scrolling)?"hidden":"auto",F[s]&&F[s].scrolling){case"omit":break;case!0:i.scrolling="yes";break;case!1:i.scrolling="no";break;default:i.scrolling=F[s]?F[s].scrolling:"no"}}(),c("Height"),c("Width"),d("maxHeight"),d("minHeight"),d("maxWidth"),d("minWidth"),"number"!=typeof(F[s]&&F[s].bodyMargin)&&"0"!==(F[s]&&F[s].bodyMargin)||(F[s].bodyMarginV1=F[s].bodyMargin,F[s].bodyMargin=F[s].bodyMargin+"px"),n(q(s)),F[s]&&(F[s].iframe.iFrameResizer={close:C.bind(null,F[s].iframe),removeListeners:p.bind(null,F[s].iframe),resize:B.bind(null,"Window resize","resize",F[s].iframe),moveToAnchor:function(e){B("Move to anchor","moveToAnchor:"+e,F[s].iframe,s)},sendMessage:function(e){B("Send Message","message:"+(e=JSON.stringify(e)),F[s].iframe,s)}}))}function c(e,n){null===t&&(t=setTimeout(function(){t=null,e()},n))}function n(){"hidden"!==document.visibilityState&&(T("document","Trigger event: Visiblity change"),c(function(){w("Tab Visable","resize")},16))}function w(t,i){Object.keys(F).forEach(function(e){var n;F[n=e]&&"parent"===F[n].resizeFrom&&F[n].autoResize&&!F[n].firstRun&&B(t,i,F[e].iframe,e)})}function b(){O(window,"message",e),O(window,"resize",function(){var e;T("window","Trigger event: "+(e="resize")),c(function(){w("Window "+e,"resize")},16)}),O(document,"visibilitychange",n),O(document,"-webkit-visibilitychange",n)}function y(){function i(e,n){n&&(function(){if(!n.tagName)throw new TypeError("Object is not a valid DOM element");if("IFRAME"!==n.tagName.toUpperCase())throw new TypeError("Expected <IFRAME> tag, found <"+n.tagName+">")}(),d(n,e),o.push(n))}var o;return function(){for(var e=["moz","webkit","o","ms"],n=0;n<e.length&&!r;n+=1)r=window[e[n]+"RequestAnimationFrame"];r?r=r.bind(window):T("setup","RequestAnimationFrame not supported")}(),b(),function(e,n){var t;switch(o=[],(t=e)&&t.enablePublicMethods&&N("enablePublicMethods option has been removed, public methods are now always available in the iFrame"),typeof n){case"undefined":case"string":Array.prototype.forEach.call(document.querySelectorAll(n||"iframe"),i.bind(u,e));break;case"object":i(e,n);break;default:throw new TypeError("Unexpected data type ("+typeof n+")")}return o}}function v(e){e.fn?e.fn.iFrameResize||(e.fn.iFrameResize=function(t){return this.filter("iframe").each(function(e,n){d(n,t)}).end()}):E("","Unable to bind to jQuery, it is not fully loaded.")}"undefined"!=typeof window&&(x="message".length,I=(M="[iFrameSizer]").length,r=window.requestAnimationFrame,g={autoResize:!(t=k=null),bodyBackground:null,bodyMargin:null,bodyMarginV1:8,bodyPadding:null,checkOrigin:!(a=l=!1),inPageLinks:!(F={}),enablePublicMethods:!(f=0),heightCalculationMethod:"bodyOffset",id:"iFrameResizer",interval:32,log:!(m={max:1,scroll:1,bodyScroll:1,documentElementScroll:1}),maxHeight:1/0,maxWidth:1/0,minHeight:0,minWidth:0,mouseEvents:!0,resizeFrom:"parent",scrolling:!1,sizeHeight:!0,sizeWidth:!1,warningTimeout:5e3,tolerance:0,widthCalculationMethod:"scroll",onClose:function(){return!0},onClosed:function(){},onInit:function(){},onMessage:function(){N("onMessage function not defined")},onMouseEnter:function(){},onMouseLeave:function(){},onResized:function(){},onScroll:function(){return!0}},z={},window.jQuery&&v(window.jQuery),"function"==typeof define&&define.amd?define([],y):"object"==typeof module&&"object"==typeof module.exports&&(module.exports=y()),window.iFrameResize=window.iFrameResize||y())}();
7
+ !function(d){var c,u,a,v,x,I,M,r,f,k,i,l,z;function m(){return window.MutationObserver||window.WebKitMutationObserver||window.MozMutationObserver}function F(e,n,i){e.addEventListener(n,i,!1)}function B(e,n,i){e.removeEventListener(n,i,!1)}function p(e){return x+"["+(n="Host page: "+(e=e),n=window.top!==window.self?window.parentIFrame&&window.parentIFrame.getId?window.parentIFrame.getId()+": "+e:"Nested host page: "+e:n)+"]";var n}function t(e){return k[e]?k[e].log:u}function O(e,n){o("log",e,n,t(e))}function E(e,n){o("info",e,n,t(e))}function R(e,n){o("warn",e,n,!0)}function o(e,n,i,t){!0===t&&"object"==typeof window.console&&console[e](p(n),i)}function w(e){function i(){t("Height"),t("Width"),P(function(){H(w),C(b),l("onResized",w)},w,"init")}function n(){var e=p.slice(I).split(":"),n=e[1]?parseInt(e[1],10):0,i=k[e[0]]&&k[e[0]].iframe,t=getComputedStyle(i);return{iframe:i,id:e[0],height:n+function(e){if("border-box"!==e.boxSizing)return 0;var n=e.paddingTop?parseInt(e.paddingTop,10):0,e=e.paddingBottom?parseInt(e.paddingBottom,10):0;return n+e}(t)+function(e){if("border-box"!==e.boxSizing)return 0;var n=e.borderTopWidth?parseInt(e.borderTopWidth,10):0,e=e.borderBottomWidth?parseInt(e.borderBottomWidth,10):0;return n+e}(t),width:e[2],type:e[3]}}function t(e){var n=Number(k[b]["max"+e]),i=Number(k[b]["min"+e]),e=e.toLowerCase(),t=Number(w[e]);O(b,"Checking "+e+" is in range "+i+"-"+n),t<i&&(t=i,O(b,"Set "+e+" to min value")),n<t&&(t=n,O(b,"Set "+e+" to max value")),w[e]=""+t}function o(){var t=e.origin,o=k[b]&&k[b].checkOrigin;if(o&&""+t!="null"&&!function(){if(o.constructor!==Array)return e=k[b]&&k[b].remoteHost,O(b,"Checking connection is from: "+e),t===e;var e,n=0,i=!1;for(O(b,"Checking connection is from allowed list of origins: "+o);n<o.length;n++)if(o[n]===t){i=!0;break}return i}())throw new Error("Unexpected message received from: "+t+" for "+w.iframe.id+". Message was: "+e.data+". This error can be disabled by setting the checkOrigin: false option or by providing of array of trusted domains.");return 1}function a(e){return p.slice(p.indexOf(":")+v+e)}function s(i,t){var e,n,o;e=function(){var e,n;A("Send Page Info","pageInfo:"+(e=document.body.getBoundingClientRect(),n=w.iframe.getBoundingClientRect(),JSON.stringify({iframeHeight:n.height,iframeWidth:n.width,clientHeight:Math.max(document.documentElement.clientHeight,window.innerHeight||0),clientWidth:Math.max(document.documentElement.clientWidth,window.innerWidth||0),offsetTop:parseInt(n.top-e.top,10),offsetLeft:parseInt(n.left-e.left,10),scrollTop:window.pageYOffset,scrollLeft:window.pageXOffset,documentHeight:document.documentElement.clientHeight,documentWidth:document.documentElement.clientWidth,windowHeight:window.innerHeight,windowWidth:window.innerWidth})),i,t)},n=32,z[o=t]||(z[o]=setTimeout(function(){z[o]=null,e()},n))}function r(e){e=e.getBoundingClientRect();return W(b),{x:Math.floor(Number(e.left)+Number(M.x)),y:Math.floor(Number(e.top)+Number(M.y))}}function d(e){var n=e?r(w.iframe):{x:0,y:0},i={x:Number(w.width)+n.x,y:Number(w.height)+n.y};O(b,"Reposition requested from iFrame (offset x:"+n.x+" y:"+n.y+")"),window.top===window.self?(M=i,c(),O(b,"--")):window.parentIFrame?window.parentIFrame["scrollTo"+(e?"Offset":"")](i.x,i.y):R(b,"Unable to scroll to requested position, window.parentIFrame not found")}function c(){!1===l("onScroll",M)?S():C(b)}function u(e){var e=e.split("#")[1]||"",n=decodeURIComponent(e),n=document.getElementById(n)||document.getElementsByName(n)[0];n?(n=r(n),O(b,"Moving to in page link (#"+e+") at x: "+n.x+" y: "+n.y),M={x:n.x,y:n.y},c(),O(b,"--")):window.top===window.self?O(b,"In page link #"+e+" not found"):window.parentIFrame?window.parentIFrame.moveToAnchor(e):O(b,"In page link #"+e+" not found and window.parentIFrame not found")}function f(e){var n,i={};i=0===Number(w.width)&&0===Number(w.height)?{x:(n=a(9).split(":"))[1],y:n[0]}:{x:w.width,y:w.height},l(e,{iframe:w.iframe,screenX:Number(i.x),screenY:Number(i.y),type:w.type})}function l(e,n){return T(b,e,n)}function m(){switch(k[b]&&k[b].firstRun&&k[b]&&(k[b].firstRun=!1),w.type){case"close":N(w.iframe);break;case"message":n=a(6),O(b,"onMessage passed: {iframe: "+w.iframe.id+", message: "+n+"}"),l("onMessage",{iframe:w.iframe,message:JSON.parse(n)}),O(b,"--");break;case"mouseenter":f("onMouseEnter");break;case"mouseleave":f("onMouseLeave");break;case"autoResize":k[b].autoResize=JSON.parse(a(9));break;case"scrollTo":d(!1);break;case"scrollToOffset":d(!0);break;case"pageInfo":s(k[b]&&k[b].iframe,b),r=b,e("Add ",F),k[r]&&(k[r].stopPageInfo=o);break;case"pageInfoStop":k[b]&&k[b].stopPageInfo&&(k[b].stopPageInfo(),delete k[b].stopPageInfo);break;case"inPageLink":u(a(9));break;case"reset":j(w);break;case"init":i(),l("onInit",w.iframe);break;default:0===Number(w.width)&&0===Number(w.height)?R("Unsupported message received ("+w.type+"), this is likely due to the iframe containing a later version of iframe-resizer than the parent page"):i()}function e(n,i){function t(){k[r]?s(k[r].iframe,r):o()}["scroll","resize"].forEach(function(e){O(r,n+e+" listener for sendPageInfo"),i(window,e,t)})}function o(){e("Remove ",B)}var r,n}var g,h,p=e.data,w={},b=null;if("[iFrameResizerChild]Ready"===p)for(var y in k)A("iFrame requested init",L(y),k[y].iframe,y);else x===(""+p).slice(0,I)&&p.slice(I).split(":")[0]in k?(w=n(),b=w.id,k[b]&&(k[b].loaded=!0),(h=w.type in{true:1,false:1,undefined:1})&&O(b,"Ignoring init message from meta parent page"),!h&&(h=!0,k[g=b]||(h=!1,R(w.type+" No settings for "+g+". Message was: "+p)),h)&&(O(b,"Received: "+p),g=!0,null===w.iframe&&(R(b,"IFrame ("+w.id+") not found"),g=!1),g&&o()&&m())):E(b,"Ignored: "+p)}function T(e,n,i){var t=null,o=null;if(k[e]){if("function"!=typeof(t=k[e][n]))throw new TypeError(n+" on iFrame["+e+"] is not a function");o=t(i)}return o}function g(e){e=e.id;delete k[e]}function N(e){var n=e.id;if(!1===T(n,"onClose",n))O(n,"Close iframe cancelled by onClose event");else{O(n,"Removing iFrame: "+n);try{e.parentNode&&e.parentNode.removeChild(e)}catch(e){R(e)}T(n,"onClosed",n),O(n,"--"),g(e)}}function W(e){null===M&&O(e,"Get page position: "+(M={x:window.pageXOffset===d?document.documentElement.scrollLeft:window.pageXOffset,y:window.pageYOffset===d?document.documentElement.scrollTop:window.pageYOffset}).x+","+M.y)}function C(e){null!==M&&(window.scrollTo(M.x,M.y),O(e,"Set page position: "+M.x+","+M.y),S())}function S(){M=null}function j(e){O(e.id,"Size reset requested by "+("init"===e.type?"host page":"iFrame")),W(e.id),P(function(){H(e),A("reset","reset",e.iframe,e.id)},e,"reset")}function H(o){function i(e){var n;function i(){Object.keys(k).forEach(function(e){function n(e){return"0px"===(k[i]&&k[i].iframe.style[e])}var i;k[i=e]&&null!==k[i].iframe.offsetParent&&(n("height")||n("width"))&&A("Visibility change","resize",k[i].iframe,i)})}function t(e){O("window","Mutation observed: "+e[0].target+" "+e[0].type),h(i,16)}!a&&"0"===o[e]&&(a=!0,O(r,"Hidden iFrame detected, creating visibility listener"),e=m())&&(n=document.querySelector("body"),new e(t).observe(n,{attributes:!0,attributeOldValue:!1,characterData:!0,characterDataOldValue:!1,childList:!0,subtree:!0}))}function e(e){var n;n=e,o.id?(o.iframe.style[n]=o[n]+"px",O(o.id,"IFrame ("+r+") "+n+" set to "+o[n]+"px")):O("undefined","messageData id not set"),i(e)}var r=o.iframe.id;k[r]&&(k[r].sizeHeight&&e("height"),k[r].sizeWidth)&&e("width")}function P(e,n,i){i!==n.type&&r&&!window.jasmine?(O(n.id,"Requesting animation frame"),r(e)):e()}function A(n,i,t,o,e){function r(){var e;t&&"contentWindow"in t&&null!==t.contentWindow?(e=k[o]&&k[o].targetOrigin,O(o,"["+n+"] Sending msg to iframe["+o+"] ("+i+") targetOrigin: "+e),t.contentWindow.postMessage(x+i,e)):R(o,"["+n+"] IFrame("+o+") not found")}function a(){e&&k[o]&&k[o].warningTimeout&&(k[o].msgTimeout=setTimeout(function(){!k[o]||k[o].loaded||s||(s=!0,R(o,"IFrame has not responded within "+k[o].warningTimeout/1e3+" seconds. Check iFrameResizer.contentWindow.js has been loaded in iFrame. This message can be ignored if everything is working, or you can set the warningTimeout option to a higher value or zero to suppress this warning."))},k[o].warningTimeout))}var s=!1;o=o||t.id,k[o]&&(r(),a())}function L(e){return e+":"+k[e].bodyMarginV1+":"+k[e].sizeWidth+":"+k[e].log+":"+k[e].interval+":"+k[e].enablePublicMethods+":"+k[e].autoResize+":"+k[e].bodyMargin+":"+k[e].heightCalculationMethod+":"+k[e].bodyBackground+":"+k[e].bodyPadding+":"+k[e].tolerance+":"+k[e].inPageLinks+":"+k[e].resizeFrom+":"+k[e].widthCalculationMethod+":"+k[e].mouseEvents}function s(t,i){function e(i){var e=m();e&&(e=e,t.parentNode)&&new e(function(e){e.forEach(function(e){Array.prototype.slice.call(e.removedNodes).forEach(function(e){e===t&&N(t)})})}).observe(t.parentNode,{childList:!0}),F(t,"load",function(){var e,n;A("iFrame.onload",i,t,d,!0),e=k[r]&&k[r].firstRun,n=k[r]&&k[r].heightCalculationMethod in f,!e&&n&&j({iframe:t,height:0,width:0,type:"init"})}),A("init",i,t,d,!0)}function o(e){var n=e.split("Callback");2===n.length&&(this[n="on"+n[0].charAt(0).toUpperCase()+n[0].slice(1)]=this[e],delete this[e],R(r,"Deprecated: '"+e+"' has been renamed '"+n+"'. The old method will be removed in the next major version."))}function n(e){if(e=e||{},k[r]=Object.create(null),k[r].iframe=t,k[r].firstRun=!0,k[r].remoteHost=t.src&&t.src.split("/").slice(0,3).join("/"),"object"!=typeof e)throw new TypeError("Options is not an object");Object.keys(e).forEach(o,e);var n,i=e;for(n in l)Object.prototype.hasOwnProperty.call(l,n)&&(k[r][n]=(Object.prototype.hasOwnProperty.call(i,n)?i:l)[n]);k[r]&&(k[r].targetOrigin=!0!==k[r].checkOrigin||""===(e=k[r].remoteHost)||null!==e.match(/^(about:blank|javascript:|file:\/\/)/)?"*":e)}var r=function(e){if("string"!=typeof e)throw new TypeError("Invaild id for iFrame. Expected String");var n;return""===e&&(t.id=(n=i&&i.id||l.id+c++,null!==document.getElementById(n)&&(n+=c++),e=n),u=(i||{}).log,O(e,"Added missing iframe ID: "+e+" ("+t.src+")")),e}(t.id);if(r in k&&"iFrameResizer"in t)R(r,"Ignored iFrame, already setup.");else{switch(n(i),O(r,"IFrame scrolling "+(k[r]&&k[r].scrolling?"enabled":"disabled")+" for "+r),t.style.overflow=!1===(k[r]&&k[r].scrolling)?"hidden":"auto",k[r]&&k[r].scrolling){case"omit":break;case!0:t.scrolling="yes";break;case!1:t.scrolling="no";break;default:t.scrolling=k[r]?k[r].scrolling:"no"}s("Height"),s("Width"),a("maxHeight"),a("minHeight"),a("maxWidth"),a("minWidth"),"number"!=typeof(k[r]&&k[r].bodyMargin)&&"0"!==(k[r]&&k[r].bodyMargin)||(k[r].bodyMarginV1=k[r].bodyMargin,k[r].bodyMargin=k[r].bodyMargin+"px"),e(L(r)),k[r]&&(k[r].iframe.iFrameResizer={close:N.bind(null,k[r].iframe),removeListeners:g.bind(null,k[r].iframe),resize:A.bind(null,"Window resize","resize",k[r].iframe),moveToAnchor:function(e){A("Move to anchor","moveToAnchor:"+e,k[r].iframe,r)},sendMessage:function(e){A("Send Message","message:"+(e=JSON.stringify(e)),k[r].iframe,r)}})}function a(e){var n=k[r][e];1/0!==n&&0!==n&&(t.style[e]="number"==typeof n?n+"px":n,O(r,"Set "+e+" = "+t.style[e]))}function s(e){if(k[r]["min"+e]>k[r]["max"+e])throw new Error("Value for min"+e+" can not be greater than max"+e)}}function h(e,n){null===i&&(i=setTimeout(function(){i=null,e()},n))}function e(){"hidden"!==document.visibilityState&&(O("document","Trigger event: Visibility change"),h(function(){b("Tab Visible","resize")},16))}function b(i,t){Object.keys(k).forEach(function(e){var n;k[n=e]&&"parent"===k[n].resizeFrom&&k[n].autoResize&&!k[n].firstRun&&A(i,t,k[e].iframe,e)})}function y(){F(window,"message",w),F(window,"resize",function(){var e;O("window","Trigger event: "+(e="resize")),h(function(){b("Window "+e,"resize")},16)}),F(document,"visibilitychange",e),F(document,"-webkit-visibilitychange",e)}function n(){function t(e,n){if(n){if(!n.tagName)throw new TypeError("Object is not a valid DOM element");if("IFRAME"!==n.tagName.toUpperCase())throw new TypeError("Expected <IFRAME> tag, found <"+n.tagName+">");s(n,e),o.push(n)}}for(var o,e=["moz","webkit","o","ms"],n=0;n<e.length&&!r;n+=1)r=window[e[n]+"RequestAnimationFrame"];return r?r=r.bind(window):O("setup","RequestAnimationFrame not supported"),y(),function(e,n){var i;switch(o=[],(i=e)&&i.enablePublicMethods&&R("enablePublicMethods option has been removed, public methods are now always available in the iFrame"),typeof n){case"undefined":case"string":Array.prototype.forEach.call(document.querySelectorAll(n||"iframe"),t.bind(d,e));break;case"object":t(e,n);break;default:throw new TypeError("Unexpected data type ("+typeof n+")")}return o}}function q(e){e.fn?e.fn.iFrameResize||(e.fn.iFrameResize=function(i){return this.filter("iframe").each(function(e,n){s(n,i)}).end()}):E("","Unable to bind to jQuery, it is not fully loaded.")}"undefined"!=typeof window&&(c=0,a=u=!1,v="message".length,I=(x="[iFrameSizer]").length,M=null,r=window.requestAnimationFrame,f=Object.freeze({max:1,scroll:1,bodyScroll:1,documentElementScroll:1}),k={},i=null,l=Object.freeze({autoResize:!0,bodyBackground:null,bodyMargin:null,bodyMarginV1:8,bodyPadding:null,checkOrigin:!0,inPageLinks:!1,enablePublicMethods:!0,heightCalculationMethod:"bodyOffset",id:"iFrameResizer",interval:32,log:!1,maxHeight:1/0,maxWidth:1/0,minHeight:0,minWidth:0,mouseEvents:!0,resizeFrom:"parent",scrolling:!1,sizeHeight:!0,sizeWidth:!1,warningTimeout:5e3,tolerance:0,widthCalculationMethod:"scroll",onClose:function(){return!0},onClosed:function(){},onInit:function(){},onMessage:function(){R("onMessage function not defined")},onMouseEnter:function(){},onMouseLeave:function(){},onResized:function(){},onScroll:function(){return!0}}),z={},window.jQuery!==d&&q(window.jQuery),"function"==typeof define&&define.amd?define([],n):"object"==typeof module&&"object"==typeof module.exports&&(module.exports=n()),window.iFrameResize=window.iFrameResize||n())}();
9
8
  //# sourceMappingURL=iframeResizer.map
package/js/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  var iframeResize = require('./iframeResizer')
2
2
 
3
3
  exports.iframeResize = iframeResize
4
- exports.iframeResizer = iframeResize // Backwards compatability
4
+ exports.iframeResizer = iframeResize // Backwards compatibility
5
5
  exports.iframeResizerContentWindow = require('./iframeResizer.contentWindow')