PageSourceSearch

https://rutrip.ru/chunk-IEMKYBQO.js

js rutrip.ru collected 2026-10-07 23:05:18 UTC 11,474 bytes, 1 lines download raw bytes

1import{a as N}from"./chunk-IBDTAPEO.js";import{c as E}from"./chunk-Y2LSEYET.js";import{a as v}from"./chunk-IZ6KJTAM.js";import{d as j}from"./chunk-PQZWEQ7A.js";import{a as x}from"./chunk-HL5FFBAL.js";import{a as p,d as y}from"./chunk-PSRDDVLV.js";import{a as c,b as h}from"./chunk-OJ6OI3SZ.js";import{c as C}from"./chunk-MW336ASF.js";import{D as f,aa as g,fa as l,ka as a,kb as D,m as S,wa as L,xa as M}from"./chunk-6GM6NJU4.js";import{a as I,b}from"./chunk-IMPBB4AK.js";var T=(()=>{let i=class i{constructor(){this.authnew=a(N),this.platform=a(h)}handleAuthFromUrl(e){if(!(!this.platform.isBrowser()||!e))try{if(e.includes("wmauth")){let t=this.getLocalStorageItem("webmoney-auth");t&&this.authnew.outerWMAuth(t)}if(e.includes("vkauth")){let t=this.safeParse(this.getLocalStorageItem("providerLogin"));t?.code&&t?.codeVerifier&&this.authnew.outerVKAuth({code:t.code,codeVerifier:t.codeVerifier})}if(e.includes("okauth")){let t=this.safeParse(this.getLocalStorageItem("providerLogin"));t?.code&&this.authnew.outerOKAuth({code:t.code})}}catch{}}safeParse(e){if(!e)return null;try{return JSON.parse(e)}catch{return null}}getLocalStorageItem(e){return j(e)}};i.\u0275fac=function(t){return new(t||i)},i.\u0275prov=l({token:i,factory:i.\u0275fac,providedIn:"root"});let n=i;return n})();var J=(()=>{let i=class i{constructor(){this.router=a(y),this.metaService=a(v),this.externalAuth=a(T),this.destroyRef=a(M),this.listenToNavigation()}listenToNavigation(){this.router.events.pipe(f(e=>e instanceof p),x(this.destroyRef)).subscribe(()=>this.handleNavigation())}handleNavigation(){this.metaService.setCanonicalURL("https://rutrip.ru"+this.buildCanonicalPath(this.router.url)),this.externalAuth.handleAuthFromUrl(this.router.url)}buildCanonicalPath(e){let t=e.indexOf("?");if(t<0)return e;let r=e.slice(0,t),o=new URLSearchParams(e.slice(t+1)).get("page");return!o||!/^\d+$/.test(o)||Number(o)<=1?r:`${r}?page=${Number(o)}`}};i.\u0275fac=function(t){return new(t||i)},i.\u0275prov=l({token:i,factory:i.\u0275fac,providedIn:"root"});let n=i;return n})();var K=(()=>{let i=class i{constructor(){this.headerText="\u0420\u0430\u0441\u043F\u0438\u0441\u0430\u043D\u0438\u0435 \u0438 \u0431\u0440\u043E\u043D\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u0435 \u0436\u0434 \u0431\u0438\u043B\u0435\u0442\u043E\u0432",this.siteName=c.siteName,this.sitePhone=c.sitePhone,this.siteEmail=c.siteEmail}};i.\u0275fac=function(t){return new(t||i)},i.\u0275prov=l({token:i,factory:i.\u0275fac,providedIn:"root"});let n=i;return n})();var ne=(()=>{let i=class i extends E{constructor(){super(),this.metrikaDefaultDelayMs=3e3,this.metrikaRzdTitleDelayMs=5e3,this.illiciumDelayMs=5e3,this.idleTimeoutMs=1e4,this.illiciumScript=null,this.illiciumDiv=null,this.reviveScript=null,this.reviveIns=null,this.subscription=null,this.metrikaLoaded=!1,this.metrikaInitialized=!1,this.oldstylesInjected=!1,this.cancelMetrikaLoad=null,this.cancelIlliciumLoad=null,this.platformService=a(h),this.router=a(y),this.metaService=a(v),this.zone=a(D),this.doc=a(L),this.platformService.isBrowser()&&this.zone.runOutsideAngular(()=>{let e=!1,t=this.getDocument()?.location.href??"";this.subscription=this.router.events.pipe(f(r=>r instanceof p)).subscribe(r=>{if(c.siteName==="rutrip.ru"&&(this.scheduleMetrikaLoad(r.urlAfterRedirects||r.url),this.scheduleIlliciumLoad(r.urlAfterRedirects||r.url)),!this.oldstylesInjected&&r.url!=="/poezd"&&r.url!=="/test"){let s=this.doc?.head;if(s){let o=this.doc.createElement("link");o.rel="stylesheet",s.appendChild(o),this.oldstylesInjected=!0}}if(c.analyticsVariable&&e){let o=this.getDocument()?.location.href??"";this.hit(t,o,this.metaService.getTitle()),t=o}e=!0})})}hit(e,t,r){this.ensureMetrikaInitialized(),this.scheduleMetrikaLoad(this.router.url);let s=this.getYm();if(s){s(Number(c.analyticsVariable),"hit",t,{title:r,referer:e});return}}reachGoal(e,t=null){if(!this.platformService.isBrowser()||!c.analyticsVariable)return;this.ensureMetrikaInitialized(),this.scheduleMetrikaLoad(this.router.url);let r=this.getYm();r&&r(Number(c.analyticsVariable),"reachGoal",e,t)}reloadIllicium(){if(this.platformService.isBrowser())try{this.cancelScheduledIlliciumLoad(),this.illiciumScript?.parentNode&&(this.illiciumScript.parentNode.removeChild(this.illiciumScript),this.illiciumScript=null),this.ensureIlliciumMounted()}catch(e){console.warn("Failed to reload illicium",e)}
1}ngOnDestroy(){this.subscription?.unsubscribe(),this.subscription=null,this.cancelScheduledMetrikaLoad(),this.cancelScheduledIlliciumLoad()}getDocument(){return this.platformService.isBrowser()?this.doc:null}insertDiv(){let e=this.getDocument();if(!e)return;let t=e.createElement("div");t.id="place121",t.dataset.role="illicium",t.dataset.placeid="121",t.className="illiciumItem",t.style.display="none",t.style.visibility="hidden",this.illiciumDiv=e.body.appendChild(t)}insertScript(){let e=this.getDocument();if(!e||this.illiciumScript?.isConnected)return;let t=e.createElement("script");t.type="text/javascript",t.async=!0,t.src="https://illicium.web.money/scripts/public/illicium_loginless_0_3.js",this.illiciumScript=e.body.appendChild(t)}scheduleMetrikaLoad(e){this.metrikaLoaded||this.cancelMetrikaLoad||(this.ensureMetrikaInitialized(),this.cancelMetrikaLoad=this.scheduleDelayedIdleTask(()=>{this.cancelMetrikaLoad=null,this.loadMetrikaScript()},this.getMetrikaDelay(e)))}scheduleIlliciumLoad(e){!this.shouldAutoLoadIllicium(e)||this.illiciumScript?.isConnected||this.cancelIlliciumLoad||(this.cancelIlliciumLoad=this.scheduleDelayedIdleTask(()=>{this.cancelIlliciumLoad=null,this.shouldAutoLoadIllicium(this.router.url)&&this.ensureIlliciumMounted()},this.illiciumDelayMs))}cancelScheduledMetrikaLoad(){this.cancelMetrikaLoad?.(),this.cancelMetrikaLoad=null}cancelScheduledIlliciumLoad(){this.cancelIlliciumLoad?.(),this.cancelIlliciumLoad=null}scheduleDelayedIdleTask(e,t){let r=null,s=null,o=!1,u=typeof window>"u"?null:window,w=()=>{o||e()};return r=setTimeout(()=>{if(r=null,u?.requestIdleCallback){s=u.requestIdleCallback(()=>{s=null,w()},{timeout:this.idleTimeoutMs});return}w()},t),()=>{o=!0,r&&(clearTimeout(r),r=null),s&&u?.cancelIdleCallback&&(u.cancelIdleCallback(s),s=null)}}getMetrikaDelay(e){return this.isRzdTitleUrl(e)?this.metrikaRzdTitleDelayMs:this.metrikaDefaultDelayMs}isLowEndDevice(){if(typeof navigator>"u"||/iPhone|iPad/.test(navigator.userAgent))return!1;let e=navigator.deviceMemory;return e!==void 0?e<=4:(navigator.hardwareConcurrency||8)<=4}shouldAutoLoadIllicium(e){return c.siteName==="rutrip.ru"&&!this.isRzdTitleUrl(e)}isRzdTitleUrl(e){return((e||"").split(/[?#]/)[0].replace(/\/+$/,"")||"/")==="/poezd"}ensureMetrikaInitialized(){let e=this.getDocument();!e||typeof window>"u"||!c.analyticsVariable||this.metrikaInitialized||(this.bootstrapMetrikaQueue(),this.bootstrapDataLayer(),this.getYm()?.(Number(c.analyticsVariable),"init",{clickmap:!this.isLowEndDevice(),trackLinks:!0,accurateTrackBounce:!0,webvisor:!this.isLowEndDevice(),ecommerce:"dataLayer",referrer:e.referrer,url:e.location.href}),this.metrikaInitialized=!0)}ecommercePurchase(e,t="RUB"){if(!this.platformService.isBrowser()||!c.analyticsVariable)return;this.ensureMetrikaInitialized(),this.scheduleMetrikaLoad(this.router.url),this.bootstrapDataLayer();let r=window.dataLayer;if(!r)return;let s={id:e.id,revenue:e.revenue};e.goal_id!==void 0&&(s.goal_id=e.goal_id),e.coupon&&(s.coupon=e.coupon),r.push({ecommerce:{currencyCode:t,purchase:{actionField:s,products:e.products}}})}bootstrapDataLayer(){if(typeof window>"u")return;let e=window;e.dataLayer||(e.dataLayer=[])}loadMetrikaScript(){let e=this.getDocument();if(!e||typeof window>"u"||this.metrikaLoaded)return;this.metrikaLoaded=!0,this.bootstrapMetrikaQueue();let t=e.createElement("script");t.async=!0,t.src="https://mc.yandex.ru/metrika/tag.js";let r=e.getElementsByTagName("script")[0];r?.parentNode?.insertBefore(t,r)}ensureIlliciumMounted(){this.illiciumDiv?.isConnected||this.insertDiv(),this.insertScript(),this.ensureReviveMounted()}ensureReviveMounted(){let e=this.getDocument();if(!e||this.reviveScript?.isConnected)return;if(!this.reviveIns?.isConnected){let r=e.createElement("style");r.textContent=".illicium-revive-holder, .illicium-revive-holder ins { display: none !important; }",e.head.appendChild(r);let s=e.createElement("div");s.className="illicium-revive-holder",s.style.display="none";let o=e.createElement("ins");o.dataset.reviveZoneid="48",o.dataset.reviveId="4e57fb19dd131041b43fa2fa65dcd251",o.style.display="none",s.appendChild(o),e.body.appendChild(s),this.reviveIns=o}let t=e.createElement("script");t.async=!0,t.src="https://node.illicium.co/delivery/asyncjs.php",this.reviveScript=e.body.appendChild(t)}getYm(){if(!(typeof window>"u"))return window.ym}bootstrapMetrikaQueue(){if(typeof window>"u")return;let e=window;if(!e.ym){let t=(...r)=>{(t.a=t.a||[]).push(r)};t.a=t.a||[],t.l=Date.now(),e.ym=t}}};i.\u0275fac=function(t){return new(t||i)},i.\u0275prov=l({token:i,factory:i.\u0275fac,providedIn:"root"});let n=i;return n})();var fe=(()=>{let i=class i{constructor(){this.cache=new k,this.platformService=a(h)}intercept(e,t){if(this.platformService.isServer()||e.method!=="GET"||e.url.indexOf("location")===-1&&e.url.indexOf("catalogue")===-1)return t.handle(e);let r=this.cache.get(e);return r?S(r):t.handle(e).pipe(g(s=>
1{s instanceof C&&this.cache.set(e,s)}))}};i.\u0275fac=function(t){return new(t||i)},i.\u0275prov=l({token:i,factory:i.\u0275fac,providedIn:"root"});let n=i;return n})(),k=class{constructor(){this.store=new Map,this.ttlMs=3600*1e3,this.maxEntries=200}get(i){this.purgeExpired();let d=this.store.get(i.urlWithParams);return d?Date.now()-d.created>this.ttlMs?(this.store.delete(i.urlWithParams),null):d.response:null}set(i,d){this.purgeExpired(),this.store.set(i.urlWithParams,{created:Date.now(),response:d}),this.enforceSizeLimit()}purgeExpired(){let i=Date.now();for(let[d,e]of this.store)i-e.created>this.ttlMs&&this.store.delete(d)}enforceSizeLimit(){if(this.store.size<=this.maxEntries)return;let i=this.store.size-this.maxEntries,d=0;for(let e of this.store.keys())if(this.store.delete(e),d+=1,d>=i)break}};var we=(()=>{let i=class i{constructor(){this.platformService=a(h)}get cookieStore(){return this.isBrowser()?this.parseCookieStore(typeof document<"u"?document.cookie:""):{}}isBrowser(){return this.platformService.isBrowser()}parseCookieStore(e){let t={};return e&&e.split(/;\s*/).forEach(s=>{let[o,u]=s.split("=");o&&u&&(t[decodeURIComponent(o)]=decodeURIComponent(u))}),t}getObject(e){if(!this.isBrowser())return;let t=this.cookieStore[e];try{return t?JSON.parse(t):void 0}catch{return t}}putObject(e,t,r={}){if(!this.isBrowser()||typeof document>"u")return;let s;try{s=typeof t=="string"?t:JSON.stringify(t)}catch{s=String(t)}let o=encodeURIComponent(e)+"="+encodeURIComponent(s);if(r){if(r.expires)if(typeof r.expires=="number"){let u=new Date;u.setTime(u.getTime()+r.expires*864e5),o+="; expires="+u.toUTCString()}else typeof r.expires.toUTCString=="function"&&(o+="; expires="+r.expires.toUTCString());r.path&&(o+="; path="+r.path),r.domain&&(o+="; domain="+r.domain),r.secure&&(o+="; secure"),r.sameSite&&(o+="; samesite="+r.sameSite),r.httpOnly&&(o+="; httponly")}document.cookie=o}remove(e,t={}){if(!this.isBrowser())return;let r=b(I({},t),{expires:new Date(0)});this.putObject(e,"",r)}};i.\u0275fac=function(t){return new(t||i)},i.\u0275prov=l({token:i,factory:i.\u0275fac,providedIn:"root"});let n=i;return n})();export{J as a,K as b,ne as c,fe as d,we as e};

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.