{"version":3,"file":"js/contentTeaserBlock.ae342d367e0326187e91.js","mappings":"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","sources":["webpack://netzkern.am/./node_modules/jquery-match-height/dist/jquery.matchHeight.js","webpack://netzkern.am/./node_modules/lodash.debounce/index.js","webpack://netzkern.am/./src/Foundation/Common/code/Frontend/General/global-js/SelfInitComponent.js","webpack://netzkern.am/./src/Foundation/Common/code/Frontend/General/global-js/nextTick.js","webpack://netzkern.am/./src/Foundation/Common/code/Frontend/components/molecules/contentTeaserBlock/contentTeaserBlock.cmp.js"],"sourcesContent":["/**\n* jquery-match-height 0.7.2 by @liabru\n* http://brm.io/jquery-match-height/\n* License: MIT\n*/\n\n;(function(factory) { // eslint-disable-line no-extra-semi\n 'use strict';\n if (typeof define === 'function' && define.amd) {\n // AMD\n define(['jquery'], factory);\n } else if (typeof module !== 'undefined' && module.exports) {\n // CommonJS\n module.exports = factory(require('jquery'));\n } else {\n // Global\n factory(jQuery);\n }\n})(function($) {\n /*\n * internal\n */\n\n var _previousResizeWidth = -1,\n _updateTimeout = -1;\n\n /*\n * _parse\n * value parse utility function\n */\n\n var _parse = function(value) {\n // parse value and convert NaN to 0\n return parseFloat(value) || 0;\n };\n\n /*\n * _rows\n * utility function returns array of jQuery selections representing each row\n * (as displayed after float wrapping applied by browser)\n */\n\n var _rows = function(elements) {\n var tolerance = 1,\n $elements = $(elements),\n lastTop = null,\n rows = [];\n\n // group elements by their top position\n $elements.each(function(){\n var $that = $(this),\n top = $that.offset().top - _parse($that.css('margin-top')),\n lastRow = rows.length > 0 ? rows[rows.length - 1] : null;\n\n if (lastRow === null) {\n // first item on the row, so just push it\n rows.push($that);\n } else {\n // if the row top is the same, add to the row group\n if (Math.floor(Math.abs(lastTop - top)) <= tolerance) {\n rows[rows.length - 1] = lastRow.add($that);\n } else {\n // otherwise start a new row group\n rows.push($that);\n }\n }\n\n // keep track of the last row top\n lastTop = top;\n });\n\n return rows;\n };\n\n /*\n * _parseOptions\n * handle plugin options\n */\n\n var _parseOptions = function(options) {\n var opts = {\n byRow: true,\n property: 'height',\n target: null,\n remove: false\n };\n\n if (typeof options === 'object') {\n return $.extend(opts, options);\n }\n\n if (typeof options === 'boolean') {\n opts.byRow = options;\n } else if (options === 'remove') {\n opts.remove = true;\n }\n\n return opts;\n };\n\n /*\n * matchHeight\n * plugin definition\n */\n\n var matchHeight = $.fn.matchHeight = function(options) {\n var opts = _parseOptions(options);\n\n // handle remove\n if (opts.remove) {\n var that = this;\n\n // remove fixed height from all selected elements\n this.css(opts.property, '');\n\n // remove selected elements from all groups\n $.each(matchHeight._groups, function(key, group) {\n group.elements = group.elements.not(that);\n });\n\n // TODO: cleanup empty groups\n\n return this;\n }\n\n if (this.length <= 1 && !opts.target) {\n return this;\n }\n\n // keep track of this group so we can re-apply later on load and resize events\n matchHeight._groups.push({\n elements: this,\n options: opts\n });\n\n // match each element's height to the tallest element in the selection\n matchHeight._apply(this, opts);\n\n return this;\n };\n\n /*\n * plugin global options\n */\n\n matchHeight.version = '0.7.2';\n matchHeight._groups = [];\n matchHeight._throttle = 80;\n matchHeight._maintainScroll = false;\n matchHeight._beforeUpdate = null;\n matchHeight._afterUpdate = null;\n matchHeight._rows = _rows;\n matchHeight._parse = _parse;\n matchHeight._parseOptions = _parseOptions;\n\n /*\n * matchHeight._apply\n * apply matchHeight to given elements\n */\n\n matchHeight._apply = function(elements, options) {\n var opts = _parseOptions(options),\n $elements = $(elements),\n rows = [$elements];\n\n // take note of scroll position\n var scrollTop = $(window).scrollTop(),\n htmlHeight = $('html').outerHeight(true);\n\n // get hidden parents\n var $hiddenParents = $elements.parents().filter(':hidden');\n\n // cache the original inline style\n $hiddenParents.each(function() {\n var $that = $(this);\n $that.data('style-cache', $that.attr('style'));\n });\n\n // temporarily must force hidden parents visible\n $hiddenParents.css('display', 'block');\n\n // get rows if using byRow, otherwise assume one row\n if (opts.byRow && !opts.target) {\n\n // must first force an arbitrary equal height so floating elements break evenly\n $elements.each(function() {\n var $that = $(this),\n display = $that.css('display');\n\n // temporarily force a usable display value\n if (display !== 'inline-block' && display !== 'flex' && display !== 'inline-flex') {\n display = 'block';\n }\n\n // cache the original inline style\n $that.data('style-cache', $that.attr('style'));\n\n $that.css({\n 'display': display,\n 'padding-top': '0',\n 'padding-bottom': '0',\n 'margin-top': '0',\n 'margin-bottom': '0',\n 'border-top-width': '0',\n 'border-bottom-width': '0',\n 'height': '100px',\n 'overflow': 'hidden'\n });\n });\n\n // get the array of rows (based on element top position)\n rows = _rows($elements);\n\n // revert original inline styles\n $elements.each(function() {\n var $that = $(this);\n $that.attr('style', $that.data('style-cache') || '');\n });\n }\n\n $.each(rows, function(key, row) {\n var $row = $(row),\n targetHeight = 0;\n\n if (!opts.target) {\n // skip apply to rows with only one item\n if (opts.byRow && $row.length <= 1) {\n $row.css(opts.property, '');\n return;\n }\n\n // iterate the row and find the max height\n $row.each(function(){\n var $that = $(this),\n style = $that.attr('style'),\n display = $that.css('display');\n\n // temporarily force a usable display value\n if (display !== 'inline-block' && display !== 'flex' && display !== 'inline-flex') {\n display = 'block';\n }\n\n // ensure we get the correct actual height (and not a previously set height value)\n var css = { 'display': display };\n css[opts.property] = '';\n $that.css(css);\n\n // find the max height (including padding, but not margin)\n if ($that.outerHeight(false) > targetHeight) {\n targetHeight = $that.outerHeight(false);\n }\n\n // revert styles\n if (style) {\n $that.attr('style', style);\n } else {\n $that.css('display', '');\n }\n });\n } else {\n // if target set, use the height of the target element\n targetHeight = opts.target.outerHeight(false);\n }\n\n // iterate the row and apply the height to all elements\n $row.each(function(){\n var $that = $(this),\n verticalPadding = 0;\n\n // don't apply to a target\n if (opts.target && $that.is(opts.target)) {\n return;\n }\n\n // handle padding and border correctly (required when not using border-box)\n if ($that.css('box-sizing') !== 'border-box') {\n verticalPadding += _parse($that.css('border-top-width')) + _parse($that.css('border-bottom-width'));\n verticalPadding += _parse($that.css('padding-top')) + _parse($that.css('padding-bottom'));\n }\n\n // set the height (accounting for padding and border)\n $that.css(opts.property, (targetHeight - verticalPadding) + 'px');\n });\n });\n\n // revert hidden parents\n $hiddenParents.each(function() {\n var $that = $(this);\n $that.attr('style', $that.data('style-cache') || null);\n });\n\n // restore scroll position if enabled\n if (matchHeight._maintainScroll) {\n $(window).scrollTop((scrollTop / htmlHeight) * $('html').outerHeight(true));\n }\n\n return this;\n };\n\n /*\n * matchHeight._applyDataApi\n * applies matchHeight to all elements with a data-match-height attribute\n */\n\n matchHeight._applyDataApi = function() {\n var groups = {};\n\n // generate groups by their groupId set by elements using data-match-height\n $('[data-match-height], [data-mh]').each(function() {\n var $this = $(this),\n groupId = $this.attr('data-mh') || $this.attr('data-match-height');\n\n if (groupId in groups) {\n groups[groupId] = groups[groupId].add($this);\n } else {\n groups[groupId] = $this;\n }\n });\n\n // apply matchHeight to each group\n $.each(groups, function() {\n this.matchHeight(true);\n });\n };\n\n /*\n * matchHeight._update\n * updates matchHeight on all current groups with their correct options\n */\n\n var _update = function(event) {\n if (matchHeight._beforeUpdate) {\n matchHeight._beforeUpdate(event, matchHeight._groups);\n }\n\n $.each(matchHeight._groups, function() {\n matchHeight._apply(this.elements, this.options);\n });\n\n if (matchHeight._afterUpdate) {\n matchHeight._afterUpdate(event, matchHeight._groups);\n }\n };\n\n matchHeight._update = function(throttle, event) {\n // prevent update if fired from a resize event\n // where the viewport width hasn't actually changed\n // fixes an event looping bug in IE8\n if (event && event.type === 'resize') {\n var windowWidth = $(window).width();\n if (windowWidth === _previousResizeWidth) {\n return;\n }\n _previousResizeWidth = windowWidth;\n }\n\n // throttle updates\n if (!throttle) {\n _update(event);\n } else if (_updateTimeout === -1) {\n _updateTimeout = setTimeout(function() {\n _update(event);\n _updateTimeout = -1;\n }, matchHeight._throttle);\n }\n };\n\n /*\n * bind events\n */\n\n // apply on DOM ready event\n $(matchHeight._applyDataApi);\n\n // use on or bind where supported\n var on = $.fn.on ? 'on' : 'bind';\n\n // update heights on load and resize events\n $(window)[on]('load', function(event) {\n matchHeight._update(false, event);\n });\n\n // throttled update heights on resize events\n $(window)[on]('resize orientationchange', function(event) {\n matchHeight._update(true, event);\n });\n\n});\n","/**\n * lodash (Custom Build) \n * Build: `lodash modularize exports=\"npm\" -o ./`\n * Copyright jQuery Foundation and other contributors \n * Released under MIT license \n * Based on Underscore.js 1.8.3 \n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n\n/** Used as the `TypeError` message for \"Functions\" methods. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/** Used as references for various `Number` constants. */\nvar NAN = 0 / 0;\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/** Used to match leading and trailing whitespace. */\nvar reTrim = /^\\s+|\\s+$/g;\n\n/** Used to detect bad signed hexadecimal string values. */\nvar reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n/** Used to detect binary string values. */\nvar reIsBinary = /^0b[01]+$/i;\n\n/** Used to detect octal string values. */\nvar reIsOctal = /^0o[0-7]+$/i;\n\n/** Built-in method references without a dependency on `root`. */\nvar freeParseInt = parseInt;\n\n/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar objectToString = objectProto.toString;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n\n/**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\nvar now = function() {\n return root.Date.now();\n};\n\n/**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\nfunction debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n result = wait - timeSinceLastCall;\n\n return maxing ? nativeMin(result, maxWait - timeSinceLastInvoke) : result;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n}\n\n/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return !!value && (type == 'object' || type == 'function');\n}\n\n/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return !!value && typeof value == 'object';\n}\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && objectToString.call(value) == symbolTag);\n}\n\n/**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\nfunction toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = value.replace(reTrim, '');\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n}\n\nmodule.exports = debounce;\n","import _debounce from \"lodash.debounce/index\";\r\n\r\n\r\nconst readyStates = {\r\n loading: 0,\r\n interactive: 1,\r\n complete: 2\r\n}\r\n\r\n/**\r\n *\r\n * SelfInitComponent - for every class / component deriving from it and overriding init, init will be executed on DOMReady\r\n * @module SelfInitComponent\r\n */\r\n\r\n/** The class SelfInitComponent*/\r\nexport default class SelfInitComponent {\r\n\r\n /**\r\n * constructor: Creates an instance of SelfInitComponent.\r\n * @param {string} selector selector to find corresponding element in DOM\r\n * @param {Object} [implementedEvents=null] the options object\r\n * @param {boolean} [implementedEvents.leading=true] specify invoking on the leading edge of the timeout (setting false: trailing edge of timeout)\r\n * @param {boolean} [implementedEvents.executeImmediate=false] execute function immediately, then listen for event\r\n * @param {number} [implementedEvents.debounceTime=50] number of milliseconds to delay\r\n * @memberof SelfInitComponent\r\n */\r\n constructor(selector, implementedEvents = null) {\r\n\r\n const callEvents = () => {\r\n if (document.querySelectorAll(selector) != null && document.querySelectorAll(selector).length > 0) {\r\n this.init();\r\n }\r\n if (implementedEvents) {\r\n for (const eventKey in implementedEvents) {\r\n if (this.__proto__[eventKey]) {\r\n if (implementedEvents[eventKey]) {\r\n if (typeof implementedEvents[eventKey] == \"object\") {\r\n if (!implementedEvents[eventKey][\"debounce\"]) {\r\n window.addEventListener(eventKey, this.__proto__[eventKey]);\r\n } else {\r\n debounce(eventKey, this.__proto__[eventKey], implementedEvents[eventKey].debounceTime, implementedEvents[eventKey].trailing);\r\n }\r\n if (implementedEvents[eventKey][\"executeImmediate\"]) {\r\n this.__proto__[eventKey]();\r\n }\r\n } else {\r\n debounce(eventKey, this.__proto__[eventKey]);\r\n }\r\n } else {\r\n window.addEventListener(eventKey, this.__proto__[eventKey]);\r\n }\r\n // eslint-disable-next-line no-undef\r\n } else if ((`${BUILDMODE}`) == \"development\") {\r\n //render an error-message in the browser-console in development mode, if there is an event in the given parameter object with no corresponding method\r\n // eslint-disable-next-line no-console\r\n console.warn(`trying to assign an non-existing function to the event '${eventKey}'`);\r\n }\r\n }\r\n }\r\n\r\n }\r\n\r\n if (readyStates[document.readyState] < readyStates.interactive) {\r\n window.addEventListener(\"load\", callEvents);\r\n } else {\r\n callEvents();\r\n }\r\n }\r\n // default init method to be overriden by child components\r\n init() { }\r\n}\r\n\r\nfunction debounce(eventKey, givenFunction, debounceTime = 50, leading = true) {\r\n const debounced_func = _debounce(givenFunction, debounceTime, {\r\n leading: leading,\r\n trailing: !leading\r\n });\r\n window.addEventListener(eventKey, debounced_func);\r\n}","/**\r\n * This file is an copy of vue.esm.js function nextTick() and it's dependencies.\r\n */\r\n\r\n// Browser environment sniffing\r\nconst inBrowser = typeof window !== 'undefined';\r\nconst UA = inBrowser && window.navigator.userAgent.toLowerCase();\r\nconst isIE = UA && /msie|trident/.test(UA);\r\nconst isIOS = UA && /iphone|ipad|ipod|ios/.test(UA);\r\n\r\nfunction isNative(Ctor) {\r\n return typeof Ctor === 'function' && /native code/.test(Ctor.toString());\r\n}\r\n\r\n/* eslint-disable no-unused-vars */\r\n/**\r\n * Perform no operation.\r\n * Stubbing args to make Flow happy without leaving useless transpiled code\r\n * with ...rest (https://flow.org/blog/2017/05/07/Strict-Function-Call-Arity/).\r\n */\r\nfunction noop(a, b, c) { }\r\n\r\n/* globals MutationObserver */\r\nlet isUsingMicroTask = false;\r\nconst callbacks = [];\r\nlet pending = false;\r\nfunction flushCallbacks() {\r\n pending = false;\r\n const copies = callbacks.slice(0);\r\n callbacks.length = 0;\r\n for (let i = 0; i < copies.length; i++) {\r\n copies[i]();\r\n }\r\n}\r\n// Here we have async deferring wrappers using microtasks.\r\n// In 2.5 we used (macro) tasks (in combination with microtasks).\r\n// However, it has subtle problems when state is changed right before repaint\r\n// (e.g. #6813, out-in transitions).\r\n// Also, using (macro) tasks in event handler would cause some weird behaviors\r\n// that cannot be circumvented (e.g. #7109, #7153, #7546, #7834, #8109).\r\n// So we now use microtasks everywhere, again.\r\n// A major drawback of this tradeoff is that there are some scenarios\r\n// where microtasks have too high a priority and fire in between supposedly\r\n// sequential events (e.g. #4521, #6690, which have workarounds)\r\n// or even between bubbling of the same event (#6566).\r\nlet timerFunc;\r\n// The nextTick behavior leverages the microtask queue, which can be accessed\r\n// via either native Promise.then or MutationObserver.\r\n// MutationObserver has wider support, however it is seriously bugged in\r\n// UIWebView in iOS >= 9.3.3 when triggered in touch event handlers. It\r\n// completely stops working after triggering a few times... so, if native\r\n// Promise is available, we will use it:\r\n/* istanbul ignore next, $flow-disable-line */\r\nif (typeof Promise !== 'undefined' && isNative(Promise)) {\r\n const p = Promise.resolve();\r\n timerFunc = () => {\r\n p.then(flushCallbacks);\r\n // In problematic UIWebViews, Promise.then doesn't completely break, but\r\n // it can get stuck in a weird state where callbacks are pushed into the\r\n // microtask queue but the queue isn't being flushed, until the browser\r\n // needs to do some other work, e.g. handle a timer. Therefore we can\r\n // \"force\" the microtask queue to be flushed by adding an empty timer.\r\n if (isIOS)\r\n setTimeout(noop);\r\n };\r\n isUsingMicroTask = true;\r\n}\r\nelse if (!isIE &&\r\n typeof MutationObserver !== 'undefined' &&\r\n (isNative(MutationObserver) ||\r\n // PhantomJS and iOS 7.x\r\n MutationObserver.toString() === '[object MutationObserverConstructor]')) {\r\n // Use MutationObserver where native Promise is not available,\r\n // e.g. PhantomJS, iOS7, Android 4.4\r\n // (#6466 MutationObserver is unreliable in IE11)\r\n let counter = 1;\r\n const observer = new MutationObserver(flushCallbacks);\r\n const textNode = document.createTextNode(String(counter));\r\n observer.observe(textNode, {\r\n characterData: true\r\n });\r\n timerFunc = () => {\r\n counter = (counter + 1) % 2;\r\n textNode.data = String(counter);\r\n };\r\n isUsingMicroTask = true;\r\n}\r\nelse if (typeof setImmediate !== 'undefined' && isNative(setImmediate)) {\r\n // Fallback to setImmediate.\r\n // Technically it leverages the (macro) task queue,\r\n // but it is still a better choice than setTimeout.\r\n timerFunc = () => {\r\n setImmediate(flushCallbacks);\r\n };\r\n}\r\nelse {\r\n // Fallback to setTimeout.\r\n timerFunc = () => {\r\n setTimeout(flushCallbacks, 0);\r\n };\r\n}\r\n\r\nfunction nextTick(cb, ctx) {\r\n let _resolve;\r\n callbacks.push(() => {\r\n if (cb) {\r\n try {\r\n cb.call(ctx);\r\n }\r\n catch (e) {\r\n //handleError(e, ctx, 'nextTick');\r\n console.error(e, ctx, 'nextTick')\r\n }\r\n }\r\n else if (_resolve) {\r\n _resolve(ctx);\r\n }\r\n });\r\n if (!pending) {\r\n pending = true;\r\n timerFunc();\r\n }\r\n // $flow-disable-line\r\n if (!cb && typeof Promise !== 'undefined') {\r\n return new Promise(resolve => {\r\n _resolve = resolve;\r\n });\r\n }\r\n}\r\n\r\nexport default nextTick;","import SelfInitComponent from \"General/global-js/SelfInitComponent\";\r\nimport nextTick from \"General/global-js/nextTick\";\r\nimport \"jquery-match-height\";\r\nimport \"slick-carousel\";\r\n\r\nclass ContentTeaserBlockComponent extends SelfInitComponent {\r\n\r\n constructor(selector) {\r\n\r\n super(selector);\r\n this.sliderIsInitializes = false;\r\n }\r\n\r\n init() {\r\n var that = this;\r\n\r\n if (this.isMobileWidth()) {\r\n this.initSlider();\r\n }\r\n\r\n that.checkTextBoxHeight();\r\n\r\n\r\n $(window).on(\"resize\", function () {\r\n if (that.isMobileWidth() && !that.sliderIsInitializes) {\r\n that.initSlider();\r\n }\r\n\r\n setTimeout(function () {\r\n that.checkTextBoxHeight();\r\n }, 100); \r\n });\r\n }\r\n\r\n isMobileWidth() {\r\n return $(window).width() <= 767;\r\n }\r\n\r\n initSlider() {\r\n this.sliderIsInitializes = true;\r\n\r\n $(\".content-teaser-block\").each(function () {\r\n var $dotsNavContainer = $(this).find(\".pagination-dots\");\r\n var $prevArrow = $(this).find(\".pagination .pagination-prev\");\r\n var $nextArrow = $(this).find(\".pagination .pagination-next\");\r\n var $slider = $(this).find(\".content-teaser-block-slider\");\r\n var dotsForTranslation = $dotsNavContainer.attr(\"data-dots-of-translation\");\r\n\r\n // hack for fixing labels that always gets overriden\r\n var fixDotTranslation = function () {\r\n if (!dotsForTranslation?.length) {\r\n return;\r\n }\r\n\r\n nextTick(function () {\r\n var slideCounter = 1;\r\n var slideCount = $dotsNavContainer.find(\"button\").length;\r\n $dotsNavContainer.find(\"button\").each(function () {\r\n var ariaLabel = slideCounter + \" \" + dotsForTranslation + \" \" + slideCount;\r\n $(this).attr(\"aria-label\", ariaLabel);\r\n slideCounter++;\r\n });\r\n });\r\n };\r\n\r\n $slider.on(\"init reInit afterChange\", function (slick) {\r\n fixDotTranslation();\r\n });\r\n\r\n $slider.not('.slick-initialized').slick({\r\n speed: 0,\r\n adaptiveHeight: true,\r\n arrows: true,\r\n dots: true,\r\n appendDots: $dotsNavContainer,\r\n prevArrow: $prevArrow,\r\n nextArrow: $nextArrow,\r\n dotsClass: \"pagination-dots\",\r\n });\r\n });\r\n }\r\n\r\n checkTextBoxHeight() {\r\n var textboxes = $(\".content-teaser-block-page .text-box\");\r\n var headlines = $(\".content-teaser-block-page .headline-element\")\r\n var blockText = $(\".content-teaser-block-page .content-teaser-block-text\")\r\n var links = $(\".content-teaser-block-page .link\") \r\n\r\n if (!this.isMobileWidth()) {\r\n delete headlines.first();\r\n delete blockText.first();\r\n delete links.first();\r\n delete textboxes.first();\r\n }\r\n\r\n headlines.matchHeight();\r\n blockText.matchHeight();\r\n links.matchHeight();\r\n textboxes.matchHeight();\r\n }\r\n}\r\n\r\nnew ContentTeaserBlockComponent(\".content-teaser-block-slider\");"],"names":["factory","$","_previousResizeWidth","_updateTimeout","_parse","value","parseFloat","_rows","elements","tolerance","$elements","lastTop","rows","each","$that","this","top","offset","css","lastRow","length","push","Math","floor","abs","add","_parseOptions","options","opts","byRow","property","target","remove","extend","matchHeight","fn","that","_groups","key","group","not","_apply","version","_throttle","_maintainScroll","_beforeUpdate","_afterUpdate","scrollTop","window","htmlHeight","outerHeight","$hiddenParents","parents","filter","data","attr","display","row","$row","targetHeight","style","verticalPadding","is","_applyDataApi","groups","$this","groupId","_update","event","throttle","type","windowWidth","width","setTimeout","on","reTrim","reIsBadHex","reIsBinary","reIsOctal","freeParseInt","parseInt","freeGlobal","g","Object","freeSelf","self","root","Function","objectToString","prototype","toString","nativeMax","max","nativeMin","min","now","Date","isObject","toNumber","isObjectLike","call","isSymbol","other","valueOf","replace","isBinary","test","slice","module","exports","func","wait","lastArgs","lastThis","maxWait","result","timerId","lastCallTime","lastInvokeTime","leading","maxing","trailing","TypeError","invokeFunc","time","args","thisArg","undefined","apply","leadingEdge","timerExpired","shouldInvoke","timeSinceLastCall","trailingEdge","remainingWait","debounced","isInvoking","arguments","cancel","clearTimeout","flush","readyStates","loading","interactive","complete","SelfInitComponent","constructor","selector","implementedEvents","callEvents","document","querySelectorAll","init","eventKey","__proto__","debounce","debounceTime","addEventListener","BUILDMODE","console","warn","readyState","givenFunction","debounced_func","_debounce","UA","navigator","userAgent","toLowerCase","isIE","isIOS","isNative","Ctor","noop","a","b","c","isUsingMicroTask","callbacks","timerFunc","pending","flushCallbacks","copies","i","Promise","p","resolve","then","MutationObserver","setImmediate","counter","observer","textNode","createTextNode","String","observe","characterData","cb","ctx","_resolve","e","error","ContentTeaserBlockComponent","super","sliderIsInitializes","isMobileWidth","initSlider","checkTextBoxHeight","$dotsNavContainer","find","$prevArrow","$nextArrow","$slider","dotsForTranslation","slick","nextTick","slideCounter","slideCount","ariaLabel","speed","adaptiveHeight","arrows","dots","appendDots","prevArrow","nextArrow","dotsClass","textboxes","headlines","blockText","links","first"],"sourceRoot":""}