{"version":3,"file":"scripts/chunks/src_widgets_guest-selector_guest-selector_js.dea6f672869119ec2d57.js","mappings":"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","sources":["webpack://disp0001/./src/widgets/guest-selector/guest-selector.js"],"sourcesContent":["Promise.all([\r\n import('../../plugins/semantic/popup.css'),\r\n import('../../plugins/semantic/popup'),\r\n import('../../scripts/dbs/dbs.utilities.querystring'),\r\n]).then(() => {\r\n $('.widget.guest-selector').each(function (i, el) {\r\n $(el).data('widget', new GuestSelector(el))\r\n $(el).data('widget').init()\r\n })\r\n})\r\n\r\nfunction GuestSelector(el) {\r\n const self = this\r\n self.el = $(el)\r\n self.qs = new dbs.utilities.querystring()\r\n\r\n const ADULTS_DEFAULT_VALUE = 2\r\n const KIDS_DEFAULT_VALUE = 0\r\n const INFANTS_DEFAULT_VALUE = 0\r\n\r\n const guestsDisplayInput = self.el.find('.main-input')\r\n const guestsDisplayEl = self.el.find('.total-guests-value') // Found on 'book-now' and 'accommodation-availability' components\r\n const totalGuestsInput = self.el.find('.total.input')\r\n\r\n const adultsValue = self.el.find('.adults.value')\r\n const adultsInput = self.el.find('.adults.input')\r\n const adultsPlusButton = self.el.find('.plus-button[data-type=\"adults\"]')\r\n const adultsMinusButton = self.el.find('.minus-button[data-type=\"adults\"]')\r\n\r\n const kidsValue = self.el.find('.kids.value')\r\n const kidsInput = self.el.find('.kids.input')\r\n const kidsPlusButton = self.el.find('.plus-button[data-type=\"kids\"]')\r\n const kidsMinusButton = self.el.find('.minus-button[data-type=\"kids\"]')\r\n\r\n const infantsValue = self.el.find('.infants.value')\r\n const infantsInput = self.el.find('.infants.input')\r\n const infantsPlusButton = self.el.find('.plus-button[data-type=\"infants\"]')\r\n const infantsMinusButton = self.el.find('.minus-button[data-type=\"infants\"]')\r\n\r\n self.maxSleepingCapacity = self.el.attr('data-max-sleeping-capacity')\r\n ? parseInt(self.el.attr('data-max-sleeping-capacity'))\r\n : 10\r\n\r\n self.maxAdultCapacity = self.el.attr('data-max-adult-capacity') ? self.el.attr('data-max-adult-capacity') : self.maxSleepingCapacity\r\n\r\n self.maxKidCapacity = self.el.attr('data-max-kid-capacity') ? parseInt(self.el.attr('data-max-kid-capacity')) : 10\r\n\r\n self.maxInfantCapacity = self.el.attr('data-max-infant-capacity')\r\n ? parseInt(self.el.attr('data-max-infant-capacity'))\r\n : 10\r\n\r\n self.adults = {\r\n min: 1,\r\n max: self.maxAdultCapacity,\r\n value: self.qs.getParameter('adults') ? parseInt(self.qs.getParameter('adults')) : parseInt(adultsInput.val()),\r\n }\r\n\r\n self.kids = {\r\n min: 0,\r\n max: self.maxKidCapacity,\r\n value: self.qs.getParameter('kids') ? parseInt(self.qs.getParameter('kids')) : parseInt(kidsInput.val()),\r\n }\r\n\r\n self.infants = {\r\n min: 0,\r\n max: self.maxInfantCapacity,\r\n value: self.qs.getParameter('infants') ? parseInt(self.qs.getParameter('infants')) : parseInt(infantsInput.val()),\r\n }\r\n\r\n self.updateCapacities = function () {\r\n const remainingAdultCapacity = self.maxAdultCapacity > 0 ? (self.maxAdultCapacity - self.adults.value) : self.maxSleepingCapacity - (self.kids.value + self.infants.value)\r\n if (self.maxAdultCapacity > remainingAdultCapacity) {\r\n //self.adults.max = remainingAdultCapacity < 0 ? 0 : remainingAdultCapacity\r\n //} else {\r\n self.adults.max = self.maxAdultCapacity\r\n }\r\n\r\n const remainingKidCapacity = self.maxKidCapacity > 0 ? (self.maxKidCapacity - self.kids.value) : self.maxSleepingCapacity - (self.adults.value + self.infants.value)\r\n if (self.maxKidCapacity > remainingKidCapacity) {\r\n // self.kids.max = remainingKidCapacity < 0 ? 0 : remainingKidCapacity\r\n //} else {\r\n self.kids.max = self.maxKidCapacity\r\n }\r\n\r\n const remainingInfantCapacity = self.maxInfantCapacity > 0 ? (self.maxInfantCapacity - self.infants.value) : self.maxSleepingCapacity - (self.adults.value + self.kids.value)\r\n if (self.maxInfantCapacity > remainingInfantCapacity) {\r\n // self.infants.max = remainingInfantCapacity < 0 ? 0 : remainingInfantCapacity\r\n //} else {\r\n self.infants.max = self.maxInfantCapacity\r\n }\r\n }\r\n\r\n self.updateUI = function () {\r\n self.updateCapacities()\r\n\r\n let totalGuests = self.adults.value + self.kids.value + self.infants.value\r\n let totalGuestsText = totalGuests > 1 ? `${totalGuests} Guests` : `${totalGuests} Guest`\r\n totalGuestsInput.val(totalGuests)\r\n guestsDisplayInput.val(totalGuestsText)\r\n\r\n if (guestsDisplayEl.length) {\r\n guestsDisplayEl[0].innerHTML =\r\n totalGuests > 1 ? `${totalGuests} <span>Guests</span>` : `${totalGuests} <span>Guest</span>`\r\n }\r\n\r\n adultsValue.text(self.adults.value)\r\n kidsValue.text(self.kids.value)\r\n infantsValue.text(self.infants.value)\r\n\r\n adultsInput.val(self.adults.value)\r\n kidsInput.val(self.kids.value)\r\n infantsInput.val(self.infants.value)\r\n\r\n if (self.adults.value >= self.adults.max || totalGuests >= self.maxSleepingCapacity) {\r\n adultsPlusButton.addClass('disabled')\r\n } else {\r\n adultsPlusButton.removeClass('disabled')\r\n }\r\n\r\n if (self.adults.value <= self.adults.min) {\r\n adultsMinusButton.addClass('disabled')\r\n } else {\r\n adultsMinusButton.removeClass('disabled')\r\n }\r\n\r\n if (self.kids.value >= self.kids.max || totalGuests >= self.maxSleepingCapacity) {\r\n kidsPlusButton.addClass('disabled')\r\n } else {\r\n kidsPlusButton.removeClass('disabled')\r\n }\r\n\r\n if (self.kids.value <= self.kids.min) {\r\n kidsMinusButton.addClass('disabled')\r\n } else {\r\n kidsMinusButton.removeClass('disabled')\r\n }\r\n\r\n if (self.infants.value >= self.infants.max || totalGuests >= self.maxSleepingCapacity) {\r\n infantsPlusButton.addClass('disabled')\r\n } else {\r\n infantsPlusButton.removeClass('disabled')\r\n }\r\n\r\n if (self.infants.value <= self.infants.min) {\r\n infantsMinusButton.addClass('disabled')\r\n } else {\r\n infantsMinusButton.removeClass('disabled')\r\n }\r\n\r\n //if (self.el.find('.plus-button').hasClass('disabled')) {\r\n if (totalGuests >= self.maxSleepingCapacity) {\r\n self.el.addClass('fullcapacity')\r\n } else {\r\n self.el.removeClass('fullcapacity')\r\n }\r\n }\r\n\r\n self.init = function () {\r\n if (process.env.NODE_ENV === 'development') {\r\n console.log('GuestSelector init', self)\r\n }\r\n self.el.css('opacity', 1)\r\n\r\n const popupConfig = {\r\n popup: self.el.find('.selector-popup'),\r\n on: 'click',\r\n position: 'bottom center',\r\n prefer: 'adjacent',\r\n lastResort: 'bottom right',\r\n }\r\n\r\n guestsDisplayInput?.popup(popupConfig)\r\n guestsDisplayEl?.popup(popupConfig)\r\n\r\n self.updateUI()\r\n\r\n window.dbs.globalEvents.subscribe('disableControls', function () {\r\n self.el.find('button').addClass('loading')\r\n })\r\n\r\n window.dbs.globalEvents.subscribe('enableControls', function () {\r\n self.el.find('button').removeClass('loading')\r\n })\r\n\r\n window.dbs.globalEvents.subscribe('search_popstate', function (state) {\r\n if (state) {\r\n self.adults.value = state.filters.adults\r\n self.kids.value = state.filters.kids\r\n self.infants.value = state.filters.infants\r\n } else {\r\n self.adults.value = ADULTS_DEFAULT_VALUE\r\n self.kids.value = KIDS_DEFAULT_VALUE\r\n self.infants.value = INFANTS_DEFAULT_VALUE\r\n }\r\n\r\n // TODO fix errors when no state passed into function\r\n let stateFilters = Object.fromEntries(Object.entries(state.filters).filter(([, value]) => value === 0 || !!value))\r\n // Update URL params with new filter values, but do not reload the page.\r\n history.replaceState({ filters: stateFilters }, '', window.location.pathname + '?' + $.param(stateFilters))\r\n\r\n self.updateUI()\r\n })\r\n\r\n $('.clear-filters-button').click(function (event) {\r\n event.preventDefault()\r\n\r\n self.adults.value = ADULTS_DEFAULT_VALUE\r\n self.kids.value = KIDS_DEFAULT_VALUE\r\n self.infants.value = INFANTS_DEFAULT_VALUE\r\n\r\n self.updateUI()\r\n })\r\n\r\n self.el.find('.plus-button').click(function (e) {\r\n e.preventDefault()\r\n\r\n if ($(this).hasClass('loading')) return\r\n\r\n let guestType = self[this.getAttribute('data-type')]\r\n if (guestType.value < guestType.max) {\r\n guestType.value++\r\n }\r\n\r\n\r\n self.updateUI()\r\n\r\n if ($('.widget.park-map-v2').length !== 0) {\r\n console.log('Park search page, emitting different event');\r\n window.dbs.globalEvents.emit('guestselector:updated_parkmap', null, true)\r\n } else {\r\n let filters = self.getUpdatedFilters()\r\n self.pushState(filters)\r\n window.dbs.globalEvents.emit('guestselector:updated', null, true)\r\n }\r\n })\r\n\r\n self.el.find('.minus-button').click(function (e) {\r\n e.preventDefault()\r\n\r\n if ($(this).hasClass('loading')) return\r\n\r\n let guestType = self[this.getAttribute('data-type')]\r\n if (guestType.value > guestType.min) {\r\n guestType.value--\r\n }\r\n\r\n self.updateUI()\r\n // Want to only update the adult/children/infant values in the URL\r\n // Becuase we're refactoring the park search page, don't fire it on that page, it'll be handled there\r\n if ($('.widget.park-map-v2').length !== 0) {\r\n console.log('Park search page, emitting different event');\r\n window.dbs.globalEvents.emit('guestselector:updated_parkmap', null, true)\r\n } else {\r\n let filters = self.getUpdatedFilters()\r\n self.pushState(filters)\r\n window.dbs.globalEvents.emit('guestselector:updated', null, true)\r\n\r\n }\r\n\r\n })\r\n }\r\n\r\n self.pushState = function (filters) {\r\n // Filter out empty values, considering falsely values\r\n let stateFilters = Object.fromEntries(Object.entries(filters).filter(([, value]) => value === 0 || !!value))\r\n // Update URL params with new filter values, but do not reload the page.\r\n history.replaceState({ filters: stateFilters }, '', window.location.pathname + '?' + $.param(stateFilters))\r\n }\r\n\r\n self.getUpdatedFilters = function () {\r\n let filters = {\r\n propertyCode: self.qs.getParameter('propertyCode'),\r\n arrive: self.qs.getParameter('arrive'),\r\n depart: self.qs.getParameter('depart'),\r\n adults: self.adults.value,\r\n kids: self.kids.value,\r\n infants: self.infants.value,\r\n accommodationType: self.qs.getParameter('accommodationType'),\r\n sort: self.qs.getParameter('sort'),\r\n maxSearchResults: self.qs.getParameter('maxSearchResults'),\r\n }\r\n\r\n // NOTE Only add `dealCode` property if we have a value.\r\n const dealCode = self.qs.getParameter('dealCode')\r\n if (dealCode) {\r\n filters.dealCode = dealCode\r\n }\r\n\r\n return filters\r\n }\r\n}\r\n"],"names":["GuestSelector","el","self","this","$","qs","dbs","utilities","querystring","guestsDisplayInput","find","guestsDisplayEl","totalGuestsInput","adultsValue","adultsInput","adultsPlusButton","adultsMinusButton","kidsValue","kidsInput","kidsPlusButton","kidsMinusButton","infantsValue","infantsInput","infantsPlusButton","infantsMinusButton","maxSleepingCapacity","attr","parseInt","maxAdultCapacity","maxKidCapacity","maxInfantCapacity","adults","min","max","value","getParameter","val","kids","infants","updateCapacities","remainingAdultCapacity","remainingKidCapacity","remainingInfantCapacity","updateUI","totalGuests","totalGuestsText","length","innerHTML","text","addClass","removeClass","init","css","popupConfig","popup","on","position","prefer","lastResort","window","globalEvents","subscribe","state","filters","stateFilters","Object","fromEntries","entries","filter","_ref","history","replaceState","location","pathname","param","click","event","preventDefault","e","hasClass","guestType","getAttribute","console","log","emit","getUpdatedFilters","pushState","_ref2","propertyCode","arrive","depart","accommodationType","sort","maxSearchResults","dealCode","Promise","all","then","each","i","data"],"sourceRoot":""}