PageSourceSearch

https://www.beijing-hotels-china.com/site/files/default/build/2208.e17ab96fd74ab53e761d.js

js beijing-hotels-china.com collected 2026-10-10 00:35:17 UTC 19,590 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunklib=self.webpackChunklib||[]).push([[2208,7742],{94922:(t,e,r)=>{r.d(e,{Z:()=>o});var i=r(75644);class s extends i.Z{constructor(t){var{activeClass:e="is-active"}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};super(),this._options={activeClass:e},this.buttons="string"==typeof t?[...document.querySelectorAll(t)]:t,this.addChangeListeners()}addChangeListeners(){this._changeListener=this.changeListener.bind(this),this.buttons.forEach((t=>t.addEventListener("click",this._changeListener)))}removeChangeChangeListeners(){this.buttons.forEach((t=>t.removeEventListener("click",this._changeListener)))}changeListener(t){this.emit("change",{sort:t.currentTarget.dataset.sort,order:t.currentTarget.dataset.order}),this.updateActive(t.currentTarget)}updateActive(t){this.buttons.forEach((t=>t.classList.remove(this._options.activeClass))),t.classList.add(this._options.activeClass),this.emit("update-active",t)}destroy(){this.removeChangeChangeListeners(),this.emiter.all.clear()}}const o=s},24754:(t,e,r)=>{r.d(e,{Z:()=>o});var i=r(96926);class s{constructor(t){this.container=t,this.progress=this.container.children[0]}update(t){var{value:e}=t;this.progress.style.transform="translateX(-".concat(100-e,"%)")}}const o=class{constructor(t){this._element=document.querySelector(t),this.modal=new i.default(this._element,{hideOnBackdrop:!1});var e=this._element.querySelector("#progress");this.progressbar=new s(e),this.countContiner=this._element.querySelector(".count"),this.countText=this._element.querySelector(".result")}get element(){return this._element}show(){this.modal.show()}hide(){this.modal.hide(),document.body.style.overflow="auto",this.progressbar.update({value:0})}updateProgress(t){var{progress:e,count:r}=t;this.updateCount(r),this.progressbar.update({value:e})}updateCount(t){t&&parseInt(this.countContiner.innerHTML)!==t&&(this.countContiner.classList.add("animate"),this.countContiner.addEventListener("animationend",(t=>t.target.classList.remove("animate")),{once:!0}))}}},1103:(t,e,r)=>{r.d(e,{Z:()=>p});var i=r(75644),s=r(21092),o=r(26314),a=r(79364),n=["updateProgressCb"];function l(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,i)}return r}function c(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function h(t,e){if(null==t)return{};var r,i,s=function(t,e){if(null==t)return{};var r,i,s={},o=Object.keys(t);for(i=0;i<o.length;i++)r=o[i],e.indexOf(r)>=0||(s[r]=t[r]);return s}(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(i=0;i<o.length;i++)r=o[i],e.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(s[r]=t[r])}return s}function u(t,e,r,i,s,o,a){try{var n=t[o](a),l=n.value}catch(t){return void r(t)}n.done?e(l):Promise.resolve(l).then(i,s)}function d(t){return function(){var e=this,r=arguments;return new Promise((function(i,s){var o=t.apply(e,r);function a(t){u(o,i,s,a,n,"next",t)}function n(t){u(o,i,s,a,n,"throw",t)}a(void 0)}))}}class v extends i.Z{constructor(t){if(super(),v._instance)return v._instance;v._instance=this,this._instance=this,this._filtersForm=t,this.checkAvailId}fetchHotelList(t){var e=this;return d((function*(){var r,{updateProgressCb:i}=t,o=h(t,n);null===(r=e.abortController)||void 0===r||r.abort(),e.abortController=new AbortController;try{if(e.checkAvailId=yield(0,s.vm)({signal:e.abortController.signal}),!e.checkAvailId)return;var{count:u,finished:d}=yield(0,s.kI)({checkAvailId:e.checkAvailId,progressCallback:i,signal:e.abortController.signal});return null==u?{}:("yes"===d&&(0,a.Z)(u),yield e._fetchHotels(function(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?l(Object(r),!0).forEach((function(e){c(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):l(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}({},o)))}catch(t){console.group("FetchHotelList error"),console.error(t),console.groupEnd()}}))()}checkAvailOfHotels(t,e){var r=this;return d((function*(){var i;if(t.length){null===(i=r.abortController)||void 0===i||i.abort(),r.abortController=new AbortController;try{var o=yield(0,s.Cq)({hotelIds:t,parentJID:r.checkAvailId,signal:r.abortController.signal});yield(0,s.Ic)({hotelAvailIds:o,parentJID:r.checkAvailId,updateCallback:e,signal:r.abortController.signal})}catch(t){console.error("checkAvailByHotels: ".concat(t))}}else console.warn("checkAvailOfHotels: Param hotelIds is empty")}))()}_fetchHotels(){var t=this;return d((function*(){var e=t._filtersForm.view.getFormAction(),r=t._filtersForm.view.getFormData(),i=new URLSearchParams,a=new URL(window.location.origin+e);for(var[n,l]of r.entries())i.append(n,l);a.search=i.toString();var c=a+(0,o.X)(),h=yield(0,s.RC)({url:e,formData:r});return window.history.replaceState({},"",c),document.title=h.h1Html,t.emit("fetchHotelsDone",e),h}))()}}const p=v},79364:(t,e,r)=>{r.d(e,{Z:()=>o});var i=travel.options.availableParams.use===String(1),s={wasSent:!1};const o=t=>{var e,r,o,a,n,l,c;null!==(e=travel.events)&&void 0!==e&&e.kpi||console.error("Failed to send event: [check-avail|avail|not-avail]"),i&&!s.wasSent&&(null===(r=travel.events)||void 0===r||null===(o=r.kpi)||void 0===o||o.send("check-avail"),null!=t&&(t>0&&(null===(a=travel.events)||void 0===a||null===(n=a.kpi)||void 0===n||n.send("avail")),0===t&&(null===(l=travel.events)||void 0===l||null===(c=l.kpi)||void 0===c||c.send("not-avail")),s.wasSent=!0))}},50650:(t,e,r)=>{r.d(e,{Z:()=>u});var i=r(75644),s=r(26314);class o extends i.Z{constructor(){super(),this.filters=[],this._getFiltersFromUrl()}_getFiltersFromUrl(){var t=new URLSearchParams(window.location.search);for(var[e,r]of t.entries())this.filters.push({type:e,value:r})}_findFilterIndex(t,e){var r=t.includes("[]");return this.filters.findIndex((i=>r?i.type===t&&i.value===e:i.type===t))}_findFilter(t,e){var r=this._findFilterIndex(t,e);return r>-1?this.filters[r]:void 0}setFilter(t,e){var r=this._findFilter(t,e);r?(r.type=t,r.value=e):this.filters.push({type:t,value:e})}removeFilter(t,e){var r=this._findFilterIndex(t,e);r>-1&&this.filters.splice(r,1),this.updateUrl()}resetFilters(){this.filters=[]}setFilters(t){this.resetFilters(),t.forEach((t=>{var{type:e,value:r}=t;return this.setFilter(e,r)})),this.updateUrl()}updateUrl(){var t=new URLSearchParams,e=(0,s.X)();
1this.filters.forEach((e=>t.append(e.type,e.value))),window.history.replaceState("","","?".concat(t.toString()).concat(e)),this.emit("url-updated")}}const a=new o;class n extends i.Z{constructor(){super(),this.store=a}removeFilterIfEmptyValue(t){var{type:e,value:r,checked:i}=t,s=e.includes("[]");s&&i||!s&&r||this.store.removeFilter(e,r)}removeAll(){var t=["sort","order","part"];this.store.filters=this.store.filters.filter((e=>{var{type:r}=e;return t.includes(r)})),this.store.updateUrl(),this.emit("update",a)}update(t){var e=[];for(var[r,i]of t.entries())e.push({type:r,value:i});this.store.setFilters(e),this.emit("update",a)}}const l=n;const c=class{constructor(t,e){this.model=e,this.view=t,this.view.on("submit",(t=>this.model.update(t))),this.view.on("reset",(()=>this.model.removeAll())),this.view.on("change",(t=>this.model.removeFilterIfEmptyValue(t)))}setFields(t){Object.keys(t).forEach((e=>{var r=this.view.form[e];if(r instanceof RadioNodeList){var i=[...r].find((r=>r.value===t[e]));i.checked=!i.checked,this.model.removeFilterIfEmptyValue({type:e,value:i.value,checked:i.checked})}else r.value=t[e]})),this.model.update(this.view.getFormData())}getFilters(){return this.model.store.filters}getSelectedFilters(){var t,e=this.getFilters(),r=["Stars[]","Rating[]","LandmarkID[]","RAmenityID[]","AmenityID[]","TypeID[]","ThemeID[]","DistrictID[]"];return null!==(t=this.view.selectPrice)&&void 0!==t&&t.checkHaveDefaultValues()||r.push("PriceRangeTo"),e.filter((t=>{var{value:e,type:i}=t,s="Name"===i&&""!==e.trim(),o=r.includes(i);return s||o}))}destroy(){this.view.destroy()}};var h=new l;class u extends c{constructor(t){super(t,h)}}},21092:(t,e,r)=>{r.d(e,{kI:()=>j,vm:()=>P,RC:()=>C,SN:()=>L,_2:()=>O,Cq:()=>E,Ic:()=>S});var i=r(69024),s=r(58117);class o extends Error{constructor(t){super(t),this.name="ValidationError"}}function a(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,i)}return r}function n(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?a(Object(r),!0).forEach((function(e){l(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):a(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}function l(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function c(t,e,r,i,s,o,a){try{var n=t[o](a),l=n.value}catch(t){return void r(t)}n.done?e(l):Promise.resolve(l).then(i,s)}function h(t){return function(){var e=this,r=arguments;return new Promise((function(i,s){var o=t.apply(e,r);function a(t){c(o,i,s,a,n,"next",t)}function n(t){c(o,i,s,a,n,"throw",t)}a(void 0)}))}}var u="/check/",d="/map.php",v=t=>{if(!(t instanceof ReferenceError))throw t;console.log(t)},p=()=>travel.options?{use:travel.options.availableParams.use,from:travel.options.availableParams.dataFrom,to:travel.options.availableParams.dataTo,adults:travel.options.availableParams.guestsAdults,children:travel.options.availableParams.guestsChildren,dest_id:travel.options.cityID,lang:travel.options.language}:{use:travel.opts.av_params.use,from:travel.opts.av_params.from,to:travel.opts.av_params.to,adults:travel.opts.av_params.adults,children:travel.opts.av_params.children,dest_id:travel.opts.c_id,lang:travel.opts.lang};function f(){return(f=h((function*(t){var{signal:e}=t,r=new URL(window.location.href).searchParams.get("pjid"),s=p();if(!e.aborted){if(r)return r;var o=n(n({page:"search"},s),{},{t:1,r:Math.random()}),a=(0,i.Z)(o),l=yield fetch("".concat(u,"?").concat(a));if(!l.ok)throw console.warn("Network error: ".concat(l.status," - ").concat(l.statusText)),new Error("Response ".concat(l.status," - ").concat(l.statusText));var c=yield l.json();if(c.jid)return c.jid;if(c.error||c.bad_id)throw new Error(c.error);if(!c.bot)throw new Error("CheckAvail: ".concat(l.status," - ").concat(JSON.stringify(c)))}}))).apply(this,arguments)}function g(){return(g=h((function*(t){var{checkAvailId:e,progressCallback:r,signal:s}=t,o={page:"search",jid:e,t:1,r:Math.random()};if(s.aborted)return{};var a=(0,i.Z)(o),n=yield fetch("".concat(u,"?").concat(a));if(!n.ok)throw console.warn("Network error: ".concat(n.status," - ").concat(n.statusText)),new Error("Response ".concat(n.status," - ").concat(n.statusText));var l=yield n.json();if(l.progress&&r&&r({count:null==l?void 0:l.count,progress:null==l?void 0:l.progress}),l.done)return l;throw new Error("CheckAvail: ".concat(n.status," - ").concat(JSON.stringify(l)))}))).apply(this,arguments)}function m(){return(m=h((function*(t){var{url:e,formData:r}=t,i=new URLSearchParams(r);i.append("use_avail",travel.options.availableParams.use),i.append("r",Math.random());try{var s,a,n,l,c=yield fetch("".concat(e,"?").concat(i));if(!c.ok)throw new Error("Response ".concat(c.status," - ").concat(c.statusText));var h=yield c.text(),u=document.createElement("div");
1if(u.innerHTML=h,!{valid:!u.querySelector(".js-hotellist-not-valid")}.valid)throw new o("Failed to fetch hotels");return{success:!0,hotelsHtml:null===(s=u.querySelector(".js-hotellist-hotels"))||void 0===s?void 0:s.innerHTML,mapHotelsHtml:null===(a=u.querySelector(".js-map-hotellist-hotels"))||void 0===a?void 0:a.innerHTML,filtersHtml:null===(n=u.querySelector(".js-hotellist-filters"))||void 0===n?void 0:n.innerHTML,h1Html:null===(l=u.querySelector(".page-title"))||void 0===l?void 0:l.innerHTML}}catch(t){if(t instanceof o)return console.error(t),{success:!1,hotelsHtml:null,mapHotelsHtml:null,filtersHtml:null,h1Html:document.title};throw t}}))).apply(this,arguments)}function y(){return(y=h((function*(t){var{hotelIds:e=[],parentJID:r,signal:s}=t;if(console.assert(e.length,"hotelIds array is empty"),e.length&&!s.aborted)try{var o={page:"search",use:1,from:travel.options.availableParams.dataFrom,to:travel.options.availableParams.dataTo,adults:travel.options.availableParams.guestsAdults,children:travel.options.availableParams.guestsChildren,hotel_ids:e.join(","),lang:travel.options.language,t:2,cnt:0,multihotelavail:1,parent_jid:r,r:Math.random()},a=(0,i.Z)(o),n=yield fetch("".concat(u,"?").concat(a));if(!n.ok)throw new Error("Response ".concat(n.status," - ").concat(n.statusText));return(yield n.json()).items.map((t=>{var{jid:e}=t;return e}))}catch(t){v(t)}}))).apply(this,arguments)}function b(t){return w.apply(this,arguments)}function w(){return(w=h((function*(t){var{hotelAvailIds:e,parentJID:r,signal:s}=t;if(s.aborted)return[];var o={page:"search",jid:e.join(","),t:2,multihotelavail:1,multihotelavailwithresult:1,parent_jid:r,r:Math.random()},a=(0,i.Z)(o);try{var n=yield fetch("".concat(u,"?").concat(a));if(!n.ok)throw new Error("Response ".concat(n.status," - ").concat(n.statusText));return(yield n.json()).items}catch(t){v(t)}}))).apply(this,arguments)}function k(){return(k=h((function*(t){var{hotelAvailIds:e,parentJID:r,updateCallback:i,signal:s}=t;try{if(s.aborted)return[];var o=yield b({hotelAvailIds:e,parentJID:r,signal:s});if(i(o),o.reduce(((t,e)=>(e.done||t.push(e.jid),t)),[]).length)throw new Error("multiHotelsCheckAvailRequest: Not finished");return o.filter((t=>t.done))}catch(t){v(t)}}))).apply(this,arguments)}function _(){return(_=h((function*(t){var{part:e,mapBounds:r,limit:i=30,filters:s,cityID:o,signal:a}=t;if(!a.aborted){var l=n(n({page:"hotel_filter",part:e,use_avail:travel.options.availableParams.use},r),{},{limit:i,cityID:o||travel.options.cityID||""}),c=new URLSearchParams;Object.keys(l).forEach((t=>c.append(t,l[t]))),s.forEach((t=>{var{type:e,value:r}=t;return c.append(e,r)}));var h=yield fetch("".concat(d,"?").concat(c.toString())),u=yield h.json();if("0"!==travel.options.availableParams.use&&!u.done)throw new Error("Hotels by map request not finished");return u}}))).apply(this,arguments)}var O=()=>{var t=document.querySelector("#js-not-avail-hotel");if(t)return JSON.parse(t.innerHTML)},j=(0,s.Z)((function(t){return g.apply(this,arguments)})),P=(0,s.Z)((function(t){return f.apply(this,arguments)})),C=(0,s.Z)((function(t){return m.apply(this,arguments)})),E=(0,s.Z)((function(t){return y.apply(this,arguments)})),S=(0,s.Z)((function(t){return k.apply(this,arguments)})),L=(0,s.Z)((function(t){return _.apply(this,arguments)}))},7742:(t,e,r)=>{r.r(e),r.d(e,{default:()=>i});class i{constructor(t){var{multiple:e=!1,behavior:r="auto"}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!t)throw new Error("Selector or Dom elements is required");this._triggers="string"==typeof t?[...document.querySelectorAll(t)]:t,this._options={multiple:e,behavior:r},this._listeners={click:this._clickHandler.bind(this)},this._triggers.forEach((t=>t.addEventListener("click",this._listeners.click))),"smooth"===this._options.behavior&&this._triggers.forEach((t=>{var e=this._getTarget(t);e.style.height=e.scrollHeight+"px",e.style.overflow="hidden",e.style.transition="all 0.5s"})),this._options.multiple||this._hideOther(null)}_toggleItem(t){var e=this._getTarget(t);t.classList.toggle("active"),e.classList.toggle("active"),"smooth"===this._options.behavior&&(e.style.height=e.classList.contains("active")?e.scrollHeight+"px":0)}_getTarget(t){var e=t.dataset.target||t.nextElementSibling;if(!e)throw new Error("Cannot find accordion target: "+t);return e}_clickHandler(t){var e=t.currentTarget;this._options.multiple||this._hideOther(e),this._toggleItem(e)}
1_hideOther(t){this._triggers.forEach((e=>{if(t!==e){var r=this._getTarget(e);e.classList.remove("active"),r.classList.remove("active"),"smooth"===this._options.behavior&&(r.style.height=0)}}))}_validateIndex(t,e){if("number"!=typeof t)throw new Error("Fail to open accordion target. ".concat(t," is not a number"));if(t>=e.length||t<0)throw new Error("Fail to open accordion target. Cannot find element with index ".concat(t))}closeAll(){this._hideOther(null)}open(t){this._validateIndex(t,this._triggers);var e=this._triggers[t];e.classList.contains("active")||(this._options.multiple||this._hideOther(null),this._toggleItem(e))}destroy(){this._triggers.forEach((t=>t.removeEventListener("click",this._listeners.click)))}}},7618:(t,e,r)=>{r.d(e,{Z:()=>s});var i=r(29915);const s=class{constructor(t){this._outSideClickListener=this.outSideClick.bind(this),document.body.addEventListener("click",this._outSideClickListener);for(var e=arguments.length,r=new Array(e>1?e-1:0),s=1;s<e;s++)r[s-1]=arguments[s];this._toggle=new i.ZP(t,...r)}outSideClick(t){var e=this._toggle.trigger,r=this._toggle.target;e&&(e===t.target||e.contains(t.target))||r&&(r===t.target||r.contains(t.target))||this._toggle.hide()}show(){this._toggle.show()}hide(){this._toggle.hide()}destroy(){document.body.removeEventListener("click",this._outSideClickListener),this._toggle.destroy()}}},96926:(t,e,r)=>{r.r(e),r.d(e,{default:()=>a});var i=r(29915);function s(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,i)}return r}function o(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}class a extends i.ZP{constructor(t){var{trigger:e="",toggleClass:r,selectors:i,hideOnBackdrop:a=!0,lockScroll:n=!0}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};super(e,{target:t,toggleClass:r}),this.selectors=function(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?s(Object(r),!0).forEach((function(e){o(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):s(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}({close:".js-popup-close",content:".js-popup-content"},i),this.callbacks={show:()=>this.show(),hide:()=>this.hide(),clickBackdropHandler:t=>this._clickBackdropHandler(t)},this.lockScroll=n,this.initCloseBtn(),a&&this.initHideOnClickOutSide()}initCloseBtn(){this._closeTriggers=[...this.target.querySelectorAll(this.selectors.close)],this._closeTriggers.forEach((t=>t.addEventListener("click",this.callbacks.hide)))}initHideOnClickOutSide(){this.target.addEventListener("click",this.callbacks.clickBackdropHandler)}_clickBackdropHandler(t){t.target.matches(this.selectors.content)||t.target.closest(this.selectors.content)||this.hide()}show(){this.lockScroll&&(document.body.style.overflow="hidden"),super.show()}hide(){this.lockScroll&&(document.body.style.overflow="auto"),super.hide()}destroy(){super.destroy(),this._closeTriggers.forEach((t=>t.removeEventListener("click",this.callbacks.hide))),this.target.removeEventListener("click",this.callbacks.clickBackdropHandler)}}},69024:(t,e,r)=>{r.d(e,{Z:()=>i});const i=t=>{var e=new URLSearchParams;return Object.keys(t).forEach((r=>e.append(r,t[r]))),e.toString()}},26314:(t,e,r)=>{r.d(e,{X:()=>i});var i=()=>window.location.hash}}]);

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.