"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[826],{770:function(e,t,n){n.d(t,{t:function(){return i}});var r=n(467),c=n(7764);function a(e){return{...e,type:c.qG.Bank}}let i={fetchCities:async e=>(0,r.Z)("/api/v1/currencies/city",{params:{currency:e}}),fetchCurrencies:async()=>(0,r.Z)("/api/v1/currencies"),async fetchServicePointsForMap(e){let{data:t}=await (0,r.Z)("/api/v2/currencies/bank-service-points/filter/bank",{method:"POST",body:{filter:e,pagination:{page:0,pageSize:1e3}}});return t},async fetchBankList(e){let{banks:t}=await (0,r.Z)("/api/v1/currencies/bank/filter",{method:"POST",body:e});return{banks:t.map(a)}},async fetchServicePointDetails(e,t){let{currency:n,amount:c}=t;return(0,r.Z)("/api/v1/currencies/bank-service-point/".concat(e,"/details"),{query:{currency:n,amount:c}})},async fetchBankServicePoints(e,t){let{filter:n,pagination:c}=t,{data:a,...i}=await (0,r.Z)("/api/v2/currencies/bank-service-points/filter/bank",{method:"POST",body:{filter:{...n,bankId:e},pagination:c}});return{data:a,...i}}}},9195:function(e,t,n){n.r(t),n.d(t,{CatalogContext:function(){return l},CatalogContextProvider:function(){return f}});var r=n(7437),c=n(2265),a=n(770),i=n(965),o=n(2217),u=n(249),s=n(1883);let l=(0,c.createContext)([s.P,()=>null]);function f(e){let{children:t,initialState:n}=e,[f,d]=(0,c.useState)({...s.P,...n}),v=e=>{d(t=>({...t,...e}))},{cities:p}=(0,c.useContext)(o.ServiceDataContext),[{amount:b,city:k,currency:h,showAtms:S,showBanks:P,metro:m,orderType:g,newUsd:y,zeroFee:w,bank:C,mapView:B}]=(0,c.useContext)(i.FilterContext),E=(0,u.Y)(e=>e.syncAll),U=(0,u.Y)(e=>e.resetAll),x=async e=>{let{banks:t}=await a.t.fetchBankList(e),n=t.map(e=>e.bankId).join();d(r=>(n===r.listStructure?E(e):U(),{...r,banks:t,filter:e,listStructure:n}))},A=async e=>{let[t,{banks:n}]=await Promise.all([a.t.fetchServicePointsForMap(e),a.t.fetchBankList(e)]);d(r=>({...r,mapServicePoints:t,filter:e,banks:n}))},D=async(e,t)=>{try{await t(e)}catch(e){console.error(e),d(e=>({...e,rootServicePoints:[],banks:[]}))}};(0,c.useEffect)(()=>{D({...function(e,t,n){var r;let c=e.find(e=>{let{name:n}=e;return n===t}),a=null===(r=c.metro.find(e=>{let{name:t}=e;return t===n}))||void 0===r?void 0:r.id;return{cityId:c.id,metroId:a}}(p,k,m),currency:h,includeAtm:S,includeBranch:P,operationType:g,newUsd:y,zeroFee:w,bankId:C,amountLowerLimit:b},B?A:x)},[k,m,h,P,S,g,B,y,w,C,b]);let M=(0,c.useMemo)(()=>[f,v],[f]);return(0,r.jsx)(l.Provider,{value:M,children:t})}},1883:function(e,t,n){n.d(t,{P:function(){return a}});var r=n(3669),c=n(4655);let a={banks:[],mapServicePoints:[],selectedMapServicePoint:void 0,selectedServicePointDetails:void 0,listStructure:"",filter:{amountLowerLimit:c.E.amount,currency:r.a7,includeAtm:c.E.showAtms,includeBranch:c.E.showBanks,operationType:c.E.orderType}}},965:function(e,t,n){n.r(t),n.d(t,{FilterContext:function(){return i},FilterContextProvider:function(){return o}});var r=n(7437),c=n(2265),a=n(4655);let i=(0,c.createContext)([a.E,()=>null]);function o(e){let{children:t,initialState:n}=e,[o,u]=(0,c.useState)({...a.E,...n}),s=e=>{u(t=>({...t,...e}))};return(0,c.useEffect)(()=>{o.mapView||s({bank:void 0})},[o.mapView]),(0,r.jsx)(i.Provider,{value:[o,s],children:t})}},4655:function(e,t,n){n.d(t,{E:function(){return a}});var r=n(7764),c=n(3669);let a={city:c.c3,metro:void 0,currency:c.a7,currencyPair:[c.a7,c.K5.code],amount:100,amountCurrency:c.a7,showBanks:!0,showAtms:!0,mapView:!1,orderType:r.mr.Buy,newUsd:!1,zeroFee:!1,bank:void 0}},2217:function(e,t,n){n.r(t),n.d(t,{ServiceDataContext:function(){return i},ServiceDataContextProvider:function(){return o}});var r=n(7437),c=n(2265),a=n(770);let i=(0,c.createContext)({cities:[],currencies:[],updateCityList:()=>Promise.resolve()});function o(e){let{children:t,initialState:n}=e,[o,u]=(0,c.useState)(n.cities),s=async e=>{u(await a.t.fetchCities(e))},l=(0,c.useMemo)(()=>({currencies:n.currencies,cities:o,updateCityList:s}),[o,n]);return(0,r.jsx)(i.Provider,{value:l,children:t})}},6962:function(e,t,n){n.r(t),n.d(t,{useGeolocation:function(){return c}});var r=n(2265);function c(e){let[t,n]=(0,r.useState)();return(0,r.useEffect)(()=>{let t=e=>{n(e.coords)};navigator.geolocation.getCurrentPosition(t,void 0,e);let r=navigator.geolocation.watchPosition(t,void 0,e);return()=>navigator.geolocation.clearWatch(r)},[e]),t}},9389:function(e,t,n){n.r(t),n.d(t,{usePrevious:function(){return c}});var r=n(2265);function c(e){let t=(0,r.useRef)(e);return(0,r.useEffect)(()=>{t.current=e},[e]),t.current}},467:function(e,t,n){var r=n(7203);let c=n(1763).Wg.create({baseURL:(0,r.SJ)("NEXT_PUBLIC_MP_SC_INVESTMENT_API_URL"),next:{revalidate:300}});t.Z=c},249:function(e,t,n){n.d(t,{Y:function(){return o}});var r=n(770),c=n(3669),a=n(9018),i=n.n(a);let o=(0,n(2574).U)((e,t)=>({banks:new Map,fetch:async(n,a)=>{let o=t().banks.get(n);e({banks:new Map(t().banks).set(n,{...o||c.X7,isLoading:!0})});try{var u;let{data:t,...s}=await r.t.fetchBankServicePoints(n,{filter:a,pagination:{page:i()(null==o?void 0:null===(u=o.pagination)||void 0===u?void 0:u.page)?o.pagination.page+1:0,pageSize:c.h0}});e(e=>{let r=s.page>0&&(null==o?void 0:o.servicePoints)?o.servicePoints:[];return{banks:new Map(e.banks).set(n,{servicePoints:[...r,...t],pagination:s,isLoading:!1})}})}catch(r){console.error(r),e({banks:new Map(t().banks).set(n,{...o||c.X7,isLoading:!1})})}},resetBankPages:t=>{e(e=>{let n=new Map(e.banks),r={...n.get(t),pagination:null};return{banks:n.set(t,r)}})},resetBank:t=>{e(e=>{let n=new Map(e.banks);return n.delete(t),{banks:n}})},resetAll:()=>{e({banks:new Map})},syncAll:e=>{t().banks.keys().forEach(n=>{t().resetBankPages(n),t().fetch(n,e)})}}))},7764:function(e,t,n){var r,c,a,i,o,u,s,l,f;n.d(t,{xJ:function(){return r},qG:function(){return a},mr:function(){return o},T4:function(){return i},VF:function(){return c}}),(u=r||(r={})).Banner="banner",u.Block="block",u.Breadcrumbs="breadcrumbs",u.Button="button",u.Caption="caption",u.Chart="chart",u.Checkbox="checkbox",u.Chips="chips",u.Collapse="collapse",u.Dropdown="dropdown",u.Form="form",u.Header="header",u.Icon="icon",u.Image="image",u.Input="input",u.Link="link",u.List="list",u.Modal="modal",u.Radiobutton="radiobutton",u.Select="select",u.Slider="slider",u.Switcher="switcher",u.Table="table",u.Tabs="tabs",u.Text="text",u.Tile="tile",u.Toggle="toggle",(s=c||(c={})).Atm="ATM",s.Branch="BRANCH",(l=a||(a={}))[l.ServicePoint=0]="ServicePoint",l[l.Bank=1]="Bank",(i||(i={})).Service="service",(f=o||(o={})).Buy="BUY",f.Sell="SELL"},3669:function(e,t,n){n.d(t,{X7:function(){return i},c3:function(){return c},a7:function(){return o},Ck:function(){return f},h0:function(){return a},K5:function(){return s},EE:function(){return l},D7:function(){return u},Ui:function(){return d}});var r=n(7764);let c="Москва",a=10,i={servicePoints:[],pagination:{page:0,pageSize:10,total:0}},o="USD",u={[r.VF.Atm]:"Банкомат",[r.VF.Branch]:"Отделение"},s={code:"RUB",label:"Рубль",symbol:"₽"},l=1e4,f=300,d={MONDAY:"Пн",TUESDAY:"Вт",WEDNESDAY:"Ср",THURSDAY:"Чт",FRIDAY:"Пт",SATURDAY:"Сб",SUNDAY:"Вс"};n(8449)},8449:function(){function e(e,t,n){return 0===n?[]:Array.from({length:Math.ceil((t-e)/n)},(t,r)=>e+r*n)}e(1,1e3,1).concat(e(1e3,2e3,5)).concat(e(2e3,5e3,10)).concat(e(5e3,1e4,100)).concat(e(1e4,2e4,500)).concat(e(2e4,1e5,1e3)).concat(e(1e5,1e6,1e4)).concat(1e6).concat(e(5e7,1e9,5e7)).concat(1e9),e(1,100,1).concat(e(100,1e3,10)).concat(e(1e3,1e4,100)).concat(e(1e4,15e4,5e3)).concat(15e4).concat(e(2e5,1e6,5e4)).concat(e(1e6,1e7,1e6)).concat(1e7).concat(1e8)},7203:function(e,t,n){n.d(t,{ik:function(){return s},p6:function(){return a},pR:function(){return h},SJ:function(){return o}});var r=n(8947),c=n(309);function a(e,t){let{format:n="dd.MM.yy"}=null!=t?t:{};return"string"==typeof e?(0,r.Z)(new Date(e),n,{locale:c.Z}):(0,r.Z)(e,n,{locale:c.Z})}var i=n(564);function o(e){let t=(0,i.env)(e);if(void 0===t&&window.__ENV&&Object.keys(window.__ENV).length>0)throw Error("".concat(e," is undefined"));return t}var u=n(6731);function s(e,t){return e<.01?"< ".concat((0,u.lb)(.01,t)):(0,u.lb)(e,t)}let l={USD:["доллар","доллара","долларов"],EUR:["евро","евро","евро"],CNY:["юань","юаня","юаней"],JPY:["иена","иены","иен"],GBP:["фунт","фунта","фунтов"],RUB:["рубль","рубля","рублей"]};function f(e,t){return t in l?(0,u._6)(e,l[t],!0):t}let d={USD:"доллары",EUR:"евро",CNY:"юани",JPY:"иены",GBP:"фунты",RUB:"рубли"},v={USD:"долларах",EUR:"евро",CNY:"юанях",JPY:"иенах",GBP:"фунтах",RUB:"рублях"};function p(e){var t;return null!==(t=d[e])&&void 0!==t?t:e}var b=n(9788),k=n.n(b);function h(e,t){let{currency:n,amount:r,amountCurrency:c,newUsd:a,zeroFee:i}=t,o=k()(n),u=k()(c);if(r){if(c){var s;return"".concat(r," ").concat(f(r,u)," в ").concat(null!==(s=v[o])&&void 0!==s?s:o," по выгодному курсу на сегодня - купить, обменять ").concat(u," на ").concat(o)}return"".concat(r," ").concat(f(r,o)," в рублях по выгодному курсу на сегодня — купить, обменять ").concat(o," на RUB")}return i?"Купить ".concat(a?"новые ":"").concat(p(o)," без комиссии — курс ").concat(o," в ").concat(e.caseName):a?"Купить новые доллары в ".concat(e.caseName,". USD доллары нового образца"):"Купить ".concat(p(o)," в ").concat(e.caseName," — выгодный курс и удобный обмен")}n(3669),n(8449),n(5355);var S=n(3472);(0,S.$)("afebe79bebd9353a6de054a03cbe330a8c4d731a"),(0,S.$)("10a02e2c1d2a92590d7607bc262091fce1e266dd")}}]);