import{y as pe,w as je,q as c,n as e,L as Y}from"./vendor-react-DfNOgXDS.js";import{b$ as be,al as fe,bb as g,P as p,bw as i,B as q,Z as T,bE as a,v as N,w,bz as ve,bB as ye,bs as te,ar as Ne,bP as se,bC as we,M as o,r as v,aj as F,aq as j,an as C,bc as K,bi as Q,bj as U,be as Z,bg as G,h as J,aK as Ce}from"./index-CRANE7wv.js";import{B as Se}from"./best-offers-section-Ct_wWPNZ.js";import{g as ke,S as Te,C as Fe}from"./MarketingShell-3Ivhn3sU.js";import{e as ze}from"./vendor-query-CutdBoCI.js";import{u as Me}from"./vendor-i18n-BWzZRYJm.js";import{T as ae}from"./train-front-Wz77BGex.js";import{C as z}from"./circle-check-DjBAPV-J.js";import{S as Ie}from"./sparkles-DuPXC15E.js";import{E as Ae}from"./earth-h-ePT7aV.js";import"./vendor-dayjs-BrZ9gQN4.js";import"./vendor-antd-core-R0BvUBa1.js";import"./vendor-sentry-BlaL7Aw0.js";import"./skeleton-BLIekBlX.js";import"./zap-DLo9YKtg.js";import"./globe-CZMJX-ig.js";const ie={cities:{all:["cities"],list:(s,l)=>[...ie.cities.all,s,l??""]}},W=({language:s="ru",search:l,enabled:d=!0}={})=>ze({queryKey:ie.cities.list(s,l),queryFn:()=>be.getCities(s,l),enabled:d,staleTime:5*6e4}),De=[{value:"20 DC",label:"20' Standard (33 РјВі)"},{value:"40 HC",label:"40' High Cube (76 РјВі)"}],X=[{value:"any",label:"Любой тип"},{value:"tent",label:"Тент"},{value:"refrigerator",label:"Рефрижератор"},{value:"van",label:"Фургон"},{value:"container",label:"Контейнеровоз"},{value:"other",label:"Другое"}],Oe=[{value:"containers",label:"Контейнерные",status:"live",icon:te},{value:"groupage",label:"Сборные",status:"live",icon:Ne},{value:"ktk",label:"РљРўРљ",status:"live",icon:ae},{value:"auto",label:"Авто-международные",status:"live",icon:se}];function E(s){const l=new Date;return l.setDate(l.getDate()+s),l.toISOString().slice(0,10)}function Ee(s){if(!(s!=null&&s.trim()))return E(7);const l=s.trim();if(/^\d{4}-\d{2}-\d{2}$/.test(l))return l;const d=l.match(/^(\d{2})\.(\d{2})\.(\d{4})$/);return d?`${d[3]}-${d[2]}-${d[1]}`:E(7)}function We(){var V;const[s]=pe(),l=je(),{i18n:d}=Me(),[r,b]=c.useState("containers"),[h,m]=c.useState(s.get("from")??""),[u,L]=c.useState(s.get("to")??""),[S,re]=c.useState(Ee(s.get("date"))),[M,le]=c.useState(s.get("size")??"20 DC"),[I,ne]=c.useState(s.get("weight")??""),[A,ce]=c.useState(s.get("volume")??""),[D,P]=c.useState(s.get("mode")==="DYNAMIC"?"DYNAMIC":"CONTAINER"),[k,oe]=c.useState(()=>{const t=s.get("carType");return t&&X.some(n=>n.value===t)?t:"any"}),[x,R]=c.useState(()=>{if(s.get("routeMode")==="multiple")return"multiple";const t=s.get("from")??"",n=s.get("to")??"";return t.includes(",")||n.includes(",")?"multiple":"single"});c.useEffect(()=>{const t=s.get("tab");t==="ktk"?b("ktk"):t==="intauto"?b("auto"):(s.get("weight")||s.get("volume"))&&b("groupage")},[]);const B=((V=d.language)==null?void 0:V.split("-")[0])??"ru",$=W({language:B,search:h.length>=2?h:void 0}),_=W({language:B,search:u.length>=2?u:void 0}),de=c.useMemo(()=>ee($.data??[]),[$.data]),me=c.useMemo(()=>ee(_.data??[]),[_.data]);c.useEffect(()=>{const t=s.get("from"),n=s.get("to");t&&t!==h&&m(t),n&&n!==u&&L(n)},[s]);const H=(()=>{if(!h.trim()||!u.trim()||!S)return!1;if(r==="groupage"){const t=parseFloat(I),n=parseFloat(A);return Number.isFinite(t)&&t>0||Number.isFinite(n)&&n>0}return r==="auto"?!0:!!M})();function ue(t){if(t.preventDefault(),!H)return;if(r==="auto"){const f=new URLSearchParams({cityFrom:h.trim(),cityTo:u.trim(),time:S,routeMode:"single",tab:"intauto"});k&&k!=="any"&&f.set("carType",k),l(`/m/results?${f.toString()}`);return}const n=r==="ktk"?"CONTAINER":D,ge=r==="containers"&&x==="multiple"?"multiple":"single",y=new URLSearchParams({cityFrom:h.trim(),cityTo:u.trim(),time:S,pricingMode:n,routeMode:ge});if(r==="groupage"){const f=parseFloat(I),O=parseFloat(A);Number.isFinite(f)&&f>0&&y.set("weight",String(f)),Number.isFinite(O)&&O>0&&y.set("volume",String(O))}else y.set("size",M);r==="ktk"&&y.set("tab","ktk"),l(`/m/results?${y.toString()}`)}function he(t){b(t)}function xe(t){try{sessionStorage.setItem(`deliveryOption_${t.id}`,JSON.stringify(t)),sessionStorage.setItem("orderDetailsShowPriceFrom","from")}catch{}window.open(`/m/order/${t.id}`,"_blank","noopener")}return e.jsxs(ke,{active:"calculator",children:[e.jsxs(fe,{children:[e.jsx("title",{children:"Калькулятор доставки В· Avalog"}),e.jsx("meta",{name:"description",content:"Рассчитайте стоимость международной доставки Р·Р° 15 секунд. 2 490 РіРѕСЂРѕРґРѕРІ, РјРѕСЂСЃРєРёРµ/Р¶/Рґ/авто/авиа, прозрачные тарифы РѕС‚ перевозчика напрямую."}),e.jsx("link",{rel:"canonical",href:"https://avalog.ru/m/calc"})]}),e.jsx(g,{py:"lg",bg:"surface",children:e.jsx(p,{size:"base",children:e.jsxs(i,{gap:6,align:"center",className:"text-center max-w-3xl mx-auto",children:[e.jsx(q,{variant:"success",children:"Калькулятор"}),e.jsxs(T,{size:"md",children:["Рассчитайте доставку",e.jsx("br",{}),"Р·Р° 15 секунд"]}),e.jsx(a,{variant:"lead",className:"max-w-2xl",children:"2 490 РіРѕСЂРѕРґРѕРІ отправления Рё назначения. РњРѕСЂСЃРєРёРµ контейнеры, Р¶/Рґ РёР· Китая, авто РёР· Турции, авиа. Р’СЃРµ ставки РІРёРґРЅС‹ РґРѕ РїРѕРґРїРёСЃРё РґРѕРіРѕРІРѕСЂР°."})]})})}),e.jsx(g,{py:"md",bg:"base",children:e.jsx(p,{size:"base",children:e.jsx(N,{className:"max-w-4xl mx-auto -mt-12 lg:-mt-16 shadow-lg relative z-10",children:e.jsx(w,{className:"pt-6",children:e.jsx("form",{onSubmit:ue,"aria-label":"Калькулятор доставки",children:e.jsxs(i,{gap:6,children:[e.jsx(ve,{value:r,onValueChange:t=>he(t),children:e.jsx(ye,{className:"grid grid-cols-4 w-full",children:Oe.map(t=>{const n=t.icon;return e.jsxs(we,{value:t.value,className:"gap-1.5 text-xs sm:text-sm",children:[e.jsx(n,{className:"h-3.5 w-3.5"}),e.jsx("span",{className:"hidden sm:inline",children:t.label}),e.jsx("span",{className:"sm:hidden",children:t.label.split(/[\s-]/)[0]}),t.status==="soon"&&e.jsx(q,{variant:"info",className:"ml-1 text-[10px] px-1 py-0",children:"РЎРєРѕСЂРѕ"})]},t.value)})})}),r==="containers"&&e.jsxs(o,{gap:3,align:"center",wrap:!0,children:[e.jsx(a,{variant:"caption",children:"Маршруты"}),e.jsxs(o,{gap:2,children:[e.jsx(v,{type:"button",size:"sm",variant:x==="single"?"default":"outline",onClick:()=>R("single"),children:"РћРґРёРЅ маршрут"}),e.jsx(v,{type:"button",size:"sm",variant:x==="multiple"?"default":"outline",onClick:()=>R("multiple"),children:"Несколько"})]})]}),e.jsxs(F,{cols:4,gap:4,children:[e.jsxs(i,{gap:2,className:"col-span-2 lg:col-span-1",children:[e.jsx(j,{htmlFor:"cityFrom",children:"Откуда"}),e.jsx(C,{id:"cityFrom",list:"cities-from",placeholder:r==="containers"&&x==="multiple"?"Шанхай, РќРёРЅР±Рѕ":"Шанхай",value:h,onChange:t=>m(t.target.value),required:!0,autoComplete:"off","aria-describedby":r==="containers"&&x==="multiple"?"multi-route-hint":void 0}),e.jsx("datalist",{id:"cities-from",children:de.map(t=>e.jsx("option",{value:t},t))})]}),e.jsxs(i,{gap:2,className:"col-span-2 lg:col-span-1",children:[e.jsx(j,{htmlFor:"cityTo",children:"РљСѓРґР°"}),e.jsx(C,{id:"cityTo",list:"cities-to",placeholder:r==="containers"&&x==="multiple"?"РњРѕСЃРєРІР°, РЎРџР±":"РњРѕСЃРєРІР°",value:u,onChange:t=>L(t.target.value),required:!0,autoComplete:"off","aria-describedby":r==="containers"&&x==="multiple"?"multi-route-hint":void 0}),e.jsx("datalist",{id:"cities-to",children:me.map(t=>e.jsx("option",{value:t},t))})]}),e.jsxs(i,{gap:2,children:[e.jsx(j,{htmlFor:"date",children:"Дата готовности"}),e.jsx(C,{id:"date",type:"date",value:S,onChange:t=>re(t.target.value),min:E(0),required:!0})]}),r==="groupage"?e.jsxs(e.Fragment,{children:[e.jsxs(i,{gap:2,children:[e.jsx(j,{htmlFor:"weight",children:"Вес, РєРі"}),e.jsx(C,{id:"weight",type:"number",min:0,step:1,inputMode:"decimal",placeholder:"например 500",value:I,onChange:t=>ne(t.target.value),"aria-describedby":"lcl-hint"})]}),e.jsxs(i,{gap:2,children:[e.jsx(j,{htmlFor:"volume",children:"Объём, РјВі"}),e.jsx(C,{id:"volume",type:"number",min:0,step:.1,inputMode:"decimal",placeholder:"например 2.5",value:A,onChange:t=>ce(t.target.value),"aria-describedby":"lcl-hint"})]})]}):r==="auto"?e.jsxs(i,{gap:2,children:[e.jsx(j,{htmlFor:"carType",children:"РўРёРї авто"}),e.jsxs(K,{value:k,onValueChange:t=>{t&&oe(t)},children:[e.jsx(Q,{id:"carType",children:e.jsx(U,{})}),e.jsx(Z,{children:X.map(t=>e.jsx(G,{value:t.value,children:t.label},t.value))})]})]}):e.jsxs(i,{gap:2,children:[e.jsx(j,{htmlFor:"size",children:"РўРёРї контейнера"}),e.jsxs(K,{value:M,onValueChange:le,children:[e.jsx(Q,{id:"size",children:e.jsx(U,{})}),e.jsx(Z,{children:De.map(t=>e.jsx(G,{value:t.value,children:t.label},t.value))})]})]})]}),r==="groupage"&&e.jsx(a,{variant:"muted",className:"text-sm",id:"lcl-hint",children:"Укажите вес или объём (или РѕР±Р°). Бэкенд подберёт стоимость РїРѕ dimensional weight (1 РјВі ≈ 167 РєРі)."}),r==="containers"&&x==="multiple"&&e.jsx(a,{variant:"muted",className:"text-sm",id:"multi-route-hint",children:"Укажите несколько РіРѕСЂРѕРґРѕРІ через запятую — рассчитаем стоимость РЅР° каждую пару отправление-назначение."}),e.jsxs(o,{gap:4,justify:"between",wrap:!0,align:"center",children:[r==="groupage"?e.jsxs(i,{gap:1,children:[e.jsx(a,{variant:"caption",children:"Тариф"}),e.jsx(a,{className:"text-sm",children:"Сборный (LCL) — рассчитывается per kg/mВі"})]}):r==="ktk"?e.jsxs(i,{gap:1,children:[e.jsx(a,{variant:"caption",children:"Тариф"}),e.jsx(a,{className:"text-sm",children:"РљРўРљ (SOC аренда) — фиксированная ставка Р·Р° контейнер"})]}):r==="auto"?e.jsxs(i,{gap:1,children:[e.jsx(a,{variant:"caption",children:"Тариф"}),e.jsx(a,{className:"text-sm",children:"Международное авто — прямая ставка Р·Р° рейс (Турция/Рран/Европа)"})]}):e.jsxs(i,{gap:1,children:[e.jsx(a,{variant:"caption",children:"Режим расчёта"}),e.jsxs(o,{gap:2,children:[e.jsx(v,{type:"button",size:"sm",variant:D==="CONTAINER"?"default":"outline",onClick:()=>P("CONTAINER"),children:"Контейнерный"}),e.jsx(v,{type:"button",size:"sm",variant:D==="DYNAMIC"?"default":"outline",onClick:()=>P("DYNAMIC"),children:"Динамический"})]})]}),e.jsxs(v,{type:"submit",size:"lg",disabled:!H,className:"w-full md:w-auto",children:[e.jsx(Te,{className:"h-4 w-4"}),"Найти варианты",e.jsx(J,{className:"h-4 w-4"})]})]})]})})})})})}),e.jsx(Se,{onDetailsClick:xe}),e.jsx(g,{py:"sm",bg:"base",children:e.jsx(p,{size:"base",children:e.jsx(o,{justify:"center",gap:6,wrap:!0,className:"text-center",children:[{icon:z,label:"Прямые ставки РѕС‚ перевозчиков"},{icon:z,label:"Без скрытых наценок"},{icon:z,label:"Без обязательной регистрации"}].map(t=>{const n=t.icon;return e.jsxs(o,{gap:2,align:"center",children:[e.jsx(n,{className:"h-4 w-4 text-primary"}),e.jsx(a,{variant:"muted",className:"text-sm",children:t.label})]},t.label)})})})}),e.jsx(g,{py:"lg",bg:"surface",children:e.jsx(p,{size:"base",children:e.jsxs(i,{gap:8,children:[e.jsxs(i,{gap:2,className:"text-center max-w-2xl mx-auto",children:[e.jsx(a,{variant:"caption",children:"Как работает калькулятор"}),e.jsx(T,{size:"sm",as:"h2",children:"15 секунд РѕС‚ РІРІРѕРґР° РґРѕ результата"})]}),e.jsx(F,{cols:4,gap:6,children:[{n:"01",title:"Введите РіРѕСЂРѕРґР°",text:"2 490 РіРѕСЂРѕРґРѕРІ отправления Рё назначения. Подсказки РЅР° лету."},{n:"02",title:"Дата Рё тип РіСЂСѓР·Р°",text:"Дата готовности РіСЂСѓР·Р° + тип контейнера или объём LCL."},{n:"03",title:"Сразу РІРёРґРёРј цены",text:"Р’СЃРµ варианты РѕС‚ разных линий Рё перевозчиков — РІ РѕРґРЅРѕРј СЃРїРёСЃРєРµ."},{n:"04",title:"Бронируем",text:"Выбираете оптимальный вариант — оформляем заявку онлайн."}].map(t=>e.jsx(N,{className:"h-full",children:e.jsx(w,{className:"pt-6",children:e.jsxs(i,{gap:3,children:[e.jsx(a,{className:"font-mono text-text-muted/40 text-2xl font-bold","aria-hidden":!0,children:t.n}),e.jsx(a,{weight:"semibold",className:"text-lg",children:t.title}),e.jsx(a,{variant:"muted",children:t.text})]})})},t.n))})]})})}),e.jsx(g,{py:"lg",children:e.jsx(p,{size:"base",children:e.jsxs(F,{cols:2,gap:10,className:"items-center",children:[e.jsxs(i,{gap:4,children:[e.jsxs(o,{gap:2,align:"center",children:[e.jsx(Ie,{className:"h-5 w-5 text-primary"}),e.jsx(a,{variant:"caption",children:"Что включено РІ цену"})]}),e.jsx(T,{size:"sm",as:"h2",children:"Полный расчёт — без СЃСЋСЂРїСЂРёР·РѕРІ"}),e.jsx(a,{variant:"lead",className:"text-text-muted",children:"Р’СЃРµ компоненты цены РІРёРґРЅС‹ РґРѕ РїРѕРґРїРёСЃРё РґРѕРіРѕРІРѕСЂР°. Нет «по запросу», нет скрытых наценок."}),e.jsx(i,{gap:2,children:["РњРѕСЂСЃРєРѕР№/Р¶/Рґ/авто фрахт","Терминальные СЃР±РѕСЂС‹ (THC)","Топливная корректировка (BAF)","Страхование РіСЂСѓР·Р°","Таможенное оформление","Доставка РґРѕ вашего склада"].map(t=>e.jsxs(o,{gap:2,align:"start",children:[e.jsx(z,{className:"h-4 w-4 text-primary shrink-0 mt-0.5"}),e.jsx(a,{className:"text-base",children:t})]},t))})]}),e.jsx(N,{className:"bg-bg-surface border-border",children:e.jsx(w,{className:"pt-6",children:e.jsxs(i,{gap:3,children:[e.jsxs(o,{gap:2,align:"center",children:[e.jsx(Fe,{className:"h-5 w-5 text-primary"}),e.jsx(a,{variant:"caption",children:"Пример расчёта"})]}),e.jsxs(i,{gap:2,children:[[{k:"РњРѕСЂСЃРєРѕР№ фрахт",v:"245 000 в‚Ѕ"},{k:"THC + РїРѕСЂС‚",v:"18 500 в‚Ѕ"},{k:"Таможня",v:"12 000 в‚Ѕ"},{k:"Страхование",v:"5 510 в‚Ѕ"},{k:"Доставка",v:"22 000 в‚Ѕ"}].map(t=>e.jsxs(o,{justify:"between",align:"baseline",children:[e.jsx(a,{className:"text-text-muted",children:t.k}),e.jsx(a,{className:"font-mono tabular-nums",children:t.v})]},t.k)),e.jsx("div",{className:"my-1 h-px bg-border"}),e.jsxs(o,{justify:"between",align:"baseline",children:[e.jsx(a,{weight:"bold",children:"Ртого"}),e.jsx(a,{weight:"bold",className:"font-mono tabular-nums text-lg",children:"303 010 в‚Ѕ"})]})]})]})})})]})})}),e.jsx(g,{py:"lg",bg:"surface",children:e.jsx(p,{size:"base",children:e.jsxs(i,{gap:8,children:[e.jsxs(i,{gap:2,className:"text-center max-w-2xl mx-auto",children:[e.jsx(a,{variant:"caption",children:"Р’РёРґС‹ транспорта"}),e.jsx(T,{size:"sm",as:"h2",children:"Р’СЃРµ направления международной логистики"})]}),e.jsx(F,{cols:4,gap:4,children:[{to:"/services/marine",icon:te,label:"РњРѕСЂСЃРєРёРµ"},{to:"/services/railway",icon:ae,label:"Р–/Р”"},{to:"/services/auto",icon:se,label:"Авто"},{to:"/services/air",icon:Ce,label:"РђРІРёР°"}].map(t=>{const n=t.icon;return e.jsx(Y,{to:t.to,className:"group block",children:e.jsx(N,{className:"h-full hover:shadow-md hover:border-primary/40 transition-all",children:e.jsx(w,{className:"pt-5",children:e.jsxs(i,{gap:2,children:[e.jsx("div",{className:"h-10 w-10 rounded-lg bg-primary-light flex items-center justify-center",children:e.jsx(n,{className:"h-5 w-5 text-primary"})}),e.jsx(a,{weight:"semibold",children:t.label}),e.jsxs(o,{gap:1,align:"center",className:"text-primary text-sm",children:["Подробнее",e.jsx(J,{className:"h-3.5 w-3.5 group-hover:translate-x-1 transition-transform"})]})]})})})},t.to)})})]})})}),e.jsx(g,{py:"md",bg:"base",children:e.jsx(p,{size:"base",children:e.jsx(N,{className:"bg-primary-light/40 border-primary/20 max-w-4xl mx-auto",children:e.jsx(w,{className:"pt-6",children:e.jsxs(o,{gap:4,justify:"between",wrap:!0,align:"center",children:[e.jsxs(i,{gap:1,className:"max-w-xl",children:[e.jsxs(o,{gap:2,align:"center",children:[e.jsx(Ae,{className:"h-5 w-5 text-primary"}),e.jsx(a,{weight:"semibold",children:"РќСѓР¶РЅС‹ дополнительные опции?"})]}),e.jsx(a,{variant:"muted",children:"Расширенные фильтры (supplier filtering, 24-28С‚ контейнеры, complex pricing) — РІ классической версии калькулятора."})]}),e.jsx(v,{asChild:!0,variant:"outline",children:e.jsx(Y,{to:"/",children:"Рљ классическому калькулятору"})})]})})})})})]})}function ee(s,l){var h;const d=new Set;for(const m of s){if(Array.isArray(m.name))for(const u of m.name)typeof u=="string"&&u.trim()&&d.add(u.trim());else typeof m.name=="string"&&m.name.trim()&&d.add(m.name.trim());(h=m.originalName)!=null&&h.trim()&&d.add(m.originalName.trim())}const r=Array.from(d);if(!(l!=null&&l.trim()))return r.slice(0,50);const b=l.trim().toLowerCase();return r.filter(m=>m.toLowerCase().includes(b)).slice(0,50)}export{ee as collectCityNames,We as default};