{"version":3,"file":"js/global.js","mappings":"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","sources":["webpack://sd/./src/js/beverage-cans.js","webpack://sd/./src/js/cookies.js","webpack://sd/./src/js/crown-locations.js","webpack://sd/./src/js/header.js","webpack://sd/./src/js/hero-slider.js","webpack://sd/./src/js/how-to-choose.js","webpack://sd/./src/js/news.js","webpack://sd/./src/js/product-detail-items.js","webpack://sd/./src/js/reduce-motion.js","webpack://sd/./src/js/vertical-content-carousel.js","webpack://sd/./src/js/video.js","webpack://sd/./node_modules/jquery-once/jquery.once.min.js","webpack://sd/./node_modules/stacktable.js/stacktable.js","webpack://sd/external \"jQuery\"","webpack://sd/webpack/bootstrap","webpack://sd/./src/js/tables.js","webpack://sd/./src/js/main.js"],"sourcesContent":["(function(jQuery, Drupal) {\n 'use strict';\n\n Drupal.behaviors.beverageCans = {\n attach: function(context, settings) {\n\n // Set a class on the related field for the currently selected system of measurement\n const setMeasurementClass = function($input) {\n const $field = $input.closest('.block-content').find('.field--name-field-pbc-specs');\n $field.removeClass('system-metric');\n $field.removeClass('system-imperial');\n $field.addClass('system-' + $input.val());\n };\n\n // Update the class when the value changes\n jQuery('.specs-measurement-toggle input[name=\"measurement-system\"]').unbind().change(function(e) {\n const $input = jQuery(this);\n setMeasurementClass($input);\n });\n\n // Allow a click on the slider to change the value\n jQuery('.specs-measurement-toggle .toggle-slider').unbind().click(function(e) {\n const $uncheckedInput = jQuery('input[name=\"measurement-system\"]').not(':checked');\n $uncheckedInput.prop('checked', true);\n setMeasurementClass($uncheckedInput);\n });\n\n jQuery('.specs-measurement-toggle .label').unbind().on('keypress', function(e) {\n const $label = jQuery(this);\n\n if (e.which === 13) {\n $label.click();\n }\n });\n\n //* Removes Unit text from labels (visually)\n jQuery('.paragraph--type--specs .field__label').each(function() {\n const $label = jQuery(this);\n if ($label.find('.unit').length === 0) {\n $label.html(function(_, html) {\n return html.replace(/(\\s*Metric|Imperial\\s*)/g, '$1');\n });\n }\n });\n }\n };\n\n})(jQuery, Drupal);\n","(function(jQuery, Drupal) {\n 'use strict';\n\n Drupal.behaviors.cookies = {\n attach: function(context, settings) {\n\n window.setCookie = function(cname, cvalue, exdays) {\n var d = new Date();\n d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000));\n document.cookie = `${cname}=${cvalue};expires=${d.toUTCString()};path=/`;\n };\n\n window.getCookie = function(cname) {\n var name = cname + '=';\n var decodedCookie = decodeURIComponent(document.cookie);\n var ca = decodedCookie.split(';');\n for (var i = 0; i < ca.length; i++) {\n var c = ca[i];\n while (c.charAt(0) === ' ') {\n c = c.substring(1);\n }\n if (c.indexOf(name) === 0) {\n return c.substring(name.length, c.length);\n }\n }\n return '';\n };\n\n window.deleteCookie = function(cname) {\n window.setCookie(cname, null, 0);\n };\n\n window.showCookieSettings = function() {\n const $popup = jQuery('#sliding-popup');\n\n if (!($popup.length > 0)) {\n window.deleteCookie('cookie-agreed');\n window.location.reload();\n }\n\n if ($popup.css('display') === 'none') {\n $popup.css({'display': ''});\n }\n Drupal.eu_cookie_compliance.toggleWithdrawBanner();\n jQuery('.eu-cookie-compliance-content .agree-button').focus();\n jQuery('body').addClass('eu-cookie-compliance-popup-open');\n };\n\n jQuery(document).ready(function() {\n const $popup = jQuery('#sliding-popup');\n $popup.removeAttr('role');\n // $popup.addClass('loaded');\n // $popup.css({'bottom': '0px'});\n // $popup.unbind();\n // jQuery('.global-footer').append($popup);\n\n jQuery('#menu-legalfooter--cookie-settings, .cookie-notice-cookie-settings').click(function(e) {\n e.preventDefault();\n window.showCookieSettings();\n });\n });\n }\n };\n})(jQuery, Drupal);\n","(function($, Drupal) {\n 'use strict';\n\n Drupal.behaviors.crownLocations = {\n attach: function(context, settings) {\n $('#toggle-location-filter').once('filter-toggle').each(function() {\n // Add toggle button\n const $btn = jQuery(this);\n const $block = jQuery(this).parent();\n const $form = $block.find('.view-filters');\n\n $btn.click(function() {\n $btn.toggleClass('open');\n $form.slideToggle(300);\n });\n\n // Map Funcitionality\n $.getScript('https://maps.googleapis.com/maps/api/js?key=AIzaSyDphOBseVrNA3GUhmYJccfxMp9XA8dwxxY&v=3.exp&sensor=false', function() {\n $(document).ready(function() {\n let map;\n // Map styles\n let map_styles = [\n {\n 'featureType': 'poi',\n 'elementType': 'all',\n 'stylers': [\n {\n 'hue': '#000000'\n },\n {\n 'saturation': -100\n },\n {\n 'lightness': -100\n },\n {\n 'visibility': 'off'\n }\n ]\n },\n {\n 'featureType': 'poi',\n 'elementType': 'all',\n 'stylers': [\n {\n 'hue': '#000000'\n },\n {\n 'saturation': -100\n },\n {\n 'lightness': -100\n },\n {\n 'visibility': 'off'\n }\n ]\n },\n {\n 'featureType': 'administrative',\n 'elementType': 'all',\n 'stylers': [\n {\n 'hue': '#000000'\n },\n {\n 'saturation': 0\n },\n {\n 'lightness': -100\n },\n {\n 'visibility': 'off'\n }\n ]\n },\n {\n 'featureType': 'road',\n 'elementType': 'labels',\n 'stylers': [\n {\n 'hue': '#ffffff'\n },\n {\n 'saturation': -100\n },\n {\n 'lightness': 100\n },\n {\n 'visibility': 'off'\n }\n ]\n },\n {\n 'featureType': 'water',\n 'elementType': 'labels',\n 'stylers': [\n {\n 'hue': '#000000'\n },\n {\n 'saturation': -100\n },\n {\n 'lightness': -100\n },\n {\n 'visibility': 'off'\n }\n ]\n },\n {\n 'featureType': 'road.local',\n 'elementType': 'all',\n 'stylers': [\n {\n 'hue': '#ffffff'\n },\n {\n 'saturation': -100\n },\n {\n 'lightness': 100\n },\n {\n 'visibility': 'on'\n }\n ]\n },\n {\n 'featureType': 'water',\n 'elementType': 'geometry',\n 'stylers': [\n {\n 'hue': '#ffffff'\n },\n {\n 'saturation': -100\n },\n {\n 'lightness': 100\n },\n {\n 'visibility': 'on'\n }\n ]\n },\n {\n 'featureType': 'transit',\n 'elementType': 'labels',\n 'stylers': [\n {\n 'hue': '#000000'\n },\n {\n 'saturation': 0\n },\n {\n 'lightness': -100\n },\n {\n 'visibility': 'off'\n }\n ]\n },\n {\n 'featureType': 'landscape',\n 'elementType': 'labels',\n 'stylers': [\n {\n 'hue': '#000000'\n },\n {\n 'saturation': -100\n },\n {\n 'lightness': -100\n },\n {\n 'visibility': 'off'\n }\n ]\n },\n {\n 'featureType': 'road',\n 'elementType': 'geometry',\n 'stylers': [\n {\n 'hue': '#bbbbbb'\n },\n {\n 'saturation': -100\n },\n {\n 'lightness': 26\n },\n {\n 'visibility': 'on'\n }\n ]\n },\n {\n 'featureType': 'landscape',\n 'elementType': 'geometry',\n 'stylers': [\n {\n 'hue': '#dddddd'\n },\n {\n 'saturation': -100\n },\n {\n 'lightness': -3\n },\n {\n 'visibility': 'on'\n }\n ]\n }\n ];\n // Map options\n let mapOptions = {\n zoom: 2,\n mapTypeId: 'roadmap',\n styles: map_styles\n };\n\n // Set the api fetch URL up with our API key\n // let fetch_geo_url = 'https://maps.googleapis.com/maps/api/geocode/json?key=AIzaSyDphOBseVrNA3GUhmYJccfxMp9XA8dwxxY&address=';\n // Create new map, div is located: templates/views/locations/views-view-unformatted--crown-locations-block-1.html.twig\n map = new google.maps.Map($('#map_canvas')[0], mapOptions);\n\n // Grab locations, the title format used works for fetching geo coding of the locations\n let $addresses = $('.view-id-crown_locations .location');\n\n // Create area of location strings\n let $addresses_array = [];\n $.each($addresses, function() {\n $addresses_array.push([\n $(this).find('.views-field-title').text().trim(),\n $(this).find('.views-field-field-latitude').text().trim(),\n $(this).find('.views-field-field-longitude').text().trim()\n ]);\n });\n\n let currentinfo = null;\n let bounds = new google.maps.LatLngBounds();\n // For each location fetch its geo code and create a marker and infowindow, adds open/close functionality to infowindows\n $.each($addresses_array, function(index, _callback) {\n if ($addresses_array[index][1] !== '' && $addresses_array[index][2] !== '') {\n // Fetch\n let $label = $addresses_array[index][0];\n let latlng = new google.maps.LatLng($addresses_array[index][1], $addresses_array[index][2]);\n\n // Create info window\n const contentString = '
' + $label + '
';\n const infowindow = new google.maps.InfoWindow({\n content: contentString\n });\n\n // Create Marker, attached custom icon\n const marker = new google.maps.Marker({\n position: latlng,\n map: map,\n title: $label,\n icon: {\n url: '/themes/_custom/sd/src/img/map-pin.png',\n scaledSize: new google.maps.Size(27, 36)\n }\n });\n\n bounds.extend(marker.position);\n\n // Infowindow functionality\n marker.addListener('click', () => {\n infowindow.open({\n anchor: marker,\n map,\n shouldFocus: false\n });\n });\n\n // Make Location text clickable items\n const $related_span = $('span:contains(\"' + $label + '\")');\n $related_span.attr('tabindex', 0);\n $related_span.on('click', () => {\n if (currentinfo) {\n currentinfo.close();\n }\n infowindow.open(map, marker);\n currentinfo = infowindow;\n // scroll to map, with active marker\n $('html, body').animate({scrollTop: $('#map_canvas').position().top + 50}, 300);\n });\n\n // Event listener for enterkey press\n $related_span.on('keypress', function(e) {\n if (e.which === 13) {\n if (currentinfo) {\n currentinfo.close();\n }\n infowindow.open(map, marker);\n currentinfo = infowindow;\n }\n // scroll to map, with active marker\n $('html, body').animate({scrollTop: $('#map_canvas').position().top + 50}, 300);\n });\n\n // Add event listener to close all other open info windows, ensuring only the clicked marker displays\n google.maps.event.addListener(marker, 'click', function() {\n if (currentinfo) {\n currentinfo.close();\n }\n infowindow.open(map, marker);\n currentinfo = infowindow;\n });\n\n map.setCenter(bounds.getCenter());\n\n let url = window.location.href;\n if (url.includes('?') && !url.includes('All')) {\n map.fitBounds(bounds);\n }\n }\n });\n });\n });\n });\n }\n };\n\n})(jQuery, Drupal);\n","(function(jQuery, Drupal, focusTrap) {\n 'use strict';\n\n Drupal.behaviors.globalHeader = {\n attach: function(context, settings) {\n const mobileMenuBreakpoint = 1200;\n const $globalHeader = jQuery('.global-navbar');\n let winResizeBounce;\n\n const $headerRegion = $globalHeader.find('.region-header');\n const $regionHeaderNavigation = $globalHeader.find('.region-header-navigation');\n const $regionHeaderUtility = $globalHeader.find('.region-header-utility');\n const $toggleBtn = $globalHeader.find('.navbar-toggler');\n\n const focusTrapsOptions = {\n escapeDeactivates: false,\n clickOutsideDeactivates: true\n };\n\n const focusTraps = {}; // collection of focus traps\n if (window.innerWidth < mobileMenuBreakpoint) {\n focusTraps.header = focusTrap.createFocusTrap($globalHeader[0], focusTrapsOptions);\n }\n\n /**\n * Re-order header blocks when they change visual order\n *\n * Sort to original DOM order (data-order)\n * Then sort based on css flex order.\n */\n function headerTabIndexFix() {\n const $headerBlocks = $globalHeader.children();\n // Track the blocks' original order\n if (!$headerBlocks.first().attr('data-order')) {\n $headerBlocks.each(function(i) {\n const $block = jQuery(this);\n $block.attr('data-order', i);\n });\n }\n // sort by DOM order\n $headerBlocks\n .sort(function(a, b) {\n const $a = jQuery(a);\n const $b = jQuery(b);\n let orderA = parseInt($a.attr('data-order'));\n let orderB = parseInt($b.attr('data-order'));\n return (orderA < orderB) ? -1 : (orderA > orderB) ? 1 : 0;\n })\n // Sort by flex order\n .sort(function(a, b) {\n const $a = jQuery(a);\n const $b = jQuery(b);\n let orderA = parseInt($a.css('order'));\n let orderB = parseInt($b.css('order'));\n return (orderA < orderB) ? -1 : (orderA > orderB) ? 1 : 0;\n })\n // Re-order within the DOM to match visual order\n .appendTo($globalHeader);\n }\n\n /**\n * Position header collapse relative to the top so they can be absolute\n */\n function headerCollapsePinTop() {\n $regionHeaderNavigation.removeAttr('style');\n $regionHeaderUtility.removeAttr('style');\n\n if (window.innerWidth < mobileMenuBreakpoint) {\n var hH = $globalHeader.outerHeight(true);\n $regionHeaderNavigation.css({'top': hH + 'px'});\n var nH = $regionHeaderNavigation.outerHeight(true);\n $regionHeaderUtility.css({'top': (hH + nH) + 'px'});\n }\n }\n\n /**\n * Position the mega menu to the left edge of the window\n * break it out of its parent\n */\n function alignMegaMenuLeft($menu) {\n if (window.innerWidth > mobileMenuBreakpoint) {\n $menu.css({'left': '', 'right': ''});\n let l = $menu.parent().offset().left;\n l = 0 - l;\n $menu.css({'left': l, 'right': 'unset'});\n }\n }\n\n /**\n * Set single column dropdowns to not exceeed the available space in the content container.\n * Or to hang from the right if extra space is needed.\n */\n const setDropdownWidth = function($dropdown) {\n if (window.innerWidth > mobileMenuBreakpoint &&\n !$dropdown.hasClass('dropdown-style-mega-menu') &&\n $dropdown.attr('data-width-set') !== window.innerWidth.toString()) {\n\n $dropdown.css({'width': ''});\n let w = 0;\n let min = 400;\n const oL = $dropdown.parent().offset().left;\n let max = window.innerWidth - oL - 50;\n\n // find max-width in terms of screen size\n $dropdown.find('.nav-item').css({'white-space': 'nowrap', 'display': 'block'});\n w = $dropdown.width();\n $dropdown.find('.nav-item').css({'white-space': '', 'display': ''});\n\n if (max < min) {\n max = min;\n $dropdown.addClass('hang-right'); // attach to the right, rather than the left\n }\n w = Math.min(w, max);\n $dropdown.css({'width': w + 'px'});\n $dropdown.attr('data-width-set', window.innerWidth);\n }\n };\n\n /**\n * EVENTS\n */\n\n $toggleBtn.click(function(e) {\n // change the icon and text to reflect the state\n if ($globalHeader.hasClass('open')) {\n $globalHeader.removeClass('open');\n $globalHeader.find('.menu-toggle-label').text('Menu');\n }\n else {\n $globalHeader.addClass('open');\n $globalHeader.find('.menu-toggle-label').text('Close');\n }\n });\n\n // Closes menu if clicked outside\n jQuery(document).on('click', function(event) {\n var $trigger = jQuery('.dropdown-container');\n if ($trigger !== event.target && !$trigger.has(event.target).length) {\n jQuery('.dropdown-container').collapse('hide');\n }\n });\n\n // trap focus when mobile menu is opened\n jQuery('.header-collapse').on('show.bs.collapse', function(e) {\n if (focusTraps.header) {\n focusTraps.header.activate();\n jQuery('.global-header').addClass('header-open');\n }\n });\n\n // Release focus trap when mobile menu is closed\n jQuery('.header-collapse').on('hide.bs.collapse', function(e) {\n if (focusTraps.header) {\n focusTraps.header.deactivate();\n jQuery('.global-header').removeClass('header-open');\n }\n });\n\n // Align mega menus with the left edge of the screen\n jQuery('.nav-item--level-0 > .dropdown-style-mega-menu').on('show.bs.collapse', function(e) {\n const $dropdown = jQuery(this);\n alignMegaMenuLeft($dropdown);\n });\n\n // Deactivate focus trap and collapse all children\n $globalHeader.find('.dropdown-container').on('hide.bs.collapse', function(e) {\n const $dropdown = jQuery(e.target);\n const trapId = $dropdown.attr('id');\n // collapse any children\n $dropdown.find('.collapse').collapse('hide');\n // deactivate focus trap\n if (focusTraps[trapId]) {\n focusTraps[trapId].deactivate();\n }\n });\n\n // Scope focus trap to the current menu on mobile\n $globalHeader.find('.dropdown-container').on('show.bs.collapse', function(e) {\n //HERE\n const $dropdown = jQuery(e.target);\n setDropdownWidth($dropdown);\n const focuables = [$dropdown[0], $headerRegion[0], $toggleBtn[0]];\n // adjust timing according to CSS\n const duration = parseFloat($dropdown.css('transition-duration')) * 1000;\n const delay = parseFloat($dropdown.css('transition-delay')) * 1000;\n\n\n if (window.innerWidth < mobileMenuBreakpoint) {\n setTimeout(function() {\n const trapId = $dropdown.attr('id');\n const options = {...focusTrapsOptions}; // shallow copy of default\n // prevent scrolling to the element while it moves into view\n options.preventScroll = true;\n focusTraps[trapId] = focusTrap.createFocusTrap(focuables, options);\n focusTraps[trapId].activate();\n }, (duration + delay));\n }\n });\n\n // Functions to run after the user has finished resizing the window.\n jQuery(window).resize(function() {\n winResizeBounce = setTimeout(function() {\n clearTimeout(winResizeBounce);\n $globalHeader.find('collapse').collapse('hide');\n $globalHeader.find('dropdown-container').removeAttr('style');\n headerTabIndexFix();\n headerCollapsePinTop();\n }, 100);\n });\n\n // Document Ready.\n jQuery(document).ready(function() {\n headerTabIndexFix();\n headerCollapsePinTop();\n });\n }\n };\n})(jQuery, Drupal, focusTrap);\n","(function($, Drupal) {\n 'use strict';\n\n Drupal.behaviors.heroSlider = {\n attach: function(context, settings) {\n //* Adds Slick Slider to articles page, only if there are more than 1 image\n let $article_images = $('.article-top--slider .field--name-field-image-media').children().length;\n if ($article_images > 1) {\n $('.article-top--slider .field--name-field-image-media').slick({\n dots: false,\n slidesToShow: 1,\n slidesToScroll: 1,\n variableWidth: true,\n centerMode: true\n });\n }\n\n // Theme page slider\n let $theme_images = $('.article-top--slider .field--name-field-theme-image').children().length;\n if ($theme_images > 1) {\n $('.article-top--slider .field--name-field-theme-image').slick({\n dots: false,\n slidesToShow: 1,\n slidesToScroll: 1,\n variableWidth: true,\n centerMode: true\n });\n }\n }\n };\n})(jQuery, Drupal);\n","(function(jQuery, Drupal) {\n 'use strict';\n\n Drupal.behaviors.howToChoose = {\n attach: function(context, settings) {\n\n const setJumpLinks = function() {\n if (jQuery('.can-jump-wrapper').length === 0) {\n const $canSectionHeaders = jQuery('.block-inline-blockhow-to-choose-can-section-header');\n const $canJumpLinks = jQuery('
');\n const $jumpLinkSection = $canSectionHeaders.first().parent().parent();\n\n $canJumpLinks.append('');\n\n $canSectionHeaders.each(function() {\n const target = this.id;\n const title = jQuery(this).find('.field--name-field-section-heading').text();\n const $jumpLink = jQuery('' + title + '');\n $canJumpLinks.append($jumpLink);\n });\n\n $jumpLinkSection.prepend($canJumpLinks);\n }\n };\n\n jQuery(document).ready(function() {\n setJumpLinks();\n });\n }\n };\n})(jQuery, Drupal);\n","(function(jQuery, Drupal) {\n 'use strict';\n\n Drupal.behaviors.news = {\n attach: function(context, settings) {\n jQuery('.block-views-exposed-filter-blocknews-news-page').once('filter-toggle').each(function() {\n // Add toggle button\n const $block = jQuery(this);\n const $form = $block.find('form');\n const $btn = jQuery('');\n // search submit\n const $searchSubmit = jQuery('');\n const $searchField = $form.find('.js-form-item-keyword');\n\n $btn.click(function() {\n $block.toggleClass('open');\n $btn.toggleClass('open');\n });\n $form.before($btn);\n $searchField.after($searchSubmit);\n $searchSubmit.after(jQuery('
'));\n });\n }\n };\n\n})(jQuery, Drupal);\n","(function($, Drupal) {\n 'use strict';\n\n Drupal.behaviors.productDetails = {\n attach: function(context, settings) {\n //* Adds Slick Slider to articles page, only if there are more than 1 image\n let $product_details = $('.product-detail-item');\n if ($product_details) {\n $product_details.last().addClass('product-detail-item--last');\n }\n }\n };\n})(jQuery, Drupal);\n","(function(jQuery, Drupal) {\n 'use strict';\n\n Drupal.behaviors.reduceMotion = {\n attach: function(context, settings) {\n const $motionButton = jQuery('#reduce-motion-button');\n const motionCookieName = 'userPrefersReducedMotion';\n const motionBodyClass = 'reduce-motion';\n let winResizeBounce = null;\n const $body = jQuery('body');\n\n const userPrefersReducedMotion = function() {\n //IW-update ----\n // return true;\n //end IW-update ----\n //Non-IW ----\n\n //check if user clicked \"reduce motion\" button\n if (window.getCookie(motionCookieName) === 'true') {\n // alert('cookie true');\n return true;\n }\n\n //now, check if the a media query by the name of \"(prefers-reduced-motion: reduce)\" is found\n if (window.matchMedia('(prefers-reduced-motion: reduce)').matches) {\n if (!window.getCookie(motionCookieName)) {\n // alert('set cookie');\n window.setCookie(motionCookieName, 'true', 10);\n }\n // alert('no cookie, but match media');\n return true;\n }\n\n //final check -- force reduce motion on viewports equal to or less than tablets\n if (window.innerWidth < 992) {\n return true;\n }\n\n //~ Note: There's an issue in Edge browsers on tablets where neither media query match or cookie will be found. This was the impetus for increasing the viewport width when forcing a true result. (CROWN-1352)\n // alert('no cookie and media not found, so return false');\n return false;\n //end Non-IW ----\n };\n\n const bLazyReducedMotion = function() {\n\n const reduceMotion = userPrefersReducedMotion();\n \n if (reduceMotion) {\n // alert('reduced motion confirmed');\n jQuery('.field--name-field-animated-can').addClass('reduce-motion');\n jQuery('body').addClass(motionBodyClass);\n jQuery('.b-lazy-reduced-motion').addClass('b-lazy');\n }\n else {\n // alert('remove class');\n jQuery('.b-lazy-reduced-motion').removeClass('b-lazy');\n }\n window.blazy.revalidate();\n };\n\n jQuery(document).ready(function() {\n bLazyReducedMotion();\n });\n\n $motionButton.click(function() {\n $body.toggleClass(motionBodyClass);\n if ($body.hasClass(motionBodyClass)) {\n window.setCookie(motionCookieName, 'true', 10);\n }\n else {\n window.setCookie(motionCookieName, 'false', 10);\n }\n location.reload();\n });\n\n jQuery(window).resize(function() {\n winResizeBounce = setTimeout(function() {\n clearTimeout(winResizeBounce);\n if (window.innerWidth < 992) {\n if (!$body.hasClass(motionBodyClass)) {\n $body.addClass(motionBodyClass);\n }\n jQuery('.b-lazy-reduced-motion:not(.b-lazy)').addClass('b-lazy');\n window.blazy.revalidate();\n }\n else if ($body.hasClass(motionBodyClass) && !userPrefersReducedMotion()) {\n $body.removeClass(motionBodyClass);\n }\n }, 200);\n });\n }\n };\n})(jQuery, Drupal);\n","(function($, Drupal, focusTrap) {\n 'use strict';\n\n Drupal.behaviors.verticalContentCarousel = {\n attach: function(context, settings) {\n\n const initVCC = function($vcc) {\n const $vccControl = $vcc.find('.slider-control');\n const nSlides = $vccControl.children().length;\n const $prevArrow = $vccControl.parent().find('.up-arrow');\n const $nextArrow = $vccControl.parent().find('.down-arrow');\n const $vccContent = $vcc.find('.slider-content');\n // Slick init controls\n $vccControl\n .on('init', function(event, slick) {\n const $controls = slick.$slider;\n const $content = $controls.closest('.block-vertical-content-carousel').find('.slider-content');\n $controls.find('[data-slick-index]').unbind().bind('click mouseenter focus', function(e) {\n clearTimeout(window.sliderBounce);\n if (window.innerWidth >= 768) {\n window.sliderBounce = setTimeout(function() {\n const $slide = jQuery(e.target);\n let index = 0;\n if ($slide.attr('data-slick-index')) {\n index = parseInt($slide.attr('data-slick-index'));\n }\n else {\n index = parseInt($slide.closest('[data-slick-index]').attr('data-slick-index'));\n }\n $content.slick('slickGoTo', index);\n }, 200);\n }\n });\n })\n .slick({\n slidesToShow: nSlides,\n slidesToScroll: 1,\n useTransform: false,\n rows: 0,\n arrows: false,\n dots: false,\n slide: '.slider-control-item',\n vertical: true,\n swipe: false,\n touchMove: false,\n asNavFor: $vccContent,\n focusOnSelect: false,\n centerMode: false,\n accessibility: false, // disable negative tabindex for still visible items\n variableHeight: false,\n responsive: [\n {\n breakpoint: 768,\n settings: {\n slidesToShow: 1,\n vertical: false\n }\n }\n ]\n });\n\n $vccContent.slick({\n slidesToShow: 1,\n slidesToScroll: 1,\n rows: 0,\n asNavFor: $vccControl,\n slide: '.slider-content-item',\n dots: false,\n arrows: false,\n fade: true,\n swipe: false,\n touchMove: false,\n centerMode: true,\n focusOnSelect: true,\n responsive: [\n {\n breakpoint: 768,\n settings: {\n variableHeight: true,\n touchMove: true\n }\n }\n ]\n });\n\n $nextArrow.on('click', function() {\n $vccContent.slick('slickNext');\n });\n $prevArrow.on('click', function() {\n $vccContent.slick('slickPrev');\n });\n };\n jQuery('.vertical-content-carousel').once('vcc-init').each(function() {\n const $vcc = jQuery(this);\n initVCC($vcc);\n });\n }\n };\n})(jQuery, Drupal, focusTrap);\n","(function(jQuery, Drupal) {\n 'use strict';\n\n Drupal.behaviors.crownVideo = {\n attach: function(context, settings) {\n\n const videoSizeOptions = function(isModal, $btn) {\n var options = {\n width: isModal ? (window.innerWidth * 0.8) : $btn.outerWidth(true),\n height: isModal ? (window.innerHeight * 0.8) : $btn.outerHeight(true)\n };\n return options;\n };\n\n const onYtPlayerReady = function(event) {\n event.target.playVideo();\n };\n\n const videoClose = function($media, $btn, player) {\n if (typeof player.pause !== 'undefined') {\n player.pause();\n }\n if (typeof player.pauseVideo !== 'undefined') {\n player.pauseVideo();\n }\n\n $media.removeClass('video-play');\n $btn.removeAttr('disabled');\n };\n\n const youTubeEmbed = function($media, $video, $btn, url, isModal = false, i = 0) {\n let player = null;\n\n if (!window.YT) {\n if (i < 50) {\n let j = i + 1;\n setTimeout(function() {\n return youTubeEmbed($media, $video, $btn, url, isModal, j);\n }, 200);\n }\n }\n else {\n const options = videoSizeOptions(isModal, $btn);\n options.videoId = url.split('/').pop();\n options.splayerVars = {\n 'playsinline': 1\n };\n options.events = {\n 'onReady': onYtPlayerReady\n };\n player = new window.YT.Player($video[0], options);\n $media.find('.modal-backdrop, .close-video-btn').click(function() {\n videoClose($media, $btn, player);\n });\n }\n };\n\n const vimeoEmbed = function($media, $video, $btn, url, isModal = false, i = 0) {\n\n let player = null;\n if (!window.Vimeo) {\n if (i < 50) {\n let j = i + 1;\n setTimeout(function() {\n return vimeoEmbed($media, $video, $btn, url, isModal, j);\n }, 200);\n }\n }\n else {\n const options = videoSizeOptions(isModal, $btn);\n options.url = url;\n // Create the player\n player = new window.Vimeo.Player($video, options);\n // add the video and play\n player.play();\n $btn.attr('disabled', 'disabled');\n\n $media.find('.modal-backdrop, .close-video-btn').click(function() {\n videoClose($media, $btn, player);\n });\n }\n };\n\n jQuery('.play-video-btn').once('video-btn-init').each(function() {\n const $playBtn = jQuery(this);\n const $media = $playBtn.closest('article');\n const $video = $media.find('.video');\n const isModal = $media.hasClass('media--view-mode-modal');\n\n // check cookie compliance, remove notice if the user has agreed\n const cookieAgreed = Drupal.eu_cookie_compliance.getCurrentStatus().toString() === '2'; // 2: agreed, 0: declined\n if (cookieAgreed) {\n $media.find('.iframe-cookie-notice').remove();\n }\n else {\n $media.find('.cookie-settings').click(function() {\n jQuery(' #sliding-popup .agree-button').click(function() {\n // refresh the page so cookies can kick in.\n window.location.reload();\n });\n // move the consent popup into view\n window.showCookieSettings();\n });\n }\n\n $playBtn.click(function() {\n $media.addClass('video-play');\n\n const url = $playBtn.attr('data-url');\n if (url.indexOf('vimeo') > 0) {\n vimeoEmbed($media, $video, $playBtn, url, isModal);\n }\n else if (url.indexOf('youtube') > 0 || url.indexOf('youtu.be') > 0) {\n youTubeEmbed($media, $video, $playBtn, url, isModal);\n }\n });\n });\n }\n };\n\n})(jQuery, Drupal);\n","/*!\n * jQuery Once v2.2.3 - http://github.com/robloach/jquery-once\n * @license MIT, GPL-2.0\n * http://opensource.org/licenses/MIT\n * http://opensource.org/licenses/GPL-2.0\n */\n(function(e){\"use strict\";if(typeof exports===\"object\"&&typeof exports.nodeName!==\"string\"){e(require(\"jquery\"))}else if(typeof define===\"function\"&&define.amd){define([\"jquery\"],e)}else{e(jQuery)}})(function(t){\"use strict\";var r=function(e){e=e||\"once\";if(typeof e!==\"string\"){throw new TypeError(\"The jQuery Once id parameter must be a string\")}return e};t.fn.once=function(e){var n=\"jquery-once-\"+r(e);return this.filter(function(){return t(this).data(n)!==true}).data(n,true)};t.fn.removeOnce=function(e){return this.findOnce(e).removeData(\"jquery-once-\"+r(e))};t.fn.findOnce=function(e){var n=\"jquery-once-\"+r(e);return this.filter(function(){return t(this).data(n)===true})}});\n//# sourceMappingURL=jquery.once.min.js.map","/**\n * stacktable.js\n * Author & copyright (c) 2012: John Polacek\n * CardTable by: Justin McNally (2015)\n * Dual MIT & GPL license\n *\n * Page: http://johnpolacek.github.com/stacktable.js\n * Repo: https://github.com/johnpolacek/stacktable.js/\n *\n * jQuery plugin for stacking tables on small screens\n * Requires jQuery version 1.7 or above\n *\n */\n;(function($) {\n $.fn.cardtable = function(options) {\n var $tables = this,\n defaults = {headIndex:0},\n settings = $.extend({}, defaults, options),\n headIndex;\n\n // checking the \"headIndex\" option presence... or defaults it to 0\n if(options && options.headIndex)\n headIndex = options.headIndex;\n else\n headIndex = 0;\n\n return $tables.each(function() {\n var $table = $(this);\n if ($table.hasClass('stacktable')) {\n return;\n }\n var table_css = $(this).prop('class');\n var $stacktable = $('
');\n if (typeof settings.myClass !== 'undefined') $stacktable.addClass(settings.myClass);\n var markup = '';\n var $caption, $topRow, headMarkup, bodyMarkup, tr_class;\n\n $table.addClass('stacktable large-only');\n\n $caption = $table.find(\">caption\").clone();\n $topRow = $table.find('>thead>tr,>tbody>tr,>tfoot>tr,>tr').eq(0);\n\n // avoid duplication when paginating\n $table.siblings().filter('.small-only').remove();\n\n // using rowIndex and cellIndex in order to reduce ambiguity\n $table.find('>tbody>tr').each(function() {\n\n // declaring headMarkup and bodyMarkup, to be used for separately head and body of single records\n headMarkup = '';\n bodyMarkup = '';\n tr_class = $(this).prop('class');\n // for the first row, \"headIndex\" cell is the head of the table\n // for the other rows, put the \"headIndex\" cell as the head for that row\n // then iterate through the key/values\n $(this).find('>td,>th').each(function(cellIndex) {\n if ($(this).html() !== ''){\n bodyMarkup += '';\n if ($topRow.find('>td,>th').eq(cellIndex).html()){\n bodyMarkup += ''+$topRow.find('>td,>th').eq(cellIndex).html()+'';\n } else {\n bodyMarkup += '';\n }\n bodyMarkup += ''+$(this).html()+'';\n bodyMarkup += '';\n }\n });\n\n markup += '' + headMarkup + bodyMarkup + '
';\n });\n\n $table.find('>tfoot>tr>td').each(function(rowIndex,value) {\n if ($.trim($(value).text()) !== '') {\n markup += '
' + $(value).html() + '
';\n }\n });\n\n $stacktable.prepend($caption);\n $stacktable.append($(markup));\n $table.before($stacktable);\n });\n };\n\n $.fn.stacktable = function(options) {\n var $tables = this,\n defaults = {headIndex:0,displayHeader:true},\n settings = $.extend({}, defaults, options),\n headIndex;\n\n // checking the \"headIndex\" option presence... or defaults it to 0\n if(options && options.headIndex)\n headIndex = options.headIndex;\n else\n headIndex = 0;\n\n return $tables.each(function() {\n var table_css = $(this).prop('class');\n var $stacktable = $('
');\n if (typeof settings.myClass !== 'undefined') $stacktable.addClass(settings.myClass);\n var markup = '';\n var $table, $caption, $topRow, headMarkup, bodyMarkup, tr_class, displayHeader;\n\n $table = $(this);\n $table.addClass('stacktable large-only');\n $caption = $table.find(\">caption\").clone();\n $topRow = $table.find('>thead>tr,>tbody>tr,>tfoot>tr').eq(0);\n\n displayHeader = $table.data('display-header') === undefined ? settings.displayHeader : $table.data('display-header');\n\n // using rowIndex and cellIndex in order to reduce ambiguity\n $table.find('>tbody>tr, >thead>tr').each(function(rowIndex) {\n\n // declaring headMarkup and bodyMarkup, to be used for separately head and body of single records\n headMarkup = '';\n bodyMarkup = '';\n tr_class = $(this).prop('class');\n\n // for the first row, \"headIndex\" cell is the head of the table\n if (rowIndex === 0) {\n // the main heading goes into the markup variable\n if (displayHeader) {\n markup += ''+$(this).find('>th,>td').eq(headIndex).html()+'';\n }\n } else {\n // for the other rows, put the \"headIndex\" cell as the head for that row\n // then iterate through the key/values\n $(this).find('>td,>th').each(function(cellIndex) {\n if (cellIndex === headIndex) {\n headMarkup = ''+$(this).html()+'';\n } else {\n if ($(this).html() !== ''){\n bodyMarkup += '';\n if ($topRow.find('>td,>th').eq(cellIndex).html()){\n bodyMarkup += ''+$topRow.find('>td,>th').eq(cellIndex).html()+'';\n } else {\n bodyMarkup += '';\n }\n bodyMarkup += ''+$(this).html()+'';\n bodyMarkup += '';\n }\n }\n });\n\n markup += headMarkup + bodyMarkup;\n }\n });\n\n $stacktable.prepend($caption);\n $stacktable.append($(markup));\n $table.before($stacktable);\n });\n };\n\n $.fn.stackcolumns = function(options) {\n var $tables = this,\n defaults = {},\n settings = $.extend({}, defaults, options);\n\n return $tables.each(function() {\n var $table = $(this);\n var $caption = $table.find(\">caption\").clone();\n var num_cols = $table.find('>thead>tr,>tbody>tr,>tfoot>tr').eq(0).find('>td,>th').length; //first table must not contain colspans, or add sum(colspan-1) here.\n if(num_cols<3) //stackcolumns has no effect on tables with less than 3 columns\n return;\n\n var $stackcolumns = $('
');\n if (typeof settings.myClass !== 'undefined') $stackcolumns.addClass(settings.myClass);\n $table.addClass('stacktable large-only');\n var tb = $('');\n var col_i = 1; //col index starts at 0 -> start copy at second column.\n\n while (col_i < num_cols) {\n $table.find('>thead>tr,>tbody>tr,>tfoot>tr').each(function(index) {\n var tem = $(''); // todo opt. copy styles of $this; todo check if parent is thead or tfoot to handle accordingly\n if(index === 0) tem.addClass(\"st-head-row st-head-row-main\");\n var first = $(this).find('>td,>th').eq(0).clone().addClass(\"st-key\");\n var target = col_i;\n // if colspan apply, recompute target for second cell.\n if ($(this).find(\"*[colspan]\").length) {\n var i =0;\n $(this).find('>td,>th').each(function() {\n var cs = $(this).attr(\"colspan\");\n if (cs) {\n cs = parseInt(cs, 10);\n target -= cs-1;\n if ((i+cs) > (col_i)) //out of current bounds\n target += i + cs - col_i -1;\n i += cs;\n } else {\n i++;\n }\n\n if (i > col_i)\n return false; //target is set; break.\n });\n }\n var second = $(this).find('>td,>th').eq(target).clone().addClass(\"st-val\").removeAttr(\"colspan\");\n tem.append(first, second);\n tb.append(tem);\n });\n ++col_i;\n }\n\n $stackcolumns.append($(tb));\n $stackcolumns.prepend($caption);\n $table.before($stackcolumns);\n });\n };\n\n}(jQuery));\n","module.exports = jQuery;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","import 'stacktable.js/stacktable.js';\n\n(function(jQuery, Drupal) {\n 'use strict';\n\n Drupal.behaviors.tables = {\n attach: function(context, settings) {\n\n const stackTables = function() {\n const $stackableTables = jQuery('table:not(.scrollable-table):not(.stacktable):not(.stacktable-ignore)');\n $stackableTables.once('stack-tables').each(function(index) {\n const $table = jQuery(this);\n $table.attr('id', 'responsive-table-' + index);\n jQuery('#responsive-table-' + index).stacktable();\n });\n\n jQuery('.stacktable.small-only tr td.st-key:first-child').each(function() {\n const $td = jQuery(this);\n const $th = jQuery('' + $td.text() + '');\n $td.replaceWith($th);\n });\n jQuery('.stacktable').find('[class=\"\"], [class=\" \"], [class=\" \"]').removeAttr('class');\n };\n\n const scrollTables = function() {\n const $scrollTables = jQuery('.scrollable-table');\n $scrollTables.each(function() {\n const $table = jQuery(this);\n $table.once('scroll-table-wrap').wrap('
');\n });\n };\n\n const tableHeadingScopes = function() {\n const $tables = jQuery('table');\n $tables.each(function() {\n const $table = jQuery(this);\n const $thead = $table.find('thead');\n const $tbody = $table.find('tbody');\n\n $thead.find('th:not([scope])').attr('scope', 'col');\n $tbody.find('th:not([scope]):first-child').attr('scope', 'row');\n $table.find('th:empty[scope]').removeAttr('scope');\n });\n };\n\n const emptyCells = function() {\n jQuery('td, th').html(function(i, html) {\n return html.replace(/\\s* \\s*/g, '');\n });\n };\n\n const nasdaqTablesResponsive = function() {\n let $nasdaqTables = jQuery('.block-views-blocknasdaq-sec-block-1 .views-table');\n $nasdaqTables.once('alter-nasdaq-tables').each(function(index) {\n jQuery(this).attr('id', 'responsive-nasdaq-table-' + index);\n jQuery('#responsive-nasdaq-table-' + index).cardtable();\n });\n };\n\n jQuery(document).ready(function() {\n if (!window.tablesInit) {\n window.tablesInit = true;\n emptyCells();\n nasdaqTablesResponsive();\n stackTables();\n scrollTables();\n tableHeadingScopes();\n }\n });\n }\n };\n})(jQuery, Drupal);\n","import '../../node_modules/jquery-once/jquery.once.min';\nimport './cookies';\nimport './reduce-motion';\nimport './header';\nimport './news';\nimport './beverage-cans';\n// import './beverage-packaging';\nimport './hero-slider';\nimport './product-detail-items';\nimport './crown-locations';\nimport './vertical-content-carousel';\nimport './video';\nimport './how-to-choose';\n// import './product-category-top-panel';\nimport './tables';\n\n(function(jQuery, Drupal) {\n 'use strict';\n // 9 times out of 10 it's probably better to make a new file\n // instead of writing code in here.\n\n //* Counts \"Available In\" countries and adds a comma if more than 1\n var avail_items_length = jQuery('.field--name-field-pbc-available-in .field__items').length;\n var avail_items = 0;\n jQuery('.field--name-field-pbc-available-in .field__items .field__item').each(function() {\n if ((avail_items_length > 0) && (avail_items !== avail_items_length)) {\n jQuery(this).append(', ');\n }\n avail_items++;\n });\n\n jQuery('.overview-slider').slick({\n vertical: true,\n verticalSwiping: false,\n infinite: true,\n slidesToShow: 1,\n slidesToScroll: 1,\n arrows: false,\n centerMode: false,\n speed: 0,\n cssEase: 'ease-in-out'\n });\n\n jQuery('.up-arrow').click(function() {\n jQuery('.overview-slider').slick('slickPrev');\n });\n\n jQuery('.down-arrow').click(function() {\n jQuery('.overview-slider').slick('slickNext');\n });\n\n jQuery('.overview-slider').slick.cssTransitions = false;\n\n //slider fix in layout builder\n jQuery('.layout--twocol-section .layout__region:has(.slick-wrapper)').addClass('two-column-slider');\n jQuery('.layout--threecol-section .layout__region:has(.slick-wrapper)').addClass('three-column-slider');\n\n // Add a class to control if backdrop filter is supported.\n if (CSS.supports('backdrop-filter: blur(16px)')) {\n jQuery('html').addClass('css-supports-blur');\n }\n\n if (!window.blazy) {\n window.blazy = new Blazy({ // eslint-disable-line no-undef\n success: function(ele) {\n const $ele = jQuery(ele);\n // Image has loaded\n $ele.css({'padding-bottom': '', 'height': ''});\n if ($ele.closest('picture').length) {\n $ele.closest('picture').css({'padding-bottom': '', 'height': ''});\n }\n },\n error: function(ele, msg) {\n const $ele = jQuery(ele);\n // Image has loaded\n $ele.css({'padding-bottom': '', 'height': ''});\n if ($ele.closest('picture').length) {\n $ele.closest('picture').css({'padding-bottom': '', 'height': ''});\n }\n if (msg === 'missing') {\n // Data-src is missing\n }\n else if (msg === 'invalid') {\n // Data-src is invalid\n }\n }\n });\n }\n else {\n window.blazy.revalidate();\n }\n\n const blazyMobile = function() {\n if (window.innerWidth < 768) {\n jQuery('.b-lazy-mobile-only').addClass('b-lazy');\n jQuery('.b-lazy-desktop-only').removeClass('b-lazy');\n }\n else {\n jQuery('.b-lazy-mobile-only').removeClass('b-lazy');\n jQuery('.b-lazy-desktop-only').addClass('b-lazy');\n }\n window.blazy.revalidate();\n };\n\n let winResizeBounce = null;\n jQuery(window).resize(function() {\n winResizeBounce = setTimeout(function() {\n clearTimeout(winResizeBounce);\n blazyMobile();\n }, 100);\n });\n jQuery(document).ready(function() {\n blazyMobile();\n });\n})(jQuery, Drupal);\n"],"names":["jQuery","Drupal","behaviors","beverageCans","attach","context","settings","setMeasurementClass","$input","$field","closest","find","removeClass","addClass","val","unbind","change","e","this","click","$uncheckedInput","not","prop","on","$label","which","each","length","html","_","replace","cookies","window","setCookie","cname","cvalue","exdays","d","Date","setTime","getTime","document","cookie","toUTCString","getCookie","name","ca","decodeURIComponent","split","i","c","charAt","substring","indexOf","deleteCookie","showCookieSettings","$popup","location","reload","css","eu_cookie_compliance","toggleWithdrawBanner","focus","ready","removeAttr","preventDefault","$","crownLocations","once","$btn","$form","parent","toggleClass","slideToggle","getScript","map","google","maps","Map","zoom","mapTypeId","styles","$addresses","$addresses_array","push","text","trim","currentinfo","bounds","LatLngBounds","index","_callback","latlng","LatLng","contentString","infowindow","InfoWindow","content","marker","Marker","position","title","icon","url","scaledSize","Size","extend","addListener","open","anchor","shouldFocus","$related_span","attr","close","animate","scrollTop","top","event","setCenter","getCenter","href","includes","fitBounds","focusTrap","globalHeader","winResizeBounce","mobileMenuBreakpoint","$globalHeader","$headerRegion","$regionHeaderNavigation","$regionHeaderUtility","$toggleBtn","focusTrapsOptions","escapeDeactivates","clickOutsideDeactivates","focusTraps","headerTabIndexFix","$headerBlocks","children","first","sort","a","b","$a","$b","orderA","parseInt","orderB","appendTo","headerCollapsePinTop","innerWidth","hH","outerHeight","nH","header","createFocusTrap","hasClass","$trigger","target","has","collapse","activate","deactivate","$menu","l","offset","left","alignMegaMenuLeft","$dropdown","trapId","toString","w","oL","max","width","Math","min","setDropdownWidth","focuables","duration","parseFloat","delay","setTimeout","options","preventScroll","resize","clearTimeout","heroSlider","slick","dots","slidesToShow","slidesToScroll","variableWidth","centerMode","howToChoose","$canSectionHeaders","$canJumpLinks","$jumpLinkSection","append","id","$jumpLink","prepend","setJumpLinks","news","$block","$searchSubmit","$searchField","before","after","productDetails","$product_details","last","reduceMotion","$motionButton","motionCookieName","motionBodyClass","$body","userPrefersReducedMotion","matchMedia","matches","blazy","revalidate","verticalContentCarousel","$vcc","$vccControl","nSlides","$prevArrow","$nextArrow","$vccContent","$controls","$slider","$content","bind","sliderBounce","$slide","useTransform","rows","arrows","slide","vertical","swipe","touchMove","asNavFor","focusOnSelect","accessibility","variableHeight","responsive","breakpoint","fade","crownVideo","videoSizeOptions","isModal","outerWidth","height","innerHeight","onYtPlayerReady","playVideo","videoClose","$media","player","pause","pauseVideo","youTubeEmbed","$video","YT","videoId","pop","splayerVars","events","Player","j","vimeoEmbed","Vimeo","play","$playBtn","getCurrentStatus","remove","exports","nodeName","t","r","TypeError","fn","n","filter","data","removeOnce","findOnce","removeData","cardtable","headIndex","$table","table_css","$stacktable","myClass","$caption","$topRow","bodyMarkup","tr_class","markup","clone","eq","siblings","cellIndex","rowIndex","value","stacktable","displayHeader","headMarkup","undefined","stackcolumns","num_cols","$stackcolumns","tb","col_i","tem","cs","second","module","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","tables","tablesInit","$td","$th","replaceWith","wrap","$thead","$tbody","avail_items_length","avail_items","verticalSwiping","infinite","speed","cssEase","cssTransitions","CSS","supports","Blazy","success","ele","$ele","error","msg","blazyMobile"],"sourceRoot":""}