(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[675],{6129:function(e,t,n){"use strict";n.d(t,{Z:function(){return l}});var r=n(7437),a=n(7301),i=n(3167),s=n(2265),c=n(752),o=n.n(c);function l(e){let{logo:t,text:n,size:c=40,className:l}=e,[d,_]=(0,s.useState)(!1);return d||!t?(0,r.jsx)("div",{className:(0,i.Z)(o().logo_error,l),style:{width:c,height:c},children:(0,r.jsx)(a.WG,{size:c>40?"32":"20",weight:"bold",children:n})}):(0,r.jsx)("div",{className:l,children:(0,r.jsx)("img",{src:t,alt:"Лого",width:c,height:c,onError:()=>_(!0)})})}},6765:function(e,t,n){"use strict";n.d(t,{V:function(){return a}});var r=n(564);let a={NEXT_PUBLIC_API_URL:(0,r.env)("NEXT_PUBLIC_API_URL"),NEXT_PUBLIC_BASE_URL:(0,r.env)("NEXT_PUBLIC_BASE_URL"),NEXT_PUBLIC_BASE_LK_URL:(0,r.env)("NEXT_PUBLIC_BASE_LK_URL"),NEXT_PUBLIC_MP_GROWTH_API_URL:(0,r.env)("NEXT_PUBLIC_MP_GROWTH_API_URL"),NEXT_PUBLIC_S3_ASSETS:(0,r.env)("NEXT_PUBLIC_S3_ASSETS"),NEXT_PUBLIC_S3_ASSETS_URL:(0,r.env)("NEXT_PUBLIC_S3_ASSETS_URL"),NEXT_PUBLIC_ISS_WSS:(0,r.env)("NEXT_PUBLIC_ISS_WSS"),NEXT_PUBLIC_ISS_LOGIN:(0,r.env)("NEXT_PUBLIC_ISS_LOGIN"),NEXT_PUBLIC_ISS_PASSWORD:(0,r.env)("NEXT_PUBLIC_ISS_PASSWORD"),NEXT_PUBLIC_GTM_ID:(0,r.env)("NEXT_PUBLIC_GTM_ID"),NEXT_PUBLIC_MTM_URL:(0,r.env)("NEXT_PUBLIC_MTM_URL"),NEXT_PUBLIC_MTM_ID:(0,r.env)("NEXT_PUBLIC_MTM_ID"),NEXT_PUBLIC_FEATURE_TOGGLE_BOND_PAGE:"true"===(0,r.env)("NEXT_PUBLIC_FEATURE_TOGGLE_BOND_PAGE"),NEXT_PUBLIC_FEATURE_TOGGLE_STOCK_PAGE:"true"===(0,r.env)("NEXT_PUBLIC_FEATURE_TOGGLE_STOCK_PAGE"),NEXT_PUBLIC_FEATURE_TOGGLE_FUND_PAGE:"true"===(0,r.env)("NEXT_PUBLIC_FEATURE_TOGGLE_FUND_PAGE"),NEXT_PUBLIC_FEATURE_TOGGLE_CURRENCY_PAGE:"true"===(0,r.env)("NEXT_PUBLIC_FEATURE_TOGGLE_CURRENCY_PAGE"),NEXT_PUBLIC_FEATURE_TOGGLE_METAL_PAGE:"true"===(0,r.env)("NEXT_PUBLIC_FEATURE_TOGGLE_METAL_PAGE"),NEXT_PUBLIC_FEATURE_TOGGLE_NEW_BANNER_FINAM:"true"===(0,r.env)("NEXT_PUBLIC_FEATURE_TOGGLE_NEW_BANNER_FINAM")}},8823:function(e,t,n){"use strict";n.r(t),n.d(t,{RatingBondsResult:function(){return v}});var r=n(7437),a=n(2833),i=n(2265),s=n(6765);let c=async function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"json",n=s.V.NEXT_PUBLIC_MP_GROWTH_API_URL,r=null,a=null;try{let a=await fetch("".concat(n).concat(e),{method:"GET"});if(!a.ok)throw Error("Ошибка запроса");r=await a[t]()}catch(e){a=e instanceof Error?e.message:"error"}return{data:r,error:a}};var o=n(1810),l=n(6341),d=n.n(l);let _=()=>{let[e,t]=(0,i.useState)(!1);return(0,r.jsxs)("div",{className:d().container,children:[(0,r.jsx)(a.xv,{className:d().text,fontFamily:"secondary",weight:"regular",children:"Данные о рейтингах предоставляются с задержкой до 24 часов (без учета выходных и праздничных дней)"}),(0,r.jsxs)(a.xv,{className:d().text,children:["Данные предоставлены",(0,r.jsx)(o.Link,{href:"https://www.ratings.ru/",target:"_blank",children:"\xa0www.raiting.ru"})]}),(0,r.jsxs)(a.xv,{className:d().text,children:["Данные предоставлены",(0,r.jsx)(o.Link,{href:"https://www.acra-ratings.ru/",target:"_blank",children:"\xa0www.acra-raitings.ru.\xa0"}),(0,r.jsx)("span",{onClick:function(){t(e=>!e)},className:d().more,children:"Прочитать подробнее"})]}),e&&(0,r.jsxs)(a.xv,{className:d().hidden_text,children:["Представленная информация, включая, помимо прочего, кредитные и некредитные рейтинги, факторы рейтинговой оценки, подробные результаты кредитного анализа, методологии, модели, прогнозы, аналитические обзоры и материалы и иную информацию, размещенную на сайте АКРА (далее - Информация), а такжe программное обеспечение сайта и иные приложения предназначены для использования исключительно в ознакомительных целях. Настоящая Информация не может модифицироваться, воспроизводиться, распространяться любым способом и в любой форме ни полностью, ни частично в рекламных материалах, в рамках мероприятий по связям с общественностью, в сводках новостей, в коммерческих материалах пли отчетах без предварительного письменного согласия со стороны АКРА и ссылки на источник. Использование Информации в нарушение указанных требований и в незаконных цепях запрещено. Кредитные рейтинги АКРА отражают мнение АКРА относительно способности рейтингyемого лица исполнять принятые на себя финансовые обязательства или относительно кредитного риска отдельных финансовых обязательств и инструментов рейтингyемого лица на момент опубликования соответствующей Информации. Некредитные рейтинги АКРА отражают мнение АКРА о некоторых некредитных рисках, принимаемых на себя заинтересованными лицами при взаимодействии с рейтингyемым лицом. Присваиваемые кредитные и некредитные рейтинги отражают всю относящуюся к рейтингyемому лицу и находящуюся в распоряжении АКРА существенную информацию (включая информацию, полученную от третьих лиц), качество и достоверность которой АКРА сочло надлежащими. АКРА не несет ответственности за достоверность информации, предоставленной клиентами или связанными третьими сторонами. АКРА не осуществляет аудита или иной проверки представленных данных и не несет ответственности за их точность и полнотy. АКРА проводит рейтинговый анализ представленной клиентами информации с использованием собственных методологий. Тексты утвержденных методологий доступны на сайте АКРА по адресу:",(0,r.jsx)(o.Link,{href:"https://www.acra-ratings.ru/criteria",target:"_blank",children:"\xa0www.acra-rаtings.ru/сritегiа.\xa0"}),"Единственным источником, отражающим актуальную Информацию, в том числе о кредитных и некредитных рейтингах, присваиваемых АКРА, является официальный интернет-сайт АКРА -",(0,r.jsx)(o.Link,{href:"https://www.acra-ratings.ru/",target:"_blank",children:"\xa0www.асrа-rаtings.ru.\xa0"}),"Информация представляется на условии \xabкак ecть\xbb. Информация должна рассматриваться пользователями исключительно как мнение АКРА и не является советом, рекомендацией, предложением покупать, держать или продавать ценные бумаги или любые финансовые инструменты, офертой или рекламой. АКРА, еrо работники, а также аффилированные с АКРА лица (далее - Стороны АКРА) Не предоставляют никакой выраженной в какой-либо форме или каким-либо образом непосредственной или или подразумеваемой rарантии в отношении точности, своевременности, полноты или пригодности Информации для принятия инвестиционных или каких-либо иных решений. АКРА не выполняет функции фидуциария, аудитора, инвестиционноrо или финансовоrо консультанта. Информация должна расцениваться исключительно как один из факторов, влияющих на инвестиционное или ионое бизнес-решение, принимаемое любым лицом, использующим ее. Каждому из таких лиц необходимо провести собственное исследование и дать собственную оценку участнику финансового рынка, а также эмитенту и его долговым обязательствам, которые могут рассматриваться в качестве объекта покупки, продажи или владения. Пользователи Информации должны принимать решения самостоятельно, привлекая собственных независимых консультантов, если сочтут это необходимым. Стороны АКРА не несут ответственности за любые действия, совершенные пользователями на основе данной Информации. Стороны АКРА ни при каких обстоятельствах не несут ответственности за любые прямые, косвенные или случайные убытки и издержки, возникшие у пользователей в связи с интерпретациями, выводами, рекомендациями и иными действиями третьих лиц, прямо или косвенно связанными с такой информацией. Информация, предоставляемая АКРА, актуальна на датy подготовки и опубликования материалов и может изменяться АКРА в дальнейшем. АКРА не обязано обновлять, изменять или дополнять Информацию или уведомлять кого-либо об этом, если это не было зафиксировано отдельно в письменном соглашении или не требуется в соответствии с законодательством Российской Федерации. АКРА не оказывает консультационных услуг. АКРА может оказывать дополнительные услуги, если это не создает конфликта интересов с рейтинговой деятельностью. АКРА и его работники предпринимают все разумные меры для защиты всей имеющейся в их распоряжении конфиденциальной или иной существенной непубличной информации от мошеннических действий, кражи, неправомерного использования или непреднамеренного раскрытия. АКРА обеспечивает защиту конфиденциальной информации, полученной в процессе деятельности, в соответствии с требованиями законодательства Российской Федерации."]})]})};var u=n(519),h=n.n(u);let m=e=>{let{value:t}=e;return(0,r.jsxs)("li",{className:h().item,children:[(0,r.jsxs)("div",{className:h().block,children:[(0,r.jsxs)(o.Link,{href:t.agencyUrl,className:h().text,children:[t.agencyName,"\xa0"]}),(0,r.jsxs)(a.xv,{className:h().text,weight:"regular",fontFamily:"secondary",children:["от ",t.ratingDate.split("-").reverse().join(".")]})]}),(0,r.jsx)(a.xv,{className:h().text,weight:"regular",fontFamily:"secondary",children:t.ratingLevel})]})};var f=n(7184),x=n.n(f);let v=e=>{let{ticker:t}=e,[n,s]=(0,i.useState)([]),[o,l]=(0,i.useState)([]);return((0,i.useEffect)(()=>{(async function(){if(!t)return;let{data:e}=await c("/api/v1/brokerage/rating/".concat(t.split(".").pop(),"?ticker=").concat(t.split(".").pop()));e&&(e.ratingResponse.issuerRating&&s(e.ratingResponse.issuerRating),e.ratingResponse.securityRating&&l(e.ratingResponse.securityRating))})()},[t]),(null==n?void 0:n.length)||(null==o?void 0:o.length))?(0,r.jsxs)(a.Zb,{children:[n.length>0&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(a.xv,{fontFamily:"primary",weight:"medium",className:x().text,children:"Кредитный рейтинг эмитента"}),(0,r.jsx)("ul",{className:x().list,children:n.map(e=>(0,r.jsx)(m,{value:e},e.agencyName+e.ratingDate))})]}),o.length>0&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(a.xv,{fontFamily:"primary",weight:"medium",className:x().text,children:"Кредитный рейтинг выпуска облигаций"}),(0,r.jsx)("ul",{className:x().list,children:o.map(e=>(0,r.jsx)(m,{value:e},e.agencyName+e.ratingDate))})]}),(0,r.jsx)(_,{})]}):(0,r.jsx)(r.Fragment,{})}},761:function(e,t,n){"use strict";n.r(t),n.d(t,{StompProvider:function(){return x},useStomp:function(){return f}});var r=n(7437),a=n(2863),i=n(2265),s=n(6765),c=n(2696);let o=(e,t,n)=>{var r;null===(r=e.client)||void 0===r||r.subscribe("currency"!==t&&"metal"!==t?"MXSE.orderbooks":"MXCX.orderbooks",()=>{},{selector:'ticker="'.concat(n,'"')})},l=e=>{try{let t=new TextDecoder("utf-8").decode(e).split("\n"),n=t.findIndex(e=>""===e.trim()),r=(n>=0?t.slice(n+1):t).join("").replace("\x00","").trim();if(!r)return;return JSON.parse(r)}catch(e){console.info("Ошибка обработки сообщения:",e)}};function d(e){return e.data.map(e=>({close:e[5][0],high:e[3][0],low:e[4][0],open:e[2][0],timestamp:+new Date(e[0]),volume:e[7]}))}let _=e=>{let{parsedData:t,setCandles:n,setLastCandle:r}=e;(null==t?void 0:t.columns[0])==="FROM"&&"snapshot"===t.properties.type&&(n(d(t)),r(d(t).at(-1)))},u=e=>{let{parsedData:t,setLastCandle:n}=e;(null==t?void 0:t.columns[0])==="FROM"&&"updates"===t.properties.type&&n(d(t)[0])},h=e=>{let{parsedData:t,setBuySellVolume:n}=e;if((null==t?void 0:t.columns[0])==="BUYSELL"){let e=0,r=0;t.data.forEach(t=>{"B"===t[0]&&(e+=t[2]),"S"===t[0]&&(r+=t[2])}),n([e,r])}},m=(0,i.createContext)({}),f=()=>{let e=(0,i.useContext)(m);if(!e)throw Error("Нет контекста stompContext");return e},x=e=>{let{children:t,ticker:n,tickerType:d}=e,f=(0,i.useRef)({}),[x,v]=(0,i.useState)(),[p,N]=(0,i.useState)(),[A,g]=(0,i.useState)();(0,i.useEffect)(()=>{let e=f.current;e.client=new a.K({brokerURL:s.V.NEXT_PUBLIC_ISS_WSS,connectHeaders:{login:s.V.NEXT_PUBLIC_ISS_LOGIN,passcode:s.V.NEXT_PUBLIC_ISS_PASSWORD,domain:"DEMO",language:"ru"}}),e.client.onConnect=()=>{var t;let r=null===(t=f.current.client)||void 0===t?void 0:t.webSocket;if(!r){console.error("WebSocket не доступен");return}f.current.client&&((0,c.S)({clientRef:e,interval:"D1",ticker:n,tickerType:d}),o(e,d,n),e.client&&(r.onmessage=e=>{if(!e.data)return;let t=l(e.data);_({setCandles:v,setLastCandle:N,parsedData:t}),u({setCandles:v,setLastCandle:N,parsedData:t}),h({setBuySellVolume:g,parsedData:t})}))},e.client.onStompError=e=>{console.error(" STOMP error:",e.headers.message)},e.client.activate()},[n,d]);let C=(0,i.useMemo)(()=>({stomp:f,candles:x,lastCandle:p,buySellVolume:A}),[x,p,A]);return(0,r.jsx)(m.Provider,{value:C,children:t})}},2636:function(e,t,n){"use strict";n.r(t),n.d(t,{BondAboutInstrument:function(){return c}});var r=n(7437),a=n(7301),i=n(6919),s=n.n(i);let c=e=>{let{tickerInfo:t,tickerInfoError:n}=e;return n?(0,r.jsx)(r.Fragment,{}):(0,r.jsxs)(a.Zb,{className:s().container,children:[(0,r.jsx)(a.WG,{fontFamily:"primary",className:s().header,children:"Об инструменте"}),(0,r.jsx)(a.WG,{fontFamily:"secondary",className:s().info,children:t})]})}},5626:function(e,t,n){"use strict";n.r(t),n.d(t,{BondChart:function(){return $}});var r=n(7437),a=n(7301),i=n(3871),s=n(2265),c=n(761),o=n(1810),l=n(3167),d=n(6129),_=n(6765),u=n(1018),h=n(8024),m=n.n(h);let f=e=>e?64:36,x=e=>{var t;let{sessionCard:n,tickerType:i,tickerInfo:s}=e;return(0,r.jsx)("div",{className:m().container,children:(0,r.jsxs)("div",{className:m().nameBond,children:["bond"===i&&s&&(0,r.jsx)(d.Z,{text:s.searchResult.Bond[0].shortName[0],logo:s.searchResult.Bond[0].logoUrl,size:f(!0)}),"bond"!==i&&s&&(0,r.jsx)(d.Z,{text:s.searchResult["".concat(i[0].toUpperCase()+i.slice(1))][0].shortName[0],logo:s.searchResult["".concat(i[0].toUpperCase()+i.slice(1))][0].logoUrl,size:f(!0)}),"bond"===i&&n&&(0,r.jsxs)("div",{className:m().iconLabel,children:[(0,r.jsx)(a.WG,{fontFamily:"primary",className:m().shortName,children:n.shortName}),(0,r.jsx)(a.WG,{fontFamily:"primary",className:m().shortNumber,children:"isin"in n&&n.isin})]}),"bond"!==i&&n&&(0,r.jsxs)("div",{className:m().iconLabel,children:[(0,r.jsx)(a.WG,{fontFamily:"primary",className:m().shortName,children:n.shortName}),(0,r.jsx)(a.WG,{fontFamily:"primary",className:m().shortNumber,children:null==s?void 0:null===(t=s.searchResult["".concat(i[0].toUpperCase()+i.slice(1))][0].tickerCode)||void 0===t?void 0:t.split(".").at(-1)})]}),"bond"===i&&n&&(0,r.jsxs)("div",{className:m().tickerIncomeContainer,children:[(0,r.jsxs)(a.WG,{fontFamily:"primary",className:m().tickerIncome,children:[n&&"yieldToMaturity"in n&&n.yieldToMaturity,"%"]}),(0,r.jsx)(a.WG,{fontFamily:"primary",className:m().tickerIncomeText,children:"доходность"})]}),n&&(0,r.jsxs)("div",{className:(0,l.Z)(m().openAccount,{[m().openAccountNotBond]:"bond"!==i}),children:[(0,r.jsx)(o.Link,{href:"".concat(_.V.NEXT_PUBLIC_BASE_URL,"/brokers/otkryt-brokerskiy-schet"),children:(0,r.jsx)(o.Button,{size:"s",children:"Открыть счёт"})}),(0,r.jsxs)(a.WG,{className:m().lotSize,children:[" 1 лот = ",(0,u.P)(n.lotSize,i)]})]})]})})};var v=n(8328),p=n.n(v),N=n(2696);let A=e=>"D1"===e||"W1"===e||"m1"===e,g=e=>"M1"===e||"M10"===e||"H1"===e||"D1"===e;var C=n(8715),S=n.n(C);let E=[{id:"D1",label:"День"},{id:"W1",label:"Неделя"},{id:"m1",label:"Месяц"}],y=[{id:"D1",label:"Д"},{id:"W1",label:"Н"},{id:"m1",label:"М"}],I=[{id:"M1",label:"М1"},{id:"M10",label:"М10"},{id:"H1",label:"Час"},{id:"D1",label:"День"}],j=[{id:"M1",label:"М1"},{id:"M10",label:"М10"},{id:"H1",label:"Ч"},{id:"D1",label:"Д"}],B=e=>{let{className:t,stomp:n,ticker:a,typeChart:s,tickerType:c,setIsLoadingChart:d,chart:_}=e;function u(e){n&&(null==_?void 0:_.current)&&(d(!0),(0,i.B9)(_.current),(0,N.S)({clientRef:n.current,interval:e,ticker:a,tickerType:c}))}return s.current.chartType===i.KH.Area?(0,r.jsxs)("div",{className:(0,l.Z)(S().container,t),children:[(0,r.jsx)(o.Chips,{className:S().desktop,chips:E,value:E[0].id,activeVariant:"primary",onChipClick:e=>{A(e)&&u(e)}}),(0,r.jsx)(o.Chips,{className:S().mobile,size:"l",chips:y,value:y[0].id,activeVariant:"primary",onChipClick:e=>{A(e)&&u(e)}})]}):(0,r.jsxs)("div",{className:(0,l.Z)(S().container,t),children:[(0,r.jsx)(o.Chips,{className:S().desktop,chips:I,value:I[0].id,onChipClick:e=>{g(e)&&u(e)}}),(0,r.jsx)(o.Chips,{className:S().mobile,size:"l",chips:j,value:I[0].id,onChipClick:e=>{g(e)&&u(e)}})]})};var T=n(703),b={src:"/brokers/_next/static/media/area.b2ebd908.png",height:128,width:128,blurDataURL:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAMAAADz0U65AAAAHlBMVEX////v8PDX19fw8PH09PWSlJni4uPNztDDxMe+v8IDEVnEAAAACnRSTlP/xifI//////7+y3xCaQAAAAlwSFlzAAALEwAACxMBAJqcGAAAADFJREFUeJw9izESADAIwkCh1v9/uKdDWTIkIChJGSB2hAZ9AUE6Xtg+I7pqxY8j5854FxUAqewpyzcAAAAASUVORK5CYII=",blurWidth:8,blurHeight:8},L={src:"/brokers/_next/static/media/candles.985c23b8.png",height:128,width:128,blurDataURL:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAMAAADz0U65AAAAJ1BMVEX09PXu7+/7+vvX19fn6On///+0tbnKy82Ag4i9v8HZ2tyVlpyipKnRSqziAAAADXRSTlP+xv4n/v/////////+qcgsswAAAAlwSFlzAAALEwAACxMBAJqcGAAAADZJREFUeJwFwYcBADAIwzAHCHT9f28lUgGhRO5yWUStPtcQ0/3uBHjtPdvgE73GyOF6FikA5QcnsQEZA08NYAAAAABJRU5ErkJggg==",blurWidth:8,blurHeight:8},R=n(6156),P=n.n(R);let U=e=>{let{chart:t,className:n,typeChart:a,stomp:s,ticker:c,tickerType:o,setIsLoadingChart:d}=e;return(0,r.jsxs)("div",{className:(0,l.Z)(P().container,null!=n?n:""),children:[(!a||a.current.chartType===i.KH.Area)&&(0,r.jsx)(T.default,{className:P().imgChange,width:32,src:L,alt:"Смена графика",onClick:()=>{s&&(null==t?void 0:t.current)&&((0,i.B9)(t.current),d(!0),(0,N.S)({clientRef:s.current,interval:"M1",ticker:c,tickerType:o}),a.current.changeType())}}),a.current.chartType===i.KH.CandleSolid&&(0,r.jsx)(T.default,{className:P().imgChange,width:32,src:b,alt:"Смена графика",onClick:()=>{s&&(null==t?void 0:t.current)&&((0,i.B9)(t.current),d(!0),(0,N.S)({clientRef:s.current,interval:"D1",ticker:c,tickerType:o}),a.current.changeType())}})]})},k={chartType:i.KH.Area,changeType(){if(this.chartType===i.KH.Area){this.chartType=i.KH.CandleSolid;return}this.chartType=i.KH.Area}};var w=n(4083),D=n.n(w);let O=e=>{let{sessionCard:t,tickerType:n}=e;return(0,r.jsxs)("div",{className:D().container,children:[(0,r.jsx)(a.WG,{className:D().info,fontFamily:"secondary",children:"Данные с задержкой 15 минут"}),t&&(0,r.jsxs)("div",{className:D().buySection,children:[(0,r.jsx)(o.Link,{href:"".concat(_.V.NEXT_PUBLIC_BASE_URL,"/brokers/otkryt-brokerskiy-schet"),className:D().openAccount,children:(0,r.jsx)(o.Button,{className:D().openAccount,children:"Открыть счёт"})}),(0,r.jsxs)(a.WG,{className:D().lotSize,children:[" 1 лот = ",(0,u.P)(t.lotSize,n)]})]})]})};var F=n(2567),G=n.n(F),X=n(2833);let M=e=>{let{tickerType:t,sessionCard:n}=e,{lastCandle:a}=(0,c.useStomp)(),[i,o]=(0,s.useState)(()=>!1);if((0,s.useEffect)(()=>{if(!a)return;let e=document.getElementById("last-price-server-component");null==e||e.classList.add(G().hidden),o(!0)},[a]),!n||!a)return(0,r.jsx)("div",{});let d="faceValueOnSettleDate"in n?n.faceValueOnSettleDate:null;return(0,r.jsxs)("div",{className:(0,l.Z)(G().container,{["".concat(G().show)]:i,["".concat(G().hidden)]:!i}),children:["bond"===t&&(0,r.jsx)(X.xv,{fontFamily:"primary",className:G().percent,children:(null==a?void 0:a.close)+"%"}),"bond"!==t&&(0,r.jsx)(X.xv,{fontFamily:"primary",className:G().percent,children:(null==a?void 0:a.close)+" ₽"}),"bond"===t&&d?(0,r.jsxs)(X.xv,{fontFamily:"primary",className:G().currentPrice,children:[a.close*d/100," ₽"]}):null]})},V=e=>{let{tickerType:t,lastPriceServer:n,sessionCard:a,accuracy:i}=e;if(!n||!a)return(0,r.jsx)("div",{});let s="faceValueOnSettleDate"in a?a.faceValueOnSettleDate:null;return(0,r.jsxs)("div",{className:G().container,id:"last-price-server-component",children:["bond"===t&&(0,r.jsx)(X.xv,{fontFamily:"primary",className:G().percent,children:n.toFixed(i)+"%"}),"bond"!==t&&(0,r.jsx)(X.xv,{fontFamily:"primary",className:G().percent,children:n.toFixed(i)+" ₽"}),"bond"===t&&s?(0,r.jsxs)(X.xv,{fontFamily:"primary",className:G().currentPrice,children:[(n*s/100).toFixed(i)," ₽"]}):null]})},W=e=>{let{tickerType:t,lastPriceServer:n,sessionCard:a,accuracy:i}=e;return(0,r.jsxs)("div",{className:G().root,children:[(0,r.jsx)(V,{tickerType:t,lastPriceServer:n,sessionCard:a,accuracy:i}),(0,r.jsx)(M,{tickerType:t,sessionCard:a})]})};var z=n(7372),K=n.n(z);let Z=e=>{let{sessionCard:t,tickerType:n,accuracy:i,className:o}=e,{candles:d}=(0,c.useStomp)(),[_,u]=(0,s.useState)(()=>!1),h=null==d?void 0:d.at(-1),m=null==d?void 0:d.at(-2);(0,s.useEffect)(()=>{if(!d)return;let e=document.getElementById("period-changes-server");null==e||e.classList.add(K().hidden),u(!0)},[d]);let f="bond"===n?h&&m&&Math.abs(+(h.close-m.close)).toFixed(i):m&&h&&(Math.abs(h.close-m.close)/m.close*100).toFixed(2),x="bond"===n?m&&t&&h&&"faceValueOnSettleDate"in t&&((h.close-m.close)*t.faceValueOnSettleDate/100).toFixed(2):m&&h&&(h.close-m.close).toFixed(i);return(0,r.jsx)("div",{className:(0,l.Z)(K().container,null!=o?o:"",{["".concat(K().show)]:_,["".concat(K().hidden)]:!_}),children:x&&(0,r.jsxs)(a.WG,{fontFamily:"secondary",className:(0,l.Z)({[K().green]:+x>=0,[K().red]:0>+x}),children:[+x>=0&&"+"," ",x," ₽ • ",f,"%"]})})},H=e=>{let{className:t,sessionCard:n,tickerType:i,accuracy:s,tickerInfo:c}=e,o=null==c?void 0:c.searchResult[i[0].toUpperCase()+i.slice(1)][0].previousPrice,d=null==c?void 0:c.searchResult[i[0].toUpperCase()+i.slice(1)][0].currentPrice;if(!o||!d)return(0,r.jsx)(r.Fragment,{});let _="bond"===i?Math.abs(+(+d-+o)).toFixed(s):(Math.abs(+d-+o)/+o*100).toFixed(2),u="bond"===i?n&&"faceValueOnSettleDate"in n&&((+d-+o)*n.faceValueOnSettleDate/100).toFixed(2):(+d-+o).toFixed(s);return(0,r.jsx)("div",{className:(0,l.Z)(K().container,null!=t?t:""),id:"period-changes-server",children:u&&(0,r.jsxs)(a.WG,{fontFamily:"secondary",className:(0,l.Z)({[K().green]:+u>=0,[K().red]:0>+u}),children:[+u>=0&&"+"," ",u," ₽ • ",_,"%"]})})},J=e=>{let{className:t,sessionCard:n,tickerType:a,accuracy:i,tickerInfo:s}=e;return(0,r.jsxs)("div",{className:K().root,children:[(0,r.jsx)(Z,{sessionCard:n,tickerType:a,accuracy:i,className:t}),(0,r.jsx)(H,{sessionCard:n,tickerType:a,accuracy:i,tickerInfo:s,className:t})]})};var q=n(2473),Y=n.n(q);let Q=e=>{let{data:t,className:n}=e;return(0,r.jsxs)("div",{className:(0,l.Z)(Y().tooltip,n),style:{top:t.y,left:t.x},children:[(0,r.jsx)("div",{className:Y().date,children:new Date(t.timestamp).toLocaleDateString("ru-Ru",{day:"numeric",month:"long",year:"numeric"})}),(0,r.jsxs)("div",{className:Y().table,children:[(0,r.jsx)("div",{children:"Откр."}),(0,r.jsx)("div",{children:t.open}),(0,r.jsx)("div",{children:"Макс."}),(0,r.jsx)("div",{children:t.high}),(0,r.jsx)("div",{children:"Мин."}),(0,r.jsx)("div",{children:t.low}),(0,r.jsx)("div",{children:"Закр. "}),(0,r.jsx)("div",{children:t.close}),(0,r.jsx)("div",{children:"Объем:"}),(0,r.jsx)("div",{children:t.volume})]})]})},$=e=>{let{ticker:t,sessionCard:n,tickerType:o,accuracy:l,tickerInfo:d,lastPriceServer:_}=e,u=(0,s.useRef)(null),h=(0,s.useRef)(k),[m,f]=(0,s.useState)(),[v,N]=(0,s.useState)(()=>!0),A=(0,s.useRef)(null),{candles:g,lastCandle:C,stomp:S}=(0,c.useStomp)();return(0,s.useEffect)(()=>{if(!S)return;let e=S.current;return()=>{var t;(null===(t=e.client)||void 0===t?void 0:t.active)&&e.client.deactivate()}},[S]),(0,s.useEffect)(()=>{var e;C&&(null===(e=A.current)||void 0===e||e.updateData({open:C.open,close:C.close,high:C.high,low:C.low,timestamp:C.timestamp,volume:C.volume}))},[C]),(0,s.useEffect)(()=>{var e,t,n;if(!g||!u.current||(A.current=(0,i.S1)(u.current,{styles:{grid:{vertical:{show:!1},horizontal:{style:i.SP.Solid}},candle:{tooltip:{showRule:i.YP.None},type:h.current.chartType},yAxis:{axisLine:{show:!1},position:i.J.Right,type:i.OH.Normal,tickText:{marginStart:20}}}}),!A))return;null===(e=A.current)||void 0===e||e.setOffsetRightDistance(40),l&&(null===(t=A.current)||void 0===t||t.setPriceVolumePrecision(l,l));let r=e=>{var t;let n=!!(null===(t=A.current)||void 0===t?void 0:t.getDataList()[e.realDataIndex]);if(!e.kLineData)return;let{close:r,high:a,low:i,open:s,timestamp:c,volume:o}=e.kLineData;f({visible:n,close:r,high:a,low:i,open:s,timestamp:c,volume:o,x:e.x,y:e.y})},a=()=>{var e;f(e=>{if(e)return{...e,visible:!1}}),null===(e=A.current)||void 0===e||e.unsubscribeAction(i.Us.OnCrosshairChange,r)},s=()=>{var e;null===(e=A.current)||void 0===e||e.subscribeAction(i.Us.OnCrosshairChange,r)},c=u.current;if(c)return c.addEventListener("mouseleave",a),c.addEventListener("mouseenter",s),null===(n=A.current)||void 0===n||n.applyNewData(g),N(!1),()=>{var e;c&&(0,i.B9)(c),null===(e=A.current)||void 0===e||e.unsubscribeAction(i.Us.OnCrosshairChange,r),c.removeEventListener("mouseleave",a),c.removeEventListener("mouseenter",s)}},[g,A,l]),(0,r.jsxs)(a.Zb,{className:p().container,children:[(0,r.jsx)("section",{className:p().shortInformation,children:(0,r.jsx)(x,{sessionCard:n,tickerType:o,tickerInfo:d.data})}),(0,r.jsx)("section",{className:p().lastPrice,children:(0,r.jsx)(W,{lastPriceServer:_,sessionCard:n,tickerType:o,accuracy:l})}),(0,r.jsxs)("section",{className:p().changeChartSection,children:[(0,r.jsx)(J,{className:p().income,sessionCard:n,tickerType:o,accuracy:l,tickerInfo:d.data}),(0,r.jsx)(B,{typeChart:h,chart:A,className:p().changeInterval,stomp:S,ticker:t,tickerType:o,setIsLoadingChart:N}),(0,r.jsx)(U,{typeChart:h,chart:A,className:p().changeType,stomp:S,ticker:t,tickerType:o,setIsLoadingChart:N})]}),(0,r.jsxs)("div",{ref:u,className:p().chartContainer,children:[(null==m?void 0:m.visible)&&(0,r.jsx)(Q,{data:m}),v&&(0,r.jsx)(a.Od,{style:{position:"absolute",zIndex:1e3,width:"100%",opacity:1},height:300})]}),(0,r.jsx)("section",{className:p().detailsSection,children:(0,r.jsx)(O,{tickerType:o,sessionCard:n})})]})}},8289:function(e,t,n){"use strict";n.r(t),n.d(t,{BondDemandOfferClient:function(){return d}});var r=n(7437),a=n(2833),i=n(3167),s=n(2265),c=n(761),o=n(1597),l=n.n(o);let d=()=>{let{buySellVolume:e}=(0,c.useStomp)(),[t,n]=(0,s.useState)(()=>!1);return(0,s.useEffect)(()=>{let e=document.getElementById("bond-demand-offer-server");null==e||e.classList.add(l().hidden),n(!0)},[]),(0,r.jsxs)(a.Zb,{className:(0,i.Z)(l().container,{["".concat(l().show)]:t,["".concat(l().hidden)]:!t}),children:[(0,r.jsx)("section",{className:l().headerContainer,children:(0,r.jsx)(a.xv,{fontFamily:"primary",className:l().headerText,children:"Спрос и предложение"})}),(0,r.jsx)("section",{className:l().demandOfferChartContainer,style:{gridTemplateColumns:"".concat(null==e?void 0:e.at(0),"fr ").concat(null==e?void 0:e.at(1),"fr")},children:e?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("div",{className:l().offerChart}),(0,r.jsx)("div",{className:l().demandChart})]}):(0,r.jsx)("div",{children:(0,r.jsx)(a.Od,{height:20})})}),(0,r.jsxs)("section",{className:l().demandOfferValueContainer,children:[(0,r.jsx)(a.xv,{fontFamily:"primary",className:l().offerValue,children:null==e?void 0:e.at(0)}),(0,r.jsx)(a.xv,{fontFamily:"primary",className:l().demandValue,children:null==e?void 0:e.at(1)})]})]})}},2518:function(e,t,n){"use strict";n.r(t),n.d(t,{BondDetailsSkeleton:function(){return c}});var r=n(7437),a=n(7301),i=n(7135),s=n.n(i);let c=()=>(0,r.jsxs)("li",{className:s().tableRow,children:[(0,r.jsx)(a.Od,{height:18}),(0,r.jsx)(a.Od,{height:18})]})},2696:function(e,t,n){"use strict";function r(e){var t;let{clientRef:n,interval:r,ticker:a,tickerType:i}=e;n.candlesId&&n.candlesId.unsubscribe(),n.candlesId=null===(t=n.client)||void 0===t?void 0:t.subscribe("currency"!==i&&"metal"!==i?"MXSE.candles":"MXCX.candles",()=>{},{selector:'ticker="'.concat(a,'" and interval="').concat(r,'"')})}n.d(t,{S:function(){return r}})},1018:function(e,t,n){"use strict";function r(e,t){let n={bond:["шт.","шт.","шт."],stock:["шт.","шт.","шт."],currency:["шт.","шт.","шт."],fund:["шт.","шт.","шт."],metal:["шт.","шт.","шт."]},r=Math.abs(e)%100;return r>=11&&r<=19?"".concat(e," ").concat(n[t][2]):1==(r%=10)?"".concat(e," ").concat(n[t][0]):r>=2&&r<=4?"".concat(e," ").concat(n[t][1]):"".concat(e," ").concat(n[t][2])}n.d(t,{P:function(){return r}})},752:function(e){e.exports={color_black_300:"SearchItem_color_black_300__9cx_c",color_black_500:"SearchItem_color_black_500__AeocL",left_text:"SearchItem_left_text__zlmzj",link_btn:"SearchItem_link_btn__CJzyf",col:"SearchItem_col__jpLfR",flex_block:"SearchItem_flex_block__TVrl7",desc:"SearchItem_desc__92j3b",mobile:"SearchItem_mobile__Je9TR",logo_error:"SearchItem_logo_error__ccx9M",right:"SearchItem_right__ZkEY0",link:"SearchItem_link__eLXCE",btn:"SearchItem_btn__KxhsD"}},6341:function(e){e.exports={container:"Rating_container__WOFWC",text:"Rating_text__hS4E_",hidden_text:"Rating_hidden_text__1JH_k",more:"Rating_more__3f7x7"}},519:function(e){e.exports={item:"RatingValue_item__L_prB",block:"RatingValue_block__kjqZH",text:"RatingValue_text__yYm_r"}},7184:function(e){e.exports={text:"ReatingBondsResult_text__jVsZR",list:"ReatingBondsResult_list__dBzIc"}},6919:function(e){e.exports={container:"BondAboutInstrument_container__JRIfE",header:"BondAboutInstrument_header__BlLik",info:"BondAboutInstrument_info___KLW_"}},8328:function(e){e.exports={container:"BondChart_container__zeckE",chartContainer:"BondChart_chartContainer__atMz9",changeChartSection:"BondChart_changeChartSection__q6KMs",changeInterval:"BondChart_changeInterval__YJoNF",changeType:"BondChart_changeType__i6Z_P",detailsSection:"BondChart_detailsSection__WlSiz",skeletonContainer:"BondChart_skeletonContainer___EtMa"}},8715:function(e){e.exports={container:"ChangeInterval_container__tDd_Y",desktop:"ChangeInterval_desktop__OBuEY",mobile:"ChangeInterval_mobile__vvc6A"}},6156:function(e){e.exports={container:"ChangeTypeChart_container__cSfFV",imgChange:"ChangeTypeChart_imgChange__84oPF"}},4083:function(e){e.exports={container:"DetailsInfo_container__wBxUf",info:"DetailsInfo_info__LXWRS",buySection:"DetailsInfo_buySection__AS0Sv",openAccount:"DetailsInfo_openAccount__wOn7S",lotSize:"DetailsInfo_lotSize__hCa0K"}},2567:function(e){e.exports={container:"LastPrice_container__st_lG",percent:"LastPrice_percent__yOBKo",currentPrice:"LastPrice_currentPrice__fAGQ_",hidden:"LastPrice_hidden__XpIrY",show:"LastPrice_show__Ty0ze"}},7372:function(e){e.exports={container:"PeriodChanges_container__qK6g4",green:"PeriodChanges_green___5xyK",red:"PeriodChanges_red__E1_Sy",hidden:"PeriodChanges_hidden__3HPBQ",show:"PeriodChanges_show__R9RgU"}},2473:function(e){e.exports={tooltip:"Tooltip_tooltip__rt9vy",table:"Tooltip_table__p0c4e",date:"Tooltip_date__5qpHj"}},1597:function(e){e.exports={container:"BondDemandOffer_container__IaC2n",headerContainer:"BondDemandOffer_headerContainer__pxzoo",headerText:"BondDemandOffer_headerText__8y3S_",demandOfferChartContainer:"BondDemandOffer_demandOfferChartContainer__8kTGq",offerChart:"BondDemandOffer_offerChart__2G9Z_",demandChart:"BondDemandOffer_demandChart__prTWk",demandOfferValueContainer:"BondDemandOffer_demandOfferValueContainer__R5qBR",offerValue:"BondDemandOffer_offerValue___9S5B",demandValue:"BondDemandOffer_demandValue__0OugR",hidden:"BondDemandOffer_hidden__pOn8c",show:"BondDemandOffer_show__FoJSf"}},7135:function(e){e.exports={container:"BondDetails_container__aKIEq",header:"BondDetails_header__R_AdL",table:"BondDetails_table__NaumW",tableRow:"BondDetails_tableRow__90g4M",rowName:"BondDetails_rowName__mpbBo"}},8024:function(e){e.exports={container:"BondShortInformation_container__aDjos",nameBond:"BondShortInformation_nameBond__i8JB0",iconLabel:"BondShortInformation_iconLabel__Ng2nK",shortName:"BondShortInformation_shortName__xwq_K",shortNumber:"BondShortInformation_shortNumber__zh_Rb",tickerIncomeContainer:"BondShortInformation_tickerIncomeContainer__M1BMx",tickerIncome:"BondShortInformation_tickerIncome___PG3_",tickerIncomeText:"BondShortInformation_tickerIncomeText__qb5a5",openAccount:"BondShortInformation_openAccount__0ORlO",openAccountNotBond:"BondShortInformation_openAccountNotBond__MVuGR",lotSize:"BondShortInformation_lotSize__mGmLm"}}}]);