1(window.webpackJsonp=window.webpackJsonp||[]).push([[18,19,20],{1146:function(e,t,n){},1147:function(e,t,n){},1177:function(e,t,n){"use strict";n.d(t,"a",(function(){return a}));var r=n(9),a=function useBrandInventoryCalendar(){var e=Object(r.getCurrentInstance)().proxy.$i18n,t=new Set(["ja","ko"]);return{inventoryDescriptionIcon:Object(r.computed)((function(){return{available:t.has(e.locale)?"icon-circle":"icon-check",unavailable:"icon-delete",uncertain:"icon-triangle"}}))}}},1262:function(e,t,n){"use strict";n(1146)},1263:function(e,t,n){"use strict";n(1147)},1264:function(e,t,n){},1383:function(e,t,n){"use strict";n(1264)},870:function(e,t,n){"use strict";n.r(t);var r=n(9),a=n(38),o=n.n(a),i=n(336),c=n(331),l=n(50),u=Object(r.defineComponent)({name:"InventoryCalendarWeekSelector",components:{ArrowLeft:i.a,ArrowRight:c.a},props:{checkin:{type:String,default:""}},setup:function setup(e,t){var n=t.emit,a=Object(r.getCurrentInstance)().proxy.$i18n,i=Object(r.computed)({get:function get(){return e.checkin||o()().format("YYYY/MM/DD")},set:function set(e){n("update:checkin",e)}}),c=Object(r.computed)((function(){for(var e=[],t=0;t<7;t++){var n=o()(i.value).add(t,"day");e.push({date:n.format("M/D"),weekday:n.locale(l.r[a.locale]).format("ddd").toUpperCase()})}return e})),u=Object(r.computed)((function(){return o()(i.value).isToday()}));function updateStartDate(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=o()(i.value).add(e,"day"),n=t.isBefore(o()());i.value=(n?o()():t).format("YYYY/MM/DD")}return{$i18n:a,startDate:i,range:c,isPreviousBtnDisabled:u,toPreviousWeek:function toPreviousWeek(){return updateStartDate(-7)},toNextWeek:function toNextWeek(){return updateStartDate(7)},updateStartDate:updateStartDate}}}),s=(n(1262),n(33)),d=Object(s.a)(u,(function render(){var e=this,t=e._self._c;e._self._setupProxy;return t("div",{staticClass:"week-selector"},[t("div",{staticClass:"month-selector"}),e._v(" "),t("div",{staticClass:"week"},[t("button",{staticClass:"arrow-button",attrs:{"data-cy":"previous-week-btn",disabled:e.isPreviousBtnDisabled},on:{click:e.toPreviousWeek}},[t("arrow-left")],1),e._v(" "),e._l(e.range,(function(n){return t("div",{key:n.date,staticClass:"week-date"},[t("div",[e._v(e._s(n.date))]),e._v(" "),t("div",[e._v(e._s(n.weekday))])])})),e._v(" "),t("button",{staticClass:"arrow-button",attrs:{"data-cy":"next-week-btn"},on:{click:e.toNextWeek}},[t("arrow-right")],1)],2)])}),[],!1,null,"75f46f04",null);t.default=d.exports},871:function(e,t,n){"use strict";n.r(t);var r=n(9),a=n(38),o=n.n(a),i=n(1177),c=n(978);function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function _typeof(e){return typeof e}:function _typeof(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var l=Object(r.defineComponent)({props:{hotel:{type:Object,default:function _default(){return{}}},nights:{type:Number,default:0},checkin:{type:String,default:""},roomCount:{type:Number,default:1},useLowestRates:{type:Boolean,default:!1}},setup:function setup(e,t){var n=t.emit,a=Object(i.a)().inventoryDescriptionIcon;function getAvailabilityIcon(t){if(e.hotel.uncertain)return a.value.uncertain;var n,r;if(e.useLowestRates)return null!==(null!==(n=null===(r=e.hotel.lowestRates)||void 0===r?void 0:r[t])&&void 0!==n?n:null)?a.value.available:a.value.unavailable;for(var i=0;i<e.nights;i++){var c=o()(t).add(i,"day").format("YYYY/MM/DD");if(Number(e.hotel.inventory[c]||0)<e.roomCount)return a.value.unavailable}return a.value.available}return{dateRange:Object(r.computed)((function(){for(var t=[],n=0;n<7;n++){var r,a,i=o()(e.checkin).add(n,"day").format("YYYY/MM/DD"),c=getAvailabilityIcon(i),l=e.useLowestRates&&null!==(r=null===(a=e.hotel.lowestRates)||void 0===a?void 0:a[i])&&void 0!==r?r:null;t.push({date:i,availabilityIcon:c,price:l})}return t})),inventoryDescriptionIcon:a,handleSelectDate:function handleSelectDate(t){var r=t,a=o()(t).add(e.nights,"day").format("YYYY/MM/DD");n("selected",e.hotel.triplabot_url,e.hotel,r,a)},isIconDisabled:function isIconDisabled(e){return[a.value.unavailable].includes(e)},formatPrice:function formatPrice(e){return e&&"object"===_typeof(e)?Object(c.c)(e.cents,e.currency_iso):Object(c.a)(e)}}}}),u=(n(1263),n(33)),s=Object(u.a)(l,(function render(){var e,t=this,n=t._self._c;t._self._setupProxy;return n("div",{staticClass:"inventory-row"},[n("div",{staticClass:"hotel-info"},[(null===(e=t.hotel.area)||void 0===e?void 0:e.name)?n("span",{staticClass:"area"},[t._v("\n "+t._s(t.hotel.area.name)+"\n ")]):t._e(),t._v(" "),n("a",{attrs:{href:t.hotel.triplabot_url,target:"_blank","data-cy":"hotel-link"}},[n("div",{staticClass:"name"},[t._v("\n "+t._s(t.hotel.name)+"\n ")])])]),t._v(" "),n("div",{staticClass:"week"},t._l(t.dateRange,(function(e){return n("button",{key:e.date,staticClass:"week-date",attrs:{disabled:t.isIconDisabled(e.availabilityIcon),"data-cy":"".concat(t.hotel.name,"-").concat(e.date)},on:{click:function click(n){return t.handleSelectDate(e.date)}}},[n("i",{class:e.availabilityIcon}),t._v(" "),t.useLowestRates&&null!==e.price?n("span",{staticClass:"week-date-price",attrs:{"data-cy":"".concat(t.hotel.name,"-").concat(e.date,"-price")}},[t._v("\n "+t._s(t.formatPrice(e.price))+"\n ")]):t._e()])})),0)])}),[],!1,null,"eaac56f0",null);t.default=s.exports},877:function(e,t,n){"use strict";n.r(t);var r=n(9),a=n(38),o=n.n(a),i=n(864),c=n.n(i),l=(n(869),n(471)),u=n.n(l),s=n(870),d=n(871),v=n(207),f=n(8),p=n(1177);function _toConsumableArray(e){return function _arrayWithoutHoles(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t<e.length;t++)n[t]=e[t];return n}}(e)||function _iterableToArray(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}(e)||function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}function asyncGeneratorStep(e,t,n,r,a,o,i){try{var c=e[o](i),l=c.value}catch(u){return void n(u)}c.done?t(l):Promise.resolve(l).then(r,a)}function _asyncToGenerator(e){return function(){var t=this,n=arguments;return new Promise((function(r,a){var o=e.apply(t,n);function _next(e){asyncGeneratorStep(o,r,a,_next,_throw,"next",e)}function _throw(e){asyncGeneratorStep(o,r,a,_next,_throw,"throw",e)}_next(void 0)}))}}function ownKeys(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};
1t%2?ownKeys(n,!0).forEach((function(t){_defineProperty(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ownKeys(n).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function _defineProperty(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var y=Object(r.defineComponent)({components:{InventoryCalendarWeekSelector:s.default,InventoryCalendarRow:d.default},props:{numberOfNights:{type:Number,default:0},facilities:{type:Array,default:function _default(){return[]}}},setup:function setup(e){var t=Object(p.a)().inventoryDescriptionIcon,n=Object(r.ref)([]),a=Object(r.ref)(),i=Object(r.ref)(!1),l=Object(r.ref)(0),s=Object(r.computed)((function(){return f.a.getters["search/getSearchForm"]})),d=Object(r.computed)((function(){return f.a.getters["setting/getBrandID"]})),y=Object(r.computed)((function(){return"".split(",").includes(String(d.value))})),b=Object(r.computed)((function(){return f.a.getters["mcp/isMcpMode"]})),h=Object(r.computed)((function(){return f.a.getters["mcp/selectedCurrency"]})),m=Object(r.computed)((function(){return s.value.checkin})),_=Object(r.computed)((function(){return s.value.checkout})),g=Object(r.computed)((function(){var t,n,r,a,i=o()(m.value).add(7+e.numberOfNights,"day").format("YYYY/MM/DD");if(y.value){var l=s.value.rooms.length?(s.value.rooms||[]).map((function(e){return _objectSpread({},null!=e.adults&&{adults:e.adults},{},null!=e.children&&{children:e.children})})):[{adults:s.value.adults,children:c()(s.value.kidsTiers,"children")}];return _objectSpread({checkin_date:m.value,checkout_date:_.value,rooms:l},b.value&&{mcp_currency:h.value})}return{year_month:o()(m.value).format("YYYY/MM"),checkin_date:m.value,checkout_date:i,adults:(null===(t=s.value.rooms)||void 0===t||null===(n=t[0])||void 0===n?void 0:n.adults)||s.value.adults||0,children:c()(s.value.kidsTiers,"children")||(null===(r=s.value.rooms)||void 0===r||null===(a=r[0])||void 0===a?void 0:a.children)||s.value.children||0,nights:e.numberOfNights}})),w=u()((function(){return fillViewport()}),100);function fillViewport(){return _fillViewport.apply(this,arguments)}function _fillViewport(){return(_fillViewport=_asyncToGenerator(regeneratorRuntime.mark((function _callee2(){var t;return regeneratorRuntime.wrap((function _callee2$(o){for(;;)switch(o.prev=o.next){case 0:if(!(a.value&&!i.value&&n.value.length<e.facilities.length&&a.value.getBoundingClientRect().top<=window.innerHeight+200)){o.next=10;break}return t=n.value.length,o.next=4,loadInventoryItems();case 4:if(n.value.length!==t){o.next=6;break}return o.abrupt("break",10);case 6:return o.next=8,Object(r.nextTick)();case 8:o.next=0;break;case 10:case"end":return o.stop()}}),_callee2)})))).apply(this,arguments)}function loadInventoryItems(){return _loadInventoryItems.apply(this,arguments)}function _loadInventoryItems(){return(_loadInventoryItems=_asyncToGenerator(regeneratorRuntime.mark((function _callee4(){var t,r,a,o,c,u,s,f,p,b;return regeneratorRuntime.wrap((function _callee4$(h){for(;;)switch(h.prev=h.next){case 0:if(t=n.value.length,r=t+8,(a=e.facilities.slice(t,r)).length&&!i.value){h.next=5;break}return h.abrupt("return");case 5:if(i.value=!0,o=l.value,h.prev=7,!y.value){h.next=16;break}return c=new Array(a.length).fill(void 0),u=0,s=function revealReadyPrefix(){if(o===l.value){for(var e=[];u<c.length&&c[u];)e.push(c[u]),u++;e.length&&(n.value=[].concat(_toConsumableArray(n.value),e))}},h.next=14,Promise.all(a.map(function(){var e=_asyncToGenerator(regeneratorRuntime.mark((function _callee3(e,t){return regeneratorRuntime.wrap((function _callee3$(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,loadSingleHotelRates(e);case 2:c[t]=n.sent,s();case 4:case"end":return n.stop()}}),_callee3)})));return function(t,n){return e.apply(this,arguments)}}()));case 14:h.next=21;break;case 16:return f=a.map((function(e){return e.id})),h.next=19,v.a.getInventoryCalendar(d.value,_objectSpread({},g.value,{hotel_ids:f}));case 19:p=h.sent,o===l.value&&(b=formatHotelInventory(a,p),n.value=[].concat(_toConsumableArray(n.value),_toConsumableArray(b)));case 21:h.next=26;break;case 23:h.prev=23,h.t0=h.catch(7),console.error(h.t0);case 26:return h.prev=26,i.value=!1,h.finish(26);case 29:case"end":return h.stop()}}),_callee4,null,[[7,23,26,29]])}
1)))).apply(this,arguments)}function loadSingleHotelRates(e){return _loadSingleHotelRates.apply(this,arguments)}function _loadSingleHotelRates(){return(_loadSingleHotelRates=_asyncToGenerator(regeneratorRuntime.mark((function _callee5(e){var t;return regeneratorRuntime.wrap((function _callee5$(n){for(;;)switch(n.prev=n.next){case 0:return n.prev=0,n.next=3,v.a.getLowestRates(d.value,_objectSpread({},g.value,{hotel_ids:[e.id]}));case 3:return t=n.sent,n.abrupt("return",formatHotelInventory([e],t)[0]);case 7:return n.prev=7,n.t0=n.catch(0),console.error(n.t0),n.abrupt("return",formatHotelInventory([e],[])[0]);case 11:case"end":return n.stop()}}),_callee5,null,[[0,7]])})))).apply(this,arguments)}function formatHotelInventory(e,t){return e.forEach((function(e){var n=t.find((function(t){return t.id===e.id}));if(y.value){var r=b.value&&(null==n?void 0:n.mcp_lowest_rates)||(null==n?void 0:n.lowest_rates)||{};return e.lowestRates=r,void(e.inventory={})}n.hasOwnProperty("uncertain")&&(e.uncertain=null==n?void 0:n.uncertain),e.inventory=(null==n?void 0:n.inventory)||{}})),e}Object(r.watch)((function(){return e.facilities}),_asyncToGenerator(regeneratorRuntime.mark((function _callee(){return regeneratorRuntime.wrap((function _callee$(e){for(;;)switch(e.prev=e.next){case 0:return l.value++,n.value=[],e.next=4,loadInventoryItems();case 4:return e.next=6,fillViewport();case 6:case"end":return e.stop()}}),_callee)}))),{deep:!0,immediate:!0}),Object(r.onMounted)((function(){window.addEventListener("scroll",w,{passive:!0}),window.addEventListener("resize",w,{passive:!0}),fillViewport()})),Object(r.onBeforeUnmount)((function(){w.cancel(),window.removeEventListener("scroll",w),window.removeEventListener("resize",w)}));var k=Object(r.computed)((function(){return n.value.some((function(e){return e.uncertain}))}));return{inventoryDescriptionIcon:t,spinnerEl:a,checkin:m,hotelList:n,isFetchingInventory:i,searchForm:s,isUncertainExistInAnyInventory:k,isLowestRatesEnabled:y}}}),b=(n(1383),n(33)),h=Object(b.a)(y,(function render(){var e=this,t=e._self._c;e._self._setupProxy;return t("div",[t("div",{staticClass:"inventory-icon-description-wrapper"},[t("i18n",{staticClass:"inventory-icon-description",attrs:{tag:"div",path:"inventoryCalendar.availableIconDescription","data-cy":"available-icon-description"}},[t("i",{class:e.inventoryDescriptionIcon.available,attrs:{place:"icon"}})]),e._v(" "),e.isUncertainExistInAnyInventory?t("i18n",{staticClass:"inventory-icon-description",attrs:{tag:"div",path:"inventoryCalendar.uncertainIconDescription","data-cy":"uncertain-icon-description"}},[t("i",{class:e.inventoryDescriptionIcon.uncertain,attrs:{place:"icon"}})]):e._e(),e._v(" "),t("i18n",{staticClass:"inventory-icon-description",attrs:{tag:"div",path:"inventoryCalendar.unavailableIconDescription","data-cy":"unavailable-icon-description"}},[t("i",{class:e.inventoryDescriptionIcon.unavailable,attrs:{place:"icon"}})])],1),e._v(" "),t("inventory-calendar-week-selector",{staticClass:"mb-3",attrs:{checkin:e.checkin},on:{"update:checkin":function updateCheckin(t){return e.$emit("update:checkin",t)}}}),e._v(" "),t("div",{staticClass:"inventory-calendar-content"},e._l(e.hotelList,(function(n){return t("inventory-calendar-row",{key:n.id,attrs:{id:n.id,nights:e.numberOfNights,hotel:n,checkin:e.checkin,"room-count":e.searchForm.room_count,"use-lowest-rates":e.isLowestRatesEnabled,"data-cy":"inventory-calendar-row-".concat(n.id)},on:{selected:function selected(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return e.$emit.apply(e,["selected"].concat(n))}}})})),1),e._v(" "),t("div",{ref:"spinnerEl",staticClass:"d-flex mt-3 justify-content-center"},[e.isFetchingInventory?t("b-spinner",{staticClass:"spinner",attrs:{label:e.$t("base.loading")}}):e._e()],1)],1)}),[],!1,null,"23e6861a",null);t.default=h.exports},978:function(e,t,n){"use strict";n.d(t,"a",(function(){return priceWithPrefix})),n.d(t,"b",(function(){return priceWithComma})),n.d(t,"c",(function(){return i}));var r=n(8),a=n(83);function _slicedToArray(e,t){return function _arrayWithHoles(e){if(Array.isArray(e))return e}(e)||function _iterableToArrayLimit(e,t){var n=[],r=!0,a=!1,o=void 0;try{for(var i,c=e[Symbol.iterator]();!(r=(i=c.next()).done)&&(n.push(i.value),!t||n.length!==t);r=!0);}catch(l){a=!0,o=l}finally{try{r||null==c.return||c.return()}finally{if(a)throw o}}return n}(e,t)||function _nonIterableRest(){throw new TypeError("Invalid attempt to de
1structure non-iterable instance")}()}var o=function purePriceWithPrefix(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"Â¥";if(0!==e&&!Number(e))return e;var n=e<0?"-":"";return"".concat(n).concat(t).concat(Math.abs(e).toFixed(0).replace(/\d(?=(\d{3})+$)/g,"$&,"))};function priceWithPrefix(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:r.a.getters["setting/getCurrency"].symbol;return o(e,t)}function priceWithComma(e){if(0===e||Number(e))return Number(e).toFixed(0).replace(/\d(?=(\d{3})+$)/g,"$&,")}var i=function priceWithSymbol(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:r.a.getters["mcp/selectedCurrency"];if(!a.c[t])return String(e);var n=a.c[t],o=n.symbol,i=n.decimalDigits,c=e/Math.pow(10,i),l=String(c).split("."),u=_slicedToArray(l,2),s=u[0],d=u[1],v=void 0===d?"":d,f=Number(s).toLocaleString(),p=i?".".concat(v.padEnd(i,0)):"";return"".concat(o," ").concat(f).concat(p)}}}]); 2//# sourceMappingURL=page-Facilities-InventoryCalendar-vue.41179ef45aa339ef7e59.js.map
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.