{"version":3,"file":"js/commons/layouts/application-2abdfaf24ee0c52c664e.js","mappings":"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","sources":["webpack://cms-web/./app/frontend/src/shared/mobile_cta_sticky_bar/mobile_cta_sticky_bar.js","webpack://cms-web/./app/frontend/src/layout/header/header.js","webpack://cms-web/./app/frontend/src/layout/header/header.analytics.js","webpack://cms-web/./app/frontend/src/shared/audio_generator/audio_generator.js","webpack://cms-web/./app/frontend/src/shared/popup_fia/popup_fia.js","webpack://cms-web/./app/frontend/src/shared/dates_alert/dates_alert.js","webpack://cms-web/./app/frontend/src/shared/social_login/social_login.js","webpack://cms-web/./app/frontend/src/pages/hotel_page/hotel_page.js","webpack://cms-web/./app/frontend/packs/commons/layouts/application.js","webpack://cms-web/./app/frontend/src/blocks/hotel_collapsible/hotel_collapsible.analytics.js","webpack://cms-web/./app/frontend/src/blocks/hotel_collapsible/hotel_collapsible.js","webpack://cms-web/./app/frontend/src/blocks/login_registration_lightbox/login_registration_lightbox.js","webpack://cms-web/./app/frontend/src/blocks/offers_list/offers_list.js","webpack://cms-web/./app/frontend/src/blocks/special_landing_header/special_landing_header.js","webpack://cms-web/./app/frontend/src/blocks/special_landing_header/special_landing_header_analytics.js","webpack://cms-web/./app/frontend/src/blocks/sustainable_info/sustainable_info.analytics.js","webpack://cms-web/./app/frontend/src/blocks/sustainable_info/sustainable_info.js","webpack://cms-web/./app/frontend/src/elements/banner_pwa/banner_pwa.js","webpack://cms-web/./app/frontend/src/shared/ab_tasty/_ab_tasty.js","webpack://cms-web/./app/frontend/src/shared/chat_agents/chat_agents.js","webpack://cms-web/./app/frontend/src/shared/external_url_modal/external_url_modal.js","webpack://cms-web/./app/frontend/src/shared/js_tabs/js_tabs.js","webpack://cms-web/./app/frontend/src/shared/opinion_widget/opinion_widget.js","webpack://cms-web/./app/frontend/src/shared/segment/segment.js","webpack://cms-web/./app/frontend/src/utils/load_hls_video.js","webpack://cms-web/./app/frontend/src/vendors/layer_handler_ecc/layer_handler_eec.js","webpack://cms-web/./node_modules/dayjs/plugin/isBetween.js","webpack://cms-web/./node_modules/dayjs/plugin/minMax.js","webpack://cms-web/./node_modules/dayjs/plugin/utc.js","webpack://cms-web/./node_modules/lodash/_baseExtremum.js","webpack://cms-web/./node_modules/lodash/_baseGt.js","webpack://cms-web/./node_modules/lodash/_createFind.js","webpack://cms-web/./node_modules/lodash/each.js","webpack://cms-web/./node_modules/lodash/find.js","webpack://cms-web/./node_modules/lodash/findIndex.js","webpack://cms-web/./node_modules/lodash/max.js","webpack://cms-web/external promise \"import(\\\"https://apiimg.iberostar.com/fastbooking/dist/assets/remoteEntry.js"],"sourcesContent":["import dayjs from 'dayjs'\nimport customParseFormat from 'dayjs/plugin/customParseFormat'\nimport localizedFormat from 'dayjs/plugin/localizedFormat'\n\nimport { setAsyncDayjsLocale } from '../../core/utils/locale'\nimport { currentPageType } from '../../utils/page_type_detector'\nimport fastbooking from '../fastbooking/ibh_fastbooking'\n\nsetAsyncDayjsLocale()\n\ndayjs.extend(localizedFormat)\ndayjs.extend(customParseFormat)\n\nlet headerHeight\nlet fbBar\nlet body\n\nfunction showFbBar() {\n fbBar.style.transform = 'translateY(0)'\n fbBar.classList.add('sticky')\n}\n\nfunction hideFbBar() {\n fbBar.style.transform = ''\n fbBar.classList.remove('sticky')\n}\n\nfunction calcShowHideFbBar() {\n const scrollTop = window.scrollY\n const offsetBottom = headerHeight\n\n if (body.getAttribute('data-page-type') !== 'hotel') {\n if (scrollTop > offsetBottom) {\n showFbBar()\n return true\n }\n hideFbBar()\n return false\n }\n\n const headerWrapper = '.hotel-header .hotel-abouts'\n let header = document.querySelector(headerWrapper)\n\n if (!header) {\n header = document.querySelector('.js-hotel-reb-header')\n }\n\n if (header) {\n if (scrollTop > header.offsetTop + header.offsetHeight) {\n showFbBar()\n return true\n }\n hideFbBar()\n return false\n }\n}\n\nif (IB.currentDevice === 'mobile') {\n const SELECTORS = {\n FB_BAR: '.js-mobile-cta-sticky-bar',\n MOBILE_HEADER: '.mobile-header',\n }\n\n fbBar = document.querySelector(SELECTORS.FB_BAR)\n\n body = document.body\n const pageType = body.getAttribute('data-page-type')\n\n headerHeight = document.querySelector(SELECTORS.MOBILE_HEADER).offsetHeight\n\n let scrollTimer = 0\n let lastScrollTop = 0\n const delta = 5\n\n if (pageType === 'bookings') {\n fbBar.classList.add('summary-bar', 'js-summary-bar')\n } else if (pageType === 'hotel') {\n fbBar.querySelector('.js-summary-destination')?.classList.add('label-hidden')\n }\n\n calcShowHideFbBar()\n\n window.addEventListener('resize', () => {\n calcShowHideFbBar()\n })\n\n window.addEventListener('scroll', () => {\n let scroll = window.scrollY\n const bodyCssTop = parseInt(getComputedStyle(body).top.replace('px', ''), 10)\n\n if (scrollTimer) {\n clearTimeout(scrollTimer)\n }\n\n if (scroll === 0 && !isNaN(bodyCssTop)) {\n scroll = Math.abs(bodyCssTop)\n }\n\n if (Math.abs(lastScrollTop - scroll) <= delta) return\n\n scrollTimer = setTimeout(() => {\n const isVisible = calcShowHideFbBar()\n if (headerHeight && isVisible) {\n if (scroll < lastScrollTop || scroll === 0) {\n fbBar.style.transform = `translateY(${headerHeight}px)`\n } else {\n fbBar.style.transform = 'translateY(0)'\n }\n }\n\n lastScrollTop = scroll\n }, 25)\n })\n\n document.querySelector(SELECTORS.FB_BAR)?.addEventListener('click', e => {\n const summaryItem = e.target.closest('.js-summary-item')\n const ctaButton = e.target.closest('.js-cta-btn')\n\n if (summaryItem) {\n fastbooking.openStickyFastbooking()\n }\n\n if (ctaButton) {\n if (currentPageType.isHome()) {\n window.scrollTo(0, document.querySelector('#ibh-fastbooking').offsetTop - 65)\n } else {\n fastbooking.openStickyFastbooking()\n }\n }\n })\n}\n","import '../../elements/pro_link/pro_link'\n\nimport { initTestRebHeader } from '../../utils/test_reb_header'\n\nimport MainHeader from './reb/header'\nimport { initializeUtagEvents } from './header.analytics'\n\nfunction initHeader() {\n if (initTestRebHeader) {\n // const rebHeader = document.querySelector('.js-reb-header')\n // rebHeader.classList.remove('hidden')\n\n MainHeader.init()\n }\n}\n\ninitHeader()\n\ndocument.addEventListener('DOMContentLoaded', function () {\n initializeUtagEvents()\n})\n","import { sendUtagEvent } from '../../core/analytics/utag_events'\nimport on from '../../utils/events_delegation'\n\nconst BLOCK_SELECTOR = '.js-main-header'\n\nexport function initializeUtagEvents() {\n document.querySelectorAll(`${BLOCK_SELECTOR} .utag-ib-logo`).forEach(element => {\n element.addEventListener('click', function () {\n sendUtagEvent({\n data: {\n event_name: 'logo',\n event_cat: 'logo',\n event_act: 'click logo iberostar',\n event_lbl: '',\n event_purpose: 'information',\n event_structure: 'header',\n },\n })\n })\n })\n on({\n eventName: 'click',\n selector: '.utag-header-menu-offers .utag-see-offer',\n handler() {\n sendUtagEvent({\n data: {\n event_name: 'offers',\n event_cat: 'offers',\n event_act: 'view offers conditions',\n event_structure: 'header',\n event_purpose: 'information',\n },\n })\n },\n })\n}\n","import { getLazyData } from '../../utils/get_lazy_data';\n\nlet data_audio = {\n audio_tag: null,\n audio_link: null,\n hotel_id: null,\n block_id: null,\n locale_path: null\n}\n\nfunction init() {\n if (document.querySelector('body').dataset.pageType != 'hotel' && !document.querySelector('audio')) return;\n\n let locale = $(\"html\").attr(\"lang\");\n data_audio.locale_path = (locale == 'es' ? \"\" : \"/\" + locale);\n\n let audio_links = document.querySelectorAll('.audio-link');\n audio_links.forEach((audio_link) => {\n audio_link.addEventListener('click', function (e) {\n e.preventDefault();\n data_audio.audio_link = audio_link;\n data_audio.audio_tag = audio_link.classList.contains('header-audio-link') ? document.querySelector('.header-audio') : document.querySelector('.masonry-audio');\n data_audio.hotel_id = $(this).data('hotel-id');\n data_audio.block_id = $(this).data('block-id');\n togglePlay();\n });\n });\n \n}\n\nfunction togglePlay() {\n data_audio.audio_link.classList.contains('audio-activated') ? stopAudio() : playAudio();\n}\n\nfunction playAudio() {\n if (!data_audio.audio_tag.classList.contains('loaded')) {\n generateAudio();\n } else {\n data_audio.audio_tag.play();\n document.querySelectorAll('.audio-link').forEach(function(_audio_link) {\n _audio_link.classList.add('audio-activated');\n });\n }\n}\n\nfunction generateAudio () {\n let url = `${data_audio.locale_path}/ajax_contents/get_audio_data?hotel_id=${data_audio.hotel_id}&block_id=${data_audio.block_id}`;\n getLazyData(url, function (data) {\n data_audio.audio_tag.setAttribute('src', data.src);\n data_audio.audio_tag.load();\n data_audio.audio_tag.loop = true;\n \n const playPromise = data_audio.audio_tag.play();\n if (playPromise !== undefined) {\n playPromise.then(() => {\n data_audio.audio_tag.classList.add('loaded');\n document.querySelectorAll('.audio-link').forEach(function(_audio_link) {\n _audio_link.classList.add('audio-activated');\n });\n })\n .catch((error) => {\n console.log(error);\n });\n }\n }, 'json');\n}\n\n\nfunction stopAudio() {\n document.querySelectorAll('audio').forEach(function(audio_tag) {\n audio_tag.pause();\n audio_tag.currentTime = 0;\n });\n document.querySelectorAll('.audio-activated').forEach(function(_audio_link) {\n _audio_link.classList.remove('audio-activated');\n });\n}\n\ninit();","import Modal from '../../shared/modal/modal'\nimport { readCookie, setCookie } from '../../utils/cookie_manager'\nimport { getParameterByName } from '../../utils/get_parameter_by_name'\n\nconst COOKIE_POPUP_FIA_VIEWED = 'popup_fia_viewed'\n\n/**\n * Checks if the 'cp' parameter in the URL contains 'fia' followed by a country code.\n *\n * @returns {boolean} True if 'cp' matches 'fia' followed by a valid country code, otherwise false.\n */\nfunction checkCountryInURL() {\n const cpValue = getParameterByName('cp')\n if (!cpValue) return false\n //comprobamos si existe la cookie fiacp y su valor coincide con el del cpValue en caso de existir eliminamos la cookie fiacp y devolvemos true\n if (readCookie('fiacp') === cpValue) {\n IB.cookieManager.deleteCookies(['fiacp'])\n return true\n }\n return false\n}\n\nfunction handlerPopupFia() {\n const isCountryInURL = checkCountryInURL()\n const isPopupFiaViewed = readCookie(COOKIE_POPUP_FIA_VIEWED)\n\n if (isCountryInURL && !isPopupFiaViewed) {\n Modal.show('modal-popup-fia', {\n onShow: () => {\n ScrollLock.on()\n setCookie(COOKIE_POPUP_FIA_VIEWED, window.location.href)\n },\n onClose: () => {\n ScrollLock.off()\n },\n awaitCloseAnimation: true,\n })\n }\n}\n\ndocument.addEventListener('DOMContentLoaded', () => {\n handlerPopupFia()\n})\n","import on from '../../../src/utils/events_delegation'\nimport { currentPageType } from '../../utils/page_type_detector.js'\nimport fastbooking from '../fastbooking/ibh_fastbooking.js'\n\nconst dateAlert = document.querySelector('.dates-alert')\n\nconst showAlert = () => dateAlert?.classList.remove('hidden')\nconst hideAlert = () => dateAlert?.classList.add('hidden')\n\n/**\n * Detect click on dates-alert to show date selector in FB\n */\n\non({\n eventName: 'click',\n selector: '.js-dates-alert .close',\n handler() {\n hideAlert()\n },\n})\n\non({\n eventName: 'click',\n selector: '.js-dates-alert',\n handler(e) {\n if (!e.target.classList.contains('close')) fastbooking.openDates()\n hideAlert()\n },\n})\n\n/**\n * Observe if we've reached hotels list to show dates alert\n */\nconst observeHotelsList = () => {\n const observer = new IntersectionObserver(function (entries) {\n entries.forEach(function (entry) {\n const check_in = fastbooking.state.dates?.check_in\n const check_out = fastbooking.state.dates?.check_out\n if (entry.isIntersecting) {\n if (!check_in || !check_out) showAlert()\n } else {\n hideAlert()\n }\n })\n })\n\n document.querySelectorAll('.js-hotel-list').forEach(hotel => observer.observe(hotel))\n}\n\n/**\n * Show dates alert if no dates selected in results page\n */\nconst showDatesAlert = () => {\n if (!currentPageType.isDestination() && !currentPageType.isHotel()) return\n\n const checkIn = fastbooking.state.dates?.check_in\n const checkOut = fastbooking.state.dates?.check_out\n\n if (checkIn && checkOut) return\n\n if (currentPageType.isHotel()) return\n\n observeHotelsList()\n}\n\naddEventListener('DOMContentLoaded', () => showDatesAlert())\n","import _max from 'lodash/max';\nimport './social_login.scss';\n\n$(function () {\n let $social_login = $('.social-login');\n\n if (!$social_login.length) return false;\n\n let a = [];\n\n $social_login.find('li').each(function (index, element) {\n a.push($(element).find('a > span').width());\n });\n\n $social_login.find('li').find('a > span').width(_max(a) + 1);\n});\n\n$(document).on('click', 'a[data-social-login-check]', function (e) {\n let $el = $(this);\n let check_id = $el.data('socialLoginCheck');\n let $check = $('#' + check_id);\n\n if (!$check.is(':checked')) {\n e.preventDefault();\n $check.next('label').addClass('error');\n } else {\n $check.next('label').removeClass('error');\n }\n}).on('change', 'input#social_login_accept', function (e) {\n let $el = $(this);\n let $block = $el.closest('.block-form');\n let is_checked = $el.is(':checked');\n $el.next('label').toggleClass('error', !is_checked);\n $block.find('.formikation.parsley-errors').toggleClass('hidden', is_checked);\n});\n","import { currentPageType } from '../../utils/page_type_detector'\n\nfunction init() {\n if (currentPageType.isHotel() || currentPageType.isSpecialty()) {\n import(\n /* webpackChunkName: 'hotel_header' */\n `../../../src/blocks/hotel_header/hotel_header`\n ).catch(e => {\n console.warn(e)\n })\n\n // PY05355, Vue Hotel Header Lite\n import(\n /* webpackChunkName: 'vue_hotel_header_lite' */\n `../../../src/vue/hotel_header_lite/vue_hotel_header_lite`\n ).catch(e => {\n console.warn(e)\n })\n\n import(\n /* webpackChunkName: 'hotel_gallery_modal' */\n `../../../src/shared/hotel_gallery_modal/hotel_gallery_modal`\n )\n .then(blockJS => blockJS.init())\n .catch(e => {\n console.warn(e)\n })\n }\n}\n\ninit()\n","/* eslint-disable simple-import-sort/imports */\n// GENERAL IMPORTS\nimport '../../../src/core/global'\n\n/**FASTBOOKING */\nimport '../../../src/shared/mobile_cta_sticky_bar/mobile_cta_sticky_bar.js'\n\n// JS creado para el destination_breadcrumb\nimport '../../../src/elements/destination_breadcrumb/destination_breadcrumb'\n\n// BLOCK LAYER\nimport '../../../src/core/iberapi/block_layer/block_layer.scss'\nimport '../../../src/vendors/forms/formz'\n\nimport '../../../src/shared/logged_user/logged_user'\nimport '../../../src/shared/cookie_defaults/cookie_defaults'\n\n// VENDORS\n\nimport '../../../src/vendors/jquery/jquery.cookie.min'\nimport '../../../src/vendors/formikation/formikation'\nimport '../../../src/vendors/rangedatepicker/rangedatepicker'\nimport '../../../src/vendors/urlParser/urlParser'\nimport '../../../src/vendors/aria_manager/aria_manager'\nimport '@fancyapps/fancybox'\nimport '../../../src/vendors/fancybox/_fancybox.scss'\nimport '../../../src/vendors/fancybox/fancybox.custom'\n\n// ANALYTICS\nimport '../../../src/core/analytics/count_down_session_campaign'\nimport '../../../src/core/analytics/partner_set_cookies'\nimport '../../../src/core/analytics/callback_utag_data'\nimport '../../../src/core/analytics/getHotelHeadquarters'\nimport '../../../src/core/analytics/dataLayerFunctions'\nimport '../../../src/core/analytics/utag_eec_events'\nimport '../../../src/core/analytics/utag_events'\nimport '../../../src/core/analytics/utag_session_counter'\nimport '../../../src/shared/load_cachestatus_cookie.js'\n\n// CORE IBERAPI\nimport '../../../src/core/iberapi/partner_shower/partner_shower'\nimport '../../../src/core/iberapi/visitor_type_detector/visitor_type_detector'\nimport '../../../src/core/iberapi/lazy_img/lazy_img'\n\n// BEHAVIORAL MODES ENABLED FROM CMS\nimport '../../../src/core/cancel_online_bookings/force_cc_lightbox'\nimport '../../../src/core/iberapi/market_simulator/market_simulator'\nimport '../../../src/core/iberapi/market_simulator/simulate_market'\nimport '../../../src/blocks/ib_gallery/gallery_init'\n\n// ELEMENTS\nimport '../../../src/elements/alert/alert'\nimport '../../../src/elements/badge/badge'\nimport '../../../src/elements/banner_pwa/banner_pwa'\nimport '../../../src/elements/breadcrumbs/breadcrumbs.scss'\nimport '../../../src/elements/filter_tabs/filter_tabs_commons.scss'\nimport '../../../src/elements/headband/headband'\nimport '../../../src/elements/info_links/info_links.scss'\nimport '../../../src/elements/rating_circles/rating_circles.scss'\nimport '../../../src/elements/sashes/sashes.scss'\nimport '../../../src/elements/skeleton/skeleton.scss'\nimport '../../../src/elements/skeleton/skeleton'\nimport '../../../src/elements/spinner/spinner.scss'\nimport '../../../src/elements/toggle/toggle'\nimport '../../../src/elements/tooltip/tooltip'\nimport '../../../src/elements/user_links/user_links.scss'\n\nimport '../../../src/elements/pro_link/pro_link'\nimport '../../../src/elements/cookie_country/cookie_country'\n\n// Browsing session\nimport '../../../src/core/iberapi/browsing_session/browsing_session'\n\n// LAYOUT\nimport '../../../src/layout/header/header'\nimport '../../../src/layout/mobile_header/mobile_header'\n\n//COOKIES_POLICY_POPUP\nimport '../../../src/blocks/cookies_content/cookies_content.js'\n\n// Init loader\nimport '../../../src/elements/wait_loading/wait_loading'\n\n// SHARED\nimport '../../../src/shared/locale_cookie/locale_cookie'\nimport '../../../src/core/iberapi/hotels_data/hotels_data' // 1\nimport '../../../src/shared/segment/segment' // 1\nimport '../../../src/shared/last_searches/last_searches' // 2\nimport '../../../src/shared/locale_form/locale_form' // 3\nimport '../../../src/shared/phone_list/phone_list' // 8\nimport '../../../src/shared/currency_form/currency_form' // 9\nimport '../../../src/shared/device_detector/device_detector'\nimport '../../../src/shared/currency_agency_selector/currency_agency_selector'\nimport '../../../src/shared/mobile_panel/mobile_panels'\nimport '../../../src/shared/callmeback/callmeback'\nimport '../../../src/shared/internal_nav/internal_nav'\nimport '../../../src/shared/not_logged_booking/not_logged_booking.scss'\nimport '../../../src/shared/partners/partners.scss'\nimport '../../../src/shared/opinion_widget/opinion_widget'\nimport '../../../src/shared/forms/forms'\nimport '../../../src/shared/hotel_next_opening/hotel_next_opening'\nimport '../../../src/shared/offer_notifications/offer_notifications'\nimport '../../../src/shared/truncable/truncable'\nimport '../../../src/shared/ab_tasty/_ab_tasty'\nimport '../../../src/shared/input_date/input_date'\nimport '../../../src/shared/share_lightbox/share_lightbox'\nimport '../../../src/shared/sort_by/sort_by'\nimport '../../../src/shared/footer_sticky/footer_sticky'\nimport '../../../src/shared/audio_generator/audio_generator'\nimport '../../../src/shared/next_bookings/next_bookings'\nimport '../../../src/shared/banners/banners'\nimport '../../../src/shared/floating_fastbooking/floating_fastbooking.scss'\nimport '../../../src/shared/pill/pill.scss'\nimport '../../../src/shared/user_menu/user_menu.scss'\nimport '../../../src/shared/password_field/password_field.scss'\nimport '../../../src/shared/comp_card/comp_card.scss'\nimport '../../../src/shared/fancybox_overwrited/fancybox_overwrited.scss'\nimport '../../../src/shared/shared_social/shared_social'\nimport '../../../src/shared/chat_agents/chat_agents'\nimport '../../../src/shared/popup_fia/popup_fia'\nimport '../../../src/shared/popup_fia/popup_fia.scss'\nimport '../../../src/shared/dates_alert/dates_alert'\nimport '../../../src/shared/external_url_modal/external_url_modal'\nimport '../../../src/shared/external_url_modal/external_url_modal.scss'\n\nimport '../../../src/core/iberapi/ready/ready'\n\n// FASTBOOKING\nimport '../../../src/shared/fastbooking_new_hotel/fastbooking_new_hotel.scss'\n\n// IHG MODALS AND TOOLTIPS\nimport '../../../src/core/utils/ihg'\nimport '../../../src/shared/ihg_tooltips/ihg_tooltip'\nimport '../../../src/shared/ihg_modal/ihg_modal'\n\nimport '../../../src/shared/social_login/social_login'\n\n// BLOCKS\nimport '../../../src/blocks/header_customized/header_customized'\nimport '../../../src/blocks/offers_list/offers_list'\nimport '../../../src/blocks/login_registration_lightbox/login_registration_lightbox'\nimport '../../../src/blocks/home_megabanner_slider/home_megabanner_slider'\nimport '../../../src/blocks/hotel_collapsible/hotel_collapsible'\nimport '../../../src/blocks/special_landing_header/special_landing_header'\nimport '../../../src/blocks/sustainable_info/sustainable_info'\n\nimport '../../../src/shared/social_share_builder/social_share_builder'\nimport '../../../src/blocks/landing_typekit_header/landing_typekit_header'\nimport '../../../src/blocks/auto_pop_up/auto_pop_up'\nimport '../../../src/shared/last_searches_cards/last_searches_cards'\nimport '../../../src/blocks/best_online_rate/best_online_rate'\nimport '../../../src/shared/side_panel/side_panel'\nimport '../../../src/blocks/hotel_information_ratings/hotel_information_ratings'\nimport '../../../src/blocks/flight_plus_hotel/flight_plus_hotel'\n\n// PAGES\nimport '../../../src/pages/register/register'\nimport '../../../src/pages/session_page/session_page'\nimport '../../../src/pages/my_iberostar/facebook_widget'\nimport '../../../src/pages/hotel_page/hotel_page'\n\n// ADMIN\nimport '../../../src/core/iberapi/admin_browsing/admin_browsing'\n\n// TEST LOAD BLOCKS\nimport '../../../src/core/iberapi/block_layer/test_block_layer'\n\n//APP IN\nimport '../../../../assets/javascripts/web_view'\n\nimport '../../../src/blocks/destinations_index_packed/destinations_index'\n\n// AUTH0\nimport '../../../src/auth0/sso.js'\n\nimport 'hls.js'\n// PY05355, Header REB - Ficha de hotel 2023, ?test_reb_header=true\nimport('../../../src/layout/header/reb/header')\n// PY05355, Vue Hotel Header Lite\nimport('../../../src/vue/hotel_header_lite/vue_hotel_header_lite')\n\nimport('../../../src/blocks/hotels_info_with_filtering_packed/hotels_info_with_filtering')\n\nimport('../../../src/shared/header_sticky_hotel/header_sticky_hotel')\n\n// VUE MAIN NAV\nimport('../../../src/vue/main_nav/vue_main_nav')\n\nimport('../../../src/shared/ibh_fastbooking/ibh_fastbooking_container')\n\n// VUE POPUP\nimport('../../../src/vue/popup_notification/vue_popup_notification')\n","import { sendUtagEvent } from '../../core/analytics/utag_events'\nimport { getCleanedString } from '../../utils/utilities'\n\nexport function initializeUtagEvents(element) {\n sendUtagEvent({\n data: {\n event_name: 'more_information_module',\n event_cat: 'more information',\n event_act: getCleanedString(element.dataset.blockSection),\n event_lbl: getCleanedString(element.dataset.blockTitle),\n event_purpose: 'inspiration',\n event_structure: 'body',\n },\n })\n}\n","import { initializeUtagEvents } from './hotel_collapsible.analytics'\n\nconst BLOCK_WOC = '.hotel-woc'\nconst BLOCK_WOC_HEADER = '.hotel-woc__header'\n\nexport function initCollapsibles() {\n const collapsibles = document.querySelectorAll('.hotel-collapsible')\n collapsibles.forEach(collapsible => {\n const hasWOC = collapsible.querySelector(BLOCK_WOC) ? true : false\n\n const header = collapsible.querySelector('.hotel-collapsible__summary-header')\n const button = collapsible.querySelector('.hotel-collapsible__summary-button')\n const summary = collapsible.querySelector('.hotel-collapsible__summary')\n const contentHeader = collapsible.querySelector('.hotel-collapsible__content-header')\n\n if (hasWOC) {\n // add woc class modifier\n collapsible.classList.add('hotel-collapsible--woc')\n\n // copy woc header to collapsible header\n const wocHeader = collapsible.querySelector(BLOCK_WOC_HEADER)\n header.innerHTML = wocHeader.outerHTML\n\n // load header image\n const headerImage = header.querySelector('.hotel-woc__header-image .image')\n headerImage\n .querySelectorAll('source')\n .forEach(source => source.setAttribute('srcset', source.getAttribute('data-srcset')))\n headerImage.classList.add('loaded')\n\n // remove woc header\n wocHeader.remove()\n contentHeader.remove()\n }\n\n summary.addEventListener('click', () => {\n button.classList.toggle('hotel-collapsible__summary-button--active')\n initializeUtagEvents(button)\n if (!hasWOC) {\n header?.classList.toggle('hotel-collapsible__summary-header--active')\n contentHeader?.classList.toggle('hidden')\n }\n })\n })\n}\n\ninitCollapsibles()\n","import '../session_page/session_page';\nimport '../../shared/js_tabs/js_tabs';\n\n$('.b-login-registration-lightbox-wrapper .about-links--button').on('click', function () {\n $('.b-login-registration-lightbox-wrapper').scrollTo(0, { duration: 0 });\n $('.cabecera .square-tabs-menu').scrollTo(0, { duration: 0 });\n});\n\n// On login register lightbox opened (after ajax request success)\n$('.js-user-options-link').on('ajax:success', function () {\n // Keyboard focus to allow accessibility\n // Must be delayed because lightbox content its not in DOM yet\n setTimeout(() => { document.querySelector('.js-login-registration-lightbox [data-fancybox-close]').focus(); }, 100);\n});\n","import '../../pages/offers_index/offers_index.scss';\n\n$(document).on('click', '#offers-drop-down a', function (event) {\n let $this = $(this);\n let text = $this.text();\n\n $('#offers-drop-down').hide();\n $this.closest('.actions').find('.l-down').removeClass('active')\n .text(text);\n});\n","import YouTubePlayer from 'youtube-player'\n\nimport Modal from '../../shared/modal/modal'\n\nimport { initializeUtagEvents } from './special_landing_header_analytics'\n\nconst modalId = 'video-modal'\nconst contentVideo = '.video-special-landing'\nlet player\n\nfunction stopVideo(videoElement) {\n videoElement.pause()\n videoElement.currentTime = 0\n}\nfunction initVideoYoutube(modal) {\n const idVideoYoutube = modal.querySelector('.js-video-youtube').dataset.videoYoutube\n const element = modal.querySelector('.js-video-youtube')\n\n player = YouTubePlayer(element, {\n videoId: idVideoYoutube,\n playerVars: {\n startSeconds: 0,\n rel: 0,\n },\n })\n\n player.playVideo()\n}\n\nfunction initVideoModal(modalId) {\n Modal.show(modalId, {\n onShow: modal => {\n ScrollLock.on()\n const video = modal.querySelector(contentVideo)\n\n if (!video.classList.contains('js-video-youtube')) {\n video.play()\n } else {\n initVideoYoutube(modal)\n }\n },\n onClose: modal => {\n const video = modal.querySelector(contentVideo)\n if (!video.classList.contains('js-video-youtube')) {\n stopVideo(video)\n } else {\n player.destroy()\n }\n\n ScrollLock.off()\n },\n awaitCloseAnimation: true,\n awaitOpenAnimation: true,\n })\n}\nfunction init() {\n const block = document.querySelector('.js-special-landing-header')\n\n if (!block) return\n\n const triggerModalVideo = block.querySelector('.js-video-modal')\n\n if (!triggerModalVideo) return\n\n triggerModalVideo.addEventListener('click', () => {\n initVideoModal(modalId)\n })\n}\n\ninit()\n\ninitializeUtagEvents()\n","import { sendUtagEvent } from '../../core/analytics/utag_events'\nimport on from '../../utils/events_delegation'\n\nexport function initializeUtagEvents() {\n on({\n eventName: 'click',\n selector: '.utag-video-modal',\n handler() {\n sendUtagEvent({\n data: {\n event_name: 'multimedia',\n event_cat: 'videos',\n event_act: 'play',\n event_lbl: 'special landing header',\n event_purpose: 'information',\n event_structure: 'body',\n },\n })\n },\n })\n}\n","import { sendUtagEvent } from '../../core/analytics/utag_events'\nimport { currentDevice } from '../../core/utils/currentDevice'\nimport on from '../../utils/events_delegation'\n\n/**\n * Initializes event tracking for utag events.\n * On desktop, the event is triggered by a `mouseover` with a debounce delay of 5 seconds.\n * If the user moves the mouse out and back in, the timer resets and the event can fire again.\n */\nexport function initializeUtagEvents() {\n const handlerFunction = function () {\n const eventAct = this.closest('.utag-sustainable-info').dataset.utagEventLbl\n const eventLbl = this.closest('[data-utag-event-lbl]').dataset.utagEventLbl\n sendUtagEvent({\n data: {\n event_name: 'sustainability_module',\n event_cat: 'wave of change module',\n event_act: eventAct,\n event_lbl: eventLbl,\n event_structure: 'body',\n event_purpose: 'inspiration',\n },\n })\n }\n\n const handlerFunctionMoreInfoClick = function () {\n const eventAct = this.closest('.utag-sustainable-info').dataset.utagEventLbl\n sendUtagEvent({\n data: {\n event_name: 'sustainability_module',\n event_cat: 'wave of change module',\n event_act: eventAct,\n event_lbl: 'more information',\n event_structure: 'body',\n event_purpose: 'inspiration',\n },\n })\n }\n\n if (currentDevice.isDesktop) {\n on({\n eventName: 'mouseover',\n selector: `.utag-sustainable-info-item`,\n handler(event) {\n const timeout = setTimeout(() => handlerFunction.call(this, event), 5000)\n\n const clear = () => {\n clearTimeout(timeout)\n this.removeEventListener('mouseout', clear) // Clean up the event listener\n }\n\n this.addEventListener('mouseout', clear)\n },\n })\n } else {\n on({\n eventName: 'click',\n selector: `.utag-sustainable-info-item`,\n handler: handlerFunction,\n })\n }\n\n on({\n eventName: 'click',\n selector: `.utag-sustainable-more-info`,\n handler: handlerFunctionMoreInfoClick,\n })\n}\n","import { initializeUtagEvents } from './sustainable_info.analytics'\n\nexport function init() {\n initializeUtagEvents()\n}\n","import(\n `./banner_pwa.scss`\n)\n","function readTealiumCookies(name) {\n var nameEQ = `${name}=`\n var ca = document.cookie.split(';')\n var length = ca.length\n for (var i = 0; i < length; i++) {\n var c = ca[i]\n while (c.charAt(0) === ' ') c = c.substring(1, c.length)\n if (c.indexOf(nameEQ) === 0) return c.substring(nameEQ.length, c.length)\n }\n return null\n}\n\nfunction isAbTastyAlreadyLoaded() {\n return !!document.querySelector('[data-ab-tasty]')\n}\n\nfunction initAbTasty() {\n const elementFromHtml = document.documentElement\n const abTastyUrl = elementFromHtml.dataset.abTastyUrl\n if (abTastyUrl) {\n if (!isAbTastyAlreadyLoaded()) {\n ;(function (i, s, o, g, r, a, m) {\n i['abtiming'] = 1 * new Date()\n ;(a = s.createElement(o)), (m = s.getElementsByTagName(o)[0])\n a.async = 1\n a.setAttribute('data-ab-tasty', 'true')\n a.src = g\n m.parentNode.insertBefore(a, m)\n })(window, document, 'script', `https:${abTastyUrl}`)\n }\n }\n}\ninitAbTasty()\n","import on from '../../utils/events_delegation'\n\non({\n eventName: 'click',\n selector: `.js-open-chat`,\n handler(e) {\n e.preventDefault()\n try {\n window.lanzo_chat()\n } catch (err) {}\n },\n})\n","import Modal from '../../shared/modal/modal'\n\nconst MODAL_SELECTOR = 'external-url-modal'\n\nfunction showExternalUrlModal(url) {\n const modalElement = document.getElementById(MODAL_SELECTOR)\n Modal.show(MODAL_SELECTOR, {\n onShow: () => {\n ScrollLock.on()\n\n const acceptButton = modalElement.querySelector('.js-external-url-accept-button')\n acceptButton.addEventListener('click', () => {\n Modal.close()\n window.open(url, '_blank')\n accept()\n }, { once: true })\n const rejectButton = modalElement.querySelector('.js-external-url-reject-button')\n\n rejectButton.addEventListener('click', () => {\n Modal.close()\n }, { once: true })\n },\n onClose: () => {\n ScrollLock.off()\n },\n awaitCloseAnimation: true,\n })\n}\n\nfunction init() { \n const externalUrlLinkArray = document.querySelectorAll('a[data-external-url=\"true\"]');\n externalUrlLinkArray.forEach(externalUrlLink => {\n externalUrlLink.addEventListener('click', e => {\n e.preventDefault()\n const url = externalUrlLink.getAttribute('href')\n showExternalUrlModal(url)\n })\n })\n}\n\ninit()\n","import '../../vendors/layer_handler_ecc/layer_handler_eec'\n\nfunction changeTab(activeTab, activeTarget) {\n activeTab.classList.add('active')\n Array.from(activeTab.parentElement.children).forEach(sibling => {\n if (sibling !== activeTab) sibling.classList.remove('active')\n })\n activeTarget.classList.add('active')\n Array.from(activeTarget.parentElement.children).forEach(sibling => {\n if (sibling !== activeTarget) sibling.classList.remove('active')\n })\n activeTarget.querySelectorAll('.swiper-container:visible').forEach(function (swiperContainer) {\n if (swiperContainer.swiper) swiperContainer.swiper.update()\n })\n LayerHandlerEec.pushVisibleProducts(\n '.destination-tabs-list .js-tab.active .js-tab.active .card-container .call-to-action a[data-ecc-product]'\n )\n}\ndocument.addEventListener('click', function (e) {\n if (e.target.closest('.js-tabs-nav li a')) {\n e.preventDefault()\n const el = e.target.closest('li')\n const target = document.querySelector(el.getAttribute('data-tab'))\n changeTab(el, target)\n }\n})\ndocument.addEventListener('click', function (e) {\n if (e.target.closest('.js-link-nav')) {\n e.preventDefault()\n const el = e.target.closest('.js-link-nav')\n const dataTab = el.getAttribute('data-tab')\n const target = document.querySelector(dataTab)\n const activeTab = el.closest('.js-tabs-parent').querySelector(`.js-tabs-nav li[data-tab=\"${dataTab}\"]`)\n changeTab(activeTab, target)\n }\n})\n\ndocument.addEventListener('click', function (e) {\n if (e.target.closest('.js-tabs-actions li')) {\n e.preventDefault()\n const el = e.target.closest('li')\n const wrapper = el.closest('.js-tabs')\n const klass = el.getAttribute('data-klass')\n\n el.classList.add('active')\n Array.from(el.parentElement.children).forEach(sibling => {\n if (sibling !== el) sibling.classList.remove('active')\n })\n\n wrapper.className = `js-tabs ${klass}`\n\n wrapper.querySelectorAll('.swiper-container').forEach(function (swiperContainer) {\n if (swiperContainer.swiper) swiperContainer.swiper.update(true)\n })\n }\n})\n/**\n * Función que activa la pestaña seleccionada y su contenido\n * @param {element} activeTab\n * @param {element} activeTarget\n */\n","import '../../vendors/template_engine/template_engine'\nimport './opinion_widget.scss'\n\nimport { currentDevice } from '../../core/utils/currentDevice'\nimport Modal from '../../shared/modal/modal'\nimport { readCookie } from '../../utils/cookie_manager'\n\nlet template_options = ''\nconst isMobile = currentDevice.isMobile\n\n$(document)\n .on('click', '.holidaycheck-widget', function (e) {\n e.preventDefault()\n const $block = $('#holidaycheck-comments-template')\n const hc_id = $(this).data('hc-id')\n $.fancybox.open($block, {\n autoSize: true,\n smallBtn: 'true',\n type: 'iframe',\n padding: 0,\n iframe: {\n preload: 'false',\n },\n beforeShow() {\n if (template_options === '' || template_options.holidaycheck_id !== hc_id) {\n template_options = { holidaycheck_id: hc_id }\n $.ajaxSetup({ cache: false })\n const hcSize = isMobile ? 'm' : 'l'\n const hc_script = `
Hotels mit Hotelbewertungen bei HolidayCheck
`\n $block.empty()\n $block.append(TemplateEngine(hc_script, template_options))\n }\n },\n afterShow() {\n // Añadimos un ancho a toda la pantalla cuando se trate de un dispositivo móvil. Sin anchura, no queda centrado en la pantalla.\n if (isMobile) document.querySelector('#holidaycheck-comments-template').style.width = '100%'\n },\n })\n })\n .on('click', '.tripadvisor-open-fancy', function (e) {\n e.preventDefault()\n if (!isMobile) {\n const $this = $(this)\n const opinionSrc = $this.attr('href')\n\n const dataTitleIframe = $this.closest('.tripadvisor-widget').data('title-iframe')\n\n Modal.showIframe({\n iframe: opinionSrc,\n modalClass: 'large-screens',\n titleIframe: dataTitleIframe,\n awaitCloseAnimation: true,\n onShow: () => {\n ScrollLock.on()\n },\n onClose: () => {\n ScrollLock.off()\n },\n })\n }\n })\n\nfunction showWidget(widget_show, widget_hide) {\n $(widget_hide).addClass('hidden')\n $(widget_show).removeClass('hidden')\n\n if (widget_show === '.holidaycheck-widget') {\n let $widget\n let hc_id\n let hotel_id\n $.ajaxSetup({ cache: true }) // prevent timestamp as parameter in holidaycheck request\n $(widget_show).each(function (idx, widget) {\n $widget = $(widget)\n\n if ($widget.hasClass('loaded')) return\n\n if ($widget.data('hc-id') !== undefined) {\n hc_id = $widget.data('hc-id')\n hotel_id = `hotel-1-${hc_id}-de_DE-s-w-0-1-1-3-0`\n\n $widget\n .find('.widget')\n .append(\n `
Hotels mit Hotelbewertungen bei HolidayCheck
`\n )\n $widget.addClass('loaded')\n }\n })\n }\n}\n\nfunction init() {\n const country = readCookie('x-country')\n if (country === 'DE') {\n showWidget('.holidaycheck-widget', '.tripadvisor-widget')\n } else {\n showWidget('.tripadvisor-widget', '.holidaycheck-widget')\n }\n}\n\nwindow.IB.opinionsWidgets = {\n init,\n}\n\nIB.opinionsWidgets.init()\n","/*\n Util methods\n - IB.segment.get() : returns String\n - IB.segment.has() : returns boolean\n*/\n\nlet segment\nconst element_selector = 'body'\n\nfunction init() {\n let new_segment\n const $el = $(element_selector).first()\n\n if ($el.length && $el.is('[class*=\"seg-\"]')) {\n const classes = $el.attr('class')\n new_segment = classes.substr(classes.match(/seg-*/).index + 4).split(' ')[0]\n IB.segment.set(new_segment)\n }\n}\n\nfunction set(segment) {\n this.segment = segment\n}\n\nfunction get() {\n return this.segment\n}\n\nfunction has() {\n return typeof this.segment !== 'undefined' && this.segment !== 'undefined' && this.segment !== ''\n}\n\nwindow.IB.segment = {\n set,\n get,\n has,\n init,\n}\n\n$(function () {\n IB.segment.init()\n})\n","import Hls from 'hls.js'\n\nimport inViewport from '../utils/inViewport'\n\nconst HLS_LOADED_CLASS = 'is-hls-loaded'\n\nfunction init(hlsVideos, config = {}) {\n const autoplay = config.autoplay !== undefined ? config.autoPlay : true\n const loop = config.loop !== undefined ? config.loop : true\n const playsWhenEnterViewport = config.playsWhenEnterViewport !== undefined ? config.playsWhenEnterViewport : true\n\n hlsVideos.forEach(video => {\n if (video.classList.contains(HLS_LOADED_CLASS)) return\n\n const videoSrc = video.dataset.url ? video.dataset.url : ''\n\n if (Hls.isSupported()) {\n const hls = new Hls()\n hls.loadSource(videoSrc)\n hls.attachMedia(video)\n } else if (video.canPlayType('application/vnd.apple.mpegurl')) {\n video.setAttribute('src', videoSrc)\n }\n\n video.classList.add(HLS_LOADED_CLASS)\n\n video.muted = true\n video.autoplay = autoplay\n video.loop = loop\n video.playsInline = autoplay\n\n if (playsWhenEnterViewport) {\n inViewport(video, element => {\n if (element.isIntersecting) {\n ;['canplaythrough', 'ended'].forEach(event => {\n video.addEventListener(event, () => {\n const timeout = event === 'ended' ? 10 : 0\n setTimeout(() => {\n video\n .play()\n .then(() => {\n // console.log(`Video played on event ${event}`)\n })\n .catch(error => {\n // console.log(`Error calling play() on video on event${event}`, error)\n })\n }, timeout)\n })\n })\n }\n })\n }\n })\n}\n\nexport function loadHlsVideo(baseSelector, config) {\n const videoElements = document.querySelectorAll(`${baseSelector} .hls-video`)\n\n if (videoElements.length) {\n init(videoElements, config)\n }\n}\n\nexport function loadHlsVideoByElem(elem, config) {\n const videoElements = elem.querySelectorAll('.hls-video')\n\n if (videoElements.length) {\n init(videoElements, config)\n }\n}\n","(function(global) {\n var LayerHandlerEec = {};\n global.LayerHandlerEec = LayerHandlerEec;\n\n LayerHandlerEec.init = function(gtm_id) {\n //Bindeamos los clicks de productos y promos, y las búsquedas desde fastbooking.\n this.bindEvents();\n //Mandamos las impresiones de los productos y las promociones de algunos módulos. Se juega con los selectores para identificar exactamente qué se manda\n //Algunos módulos mandarán impresiones también al avanzar la tab o el carrusel\n this.pushVisiblePromotions(\".home-static-banner a[data-ecc-promo]\");\n\n this.pushVisiblePromotions(\".offers-index-list .card-container .call-to-action a[data-ecc-promo]\");\n this.pushVisibleProducts(\".offers-index-list .card-container .call-to-action a[data-ecc-product]\");\n this.pushVisiblePromotions(\".offers-list .card-container .call-to-action a[data-ecc-promo]\");\n this.pushVisibleProducts(\".offers-list .card-container .call-to-action a[data-ecc-product]\");\n\n this.pushVisibleProducts(\".destination-tabs-list .js-tab.active .js-tab.active .card-container .call-to-action a[data-ecc-product]\");\n this.pushVisibleProducts(\".hotel-list .card-container .call-to-action a[data-ecc-product]\");\n\n if ($('.masonry-modules').length && IB.currentDevice === 'mobile') {\n //Nada aquí, lo hacemos en el masonry_modules.js, masonry_offers, etc.\n }else{\n this.pushVisiblePromotions(\".masonry-modules div[class*='masonry-link'] [data-ecc-promo]\");\n this.pushVisibleProducts(\".masonry-modules div[class*='masonry-link'] [data-ecc-product]\");\n this.pushVisibleProducts(\".masonry-modules div[class*='masonry-offer'] [data-ecc-product]\");\n this.pushVisiblePromotions(\".offers-in-a-row [data-ecc-promo]\");\n this.pushVisibleProducts(\".offers-in-a-row [data-ecc-product]\");\n this.pushVisiblePromotions(\".multi-offers-slider [data-ecc-promo]\");\n this.pushVisibleProducts(\".multi-offers-slider [data-ecc-product]\");\n\n //this.pushVisibleProducts(\".near-hotels-slider .card-container a[data-ecc-product]:visible\");\n }\n };\n\n LayerHandlerEec.bindEvents = function() {\n this.bindClicks();\n this.bindSearchs();\n };\n\n LayerHandlerEec.pushVisiblePromotions = function(selector) {\n promos = [];\n $(selector).each(function(){\n data = LayerHandlerEec.promoBaseData(this);\n if(data !== null) {\n promos.push(data);\n }\n });\n if (promos.length > 0){\n data = {\"ecommerce\": { \"promoView\": { \"promotions\": promos } } };\n this.pushData(data);\n }\n };\n\n LayerHandlerEec.pushVisibleProducts = function(selector) {\n products = [];\n currencyCode = \"\";\n is_fastbooking_result_page = (window.location.pathname.indexOf('/bookings') != -1 || window.location.pathname.indexOf('/reservas') != -1);\n is_still_working = $('#watch-job').length > 0;\n $(selector).each(function(){\n data = LayerHandlerEec.productBaseData(this);\n if(data !== null) {\n currencyCode = data[\"currency\"];\n delete data[\"currency\"];\n delete data[\"cart\"];\n if (is_fastbooking_result_page && is_still_working) {\n data[\"dimension194\"] = \"Buscando precios\";\n }\n products.push(data);\n }\n });\n if (products.length > 0){\n data = {\"ecommerce\": { \"currencyCode\": currencyCode, \"impressions\": products } };\n if (is_fastbooking_result_page && !is_still_working) {\n data[\"event\"] = \"loadProductDetails\";\n }\n this.pushData(data);\n }\n };\n\n LayerHandlerEec.bindClicks = function() {\n document.body.addEventListener('click', function(event) {\n var element = event.target,\n data;\n data = this.promoClickData(element);\n this.pushData(data);\n data = this.productClickData(element);\n this.pushData(data);\n }.bind(this));\n }\n\n LayerHandlerEec.bindSearchs = function() {\n document.body.addEventListener('submit', function(event) {\n var element = event.target;\n\n data = this.searchBaseData(element);\n //Rellenamos el resto de datos del bloque y de la página\n if (data !== undefined){\n scr = $(element).closest(\"div\").find(\"script[id*=ee-block]\")\n if (scr.length > 0){\n block_data = JSON.parse($(scr).html());\n data[\"dimension190\"] = block_data[\"title\"];\n data[\"dimension193\"] = block_data[\"type\"];\n }\n data[\"dimension196\"] = this.getPageData()[\"subcategory\"];\n data = {\"event\": \"addToCart\", \"ecommerce\": { \"add\": { \"products\": [data] } } } ;\n this.pushData(data);\n }\n }.bind(this));\n }\n\n LayerHandlerEec.promoClickData = function(element) {\n data = this.promoBaseData(element);\n if (data !== null) {\n data = {\"event\": \"promotionClick\", \"ecommerce\": { \"promoClick\": { \"promotions\": [data] } } };\n }\n return data;\n }\n\n LayerHandlerEec.promoBaseData = function(element) {\n data = this.getElementData(element, 'data-ecc-promo');\n if (data !== null) {\n data = JSON.parse(data);\n block_data = this.getBlockData(data[\"block\"]);\n delete data[\"block\"];\n if (data[\"size\"] !== undefined) {\n switch (data[\"size\"]) {\n case 'masonry-link1x1':\n data[\"creative\"] = \"280x280\";\n break;\n case 'masonry-link2x1':\n data[\"creative\"] = \"570x280\";\n break;\n case 'masonry-link2x2':\n data[\"creative\"] = \"570x570\";\n break;\n }\n delete data[\"size\"];\n }else{\n data[\"creative\"] = block_data[\"type\"];\n }\n\n data[\"moduleTitleProm\"] = block_data[\"title\"];\n data[\"moduleTypeProm\"] = block_data[\"type\"];\n data[\"contentTypeProm\"] = data[\"category\"];\n delete data[\"category\"];\n data[\"position\"] = this.getPageData(data[\"block\"])[\"category\"];\n }\n return data;\n }\n\n LayerHandlerEec.productClickData = function(element) {\n data = this.productBaseData(element);\n if (data !== null) {\n if (data[\"cart\"] == true){\n currencyCode = data[\"currency\"];\n delete data[\"cart\"];\n delete data[\"currency\"];\n delete data[\"hotel\"];\n data = {\"event\": \"addToCart\", \"ecommerce\": { \"currencyCode\": currencyCode, \"add\": { \"products\": [data] } } } ;\n }else\n if(data[\"hotel\"] == true){\n delete data[\"hotel\"];\n data = {\"event\": \"viewProductDetails\", \"ecommerce\": { \"detail\": { \"actionField\": { \"list\": data[\"list\"] }, \"products\": [data] } } };\n }\n else{\n data = {\"ecommerce\": { \"detail\": { \"actionField\": { \"list\": data[\"list\"] }, \"products\": [data] } } };\n }\n }\n return data;\n }\n\n LayerHandlerEec.productBaseData = function(element) {\n var data = this.getElementData(element, 'data-ecc-product')\n if (data !== null) {\n data = JSON.parse(data);\n hotel_data = IB.hotels_data.check() ? LayerHandlerEec.recoverHotelDataFromJson(\"h\" + data[\"id\"]) : IB.hotels_data.get(function(){ LayerHandlerEec.recoverHotelDataFromJson(\"h\" + data[\"id\"])});\n if (hotel_data){\n data[\"name\"] = hotel_data[\"name\"];\n data[\"id\"] = hotel_data[\"id\"];\n data[\"category\"] = hotel_data[\"category\"];\n data[\"hotel\"] = true;\n }\n block_data = this.getBlockData(data[\"block\"]);\n delete data[\"block\"];\n data[\"dimension190\"] = block_data[\"title\"];\n data[\"dimension193\"] = block_data[\"type\"];\n if (data[\"price\"] !== null && data[\"price\"] != \"0\"){\n data[\"dimension194\"] = \"Dispo\";\n }else{\n data[\"dimension194\"] = \"NoDispo\";\n }\n\n page_data = this.getPageData();\n data[\"list\"] = page_data[\"category\"];\n data[\"dimension196\"] = page_data[\"subcategory\"];\n\n delete data[\"size\"];\n }\n return data;\n }\n\n LayerHandlerEec.searchBaseData = function(element) {\n var hotel_id, data;\n //Si vamos a saltar a CRS (buscamos un hotel y buscamos con fechas), buscamos ese hotel en el JSON y rellenamos los datos\n if ($(element).find(\"[name*=check_in_date]\").val() == \"\" || $(element).find(\"[name*=check_out_date]\").val() == \"\"){\n return data;\n }\n if ($(element).find(\"[name*=place_to_go]\").length > 0) {\n hotel_id = $(element).find(\"[name*=place_to_go]\").val();\n if (!hotel_id.match(\"^h\")) {\n hotel_id = LayerHandlerEec.recoverHotelFromPlaceToGo(hotel_id);\n }\n }else{\n hotel_id = \"h\" + $(element).find(\"[name*=hotel_id]\").val();\n }\n if (hotel_id) {\n data = (IB.hotels_data.check() ? LayerHandlerEec.recoverHotelDataFromJson(hotel_id) : IB.hotels_data.get(function(){LayerHandlerEec.recoverHotelDataFromJson(hotel_id)}));\n }\n return data;\n }\n\n LayerHandlerEec.recoverHotelFromPlaceToGo = function(id) {\n if (!id.match(\"^d\")){\n return null;\n }\n //Cogemos el destino actual y todos los destinos hijos\n var hotels_data = JSON.parse(sessionStorage.getItem('fastbooking_data'));\n if(hotels_data === undefined)\n return null;\n var destination_ids = current_ids = [id];\n do {\n var child_destinations = $.grep(hotels_data[\"destinations\"][1], function( n, i ) {\n return $.inArray(n[\"data\"][\"parent_id\"], current_ids) >= 0;\n });\n current_ids = [];\n for (var i = 0; i < child_destinations.length; i++) {\n destination_ids.push(child_destinations[i][\"id\"]);\n current_ids.push(child_destinations[i][\"id\"]);\n }\n } while (current_ids.length > 0);\n\n //Buscamos los hoteles de esos destinos, si solo es un hotel lo devolvemos\n var hotels = $.grep(hotels_data[\"hotels\"][1], function( n, i ) {\n return $.inArray(n[\"data\"][\"destination\"], destination_ids) >= 0;\n });\n if (hotels.length == 1) {\n return hotels[0][\"id\"];\n }else{\n return null;\n }\n }\n\n LayerHandlerEec.recoverHotelDataFromJson = function(hotel_id) {\n var data;\n var hotels_data = IB.hotels_data.getData();\n //Buscamos el hotel en el Json\n const hotel = $.grep(hotels_data[\"hotels\"][1], function( n, i ) {\n return n[\"id\"] == hotel_id;\n });\n if (hotel.length > 0){\n var category = \"\";\n //Buscamos los destinos para rellenar el árbol hacia arriba\n var destination_id = hotel[0][\"data\"][\"destination\"];\n while (destination_id != \"d\"){\n const destination = $.grep(hotels_data[\"destinations\"][1], function( n, i ) {\n return n[\"id\"] == destination_id;\n })\n category = \"/\" + destination[0][\"data\"][\"title_es\"] + category;\n destination_id = destination[0][\"data\"][\"parent_id\"];\n }\n\n data = {\"name\": hotel[0][\"title\"], \"id\": hotel[0][\"data\"][\"code\"], \"category\": category }\n }\n return data;\n }\n\n LayerHandlerEec.getElementData = function(element, attribute) {\n var data = null;\n do {\n data = element.getAttribute(attribute);\n element = element.parentElement;\n } while (element && element.parentElement && data === null);\n return data;\n }\n\n LayerHandlerEec.getBlockData = function(id) {\n var $eeBlock = $('#ee-block-' + id);\n\n if (id == 0 || $eeBlock.length < 1) {\n return {};\n } else {\n return JSON.parse($eeBlock.html());\n }\n }\n\n LayerHandlerEec.getPageData = function() {\n return JSON.parse($('#eec-page-data').html());\n }\n\n LayerHandlerEec.pushData = function(data) {\n if(data !== null) {\n dataLayer.push(data);\n }\n }\n})(window);\n","!function(e,i){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=i():\"function\"==typeof define&&define.amd?define(i):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_isBetween=i()}(this,(function(){\"use strict\";return function(e,i,t){i.prototype.isBetween=function(e,i,s,f){var n=t(e),o=t(i),r=\"(\"===(f=f||\"()\")[0],u=\")\"===f[1];return(r?this.isAfter(n,s):!this.isBefore(n,s))&&(u?this.isBefore(o,s):!this.isAfter(o,s))||(r?this.isBefore(n,s):!this.isAfter(n,s))&&(u?this.isAfter(o,s):!this.isBefore(o,s))}}}));","!function(e,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=n():\"function\"==typeof define&&define.amd?define(n):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_minMax=n()}(this,(function(){\"use strict\";return function(e,n,t){var i=function(e,n){if(!n||!n.length||1===n.length&&!n[0]||1===n.length&&Array.isArray(n[0])&&!n[0].length)return null;var t;1===n.length&&n[0].length>0&&(n=n[0]);t=(n=n.filter((function(e){return e})))[0];for(var i=1;i other;\n}\n\nmodule.exports = baseGt;\n","var baseIteratee = require('./_baseIteratee'),\n isArrayLike = require('./isArrayLike'),\n keys = require('./keys');\n\n/**\n * Creates a `_.find` or `_.findLast` function.\n *\n * @private\n * @param {Function} findIndexFunc The function to find the collection index.\n * @returns {Function} Returns the new find function.\n */\nfunction createFind(findIndexFunc) {\n return function(collection, predicate, fromIndex) {\n var iterable = Object(collection);\n if (!isArrayLike(collection)) {\n var iteratee = baseIteratee(predicate, 3);\n collection = keys(collection);\n predicate = function(key) { return iteratee(iterable[key], key, iterable); };\n }\n var index = findIndexFunc(collection, predicate, fromIndex);\n return index > -1 ? iterable[iteratee ? collection[index] : index] : undefined;\n };\n}\n\nmodule.exports = createFind;\n","module.exports = require('./forEach');\n","var createFind = require('./_createFind'),\n findIndex = require('./findIndex');\n\n/**\n * Iterates over elements of `collection`, returning the first element\n * `predicate` returns truthy for. The predicate is invoked with three\n * arguments: (value, index|key, collection).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=0] The index to search from.\n * @returns {*} Returns the matched element, else `undefined`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': true },\n * { 'user': 'fred', 'age': 40, 'active': false },\n * { 'user': 'pebbles', 'age': 1, 'active': true }\n * ];\n *\n * _.find(users, function(o) { return o.age < 40; });\n * // => object for 'barney'\n *\n * // The `_.matches` iteratee shorthand.\n * _.find(users, { 'age': 1, 'active': true });\n * // => object for 'pebbles'\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.find(users, ['active', false]);\n * // => object for 'fred'\n *\n * // The `_.property` iteratee shorthand.\n * _.find(users, 'active');\n * // => object for 'barney'\n */\nvar find = createFind(findIndex);\n\nmodule.exports = find;\n","var baseFindIndex = require('./_baseFindIndex'),\n baseIteratee = require('./_baseIteratee'),\n toInteger = require('./toInteger');\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max;\n\n/**\n * This method is like `_.find` except that it returns the index of the first\n * element `predicate` returns truthy for instead of the element itself.\n *\n * @static\n * @memberOf _\n * @since 1.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=0] The index to search from.\n * @returns {number} Returns the index of the found element, else `-1`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': false },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': true }\n * ];\n *\n * _.findIndex(users, function(o) { return o.user == 'barney'; });\n * // => 0\n *\n * // The `_.matches` iteratee shorthand.\n * _.findIndex(users, { 'user': 'fred', 'active': false });\n * // => 1\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findIndex(users, ['active', false]);\n * // => 0\n *\n * // The `_.property` iteratee shorthand.\n * _.findIndex(users, 'active');\n * // => 2\n */\nfunction findIndex(array, predicate, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = fromIndex == null ? 0 : toInteger(fromIndex);\n if (index < 0) {\n index = nativeMax(length + index, 0);\n }\n return baseFindIndex(array, baseIteratee(predicate, 3), index);\n}\n\nmodule.exports = findIndex;\n","var baseExtremum = require('./_baseExtremum'),\n baseGt = require('./_baseGt'),\n identity = require('./identity');\n\n/**\n * Computes the maximum value of `array`. If `array` is empty or falsey,\n * `undefined` is returned.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Math\n * @param {Array} array The array to iterate over.\n * @returns {*} Returns the maximum value.\n * @example\n *\n * _.max([4, 2, 8, 6]);\n * // => 8\n *\n * _.max([]);\n * // => undefined\n */\nfunction max(array) {\n return (array && array.length)\n ? baseExtremum(array, identity, baseGt)\n : undefined;\n}\n\nmodule.exports = max;\n","module.exports = import(\"https://apiimg.iberostar.com/fastbooking/dist/assets/remoteEntry.js?ts=202502252580\");"],"names":["headerHeight","fbBar","body","showFbBar","style","transform","classList","add","hideFbBar","remove","calcShowHideFbBar","scrollTop","window","scrollY","offsetBottom","getAttribute","header","document","querySelector","offsetTop","offsetHeight","setAsyncDayjsLocale","dayjs","localizedFormat","customParseFormat","IB","currentDevice","SELECTORS","FB_BAR","MOBILE_HEADER","pageType","scrollTimer","lastScrollTop","delta","addEventListener","scroll","bodyCssTop","parseInt","getComputedStyle","top","replace","clearTimeout","isNaN","Math","abs","setTimeout","isVisible","e","summaryItem","target","closest","ctaButton","fastbooking","openStickyFastbooking","currentPageType","isHome","scrollTo","initTestRebHeader","MainHeader","init","querySelectorAll","forEach","element","sendUtagEvent","data","event_name","event_cat","event_act","event_lbl","event_purpose","event_structure","on","eventName","selector","handler","data_audio","audio_tag","audio_link","hotel_id","block_id","locale_path","dataset","locale","$","attr","preventDefault","contains","this","pause","currentTime","_audio_link","play","url","getLazyData","setAttribute","src","load","loop","playPromise","undefined","then","catch","error","console","log","generateAudio","COOKIE_POPUP_FIA_VIEWED","handlerPopupFia","isCountryInURL","cpValue","getParameterByName","readCookie","cookieManager","deleteCookies","checkCountryInURL","isPopupFiaViewed","Modal","show","onShow","ScrollLock","setCookie","location","href","onClose","off","awaitCloseAnimation","dateAlert","hideAlert","openDates","observeHotelsList","observer","IntersectionObserver","entries","entry","check_in","state","dates","check_out","isIntersecting","hotel","observe","showDatesAlert","isDestination","isHotel","checkIn","checkOut","$social_login","length","a","find","each","index","push","width","_max","check_id","$check","is","next","removeClass","addClass","$el","$block","is_checked","toggleClass","isSpecialty","warn","blockJS","initializeUtagEvents","getCleanedString","blockSection","blockTitle","BLOCK_WOC","BLOCK_WOC_HEADER","initCollapsibles","collapsible","hasWOC","button","summary","contentHeader","wocHeader","innerHTML","outerHTML","headerImage","source","toggle","duration","focus","event","$this","text","hide","contentVideo","player","initVideoModal","modalId","modal","video","idVideoYoutube","videoYoutube","YouTubePlayer","videoId","playerVars","startSeconds","rel","playVideo","initVideoYoutube","videoElement","destroy","awaitOpenAnimation","block","triggerModalVideo","handlerFunction","eventAct","utagEventLbl","eventLbl","isDesktop","timeout","call","clear","removeEventListener","abTastyUrl","documentElement","i","s","o","g","m","Date","createElement","getElementsByTagName","async","parentNode","insertBefore","initAbTasty","lanzo_chat","err","MODAL_SELECTOR","externalUrlLink","modalElement","getElementById","close","open","accept","once","showExternalUrlModal","changeTab","activeTab","activeTarget","Array","from","parentElement","children","sibling","swiperContainer","swiper","update","LayerHandlerEec","pushVisibleProducts","el","dataTab","wrapper","klass","className","template_options","isMobile","showWidget","widget_show","widget_hide","$widget","hc_id","ajaxSetup","cache","idx","widget","hasClass","append","fancybox","autoSize","smallBtn","type","padding","iframe","preload","beforeShow","holidaycheck_id","hcSize","hc_script","empty","TemplateEngine","afterShow","opinionSrc","dataTitleIframe","showIframe","modalClass","titleIframe","opinionsWidgets","segment","set","get","has","new_segment","first","classes","substr","match","split","HLS_LOADED_CLASS","hlsVideos","config","arguments","autoplay","autoPlay","playsWhenEnterViewport","videoSrc","Hls","hls","loadSource","attachMedia","canPlayType","muted","playsInline","inViewport","loadHlsVideo","baseSelector","videoElements","loadHlsVideoByElem","elem","global","gtm_id","bindEvents","pushVisiblePromotions","bindClicks","bindSearchs","promos","promoBaseData","pushData","products","currencyCode","is_fastbooking_result_page","pathname","indexOf","is_still_working","productBaseData","promoClickData","productClickData","bind","searchBaseData","scr","block_data","JSON","parse","html","getPageData","getElementData","getBlockData","hotel_data","hotels_data","check","recoverHotelDataFromJson","page_data","val","recoverHotelFromPlaceToGo","id","sessionStorage","getItem","destination_ids","current_ids","child_destinations","grep","n","inArray","hotels","getData","category","destination_id","destination","attribute","$eeBlock","dataLayer","module","exports","t","prototype","isBetween","f","r","u","isAfter","isBefore","isArray","filter","isValid","max","slice","min","utc","date","args","toDate","$L","utcOffset","local","$u","$utils","$offset","$d","$y","getUTCFullYear","$M","getUTCMonth","$D","getUTCDate","$W","getUTCDay","$H","getUTCHours","$m","getUTCMinutes","$s","getUTCSeconds","$ms","getUTCMilliseconds","getTimezoneOffset","$x","$localOffset","h","format","valueOf","isUTC","toISOString","toString","toUTCString","l","c","diff","isSymbol","require","array","iteratee","comparator","value","current","computed","result","other","baseIteratee","isArrayLike","keys","findIndexFunc","collection","predicate","fromIndex","iterable","Object","key","createFind","baseFindIndex","toInteger","nativeMax","baseExtremum","baseGt","identity","import"],"sourceRoot":""}