"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[826],{770:function(e,n,t){t.d(n,{t:function(){return i}});var r=t(467),c=t(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:n}=await (0,r.Z)("/api/v2/currencies/bank-service-points/filter/bank",{method:"POST",body:{filter:e,pagination:{page:0,pageSize:1e3}}});return n},async fetchBankList(e){let{banks:n}=await (0,r.Z)("/api/v1/currencies/bank/filter",{method:"POST",body:e});return{banks:n.map(a)}},async fetchServicePointDetails(e,n){let{currency:t,amount:c}=n;return(0,r.Z)("/api/v1/currencies/bank-service-point/".concat(e,"/details"),{query:{currency:t,amount:c}})},async fetchBankServicePoints(e,n){let{filter:t,pagination:c}=n,{data:a,...i}=await (0,r.Z)("/api/v2/currencies/bank-service-points/filter/bank",{method:"POST",body:{filter:{...t,bankId:e},pagination:c}});return{data:a,...i}}}},9195:function(e,n,t){t.r(n),t.d(n,{CatalogContext:function(){return l},CatalogContextProvider:function(){return f}});var r=t(7437),c=t(2265),a=t(770),i=t(965),o=t(2217),u=t(249),s=t(1883);let l=(0,c.createContext)([s.P,()=>null]);function f(e){let{children:n,initialState:t}=e,[f,d]=(0,c.useState)({...s.P,...t}),v=e=>{d(n=>({...n,...e}))},{cities:p}=(0,c.useContext)(o.ServiceDataContext),[{amount:b,city:k,currency:h,showAtms:P,showBanks:S,metro:y,orderType:m,newUsd:g,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),D=async e=>{let{banks:n}=await a.t.fetchBankList(e),t=n.map(e=>e.bankId).join();d(r=>(t===r.listStructure?E(e):U(),{...r,banks:n,filter:e,listStructure:t}))},x=async e=>{let[n,{banks:t}]=await Promise.all([a.t.fetchServicePointsForMap(e),a.t.fetchBankList(e)]);d(r=>({...r,mapServicePoints:n,filter:e,banks:t}))},A=async(e,n)=>{try{await n(e)}catch(e){console.error(e),d(e=>({...e,rootServicePoints:[],banks:[]}))}};(0,c.useEffect)(()=>{A({...function(e,n,t){var r;let c=e.find(e=>{let{name:t}=e;return t===n}),a=null===(r=c.metro.find(e=>{let{name:n}=e;return n===t}))||void 0===r?void 0:r.id;return{cityId:c.id,metroId:a}}(p,k,y),currency:h,includeAtm:P,includeBranch:S,operationType:m,newUsd:g,zeroFee:w,bankId:C,amountLowerLimit:b},B?x:D)},[k,y,h,S,P,m,B,g,w,C,b]);let T=(0,c.useMemo)(()=>[f,v],[f]);return(0,r.jsx)(l.Provider,{value:T,children:n})}},1883:function(e,n,t){t.d(n,{P:function(){return a}});var r=t(5161),c=t(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,n,t){t.r(n),t.d(n,{FilterContext:function(){return i},FilterContextProvider:function(){return o}});var r=t(7437),c=t(2265),a=t(4655);let i=(0,c.createContext)([a.E,()=>null]);function o(e){let{children:n,initialState:t}=e,[o,u]=(0,c.useState)({...a.E,...t}),s=e=>{u(n=>({...n,...e}))};return(0,c.useEffect)(()=>{o.mapView||s({bank:void 0})},[o.mapView]),(0,r.jsx)(i.Provider,{value:[o,s],children:n})}},4655:function(e,n,t){t.d(n,{E:function(){return a}});var r=t(7764),c=t(5161);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,n,t){t.r(n),t.d(n,{ServiceDataContext:function(){return i},ServiceDataContextProvider:function(){return o}});var r=t(7437),c=t(2265),a=t(770);let i=(0,c.createContext)({cities:[],currencies:[],updateCityList:()=>Promise.resolve()});function o(e){let{children:n,initialState:t}=e,[o,u]=(0,c.useState)(t.cities),s=async e=>{u(await a.t.fetchCities(e))},l=(0,c.useMemo)(()=>({currencies:t.currencies,cities:o,updateCityList:s}),[o,t]);return(0,r.jsx)(i.Provider,{value:l,children:n})}},6962:function(e,n,t){t.r(n),t.d(n,{useGeolocation:function(){return c}});var r=t(2265);function c(e){let[n,t]=(0,r.useState)();return(0,r.useEffect)(()=>{let n=e=>{t(e.coords)};navigator.geolocation.getCurrentPosition(n,void 0,e);let r=navigator.geolocation.watchPosition(n,void 0,e);return()=>navigator.geolocation.clearWatch(r)},[e]),n}},9389:function(e,n,t){t.r(n),t.d(n,{usePrevious:function(){return c}});var r=t(2265);function c(e){let n=(0,r.useRef)(e);return(0,r.useEffect)(()=>{n.current=e},[e]),n.current}},467:function(e,n,t){var r=t(7203);let c=t(1763).Wg.create({baseURL:(0,r.SJ)("NEXT_PUBLIC_MP_SC_INVESTMENT_API_URL"),next:{revalidate:300}});n.Z=c},249:function(e,n,t){t.d(n,{Y:function(){return o}});var r=t(770),c=t(5161),a=t(9018),i=t.n(a);let o=(0,t(2574).U)((e,n)=>({banks:new Map,fetch:async(t,a)=>{let o=n().banks.get(t);e({banks:new Map(n().banks).set(t,{...o||c.X7,isLoading:!0})});try{var u;let{data:n,...s}=await r.t.fetchBankServicePoints(t,{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(t,{servicePoints:[...r,...n],pagination:s,isLoading:!1})}})}catch(r){console.error(r),e({banks:new Map(n().banks).set(t,{...o||c.X7,isLoading:!1})})}},resetBankPages:n=>{e(e=>{let t=new Map(e.banks),r={...t.get(n),pagination:null};return{banks:t.set(n,r)}})},resetBank:n=>{e(e=>{let t=new Map(e.banks);return t.delete(n),{banks:t}})},resetAll:()=>{e({banks:new Map})},syncAll:e=>{n().banks.keys().forEach(t=>{n().resetBankPages(t),n().fetch(t,e)})}}))},7764:function(e,n,t){var r,c,a,i,o,u,s,l,f;t.d(n,{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"},5161:function(e,n,t){t.d(n,{X7:function(){return o},c3:function(){return a},a7:function(){return u},Ck:function(){return d},h0:function(){return i},pY:function(){return r},K5:function(){return l},EE:function(){return f},D7:function(){return s},Pf:function(){return p.Pf},y0:function(){return p.y0},yD:function(){return p.yD},Ui:function(){return v}});let r="/invest/currency";var c=t(7764);let a="Москва",i=10,o={servicePoints:[],pagination:{page:0,pageSize:10,total:0}},u="USD",s={[c.VF.Atm]:"Банкомат",[c.VF.Branch]:"Отделение"},l={code:"RUB",label:"Рубль",symbol:"₽"},f=1e4,d=300,v={MONDAY:"Пн",TUESDAY:"Вт",WEDNESDAY:"Ср",THURSDAY:"Чт",FRIDAY:"Пт",SATURDAY:"Сб",SUNDAY:"Вс"};var p=t(8449)},8449:function(e,n,t){function r(e,n,t){return 0===t?[]:Array.from({length:Math.ceil((n-e)/t)},(n,r)=>e+r*t)}t.d(n,{Pf:function(){return i},y0:function(){return c},yD:function(){return a}});let c=["USD","EUR","CNY"],a=["USD","EUR","GBP","CHF","JPY","CNY","KZT","TRY"],i=r(1,1e3,1).concat(r(1e3,2e3,5)).concat(r(2e3,5e3,10)).concat(r(5e3,1e4,100)).concat(r(1e4,2e4,500)).concat(r(2e4,1e5,1e3)).concat(r(1e5,1e6,1e4)).concat(1e6).concat(r(5e7,1e9,5e7)).concat(1e9);r(1,100,1).concat(r(100,1e3,10)).concat(r(1e3,1e4,100)).concat(r(1e4,15e4,5e3)).concat(15e4).concat(r(2e5,1e6,5e4)).concat(r(1e6,1e7,1e6)).concat(1e7).concat(1e8)},7203:function(e,n,t){t.d(n,{ik:function(){return s},p6:function(){return a},pR:function(){return h},SJ:function(){return o},D7:function(){return f}});var r=t(8947),c=t(309);function a(e,n){let{format:t="dd.MM.yy"}=null!=n?n:{};return"string"==typeof e?(0,r.Z)(new Date(e),t,{locale:c.Z}):(0,r.Z)(e,t,{locale:c.Z})}var i=t(564);function o(e){let n=(0,i.env)(e);if(void 0===n&&window.__ENV&&Object.keys(window.__ENV).length>0)throw Error("".concat(e," is undefined"));return n}var u=t(6731);function s(e,n){return e<.01?"< ".concat((0,u.lb)(.01,n)):(0,u.lb)(e,n)}let l={USD:["доллар","доллара","долларов"],EUR:["евро","евро","евро"],CNY:["юань","юаня","юаней"],JPY:["иена","иены","иен"],GBP:["фунт","фунта","фунтов"],RUB:["рубль","рубля","рублей"]};function f(e,n){return n in l?(0,u._6)(e,l[n],!0):n}let d={USD:"доллары",EUR:"евро",CNY:"юани",JPY:"иены",GBP:"фунты",RUB:"рубли"},v={USD:"долларах",EUR:"евро",CNY:"юанях",JPY:"иенах",GBP:"фунтах",RUB:"рублях"};function p(e){var n;return null!==(n=d[e])&&void 0!==n?n:e}var b=t(9788),k=t.n(b);function h(e,n){let{currency:t,amount:r,amountCurrency:c,newUsd:a,zeroFee:i}=n,o=k()(t),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," — выгодный курс и удобный обмен")}t(5161),t(8449),t(5355);var P=t(3472);(0,P.$)("afebe79bebd9353a6de054a03cbe330a8c4d731a"),(0,P.$)("10a02e2c1d2a92590d7607bc262091fce1e266dd")}}]);