@knapsack/app
Version:
Build Design Systems on top of knapsack, by Basalt
2 lines • 16.6 kB
JavaScript
(window.webpackJsonp=window.webpackJsonp||[]).push([["vendors~custom-page-KXWAf~pattern-list-page-ms7ii~pattern-view-page-WE7TE~52c920a2"],{"../node_modules/iframe-resizer/js/iframeResizer.js":function(e,n,t){var i,o,r;!function(t){if("undefined"!=typeof window){var a=0,s=!1,c=!1,d="message".length,u="[iFrameSizer]",l=u.length,g=null,f=window.requestAnimationFrame,m={max:1,scroll:1,bodyScroll:1,documentElementScroll:1},p={},h=null,w={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,resizeFrom:"parent",scrolling:!1,sizeHeight:!0,sizeWidth:!1,warningTimeout:5e3,tolerance:0,widthCalculationMethod:"scroll",onClose:function(){return!0},onClosed:function(){},onInit:function(){},onMessage:function(){warn("onMessage function not defined")},onResized:function(){},onScroll:function(){return!0}},b={};window.jQuery&&function createJQueryPublicMethod(e){e.fn?e.fn.iFrameResize||(e.fn.iFrameResize=function $iFrameResizeF(e){return this.filter("iframe").each((function init(n,t){setupIFrame(t,e)})).end()}):info("","Unable to bind to jQuery, it is not fully loaded.")}(window.jQuery),o=[],(r="function"==typeof(i=factory)?i.apply(n,o):i)===t||(e.exports=r),window.iFrameResize=window.iFrameResize||factory()}function getMutationObserver(){return window.MutationObserver||window.WebKitMutationObserver||window.MozMutationObserver}function addEventListener(e,n,t){e.addEventListener(n,t,!1)}function removeEventListener(e,n,t){e.removeEventListener(n,t,!1)}function formatLogHeader(e){return u+"["+function getMyID(e){var n="Host page: "+e;return window.top!==window.self&&(n=window.parentIFrame&&window.parentIFrame.getId?window.parentIFrame.getId()+": "+e:"Nested host page: "+e),n}(e)+"]"}function isLogEnabled(e){return p[e]?p[e].log:s}function log(e,n){output("log",e,n,isLogEnabled(e))}function info(e,n){output("info",e,n,isLogEnabled(e))}function warn(e,n){output("warn",e,n,!0)}function output(e,n,t,i){!0===i&&"object"==typeof window.console&&console[e](formatLogHeader(n),t)}function iFrameListener(e){function resizeIFrame(){ensureInRange("Height"),ensureInRange("Width"),syncResize((function resize(){setSize(t),setPagePosition(i),on("onResized",t)}),t,"init")}function getPaddingEnds(e){return"border-box"!==e.boxSizing?0:(e.paddingTop?parseInt(e.paddingTop,10):0)+(e.paddingBottom?parseInt(e.paddingBottom,10):0)}function getBorderEnds(e){return"border-box"!==e.boxSizing?0:(e.borderTopWidth?parseInt(e.borderTopWidth,10):0)+(e.borderBottomWidth?parseInt(e.borderBottomWidth,10):0)}function ensureInRange(e){var n=Number(p[i]["max"+e]),o=Number(p[i]["min"+e]),r=e.toLowerCase(),a=Number(t[r]);log(i,"Checking "+r+" is in range "+o+"-"+n),a<o&&(a=o,log(i,"Set "+r+" to min value")),a>n&&(a=n,log(i,"Set "+r+" to max value")),t[r]=""+a}function getMsgBody(e){return n.substr(n.indexOf(":")+d+e)}function sendPageInfoToIframe(e,n){!function debounceFrameEvents(e,n,t){b[t]||(b[t]=setTimeout((function(){b[t]=null,e()}),n))}((function debouncedTrigger(){trigger("Send Page Info","pageInfo:"+function getPageInfo(){var e=document.body.getBoundingClientRect(),n=t.iframe.getBoundingClientRect();return 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})}(),e,n)}),32,n)}function getElementPosition(e){var n=e.getBoundingClientRect();return getPagePosition(i),{x:Math.floor(Number(n.left)+Number(g.x)),y:Math.floor(Number(n.top)+Number(g.y))}}function scrollRequestFromChild(e){var n=e?getElementPosition(t.iframe):{x:0,y:0},o=function calcOffset(){return{x:Number(t.width)+n.x,y:Number(t.height)+n.y}}();log(i,"Reposition requested from iFrame (offset x:"+n.x+" y:"+n.y+")"),window.top!==window.self?function scrollParent(){window.parentIFrame?window.parentIFrame["scrollTo"+(e?"Offset":"")](o.x,o.y):warn(i,"Unable to scroll to requested position, window.parentIFrame not found")}():function reposition(){g=o,scrollTo(),log(i,"--")}()}function scrollTo(){!1!==on("onScroll",g)?setPagePosition(i):unsetPagePosition()}function on(e,n){return chkEvent(i,e,n)}var n=e.data,t={},i=null;"[iFrameResizerChild]Ready"===n?function iFrameReadyMsgReceived(){for(var e in p)trigger("iFrame requested init",createOutgoingMsg(e),p[e].iframe,e)}():!function isMessageForUs(){return u===(""+n).substr(0,l)&&n.substr(l).split(":")[0]in p}()?info(i,"Ignored: "+n):(t=function processMsg(){var e=n.substr(l).split(":"),t=e[1]?parseInt(e[1],10):0,i=p[e[0]]&&p[e[0]].iframe,o=getComputedStyle(i);return{iframe:i,id:e[0],height:t+getPaddingEnds(o)+getBorderEnds(o),width:e[2],type:e[3]}}(),i=t.id,p[i]&&(p[i].loaded=!0),!function isMessageFromMetaParent(){var e=t.type in{true:1,false:1,undefined:1};return e&&log(i,"Ignoring init message from meta parent page"),e}()&&function hasSettings(e){var i=!0;return p[e]||(i=!1,warn(t.type+" No settings for "+e+". Message was: "+n)),i}(i)&&(log(i,"Received: "+n),function checkIFrameExists(){var e=!0;return null===t.iframe&&(warn(i,"IFrame ("+t.id+") not found"),e=!1),e}()&&function isMessageFromIFrame(){var n=e.origin,o=p[i]&&p[i].checkOrigin;if(o&&""+n!="null"&&!function checkAllowedOrigin(){return o.constructor===Array?function checkList(){var e=0,t=!1;for(log(i,"Checking connection is from allowed list of origins: "+o);e<o.length;e++)if(o[e]===n){t=!0;break}return t}():function checkSingle(){var e=p[i]&&p[i].remoteHost;return log(i,"Checking connection is from: "+e),n===e}()}())throw new Error("Unexpected message received from: "+n+" for "+t.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!0}()&&function actionMsg(){switch(p[i]&&p[i].firstRun&&function firstRun(){p[i]&&(p[i].firstRun=!1)}(),t.type){case"close":closeIFrame(t.iframe);break;case"message":!function forwardMsgFromIFrame(e){log(i,"onMessage passed: {iframe: "+t.iframe.id+", message: "+e+"}"),on("onMessage",{iframe:t.iframe,message:JSON.parse(e)}),log(i,"--")}(getMsgBody(6));break;case"autoResize":p[i].autoResize=JSON.parse(getMsgBody(9));break;case"scrollTo":scrollRequestFromChild(!1);break;case"scrollToOffset":scrollRequestFromChild(!0);break;case"pageInfo":sendPageInfoToIframe(p[i]&&p[i].iframe,i),function startPageInfoMonitor(){function setListener(n,t){function sendPageInfo(){p[e]?sendPageInfoToIframe(p[e].iframe,e):stop()}["scroll","resize"].forEach((function(i){log(e,n+i+" listener for sendPageInfo"),t(window,i,sendPageInfo)}))}function stop(){setListener("Remove ",removeEventListener)}var e=i;!function start(){setListener("Add ",addEventListener)}(),p[e]&&(p[e].stopPageInfo=stop)}();break;case"pageInfoStop":!function stopPageInfoMonitor(){p[i]&&p[i].stopPageInfo&&(p[i].stopPageInfo(),delete p[i].stopPageInfo)}();break;case"inPageLink":!function findTarget(e){var n=e.split("#")[1]||"",t=decodeURIComponent(n),o=document.getElementById(t)||document.getElementsByName(t)[0];o?function jumpToTarget(){var e=getElementPosition(o);log(i,"Moving to in page link (#"+n+") at x: "+e.x+" y: "+e.y),g={x:e.x,y:e.y},scrollTo(),log(i,"--")}():window.top!==window.self?function jumpToParent(){window.parentIFrame?window.parentIFrame.moveToAnchor(n):log(i,"In page link #"+n+" not found and window.parentIFrame not found")}():log(i,"In page link #"+n+" not found")}(getMsgBody(9));break;case"reset":resetIFrame(t);break;case"init":resizeIFrame(),on("onInit",t.iframe);break;default:resizeIFrame()}}()))}function chkEvent(e,n,t){var i=null,o=null;if(p[e]){if("function"!=typeof(i=p[e][n]))throw new TypeError(n+" on iFrame["+e+"] is not a function");o=i(t)}return o}function removeIframeListeners(e){var n=e.id;delete p[n]}function closeIFrame(e){var n=e.id;if(!1!==chkEvent(n,"onClose",n)){log(n,"Removing iFrame: "+n);try{e.parentNode&&e.parentNode.removeChild(e)}catch(e){warn(e)}chkEvent(n,"onClosed",n),log(n,"--"),removeIframeListeners(e)}else log(n,"Close iframe cancelled by onClose event")}function getPagePosition(e){null===g&&log(e,"Get page position: "+(g={x:window.pageXOffset!==t?window.pageXOffset:document.documentElement.scrollLeft,y:window.pageYOffset!==t?window.pageYOffset:document.documentElement.scrollTop}).x+","+g.y)}function setPagePosition(e){null!==g&&(window.scrollTo(g.x,g.y),log(e,"Set page position: "+g.x+","+g.y),unsetPagePosition())}function unsetPagePosition(){g=null}function resetIFrame(e){log(e.id,"Size reset requested by "+("init"===e.type?"host page":"iFrame")),getPagePosition(e.id),syncResize((function reset(){setSize(e),trigger("reset","reset",e.iframe,e.id)}),e,"reset")}function setSize(e){function chkZero(t){c||"0"!==e[t]||(c=!0,log(n,"Hidden iFrame detected, creating visibility listener"),function fixHiddenIFrames(){function checkIFrames(){Object.keys(p).forEach((function(e){!function checkIFrame(e){function chkDimension(n){return"0px"===(p[e]&&p[e].iframe.style[n])}p[e]&&function isVisible(e){return null!==e.offsetParent}(p[e].iframe)&&(chkDimension("height")||chkDimension("width"))&&trigger("Visibility change","resize",p[e].iframe,e)}(e)}))}function mutationObserved(e){log("window","Mutation observed: "+e[0].target+" "+e[0].type),debouce(checkIFrames,16)}var e=getMutationObserver();e&&function createMutationObserver(){var n=document.querySelector("body");new e(mutationObserved).observe(n,{attributes:!0,attributeOldValue:!1,characterData:!0,characterDataOldValue:!1,childList:!0,subtree:!0})}()}())}function processDimension(t){!function setDimension(t){e.id?(e.iframe.style[t]=e[t]+"px",log(e.id,"IFrame ("+n+") "+t+" set to "+e[t]+"px")):log("undefined","messageData id not set")}(t),chkZero(t)}var n=e.iframe.id;p[n]&&(p[n].sizeHeight&&processDimension("height"),p[n].sizeWidth&&processDimension("width"))}function syncResize(e,n,t){t!==n.type&&f&&!window.jasmine?(log(n.id,"Requesting animation frame"),f(e)):e()}function trigger(e,n,t,i,o){var r=!1;i=i||t.id,p[i]&&(!function chkAndSend(){t&&"contentWindow"in t&&null!==t.contentWindow?function postMessageToIFrame(){var o=p[i]&&p[i].targetOrigin;log(i,"["+e+"] Sending msg to iframe["+i+"] ("+n+") targetOrigin: "+o),t.contentWindow.postMessage(u+n,o)}():function iFrameNotFound(){warn(i,"["+e+"] IFrame("+i+") not found")}()}(),function warnOnNoResponse(){o&&p[i]&&p[i].warningTimeout&&(p[i].msgTimeout=setTimeout((function warning(){!p[i]||p[i].loaded||r||(r=!0,warn(i,"IFrame has not responded within "+p[i].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."))}),p[i].warningTimeout))}())}function createOutgoingMsg(e){return e+":"+p[e].bodyMarginV1+":"+p[e].sizeWidth+":"+p[e].log+":"+p[e].interval+":"+p[e].enablePublicMethods+":"+p[e].autoResize+":"+p[e].bodyMargin+":"+p[e].heightCalculationMethod+":"+p[e].bodyBackground+":"+p[e].bodyPadding+":"+p[e].tolerance+":"+p[e].inPageLinks+":"+p[e].resizeFrom+":"+p[e].widthCalculationMethod}function setupIFrame(e,n){function depricate(e){var n=e.split("Callback");if(2===n.length){var t="on"+n[0].charAt(0).toUpperCase()+n[0].slice(1);this[t]=this[e],delete this[e],warn(i,"Deprecated: '"+e+"' has been renamed '"+t+"'. The old method will be removed in the next major version.")}}var i=function ensureHasId(t){return""===t&&(e.id=t=function newId(){var e=n&&n.id||w.id+a++;return null!==document.getElementById(e)&&(e+=a++),e}(),s=(n||{}).log,log(t,"Added missing iframe ID: "+t+" ("+e.src+")")),t}(e.id);!function beenHere(){return i in p&&"iFrameResizer"in e}()?(!function processOptions(n){n=n||{},p[i]={firstRun:!0,iframe:e,remoteHost:e.src&&e.src.split("/").slice(0,3).join("/")},function checkOptions(e){if("object"!=typeof e)throw new TypeError("Options is not an object")}(n),Object.keys(n).forEach(depricate,n),function copyOptions(e){for(var n in w)Object.prototype.hasOwnProperty.call(w,n)&&(p[i][n]=Object.prototype.hasOwnProperty.call(e,n)?e[n]:w[n])}(n),p[i]&&(p[i].targetOrigin=!0===p[i].checkOrigin?function getTargetOrigin(e){return""===e||null!==e.match(/^(about:blank|javascript:|file:\/\/)/)?"*":e}(p[i].remoteHost):"*")}(n),function setScrolling(){switch(log(i,"IFrame scrolling "+(p[i]&&p[i].scrolling?"enabled":"disabled")+" for "+i),e.style.overflow=!1===(p[i]&&p[i].scrolling)?"hidden":"auto",p[i]&&p[i].scrolling){case"omit":break;case!0:e.scrolling="yes";break;case!1:e.scrolling="no";break;default:e.scrolling=p[i]?p[i].scrolling:"no"}}(),function setLimits(){function addStyle(n){1/0!==p[i][n]&&0!==p[i][n]&&(e.style[n]=p[i][n]+"px",log(i,"Set "+n+" = "+p[i][n]+"px"))}function chkMinMax(e){if(p[i]["min"+e]>p[i]["max"+e])throw new Error("Value for min"+e+" can not be greater than max"+e)}chkMinMax("Height"),chkMinMax("Width"),addStyle("maxHeight"),addStyle("minHeight"),addStyle("maxWidth"),addStyle("minWidth")}(),function setupBodyMarginValues(){"number"!=typeof(p[i]&&p[i].bodyMargin)&&"0"!==(p[i]&&p[i].bodyMargin)||(p[i].bodyMarginV1=p[i].bodyMargin,p[i].bodyMargin=p[i].bodyMargin+"px")}(),function init(n){var o=getMutationObserver();o&&function createDestroyObserver(n){e.parentNode&&new n((function(n){n.forEach((function(n){Array.prototype.slice.call(n.removedNodes).forEach((function(n){n===e&&closeIFrame(e)}))}))})).observe(e.parentNode,{childList:!0})}(o),addEventListener(e,"load",(function iFrameLoaded(){trigger("iFrame.onload",n,e,t,!0),function checkReset(){var n=p[i]&&p[i].firstRun,t=p[i]&&p[i].heightCalculationMethod in m;!n&&t&&resetIFrame({iframe:e,height:0,width:0,type:"init"})}()})),trigger("init",n,e,t,!0)}(createOutgoingMsg(i)),function setupIFrameObject(){p[i]&&(p[i].iframe.iFrameResizer={close:closeIFrame.bind(null,p[i].iframe),removeListeners:removeIframeListeners.bind(null,p[i].iframe),resize:trigger.bind(null,"Window resize","resize",p[i].iframe),moveToAnchor:function(e){trigger("Move to anchor","moveToAnchor:"+e,p[i].iframe,i)},sendMessage:function(e){trigger("Send Message","message:"+(e=JSON.stringify(e)),p[i].iframe,i)}})}()):warn(i,"Ignored iFrame, already setup.")}function debouce(e,n){null===h&&(h=setTimeout((function(){h=null,e()}),n))}function tabVisible(){"hidden"!==document.visibilityState&&(log("document","Trigger event: Visiblity change"),debouce((function resize(){sendTriggerMsg("Tab Visable","resize")}),16))}function sendTriggerMsg(e,n){Object.keys(p).forEach((function(t){(function isIFrameResizeEnabled(e){return p[e]&&"parent"===p[e].resizeFrom&&p[e].autoResize&&!p[e].firstRun})(t)&&trigger(e,n,p[t].iframe,t)}))}function setupEventListeners(){addEventListener(window,"message",iFrameListener),addEventListener(window,"resize",(function(){!function resizeIFrames(e){log("window","Trigger event: "+e),debouce((function resize(){sendTriggerMsg("Window "+e,"resize")}),16)}("resize")})),addEventListener(document,"visibilitychange",tabVisible),addEventListener(document,"-webkit-visibilitychange",tabVisible)}function factory(){function init(n,t){t&&(!function chkType(){if(!t.tagName)throw new TypeError("Object is not a valid DOM element");if("IFRAME"!==t.tagName.toUpperCase())throw new TypeError("Expected <IFRAME> tag, found <"+t.tagName+">")}(),setupIFrame(t,n),e.push(t))}var e;return function setupRequestAnimationFrame(){var e,n=["moz","webkit","o","ms"];for(e=0;e<n.length&&!f;e+=1)f=window[n[e]+"RequestAnimationFrame"];f?f=f.bind(window):log("setup","RequestAnimationFrame not supported")}(),setupEventListeners(),function iFrameResizeF(n,i){switch(e=[],function warnDeprecatedOptions(e){e&&e.enablePublicMethods&&warn("enablePublicMethods option has been removed, public methods are now always available in the iFrame")}(n),typeof i){case"undefined":case"string":Array.prototype.forEach.call(document.querySelectorAll(i||"iframe"),init.bind(t,n));break;case"object":init(n,i);break;default:throw new TypeError("Unexpected data type ("+typeof i+")")}return e}}}()}}]);
//# sourceMappingURL=vendors~custom-page-KXWAf~pattern-list-page-ms7ii~pattern-view-page-WE7TE~52c920a2.chunk.eaa5497fb7f7db0479e3.js.map