PageSourceSearch

https://gomood.ru/_next/static/chunks/10-f411dc76ec23d0c9.js

js gomood.ru collected 2026-10-10 00:18:52 UTC 38,317 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[10],{1759:(t,e,s)=>{s.d(e,{$m:()=>F,G8:()=>n,Jq:()=>x,KK:()=>E,Nm:()=>a,Nt:()=>j,O$:()=>w,Ok:()=>h,Sc:()=>u,VA:()=>d,X2:()=>y,Z:()=>C,a3:()=>D,hB:()=>l,i6:()=>k,jg:()=>o,jt:()=>r,jx:()=>c,mj:()=>A,w$:()=>S,wW:()=>M,yd:()=>G});var i=s(8064);let r=["direct","one","two"],n=["free","on_arrival","e_visa","required"],o=["free","on_arrival"],a=[{statuses:["free"],label:"Без визы",emoji:"✅"},{statuses:["on_arrival"],label:"Виза по прилёту",emoji:"\uD83D\uDCB5"},{statuses:["e_visa","required"],label:"С визой",emoji:"\uD83D\uDEC2"}],l=1e5,c=()=>({types:[],moods:[],region:"any",visas:[...o],budget:l,origin:i.hO,dateMode:"any",month:"",departDate:"",returnDate:"",stops:["direct","one"],oneWay:!1}),u=t=>t.toLocaleString("ru-RU"),d=(t,e)=>e&&null!=e[t.id]?e[t.id]:t.priceFrom,p=["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь"],g=["янв","фев","мар","апр","мая","июн","июл","авг","сен","окт","ноя","дек"];function h(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:12,e=new Date,s=[];for(let i=0;i<t;i++){let t=new Date(e.getFullYear(),e.getMonth()+i,1),r=t.getMonth(),n=t.getFullYear();s.push({value:"".concat(n,"-").concat(String(r+1).padStart(2,"0")),label:"".concat(p[r]," ").concat(n)})}return s}let m=["янв","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек"],f=new Set([1,2,3,4,5,6,7,8,9,10,11,12]);function b(t){if(!t)return"";let[,e,s]=t.split("-").map(Number);return"".concat(s," ").concat(g[(e||1)-1])}function y(){let t=new Date;return"".concat(t.getFullYear(),"-").concat(String(t.getMonth()+1).padStart(2,"0"),"-").concat(String(t.getDate()).padStart(2,"0"))}function k(t){if("exact"===t.dateMode&&t.departDate)return t.returnDate?"".concat(b(t.departDate)," – ").concat(b(t.returnDate)):b(t.departDate);if("month"===t.dateMode&&t.month){let[e,s]=t.month.split("-").map(Number);return"".concat(p[(s||1)-1]," ").concat(e)}return"ближайшие полгода"}let v={direct:"прямые",one:"1 пересадка",two:"2+ пересадок"};function x(t){let e=r.filter(e=>t.stops.includes(e));return 0===e.length||e.length===r.length?"любые пересадки":1===e.length?v[e[0]]:e.includes("direct")&&e.includes("one")?"до 1 пересадки":e.includes("direct")&&e.includes("two")?"прямые или 2+":e.map(t=>v[t]).join(" \xb7 ")}function j(t){let e={};return t.origin&&t.origin!==i.hO&&(e.origin=t.origin),"month"===t.dateMode&&t.month&&(e.month=t.month),"exact"===t.dateMode&&t.departDate&&(e.departureAt=t.departDate,t.returnDate&&!t.oneWay&&(e.returnAt=t.returnDate)),t.stops.length&&t.stops.length<r.length&&(e.stops=r.filter(e=>t.stops.includes(e)).join(",")),t.oneWay&&(e.oneWay=!0),e}function M(t,e){if(t.includes(e)){let s=t.filter(t=>t!==e);return s.length?s:t}let s=[...t,e];return"one"===e&&(s=s.filter(t=>"two"!==t)),"two"===e&&(s=s.filter(t=>"one"!==t)),s}function w(t){let e={};return t.origin&&t.origin!==i.hO&&(e.origin=t.origin),"month"===t.dateMode&&t.month&&(e.month=t.month),t.stops.length&&t.stops.length<r.length&&(e.stops=r.filter(e=>t.stops.includes(e)).join(",")),t.oneWay&&(e.oneWay=!0),e}let F=t=>(Number.isInteger(t)?t:String(t).replace(".",","))+" ч",D=t=>{let e=Math.floor(t/60),s=Math.round(t%60);return e<=0?"".concat(s," мин"):s?"".concat(e," ч ").concat(s," мин"):"".concat(e," ч")};function E(t){if("russia"===t.region)return{short:"Без визы",full:"Без визы",fact:"Не нужна",cls:"free"};let{status:e,costLabel:s,stayDays:i}=t.visa,r=s?" \xb7 ".concat(s):"";switch(e){case"on_arrival":return{short:"По прилёту",full:"Виза по прилёту".concat(r),fact:"По прилёту".concat(r),cls:"amber"};case"e_visa":return{short:"e-Visa",full:"e-Visa".concat(r),fact:"e-Visa".concat(r),cls:"blue"};case"required":return{short:"С визой",full:"Нужна виза",fact:"Нужна",cls:"req"};default:return{short:"Без визы",full:i?"Без визы \xb7 ".concat(i," дн."):"Без визы",fact:i?"Не нужна \xb7 до ".concat(i," дн."):"Не нужна",cls:"free"}}}function C(t,e){let s=e.every(e=>t.includes(e))?t.filter(t=>!e.includes(t)):[...t,...e.filter(e=>!t.includes(e))];return n.filter(t=>s.includes(t))}function A(t,e,s,i){let r=function(t){if("month"===t.dateMode&&t.month){let e=Number(t.month.split("-")[1]);return e>=1&&e<=12?e:null}if("exact"===t.dateMode&&t.departDate){let e=Number(t.departDate.split("-")[1]);return e>=1&&e<=12?e:null}return null}(e),n=t.filter(t=>!("any"!==e.region&&t.region!==e.region||e.visas.length&&!e.visas.includes(t.visa.status)||e.types.length&&!e.types.some(e=>t.types.includes(e))||e.moods.length&&!e.moods.some(e=>t.moods.includes(e))||e.budget<l&&d(t,i)>
1e.budget)&&(null==r||!!(function(t){if(!t||t.includes("круглый"))return f;let e=t.split(/[–—-]/).map(t=>t.trim().slice(0,3).toLowerCase());if(2!==e.length)return f;let s=m.indexOf(e[0])+1,i=m.indexOf(e[1])+1;if(s<1||i<1)return f;let r=new Set;for(let t=s,e=0;e<12&&(r.add(t),t!==i);e++)t=t%12+1;return r})(t.season).has(r)));return"price"===s?n.slice().sort((t,e)=>d(t,i)-d(e,i)):"time"===s?n.slice().sort((t,e)=>t.flightHours-e.flightHours):n.slice().sort((t,e)=>t.rank-e.rank)}function G(t,e,s,r,o,c){var d;let p=[];"any"!==t.region&&p.push({label:i.Zg[t.region],onClick:()=>e("any")});let g=!(d=t.visas).length||d.length>=n.length?"":a.filter(t=>t.statuses.every(t=>d.includes(t))).map(t=>t.label).join(" \xb7 ");return g&&p.push({label:g,onClick:()=>s()}),t.types.forEach(t=>p.push({label:i.ZE[t],onClick:()=>r(t)})),t.moods.forEach(t=>p.push({label:i._X[t],onClick:()=>o(t)})),t.budget<l&&p.push({label:"до "+u(t.budget)+" ₽",onClick:()=>c(l)}),p}function S(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:3;return[...t.types.map(t=>({label:i.ZE[t],cls:i.QV[t]})),...t.moods.map(t=>({label:i._X[t],cls:i.QV[t]}))].slice(0,e)}},5382:(t,e,s)=>{s.d(e,{default:()=>d});var i=s(5155),r=s(9705),n=s(2619),o=s.n(n),a=s(8064);function l(){let{filters:t,setOrigin:e}=(0,r.R)();return(0,i.jsxs)("header",{className:"kb-header",children:[(0,i.jsx)(o(),{className:"kb-brand",href:"/",children:(0,i.jsx)("img",{className:"kb-brand-img",src:"/brand/gomood-wordmark-165x32.png",srcSet:"/brand/gomood-wordmark-165x32.png 1x, /brand/gomood-wordmark-330x64.png 2x",width:165,height:32,alt:"GoMood",draggable:!1})}),(0,i.jsxs)("label",{className:"kb-header-origin",children:[(0,i.jsx)("span",{className:"kb-header-origin-label",children:"Вылет из"}),(0,i.jsxs)("div",{className:"kb-drop",children:[(0,i.jsx)("span",{className:"kb-drop-pin",children:"\uD83D\uDCCD"}),(0,i.jsx)("select",{className:"kb-drop-select",value:t.origin,onChange:t=>e(t.target.value),children:a.o9.map(t=>(0,i.jsx)("option",{value:t.iata,children:t.city},t.iata))}),(0,i.jsx)("span",{className:"kb-drop-caret",children:"▾"})]})]})]})}s(1759);let c=[{slug:"bez-vizy",title:"Куда поехать без визы — направления и билеты",description:"Безвизовые направления для отдыха: куда можно поехать без визы, со сроками, перелётом и ценами на билеты. Подбор по настроению на GoMood.",h1:"Куда поехать без визы",intro:"Направления, куда россияне едут без визы, — от безвизовых стран до поездок по России без загранпаспорта. Сравните перелёт, сезон и актуальные цены на билеты, не оформляя документы.",preset:{visas:["free"]}},{slug:"more",title:"Пляжный отдых: куда поехать к морю",description:"Лучшие направления для пляжного отдыха у моря: тёплое море, цены на билеты и сезон. Подбор по настроению на GoMood.",h1:"Куда поехать к морю",intro:"Направления с морем и пляжами — от ближних до экзотических. Смотрите температуру воды, лучший сезон и примеры билетов туда-обратно.",preset:{types:["sea"],visas:["free","on_arrival"]}},{slug:"gory",title:"Горы: куда поехать в горы",description:"Горные направления для отдыха и трекинга: перелёт, сезон и цены на билеты. Подбор по настроению на GoMood.",h1:"Куда поехать в горы",intro:"Горы для прогулок, видов и свежего воздуха. Сравните направления по перелёту, сезону и цене билета.",preset:{types:["mountains"],visas:["free"]}}
1,{slug:"ekzotika",title:"Экзотика без визы — необычные направления",description:"Необычные безвизовые направления: восточные мегаполисы, вулканы и горы с особым колоритом. Цены на билеты и сезон. Подбор по настроению на GoMood.",h1:"Экзотика без визы",intro:"Необычные и колоритные места, куда не нужна виза, — от вулканов Камчатки и гор Алтая до восточного Стамбула и Пекина. Другая культура и природа без визовых хлопот, с актуальными ценами на билеты.",preset:{moods:["exotic"],visas:["free"]}},{slug:"po-rossii",title:"Куда поехать по России — направления и билеты",description:"Куда поехать отдыхать по России: море, горы, города и природа. Перелёт, сезон и цены на билеты. Подбор по настроению на GoMood.",h1:"Куда поехать по России",intro:"Отдых внутри страны — без загранпаспорта и виз. От моря до гор: сравните перелёт, сезон и цены на билеты по российским направлениям.",preset:{region:"russia",visas:["free"]}},{slug:"goroda-tusovka",title:"Города для тусовки — куда поехать за атмосферой",description:"Города с яркой ночной жизнью и атмосферой: куда поехать потусоваться. Перелёт и цены на билеты. Подбор на GoMood.",h1:"Города для тусовки",intro:"Города, куда едут за движухой, барами и ночной жизнью. Сравните перелёт и цены на билеты и выбирайте по настроению.",preset:{types:["sights"],moods:["party"],visas:["free"]}},{slug:"nedorogo",title:"Куда поехать недорого — бюджетные направления и билеты",description:"Бюджетные направления для отдыха с билетами до 30 000 ₽: близкие города, море и горы. Подбор по настроению на GoMood.",h1:"Куда поехать недорого",intro:"Направления, куда реально улететь недорого — с билетами туда-обратно примерно до 30 000 ₽. В основном это близкие города, море и горы в нескольких часах перелёта. Сравните сезон и актуальные цены и выбирайте, что по карману.",preset:{budget:3e4,visas:[]}},{slug:"leto",title:"Куда поехать летом — направления, сезон и билеты",description:"Куда поехать летом: море, горы и города, которые лучше всего в летний сезон. Перелёт и цены на билеты. Подбор на GoMood.",h1:"Куда поехать летом",intro:"Направления, у которых лето — лучший сезон: тёплое море, комфортная погода в горах и городах. Мы оставили только те места, что в разгар лета на пике, и показываем перелёт и актуальные цены на билеты.",preset:{month:7,visas:[]}},{slug:"zima",title:"Куда поехать зимой — тёплые направления и билеты",description:"Куда поехать зимой за теплом: пляжи и океан, где в январе высокий сезон. Перелёт и цены на билеты. Подбор по настроению Ð
1½Ð° GoMood.",h1:"Куда поехать зимой",intro:"Пока дома холодно, в этих местах высокий пляжный сезон. Мы собрали направления, где зимой тепло и солнечно, и показываем перелёт и актуальные цены на билеты — чтобы спланировать побег от зимы.",preset:{month:1,visas:[]}},{slug:"relax",title:"Куда поехать отдохнуть и расслабиться",description:"Спокойные направления для отдыха и перезагрузки: море, горы и неспешные города. Перелёт и цены на билеты. Подбор на GoMood.",h1:"Куда поехать отдохнуть",intro:"Направления для спокойного отдыха без суеты — расслабиться у моря, выдохнуть в горах или сменить ритм в неспешном городе. Сравните сезон, перелёт и актуальные цены на билеты.",preset:{moods:["relax"],visas:[]}},{slug:"osen",title:"Куда поехать осенью — направления и билеты",description:"Куда поехать осенью: тёплые страны и города, где осень — лучший сезон. Перелёт и цены на билеты. Подбор по настроению на GoMood.",h1:"Куда поехать осенью",intro:"Осень — отличное время для путешествия: толпы схлынули, жара спала, цены ниже. Мы собрали направления, где сентябрь–ноябрь входит в лучший сезон: тёплое море, виноградные урожаи, золото горных склонов и городские прогулки в комфортную погоду.",preset:{month:10,visas:[]}},{slug:"iz-pitera",title:"Куда поехать из Петербурга — рейсы и билеты",description:"Куда полететь из Санкт-Петербурга: направления с прямыми рейсами, ценами и сезонами. Подбор по настроению на GoMood.",h1:"Куда поехать из Петербурга",intro:"Подборка направлений с рейсами из Санкт-Петербурга (Пулково). Цены ориентированы на вылет из Питера — они отличаются от московских. Выбирайте по настроению: море, горы, города или экзотиÐ
1ºÐ°.",preset:{origin:"LED",visas:[]}},{slug:"iz-ekaterinburga",title:"Куда поехать из Екатеринбурга — рейсы и билеты",description:"Куда полететь из Екатеринбурга: направления с рейсами из Кольцово, ценами и сезонами. Подбор по настроению на GoMood.",h1:"Куда поехать из Екатеринбурга",intro:"Направления с рейсами из Екатеринбурга (аэропорт Кольцово). Из Екатеринбурга можно лететь напрямую в Дубай, Стамбул и многие российские города, а дальше — с удобными стыковками. Сравните цены и сезон — и выбирайте по настроению.",preset:{origin:"SVX",visas:[]}}];function u(){return(0,i.jsxs)("footer",{className:"kb-footer",children:[(0,i.jsxs)("nav",{className:"kb-footer-nav","aria-label":"Подборки направлений",children:[(0,i.jsx)("span",{className:"kb-footer-nav-title",children:"Подборки:"}),c.map(t=>(0,i.jsx)(o(),{className:"kb-footer-link",href:"/podborka/".concat(t.slug),children:t.h1},t.slug))]}),(0,i.jsxs)("div",{className:"kb-footer-line",children:["GoMood ",(0,i.jsx)("span",{className:"kb-footer-beta",children:"beta"})," — направления подбираются по настроению, а не по городу"]}),(0,i.jsx)("div",{className:"kb-footer-note",children:"Цены берутся из кэша Aviasales и носят справочный характер: они могут отставать от актуальных на несколько часов. Итоговую стоимость и наличие мест всегда проверяйте на Aviasales при переходе."})]})}function d(t){let{initialFilters:e,initialSort:s,hideFooter:n=!1,children:o}=t;return(0,i.jsx)(r.B,{initialFilters:e,initialSort:s,children:(0,i.jsxs)("div",{className:"kb-page",children:[(0,i.jsx)("a",{className:"kb-skip",href:"#main",children:"Перейти к содержимому"}),(0,i.jsx)(l,{}),o,!n&&(0,i.jsx)(u,{})]})})}},7743:(t,e,s)=>{s.d(e,{Hu:()=>c});var i=s(8064),r=s(1759);let n=Object.keys(i.ZE),o=Object.keys(i._X),a=["direct","one"],l=(t,e)=>t.length===e.length&&t.every(t=>e.includes(t));function c(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"popular",s=new URLSearchParams;return t.types.length&&s.set("type",n.filter(e=>t.types.includes(e)).join(",")),t.moods.length&&s.set("mood",o.filter(e=>t.moods.includes(e)).join(",")),"any"!==t.region&&s.set("region",t.region),l(t.visas,r.jg)||s.set("visa",t.visas.length?r.G8.filter(e=>t.visas.includes(e)).join(","):"any"),t.budget<r.hB&&s.set("budget",String(t.budget)),t.origin&&t.origin!==i.hO&&s.set("from",t.origin),"month"===t.dateMode&&t.month?(s.set("when","month"),s.set("month",t.month)):"exact"===t.dateMode&&t.departDate&&(s.set("when","exact"),s.set("depart",t.departDate),t.returnDate&&s.set("ret",t.returnDate)),l(t.stops,a)||s.set("stops",r.jt.filter(e=>t.stops.includes(e)).join(",")),t.oneWay&&s.set("trip","oneway"),"popular"!==e&&s.set("sort",e),s}},8064:(t,e,s)=>{s.d(e,{BZ:()=>u,Fr:()=>a,QV:()=>l,Ut:()=>o,ZE:()=>i,Zg:()=>n,_X:()=>r,fG:()=>h,hO:()=>d,kk:()=>g,lx:()=>p,o9:()=>c});let i={sea:"Море",mountains:"Горы",sights:"Достопримечательности",nature:"Природа"},r={palms:"Пляж с пальмами",party:"Тусовка",relax:"Релакс",exotic:"ЭкзотиÐ
1ºÐ°"},n={abroad:"Заграница",russia:"Россия"},o={sea:"\uD83C\uDF0A",mountains:"⛰️",sights:"\uD83C\uDFDB️",nature:"\uD83C\uDF32"},a={palms:"\uD83C\uDFD6️",party:"\uD83C\uDF89",relax:"\uD83E\uDDD8",exotic:"\uD83E\uDD9C"},l={sea:"sea",mountains:"mountains",sights:"sights",nature:"nature",palms:"beach",party:"party",relax:"relax",exotic:"exotic"},c=[{iata:"MOW",city:"Москва"},{iata:"LED",city:"Санкт-Петербург"},{iata:"AER",city:"Сочи"},{iata:"KZN",city:"Казань"},{iata:"SVX",city:"Екатеринбург"},{iata:"OVB",city:"Новосибирск"},{iata:"KRR",city:"Краснодар"},{iata:"KGD",city:"Калининград"},{iata:"UFA",city:"Уфа"},{iata:"KUF",city:"Самара"},{iata:"ROV",city:"Ростов-на-Дону"},{iata:"MRV",city:"Минеральные Воды"},{iata:"GOJ",city:"Нижний Новгород"},{iata:"VVO",city:"Владивосток"}],u=t=>{var e,s;return null!=(s=null==(e=c.find(e=>e.iata===t))?void 0:e.city)?s:t},d="MOW",p={Индонезия:"\uD83C\uDDEE\uD83C\uDDE9",Таиланд:"\uD83C\uDDF9\uD83C\uDDED",Грузия:"\uD83C\uDDEC\uD83C\uDDEA",Армения:"\uD83C\uDDE6\uD83C\uDDF2",Россия:"\uD83C\uDDF7\uD83C\uDDFA",Турция:"\uD83C\uDDF9\uD83C\uDDF7",ОАЭ:"\uD83C\uDDE6\uD83C\uDDEA",Киргизия:"\uD83C\uDDF0\uD83C\uDDEC",Танзания:"\uD83C\uDDF9\uD83C\uDDFF",Испания:"\uD83C\uDDEA\uD83C\uDDF8",Япония:"\uD83C\uDDEF\uD83C\uDDF5",Египет:"\uD83C\uDDEA\uD83C\uDDEC",Вьетнам:"\uD83C\uDDFB\uD83C\uDDF3",Индия:"\uD83C\uDDEE\uD83C\uDDF3","Шри-Ланка":"\uD83C\uDDF1\uD83C\uDDF0",Китай:"\uD83C\uDDE8\uD83C\uDDF3",Мальдивы:"\uD83C\uDDF2\uD83C\uDDFB"},g={Индонезия:{capital:"Джакарта",currency:"рупия (IDR)",language:"индонезийский",timeMsk:"+5 ч (Бали)",socket:"тип C/F, 230 В — как дома",tips:["Виза по прилёте (VoA, ~$35) на 30 дней — ставится в аэропорту или оформляется онлайн как e-VoA.","Российские карты не работают: везите наличные доллары/евро и меняйте на месте.","Передвигаться удобно на байке или через приложения Gojek и Grab."]},Таиланд:{capital:"Бангкок",currency:"бат (THB)",language:"тайский",timeMsk:"+4 ч",socket:"тип A/B/C, 220 В — нужен переходник",tips:["Безвизовый въезд для туристов на срок до 60 дней.","Карты \xabМир\xbb не принимают — берите наличные, банкоматы есть везде.","Сезон дождей с мая по октябрь, лучшее время — ноябрь–апрель."]},Грузия:{capital:"Тбилиси",currency:"лари (GEL)",language:"грузинский",timeMsk:"+1 ч",socket:"тип C/F, 220 В — как дома",tips:["Можно находиться без визы до 1 года.","С 1 января 2026 на въезде нужна туристическая медстраховка (покрытие от 30 000 лари) на весь срок поездки.","Российские карты не работают — нужны наличные, рубли меняют легко.","Маршрутки и приложение Bolt — самый дешёвый транспорт."]},Армения:{capital:"Ереван",currency:"драм (AMD)",language:"армянский",timeMsk:"+1 ч",socket:"тип C/F, 230 В — как дома",tips:["Безвизовый въезд, находиться можно до 180 дней в году. Прямым авиарейсом в Ереван или Гюмри можно въехать по внутреннему паспорту РФ (детям — только загранпаспорт).","Карты \xabМир\xbb почти не работают — принимают только банкоматы и отдельные точки ВТБ Армения, рассчитывайте на наличные.","Между городами удобно ездить на маршрутках и такси GG / Яндекс."]},Россия:{capital:"Москва",currency:"рубль (RUB)",language:"русский",timeMsk:"от МСК до 
1+9 ч",socket:"тип C/F, 220 В",tips:["Загранпаспорт не нужен, оплата картой принимается повсюду.","Огромные расстояния — закладывайте время на перелёты внутри страны.","Часовых поясов много: от московского до +9 часов на востоке."]},Турция:{capital:"Анкара",currency:"лира (TRY)",language:"турецкий",timeMsk:"без разницы",socket:"тип C/F, 230 В — как дома",tips:["Безвизовый въезд до 60 дней.","Российские карты не работают — берите наличные или карту иностранного банка.","Время совпадает с московским — без джетлага."]},ОАЭ:{capital:"Абу-Даби",currency:"дирхам (AED)",language:"арабский",timeMsk:"+1 ч",socket:"тип G (UK), 230 В — нужен переходник",tips:["Виза не нужна: штамп ставят на границе — до 90 дней суммарно в течение каждых 180.","Карты \xabМир\xbb не принимают — нужны наличные или зарубежная карта.","В общественных местах действует дресс-код, алкоголь — только в лицензированных заведениях."]},Киргизия:{capital:"Бишкек",currency:"сом (KGS)",language:"киргизский, русский",timeMsk:"+3 ч",socket:"тип C/F, 220 В — как дома",tips:["Безвизовый въезд, можно по внутреннему паспорту РФ (с 20 января 2026 детям до 14 лет нужен загранпаспорт).","Карты \xabМир\xbb не работают с апреля 2024 года — рассчитывайте на наличные сомы.","На Иссык-Куль удобнее всего ехать из Бишкека на машине или такси."]},Танзания:{capital:"Додома",currency:"шиллинг (TZS)",language:"суахили, английский",timeMsk:"без разницы",socket:"тип D/G, 230 В — нужен переходник",tips:["Нужна виза — оформляется онлайн (e-visa) или по прибытии.","Для Занзибара обязательна местная страховка ZIC (~$44 с человека) — оформите онлайн заранее, QR проверяют на въезде.","При транзите через ряд стран нужна прививка от жёлтой лихорадки.","Расчёты в долларах и местных шиллингах, карты почти не работают."]},Испания:{capital:"Мадрид",currency:"евро (EUR)",language:"испанский",timeMsk:"−1 ч летом, −2 ч зимой",socket:"тип C/F, 230 В — как дома",tips:["Нужна шенгенская виза.","Оплата картой принимается везде, наличные почти не нужны.","Сиеста: днём многие магазины закрыты, а ужинают здесь поздно — после 21:00."]},Япония:{capital:"Токио",currency:"иена (JPY)",language:"японский",timeMsk:"+6 ч",socket:"тип A/B, 100 В — нужен переходник",tips:["Виза нужна, но бесплатна для россиян — оформляется заранее: в Москве и Петербурге через визовый центр JVAC (VFS Global), на Дальнем Востоке — напрямую в консульстве.","Многие места работают только за наличные — держите иены при себе.","Проездной JR Pass экономит на поездах, если ездить между городами."]},Египет:{capital:"Каир",currency:"фунт (EGP)",language:"арабский",timeMsk:"летом = МСК, зимой −1 ч",socket:"тип C/F, 220 В — как дома",tips:["Виза ставится по прилёте ($30); для Шарм-эль-Шейха действует бесплатный синайский штамп.","Карты \xabМир\xbb не работают — берите наличные доллары или евро.","На побережье удобнее всего такие приложения такси, как inDrive."]},Вьетнам:{capital:"Ханой",currency:"донг (VND)",language:"вьетнамский",timeMsk:"+4 ч",socket:"тип A/C, 220 В — нужен переходник",tips:["Безвизовый въезд до 45 дней, режим продлён до марта 2028 года. Ограничение на повторный въезд раньше чем через 30 дней отменено ещё в 2020 году.","Российские карты не работают — везите наличные, меняйте доллары на месте.","Передвигаться удобно на байке и через приложение Grab."]},Индия:{capital:"Нью-Дели",currency:"рупия (INR)",language:"хинди, английский",timeMsk:"+2,5 ч",socket:"тип C/D/M, 230 В — нужен переходник",tips:["Нужна электронная виза (e-Tourist): с 2026 года 30-дневная бесплатна, оформляется онлайн заранее.","Карты \xabМир\xbb не принимают — берите наличные и зарубежную карту.","В Гоа удобнее всего арендовать байк или вызывать такси через приложения."]},"Шри-Ланка":{capital:"Коломбо",currency:"рупия (LKR)",language:"сингальский, тамильский",timeMsk:"+2,5 ч",socket:"тип D/G/M, 230 В — нужен переходник",tips:["Для россиян разрешение ETA / виза по прилёте бесплатны — ETA лучше оформить онлайн заранее.","Карты почти не работают — рассчитывайте на наличные.","Между городами удобно ездить на поездах и тук-туках (вызов через PickMe)."]},Китай:{capital:"Пекин",currency:"юань (CNY)",language:"китайский",timeMsk:"+5 ч",socket:"тип A/C/I, 220 В — нужен переходник",tips:["Безвиз для россиян до 30 дней — режим продлён до 31 декабря 2027 года.","Наличные почти не в ходу — настройте Alipay/WeChat Pay с привязкой карты.","Google и многие сервисы заблокированы — заранее поставьте VPN и местные карты."]},Мальдивы:{capital:"Мале",currency:"руфия (MVR), в ходу доллары",language:"дивехи, английский",timeMsk:"+2 ч",socket:"тип D/G, 230 В — нужен переходник",tips:["Безвиз до 90 дней по соглашению с Россией (2019) — нужны обратный билет, бронь отеля и электронная декларация IMUGA (подаётся не раньше чем за 96 ч до прилёта).","На курортах всё включают в счёт виллы; оплата картой и долларами.","Между атоллами добираются на скоростных катерах и гидросамолётах — трансфер бронируйте заранее."]}},h=[{label:"Пляж",emoji:"\uD83C\uDFD6️",set:{types:["sea"],moods:["palms"]}},{label:"Релакс",emoji:"\uD83E\uDDD8",set:{types:["sea"],moods:["relax"]}},{label:"Тусовка",emoji:"\uD83C\uDF89",set:{types:["sights"],moods:["party"]}},{label:"Города",emoji:"\uD83C\uDFDB️",set:{types:["sights"]}},{label:"Горы",emoji:"⛰️",set:{types:["mountains"],visas:["free"]}}
1,{label:"Экзотика",emoji:"\uD83E\uDD9C",set:{moods:["exotic"],visas:["free"]}},{label:"Горы в России",emoji:"\uD83C\uDFD4️",set:{types:["mountains"],region:"russia"}}]},8316:(t,e,s)=>{s.d(e,{B1:()=>r,gZ:()=>u,xH:()=>d});var i=s(5155);function r(t){let{active:e,size:s=21}=t;return(0,i.jsx)("svg",{width:s,height:s,viewBox:"0 0 24 24",fill:e?"#f2552f":"none",stroke:e?"#f2552f":"#9aa0a9",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",focusable:"false",children:(0,i.jsx)("path",{d:"M20.8 5.6a5.4 5.4 0 0 0-7.6 0L12 6.8l-1.2-1.2a5.4 5.4 0 0 0-7.6 7.6L12 21l8.8-7.8a5.4 5.4 0 0 0 0-7.6z"})})}function n(){return(0,i.jsxs)("div",{style:{position:"absolute",inset:0},children:[(0,i.jsx)("div",{style:{position:"absolute",top:26,right:40,width:38,height:38,borderRadius:"50%",background:"#FFD64D"}}),(0,i.jsx)("div",{style:{position:"absolute",bottom:0,left:0,right:0,height:56,background:"linear-gradient(#8FD3E8,#BCE6F0)"}}),(0,i.jsx)("div",{style:{position:"absolute",bottom:0,left:0,right:0,height:22,background:"#F2E2B8"}})]})}function o(t){let{heights:e}=t;return(0,i.jsx)("div",{style:{position:"absolute",bottom:0,left:0,right:0,height:110,display:"flex",alignItems:"flex-end",justifyContent:"center",gap:6,padding:"0 24px"},children:e.map((t,e)=>(0,i.jsx)("div",{style:{width:22,height:t,background:e%2?"#B8C7CE":"#9FB2BA",borderRadius:"3px 3px 0 0"}},e))})}function a(){return(0,i.jsxs)("div",{style:{position:"absolute",inset:0},children:[(0,i.jsx)("div",{style:{position:"absolute",top:30,right:44,width:34,height:34,borderRadius:"50%",background:"#FFE08A"}}),(0,i.jsx)("div",{style:{position:"absolute",bottom:0,left:0,right:0,height:0,borderLeft:"160px solid transparent",borderRight:"160px solid transparent",borderBottom:"96px solid #A9C2A4"}}),(0,i.jsx)("div",{style:{position:"absolute",bottom:0,left:70,right:0,height:0,borderLeft:"120px solid transparent",borderRight:"120px solid transparent",borderBottom:"120px solid #8FB089"}})]})}function l(){return(0,i.jsxs)("div",{style:{position:"absolute",inset:0},children:[(0,i.jsx)("div",{style:{position:"absolute",bottom:0,left:0,right:0,height:40,background:"#CDE3BC"}}),[34,70,116].map((t,e)=>(0,i.jsxs)("div",{style:{position:"absolute",bottom:30,left:t,display:"flex",flexDirection:"column",alignItems:"center"},children:[(0,i.jsx)("div",{style:{width:0,height:0,borderLeft:"20px solid transparent",borderRight:"20px solid transparent",borderBottom:"".concat(44+6*e,"px solid #7FA86F")}}),(0,i.jsx)("div",{style:{width:7,height:16,background:"#9A7B53",marginTop:-2}})]},e))]})}let c={a:[54,78,40,92,60,70,46,84],b:[48,70,100,64,88,52,96,58]};function u(t){let{type:e,seed:s}=t;return"sea"===e?(0,i.jsx)(n,{}):"mountains"===e?(0,i.jsx)(a,{}):"nature"===e?(0,i.jsx)(l,{}):(0,i.jsx)(o,{heights:s%2?c.a:c.b})}let d={sea:"linear-gradient(#CBEAF4,#E9F6FA)",sights:"linear-gradient(#F1ECE2,#FAF6EF)",mountains:"linear-gradient(#E7F0E4,#F4F8F2)",nature:"linear-gradient(#E9F2E2,#F5F9F0)"}},8496:(t,e,s)=>{var i;s.d(e,{$B:()=>a,TZ:()=>o,WS:()=>n});let r=null!=(i=s(5704).env.NEXT_PUBLIC_API_BASE)?i:"";async function n(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},s=arguments.length>2?arguments[2]:void 0,i=new URLSearchParams;e.origin&&i.set("origin",e.origin),e.month&&i.set("month",e.month),e.departureAt&&i.set("departure_at",e.departureAt),e.returnAt&&i.set("return_at",e.returnAt),e.stops&&i.set("stops",e.stops),e.oneWay&&i.set("one_way","true");let n=i.toString(),o=await fetch("".concat(r,"/api/tickets/").concat(t).concat(n?"?".concat(n):""),{signal:s});if(!o.ok)throw Error("API ".concat(o.status));return await o.json()}async function o(t,e,s,i){let n=new URLSearchParams;e&&n.set("date",e),i&&n.set("only",i);let o=n.toString(),a=await fetch("".concat(r,"/api/weather/").concat(t).concat(o?"?".concat(o):""),{signal:s});if(!a.ok)throw Error("API ".concat(a.status));return await a.json()}async function a(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1?arguments[1]:void 0,s=new URLSearchParams;t.origin&&s.set("origin",t.origin),t.month&&s.set("month",t.month),t.stops&&s.set("stops",t.stops),t.oneWay&&s.set("one_way","true");let i=s.toString(),n=await fetch("".concat(r,"/api/prices").concat(i?"?".concat(i):""),{signal:e});if(!n.ok)throw Error("API ".concat(n.status));return(await n.json()).prices}},9705:(t,e,s)=>{s.d(e,{B:()=>u,R:()=>l});var i=s(5155),r=s(2115),n=s(1759),o=s(7743);let a=(0,r.createContext)(null);function l(){let t=(0,r.useContext)(a);if(!t)throw Error("useFilters must be used within <FiltersProvider>");return t}function c(t,e){let s=(0,o.Hu)(t,e).toString(),i=window.location.pathname+(s?"?".concat(s):"");window.history.replaceState(window.history.state,"",i)}function u(t){let{initialFilters:e,initialSort:s,children:o}=t,[l,u]=(0,r.useState)(e),[d,p]=(0,r.useState)(s),g=(0,r.useRef)(l),h=(0,r.useRef)(d);(0,r.useEffect)(()=>{g.current=l},[l]),(0,r.useEffect)(()=>{h.current=d},[d]);let m=t=>{g.current=t,u(t),c(t,h.current)},f=(t,e)=>{let s=g.current[t].slice(),i=s.indexOf(e);i>=0?s.splice(i,1):s.push(e),m({...g.current,[t]:s})};return(0,i.jsx)(a.Provider,{value:{filters:l,sort:d,setSort:t=>{h.current=t,p(t),c(g.current,t)},toggleType:t=>f("types",t),toggleMood:t=>f("moods",t),setRegion:t=>
1m({...g.current,region:t}),toggleVisa:t=>m({...g.current,visas:(0,n.Z)(g.current.visas,t)}),clearVisa:()=>m({...g.current,visas:[]}),setBudget:t=>m({...g.current,budget:t}),setOrigin:t=>m({...g.current,origin:t}),setMonth:t=>m({...g.current,month:t}),setDates:(t,e)=>m({...g.current,departDate:t,returnDate:e}),setDateMode:t=>m("month"!==t||g.current.month?{...g.current,dateMode:t}:{...g.current,dateMode:t,month:(0,n.Ok)(1)[0].value}),onToggleStops:t=>m({...g.current,stops:(0,n.wW)(g.current.stops,t)}),setOneWay:t=>m({...g.current,oneWay:t}),applyPreset:t=>m({...(0,n.jx)(),origin:g.current.origin,...t}),resetFilters:()=>m((0,n.jx)())},children:o})}}}]);

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.