| Server IP : 93.86.61.54 / Your IP : 216.73.216.206 Web Server : Apache/2.4.62 (Ubuntu) System : Linux rasin.ddns.net 6.8.0-124-generic #124~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Tue May 26 21:05:19 UTC x86_64 User : www-data ( 33) PHP Version : 8.4.22 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /var/www/html/projects/nextcloud/apps/mail/js/ |
Upload File : |
{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js","webpack:///./node_modules/css-loader/dist/runtime/cssWithMappingToString.js","webpack:///./node_modules/css-loader/dist/runtime/api.js","webpack:///./css/html-response.css","webpack:///./node_modules/iframe-resizer/js/iframeResizer.contentWindow.js","webpack:///./css/html-response.css?6778"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","memo","isOldIE","Boolean","window","document","all","atob","getTarget","target","styleTarget","querySelector","HTMLIFrameElement","contentDocument","head","e","stylesInDom","getIndexByIdentifier","identifier","result","length","modulesToDom","list","options","idCountMap","identifiers","item","id","base","count","concat","index","obj","css","media","sourceMap","references","updater","push","addStyle","insertStyleElement","style","createElement","attributes","nonce","keys","forEach","setAttribute","insert","Error","appendChild","textStore","replaceText","replacement","filter","join","applyToSingletonTag","remove","styleSheet","cssText","cssNode","createTextNode","childNodes","removeChild","insertBefore","applyToTag","removeAttribute","btoa","unescape","encodeURIComponent","JSON","stringify","firstChild","singleton","singletonCounter","update","styleIndex","parentNode","removeStyleElement","newObj","lastIdentifiers","newList","toString","newLastIdentifiers","_i","_index","splice","_slicedToArray","arr","Array","isArray","_arrayWithHoles","iterator","_arr","_n","_d","_e","undefined","_s","next","done","err","_iterableToArrayLimit","minLen","_arrayLikeToArray","slice","constructor","from","test","_unsupportedIterableToArray","TypeError","_nonIterableRest","len","arr2","_item","content","cssMapping","base64","data","sourceMapping","sourceURLs","sources","map","source","sourceRoot","cssWithMappingToString","this","mediaQuery","dedupe","alreadyImportedModules","___CSS_LOADER_EXPORT___","autoResize","bodyBackground","bodyMargin","bodyMarginStr","bodyObserver","bodyPadding","calculateWidth","doubleEventList","resize","click","firstRun","height","heightCalcMode","initLock","initMsg","inPageLinks","interval","intervalTimer","logging","mouseEvents","msgID","msgIdLen","myID","resetRequiredMethods","max","min","bodyScroll","documentElementScroll","resizeFrom","parent","targetOriginDefault","tolerance","triggerLocked","triggerLockedTimer","throttledTimer","width","widthCalcMode","win","onMessage","warn","onReady","onPageInfo","customCalcMethods","documentElement","offsetHeight","body","scrollWidth","eventHandlersByName","passiveSupported","passive","addEventListener","noop","removeEventListener","error","func","context","args","timeout","previous","later","getNow","Date","now","getTime","getHeight","bodyOffset","getComputedStyle","offset","scrollHeight","custom","documentElementOffset","Math","apply","getAllMeasurements","grow","lowestElement","getMaxElement","getAllElements","taggedElement","getTaggedElements","getWidth","offsetWidth","scroll","rightMostElement","sizeIFrameThrottled","sizeIFrame","remaining","arguments","clearTimeout","setTimeout","event","processRequestFromParent","init","reset","log","triggerReset","sendSize","moveToAnchor","findTarget","getData","inPageLink","pageInfo","msgBody","parse","message","getMessageType","split","substr","indexOf","isInitMsg","true","false","callFromParent","messageType","jQuery","chkLateLoaded","el","evt","capitalizeFirstLetter","string","charAt","toUpperCase","formatLogMsg","msg","console","clearFix","strBool","str","Number","enable","readDataFromParent","location","href","setupCustomCalcMethods","calcMode","calcFunc","iFrameResizer","depricate","targetOrigin","heightCalculationMethod","widthCalculationMethod","readDataFromPage","setBodyStyle","attr","chkCSS","setMargin","clear","display","checkHeightMode","checkWidthMode","parentIFrame","startEventListeners","manageEventListeners","disconnect","clearInterval","sendMsg","close","getId","getPageInfo","callback","hash","resetIFrame","scrollTo","x","y","scrollToOffset","sendMessage","setHeightCalculationMethod","setWidthCalculationMethod","setTargetOrigin","size","customHeight","customWidth","sendMouse","type","screenY","screenX","addMouseListener","setupMouseEvents","getElementPosition","elPosition","getBoundingClientRect","pagePosition","pageXOffset","scrollLeft","pageYOffset","scrollTop","parseInt","left","top","hashData","decodeURIComponent","getElementById","getElementsByName","jumpPosition","jumpToTarget","checkLocationHash","querySelectorAll","getAttribute","preventDefault","setupInPageLinks","splitName","manageTriggerEvent","listener","add","eventName","handleEvent","eventType","eventNames","method","checkCalcMode","calcModeDefault","modes","forceIntervalTimer","MutationObserver","WebKitMutationObserver","initInterval","addImageLoadListners","mutation","addImageLoadListener","element","complete","src","imageLoaded","imageError","elements","attributeName","removeImageLoadListener","removeFromArray","imageEventTriggered","typeDesc","mutationObserved","mutations","observer","observe","attributeOldValue","characterData","characterDataOldValue","childList","subtree","createMutationObserver","setupBodyMutationObserver","setInterval","abs","prop","retVal","defaultView","side","elementsLength","elVal","maxVal","Side","timer","chkEventThottle","dimensions","tag","triggerEvent","triggerEventDesc","currentHeight","currentWidth","checkTolarance","a","b","isSizeChangeDetected","lockTrigger","resetPage","hcm","postMessage","readyState","locals"],"mappings":"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","file":"htmlresponse.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/js/\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 625);\n","\"use strict\";\n\nvar isOldIE = function isOldIE() {\n var memo;\n return function memorize() {\n if (typeof memo === 'undefined') {\n // Test for IE <= 9 as proposed by Browserhacks\n // @see http://browserhacks.com/#hack-e71d8692f65334173fee715c222cb805\n // Tests for existence of standard globals is to allow style-loader\n // to operate correctly into non-standard environments\n // @see https://github.com/webpack-contrib/style-loader/issues/177\n memo = Boolean(window && document && document.all && !window.atob);\n }\n\n return memo;\n };\n}();\n\nvar getTarget = function getTarget() {\n var memo = {};\n return function memorize(target) {\n if (typeof memo[target] === 'undefined') {\n var styleTarget = document.querySelector(target); // Special case to return head of iframe instead of iframe itself\n\n if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n try {\n // This will throw an exception if access to iframe is blocked\n // due to cross-origin restrictions\n styleTarget = styleTarget.contentDocument.head;\n } catch (e) {\n // istanbul ignore next\n styleTarget = null;\n }\n }\n\n memo[target] = styleTarget;\n }\n\n return memo[target];\n };\n}();\n\nvar stylesInDom = [];\n\nfunction getIndexByIdentifier(identifier) {\n var result = -1;\n\n for (var i = 0; i < stylesInDom.length; i++) {\n if (stylesInDom[i].identifier === identifier) {\n result = i;\n break;\n }\n }\n\n return result;\n}\n\nfunction modulesToDom(list, options) {\n var idCountMap = {};\n var identifiers = [];\n\n for (var i = 0; i < list.length; i++) {\n var item = list[i];\n var id = options.base ? item[0] + options.base : item[0];\n var count = idCountMap[id] || 0;\n var identifier = \"\".concat(id, \" \").concat(count);\n idCountMap[id] = count + 1;\n var index = getIndexByIdentifier(identifier);\n var obj = {\n css: item[1],\n media: item[2],\n sourceMap: item[3]\n };\n\n if (index !== -1) {\n stylesInDom[index].references++;\n stylesInDom[index].updater(obj);\n } else {\n stylesInDom.push({\n identifier: identifier,\n updater: addStyle(obj, options),\n references: 1\n });\n }\n\n identifiers.push(identifier);\n }\n\n return identifiers;\n}\n\nfunction insertStyleElement(options) {\n var style = document.createElement('style');\n var attributes = options.attributes || {};\n\n if (typeof attributes.nonce === 'undefined') {\n var nonce = typeof __webpack_nonce__ !== 'undefined' ? __webpack_nonce__ : null;\n\n if (nonce) {\n attributes.nonce = nonce;\n }\n }\n\n Object.keys(attributes).forEach(function (key) {\n style.setAttribute(key, attributes[key]);\n });\n\n if (typeof options.insert === 'function') {\n options.insert(style);\n } else {\n var target = getTarget(options.insert || 'head');\n\n if (!target) {\n throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");\n }\n\n target.appendChild(style);\n }\n\n return style;\n}\n\nfunction removeStyleElement(style) {\n // istanbul ignore if\n if (style.parentNode === null) {\n return false;\n }\n\n style.parentNode.removeChild(style);\n}\n/* istanbul ignore next */\n\n\nvar replaceText = function replaceText() {\n var textStore = [];\n return function replace(index, replacement) {\n textStore[index] = replacement;\n return textStore.filter(Boolean).join('\\n');\n };\n}();\n\nfunction applyToSingletonTag(style, index, remove, obj) {\n var css = remove ? '' : obj.media ? \"@media \".concat(obj.media, \" {\").concat(obj.css, \"}\") : obj.css; // For old IE\n\n /* istanbul ignore if */\n\n if (style.styleSheet) {\n style.styleSheet.cssText = replaceText(index, css);\n } else {\n var cssNode = document.createTextNode(css);\n var childNodes = style.childNodes;\n\n if (childNodes[index]) {\n style.removeChild(childNodes[index]);\n }\n\n if (childNodes.length) {\n style.insertBefore(cssNode, childNodes[index]);\n } else {\n style.appendChild(cssNode);\n }\n }\n}\n\nfunction applyToTag(style, options, obj) {\n var css = obj.css;\n var media = obj.media;\n var sourceMap = obj.sourceMap;\n\n if (media) {\n style.setAttribute('media', media);\n } else {\n style.removeAttribute('media');\n }\n\n if (sourceMap && typeof btoa !== 'undefined') {\n css += \"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), \" */\");\n } // For old IE\n\n /* istanbul ignore if */\n\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n while (style.firstChild) {\n style.removeChild(style.firstChild);\n }\n\n style.appendChild(document.createTextNode(css));\n }\n}\n\nvar singleton = null;\nvar singletonCounter = 0;\n\nfunction addStyle(obj, options) {\n var style;\n var update;\n var remove;\n\n if (options.singleton) {\n var styleIndex = singletonCounter++;\n style = singleton || (singleton = insertStyleElement(options));\n update = applyToSingletonTag.bind(null, style, styleIndex, false);\n remove = applyToSingletonTag.bind(null, style, styleIndex, true);\n } else {\n style = insertStyleElement(options);\n update = applyToTag.bind(null, style, options);\n\n remove = function remove() {\n removeStyleElement(style);\n };\n }\n\n update(obj);\n return function updateStyle(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap) {\n return;\n }\n\n update(obj = newObj);\n } else {\n remove();\n }\n };\n}\n\nmodule.exports = function (list, options) {\n options = options || {}; // Force single-tag solution on IE6-9, which has a hard limit on the # of <style>\n // tags it will allow on a page\n\n if (!options.singleton && typeof options.singleton !== 'boolean') {\n options.singleton = isOldIE();\n }\n\n list = list || [];\n var lastIdentifiers = modulesToDom(list, options);\n return function update(newList) {\n newList = newList || [];\n\n if (Object.prototype.toString.call(newList) !== '[object Array]') {\n return;\n }\n\n for (var i = 0; i < lastIdentifiers.length; i++) {\n var identifier = lastIdentifiers[i];\n var index = getIndexByIdentifier(identifier);\n stylesInDom[index].references--;\n }\n\n var newLastIdentifiers = modulesToDom(newList, options);\n\n for (var _i = 0; _i < lastIdentifiers.length; _i++) {\n var _identifier = lastIdentifiers[_i];\n\n var _index = getIndexByIdentifier(_identifier);\n\n if (stylesInDom[_index].references === 0) {\n stylesInDom[_index].updater();\n\n stylesInDom.splice(_index, 1);\n }\n }\n\n lastIdentifiers = newLastIdentifiers;\n };\n};","\"use strict\";\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nmodule.exports = function cssWithMappingToString(item) {\n var _item = _slicedToArray(item, 4),\n content = _item[1],\n cssMapping = _item[3];\n\n if (typeof btoa === \"function\") {\n // eslint-disable-next-line no-undef\n var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(cssMapping))));\n var data = \"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(base64);\n var sourceMapping = \"/*# \".concat(data, \" */\");\n var sourceURLs = cssMapping.sources.map(function (source) {\n return \"/*# sourceURL=\".concat(cssMapping.sourceRoot || \"\").concat(source, \" */\");\n });\n return [content].concat(sourceURLs).concat([sourceMapping]).join(\"\\n\");\n }\n\n return [content].join(\"\\n\");\n};","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\n// eslint-disable-next-line func-names\nmodule.exports = function (cssWithMappingToString) {\n var list = []; // return the list of modules as css string\n\n list.toString = function toString() {\n return this.map(function (item) {\n var content = cssWithMappingToString(item);\n\n if (item[2]) {\n return \"@media \".concat(item[2], \" {\").concat(content, \"}\");\n }\n\n return content;\n }).join(\"\");\n }; // import a list of modules into the list\n // eslint-disable-next-line func-names\n\n\n list.i = function (modules, mediaQuery, dedupe) {\n if (typeof modules === \"string\") {\n // eslint-disable-next-line no-param-reassign\n modules = [[null, modules, \"\"]];\n }\n\n var alreadyImportedModules = {};\n\n if (dedupe) {\n for (var i = 0; i < this.length; i++) {\n // eslint-disable-next-line prefer-destructuring\n var id = this[i][0];\n\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n\n for (var _i = 0; _i < modules.length; _i++) {\n var item = [].concat(modules[_i]);\n\n if (dedupe && alreadyImportedModules[item[0]]) {\n // eslint-disable-next-line no-continue\n continue;\n }\n\n if (mediaQuery) {\n if (!item[2]) {\n item[2] = mediaQuery;\n } else {\n item[2] = \"\".concat(mediaQuery, \" and \").concat(item[2]);\n }\n }\n\n list.push(item);\n }\n };\n\n return list;\n};","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../node_modules/css-loader/dist/runtime/cssWithMappingToString.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"* {\\n\\tfont-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Cantarell, Ubuntu, 'Helvetica Neue', Arial, 'Noto Color Emoji', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';\\n}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./css/html-response.css\"],\"names\":[],\"mappings\":\"AAAA;CACC,qNAAqN;AACtN\",\"sourcesContent\":[\"* {\\n\\tfont-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Cantarell, Ubuntu, 'Helvetica Neue', Arial, 'Noto Color Emoji', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","/*\n * File: iframeResizer.contentWindow.js\n * Desc: Include this file in any page being loaded into an iframe\n * to force the iframe to resize to the content size.\n * Requires: iframeResizer.js on host page.\n * Doc: https://github.com/davidjbradshaw/iframe-resizer\n * Author: David J. Bradshaw - dave@bradshaw.net\n *\n */\n\n// eslint-disable-next-line sonarjs/cognitive-complexity, no-shadow-restricted-names\n;(function (undefined) {\n if (typeof window === 'undefined') return // don't run for server side render\n\n var autoResize = true,\n base = 10,\n bodyBackground = '',\n bodyMargin = 0,\n bodyMarginStr = '',\n bodyObserver = null,\n bodyPadding = '',\n calculateWidth = false,\n doubleEventList = { resize: 1, click: 1 },\n eventCancelTimer = 128,\n firstRun = true,\n height = 1,\n heightCalcModeDefault = 'bodyOffset',\n heightCalcMode = heightCalcModeDefault,\n initLock = true,\n initMsg = '',\n inPageLinks = {},\n interval = 32,\n intervalTimer = null,\n logging = false,\n mouseEvents = false,\n msgID = '[iFrameSizer]', // Must match host page msg ID\n msgIdLen = msgID.length,\n myID = '',\n resetRequiredMethods = {\n max: 1,\n min: 1,\n bodyScroll: 1,\n documentElementScroll: 1\n },\n resizeFrom = 'child',\n sendPermit = true,\n target = window.parent,\n targetOriginDefault = '*',\n tolerance = 0,\n triggerLocked = false,\n triggerLockedTimer = null,\n throttledTimer = 16,\n width = 1,\n widthCalcModeDefault = 'scroll',\n widthCalcMode = widthCalcModeDefault,\n win = window,\n onMessage = function () {\n warn('onMessage function not defined')\n },\n onReady = function () {},\n onPageInfo = function () {},\n customCalcMethods = {\n height: function () {\n warn('Custom height calculation function not defined')\n return document.documentElement.offsetHeight\n },\n width: function () {\n warn('Custom width calculation function not defined')\n return document.body.scrollWidth\n }\n },\n eventHandlersByName = {},\n passiveSupported = false\n\n function noop() {}\n\n try {\n var options = Object.create(\n {},\n {\n passive: {\n get: function () {\n passiveSupported = true\n }\n }\n }\n )\n window.addEventListener('test', noop, options)\n window.removeEventListener('test', noop, options)\n } catch (error) {\n /* */\n }\n\n function addEventListener(el, evt, func, options) {\n el.addEventListener(evt, func, passiveSupported ? options || {} : false)\n }\n\n function removeEventListener(el, evt, func) {\n el.removeEventListener(evt, func, false)\n }\n\n function capitalizeFirstLetter(string) {\n return string.charAt(0).toUpperCase() + string.slice(1)\n }\n\n // Based on underscore.js\n function throttle(func) {\n var context,\n args,\n result,\n timeout = null,\n previous = 0,\n later = function () {\n previous = getNow()\n timeout = null\n result = func.apply(context, args)\n if (!timeout) {\n // eslint-disable-next-line no-multi-assign\n context = args = null\n }\n }\n\n return function () {\n var now = getNow()\n\n if (!previous) {\n previous = now\n }\n\n var remaining = throttledTimer - (now - previous)\n\n context = this\n args = arguments\n\n if (remaining <= 0 || remaining > throttledTimer) {\n if (timeout) {\n clearTimeout(timeout)\n timeout = null\n }\n\n previous = now\n result = func.apply(context, args)\n\n if (!timeout) {\n // eslint-disable-next-line no-multi-assign\n context = args = null\n }\n } else if (!timeout) {\n timeout = setTimeout(later, remaining)\n }\n\n return result\n }\n }\n\n var getNow =\n Date.now ||\n function () {\n /* istanbul ignore next */ // Not testable in PhantonJS\n return new Date().getTime()\n }\n\n function formatLogMsg(msg) {\n return msgID + '[' + myID + '] ' + msg\n }\n\n function log(msg) {\n if (logging && 'object' === typeof window.console) {\n // eslint-disable-next-line no-console\n console.log(formatLogMsg(msg))\n }\n }\n\n function warn(msg) {\n if ('object' === typeof window.console) {\n // eslint-disable-next-line no-console\n console.warn(formatLogMsg(msg))\n }\n }\n\n function init() {\n readDataFromParent()\n log('Initialising iFrame (' + window.location.href + ')')\n readDataFromPage()\n setMargin()\n setBodyStyle('background', bodyBackground)\n setBodyStyle('padding', bodyPadding)\n injectClearFixIntoBodyElement()\n checkHeightMode()\n checkWidthMode()\n stopInfiniteResizingOfIFrame()\n setupPublicMethods()\n setupMouseEvents()\n startEventListeners()\n inPageLinks = setupInPageLinks()\n sendSize('init', 'Init message from host page')\n onReady()\n }\n\n function readDataFromParent() {\n function strBool(str) {\n return 'true' === str\n }\n\n var data = initMsg.substr(msgIdLen).split(':')\n\n myID = data[0]\n bodyMargin = undefined !== data[1] ? Number(data[1]) : bodyMargin // For V1 compatibility\n calculateWidth = undefined !== data[2] ? strBool(data[2]) : calculateWidth\n logging = undefined !== data[3] ? strBool(data[3]) : logging\n interval = undefined !== data[4] ? Number(data[4]) : interval\n autoResize = undefined !== data[6] ? strBool(data[6]) : autoResize\n bodyMarginStr = data[7]\n heightCalcMode = undefined !== data[8] ? data[8] : heightCalcMode\n bodyBackground = data[9]\n bodyPadding = data[10]\n tolerance = undefined !== data[11] ? Number(data[11]) : tolerance\n inPageLinks.enable = undefined !== data[12] ? strBool(data[12]) : false\n resizeFrom = undefined !== data[13] ? data[13] : resizeFrom\n widthCalcMode = undefined !== data[14] ? data[14] : widthCalcMode\n mouseEvents = undefined !== data[15] ? Boolean(data[15]) : mouseEvents\n }\n\n function depricate(key) {\n var splitName = key.split('Callback')\n\n if (splitName.length === 2) {\n var name =\n 'on' + splitName[0].charAt(0).toUpperCase() + splitName[0].slice(1)\n this[name] = this[key]\n delete this[key]\n warn(\n \"Deprecated: '\" +\n key +\n \"' has been renamed '\" +\n name +\n \"'. The old method will be removed in the next major version.\"\n )\n }\n }\n\n function readDataFromPage() {\n function readData() {\n var data = window.iFrameResizer\n\n log('Reading data from page: ' + JSON.stringify(data))\n Object.keys(data).forEach(depricate, data)\n\n onMessage = 'onMessage' in data ? data.onMessage : onMessage\n onReady = 'onReady' in data ? data.onReady : onReady\n targetOriginDefault =\n 'targetOrigin' in data ? data.targetOrigin : targetOriginDefault\n heightCalcMode =\n 'heightCalculationMethod' in data\n ? data.heightCalculationMethod\n : heightCalcMode\n widthCalcMode =\n 'widthCalculationMethod' in data\n ? data.widthCalculationMethod\n : widthCalcMode\n }\n\n function setupCustomCalcMethods(calcMode, calcFunc) {\n if ('function' === typeof calcMode) {\n log('Setup custom ' + calcFunc + 'CalcMethod')\n customCalcMethods[calcFunc] = calcMode\n calcMode = 'custom'\n }\n\n return calcMode\n }\n\n if (\n 'iFrameResizer' in window &&\n Object === window.iFrameResizer.constructor\n ) {\n readData()\n heightCalcMode = setupCustomCalcMethods(heightCalcMode, 'height')\n widthCalcMode = setupCustomCalcMethods(widthCalcMode, 'width')\n }\n\n log('TargetOrigin for parent set to: ' + targetOriginDefault)\n }\n\n function chkCSS(attr, value) {\n if (-1 !== value.indexOf('-')) {\n warn('Negative CSS value ignored for ' + attr)\n value = ''\n }\n return value\n }\n\n function setBodyStyle(attr, value) {\n if (undefined !== value && '' !== value && 'null' !== value) {\n document.body.style[attr] = value\n log('Body ' + attr + ' set to \"' + value + '\"')\n }\n }\n\n function setMargin() {\n // If called via V1 script, convert bodyMargin from int to str\n if (undefined === bodyMarginStr) {\n bodyMarginStr = bodyMargin + 'px'\n }\n\n setBodyStyle('margin', chkCSS('margin', bodyMarginStr))\n }\n\n function stopInfiniteResizingOfIFrame() {\n document.documentElement.style.height = ''\n document.body.style.height = ''\n log('HTML & body height set to \"auto\"')\n }\n\n function manageTriggerEvent(options) {\n var listener = {\n add: function (eventName) {\n function handleEvent() {\n sendSize(options.eventName, options.eventType)\n }\n\n eventHandlersByName[eventName] = handleEvent\n\n addEventListener(window, eventName, handleEvent, { passive: true })\n },\n remove: function (eventName) {\n var handleEvent = eventHandlersByName[eventName]\n delete eventHandlersByName[eventName]\n\n removeEventListener(window, eventName, handleEvent)\n }\n }\n\n if (options.eventNames && Array.prototype.map) {\n options.eventName = options.eventNames[0]\n options.eventNames.map(listener[options.method])\n } else {\n listener[options.method](options.eventName)\n }\n\n log(\n capitalizeFirstLetter(options.method) +\n ' event listener: ' +\n options.eventType\n )\n }\n\n function manageEventListeners(method) {\n manageTriggerEvent({\n method: method,\n eventType: 'Animation Start',\n eventNames: ['animationstart', 'webkitAnimationStart']\n })\n manageTriggerEvent({\n method: method,\n eventType: 'Animation Iteration',\n eventNames: ['animationiteration', 'webkitAnimationIteration']\n })\n manageTriggerEvent({\n method: method,\n eventType: 'Animation End',\n eventNames: ['animationend', 'webkitAnimationEnd']\n })\n manageTriggerEvent({\n method: method,\n eventType: 'Input',\n eventName: 'input'\n })\n manageTriggerEvent({\n method: method,\n eventType: 'Mouse Up',\n eventName: 'mouseup'\n })\n manageTriggerEvent({\n method: method,\n eventType: 'Mouse Down',\n eventName: 'mousedown'\n })\n manageTriggerEvent({\n method: method,\n eventType: 'Orientation Change',\n eventName: 'orientationchange'\n })\n manageTriggerEvent({\n method: method,\n eventType: 'Print',\n eventName: ['afterprint', 'beforeprint']\n })\n manageTriggerEvent({\n method: method,\n eventType: 'Ready State Change',\n eventName: 'readystatechange'\n })\n manageTriggerEvent({\n method: method,\n eventType: 'Touch Start',\n eventName: 'touchstart'\n })\n manageTriggerEvent({\n method: method,\n eventType: 'Touch End',\n eventName: 'touchend'\n })\n manageTriggerEvent({\n method: method,\n eventType: 'Touch Cancel',\n eventName: 'touchcancel'\n })\n manageTriggerEvent({\n method: method,\n eventType: 'Transition Start',\n eventNames: [\n 'transitionstart',\n 'webkitTransitionStart',\n 'MSTransitionStart',\n 'oTransitionStart',\n 'otransitionstart'\n ]\n })\n manageTriggerEvent({\n method: method,\n eventType: 'Transition Iteration',\n eventNames: [\n 'transitioniteration',\n 'webkitTransitionIteration',\n 'MSTransitionIteration',\n 'oTransitionIteration',\n 'otransitioniteration'\n ]\n })\n manageTriggerEvent({\n method: method,\n eventType: 'Transition End',\n eventNames: [\n 'transitionend',\n 'webkitTransitionEnd',\n 'MSTransitionEnd',\n 'oTransitionEnd',\n 'otransitionend'\n ]\n })\n if ('child' === resizeFrom) {\n manageTriggerEvent({\n method: method,\n eventType: 'IFrame Resized',\n eventName: 'resize'\n })\n }\n }\n\n function checkCalcMode(calcMode, calcModeDefault, modes, type) {\n if (calcModeDefault !== calcMode) {\n if (!(calcMode in modes)) {\n warn(\n calcMode + ' is not a valid option for ' + type + 'CalculationMethod.'\n )\n calcMode = calcModeDefault\n }\n log(type + ' calculation method set to \"' + calcMode + '\"')\n }\n\n return calcMode\n }\n\n function checkHeightMode() {\n heightCalcMode = checkCalcMode(\n heightCalcMode,\n heightCalcModeDefault,\n getHeight,\n 'height'\n )\n }\n\n function checkWidthMode() {\n widthCalcMode = checkCalcMode(\n widthCalcMode,\n widthCalcModeDefault,\n getWidth,\n 'width'\n )\n }\n\n function startEventListeners() {\n if (true === autoResize) {\n manageEventListeners('add')\n setupMutationObserver()\n } else {\n log('Auto Resize disabled')\n }\n }\n\n // function stopMsgsToParent() {\n // log('Disable outgoing messages')\n // sendPermit = false\n // }\n\n // function removeMsgListener() {\n // log('Remove event listener: Message')\n // removeEventListener(window, 'message', receiver)\n // }\n\n function disconnectMutationObserver() {\n if (null !== bodyObserver) {\n /* istanbul ignore next */ // Not testable in PhantonJS\n bodyObserver.disconnect()\n }\n }\n\n function stopEventListeners() {\n manageEventListeners('remove')\n disconnectMutationObserver()\n clearInterval(intervalTimer)\n }\n\n // function teardown() {\n // stopMsgsToParent()\n // removeMsgListener()\n // if (true === autoResize) stopEventListeners()\n // }\n\n function injectClearFixIntoBodyElement() {\n var clearFix = document.createElement('div')\n clearFix.style.clear = 'both'\n // Guard against the following having been globally redefined in CSS.\n clearFix.style.display = 'block'\n clearFix.style.height = '0'\n document.body.appendChild(clearFix)\n }\n\n function setupInPageLinks() {\n function getPagePosition() {\n return {\n x:\n window.pageXOffset !== undefined\n ? window.pageXOffset\n : document.documentElement.scrollLeft,\n y:\n window.pageYOffset !== undefined\n ? window.pageYOffset\n : document.documentElement.scrollTop\n }\n }\n\n function getElementPosition(el) {\n var elPosition = el.getBoundingClientRect(),\n pagePosition = getPagePosition()\n\n return {\n x: parseInt(elPosition.left, 10) + parseInt(pagePosition.x, 10),\n y: parseInt(elPosition.top, 10) + parseInt(pagePosition.y, 10)\n }\n }\n\n function findTarget(location) {\n function jumpToTarget(target) {\n var jumpPosition = getElementPosition(target)\n\n log(\n 'Moving to in page link (#' +\n hash +\n ') at x: ' +\n jumpPosition.x +\n ' y: ' +\n jumpPosition.y\n )\n sendMsg(jumpPosition.y, jumpPosition.x, 'scrollToOffset') // X&Y reversed at sendMsg uses height/width\n }\n\n var hash = location.split('#')[1] || location, // Remove # if present\n hashData = decodeURIComponent(hash),\n target =\n document.getElementById(hashData) ||\n document.getElementsByName(hashData)[0]\n\n if (undefined !== target) {\n jumpToTarget(target)\n } else {\n log(\n 'In page link (#' +\n hash +\n ') not found in iFrame, so sending to parent'\n )\n sendMsg(0, 0, 'inPageLink', '#' + hash)\n }\n }\n\n function checkLocationHash() {\n var hash = window.location.hash\n var href = window.location.href\n\n if ('' !== hash && '#' !== hash) {\n findTarget(href)\n }\n }\n\n function bindAnchors() {\n function setupLink(el) {\n function linkClicked(e) {\n e.preventDefault()\n\n /* jshint validthis:true */\n findTarget(this.getAttribute('href'))\n }\n\n if ('#' !== el.getAttribute('href')) {\n addEventListener(el, 'click', linkClicked)\n }\n }\n\n Array.prototype.forEach.call(\n document.querySelectorAll('a[href^=\"#\"]'),\n setupLink\n )\n }\n\n function bindLocationHash() {\n addEventListener(window, 'hashchange', checkLocationHash)\n }\n\n function initCheck() {\n // Check if page loaded with location hash after init resize\n setTimeout(checkLocationHash, eventCancelTimer)\n }\n\n function enableInPageLinks() {\n /* istanbul ignore else */ // Not testable in phantonJS\n if (Array.prototype.forEach && document.querySelectorAll) {\n log('Setting up location.hash handlers')\n bindAnchors()\n bindLocationHash()\n initCheck()\n } else {\n warn(\n 'In page linking not fully supported in this browser! (See README.md for IE8 workaround)'\n )\n }\n }\n\n if (inPageLinks.enable) {\n enableInPageLinks()\n } else {\n log('In page linking not enabled')\n }\n\n return {\n findTarget: findTarget\n }\n }\n\n function setupMouseEvents() {\n if (mouseEvents !== true) return\n\n function sendMouse(e) {\n sendMsg(0, 0, e.type, e.screenY + ':' + e.screenX)\n }\n\n function addMouseListener(evt, name) {\n log('Add event listener: ' + name)\n addEventListener(window.document, evt, sendMouse)\n }\n\n addMouseListener('mouseenter', 'Mouse Enter')\n addMouseListener('mouseleave', 'Mouse Leave')\n }\n\n function setupPublicMethods() {\n log('Enable public methods')\n\n win.parentIFrame = {\n autoResize: function autoResizeF(resize) {\n if (true === resize && false === autoResize) {\n autoResize = true\n startEventListeners()\n } else if (false === resize && true === autoResize) {\n autoResize = false\n stopEventListeners()\n }\n sendMsg(0, 0, 'autoResize', JSON.stringify(autoResize))\n return autoResize\n },\n\n close: function closeF() {\n sendMsg(0, 0, 'close')\n // teardown()\n },\n\n getId: function getIdF() {\n return myID\n },\n\n getPageInfo: function getPageInfoF(callback) {\n if ('function' === typeof callback) {\n onPageInfo = callback\n sendMsg(0, 0, 'pageInfo')\n } else {\n onPageInfo = function () {}\n sendMsg(0, 0, 'pageInfoStop')\n }\n },\n\n moveToAnchor: function moveToAnchorF(hash) {\n inPageLinks.findTarget(hash)\n },\n\n reset: function resetF() {\n resetIFrame('parentIFrame.reset')\n },\n\n scrollTo: function scrollToF(x, y) {\n sendMsg(y, x, 'scrollTo') // X&Y reversed at sendMsg uses height/width\n },\n\n scrollToOffset: function scrollToF(x, y) {\n sendMsg(y, x, 'scrollToOffset') // X&Y reversed at sendMsg uses height/width\n },\n\n sendMessage: function sendMessageF(msg, targetOrigin) {\n sendMsg(0, 0, 'message', JSON.stringify(msg), targetOrigin)\n },\n\n setHeightCalculationMethod: function setHeightCalculationMethodF(\n heightCalculationMethod\n ) {\n heightCalcMode = heightCalculationMethod\n checkHeightMode()\n },\n\n setWidthCalculationMethod: function setWidthCalculationMethodF(\n widthCalculationMethod\n ) {\n widthCalcMode = widthCalculationMethod\n checkWidthMode()\n },\n\n setTargetOrigin: function setTargetOriginF(targetOrigin) {\n log('Set targetOrigin: ' + targetOrigin)\n targetOriginDefault = targetOrigin\n },\n\n size: function sizeF(customHeight, customWidth) {\n var valString =\n '' + (customHeight || '') + (customWidth ? ',' + customWidth : '')\n sendSize(\n 'size',\n 'parentIFrame.size(' + valString + ')',\n customHeight,\n customWidth\n )\n }\n }\n }\n\n function initInterval() {\n if (0 !== interval) {\n log('setInterval: ' + interval + 'ms')\n intervalTimer = setInterval(function () {\n sendSize('interval', 'setInterval: ' + interval)\n }, Math.abs(interval))\n }\n }\n\n // Not testable in PhantomJS\n /* istanbul ignore next */\n function setupBodyMutationObserver() {\n function addImageLoadListners(mutation) {\n function addImageLoadListener(element) {\n if (false === element.complete) {\n log('Attach listeners to ' + element.src)\n element.addEventListener('load', imageLoaded, false)\n element.addEventListener('error', imageError, false)\n elements.push(element)\n }\n }\n\n if (mutation.type === 'attributes' && mutation.attributeName === 'src') {\n addImageLoadListener(mutation.target)\n } else if (mutation.type === 'childList') {\n Array.prototype.forEach.call(\n mutation.target.querySelectorAll('img'),\n addImageLoadListener\n )\n }\n }\n\n function removeFromArray(element) {\n elements.splice(elements.indexOf(element), 1)\n }\n\n function removeImageLoadListener(element) {\n log('Remove listeners from ' + element.src)\n element.removeEventListener('load', imageLoaded, false)\n element.removeEventListener('error', imageError, false)\n removeFromArray(element)\n }\n\n function imageEventTriggered(event, type, typeDesc) {\n removeImageLoadListener(event.target)\n sendSize(type, typeDesc + ': ' + event.target.src)\n }\n\n function imageLoaded(event) {\n imageEventTriggered(event, 'imageLoad', 'Image loaded')\n }\n\n function imageError(event) {\n imageEventTriggered(event, 'imageLoadFailed', 'Image load failed')\n }\n\n function mutationObserved(mutations) {\n sendSize(\n 'mutationObserver',\n 'mutationObserver: ' + mutations[0].target + ' ' + mutations[0].type\n )\n\n // Deal with WebKit / Blink asyncing image loading when tags are injected into the page\n mutations.forEach(addImageLoadListners)\n }\n\n function createMutationObserver() {\n var target = document.querySelector('body'),\n config = {\n attributes: true,\n attributeOldValue: false,\n characterData: true,\n characterDataOldValue: false,\n childList: true,\n subtree: true\n }\n\n observer = new MutationObserver(mutationObserved)\n\n log('Create body MutationObserver')\n observer.observe(target, config)\n\n return observer\n }\n\n var elements = [],\n MutationObserver =\n window.MutationObserver || window.WebKitMutationObserver,\n observer = createMutationObserver()\n\n return {\n disconnect: function () {\n if ('disconnect' in observer) {\n log('Disconnect body MutationObserver')\n observer.disconnect()\n elements.forEach(removeImageLoadListener)\n }\n }\n }\n }\n\n function setupMutationObserver() {\n var forceIntervalTimer = 0 > interval\n\n // Not testable in PhantomJS\n /* istanbul ignore if */ if (\n window.MutationObserver ||\n window.WebKitMutationObserver\n ) {\n if (forceIntervalTimer) {\n initInterval()\n } else {\n bodyObserver = setupBodyMutationObserver()\n }\n } else {\n log('MutationObserver not supported in this browser!')\n initInterval()\n }\n }\n\n // document.documentElement.offsetHeight is not reliable, so\n // we have to jump through hoops to get a better value.\n function getComputedStyle(prop, el) {\n var retVal = 0\n el = el || document.body // Not testable in phantonJS\n\n retVal = document.defaultView.getComputedStyle(el, null)\n retVal = null !== retVal ? retVal[prop] : 0\n\n return parseInt(retVal, base)\n }\n\n function chkEventThottle(timer) {\n if (timer > throttledTimer / 2) {\n throttledTimer = 2 * timer\n log('Event throttle increased to ' + throttledTimer + 'ms')\n }\n }\n\n // Idea from https://github.com/guardian/iframe-messenger\n function getMaxElement(side, elements) {\n var elementsLength = elements.length,\n elVal = 0,\n maxVal = 0,\n Side = capitalizeFirstLetter(side),\n timer = getNow()\n\n for (var i = 0; i < elementsLength; i++) {\n elVal =\n elements[i].getBoundingClientRect()[side] +\n getComputedStyle('margin' + Side, elements[i])\n if (elVal > maxVal) {\n maxVal = elVal\n }\n }\n\n timer = getNow() - timer\n\n log('Parsed ' + elementsLength + ' HTML elements')\n log('Element position calculated in ' + timer + 'ms')\n\n chkEventThottle(timer)\n\n return maxVal\n }\n\n function getAllMeasurements(dimensions) {\n return [\n dimensions.bodyOffset(),\n dimensions.bodyScroll(),\n dimensions.documentElementOffset(),\n dimensions.documentElementScroll()\n ]\n }\n\n function getTaggedElements(side, tag) {\n function noTaggedElementsFound() {\n warn('No tagged elements (' + tag + ') found on page')\n return document.querySelectorAll('body *')\n }\n\n var elements = document.querySelectorAll('[' + tag + ']')\n\n if (elements.length === 0) noTaggedElementsFound()\n\n return getMaxElement(side, elements)\n }\n\n function getAllElements() {\n return document.querySelectorAll('body *')\n }\n\n var getHeight = {\n bodyOffset: function getBodyOffsetHeight() {\n return (\n document.body.offsetHeight +\n getComputedStyle('marginTop') +\n getComputedStyle('marginBottom')\n )\n },\n\n offset: function () {\n return getHeight.bodyOffset() // Backwards compatability\n },\n\n bodyScroll: function getBodyScrollHeight() {\n return document.body.scrollHeight\n },\n\n custom: function getCustomWidth() {\n return customCalcMethods.height()\n },\n\n documentElementOffset: function getDEOffsetHeight() {\n return document.documentElement.offsetHeight\n },\n\n documentElementScroll: function getDEScrollHeight() {\n return document.documentElement.scrollHeight\n },\n\n max: function getMaxHeight() {\n return Math.max.apply(null, getAllMeasurements(getHeight))\n },\n\n min: function getMinHeight() {\n return Math.min.apply(null, getAllMeasurements(getHeight))\n },\n\n grow: function growHeight() {\n return getHeight.max() // Run max without the forced downsizing\n },\n\n lowestElement: function getBestHeight() {\n return Math.max(\n getHeight.bodyOffset() || getHeight.documentElementOffset(),\n getMaxElement('bottom', getAllElements())\n )\n },\n\n taggedElement: function getTaggedElementsHeight() {\n return getTaggedElements('bottom', 'data-iframe-height')\n }\n },\n getWidth = {\n bodyScroll: function getBodyScrollWidth() {\n return document.body.scrollWidth\n },\n\n bodyOffset: function getBodyOffsetWidth() {\n return document.body.offsetWidth\n },\n\n custom: function getCustomWidth() {\n return customCalcMethods.width()\n },\n\n documentElementScroll: function getDEScrollWidth() {\n return document.documentElement.scrollWidth\n },\n\n documentElementOffset: function getDEOffsetWidth() {\n return document.documentElement.offsetWidth\n },\n\n scroll: function getMaxWidth() {\n return Math.max(getWidth.bodyScroll(), getWidth.documentElementScroll())\n },\n\n max: function getMaxWidth() {\n return Math.max.apply(null, getAllMeasurements(getWidth))\n },\n\n min: function getMinWidth() {\n return Math.min.apply(null, getAllMeasurements(getWidth))\n },\n\n rightMostElement: function rightMostElement() {\n return getMaxElement('right', getAllElements())\n },\n\n taggedElement: function getTaggedElementsWidth() {\n return getTaggedElements('right', 'data-iframe-width')\n }\n }\n\n function sizeIFrame(\n triggerEvent,\n triggerEventDesc,\n customHeight,\n customWidth\n ) {\n function resizeIFrame() {\n height = currentHeight\n width = currentWidth\n\n sendMsg(height, width, triggerEvent)\n }\n\n function isSizeChangeDetected() {\n function checkTolarance(a, b) {\n var retVal = Math.abs(a - b) <= tolerance\n return !retVal\n }\n\n currentHeight =\n undefined !== customHeight ? customHeight : getHeight[heightCalcMode]()\n currentWidth =\n undefined !== customWidth ? customWidth : getWidth[widthCalcMode]()\n\n return (\n checkTolarance(height, currentHeight) ||\n (calculateWidth && checkTolarance(width, currentWidth))\n )\n }\n\n function isForceResizableEvent() {\n return !(triggerEvent in { init: 1, interval: 1, size: 1 })\n }\n\n function isForceResizableCalcMode() {\n return (\n heightCalcMode in resetRequiredMethods ||\n (calculateWidth && widthCalcMode in resetRequiredMethods)\n )\n }\n\n function logIgnored() {\n log('No change in size detected')\n }\n\n function checkDownSizing() {\n if (isForceResizableEvent() && isForceResizableCalcMode()) {\n resetIFrame(triggerEventDesc)\n } else if (!(triggerEvent in { interval: 1 })) {\n logIgnored()\n }\n }\n\n var currentHeight, currentWidth\n\n if (isSizeChangeDetected() || 'init' === triggerEvent) {\n lockTrigger()\n resizeIFrame()\n } else {\n checkDownSizing()\n }\n }\n\n var sizeIFrameThrottled = throttle(sizeIFrame)\n\n function sendSize(triggerEvent, triggerEventDesc, customHeight, customWidth) {\n function recordTrigger() {\n if (!(triggerEvent in { reset: 1, resetPage: 1, init: 1 })) {\n log('Trigger event: ' + triggerEventDesc)\n }\n }\n\n function isDoubleFiredEvent() {\n return triggerLocked && triggerEvent in doubleEventList\n }\n\n if (!isDoubleFiredEvent()) {\n recordTrigger()\n if (triggerEvent === 'init') {\n sizeIFrame(triggerEvent, triggerEventDesc, customHeight, customWidth)\n } else {\n sizeIFrameThrottled(\n triggerEvent,\n triggerEventDesc,\n customHeight,\n customWidth\n )\n }\n } else {\n log('Trigger event cancelled: ' + triggerEvent)\n }\n }\n\n function lockTrigger() {\n if (!triggerLocked) {\n triggerLocked = true\n log('Trigger event lock on')\n }\n clearTimeout(triggerLockedTimer)\n triggerLockedTimer = setTimeout(function () {\n triggerLocked = false\n log('Trigger event lock off')\n log('--')\n }, eventCancelTimer)\n }\n\n function triggerReset(triggerEvent) {\n height = getHeight[heightCalcMode]()\n width = getWidth[widthCalcMode]()\n\n sendMsg(height, width, triggerEvent)\n }\n\n function resetIFrame(triggerEventDesc) {\n var hcm = heightCalcMode\n heightCalcMode = heightCalcModeDefault\n\n log('Reset trigger event: ' + triggerEventDesc)\n lockTrigger()\n triggerReset('reset')\n\n heightCalcMode = hcm\n }\n\n function sendMsg(height, width, triggerEvent, msg, targetOrigin) {\n function setTargetOrigin() {\n if (undefined === targetOrigin) {\n targetOrigin = targetOriginDefault\n } else {\n log('Message targetOrigin: ' + targetOrigin)\n }\n }\n\n function sendToParent() {\n var size = height + ':' + width,\n message =\n myID +\n ':' +\n size +\n ':' +\n triggerEvent +\n (undefined !== msg ? ':' + msg : '')\n\n log('Sending message to host page (' + message + ')')\n target.postMessage(msgID + message, targetOrigin)\n }\n\n if (true === sendPermit) {\n setTargetOrigin()\n sendToParent()\n }\n }\n\n function receiver(event) {\n var processRequestFromParent = {\n init: function initFromParent() {\n initMsg = event.data\n target = event.source\n\n init()\n firstRun = false\n setTimeout(function () {\n initLock = false\n }, eventCancelTimer)\n },\n\n reset: function resetFromParent() {\n if (!initLock) {\n log('Page size reset by host page')\n triggerReset('resetPage')\n } else {\n log('Page reset ignored by init')\n }\n },\n\n resize: function resizeFromParent() {\n sendSize('resizeParent', 'Parent window requested size check')\n },\n\n moveToAnchor: function moveToAnchorF() {\n inPageLinks.findTarget(getData())\n },\n inPageLink: function inPageLinkF() {\n this.moveToAnchor()\n }, // Backward compatability\n\n pageInfo: function pageInfoFromParent() {\n var msgBody = getData()\n log('PageInfoFromParent called from parent: ' + msgBody)\n onPageInfo(JSON.parse(msgBody))\n log(' --')\n },\n\n message: function messageFromParent() {\n var msgBody = getData()\n\n log('onMessage called from parent: ' + msgBody)\n // eslint-disable-next-line sonarjs/no-extra-arguments\n onMessage(JSON.parse(msgBody))\n log(' --')\n }\n }\n\n function isMessageForUs() {\n return msgID === ('' + event.data).substr(0, msgIdLen) // ''+ Protects against non-string messages\n }\n\n function getMessageType() {\n return event.data.split(']')[1].split(':')[0]\n }\n\n function getData() {\n return event.data.substr(event.data.indexOf(':') + 1)\n }\n\n function isMiddleTier() {\n return (\n (!(typeof module !== 'undefined' && module.exports) &&\n 'iFrameResize' in window) ||\n ('jQuery' in window && 'iFrameResize' in window.jQuery.prototype)\n )\n }\n\n function isInitMsg() {\n // Test if this message is from a child below us. This is an ugly test, however, updating\n // the message format would break backwards compatibity.\n return event.data.split(':')[2] in { true: 1, false: 1 }\n }\n\n function callFromParent() {\n var messageType = getMessageType()\n\n if (messageType in processRequestFromParent) {\n processRequestFromParent[messageType]()\n } else if (!isMiddleTier() && !isInitMsg()) {\n warn('Unexpected message (' + event.data + ')')\n }\n }\n\n function processMessage() {\n if (false === firstRun) {\n callFromParent()\n } else if (isInitMsg()) {\n processRequestFromParent.init()\n } else {\n log(\n 'Ignored message of type \"' +\n getMessageType() +\n '\". Received before initialization.'\n )\n }\n }\n\n if (isMessageForUs()) {\n processMessage()\n }\n }\n\n // Normally the parent kicks things off when it detects the iFrame has loaded.\n // If this script is async-loaded, then tell parent page to retry init.\n function chkLateLoaded() {\n if ('loading' !== document.readyState) {\n window.parent.postMessage('[iFrameResizerChild]Ready', '*')\n }\n }\n\n addEventListener(window, 'message', receiver)\n addEventListener(window, 'readystatechange', chkLateLoaded)\n chkLateLoaded()\n\n \n})()\n","import api from \"!../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import content from \"!!../node_modules/css-loader/dist/cjs.js!./html-response.css\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};"],"sourceRoot":""}